From f24e90c8309e2a03fba49af3e4fbf24149047add Mon Sep 17 00:00:00 2001 From: jos Date: Mon, 1 Feb 2016 12:16:02 +0100 Subject: [PATCH] Released version 4.13.0 --- HISTORY.md | 6 +- dist/vis.js | 532 +++++++++++++++++++++++------------------------- dist/vis.map | 2 +- dist/vis.min.js | 43 ++-- lib/util.js | 8 +- package.json | 2 +- 6 files changed, 292 insertions(+), 301 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index 9bb41faf..c6a4f323 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2,7 +2,7 @@ http://visjs.org -## not yet released, version 4.13.0-SNAPSHOT +## 2016-02-01, version 4.13.0 ### Network @@ -30,14 +30,16 @@ http://visjs.org ### Graph2d - Major redesign of data axis/scales, with large focus on creating a sane slave axis setup +- Cleanup of linegraph's event handling. - Fixed #1585: Allow bar groups to exclude from stacking - Fixed #1580: Invisible timeline/graph should not be drawn, as most inputs are invalid - Fixed #1177: Fix custom range of slaved right axis. - Fixed #1592: Emit a "changed" event after each redraw. -- Cleanup of linegraph's event handling. - Fixed #1017: Fixed minWidth behavior for bars. - Fixes #1557: Fix default axis formatting function. - Fixed #1541: Timeline and Graph2d did not load synchronously anymore. +- Fixed a performance regression + ## 2016-01-08, version 4.12.0 diff --git a/dist/vis.js b/dist/vis.js index e31564d9..c0c584f6 100644 --- a/dist/vis.js +++ b/dist/vis.js @@ -4,8 +4,8 @@ * * A dynamic, browser-based visualization library. * - * @version 4.12.1-SNAPSHOT - * @date 2016-01-23 + * @version 4.13.0 + * @date 2016-02-01 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -108,7 +108,6 @@ return /******/ (function(modules) { // webpackBootstrap exports.Graph2d = __webpack_require__(48); exports.timeline = { Core: __webpack_require__(27), - DataStep: __webpack_require__(51), DateUtil: __webpack_require__(26), Range: __webpack_require__(23), stack: __webpack_require__(31), @@ -128,6 +127,7 @@ return /******/ (function(modules) { // webpackBootstrap CurrentTime: __webpack_require__(43), CustomTime: __webpack_require__(41), DataAxis: __webpack_require__(50), + DataScale: __webpack_require__(51), GraphGroup: __webpack_require__(52), Group: __webpack_require__(30), ItemSet: __webpack_require__(28), @@ -1414,13 +1414,13 @@ return /******/ (function(modules) { // webpackBootstrap * this function will then iterate in both directions over this sorted list to find all visible items. * * @param {Item[]} orderedItems | Items ordered by start - * @param {function} searchFunction | -1 is lower, 0 is found, 1 is higher + * @param {function} comparator | -1 is lower, 0 is equal, 1 is higher * @param {String} field * @param {String} field2 * @returns {number} * @private */ - exports.binarySearchCustom = function (orderedItems, searchFunction, field, field2) { + exports.binarySearchCustom = function (orderedItems, comparator, field, field2) { var maxIterations = 10000; var iteration = 0; var low = 0; @@ -1432,7 +1432,7 @@ return /******/ (function(modules) { // webpackBootstrap var item = orderedItems[middle]; var value = field2 === undefined ? item[field] : item[field][field2]; - var searchResult = searchFunction(value); + var searchResult = comparator(value); if (searchResult == 0) { // jihaa, found a visible item! return middle; @@ -1459,16 +1459,21 @@ return /******/ (function(modules) { // webpackBootstrap * @param {{start: number, end: number}} target * @param {String} field * @param {String} sidePreference 'before' or 'after' + * @param {function} comparator an optional comparator, returning -1,0,1 for <,==,>. * @returns {number} * @private */ - exports.binarySearchValue = function (orderedItems, target, field, sidePreference) { + exports.binarySearchValue = function (orderedItems, target, field, sidePreference, comparator) { var maxIterations = 10000; var iteration = 0; var low = 0; var high = orderedItems.length - 1; var prevValue, value, nextValue, middle; + var comparator = comparator != undefined ? comparator : function (a, b) { + return a == b ? 0 : a < b ? -1 : 1; + }; + while (low <= high && iteration < maxIterations) { // get a new guess middle = Math.floor(0.5 * (high + low)); @@ -1476,18 +1481,18 @@ return /******/ (function(modules) { // webpackBootstrap value = orderedItems[middle][field]; nextValue = orderedItems[Math.min(orderedItems.length - 1, middle + 1)][field]; - if (value == target) { + if (comparator(value, target) == 0) { // we found the target return middle; - } else if (prevValue < target && value > target) { + } else if (comparator(prevValue, target) < 0 && comparator(value, target) > 0) { // target is in between of the previous and the current return sidePreference == 'before' ? Math.max(0, middle - 1) : middle; - } else if (value < target && nextValue > target) { + } else if (comparator(value, target) < 0 && comparator(nextValue, target) > 0) { // target is in between of the current and the next return sidePreference == 'before' ? middle : Math.min(orderedItems.length - 1, middle + 1); } else { // didnt find the target, we need to change our boundaries. - if (value < target) { + if (comparator(value, target) < 0) { // it is too small --> increase low low = middle + 1; } else { @@ -10682,9 +10687,10 @@ return /******/ (function(modules) { // webpackBootstrap // create itemset if (items) { this.setItems(items); - } else { - this._redraw(); } + + // draw for the first time + this._redraw(); } // Extend the functionality from Core @@ -10760,8 +10766,6 @@ return /******/ (function(modules) { // webpackBootstrap // set items this.itemsData = newDataSet; this.itemSet && this.itemSet.setItems(newDataSet); - - this.body.emitter.emit('_change', { queue: true }); }; /** @@ -14322,10 +14326,13 @@ return /******/ (function(modules) { // webpackBootstrap this.previousDelta = delta; this._applyRange(newStart, newEnd); + var startDate = new Date(this.start); + var endDate = new Date(this.end); + // fire a rangechange event this.body.emitter.emit('rangechange', { - start: new Date(this.start), - end: new Date(this.end), + start: startDate, + end: endDate, byUser: true }); }; @@ -15226,6 +15233,7 @@ return /******/ (function(modules) { // webpackBootstrap */ Core.prototype._create = function (container) { this.dom = {}; + this.options = {}; this.dom.container = container; @@ -15288,7 +15296,7 @@ return /******/ (function(modules) { // webpackBootstrap this.dom.rightContainer.appendChild(this.dom.shadowBottomRight); this.on('rangechange', (function () { - if (this.initialDrawDone) { + if (this.initialDrawDone === true) { this._redraw(); // this allows overriding the _redraw method } }).bind(this)); @@ -15414,6 +15422,7 @@ return /******/ (function(modules) { // webpackBootstrap var fields = ['width', 'height', 'minHeight', 'maxHeight', 'autoResize', 'start', 'end', 'clickToUse', 'dataAttributes', 'hiddenDates', 'locale', 'locales', 'moment', 'throttleRedraw']; util.selectiveExtend(fields, this.options, options); + this.options.orientation = { item: undefined, axis: undefined }; if ('orientation' in options) { if (typeof options.orientation === 'string') { this.options.orientation = { @@ -16158,7 +16167,6 @@ return /******/ (function(modules) { // webpackBootstrap var newScrollTop = this._setScrollTop(this.touch.initialScrollTop + delta); if (newScrollTop != oldScrollTop) { - this._redraw(); // TODO: this causes two redraws when dragging, the other is triggered by rangechange already this.emit("verticalDrag"); } }; @@ -16943,6 +16951,8 @@ return /******/ (function(modules) { // webpackBootstrap // update the group holding all ungrouped items this._updateUngrouped(); } + + this.body.emitter.emit('_change', { queue: true }); }; /** @@ -24302,6 +24312,8 @@ return /******/ (function(modules) { // webpackBootstrap if (items) { this.setItems(items); } + + // draw for the first time this._redraw(); } @@ -24958,7 +24970,6 @@ return /******/ (function(modules) { // webpackBootstrap var extended = util.bridgeObject(item); extended.x = util.convert(item.x, 'Date'); extended.orginalY = item.y; //real Y - // typecast all items to numbers. Takes around 10ms for 500.000 items extended.y = Number(item.y); var index = groupsContent[groupId].length - groupCounts[groupId]--; @@ -25010,11 +25021,6 @@ return /******/ (function(modules) { // webpackBootstrap this.props.width = this.dom.frame.offsetWidth; this.props.height = this.body.domProps.centerContainer.height - this.body.domProps.border.top - this.body.domProps.border.bottom; - // update the graph if there is no lastWidth or width, used for the initial draw - if (this.lastWidth === undefined && this.props.width) { - this.forceGraphUpdate = true; - } - // check if this component is resized resized = this._isResized() || resized; @@ -25289,8 +25295,11 @@ return /******/ (function(modules) { // webpackBootstrap var itemsData = group.getItems(); // optimization for sorted data if (group.options.sort == true) { - var first = Math.max(0, util.binarySearchValue(itemsData, minDate, 'x', 'before')); - var last = Math.min(itemsData.length, util.binarySearchValue(itemsData, maxDate, 'x', 'after') + 1); + var dateComparator = function dateComparator(a, b) { + return a.getTime() == b.getTime() ? 0 : a < b ? -1 : 1; + }; + var first = Math.max(0, util.binarySearchValue(itemsData, minDate, 'x', 'before', dateComparator)); + var last = Math.min(itemsData.length, util.binarySearchValue(itemsData, maxDate, 'x', 'after', dateComparator) + 1); if (last <= 0) { last = itemsData.length; } @@ -25451,6 +25460,8 @@ return /******/ (function(modules) { // webpackBootstrap this.yAxisRight.drawIcons = false; } this.yAxisRight.master = !yAxisLeftUsed; + this.yAxisRight.masterAxis = this.yAxisLeft; + if (this.yAxisRight.master == false) { if (yAxisRightUsed == true) { this.yAxisLeft.lineOffset = this.yAxisRight.width; @@ -25459,9 +25470,6 @@ return /******/ (function(modules) { // webpackBootstrap } resized = this.yAxisLeft.redraw() || resized; - this.yAxisRight.stepPixels = this.yAxisLeft.stepPixels; - this.yAxisRight.zeroCrossing = this.yAxisLeft.zeroCrossing; - this.yAxisRight.amountOfSteps = this.yAxisLeft.amountOfSteps; resized = this.yAxisRight.redraw() || resized; } else { resized = this.yAxisRight.redraw() || resized; @@ -25552,8 +25560,7 @@ return /******/ (function(modules) { // webpackBootstrap var util = __webpack_require__(1); var DOMutil = __webpack_require__(7); var Component = __webpack_require__(25); - var DataStep = __webpack_require__(51); - + var DataScale = __webpack_require__(51); /** * A horizontal time axis * @param {Object} [options] See DataAxis.setOptions for the available @@ -25605,7 +25612,7 @@ return /******/ (function(modules) { // webpackBootstrap }; this.dom = {}; - + this.scale = undefined; this.range = { start: 0, end: 0 }; this.options = util.extend({}, this.defaultOptions); @@ -25623,6 +25630,7 @@ return /******/ (function(modules) { // webpackBootstrap this.lineOffset = 0; this.master = true; + this.masterAxis = null; this.svgElements = {}; this.iconsRemoved = false; @@ -25669,10 +25677,9 @@ return /******/ (function(modules) { // webpackBootstrap redraw = true; } var fields = ['orientation', 'showMinorLabels', 'showMajorLabels', 'icons', 'majorLinesOffset', 'minorLinesOffset', 'labelOffsetX', 'labelOffsetY', 'iconWidth', 'width', 'visible', 'left', 'right', 'alignZeros']; - util.selectiveExtend(fields, this.options, options); + util.selectiveDeepExtend(fields, this.options, options); this.minWidth = Number(('' + this.options.width).replace("px", "")); - if (redraw === true && this.dom.frame) { this.hide(); this.show(); @@ -25782,11 +25789,6 @@ return /******/ (function(modules) { // webpackBootstrap * @param end */ DataAxis.prototype.setRange = function (start, end) { - if (this.master === false && this.options.alignZeros === true && this.zeroCrossing != -1) { - if (start > 0) { - start = 0; - } - } this.range.start = start; this.range.end = end; }; @@ -25880,93 +25882,55 @@ return /******/ (function(modules) { // webpackBootstrap * @private */ DataAxis.prototype._redrawLabels = function () { + var _this = this; + var resized = false; DOMutil.prepareElements(this.DOMelements.lines); DOMutil.prepareElements(this.DOMelements.labels); var orientation = this.options['orientation']; + var customRange = this.options[orientation].range != undefined ? this.options[orientation].range : {}; - // get the range for the slaved axis - var step, stepSize, rangeStart, rangeEnd; - if (this.master === false) { - if (this.zeroCrossing !== -1 && this.options.alignZeros === true) { - if (this.range.end > 0) { - stepSize = this.range.end / this.zeroCrossing; // size of one step - rangeStart = this.range.end - this.amountOfSteps * stepSize; - rangeEnd = this.range.end; - } else { - // all of the range (including start) has to be done before the zero crossing. - stepSize = -1 * this.range.start / (this.amountOfSteps - this.zeroCrossing); // absolute size of a step - rangeStart = this.range.start; - rangeEnd = this.range.start + stepSize * this.amountOfSteps; - } - } else { - rangeStart = this.range.start; - rangeEnd = this.range.end; - } - } else { - // calculate range and step (step such that we have space for 7 characters per label) - rangeStart = this.range.start; - rangeEnd = this.range.end; + //Override range with manual options: + var autoScaleEnd = true; + if (customRange.max != undefined) { + this.range.end = customRange.max; + autoScaleEnd = false; + } + var autoScaleStart = true; + if (customRange.min != undefined) { + this.range.start = customRange.min; + autoScaleStart = false; } - var minimumStep = this.props.majorCharHeight; - this.step = step = new DataStep(rangeStart, rangeEnd, minimumStep, this.dom.frame.offsetHeight, this.options[this.options.orientation].range, this.options[this.options.orientation].format, this.master === false && this.options.alignZeros // does the step have to align zeros? only if not master and the options is on - ); + this.scale = new DataScale(this.range.start, this.range.end, autoScaleStart, autoScaleEnd, this.dom.frame.offsetHeight, this.props.majorCharHeight, this.options.alignZeros, this.options[orientation].format); - // the slave axis needs to use the same horizontal lines as the master axis. - if (this.master === true) { - this.stepPixels = this.dom.frame.offsetHeight / step.marginRange * step.step; - this.amountOfSteps = Math.ceil(this.dom.frame.offsetHeight / this.stepPixels); - } else { - // align with zero - if (this.options.alignZeros === true && this.zeroCrossing !== -1) { - // distance is the amount of steps away from the zero crossing we are. - var distance = (step.current - this.zeroCrossing * step.step) / step.step; - this.step.shift(distance); - } + if (this.master === false && this.masterAxis != undefined) { + this.scale.followScale(this.masterAxis.scale); } - // value at the bottom of the SVG - this.valueAtBottom = step.marginEnd; - + //Is updated in side-effect of _redrawLabel(): this.maxLabelSize = 0; - var y = 0; // init value - var stepIndex = 0; // init value - var isMajor = false; // init value - while (stepIndex < this.amountOfSteps) { - y = Math.round(stepIndex * this.stepPixels); - isMajor = step.isMajor(); - if (stepIndex > 0 && stepIndex !== this.amountOfSteps) { - if (this.options['showMinorLabels'] && isMajor === false || this.master === false && this.options['showMinorLabels'] === true) { - this._redrawLabel(y - 2, step.getCurrent(), orientation, 'vis-y-axis vis-minor', this.props.minorCharHeight); + var lines = this.scale.getLines(); + lines.forEach(function (line) { + var y = line.y; + var isMajor = line.major; + if (_this.options['showMinorLabels'] && isMajor === false) { + _this._redrawLabel(y - 2, line.val, orientation, 'vis-y-axis vis-minor', _this.props.minorCharHeight); + } + if (isMajor) { + if (y >= 0) { + _this._redrawLabel(y - 2, line.val, orientation, 'vis-y-axis vis-major', _this.props.majorCharHeight); } - - if (isMajor && this.options['showMajorLabels'] && this.master === true || this.options['showMinorLabels'] === false && this.master === false && isMajor === true) { - if (y >= 0) { - this._redrawLabel(y - 2, step.getCurrent(), orientation, 'vis-y-axis vis-major', this.props.majorCharHeight); - } - this._redrawLine(y, orientation, 'vis-grid vis-horizontal vis-major', this.options.majorLinesOffset, this.props.majorLineWidth); + } + if (_this.master === true) { + if (isMajor) { + _this._redrawLine(y, orientation, 'vis-grid vis-horizontal vis-major', _this.options.majorLinesOffset, _this.props.majorLineWidth); } else { - this._redrawLine(y, orientation, 'vis-grid vis-horizontal vis-minor', this.options.minorLinesOffset, this.props.minorLineWidth); + _this._redrawLine(y, orientation, 'vis-grid vis-horizontal vis-minor', _this.options.minorLinesOffset, _this.props.minorLineWidth); } } - - // get zero crossing - if (this.master === true && step.current === 0) { - this.zeroCrossing = stepIndex; - } - - step.next(); - stepIndex += 1; - } - - // get zero crossing if it's the last step - if (this.master === true && step.current === 0) { - this.zeroCrossing = stepIndex; - } - - this.conversionFactor = this.stepPixels / step.step; + }); // Note that title is rotated, so we're using the height, not width! var titleWidth = 0; @@ -26002,13 +25966,11 @@ return /******/ (function(modules) { // webpackBootstrap }; DataAxis.prototype.convertValue = function (value) { - var invertedValue = this.valueAtBottom - value; - var convertedValue = invertedValue * this.conversionFactor; - return convertedValue; + return this.scale.convertValue(value); }; DataAxis.prototype.screenToValue = function (x) { - return this.valueAtBottom - x / this.conversionFactor; + return this.scale.screenToValue(x); }; /** @@ -26154,90 +26116,74 @@ return /******/ (function(modules) { // webpackBootstrap /***/ function(module, exports) { /** - * @constructor DataStep - * The class DataStep is an iterator for data for the lineGraph. You provide a start data point and an - * end data point. The class itself determines the best scale (step size) based on the - * provided start Date, end Date, and minimumStep. - * - * If minimumStep is provided, the step size is chosen as close as possible - * to the minimumStep but larger than minimumStep. If minimumStep is not - * provided, the scale is set to 1 DAY. - * The minimumStep should correspond with the onscreen size of about 6 characters - * - * Alternatively, you can set a scale by hand. - * After creation, you can initialize the class by executing first(). Then you - * can iterate from the start date to the end date via next(). You can check if - * the end date is reached with the function hasNext(). After each step, you can - * retrieve the current date via getCurrent(). - * The DataStep has scales ranging from milliseconds, seconds, minutes, hours, - * days, to years. - * - * Version: 1.2 - * - * @param {Date} [start] The start date, for example new Date(2010, 9, 21) - * or new Date(2010, 9, 21, 23, 45, 00) - * @param {Date} [end] The end date - * @param {Number} [minimumStep] Optional. Minimum step size in milliseconds + * Created by ludo on 25-1-16. */ - 'use strict'; - function DataStep(start, end, minimumStep, containerHeight, customRange, formattingFunction, alignZeros) { - // variables - this.current = -1; - this.stepIndex = 0; - this.step = 1; - this.scale = 1; - this.formattingFunction = formattingFunction; + 'use strict'; - this.marginStart; - this.marginEnd; + function DataScale(start, end, autoScaleStart, autoScaleEnd, containerHeight, majorCharHeight) { + var zeroAlign = arguments.length <= 6 || arguments[6] === undefined ? false : arguments[6]; + var formattingFunction = arguments.length <= 7 || arguments[7] === undefined ? false : arguments[7]; this.majorSteps = [1, 2, 5, 10]; this.minorSteps = [0.25, 0.5, 1, 2]; + this.customLines = null; - this.alignZeros = alignZeros; + this.containerHeight = containerHeight; + this.majorCharHeight = majorCharHeight; + this._start = start; + this._end = end; - this.setRange(start, end, minimumStep, containerHeight, customRange); - } + this.scale = 1; + this.minorStepIdx = -1; + this.magnitudefactor = 1; + this.determineScale(); - /** - * Set a new range - * If minimumStep is provided, the step size is chosen as close as possible - * to the minimumStep but larger than minimumStep. If minimumStep is not - * provided, the scale is set to 1 DAY. - * The minimumStep should correspond with the onscreen size of about 6 characters - * @param {Number} [start] The start date and time. - * @param {Number} [end] The end date and time. - * @param {Number} [minimumStep] Optional. Minimum step size in milliseconds - */ - DataStep.prototype.setRange = function (start, end, minimumStep, containerHeight, customRange) { - if (customRange === undefined) { - customRange = {}; - } + this.zeroAlign = zeroAlign; + this.autoScaleStart = autoScaleStart; + this.autoScaleEnd = autoScaleEnd; + + this.formattingFunction = formattingFunction; + + if (autoScaleStart || autoScaleEnd) { + var me = this; + var roundToMinor = function roundToMinor(value) { + var rounded = value - value % (me.magnitudefactor * me.minorSteps[me.minorStepIdx]); + if (value % (me.magnitudefactor * me.minorSteps[me.minorStepIdx]) > 0.5 * (me.magnitudefactor * me.minorSteps[me.minorStepIdx])) { + return rounded + me.magnitudefactor * me.minorSteps[me.minorStepIdx]; + } else { + return rounded; + } + }; + if (autoScaleStart) { + this._start -= this.magnitudefactor * 2 * this.minorSteps[this.minorStepIdx]; + this._start = roundToMinor(this._start); + } - this._start = customRange.min === undefined ? start : customRange.min; - this._end = customRange.max === undefined ? end : customRange.max; - if (this._start === this._end) { - this._start = customRange.min === undefined ? this._start - 0.75 : this._start; - this._end = customRange.max === undefined ? this._end + 1 : this._end; + if (autoScaleEnd) { + this._end += this.magnitudefactor * this.minorSteps[this.minorStepIdx]; + this._end = roundToMinor(this._end); + } + this.determineScale(); } - this.setMinimumStep(minimumStep, containerHeight); - this.setFirst(customRange); + } + + DataScale.prototype.setCharHeight = function (majorCharHeight) { + this.majorCharHeight = majorCharHeight; }; - /** - * Automatically determine the scale that bests fits the provided minimum step - * @param {Number} [minimumStep] The minimum step size in pixels - */ - DataStep.prototype.setMinimumStep = function (minimumStep, containerHeight) { - // round to floor + DataScale.prototype.setHeight = function (containerHeight) { + this.containerHeight = containerHeight; + }; + + DataScale.prototype.determineScale = function () { var range = this._end - this._start; - var safeRange = range * 1.2; - var minimumStepValue = minimumStep * (safeRange / containerHeight); - var orderOfMagnitude = Math.round(Math.log(safeRange) / Math.LN10); + this.scale = this.containerHeight / range; + var minimumStepValue = this.majorCharHeight / this.scale; + var orderOfMagnitude = Math.round(Math.log(range) / Math.LN10); - var minorStepIdx = -1; - var magnitudefactor = Math.pow(10, orderOfMagnitude); + this.minorStepIdx = -1; + this.magnitudefactor = Math.pow(10, orderOfMagnitude); var start = 0; if (orderOfMagnitude < 0) { @@ -26245,13 +26191,13 @@ return /******/ (function(modules) { // webpackBootstrap } var solutionFound = false; - for (var i = start; Math.abs(i) <= Math.abs(orderOfMagnitude); i++) { - magnitudefactor = Math.pow(10, i); + for (var l = start; Math.abs(l) <= Math.abs(orderOfMagnitude); l++) { + this.magnitudefactor = Math.pow(10, l); for (var j = 0; j < this.minorSteps.length; j++) { - var stepSize = magnitudefactor * this.minorSteps[j]; + var stepSize = this.magnitudefactor * this.minorSteps[j]; if (stepSize >= minimumStepValue) { solutionFound = true; - minorStepIdx = j; + this.minorStepIdx = j; break; } } @@ -26259,111 +26205,153 @@ return /******/ (function(modules) { // webpackBootstrap break; } } - this.stepIndex = minorStepIdx; - this.scale = magnitudefactor; - this.step = magnitudefactor * this.minorSteps[minorStepIdx]; }; - /** - * Round the current date to the first minor date value - * This must be executed once when the current date is set to start Date - */ - DataStep.prototype.setFirst = function (customRange) { - if (customRange === undefined) { - customRange = {}; - } + DataScale.prototype.is_major = function (value) { + return value % (this.magnitudefactor * this.majorSteps[this.minorStepIdx]) === 0; + }; - var niceStart = customRange.min === undefined ? this._start - this.scale * 2 * this.minorSteps[this.stepIndex] : customRange.min; - var niceEnd = customRange.max === undefined ? this._end + this.scale * this.minorSteps[this.stepIndex] : customRange.max; + DataScale.prototype.getStep = function () { + return this.magnitudefactor * this.minorSteps[this.minorStepIdx]; + }; - this.marginEnd = customRange.max === undefined ? this.roundToMinor(niceEnd) : customRange.max; - this.marginStart = customRange.min === undefined ? this.roundToMinor(niceStart) : customRange.min; + DataScale.prototype.getFirstMajor = function () { + var majorStep = this.magnitudefactor * this.majorSteps[this.minorStepIdx]; + return this.convertValue(this._start + (majorStep - this._start % majorStep) % majorStep); + }; - // if we need to align the zero's we need to make sure that there is a zero to use. - if (this.alignZeros === true && (this.marginEnd - this.marginStart) % this.step != 0) { - this.marginEnd += this.marginEnd % this.step; + DataScale.prototype.formatValue = function (current) { + var returnValue = current.toPrecision(5); + if (typeof this.formattingFunction === 'function') { + returnValue = this.formattingFunction(current); } - this.marginRange = this.marginEnd - this.marginStart; - this.current = this.marginEnd; - }; - - DataStep.prototype.roundToMinor = function (value) { - var rounded = value - value % (this.scale * this.minorSteps[this.stepIndex]); - if (value % (this.scale * this.minorSteps[this.stepIndex]) > 0.5 * (this.scale * this.minorSteps[this.stepIndex])) { - return rounded + this.scale * this.minorSteps[this.stepIndex]; + if (typeof returnValue === 'number') { + return '' + returnValue; + } else if (typeof returnValue === 'string') { + return returnValue; } else { - return rounded; + return current.toPrecision(5); } }; - /** - * Check if the there is a next step - * @return {boolean} true if the current date has not passed the end date - */ - DataStep.prototype.hasNext = function () { - return this.current >= this.marginStart; + DataScale.prototype.getLines = function () { + var lines = []; + var step = this.getStep(); + var bottomOffset = (step - this._start % step) % step; + for (var i = this._start + bottomOffset; this._end - i > 0.00001; i += step) { + if (i != this._start) { + //Skip the bottom line + lines.push({ major: this.is_major(i), y: this.convertValue(i), val: this.formatValue(i) }); + } + } + return lines; }; - /** - * Do the next step - */ - DataStep.prototype.next = function () { - var prev = this.current; - this.current -= this.step; + DataScale.prototype.followScale = function (other) { + var oldStepIdx = this.minorStepIdx; + var oldStart = this._start; + var oldEnd = this._end; - // safety mechanism: if current time is still unchanged, move to the end - if (this.current === prev) { - this.current = this._end; - } - }; + var me = this; + var increaseMagnitude = function increaseMagnitude() { + me.magnitudefactor *= 2; + }; + var decreaseMagnitude = function decreaseMagnitude() { + me.magnitudefactor /= 2; + }; - /** - * Do the next step - */ - DataStep.prototype.previous = function () { - this.current += this.step; - this.marginEnd += this.step; - this.marginRange = this.marginEnd - this.marginStart; - }; + if (other.minorStepIdx <= 1 && this.minorStepIdx <= 1 || other.minorStepIdx > 1 && this.minorStepIdx > 1) { + //easy, no need to change stepIdx nor multiplication factor + } else if (other.minorStepIdx < this.minorStepIdx) { + //I'm 5, they are 4 per major. + this.minorStepIdx = 1; + if (oldStepIdx == 2) { + increaseMagnitude(); + } else { + increaseMagnitude(); + increaseMagnitude(); + } + } else { + //I'm 4, they are 5 per major + this.minorStepIdx = 2; + if (oldStepIdx == 1) { + decreaseMagnitude(); + } else { + decreaseMagnitude(); + decreaseMagnitude(); + } + } - /** - * Get the current datetime - * @return {String} current The current date - */ - DataStep.prototype.getCurrent = function () { - // prevent round-off errors when close to zero - var current = Math.abs(this.current) < this.step / 2 ? 0 : this.current; + //Get masters stats: + var lines = other.getLines(); + var otherZero = other.convertValue(0); + var otherStep = other.getStep() * other.scale; - var returnValue = current; - if (typeof this.formattingFunction === 'function') { - return this.formattingFunction(current); - } - return '' + returnValue.toPrecision(3); - }; + var done = false; + var count = 0; + //Loop until magnitude is correct for given constrains. + while (!done && count++ < 5) { - /** - * Check if the current value is a major value (for example when the step - * is DAY, a major value is each first day of the MONTH) - * @return {boolean} true if current date is major, else false. - */ - DataStep.prototype.isMajor = function () { - return this.current % (this.scale * this.majorSteps[this.stepIndex]) === 0; - }; + //Get my stats: + this.scale = otherStep / (this.minorSteps[this.minorStepIdx] * this.magnitudefactor); + var newRange = this.containerHeight / this.scale; + + //For the case the magnitudefactor has changed: + this._start = oldStart; + this._end = this._start + newRange; + + var myOriginalZero = this._end * this.scale; + var majorStep = this.magnitudefactor * this.majorSteps[this.minorStepIdx]; + var majorOffset = this.getFirstMajor() - other.getFirstMajor(); - DataStep.prototype.shift = function (steps) { - if (steps < 0) { - for (var i = 0; i < -steps; i++) { - this.previous(); + if (this.zeroAlign) { + var zeroOffset = otherZero - myOriginalZero; + this._end += zeroOffset / this.scale; + this._start = this._end - newRange; + } else { + if (!this.autoScaleStart) { + this._start += majorStep - majorOffset / this.scale; + this._end = this._start + newRange; + } else { + this._start -= majorOffset / this.scale; + this._end = this._start + newRange; + } + } + if (!this.autoScaleEnd && this._end > oldEnd + 0.00001) { + //Need to decrease magnitude to prevent scale overshoot! (end) + decreaseMagnitude(); + done = false; + continue; + } + if (!this.autoScaleStart && this._start < oldStart - 0.00001) { + if (this.zeroAlign && oldStart >= 0) { + console.warn("Can't adhere to given 'min' range, due to zeroalign"); + } else { + //Need to decrease magnitude to prevent scale overshoot! (start) + decreaseMagnitude(); + done = false; + continue; + } } - } else if (steps > 0) { - for (var i = 0; i < steps; i++) { - this.next(); + if (this.autoScaleStart && this.autoScaleEnd && newRange < oldEnd - oldStart) { + increaseMagnitude(); + done = false; + continue; } + done = true; } }; - module.exports = DataStep; + DataScale.prototype.convertValue = function (value) { + return this.containerHeight - (value - this._start) * this.scale; + }; + + DataScale.prototype.screenToValue = function (pixels) { + return (this.containerHeight - pixels) / this.scale + this._start; + }; + + module.exports = DataScale; /***/ }, /* 52 */ @@ -27179,7 +27167,7 @@ return /******/ (function(modules) { // webpackBootstrap }, right: { visible: true, - position: 'top-left' // top/bottom - left,center,right + position: 'top-right' // top/bottom - left,center,right } }; @@ -33299,10 +33287,10 @@ return /******/ (function(modules) { // webpackBootstrap if (position === 'from') { arrowPoint = this.findBorderPosition(this.from, ctx, { x: x, y: y, low: 0.25, high: 0.6, direction: -1 }); - angle = point.t * -2 * Math.PI + 1.5 * Math.PI + 0.1 * Math.PI; + angle = arrowPoint.t * -2 * Math.PI + 1.5 * Math.PI + 0.1 * Math.PI; } else if (position === 'to') { arrowPoint = this.findBorderPosition(this.from, ctx, { x: x, y: y, low: 0.6, high: 1.0, direction: 1 }); - angle = point.t * -2 * Math.PI + 1.5 * Math.PI - 1.1 * Math.PI; + angle = arrowPoint.t * -2 * Math.PI + 1.5 * Math.PI - 1.1 * Math.PI; } else { arrowPoint = this._pointOnCircle(x, y, radius, 0.175); angle = 3.9269908169872414; // === 0.175 * -2 * Math.PI + 1.5 * Math.PI + 0.1 * Math.PI; diff --git a/dist/vis.map b/dist/vis.map index d4c90513..fd2326a8 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","DataStep","DateUtil","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","BackgroundGroup","Component","CurrentTime","CustomTime","DataAxis","GraphGroup","Group","ItemSet","Legend","LineGraph","TimeAxis","Network","network","Images","dotparser","gephiParser","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","moment","Hammer","keycharm","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","obj","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","constructor","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","elem","getBoundingClientRect","left","getAbsoluteTop","top","addClassName","className","classes","split","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","throttle","fn","wait","timeout","needExecution","throttled","setTimeout","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","window","returnValue","getTarget","target","srcElement","nodeType","parentNode","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","slice","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","isOk","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","insertSort","compare","k","j","mergeOptions","mergeTarget","globalOptions","enabled","binarySearchCustom","orderedItems","searchFunction","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","apply","setHookCallback","prototype","res","hasOwnProp","create_utc__createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","getParsingFlags","_pf","valid__isValid","_isValid","flags","_d","getTime","invalidWeekday","_strict","bigHour","valid__createInvalid","NaN","isUndefined","copyConfig","to","from","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","absFloor","number","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","array1","array2","dontConvert","lengthDiff","abs","diffs","Locale","normalizeLocale","toLowerCase","chooseLocale","names","next","loadLocale","name","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","isFunction","Function","makeGetSet","keepTime","get_set__set","get_set__get","mom","isValid","getSet","zeroFill","targetLength","forceSign","absNumber","zerosToFill","sign","pow","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","output","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","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","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","_overflowWeeks","WEEK","_overflowWeekday","WEEKDAY","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecateSimple","deprecations","configFromISO","l","allowTime","dateFormat","timeFormat","tzFormat","string","extendedIsoRegex","basicIsoRegex","isoDates","isoTimes","tzRegex","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","y","M","ms","getFullYear","setFullYear","createUTCDate","getUTCFullYear","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","firstWeekOffset","dow","doy","fwd","fwdlw","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","localWeekday","weekOffset","dayOfYear","weekOfYear","resWeek","weeksInYear","weekOffsetNext","defaults","currentDateArray","nowValue","now","_useUTC","getUTCMonth","getMonth","getDate","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","w","weekYear","temp","weekdayOverflow","GG","W","E","local__createLocal","_week","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","hour","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","day","minute","second","millisecond","createFromConfig","prepareConfig","add","preparse","configFromInput","isUTC","pickBy","moments","args","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","offset","separator","utcOffset","offsetFromString","matcher","matches","chunk","chunkOffset","cloneWithOffset","model","diff","clone","setTime","local","getDateOffset","round","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","matchShortOffset","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","matchOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","isoRegex","parseIso","momentsDifference","inp","parseFloat","positiveMomentsDifference","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","moment_calendar__calendar","time","formats","sod","startOf","calendar","localInput","endOf","isBetween","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","delta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","moment_format__toISOString","inputString","defaultFormat","postformat","withoutSuffix","humanize","fromNow","toNow","newLocaleData","isoWeekday","to_type__valueOf","unix","toObject","toJSON","moment_valid__isValid","parsingFlags","invalidAt","creationData","addWeekYearFormatToken","getter","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","isoWeek","getISOWeeksInYear","getWeeksInYear","weekInfo","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","localeWeek","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","parseWeekday","weekdaysParse","localeWeekdays","_weekdays","isFormat","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","localeWeekdaysParse","weekdayName","_weekdaysParse","_minWeekdaysParse","_shortWeekdaysParse","_fullWeekdaysParse","weekdays","weekdaysShort","weekdaysMin","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","getSetDayOfYear","hFormat","lowercase","matchMeridiem","_meridiemParse","localeIsPM","charAt","localeMeridiem","isLower","parseMs","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","formatUpper","toUpperCase","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","count","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","duration_abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","absCeil","bubble","monthsFromDays","monthsToDays","daysToMonths","as","duration_as__valueOf","makeAs","alias","duration_get__get","makeGetter","substituteTimeAgo","relativeTime","duration_humanize__relativeTime","posNegDuration","thresholds","duration_humanize__getSetRelativeTimeThreshold","threshold","limit","withSuffix","iso_string__toISOString","iso_string__abs","Y","D","asSeconds","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchTimestamp","matchWord","defaultLocaleMonths","defaultLocaleMonthsShort","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","longMonthsParse","shortMonthsParse","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","sort","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","types","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","_ids","_onEvent","setData","refresh","oldIds","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","setArmRotation","setArmLength","eye","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","axisColor","gridColor","dataColor","fill","stroke","strokeWidth","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","getNumberOfColumns","getNumberOfRows","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","position","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","horizontal","vertical","distance","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","start","getCurrent","end","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","prettyStep","text","xText","yText","zText","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","cross","topSideVisible","zAvg","lineJoin","lineCap","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","_getStrokeWidth","radius","arc","PI","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","mixin","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","listeners","hasListeners","sub","sum","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","getValue","dataView","progress","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","throttleRedraw","orientation","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","itemSet","itemsData","groupsData","getEventProperties","oncontextmenu","setGroups","setItems","_redraw","Configurator","Validator","printStyle","configureOptions","_createConfigurator","markDirty","refreshItems","errorFound","validate","selection","getSelection","setSelection","newDataSet","initialLoad","getItemRange","setWindow","animation","fit","focus","itemData","_this","getDataRange","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","show","getWidthLeft","getWidthRight","dataset","centerContainer","itemFromTarget","group","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","groupId","pageX","srcEvent","pageY","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","hammer","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","_handlers","Manager","PropagatingHammer","o","assign","wrapper","pointerType","isFirst","handler","eventType","hammers","idx","exportName","setTimeoutContext","bindFn","invokeArrayArg","arg","each","iterator","message","deprecationMessage","inherit","child","properties","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","find","inArray","src","findByKey","uniqueArray","results","prefixed","property","prefix","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","inputTarget","domHandler","ev","enable","init","createInputInstance","Type","inputClass","SUPPORT_POINTER_EVENTS","PointerEventInput","SUPPORT_ONLY_TOUCH","TouchInput","SUPPORT_TOUCH","TouchMouseInput","MouseInput","inputHandler","pointersLen","pointers","changedPointersLen","changedPointers","INPUT_START","isFinal","INPUT_END","INPUT_CANCEL","session","computeInputData","recognize","prevInput","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","getCenter","timeStamp","deltaTime","angle","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","rotation","getRotation","maxPointers","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","atan2","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","allow","pressed","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","SingleTouchInput","evTarget","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","started","normalizeSingleTouches","all","touches","changed","changedTouches","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","changedTargetTouches","touch","mouse","TouchAction","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","state","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","recognizers","preset","handlers","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","nextKey","dest","merge","MOBILE_REGEX","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","getTouchAction","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","freeGlobal","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","conversion","totalHidden","previousDelta","_isInsideRange","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","zoomKey","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","isTouching","onRelease","isReleasing","offTouch","offRelease","_isResized","resized","_previousWidth","_previousHeight","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","startDate","endDate","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundVertical","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","configure","appliedOptions","setModuleOptions","_origRedraw","active","_stopAutoResize","setCustomTime","getCustomTime","setCustomTimeTitle","title","setCustomTitle","addCustomTime","timestamp","some","removeCustomTime","getVisibleItems","getWindow","borderRootHeight","borderRootWidth","autoHeight","containerHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","visibility","MAX_REDRAWS","repaint","setCurrentTime","getCurrentTime","_startAutoResize","_onResize","lastWidth","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","align","groupOrderSwap","fromGroup","toGroup","targetOrder","groupOrder","selectable","multiselect","itemsAlwaysDraggable","editable","updateTime","updateGroup","groupEditable","onAdd","onUpdate","onMove","onRemove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","groupTouchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","groupHammer","_onGroupDragStart","_onGroupDrag","_onGroupDragEnd","addCallback","dirty","displayed","hide","unselect","select","rawVisibleItems","visibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","restack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","selected","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","_getGroupIndex","initialX","dragLeft","_cloneItemData","dragRight","selectedItem","baseGroupIndex","itemsToDrag","groupIndex","groupOffset","ctrlKey","metaKey","_onDragStartAddItem","xAbs","newItem","offsetLeft","updateGroupAllowed","newGroupBase","initial","updateTimeAllowed","initialStart","initialEnd","newOffset","_moveToGroup","originalOrder","movingUp","targetGroupTop","draggedGroupHeight","targetGroupHeight","targetGroup","draggedGroup","newOrder","origOrder","draggedId","numGroups","curPos","orgOffset","slippedPosition","switchGroup","shouldBeGroup","switchGroupId","shiftKey","oldSelection","newSelection","newItemData","itemGroup","lastSelectedGroup","multiselectPerGroup","_getItemRange","_item","itemSetFromTarget","minimumStep","autoScale","FORMAT","minorLabels","majorLabels","setMoment","setFormat","setMinimumStep","roundToMinor","hasNext","setScale","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","isMajor","getLabelMinor","getLabelMajor","getClassName","even","today","currentWeek","currentMonth","currentYear","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","Element","getLabelWidth","markerHeight","lastMarkerHeight","_calculateSubGroupHeights","limitSize","repositionX","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","repositionY","resetSubgroups","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","itemIndex","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","getComputedStyle","maxWidth","_repaintDeleteButton","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","groupChanged","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","setAttribute","outerHTML","itemSetHeight","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","maxMinorChars","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","xNext","nextIsMajor","prevWidth","labelMinor","xFirstMajorLabel","MAX","showMinorGrid","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","warnedForOverflow","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","onClick","_hasParent","deactivate","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","warned","substring","showCurrentTime","currentTimeTimer","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","_removePopup","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","path","_arguments","_this2","_len","_key","_ret2","div","objectLabel","selectedValue","_update","_makeLabel","err","popupString","popupValue","oninput","_setupPopup","_this3","html","hideTimeout","deleteTimeout","_this4","correspondingElement","checkbox","checked","_this5","defaultColor","_showColorPicker","_this6","insertTo","setColor","setUpdateCallback","colorString","setCloseCallback","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","getOptions","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","_bindHammer","_setSize","htmlColors","black","navy","darkblue","mediumblue","darkgreen","teal","darkcyan","deepskyblue","darkturquoise","mediumspringgreen","lime","springgreen","aqua","cyan","midnightblue","dodgerblue","lightseagreen","forestgreen","seagreen","darkslategray","limegreen","mediumseagreen","turquoise","royalblue","steelblue","darkslateblue","mediumturquoise","indigo","darkolivegreen","cadetblue","cornflowerblue","mediumaquamarine","dimgray","slateblue","olivedrab","slategray","lightslategray","mediumslateblue","lawngreen","chartreuse","aquamarine","maroon","purple","olive","gray","skyblue","lightskyblue","blueviolet","darkred","darkmagenta","saddlebrown","darkseagreen","lightgreen","mediumpurple","darkviolet","palegreen","darkorchid","yellowgreen","sienna","brown","darkgray","lightblue","greenyellow","paleturquoise","lightsteelblue","powderblue","firebrick","darkgoldenrod","mediumorchid","rosybrown","darkkhaki","silver","mediumvioletred","indianred","peru","chocolate","tan","lightgrey","palevioletred","thistle","orchid","goldenrod","crimson","gainsboro","plum","burlywood","lightcyan","lavender","darksalmon","violet","palegoldenrod","lightcoral","khaki","aliceblue","honeydew","azure","sandybrown","wheat","beige","whitesmoke","mintcream","ghostwhite","salmon","antiquewhite","linen","lightgoldenrodyellow","oldlace","fuchsia","magenta","deeppink","orangered","tomato","hotpink","coral","darkorange","lightsalmon","orange","lightpink","pink","gold","peachpuff","navajowhite","moccasin","bisque","mistyrose","blanchedalmond","papayawhip","lavenderblush","seashell","cornsilk","lemonchiffon","floralwhite","snow","yellow","lightyellow","ivory","white","setInitial","htmlColor","_isColorString","rgbaArray","rgbObj","alpha","_setColor","_generateHueCircle","storePrevious","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","circle","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","pinch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","newLeft","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","any","function","null","groupsDraggable","linegraph","getLegend","isGroupVisible","yAxisLeft","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","icons","alignZeros","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","lastStart","svgElements","groupsUsingDefaultStyles","COUNTER","svg","framework","Bars","Lines","Points","_removeGroup","_updateAllGroupData","removeGroup","_updateGroup","addGroup","groupsContent","groupCounts","extended","orginalY","forceGraphUpdate","_updateGraph","rangePerPixelInv","_getSortedGroupIds","grouplist","zIndex","bz","groupRanges","changeCalled","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","MAX_CYCLES","below","excludeFromStacking","_stack","_convertYcoordinates","calcPath","subGroupId","drawShading","subData","subPrevPoint","subNextPoint","first","dataContainer","increment","amountOfPoints","xDistance","pointsPerPixel","sampledData","combinedDataLeft","combinedDataRight","getYRange","getStackedYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","master","lineOffset","stepPixels","zeroCrossing","amountOfSteps","tempGroups","axisUsed","datapoints","screen_x","screen_y","svgHeight","convertValue","setZeroPosition","linegraphOptions","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","linegraphSVG","DOMelements","labels","conversionFactor","minWidth","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconHeight","iconOffset","groupArray","_cleanupIcons","activeGroups","_redrawLabels","_redrawTitle","stepSize","marginRange","valueAtBottom","marginEnd","maxLabelSize","stepIndex","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","invertedValue","convertedValue","characterHeight","largestWidth","textMinor","textMajor","textTitle","measureCharTitle","titleCharWidth","customRange","formattingFunction","marginStart","deadSpace","majorSteps","minorSteps","setFirst","safeRange","minimumStepValue","orderOfMagnitude","minorStepIdx","magnitudefactor","solutionFound","niceStart","niceEnd","rounded","previous","steps","usingDefaultStyle","zeroPosition","drawIcon","icon","Bargraph","fillHeight","outline","barWidth","originalWidth","bar1Height","bar2Height","processedGroupData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","heightOffset","_getSafeDrawData","amount","resolved","prevKey","accumulatedNegative","accumulatedPositive","pointData","groupLabel","_getStackedYRange","xpos","getGroupTemplate","callbackResult","getCallback","Line","_catmullRom","_linear","fillPath","pathArray","subPathArray","dFill","zero","serializePath","inverse","_catmullRomUniform","p0","bp1","bp2","normalization","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","side","iconSize","iconSpacing","excludeFromLegend","textArea","scrollableHeight","drawLegendIcons","paddingTop","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_modulesKamadaKawaiJs2","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedConfigurator2","_sharedValidator","_sharedValidator2","_optionsJs","_modulesKamadaKawaiJs","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","_updateValueRange","unselectAll","dotData","gephi","gephiData","valueTotal","setValueRange","canvasToDOM","DOMtoCanvas","findNode","isCluster","openCluster","cluster","getNodesInCluster","clusterByConnection","clusterByHubsize","clusterOutliers","getSeed","enableEditMode","disableEditMode","addNodeMode","editNode","editNodeMode","addEdgeMode","editEdgeMode","deleteSelected","getPositions","storePositions","moveNode","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","getOptionsFromConfigurator","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","shapeProperties","borderDashes","useImageSize","useBorderWithImage","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","clearPositions","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","baseSize","baseFontSize","predefinedPosition","labelModule","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Symbol","Label","pointToSelf","fontOptions","yLine","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor22","fontColor","_setAlignment2","_setAlignment","_setAlignment22","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_inherits","subClass","superClass","setPrototypeOf","__proto__","_get","_x","_x2","_x3","_again","receiver","desc","getOwnPropertyDescriptor","getPrototypeOf","_utilNodeBase","_utilNodeBase2","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_utilCircleImageBase","_utilCircleImageBase2","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","networkScaleInv","globalAlpha","drawImage","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_utilShapeBase","_utilShapeBase2","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Image","Square","Star","Text","Triangle","TriangleDown","_componentsEdge","_componentsEdge2","EdgesHandler","edgesListeners","arrows","scaleFactor","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_edgesCubicBezierEdge","_edgesCubicBezierEdge2","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","attachEdge","detachEdge","widthDiff","via","drawLine","drawArrows","drawLabel","viaNode","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_x4","_x5","_utilCubicBezierEdgeBase","_utilCubicBezierEdgeBase2","CubicBezierEdge","_CubicBezierEdgeBase","_getViaCoordinates2","_getViaCoordinates","_getViaCoordinates22","via1","via2","bezierCurveTo","x1","y1","x2","y2","nearNode","_findBorderPositionBezier","x3","y3","_ref","_ref2","_getDistanceToBezierEdge","_ref3","_ref32","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData22","_circle","pattern","lineDashOffset","_getCircleData3","_getCircleData32","dashedLine","_getCircleData4","_getCircleData42","_findBorderPosition","_findBorderPositionCircle","_getCircleData5","_getCircleData52","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData6","_getCircleData62","px","py","something","u","arrowPos","guideOffset","findBorderPosition","guidePos","arrow","_angle","_getCircleData7","_getCircleData72","_length","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","_x6","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_utilEdgeBase","_utilEdgeBase2","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_componentsPhysicsBarnesHutSolver","_componentsPhysicsBarnesHutSolver2","_componentsPhysicsRepulsionSolver","_componentsPhysicsRepulsionSolver2","_componentsPhysicsHierarchicalRepulsionSolver","_componentsPhysicsHierarchicalRepulsionSolver2","_componentsPhysicsSpringSolver","_componentsPhysicsSpringSolver2","_componentsPhysicsHierarchicalSpringSolver","_componentsPhysicsHierarchicalSpringSolver2","_componentsPhysicsCentralGravitySolver","_componentsPhysicsCentralGravitySolver2","_componentsPhysicsFA2BasedRepulsionSolver","_componentsPhysicsFA2BasedRepulsionSolver2","_componentsPhysicsFA2BasedCentralGravitySolver","_componentsPhysicsFA2BasedCentralGravitySolver2","PhysicsEngine","physicsBody","physicsNodeIndices","physicsEdgeIndices","forces","velocities","physicsEnabled","simulationInterval","requiresTimeout","previousStates","referenceState","freezeCache","renderTimer","adaptiveTimestep","adaptiveTimestepEnabled","adaptiveCounter","adaptiveInterval","stabilized","startedStabilization","stabilizationIterations","ready","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","iterations","updateInterval","onlyDynamicEdges","timestep","layoutFailed","initPhysics","updatePhysicsData","nodesSolver","edgesSolver","gravitySolver","modelOptions","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","physicsTime","runDoubleSpeed","amountOfIterations","calculateForces","moveNodes","revert","_evaluateStepQuality","nodeIds","positions","vx","vy","dpos","reference","maxNodeVelocity","averageNodeVelocity","velocityAdaptiveThreshold","nodeVelocity","_performStep","totalVelocity","solve","targetIterations","_freezeNodes","_stabilizationBatch","_finalizeStabilization","_restoreFrozenNodes","colorFactor","forceSize","arrowSize","BarnesHutSolver","barnesHutTree","randomSeed","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","maxY","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","seededRandom","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","steepness","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","CentralGravitySolver","_BarnesHutSolver2","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","_BarnesHutSolver","degree","_CentralGravitySolver2","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_CentralGravitySolver","_NetworkUtil","_NetworkUtil2","_componentsNodesCluster","_componentsNodesCluster2","ClusterEngine","clusteredNodes","clusteredEdges","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","cloneOptions","_cluster","edgeCount","clusters","usedNodes","relevantEdgeCount","gatheringSuccessful","childNodeId","_getConnectedId","clusterByEdgeCount","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","clusterEdgeProperties","childNode","otherNodeId","childKeys","createEdges","_edge","newEdge","clusteringEdgeReplacingId","_backupEdgeOptions","processProperties","childNodesOptions","childEdgesOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","reverse","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","cameraState","hammerFrame","_cleanUp","previousWidth","previousHeight","widthRatio","heightRatio","newScale","currentViewCenter","distanceFromCenter","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","previousRatio","_getCameraState","_setCameraState","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","initialZoom","zoomLevel","positionDefined","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_determineIfDifferent2","_determineIfDifferent","nodesChanges","edgesChanges","nodeSelected","selectObject","selectionObj","xFixed","yFixed","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","_unselectConnectedEdges","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","optionsBackup","improvedLayout","hierarchical","levelSeparation","sortMethod","lastNodeOnLevel","hierarchicalParents","hierarchicalChildren","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","MAX_LEVELS","clusterThreshold","startLength","before","clusterBridges","after","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","undefinedLevel","hierarchicalLevels","nodeSpacing","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","_setPositionForHierarchy","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","minLevel","customCallback","levelByDirection","levelA","_setMinLevelToZero","fillInRelations","parents","startingNodeId","crawler","parentId","parentLevel","childNodeLevel","_getPositionForHierarchy","previousPos","sharedParent","_findCommonParent","_shiftBlock","withChild","minPos","maxPos","childA","childB","iterateParents","_parent","findParent","_parent2","foundParent","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","_this7","_componentsAlgorithmsFloydWarshallJs","_componentsAlgorithmsFloydWarshallJs2","KamadaKawai","edgeStrength","distanceSolver","edgesArray","ignoreClusters","D_matrix","getDistances","_createL_matrix","_createK_matrix","innerThreshold","maxInnerIterations","maxEnergy","highE_nodeId","dE_dx","dE_dy","delta_m","subIterations","_getHighestEnergyNode2","_getHighestEnergyNode","_getHighestEnergyNode22","_moveNode","_getEnergy2","_getEnergy","_getEnergy22","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy3","_getEnergy32","x_m","y_m","iIdx","x_i","y_i","denominator","K_matrix","L_matrix","d2E_dx2","d2E_dxdy","d2E_dy2","FloydWarshall","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","kappa","ox","oy","xe","ye","xm","ym","wEllipse","hEllipse","ymb","yeb","xt","yt","xi","yi","xl","yl","xr","yr","patternLength","slope","distRemaining","patternIndex","dashLength","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","setValue","graphs","attr","getToken","tokenType","TOKENTYPE","NULL","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","maxLength","forEach2","elem1","elem2","setProp","convertAttr","mapping","visProp","visPropI","graphData","dotNode","graphNode","NODE_ATTR_MAPPING","convertEdge","dotEdge","graphEdge","EDGE_ATTR_MAPPING","subEdge","fontsize","fontcolor","labelfontcolor","fontname","fillcolor","labeltooltip","{","}","[","]",";","=",",","->","--","gephiJSON","inheritColor","gEdges","gNodes","gEdge","gNode","imageBroken","url","imageToCache","brokenUrl","imageToLoadBrokenUrlOn","onerror","_addImageToCache","imageToRedrawWith","cachedImage","img","onload","_redrawWithImage","_tryloadBrokenUrl","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":"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","file":"vis.map"} \ No newline at end of file +{"version":3,"sources":["vis.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","util","DOMutil","DataSet","DataView","Queue","Graph3d","graph3d","Camera","Filter","Point2d","Point3d","Slider","StepNumber","Timeline","Graph2d","timeline","Core","DateUtil","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","BackgroundGroup","Component","CurrentTime","CustomTime","DataAxis","DataScale","GraphGroup","Group","ItemSet","Legend","LineGraph","TimeAxis","Network","network","Images","dotparser","gephiParser","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","moment","Hammer","keycharm","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","obj","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","constructor","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","elem","getBoundingClientRect","left","getAbsoluteTop","top","addClassName","className","classes","split","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","throttle","fn","wait","timeout","needExecution","throttled","setTimeout","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","window","returnValue","getTarget","target","srcElement","nodeType","parentNode","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","slice","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","isOk","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","insertSort","compare","k","j","mergeOptions","mergeTarget","globalOptions","enabled","binarySearchCustom","orderedItems","comparator","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","apply","setHookCallback","prototype","res","hasOwnProp","create_utc__createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","getParsingFlags","_pf","valid__isValid","_isValid","flags","_d","getTime","invalidWeekday","_strict","bigHour","valid__createInvalid","NaN","isUndefined","copyConfig","to","from","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","absFloor","number","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","array1","array2","dontConvert","lengthDiff","abs","diffs","Locale","normalizeLocale","toLowerCase","chooseLocale","names","next","loadLocale","name","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","isFunction","Function","makeGetSet","keepTime","get_set__set","get_set__get","mom","isValid","getSet","zeroFill","targetLength","forceSign","absNumber","zerosToFill","sign","pow","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","output","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","regexEscape","matched","p1","p2","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","year","month","UTC","getUTCDate","localeMonths","_months","MONTHS_IN_FORMAT","localeMonthsShort","_monthsShort","localeMonthsParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","months","monthsShort","setMonth","dayOfMonth","monthsParse","date","getSetMonth","getDaysInMonth","monthsShortRegex","_monthsParseExact","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","monthsRegex","_monthsStrictRegex","_monthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","sort","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","_overflowWeeks","WEEK","_overflowWeekday","WEEKDAY","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecateSimple","deprecations","configFromISO","l","allowTime","dateFormat","timeFormat","tzFormat","string","extendedIsoRegex","basicIsoRegex","isoDates","isoTimes","tzRegex","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","y","M","ms","getFullYear","setFullYear","createUTCDate","getUTCFullYear","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","firstWeekOffset","dow","doy","fwd","fwdlw","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","localWeekday","weekOffset","dayOfYear","weekOfYear","resWeek","weeksInYear","weekOffsetNext","defaults","currentDateArray","nowValue","now","_useUTC","getUTCMonth","getMonth","getDate","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","w","weekYear","temp","weekdayOverflow","GG","W","E","local__createLocal","_week","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","hour","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","day","minute","second","millisecond","createFromConfig","prepareConfig","add","preparse","configFromInput","isUTC","pickBy","moments","args","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","offset","separator","utcOffset","offsetFromString","matcher","matches","chunk","chunkOffset","cloneWithOffset","model","diff","clone","setTime","local","getDateOffset","round","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","matchShortOffset","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","matchOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","isoRegex","parseIso","momentsDifference","inp","parseFloat","positiveMomentsDifference","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","moment_calendar__calendar","time","formats","sod","startOf","calendar","localInput","endOf","isBetween","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","delta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","moment_format__toISOString","inputString","defaultFormat","postformat","withoutSuffix","humanize","fromNow","toNow","newLocaleData","isoWeekday","to_type__valueOf","unix","toObject","toJSON","moment_valid__isValid","parsingFlags","invalidAt","creationData","addWeekYearFormatToken","getter","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","isoWeek","getISOWeeksInYear","getWeeksInYear","weekInfo","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","localeWeek","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","parseWeekday","weekdaysParse","localeWeekdays","_weekdays","isFormat","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","localeWeekdaysParse","weekdayName","_weekdaysParse","_minWeekdaysParse","_shortWeekdaysParse","_fullWeekdaysParse","weekdays","weekdaysShort","weekdaysMin","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","getSetDayOfYear","hFormat","lowercase","matchMeridiem","_meridiemParse","localeIsPM","charAt","localeMeridiem","isLower","parseMs","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","formatUpper","toUpperCase","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","count","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","duration_abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","absCeil","bubble","monthsFromDays","monthsToDays","daysToMonths","as","duration_as__valueOf","makeAs","alias","duration_get__get","makeGetter","substituteTimeAgo","relativeTime","duration_humanize__relativeTime","posNegDuration","thresholds","duration_humanize__getSetRelativeTimeThreshold","threshold","limit","withSuffix","iso_string__toISOString","iso_string__abs","Y","D","asSeconds","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchTimestamp","matchWord","defaultLocaleMonths","defaultLocaleMonthsShort","defaultMonthsShortRegex","defaultMonthsRegex","parseTwoDigitYear","getSetYear","prototypeMin","prototypeMax","add_subtract__add","add_subtract__subtract","lang","isoWeekYear","defaultLocaleWeek","getSetDayOfMonth","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","pos","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","getSetMinute","getSetSecond","getSetMillisecond","momentPrototype__proto","get","isoWeeks","isoWeeksInYear","isDST","isDSTShifted","zoneAbbr","zoneName","dates","zone","momentPrototype","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","L","LL","LLL","LLLL","defaultInvalidDate","defaultOrdinal","defaultOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","MM","yy","prototype__proto","firstDayOfYear","firstDayOfWeek","ordinalParse","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","duration_prototype__proto","toIsoString","version","invalid","relativeTimeThreshold","_moment","webpackPolyfill","paths","children","webpackContext","req","resolve","buf","ii","oct","_hexToByte","unparse","bth","_byteToHex","v1","clockseq","_clockseq","msecs","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","node","_nodeId","n","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","resetElements","getSVGElement","svgContainer","shift","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","x","groupTemplate","labelObj","point","setAttributeNS","size","label","xOffset","yOffset","content","textContent","drawBar","width","height","rect","_options","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","destroy","on","subscribers","subscribe","off","filter","unsubscribe","_trigger","params","senderId","concat","subscriber","addedIds","me","_addItem","update","updatedIds","oldData","updatedData","addOrUpdate","oldItem","_updateItem","ids","firstType","returnType","allowedValues","itemIds","itemId","_getItem","order","_sort","_filterFields","resultant","getIds","getDataSet","mappedItems","filteredItem","itemFields","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","types","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","_ids","_onEvent","setData","refresh","oldIds","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","setArmRotation","setArmLength","eye","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","axisColor","gridColor","dataColor","fill","stroke","strokeWidth","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","getNumberOfColumns","getNumberOfRows","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","position","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","horizontal","vertical","distance","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","start","getCurrent","end","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","prettyStep","text","xText","yText","zText","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","cross","topSideVisible","zAvg","lineJoin","lineCap","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","_getStrokeWidth","radius","arc","PI","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","mixin","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","listeners","hasListeners","sub","sum","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","getValue","dataView","progress","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","throttleRedraw","orientation","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","itemSet","itemsData","groupsData","getEventProperties","oncontextmenu","fitDone","getItemRange","setWindow","animation","fit","setGroups","setItems","_redraw","Configurator","Validator","printStyle","configureOptions","_createConfigurator","markDirty","refreshItems","errorFound","validate","selection","getSelection","setSelection","newDataSet","focus","itemData","_this","getDataRange","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","show","repositionX","getWidthLeft","getWidthRight","dataset","centerContainer","itemFromTarget","group","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","groupId","pageX","srcEvent","pageY","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","hammer","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","elemHammer","_handlers","Manager","PropagatingHammer","o","assign","wrapper","pointerType","isFirst","handler","eventType","hammers","idx","exportName","setTimeoutContext","bindFn","invokeArrayArg","arg","each","iterator","message","deprecationMessage","inherit","child","properties","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","find","inArray","src","findByKey","uniqueArray","results","prefixed","property","prefix","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","inputTarget","domHandler","ev","enable","init","createInputInstance","Type","inputClass","SUPPORT_POINTER_EVENTS","PointerEventInput","SUPPORT_ONLY_TOUCH","TouchInput","SUPPORT_TOUCH","TouchMouseInput","MouseInput","inputHandler","pointersLen","pointers","changedPointersLen","changedPointers","INPUT_START","isFinal","INPUT_END","INPUT_CANCEL","session","computeInputData","recognize","prevInput","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","getCenter","timeStamp","deltaTime","angle","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","rotation","getRotation","maxPointers","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","atan2","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","allow","pressed","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","SingleTouchInput","evTarget","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","started","normalizeSingleTouches","all","touches","changed","changedTouches","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","changedTargetTouches","touch","mouse","TouchAction","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","state","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","recognizers","preset","handlers","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","nextKey","dest","merge","MOBILE_REGEX","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","getTouchAction","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","freeGlobal","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","conversion","totalHidden","previousDelta","_isInsideRange","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","startDate","endDate","zoomKey","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","onRelease","offTouch","offRelease","_isResized","resized","_previousWidth","_previousHeight","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundVertical","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","initialDrawDone","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","configure","appliedOptions","setModuleOptions","_origRedraw","active","_stopAutoResize","setCustomTime","getCustomTime","setCustomTimeTitle","title","setCustomTitle","addCustomTime","timestamp","some","removeCustomTime","getVisibleItems","getWindow","borderRootHeight","borderRootWidth","autoHeight","containerHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","visibility","MAX_REDRAW","repaint","setCurrentTime","getCurrentTime","_startAutoResize","_onResize","lastWidth","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","align","groupOrderSwap","fromGroup","toGroup","targetOrder","groupOrder","selectable","multiselect","itemsAlwaysDraggable","editable","updateTime","updateGroup","groupEditable","onAdd","onUpdate","onMove","onRemove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","groupTouchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","groupHammer","_onGroupDragStart","_onGroupDrag","_onGroupDragEnd","addCallback","dirty","displayed","hide","unselect","select","rawVisibleItems","visibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","restack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","selected","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","_getGroupIndex","initialX","dragLeft","_cloneItemData","dragRight","selectedItem","baseGroupIndex","itemsToDrag","groupIndex","groupOffset","ctrlKey","metaKey","_onDragStartAddItem","xAbs","newItem","offsetLeft","updateGroupAllowed","newGroupBase","initial","updateTimeAllowed","initialStart","initialEnd","newOffset","_moveToGroup","originalOrder","movingUp","targetGroupTop","draggedGroupHeight","targetGroupHeight","targetGroup","draggedGroup","newOrder","origOrder","draggedId","numGroups","curPos","orgOffset","slippedPosition","switchGroup","shouldBeGroup","switchGroupId","shiftKey","oldSelection","newSelection","newItemData","itemGroup","lastSelectedGroup","multiselectPerGroup","_getItemRange","_item","itemSetFromTarget","minimumStep","autoScale","FORMAT","minorLabels","majorLabels","setMoment","setFormat","setMinimumStep","roundToMinor","hasNext","setScale","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","isMajor","getLabelMinor","getLabelMajor","getClassName","even","today","currentWeek","currentMonth","currentYear","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","Element","getLabelWidth","markerHeight","lastMarkerHeight","_calculateSubGroupHeights","limitSize","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","repositionY","resetSubgroups","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","itemIndex","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","searchFunction","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","getComputedStyle","maxWidth","_repaintDeleteButton","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","groupChanged","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","setAttribute","outerHTML","itemSetHeight","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","maxMinorChars","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","xNext","nextIsMajor","prevWidth","labelMinor","xFirstMajorLabel","MAX","showMinorGrid","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","warnedForOverflow","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","onClick","_hasParent","deactivate","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","warned","substring","showCurrentTime","currentTimeTimer","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","_removePopup","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","path","_arguments","_this2","_len","_key","_ret2","div","objectLabel","selectedValue","_update","_makeLabel","err","popupString","popupValue","oninput","_setupPopup","_this3","html","hideTimeout","deleteTimeout","_this4","correspondingElement","checkbox","checked","_this5","defaultColor","_showColorPicker","_this6","insertTo","setColor","setUpdateCallback","colorString","setCloseCallback","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","getOptions","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","_bindHammer","_setSize","htmlColors","black","navy","darkblue","mediumblue","darkgreen","teal","darkcyan","deepskyblue","darkturquoise","mediumspringgreen","lime","springgreen","aqua","cyan","midnightblue","dodgerblue","lightseagreen","forestgreen","seagreen","darkslategray","limegreen","mediumseagreen","turquoise","royalblue","steelblue","darkslateblue","mediumturquoise","indigo","darkolivegreen","cadetblue","cornflowerblue","mediumaquamarine","dimgray","slateblue","olivedrab","slategray","lightslategray","mediumslateblue","lawngreen","chartreuse","aquamarine","maroon","purple","olive","gray","skyblue","lightskyblue","blueviolet","darkred","darkmagenta","saddlebrown","darkseagreen","lightgreen","mediumpurple","darkviolet","palegreen","darkorchid","yellowgreen","sienna","brown","darkgray","lightblue","greenyellow","paleturquoise","lightsteelblue","powderblue","firebrick","darkgoldenrod","mediumorchid","rosybrown","darkkhaki","silver","mediumvioletred","indianred","peru","chocolate","tan","lightgrey","palevioletred","thistle","orchid","goldenrod","crimson","gainsboro","plum","burlywood","lightcyan","lavender","darksalmon","violet","palegoldenrod","lightcoral","khaki","aliceblue","honeydew","azure","sandybrown","wheat","beige","whitesmoke","mintcream","ghostwhite","salmon","antiquewhite","linen","lightgoldenrodyellow","oldlace","fuchsia","magenta","deeppink","orangered","tomato","hotpink","coral","darkorange","lightsalmon","orange","lightpink","pink","gold","peachpuff","navajowhite","moccasin","bisque","mistyrose","blanchedalmond","papayawhip","lavenderblush","seashell","cornsilk","lemonchiffon","floralwhite","snow","yellow","lightyellow","ivory","white","setInitial","htmlColor","_isColorString","rgbaArray","rgbObj","alpha","_setColor","_generateHueCircle","storePrevious","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","circle","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","pinch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","newLeft","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","any","function","null","groupsDraggable","linegraph","initialLoad","getLegend","isGroupVisible","yAxisLeft","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","forceGraphUpdate","lastStart","svgElements","groupsUsingDefaultStyles","svg","framework","Bars","Lines","Points","_removeGroup","_updateAllGroupData","removeGroup","_updateGroup","addGroup","groupsContent","groupCounts","extended","orginalY","_updateGraph","rangePerPixelInv","_getSortedGroupIds","grouplist","zIndex","bz","groupRanges","changeCalled","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","below","excludeFromStacking","_stack","_convertYcoordinates","calcPath","subGroupId","drawShading","subData","subPrevPoint","subNextPoint","dateComparator","first","dataContainer","increment","amountOfPoints","xDistance","pointsPerPixel","sampledData","combinedDataLeft","combinedDataRight","getYRange","getStackedYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","master","masterAxis","lineOffset","tempGroups","axisUsed","datapoints","screen_x","screen_y","svgHeight","convertValue","setZeroPosition","linegraphOptions","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","alignZeros","linegraphSVG","DOMelements","labels","conversionFactor","minWidth","stepPixels","zeroCrossing","amountOfSteps","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconHeight","iconOffset","groupArray","_cleanupIcons","activeGroups","_redrawLabels","_redrawTitle","customRange","autoScaleEnd","autoScaleStart","followScale","maxLabelSize","getLines","major","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","characterHeight","largestWidth","textMinor","textMajor","textTitle","measureCharTitle","titleCharWidth","zeroAlign","formattingFunction","majorSteps","minorSteps","customLines","minorStepIdx","magnitudefactor","determineScale","rounded","setCharHeight","setHeight","minimumStepValue","orderOfMagnitude","solutionFound","stepSize","is_major","getFirstMajor","majorStep","formatValue","bottomOffset","oldStepIdx","oldStart","oldEnd","increaseMagnitude","decreaseMagnitude","otherZero","otherStep","newRange","myOriginalZero","majorOffset","zeroOffset","pixels","usingDefaultStyle","zeroPosition","drawIcon","icon","Bargraph","fillHeight","outline","barWidth","originalWidth","bar1Height","bar2Height","processedGroupData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","heightOffset","_getSafeDrawData","amount","resolved","accumulatedNegative","accumulatedPositive","pointData","groupLabel","_getStackedYRange","xpos","getGroupTemplate","callbackResult","getCallback","Line","_catmullRom","_linear","fillPath","pathArray","subPathArray","dFill","zero","serializePath","inverse","_catmullRomUniform","p0","bp1","bp2","normalization","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","side","iconSize","iconSpacing","excludeFromLegend","textArea","scrollableHeight","drawLegendIcons","paddingTop","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_modulesKamadaKawaiJs2","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedConfigurator2","_sharedValidator","_sharedValidator2","_optionsJs","_modulesKamadaKawaiJs","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","_updateValueRange","unselectAll","dotData","gephi","gephiData","valueTotal","setValueRange","canvasToDOM","DOMtoCanvas","findNode","isCluster","openCluster","cluster","getNodesInCluster","clusterByConnection","clusterByHubsize","clusterOutliers","getSeed","enableEditMode","disableEditMode","addNodeMode","editNode","editNodeMode","addEdgeMode","editEdgeMode","deleteSelected","getPositions","storePositions","moveNode","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","getOptionsFromConfigurator","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","shapeProperties","borderDashes","useImageSize","useBorderWithImage","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","clearPositions","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","baseSize","baseFontSize","predefinedPosition","labelModule","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Symbol","Label","pointToSelf","fontOptions","yLine","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor22","fontColor","_setAlignment2","_setAlignment","_setAlignment22","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_inherits","subClass","superClass","setPrototypeOf","__proto__","_get","_x","_x2","_x3","_again","receiver","desc","getOwnPropertyDescriptor","getPrototypeOf","_utilNodeBase","_utilNodeBase2","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_utilCircleImageBase","_utilCircleImageBase2","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","neutralborderWidth","globalAlpha","drawImage","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_utilShapeBase","_utilShapeBase2","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Image","Square","Star","Text","Triangle","TriangleDown","_componentsEdge","_componentsEdge2","EdgesHandler","edgesListeners","arrows","scaleFactor","arrowStrikethrough","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_edgesCubicBezierEdge","_edgesCubicBezierEdge2","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","attachEdge","detachEdge","widthDiff","viaNode","getViaNode","arrowData","fromPoint","toPoint","getArrowData","core","drawLine","drawArrows","drawLabel","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_x4","_x5","_utilCubicBezierEdgeBase","_utilCubicBezierEdgeBase2","CubicBezierEdge","_CubicBezierEdgeBase","viaNodes","via1","via2","bezierCurveTo","x1","y1","x2","y2","_getViaCoordinates","nearNode","_findBorderPositionBezier","x3","y3","_ref","_ref2","_getDistanceToBezierEdge","_ref3","_ref32","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","via","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData22","_circle","pattern","lineDashOffset","_getCircleData3","_getCircleData32","dashedLine","_getCircleData4","_getCircleData42","_findBorderPosition","_findBorderPositionCircle","_getCircleData5","_getCircleData52","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData6","_getCircleData62","px","py","something","u","arrowPoint","guideOffset","findBorderPosition","guidePos","_getCircleData7","_getCircleData72","xi","yi","arrowCore","arrow","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","_x6","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_utilEdgeBase","_utilEdgeBase2","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_componentsPhysicsBarnesHutSolver","_componentsPhysicsBarnesHutSolver2","_componentsPhysicsRepulsionSolver","_componentsPhysicsRepulsionSolver2","_componentsPhysicsHierarchicalRepulsionSolver","_componentsPhysicsHierarchicalRepulsionSolver2","_componentsPhysicsSpringSolver","_componentsPhysicsSpringSolver2","_componentsPhysicsHierarchicalSpringSolver","_componentsPhysicsHierarchicalSpringSolver2","_componentsPhysicsCentralGravitySolver","_componentsPhysicsCentralGravitySolver2","_componentsPhysicsFA2BasedRepulsionSolver","_componentsPhysicsFA2BasedRepulsionSolver2","_componentsPhysicsFA2BasedCentralGravitySolver","_componentsPhysicsFA2BasedCentralGravitySolver2","PhysicsEngine","physicsBody","physicsNodeIndices","physicsEdgeIndices","forces","velocities","physicsEnabled","simulationInterval","requiresTimeout","previousStates","referenceState","freezeCache","renderTimer","adaptiveTimestep","adaptiveTimestepEnabled","adaptiveCounter","adaptiveInterval","stabilized","startedStabilization","stabilizationIterations","ready","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","iterations","updateInterval","onlyDynamicEdges","timestep","layoutFailed","initPhysics","updatePhysicsData","nodesSolver","edgesSolver","gravitySolver","modelOptions","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","physicsTime","runDoubleSpeed","amountOfIterations","calculateForces","moveNodes","revert","_evaluateStepQuality","nodeIds","positions","vx","vy","dpos","reference","maxNodeVelocity","averageNodeVelocity","velocityAdaptiveThreshold","nodeVelocity","_performStep","totalVelocity","solve","targetIterations","_freezeNodes","_stabilizationBatch","_finalizeStabilization","_restoreFrozenNodes","colorFactor","forceSize","arrowSize","BarnesHutSolver","barnesHutTree","randomSeed","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","maxY","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","seededRandom","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","steepness","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","CentralGravitySolver","_BarnesHutSolver2","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","_BarnesHutSolver","degree","_CentralGravitySolver2","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_CentralGravitySolver","_NetworkUtil","_NetworkUtil2","_componentsNodesCluster","_componentsNodesCluster2","ClusterEngine","clusteredNodes","clusteredEdges","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","cloneOptions","_cluster","edgeCount","clusters","usedNodes","relevantEdgeCount","gatheringSuccessful","childNodeId","_getConnectedId","clusterByEdgeCount","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","clusterEdgeProperties","childNode","otherNodeId","childKeys","createEdges","_edge","newEdge","clusteringEdgeReplacingId","_backupEdgeOptions","processProperties","childNodesOptions","childEdgesOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","reverse","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","cameraState","hammerFrame","_cleanUp","previousWidth","previousHeight","widthRatio","heightRatio","newScale","currentViewCenter","distanceFromCenter","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","previousRatio","_getCameraState","_setCameraState","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","initialZoom","zoomLevel","positionDefined","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_determineIfDifferent2","_determineIfDifferent","nodesChanges","edgesChanges","nodeSelected","selectObject","selectionObj","xFixed","yFixed","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","_unselectConnectedEdges","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","setPhysics","optionsBackup","improvedLayout","hierarchical","levelSeparation","nodeSpacing","treeSpacing","blockShifting","edgeMinimization","sortMethod","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","MAX_LEVELS","clusterThreshold","startLength","before","clusterBridges","after","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","definedPositions","undefinedLevel","hierarchicalLevels","lastNodeOnLevel","hierarchicalParents","hierarchicalChildren","hierarchicalTrees","treeIndex","distributionOrdering","distributionIndex","distributionOrderingPresence","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","stillShifting","branches","shiftTrees","treeSizes","getTreeSizes","shiftTree","_setPositionForHierarchy","getTreeSize","_getPositionForHierarchy","treeWidths","getBranchNodes","getBranchBoundary","branchMap","maxLevel","minSpace","maxSpace","branchNode","_getSpaceAroundNode2","_getSpaceAroundNode","_getSpaceAroundNode22","minSpaceNode","maxSpaceNode","getMaxLevel","getCollisionLevel","maxLevel1","maxLevel2","hasSameParent","parents1","parents2","parents","shiftElementsCloser","levels","centerParents","levelNodes","branchShiftCallback","centerParent","diffAbs","branchNodes1","branchNodes2","_getBranchBoundary","_getBranchBoundary2","max1","_getBranchBoundary3","_getBranchBoundary32","min2","minSpace2","diffBranch","_shiftBlock","_centerParent","minimizeEdgeLength","allEdges","nodeLevel","C2","referenceNodes","aboveEdges","otherNode","getFx","getDFx","getGuess","guess","guessMap","dfx","moveBranch","branchNodes","_getBranchBoundary4","_getBranchBoundary42","minSpaceBranch","maxSpaceBranch","branchOffset","_getSpaceAroundNode3","_getSpaceAroundNode32","newPosition","minimizeEdgeLengthBottomUp","shiftBranchesCloserBottomUp","centerAllParents","useMap","prevNode","prevPos","nextNode","nextPos","parentId","minPos","maxPos","_getSpaceAroundNode4","_getSpaceAroundNode42","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","minLevel","customCallback","levelByDirection","levelA","_setMinLevelToZero","fillInRelations","startingNodeId","crawler","parentLevel","childNodeLevel","previousPos","sharedParent","_findCommonParent","withChild","childA","childB","_this7","iterateParents","_parent","findParent","_parent2","foundParent","doNotUpdate","tree","ManipulationSystem","editMode","manipulationDiv","editModeDiv","closeDiv","manipulationHammers","temporaryUIFunctions","temporaryEventFunctions","temporaryIds","guiEnabled","inMode","selectedControlNode","initiallyActive","addNode","addEdge","editEdge","deleteNode","deleteEdge","controlNodeStyle","_restore","_setup","showManipulatorToolbar","_createEditButton","manipulationDOM","selectedNodeCount","selectedEdgeCount","selectedTotalCount","needSeperator","_createAddNodeButton","_createSeperator","_createAddEdgeButton","_createEditNodeButton","_createEditEdgeButton","_createDeleteButton","_bindHammerToDiv","toggleEditMode","_temporaryBindEvent","_createBackButton","_createDescription","_performAddNode","_getSelectedNode","finalizedData","_temporaryBindUI","_handleConnect","_finishConnect","_dragControlNode","edgeBeingEditedId","controlNodeFrom","_getNewTargetNode","controlNodeTo","_controlNodeTouch","_controlNodeDragStart","_controlNodeDrag","_controlNodeDragEnd","findBorderPositions","selectedNodes","selectedEdges","deleteFunction","_createWrappers","_removeManipulationDOM","_createButton","_cleanManipulatorHammers","_cleanupTemporaryNodesAndEdges","_unbindTemporaryUIs","_unbindTemporaryEvents","labelClassName","newFunction","boundFunction","UIfunctionName","functionName","eventName","domElement","indexTempEdge","indexTempNode","lastTouch","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_componentsAlgorithmsFloydWarshallJs","_componentsAlgorithmsFloydWarshallJs2","KamadaKawai","edgeStrength","distanceSolver","edgesArray","ignoreClusters","D_matrix","getDistances","_createL_matrix","_createK_matrix","innerThreshold","maxInnerIterations","maxEnergy","highE_nodeId","dE_dx","dE_dy","delta_m","subIterations","_getHighestEnergyNode2","_getHighestEnergyNode","_getHighestEnergyNode22","_moveNode","_getEnergy2","_getEnergy","_getEnergy22","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy3","_getEnergy32","x_m","y_m","iIdx","x_i","y_i","denominator","K_matrix","L_matrix","d2E_dx2","d2E_dxdy","d2E_dy2","FloydWarshall","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","kappa","ox","oy","xe","ye","xm","ym","wEllipse","hEllipse","ymb","yeb","xt","yt","xl","yl","xr","yr","patternLength","slope","distRemaining","patternIndex","dashLength","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","setValue","graphs","attr","getToken","tokenType","TOKENTYPE","NULL","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","maxLength","forEach2","elem1","elem2","setProp","convertAttr","mapping","visProp","visPropI","graphData","dotNode","graphNode","NODE_ATTR_MAPPING","convertEdge","dotEdge","graphEdge","EDGE_ATTR_MAPPING","subEdge","fontsize","fontcolor","labelfontcolor","fontname","fillcolor","labeltooltip","{","}","[","]",";","=",",","->","--","gephiJSON","inheritColor","gEdges","gNodes","gEdge","gNode","imageBroken","url","imageToCache","brokenUrl","imageToLoadBrokenUrlOn","onerror","_addImageToCache","imageToRedrawWith","cachedImage","img","onload","_redrawWithImage","_tryloadBrokenUrl","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyBA,cAEA,SAA2CA,EAAMC,GAC1B,gBAAZC,UAA0C,gBAAXC,QACxCA,OAAOD,QAAUD,IACQ,kBAAXG,SAAyBA,OAAOC,IAC9CD,UAAWH,GACe,gBAAZC,SACdA,QAAa,IAAID,IAEjBD,EAAU,IAAIC,KACbK,KAAM,WACT,MAAgB,UAAUC,GAKhB,QAASC,GAAoBC,GAG5B,GAAGC,EAAiBD,GACnB,MAAOC,GAAiBD,GAAUP,OAGnC,IAAIC,GAASO,EAAiBD,IAC7BP,WACAS,GAAIF,EACJG,QAAQ,EAUT,OANAL,GAAQE,GAAUI,KAAKV,EAAOD,QAASC,EAAQA,EAAOD,QAASM,GAG/DL,EAAOS,QAAS,EAGTT,EAAOD,QAvBf,GAAIQ,KAqCJ,OATAF,GAAoBM,EAAIP,EAGxBC,EAAoBO,EAAIL,EAGxBF,EAAoBQ,EAAI,GAGjBR,EAAoB,KAK/B,SAASL,EAAQD,EAASM,GAK9BN,EAAQe,KAAOT,EAAoB,GACnCN,EAAQgB,QAAUV,EAAoB,GAGtCN,EAAQiB,QAAUX,EAAoB,GACtCN,EAAQkB,SAAWZ,EAAoB,IACvCN,EAAQmB,MAAQb,EAAoB,GAGpCN,EAAQoB,QAAUd,EAAoB,IACtCN,EAAQqB,SACNC,OAAQhB,EAAoB,IAC5BiB,OAAQjB,EAAoB,IAC5BkB,QAASlB,EAAoB,IAC7BmB,QAASnB,EAAoB,IAC7BoB,OAAQpB,EAAoB,IAC5BqB,WAAYrB,EAAoB,KAIlCN,EAAQ4B,SAAWtB,EAAoB,IACvCN,EAAQ6B,QAAUvB,EAAoB,IACtCN,EAAQ8B,UACNC,KAAMzB,EAAoB,IAC1B0B,SAAU1B,EAAoB,IAC9B2B,MAAO3B,EAAoB,IAC3B4B,MAAO5B,EAAoB,IAC3B6B,SAAU7B,EAAoB,IAE9B8B,YACEC,OACEC,KAAMhC,EAAoB,IAC1BiC,eAAgBjC,EAAoB,IACpCkC,QAASlC,EAAoB,IAC7BmC,UAAWnC,EAAoB,IAC/BoC,UAAWpC,EAAoB,KAGjCqC,gBAAiBrC,EAAoB,IACrCsC,UAAWtC,EAAoB,IAC/BuC,YAAavC,EAAoB,IACjCwC,WAAYxC,EAAoB,IAChCyC,SAAUzC,EAAoB,IAC9B0C,UAAW1C,EAAoB,IAC/B2C,WAAY3C,EAAoB,IAChC4C,MAAO5C,EAAoB,IAC3B6C,QAAS7C,EAAoB,IAC7B8C,OAAQ9C,EAAoB,IAC5B+C,UAAW/C,EAAoB,IAC/BgD,SAAUhD,EAAoB,MAKlCN,EAAQuD,QAAUjD,EAAoB,IACtCN,EAAQwD,SACNC,OAAQnD,EAAoB,KAC5BoD,UAAWpD,EAAoB,KAC/BqD,YAAarD,EAAoB,KACjCsD,WAAYtD,EAAoB,MAElCN,EAAQwD,QAAQK,WAAa,SAAUC,GACrC,MAAO9D,GAAQwD,QAAQE,UAAUK,WAAWD,IAE9C9D,EAAQwD,QAAQQ,aAAe,SAAUF,EAAOG,GAC9C,MAAOjE,GAAQwD,QAAQG,YAAYO,WAAWJ,EAAOG,IAIvDjE,EAAQmE,OAAS7D,EAAoB,GACrCN,EAAQoE,OAAS9D,EAAoB,IACrCN,EAAQqE,SAAW/D,EAAoB,KAInC,SAASL,EAAQD,EAASM,GAS9B,GAAI6D,GAAS7D,EAAoB,GAC7BgE,EAAOhE,EAAoB,EAO/BN,GAAQuE,SAAW,SAAUC,GAC3B,MAAOA,aAAkBC,SAA2B,gBAAVD,IAO5CxE,EAAQ0E,mBAAqB,SAAUC,GACrC,GAAIA,EACF,KAAOA,EAAUC,mBAAoB,GACnC5E,EAAQ0E,mBAAmBC,EAAUE,YACrCF,EAAUG,YAAYH,EAAUE,aActC7E,EAAQ+E,UAAY,SAAUC,EAAKC,EAAKC,EAAOC,GAC7C,GAAIF,GAAOD,EACT,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,IASvCpF,EAAQsF,SAAW,SAAUd,GAC3B,MAAOA,aAAkBe,SAA2B,gBAAVf,IAQ5CxE,EAAQwF,OAAS,SAAUhB,GACzB,GAAIA,YAAkBiB,MACpB,OAAO,CACF,IAAIzF,EAAQsF,SAASd,GAAS,CAEnC,GAAIkB,GAAQC,EAAaC,KAAKpB,EAC9B,IAAIkB,EACF,OAAO,CACF,KAAKG,MAAMJ,KAAKK,MAAMtB,IAC3B,OAAO,EAIX,OAAO,GAQTxE,EAAQ+F,WAAa,WACnB,MAAOzB,GAAK0B,MAQdhG,EAAQiG,cAAgB,SAAUC,EAAKf,GACrC,IAAK,GAAIgB,KAAQD,GACXA,EAAIE,eAAeD,IACI,gBAAdD,GAAIC,KACbD,EAAIC,GAAQhB,IAYpBnF,EAAQqG,cAAgB,SAAUC,EAAGC,GACnC,GAAIC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5F,KAAK,GAAIN,KAAQG,GACCK,SAAZJ,EAAEJ,KACmB,gBAAZI,GAAEJ,GACMQ,SAAZJ,EAAEJ,IAAmC,OAAZI,EAAEJ,IAA+BQ,SAAZL,EAAEH,IAAuBK,KAAkB,EAG5FF,EAAEH,GAAQI,EAAEJ,SAFLG,GAAEH,GAKY,gBAAZG,GAAEH,IACXnG,EAAQqG,cAAcC,EAAEH,GAAOI,EAAEJ,GAAOK,KAclDxG,EAAQ4G,YAAc,SAAUN,EAAGC,GACjC,IAAK,GAAIM,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAAK,CACzC,GAAIC,GAAQL,UAAUI,EACtB,KAAK,GAAIV,KAAQW,GACfR,EAAEH,GAAQW,EAAMX,GAGpB,MAAOG,IAUTtG,EAAQ+G,OAAS,SAAUT,EAAGC,GAC5B,IAAK,GAAIM,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAAK,CACzC,GAAIC,GAAQL,UAAUI,EACtB,KAAK,GAAIV,KAAQW,GACXA,EAAMV,eAAeD,KACvBG,EAAEH,GAAQW,EAAMX,IAItB,MAAOG,IAWTtG,EAAQgH,gBAAkB,SAAUC,EAAOX,EAAGC,GAC5C,IAAKW,MAAMC,QAAQF,GACjB,KAAM,IAAIG,OAAM,uDAGlB,KAAK,GAAIP,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAGpC,IAAK,GAFDC,GAAQL,UAAUI,GAEb/F,EAAI,EAAGA,EAAImG,EAAMP,OAAQ5F,IAAK,CACrC,GAAIqF,GAAOc,EAAMnG,EACbgG,GAAMV,eAAeD,KACvBG,EAAEH,GAAQW,EAAMX,IAItB,MAAOG,IAWTtG,EAAQqH,oBAAsB,SAAUJ,EAAOX,EAAGC,GAChD,GAAIC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAG5F,IAAIS,MAAMC,QAAQZ,GAChB,KAAM,IAAIe,WAAU,yCAEtB,KAAK,GAAIT,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAEpC,IAAK,GADDC,GAAQL,UAAUI,GACb/F,EAAI,EAAGA,EAAImG,EAAMP,OAAQ5F,IAAK,CACrC,GAAIqF,GAAOc,EAAMnG,EACjB,IAAIgG,EAAMV,eAAeD,GACvB,GAAII,EAAEJ,IAASI,EAAEJ,GAAMoB,cAAgBC,OACrBb,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAMoB,cAAgBC,OAC1BxH,EAAQyH,WAAWnB,EAAEH,GAAOI,EAAEJ,IAAO,EAAOK,GAE5B,OAAZD,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,OAGX,CAAA,GAAIe,MAAMC,QAAQZ,EAAEJ,IACzB,KAAM,IAAImB,WAAU,yCAEJ,QAAZf,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,IAMtB,MAAOG,IAWTtG,EAAQ0H,uBAAyB,SAAUT,EAAOX,EAAGC,GACnD,GAAIC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAG5F,IAAIS,MAAMC,QAAQZ,GAChB,KAAM,IAAIe,WAAU,yCAEtB,KAAK,GAAInB,KAAQI,GACf,GAAIA,EAAEH,eAAeD,IACQ,IAAvBc,EAAMU,QAAQxB,GAChB,GAAII,EAAEJ,IAASI,EAAEJ,GAAMoB,cAAgBC,OACrBb,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAMoB,cAAgBC,OAC1BxH,EAAQyH,WAAWnB,EAAEH,GAAOI,EAAEJ,IAEd,OAAZI,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,OAGX,IAAIe,MAAMC,QAAQZ,EAAEJ,IAAQ,CACjCG,EAAEH,KACF,KAAK,GAAIU,GAAI,EAAGA,EAAIN,EAAEJ,GAAMO,OAAQG,IAClCP,EAAEH,GAAMyB,KAAKrB,EAAEJ,GAAMU,QAGP,QAAZN,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,EAMtB,OAAOG,IAYTtG,EAAQyH,WAAa,SAAUnB,EAAGC,EAAGK,EAAaJ,GAChD,IAAK,GAAIL,KAAQI,GACf,GAAIA,EAAEH,eAAeD,IAASS,KAAgB,EAC5C,GAAIL,EAAEJ,IAASI,EAAEJ,GAAMoB,cAAgBC,OACrBb,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAMoB,cAAgBC,OAC1BxH,EAAQyH,WAAWnB,EAAEH,GAAOI,EAAEJ,GAAOS,GAErB,OAAZL,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,OAGX,IAAIe,MAAMC,QAAQZ,EAAEJ,IAAQ,CACjCG,EAAEH,KACF,KAAK,GAAIU,GAAI,EAAGA,EAAIN,EAAEJ,GAAMO,OAAQG,IAClCP,EAAEH,GAAMyB,KAAKrB,EAAEJ,GAAMU,QAGP,QAAZN,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,EAKpB,OAAOG,IAUTtG,EAAQ6H,WAAa,SAAUvB,EAAGC,GAChC,GAAID,EAAEI,QAAUH,EAAEG,OAAQ,OAAO,CAEjC,KAAK,GAAIG,GAAI,EAAGiB,EAAMxB,EAAEI,OAAYoB,EAAJjB,EAASA,IACvC,GAAIP,EAAEO,IAAMN,EAAEM,GAAI,OAAO,CAG3B,QAAO,GAYT7G,EAAQ+H,QAAU,SAAUvD,EAAQwD,GAClC,GAAItC,EAEJ,IAAeiB,SAAXnC,EAAJ,CAGA,GAAe,OAAXA,EACF,MAAO,KAGT,KAAKwD,EACH,MAAOxD,EAET,IAAsB,gBAATwD,MAAwBA,YAAgBzC,SACnD,KAAM,IAAI6B,OAAM,wBAIlB,QAAQY,GACN,IAAK,UACL,IAAK,UACH,MAAOC,SAAQzD,EAEjB,KAAK,SACL,IAAK,SACH,MAAOC,QAAOD,EAAO0D,UAEvB,KAAK,SACL,IAAK,SACH,MAAO3C,QAAOf,EAEhB,KAAK,OACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAO,IAAIiB,MAAKjB,EAElB,IAAIA,YAAkBiB,MACpB,MAAO,IAAIA,MAAKjB,EAAO0D,UAClB,IAAI/D,EAAOgE,SAAS3D,GACzB,MAAO,IAAIiB,MAAKjB,EAAO0D,UAEzB,IAAIlI,EAAQsF,SAASd,GAEnB,MADAkB,GAAQC,EAAaC,KAAKpB,GACtBkB,EAEK,GAAID,MAAKhB,OAAOiB,EAAM,KAEpBvB,EAAOK,GAAQ4D,QAGxB,MAAM,IAAIhB,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,gBAGnF,KAAK,SACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAOL,GAAOK,EAEhB,IAAIA,YAAkBiB,MACpB,MAAOtB,GAAOK,EAAO0D,UAChB,IAAI/D,EAAOgE,SAAS3D,GACzB,MAAOL,GAAOK,EAEhB,IAAIxE,EAAQsF,SAASd,GAEnB,MADAkB,GAAQC,EAAaC,KAAKpB,GAGjBL,EAFLuB,EAEYjB,OAAOiB,EAAM,IAEXlB,EAGhB,MAAM,IAAI4C,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,gBAGnF,KAAK,UACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAO,IAAIiB,MAAKjB,EACX,IAAIA,YAAkBiB,MAC3B,MAAOjB,GAAO8D,aACT,IAAInE,EAAOgE,SAAS3D,GACzB,MAAOA,GAAO4D,SAASE,aAClB,IAAItI,EAAQsF,SAASd,GAE1B,MADAkB,GAAQC,EAAaC,KAAKpB,GACtBkB,EAEK,GAAID,MAAKhB,OAAOiB,EAAM,KAAK4C,cAEzB,GAAI7C,MAAKjB,GAAQ8D,aAG1B,MAAM,IAAIlB,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,mBAGnF,KAAK,UACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAO,SAAWA,EAAS,IACtB,IAAIA,YAAkBiB,MAC3B,MAAO,SAAWjB,EAAO0D,UAAY,IAChC,IAAIlI,EAAQsF,SAASd,GAAS,CACnCkB,EAAQC,EAAaC,KAAKpB,EAC1B,IAAIW,EAOJ,OAJEA,GAFEO,EAEM,GAAID,MAAKhB,OAAOiB,EAAM,KAAKwC,UAEzB,GAAIzC,MAAKjB,GAAQ0D,UAEtB,SAAW/C,EAAQ,KAE1B,KAAM,IAAIiC,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,mBAGjF,SACE,KAAM,IAAI4C,OAAM,iBAAmBY,EAAO,OAOhD,IAAIrC,GAAe,qBAOnB3F,GAAQqI,QAAU,SAAU7D,GAC1B,GAAIwD,SAAcxD,EAElB,OAAY,UAARwD,EACa,OAAXxD,EACK,OAELA,YAAkByD,SACb,UAELzD,YAAkBC,QACb,SAELD,YAAkBe,QACb,SAEL2B,MAAMC,QAAQ3C,GACT,QAELA,YAAkBiB,MACb,OAEF,SACU,UAARuC,EACF,SACU,WAARA,EACF,UACU,UAARA,EACF,SACWrB,SAATqB,EACF,YAGFA,GAUThI,EAAQuI,mBAAqB,SAAUC,EAAKC,GAE1C,IAAK,GADDC,MACK7B,EAAI,EAAGA,EAAI2B,EAAI9B,OAAQG,IAC9B6B,EAAOd,KAAKY,EAAI3B,GAGlB,OADA6B,GAAOd,KAAKa,GACLC,GAUT1I,EAAQ2I,UAAY,SAAUH,GAE5B,IAAK,GADDE,MACK7B,EAAI,EAAGA,EAAI2B,EAAI9B,OAAQG,IAC9B6B,EAAOd,KAAKY,EAAI3B,GAElB,OAAO6B,IAST1I,EAAQ4I,gBAAkB,SAAUC,GAClC,MAAOA,GAAKC,wBAAwBC,MAStC/I,EAAQgJ,eAAiB,SAAUH,GACjC,MAAOA,GAAKC,wBAAwBG,KAQtCjJ,EAAQkJ,aAAe,SAAUL,EAAMM,GACrC,GAAIC,GAAUP,EAAKM,UAAUE,MAAM,IACD,KAA9BD,EAAQzB,QAAQwB,KAClBC,EAAQxB,KAAKuB,GACbN,EAAKM,UAAYC,EAAQE,KAAK,OASlCtJ,EAAQuJ,gBAAkB,SAAUV,EAAMM,GACxC,GAAIC,GAAUP,EAAKM,UAAUE,MAAM,KAC/BG,EAAQJ,EAAQzB,QAAQwB,EACf,KAATK,IACFJ,EAAQK,OAAOD,EAAO,GACtBX,EAAKM,UAAYC,EAAQE,KAAK,OAalCtJ,EAAQ0J,QAAU,SAAUlF,EAAQmF,GAClC,GAAI9C,GAAGiB,CACP,IAAIZ,MAAMC,QAAQ3C,GAEhB,IAAKqC,EAAI,EAAGiB,EAAMtD,EAAOkC,OAAYoB,EAAJjB,EAASA,IACxC8C,EAASnF,EAAOqC,GAAIA,EAAGrC,OAIzB,KAAKqC,IAAKrC,GACJA,EAAO4B,eAAeS,IACxB8C,EAASnF,EAAOqC,GAAIA,EAAGrC,IAY/BxE,EAAQ4J,QAAU,SAAUpF,GAC1B,GAAIqF,KAEJ,KAAK,GAAI1D,KAAQ3B,GACXA,EAAO4B,eAAeD,IAAO0D,EAAMjC,KAAKpD,EAAO2B,GAGrD,OAAO0D,IAUT7J,EAAQ8J,eAAiB,SAAUtF,EAAQuF,EAAK5E,GAC9C,MAAIX,GAAOuF,KAAS5E,GAClBX,EAAOuF,GAAO5E,GACP,IAEA,GAUXnF,EAAQgK,SAAW,SAAUC,EAAIC,GAC/B,GAAIC,GAAU,KACVC,GAAgB,CAEpB,OAAO,SAASC,KACTF,EAWHC,GAAgB,GAVhBA,GAAgB,EAChBH,IAEAE,EAAUG,WAAW,WACnBH,EAAU,KACNC,GACFC,KAEDH,MAeTlK,EAAQuK,iBAAmB,SAAUC,EAASC,EAAQC,EAAUC,GAC1DH,EAAQD,kBACS5D,SAAfgE,IAA0BA,GAAa,GAE5B,eAAXF,GAA2BG,UAAUC,UAAUlD,QAAQ,YAAc,IACvE8C,EAAS,kBAGXD,EAAQD,iBAAiBE,EAAQC,EAAUC,IAE3CH,EAAQM,YAAY,KAAOL,EAAQC,IAWvC1K,EAAQ+K,oBAAsB,SAAUP,EAASC,EAAQC,EAAUC,GAC7DH,EAAQO,qBAESpE,SAAfgE,IAA0BA,GAAa,GAE5B,eAAXF,GAA2BG,UAAUC,UAAUlD,QAAQ,YAAc,IACvE8C,EAAS,kBAGXD,EAAQO,oBAAoBN,EAAQC,EAAUC,IAG9CH,EAAQQ,YAAY,KAAOP,EAAQC,IAOvC1K,EAAQiL,eAAiB,SAAUC,GAC5BA,IAAOA,EAAQC,OAAOD,OAEvBA,EAAMD,eACRC,EAAMD,iBAEJC,EAAME,aAAc,GAS1BpL,EAAQqL,UAAY,SAAUH,GAEvBA,IACHA,EAAQC,OAAOD,MAGjB,IAAII,EAaJ,OAXIJ,GAAMI,OACRA,EAASJ,EAAMI,OACNJ,EAAMK,aACfD,EAASJ,EAAMK,YAGM5E,QAAnB2E,EAAOE,UAA4C,GAAnBF,EAAOE,WAEzCF,EAASA,EAAOG,YAGXH,GAQTtL,EAAQ0L,UAAY,SAAUlB,EAASmB,GAGrC,IAFA,GAAIC,GAAIpB,EAEDoB,GAAG,CACR,GAAIA,IAAMD,EACR,OAAO,CAETC,GAAIA,EAAEH,WAGR,OAAO,GAGTzL,EAAQ6L,UAQR7L,EAAQ6L,OAAOC,UAAY,SAAU3G,EAAO4G,GAK1C,MAJoB,kBAAT5G,KACTA,EAAQA,KAGG,MAATA,EACc,GAATA,EAGF4G,GAAgB,MASzB/L,EAAQ6L,OAAOG,SAAW,SAAU7G,EAAO4G,GAKzC,MAJoB,kBAAT5G,KACTA,EAAQA,KAGG,MAATA,EACKV,OAAOU,IAAU4G,GAAgB,KAGnCA,GAAgB,MASzB/L,EAAQ6L,OAAOI,SAAW,SAAU9G,EAAO4G,GAKzC,MAJoB,kBAAT5G,KACTA,EAAQA,KAGG,MAATA,EACKI,OAAOJ,GAGT4G,GAAgB,MASzB/L,EAAQ6L,OAAOK,OAAS,SAAU/G,EAAO4G,GAKvC,MAJoB,kBAAT5G,KACTA,EAAQA,KAGNnF,EAAQsF,SAASH,GACZA,EACEnF,EAAQuE,SAASY,GACnBA,EAAQ,KAER4G,GAAgB,MAU3B/L,EAAQ6L,OAAOM,UAAY,SAAUhH,EAAO4G,GAK1C,MAJoB,kBAAT5G,KACTA,EAAQA,KAGHA,GAAS4G,GAAgB,MASlC/L,EAAQoM,SAAW,SAAUC,GAE3B,GAAIC,GAAiB,kCACrBD,GAAMA,EAAIE,QAAQD,EAAgB,SAAU1L,EAAG4L,EAAGC,EAAGlG,GACnD,MAAOiG,GAAIA,EAAIC,EAAIA,EAAIlG,EAAIA,GAE7B,IAAImG,GAAS,4CAA4C9G,KAAKyG,EAC9D,OAAOK,IACLF,EAAGG,SAASD,EAAO,GAAI,IACvBD,EAAGE,SAASD,EAAO,GAAI,IACvBnG,EAAGoG,SAASD,EAAO,GAAI,KACrB,MASN1M,EAAQ4M,gBAAkB,SAAUC,EAAOC,GACzC,GAA6B,IAAzBD,EAAMlF,QAAQ,QAChB,MAAOkF,EACF,IAA4B,IAAxBA,EAAMlF,QAAQ,OAAc,CACrC,GAAIoF,GAAMF,EAAMG,OAAOH,EAAMlF,QAAQ,KAAO,GAAG4E,QAAQ,IAAK,IAAIlD,MAAM,IACtE,OAAO,QAAU0D,EAAI,GAAK,IAAMA,EAAI,GAAK,IAAMA,EAAI,GAAK,IAAMD,EAAU,IAExE,GAAIC,GAAM/M,EAAQoM,SAASS,EAC3B,OAAW,OAAPE,EACKF,EAEA,QAAUE,EAAIP,EAAI,IAAMO,EAAIN,EAAI,IAAMM,EAAIxG,EAAI,IAAMuG,EAAU,KAa3E9M,EAAQiN,SAAW,SAAUC,EAAKC,EAAOC,GACvC,MAAO,MAAQ,GAAK,KAAOF,GAAO,KAAOC,GAAS,GAAKC,GAAMC,SAAS,IAAIC,MAAM,IASlFtN,EAAQuN,WAAa,SAAUV,GAC7B,GAAIhM,EACJ,IAAIb,EAAQsF,SAASuH,MAAW,EAAM,CACpC,GAAI7M,EAAQwN,WAAWX,MAAW,EAAM,CACtC,GAAIE,GAAMF,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMnG,OAAS,GAAG2C,MAAM,KAAKoE,IAAI,SAAUtI,GAC7E,MAAOwH,UAASxH,IAElB0H,GAAQ7M,EAAQiN,SAASF,EAAI,GAAIA,EAAI,GAAIA,EAAI,IAE/C,GAAI/M,EAAQ0N,WAAWb,MAAW,EAAM,CACtC,GAAIc,GAAM3N,EAAQ4N,SAASf,GACvBgB,GAAoBC,EAAGH,EAAIG,EAAGC,EAAW,GAARJ,EAAII,EAASC,EAAG3I,KAAKL,IAAI,EAAW,KAAR2I,EAAIK,IACjEC,GAAmBH,EAAGH,EAAIG,EAAGC,EAAG1I,KAAKL,IAAI,EAAW,KAAR2I,EAAII,GAAWC,EAAW,GAARL,EAAIK,GAClEE,EAAiBlO,EAAQmO,SAASF,EAAeH,EAAGG,EAAeF,EAAGE,EAAeD,GACrFI,EAAkBpO,EAAQmO,SAASN,EAAgBC,EAAGD,EAAgBE,EAAGF,EAAgBG,EAC7FnN,IACEwN,WAAYxB,EACZyB,OAAQJ,EACRK,WACEF,WAAYD,EACZE,OAAQJ,GAEVM,OACEH,WAAYD,EACZE,OAAQJ,QAIZrN,IACEwN,WAAYxB,EACZyB,OAAQzB,EACR0B,WACEF,WAAYxB,EACZyB,OAAQzB,GAEV2B,OACEH,WAAYxB,EACZyB,OAAQzB,QAKdhM,MACAA,EAAEwN,WAAaxB,EAAMwB,YAAc1H,OACnC9F,EAAEyN,OAASzB,EAAMyB,QAAU3H,OAEvB3G,EAAQsF,SAASuH,EAAM0B,WACzB1N,EAAE0N,WACAD,OAAQzB,EAAM0B,UACdF,WAAYxB,EAAM0B,YAGpB1N,EAAE0N,aACF1N,EAAE0N,UAAUF,WAAaxB,EAAM0B,WAAa1B,EAAM0B,UAAUF,YAAc1H,OAC1E9F,EAAE0N,UAAUD,OAASzB,EAAM0B,WAAa1B,EAAM0B,UAAUD,QAAU3H,QAGhE3G,EAAQsF,SAASuH,EAAM2B,OACzB3N,EAAE2N,OACAF,OAAQzB,EAAM2B,MACdH,WAAYxB,EAAM2B,QAGpB3N,EAAE2N,SACF3N,EAAE2N,MAAMH,WAAaxB,EAAM2B,OAAS3B,EAAM2B,MAAMH,YAAc1H,OAC9D9F,EAAE2N,MAAMF,OAASzB,EAAM2B,OAAS3B,EAAM2B,MAAMF,QAAU3H,OAI1D,OAAO9F,IAYTb,EAAQyO,SAAW,SAAUvB,EAAKC,EAAOC,GACvCF,GAAY,IAAIC,GAAgB,IAAIC,GAAc,GAClD,IAAIsB,GAASrJ,KAAKL,IAAIkI,EAAK7H,KAAKL,IAAImI,EAAOC,IACvCuB,EAAStJ,KAAKJ,IAAIiI,EAAK7H,KAAKJ,IAAIkI,EAAOC,GAG3C,IAAIsB,GAAUC,EACZ,OAASb,EAAG,EAAGC,EAAG,EAAGC,EAAGU,EAI1B,IAAIE,GAAI1B,GAAOwB,EAASvB,EAAQC,EAAOA,GAAQsB,EAASxB,EAAMC,EAAQC,EAAOF,EACzEY,EAAIZ,GAAOwB,EAAS,EAAItB,GAAQsB,EAAS,EAAI,EAC7CG,EAAM,IAAMf,EAAIc,GAAKD,EAASD,IAAW,IACzCI,GAAcH,EAASD,GAAUC,EACjCxJ,EAAQwJ,CACZ,QAASb,EAAGe,EAAKd,EAAGe,EAAYd,EAAG7I,GAGrC,IAAI4J,IAEF1F,MAAO,SAAe2F,GACpB,GAAIC,KAWJ,OATAD,GAAQ3F,MAAM,KAAKK,QAAQ,SAAUwF,GACnC,GAAoB,IAAhBA,EAAMC,OAAc,CACtB,GAAIC,GAAQF,EAAM7F,MAAM,KACpBU,EAAMqF,EAAM,GAAGD,OACfhK,EAAQiK,EAAM,GAAGD,MACrBF,GAAOlF,GAAO5E,KAIX8J,GAIT3F,KAAM,SAAc2F,GAClB,MAAOzH,QAAO6H,KAAKJ,GAAQxB,IAAI,SAAU1D,GACvC,MAAOA,GAAM,KAAOkF,EAAOlF,KAC1BT,KAAK,OASZtJ,GAAQsP,WAAa,SAAU9E,EAASwE,GACtC,GAAIO,GAAgBR,EAAQ1F,MAAMmB,EAAQ0E,MAAMF,SAC5CQ,EAAYT,EAAQ1F,MAAM2F,GAC1BC,EAASjP,EAAQ+G,OAAOwI,EAAeC,EAE3ChF,GAAQ0E,MAAMF,QAAUD,EAAQzF,KAAK2F,IAQvCjP,EAAQyP,cAAgB,SAAUjF,EAASwE,GACzC,GAAIC,GAASF,EAAQ1F,MAAMmB,EAAQ0E,MAAMF,SACrCU,EAAeX,EAAQ1F,MAAM2F,EAEjC,KAAK,GAAIjF,KAAO2F,GACVA,EAAatJ,eAAe2D,UACvBkF,GAAOlF,EAIlBS,GAAQ0E,MAAMF,QAAUD,EAAQzF,KAAK2F,IAWvCjP,EAAQ2P,SAAW,SAAU7B,EAAGC,EAAGC,GACjC,GAAIxB,GAAGC,EAAGlG,EAENM,EAAIxB,KAAKuK,MAAU,EAAJ9B,GACf+B,EAAQ,EAAJ/B,EAAQjH,EACZ/F,EAAIkN,GAAK,EAAID,GACb+B,EAAI9B,GAAK,EAAI6B,EAAI9B,GACjBgC,EAAI/B,GAAK,GAAK,EAAI6B,GAAK9B,EAE3B,QAAQlH,EAAI,GACV,IAAK,GACH2F,EAAIwB,EAAGvB,EAAIsD,EAAGxJ,EAAIzF,CAAE,MACtB,KAAK,GACH0L,EAAIsD,EAAGrD,EAAIuB,EAAGzH,EAAIzF,CAAE,MACtB,KAAK,GACH0L,EAAI1L,EAAG2L,EAAIuB,EAAGzH,EAAIwJ,CAAE,MACtB,KAAK,GACHvD,EAAI1L,EAAG2L,EAAIqD,EAAGvJ,EAAIyH,CAAE,MACtB,KAAK,GACHxB,EAAIuD,EAAGtD,EAAI3L,EAAGyF,EAAIyH,CAAE,MACtB,KAAK,GACHxB,EAAIwB,EAAGvB,EAAI3L,EAAGyF,EAAIuJ,EAGtB,OAAStD,EAAGnH,KAAKuK,MAAU,IAAJpD,GAAUC,EAAGpH,KAAKuK,MAAU,IAAJnD,GAAUlG,EAAGlB,KAAKuK,MAAU,IAAJrJ,KAGzEvG,EAAQmO,SAAW,SAAUL,EAAGC,EAAGC,GACjC,GAAIjB,GAAM/M,EAAQ2P,SAAS7B,EAAGC,EAAGC,EACjC,OAAOhO,GAAQiN,SAASF,EAAIP,EAAGO,EAAIN,EAAGM,EAAIxG,IAG5CvG,EAAQ4N,SAAW,SAAUvB,GAC3B,GAAIU,GAAM/M,EAAQoM,SAASC,EAC3B,OAAOrM,GAAQyO,SAAS1B,EAAIP,EAAGO,EAAIN,EAAGM,EAAIxG,IAG5CvG,EAAQ0N,WAAa,SAAUrB,GAC7B,GAAI2D,GAAO,qCAAqCC,KAAK5D,EACrD,OAAO2D,IAGThQ,EAAQwN,WAAa,SAAUT,GAC7BA,EAAMA,EAAIR,QAAQ,IAAK,GACvB,IAAIyD,GAAO,wCAAwCC,KAAKlD,EACxD,OAAOiD,IAEThQ,EAAQkQ,YAAc,SAAUC,GAC9BA,EAAOA,EAAK5D,QAAQ,IAAK,GACzB,IAAIyD,GAAO,kDAAkDC,KAAKE,EAClE,OAAOH,IAUThQ,EAAQoQ,sBAAwB,SAAUC,EAAQC,GAChD,GAA8B,gBAAnBA,GAA6B,CAEtC,IAAK,GADDC,GAAW/I,OAAOgJ,OAAOF,GACpBzJ,EAAI,EAAGA,EAAIwJ,EAAO3J,OAAQG,IAC7ByJ,EAAgBlK,eAAeiK,EAAOxJ,KACC,gBAA9ByJ,GAAgBD,EAAOxJ,MAChC0J,EAASF,EAAOxJ,IAAM7G,EAAQyQ,aAAaH,EAAgBD,EAAOxJ,KAIxE,OAAO0J,GAEP,MAAO,OAWXvQ,EAAQyQ,aAAe,SAAUH,GAC/B,GAA8B,gBAAnBA,GAA6B,CACtC,GAAIC,GAAW/I,OAAOgJ,OAAOF,EAC7B,KAAK,GAAIzJ,KAAKyJ,GACRA,EAAgBlK,eAAeS,IACA,gBAAtByJ,GAAgBzJ,KACzB0J,EAAS1J,GAAK7G,EAAQyQ,aAAaH,EAAgBzJ,IAIzD,OAAO0J,GAEP,MAAO,OAWXvQ,EAAQ0Q,WAAa,SAAUpK,EAAGqK,GAChC,IAAK,GAAI9J,GAAI,EAAGA,EAAIP,EAAEI,OAAQG,IAAK,CAEjC,IAAK,GADD+J,GAAItK,EAAEO,GACDgK,EAAIhK,EAAGgK,EAAI,GAAKF,EAAQC,EAAGtK,EAAEuK,EAAI,IAAM,EAAGA,IACjDvK,EAAEuK,GAAKvK,EAAEuK,EAAI,EAEfvK,GAAEuK,GAAKD,EAET,MAAOtK,IAWTtG,EAAQ8Q,aAAe,SAAUC,EAAa9M,EAAS4H,GACrD,GACImF,IADgBvK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxEA,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAEzF,IAAwB,OAApBxC,EAAQ4H,GACVkF,EAAYlF,GAAUrE,OAAOgJ,OAAOQ,EAAcnF,QAElD,IAAwBlF,SAApB1C,EAAQ4H,GACV,GAA+B,iBAApB5H,GAAQ4H,GACjBkF,EAAYlF,GAAQoF,QAAUhN,EAAQ4H,OACjC,CAC2BlF,SAA5B1C,EAAQ4H,GAAQoF,UAClBF,EAAYlF,GAAQoF,SAAU,EAEhC,KAAK,GAAI9K,KAAQlC,GAAQ4H,GACnB5H,EAAQ4H,GAAQzF,eAAeD,KACjC4K,EAAYlF,GAAQ1F,GAAQlC,EAAQ4H,GAAQ1F,MAmBxDnG,EAAQkR,mBAAqB,SAAUC,EAAcC,EAAYC,EAAOC,GAMtE,IALA,GAAIC,GAAgB,IAChBC,EAAY,EACZC,EAAM,EACNC,EAAOP,EAAazK,OAAS,EAEnBgL,GAAPD,GAA2BF,EAAZC,GAA2B,CAC/C,GAAIG,GAAStM,KAAKuK,OAAO6B,EAAMC,GAAQ,GAEnCE,EAAOT,EAAaQ,GACpBxM,EAAmBwB,SAAX2K,EAAuBM,EAAKP,GAASO,EAAKP,GAAOC,GAEzDO,EAAeT,EAAWjM,EAC9B,IAAoB,GAAhB0M,EAEF,MAAOF,EACkB,KAAhBE,EAETJ,EAAME,EAAS,EAGfD,EAAOC,EAAS,EAGlBH,IAGF,MAAO,IAgBTxR,EAAQ8R,kBAAoB,SAAUX,EAAc7F,EAAQ+F,EAAOU,EAAgBX,GAWjF,IAVA,GAIIY,GAAW7M,EAAO8M,EAAWN,EAJ7BJ,EAAgB,IAChBC,EAAY,EACZC,EAAM,EACNC,EAAOP,EAAazK,OAAS,EAG7B0K,EAA2BzK,QAAdyK,EAA0BA,EAAa,SAAU9K,EAAGC,GACnE,MAAOD,IAAKC,EAAI,EAAQA,EAAJD,EAAQ,GAAK,GAGrBoL,GAAPD,GAA2BF,EAAZC,GAA2B,CAO/C,GALAG,EAAStM,KAAKuK,MAAM,IAAO8B,EAAOD,IAClCO,EAAYb,EAAa9L,KAAKJ,IAAI,EAAG0M,EAAS,IAAIN,GAClDlM,EAAQgM,EAAaQ,GAAQN,GAC7BY,EAAYd,EAAa9L,KAAKL,IAAImM,EAAazK,OAAS,EAAGiL,EAAS,IAAIN,GAEvC,GAA7BD,EAAWjM,EAAOmG,GAEpB,MAAOqG,EACF,IAAIP,EAAWY,EAAW1G,GAAU,GAAK8F,EAAWjM,EAAOmG,GAAU,EAE1E,MAAyB,UAAlByG,EAA6B1M,KAAKJ,IAAI,EAAG0M,EAAS,GAAKA,CACzD,IAAIP,EAAWjM,EAAOmG,GAAU,GAAK8F,EAAWa,EAAW3G,GAAU,EAE1E,MAAyB,UAAlByG,EAA6BJ,EAAStM,KAAKL,IAAImM,EAAazK,OAAS,EAAGiL,EAAS,EAGpFP,GAAWjM,EAAOmG,GAAU,EAE9BmG,EAAME,EAAS,EAGfD,EAAOC,EAAS,EAGpBH,IAIF,MAAO,IAQTxR,EAAQkS,iBAENC,OAAQ,SAAgBpC,GACtB,MAAOA,IAGTqC,WAAY,SAAoBrC,GAC9B,MAAOA,GAAIA,GAGbsC,YAAa,SAAqBtC,GAChC,MAAOA,IAAK,EAAIA,IAGlBuC,cAAe,SAAuBvC,GACpC,MAAW,GAAJA,EAAS,EAAIA,EAAIA,EAAI,IAAM,EAAI,EAAIA,GAAKA,GAGjDwC,YAAa,SAAqBxC,GAChC,MAAOA,GAAIA,EAAIA,GAGjByC,aAAc,SAAsBzC,GAClC,QAASA,EAAIA,EAAIA,EAAI,GAGvB0C,eAAgB,SAAwB1C,GACtC,MAAW,GAAJA,EAAS,EAAIA,EAAIA,EAAIA,GAAKA,EAAI,IAAM,EAAIA,EAAI,IAAM,EAAIA,EAAI,GAAK,GAGxE2C,YAAa,SAAqB3C,GAChC,MAAOA,GAAIA,EAAIA,EAAIA,GAGrB4C,aAAc,SAAsB5C,GAClC,MAAO,MAAMA,EAAIA,EAAIA,EAAIA,GAG3B6C,eAAgB,SAAwB7C,GACtC,MAAW,GAAJA,EAAS,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,EAAI,IAAMA,EAAIA,EAAIA,EAAIA,GAG5D8C,YAAa,SAAqB9C,GAChC,MAAOA,GAAIA,EAAIA,EAAIA,EAAIA,GAGzB+C,aAAc,SAAsB/C,GAClC,MAAO,KAAMA,EAAIA,EAAIA,EAAIA,EAAIA,GAG/BgD,eAAgB,SAAwBhD,GACtC,MAAW,GAAJA,EAAS,GAAKA,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,EAAI,KAAOA,EAAIA,EAAIA,EAAIA,EAAIA,KAMpE,SAAS9P,EAAQD,EAASM,GAM9BL,EAAOD,QAA4B,mBAAXmL,SAA0BA,OAAe,QAAK7K,EAAoB,IAItF,SAASL,EAAQD,EAASM,IAEF,SAASL,IAMnC,SAAU+S,EAAQjT,GACRE,EAAOD,QAAUD,KAG3BK,KAAM,WAIJ,QAAS6S,KACL,MAAOC,IAAaC,MAAM,KAAM1M,WAKpC,QAAS2M,GAAiBzJ,GACtBuJ,GAAevJ,EAGnB,QAASxC,GAAQrD,GACb,MAAiD,mBAA1C0D,OAAO6L,UAAUhG,SAAS1M,KAAKmD,GAG1C,QAAS0B,GAAO1B,GACZ,MAAOA,aAAiB2B,OAAkD,kBAA1C+B,OAAO6L,UAAUhG,SAAS1M,KAAKmD,GAGnE,QAAS2J,GAAIjF,EAAKyB,GACd,GAAcpD,GAAVyM,IACJ,KAAKzM,EAAI,EAAGA,EAAI2B,EAAI9B,SAAUG,EAC1ByM,EAAI1L,KAAKqC,EAAGzB,EAAI3B,GAAIA,GAExB,OAAOyM,GAGX,QAASC,GAAWjN,EAAGC,GACnB,MAAOiB,QAAO6L,UAAUjN,eAAezF,KAAK2F,EAAGC,GAGnD,QAASQ,GAAOT,EAAGC,GACf,IAAK,GAAIM,KAAKN,GACNgN,EAAWhN,EAAGM,KACdP,EAAEO,GAAKN,EAAEM,GAYjB,OARI0M,GAAWhN,EAAG,cACdD,EAAE+G,SAAW9G,EAAE8G,UAGfkG,EAAWhN,EAAG,aACdD,EAAE4B,QAAU3B,EAAE2B,SAGX5B,EAGX,QAASkN,GAAuB1P,EAAO2P,EAAQC,EAAQC,GACnD,MAAOC,IAAiB9P,EAAO2P,EAAQC,EAAQC,GAAQ,GAAME,MAGjE,QAASC,KAEL,OACIC,OAAkB,EAClBC,gBACAC,eACAC,SAAkB,GAClBC,cAAkB,EAClBC,WAAkB,EAClBC,aAAkB,KAClBC,eAAkB,EAClBC,iBAAkB,EAClBC,KAAkB,GAI1B,QAASC,GAAgB7T,GAIrB,MAHa,OAATA,EAAE8T,MACF9T,EAAE8T,IAAMZ,KAELlT,EAAE8T,IAGb,QAASC,GAAe/T,GACpB,GAAkB,MAAdA,EAAEgU,SAAkB,CACpB,GAAIC,GAAQJ,EAAgB7T,EAC5BA,GAAEgU,WAAY/O,MAAMjF,EAAEkU,GAAGC,cACrBF,EAAMX,SAAW,IAChBW,EAAMd,OACNc,EAAMR,cACNQ,EAAMG,gBACNH,EAAMT,WACNS,EAAMP,eACNO,EAAMN,iBAEP3T,EAAEqU,UACFrU,EAAEgU,SAAWhU,EAAEgU,UACa,IAAxBC,EAAMV,eACwB,IAA9BU,EAAMb,aAAatN,QACDC,SAAlBkO,EAAMK,SAGlB,MAAOtU,GAAEgU,SAGb,QAASO,GAAsBN,GAC3B,GAAIjU,GAAI4S,EAAsB4B,IAQ9B,OAPa,OAATP,EACA9N,EAAO0N,EAAgB7T,GAAIiU,GAG3BJ,EAAgB7T,GAAG2T,iBAAkB,EAGlC3T,EAGX,QAASyU,GAAYvR,GACjB,MAAiB,UAAVA,EAOX,QAASwR,GAAWC,EAAIC,GACpB,GAAI3O,GAAGV,EAAMsP,CAiCb,IA/BKJ,EAAYG,EAAKE,oBAClBH,EAAGG,iBAAmBF,EAAKE,kBAE1BL,EAAYG,EAAKG,MAClBJ,EAAGI,GAAKH,EAAKG,IAEZN,EAAYG,EAAKI,MAClBL,EAAGK,GAAKJ,EAAKI,IAEZP,EAAYG,EAAKK,MAClBN,EAAGM,GAAKL,EAAKK,IAEZR,EAAYG,EAAKP,WAClBM,EAAGN,QAAUO,EAAKP,SAEjBI,EAAYG,EAAKM,QAClBP,EAAGO,KAAON,EAAKM,MAEdT,EAAYG,EAAKO,UAClBR,EAAGQ,OAASP,EAAKO,QAEhBV,EAAYG,EAAKQ,WAClBT,EAAGS,QAAUR,EAAKQ,SAEjBX,EAAYG,EAAKd,OAClBa,EAAGb,IAAMD,EAAgBe,IAExBH,EAAYG,EAAKS,WAClBV,EAAGU,QAAUT,EAAKS,SAGlBC,GAAiBxP,OAAS,EAC1B,IAAKG,IAAKqP,IACN/P,EAAO+P,GAAiBrP,GACxB4O,EAAMD,EAAKrP,GACNkP,EAAYI,KACbF,EAAGpP,GAAQsP,EAKvB,OAAOF,GAMX,QAASY,GAAOC,GACZd,EAAWlV,KAAMgW,GACjBhW,KAAK0U,GAAK,GAAIrP,MAAkB,MAAb2Q,EAAOtB,GAAasB,EAAOtB,GAAGC,UAAYK,KAGzDiB,MAAqB,IACrBA,IAAmB,EACnBpD,EAAmBqD,aAAalW,MAChCiW,IAAmB,GAI3B,QAASlO,GAAUjC,GACf,MAAOA,aAAeiQ,IAAkB,MAAPjQ,GAAuC,MAAxBA,EAAIwP,iBAGxD,QAASa,GAAUC,GACf,MAAa,GAATA,EACOnR,KAAKoR,KAAKD,GAEVnR,KAAKuK,MAAM4G,GAI1B,QAASE,GAAMC,GACX,GAAIC,IAAiBD,EACjBxR,EAAQ,CAMZ,OAJsB,KAAlByR,GAAuBC,SAASD,KAChCzR,EAAQoR,EAASK,IAGdzR,EAIX,QAAS2R,GAAcC,EAAQC,EAAQC,GACnC,GAGIpQ,GAHAiB,EAAMzC,KAAKL,IAAI+R,EAAOrQ,OAAQsQ,EAAOtQ,QACrCwQ,EAAa7R,KAAK8R,IAAIJ,EAAOrQ,OAASsQ,EAAOtQ,QAC7C0Q,EAAQ,CAEZ,KAAKvQ,EAAI,EAAOiB,EAAJjB,EAASA,KACZoQ,GAAeF,EAAOlQ,KAAOmQ,EAAOnQ,KACnCoQ,GAAeP,EAAMK,EAAOlQ,MAAQ6P,EAAMM,EAAOnQ,MACnDuQ,GAGR,OAAOA,GAAQF,EAGnB,QAASG,MAOT,QAASC,GAAgBvN,GACrB,MAAOA,GAAMA,EAAIwN,cAAchL,QAAQ,IAAK,KAAOxC,EAMvD,QAASyN,GAAaC,GAGlB,IAFA,GAAW5G,GAAG6G,EAAMhE,EAAQrK,EAAxBxC,EAAI,EAEDA,EAAI4Q,EAAM/Q,QAAQ,CAKrB,IAJA2C,EAAQiO,EAAgBG,EAAM5Q,IAAIwC,MAAM,KACxCwH,EAAIxH,EAAM3C,OACVgR,EAAOJ,EAAgBG,EAAM5Q,EAAI,IACjC6Q,EAAOA,EAAOA,EAAKrO,MAAM,KAAO,KACzBwH,EAAI,GAAG,CAEV,GADA6C,EAASiE,EAAWtO,EAAMiE,MAAM,EAAGuD,GAAGvH,KAAK,MAEvC,MAAOoK,EAEX,IAAIgE,GAAQA,EAAKhR,QAAUmK,GAAKiG,EAAczN,EAAOqO,GAAM,IAAS7G,EAAI,EAEpE,KAEJA,KAEJhK,IAEJ,MAAO,MAGX,QAAS8Q,GAAWC,GAChB,GAAIC,GAAY,IAEhB,KAAKC,GAAQF,IAA4B,mBAAX3X,IACtBA,GAAUA,EAAOD,QACrB,IACI6X,EAAYE,GAAaC,OACvB,WAAkC,GAAIpM,GAAI,GAAIxE,OAAM,gCAAiE,MAA7BwE,GAAEqM,KAAO,mBAA0BrM,KAG7HsM,EAAmCL,GACrC,MAAOjM,IAEb,MAAOkM,IAAQF,GAMnB,QAASM,GAAoCnO,EAAKoO,GAC9C,GAAIC,EAeJ,OAdIrO,KAEIqO,EADA/C,EAAY8C,GACLE,EAA0BtO,GAG1BuO,EAAavO,EAAKoO,GAGzBC,IAEAL,GAAeK,IAIhBL,GAAaC,MAGxB,QAASM,GAAcV,EAAMO,GACzB,MAAe,QAAXA,GACAA,EAAOI,KAAOX,EACdE,GAAQF,GAAQE,GAAQF,IAAS,GAAIP,GACrCS,GAAQF,GAAMY,IAAIL,GAGlBD,EAAmCN,GAE5BE,GAAQF,WAGRE,IAAQF,GACR,MAKf,QAASS,GAA2BtO,GAChC,GAAI2J,EAMJ,IAJI3J,GAAOA,EAAIkM,SAAWlM,EAAIkM,QAAQ+B,QAClCjO,EAAMA,EAAIkM,QAAQ+B,QAGjBjO,EACD,MAAOgO,GAGX,KAAK5Q,EAAQ4C,GAAM,CAGf,GADA2J,EAASiE,EAAW5N,GAEhB,MAAO2J,EAEX3J,IAAOA,GAGX,MAAOyN,GAAazN,GAKxB,QAAS0O,GAAcC,EAAMC,GACzB,GAAIC,GAAYF,EAAKnB,aACrBsB,IAAQD,GAAaC,GAAQD,EAAY,KAAOC,GAAQF,GAAaD,EAGzE,QAASI,GAAeC,GACpB,MAAwB,gBAAVA,GAAqBF,GAAQE,IAAUF,GAAQE,EAAMxB,eAAiB5Q,OAGxF,QAASqS,GAAqBC,GAC1B,GACIC,GACA/S,EAFAgT,IAIJ,KAAKhT,IAAQ8S,GACL1F,EAAW0F,EAAa9S,KACxB+S,EAAiBJ,EAAe3S,GAC5B+S,IACAC,EAAgBD,GAAkBD,EAAY9S,IAK1D,OAAOgT,GAGX,QAASC,GAAWtV,GAChB,MAAOA,aAAiBuV,WAAsD,sBAA1C7R,OAAO6L,UAAUhG,SAAS1M,KAAKmD,GAGvE,QAASwV,GAAYZ,EAAMa,GACvB,MAAO,UAAUpU,GACb,MAAa,OAATA,GACAqU,EAAapZ,KAAMsY,EAAMvT,GACzB8N,EAAmBqD,aAAalW,KAAMmZ,GAC/BnZ,MAEAqZ,EAAarZ,KAAMsY,IAKtC,QAASe,GAAcC,EAAKhB,GACxB,MAAOgB,GAAIC,UACPD,EAAI5E,GAAG,OAAS4E,EAAI3D,OAAS,MAAQ,IAAM2C,KAAUtD,IAG7D,QAASoE,GAAcE,EAAKhB,EAAMvT,GAC1BuU,EAAIC,WACJD,EAAI5E,GAAG,OAAS4E,EAAI3D,OAAS,MAAQ,IAAM2C,GAAMvT,GAMzD,QAASyU,GAAQb,EAAO5T,GACpB,GAAIuT,EACJ,IAAqB,gBAAVK,GACP,IAAKL,IAAQK,GACT3Y,KAAKoY,IAAIE,EAAMK,EAAML,QAIzB,IADAK,EAAQD,EAAeC,GACnBK,EAAWhZ,KAAK2Y,IAChB,MAAO3Y,MAAK2Y,GAAO5T,EAG3B,OAAO/E,MAGX,QAASyZ,GAASrD,EAAQsD,EAAcC,GACpC,GAAIC,GAAY,GAAK3U,KAAK8R,IAAIX,GAC1ByD,EAAcH,EAAeE,EAAUtT,OACvCwT,EAAO1D,GAAU,CACrB,QAAQ0D,EAAQH,EAAY,IAAM,GAAM,KACpC1U,KAAK8U,IAAI,GAAI9U,KAAKJ,IAAI,EAAGgV,IAAc5M,WAAWL,OAAO,GAAKgN,EAetE,QAASI,GAAgBC,EAAOC,EAAQC,EAAS5Q,GAC7C,GAAI6Q,GAAO7Q,CACa,iBAAbA,KACP6Q,EAAO,WACH,MAAOpa,MAAKuJ,OAGhB0Q,IACAI,GAAqBJ,GAASG,GAE9BF,IACAG,GAAqBH,EAAO,IAAM,WAC9B,MAAOT,GAASW,EAAKrH,MAAM/S,KAAMqG,WAAY6T,EAAO,GAAIA,EAAO,MAGnEC,IACAE,GAAqBF,GAAW,WAC5B,MAAOna,MAAKsa,aAAaH,QAAQC,EAAKrH,MAAM/S,KAAMqG,WAAY4T,KAK1E,QAASM,GAAuB7W,GAC5B,MAAIA,GAAM4B,MAAM,YACL5B,EAAMyI,QAAQ,WAAY,IAE9BzI,EAAMyI,QAAQ,MAAO,IAGhC,QAASqO,GAAmBnH,GACxB,GAA4C5M,GAAGH,EAA3CmD,EAAQ4J,EAAO/N,MAAMmV,GAEzB,KAAKhU,EAAI,EAAGH,EAASmD,EAAMnD,OAAYA,EAAJG,EAAYA,IACvC4T,GAAqB5Q,EAAMhD,IAC3BgD,EAAMhD,GAAK4T,GAAqB5Q,EAAMhD,IAEtCgD,EAAMhD,GAAK8T,EAAuB9Q,EAAMhD,GAIhD,OAAO,UAAU6S,GACb,GAAIoB,GAAS,EACb,KAAKjU,EAAI,EAAOH,EAAJG,EAAYA,IACpBiU,GAAUjR,EAAMhD,YAAcwS,UAAWxP,EAAMhD,GAAGlG,KAAK+Y,EAAKjG,GAAU5J,EAAMhD,EAEhF,OAAOiU,IAKf,QAASC,GAAana,EAAG6S,GACrB,MAAK7S,GAAE+Y,WAIPlG,EAASuH,EAAavH,EAAQ7S,EAAE8Z,cAChCO,GAAgBxH,GAAUwH,GAAgBxH,IAAWmH,EAAmBnH,GAEjEwH,GAAgBxH,GAAQ7S,IANpBA,EAAE8Z,aAAaQ,cAS9B,QAASF,GAAavH,EAAQC,GAG1B,QAASyH,GAA4BrX,GACjC,MAAO4P,GAAO0H,eAAetX,IAAUA,EAH3C,GAAI+C,GAAI,CAOR,KADAwU,GAAsBC,UAAY,EAC3BzU,GAAK,GAAKwU,GAAsBpL,KAAKwD,IACxCA,EAASA,EAAOlH,QAAQ8O,GAAuBF,GAC/CE,GAAsBC,UAAY,EAClCzU,GAAK,CAGT,OAAO4M,GA8BX,QAAS8H,GAAelB,EAAOmB,EAAOC,GAClCC,GAAQrB,GAASjB,EAAWoC,GAASA,EAAQ,SAAUG,EAAUjB,GAC7D,MAAQiB,IAAYF,EAAeA,EAAcD,GAIzD,QAASI,GAAuBvB,EAAOjE,GACnC,MAAK7C,GAAWmI,GAASrB,GAIlBqB,GAAQrB,GAAOjE,EAAOnB,QAASmB,EAAOH,SAHlC,GAAI4F,QAAOC,EAAezB,IAOzC,QAASyB,GAAe/N,GACpB,MAAOgO,GAAYhO,EAAExB,QAAQ,KAAM,IAAIA,QAAQ,sCAAuC,SAAUyP,EAASC,EAAIC,EAAIC,EAAIC,GACjH,MAAOH,IAAMC,GAAMC,GAAMC,KAIjC,QAASL,GAAYhO,GACjB,MAAOA,GAAExB,QAAQ,yBAA0B,QAK/C,QAAS8P,GAAehC,EAAO1Q,GAC3B,GAAI9C,GAAG2T,EAAO7Q,CASd,KARqB,gBAAV0Q,KACPA,GAASA,IAEW,gBAAb1Q,KACP6Q,EAAO,SAAU1W,EAAO+F,GACpBA,EAAMF,GAAY+M,EAAM5S,KAG3B+C,EAAI,EAAGA,EAAIwT,EAAM3T,OAAQG,IAC1ByV,GAAOjC,EAAMxT,IAAM2T,EAI3B,QAAS+B,GAAmBlC,EAAO1Q,GAC/B0S,EAAchC,EAAO,SAAUvW,EAAO+F,EAAOuM,EAAQiE,GACjDjE,EAAOoG,GAAKpG,EAAOoG,OACnB7S,EAAS7F,EAAOsS,EAAOoG,GAAIpG,EAAQiE,KAI3C,QAASoC,GAAwBpC,EAAOvW,EAAOsS,GAC9B,MAATtS,GAAiByP,EAAW+I,GAAQjC,IACpCiC,GAAOjC,GAAOvW,EAAOsS,EAAOsG,GAAItG,EAAQiE,GAchD,QAASsC,GAAYC,EAAMC,GACvB,MAAO,IAAIpX,MAAKA,KAAKqX,IAAIF,EAAMC,EAAQ,EAAG,IAAIE,aAkDlD,QAASC,GAAcpc,EAAG6S,GACtB,MAAOtM,GAAQ/G,KAAK6c,SAAW7c,KAAK6c,QAAQrc,EAAEic,SAC1Czc,KAAK6c,QAAQC,GAAiBjN,KAAKwD,GAAU,SAAW,cAAc7S,EAAEic,SAIhF,QAASM,GAAmBvc,EAAG6S,GAC3B,MAAOtM,GAAQ/G,KAAKgd,cAAgBhd,KAAKgd,aAAaxc,EAAEic,SACpDzc,KAAKgd,aAAaF,GAAiBjN,KAAKwD,GAAU,SAAW,cAAc7S,EAAEic,SAGrF,QAASQ,GAAmBC,EAAW7J,EAAQE,GAC3C,GAAI9M,GAAG6S,EAAK8B,CAQZ,KANKpb,KAAKmd,eACNnd,KAAKmd,gBACLnd,KAAKod,oBACLpd,KAAKqd,sBAGJ5W,EAAI,EAAO,GAAJA,EAAQA,IAAK,CAYrB,GAVA6S,EAAMlG,GAAuB,IAAM3M,IAC/B8M,IAAWvT,KAAKod,iBAAiB3W,KACjCzG,KAAKod,iBAAiB3W,GAAK,GAAIgV,QAAO,IAAMzb,KAAKsd,OAAOhE,EAAK,IAAInN,QAAQ,IAAK,IAAM,IAAK,KACzFnM,KAAKqd,kBAAkB5W,GAAK,GAAIgV,QAAO,IAAMzb,KAAKud,YAAYjE,EAAK,IAAInN,QAAQ,IAAK,IAAM,IAAK,MAE9FoH,GAAWvT,KAAKmd,aAAa1W,KAC9B2U,EAAQ,IAAMpb,KAAKsd,OAAOhE,EAAK,IAAM,KAAOtZ,KAAKud,YAAYjE,EAAK,IAClEtZ,KAAKmd,aAAa1W,GAAK,GAAIgV,QAAOL,EAAMjP,QAAQ,IAAK,IAAK,MAG1DoH,GAAqB,SAAXF,GAAqBrT,KAAKod,iBAAiB3W,GAAGoJ,KAAKqN,GAC7D,MAAOzW,EACJ,IAAI8M,GAAqB,QAAXF,GAAoBrT,KAAKqd,kBAAkB5W,GAAGoJ,KAAKqN,GACpE,MAAOzW,EACJ,KAAK8M,GAAUvT,KAAKmd,aAAa1W,GAAGoJ,KAAKqN,GAC5C,MAAOzW,IAOnB,QAAS+W,GAAUlE,EAAKvU,GACpB,GAAI0Y,EAEJ,OAAKnE,GAAIC,UAMY,gBAAVxU,KACPA,EAAQuU,EAAIgB,aAAaoD,YAAY3Y,GAEhB,gBAAVA,IACAuU,GAIfmE,EAAaxY,KAAKL,IAAI0U,EAAIqE,OAAQpB,EAAYjD,EAAIkD,OAAQzX,IAC1DuU,EAAI5E,GAAG,OAAS4E,EAAI3D,OAAS,MAAQ,IAAM,SAAS5Q,EAAO0Y,GACpDnE,GAdIA,EAiBf,QAASsE,GAAa7Y,GAClB,MAAa,OAATA,GACAyY,EAASxd,KAAM+E,GACf8N,EAAmBqD,aAAalW,MAAM,GAC/BA,MAEAqZ,EAAarZ,KAAM,SAIlC,QAAS6d,MACL,MAAOtB,GAAYvc,KAAKwc,OAAQxc,KAAKyc,SAIzC,QAASqB,IAAkBvC,GACvB,MAAIvb,MAAK+d,mBACA5K,EAAWnT,KAAM,iBAClBge,GAAmBzd,KAAKP,MAExBub,EACOvb,KAAKie,wBAELje,KAAKke,mBAGTle,KAAKie,yBAA2B1C,EACnCvb,KAAKie,wBAA0Bje,KAAKke,kBAKhD,QAASC,IAAa5C,GAClB,MAAIvb,MAAK+d,mBACA5K,EAAWnT,KAAM,iBAClBge,GAAmBzd,KAAKP,MAExBub,EACOvb,KAAKoe,mBAELpe,KAAKqe,cAGTre,KAAKoe,oBAAsB7C,EAC9Bvb,KAAKoe,mBAAqBpe,KAAKqe,aAI3C,QAASL,MACL,QAASM,GAAUpY,EAAGC,GAClB,MAAOA,GAAEG,OAASJ,EAAEI,OAGxB,GACIG,GAAG6S,EADHiF,KAAkBC,KAAiBC,IAEvC,KAAKhY,EAAI,EAAO,GAAJA,EAAQA,IAEhB6S,EAAMlG,GAAuB,IAAM3M,IACnC8X,EAAY/W,KAAKxH,KAAKud,YAAYjE,EAAK,KACvCkF,EAAWhX,KAAKxH,KAAKsd,OAAOhE,EAAK,KACjCmF,EAAYjX,KAAKxH,KAAKsd,OAAOhE,EAAK,KAClCmF,EAAYjX,KAAKxH,KAAKud,YAAYjE,EAAK,IAO3C,KAHAiF,EAAYG,KAAKJ,GACjBE,EAAWE,KAAKJ,GAChBG,EAAYC,KAAKJ,GACZ7X,EAAI,EAAO,GAAJA,EAAQA,IAChB8X,EAAY9X,GAAKkV,EAAY4C,EAAY9X,IACzC+X,EAAW/X,GAAKkV,EAAY6C,EAAW/X,IACvCgY,EAAYhY,GAAKkV,EAAY8C,EAAYhY,GAG7CzG,MAAKqe,aAAe,GAAI5C,QAAO,KAAOgD,EAAYvV,KAAK,KAAO,IAAK,KACnElJ,KAAKke,kBAAoBle,KAAKqe,aAC9Bre,KAAKoe,mBAAqB,GAAI3C,QAAO,KAAO+C,EAAWtV,KAAK,KAAO,KAAM,KACzElJ,KAAKie,wBAA0B,GAAIxC,QAAO,KAAO8C,EAAYrV,KAAK,KAAO,KAAM,KAGnF,QAASyV,IAAene,GACpB,GAAIsT,GACA5N,EAAI1F,EAAE8b,EAyBV,OAvBIpW,IAAqC,KAAhCmO,EAAgB7T,GAAGsT,WACxBA,EACI5N,EAAE0Y,IAAe,GAAK1Y,EAAE0Y,IAAe,GAAMA,GAC7C1Y,EAAE2Y,IAAe,GAAK3Y,EAAE2Y,IAAetC,EAAYrW,EAAE4Y,IAAO5Y,EAAE0Y,KAAUC,GACxE3Y,EAAE6Y,IAAe,GAAK7Y,EAAE6Y,IAAe,IAAmB,KAAZ7Y,EAAE6Y,MAA+B,IAAd7Y,EAAE8Y,KAA+B,IAAd9Y,EAAE+Y,KAAoC,IAAnB/Y,EAAEgZ,KAAuBH,GAChI7Y,EAAE8Y,IAAe,GAAK9Y,EAAE8Y,IAAe,GAAMA,GAC7C9Y,EAAE+Y,IAAe,GAAK/Y,EAAE+Y,IAAe,GAAMA,GAC7C/Y,EAAEgZ,IAAe,GAAKhZ,EAAEgZ,IAAe,IAAMA,GAC7C,GAEA7K,EAAgB7T,GAAG2e,qBAAkCL,GAAXhL,GAAmBA,EAAW+K,MACxE/K,EAAW+K,IAEXxK,EAAgB7T,GAAG4e,gBAA+B,KAAbtL,IACrCA,EAAWuL,IAEXhL,EAAgB7T,GAAG8e,kBAAiC,KAAbxL,IACvCA,EAAWyL,IAGflL,EAAgB7T,GAAGsT,SAAWA,GAG3BtT,EAGX,QAASgf,IAAKC,GACN5M,EAAmB6M,+BAAgC,GAC1B,mBAAbC,UAA6BA,QAAQH,MACjDG,QAAQH,KAAK,wBAA0BC,GAI/C,QAASG,IAAUH,EAAK5V,GACpB,GAAIgW,IAAY,CAEhB,OAAOlZ,GAAO,WAKV,MAJIkZ,KACAL,GAAKC,EAAM,gBAAkB3Y,MAAMmM,UAAU/F,MAAM3M,KAAK8F,WAAW6C,KAAK,MAAQ,MAAO,GAAKlC,QAASlF,OACrG+d,GAAY,GAEThW,EAAGkJ,MAAM/S,KAAMqG,YACvBwD,GAKP,QAASiW,IAAgBtI,EAAMiI,GACtBM,GAAavI,KACdgI,GAAKC,GACLM,GAAavI,IAAQ,GA4C7B,QAASwI,IAAchK,GACnB,GAAIvP,GAAGwZ,EAGHC,EAAWC,EAAYC,EAAYC,EAFnCC,EAAStK,EAAOT,GAChBjQ,EAAQib,GAAiB/a,KAAK8a,IAAWE,GAAchb,KAAK8a,EAGhE,IAAIhb,EAAO,CAGP,IAFA+O,EAAgB2B,GAAQ5B,KAAM,EAEzB3N,EAAI,EAAGwZ,EAAIQ,GAASna,OAAY2Z,EAAJxZ,EAAOA,IACpC,GAAIga,GAASha,GAAG,GAAGjB,KAAKF,EAAM,IAAK,CAC/B6a,EAAaM,GAASha,GAAG,GACzByZ,EAAYO,GAASha,GAAG,MAAO,CAC/B,OAGR,GAAkB,MAAd0Z,EAEA,YADAnK,EAAOxB,UAAW,EAGtB,IAAIlP,EAAM,GAAI,CACV,IAAKmB,EAAI,EAAGwZ,EAAIS,GAASpa,OAAY2Z,EAAJxZ,EAAOA,IACpC,GAAIia,GAASja,GAAG,GAAGjB,KAAKF,EAAM,IAAK,CAE/B8a,GAAc9a,EAAM,IAAM,KAAOob,GAASja,GAAG,EAC7C,OAGR,GAAkB,MAAd2Z,EAEA,YADApK,EAAOxB,UAAW,GAI1B,IAAK0L,GAA2B,MAAdE,EAEd,YADApK,EAAOxB,UAAW,EAGtB,IAAIlP,EAAM,GAAI,CACV,IAAIqb,GAAQnb,KAAKF,EAAM,IAInB,YADA0Q,EAAOxB,UAAW,EAFlB6L,GAAW,IAMnBrK,EAAOR,GAAK2K,GAAcC,GAAc,KAAOC,GAAY,IAC3DO,GAA0B5K,OAE1BA,GAAOxB,UAAW,EAK1B,QAASqM,IAAiB7K,GACtB,GAAI4F,GAAUkF,GAAgBtb,KAAKwQ,EAAOT,GAE1C,OAAgB,QAAZqG,OACA5F,EAAOtB,GAAK,GAAIrP,OAAMuW,EAAQ,MAIlCoE,GAAchK,QACVA,EAAOxB,YAAa,UACbwB,GAAOxB,SACd3B,EAAmBkO,wBAAwB/K,MAcnD,QAASgL,IAAYC,EAAGzgB,EAAGgO,EAAGd,EAAGwT,EAAGvT,EAAGwT,GAGnC,GAAIxD,GAAO,GAAItY,MAAK4b,EAAGzgB,EAAGgO,EAAGd,EAAGwT,EAAGvT,EAAGwT,EAMtC,OAHQ,KAAJF,GAAWA,GAAK,GAAKxK,SAASkH,EAAKyD,gBACnCzD,EAAK0D,YAAYJ,GAEdtD,EAGX,QAAS2D,IAAeL,GACpB,GAAItD,GAAO,GAAItY,MAAKA,KAAKqX,IAAI3J,MAAM,KAAM1M,WAMzC,OAHQ,KAAJ4a,GAAWA,GAAK,GAAKxK,SAASkH,EAAK4D,mBACnC5D,EAAK6D,eAAeP,GAEjBtD,EA2CX,QAAS8D,IAAWjF,GAChB,MAAOkF,IAAWlF,GAAQ,IAAM,IAGpC,QAASkF,IAAWlF,GAChB,MAAQA,GAAO,IAAM,GAAKA,EAAO,MAAQ,GAAMA,EAAO,MAAQ,EAalE,QAASmF,MACL,MAAOD,IAAW1hB,KAAKwc,QAI3B,QAASoF,IAAgBpF,EAAMqF,EAAKC,GAChC,GACIC,GAAM,EAAIF,EAAMC,EAEhBE,GAAS,EAAIV,GAAc9E,EAAM,EAAGuF,GAAKE,YAAcJ,GAAO,CAElE,QAAQG,EAAQD,EAAM,EAI1B,QAASG,IAAmB1F,EAAM2F,EAAMC,EAASP,EAAKC,GAClD,GAGIO,GAASC,EAHTC,GAAgB,EAAIH,EAAUP,GAAO,EACrCW,EAAaZ,GAAgBpF,EAAMqF,EAAKC,GACxCW,EAAY,EAAI,GAAKN,EAAO,GAAKI,EAAeC,CAcpD,OAXiB,IAAbC,GACAJ,EAAU7F,EAAO,EACjB8F,EAAeb,GAAWY,GAAWI,GAC9BA,EAAYhB,GAAWjF,IAC9B6F,EAAU7F,EAAO,EACjB8F,EAAeG,EAAYhB,GAAWjF,KAEtC6F,EAAU7F,EACV8F,EAAeG,IAIfjG,KAAM6F,EACNI,UAAWH,GAInB,QAASI,IAAWpJ,EAAKuI,EAAKC,GAC1B,GAEIa,GAASN,EAFTG,EAAaZ,GAAgBtI,EAAIkD,OAAQqF,EAAKC,GAC9CK,EAAOld,KAAKuK,OAAO8J,EAAImJ,YAAcD,EAAa,GAAK,GAAK,CAchE,OAXW,GAAPL,GACAE,EAAU/I,EAAIkD,OAAS,EACvBmG,EAAUR,EAAOS,GAAYP,EAASR,EAAKC,IACpCK,EAAOS,GAAYtJ,EAAIkD,OAAQqF,EAAKC,IAC3Ca,EAAUR,EAAOS,GAAYtJ,EAAIkD,OAAQqF,EAAKC,GAC9CO,EAAU/I,EAAIkD,OAAS,IAEvB6F,EAAU/I,EAAIkD,OACdmG,EAAUR,IAIVA,KAAMQ,EACNnG,KAAM6F,GAId,QAASO,IAAYpG,EAAMqF,EAAKC,GAC5B,GAAIU,GAAaZ,GAAgBpF,EAAMqF,EAAKC,GACxCe,EAAiBjB,GAAgBpF,EAAO,EAAGqF,EAAKC,EACpD,QAAQL,GAAWjF,GAAQgG,EAAaK,GAAkB,EAI9D,QAASC,IAAS5c,EAAGC,EAAG1F,GACpB,MAAS,OAALyF,EACOA,EAEF,MAALC,EACOA,EAEJ1F,EAGX,QAASsiB,IAAiB/M,GAEtB,GAAIgN,GAAW,GAAI3d,MAAKwN,EAAmBoQ,MAC3C,OAAIjN,GAAOkN,SACCF,EAASzB,iBAAkByB,EAASG,cAAeH,EAASrG,eAEhEqG,EAAS5B,cAAe4B,EAASI,WAAYJ,EAASK,WAOlE,QAASC,IAAiBtN,GACtB,GAAIvP,GAAGkX,EAAkB4F,EAAaC,EAAzB9f,IAEb,KAAIsS,EAAOtB,GAAX,CA6BA,IAzBA6O,EAAcR,GAAiB/M,GAG3BA,EAAOoG,IAAyB,MAAnBpG,EAAOsG,GAAGuC,KAAqC,MAApB7I,EAAOsG,GAAGsC,KAClD6E,GAAsBzN,GAItBA,EAAO0N,aACPF,EAAYV,GAAS9M,EAAOsG,GAAGwC,IAAOyE,EAAYzE,KAE9C9I,EAAO0N,WAAajC,GAAW+B,KAC/BnP,EAAgB2B,GAAQmJ,oBAAqB,GAGjDxB,EAAO2D,GAAckC,EAAW,EAAGxN,EAAO0N,YAC1C1N,EAAOsG,GAAGsC,IAASjB,EAAKwF,cACxBnN,EAAOsG,GAAGuC,IAAQlB,EAAKhB,cAQtBlW,EAAI,EAAO,EAAJA,GAAyB,MAAhBuP,EAAOsG,GAAG7V,KAAcA,EACzCuP,EAAOsG,GAAG7V,GAAK/C,EAAM+C,GAAK8c,EAAY9c,EAI1C,MAAW,EAAJA,EAAOA,IACVuP,EAAOsG,GAAG7V,GAAK/C,EAAM+C,GAAsB,MAAhBuP,EAAOsG,GAAG7V,GAAqB,IAANA,EAAU,EAAI,EAAKuP,EAAOsG,GAAG7V,EAI7D,MAApBuP,EAAOsG,GAAGyC,KACgB,IAAtB/I,EAAOsG,GAAG0C,KACY,IAAtBhJ,EAAOsG,GAAG2C,KACiB,IAA3BjJ,EAAOsG,GAAG4C,MACdlJ,EAAO2N,UAAW,EAClB3N,EAAOsG,GAAGyC,IAAQ,GAGtB/I,EAAOtB,IAAMsB,EAAOkN,QAAU5B,GAAgBN,IAAYjO,MAAM,KAAMrP,GAGnD,MAAfsS,EAAON,MACPM,EAAOtB,GAAGkP,cAAc5N,EAAOtB,GAAGmP,gBAAkB7N,EAAON,MAG3DM,EAAO2N,WACP3N,EAAOsG,GAAGyC,IAAQ,KAI1B,QAAS0E,IAAsBzN,GAC3B,GAAI8N,GAAGC,EAAU5B,EAAMC,EAASP,EAAKC,EAAKkC,EAAMC,CAEhDH,GAAI9N,EAAOoG,GACC,MAAR0H,EAAEI,IAAqB,MAAPJ,EAAEK,GAAoB,MAAPL,EAAEM,GACjCvC,EAAM,EACNC,EAAM,EAMNiC,EAAWjB,GAASgB,EAAEI,GAAIlO,EAAOsG,GAAGwC,IAAO4D,GAAW2B,KAAsB,EAAG,GAAG7H,MAClF2F,EAAOW,GAASgB,EAAEK,EAAG,GACrB/B,EAAUU,GAASgB,EAAEM,EAAG,IACV,EAAVhC,GAAeA,EAAU,KACzB6B,GAAkB,KAGtBpC,EAAM7L,EAAOH,QAAQyO,MAAMzC,IAC3BC,EAAM9L,EAAOH,QAAQyO,MAAMxC,IAE3BiC,EAAWjB,GAASgB,EAAES,GAAIvO,EAAOsG,GAAGwC,IAAO4D,GAAW2B,KAAsBxC,EAAKC,GAAKtF,MACtF2F,EAAOW,GAASgB,EAAEA,EAAG,GAEV,MAAPA,EAAEtV,GAEF4T,EAAU0B,EAAEtV,GACE,EAAV4T,GAAeA,EAAU,KACzB6B,GAAkB,IAER,MAAPH,EAAEtY,GAET4W,EAAU0B,EAAEtY,EAAIqW,GACZiC,EAAEtY,EAAI,GAAKsY,EAAEtY,EAAI,KACjByY,GAAkB,IAItB7B,EAAUP,GAGP,EAAPM,GAAYA,EAAOS,GAAYmB,EAAUlC,EAAKC,GAC9CzN,EAAgB2B,GAAQoJ,gBAAiB,EACf,MAAnB6E,EACP5P,EAAgB2B,GAAQsJ,kBAAmB,GAE3C0E,EAAO9B,GAAmB6B,EAAU5B,EAAMC,EAASP,EAAKC,GACxD9L,EAAOsG,GAAGwC,IAAQkF,EAAKxH,KACvBxG,EAAO0N,WAAaM,EAAKvB,WAQjC,QAAS7B,IAA0B5K,GAE/B,GAAIA,EAAOR,KAAO3C,EAAmB2R,SAEjC,WADAxE,IAAchK,EAIlBA,GAAOsG,MACPjI,EAAgB2B,GAAQrC,OAAQ,CAGhC,IACIlN,GAAGge,EAAavI,EAAQjC,EAAOyK,EAD/BpE,EAAS,GAAKtK,EAAOT,GAErBoP,EAAerE,EAAOha,OACtBse,EAAyB,CAI7B,KAFA1I,EAAStB,EAAa5E,EAAOR,GAAIQ,EAAOH,SAASvQ,MAAMmV,QAElDhU,EAAI,EAAGA,EAAIyV,EAAO5V,OAAQG,IAC3BwT,EAAQiC,EAAOzV,GACfge,GAAenE,EAAOhb,MAAMkW,EAAsBvB,EAAOjE,SAAgB,GAGrEyO,IACAC,EAAUpE,EAAO1T,OAAO,EAAG0T,EAAO/Y,QAAQkd,IACtCC,EAAQpe,OAAS,GACjB+N,EAAgB2B,GAAQnC,YAAYrM,KAAKkd,GAE7CpE,EAASA,EAAOpT,MAAMoT,EAAO/Y,QAAQkd,GAAeA,EAAYne,QAChEse,GAA0BH,EAAYne,QAGtC+T,GAAqBJ,IACjBwK,EACApQ,EAAgB2B,GAAQrC,OAAQ,EAGhCU,EAAgB2B,GAAQpC,aAAapM,KAAKyS,GAE9CoC,EAAwBpC,EAAOwK,EAAazO,IAEvCA,EAAOnB,UAAY4P,GACxBpQ,EAAgB2B,GAAQpC,aAAapM,KAAKyS,EAKlD5F,GAAgB2B,GAAQjC,cAAgB4Q,EAAeC,EACnDtE,EAAOha,OAAS,GAChB+N,EAAgB2B,GAAQnC,YAAYrM,KAAK8Y,GAIzCjM,EAAgB2B,GAAQlB,WAAY,GAChCkB,EAAOsG,GAAGyC,KAAS,IACnB/I,EAAOsG,GAAGyC,IAAQ,IACtB1K,EAAgB2B,GAAQlB,QAAUvO,QAGtCyP,EAAOsG,GAAGyC,IAAQ8F,GAAgB7O,EAAOH,QAASG,EAAOsG,GAAGyC,IAAO/I,EAAO8O,WAE1ExB,GAAgBtN,GAChB2I,GAAc3I,GAIlB,QAAS6O,IAAiBvR,EAAQyR,EAAMC,GACpC,GAAIC,EAEJ,OAAgB,OAAZD,EAEOD,EAEgB,MAAvBzR,EAAO4R,aACA5R,EAAO4R,aAAaH,EAAMC,GACX,MAAf1R,EAAO6R,MAEdF,EAAO3R,EAAO6R,KAAKH,GACfC,GAAe,GAAPF,IACRA,GAAQ,IAEPE,GAAiB,KAATF,IACTA,EAAO,GAEJA,GAGAA,EAKf,QAASK,IAAyBpP,GAC9B,GAAIqP,GACAC,EAEAC,EACA9e,EACA+e,CAEJ,IAAyB,IAArBxP,EAAOR,GAAGlP,OAGV,MAFA+N,GAAgB2B,GAAQ9B,eAAgB,OACxC8B,EAAOtB,GAAK,GAAIrP,MAAK2P,KAIzB,KAAKvO,EAAI,EAAGA,EAAIuP,EAAOR,GAAGlP,OAAQG,IAC9B+e,EAAe,EACfH,EAAanQ,KAAec,GACN,MAAlBA,EAAOkN,UACPmC,EAAWnC,QAAUlN,EAAOkN,SAEhCmC,EAAW7P,GAAKQ,EAAOR,GAAG/O,GAC1Bma,GAA0ByE,GAErB9Q,EAAe8Q,KAKpBG,GAAgBnR,EAAgBgR,GAAYtR,cAG5CyR,GAAkE,GAAlDnR,EAAgBgR,GAAYzR,aAAatN,OAEzD+N,EAAgBgR,GAAYI,MAAQD,GAEjB,MAAfD,GAAsCA,EAAfC,KACvBD,EAAcC,EACdF,EAAaD,GAIrB1e,GAAOqP,EAAQsP,GAAcD,GAGjC,QAASK,IAAiB1P,GACtB,IAAIA,EAAOtB,GAAX,CAIA,GAAIjO,GAAImS,EAAqB5C,EAAOT,GACpCS,GAAOsG,GAAKjP,GAAK5G,EAAE+V,KAAM/V,EAAEgW,MAAOhW,EAAEkf,KAAOlf,EAAEkX,KAAMlX,EAAEse,KAAMte,EAAEmf,OAAQnf,EAAEof,OAAQpf,EAAEqf,aAAc,SAAUhgB,GACrG,MAAOA,IAAOyG,SAASzG,EAAK,MAGhCwd,GAAgBtN,IAGpB,QAAS+P,IAAkB/P,GACvB,GAAI9C,GAAM,GAAI6C,GAAO4I,GAAcqH,GAAchQ,IAOjD,OANI9C,GAAIyQ,WAEJzQ,EAAI+S,IAAI,EAAG,KACX/S,EAAIyQ,SAAWpd,QAGZ2M,EAGX,QAAS8S,IAAehQ,GACpB,GAAItS,GAAQsS,EAAOT,GACflC,EAAS2C,EAAOR,EAIpB,OAFAQ,GAAOH,QAAUG,EAAOH,SAAWoC,EAA0BjC,EAAOP,IAEtD,OAAV/R,GAA8B6C,SAAX8M,GAAkC,KAAV3P,EACpCqR,GAAsBf,WAAW,KAGvB,gBAAVtQ,KACPsS,EAAOT,GAAK7R,EAAQsS,EAAOH,QAAQqQ,SAASxiB,IAG5CqE,EAASrE,GACF,GAAIqS,GAAO4I,GAAcjb,KACzBqD,EAAQsM,GACf+R,GAAyBpP,GAClB3C,EACPuN,GAA0B5K,GACnB5Q,EAAO1B,GACdsS,EAAOtB,GAAKhR,EAEZyiB,GAAgBnQ,GAGfzB,EAAeyB,KAChBA,EAAOtB,GAAK,MAGTsB,IAGX,QAASmQ,IAAgBnQ,GACrB,GAAItS,GAAQsS,EAAOT,EACLhP,UAAV7C,EACAsS,EAAOtB,GAAK,GAAIrP,MAAKwN,EAAmBoQ,OACjC7d,EAAO1B,GACdsS,EAAOtB,GAAK,GAAIrP,OAAM3B,GACE,gBAAVA,GACdmd,GAAiB7K,GACVjP,EAAQrD,IACfsS,EAAOsG,GAAKjP,EAAI3J,EAAMwJ,MAAM,GAAI,SAAUpH,GACtC,MAAOyG,UAASzG,EAAK,MAEzBwd,GAAgBtN,IACS,gBAAZ,GACb0P,GAAiB1P,GACQ,gBAAZ,GAEbA,EAAOtB,GAAK,GAAIrP,MAAK3B,GAErBmP,EAAmBkO,wBAAwB/K,GAInD,QAASxC,IAAkB9P,EAAO2P,EAAQC,EAAQC,EAAQ6S,GACtD,GAAI3lB,KAeJ,OAbuB,iBAAb,KACN8S,EAASD,EACTA,EAAS/M,QAIb9F,EAAE6U,kBAAmB,EACrB7U,EAAEyiB,QAAUziB,EAAEkV,OAASyQ,EACvB3lB,EAAEgV,GAAKnC,EACP7S,EAAE8U,GAAK7R,EACPjD,EAAE+U,GAAKnC,EACP5S,EAAEoU,QAAUtB,EAELwS,GAAiBtlB,GAG5B,QAAS4jB,IAAoB3gB,EAAO2P,EAAQC,EAAQC,GAChD,MAAOC,IAAiB9P,EAAO2P,EAAQC,EAAQC,GAAQ,GAgC3D,QAAS8S,IAAOxc,EAAIyc,GAChB,GAAIpT,GAAKzM,CAIT,IAHuB,IAAnB6f,EAAQhgB,QAAgBS,EAAQuf,EAAQ,MACxCA,EAAUA,EAAQ,KAEjBA,EAAQhgB,OACT,MAAO+d,KAGX,KADAnR,EAAMoT,EAAQ,GACT7f,EAAI,EAAGA,EAAI6f,EAAQhgB,SAAUG,IACzB6f,EAAQ7f,GAAG8S,WAAa+M,EAAQ7f,GAAGoD,GAAIqJ,MACxCA,EAAMoT,EAAQ7f,GAGtB,OAAOyM,GAIX,QAAStO,MACL,GAAI2hB,MAAUrZ,MAAM3M,KAAK8F,UAAW,EAEpC,OAAOggB,IAAO,WAAYE,GAG9B,QAAS1hB,MACL,GAAI0hB,MAAUrZ,MAAM3M,KAAK8F,UAAW,EAEpC,OAAOggB,IAAO,UAAWE,GAO7B,QAASC,IAAUC,GACf,GAAI1N,GAAkBH,EAAqB6N,GACvCC,EAAQ3N,EAAgByD,MAAQ,EAChCmK,EAAW5N,EAAgB6N,SAAW,EACtCtJ,EAASvE,EAAgB0D,OAAS,EAClCoK,EAAQ9N,EAAgBoJ,MAAQ,EAChC2E,EAAO/N,EAAgB4M,KAAO,EAC9BoB,EAAQhO,EAAgBgM,MAAQ,EAChCiC,EAAUjO,EAAgB6M,QAAU,EACpCqB,EAAUlO,EAAgB8M,QAAU,EACpCqB,EAAenO,EAAgB+M,aAAe,CAGlD9lB,MAAKmnB,eAAiBD,EACR,IAAVD,EACU,IAAVD,EACQ,KAARD,EAGJ/mB,KAAKonB,OAASN,EACF,EAARD,EAIJ7mB,KAAK6c,SAAWS,EACD,EAAXqJ,EACQ,GAARD,EAEJ1mB,KAAKqnB,SAELrnB,KAAK6V,QAAUoC,IAEfjY,KAAKsnB,UAGT,QAASC,IAAYzhB,GACjB,MAAOA,aAAe0gB,IAK1B,QAASgB,IAAQvN,EAAOwN,GACpBzN,EAAeC,EAAO,EAAG,EAAG,WACxB,GAAIuN,GAASxnB,KAAK0nB,YACd5N,EAAO,GAKX,OAJa,GAAT0N,IACAA,GAAUA,EACV1N,EAAO,KAEJA,EAAOL,KAAY+N,EAAS,IAAK,GAAKC,EAAYhO,IAAW,EAAW,GAAI,KAuB3F,QAASkO,IAAiBC,EAAStH,GAC/B,GAAIuH,IAAYvH,GAAU,IAAIhb,MAAMsiB,OAChCE,EAAUD,EAAQA,EAAQvhB,OAAS,OACnC0I,GAAW8Y,EAAQ,IAAIxiB,MAAMyiB,MAAiB,IAAK,EAAG,GACtDf,IAAuB,GAAXhY,EAAM,IAAWsH,EAAMtH,EAAM,GAE7C,OAAoB,MAAbA,EAAM,GAAagY,GAAWA,EAIzC,QAASgB,IAAgBtkB,EAAOukB,GAC5B,GAAI/U,GAAKgV,CACT,OAAID,GAAMtS,QACNzC,EAAM+U,EAAME,QACZD,GAAQngB,EAASrE,IAAU0B,EAAO1B,IAAUA,GAAS2gB,GAAmB3gB,KAAYwP,EAEpFA,EAAIwB,GAAG0T,SAASlV,EAAIwB,GAAKwT,GACzBrV,EAAmBqD,aAAahD,GAAK,GAC9BA,GAEAmR,GAAmB3gB,GAAO2kB,QAIzC,QAASC,IAAe9nB,GAGpB,MAAoD,KAA5CyE,KAAKsjB,MAAM/nB,EAAEkU,GAAG8T,oBAAsB,IAqBlD,QAASC,IAAc/kB,EAAOglB,GAC1B,GACIC,GADAnB,EAASxnB,KAAK4V,SAAW,CAE7B,OAAK5V,MAAKuZ,UAGG,MAAT7V,GACqB,gBAAVA,GACPA,EAAQikB,GAAiBiB,GAAkBllB,GACpCuB,KAAK8R,IAAIrT,GAAS,KACzBA,EAAgB,GAARA,IAEP1D,KAAK2V,QAAU+S,IAChBC,EAAcL,GAActoB,OAEhCA,KAAK4V,QAAUlS,EACf1D,KAAK2V,QAAS,EACK,MAAfgT,GACA3oB,KAAKimB,IAAI0C,EAAa,KAEtBnB,IAAW9jB,KACNglB,GAAiB1oB,KAAK6oB,kBACvBC,GAA0B9oB,KAAM+oB,GAAuBrlB,EAAQ8jB,EAAQ,KAAM,GAAG,GACxExnB,KAAK6oB,oBACb7oB,KAAK6oB,mBAAoB,EACzBhW,EAAmBqD,aAAalW,MAAM,GACtCA,KAAK6oB,kBAAoB,OAG1B7oB,MAEAA,KAAK2V,OAAS6R,EAASc,GAActoB,MA3B5B,MAAT0D,EAAgB1D,KAAOgV,IA+BtC,QAASgU,IAAYtlB,EAAOglB,GACxB,MAAa,OAAThlB,GACqB,gBAAVA,KACPA,GAASA,GAGb1D,KAAK0nB,UAAUhkB,EAAOglB,GAEf1oB,OAECA,KAAK0nB,YAIrB,QAASuB,IAAgBP,GACrB,MAAO1oB,MAAK0nB,UAAU,EAAGgB,GAG7B,QAASQ,IAAkBR,GASvB,MARI1oB,MAAK2V,SACL3V,KAAK0nB,UAAU,EAAGgB,GAClB1oB,KAAK2V,QAAS,EAEV+S,GACA1oB,KAAKmpB,SAASb,GAActoB,MAAO,MAGpCA,KAGX,QAASopB,MAML,MALIppB,MAAK0V,KACL1V,KAAK0nB,UAAU1nB,KAAK0V,MACM,gBAAZ1V,MAAKuV,IACnBvV,KAAK0nB,UAAUC,GAAiB0B,GAAarpB,KAAKuV,KAE/CvV,KAGX,QAASspB,IAAsB5lB,GAC3B,MAAK1D,MAAKuZ,WAGV7V,EAAQA,EAAQ2gB,GAAmB3gB,GAAOgkB,YAAc,GAEhD1nB,KAAK0nB,YAAchkB,GAAS,KAAO,IAJhC,EAOf,QAAS6lB,MACL,MACIvpB,MAAK0nB,YAAc1nB,KAAKmoB,QAAQ1L,MAAM,GAAGiL,aACzC1nB,KAAK0nB,YAAc1nB,KAAKmoB,QAAQ1L,MAAM,GAAGiL,YAIjD,QAAS8B,MACL,IAAKvU,EAAYjV,KAAKypB,eAClB,MAAOzpB,MAAKypB,aAGhB,IAAIhpB,KAKJ,IAHAyU,EAAWzU,EAAGT,MACdS,EAAIulB,GAAcvlB,GAEdA,EAAE6b,GAAI,CACN,GAAI5V,GAAQjG,EAAEkV,OAASvC,EAAsB3S,EAAE6b,IAAM+H,GAAmB5jB,EAAE6b,GAC1Etc,MAAKypB,cAAgBzpB,KAAKuZ,WACtB7C,EAAcjW,EAAE6b,GAAI5V,EAAM8C,WAAa,MAE3CxJ,MAAKypB,eAAgB,CAGzB,OAAOzpB,MAAKypB,cAGhB,QAASC,MACL,MAAO1pB,MAAKuZ,WAAavZ,KAAK2V,QAAS,EAG3C,QAASgU,MACL,MAAO3pB,MAAKuZ,UAAYvZ,KAAK2V,QAAS,EAG1C,QAASiU,MACL,MAAO5pB,MAAKuZ,UAAYvZ,KAAK2V,QAA2B,IAAjB3V,KAAK4V,SAAgB,EAUhE,QAASmT,IAAwBrlB,EAAOiG,GACpC,GAGImQ,GACA+P,EACAC,EALArD,EAAW/iB,EAEX4B,EAAQ,IAuDZ,OAlDIiiB,IAAW7jB,GACX+iB,GACItF,GAAKzd,EAAMyjB,cACX3Y,EAAK9K,EAAM0jB,MACXlG,EAAKxd,EAAMmZ,SAES,gBAAVnZ,IACd+iB,KACI9c,EACA8c,EAAS9c,GAAOjG,EAEhB+iB,EAASS,aAAexjB,IAElB4B,EAAQykB,GAAYvkB,KAAK9B,KACnCoW,EAAqB,MAAbxU,EAAM,GAAc,GAAK,EACjCmhB,GACIxF,EAAK,EACLzS,EAAK8H,EAAMhR,EAAMuZ,KAAgB/E,EACjCpM,EAAK4I,EAAMhR,EAAMyZ,KAAgBjF,EACjCtZ,EAAK8V,EAAMhR,EAAM0Z,KAAgBlF,EACjCnM,EAAK2I,EAAMhR,EAAM2Z,KAAgBnF,EACjCqH,GAAK7K,EAAMhR,EAAM4Z,KAAgBpF,KAE3BxU,EAAQ0kB,GAASxkB,KAAK9B,KAChCoW,EAAqB,MAAbxU,EAAM,GAAc,GAAK,EACjCmhB,GACIxF,EAAIgJ,GAAS3kB,EAAM,GAAIwU,GACvBoH,EAAI+I,GAAS3kB,EAAM,GAAIwU,GACvBtL,EAAIyb,GAAS3kB,EAAM,GAAIwU,GACvBpM,EAAIuc,GAAS3kB,EAAM,GAAIwU,GACvBtZ,EAAIypB,GAAS3kB,EAAM,GAAIwU,GACvBnM,EAAIsc,GAAS3kB,EAAM,GAAIwU,GACvBgK,EAAImG,GAAS3kB,EAAM,GAAIwU,KAER,MAAZ2M,EACPA,KAC2B,gBAAbA,KAA0B,QAAUA,IAAY,MAAQA,MACtEqD,EAAUI,GAAkB7F,GAAmBoC,EAASrR,MAAOiP,GAAmBoC,EAAStR,KAE3FsR,KACAA,EAAStF,GAAK2I,EAAQ5C,aACtBT,EAASvF,EAAI4I,EAAQxM,QAGzBuM,EAAM,GAAIrD,IAASC,GAEfc,GAAW7jB,IAAUyP,EAAWzP,EAAO,aACvCmmB,EAAIhU,QAAUnS,EAAMmS,SAGjBgU,EAKX,QAASI,IAAUE,EAAKrQ,GAIpB,GAAI5G,GAAMiX,GAAOC,WAAWD,EAAIhe,QAAQ,IAAK,KAE7C,QAAQ1G,MAAMyN,GAAO,EAAIA,GAAO4G,EAGpC,QAASuQ,IAA0BC,EAAM5jB,GACrC,GAAIwM,IAAOgU,aAAc,EAAG5J,OAAQ,EAUpC,OARApK,GAAIoK,OAAS5W,EAAM+V,QAAU6N,EAAK7N,QACC,IAA9B/V,EAAM8V,OAAS8N,EAAK9N,QACrB8N,EAAKnC,QAAQlC,IAAI/S,EAAIoK,OAAQ,KAAKiN,QAAQ7jB,MACxCwM,EAAIoK,OAGVpK,EAAIgU,cAAgBxgB,GAAU4jB,EAAKnC,QAAQlC,IAAI/S,EAAIoK,OAAQ,KAEpDpK,EAGX,QAASgX,IAAkBI,EAAM5jB,GAC7B,GAAIwM,EACJ,OAAMoX,GAAK/Q,WAAa7S,EAAM6S,WAI9B7S,EAAQshB,GAAgBthB,EAAO4jB,GAC3BA,EAAKE,SAAS9jB,GACdwM,EAAMmX,GAA0BC,EAAM5jB,IAEtCwM,EAAMmX,GAA0B3jB,EAAO4jB,GACvCpX,EAAIgU,cAAgBhU,EAAIgU,aACxBhU,EAAIoK,QAAUpK,EAAIoK,QAGfpK,IAZKgU,aAAc,EAAG5J,OAAQ,GAgBzC,QAASmN,IAAYC,EAAWlT,GAC5B,MAAO,UAAUnC,EAAKsV,GAClB,GAAIC,GAAKC,CAUT,OARe,QAAXF,GAAoBllB,OAAOklB,KAC3B7K,GAAgBtI,EAAM,YAAcA,EAAQ,uDAAyDA,EAAO,qBAC5GqT,EAAMxV,EAAKA,EAAMsV,EAAQA,EAASE,GAGtCxV,EAAqB,gBAARA,IAAoBA,EAAMA,EACvCuV,EAAM7B,GAAuB1T,EAAKsV,GAClC7B,GAA0B9oB,KAAM4qB,EAAKF,GAC9B1qB,MAIf,QAAS8oB,IAA2BxP,EAAKmN,EAAUqE,EAAU5U,GACzD,GAAIgR,GAAeT,EAASU,cACxBL,EAAOL,EAASW,MAChB9J,EAASmJ,EAAS5J,OAEjBvD,GAAIC,YAKTrD,EAA+B,MAAhBA,GAAuB,EAAOA,EAEzCgR,GACA5N,EAAI5E,GAAG0T,SAAS9O,EAAI5E,GAAKwS,EAAe4D,GAExChE,GACA1N,EAAaE,EAAK,OAAQD,EAAaC,EAAK,QAAUwN,EAAOgE,GAE7DxN,GACAE,EAASlE,EAAKD,EAAaC,EAAK,SAAWgE,EAASwN,GAEpD5U,GACArD,EAAmBqD,aAAaoD,EAAKwN,GAAQxJ,IAOrD,QAASyN,IAA2BC,EAAMC,GAGtC,GAAIhI,GAAM+H,GAAQ3G,KACd6G,EAAMlD,GAAgB/E,EAAKjjB,MAAMmrB,QAAQ,OACzCjD,EAAOloB,KAAKkoB,KAAKgD,EAAK,QAAQ,GAC9B7X,EAAgB,GAAP6U,EAAY,WACV,GAAPA,EAAY,WACL,EAAPA,EAAW,UACJ,EAAPA,EAAW,UACJ,EAAPA,EAAW,UACJ,EAAPA,EAAW,WAAa,WAE5BxN,EAASuQ,IAAYjS,EAAWiS,EAAQ5X,IAAW4X,EAAQ5X,KAAY4X,EAAQ5X,GAEnF,OAAOrT,MAAKqT,OAAOqH,GAAU1a,KAAKsa,aAAa8Q,SAAS/X,EAAQrT,KAAMqkB,GAAmBpB,KAG7F,QAASkF,MACL,MAAO,IAAIpS,GAAO/V,MAGtB,QAASuqB,IAAS7mB,EAAOiV,GACrB,GAAI0S,GAAatjB,EAASrE,GAASA,EAAQ2gB,GAAmB3gB,EAC9D,OAAM1D,MAAKuZ,WAAa8R,EAAW9R,WAGnCZ,EAAQD,EAAgBzD,EAAY0D,GAAiB,cAARA,GAC/B,gBAAVA,GACQ3Y,MAAQqrB,GAERA,GAAcrrB,KAAKmoB,QAAQgD,QAAQxS,KANpC,EAUf,QAAS6R,IAAU9mB,EAAOiV,GACtB,GAAI0S,GAAatjB,EAASrE,GAASA,EAAQ2gB,GAAmB3gB,EAC9D,OAAM1D,MAAKuZ,WAAa8R,EAAW9R,WAGnCZ,EAAQD,EAAgBzD,EAAY0D,GAAiB,cAARA,GAC/B,gBAAVA,GACgB0S,GAARrrB,MAEAA,KAAKmoB,QAAQmD,MAAM3S,IAAU0S,IAN9B,EAUf,QAASE,IAAWnW,EAAMD,EAAIwD,GAC1B,MAAO3Y,MAAKuqB,QAAQnV,EAAMuD,IAAU3Y,KAAKwqB,SAASrV,EAAIwD,GAG1D,QAAS6S,IAAQ9nB,EAAOiV,GACpB,GACI8S,GADAJ,EAAatjB,EAASrE,GAASA,EAAQ2gB,GAAmB3gB,EAE9D,OAAM1D,MAAKuZ,WAAa8R,EAAW9R,WAGnCZ,EAAQD,EAAeC,GAAS,eAClB,gBAAVA,GACQ3Y,QAAUqrB,GAElBI,GAAWJ,GACFrrB,KAAKmoB,QAAQgD,QAAQxS,IAAW8S,GAAWA,IAAazrB,KAAKmoB,QAAQmD,MAAM3S,MAP7E,EAWf,QAAS+S,IAAehoB,EAAOiV,GAC3B,MAAO3Y,MAAKwrB,OAAO9nB,EAAOiV,IAAU3Y,KAAKuqB,QAAQ7mB,EAAMiV;AAG3D,QAASgT,IAAgBjoB,EAAOiV,GAC5B,MAAO3Y,MAAKwrB,OAAO9nB,EAAOiV,IAAU3Y,KAAKwqB,SAAS9mB,EAAMiV,GAG5D,QAASuP,IAAMxkB,EAAOiV,EAAOiT,GACzB,GAAIC,GACAC,EACAC,EAAOrR,CAEX,OAAK1a,MAAKuZ,WAIVsS,EAAO7D,GAAgBtkB,EAAO1D,MAEzB6rB,EAAKtS,WAIVuS,EAAoD,KAAvCD,EAAKnE,YAAc1nB,KAAK0nB,aAErC/O,EAAQD,EAAeC,GAET,SAAVA,GAA8B,UAAVA,GAA+B,YAAVA,GACzC+B,EAASsR,GAAUhsB,KAAM6rB,GACX,YAAVlT,EACA+B,GAAkB,EACD,SAAV/B,IACP+B,GAAkB,MAGtBqR,EAAQ/rB,KAAO6rB,EACfnR,EAAmB,WAAV/B,EAAqBoT,EAAQ,IACxB,WAAVpT,EAAqBoT,EAAQ,IACnB,SAAVpT,EAAmBoT,EAAQ,KACjB,QAAVpT,GAAmBoT,EAAQD,GAAa,MAC9B,SAAVnT,GAAoBoT,EAAQD,GAAa,OACzCC,GAEDH,EAAUlR,EAASvE,EAASuE,IAvBxB1F,KANAA,IAgCf,QAASgX,IAAW9lB,EAAGC,GAEnB,GAGI8lB,GAASC,EAHTC,EAA0C,IAAvBhmB,EAAEqW,OAAStW,EAAEsW,SAAiBrW,EAAEsW,QAAUvW,EAAEuW,SAE/D2P,EAASlmB,EAAEiiB,QAAQlC,IAAIkG,EAAgB,SAa3C,OAViB,GAAbhmB,EAAIimB,GACJH,EAAU/lB,EAAEiiB,QAAQlC,IAAIkG,EAAiB,EAAG,UAE5CD,GAAU/lB,EAAIimB,IAAWA,EAASH,KAElCA,EAAU/lB,EAAEiiB,QAAQlC,IAAIkG,EAAiB,EAAG,UAE5CD,GAAU/lB,EAAIimB,IAAWH,EAAUG,MAG9BD,EAAiBD,GAK9B,QAASjf,MACL,MAAOjN,MAAKmoB,QAAQ7U,OAAO,MAAMD,OAAO,oCAG5C,QAASgZ,MACL,GAAI7rB,GAAIR,KAAKmoB,QAAQ1U,KACrB,OAAI,GAAIjT,EAAEgc,QAAUhc,EAAEgc,QAAU,KACxBxD,EAAW3T,KAAK4N,UAAU/K,aAEnBlI,KAAKgI,SAASE,cAEdyS,EAAana,EAAG,gCAGpBma,EAAana,EAAG,kCAI/B,QAAS6S,IAAQiZ,GACb,GAAI5R,GAASC,EAAa3a,KAAMssB,GAAezZ,EAAmB0Z,cAClE,OAAOvsB,MAAKsa,aAAakS,WAAW9R,GAGxC,QAAStF,IAAM4V,EAAMyB,GACjB,MAAIzsB,MAAKuZ,YACCxR,EAASijB,IAASA,EAAKzR,WACxB8K,GAAmB2G,GAAMzR,WACvBwP,IAAwB5T,GAAInV,KAAMoV,KAAM4V,IAAO1X,OAAOtT,KAAKsT,UAAUoZ,UAAUD,GAE/EzsB,KAAKsa,aAAaQ,cAIjC,QAAS6R,IAASF,GACd,MAAOzsB,MAAKoV,KAAKiP,KAAsBoI,GAG3C,QAAStX,IAAI6V,EAAMyB,GACf,MAAIzsB,MAAKuZ,YACCxR,EAASijB,IAASA,EAAKzR,WACxB8K,GAAmB2G,GAAMzR,WACvBwP,IAAwB3T,KAAMpV,KAAMmV,GAAI6V,IAAO1X,OAAOtT,KAAKsT,UAAUoZ,UAAUD,GAE/EzsB,KAAKsa,aAAaQ,cAIjC,QAAS8R,IAAOH,GACZ,MAAOzsB,MAAKmV,GAAGkP,KAAsBoI,GAMzC,QAASnZ,IAAQ3J,GACb,GAAIkjB,EAEJ,OAAYtmB,UAARoD,EACO3J,KAAK6V,QAAQ+B,OAEpBiV,EAAgB5U,EAA0BtO,GACrB,MAAjBkjB,IACA7sB,KAAK6V,QAAUgX,GAEZ7sB,MAef,QAASsa,MACL,MAAOta,MAAK6V,QAGhB,QAASsV,IAASxS,GAId,OAHAA,EAAQD,EAAeC,IAIvB,IAAK,OACD3Y,KAAKyc,MAAM,EAEf,KAAK,UACL,IAAK,QACDzc,KAAK2d,KAAK,EAEd,KAAK,OACL,IAAK,UACL,IAAK,MACD3d,KAAK+mB,MAAM,EAEf,KAAK,OACD/mB,KAAKgnB,QAAQ,EAEjB,KAAK,SACDhnB,KAAKinB,QAAQ,EAEjB,KAAK,SACDjnB,KAAKknB,aAAa,GAgBtB,MAZc,SAAVvO,GACA3Y,KAAKoiB,QAAQ,GAEH,YAAVzJ,GACA3Y,KAAK8sB,WAAW,GAIN,YAAVnU,GACA3Y,KAAKyc,MAAqC,EAA/BxX,KAAKuK,MAAMxP,KAAKyc,QAAU,IAGlCzc,KAGX,QAASsrB,IAAO3S,GAEZ,MADAA,GAAQD,EAAeC,GACTpS,SAAVoS,GAAiC,gBAAVA,EAChB3Y,KAEJA,KAAKmrB,QAAQxS,GAAOsN,IAAI,EAAc,YAAVtN,EAAsB,OAASA,GAAQwQ,SAAS,EAAG,MAG1F,QAAS4D,MACL,OAAQ/sB,KAAK0U,GAA4B,KAArB1U,KAAK4V,SAAW,GAGxC,QAASoX,MACL,MAAO/nB,MAAKuK,OAAOxP,KAAO,KAG9B,QAASgI,MACL,MAAOhI,MAAK4V,QAAU,GAAIvQ,OAAMrF,MAAQA,KAAK0U,GAGjD,QAASlL,MACL,GAAIhJ,GAAIR,IACR,QAAQQ,EAAEgc,OAAQhc,EAAEic,QAASjc,EAAEmd,OAAQnd,EAAEukB,OAAQvkB,EAAEolB,SAAUplB,EAAEqlB,SAAUrlB,EAAEslB,eAG/E,QAASmH,MACL,GAAIzsB,GAAIR,IACR,QACI0mB,MAAOlmB,EAAEgc,OACTc,OAAQ9c,EAAEic,QACVkB,KAAMnd,EAAEmd,OACRoJ,MAAOvmB,EAAEumB,QACTC,QAASxmB,EAAEwmB,UACXC,QAASzmB,EAAEymB,UACXC,aAAc1mB,EAAE0mB,gBAIxB,QAASgG,MAEL,MAAOltB,MAAKuZ,UAAYvZ,KAAKkI,cAAgB,OAGjD,QAASilB,MACL,MAAO5Y,GAAevU,MAG1B,QAASotB,MACL,MAAOzmB,MAAW0N,EAAgBrU,OAGtC,QAASqtB,MACL,MAAOhZ,GAAgBrU,MAAM8T,SAGjC,QAASwZ,MACL,OACI5pB,MAAO1D,KAAKuV,GACZlC,OAAQrT,KAAKwV,GACblC,OAAQtT,KAAK6V,QACbuQ,MAAOpmB,KAAK2V,OACZpC,OAAQvT,KAAK6U,SAcrB,QAAS0Y,IAAwBtT,EAAOuT,GACpCxT,EAAe,GAAIC,EAAOA,EAAM3T,QAAS,EAAGknB,GAkChD,QAASC,IAAgB/pB,GACrB,MAAOgqB,IAAqBntB,KAAKP,KACzB0D,EACA1D,KAAKmiB,OACLniB,KAAKoiB,UACLpiB,KAAKsa,aAAagK,MAAMzC,IACxB7hB,KAAKsa,aAAagK,MAAMxC,KAGpC,QAAS6L,IAAmBjqB,GACxB,MAAOgqB,IAAqBntB,KAAKP,KACzB0D,EAAO1D,KAAK4tB,UAAW5tB,KAAK8sB,aAAc,EAAG,GAGzD,QAASe,MACL,MAAOjL,IAAY5iB,KAAKwc,OAAQ,EAAG,GAGvC,QAASsR,MACL,GAAIC,GAAW/tB,KAAKsa,aAAagK,KACjC,OAAO1B,IAAY5iB,KAAKwc,OAAQuR,EAASlM,IAAKkM,EAASjM,KAG3D,QAAS4L,IAAqBhqB,EAAOye,EAAMC,EAASP,EAAKC,GACrD,GAAIkM,EACJ,OAAa,OAATtqB,EACOgf,GAAW1iB,KAAM6hB,EAAKC,GAAKtF,MAElCwR,EAAcpL,GAAYlf,EAAOme,EAAKC,GAClCK,EAAO6L,IACP7L,EAAO6L,GAEJC,GAAW1tB,KAAKP,KAAM0D,EAAOye,EAAMC,EAASP,EAAKC,IAIhE,QAASmM,IAAWlK,EAAU5B,EAAMC,EAASP,EAAKC,GAC9C,GAAIoM,GAAgBhM,GAAmB6B,EAAU5B,EAAMC,EAASP,EAAKC,GACjEnE,EAAO2D,GAAc4M,EAAc1R,KAAM,EAAG0R,EAAczL,UAM9D,OAHAziB,MAAKwc,KAAKmB,EAAK4D,kBACfvhB,KAAKyc,MAAMkB,EAAKwF,eAChBnjB,KAAK2d,KAAKA,EAAKhB,cACR3c,KAoBX,QAASmuB,IAAezqB,GACpB,MAAgB,OAATA,EAAgBuB,KAAKoR,MAAMrW,KAAKyc,QAAU,GAAK,GAAKzc,KAAKyc,MAAoB,GAAb/Y,EAAQ,GAAS1D,KAAKyc,QAAU,GA4B3G,QAAS2R,IAAY9U,GACjB,MAAOoJ,IAAWpJ,EAAKtZ,KAAKskB,MAAMzC,IAAK7hB,KAAKskB,MAAMxC,KAAKK,KAQ3D,QAASkM,MACL,MAAOruB,MAAKskB,MAAMzC,IAGtB,QAASyM,MACL,MAAOtuB,MAAKskB,MAAMxC,IAKtB,QAASyM,IAAY7qB,GACjB,GAAIye,GAAOniB,KAAKsa,aAAa6H,KAAKniB,KAClC,OAAgB,OAAT0D,EAAgBye,EAAOniB,KAAKimB,IAAqB,GAAhBviB,EAAQye,GAAW,KAG/D,QAASqM,IAAe9qB,GACpB,GAAIye,GAAOO,GAAW1iB,KAAM,EAAG,GAAGmiB,IAClC,OAAgB,OAATze,EAAgBye,EAAOniB,KAAKimB,IAAqB,GAAhBviB,EAAQye,GAAW,KA8E/D,QAASsM,IAAa/qB,EAAO4P,GACzB,MAAqB,gBAAV5P,GACAA,EAGN+B,MAAM/B,IAIXA,EAAQ4P,EAAOob,cAAchrB,GACR,gBAAVA,GACAA,EAGJ,MARI6I,SAAS7I,EAAO,IAc/B,QAASirB,IAAgBnuB,EAAG6S,GACxB,MAAOtM,GAAQ/G,KAAK4uB,WAAa5uB,KAAK4uB,UAAUpuB,EAAEmlB,OAC9C3lB,KAAK4uB,UAAU5uB,KAAK4uB,UAAUC,SAAShf,KAAKwD,GAAU,SAAW,cAAc7S,EAAEmlB,OAIzF,QAASmJ,IAAqBtuB,GAC1B,MAAOR,MAAK+uB,eAAevuB,EAAEmlB,OAIjC,QAASqJ,IAAmBxuB,GACxB,MAAOR,MAAKivB,aAAazuB,EAAEmlB,OAG/B,QAASuJ,IAAqBC,EAAa9b,EAAQE,GAC/C,GAAI9M,GAAG6S,EAAK8B,CASZ,KAPKpb,KAAKovB,iBACNpvB,KAAKovB,kBACLpvB,KAAKqvB,qBACLrvB,KAAKsvB,uBACLtvB,KAAKuvB,uBAGJ9oB,EAAI,EAAO,EAAJA,EAAOA,IAAK,CAcpB,GAXA6S,EAAM+K,IAAoB,IAAM,IAAIsB,IAAIlf,GACpC8M,IAAWvT,KAAKuvB,mBAAmB9oB,KACnCzG,KAAKuvB,mBAAmB9oB,GAAK,GAAIgV,QAAO,IAAMzb,KAAKwvB,SAASlW,EAAK,IAAInN,QAAQ,IAAK,MAAS,IAAK,KAChGnM,KAAKsvB,oBAAoB7oB,GAAK,GAAIgV,QAAO,IAAMzb,KAAKyvB,cAAcnW,EAAK,IAAInN,QAAQ,IAAK,MAAS,IAAK,KACtGnM,KAAKqvB,kBAAkB5oB,GAAK,GAAIgV,QAAO,IAAMzb,KAAK0vB,YAAYpW,EAAK,IAAInN,QAAQ,IAAK,MAAS,IAAK,MAEjGnM,KAAKovB,eAAe3oB,KACrB2U,EAAQ,IAAMpb,KAAKwvB,SAASlW,EAAK,IAAM,KAAOtZ,KAAKyvB,cAAcnW,EAAK,IAAM,KAAOtZ,KAAK0vB,YAAYpW,EAAK,IACzGtZ,KAAKovB,eAAe3oB,GAAK,GAAIgV,QAAOL,EAAMjP,QAAQ,IAAK,IAAK,MAG5DoH,GAAqB,SAAXF,GAAqBrT,KAAKuvB,mBAAmB9oB,GAAGoJ,KAAKsf,GAC/D,MAAO1oB,EACJ,IAAI8M,GAAqB,QAAXF,GAAoBrT,KAAKsvB,oBAAoB7oB,GAAGoJ,KAAKsf,GACtE,MAAO1oB,EACJ,IAAI8M,GAAqB,OAAXF,GAAmBrT,KAAKqvB,kBAAkB5oB,GAAGoJ,KAAKsf,GACnE,MAAO1oB,EACJ,KAAK8M,GAAUvT,KAAKovB,eAAe3oB,GAAGoJ,KAAKsf,GAC9C,MAAO1oB,IAOnB,QAASkpB,IAAiBjsB,GACtB,IAAK1D,KAAKuZ,UACN,MAAgB,OAAT7V,EAAgB1D,KAAOgV,GAElC,IAAI2Q,GAAM3lB,KAAK2V,OAAS3V,KAAK0U,GAAGuN,YAAcjiB,KAAK0U,GAAGkb,QACtD,OAAa,OAATlsB,GACAA,EAAQ+qB,GAAa/qB,EAAO1D,KAAKsa,cAC1Bta,KAAKimB,IAAIviB,EAAQiiB,EAAK,MAEtBA,EAIf,QAASkK,IAAuBnsB,GAC5B,IAAK1D,KAAKuZ,UACN,MAAgB,OAAT7V,EAAgB1D,KAAOgV,GAElC,IAAIoN,IAAWpiB,KAAK2lB,MAAQ,EAAI3lB,KAAKsa,aAAagK,MAAMzC,KAAO,CAC/D,OAAgB,OAATne,EAAgB0e,EAAUpiB,KAAKimB,IAAIviB,EAAQ0e,EAAS,KAG/D,QAAS0N,IAAoBpsB,GACzB,MAAK1D,MAAKuZ,UAMM,MAAT7V,EAAgB1D,KAAK2lB,OAAS,EAAI3lB,KAAK2lB,IAAI3lB,KAAK2lB,MAAQ,EAAIjiB,EAAQA,EAAQ,GAL/D,MAATA,EAAgB1D,KAAOgV,IA4BtC,QAAS+a,IAAiBrsB,GACtB,GAAI+e,GAAYxd,KAAKsjB,OAAOvoB,KAAKmoB,QAAQgD,QAAQ,OAASnrB,KAAKmoB,QAAQgD,QAAQ,SAAW,OAAS,CACnG,OAAgB,OAATznB,EAAgB+e,EAAYziB,KAAKimB,IAAKviB,EAAQ+e,EAAY,KAKrE,QAASuN,MACL,MAAOhwB,MAAK+mB,QAAU,IAAM,GAwBhC,QAAS/B,IAAU/K,EAAOgW,GACtBjW,EAAeC,EAAO,EAAG,EAAG,WACxB,MAAOja,MAAKsa,aAAa0K,SAAShlB,KAAK+mB,QAAS/mB,KAAKgnB,UAAWiJ,KAaxE,QAASC,IAAe3U,EAAUjI,GAC9B,MAAOA,GAAO6c,eAqDlB,QAASC,IAAY1sB,GAGjB,MAAiD,OAAxCA,EAAQ,IAAIyT,cAAckZ,OAAO,GAI9C,QAASC,IAAgBvJ,EAAOC,EAASuJ,GACrC,MAAIxJ,GAAQ,GACDwJ,EAAU,KAAO,KAEjBA,EAAU,KAAO,KA+FhC,QAASC,IAAQ9sB,EAAO+F,GACpBA,EAAMyV,IAAe5I,EAAuB,KAAhB,KAAO5S,IAiBvC,QAAS+sB,MACL,MAAOzwB,MAAK2V,OAAS,MAAQ,GAGjC,QAAS+a,MACL,MAAO1wB,MAAK2V,OAAS,6BAA+B,GA4GxD,QAASgb,IAAoBjtB,GACzB,MAAO2gB,IAA2B,IAAR3gB,GAG9B,QAASktB,MACL,MAAOvM,IAAmBtR,MAAM,KAAM1M,WAAWwqB,YAYrD,QAASC,IAA2BnnB,EAAK2P,EAAK2J,GAC1C,GAAIvI,GAAS1a,KAAK+wB,UAAUpnB,EAC5B,OAAOqP,GAAW0B,GAAUA,EAAOna,KAAK+Y,EAAK2J,GAAOvI,EAYxD,QAASM,IAAgBrR,GACrB,GAAI0J,GAASrT,KAAKgxB,gBAAgBrnB,GAC9BsnB,EAAcjxB,KAAKgxB,gBAAgBrnB,EAAIunB,cAE3C,OAAI7d,KAAW4d,EACJ5d,GAGXrT,KAAKgxB,gBAAgBrnB,GAAOsnB,EAAY9kB,QAAQ,mBAAoB,SAAUkJ,GAC1E,MAAOA,GAAInI,MAAM,KAGdlN,KAAKgxB,gBAAgBrnB,IAKhC,QAASmR,MACL,MAAO9a,MAAKmxB,aAMhB,QAAShX,IAAS/D,GACd,MAAOpW,MAAKoxB,SAASjlB,QAAQ,KAAMiK,GAGvC,QAASib,IAAoB/Q,GACzB,MAAOA,GAmBX,QAASgR,IAAwBlb,EAAQqW,EAAenM,EAAQiR,GAC5D,GAAI7W,GAAS1a,KAAKwxB,cAAclR,EAChC,OAAQtH,GAAW0B,GACfA,EAAOtE,EAAQqW,EAAenM,EAAQiR,GACtC7W,EAAOvO,QAAQ,MAAOiK,GAG9B,QAASqb,IAAYvJ,EAAMxN,GACvB,GAAIrH,GAASrT,KAAKwxB,cAActJ,EAAO,EAAI,SAAW,OACtD,OAAOlP,GAAW3F,GAAUA,EAAOqH,GAAUrH,EAAOlH,QAAQ,MAAOuO,GAGvE,QAASgX,IAAiB1b,GACtB,GAAIjQ,GAAMU,CACV,KAAKA,IAAKuP,GACNjQ,EAAOiQ,EAAOvP,GACVuS,EAAWjT,GACX/F,KAAKyG,GAAKV,EAEV/F,KAAK,IAAMyG,GAAKV,CAKxB/F,MAAK2xB,qBAAuB,GAAIlW,QAAOzb,KAAK4xB,cAAcC,OAAS,IAAM,UAAYA,QAoDzF,QAASC,IAAYze,EAAQjK,EAAO6H,EAAO8gB,GACvC,GAAIze,GAAS2E,IACTxE,EAAML,IAAwBgF,IAAI2Z,EAAQ3oB,EAC9C,OAAOkK,GAAOrC,GAAOwC,EAAKJ,GAG9B,QAAS2e,IAAM3e,EAAQjK,EAAO6H,EAAOghB,EAAOF,GAQxC,GAPsB,gBAAX1e,KACPjK,EAAQiK,EACRA,EAAS9M,QAGb8M,EAASA,GAAU,GAEN,MAATjK,EACA,MAAO0oB,IAAWze,EAAQjK,EAAO6H,EAAO8gB,EAG5C,IAAItrB,GACAyrB,IACJ,KAAKzrB,EAAI,EAAOwrB,EAAJxrB,EAAWA,IACnByrB,EAAIzrB,GAAKqrB,GAAWze,EAAQ5M,EAAGwK,EAAO8gB,EAE1C,OAAOG,GAGX,QAASC,IAAmB9e,EAAQjK,GAChC,MAAO4oB,IAAK3e,EAAQjK,EAAO,SAAU,GAAI,SAG7C,QAASgpB,IAAwB/e,EAAQjK,GACrC,MAAO4oB,IAAK3e,EAAQjK,EAAO,cAAe,GAAI,SAGlD,QAASipB,IAAqBhf,EAAQjK,GAClC,MAAO4oB,IAAK3e,EAAQjK,EAAO,WAAY,EAAG,OAG9C,QAASkpB,IAA0Bjf,EAAQjK,GACvC,MAAO4oB,IAAK3e,EAAQjK,EAAO,gBAAiB,EAAG,OAGnD,QAASmpB,IAAwBlf,EAAQjK,GACrC,MAAO4oB,IAAK3e,EAAQjK,EAAO,cAAe,EAAG,OAqBjD,QAASopB,MACL,GAAIxa,GAAiBhY,KAAKqnB,KAa1B,OAXArnB,MAAKmnB,cAAgBsL,GAAQzyB,KAAKmnB,eAClCnnB,KAAKonB,MAAgBqL,GAAQzyB,KAAKonB,OAClCpnB,KAAK6c,QAAgB4V,GAAQzyB,KAAK6c,SAElC7E,EAAKkP,aAAgBuL,GAAQza,EAAKkP,cAClClP,EAAKiP,QAAgBwL,GAAQza,EAAKiP,SAClCjP,EAAKgP,QAAgByL,GAAQza,EAAKgP,SAClChP,EAAK+O,MAAgB0L,GAAQza,EAAK+O,OAClC/O,EAAKsF,OAAgBmV,GAAQza,EAAKsF,QAClCtF,EAAK0O,MAAgB+L,GAAQza,EAAK0O,OAE3B1mB,KAGX,QAAS0yB,IAAoCjM,EAAU/iB,EAAOqB,EAAO2lB,GACjE,GAAIhkB,GAAQqiB,GAAuBrlB,EAAOqB,EAM1C,OAJA0hB,GAASU,eAAiBuD,EAAYhkB,EAAMygB,cAC5CV,EAASW,OAAiBsD,EAAYhkB,EAAM0gB,MAC5CX,EAAS5J,SAAiB6N,EAAYhkB,EAAMmW,QAErC4J,EAASa,UAIpB,QAASqL,IAA4BjvB,EAAOqB,GACxC,MAAO2tB,IAAmC1yB,KAAM0D,EAAOqB,EAAO,GAIlE,QAAS6tB,IAAiClvB,EAAOqB,GAC7C,MAAO2tB,IAAmC1yB,KAAM0D,EAAOqB,EAAO,IAGlE,QAAS8tB,IAASzc,GACd,MAAa,GAATA,EACOnR,KAAKuK,MAAM4G,GAEXnR,KAAKoR,KAAKD,GAIzB,QAAS0c,MACL,GAII7L,GAASD,EAASD,EAAOL,EAAOqM,EAJhC7L,EAAelnB,KAAKmnB,cACpBL,EAAe9mB,KAAKonB,MACpB9J,EAAetd,KAAK6c,QACpB7E,EAAehY,KAAKqnB,KAwCxB,OAnCOH,IAAgB,GAAKJ,GAAQ,GAAKxJ,GAAU,GAC1B,GAAhB4J,GAA6B,GAARJ,GAAuB,GAAVxJ,IACvC4J,GAAuD,MAAvC2L,GAAQG,GAAa1V,GAAUwJ,GAC/CA,EAAO,EACPxJ,EAAS,GAKbtF,EAAKkP,aAAeA,EAAe,IAEnCD,EAAoB9Q,EAAS+Q,EAAe,KAC5ClP,EAAKiP,QAAeA,EAAU,GAE9BD,EAAoB7Q,EAAS8Q,EAAU,IACvCjP,EAAKgP,QAAeA,EAAU,GAE9BD,EAAoB5Q,EAAS6Q,EAAU,IACvChP,EAAK+O,MAAeA,EAAQ,GAE5BD,GAAQ3Q,EAAS4Q,EAAQ,IAGzBgM,EAAiB5c,EAAS8c,GAAanM,IACvCxJ,GAAUyV,EACVjM,GAAQ+L,GAAQG,GAAaD,IAG7BrM,EAAQvQ,EAASmH,EAAS,IAC1BA,GAAU,GAEVtF,EAAK8O,KAASA,EACd9O,EAAKsF,OAASA,EACdtF,EAAK0O,MAASA,EAEP1mB,KAGX,QAASizB,IAAcnM,GAGnB,MAAc,MAAPA,EAAc,OAGzB,QAASkM,IAAc1V,GAEnB,MAAgB,QAATA,EAAkB,KAG7B,QAAS4V,IAAIva,GACT,GAAImO,GACAxJ,EACA4J,EAAelnB,KAAKmnB,aAIxB,IAFAxO,EAAQD,EAAeC,GAET,UAAVA,GAA+B,SAAVA,EAGrB,MAFAmO,GAAS9mB,KAAKonB,MAAUF,EAAe,MACvC5J,EAAStd,KAAK6c,QAAUoW,GAAanM,GACpB,UAAVnO,EAAoB2E,EAASA,EAAS,EAI7C,QADAwJ,EAAO9mB,KAAKonB,MAAQniB,KAAKsjB,MAAMyK,GAAahzB,KAAK6c,UACzClE,GACJ,IAAK,OAAW,MAAOmO,GAAO,EAAQI,EAAe,MACrD,KAAK,MAAW,MAAOJ,GAAeI,EAAe,KACrD,KAAK,OAAW,MAAc,IAAPJ,EAAeI,EAAe,IACrD,KAAK,SAAW,MAAc,MAAPJ,EAAeI,EAAe,GACrD,KAAK,SAAW,MAAc,OAAPJ,EAAeI,EAAe,GAErD,KAAK,cAAe,MAAOjiB,MAAKuK,MAAa,MAAPsX,GAAgBI,CACtD,SAAS,KAAM,IAAIlgB,OAAM,gBAAkB2R,IAMvD,QAASwa,MACL,MACInzB,MAAKmnB,cACQ,MAAbnnB,KAAKonB,MACJpnB,KAAK6c,QAAU,GAAM,OACK,QAA3BvG,EAAMtW,KAAK6c,QAAU,IAI7B,QAASuW,IAAQC,GACb,MAAO,YACH,MAAOrzB,MAAKkzB,GAAGG,IAavB,QAASC,IAAmB3a,GAExB,MADAA,GAAQD,EAAeC,GAChB3Y,KAAK2Y,EAAQ,OAGxB,QAAS4a,IAAW/b,GAChB,MAAO,YACH,MAAOxX,MAAKqnB,MAAM7P,IAY1B,QAASqP,MACL,MAAO1Q,GAASnW,KAAK8mB,OAAS,GAalC,QAAS0M,IAAkBlT,EAAQlK,EAAQqW,EAAe8E,EAAUje,GAChE,MAAOA,GAAOmgB,aAAard,GAAU,IAAKqW,EAAenM,EAAQiR,GAGrE,QAASmC,IAAiCC,EAAgBlH,EAAenZ,GACrE,GAAImT,GAAWsC,GAAuB4K,GAAgB5c,MAClDkQ,EAAWsB,GAAM9B,EAASyM,GAAG,MAC7BlM,EAAWuB,GAAM9B,EAASyM,GAAG,MAC7BnM,EAAWwB,GAAM9B,EAASyM,GAAG,MAC7BpM,EAAWyB,GAAM9B,EAASyM,GAAG,MAC7B5V,EAAWiL,GAAM9B,EAASyM,GAAG,MAC7BxM,EAAW6B,GAAM9B,EAASyM,GAAG,MAE7BhtB,EAAI+gB,EAAU2M,GAAWjmB,IAAM,IAAKsZ,IACrB,GAAXD,IAA2B,MAC3BA,EAAU4M,GAAWpzB,IAAM,KAAMwmB,IACtB,GAAXD,IAA2B,MAC3BA,EAAU6M,GAAWlmB,IAAM,KAAMqZ,IACtB,GAAXD,IAA2B,MAC3BA,EAAU8M,GAAWplB,IAAM,KAAMsY,IACtB,GAAXxJ,IAA2B,MAC3BA,EAAUsW,GAAW1S,IAAM,KAAM5D,IACtB,GAAXoJ,IAA2B,OAAmB,KAAMA,EAK5D,OAHAxgB,GAAE,GAAKumB,EACPvmB,EAAE,IAAMytB,EAAiB,EACzBztB,EAAE,GAAKoN,EACAkgB,GAAkBzgB,MAAM,KAAM7M,GAIzC,QAAS2tB,IAAgDC,EAAWC,GAChE,MAA8BxtB,UAA1BqtB,GAAWE,IACJ,EAEGvtB,SAAVwtB,EACOH,GAAWE,IAEtBF,GAAWE,GAAaC,GACjB,GAGX,QAASrH,IAAUsH,GACf,GAAI1gB,GAAStT,KAAKsa,aACdI,EAASgZ,GAAgC1zB,MAAOg0B,EAAY1gB,EAMhE,OAJI0gB,KACAtZ,EAASpH,EAAOme,YAAYzxB,KAAM0a,IAG/BpH,EAAOkZ,WAAW9R,GAK7B,QAASuZ,MAQL,GAGIjN,GAASD,EAAOL,EAHhBO,EAAUiN,GAAgBl0B,KAAKmnB,eAAiB,IAChDL,EAAeoN,GAAgBl0B,KAAKonB,OACpC9J,EAAe4W,GAAgBl0B,KAAK6c,QAIxCmK,GAAoB7Q,EAAS8Q,EAAU,IACvCF,EAAoB5Q,EAAS6Q,EAAU,IACvCC,GAAW,GACXD,GAAW,GAGXN,EAASvQ,EAASmH,EAAS,IAC3BA,GAAU,EAIV,IAAI6W,GAAIzN,EACJxF,EAAI5D,EACJ8W,EAAItN,EACJpZ,EAAIqZ,EACJvmB,EAAIwmB,EACJrZ,EAAIsZ,EACJniB,EAAQ9E,KAAKq0B,WAEjB,OAAKvvB,IAMW,EAARA,EAAY,IAAM,IACtB,KACCqvB,EAAIA,EAAI,IAAM,KACdjT,EAAIA,EAAI,IAAM,KACdkT,EAAIA,EAAI,IAAM,KACb1mB,GAAKlN,GAAKmN,EAAK,IAAM,KACtBD,EAAIA,EAAI,IAAM,KACdlN,EAAIA,EAAI,IAAM,KACdmN,EAAIA,EAAI,IAAM,IAXR,MAl6Gf,GAAImF,IAgOA6E,GA3GA7B,GAAmBjD,EAAmBiD,oBAiDtCG,IAAmB,EAyDnByB,MAiHAe,MAgFAgC,GAAmB,mLAEnBQ,GAAwB,6CAExBJ,MAEAR,MAoFAia,GAAiB,KACjBC,GAAiB,OACjBC,GAAiB,QACjBC,GAAiB,QACjBC,GAAiB,aACjBC,GAAiB,QACjBC,GAAiB,YACjBC,GAAiB,gBACjBC,GAAiB,UACjBC,GAAiB,UACjBC,GAAiB,eAEjBC,GAAiB,MACjBC,GAAiB,WAEjB7L,GAAiB,qBACjBT,GAAmB,0BAEnBuM,GAAiB,uBAIjBC,GAAY,mHAGZ9Z,MA2BAY,MA8BA4C,GAAO,EACPF,GAAQ,EACRC,GAAO,EACPE,GAAO,EACPC,GAAS,EACTC,GAAS,EACTC,GAAc,EACdG,GAAO,EACPE,GAAU,CAQdvF,GAAe,KAAM,KAAM,GAAI,KAAM,WACjC,MAAOha,MAAKyc,QAAU,IAG1BzC,EAAe,MAAO,EAAG,EAAG,SAAU3G,GAClC,MAAOrT,MAAKsa,aAAaiD,YAAYvd,KAAMqT,KAG/C2G,EAAe,OAAQ,EAAG,EAAG,SAAU3G,GACnC,MAAOrT,MAAKsa,aAAagD,OAAOtd,KAAMqT,KAK1CgF,EAAa,QAAS,KAItB8C,EAAc,IAAQwZ,IACtBxZ,EAAc,KAAQwZ,GAAWJ,IACjCpZ,EAAc,MAAQ,SAAUI,EAAUjI,GACtC,MAAOA,GAAOwK,iBAAiBvC,KAEnCJ,EAAc,OAAQ,SAAUI,EAAUjI,GACtC,MAAOA,GAAO6K,YAAY5C,KAG9BU,GAAe,IAAK,MAAO,SAAUvY,EAAO+F,GACxCA,EAAMmV,IAAStI,EAAM5S,GAAS,IAGlCuY,GAAe,MAAO,QAAS,SAAUvY,EAAO+F,EAAOuM,EAAQiE,GAC3D,GAAIwC,GAAQzG,EAAOH,QAAQ6H,YAAYha,EAAOuW,EAAOjE,EAAOnB,QAE/C,OAAT4H,EACAhT,EAAMmV,IAASnC,EAEfpI,EAAgB2B,GAAQ/B,aAAevQ,GAM/C,IAAIoZ,IAAmB,iCACnBuY,GAAsB,wFAAwFpsB,MAAM,KAMpHqsB,GAA2B,kDAAkDrsB,MAAM,KA2EnFssB,GAA0BH,GAiB1BI,GAAqBJ,GAkGrBrV,KASJlN,GAAmB6M,6BAA8B,CAIjD,IAAIa,IAAmB,kJACnBC,GAAgB,6IAEhBG,GAAU,wBAEVF,KACC,eAAgB,wBAChB,aAAc,oBACd,eAAgB,mBAChB,aAAc,eAAe,IAC7B,WAAY,gBACZ,UAAW,cAAc,IACzB,aAAc,eACd,WAAY,UAEZ,aAAc,gBACd,YAAa,eAAe,IAC5B,UAAW,UAIZC,KACC,gBAAiB,wBACjB,gBAAiB,uBACjB,WAAY,mBACZ,QAAS,cACT,cAAe,sBACf,cAAe,qBACf,SAAU,iBACV,OAAQ,aACR,KAAM,SAGPI,GAAkB,qBAuEtBjO,GAAmBkO,wBAA0BnB,GACzC,4LAIA,SAAU5J,GACNA,EAAOtB,GAAK,GAAIrP,MAAK2Q,EAAOT,IAAMS,EAAOkN,QAAU,OAAS,OA4BpElJ,EAAe,IAAK,EAAG,EAAG,WACtB,GAAIiH,GAAIjhB,KAAKwc,MACb,OAAY,OAALyE,EAAY,GAAKA,EAAI,IAAMA,IAGtCjH,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOha,MAAKwc,OAAS,MAGzBxC,EAAe,GAAI,OAAU,GAAU,EAAG,QAC1CA,EAAe,GAAI,QAAU,GAAU,EAAG,QAC1CA,EAAe,GAAI,SAAU,GAAG,GAAO,EAAG,QAI1C3B,EAAa,OAAQ,KAIrB8C,EAAc,IAAU+Z,IACxB/Z,EAAc,KAAUwZ,GAAWJ,IACnCpZ,EAAc,OAAU4Z,GAAWN,IACnCtZ,EAAc,QAAU6Z,GAAWN,IACnCvZ,EAAc,SAAU6Z,GAAWN,IAEnCzY,GAAe,QAAS,UAAW6C,IACnC7C,EAAc,OAAQ,SAAUvY,EAAO+F,GACnCA,EAAMqV,IAAyB,IAAjBpb,EAAM4C,OAAeuM,EAAmB4iB,kBAAkB/xB,GAAS4S,EAAM5S,KAE3FuY,EAAc,KAAM,SAAUvY,EAAO+F,GACjCA,EAAMqV,IAAQjM,EAAmB4iB,kBAAkB/xB,KAEvDuY,EAAc,IAAK,SAAUvY,EAAO+F,GAChCA,EAAMqV,IAAQvS,SAAS7I,EAAO,MAelCmP,EAAmB4iB,kBAAoB,SAAU/xB,GAC7C,MAAO4S,GAAM5S,IAAU4S,EAAM5S,GAAS,GAAK,KAAO,KAKtD,IAAIgyB,IAAaxc,EAAW,YAAY,EAgNxCrG,GAAmB2R,SAAW,YAkP9B,IAAImR,IAAe/V,GACd,mGACA,WACI,GAAIlZ,GAAQ2d,GAAmBtR,MAAM,KAAM1M,UAC3C,OAAIrG,MAAKuZ,WAAa7S,EAAM6S,UACTvZ,KAAR0G,EAAe1G,KAAO0G,EAEtBqO,MAKhB6gB,GAAehW,GACf,mGACA,WACI,GAAIlZ,GAAQ2d,GAAmBtR,MAAM,KAAM1M,UAC3C,OAAIrG,MAAKuZ,WAAa7S,EAAM6S,UACjB7S,EAAQ1G,KAAOA,KAAO0G,EAEtBqO,MAwCfkO,GAAM,WACN,MAAO5d,MAAK4d,IAAM5d,KAAK4d,OAAS,GAAK5d,MAwDzCmiB,IAAO,IAAK,KACZA,GAAO,KAAM,IAIbrM,EAAc,IAAMyN,IACpBzN,EAAc,KAAMyN,IACpB3M,GAAe,IAAK,MAAO,SAAUvY,EAAO+F,EAAOuM,GAC/CA,EAAOkN,SAAU,EACjBlN,EAAON,KAAOiS,GAAiBiB,GAAkBllB,IAQrD,IAAIqkB,IAAc,iBAoClBlV,GAAmBqD,aAAe,YA0IlC,IAAI6T,IAAc,yDAIdC,GAAW,+HA+DfjB,IAAuBlf,GAAK2c,GAASvT,SAsFrC,IAAI4iB,IAAyBpL,GAAY,EAAG,OACxCqL,GAAyBrL,GAAY,GAAI,WAuI7C5X,GAAmB0Z,cAAgB,sBAsEnC,IAAIwJ,IAAOnW,GACP,kJACA,SAAUjW,GACN,MAAYpD,UAARoD,EACO3J,KAAKsa,aAELta,KAAKsT,OAAO3J,IAuH/BqQ,GAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOha,MAAK+jB,WAAa,MAG7B/J,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOha,MAAKg2B,cAAgB,MAOhCzI,GAAuB,OAAY,YACnCA,GAAuB,QAAY,YACnCA,GAAuB,OAAS,eAChCA,GAAuB,QAAS,eAIhClV,EAAa,WAAY,MACzBA,EAAa,cAAe,MAI5B8C,EAAc,IAAU+Z,IACxB/Z,EAAc,IAAU+Z,IACxB/Z,EAAc,KAAUwZ,GAAWJ,IACnCpZ,EAAc,KAAUwZ,GAAWJ,IACnCpZ,EAAc,OAAU4Z,GAAWN,IACnCtZ,EAAc,OAAU4Z,GAAWN,IACnCtZ,EAAc,QAAU6Z,GAAWN,IACnCvZ,EAAc,QAAU6Z,GAAWN,IAEnCvY,GAAmB,OAAQ,QAAS,OAAQ,SAAU,SAAUzY,EAAOye,EAAMnM,EAAQiE,GACjFkI,EAAKlI,EAAMrN,OAAO,EAAG,IAAM0J,EAAM5S,KAGrCyY,GAAmB,KAAM,MAAO,SAAUzY,EAAOye,EAAMnM,EAAQiE,GAC3DkI,EAAKlI,GAASpH,EAAmB4iB,kBAAkB/xB,KAsDvDsW,EAAe,IAAK,EAAG,KAAM,WAI7B3B,EAAa,UAAW,KAIxB8C,EAAc,IAAKmZ,IACnBrY,EAAc,IAAK,SAAUvY,EAAO+F,GAChCA,EAAMmV,IAA8B,GAApBtI,EAAM5S,GAAS,KAWnCsW,EAAe,KAAM,KAAM,GAAI,KAAM,QACrCA,EAAe,KAAM,KAAM,GAAI,KAAM,WAIrC3B,EAAa,OAAQ,KACrBA,EAAa,UAAW,KAIxB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BpZ,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAE/BpY,GAAmB,IAAK,KAAM,IAAK,MAAO,SAAUzY,EAAOye,EAAMnM,EAAQiE,GACrEkI,EAAKlI,EAAMrN,OAAO,EAAG,IAAM0J,EAAM5S,IAWrC,IAAIuyB,KACApU,IAAM,EACNC,IAAM,EAyBV9H,GAAe,KAAM,KAAM,GAAI,KAAM,QAIrC3B,EAAa,OAAQ,KAIrB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BpZ,EAAc,KAAM,SAAUI,EAAUjI,GACpC,MAAOiI,GAAWjI,EAAOse,cAAgBte,EAAOqe,uBAGpD1V,GAAe,IAAK,MAAO4C,IAC3B5C,EAAc,KAAM,SAAUvY,EAAO+F,GACjCA,EAAMoV,IAAQvI,EAAM5S,EAAM4B,MAAMqvB,IAAW,GAAI,KAKnD,IAAIuB,IAAmBhd,EAAW,QAAQ,EAI1Cc,GAAe,IAAK,EAAG,KAAM,OAE7BA,EAAe,KAAM,EAAG,EAAG,SAAU3G,GACjC,MAAOrT,MAAKsa,aAAaoV,YAAY1vB,KAAMqT,KAG/C2G,EAAe,MAAO,EAAG,EAAG,SAAU3G,GAClC,MAAOrT,MAAKsa,aAAamV,cAAczvB,KAAMqT,KAGjD2G,EAAe,OAAQ,EAAG,EAAG,SAAU3G,GACnC,MAAOrT,MAAKsa,aAAakV,SAASxvB,KAAMqT,KAG5C2G,EAAe,IAAK,EAAG,EAAG,WAC1BA,EAAe,IAAK,EAAG,EAAG,cAI1B3B,EAAa,MAAO,KACpBA,EAAa,UAAW,KACxBA,EAAa,aAAc,KAI3B8C,EAAc,IAAQwZ,IACtBxZ,EAAc,IAAQwZ,IACtBxZ,EAAc,IAAQwZ,IACtBxZ,EAAc,KAAQia,IACtBja,EAAc,MAAQia,IACtBja,EAAc,OAAQia,IAEtBjZ,GAAmB,KAAM,MAAO,QAAS,SAAUzY,EAAOye,EAAMnM,EAAQiE,GACpE,GAAImI,GAAUpM,EAAOH,QAAQ6Y,cAAchrB,EAAOuW,EAAOjE,EAAOnB,QAEjD,OAAXuN,EACAD,EAAK3T,EAAI4T,EAET/N,EAAgB2B,GAAQpB,eAAiBlR,IAIjDyY,GAAmB,IAAK,IAAK,KAAM,SAAUzY,EAAOye,EAAMnM,EAAQiE,GAC9DkI,EAAKlI,GAAS3D,EAAM5S,IAwBxB,IAAIyyB,IAAwB,2DAA2DltB,MAAM,KAMzFmtB,GAA6B,8BAA8BntB,MAAM,KAKjEotB,GAA2B,uBAAuBptB,MAAM,IA4E5D+Q,GAAe,OAAQ,OAAQ,GAAI,OAAQ,aAI3C3B,EAAa,YAAa,OAI1B8C,EAAc,MAAQ2Z,IACtB3Z,EAAc,OAAQqZ,IACtBvY,GAAe,MAAO,QAAS,SAAUvY,EAAO+F,EAAOuM,GACnDA,EAAO0N,WAAapN,EAAM5S,KAkB9BsW,EAAe,KAAM,KAAM,GAAI,EAAG,QAClCA,EAAe,KAAM,KAAM,GAAI,EAAGgW,IAElChW,EAAe,MAAO,EAAG,EAAG,WACxB,MAAO,GAAKgW,GAAQjd,MAAM/S,MAAQyZ,EAASzZ,KAAKgnB,UAAW,KAG/DhN,EAAe,QAAS,EAAG,EAAG,WAC1B,MAAO,GAAKgW,GAAQjd,MAAM/S,MAAQyZ,EAASzZ,KAAKgnB,UAAW,GACvDvN,EAASzZ,KAAKinB,UAAW,KAGjCjN,EAAe,MAAO,EAAG,EAAG,WACxB,MAAO,GAAKha,KAAK+mB,QAAUtN,EAASzZ,KAAKgnB,UAAW,KAGxDhN,EAAe,QAAS,EAAG,EAAG,WAC1B,MAAO,GAAKha,KAAK+mB,QAAUtN,EAASzZ,KAAKgnB,UAAW,GAChDvN,EAASzZ,KAAKinB,UAAW,KASjCjC,GAAS,KAAK,GACdA,GAAS,KAAK,GAId3M,EAAa,OAAQ,KAQrB8C,EAAc,IAAM+U,IACpB/U,EAAc,IAAM+U,IACpB/U,EAAc,IAAMwZ,IACpBxZ,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BpZ,EAAc,KAAMwZ,GAAWJ,IAE/BpZ,EAAc,MAAOyZ,IACrBzZ,EAAc,QAAS0Z,IACvB1Z,EAAc,MAAOyZ,IACrBzZ,EAAc,QAAS0Z,IAEvB5Y,GAAe,IAAK,MAAO8C,IAC3B9C,GAAe,IAAK,KAAM,SAAUvY,EAAO+F,EAAOuM,GAC9CA,EAAOsgB,MAAQtgB,EAAOH,QAAQsP,KAAKzhB,GACnCsS,EAAO8O,UAAYphB,IAEvBuY,GAAe,IAAK,MAAO,SAAUvY,EAAO+F,EAAOuM,GAC/CvM,EAAMsV,IAAQzI,EAAM5S,GACpB2Q,EAAgB2B,GAAQlB,SAAU,IAEtCmH,EAAc,MAAO,SAAUvY,EAAO+F,EAAOuM,GACzC,GAAIugB,GAAM7yB,EAAM4C,OAAS,CACzBmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG2pB,IACpC9sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO2pB,IACnCliB,EAAgB2B,GAAQlB,SAAU,IAEtCmH,EAAc,QAAS,SAAUvY,EAAO+F,EAAOuM,GAC3C,GAAIwgB,GAAO9yB,EAAM4C,OAAS,EACtBmwB,EAAO/yB,EAAM4C,OAAS,CAC1BmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG4pB,IACpC/sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO4pB,EAAM,IACzC/sB,EAAMwV,IAAU3I,EAAM5S,EAAMkJ,OAAO6pB,IACnCpiB,EAAgB2B,GAAQlB,SAAU,IAEtCmH,EAAc,MAAO,SAAUvY,EAAO+F,EAAOuM,GACzC,GAAIugB,GAAM7yB,EAAM4C,OAAS,CACzBmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG2pB,IACpC9sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO2pB,MAEvCta,EAAc,QAAS,SAAUvY,EAAO+F,EAAOuM,GAC3C,GAAIwgB,GAAO9yB,EAAM4C,OAAS,EACtBmwB,EAAO/yB,EAAM4C,OAAS,CAC1BmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG4pB,IACpC/sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO4pB,EAAM,IACzC/sB,EAAMwV,IAAU3I,EAAM5S,EAAMkJ,OAAO6pB,KAWvC,IAAIC,IAA6B,gBAgB7BC,GAAazd,EAAW,SAAS,EAIrCc,GAAe,KAAM,KAAM,GAAI,EAAG,UAIlC3B,EAAa,SAAU,KAIvB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BtY,GAAe,IAAK,MAAO+C,GAI3B,IAAI4X,IAAe1d,EAAW,WAAW,EAIzCc,GAAe,KAAM,KAAM,GAAI,EAAG,UAIlC3B,EAAa,SAAU,KAIvB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BtY,GAAe,IAAK,MAAOgD,GAI3B,IAAI4X,IAAe3d,EAAW,WAAW,EAIzCc,GAAe,IAAK,EAAG,EAAG,WACtB,SAAUha,KAAK8lB,cAAgB,OAGnC9L,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,SAAUha,KAAK8lB,cAAgB,MAGnC9L,EAAe,GAAI,MAAO,GAAI,EAAG,eACjCA,EAAe,GAAI,OAAQ,GAAI,EAAG,WAC9B,MAA4B,IAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,QAAS,GAAI,EAAG,WAC/B,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,SAAU,GAAI,EAAG,WAChC,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,UAAW,GAAI,EAAG,WACjC,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,WAAY,GAAI,EAAG,WAClC,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,YAAa,GAAI,EAAG,WACnC,MAA4B,KAArBha,KAAK8lB,gBAMhBzN,EAAa,cAAe,MAI5B8C,EAAc,IAAQ2Z,GAAWR,IACjCnZ,EAAc,KAAQ2Z,GAAWP,IACjCpZ,EAAc,MAAQ2Z,GAAWN,GAEjC,IAAIva,GACJ,KAAKA,GAAQ,OAAQA,GAAM3T,QAAU,EAAG2T,IAAS,IAC7CkB,EAAclB,GAAOgb,GAOzB,KAAKhb,GAAQ,IAAKA,GAAM3T,QAAU,EAAG2T,IAAS,IAC1CgC,EAAchC,GAAOuW,GAIzB,IAAIsG,IAAoB5d,EAAW,gBAAgB,EAInDc,GAAe,IAAM,EAAG,EAAG,YAC3BA,EAAe,KAAM,EAAG,EAAG,WAY3B,IAAI+c,IAAyBhhB,EAAO9C,SAEpC8jB,IAAuB9Q,IAAoB4P,GAC3CkB,GAAuB3L,SAAoBL,GAC3CgM,GAAuB5O,MAAoBA,GAC3C4O,GAAuB7O,KAAoBA,GAC3C6O,GAAuBzL,MAAoBA,GAC3CyL,GAAuB1jB,OAAoBA,GAC3C0jB,GAAuB3hB,KAAoBA,GAC3C2hB,GAAuBpK,QAAoBA,GAC3CoK,GAAuB5hB,GAAoBA,GAC3C4hB,GAAuBnK,MAAoBA,GAC3CmK,GAAuBC,IAAoBxd,EAC3Cud,GAAuB1J,UAAoBA,GAC3C0J,GAAuBxM,QAAoBA,GAC3CwM,GAAuBvM,SAAoBA,GAC3CuM,GAAuBxL,UAAoBA,GAC3CwL,GAAuBvL,OAAoBA,GAC3CuL,GAAuBrL,cAAoBA,GAC3CqL,GAAuBpL,eAAoBA,GAC3CoL,GAAuBxd,QAAoB4T,GAC3C4J,GAAuBhB,KAAoBA,GAC3CgB,GAAuBzjB,OAAoBA,GAC3CyjB,GAAuBzc,WAAoBA,GAC3Cyc,GAAuBlyB,IAAoB+wB,GAC3CmB,GAAuBnyB,IAAoB+wB,GAC3CoB,GAAuB3J,aAAoBA,GAC3C2J,GAAuB3e,IAAoBoB,EAC3Cud,GAAuB5L,QAAoBA,GAC3C4L,GAAuB5N,SAAoB2M,GAC3CiB,GAAuBvtB,QAAoBA,GAC3CutB,GAAuB9J,SAAoBA,GAC3C8J,GAAuB/uB,OAAoBA,GAC3C+uB,GAAuB7uB,YAAoBmkB,GAC3C0K,GAAuB7J,OAAoBA,GAC3C6J,GAAuB9pB,SAAoBA,GAC3C8pB,GAAuB/J,KAAoBA,GAC3C+J,GAAuBjvB,QAAoBilB,GAC3CgK,GAAuBzJ,aAAoBA,GAG3CyJ,GAAuBva,KAAakZ,GACpCqB,GAAuBrV,WAAaC,GAGpCoV,GAAuBhT,SAAc0J,GACrCsJ,GAAuBf,YAAcrI,GAGrCoJ,GAAuBnQ,QAAUmQ,GAAuBpQ,SAAWwH,GAGnE4I,GAAuBta,MAAcmB,EACrCmZ,GAAuBxa,YAAcsB,GAGrCkZ,GAAuB5U,KAAiB4U,GAAuBlQ,MAAe0H,GAC9EwI,GAAuBnJ,QAAiBmJ,GAAuBE,SAAezI,GAC9EuI,GAAuBnU,YAAiBkL,GACxCiJ,GAAuBG,eAAiBrJ,GAGxCkJ,GAAuBpZ,KAAauY,GACpCa,GAAuBpR,IAAaoR,GAAuBjQ,KAAmB6I,GAC9EoH,GAAuB3U,QAAayN,GACpCkH,GAAuBjK,WAAagD,GACpCiH,GAAuBtU,UAAasN,GAGpCgH,GAAuBhS,KAAOgS,GAAuBhQ,MAAQ4P,GAG7DI,GAAuBnR,OAASmR,GAAuB/P,QAAU4P,GAGjEG,GAAuBlR,OAASkR,GAAuB9P,QAAU4P,GAGjEE,GAAuBjR,YAAciR,GAAuB7P,aAAe4P,GAG3EC,GAAuBrP,UAAuBe,GAC9CsO,GAAuBtjB,IAAuBwV,GAC9C8N,GAAuB1O,MAAuBa,GAC9C6N,GAAuBlG,UAAuBzH,GAC9C2N,GAAuBzN,qBAAuBA,GAC9CyN,GAAuBI,MAAuB5N,GAC9CwN,GAAuBK,aAAuB5N,GAC9CuN,GAAuBrN,QAAuBA,GAC9CqN,GAAuBpN,YAAuBA,GAC9CoN,GAAuBnN,MAAuBA,GAC9CmN,GAAuB3Q,MAAuBwD,GAG9CmN,GAAuBM,SAAW5G,GAClCsG,GAAuBO,SAAW5G,GAGlCqG,GAAuBQ,MAAS3X,GAAU,kDAAmDsW,IAC7Fa,GAAuBzZ,OAASsC,GAAU,mDAAoDhC,GAC9FmZ,GAAuBrQ,MAAS9G,GAAU,iDAAkD8V,IAC5FqB,GAAuBS,KAAS5X,GAAU,4GAA6GoJ,GAEvJ,IAAIyO,IAAkBV,GAUlBW,IACAC,QAAU,gBACVC,QAAU,mBACVC,SAAW,eACXC,QAAU,oBACVC,SAAW,sBACXC,SAAW,KAQXC,IACAC,IAAO,YACPC,GAAO,SACPC,EAAO,aACPC,GAAO,eACPC,IAAO,sBACPC,KAAO,6BAkBPC,GAAqB,eAMrBC,GAAiB,KACjBC,GAAsB,UAUtBC,IACAC,OAAS,QACTC,KAAS,SACTlrB,EAAK,gBACLnN,EAAK,WACLs4B,GAAK,aACLprB,EAAK,UACLqrB,GAAK,WACLvqB,EAAK,QACLwqB,GAAK,UACL9X,EAAK,UACL+X,GAAK,YACLhY,EAAK,SACLiY,GAAK,YA8BLC,GAAmBliB,EAAOhE,SAE9BkmB,IAAiBpI,UAAkB2G,GACnCyB,GAAiB/N,SAAkB0F,GACnCqI,GAAiBnI,gBAAkBiH,GACnCkB,GAAiBne,eAAkBA,GACnCme,GAAiBhI,aAAkBqH,GACnCW,GAAiBre,YAAkBA,GACnCqe,GAAiB/H,SAAkBqH,GACnCU,GAAiBhf,QAAkBA,GACnCgf,GAAiBvH,cAAkB8G,GACnCS,GAAiBjT,SAAkBmL,GACnC8H,GAAiB3M,WAAkB6E,GACnC8H,GAAiB3H,cAAkBmH,GACnCQ,GAAiB1F,aAAkBnC,GACnC6H,GAAiB1H,WAAkBA,GACnC0H,GAAiB/gB,IAAkBsZ,GAGnCyH,GAAiB7b,OAA2BV,EAC5Cuc,GAAiBtc,QAAoBwY,GACrC8D,GAAiB5b,YAA2BR,EAC5Coc,GAAiBnc,aAAoBsY,GACrC6D,GAAiBzb,YAA2BT,EAC5Ckc,GAAiB9a,aAAoBmX,GACrC2D,GAAiBhb,YAAoBA,GACrCgb,GAAiBjb,kBAAoBqX,GACrC4D,GAAiBrb,iBAAoBA,GAGrCqb,GAAiBhX,KAAOiM,GACxB+K,GAAiB7U,MAAQ2R,GACzBkD,GAAiBC,eAAiB9K,GAClC6K,GAAiBE,eAAiBhL,GAGlC8K,GAAiB3J,SAAwBb,GACzCwK,GAAiBvK,UAAiBuH,GAClCgD,GAAiBzJ,YAAwBV,GACzCmK,GAAiBlK,aAAiBoH,GAClC8C,GAAiB1J,cAAwBX,GACzCqK,GAAiBpK,eAAiBqH,GAClC+C,GAAiBzK,cAAwBQ,GAGzCiK,GAAiBhU,KAAOiL,GACxB+I,GAAiBhJ,eAAiBuG,GAClCyC,GAAiBnU,SAAWsL,GAgD5BxY,EAAmC,MAC/BwhB,aAAc,uBACdnf,QAAU,SAAU/D,GAChB,GAAIjQ,GAAIiQ,EAAS,GACbsE,EAAuC,IAA7BpE,EAAMF,EAAS,IAAM,IAAa,KACrC,IAANjQ,EAAW,KACL,IAANA,EAAW,KACL,IAANA,EAAW,KAAO,IACvB,OAAOiQ,GAASsE,KAKxB7H,EAAmBkjB,KAAOnW,GAAU,wDAAyD9H,GAC7FjF,EAAmB0mB,SAAW3Z,GAAU,gEAAiE3H,EAEzG,IAAIwa,IAAUxtB,KAAK8R,IAoJfyiB,GAAiBpG,GAAO,MACxBiB,GAAiBjB,GAAO,KACxBqG,GAAiBrG,GAAO,KACxBsG,GAAiBtG,GAAO,KACxBuG,GAAiBvG,GAAO,KACxBwG,GAAiBxG,GAAO,KACxByG,GAAiBzG,GAAO,KACxB0G,GAAiB1G,GAAO,KAaxBlM,GAAeqM,GAAW,gBAC1BtM,GAAesM,GAAW,WAC1BvM,GAAeuM,GAAW,WAC1BxM,GAAewM,GAAW,SAC1BzM,GAAeyM,GAAW,QAC1BjW,GAAeiW,GAAW,UAC1B7M,GAAe6M,GAAW,SAM1BhL,GAAQtjB,KAAKsjB,MACbqL,IACAjmB,EAAG,GACHnN,EAAG,GACHkN,EAAG,GACHc,EAAG,GACH0S,EAAG,IAyDHgT,GAAkBjvB,KAAK8R,IAoDvBgjB,GAA4BvT,GAASvT,SAEzC8mB,IAA0BhjB,IAAiByb,GAC3CuH,GAA0B9T,IAAiB0M,GAC3CoH,GAA0B5Q,SAAiByJ,GAC3CmH,GAA0B7G,GAAiBA,GAC3C6G,GAA0BP,eAAiBA,GAC3CO,GAA0B1F,UAAiBA,GAC3C0F,GAA0BN,UAAiBA,GAC3CM,GAA0BL,QAAiBA,GAC3CK,GAA0BJ,OAAiBA,GAC3CI,GAA0BH,QAAiBA,GAC3CG,GAA0BF,SAAiBA,GAC3CE,GAA0BD,QAAiBA,GAC3CC,GAA0BjyB,QAAiBqrB,GAC3C4G,GAA0BzS,QAAiBwL,GAC3CiH,GAA0B/C,IAAiB1D,GAC3CyG,GAA0B7S,aAAiBA,GAC3C6S,GAA0B9S,QAAiBA,GAC3C8S,GAA0B/S,QAAiBA,GAC3C+S,GAA0BhT,MAAiBA,GAC3CgT,GAA0BjT,KAAiBA,GAC3CiT,GAA0BlT,MAAiBA,GAC3CkT,GAA0Bzc,OAAiBA,GAC3Cyc,GAA0BrT,MAAiBA,GAC3CqT,GAA0BrN,SAAiBA,GAC3CqN,GAA0B7xB,YAAiB+rB,GAC3C8F,GAA0B9sB,SAAiBgnB,GAC3C8F,GAA0B7M,OAAiB+G,GAC3C8F,GAA0BzmB,OAAiBA,GAC3CymB,GAA0Bzf,WAAiBA,GAG3Cyf,GAA0BC,YAAcpa,GAAU,sFAAuFqU,IACzI8F,GAA0BhE,KAAOA,GAMjC/b,EAAe,IAAK,EAAG,EAAG,QAC1BA,EAAe,IAAK,EAAG,EAAG,WAI1BmB,EAAc,IAAK+Z,IACnB/Z,EAAc,IAAKga,IACnBlZ,EAAc,IAAK,SAAUvY,EAAO+F,EAAOuM,GACvCA,EAAOtB,GAAK,GAAIrP,MAA6B,IAAxB+kB,WAAW1mB,EAAO,OAE3CuY,EAAc,IAAK,SAAUvY,EAAO+F,EAAOuM,GACvCA,EAAOtB,GAAK,GAAIrP,MAAKiR,EAAM5S,MAM/BmP,EAAmBonB,QAAU,SAE7BjnB,EAAgBqR,IAEhBxR,EAAmBhJ,GAAwB4tB,GAC3C5kB,EAAmBjO,IAAwBA,GAC3CiO,EAAmBhO,IAAwBA,GAC3CgO,EAAmBoQ,IAAwBA,GAC3CpQ,EAAmBY,IAAwBL,EAC3CP,EAAmBma,KAAwB2D,GAC3C9d,EAAmByK,OAAwB6U,GAC3Ctf,EAAmBzN,OAAwBA,EAC3CyN,EAAmBS,OAAwBwE,EAC3CjF,EAAmBqnB,QAAwBnlB,EAC3ClC,EAAmB4T,SAAwBsC,GAC3ClW,EAAmB9K,SAAwBA,EAC3C8K,EAAmB2c,SAAwB6C,GAC3Cxf,EAAmBge,UAAwBD,GAC3C/d,EAAmByH,WAAwBrC,EAC3CpF,EAAmB0U,WAAwBA,GAC3C1U,EAAmB0K,YAAwB6U,GAC3Cvf,EAAmB6c,YAAwB6C,GAC3C1f,EAAmBqF,aAAwBA,EAC3CrF,EAAmB4c,cAAwB6C,GAC3Czf,EAAmB6F,eAAwBA,EAC3C7F,EAAmBsnB,sBAAwBtG,GAC3ChhB,EAAmBI,UAAwBwkB,EAE3C,IAAI2C,IAAUvnB,CAEd,OAAOunB,QAGkB75B,KAAKX,EAASM,EAAoB,GAAGL,KAI9D,SAASA,EAAQD,GAErBC,EAAOD,QAAU,SAASC,GAQzB,MAPIA,GAAOw6B,kBACVx6B,EAAO+f,UAAY,aACnB/f,EAAOy6B,SAEPz6B,EAAO06B,YACP16B,EAAOw6B,gBAAkB,GAEnBx6B,IAMJ,SAASA,EAAQD,GAErB,QAAS46B,GAAeC,GACvB,KAAM,IAAIzzB,OAAM,uBAAyByzB,EAAM,MAEhDD,EAAevrB,KAAO,WAAa,UACnCurB,EAAeE,QAAUF,EACzB36B,EAAOD,QAAU46B,EACjBA,EAAen6B,GAAK,GAKhB,SAASR,EAAQD,IAEO,SAASgT,GAoDrC,QAASlN,GAAMiI,EAAGgtB,EAAKnT,GACrB,GAAI/gB,GAAIk0B,GAAOnT,GAAU,EACrBoT,EAAK,CAWT,KATAD,EAAMA,MACNhtB,EAAEwJ,cAAchL,QAAQ,eAAgB,SAAU0uB,GACvC,GAALD,IAEFD,EAAIl0B,EAAIm0B,KAAQE,EAAWD,MAKnB,GAALD,GACLD,EAAIl0B,EAAIm0B,KAAQ,CAGlB,OAAOD,GAIT,QAASI,GAAQJ,EAAKnT,GACpB,GAAI/gB,GAAI+gB,GAAU,EACdwT,EAAMC,CACV,OAAOD,GAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAsBzR,QAASy0B,GAAGr3B,EAAS82B,EAAKnT,GACxB,GAAI/gB,GAAIk0B,GAAOnT,GAAU,EACrBrhB,EAAIw0B,KAER92B,GAAUA,KAEV,IAAIs3B,GAAgC50B,SAArB1C,EAAQs3B,SAAyBt3B,EAAQs3B,SAAWC,EAM/DC,EAA0B90B,SAAlB1C,EAAQw3B,MAAsBx3B,EAAQw3B,OAAQ,GAAIh2B,OAAOsP,UAIjE2mB,EAA0B/0B,SAAlB1C,EAAQy3B,MAAsBz3B,EAAQy3B,MAAQC,EAAa,EAGnEC,EAAKH,EAAQI,GAAcH,EAAQC,GAAc,GAcrD,IAXS,EAALC,GAA+Bj1B,SAArB1C,EAAQs3B,WACpBA,EAAWA,EAAW,EAAI,QAKlB,EAALK,GAAUH,EAAQI,IAAiCl1B,SAAlB1C,EAAQy3B,QAC5CA,EAAQ,GAINA,GAAS,IACX,KAAM,IAAIt0B,OAAM,kDAGlBy0B,GAAaJ,EACbE,EAAaD,EACbF,EAAYD,EAGZE,GAAS,WAGT,IAAIK,IAA4B,KAAb,UAARL,GAA6BC,GAAS,UACjDn1B,GAAEM,KAAOi1B,IAAO,GAAK,IACrBv1B,EAAEM,KAAOi1B,IAAO,GAAK,IACrBv1B,EAAEM,KAAOi1B,IAAO,EAAI,IACpBv1B,EAAEM,KAAY,IAALi1B,CAGT,IAAIC,GAAMN,EAAQ,WAAc,IAAQ,SACxCl1B,GAAEM,KAAOk1B,IAAQ,EAAI,IACrBx1B,EAAEM,KAAa,IAANk1B,EAGTx1B,EAAEM,KAAOk1B,IAAQ,GAAK,GAAM,GAC5Bx1B,EAAEM,KAAOk1B,IAAQ,GAAK,IAGtBx1B,EAAEM,KAAO00B,IAAa,EAAI,IAG1Bh1B,EAAEM,KAAkB,IAAX00B,CAIT,KAAK,GADDS,GAAO/3B,EAAQ+3B,MAAQC,EAClBC,EAAI,EAAO,EAAJA,EAAOA,IACrB31B,EAAEM,EAAIq1B,GAAKF,EAAKE,EAGlB,OAAOnB,GAAMA,EAAMI,EAAQ50B,GAM7B,QAASP,GAAG/B,EAAS82B,EAAKnT,GAExB,GAAI/gB,GAAIk0B,GAAOnT,GAAU,CAEH,iBAAX3jB,KACT82B,EAAiB,UAAX92B,EAAsB,GAAIiD,OAAM,IAAM,KAC5CjD,EAAU,MAEZA,EAAUA,KAEV,IAAIk4B,GAAOl4B,EAAQm4B,SAAWn4B,EAAQo4B,KAAOC,IAO7C,IAJAH,EAAK,GAAe,GAAVA,EAAK,GAAY,GAC3BA,EAAK,GAAe,GAAVA,EAAK,GAAY,IAGvBpB,EACF,IAAK,GAAIC,GAAK,EAAQ,GAALA,EAASA,IACxBD,EAAIl0B,EAAIm0B,GAAMmB,EAAKnB,EAIvB,OAAOD,IAAOI,EAAQgB,GArMxB,GAAIG,GAEAC,EAA8B,mBAAXpxB,QAAyBA,OAA2B,mBAAX6H,GAAyBA,EAAS,IAElG,IAAIupB,GAAaA,EAAUC,QAAUA,OAAOC,gBAAiB,CAG3D,GAAIC,GAAS,GAAIC,YAAW,GAC5BL,GAAO,WAEL,MADAE,QAAOC,gBAAgBC,GAChBA,GAIX,IAAKJ,EAAM,CAKT,GAAIM,GAAQ,GAAI11B,OAAM,GACtBo1B,GAAO,WACL,IAAK,GAAW9vB,GAAP3F,EAAI,EAAU,GAAJA,EAAQA,IACN,KAAV,EAAJA,KAAiB2F,EAAoB,WAAhBnH,KAAK+2B,UAC/BQ,EAAM/1B,GAAK2F,MAAY,EAAJ3F,IAAa,GAAK,GAGvC,OAAO+1B,IAkBX,IAAK,GAFDvB,MACAH,KACKr0B,EAAI,EAAO,IAAJA,EAASA,IACvBw0B,EAAWx0B,IAAMA,EAAI,KAAOwG,SAAS,IAAIL,OAAO,GAChDkuB,EAAWG,EAAWx0B,IAAMA,CAqC9B,IAAIg2B,GAAaP,IAGbL,GAA2B,EAAhBY,EAAW,GAAWA,EAAW,GAAIA,EAAW,GAAIA,EAAW,GAAIA,EAAW,GAAIA,EAAW,IAGxGrB,EAAmD,OAAtCqB,EAAW,IAAM,EAAIA,EAAW,IAG7ChB,EAAa,EACbF,EAAa,EA4Gbr3B,EAAO0B,CACX1B,GAAKg3B,GAAKA,EACVh3B,EAAK0B,GAAKA,EACV1B,EAAKwB,MAAQA,EACbxB,EAAK62B,QAAUA,EAEfl7B,EAAOD,QAAUsE,IACY3D,KAAKX,EAAU,WAAa,MAAOI,WAI5D,SAASH,EAAQD,GAWrBA,EAAQ88B,gBAAkB,SAAUC,GAElC,IAAK,GAAIC,KAAeD,GAClBA,EAAc32B,eAAe42B,KAC/BD,EAAcC,GAAaC,UAAYF,EAAcC,GAAaE,KAClEH,EAAcC,GAAaE,UAYjCl9B,EAAQm9B,gBAAkB,SAAUJ,GAElC,IAAK,GAAIC,KAAeD,GACtB,GAAIA,EAAc32B,eAAe42B,IAC3BD,EAAcC,GAAaC,UAAW,CACxC,IAAK,GAAIp2B,GAAI,EAAGA,EAAIk2B,EAAcC,GAAaC,UAAUv2B,OAAQG,IAC/Dk2B,EAAcC,GAAaC,UAAUp2B,GAAG4E,WAAW3G,YAAYi4B,EAAcC,GAAaC,UAAUp2B,GAEtGk2B,GAAcC,GAAaC,eAUnCj9B,EAAQo9B,cAAgB,SAAUL,GAChC/8B,EAAQ88B,gBAAgBC,GACxB/8B,EAAQm9B,gBAAgBJ,GACxB/8B,EAAQ88B,gBAAgBC,IAa1B/8B,EAAQq9B,cAAgB,SAAUL,EAAaD,EAAeO,GAC5D,GAAI9yB,EAoBJ,OAlBIuyB,GAAc32B,eAAe42B,GAG3BD,EAAcC,GAAaC,UAAUv2B,OAAS,GAChD8D,EAAUuyB,EAAcC,GAAaC,UAAU,GAC/CF,EAAcC,GAAaC,UAAUM,UAGrC/yB,EAAUgzB,SAASC,gBAAgB,6BAA8BT,GACjEM,EAAaI,YAAYlzB,KAI3BA,EAAUgzB,SAASC,gBAAgB,6BAA8BT,GACjED,EAAcC,IAAiBE,QAAUD,cACzCK,EAAaI,YAAYlzB,IAE3BuyB,EAAcC,GAAaE,KAAKt1B,KAAK4C,GAC9BA,GAaTxK,EAAQ29B,cAAgB,SAAUX,EAAaD,EAAea,EAAcC,GAC1E,GAAIrzB,EA4BJ,OA1BIuyB,GAAc32B,eAAe42B,GAG3BD,EAAcC,GAAaC,UAAUv2B,OAAS,GAChD8D,EAAUuyB,EAAcC,GAAaC,UAAU,GAC/CF,EAAcC,GAAaC,UAAUM,UAGrC/yB,EAAUgzB,SAASM,cAAcd,GACZr2B,SAAjBk3B,EACFD,EAAaC,aAAarzB,EAASqzB,GAEnCD,EAAaF,YAAYlzB,KAK7BA,EAAUgzB,SAASM,cAAcd,GACjCD,EAAcC,IAAiBE,QAAUD,cACpBt2B,SAAjBk3B,EACFD,EAAaC,aAAarzB,EAASqzB,GAEnCD,EAAaF,YAAYlzB,IAG7BuyB,EAAcC,GAAaE,KAAKt1B,KAAK4C,GAC9BA,GAgBTxK,EAAQ+9B,UAAY,SAAUC,EAAG3c,EAAG4c,EAAelB,EAAeO,EAAcY,GAC9E,GAAIC,EAoBJ,IAnB2B,UAAvBF,EAAc/uB,OAChBivB,EAAQn+B,EAAQq9B,cAAc,SAAUN,EAAeO,GACvDa,EAAMC,eAAe,KAAM,KAAMJ,GACjCG,EAAMC,eAAe,KAAM,KAAM/c,GACjC8c,EAAMC,eAAe,KAAM,IAAK,GAAMH,EAAcI,QAEpDF,EAAQn+B,EAAQq9B,cAAc,OAAQN,EAAeO,GACrDa,EAAMC,eAAe,KAAM,IAAKJ,EAAI,GAAMC,EAAcI,MACxDF,EAAMC,eAAe,KAAM,IAAK/c,EAAI,GAAM4c,EAAcI,MACxDF,EAAMC,eAAe,KAAM,QAASH,EAAcI,MAClDF,EAAMC,eAAe,KAAM,SAAUH,EAAcI,OAGxB13B,SAAzBs3B,EAAchvB,QAChBkvB,EAAMC,eAAe,KAAM,QAASH,EAAchvB,QAEpDkvB,EAAMC,eAAe,KAAM,QAASH,EAAc90B,UAAY,cAG1D+0B,EAAU,CACZ,GAAII,GAAQt+B,EAAQq9B,cAAc,OAAQN,EAAeO,EACrDY,GAASK,UACXP,GAAQE,EAASK,SAGfL,EAASM,UACXnd,GAAQ6c,EAASM,SAEfN,EAASO,UACXH,EAAMI,YAAcR,EAASO,SAG3BP,EAAS/0B,WACXm1B,EAAMF,eAAe,KAAM,QAASF,EAAS/0B,UAAY,cAE3Dm1B,EAAMF,eAAe,KAAM,IAAKJ,GAChCM,EAAMF,eAAe,KAAM,IAAK/c,GAGlC,MAAO8c,IAUTn+B,EAAQ2+B,QAAU,SAAUX,EAAG3c,EAAGud,EAAOC,EAAQ11B,EAAW4zB,EAAeO,EAAcpuB,GACvF,GAAc,GAAV2vB,EAAa,CACF,EAATA,IACFA,GAAU,GACVxd,GAAKwd,EAEP,IAAIC,GAAO9+B,EAAQq9B,cAAc,OAAQN,EAAeO,EACxDwB,GAAKV,eAAe,KAAM,IAAKJ,EAAI,GAAMY,GACzCE,EAAKV,eAAe,KAAM,IAAK/c,GAC/Byd,EAAKV,eAAe,KAAM,QAASQ,GACnCE,EAAKV,eAAe,KAAM,SAAUS,GACpCC,EAAKV,eAAe,KAAM,QAASj1B,GAC/B+F,GACF4vB,EAAKV,eAAe,KAAM,QAASlvB,MAOrC,SAASjP,EAAQD,EAASM,GAkD9B,QAASW,GAAQmX,EAAMnU,GAerB,GAbImU,IAASlR,MAAMC,QAAQiR,KACzBnU,EAAUmU,EACVA,EAAO,MAGThY,KAAK2+B,SAAW96B,MAChB7D,KAAKqnB,SACLrnB,KAAKsG,OAAS,EACdtG,KAAK4+B,SAAW5+B,KAAK2+B,SAASE,SAAW,KACzC7+B,KAAK8+B,SAID9+B,KAAK2+B,SAAS/2B,KAEhB,IAAK,GADDqI,GAAS7I,OAAO6H,KAAKjP,KAAK2+B,SAAS/2B,MAC9BnB,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IAAK,CACjD,GAAIwK,GAAQhB,EAAOxJ,GACf1B,EAAQ/E,KAAK2+B,SAAS/2B,KAAKqJ,EAClB,SAATlM,GAA4B,WAATA,GAA+B,WAATA,EAC3C/E,KAAK8+B,MAAM7tB,GAAS,OAEpBjR,KAAK8+B,MAAM7tB,GAASlM,EAM1B,GAAI/E,KAAK2+B,SAASh3B,QAChB,KAAM,IAAIX,OAAM,sDAGlBhH,MAAK++B,gBAGD/mB,GACFhY,KAAKimB,IAAIjO,GAGXhY,KAAKg/B,WAAWn7B,GAtFlB,GAAIlD,GAAOT,EAAoB,GAC3Ba,EAAQb,EAAoB,EAiGhCW,GAAQoS,UAAU+rB,WAAa,SAAUn7B,GACnCA,GAA6B0C,SAAlB1C,EAAQo7B,QACjBp7B,EAAQo7B,SAAU,EAEhBj/B,KAAKk/B,SACPl/B,KAAKk/B,OAAOC,gBACLn/B,MAAKk/B,SAITl/B,KAAKk/B,SACRl/B,KAAKk/B,OAASn+B,EAAM4F,OAAO3G,MACzBmM,SAAU,MAAO,SAAU,aAIF,gBAAlBtI,GAAQo7B,OACjBj/B,KAAKk/B,OAAOF,WAAWn7B,EAAQo7B,UAevCp+B,EAAQoS,UAAUmsB,GAAK,SAAUt0B,EAAOvB,GACtC,GAAI81B,GAAcr/B,KAAK++B,aAAaj0B,EAC/Bu0B,KACHA,KACAr/B,KAAK++B,aAAaj0B,GAASu0B,GAG7BA,EAAY73B,MACV+B,SAAUA,KAKd1I,EAAQoS,UAAUqsB,UAAY,WAC5B,KAAM,IAAIt4B,OAAM,6DAQlBnG,EAAQoS,UAAUssB,IAAM,SAAUz0B,EAAOvB,GACvC,GAAI81B,GAAcr/B,KAAK++B,aAAaj0B,EAChCu0B,KACFr/B,KAAK++B,aAAaj0B,GAASu0B,EAAYG,OAAO,SAAUl1B,GACtD,MAAOA,GAASf,UAAYA,MAMlC1I,EAAQoS,UAAUwsB,YAAc,WAC9B,KAAM,IAAIz4B,OAAM,gEAUlBnG,EAAQoS,UAAUysB,SAAW,SAAU50B,EAAO60B,EAAQC,GACpD,GAAa,KAAT90B,EACF,KAAM,IAAI9D,OAAM,yBAGlB,IAAIq4B,KACAv0B,KAAS9K,MAAK++B,eAChBM,EAAcA,EAAYQ,OAAO7/B,KAAK++B,aAAaj0B,KAEjD,KAAO9K,MAAK++B,eACdM,EAAcA,EAAYQ,OAAO7/B,KAAK++B,aAAa,MAGrD,KAAK,GAAIt4B,GAAI,EAAGiB,EAAM23B,EAAY/4B,OAAYoB,EAAJjB,EAASA,IAAK,CACtD,GAAIq5B,GAAaT,EAAY54B,EACzBq5B,GAAWv2B,UACbu2B,EAAWv2B,SAASuB,EAAO60B,EAAQC,GAAY,QAYrD/+B,EAAQoS,UAAUgT,IAAM,SAAUjO,EAAM4nB,GACtC,GACIv/B,GADA0/B,KAEAC,EAAKhgC,IAET,IAAI8G,MAAMC,QAAQiR,GAEhB,IAAK,GAAIvR,GAAI,EAAGiB,EAAMsQ,EAAK1R,OAAYoB,EAAJjB,EAASA,IAC1CpG,EAAK2/B,EAAGC,SAASjoB,EAAKvR,IACtBs5B,EAASv4B,KAAKnH,OAEX,CAAA,KAAI2X,YAAgB5Q,SAKzB,KAAM,IAAIJ,OAAM,mBAHhB3G,GAAK2/B,EAAGC,SAASjoB,GACjB+nB,EAASv4B,KAAKnH,GAShB,MAJI0/B,GAASz5B,QACXtG,KAAK0/B,SAAS,OAASz9B,MAAO89B,GAAYH,GAGrCG,GASTl/B,EAAQoS,UAAUitB,OAAS,SAAUloB,EAAM4nB,GACzC,GAAIG,MACAI,KACAC,KACAC,KACAL,EAAKhgC,KACL6+B,EAAUmB,EAAGpB,SAEb0B,EAAc,SAAqB9uB,GACrC,GAAInR,GAAKmR,EAAKqtB,EACd,IAAImB,EAAG3Y,MAAMhnB,GAAK,CAChB,GAAIkgC,GAAU5/B,EAAKgG,UAAWq5B,EAAG3Y,MAAMhnB,GAEvCA,GAAK2/B,EAAGQ,YAAYhvB,GACpB2uB,EAAW34B,KAAKnH,GAChBggC,EAAY74B,KAAKgK,GACjB4uB,EAAQ54B,KAAK+4B,OAGblgC,GAAK2/B,EAAGC,SAASzuB,GACjBuuB,EAASv4B,KAAKnH,GAIlB,IAAIyG,MAAMC,QAAQiR,GAEhB,IAAK,GAAIvR,GAAI,EAAGiB,EAAMsQ,EAAK1R,OAAYoB,EAAJjB,EAASA,IACtCuR,EAAKvR,YAAcW,QACrBk5B,EAAYtoB,EAAKvR,IAEjBkZ,QAAQH,KAAK,wDAA0D/Y,OAGtE,CAAA,KAAIuR,YAAgB5Q,SAIzB,KAAM,IAAIJ,OAAM,mBAFhBs5B,GAAYtoB,GAQd,GAHI+nB,EAASz5B,QACXtG,KAAK0/B,SAAS,OAASz9B,MAAO89B,GAAYH,GAExCO,EAAW75B,OAAQ,CACrB,GAAIO,IAAU5E,MAAOk+B,EAAYC,QAASA,EAASpoB,KAAMqoB,EAQzDrgC,MAAK0/B,SAAS,SAAU74B,EAAO+4B,GAGjC,MAAOG,GAASF,OAAOM,IA8BzBt/B,EAAQoS,UAAU+jB,IAAM,SAAUzQ,GAChC,GAGIlmB,GAAIogC,EAAK58B,EAHTm8B,EAAKhgC,KAIL0gC,EAAY//B,EAAKsH,QAAQ5B,UAAU,GACtB,WAAbq6B,GAAsC,UAAbA,GAE3BrgC,EAAKgG,UAAU,GACfxC,EAAUwC,UAAU,IACE,SAAbq6B,GAETD,EAAMp6B,UAAU,GAChBxC,EAAUwC,UAAU,IAGpBxC,EAAUwC,UAAU,EAItB,IAAIs6B,EACJ,IAAI98B,GAAWA,EAAQ88B,WAAY,CACjC,GAAIC,IAAiB,QAAS,SAC9BD,GAA0D,IAA7CC,EAAcr5B,QAAQ1D,EAAQ88B,YAAoB,QAAU98B,EAAQ88B,eAEjFA,GAAa,OAIf,IAGInvB,GACAqvB,EACAC,EACAr6B,EACAiB,EAPAE,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChD43B,EAAS37B,GAAWA,EAAQ27B,OAC5Bv9B,IAQJ,IAAUsE,QAANlG,EAEFmR,EAAOwuB,EAAGe,SAAS1gC,EAAIuH,GACnB4J,GAAQguB,IAAWA,EAAOhuB,KAC5BA,EAAO,UAEJ,IAAWjL,QAAPk6B,EAET,IAAKh6B,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrC+K,EAAOwuB,EAAGe,SAASN,EAAIh6B,GAAImB,KACtB43B,GAAUA,EAAOhuB,KACpBvP,EAAMuF,KAAKgK,OAMf,KADAqvB,EAAUz5B,OAAO6H,KAAKjP,KAAKqnB,OACtB5gB,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCq6B,EAASD,EAAQp6B,GACjB+K,EAAOwuB,EAAGe,SAASD,EAAQl5B,KACtB43B,GAAUA,EAAOhuB,KACpBvP,EAAMuF,KAAKgK,EAWjB,IALI3N,GAAWA,EAAQm9B,OAAez6B,QAANlG,GAC9BL,KAAKihC,MAAMh/B,EAAO4B,EAAQm9B,OAIxBn9B,GAAWA,EAAQoM,OAAQ,CAC7B,GAAIA,GAASpM,EAAQoM,MACrB,IAAU1J,QAANlG,EACFmR,EAAOxR,KAAKkhC,cAAc1vB,EAAMvB,OAEhC,KAAKxJ,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvCxE,EAAMwE,GAAKzG,KAAKkhC,cAAcj/B,EAAMwE,GAAIwJ,GAM9C,GAAkB,UAAd0wB,EAAwB,CAC1B,GACIQ,GADA70B,IAEJ,KAAK7F,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvC06B,EAAYl/B,EAAMwE,GAClB6F,EAAO60B,EAAU9gC,IAAM8gC,CAEzB,OAAO70B,GAEP,MAAU/F,SAANlG,EAEKmR,EAGAvP,GAabpB,EAAQoS,UAAUmuB,OAAS,SAAUv9B,GACnC,GAKI4C,GACAiB,EACArH,EACAmR,EACAvP,EATA+V,EAAOhY,KAAKqnB,MACZmY,EAAS37B,GAAWA,EAAQ27B,OAC5BwB,EAAQn9B,GAAWA,EAAQm9B,MAC3Bp5B,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChDi5B,EAAUz5B,OAAO6H,KAAK+I,GAMtByoB,IAEJ,IAAIjB,EAEF,GAAIwB,EAAO,CAGT,IADA/+B,KACKwE,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,GACrB43B,EAAOhuB,IACTvP,EAAMuF,KAAKgK,EAMf,KAFAxR,KAAKihC,MAAMh/B,EAAO++B,GAEbv6B,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvCg6B,EAAIj5B,KAAKvF,EAAMwE,GAAGzG,KAAK4+B,eAIzB,KAAKn4B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,GACrB43B,EAAOhuB,IACTivB,EAAIj5B,KAAKgK,EAAKxR,KAAK4+B,eAMzB,IAAIoC,EAAO,CAGT,IADA/+B,KACKwE,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACbxE,EAAMuF,KAAKwQ,EAAK3X,GAKlB,KAFAL,KAAKihC,MAAMh/B,EAAO++B,GAEbv6B,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvCg6B,EAAIj5B,KAAKvF,EAAMwE,GAAGzG,KAAK4+B,eAIzB,KAAKn4B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZogC,EAAIj5B,KAAKgK,EAAKxR,KAAK4+B,UAKzB,OAAO6B,IAOT5/B,EAAQoS,UAAUouB,WAAa,WAC7B,MAAOrhC,OAaTa,EAAQoS,UAAU3J,QAAU,SAAUC,EAAU1F,GAC9C,GAII4C,GACAiB,EACA8J,EACAnR,EAPAm/B,EAAS37B,GAAWA,EAAQ27B,OAC5B53B,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChDoQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,EAM1B,IAAInU,GAAWA,EAAQm9B,MAAO,CAE5B,GAAI/+B,GAAQjC,KAAKg3B,IAAInzB,EAErB,KAAK4C,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvC+K,EAAOvP,EAAMwE,GACbpG,EAAKmR,EAAKxR,KAAK4+B,UACfr1B,EAASiI,EAAMnR,OAIjB,KAAKoG,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,KACpB43B,GAAUA,EAAOhuB,KACpBjI,EAASiI,EAAMnR,IAiBvBQ,EAAQoS,UAAU5F,IAAM,SAAU9D,EAAU1F,GAC1C,GAKI4C,GACAiB,EACArH,EACAmR,EARAguB,EAAS37B,GAAWA,EAAQ27B,OAC5B53B,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChD05B,KACAtpB,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,EAO1B,KAAKvR,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,KACpB43B,GAAUA,EAAOhuB,KACpB8vB,EAAY95B,KAAK+B,EAASiI,EAAMnR,GASpC,OAJIwD,IAAWA,EAAQm9B,OACrBhhC,KAAKihC,MAAMK,EAAaz9B,EAAQm9B,OAG3BM,GAUTzgC,EAAQoS,UAAUiuB,cAAgB,SAAU1vB,EAAMvB,GAChD,IAAKuB,EAEH,MAAOA,EAGT,IAGI/K,GACAwK,EAJAswB,KACAC,EAAap6B,OAAO6H,KAAKuC,GACzB9J,EAAM85B,EAAWl7B,MAIrB,IAAIQ,MAAMC,QAAQkJ,GAChB,IAAKxJ,EAAI,EAAOiB,EAAJjB,EAASA,IACnBwK,EAAQuwB,EAAW/6B,GACU,IAAzBwJ,EAAO1I,QAAQ0J,KACjBswB,EAAatwB,GAASO,EAAKP,QAI/B,KAAKxK,EAAI,EAAOiB,EAAJjB,EAASA,IACnBwK,EAAQuwB,EAAW/6B,GACfwJ,EAAOjK,eAAeiL,KACxBswB,EAAatxB,EAAOgB,IAAUO,EAAKP,GAKzC,OAAOswB,IAST1gC,EAAQoS,UAAUguB,MAAQ,SAAUh/B,EAAO++B,GACzC,GAAIrgC,EAAKuE,SAAS87B,GAAQ,CAExB,GAAIxpB,GAAOwpB,CACX/+B,GAAMyc,KAAK,SAAUxY,EAAGC,GACtB,GAAIs7B,GAAKv7B,EAAEsR,GACPkqB,EAAKv7B,EAAEqR,EACX,OAAOiqB,GAAKC,EAAK,EAASA,EAALD,EAAU,GAAK,QAEjC,CAAA,GAAqB,kBAAVT,GAOd,KAAM,IAAI95B,WAAU,uCALtBjF,GAAMyc,KAAKsiB,KAgBfngC,EAAQoS,UAAU0uB,OAAS,SAAUthC,EAAIu/B,GACvC,GACIn5B,GACAiB,EACAk6B,EAHAC,IAKJ,IAAI/6B,MAAMC,QAAQ1G,GAChB,IAAKoG,EAAI,EAAGiB,EAAMrH,EAAGiG,OAAYoB,EAAJjB,EAASA,IACpCm7B,EAAY5hC,KAAK8hC,QAAQzhC,EAAGoG;AACX,MAAbm7B,GACFC,EAAWr6B,KAAKo6B,OAIpBA,GAAY5hC,KAAK8hC,QAAQzhC,GACR,MAAbuhC,GACFC,EAAWr6B,KAAKo6B,EAQpB,OAJIC,GAAWv7B,QACbtG,KAAK0/B,SAAS,UAAYz9B,MAAO4/B,GAAcjC,GAG1CiC,GASThhC,EAAQoS,UAAU6uB,QAAU,SAAUzhC,GACpC,GAAIM,EAAKwD,SAAS9D,IAAOM,EAAKuE,SAAS7E,IACrC,GAAIL,KAAKqnB,MAAMhnB,GAGb,aAFOL,MAAKqnB,MAAMhnB,GAClBL,KAAKsG,SACEjG,MAEJ,IAAIA,YAAc+G,QAAQ,CAC/B,GAAI05B,GAASzgC,EAAGL,KAAK4+B,SACrB,IAAer4B,SAAXu6B,GAAwB9gC,KAAKqnB,MAAMyZ,GAGrC,aAFO9gC,MAAKqnB,MAAMyZ,GAClB9gC,KAAKsG,SACEw6B,EAGX,MAAO,OAQTjgC,EAAQoS,UAAU8uB,MAAQ,SAAUnC,GAClC,GAAIa,GAAMr5B,OAAO6H,KAAKjP,KAAKqnB,MAO3B,OALArnB,MAAKqnB,SACLrnB,KAAKsG,OAAS,EAEdtG,KAAK0/B,SAAS,UAAYz9B,MAAOw+B,GAAOb,GAEjCa,GAQT5/B,EAAQoS,UAAUpO,IAAM,SAAUoM,GAChC,GAIIxK,GACAiB,EALAsQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,GACtBnT,EAAM,KACNm9B,EAAW,IAIf,KAAKv7B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IAAK,CAC9C,GAAIpG,GAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZ4hC,EAAYzwB,EAAKP,EACJ,OAAbgxB,KAAuBp9B,GAAOo9B,EAAYD,KAC5Cn9B,EAAM2M,EACNwwB,EAAWC,GAIf,MAAOp9B,IAQThE,EAAQoS,UAAUrO,IAAM,SAAUqM,GAChC,GAIIxK,GACAiB,EALAsQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,GACtBpT,EAAM,KACNs9B,EAAW,IAIf,KAAKz7B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IAAK,CAC9C,GAAIpG,GAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZ4hC,EAAYzwB,EAAKP,EACJ,OAAbgxB,KAAuBr9B,GAAmBs9B,EAAZD,KAChCr9B,EAAM4M,EACN0wB,EAAWD,GAIf,MAAOr9B,IAUT/D,EAAQoS,UAAUkvB,SAAW,SAAUlxB,GACrC,GAKIxK,GAAGgK,EAAG/I,EALNsQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,GACtBD,KACAqqB,EAAYpiC,KAAK2+B,SAAS/2B,MAAQ5H,KAAK2+B,SAAS/2B,KAAKqJ,IAAU,KAC/DghB,EAAQ,CAGZ,KAAKxrB,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IAAK,CAC9C,GAAIpG,GAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZ0E,EAAQyM,EAAKP,GACboxB,GAAS,CACb,KAAK5xB,EAAI,EAAOwhB,EAAJxhB,EAAWA,IACrB,GAAIsH,EAAOtH,IAAM1L,EAAO,CACtBs9B,GAAS,CACT,OAGCA,GAAoB97B,SAAVxB,IACbgT,EAAOka,GAASltB,EAChBktB,KAIJ,GAAImQ,EACF,IAAK37B,EAAI,EAAGiB,EAAMqQ,EAAOzR,OAAYoB,EAAJjB,EAASA,IACxCsR,EAAOtR,GAAK9F,EAAKgH,QAAQoQ,EAAOtR,GAAI27B,EAIxC,OAAOrqB,IASTlX,EAAQoS,UAAUgtB,SAAW,SAAUzuB,GACrC,GAAInR,GAAKmR,EAAKxR,KAAK4+B,SAEnB,IAAUr4B,QAANlG,GAEF,GAAIL,KAAKqnB,MAAMhnB,GAEb,KAAM,IAAI2G,OAAM,iCAAmC3G,EAAK,uBAI1DA,GAAKM,EAAKgF,aACV6L,EAAKxR,KAAK4+B,UAAYv+B,CAGxB,IAEIoG,GACAiB,EAHA8G,KACAyB,EAAS7I,OAAO6H,KAAKuC,EAGzB,KAAK/K,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IAAK,CAC7C,GAAIwK,GAAQhB,EAAOxJ,GACf27B,EAAYpiC,KAAK8+B,MAAM7tB,EAC3BzC,GAAEyC,GAAStQ,EAAKgH,QAAQ6J,EAAKP,GAAQmxB,GAKvC,MAHApiC,MAAKqnB,MAAMhnB,GAAMmO,EACjBxO,KAAKsG,SAEEjG,GAUTQ,EAAQoS,UAAU8tB,SAAW,SAAU1gC,EAAIiiC,GACzC,GAAIrxB,GAAOlM,EAAO0B,EAAGiB,EAGjB66B,EAAMviC,KAAKqnB,MAAMhnB,EACrB,KAAKkiC,EACH,MAAO,KAIT,IAAIC,MACAvyB,EAAS7I,OAAO6H,KAAKszB,EAEzB,IAAID,EACF,IAAK77B,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IACxCwK,EAAQhB,EAAOxJ,GACf1B,EAAQw9B,EAAItxB,GACZuxB,EAAUvxB,GAAStQ,EAAKgH,QAAQ5C,EAAOu9B,EAAMrxB,QAI/C,KAAKxK,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IACxCwK,EAAQhB,EAAOxJ,GACf1B,EAAQw9B,EAAItxB,GACZuxB,EAAUvxB,GAASlM,CAGvB,OAAOy9B,IAWT3hC,EAAQoS,UAAUutB,YAAc,SAAUhvB,GACxC,GAAInR,GAAKmR,EAAKxR,KAAK4+B,SACnB,IAAUr4B,QAANlG,EACF,KAAM,IAAI2G,OAAM,6CAA+Cy7B,KAAKC,UAAUlxB,GAAQ,IAExF,IAAIhD,GAAIxO,KAAKqnB,MAAMhnB,EACnB,KAAKmO,EAEH,KAAM,IAAIxH,OAAM,uCAAyC3G,EAAK,SAKhE,KAAK,GADD4P,GAAS7I,OAAO6H,KAAKuC,GAChB/K,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IAAK,CACjD,GAAIwK,GAAQhB,EAAOxJ,GACf27B,EAAYpiC,KAAK8+B,MAAM7tB,EAC3BzC,GAAEyC,GAAStQ,EAAKgH,QAAQ6J,EAAKP,GAAQmxB,GAGvC,MAAO/hC,IAGTR,EAAOD,QAAUiB,GAIb,SAAShB,EAAQD,GAiBrB,QAASmB,GAAM8C,GAEb7D,KAAK2iC,MAAQ,KACb3iC,KAAK6E,IAAM+9B,EAAAA,EAGX5iC,KAAKk/B,UACLl/B,KAAK6iC,SAAW,KAChB7iC,KAAK8iC,UAAY,KAEjB9iC,KAAKg/B,WAAWn7B,GAgBlB9C,EAAMkS,UAAU+rB,WAAa,SAAUn7B,GACjCA,GAAoC,mBAAlBA,GAAQ8+B,QAC5B3iC,KAAK2iC,MAAQ9+B,EAAQ8+B,OAEnB9+B,GAAkC,mBAAhBA,GAAQgB,MAC5B7E,KAAK6E,IAAMhB,EAAQgB,KAGrB7E,KAAK+iC,kBAsBPhiC,EAAM4F,OAAS,SAAUvC,EAAQP,GAC/B,GAAIo7B,GAAQ,GAAIl+B,GAAM8C,EAEtB,IAAqB0C,SAAjBnC,EAAO4+B,MACT,KAAM,IAAIh8B,OAAM,6CAElB5C,GAAO4+B,MAAQ,WACb/D,EAAM+D,QAGR,IAAIC,KACFzrB,KAAM,QACN0rB,SAAU38B,QAGZ,IAAI1C,GAAWA,EAAQsI,QACrB,IAAK,GAAI1F,GAAI,EAAGA,EAAI5C,EAAQsI,QAAQ7F,OAAQG,IAAK,CAC/C,GAAI+Q,GAAO3T,EAAQsI,QAAQ1F,EAC3Bw8B,GAAQz7B,MACNgQ,KAAMA,EACN0rB,SAAU9+B,EAAOoT,KAEnBynB,EAAM9yB,QAAQ/H,EAAQoT,GAS1B,MALAynB,GAAM6D,WACJ1+B,OAAQA,EACR6+B,QAASA,GAGJhE,GAOTl+B,EAAMkS,UAAUksB,QAAU,WAGxB,GAFAn/B,KAAKgjC,QAEDhjC,KAAK8iC,UAAW,CAGlB,IAAK,GAFD1+B,GAASpE,KAAK8iC,UAAU1+B,OACxB6+B,EAAUjjC,KAAK8iC,UAAUG,QACpBx8B,EAAI,EAAGA,EAAIw8B,EAAQ38B,OAAQG,IAAK,CACvC,GAAI08B,GAASF,EAAQx8B,EACjB08B,GAAOD,SACT9+B,EAAO++B,EAAO3rB,MAAQ2rB,EAAOD,eAEtB9+B,GAAO++B,EAAO3rB,MAGzBxX,KAAK8iC,UAAY,OASrB/hC,EAAMkS,UAAU9G,QAAU,SAAU/H,EAAQ++B,GAC1C,GAAInD,GAAKhgC,KACLkjC,EAAW9+B,EAAO++B,EACtB,KAAKD,EACH,KAAM,IAAIl8B,OAAM,UAAYm8B,EAAS,aAGvC/+B,GAAO++B,GAAU,WAGf,IAAK,GADD5c,MACK9f,EAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IACpC8f,EAAK9f,GAAKJ,UAAUI,EAItBu5B,GAAGf,OACD1Y,KAAMA,EACN1c,GAAIq5B,EACJE,QAASpjC,SASfe,EAAMkS,UAAUgsB,MAAQ,SAAUoE,GACX,kBAAVA,GACTrjC,KAAKk/B,OAAO13B,MAAOqC,GAAIw5B,IAEvBrjC,KAAKk/B,OAAO13B,KAAK67B,GAGnBrjC,KAAK+iC,kBAOPhiC,EAAMkS,UAAU8vB,eAAiB,WAQ/B,GANI/iC,KAAKk/B,OAAO54B,OAAStG,KAAK6E,KAC5B7E,KAAKgjC,QAIPM,aAAatjC,KAAK6iC,UACd7iC,KAAKi/B,MAAM34B,OAAS,GAA2B,gBAAftG,MAAK2iC,MAAoB,CAC3D,GAAI3C,GAAKhgC,IACTA,MAAK6iC,SAAW34B,WAAW,WACzB81B,EAAGgD,SACFhjC,KAAK2iC,SAOZ5hC,EAAMkS,UAAU+vB,MAAQ,WACtB,KAAOhjC,KAAKk/B,OAAO54B,OAAS,GAAG,CAC7B,GAAI+8B,GAAQrjC,KAAKk/B,OAAO/B,OACxBkG,GAAMx5B,GAAGkJ,MAAMswB,EAAMD,SAAWC,EAAMx5B,GAAIw5B,EAAM9c,YAIpD1mB,EAAOD,QAAUmB,GAIb,SAASlB,EAAQD,EAASM,GAiB9B,QAASY,GAASkX,EAAMnU,GACtB7D,KAAKqnB,MAAQ,KACbrnB,KAAKujC,QACLvjC,KAAKsG,OAAS,EACdtG,KAAK2+B,SAAW96B,MAChB7D,KAAK4+B,SAAW,KAChB5+B,KAAK++B,eAEL,IAAIiB,GAAKhgC,IACTA,MAAKsK,SAAW,WACd01B,EAAGwD,SAASzwB,MAAMitB,EAAI35B,YAGxBrG,KAAKyjC,QAAQzrB,GA1Bf,GAAIrX,GAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,EAmClCY,GAASmS,UAAUwwB,QAAU,SAAUzrB,GACrC,GAAIyoB,GAAKpgC,EAAIoG,EAAGiB,CAiBhB,IAfI1H,KAAKqnB,QAEHrnB,KAAKqnB,MAAMkY,KACbv/B,KAAKqnB,MAAMkY,IAAI,IAAKv/B,KAAKsK,UAI3Bm2B,EAAMr5B,OAAO6H,KAAKjP,KAAKujC,MACvBvjC,KAAKujC,QACLvjC,KAAKsG,OAAS,EACdtG,KAAK0/B,SAAS,UAAYz9B,MAAOw+B,KAGnCzgC,KAAKqnB,MAAQrP,EAEThY,KAAKqnB,MAAO,CAMd,IAJArnB,KAAK4+B,SAAW5+B,KAAK2+B,SAASE,SAAW7+B,KAAKqnB,OAASrnB,KAAKqnB,MAAMxjB,SAAW7D,KAAKqnB,MAAMxjB,QAAQg7B,SAAW,KAG3G4B,EAAMzgC,KAAKqnB,MAAM+Z,QAAS5B,OAAQx/B,KAAK2+B,UAAY3+B,KAAK2+B,SAASa,SAC5D/4B,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACTzG,KAAKujC,KAAKljC,IAAM,CAElBL,MAAKsG,OAASm6B,EAAIn6B,OAClBtG,KAAK0/B,SAAS,OAASz9B,MAAOw+B,IAG1BzgC,KAAKqnB,MAAM+X,IACbp/B,KAAKqnB,MAAM+X,GAAG,IAAKp/B,KAAKsK,YAS9BxJ,EAASmS,UAAUywB,QAAU,WAC3B,GAAIrjC,GAAIoG,EAAGiB,EACP+4B,EAAMzgC,KAAKqnB,MAAM+Z,QAAS5B,OAAQx/B,KAAK2+B,UAAY3+B,KAAK2+B,SAASa,SACjEmE,EAASv8B,OAAO6H,KAAKjP,KAAKujC,MAC1BK,KACAC,KACAC,IAGJ,KAAKr9B,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACTm9B,EAAOvjC,IAAM,EACRL,KAAKujC,KAAKljC,KACbwjC,EAAMr8B,KAAKnH,GACXL,KAAKujC,KAAKljC,IAAM,EAKpB,KAAKoG,EAAI,EAAGiB,EAAMi8B,EAAOr9B,OAAYoB,EAAJjB,EAASA,IACxCpG,EAAKsjC,EAAOl9B,GACPm9B,EAAOvjC,KACVyjC,EAAQt8B,KAAKnH,SACNL,MAAKujC,KAAKljC,GAIrBL,MAAKsG,QAAUu9B,EAAMv9B,OAASw9B,EAAQx9B,OAGlCu9B,EAAMv9B,QACRtG,KAAK0/B,SAAS,OAASz9B,MAAO4hC,IAE5BC,EAAQx9B,QACVtG,KAAK0/B,SAAS,UAAYz9B,MAAO6hC,KAsCrChjC,EAASmS,UAAU+jB,IAAM,SAAUzQ,GACjC,GAGIka,GAAK58B,EAASmU,EAHdgoB,EAAKhgC,KAIL0gC,EAAY//B,EAAKsH,QAAQ5B,UAAU,GACtB,WAAbq6B,GAAsC,UAAbA,GAAsC,SAAbA,GAEpDD,EAAMp6B,UAAU,GAChBxC,EAAUwC,UAAU,GACpB2R,EAAO3R,UAAU,KAGjBxC,EAAUwC,UAAU,GACpB2R,EAAO3R,UAAU,GAInB,IAAI09B,GAAcpjC,EAAKgG,UAAW3G,KAAK2+B,SAAU96B,EAG7C7D,MAAK2+B,SAASa,QAAU37B,GAAWA,EAAQ27B,SAC7CuE,EAAYvE,OAAS,SAAUhuB,GAC7B,MAAOwuB,GAAGrB,SAASa,OAAOhuB,IAAS3N,EAAQ27B,OAAOhuB,IAKtD,IAAIwyB,KAOJ,OANWz9B,SAAPk6B,GACFuD,EAAax8B,KAAKi5B,GAEpBuD,EAAax8B,KAAKu8B,GAClBC,EAAax8B,KAAKwQ,GAEXhY,KAAKqnB,OAASrnB,KAAKqnB,MAAM2P,IAAIjkB,MAAM/S,KAAKqnB,MAAO2c,IAWxDljC,EAASmS,UAAUmuB,OAAS,SAAUv9B,GACpC,GAAI48B,EAEJ,IAAIzgC,KAAKqnB,MAAO,CACd,GACImY,GADAyE,EAAgBjkC,KAAK2+B,SAASa,MAK9BA,GAFA37B,GAAWA,EAAQ27B,OACjByE,EACO,SAAUzyB,GACjB,MAAOyyB,GAAczyB,IAAS3N,EAAQ27B,OAAOhuB,IAGtC3N,EAAQ27B,OAGVyE,EAGXxD,EAAMzgC,KAAKqnB,MAAM+Z,QACf5B,OAAQA,EACRwB,MAAOn9B,GAAWA,EAAQm9B,YAG5BP,KAGF,OAAOA,IAcT3/B,EAASmS,UAAU5F,IAAM,SAAU9D,EAAU1F,GAC3C,GAAIy9B,KACJ,IAAIthC,KAAKqnB,MAAO,CACd,GACImY,GADAyE,EAAgBjkC,KAAK2+B,SAASa,MAK9BA,GAFA37B,GAAWA,EAAQ27B,OACjByE,EACO,SAAUzyB,GACjB,MAAOyyB,GAAczyB,IAAS3N,EAAQ27B,OAAOhuB,IAGtC3N,EAAQ27B,OAGVyE,EAGX3C,EAActhC,KAAKqnB,MAAMha,IAAI9D,GAC3Bi2B,OAAQA,EACRwB,MAAOn9B,GAAWA,EAAQm9B,YAG5BM,KAGF,OAAOA,IAQTxgC,EAASmS,UAAUouB,WAAa,WAE9B,IADA,GAAI6C,GAAUlkC,KACPkkC,YAAmBpjC,IACxBojC,EAAUA,EAAQ7c,KAEpB,OAAO6c,IAAW,MAYpBpjC,EAASmS,UAAUuwB,SAAW,SAAU14B,EAAO60B,EAAQC,GACrD,GAAIn5B,GAAGiB,EAAKrH,EAAImR,EACZivB,EAAMd,GAAUA,EAAO19B,MACvB+V,EAAOhY,KAAKqnB,MACZgZ,KACAwD,KACAM,KACAL,IAEJ,IAAIrD,GAAOzoB,EAAM,CACf,OAAQlN,GACN,IAAK,MAEH,IAAKrE,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACT+K,EAAOxR,KAAKg3B,IAAI32B,GACZmR,IACFxR,KAAKujC,KAAKljC,IAAM,EAChBwjC,EAAMr8B,KAAKnH,GAIf,MAEF,KAAK,SAGH,IAAKoG,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACT+K,EAAOxR,KAAKg3B,IAAI32B,GAEZmR,EACExR,KAAKujC,KAAKljC,IACZ8jC,EAAQ38B,KAAKnH,GACbggC,EAAY74B,KAAKm4B,EAAO3nB,KAAKvR,MAE7BzG,KAAKujC,KAAKljC,IAAM,EAChBwjC,EAAMr8B,KAAKnH,IAGTL,KAAKujC,KAAKljC,WACLL,MAAKujC,KAAKljC,GACjByjC,EAAQt8B,KAAKnH,GAOnB,MAEF,KAAK,SAEH,IAAKoG,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACLzG,KAAKujC,KAAKljC,WACLL,MAAKujC,KAAKljC,GACjByjC,EAAQt8B,KAAKnH,IAOrBL,KAAKsG,QAAUu9B,EAAMv9B,OAASw9B,EAAQx9B,OAElCu9B,EAAMv9B,QACRtG,KAAK0/B,SAAS,OAASz9B,MAAO4hC,GAASjE,GAErCuE,EAAQ79B,QACVtG,KAAK0/B,SAAS,UAAYz9B,MAAOkiC,EAASnsB,KAAMqoB,GAAeT,GAE7DkE,EAAQx9B,QACVtG,KAAK0/B,SAAS,UAAYz9B,MAAO6hC,GAAWlE,KAMlD9+B,EAASmS,UAAUmsB,GAAKv+B,EAAQoS,UAAUmsB,GAC1Ct+B,EAASmS,UAAUssB,IAAM1+B,EAAQoS,UAAUssB,IAC3Cz+B,EAASmS,UAAUysB,SAAW7+B,EAAQoS,UAAUysB,SAGhD5+B,EAASmS,UAAUqsB,UAAYx+B,EAASmS,UAAUmsB,GAClDt+B,EAASmS,UAAUwsB,YAAc3+B,EAASmS,UAAUssB,IAEpD1/B,EAAOD,QAAUkB,GAIb,SAASjB,EAAQD,EAASM,GA0B9B,QAASc,GAAQojC,EAAWpsB,EAAMnU,GAChC,KAAM7D,eAAgBgB,IACpB,KAAM,IAAIqjC,aAAY,mDAIxBrkC,MAAKskC,iBAAmBF,EACxBpkC,KAAKw+B,MAAQ,QACbx+B,KAAKy+B,OAAS,QACdz+B,KAAKukC,OAAS,GACdvkC,KAAKwkC,eAAiB,MACtBxkC,KAAKykC,eAAiB,MAEtBzkC,KAAK0kC,OAAS,IACd1kC,KAAK2kC,OAAS,IACd3kC,KAAK4kC,OAAS,GAEd,IAAIC,GAAc,SAAqBj3B,GACrC,MAAOA,GAET5N,MAAK8kC,YAAcD,EACnB7kC,KAAK+kC,YAAcF,EACnB7kC,KAAKglC,YAAcH,EAEnB7kC,KAAKilC,YAAc,OACnBjlC,KAAKklC,YAAc,QAEnBllC,KAAK8O,MAAQ9N,EAAQmkC,MAAMC,IAC3BplC,KAAKqlC,iBAAkB,EACvBrlC,KAAKslC,UAAW,EAChBtlC,KAAKulC,iBAAkB,EACvBvlC,KAAKwlC,YAAa,EAClBxlC,KAAKylC,gBAAiB,EACtBzlC,KAAK0lC,aAAc,EACnB1lC,KAAK2lC,cAAgB,GAErB3lC,KAAK4lC,kBAAoB,IACzB5lC,KAAK6lC,kBAAmB,EAExB7lC,KAAK8lC,OAAS,GAAI5kC,GAClBlB,KAAK8lC,OAAOC,eAAe,EAAK,IAChC/lC,KAAK8lC,OAAOE,aAAa,KACzBhmC,KAAKimC,IAAM,GAAI5kC,GAAQ,EAAG,EAAG,IAE7BrB,KAAKkmC,UAAY,KACjBlmC,KAAKmmC,WAAa,KAGlBnmC,KAAKomC,KAAO7/B,OACZvG,KAAKqmC,KAAO9/B,OACZvG,KAAKsmC,KAAO//B,OACZvG,KAAKumC,SAAWhgC,OAChBvG,KAAKwmC,UAAYjgC,OAEjBvG,KAAKymC,KAAO,EACZzmC,KAAK0mC,MAAQngC,OACbvG,KAAK2mC,KAAO,EACZ3mC,KAAK4mC,KAAO,EACZ5mC,KAAK6mC,MAAQtgC,OACbvG,KAAK8mC,KAAO,EACZ9mC,KAAK+mC,KAAO,EACZ/mC,KAAKgnC,MAAQzgC,OACbvG,KAAKinC,KAAO,EACZjnC,KAAKknC,SAAW,EAChBlnC,KAAKmnC,SAAW,EAChBnnC,KAAKonC,UAAY,EACjBpnC,KAAKqnC,UAAY,EAIjBrnC,KAAKsnC,UAAY,UACjBtnC,KAAKunC,UAAY,UACjBvnC,KAAKwnC,WACHC,KAAM,UACNC,OAAQ,UACRC,YAAa,GAIf3nC,KAAKoQ,SAGLpQ,KAAKg/B,WAAWn7B,GAGZmU,GACFhY,KAAKyjC,QAAQzrB,GAqkEjB,QAAS4vB,GAAU98B,GACjB,MAAI,WAAaA,GAAcA,EAAM+8B,QAC9B/8B,EAAMg9B,cAAc,IAAMh9B,EAAMg9B,cAAc,GAAGD,SAAW,EAQrE,QAASE,GAAUj9B,GACjB,MAAI,WAAaA,GAAcA,EAAMk9B,QAC9Bl9B,EAAMg9B,cAAc,IAAMh9B,EAAMg9B,cAAc,GAAGE,SAAW,EA7rErE,GAAIC,GAAU/nC,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,GAwGrC+nC,GAAQjnC,EAAQiS,WAKhBjS,EAAQiS,UAAUi1B,UAAY,WAC5BloC,KAAKgF,MAAQ,GAAI3D,GAAQ,GAAKrB,KAAK2mC,KAAO3mC,KAAKymC,MAAO,GAAKzmC,KAAK8mC,KAAO9mC,KAAK4mC,MAAO,GAAK5mC,KAAKinC,KAAOjnC,KAAK+mC,OAGrG/mC,KAAKulC,kBACHvlC,KAAKgF,MAAM44B,EAAI59B,KAAKgF,MAAMic,EAE5BjhB,KAAKgF,MAAMic,EAAIjhB,KAAKgF,MAAM44B,EAG1B59B,KAAKgF,MAAM44B,EAAI59B,KAAKgF,MAAMic,GAK9BjhB,KAAKgF,MAAMmjC,GAAKnoC,KAAK2lC,cAIrB3lC,KAAKgF,MAAMD,MAAQ,GAAK/E,KAAKmnC,SAAWnnC,KAAKknC,SAG7C,IAAIkB,IAAWpoC,KAAK2mC,KAAO3mC,KAAKymC,MAAQ,EAAIzmC,KAAKgF,MAAM44B,EACnDyK,GAAWroC,KAAK8mC,KAAO9mC,KAAK4mC,MAAQ,EAAI5mC,KAAKgF,MAAMic,EACnDqnB,GAAWtoC,KAAKinC,KAAOjnC,KAAK+mC,MAAQ,EAAI/mC,KAAKgF,MAAMmjC,CACvDnoC,MAAK8lC,OAAOyC,eAAeH,EAASC,EAASC,IAS/CtnC,EAAQiS,UAAUu1B,eAAiB,SAAUC,GAC3C,GAAIC,GAAc1oC,KAAK2oC,2BAA2BF,EAClD,OAAOzoC,MAAK4oC,4BAA4BF,IAW1C1nC,EAAQiS,UAAU01B,2BAA6B,SAAUF,GACvD,GAAII,GAAKJ,EAAQ7K,EAAI59B,KAAKgF,MAAM44B,EAC5BkL,EAAKL,EAAQxnB,EAAIjhB,KAAKgF,MAAMic,EAC5B8nB,EAAKN,EAAQN,EAAInoC,KAAKgF,MAAMmjC,EAC5Ba,EAAKhpC,KAAK8lC,OAAOmD,oBAAoBrL,EACrCsL,EAAKlpC,KAAK8lC,OAAOmD,oBAAoBhoB,EACrCkoB,EAAKnpC,KAAK8lC,OAAOmD,oBAAoBd,EAGzCiB,EAAQnkC,KAAKokC,IAAIrpC,KAAK8lC,OAAOwD,oBAAoB1L,GAC7C2L,EAAQtkC,KAAKukC,IAAIxpC,KAAK8lC,OAAOwD,oBAAoB1L,GACjD6L,EAAQxkC,KAAKokC,IAAIrpC,KAAK8lC,OAAOwD,oBAAoBroB,GACjDyoB,EAAQzkC,KAAKukC,IAAIxpC,KAAK8lC,OAAOwD,oBAAoBroB,GACjD0oB,EAAQ1kC,KAAKokC,IAAIrpC,KAAK8lC,OAAOwD,oBAAoBnB,GACjDyB,EAAQ3kC,KAAKukC,IAAIxpC,KAAK8lC,OAAOwD,oBAAoBnB,GAGrD0B,EAAKH,GAASC,GAASb,EAAKI,GAAMU,GAASf,EAAKG,IAAOS,GAASV,EAAKI,GACjEW,EAAKV,GAASM,GAASX,EAAKI,GAAMM,GAASE,GAASb,EAAKI,GAAMU,GAASf,EAAKG,KAAQO,GAASK,GAASd,EAAKI,GAAMS,GAASd,EAAKG,IAChIe,EAAKR,GAASG,GAASX,EAAKI,GAAMM,GAASE,GAASb,EAAKI,GAAMU,GAASf,EAAKG,KAAQI,GAASQ,GAASd,EAAKI,GAAMS,GAASd,EAAKG,GAEpI,OAAO,IAAI3nC,GAAQwoC,EAAIC,EAAIC,IAU7B/oC,EAAQiS,UAAU21B,4BAA8B,SAAUF,GACxD,GAQIsB,GACAC,EATAC,EAAKlqC,KAAKimC,IAAIrI,EACduM,EAAKnqC,KAAKimC,IAAIhlB,EACdmpB,EAAKpqC,KAAKimC,IAAIkC,EACd0B,EAAKnB,EAAY9K,EACjBkM,EAAKpB,EAAYznB,EACjB8oB,EAAKrB,EAAYP,CAerB,OAVInoC,MAAKqlC,iBACP2E,GAAMH,EAAKK,IAAOE,EAAKL,GACvBE,GAAMH,EAAKK,IAAOC,EAAKL,KAEvBC,EAAKH,IAAOO,EAAKpqC,KAAK8lC,OAAOuE,gBAC7BJ,EAAKH,IAAOM,EAAKpqC,KAAK8lC,OAAOuE,iBAKxB,GAAIjpC,GAAQpB,KAAKsqC,QAAUN,EAAKhqC,KAAKuqC,MAAMC,OAAOC,YAAazqC,KAAK0qC,QAAUT,EAAKjqC,KAAKuqC,MAAMC,OAAOC,cAO9GzpC,EAAQiS,UAAU03B,oBAAsB,SAAUC,GAChD,GAAInD,GAAO,QACPC,EAAS,OACTC,EAAc,CAElB,IAA+B,gBAApBiD,GACTnD,EAAOmD,EACPlD,EAAS,OACTC,EAAc,MACT,IAA+B,gBAApBiD,GACarkC,SAAzBqkC,EAAgBnD,OAAoBA,EAAOmD,EAAgBnD,MAChClhC,SAA3BqkC,EAAgBlD,SAAsBA,EAASkD,EAAgBlD,QAC/BnhC,SAAhCqkC,EAAgBjD,cAA2BA,EAAciD,EAAgBjD,iBACxE,IAAwBphC,SAApBqkC,EAGP,KAAM,qCAGV5qC,MAAKuqC,MAAMz7B,MAAM87B,gBAAkBnD,EACnCznC,KAAKuqC,MAAMz7B,MAAM+7B,YAAcnD,EAC/B1nC,KAAKuqC,MAAMz7B,MAAMg8B,YAAcnD,EAAc,KAC7C3nC,KAAKuqC,MAAMz7B,MAAMi8B,YAAc,SAIjC/pC,EAAQmkC,OACN6F,IAAK,EACLC,SAAU,EACVC,QAAS,EACT9F,IAAK,EACL+F,QAAS,EACTC,SAAU,EACVC,QAAS,EACTC,KAAM,EACNC,KAAM,EACNC,QAAS,GASXxqC,EAAQiS,UAAUw4B,gBAAkB,SAAUC,GAC5C,OAAQA,GACN,IAAK,MACH,MAAO1qC,GAAQmkC,MAAMC,GACvB,KAAK,WACH,MAAOpkC,GAAQmkC,MAAMgG,OACvB,KAAK,YACH,MAAOnqC,GAAQmkC,MAAMiG,QACvB,KAAK,WACH,MAAOpqC,GAAQmkC,MAAMkG,OACvB,KAAK,OACH,MAAOrqC,GAAQmkC,MAAMoG,IACvB,KAAK,OACH,MAAOvqC,GAAQmkC,MAAMmG,IACvB,KAAK,UACH,MAAOtqC,GAAQmkC,MAAMqG,OACvB,KAAK,MACH,MAAOxqC,GAAQmkC,MAAM6F,GACvB,KAAK,YACH,MAAOhqC,GAAQmkC,MAAM8F,QACvB,KAAK,WACH,MAAOjqC,GAAQmkC,MAAM+F,QAGzB,MAAO,IAQTlqC,EAAQiS,UAAU04B,wBAA0B,SAAU3zB,EAAMlJ,GAC1D,GAAI9O,KAAK8O,QAAU9N,EAAQmkC,MAAMC,KAAOplC,KAAK8O,QAAU9N,EAAQmkC,MAAMgG,SAAWnrC,KAAK8O,QAAU9N,EAAQmkC,MAAMoG,MAAQvrC,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,MAAQtrC,KAAK8O,QAAU9N,EAAQmkC,MAAMqG,SAAWxrC,KAAK8O,QAAU9N,EAAQmkC,MAAM6F,IAE7NhrC,KAAKomC,KAAO,EACZpmC,KAAKqmC,KAAO,EACZrmC,KAAKsmC,KAAO,EACZtmC,KAAKumC,SAAWhgC,OAEZyR,EAAK4zB,qBAAuB,IAC9B5rC,KAAKwmC,UAAY,OAEd,CAAA,GAAIxmC,KAAK8O,QAAU9N,EAAQmkC,MAAMiG,UAAYprC,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,SAAWrrC,KAAK8O,QAAU9N,EAAQmkC,MAAM8F,UAAYjrC,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,QAWhK,KAAM,kBAAoBlrC,KAAK8O,MAAQ,GATvC9O,MAAKomC,KAAO,EACZpmC,KAAKqmC,KAAO,EACZrmC,KAAKsmC,KAAO,EACZtmC,KAAKumC,SAAW,EAEZvuB,EAAK4zB,qBAAuB,IAC9B5rC,KAAKwmC,UAAY,KAOvBxlC,EAAQiS,UAAU44B,gBAAkB,SAAU7zB,GAC5C,MAAOA,GAAK1R,QAGdtF,EAAQiS,UAAU24B,mBAAqB,SAAU5zB,GAC/C,GAAI8zB,GAAU,CACd,KAAK,GAAIC,KAAU/zB,GAAK,GAClBA,EAAK,GAAGhS,eAAe+lC,IACzBD,GAGJ,OAAOA,IAGT9qC,EAAQiS,UAAU+4B,kBAAoB,SAAUh0B,EAAM+zB,GAEpD,IAAK,GADDE,MACKxlC,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IACgB,IAA3CwlC,EAAe1kC,QAAQyQ,EAAKvR,GAAGslC,KACjCE,EAAezkC,KAAKwQ,EAAKvR,GAAGslC,GAGhC,OAAOE,IAGTjrC,EAAQiS,UAAUi5B,eAAiB,SAAUl0B,EAAM+zB,GAEjD,IAAK,GADDI,IAAWvnC,IAAKoT,EAAK,GAAG+zB,GAASlnC,IAAKmT,EAAK,GAAG+zB,IACzCtlC,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAC3B0lC,EAAOvnC,IAAMoT,EAAKvR,GAAGslC,KACvBI,EAAOvnC,IAAMoT,EAAKvR,GAAGslC,IAEnBI,EAAOtnC,IAAMmT,EAAKvR,GAAGslC,KACvBI,EAAOtnC,IAAMmT,EAAKvR,GAAGslC,GAGzB,OAAOI,IASTnrC,EAAQiS,UAAUm5B,gBAAkB,SAAUC,EAASv9B,GACrD,GAAIkxB,GAAKhgC,IAOT,IAJIA,KAAKkkC,SACPlkC,KAAKkkC,QAAQ3E,IAAI,IAAKv/B,KAAKssC,WAGb/lC,SAAZ8lC,EAAJ,CAEIvlC,MAAMC,QAAQslC,KAChBA,EAAU,GAAIxrC,GAAQwrC,GAGxB,IAAIr0B,EACJ,MAAIq0B,YAAmBxrC,IAAWwrC,YAAmBvrC,IAGnD,KAAM,IAAIkG,OAAM,uCAGlB,IALEgR,EAAOq0B,EAAQrV,MAKE,GAAfhf,EAAK1R,OAAT,CAEAtG,KAAKkkC,QAAUmI,EACfrsC,KAAKkmC,UAAYluB,EAGjBhY,KAAKssC,UAAY,WACftM,EAAGyD,QAAQzD,EAAGkE,UAEhBlkC,KAAKkkC,QAAQ9E,GAAG,IAAKp/B,KAAKssC,WAS1BtsC,KAAKomC,KAAO,IACZpmC,KAAKqmC,KAAO,IACZrmC,KAAKsmC,KAAO,IACZtmC,KAAKumC,SAAW,QAChBvmC,KAAKwmC,UAAY,SAGbxuB,EAAK,GAAGhS,eAAe,WACDO,SAApBvG,KAAKusC,aACPvsC,KAAKusC,WAAa,GAAIprC,GAAOkrC,EAASrsC,KAAKwmC,UAAWxmC,MACtDA,KAAKusC,WAAWC,kBAAkB,WAChCxM,EAAGyM,WAKT,IAAIC,GAAW1sC,KAAK8O,OAAS9N,EAAQmkC,MAAM6F,KAAOhrC,KAAK8O,OAAS9N,EAAQmkC,MAAM8F,UAAYjrC,KAAK8O,OAAS9N,EAAQmkC,MAAM+F,OAGtH,IAAIwB,EAAU,CACZ,GAA8BnmC,SAA1BvG,KAAK2sC,iBACP3sC,KAAKonC,UAAYpnC,KAAK2sC,qBACjB,CACL,GAAIC,GAAQ5sC,KAAKgsC,kBAAkBh0B,EAAMhY,KAAKomC,KAC9CpmC,MAAKonC,UAAYwF,EAAM,GAAKA,EAAM,IAAM,EAG1C,GAA8BrmC,SAA1BvG,KAAK6sC,iBACP7sC,KAAKqnC,UAAYrnC,KAAK6sC,qBACjB,CACL,GAAIC,GAAQ9sC,KAAKgsC,kBAAkBh0B,EAAMhY,KAAKqmC,KAC9CrmC,MAAKqnC,UAAYyF,EAAM,GAAKA,EAAM,IAAM,GAK5C,GAAIC,GAAS/sC,KAAKksC,eAAel0B,EAAMhY,KAAKomC,KACxCsG,KACFK,EAAOnoC,KAAO5E,KAAKonC,UAAY,EAC/B2F,EAAOloC,KAAO7E,KAAKonC,UAAY,GAEjCpnC,KAAKymC,KAA4BlgC,SAArBvG,KAAKgtC,YAA4BhtC,KAAKgtC,YAAcD,EAAOnoC,IACvE5E,KAAK2mC,KAA4BpgC,SAArBvG,KAAKitC,YAA4BjtC,KAAKitC,YAAcF,EAAOloC,IACnE7E,KAAK2mC,MAAQ3mC,KAAKymC,OAAMzmC,KAAK2mC,KAAO3mC,KAAKymC,KAAO,GACpDzmC,KAAK0mC,MAA8BngC,SAAtBvG,KAAKktC,aAA6BltC,KAAKktC,cAAgBltC,KAAK2mC,KAAO3mC,KAAKymC,MAAQ,CAE7F,IAAI0G,GAASntC,KAAKksC,eAAel0B,EAAMhY,KAAKqmC,KACxCqG,KACFS,EAAOvoC,KAAO5E,KAAKqnC,UAAY,EAC/B8F,EAAOtoC,KAAO7E,KAAKqnC,UAAY,GAEjCrnC,KAAK4mC,KAA4BrgC,SAArBvG,KAAKotC,YAA4BptC,KAAKotC,YAAcD,EAAOvoC,IACvE5E,KAAK8mC,KAA4BvgC,SAArBvG,KAAKqtC,YAA4BrtC,KAAKqtC,YAAcF,EAAOtoC,IACnE7E,KAAK8mC,MAAQ9mC,KAAK4mC,OAAM5mC,KAAK8mC,KAAO9mC,KAAK4mC,KAAO,GACpD5mC,KAAK6mC,MAA8BtgC,SAAtBvG,KAAKstC,aAA6BttC,KAAKstC,cAAgBttC,KAAK8mC,KAAO9mC,KAAK4mC,MAAQ,CAE7F,IAAI2G,GAASvtC,KAAKksC,eAAel0B,EAAMhY,KAAKsmC,KAM5C,IALAtmC,KAAK+mC,KAA4BxgC,SAArBvG,KAAKwtC,YAA4BxtC,KAAKwtC,YAAcD,EAAO3oC,IACvE5E,KAAKinC,KAA4B1gC,SAArBvG,KAAKytC,YAA4BztC,KAAKytC,YAAcF,EAAO1oC,IACnE7E,KAAKinC,MAAQjnC,KAAK+mC,OAAM/mC,KAAKinC,KAAOjnC,KAAK+mC,KAAO,GACpD/mC,KAAKgnC,MAA8BzgC,SAAtBvG,KAAK0tC,aAA6B1tC,KAAK0tC,cAAgB1tC,KAAKinC,KAAOjnC,KAAK+mC,MAAQ,EAEvExgC,SAAlBvG,KAAKumC,SAAwB,CAC/B,GAAIoH,GAAa3tC,KAAKksC,eAAel0B,EAAMhY,KAAKumC,SAChDvmC,MAAKknC,SAAoC3gC,SAAzBvG,KAAK4tC,gBAAgC5tC,KAAK4tC,gBAAkBD,EAAW/oC,IACvF5E,KAAKmnC,SAAoC5gC,SAAzBvG,KAAK6tC,gBAAgC7tC,KAAK6tC,gBAAkBF,EAAW9oC,IACnF7E,KAAKmnC,UAAYnnC,KAAKknC,WAAUlnC,KAAKmnC,SAAWnnC,KAAKknC,SAAW,GAItElnC,KAAKkoC,eAQPlnC,EAAQiS,UAAU66B,eAAiB,SAAU91B,GAE3C,GAAI4lB,GAAG3c,EAAGxa,EAAG0hC,EAAGriC,EAAKi4B,EAEjBoI,IAEJ,IAAInmC,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,MAAQtrC,KAAK8O,QAAU9N,EAAQmkC,MAAMqG,QAAS,CAK7E,GAAIoB,MACAE,IACJ,KAAKrmC,EAAI,EAAGA,EAAIzG,KAAK6rC,gBAAgB7zB,GAAOvR,IAC1Cm3B,EAAI5lB,EAAKvR,GAAGzG,KAAKomC,OAAS,EAC1BnlB,EAAIjJ,EAAKvR,GAAGzG,KAAKqmC,OAAS,EAED,KAArBuG,EAAMrlC,QAAQq2B,IAChBgP,EAAMplC,KAAKo2B,GAEY,KAArBkP,EAAMvlC,QAAQ0Z,IAChB6rB,EAAMtlC,KAAKyZ,EAIf,IAAI8sB,GAAa,SAAoB7nC,EAAGC,GACtC,MAAOD,GAAIC,EAEbymC,GAAMluB,KAAKqvB,GACXjB,EAAMpuB,KAAKqvB,EAGX,IAAIC,KACJ,KAAKvnC,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAAK,CAChCm3B,EAAI5lB,EAAKvR,GAAGzG,KAAKomC,OAAS,EAC1BnlB,EAAIjJ,EAAKvR,GAAGzG,KAAKqmC,OAAS,EAC1B8B,EAAInwB,EAAKvR,GAAGzG,KAAKsmC,OAAS,CAE1B,IAAI2H,GAASrB,EAAMrlC,QAAQq2B,GACvBsQ,EAASpB,EAAMvlC,QAAQ0Z,EAEA1a,UAAvBynC,EAAWC,KACbD,EAAWC,MAGb,IAAIxF,GAAU,GAAIpnC,EAClBonC,GAAQ7K,EAAIA,EACZ6K,EAAQxnB,EAAIA,EACZwnB,EAAQN,EAAIA,EAEZriC,KACAA,EAAIi4B,MAAQ0K,EACZ3iC,EAAIqoC,MAAQ5nC,OACZT,EAAIsoC,OAAS7nC,OACbT,EAAIuoC,OAAS,GAAIhtC,GAAQu8B,EAAG3c,EAAGjhB,KAAK+mC,MAEpCiH,EAAWC,GAAQC,GAAUpoC,EAE7BqgC,EAAW3+B,KAAK1B,GAIlB,IAAK83B,EAAI,EAAGA,EAAIoQ,EAAW1nC,OAAQs3B,IACjC,IAAK3c,EAAI,EAAGA,EAAI+sB,EAAWpQ,GAAGt3B,OAAQ2a,IAChC+sB,EAAWpQ,GAAG3c,KAChB+sB,EAAWpQ,GAAG3c,GAAGqtB,WAAa1Q,EAAIoQ,EAAW1nC,OAAS,EAAI0nC,EAAWpQ,EAAI,GAAG3c,GAAK1a,OACjFynC,EAAWpQ,GAAG3c,GAAGstB,SAAWttB,EAAI+sB,EAAWpQ,GAAGt3B,OAAS,EAAI0nC,EAAWpQ,GAAG3c,EAAI,GAAK1a,OAClFynC,EAAWpQ,GAAG3c,GAAGutB,WAAa5Q,EAAIoQ,EAAW1nC,OAAS,GAAK2a,EAAI+sB,EAAWpQ,GAAGt3B,OAAS,EAAI0nC,EAAWpQ,EAAI,GAAG3c,EAAI,GAAK1a,YAO3H,KAAKE,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAC3Bs3B,EAAQ,GAAI18B,GACZ08B,EAAMH,EAAI5lB,EAAKvR,GAAGzG,KAAKomC,OAAS,EAChCrI,EAAM9c,EAAIjJ,EAAKvR,GAAGzG,KAAKqmC,OAAS,EAChCtI,EAAMoK,EAAInwB,EAAKvR,GAAGzG,KAAKsmC,OAAS,EAEV//B,SAAlBvG,KAAKumC,WACPxI,EAAMh5B,MAAQiT,EAAKvR,GAAGzG,KAAKumC,WAAa,GAG1CzgC,KACAA,EAAIi4B,MAAQA,EACZj4B,EAAIuoC,OAAS,GAAIhtC,GAAQ08B,EAAMH,EAAGG,EAAM9c,EAAGjhB,KAAK+mC,MAChDjhC,EAAIqoC,MAAQ5nC,OACZT,EAAIsoC,OAAS7nC,OAEb4/B,EAAW3+B,KAAK1B,EAIpB,OAAOqgC,IASTnlC,EAAQiS,UAAU7C,OAAS,WAEzB,KAAOpQ,KAAKskC,iBAAiB9/B,iBAC3BxE,KAAKskC,iBAAiB5/B,YAAY1E,KAAKskC,iBAAiB7/B,WAG1DzE,MAAKuqC,MAAQnN,SAASM,cAAc,OACpC19B,KAAKuqC,MAAMz7B,MAAM2/B,SAAW,WAC5BzuC,KAAKuqC,MAAMz7B,MAAMgF,SAAW,SAG5B9T,KAAKuqC,MAAMC,OAASpN,SAASM,cAAc,UAC3C19B,KAAKuqC,MAAMC,OAAO17B,MAAM2/B,SAAW,WACnCzuC,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAMC,OAGhC,IAAIkE,GAAWtR,SAASM,cAAc,MACtCgR,GAAS5/B,MAAMrC,MAAQ,MACvBiiC,EAAS5/B,MAAM6/B,WAAa,OAC5BD,EAAS5/B,MAAM8/B,QAAU,OACzBF,EAASG,UAAY,mDACrB7uC,KAAKuqC,MAAMC,OAAOlN,YAAYoR,GAGhC1uC,KAAKuqC,MAAM/K,OAASpC,SAASM,cAAc,OAC3C19B,KAAKuqC,MAAM/K,OAAO1wB,MAAM2/B,SAAW,WACnCzuC,KAAKuqC,MAAM/K,OAAO1wB,MAAMu/B,OAAS,MACjCruC,KAAKuqC,MAAM/K,OAAO1wB,MAAMnG,KAAO,MAC/B3I,KAAKuqC,MAAM/K,OAAO1wB,MAAM0vB,MAAQ,OAChCx+B,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAM/K,OAGlC,IAAIQ,GAAKhgC,KACL8uC,EAAc,SAAqBhkC,GACrCk1B,EAAG+O,aAAajkC,IAEdkkC,EAAe,SAAsBlkC,GACvCk1B,EAAGiP,cAAcnkC,IAEfokC,EAAe,SAAsBpkC,GACvCk1B,EAAGmP,SAASrkC,IAEVskC,EAAY,SAAmBtkC,GACjCk1B,EAAGqP,WAAWvkC,GAIhBnK,GAAKwJ,iBAAiBnK,KAAKuqC,MAAMC,OAAQ,UAAW8E,WACpD3uC,EAAKwJ,iBAAiBnK,KAAKuqC,MAAMC,OAAQ,YAAasE,GACtDnuC,EAAKwJ,iBAAiBnK,KAAKuqC,MAAMC,OAAQ,aAAcwE,GACvDruC,EAAKwJ,iBAAiBnK,KAAKuqC,MAAMC,OAAQ,aAAc0E,GACvDvuC,EAAKwJ,iBAAiBnK,KAAKuqC,MAAMC,OAAQ,YAAa4E,GAGtDpvC,KAAKskC,iBAAiBhH,YAAYt9B,KAAKuqC,QAUzCvpC,EAAQiS,UAAUs8B,QAAU,SAAU/Q,EAAOC,GAC3Cz+B,KAAKuqC,MAAMz7B,MAAM0vB,MAAQA,EACzBx+B,KAAKuqC,MAAMz7B,MAAM2vB,OAASA,EAE1Bz+B,KAAKwvC,iBAMPxuC,EAAQiS,UAAUu8B,cAAgB,WAChCxvC,KAAKuqC,MAAMC,OAAO17B,MAAM0vB,MAAQ,OAChCx+B,KAAKuqC,MAAMC,OAAO17B,MAAM2vB,OAAS,OAEjCz+B,KAAKuqC,MAAMC,OAAOhM,MAAQx+B,KAAKuqC,MAAMC,OAAOC,YAC5CzqC,KAAKuqC,MAAMC,OAAO/L,OAASz+B,KAAKuqC,MAAMC,OAAOiF,aAG7CzvC,KAAKuqC,MAAM/K,OAAO1wB,MAAM0vB,MAAQx+B,KAAKuqC,MAAMC,OAAOC,YAAc,GAAS,MAM3EzpC,EAAQiS,UAAUy8B,eAAiB,WACjC,IAAK1vC,KAAKuqC,MAAM/K,SAAWx/B,KAAKuqC,MAAM/K,OAAOmQ,OAAQ,KAAM,wBAE3D3vC,MAAKuqC,MAAM/K,OAAOmQ,OAAOC,QAM3B5uC,EAAQiS,UAAU48B,cAAgB,WAC3B7vC,KAAKuqC,MAAM/K,QAAWx/B,KAAKuqC,MAAM/K,OAAOmQ,QAE7C3vC,KAAKuqC,MAAM/K,OAAOmQ,OAAOG,QAS3B9uC,EAAQiS,UAAU88B,cAAgB,WAEmC,MAA/D/vC,KAAKwkC,eAAenU,OAAOrwB,KAAKwkC,eAAel+B,OAAS,GAC1DtG,KAAKsqC,QAAUlgB,WAAWpqB,KAAKwkC,gBAAkB,IAAMxkC,KAAKuqC,MAAMC,OAAOC,YAEzEzqC,KAAKsqC,QAAUlgB,WAAWpqB,KAAKwkC,gBAIkC,MAA/DxkC,KAAKykC,eAAepU,OAAOrwB,KAAKykC,eAAen+B,OAAS,GAC1DtG,KAAK0qC,QAAUtgB,WAAWpqB,KAAKykC,gBAAkB,KAAOzkC,KAAKuqC,MAAMC,OAAOiF,aAAezvC,KAAKuqC,MAAM/K,OAAOiQ,cAE3GzvC,KAAK0qC,QAAUtgB,WAAWpqB,KAAKykC,iBAoBnCzjC,EAAQiS,UAAU+8B,kBAAoB,SAAUzZ,GAClChwB,SAARgwB,IAImBhwB,SAAnBgwB,EAAI0Z,YAA6C1pC,SAAjBgwB,EAAI2Z,UACtClwC,KAAK8lC,OAAOC,eAAexP,EAAI0Z,WAAY1Z,EAAI2Z,UAG5B3pC,SAAjBgwB,EAAI4Z,UACNnwC,KAAK8lC,OAAOE,aAAazP,EAAI4Z,UAG/BnwC,KAAKysC,WAQPzrC,EAAQiS,UAAUm9B,kBAAoB,WACpC,GAAI7Z,GAAMv2B,KAAK8lC,OAAOuK,gBAEtB,OADA9Z,GAAI4Z,SAAWnwC,KAAK8lC,OAAOuE,eACpB9T,GAMTv1B,EAAQiS,UAAUq9B,UAAY,SAAUt4B,GAEtChY,KAAKosC,gBAAgBp0B,EAAMhY,KAAK8O,OAE5B9O,KAAKusC,WAEPvsC,KAAKmmC,WAAanmC,KAAKusC,WAAWuB,iBAGlC9tC,KAAKmmC,WAAanmC,KAAK8tC,eAAe9tC,KAAKkmC,WAI7ClmC,KAAKuwC,iBAOPvvC,EAAQiS,UAAUwwB,QAAU,SAAUzrB,GACpChY,KAAKswC,UAAUt4B,GACfhY,KAAKysC,SAGDzsC,KAAKwwC,oBAAsBxwC,KAAKusC,YAClCvsC,KAAK0vC,kBAQT1uC,EAAQiS,UAAU+rB,WAAa,SAAUn7B,GACvC,GAAI4sC,GAAiBlqC,MAIrB,IAFAvG,KAAK6vC,gBAEWtpC,SAAZ1C,EAAuB,CAkBzB,GAhBsB0C,SAAlB1C,EAAQ26B,QAAqBx+B,KAAKw+B,MAAQ36B,EAAQ26B,OAC/Bj4B,SAAnB1C,EAAQ46B,SAAsBz+B,KAAKy+B,OAAS56B,EAAQ46B,QAEhCl4B,SAApB1C,EAAQukC,UAAuBpoC,KAAKwkC,eAAiB3gC,EAAQukC,SACzC7hC,SAApB1C,EAAQwkC,UAAuBroC,KAAKykC,eAAiB5gC,EAAQwkC,SAErC9hC,SAAxB1C,EAAQohC,cAA2BjlC,KAAKilC,YAAcphC,EAAQohC,aACtC1+B,SAAxB1C,EAAQqhC,cAA2BllC,KAAKklC,YAAcrhC,EAAQqhC,aAC3C3+B,SAAnB1C,EAAQ6gC,SAAsB1kC,KAAK0kC,OAAS7gC,EAAQ6gC,QACjCn+B,SAAnB1C,EAAQ8gC,SAAsB3kC,KAAK2kC,OAAS9gC,EAAQ8gC,QACjCp+B,SAAnB1C,EAAQ+gC,SAAsB5kC,KAAK4kC,OAAS/gC,EAAQ+gC,QAE5Br+B,SAAxB1C,EAAQihC,cAA2B9kC,KAAK8kC,YAAcjhC,EAAQihC,aACtCv+B,SAAxB1C,EAAQkhC,cAA2B/kC,KAAK+kC,YAAclhC,EAAQkhC,aACtCx+B,SAAxB1C,EAAQmhC,cAA2BhlC,KAAKglC,YAAcnhC,EAAQmhC,aAE5Cz+B,SAAlB1C,EAAQiL,MAAqB,CAC/B,GAAI4hC,GAAc1wC,KAAKyrC,gBAAgB5nC,EAAQiL,MAC3B,MAAhB4hC,IACF1wC,KAAK8O,MAAQ4hC,GAGQnqC,SAArB1C,EAAQyhC,WAAwBtlC,KAAKslC,SAAWzhC,EAAQyhC,UAC5B/+B,SAA5B1C,EAAQwhC,kBAA+BrlC,KAAKqlC,gBAAkBxhC,EAAQwhC,iBAC/C9+B,SAAvB1C,EAAQ2hC,aAA0BxlC,KAAKwlC,WAAa3hC,EAAQ2hC,YACxCj/B,SAApB1C,EAAQ8sC,UAAuB3wC,KAAK0lC,YAAc7hC,EAAQ8sC,SACxBpqC,SAAlC1C,EAAQ+sC,wBAAqC5wC,KAAK4wC,sBAAwB/sC,EAAQ+sC,uBACtDrqC,SAA5B1C,EAAQ0hC,kBAA+BvlC,KAAKulC,gBAAkB1hC,EAAQ0hC,iBAC5Ch/B,SAA1B1C,EAAQ8hC,gBAA6B3lC,KAAK2lC,cAAgB9hC,EAAQ8hC,eAEpCp/B,SAA9B1C,EAAQ+hC,oBAAiC5lC,KAAK4lC,kBAAoB/hC,EAAQ+hC,mBAC7Cr/B,SAA7B1C,EAAQgiC,mBAAgC7lC,KAAK6lC,iBAAmBhiC,EAAQgiC,kBACzCt/B,SAA/B1C,EAAQ2sC,qBAAkCxwC,KAAKwwC,mBAAqB3sC,EAAQ2sC,oBAEtDjqC,SAAtB1C,EAAQujC,YAAyBpnC,KAAK2sC,iBAAmB9oC,EAAQujC,WAC3C7gC,SAAtB1C,EAAQwjC,YAAyBrnC,KAAK6sC,iBAAmBhpC,EAAQwjC,WAEhD9gC,SAAjB1C,EAAQ4iC,OAAoBzmC,KAAKgtC,YAAcnpC,EAAQ4iC,MACrClgC,SAAlB1C,EAAQ6iC,QAAqB1mC,KAAKktC,aAAerpC,EAAQ6iC,OACxCngC,SAAjB1C,EAAQ8iC,OAAoB3mC,KAAKitC,YAAcppC,EAAQ8iC,MACtCpgC,SAAjB1C,EAAQ+iC,OAAoB5mC,KAAKotC,YAAcvpC,EAAQ+iC,MACrCrgC,SAAlB1C,EAAQgjC,QAAqB7mC,KAAKstC,aAAezpC,EAAQgjC,OACxCtgC,SAAjB1C,EAAQijC,OAAoB9mC,KAAKqtC,YAAcxpC,EAAQijC,MACtCvgC,SAAjB1C,EAAQkjC,OAAoB/mC,KAAKwtC,YAAc3pC,EAAQkjC,MACrCxgC,SAAlB1C,EAAQmjC,QAAqBhnC,KAAK0tC,aAAe7pC,EAAQmjC,OACxCzgC,SAAjB1C,EAAQojC,OAAoBjnC,KAAKytC,YAAc5pC,EAAQojC,MAClC1gC,SAArB1C,EAAQqjC,WAAwBlnC,KAAK4tC,gBAAkB/pC,EAAQqjC,UAC1C3gC,SAArB1C,EAAQsjC,WAAwBnnC,KAAK6tC,gBAAkBhqC,EAAQsjC,UACnC5gC,SAA5B1C,EAAQ+mC,iBAA+B5qC,KAAK2qC,oBAAoB9mC,EAAQ+mC,iBAE7CrkC,SAA3B1C,EAAQ4sC,iBAA8BA,EAAiB5sC,EAAQ4sC,gBAE5ClqC,SAAnBkqC,IACFzwC,KAAK8lC,OAAOC,eAAe0K,EAAeR,WAAYQ,EAAeP,UACrElwC,KAAK8lC,OAAOE,aAAayK,EAAeN,WAIhB5pC,SAAtB1C,EAAQyjC,YAAyBtnC,KAAKsnC,UAAYzjC,EAAQyjC,WACpC/gC,SAAtB1C,EAAQ0jC,YAAyBvnC,KAAKunC,UAAY1jC,EAAQ0jC,WAC1D1jC,EAAQ2jC,YACuB,gBAAtB3jC,GAAQ2jC,WACjBxnC,KAAKwnC,UAAUC,KAAO5jC,EAAQ2jC,UAC9BxnC,KAAKwnC,UAAUE,OAAS7jC,EAAQ2jC,YAE5B3jC,EAAQ2jC,UAAUC,OACpBznC,KAAKwnC,UAAUC,KAAO5jC,EAAQ2jC,UAAUC,MAEtC5jC,EAAQ2jC,UAAUE,SACpB1nC,KAAKwnC,UAAUE,OAAS7jC,EAAQ2jC,UAAUE,QAENnhC,SAAlC1C,EAAQ2jC,UAAUG,cACpB3nC,KAAKwnC,UAAUG,YAAc9jC,EAAQ2jC,UAAUG,eAMvD3nC,KAAKuvC,QAAQvvC,KAAKw+B,MAAOx+B,KAAKy+B,QAG1Bz+B,KAAKkmC,WACPlmC,KAAKyjC,QAAQzjC,KAAKkmC,WAIhBlmC,KAAKwwC,oBAAsBxwC,KAAKusC,YAClCvsC,KAAK0vC,kBAOT1uC,EAAQiS,UAAUw5B,OAAS,WACzB,GAAwBlmC,SAApBvG,KAAKmmC,WACP,KAAM,mCAGRnmC,MAAKwvC,gBACLxvC,KAAK+vC,gBACL/vC,KAAK6wC,gBACL7wC,KAAK8wC,eACL9wC,KAAK+wC,cAED/wC,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,MAAQtrC,KAAK8O,QAAU9N,EAAQmkC,MAAMqG,QACpExrC,KAAKgxC,kBACIhxC,KAAK8O,QAAU9N,EAAQmkC,MAAMoG,KACtCvrC,KAAKixC,kBACIjxC,KAAK8O,QAAU9N,EAAQmkC,MAAM6F,KAAOhrC,KAAK8O,QAAU9N,EAAQmkC,MAAM8F,UAAYjrC,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,QACnHlrC,KAAKkxC,iBAGLlxC,KAAKmxC,iBAGPnxC,KAAKoxC,cACLpxC,KAAKqxC,iBAMPrwC,EAAQiS,UAAU69B,aAAe,WAC/B,GAAItG,GAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAE5BD,GAAIE,UAAU,EAAG,EAAGhH,EAAOhM,MAAOgM,EAAO/L,SAM3Cz9B,EAAQiS,UAAUo+B,cAAgB,WAChC,GAAIpwB,EAEJ,IAAIjhB,KAAK8O,QAAU9N,EAAQmkC,MAAMiG,UAAYprC,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,QAAS,CAEjF,GAEIoG,GAAUC,EAFVC,EAAmC,IAAzB3xC,KAAKuqC,MAAME,WAGrBzqC,MAAK8O,QAAU9N,EAAQmkC,MAAMkG,SAC/BoG,EAAWE,EAAU,EACrBD,EAAWC,EAAU,EAAc,EAAVA,IAEvBF,EAAW,GACXC,EAAW,GAGf,IAAIjT,GAASx5B,KAAKJ,IAA8B,IAA1B7E,KAAKuqC,MAAMkF,aAAqB,KAClD5mC,EAAM7I,KAAKukC,OACXqN,EAAQ5xC,KAAKuqC,MAAME,YAAczqC,KAAKukC,OACtC57B,EAAOipC,EAAQF,EACfrD,EAASxlC,EAAM41B,EAGrB,GAAI+L,GAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAI5B,IAHAD,EAAIO,UAAY,EAChBP,EAAIQ,KAAO,aAEP9xC,KAAK8O,QAAU9N,EAAQmkC,MAAMiG,SAAU,CAEzC,GAAI2G,GAAO,EACPC,EAAOvT,CACX,KAAKxd,EAAI8wB,EAAUC,EAAJ/wB,EAAUA,IAAK,CAC5B,GAAIxR,IAAKwR,EAAI8wB,IAASC,EAAOD,GAGzBtjC,EAAU,IAAJgB,EACNhD,EAAQzM,KAAKiyC,SAASxjC,EAAK,EAAG,EAElC6iC,GAAIY,YAAczlC,EAClB6kC,EAAIa,YACJb,EAAIc,OAAOzpC,EAAME,EAAMoY,GACvBqwB,EAAIe,OAAOT,EAAO/oC,EAAMoY,GACxBqwB,EAAI5J,SAGN4J,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIgB,WAAW3pC,EAAME,EAAK6oC,EAAUjT,GAiBtC,GAdIz+B,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,UAE/BiG,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIiB,UAAYvyC,KAAKwnC,UAAUC,KAC/B6J,EAAIa,YACJb,EAAIc,OAAOzpC,EAAME,GACjByoC,EAAIe,OAAOT,EAAO/oC,GAClByoC,EAAIe,OAAOT,EAAQF,EAAWD,EAAUpD,GACxCiD,EAAIe,OAAO1pC,EAAM0lC,GACjBiD,EAAIkB,YACJlB,EAAI7J,OACJ6J,EAAI5J,UAGF1nC,KAAK8O,QAAU9N,EAAQmkC,MAAMiG,UAAYprC,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,QAAS,CAEjF,GAAIoH,GAAc,EACdC,EAAO,GAAInxC,GAAWvB,KAAKknC,SAAUlnC,KAAKmnC,UAAWnnC,KAAKmnC,SAAWnnC,KAAKknC,UAAY,GAAG,EAK7F,KAJAwL,EAAKC,QACDD,EAAKE,aAAe5yC,KAAKknC,UAC3BwL,EAAKp7B,QAECo7B,EAAKG,OACX5xB,EAAIotB,GAAUqE,EAAKE,aAAe5yC,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAAYzI,EAErF6S,EAAIa,YACJb,EAAIc,OAAOzpC,EAAO8pC,EAAaxxB,GAC/BqwB,EAAIe,OAAO1pC,EAAMsY,GACjBqwB,EAAI5J,SAEJ4J,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYvyC,KAAKsnC,UACrBgK,EAAI0B,SAASN,EAAKE,aAAcjqC,EAAO,EAAI8pC,EAAaxxB,GAExDyxB,EAAKp7B,MAGPg6B,GAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,KACnB,IAAI7U,GAAQl+B,KAAKklC,WACjBoM,GAAI0B,SAAS9U,EAAO0T,EAAOvD,EAASruC,KAAKukC,UAO7CvjC,EAAQiS,UAAUs9B,cAAgB,WAGhC,GAFAvwC,KAAKuqC,MAAM/K,OAAOqP,UAAY,GAE1B7uC,KAAKusC,WAAY,CACnB,GAAI1oC,IACFovC,QAAWjzC,KAAK4wC,uBAEdjB,EAAS,GAAIruC,GAAOtB,KAAKuqC,MAAM/K,OAAQ37B,EAC3C7D,MAAKuqC,MAAM/K,OAAOmQ,OAASA,EAG3B3vC,KAAKuqC,MAAM/K,OAAO1wB,MAAM8/B,QAAU,OAGlCe,EAAOuD,UAAUlzC,KAAKusC,WAAWx0B,QACjC43B,EAAOwD,gBAAgBnzC,KAAK4lC,kBAG5B,IAAI5F,GAAKhgC,KACLozC,EAAW,WACb,GAAIhqC,GAAQumC,EAAO0D,UAEnBrT,GAAGuM,WAAW+G,YAAYlqC,GAC1B42B,EAAGmG,WAAanG,EAAGuM,WAAWuB,iBAE9B9N,EAAGyM,SAELkD,GAAO4D,oBAAoBH,OAE3BpzC,MAAKuqC,MAAM/K,OAAOmQ,OAASppC,QAO/BvF,EAAQiS,UAAU49B,cAAgB,WACCtqC,SAA7BvG,KAAKuqC,MAAM/K,OAAOmQ,QACpB3vC,KAAKuqC,MAAM/K,OAAOmQ,OAAOlD,UAO7BzrC,EAAQiS,UAAUm+B,YAAc,WAC9B,GAAIpxC,KAAKusC,WAAY,CACnB,GAAI/B,GAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAE5BD,GAAIQ,KAAO,aACXR,EAAIkC,UAAY,OAChBlC,EAAIiB,UAAY,OAChBjB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,KAEnB,IAAInV,GAAI59B,KAAKukC,OACTtjB,EAAIjhB,KAAKukC,MACb+M,GAAI0B,SAAShzC,KAAKusC,WAAWkH,WAAa,KAAOzzC,KAAKusC,WAAWmH,mBAAoB9V,EAAG3c,KAO5FjgB,EAAQiS,UAAU89B,YAAc,WAC9B,GAEI37B,GACAD,EACAu9B,EACAiB,EACAC,EACAC,EACAC,EACAC,EACAvsB,EACA2W,EACAC,EACA4V,EACAC,EAdAzJ,EAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAiB5BD,GAAIQ,KAAO,GAAK9xC,KAAK8lC,OAAOuE,eAAiB,UAG7C,IAAI6J,GAAW,KAAQl0C,KAAKgF,MAAM44B,EAC9BuW,EAAW,KAAQn0C,KAAKgF,MAAMic,EAC9BmzB,EAAa,EAAIp0C,KAAK8lC,OAAOuE,eAC7BgK,EAAWr0C,KAAK8lC,OAAOuK,iBAAiBJ,UAU5C,KAPAqB,EAAIO,UAAY,EAChB8B,EAAmCptC,SAAtBvG,KAAKktC,aAClBwF,EAAO,GAAInxC,GAAWvB,KAAKymC,KAAMzmC,KAAK2mC,KAAM3mC,KAAK0mC,MAAOiN,GACxDjB,EAAKC,QACDD,EAAKE,aAAe5yC,KAAKymC,MAC3BiM,EAAKp7B,QAECo7B,EAAKG,OAAO,CAClB,GAAIjV,GAAI8U,EAAKE,YAET5yC,MAAKslC,UACPlwB,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQu8B,EAAG59B,KAAK4mC,KAAM5mC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQu8B,EAAG59B,KAAK8mC,KAAM9mC,KAAK+mC,OACxDuK,EAAIY,YAAclyC,KAAKunC,UACvB+J,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,WAEJtyB,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQu8B,EAAG59B,KAAK4mC,KAAM5mC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQu8B,EAAG59B,KAAK4mC,KAAOsN,EAAUl0C,KAAK+mC,OACnEuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,SAEJtyB,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQu8B,EAAG59B,KAAK8mC,KAAM9mC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQu8B,EAAG59B,KAAK8mC,KAAOoN,EAAUl0C,KAAK+mC,OACnEuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,UAGNoM,EAAQ7uC,KAAKukC,IAAI6K,GAAY,EAAIr0C,KAAK4mC,KAAO5mC,KAAK8mC,KAClD8M,EAAO5zC,KAAKwoC,eAAe,GAAInnC,GAAQu8B,EAAGkW,EAAO9zC,KAAK+mC,OAClD9hC,KAAKukC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,MACnBa,EAAK3yB,GAAKmzB,GACDnvC,KAAKokC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYvyC,KAAKsnC,UACrBgK,EAAI0B,SAAS,KAAOhzC,KAAK8kC,YAAY4N,EAAKE,cAAgB,KAAMgB,EAAKhW,EAAGgW,EAAK3yB,GAE7EyxB,EAAKp7B,OAWP,IAPAg6B,EAAIO,UAAY,EAChB8B,EAAmCptC,SAAtBvG,KAAKstC,aAClBoF,EAAO,GAAInxC,GAAWvB,KAAK4mC,KAAM5mC,KAAK8mC,KAAM9mC,KAAK6mC,MAAO8M,GACxDjB,EAAKC,QACDD,EAAKE,aAAe5yC,KAAK4mC,MAC3B8L,EAAKp7B,QAECo7B,EAAKG,OACP7yC,KAAKslC,UACPlwB,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAKymC,KAAMiM,EAAKE,aAAc5yC,KAAK+mC,OAC1E5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAK2mC,KAAM+L,EAAKE,aAAc5yC,KAAK+mC,OACxEuK,EAAIY,YAAclyC,KAAKunC,UACvB+J,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,WAEJtyB,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAKymC,KAAMiM,EAAKE,aAAc5yC,KAAK+mC,OAC1E5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAKymC,KAAO0N,EAAUzB,EAAKE,aAAc5yC,KAAK+mC,OACnFuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,SAEJtyB,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAK2mC,KAAM+L,EAAKE,aAAc5yC,KAAK+mC,OAC1E5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAK2mC,KAAOwN,EAAUzB,EAAKE,aAAc5yC,KAAK+mC,OACnFuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,UAGNmM,EAAQ5uC,KAAKokC,IAAIgL,GAAY,EAAIr0C,KAAKymC,KAAOzmC,KAAK2mC,KAClDiN,EAAO5zC,KAAKwoC,eAAe,GAAInnC,GAAQwyC,EAAOnB,EAAKE,aAAc5yC,KAAK+mC,OAClE9hC,KAAKukC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,MACnBa,EAAK3yB,GAAKmzB,GACDnvC,KAAKokC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYvyC,KAAKsnC,UACrBgK,EAAI0B,SAAS,KAAOhzC,KAAK+kC,YAAY2N,EAAKE,cAAgB,KAAMgB,EAAKhW,EAAGgW,EAAK3yB,GAE7EyxB,EAAKp7B,MAaP,KATAg6B,EAAIO,UAAY,EAChB8B,EAAmCptC,SAAtBvG,KAAK0tC,aAClBgF,EAAO,GAAInxC,GAAWvB,KAAK+mC,KAAM/mC,KAAKinC,KAAMjnC,KAAKgnC,MAAO2M,GACxDjB,EAAKC,QACDD,EAAKE,aAAe5yC,KAAK+mC,MAC3B2L,EAAKp7B,OAEPu8B,EAAQ5uC,KAAKukC,IAAI6K,GAAY,EAAIr0C,KAAKymC,KAAOzmC,KAAK2mC,KAClDmN,EAAQ7uC,KAAKokC,IAAIgL,GAAY,EAAIr0C,KAAK4mC,KAAO5mC,KAAK8mC,MAC1C4L,EAAKG,OAEXz9B,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQwyC,EAAOC,EAAOpB,EAAKE,eAC1DtB,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOj9B,EAAKwoB,EAAIwW,EAAYh/B,EAAK6L,GACrCqwB,EAAI5J,SAEJ4J,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYvyC,KAAKsnC,UACrBgK,EAAI0B,SAAShzC,KAAKglC,YAAY0N,EAAKE,cAAgB,IAAKx9B,EAAKwoB,EAAI,EAAGxoB,EAAK6L,GAEzEyxB,EAAKp7B,MAEPg6B,GAAIO,UAAY,EAChBz8B,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQwyC,EAAOC,EAAO9zC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQwyC,EAAOC,EAAO9zC,KAAKinC,OACxDqK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,SAGJ4J,EAAIO,UAAY,EAEhBmC,EAASh0C,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAKymC,KAAMzmC,KAAK4mC,KAAM5mC,KAAK+mC,OACpEkN,EAASj0C,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK4mC,KAAM5mC,KAAK+mC,OACpEuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAO4B,EAAOpW,EAAGoW,EAAO/yB,GAC5BqwB,EAAIe,OAAO4B,EAAOrW,EAAGqW,EAAOhzB,GAC5BqwB,EAAI5J,SAEJsM,EAASh0C,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAKymC,KAAMzmC,KAAK8mC,KAAM9mC,KAAK+mC,OACpEkN,EAASj0C,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK8mC,KAAM9mC,KAAK+mC,OACpEuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAO4B,EAAOpW,EAAGoW,EAAO/yB,GAC5BqwB,EAAIe,OAAO4B,EAAOrW,EAAGqW,EAAOhzB,GAC5BqwB,EAAI5J,SAGJ4J,EAAIO,UAAY,EAEhBz8B,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAKymC,KAAMzmC,KAAK4mC,KAAM5mC,KAAK+mC,OAClE5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAKymC,KAAMzmC,KAAK8mC,KAAM9mC,KAAK+mC,OAChEuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,SAEJtyB,EAAOpV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK4mC,KAAM5mC,KAAK+mC,OAClE5xB,EAAKnV,KAAKwoC,eAAe,GAAInnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK8mC,KAAM9mC,KAAK+mC,OAChEuK,EAAIY,YAAclyC,KAAKsnC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOl9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBqwB,EAAI5J,QAGJ,IAAIhD,GAAS1kC,KAAK0kC,MACdA,GAAOp+B,OAAS,IAClB83B,EAAU,GAAMp+B,KAAKgF,MAAMic,EAC3B4yB,GAAS7zC,KAAKymC,KAAOzmC,KAAK2mC,MAAQ,EAClCmN,EAAQ7uC,KAAKukC,IAAI6K,GAAY,EAAIr0C,KAAK4mC,KAAOxI,EAAUp+B,KAAK8mC,KAAO1I,EACnEwV,EAAO5zC,KAAKwoC,eAAe,GAAInnC,GAAQwyC,EAAOC,EAAO9zC,KAAK+mC,OACtD9hC,KAAKukC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,OACV9tC,KAAKokC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYvyC,KAAKsnC,UACrBgK,EAAI0B,SAAStO,EAAQkP,EAAKhW,EAAGgW,EAAK3yB,GAIpC,IAAI0jB,GAAS3kC,KAAK2kC,MACdA,GAAOr+B,OAAS,IAClB63B,EAAU,GAAMn+B,KAAKgF,MAAM44B,EAC3BiW,EAAQ5uC,KAAKokC,IAAIgL,GAAY,EAAIr0C,KAAKymC,KAAOtI,EAAUn+B,KAAK2mC,KAAOxI,EACnE2V,GAAS9zC,KAAK4mC,KAAO5mC,KAAK8mC,MAAQ,EAClC8M,EAAO5zC,KAAKwoC,eAAe,GAAInnC,GAAQwyC,EAAOC,EAAO9zC,KAAK+mC,OACtD9hC,KAAKukC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,OACV9tC,KAAKokC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYvyC,KAAKsnC,UACrBgK,EAAI0B,SAASrO,EAAQiP,EAAKhW,EAAGgW,EAAK3yB,GAIpC,IAAI2jB,GAAS5kC,KAAK4kC,MACdA,GAAOt+B,OAAS,IAClBkhB,EAAS,GACTqsB,EAAQ5uC,KAAKukC,IAAI6K,GAAY,EAAIr0C,KAAKymC,KAAOzmC,KAAK2mC,KAClDmN,EAAQ7uC,KAAKokC,IAAIgL,GAAY,EAAIr0C,KAAK4mC,KAAO5mC,KAAK8mC,KAClDiN,GAAS/zC,KAAK+mC,KAAO/mC,KAAKinC,MAAQ,EAClC2M,EAAO5zC,KAAKwoC,eAAe,GAAInnC,GAAQwyC,EAAOC,EAAOC,IACrDzC,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYvyC,KAAKsnC,UACrBgK,EAAI0B,SAASpO,EAAQgP,EAAKhW,EAAIpW,EAAQosB,EAAK3yB,KAU/CjgB,EAAQiS,UAAUg/B,SAAW,SAAUqC,EAAGC,EAAGC,GAC3C,GAAIC,GAAGC,EAAGC,EAAGC,EAAGC,EAAIC,CAMpB,QAJAF,EAAIJ,EAAID,EACRM,EAAK5vC,KAAKuK,MAAM8kC,EAAI,IACpBQ,EAAIF,GAAK,EAAI3vC,KAAK8R,IAAIu9B,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,OAASpoC,SAAa,IAAJkoC,GAAW,IAAMloC,SAAa,IAAJmoC,GAAW,IAAMnoC,SAAa,IAAJooC,GAAW,KAO1F3zC,EAAQiS,UAAU+9B,gBAAkB,WAClC,GAEIjT,GACA6T,EACA/oC,EACAksC,EACAtuC,EACAuuC,EACAzC,EACAL,EAEAxkC,EACAC,EACAC,EACAqnC,EAdAzK,EAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAkB5B,IAHAD,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,UAEU5uC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI0nC,GAAQnuC,KAAK2oC,2BAA2B3oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DqQ,EAASpuC,KAAK4oC,4BAA4BuF,EAE9CnuC,MAAKmmC,WAAW1/B,GAAG0nC,MAAQA,EAC3BnuC,KAAKmmC,WAAW1/B,GAAG2nC,OAASA,CAG5B,IAAIgH,GAAcp1C,KAAK2oC,2BAA2B3oC,KAAKmmC,WAAW1/B,GAAG4nC,OACrEruC,MAAKmmC,WAAW1/B,GAAG4uC,KAAOr1C,KAAKqlC,gBAAkB+P,EAAY9uC,UAAY8uC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmBpvC,EAAGC,GACpC,MAAOA,GAAEkvC,KAAOnvC,EAAEmvC,KAIpB,IAFAr1C,KAAKmmC,WAAWznB,KAAK42B,GAEjBt1C,KAAK8O,QAAU9N,EAAQmkC,MAAMqG,SAC/B,IAAK/kC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAMtC,GALAs3B,EAAQ/9B,KAAKmmC,WAAW1/B,GACxBmrC,EAAQ5xC,KAAKmmC,WAAW1/B,GAAG6nC,WAC3BzlC,EAAM7I,KAAKmmC,WAAW1/B,GAAG8nC,SACzBwG,EAAQ/0C,KAAKmmC,WAAW1/B,GAAG+nC,WAEbjoC,SAAVw3B,GAAiCx3B,SAAVqrC,GAA+BrrC,SAARsC,GAA+BtC,SAAVwuC,EAAqB,CAE1F,GAAI/0C,KAAKylC,gBAAkBzlC,KAAKwlC,WAAY,CAK1C,GAAI+P,GAAQl0C,EAAQ8nB,SAAS4rB,EAAM5G,MAAOpQ,EAAMoQ,OAC5CqH,EAAQn0C,EAAQ8nB,SAAStgB,EAAIslC,MAAOyD,EAAMzD,OAC1CsH,EAAep0C,EAAQq0C,aAAaH,EAAOC,GAC3C9tC,EAAM+tC,EAAanvC,QAGvB0uC,GAAiBS,EAAatN,EAAI,MAElC6M,IAAiB,CAGfA,IAEFC,GAAQlX,EAAMA,MAAMoK,EAAIyJ,EAAM7T,MAAMoK,EAAIt/B,EAAIk1B,MAAMoK,EAAI4M,EAAMhX,MAAMoK,GAAK,EACvEz6B,EAAmE,KAA9D,GAAKunC,EAAOj1C,KAAK+mC,MAAQ/mC,KAAKgF,MAAMmjC,EAAInoC,KAAK2lC,eAClDh4B,EAAI,EAEA3N,KAAKwlC,YACP53B,EAAI3I,KAAKL,IAAI,EAAI6wC,EAAa7X,EAAIl2B,EAAM,EAAG,GAC3C6qC,EAAYvyC,KAAKiyC,SAASvkC,EAAGC,EAAGC,GAChCskC,EAAcK,IAEd3kC,EAAI,EACJ2kC,EAAYvyC,KAAKiyC,SAASvkC,EAAGC,EAAGC,GAChCskC,EAAclyC,KAAKsnC,aAGnBiL,EAAY,OACZL,EAAclyC,KAAKsnC,WAGvBgK,EAAIO,UAAY7xC,KAAK21C,gBAAgB5X,GACrCuT,EAAIiB,UAAYA,EAChBjB,EAAIY,YAAcA,EAClBZ,EAAIa,YACJb,EAAIc,OAAOrU,EAAMqQ,OAAOxQ,EAAGG,EAAMqQ,OAAOntB,GACxCqwB,EAAIe,OAAOT,EAAMxD,OAAOxQ,EAAGgU,EAAMxD,OAAOntB,GACxCqwB,EAAIe,OAAO0C,EAAM3G,OAAOxQ,EAAGmX,EAAM3G,OAAOntB,GACxCqwB,EAAIe,OAAOxpC,EAAIulC,OAAOxQ,EAAG/0B,EAAIulC,OAAOntB,GACpCqwB,EAAIkB,YACJlB,EAAI7J,OACJ6J,EAAI5J,cAKN,KAAKjhC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IACtCs3B,EAAQ/9B,KAAKmmC,WAAW1/B,GACxBmrC,EAAQ5xC,KAAKmmC,WAAW1/B,GAAG6nC,WAC3BzlC,EAAM7I,KAAKmmC,WAAW1/B,GAAG8nC,SAEXhoC,SAAVw3B,GAAiCx3B,SAAVqrC,IAEzBqD,GAAQlX,EAAMA,MAAMoK,EAAIyJ,EAAM7T,MAAMoK,GAAK,EACzCz6B,EAAmE,KAA9D,GAAKunC,EAAOj1C,KAAK+mC,MAAQ/mC,KAAKgF,MAAMmjC,EAAInoC,KAAK2lC,eAElD2L,EAAIO,UAA0C,EAA9B7xC,KAAK21C,gBAAgB5X,GACrCuT,EAAIY,YAAclyC,KAAKiyC,SAASvkC,EAAG,EAAG,GACtC4jC,EAAIa,YACJb,EAAIc,OAAOrU,EAAMqQ,OAAOxQ,EAAGG,EAAMqQ,OAAOntB,GACxCqwB,EAAIe,OAAOT,EAAMxD,OAAOxQ,EAAGgU,EAAMxD,OAAOntB,GACxCqwB,EAAI5J,UAGQnhC,SAAVw3B,GAA+Bx3B,SAARsC,IAEzBosC,GAAQlX,EAAMA,MAAMoK,EAAIt/B,EAAIk1B,MAAMoK,GAAK,EACvCz6B,EAAmE,KAA9D,GAAKunC,EAAOj1C,KAAK+mC,MAAQ/mC,KAAKgF,MAAMmjC,EAAInoC,KAAK2lC,eAElD2L,EAAIO,UAA0C,EAA9B7xC,KAAK21C,gBAAgB5X,GACrCuT,EAAIY,YAAclyC,KAAKiyC,SAASvkC,EAAG,EAAG,GACtC4jC,EAAIa,YACJb,EAAIc,OAAOrU,EAAMqQ,OAAOxQ,EAAGG,EAAMqQ,OAAOntB,GACxCqwB,EAAIe,OAAOxpC,EAAIulC,OAAOxQ,EAAG/0B,EAAIulC,OAAOntB,GACpCqwB,EAAI5J,YAMd1mC,EAAQiS,UAAU0iC,gBAAkB,SAAU5X,GAC5C,MAAcx3B,UAAVw3B,EACE/9B,KAAKqlC,gBACA,GAAKtH,EAAMoQ,MAAMhG,EAAInoC,KAAKwnC,UAAUG,cAElC3nC,KAAKimC,IAAIkC,EAAInoC,KAAK8lC,OAAOuE,gBAAkBrqC,KAAKwnC,UAAUG,YAIhE3nC,KAAKwnC,UAAUG,aAOxB3mC,EAAQiS,UAAUk+B,eAAiB,WACjC,GAEI1qC,GAFA+jC,EAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAG5B,MAAwBhrC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D;AAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI0nC,GAAQnuC,KAAK2oC,2BAA2B3oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DqQ,EAASpuC,KAAK4oC,4BAA4BuF,EAC9CnuC,MAAKmmC,WAAW1/B,GAAG0nC,MAAQA,EAC3BnuC,KAAKmmC,WAAW1/B,GAAG2nC,OAASA,CAG5B,IAAIgH,GAAcp1C,KAAK2oC,2BAA2B3oC,KAAKmmC,WAAW1/B,GAAG4nC,OACrEruC,MAAKmmC,WAAW1/B,GAAG4uC,KAAOr1C,KAAKqlC,gBAAkB+P,EAAY9uC,UAAY8uC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmBpvC,EAAGC,GACpC,MAAOA,GAAEkvC,KAAOnvC,EAAEmvC,KAEpBr1C,MAAKmmC,WAAWznB,KAAK42B,EAGrB,IAAI3D,GAAmC,IAAzB3xC,KAAKuqC,MAAME,WACzB,KAAKhkC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAIs3B,GAAQ/9B,KAAKmmC,WAAW1/B,EAE5B,IAAIzG,KAAK8O,QAAU9N,EAAQmkC,MAAMgG,QAAS,CAGxC,GAAI/1B,GAAOpV,KAAKwoC,eAAezK,EAAMsQ,OACrCiD,GAAIO,UAAY,EAChBP,EAAIY,YAAclyC,KAAKunC,UACvB+J,EAAIa,YACJb,EAAIc,OAAOh9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBqwB,EAAIe,OAAOtU,EAAMqQ,OAAOxQ,EAAGG,EAAMqQ,OAAOntB,GACxCqwB,EAAI5J,SAIN,GAAIzJ,EAEFA,GADEj+B,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,QACxBsG,EAAU,EAAI,EAAIA,GAAW5T,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAExFyK,CAGT,IAAIiE,EAEFA,GADE51C,KAAKqlC,gBACEpH,GAAQF,EAAMoQ,MAAMhG,EAEpBlK,IAASj+B,KAAKimC,IAAIkC,EAAInoC,KAAK8lC,OAAOuE,gBAEhC,EAATuL,IACFA,EAAS,EAGX,IAAInnC,GAAKhC,EAAOo+B,CACZ7qC,MAAK8O,QAAU9N,EAAQmkC,MAAMiG,UAE/B38B,EAAqE,KAA9D,GAAKsvB,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,UAAYlnC,KAAKgF,MAAMD,OAC5D0H,EAAQzM,KAAKiyC,SAASxjC,EAAK,EAAG,GAC9Bo8B,EAAc7qC,KAAKiyC,SAASxjC,EAAK,EAAG,KAC3BzO,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,SACtC5+B,EAAQzM,KAAKwnC,UAAUC,KACvBoD,EAAc7qC,KAAKwnC,UAAUE,SAG7Bj5B,EAA8E,KAAvE,GAAKsvB,EAAMA,MAAMoK,EAAInoC,KAAK+mC,MAAQ/mC,KAAKgF,MAAMmjC,EAAInoC,KAAK2lC,eAC7Dl5B,EAAQzM,KAAKiyC,SAASxjC,EAAK,EAAG,GAC9Bo8B,EAAc7qC,KAAKiyC,SAASxjC,EAAK,EAAG,KAItC6iC,EAAIO,UAAY7xC,KAAK21C,gBAAgB5X,GACrCuT,EAAIY,YAAcrH,EAClByG,EAAIiB,UAAY9lC,EAChB6kC,EAAIa,YACJb,EAAIuE,IAAI9X,EAAMqQ,OAAOxQ,EAAGG,EAAMqQ,OAAOntB,EAAG20B,EAAQ,EAAa,EAAV3wC,KAAK6wC,IAAQ,GAChExE,EAAI7J,OACJ6J,EAAI5J,YAQR1mC,EAAQiS,UAAUi+B,eAAiB,WACjC,GAEIzqC,GAAGgK,EAAGslC,EAASC,EAFfxL,EAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAG5B,MAAwBhrC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI0nC,GAAQnuC,KAAK2oC,2BAA2B3oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DqQ,EAASpuC,KAAK4oC,4BAA4BuF,EAC9CnuC,MAAKmmC,WAAW1/B,GAAG0nC,MAAQA,EAC3BnuC,KAAKmmC,WAAW1/B,GAAG2nC,OAASA,CAG5B,IAAIgH,GAAcp1C,KAAK2oC,2BAA2B3oC,KAAKmmC,WAAW1/B,GAAG4nC,OACrEruC,MAAKmmC,WAAW1/B,GAAG4uC,KAAOr1C,KAAKqlC,gBAAkB+P,EAAY9uC,UAAY8uC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmBpvC,EAAGC,GACpC,MAAOA,GAAEkvC,KAAOnvC,EAAEmvC,KAEpBr1C,MAAKmmC,WAAWznB,KAAK42B,GAErBhE,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,OAGd,IAAIc,GAASj2C,KAAKonC,UAAY,EAC1B8O,EAASl2C,KAAKqnC,UAAY,CAC9B,KAAK5gC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAGIgI,GAAKhC,EAAOo+B,EAHZ9M,EAAQ/9B,KAAKmmC,WAAW1/B,EAIxBzG,MAAK8O,QAAU9N,EAAQmkC,MAAM8F,UAE/Bx8B,EAAqE,KAA9D,GAAKsvB,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,UAAYlnC,KAAKgF,MAAMD,OAC5D0H,EAAQzM,KAAKiyC,SAASxjC,EAAK,EAAG,GAC9Bo8B,EAAc7qC,KAAKiyC,SAASxjC,EAAK,EAAG,KAC3BzO,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,SACtCz+B,EAAQzM,KAAKwnC,UAAUC,KACvBoD,EAAc7qC,KAAKwnC,UAAUE,SAG7Bj5B,EAA8E,KAAvE,GAAKsvB,EAAMA,MAAMoK,EAAInoC,KAAK+mC,MAAQ/mC,KAAKgF,MAAMmjC,EAAInoC,KAAK2lC,eAC7Dl5B,EAAQzM,KAAKiyC,SAASxjC,EAAK,EAAG,GAC9Bo8B,EAAc7qC,KAAKiyC,SAASxjC,EAAK,EAAG,KAIlCzO,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,UAC/B+K,EAASj2C,KAAKonC,UAAY,IAAMrJ,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAAY,GAAM,IAC7GgP,EAASl2C,KAAKqnC,UAAY,IAAMtJ,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAAY,GAAM,IAI/G,IAAIlH,GAAKhgC,KACLyoC,EAAU1K,EAAMA,MAChBl1B,IAASk1B,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQzN,EAAQN,KAAQpK,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQzN,EAAQN,KAAQpK,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQzN,EAAQN,KAAQpK,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQzN,EAAQN,KAC7SkG,IAAYtQ,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQl2C,KAAK+mC,QAAWhJ,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQl2C,KAAK+mC,QAAWhJ,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQl2C,KAAK+mC,QAAWhJ,MAAO,GAAI18B,GAAQonC,EAAQ7K,EAAIqY,EAAQxN,EAAQxnB,EAAIi1B,EAAQl2C,KAAK+mC,OAGjTl+B,GAAIS,QAAQ,SAAUxD,GACpBA,EAAIsoC,OAASpO,EAAGwI,eAAe1iC,EAAIi4B,SAErCsQ,EAAO/kC,QAAQ,SAAUxD,GACvBA,EAAIsoC,OAASpO,EAAGwI,eAAe1iC,EAAIi4B,QAIrC,IAAIoY,KAAcH,QAASntC,EAAKutC,OAAQ/0C,EAAQg1C,IAAIhI,EAAO,GAAGtQ,MAAOsQ,EAAO,GAAGtQ,SAAYiY,SAAUntC,EAAI,GAAIA,EAAI,GAAIwlC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ/0C,EAAQg1C,IAAIhI,EAAO,GAAGtQ,MAAOsQ,EAAO,GAAGtQ,SAAYiY,SAAUntC,EAAI,GAAIA,EAAI,GAAIwlC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ/0C,EAAQg1C,IAAIhI,EAAO,GAAGtQ,MAAOsQ,EAAO,GAAGtQ,SAAYiY,SAAUntC,EAAI,GAAIA,EAAI,GAAIwlC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ/0C,EAAQg1C,IAAIhI,EAAO,GAAGtQ,MAAOsQ,EAAO,GAAGtQ,SAAYiY,SAAUntC,EAAI,GAAIA,EAAI,GAAIwlC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ/0C,EAAQg1C,IAAIhI,EAAO,GAAGtQ,MAAOsQ,EAAO,GAAGtQ,QAI/f,KAHAA,EAAMoY,SAAWA,EAGZ1lC,EAAI,EAAGA,EAAI0lC,EAAS7vC,OAAQmK,IAAK,CACpCslC,EAAUI,EAAS1lC,EACnB,IAAI6lC,GAAct2C,KAAK2oC,2BAA2BoN,EAAQK,OAC1DL,GAAQV,KAAOr1C,KAAKqlC,gBAAkBiR,EAAYhwC,UAAYgwC,EAAYnO,EAwB5E,IAjBAgO,EAASz3B,KAAK,SAAUxY,EAAGC,GACzB,GAAI+hB,GAAO/hB,EAAEkvC,KAAOnvC,EAAEmvC,IACtB,OAAIntB,GAAaA,EAGbhiB,EAAE8vC,UAAYntC,EAAY,EAC1B1C,EAAE6vC,UAAYntC,EAAY,GAGvB,IAITyoC,EAAIO,UAAY7xC,KAAK21C,gBAAgB5X,GACrCuT,EAAIY,YAAcrH,EAClByG,EAAIiB,UAAY9lC,EAEXgE,EAAI,EAAGA,EAAI0lC,EAAS7vC,OAAQmK,IAC/BslC,EAAUI,EAAS1lC,GACnBulC,EAAUD,EAAQC,QAClB1E,EAAIa,YACJb,EAAIc,OAAO4D,EAAQ,GAAG5H,OAAOxQ,EAAGoY,EAAQ,GAAG5H,OAAOntB,GAClDqwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOxQ,EAAGoY,EAAQ,GAAG5H,OAAOntB,GAClDqwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOxQ,EAAGoY,EAAQ,GAAG5H,OAAOntB,GAClDqwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOxQ,EAAGoY,EAAQ,GAAG5H,OAAOntB,GAClDqwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOxQ,EAAGoY,EAAQ,GAAG5H,OAAOntB,GAClDqwB,EAAI7J,OACJ6J,EAAI5J,YASV1mC,EAAQiS,UAAUg+B,gBAAkB,WAClC,GAEIlT,GACAt3B,EAHA+jC,EAASxqC,KAAKuqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAI5B,MAAwBhrC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI0nC,GAAQnuC,KAAK2oC,2BAA2B3oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DqQ,EAASpuC,KAAK4oC,4BAA4BuF,EAE9CnuC,MAAKmmC,WAAW1/B,GAAG0nC,MAAQA,EAC3BnuC,KAAKmmC,WAAW1/B,GAAG2nC,OAASA,EAI9B,GAAIpuC,KAAKmmC,WAAW7/B,OAAS,EAAG,CAW9B,IAVAy3B,EAAQ/9B,KAAKmmC,WAAW,GAExBmL,EAAIO,UAAY7xC,KAAK21C,gBAAgB5X,GACrCuT,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,QACd7D,EAAIY,YAAclyC,KAAKwnC,UAAUE,OACjC4J,EAAIa,YACJb,EAAIc,OAAOrU,EAAMqQ,OAAOxQ,EAAGG,EAAMqQ,OAAOntB,GAGnCxa,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IACtCs3B,EAAQ/9B,KAAKmmC,WAAW1/B,GACxB6qC,EAAIe,OAAOtU,EAAMqQ,OAAOxQ,EAAGG,EAAMqQ,OAAOntB,EAI1CqwB,GAAI5J,YASR1mC,EAAQiS,UAAU87B,aAAe,SAAUjkC,GAWzC,GAVAA,EAAQA,GAASC,OAAOD,MAIpB9K,KAAKu2C,gBACPv2C,KAAKw2C,WAAW1rC,GAIlB9K,KAAKu2C,eAAiBzrC,EAAM2rC,MAAwB,IAAhB3rC,EAAM2rC,MAA+B,IAAjB3rC,EAAM4rC,OACzD12C,KAAKu2C,gBAAmBv2C,KAAK22C,UAAlC,CAGA32C,KAAK42C,YAAchP,EAAU98B,GAC7B9K,KAAK62C,YAAc9O,EAAUj9B,GAE7B9K,KAAK82C,WAAa,GAAIzxC,MAAKrF,KAAK2yC,OAChC3yC,KAAK+2C,SAAW,GAAI1xC,MAAKrF,KAAK6yC,KAC9B7yC,KAAKg3C,iBAAmBh3C,KAAK8lC,OAAOuK,iBAEpCrwC,KAAKuqC,MAAMz7B,MAAMmoC,OAAS,MAK1B,IAAIjX,GAAKhgC,IACTA,MAAKk3C,YAAc,SAAUpsC,GAC3Bk1B,EAAGmX,aAAarsC,IAElB9K,KAAKo3C,UAAY,SAAUtsC,GACzBk1B,EAAGwW,WAAW1rC,IAEhBnK,EAAKwJ,iBAAiBizB,SAAU,YAAa4C,EAAGkX,aAChDv2C,EAAKwJ,iBAAiBizB,SAAU,UAAW4C,EAAGoX,WAC9Cz2C,EAAKkK,eAAeC,KAQtB9J,EAAQiS,UAAUkkC,aAAe,SAAUrsC,GACzCA,EAAQA,GAASC,OAAOD,KAGxB,IAAIusC,GAAQjtB,WAAWwd,EAAU98B,IAAU9K,KAAK42C,YAC5CU,EAAQltB,WAAW2d,EAAUj9B,IAAU9K,KAAK62C,YAE5CU,EAAgBv3C,KAAKg3C,iBAAiB/G,WAAaoH,EAAQ,IAC3DG,EAAcx3C,KAAKg3C,iBAAiB9G,SAAWoH,EAAQ,IAEvDG,EAAY,EACZC,EAAYzyC,KAAKokC,IAAIoO,EAAY,IAAM,EAAIxyC,KAAK6wC,GAIhD7wC,MAAK8R,IAAI9R,KAAKokC,IAAIkO,IAAkBG,IACtCH,EAAgBtyC,KAAKsjB,MAAMgvB,EAAgBtyC,KAAK6wC,IAAM7wC,KAAK6wC,GAAK,MAE9D7wC,KAAK8R,IAAI9R,KAAKukC,IAAI+N,IAAkBG,IACtCH,GAAiBtyC,KAAKsjB,MAAMgvB,EAAgBtyC,KAAK6wC,GAAK,IAAO,IAAO7wC,KAAK6wC,GAAK,MAI5E7wC,KAAK8R,IAAI9R,KAAKokC,IAAImO,IAAgBE,IACpCF,EAAcvyC,KAAKsjB,MAAMivB,EAAcvyC,KAAK6wC,IAAM7wC,KAAK6wC,IAErD7wC,KAAK8R,IAAI9R,KAAKukC,IAAIgO,IAAgBE,IACpCF,GAAevyC,KAAKsjB,MAAMivB,EAAcvyC,KAAK6wC,GAAK,IAAO,IAAO7wC,KAAK6wC,IAGvE91C,KAAK8lC,OAAOC,eAAewR,EAAeC,GAC1Cx3C,KAAKysC,QAGL,IAAIkL,GAAa33C,KAAKowC,mBACtBpwC,MAAK43C,KAAK,uBAAwBD,GAElCh3C,EAAKkK,eAAeC,IAQtB9J,EAAQiS,UAAUujC,WAAa,SAAU1rC,GACvC9K,KAAKuqC,MAAMz7B,MAAMmoC,OAAS,OAC1Bj3C,KAAKu2C,gBAAiB,EAGtB51C,EAAKgK,oBAAoByyB,SAAU,YAAap9B,KAAKk3C,aACrDv2C,EAAKgK,oBAAoByyB,SAAU,UAAWp9B,KAAKo3C,WACnDz2C,EAAKkK,eAAeC,IAOtB9J,EAAQiS,UAAUo8B,WAAa,SAAUvkC,GACvC,GAAI63B,GAAQ,IACRkV,EAAe73C,KAAKuqC,MAAM7hC,wBAC1BovC,EAASlQ,EAAU98B,GAAS+sC,EAAalvC,KACzCovC,EAAShQ,EAAUj9B,GAAS+sC,EAAahvC,GAE7C,IAAK7I,KAAK0lC,YAAV,CASA,GALI1lC,KAAKg4C,gBACP1U,aAAatjC,KAAKg4C,gBAIhBh4C,KAAKu2C,eAEP,WADAv2C,MAAKi4C,cAIP,IAAIj4C,KAAK2wC,SAAW3wC,KAAK2wC,QAAQuH,UAAW,CAE1C,GAAIA,GAAYl4C,KAAKm4C,iBAAiBL,EAAQC,EAC1CG,KAAcl4C,KAAK2wC,QAAQuH,YAEzBA,EACFl4C,KAAKo4C,aAAaF,GAElBl4C,KAAKi4C,oBAGJ,CAEL,GAAIjY,GAAKhgC,IACTA,MAAKg4C,eAAiB9tC,WAAW,WAC/B81B,EAAGgY,eAAiB,IAGpB,IAAIE,GAAYlY,EAAGmY,iBAAiBL,EAAQC,EACxCG,IACFlY,EAAGoY,aAAaF,IAEjBvV,MAOP3hC,EAAQiS,UAAUg8B,cAAgB,SAAUnkC,GAC1C9K,KAAK22C,WAAY,CAEjB,IAAI3W,GAAKhgC,IACTA,MAAKq4C,YAAc,SAAUvtC,GAC3Bk1B,EAAGsY,aAAaxtC,IAElB9K,KAAKu4C,WAAa,SAAUztC,GAC1Bk1B,EAAGwY,YAAY1tC,IAEjBnK,EAAKwJ,iBAAiBizB,SAAU,YAAa4C,EAAGqY,aAChD13C,EAAKwJ,iBAAiBizB,SAAU,WAAY4C,EAAGuY,YAE/Cv4C,KAAK+uC,aAAajkC,IAMpB9J,EAAQiS,UAAUqlC,aAAe,SAAUxtC,GACzC9K,KAAKm3C,aAAarsC,IAMpB9J,EAAQiS,UAAUulC,YAAc,SAAU1tC,GACxC9K,KAAK22C,WAAY,EAEjBh2C,EAAKgK,oBAAoByyB,SAAU,YAAap9B,KAAKq4C,aACrD13C,EAAKgK,oBAAoByyB,SAAU,WAAYp9B,KAAKu4C,YAEpDv4C,KAAKw2C,WAAW1rC,IAQlB9J,EAAQiS,UAAUk8B,SAAW,SAAUrkC,GAChCA,IACHA,EAAQC,OAAOD,MAGjB,IAAIihB,GAAQ,CAcZ,IAbIjhB,EAAM2tC,WAER1sB,EAAQjhB,EAAM2tC,WAAa,IAClB3tC,EAAM4tC,SAIf3sB,GAASjhB,EAAM4tC,OAAS,GAMtB3sB,EAAO,CACT,GAAI4sB,GAAY34C,KAAK8lC,OAAOuE,eACxBuO,EAAYD,GAAa,EAAI5sB,EAAQ,GAEzC/rB,MAAK8lC,OAAOE,aAAa4S,GACzB54C,KAAKysC,SAELzsC,KAAKi4C,eAIP,GAAIN,GAAa33C,KAAKowC,mBACtBpwC,MAAK43C,KAAK,uBAAwBD,GAKlCh3C,EAAKkK,eAAeC,IAUtB9J,EAAQiS,UAAU4lC,gBAAkB,SAAU9a,EAAO+a,GAKnD,QAASh/B,GAAK8jB,GACZ,MAAOA,GAAI,EAAI,EAAQ,EAAJA,EAAQ,GAAK,EALlC,GAAI13B,GAAI4yC,EAAS,GACb3yC,EAAI2yC,EAAS,GACbr4C,EAAIq4C,EAAS,GAMb5lB,EAAKpZ,GAAM3T,EAAEy3B,EAAI13B,EAAE03B,IAAMG,EAAM9c,EAAI/a,EAAE+a,IAAM9a,EAAE8a,EAAI/a,EAAE+a,IAAM8c,EAAMH,EAAI13B,EAAE03B,IACrEmb,EAAKj/B,GAAMrZ,EAAEm9B,EAAIz3B,EAAEy3B,IAAMG,EAAM9c,EAAI9a,EAAE8a,IAAMxgB,EAAEwgB,EAAI9a,EAAE8a,IAAM8c,EAAMH,EAAIz3B,EAAEy3B,IACrEob,EAAKl/B,GAAM5T,EAAE03B,EAAIn9B,EAAEm9B,IAAMG,EAAM9c,EAAIxgB,EAAEwgB,IAAM/a,EAAE+a,EAAIxgB,EAAEwgB,IAAM8c,EAAMH,EAAIn9B,EAAEm9B,GAGzE,SAAc,GAAN1K,GAAiB,GAAN6lB,GAAW7lB,GAAM6lB,GAAc,GAANA,GAAiB,GAANC,GAAWD,GAAMC,GAAc,GAAN9lB,GAAiB,GAAN8lB,GAAW9lB,GAAM8lB,IAU9Gh4C,EAAQiS,UAAUklC,iBAAmB,SAAUva,EAAG3c,GAChD,GAAIxa,GACAwyC,EAAU,IAEdf,EAAY,KACRgB,EAAmB,KACnBC,EAAc,KACd/C,EAAS,GAAIh1C,GAAQw8B,EAAG3c,EAE5B,IAAIjhB,KAAK8O,QAAU9N,EAAQmkC,MAAM6F,KAAOhrC,KAAK8O,QAAU9N,EAAQmkC,MAAM8F,UAAYjrC,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,QAE5G,IAAKzkC,EAAIzG,KAAKmmC,WAAW7/B,OAAS,EAAGG,GAAK,EAAGA,IAAK,CAChDyxC,EAAYl4C,KAAKmmC,WAAW1/B,EAC5B,IAAI0vC,GAAW+B,EAAU/B,QACzB,IAAIA,EACF,IAAK,GAAIxoC,GAAIwoC,EAAS7vC,OAAS,EAAGqH,GAAK,EAAGA,IAAK,CAE7C,GAAIooC,GAAUI,EAASxoC,GACnBqoC,EAAUD,EAAQC,QAClBoD,GAAapD,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,QAC9DiL,GAAarD,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAClE,IAAIpuC,KAAK64C,gBAAgBzC,EAAQgD,IAAcp5C,KAAK64C,gBAAgBzC,EAAQiD,GAE1E,MAAOnB,QAOf,KAAKzxC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3CyxC,EAAYl4C,KAAKmmC,WAAW1/B,EAC5B,IAAIs3B,GAAQma,EAAU9J,MACtB,IAAIrQ,EAAO,CACT,GAAIub,GAAQr0C,KAAK8R,IAAI6mB,EAAIG,EAAMH,GAC3B2b,EAAQt0C,KAAK8R,IAAIkK,EAAI8c,EAAM9c,GAC3Bo0B,EAAOpwC,KAAKu0C,KAAKF,EAAQA,EAAQC,EAAQA,IAExB,OAAhBJ,GAA+BA,EAAP9D,IAA8B4D,EAAP5D,IAClD8D,EAAc9D,EACd6D,EAAmBhB,IAM3B,MAAOgB,IAQTl4C,EAAQiS,UAAUmlC,aAAe,SAAUF,GACzC,GAAI7Z,GAASob,EAAMC,CAEd15C,MAAK2wC,SAgCRtS,EAAUr+B,KAAK2wC,QAAQgJ,IAAItb,QAC3Bob,EAAOz5C,KAAK2wC,QAAQgJ,IAAIF,KACxBC,EAAM15C,KAAK2wC,QAAQgJ,IAAID,MAjCvBrb,EAAUjB,SAASM,cAAc,OACjCW,EAAQvvB,MAAM2/B,SAAW,WACzBpQ,EAAQvvB,MAAM8/B,QAAU,OACxBvQ,EAAQvvB,MAAMZ,OAAS,oBACvBmwB,EAAQvvB,MAAMrC,MAAQ,UACtB4xB,EAAQvvB,MAAMb,WAAa,wBAC3BowB,EAAQvvB,MAAM8qC,aAAe,MAC7Bvb,EAAQvvB,MAAM+qC,UAAY,qCAE1BJ,EAAOrc,SAASM,cAAc,OAC9B+b,EAAK3qC,MAAM2/B,SAAW,WACtBgL,EAAK3qC,MAAM2vB,OAAS,OACpBgb,EAAK3qC,MAAM0vB,MAAQ,IACnBib,EAAK3qC,MAAMgrC,WAAa,oBAExBJ,EAAMtc,SAASM,cAAc,OAC7Bgc,EAAI5qC,MAAM2/B,SAAW,WACrBiL,EAAI5qC,MAAM2vB,OAAS,IACnBib,EAAI5qC,MAAM0vB,MAAQ,IAClBkb,EAAI5qC,MAAMZ,OAAS,oBACnBwrC,EAAI5qC,MAAM8qC,aAAe,MAEzB55C,KAAK2wC,SACHuH,UAAW,KACXyB,KACEtb,QAASA,EACTob,KAAMA,EACNC,IAAKA,KASX15C,KAAKi4C,eAELj4C,KAAK2wC,QAAQuH,UAAYA,EACO,kBAArBl4C,MAAK0lC,YACdrH,EAAQwQ,UAAY7uC,KAAK0lC,YAAYwS,EAAUna,OAE/CM,EAAQwQ,UAAY,6BAAoCqJ,EAAUna,MAAMH,EAAI,gCAAuCsa,EAAUna,MAAM9c,EAAI,gCAAuCi3B,EAAUna,MAAMoK,EAAI,qBAGpM9J,EAAQvvB,MAAMnG,KAAO,IACrB01B,EAAQvvB,MAAMjG,IAAM,IACpB7I,KAAKuqC,MAAMjN,YAAYe,GACvBr+B,KAAKuqC,MAAMjN,YAAYmc,GACvBz5C,KAAKuqC,MAAMjN,YAAYoc,EAGvB,IAAIK,GAAe1b,EAAQ2b,YACvBC,EAAgB5b,EAAQ6b,aACxBC,EAAaV,EAAKS,aAClBE,EAAWV,EAAIM,YACfK,EAAYX,EAAIQ,aAEhBvxC,EAAOuvC,EAAU9J,OAAOxQ,EAAImc,EAAe,CAC/CpxC,GAAO1D,KAAKL,IAAIK,KAAKJ,IAAI8D,EAAM,IAAK3I,KAAKuqC,MAAME,YAAc,GAAKsP,GAElEN,EAAK3qC,MAAMnG,KAAOuvC,EAAU9J,OAAOxQ,EAAI,KACvC6b,EAAK3qC,MAAMjG,IAAMqvC,EAAU9J,OAAOntB,EAAIk5B,EAAa,KACnD9b,EAAQvvB,MAAMnG,KAAOA,EAAO,KAC5B01B,EAAQvvB,MAAMjG,IAAMqvC,EAAU9J,OAAOntB,EAAIk5B,EAAaF,EAAgB,KACtEP,EAAI5qC,MAAMnG,KAAOuvC,EAAU9J,OAAOxQ,EAAIwc,EAAW,EAAI,KACrDV,EAAI5qC,MAAMjG,IAAMqvC,EAAU9J,OAAOntB,EAAIo5B,EAAY,EAAI,MAOvDr5C,EAAQiS,UAAUglC,aAAe,WAC/B,GAAIj4C,KAAK2wC,QAAS,CAChB3wC,KAAK2wC,QAAQuH,UAAY,IAEzB,KAAK,GAAInyC,KAAQ/F,MAAK2wC,QAAQgJ,IAC5B,GAAI35C,KAAK2wC,QAAQgJ,IAAI3zC,eAAeD,GAAO,CACzC,GAAI0C,GAAOzI,KAAK2wC,QAAQgJ,IAAI5zC,EACxB0C,IAAQA,EAAK4C,YACf5C,EAAK4C,WAAW3G,YAAY+D,MA6BtC5I,EAAOD,QAAUoB,GAIb,SAASnB,EAAQD,GAerB,QAASqoC,GAAQniC,GACf,MAAIA,GAAYw0C,EAAMx0C,GAAtB,OAWF,QAASw0C,GAAMx0C,GACb,IAAK,GAAI6D,KAAOs+B,GAAQh1B,UACtBnN,EAAI6D,GAAOs+B,EAAQh1B,UAAUtJ,EAE/B,OAAO7D,GAxBTjG,EAAOD,QAAUqoC,EAoCjBA,EAAQh1B,UAAUmsB,GAClB6I,EAAQh1B,UAAU9I,iBAAmB,SAASW,EAAOjB,GAInD,MAHA7J,MAAKu6C,WAAav6C,KAAKu6C,gBACtBv6C,KAAKu6C,WAAWzvC,GAAS9K,KAAKu6C,WAAWzvC,QACvCtD,KAAKqC,GACD7J,MAaTioC,EAAQh1B,UAAUunC,KAAO,SAAS1vC,EAAOjB,GAIvC,QAASu1B,KACPqb,EAAKlb,IAAIz0B,EAAOs0B,GAChBv1B,EAAGkJ,MAAM/S,KAAMqG,WALjB,GAAIo0C,GAAOz6C,IAUX,OATAA,MAAKu6C,WAAav6C,KAAKu6C,eAOvBnb,EAAGv1B,GAAKA,EACR7J,KAAKo/B,GAAGt0B,EAAOs0B,GACRp/B,MAaTioC,EAAQh1B,UAAUssB,IAClB0I,EAAQh1B,UAAUynC,eAClBzS,EAAQh1B,UAAU0nC,mBAClB1S,EAAQh1B,UAAUtI,oBAAsB,SAASG,EAAOjB,GAItD,GAHA7J,KAAKu6C,WAAav6C,KAAKu6C,eAGnB,GAAKl0C,UAAUC,OAEjB,MADAtG,MAAKu6C,cACEv6C,IAIT,IAAI46C,GAAY56C,KAAKu6C,WAAWzvC,EAChC,KAAK8vC,EAAW,MAAO56C,KAGvB,IAAI,GAAKqG,UAAUC,OAEjB,aADOtG,MAAKu6C,WAAWzvC,GAChB9K,IAKT,KAAK,GADD66C,GACKp0C,EAAI,EAAGA,EAAIm0C,EAAUt0C,OAAQG,IAEpC,GADAo0C,EAAKD,EAAUn0C,GACXo0C,IAAOhxC,GAAMgxC,EAAGhxC,KAAOA,EAAI,CAC7B+wC,EAAUvxC,OAAO5C,EAAG,EACpB,OAGJ,MAAOzG,OAWTioC,EAAQh1B,UAAU2kC,KAAO,SAAS9sC,GAChC9K,KAAKu6C,WAAav6C,KAAKu6C,cACvB,IAAIh0B,MAAUrZ,MAAM3M,KAAK8F,UAAW,GAChCu0C,EAAY56C,KAAKu6C,WAAWzvC,EAEhC,IAAI8vC,EAAW,CACbA,EAAYA,EAAU1tC,MAAM,EAC5B,KAAK,GAAIzG,GAAI,EAAGiB,EAAMkzC,EAAUt0C,OAAYoB,EAAJjB,IAAWA,EACjDm0C,EAAUn0C,GAAGsM,MAAM/S,KAAMumB,GAI7B,MAAOvmB,OAWTioC,EAAQh1B,UAAU6nC,UAAY,SAAShwC,GAErC,MADA9K,MAAKu6C,WAAav6C,KAAKu6C,eAChBv6C,KAAKu6C,WAAWzvC,QAWzBm9B,EAAQh1B,UAAU8nC,aAAe,SAASjwC,GACxC,QAAU9K,KAAK86C,UAAUhwC,GAAOxE,SAM9B,SAASzG,EAAQD,GAUrB,QAASyB,GAAQu8B,EAAG3c,EAAGknB,GACrBnoC,KAAK49B,EAAUr3B,SAANq3B,EAAkBA,EAAI,EAC/B59B,KAAKihB,EAAU1a,SAAN0a,EAAkBA,EAAI,EAC/BjhB,KAAKmoC,EAAU5hC,SAAN4hC,EAAkBA,EAAI,EASjC9mC,EAAQ8nB,SAAW,SAAUjjB,EAAGC,GAC9B,GAAI60C,GAAM,GAAI35C,EAId,OAHA25C,GAAIpd,EAAI13B,EAAE03B,EAAIz3B,EAAEy3B,EAChBod,EAAI/5B,EAAI/a,EAAE+a,EAAI9a,EAAE8a,EAChB+5B,EAAI7S,EAAIjiC,EAAEiiC,EAAIhiC,EAAEgiC,EACT6S,GAST35C,EAAQ4kB,IAAM,SAAU/f,EAAGC,GACzB,GAAI80C,GAAM,GAAI55C,EAId,OAHA45C,GAAIrd,EAAI13B,EAAE03B,EAAIz3B,EAAEy3B,EAChBqd,EAAIh6B,EAAI/a,EAAE+a,EAAI9a,EAAE8a,EAChBg6B,EAAI9S,EAAIjiC,EAAEiiC,EAAIhiC,EAAEgiC,EACT8S,GAST55C,EAAQg1C,IAAM,SAAUnwC,EAAGC,GACzB,MAAO,IAAI9E,IAAS6E,EAAE03B,EAAIz3B,EAAEy3B,GAAK,GAAI13B,EAAE+a,EAAI9a,EAAE8a,GAAK,GAAI/a,EAAEiiC,EAAIhiC,EAAEgiC,GAAK,IAUrE9mC,EAAQq0C,aAAe,SAAUxvC,EAAGC,GAClC,GAAIsvC,GAAe,GAAIp0C,EAMvB,OAJAo0C,GAAa7X,EAAI13B,EAAE+a,EAAI9a,EAAEgiC,EAAIjiC,EAAEiiC,EAAIhiC,EAAE8a,EACrCw0B,EAAax0B,EAAI/a,EAAEiiC,EAAIhiC,EAAEy3B,EAAI13B,EAAE03B,EAAIz3B,EAAEgiC,EACrCsN,EAAatN,EAAIjiC,EAAE03B,EAAIz3B,EAAE8a,EAAI/a,EAAE+a,EAAI9a,EAAEy3B,EAE9B6X,GAOTp0C,EAAQ4R,UAAU3M,OAAS,WACzB,MAAOrB,MAAKu0C,KAAKx5C,KAAK49B,EAAI59B,KAAK49B,EAAI59B,KAAKihB,EAAIjhB,KAAKihB,EAAIjhB,KAAKmoC,EAAInoC,KAAKmoC,IAGrEtoC,EAAOD,QAAUyB,GAIb,SAASxB,EAAQD,GASrB,QAASwB,GAAQw8B,EAAG3c,GAClBjhB,KAAK49B,EAAUr3B,SAANq3B,EAAkBA,EAAI,EAC/B59B,KAAKihB,EAAU1a,SAAN0a,EAAkBA,EAAI,EAGjCphB,EAAOD,QAAUwB,GAIb,SAASvB,EAAQD,EAASM,GAgB9B,QAASgB,KACPlB,KAAKk7C,YAAc,GAAI75C,GACvBrB,KAAKm7C,eACLn7C,KAAKm7C,YAAYlL,WAAa,EAC9BjwC,KAAKm7C,YAAYjL,SAAW,EAC5BlwC,KAAKo7C,UAAY,IAEjBp7C,KAAKq7C,eAAiB,GAAIh6C,GAC1BrB,KAAKs7C,eAAiB,GAAIj6C,GAAQ,GAAM4D,KAAK6wC,GAAI,EAAG,GAEpD91C,KAAKu7C,6BAtBP,GAAIl6C,GAAUnB,EAAoB,GA+BlCgB,GAAO+R,UAAUs1B,eAAiB,SAAU3K,EAAG3c,EAAGknB,GAChDnoC,KAAKk7C,YAAYtd,EAAIA,EACrB59B,KAAKk7C,YAAYj6B,EAAIA,EACrBjhB,KAAKk7C,YAAY/S,EAAIA,EAErBnoC,KAAKu7C,8BAWPr6C,EAAO+R,UAAU8yB,eAAiB,SAAUkK,EAAYC,GACnC3pC,SAAf0pC,IACFjwC,KAAKm7C,YAAYlL,WAAaA,GAGf1pC,SAAb2pC,IACFlwC,KAAKm7C,YAAYjL,SAAWA,EACxBlwC,KAAKm7C,YAAYjL,SAAW,IAAGlwC,KAAKm7C,YAAYjL,SAAW,GAC3DlwC,KAAKm7C,YAAYjL,SAAW,GAAMjrC,KAAK6wC,KAAI91C,KAAKm7C,YAAYjL,SAAW,GAAMjrC,KAAK6wC,MAGrEvvC,SAAf0pC,GAAyC1pC,SAAb2pC,IAC9BlwC,KAAKu7C,8BAQTr6C,EAAO+R,UAAUo9B,eAAiB,WAChC,GAAImL,KAIJ,OAHAA,GAAIvL,WAAajwC,KAAKm7C,YAAYlL,WAClCuL,EAAItL,SAAWlwC,KAAKm7C,YAAYjL,SAEzBsL,GAOTt6C,EAAO+R,UAAU+yB,aAAe,SAAU1/B,GACzBC,SAAXD,IAEJtG,KAAKo7C,UAAY90C,EAKbtG,KAAKo7C,UAAY,MAAMp7C,KAAKo7C,UAAY,KACxCp7C,KAAKo7C,UAAY,IAAKp7C,KAAKo7C,UAAY,GAE3Cp7C,KAAKu7C,+BAOPr6C,EAAO+R,UAAUo3B,aAAe,WAC9B,MAAOrqC,MAAKo7C,WAOdl6C,EAAO+R,UAAUg2B,kBAAoB,WACnC,MAAOjpC,MAAKq7C,gBAOdn6C,EAAO+R,UAAUq2B,kBAAoB,WACnC,MAAOtpC,MAAKs7C,gBAOdp6C,EAAO+R,UAAUsoC,2BAA6B,WAE5Cv7C,KAAKq7C,eAAezd,EAAI59B,KAAKk7C,YAAYtd,EAAI59B,KAAKo7C,UAAYn2C,KAAKokC,IAAIrpC,KAAKm7C,YAAYlL,YAAchrC,KAAKukC,IAAIxpC,KAAKm7C,YAAYjL,UAChIlwC,KAAKq7C,eAAep6B,EAAIjhB,KAAKk7C,YAAYj6B,EAAIjhB,KAAKo7C,UAAYn2C,KAAKukC,IAAIxpC,KAAKm7C,YAAYlL,YAAchrC,KAAKukC,IAAIxpC,KAAKm7C,YAAYjL,UAChIlwC,KAAKq7C,eAAelT,EAAInoC,KAAKk7C,YAAY/S,EAAInoC,KAAKo7C,UAAYn2C,KAAKokC,IAAIrpC,KAAKm7C,YAAYjL,UAGxFlwC,KAAKs7C,eAAe1d,EAAI34B,KAAK6wC,GAAK,EAAI91C,KAAKm7C,YAAYjL,SACvDlwC,KAAKs7C,eAAer6B,EAAI,EACxBjhB,KAAKs7C,eAAenT,GAAKnoC,KAAKm7C,YAAYlL,YAG5CpwC,EAAOD,QAAUsB,GAIb,SAASrB,EAAQD,EAASM,GAa9B,QAASiB,GAAO6W,EAAM+zB,EAAQ0P,GAC5Bz7C,KAAKgY,KAAOA,EACZhY,KAAK+rC,OAASA,EACd/rC,KAAKy7C,MAAQA,EAEbz7C,KAAKoJ,MAAQ7C,OACbvG,KAAK+E,MAAQwB,OAGbvG,KAAK+X,OAAS0jC,EAAMzP,kBAAkBh0B,EAAKgf,MAAOh3B,KAAK+rC,QAGvD/rC,KAAK+X,OAAO2G,KAAK,SAAUxY,EAAGC,GAC5B,MAAOD,GAAIC,EAAI,EAAQA,EAAJD,EAAQ,GAAK,IAG9BlG,KAAK+X,OAAOzR,OAAS,GACvBtG,KAAKszC,YAAY,GAInBtzC,KAAKmmC,cAELnmC,KAAKM,QAAS,EACdN,KAAK07C,eAAiBn1C,OAElBk1C,EAAM5V,kBACR7lC,KAAKM,QAAS,EACdN,KAAK27C,oBAEL37C,KAAKM,QAAS,EAvClB,GAAIQ,GAAWZ,EAAoB,GA+CnCiB,GAAO8R,UAAU2oC,SAAW,WAC1B,MAAO57C,MAAKM,QAOda,EAAO8R,UAAU4oC,kBAAoB,WAInC,IAHA,GAAIn0C,GAAM1H,KAAK+X,OAAOzR,OAElBG,EAAI,EACDzG,KAAKmmC,WAAW1/B,IACrBA,GAGF,OAAOxB,MAAKsjB,MAAM9hB,EAAIiB,EAAM,MAO9BvG,EAAO8R,UAAUwgC,SAAW,WAC1B,MAAOzzC,MAAKy7C,MAAMxW,aAOpB9jC,EAAO8R,UAAU6oC,UAAY,WAC3B,MAAO97C,MAAK+rC,QAOd5qC,EAAO8R,UAAUygC,iBAAmB,WAClC,MAAmBntC,UAAfvG,KAAKoJ,MAEFpJ,KAAK+X,OAAO/X,KAAKoJ,OAFxB,QASFjI,EAAO8R,UAAU8oC,UAAY,WAC3B,MAAO/7C,MAAK+X,QAQd5W,EAAO8R,UAAU+oC,SAAW,SAAU5yC,GACpC,GAAIA,GAASpJ,KAAK+X,OAAOzR,OAAQ,KAAM,2BAEvC,OAAOtG,MAAK+X,OAAO3O,IAQrBjI,EAAO8R,UAAU66B,eAAiB,SAAU1kC,GAG1C,GAFc7C,SAAV6C,IAAqBA,EAAQpJ,KAAKoJ,OAExB7C,SAAV6C,EAAqB,QAEzB,IAAI+8B,EACJ,IAAInmC,KAAKmmC,WAAW/8B,GAClB+8B,EAAanmC,KAAKmmC,WAAW/8B,OACxB,CACL,GAAIqG,KACJA,GAAEs8B,OAAS/rC,KAAK+rC,OAChBt8B,EAAE1K,MAAQ/E,KAAK+X,OAAO3O,EAEtB,IAAI6yC,GAAW,GAAIn7C,GAASd,KAAKgY,MAAQwnB,OAAQ,SAAgBhuB,GAC7D,MAAOA,GAAK/B,EAAEs8B,SAAWt8B,EAAE1K,SACxBiyB,KACPmP,GAAanmC,KAAKy7C,MAAM3N,eAAemO,GAEvCj8C,KAAKmmC,WAAW/8B,GAAS+8B,EAG3B,MAAOA,IAMThlC,EAAO8R,UAAUu5B,kBAAoB,SAAUjjC,GAC7CvJ,KAAK07C,eAAiBnyC,GAQxBpI,EAAO8R,UAAUqgC,YAAc,SAAUlqC,GACvC,GAAIA,GAASpJ,KAAK+X,OAAOzR,OAAQ,KAAM,2BAEvCtG,MAAKoJ,MAAQA,EACbpJ,KAAK+E,MAAQ/E,KAAK+X,OAAO3O,IAO3BjI,EAAO8R,UAAU0oC,iBAAmB,SAAUvyC,GAC9B7C,SAAV6C,IAAqBA,EAAQ,EAEjC,IAAImhC,GAAQvqC,KAAKy7C,MAAMlR,KAEvB,IAAInhC,EAAQpJ,KAAK+X,OAAOzR,OAAQ,CACTtG,KAAK8tC,eAAe1kC,EAIlB7C,UAAnBgkC,EAAM2R,WACR3R,EAAM2R,SAAW9e,SAASM,cAAc,OACxC6M,EAAM2R,SAASptC,MAAM2/B,SAAW,WAChClE,EAAM2R,SAASptC,MAAMrC,MAAQ,OAC7B89B,EAAMjN,YAAYiN,EAAM2R,UAE1B,IAAIA,GAAWl8C,KAAK67C,mBACpBtR,GAAM2R,SAASrN,UAAY,wBAA0BqN,EAAW,IAEhE3R,EAAM2R,SAASptC,MAAMu/B,OAAS,OAC9B9D,EAAM2R,SAASptC,MAAMnG,KAAO,MAE5B,IAAIq3B,GAAKhgC,IACTkK,YAAW,WACT81B,EAAG2b,iBAAiBvyC,EAAQ,IAC3B,IACHpJ,KAAKM,QAAS,MAEdN,MAAKM,QAAS,EAGSiG,SAAnBgkC,EAAM2R,WACR3R,EAAM7lC,YAAY6lC,EAAM2R,UACxB3R,EAAM2R,SAAW31C,QAGfvG,KAAK07C,gBAAgB17C,KAAK07C,kBAIlC77C,EAAOD,QAAUuB,GAIb,SAAStB,EAAQD,EAASM,GAe9B,QAASoB,GAAO8iC,EAAWvgC,GACzB,GAAkB0C,SAAd69B,EACF,KAAM,qCAKR,IAHApkC,KAAKokC,UAAYA,EACjBpkC,KAAKizC,QAAUpvC,GAA8B0C,QAAnB1C,EAAQovC,QAAuBpvC,EAAQovC,SAAU,EAEvEjzC,KAAKizC,QAAS,CAChBjzC,KAAKuqC,MAAQnN,SAASM,cAAc,OAEpC19B,KAAKuqC,MAAMz7B,MAAM0vB,MAAQ,OACzBx+B,KAAKuqC,MAAMz7B,MAAM2/B,SAAW,WAC5BzuC,KAAKokC,UAAU9G,YAAYt9B,KAAKuqC,OAEhCvqC,KAAKuqC,MAAM4R,KAAO/e,SAASM,cAAc,SACzC19B,KAAKuqC,MAAM4R,KAAKv0C,KAAO,SACvB5H,KAAKuqC,MAAM4R,KAAKp3C,MAAQ,OACxB/E,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAM4R,MAElCn8C,KAAKuqC,MAAMqF,KAAOxS,SAASM,cAAc,SACzC19B,KAAKuqC,MAAMqF,KAAKhoC,KAAO,SACvB5H,KAAKuqC,MAAMqF,KAAK7qC,MAAQ,OACxB/E,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAMqF,MAElC5vC,KAAKuqC,MAAMjzB,KAAO8lB,SAASM,cAAc,SACzC19B,KAAKuqC,MAAMjzB,KAAK1P,KAAO,SACvB5H,KAAKuqC,MAAMjzB,KAAKvS,MAAQ,OACxB/E,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAMjzB,MAElCtX,KAAKuqC,MAAM6R,IAAMhf,SAASM,cAAc,SACxC19B,KAAKuqC,MAAM6R,IAAIx0C,KAAO,SACtB5H,KAAKuqC,MAAM6R,IAAIttC,MAAM2/B,SAAW,WAChCzuC,KAAKuqC,MAAM6R,IAAIttC,MAAMZ,OAAS,gBAC9BlO,KAAKuqC,MAAM6R,IAAIttC,MAAM0vB,MAAQ,QAC7Bx+B,KAAKuqC,MAAM6R,IAAIttC,MAAM2vB,OAAS,MAC9Bz+B,KAAKuqC,MAAM6R,IAAIttC,MAAM8qC,aAAe,MACpC55C,KAAKuqC,MAAM6R,IAAIttC,MAAMutC,gBAAkB,MACvCr8C,KAAKuqC,MAAM6R,IAAIttC,MAAMZ,OAAS,oBAC9BlO,KAAKuqC,MAAM6R,IAAIttC,MAAM87B,gBAAkB,UACvC5qC,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAM6R,KAElCp8C,KAAKuqC,MAAM+R,MAAQlf,SAASM,cAAc,SAC1C19B,KAAKuqC,MAAM+R,MAAM10C,KAAO,SACxB5H,KAAKuqC,MAAM+R,MAAMxtC,MAAMy1B,OAAS,MAChCvkC,KAAKuqC,MAAM+R,MAAMv3C,MAAQ,IACzB/E,KAAKuqC,MAAM+R,MAAMxtC,MAAM2/B,SAAW,WAClCzuC,KAAKuqC,MAAM+R,MAAMxtC,MAAMnG,KAAO,SAC9B3I,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAM+R,MAGlC,IAAItc,GAAKhgC,IACTA,MAAKuqC,MAAM+R,MAAMxN,YAAc,SAAUhkC,GACvCk1B,EAAG+O,aAAajkC,IAElB9K,KAAKuqC,MAAM4R,KAAKI,QAAU,SAAUzxC,GAClCk1B,EAAGmc,KAAKrxC,IAEV9K,KAAKuqC,MAAMqF,KAAK2M,QAAU,SAAUzxC,GAClCk1B,EAAGwc,WAAW1xC,IAEhB9K,KAAKuqC,MAAMjzB,KAAKilC,QAAU,SAAUzxC,GAClCk1B,EAAG1oB,KAAKxM,IAIZ9K,KAAKy8C,iBAAmBl2C,OAExBvG,KAAK+X,UACL/X,KAAKoJ,MAAQ7C,OAEbvG,KAAK08C,YAAcn2C,OACnBvG,KAAK28C,aAAe,IACpB38C,KAAK48C,UAAW,EAnFlB,GAAIj8C,GAAOT,EAAoB,EAyF/BoB,GAAO2R,UAAUkpC,KAAO,WACtB,GAAI/yC,GAAQpJ,KAAKqzC,UACbjqC,GAAQ,IACVA,IACApJ,KAAK68C,SAASzzC,KAOlB9H,EAAO2R,UAAUqE,KAAO,WACtB,GAAIlO,GAAQpJ,KAAKqzC,UACbjqC,GAAQpJ,KAAK+X,OAAOzR,OAAS,IAC/B8C,IACApJ,KAAK68C,SAASzzC,KAOlB9H,EAAO2R,UAAU6pC,SAAW,WAC1B,GAAInK,GAAQ,GAAIttC,MAEZ+D,EAAQpJ,KAAKqzC,UACbjqC,GAAQpJ,KAAK+X,OAAOzR,OAAS,GAC/B8C,IACApJ,KAAK68C,SAASzzC,IACLpJ,KAAK48C,WAEdxzC,EAAQ,EACRpJ,KAAK68C,SAASzzC,GAGhB,IAAIypC,GAAM,GAAIxtC,MACV6iB,EAAO2qB,EAAMF,EAIboK,EAAW93C,KAAKJ,IAAI7E,KAAK28C,aAAez0B,EAAM,GAG9C8X,EAAKhgC,IACTA,MAAK08C,YAAcxyC,WAAW,WAC5B81B,EAAG8c,YACFC,IAMLz7C,EAAO2R,UAAUupC,WAAa,WACHj2C,SAArBvG,KAAK08C,YACP18C,KAAK4vC,OAEL5vC,KAAK8vC,QAOTxuC,EAAO2R,UAAU28B,KAAO,WAElB5vC,KAAK08C,cAET18C,KAAK88C,WAED98C,KAAKuqC,QACPvqC,KAAKuqC,MAAMqF,KAAK7qC,MAAQ,UAO5BzD,EAAO2R,UAAU68B,KAAO,WACtBkN,cAAch9C,KAAK08C,aACnB18C,KAAK08C,YAAcn2C,OAEfvG,KAAKuqC,QACPvqC,KAAKuqC,MAAMqF,KAAK7qC,MAAQ,SAQ5BzD,EAAO2R,UAAUsgC,oBAAsB,SAAUhqC,GAC/CvJ,KAAKy8C,iBAAmBlzC,GAO1BjI,EAAO2R,UAAUkgC,gBAAkB,SAAU4J,GAC3C/8C,KAAK28C,aAAeI,GAOtBz7C,EAAO2R,UAAUgqC,gBAAkB,SAAUF,GAC3C,MAAO/8C,MAAK28C,cASdr7C,EAAO2R,UAAUiqC,YAAc,SAAUC,GACvCn9C,KAAK48C,SAAWO,GAMlB77C,EAAO2R,UAAUmqC,SAAW,WACI72C,SAA1BvG,KAAKy8C,kBACPz8C,KAAKy8C,oBAOTn7C,EAAO2R,UAAUw5B,OAAS,WACxB,GAAIzsC,KAAKuqC,MAAO,CAEdvqC,KAAKuqC,MAAM6R,IAAIttC,MAAMjG,IAAM7I,KAAKuqC,MAAMkF,aAAe,EAAIzvC,KAAKuqC,MAAM6R,IAAIlC,aAAe,EAAI,KAC3Fl6C,KAAKuqC,MAAM6R,IAAIttC,MAAM0vB,MAAQx+B,KAAKuqC,MAAME,YAAczqC,KAAKuqC,MAAM4R,KAAK1R,YAAczqC,KAAKuqC,MAAMqF,KAAKnF,YAAczqC,KAAKuqC,MAAMjzB,KAAKmzB,YAAc,GAAK,IAGrJ,IAAI9hC,GAAO3I,KAAKq9C,YAAYr9C,KAAKoJ,MACjCpJ,MAAKuqC,MAAM+R,MAAMxtC,MAAMnG,KAAOA,EAAO,OAQzCrH,EAAO2R,UAAUigC,UAAY,SAAUn7B,GACrC/X,KAAK+X,OAASA,EAEV/X,KAAK+X,OAAOzR,OAAS,EAAGtG,KAAK68C,SAAS,GAAQ78C,KAAKoJ,MAAQ7C,QAOjEjF,EAAO2R,UAAU4pC,SAAW,SAAUzzC,GACpC,KAAIA,EAAQpJ,KAAK+X,OAAOzR,QAMtB,KAAM,2BALNtG,MAAKoJ,MAAQA,EAEbpJ,KAAKysC,SACLzsC,KAAKo9C,YAUT97C,EAAO2R,UAAUogC,SAAW,WAC1B,MAAOrzC,MAAKoJ,OAOd9H,EAAO2R,UAAU+jB,IAAM,WACrB,MAAOh3B,MAAK+X,OAAO/X,KAAKoJ,QAG1B9H,EAAO2R,UAAU87B,aAAe,SAAUjkC,GAExC,GAAIyrC,GAAiBzrC,EAAM2rC,MAAwB,IAAhB3rC,EAAM2rC,MAA+B,IAAjB3rC,EAAM4rC,MAC7D,IAAKH,EAAL,CAEAv2C,KAAKs9C,aAAexyC,EAAM+8B,QAC1B7nC,KAAKu9C,YAAcnzB,WAAWpqB,KAAKuqC,MAAM+R,MAAMxtC,MAAMnG,MAErD3I,KAAKuqC,MAAMz7B,MAAMmoC,OAAS,MAK1B,IAAIjX,GAAKhgC,IACTA,MAAKk3C,YAAc,SAAUpsC,GAC3Bk1B,EAAGmX,aAAarsC,IAElB9K,KAAKo3C,UAAY,SAAUtsC,GACzBk1B,EAAGwW,WAAW1rC,IAEhBnK,EAAKwJ,iBAAiBizB,SAAU,YAAap9B,KAAKk3C,aAClDv2C,EAAKwJ,iBAAiBizB,SAAU,UAAWp9B,KAAKo3C,WAChDz2C,EAAKkK,eAAeC,KAGtBxJ,EAAO2R,UAAUuqC,YAAc,SAAU70C,GACvC,GAAI61B,GAAQpU,WAAWpqB,KAAKuqC,MAAM6R,IAAIttC,MAAM0vB,OAASx+B,KAAKuqC,MAAM+R,MAAM7R,YAAc,GAChF7M,EAAIj1B,EAAO,EAEXS,EAAQnE,KAAKsjB,MAAMqV,EAAIY,GAASx+B,KAAK+X,OAAOzR,OAAS,GAIzD,OAHY,GAAR8C,IAAWA,EAAQ,GACnBA,EAAQpJ,KAAK+X,OAAOzR,OAAS,IAAG8C,EAAQpJ,KAAK+X,OAAOzR,OAAS,GAE1D8C,GAGT9H,EAAO2R,UAAUoqC,YAAc,SAAUj0C,GACvC,GAAIo1B,GAAQpU,WAAWpqB,KAAKuqC,MAAM6R,IAAIttC,MAAM0vB,OAASx+B,KAAKuqC,MAAM+R,MAAM7R,YAAc,GAEhF7M,EAAIx0B,GAASpJ,KAAK+X,OAAOzR,OAAS,GAAKk4B,EACvC71B,EAAOi1B,EAAI,CAEf,OAAOj1B,IAGTrH,EAAO2R,UAAUkkC,aAAe,SAAUrsC,GACxC,GAAIod,GAAOpd,EAAM+8B,QAAU7nC,KAAKs9C,aAC5B1f,EAAI59B,KAAKu9C,YAAcr1B,EAEvB9e,EAAQpJ,KAAKw9C,YAAY5f,EAE7B59B,MAAK68C,SAASzzC,GAEdzI,EAAKkK,kBAGPvJ,EAAO2R,UAAUujC,WAAa,SAAU1rC,GACtC9K,KAAKuqC,MAAMz7B,MAAMmoC,OAAS,OAG1Bt2C,EAAKgK,oBAAoByyB,SAAU,YAAap9B,KAAKk3C,aACrDv2C,EAAKgK,oBAAoByyB,SAAU,UAAWp9B,KAAKo3C,WAEnDz2C,EAAKkK,kBAGPhL,EAAOD,QAAU0B,GAIb,SAASzB,EAAQD,GA6BrB,QAAS2B,GAAWoxC,EAAOE,EAAKH,EAAMiB,GAEpC3zC,KAAKy9C,OAAS,EACdz9C,KAAK09C,KAAO,EACZ19C,KAAK29C,MAAQ,EACb39C,KAAK2zC,YAAa,EAClB3zC,KAAK49C,UAAY,EAEjB59C,KAAK69C,SAAW,EAChB79C,KAAK89C,SAASnL,EAAOE,EAAKH,EAAMiB,GAYlCpyC,EAAW0R,UAAU6qC,SAAW,SAAUnL,EAAOE,EAAKH,EAAMiB,GAC1D3zC,KAAKy9C,OAAS9K,EAAQA,EAAQ,EAC9B3yC,KAAK09C,KAAO7K,EAAMA,EAAM,EAExB7yC,KAAK+9C,QAAQrL,EAAMiB,IASrBpyC,EAAW0R,UAAU8qC,QAAU,SAAUrL,EAAMiB,GAChCptC,SAATmsC,GAA8B,GAARA,IAEPnsC,SAAfotC,IAA0B3zC,KAAK2zC,WAAaA,GAE5C3zC,KAAK2zC,cAAe,EAAM3zC,KAAK29C,MAAQp8C,EAAWy8C,oBAAoBtL,GAAW1yC,KAAK29C,MAAQjL,IAUpGnxC,EAAWy8C,oBAAsB,SAAUtL,GACzC,GAAIuL,GAAQ,SAAergB,GACzB,MAAO34B,MAAKi5C,IAAItgB,GAAK34B,KAAKk5C,MAIxBC,EAAQn5C,KAAK8U,IAAI,GAAI9U,KAAKsjB,MAAM01B,EAAMvL,KACtC2L,EAAQ,EAAIp5C,KAAK8U,IAAI,GAAI9U,KAAKsjB,MAAM01B,EAAMvL,EAAO,KACjD4L,EAAQ,EAAIr5C,KAAK8U,IAAI,GAAI9U,KAAKsjB,MAAM01B,EAAMvL,EAAO,KAGjDiB,EAAayK,CASjB,OARIn5C,MAAK8R,IAAIsnC,EAAQ3L,IAASztC,KAAK8R,IAAI48B,EAAajB,KAAOiB,EAAa0K,GACpEp5C,KAAK8R,IAAIunC,EAAQ5L,IAASztC,KAAK8R,IAAI48B,EAAajB,KAAOiB,EAAa2K,GAGtD,GAAd3K,IACFA,EAAa,GAGRA,GAOTpyC,EAAW0R,UAAU2/B,WAAa,WAChC,MAAOxoB,YAAWpqB,KAAK69C,SAASU,YAAYv+C,KAAK49C,aAOnDr8C,EAAW0R,UAAUurC,QAAU,WAC7B,MAAOx+C,MAAK29C,OAOdp8C,EAAW0R,UAAU0/B,MAAQ,WAC3B3yC,KAAK69C,SAAW79C,KAAKy9C,OAASz9C,KAAKy9C,OAASz9C,KAAK29C,OAMnDp8C,EAAW0R,UAAUqE,KAAO,WAC1BtX,KAAK69C,UAAY79C,KAAK29C,OAOxBp8C,EAAW0R,UAAU4/B,IAAM,WACzB,MAAO7yC,MAAK69C,SAAW79C,KAAK09C,MAG9B79C,EAAOD,QAAU2B,GAIb,SAAS1B,EAAQD,EAASM,GAgC9B,QAASsB,GAAS4iC,EAAWniC,EAAOw8C,EAAQ56C,GAC1C,KAAM7D,eAAgBwB,IACpB,KAAM,IAAI6iC,aAAY,mDAIxB,MAAMv9B,MAAMC,QAAQ03C,IAAWA,YAAkB59C,IAAW49C,YAAkB39C,KAAa29C,YAAkBr3C,QAAQ,CACnH,GAAIs3C,GAAgB76C,CACpBA,GAAU46C,EACVA,EAASC,EAGX,GAAI1e,GAAKhgC,IACTA,MAAK2+C,gBACHhM,MAAO,KACPE,IAAK,KAEL+L,YAAY,EACZC,eAAgB,EAEhBC,aACEC,KAAM,SACNvtC,KAAM,UAGRzN,OAAQA,EAERy6B,MAAO,KACPC,OAAQ,KACRugB,UAAW,KACXC,UAAW,MAEbj/C,KAAK6D,QAAUlD,EAAK0G,cAAerH,KAAK2+C,gBAGxC3+C,KAAKk/C,QAAQ9a,GAGbpkC,KAAKgC,cAELhC,KAAKm/C,MACHxF,IAAK35C,KAAK25C,IACVyF,SAAUp/C,KAAK6G,MACfw4C,SACEjgB,GAAIp/B,KAAKo/B,GAAGkgB,KAAKt/C,MACjBu/B,IAAKv/B,KAAKu/B,IAAI+f,KAAKt/C,MACnB43C,KAAM53C,KAAK43C,KAAK0H,KAAKt/C,OAEvBu/C,eACA5+C,MACE6+C,SAAU,WACR,MAAOxf,GAAGyf,SAAS/M,KAAK1tC,OAE1Bw5C,QAAS,WACP,MAAOxe,GAAGyf,SAAS/M,KAAKA,MAG1BgN,SAAU1f,EAAG2f,UAAUL,KAAKtf,GAC5B4f,eAAgB5f,EAAG6f,gBAAgBP,KAAKtf,GACxC8f,OAAQ9f,EAAG+f,QAAQT,KAAKtf,GACxBggB,aAAchgB,EAAGigB,cAAcX,KAAKtf,KAKxChgC,KAAKkgD,MAAQ,GAAIr+C,GAAM7B,KAAKm/C,MAC5Bn/C,KAAKgC,WAAWwF,KAAKxH,KAAKkgD,OAC1BlgD,KAAKm/C,KAAKe,MAAQlgD,KAAKkgD,MAGvBlgD,KAAKy/C,SAAW,GAAIv8C,GAASlD,KAAKm/C,MAClCn/C,KAAKmgD,UAAY,KACjBngD,KAAKgC,WAAWwF,KAAKxH,KAAKy/C,UAG1Bz/C,KAAKogD,YAAc,GAAI39C,GAAYzC,KAAKm/C,MACxCn/C,KAAKgC,WAAWwF,KAAKxH,KAAKogD,aAG1BpgD,KAAKqgD,QAAU,GAAIt9C,GAAQ/C,KAAKm/C,MAChCn/C,KAAKgC,WAAWwF,KAAKxH,KAAKqgD,SAE1BrgD,KAAKsgD,UAAY,KACjBtgD,KAAKugD,WAAa,KAElBvgD,KAAKo/B,GAAG,MAAO,SAAUt0B,GACvBk1B,EAAG4X,KAAK,QAAS5X,EAAGwgB,mBAAmB11C,MAEzC9K,KAAKo/B,GAAG,YAAa,SAAUt0B,GAC7Bk1B,EAAG4X,KAAK,cAAe5X,EAAGwgB,mBAAmB11C,MAE/C9K,KAAK25C,IAAIj6C,KAAK+gD,cAAgB,SAAU31C,GACtCk1B,EAAG4X,KAAK,cAAe5X,EAAGwgB,mBAAmB11C,KAI/C9K,KAAK0gD,SAAU,EACf1gD,KAAKo/B,GAAG,UAAW,WACjB,GAAsB,MAAlBp/B,KAAKsgD,YACJtgB,EAAG0gB,QAEN,GADA1gB,EAAG0gB,SAAU,EACWn6C,QAApBy5B,EAAGn8B,QAAQ8uC,OAAwCpsC,QAAlBy5B,EAAGn8B,QAAQgvC,IAAkB,CAChE,GAAwBtsC,QAApBy5B,EAAGn8B,QAAQ8uC,OAAwCpsC,QAAlBy5B,EAAGn8B,QAAQgvC,IAC9C,GAAIqN,GAAQlgB,EAAG2gB,cAGjB,IAAIhO,GAA4BpsC,QAApBy5B,EAAGn8B,QAAQ8uC,MAAqB3S,EAAGn8B,QAAQ8uC,MAAQuN,EAAMt7C,IACjEiuC,EAAwBtsC,QAAlBy5B,EAAGn8B,QAAQgvC,IAAmB7S,EAAGn8B,QAAQgvC,IAAMqN,EAAMr7C,GAE/Dm7B,GAAG4gB,UAAUjO,EAAOE,GAAOgO,WAAW,QAEtC7gB,GAAG8gB,KAAMD,WAAW,MAMtBh9C,GACF7D,KAAKg/B,WAAWn7B,GAId46C,GACFz+C,KAAK+gD,UAAUtC,GAIbx8C,GACFjC,KAAKghD,SAAS/+C,GAIhBjC,KAAKihD,UAhKP,GAEIl9C,IAFU7D,EAAoB,IACrBA,EAAoB,IACpBA,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/B2B,EAAQ3B,EAAoB,IAC5ByB,EAAOzB,EAAoB,IAC3BgD,EAAWhD,EAAoB,IAC/BuC,EAAcvC,EAAoB,IAClCwC,EAAaxC,EAAoB,IACjC6C,EAAU7C,EAAoB,IAE9BghD,EAAehhD,EAAoB,IACnCihD,EAAYjhD,EAAoB,IAAI,WACpCkhD,EAAalhD,EAAoB,IAAIkhD,WACrC59C,EAAatD,EAAoB,IAAIsD,WACrC69C,EAAmBnhD,EAAoB,IAAImhD,gBAmJ/C7/C,GAASyR,UAAY,GAAItR,GAOzBH,EAASyR,UAAUquC,oBAAsB,WACvC,MAAO,IAAIJ,GAAalhD,KAAMA,KAAK25C,IAAIvV,UAAWid,IAUpD7/C,EAASyR,UAAUw5B,OAAS,WAC1BzsC,KAAKqgD,SAAWrgD,KAAKqgD,QAAQkB,WAAYC,cAAc,IACvDxhD,KAAKihD,WAGPz/C,EAASyR,UAAU+rB,WAAa,SAAUn7B,GAExC,GAAI49C,GAAaN,EAAUO,SAAS79C,EAASL,EAO7C,IANIi+C,KAAe,GACjB9hC,QAAQu+B,IAAI,2DAA4DkD,GAG1Ez/C,EAAKsR,UAAU+rB,WAAWz+B,KAAKP,KAAM6D,GAEjC,QAAUA,IACRA,EAAQ+D,OAAS5H,KAAK6D,QAAQ+D,KAAM,CACtC5H,KAAK6D,QAAQ+D,KAAO/D,EAAQ+D,IAG5B,IAAI04C,GAAYtgD,KAAKsgD,SACrB,IAAIA,EAAW,CACb,GAAIqB,GAAY3hD,KAAK4hD,cACrB5hD,MAAKghD,SAAS,MACdhhD,KAAKghD,SAASV,GACdtgD,KAAK6hD,aAAaF,MAU1BngD,EAASyR,UAAU+tC,SAAW,SAAU/+C,GAEtC,GAAI6/C,EAIFA,GAHG7/C,EAEMA,YAAiBpB,IAAWoB,YAAiBnB,GACzCmB,EAGA,GAAIpB,GAAQoB,GACvB2F,MACE+qC,MAAO,OACPE,IAAK,UARI,KAcf7yC,KAAKsgD,UAAYwB,EACjB9hD,KAAKqgD,SAAWrgD,KAAKqgD,QAAQW,SAASc,IAOxCtgD,EAASyR,UAAU8tC,UAAY,SAAUtC,GAEvC,GAAIqD,EAIFA,GAHGrD,EAEMA,YAAkB59C,IAAW49C,YAAkB39C,GAC3C29C,EAGA,GAAI59C,GAAQ49C,GALZ,KAQfz+C,KAAKugD,WAAauB,EAClB9hD,KAAKqgD,QAAQU,UAAUe,IAOzBtgD,EAASyR,UAAUwwB,QAAU,SAAUzrB,GACjCA,GAAQA,EAAKymC,QACfz+C,KAAK+gD,UAAU/oC,EAAKymC,QAGlBzmC,GAAQA,EAAK/V,OACfjC,KAAKghD,SAAShpC,EAAK/V,QAqBvBT,EAASyR,UAAU4uC,aAAe,SAAUphB,EAAK58B,GAC/C7D,KAAKqgD,SAAWrgD,KAAKqgD,QAAQwB,aAAaphB,GAEtC58B,GAAWA,EAAQk+C,OACrB/hD,KAAK+hD,MAAMthB,EAAK58B,IAQpBrC,EAASyR,UAAU2uC,aAAe,WAChC,MAAO5hD,MAAKqgD,SAAWrgD,KAAKqgD,QAAQuB,oBAetCpgD,EAASyR,UAAU8uC,MAAQ,SAAU1hD,EAAIwD,GACvC,GAAK7D,KAAKsgD,WAAmB/5C,QAANlG,EAAvB,CAEA,GAAIogC,GAAM35B,MAAMC,QAAQ1G,GAAMA,GAAMA,GAGhCigD,EAAYtgD,KAAKsgD,UAAUjf,aAAarK,IAAIyJ,GAC9C74B,MACE+qC,MAAO,OACPE,IAAK,UAKLF,EAAQ,KACRE,EAAM,IAcV,IAbAyN,EAAUh3C,QAAQ,SAAU04C,GAC1B,GAAIr0C,GAAIq0C,EAASrP,MAAM7qC,UACnB0D,EAAI,OAASw2C,GAAWA,EAASnP,IAAI/qC,UAAYk6C,EAASrP,MAAM7qC,WAEtD,OAAV6qC,GAAsBA,EAAJhlC,KACpBglC,EAAQhlC,IAGE,OAARklC,GAAgBrnC,EAAIqnC,KACtBA,EAAMrnC,KAII,OAAVmnC,GAA0B,OAARE,EAAc,CAElC,GAAIthC,IAAUohC,EAAQE,GAAO,EACzBkK,EAAW93C,KAAKJ,IAAI7E,KAAKkgD,MAAMrN,IAAM7yC,KAAKkgD,MAAMvN,MAAuB,KAAfE,EAAMF,IAE9DkO,EAAYh9C,GAAiC0C,SAAtB1C,EAAQg9C,UAA0Bh9C,EAAQg9C,WAAY,CACjF7gD,MAAKkgD,MAAMpC,SAASvsC,EAASwrC,EAAW,EAAGxrC,EAASwrC,EAAW,EAAG8D,MActEr/C,EAASyR,UAAU6tC,IAAM,SAAUj9C,GACjC,GAAIg9C,GAAYh9C,GAAiC0C,SAAtB1C,EAAQg9C,UAA0Bh9C,EAAQg9C,WAAY,EAC7EX,EAAQlgD,KAAK2gD,cACjB3gD,MAAKkgD,MAAMpC,SAASoC,EAAMt7C,IAAKs7C,EAAMr7C,IAAKg8C,IAQ5Cr/C,EAASyR,UAAU0tC,aAAe,WAChC,GAAIsB,GAAQjiD,KAGRkgD,EAAQlgD,KAAKkiD,eACbt9C,EAAoB,OAAds7C,EAAMt7C,IAAes7C,EAAMt7C,IAAIkD,UAAY,KACjDjD,EAAoB,OAAdq7C,EAAMr7C,IAAeq7C,EAAMr7C,IAAIiD,UAAY,KACjDq6C,EAAU,KACVC,EAAU,IAEd,IAAW,MAAPx9C,GAAsB,MAAPC,EAAa,CAC9B,GAAIk4C,GACAsF,EACAC,EACAC,EACAx2B,GAEJ,WACE,GAAIy2B,GAAW,SAAkBhxC,GAC/B,MAAO7Q,GAAKgH,QAAQ6J,EAAKwG,KAAK26B,MAAO,QAAQ7qC,WAG3C26C,EAAS,SAAgBjxC,GAC3B,GAAIqhC,GAAuBtsC,QAAjBiL,EAAKwG,KAAK66B,IAAmBrhC,EAAKwG,KAAK66B,IAAMrhC,EAAKwG,KAAK26B,KACjE,OAAOhyC,GAAKgH,QAAQkrC,EAAK,QAAQ/qC,UAMnCi1C,GAAWl4C,EAAMD,EAED,GAAZm4C,IACFA,EAAW,IAEbsF,EAAStF,EAAWkF,EAAMp7C,MAAMuvC,OAAO5X,MACvC79B,EAAK2I,QAAQ24C,EAAM5B,QAAQp+C,MAAO,SAAWuP,GAC3CA,EAAKkxC,OACLlxC,EAAKmxC,aAEL,IAAIhQ,GAAQ6P,EAAShxC,GACjBqhC,EAAM4P,EAAOjxC,GAEb7I,EAAOgqC,GAASnhC,EAAKoxC,eAAiB,IAAMP,EAC5CzQ,EAAQiB,GAAOrhC,EAAKqxC,gBAAkB,IAAMR,CAErCz9C,GAAP+D,IACF/D,EAAM+D,EACNw5C,EAAU3wC,GAERogC,EAAQ/sC,IACVA,EAAM+sC,EACNwQ,EAAU5wC,IAEX8tC,KAAK2C,IAEJE,GAAWC,IACbE,EAAMH,EAAQS,eAAiB,GAC/BL,EAAMH,EAAQS,gBAAkB,GAChC92B,EAAQk2B,EAAMp7C,MAAMuvC,OAAO5X,MAAQ8jB,EAAMC,EAGrCx2B,EAAQ,IACVnnB,EAAM49C,EAASL,GAAWG,EAAMvF,EAAWhxB,EAC3ClnB,EAAM49C,EAAOL,GAAWG,EAAMxF,EAAWhxB,OAMjD,OACEnnB,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAQvCrD,EAASyR,UAAUivC,aAAe,WAChC,GAAIt9C,GAAM,KACNC,EAAM,KAENi+C,EAAU9iD,KAAKsgD,WAAatgD,KAAKsgD,UAAUjf,YAc/C,OAbIyhB,IACFA,EAAQx5C,QAAQ,SAAUkI,GACxB,GAAImhC,GAAQhyC,EAAKgH,QAAQ6J,EAAKmhC,MAAO,QAAQ7qC,UACzC+qC,EAAMlyC,EAAKgH,QAAoBpB,QAAZiL,EAAKqhC,IAAmBrhC,EAAKqhC,IAAMrhC,EAAKmhC,MAAO,QAAQ7qC,WAClE,OAARlD,GAAwBA,EAAR+tC,KAClB/tC,EAAM+tC,IAEI,OAAR9tC,GAAgBguC,EAAMhuC,KACxBA,EAAMguC,MAMVjuC,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAUvCrD,EAASyR,UAAUutC,mBAAqB,SAAU11C,GAChD,GAAI+8B,GAAU/8B,EAAMsrC,OAAStrC,EAAMsrC,OAAOxY,EAAI9yB,EAAM+8B,QAChDG,EAAUl9B,EAAMsrC,OAAStrC,EAAMsrC,OAAOn1B,EAAInW,EAAMk9B,QAChDpK,EAAIiK,EAAUlnC,EAAK6H,gBAAgBxI,KAAK25C,IAAIoJ,iBAC5C9hC,EAAI+mB,EAAUrnC,EAAKiI,eAAe5I,KAAK25C,IAAIoJ,iBAE3CvxC,EAAOxR,KAAKqgD,QAAQ2C,eAAel4C,GACnCm4C,EAAQjjD,KAAKqgD,QAAQ6C,gBAAgBp4C,GACrCq4C,EAAazgD,EAAW0gD,qBAAqBt4C,GAE7Cu4C,EAAOrjD,KAAKqgD,QAAQx8C,QAAQw/C,MAAQ,KACpCr+C,EAAQhF,KAAKm/C,KAAKx+C,KAAK6+C,WACvB9M,EAAO1yC,KAAKm/C,KAAKx+C,KAAK69C,UACtBxzB,EAAOhrB,KAAK+/C,QAAQniB,GACpB0lB,EAAcD,EAAOA,EAAKr4B,EAAMhmB,EAAO0tC,GAAQ1nB,EAE/C5gB,EAAUzJ,EAAKsK,UAAUH,GACzBy4C,EAAO,IAiBX,OAhBY,OAAR/xC,EACF+xC,EAAO,OACgB,MAAdJ,EACTI,EAAO,cACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKy/C,SAAS9F,IAAI6J,YACnDD,EAAO,OACEvjD,KAAKmgD,WAAax/C,EAAK2K,UAAUlB,EAASpK,KAAKmgD,UAAUxG,IAAI6J,YACtED,EAAO,OACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKqgD,QAAQ1G,IAAI8J,UAClDF,EAAO,cACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKogD,YAAYhE,KAClDmH,EAAO,eACE5iD,EAAK2K,UAAUlB,EAASpK,KAAK25C,IAAIvD,UAC1CmN,EAAO,eAIPz4C,MAAOA,EACP0G,KAAMA,EAAOA,EAAKnR,GAAK,KACvB4iD,MAAOA,EAAQA,EAAMS,QAAU,KAC/BH,KAAMA,EACNI,MAAO74C,EAAM84C,SAAW94C,EAAM84C,SAASD,MAAQ74C,EAAM64C,MACrDE,MAAO/4C,EAAM84C,SAAW94C,EAAM84C,SAASC,MAAQ/4C,EAAM+4C,MACrDjmB,EAAGA,EACH3c,EAAGA,EACH+J,KAAMA,EACNs4B,YAAaA,IAIjBzjD,EAAOD,QAAU4B,GAIb,SAAS3B,EAAQD,EAASM,GAM9B,GAAsB,mBAAX6K,QAAwB,CACjC,GAAI+4C,GAAc5jD,EAAoB,IAClC8D,EAAS+G,OAAe,QAAK7K,EAAoB,GACrDL,GAAOD,QAAUkkD,EAAY9/C,GAC3B6G,eAAgB,cAGlBhL,GAAOD,QAAU,WACf,KAAMoH,OAAM,+DAMZ,SAASnH,EAAQD,EAASM,GAE9B,GAAI6jD,GAAgCC,EAA8BC,GAEjE,SAAUtkD,GAGLqkD,KAAmCD,EAAiC,EAAWE,EAA2E,kBAAnCF,GAAiDA,EAA+BhxC,MAAMnT,EAASokD,GAAiCD,IAAmEx9C,SAAlC09C,IAAgDpkD,EAAOD,QAAUqkD,KAU7V,WACA,GAAIC,GAAe,IAyBnB,OAAO,SAASJ,GAAYK,EAAQtgD,GAgIlC,QAASoF,GAAMm7C,GACb,MAAOA,GAAO9+C,MAAM,UAOtB,QAAS++C,GAAkBv5C,GAEzB,GAAmB,iBAAfA,EAAMlD,KAAyB,CAOjC,GAJKkD,EAAM84C,SAASU,WAClBx5C,EAAM84C,SAASU,aAGbx5C,EAAM84C,SAASU,SAASx5C,EAAMlD,MAChC,MAGAkD,GAAM84C,SAASU,SAASx5C,EAAMlD,OAAQ,EAK1C,GAAI28C,IAAU,CACdz5C,GAAM05C,gBAAkB,WACtBD,GAAU,EAIZ,IAAIE,GAAU35C,EAAM84C,SAASY,eACR,mBAAXC,KACR35C,EAAM84C,SAASY,gBAAkB,WAC/BC,IACA35C,EAAM05C,oBAKV15C,EAAM45C,YAAcR,CAIpB,KADA,GAAIz7C,GAAOy7C,EACJz7C,IAAS87C,GAAS,CACvB,GAAII,GAAal8C,EAAK07C,MACtB,IAAGQ,EAED,IAAI,GADAC,GACIp0C,EAAI,EAAGA,EAAIm0C,EAAWr+C,OAAQkK,IAEpC,GADAo0C,EAAYD,EAAWn0C,GAAGo0C,UAAU95C,EAAMlD,MAC5B,IAAK,GAAInB,GAAI,EAAGA,EAAIm+C,EAAUt+C,SAAWi+C,EAAS99C,IAC9Dm+C,EAAUn+C,GAAGqE,EAInBrC,GAAOA,EAAK4C,YAvLhB,GAAIszB,GAAW96B,IACbgH,gBAAgB,EAGlB,IAAIs5C,EAAOU,QAAS,CAGlB,GAAI7gD,GAASmgD,EAETW,EAAoB,SAAS16C,EAASvG,GACxC,GAAIkhD,GAAI39C,OAAOgJ,OAAOuuB,EAEtB,OADI96B,IAASG,EAAOghD,OAAOD,EAAGlhD,GACvBigD,EAAY,GAAI9/C,GAAOoG,EAAS26C,GAAIA,GAU7C,OARA/gD,GAAOghD,OAAOF,EAAmB9gD,GAEjC8gD,EAAkBD,QAAU,SAAUz6C,EAASvG,GAC7C,GAAIkhD,GAAI39C,OAAOgJ,OAAOuuB,EAEtB,OADI96B,IAASG,EAAOghD,OAAOD,EAAGlhD,GACvBigD,EAAY,GAAI9/C,GAAO6gD,QAAQz6C,EAAS26C,GAAIA,IAG9CD,EAKT,GAAIG,GAAU79C,OAAOgJ,OAAO+zC,GAGxB/5C,EAAU+5C,EAAO/5C,OA6JrB,OA3JIA,GAAQ+5C,SAAQ/5C,EAAQ+5C,WAC5B/5C,EAAQ+5C,OAAO38C,KAAKy9C,GAIpBd,EAAO/kB,GAAG,eAAgB,SAAUt0B,IAC9B6zB,EAAS9zB,kBAAmB,GAAS8zB,EAAS9zB,iBAAmBC,EAAMo6C,cACzEp6C,EAAMD,iBAEJC,EAAMq6C,UACRjB,EAAep5C,EAAMI,UAKzB+5C,EAAQL,aAQRK,EAAQ7lB,GAAK,SAAUglB,EAAQgB,GAa7B,MAXAn8C,GAAMm7C,GAAQ96C,QAAQ,SAAUwB,GAC9B,GAAI85C,GAAYK,EAAQL,UAAU95C,EAC7B85C,KACHK,EAAQL,UAAU95C,GAAS85C,KAG3BT,EAAO/kB,GAAGt0B,EAAOu5C,IAEnBO,EAAUp9C,KAAK49C,KAGVH,GAWTA,EAAQ1lB,IAAM,SAAU6kB,EAAQgB,GAoB9B,MAlBAn8C,GAAMm7C,GAAQ96C,QAAQ,SAAUwB,GAC9B,GAAI85C,GAAYK,EAAQL,UAAU95C,EAC9B85C,KACFA,EAAYQ,EAAUR,EAAUplB,OAAO,SAAU9xB,GAC/C,MAAOA,KAAM03C,OAGXR,EAAUt+C,OAAS,EACrB2+C,EAAQL,UAAU95C,GAAS85C,GAI3BT,EAAO5kB,IAAIz0B,EAAOu5C,SACXY,GAAQL,UAAU95C,OAKxBm6C,GAQTA,EAAQrN,KAAO,SAASyN,EAAWv6C,GACjCo5C,EAAep5C,EAAMI,OACrBi5C,EAAOvM,KAAKyN,EAAWv6C,IAGzBm6C,EAAQ9lB,QAAU,WAEhB,GAAImmB,GAAUnB,EAAO/5C,QAAQ+5C,OACzBoB,EAAMD,EAAQ/9C,QAAQ09C,EACf,MAARM,GAAYD,EAAQj8C,OAAOk8C,EAAI,GAC9BD,EAAQh/C,cAAe69C,GAAO/5C,QAAQ+5C,OAG1Cc,EAAQL,aAGRT,EAAOhlB,WAgEF8lB,MAOP,SAASplD,EAAQD,EAASM,GAE9B,GAAI+jD,IAKJ,SAAUl5C,EAAQqyB,EAAUooB,EAAYj/C,GAmBxC,QAASk/C,GAAkB57C,EAAIE,EAASq5B,GACpC,MAAOl5B,YAAWw7C,EAAO77C,EAAIu5B,GAAUr5B,GAY3C,QAAS47C,GAAeC,EAAK/7C,EAAIu5B,GAC7B,MAAIt8B,OAAMC,QAAQ6+C,IACdC,EAAKD,EAAKxiB,EAAQv5B,GAAKu5B,IAChB,IAEJ,EASX,QAASyiB,GAAK//C,EAAKggD,EAAU1iB,GACzB,GAAI38B,EAEJ,IAAKX,EAIL,GAAIA,EAAIwD,QACJxD,EAAIwD,QAAQw8C,EAAU1iB,OACnB,IAAIt9B,EAAIQ,SAAWC,EAEtB,IADAE,EAAI,EACGA,EAAIX,EAAIQ,QACXw/C,EAASvlD,KAAK6iC,EAASt9B,EAAIW,GAAIA,EAAGX,GAClCW,QAGJ,KAAKA,IAAKX,GACNA,EAAIE,eAAeS,IAAMq/C,EAASvlD,KAAK6iC,EAASt9B,EAAIW,GAAIA,EAAGX,GAYvE,QAAS8Z,GAAUujB,EAAQ3rB,EAAMuuC,GAC7B,GAAIC,GAAqB,sBAAwBxuC,EAAO,KAAOuuC,EAAU,QACzE,OAAO,YACH,GAAIv6C,GAAI,GAAIxE,OAAM,mBACdlF,EAAQ0J,GAAKA,EAAE1J,MAAQ0J,EAAE1J,MAAMqK,QAAQ,kBAAmB,IACzDA,QAAQ,cAAe,IACvBA,QAAQ,6BAA8B,kBAAoB,sBAE3D+xC,EAAMnzC,EAAO4U,UAAY5U,EAAO4U,QAAQH,MAAQzU,EAAO4U,QAAQu+B,IAInE,OAHIA,IACAA,EAAI39C,KAAKwK,EAAO4U,QAASqmC,EAAoBlkD,GAE1CqhC,EAAOpwB,MAAM/S,KAAMqG,YAwElC,QAAS4/C,GAAQC,EAAO57B,EAAM67B,GAC1B,GACIC,GADAC,EAAQ/7B,EAAKrX,SAGjBmzC,GAASF,EAAMjzC,UAAY7L,OAAOgJ,OAAOi2C,GACzCD,EAAOj/C,YAAc++C,EACrBE,EAAOE,OAASD,EAEZF,GACAnB,GAAOoB,EAAQD,GAUvB,QAAST,GAAO77C,EAAIu5B,GAChB,MAAO,YACH,MAAOv5B,GAAGkJ,MAAMqwB,EAAS/8B,YAWjC,QAASkgD,GAASlxC,EAAKkR,GACnB,aAAWlR,IAAOmxC,GACPnxC,EAAItC,MAAMwT,EAAOA,EAAK,IAAMhgB,EAAYA,EAAWggB,GAEvDlR,EASX,QAASoxC,GAAYC,EAAMC,GACvB,MAAQD,KAASngD,EAAaogD,EAAOD,EASzC,QAASE,GAAkB17C,EAAQo3B,EAAO8iB,GACtCS,EAAKgB,EAASvkB,GAAQ,SAAS16B,GAC3BsD,EAAOf,iBAAiBvC,EAAMw9C,GAAS,KAU/C,QAAS0B,GAAqB57C,EAAQo3B,EAAO8iB,GACzCS,EAAKgB,EAASvkB,GAAQ,SAAS16B,GAC3BsD,EAAOP,oBAAoB/C,EAAMw9C,GAAS,KAWlD,QAAS95C,GAAUswB,EAAMrwB,GACrB,KAAOqwB,GAAM,CACT,GAAIA,GAAQrwB,EACR,OAAO,CAEXqwB,GAAOA,EAAKvwB,WAEhB,OAAO,EASX,QAAS07C,GAAMC,EAAKC,GAChB,MAAOD,GAAIz/C,QAAQ0/C,GAAQ,GAQ/B,QAASJ,GAASG,GACd,MAAOA,GAAIj4C,OAAO9F,MAAM,QAU5B,QAASi+C,GAAQC,EAAKF,EAAMG,GACxB,GAAID,EAAI5/C,UAAY6/C,EAChB,MAAOD,GAAI5/C,QAAQ0/C,EAGnB,KADA,GAAIxgD,GAAI,EACDA,EAAI0gD,EAAI7gD,QAAQ,CACnB,GAAK8gD,GAAaD,EAAI1gD,GAAG2gD,IAAcH,IAAWG,GAAaD,EAAI1gD,KAAOwgD,EACtE,MAAOxgD,EAEXA,KAEJ,MAAO,GASf,QAAS+C,GAAQ1D,GACb,MAAOgB,OAAMmM,UAAU/F,MAAM3M,KAAKuF,EAAK,GAU3C,QAASuhD,GAAYF,EAAKx9C,EAAK+U,GAK3B,IAJA,GAAI4oC,MACAvvC,KACAtR,EAAI,EAEDA,EAAI0gD,EAAI7gD,QAAQ,CACnB,GAAI+O,GAAM1L,EAAMw9C,EAAI1gD,GAAGkD,GAAOw9C,EAAI1gD,EAC9BygD,GAAQnvC,EAAQ1C,GAAO,GACvBiyC,EAAQ9/C,KAAK2/C,EAAI1gD,IAErBsR,EAAOtR,GAAK4O,EACZ5O,IAaJ,MAVIiY,KAII4oC,EAHC39C,EAGS29C,EAAQ5oC,KAAK,SAAyBxY,EAAGC,GAC/C,MAAOD,GAAEyD,GAAOxD,EAAEwD,KAHZ29C,EAAQ5oC,QAQnB4oC,EASX,QAASC,GAASzhD,EAAK0hD,GAKnB,IAJA,GAAIC,GAAQ1hD,EACR2hD,EAAYF,EAAS,GAAGt2B,cAAgBs2B,EAASt6C,MAAM,GAEvDzG,EAAI,EACDA,EAAIkhD,GAAgBrhD,QAAQ,CAI/B,GAHAmhD,EAASE,GAAgBlhD,GACzBV,EAAO,EAAW0hD,EAASC,EAAYF,EAEnCzhD,IAAQD,GACR,MAAOC,EAEXU,KAEJ,MAAOF,GAQX,QAASqhD,KACL,MAAOC,MAQX,QAASC,GAAoB19C,GACzB,GAAI29C,GAAM39C,EAAQ49C,eAAiB59C,CACnC,OAAQ29C,GAAIE,aAAeF,EAAIG,cAAgBn9C,EAyCnD,QAASo9C,GAAMC,EAAS7+C,GACpB,GAAIkxC,GAAOz6C,IACXA,MAAKooD,QAAUA,EACfpoD,KAAKuJ,SAAWA,EAChBvJ,KAAKoK,QAAUg+C,EAAQh+C,QACvBpK,KAAKkL,OAASk9C,EAAQvkD,QAAQwkD,YAI9BroD,KAAKsoD,WAAa,SAASC,GACnBhC,EAAS6B,EAAQvkD,QAAQ2kD,QAASJ,KAClC3N,EAAK2K,QAAQmD,IAIrBvoD,KAAKyoD,OAoCT,QAASC,GAAoBN,GACzB,GAAIO,GACAC,EAAaR,EAAQvkD,QAAQ+kD,UAajC,OAAO,KAVHD,EADAC,EACOA,EACAC,GACAC,EACAC,GACAC,EACCC,GAGDC,EAFAC,GAIOf,EAASgB,GAS/B,QAASA,GAAahB,EAAS/C,EAAW3hD,GACtC,GAAI2lD,GAAc3lD,EAAM4lD,SAAShjD,OAC7BijD,EAAqB7lD,EAAM8lD,gBAAgBljD,OAC3C6+C,EAAWE,EAAYoE,IAAgBJ,EAAcE,IAAuB,EAC5EG,EAAWrE,GAAasE,GAAYC,KAAkBP,EAAcE,IAAuB,CAE/F7lD,GAAMyhD,UAAYA,EAClBzhD,EAAMgmD,UAAYA,EAEdvE,IACAiD,EAAQyB,YAKZnmD,EAAM2hD,UAAYA,EAGlByE,EAAiB1B,EAAS1kD,GAG1B0kD,EAAQxQ,KAAK,eAAgBl0C,GAE7B0kD,EAAQ2B,UAAUrmD,GAClB0kD,EAAQyB,QAAQG,UAAYtmD,EAQhC,QAASomD,GAAiB1B,EAAS1kD,GAC/B,GAAImmD,GAAUzB,EAAQyB,QAClBP,EAAW5lD,EAAM4lD,SACjBW,EAAiBX,EAAShjD;AAGzBujD,EAAQK,aACTL,EAAQK,WAAaC,EAAqBzmD,IAI1CumD,EAAiB,IAAMJ,EAAQO,cAC/BP,EAAQO,cAAgBD,EAAqBzmD,GACnB,IAAnBumD,IACPJ,EAAQO,eAAgB,EAG5B,IAAIF,GAAaL,EAAQK,WACrBE,EAAgBP,EAAQO,cACxBC,EAAeD,EAAgBA,EAAchU,OAAS8T,EAAW9T,OAEjEA,EAAS1yC,EAAM0yC,OAASkU,EAAUhB,EACtC5lD,GAAM6mD,UAAYtnC,KAClBvf,EAAM8mD,UAAY9mD,EAAM6mD,UAAYL,EAAWK,UAE/C7mD,EAAM+mD,MAAQC,EAASL,EAAcjU,GACrC1yC,EAAMysC,SAAWwa,EAAYN,EAAcjU,GAE3CwU,EAAef,EAASnmD,GACxBA,EAAMmnD,gBAAkBC,EAAapnD,EAAMqnD,OAAQrnD,EAAMsnD,OAEzD,IAAIC,GAAkBC,EAAYxnD,EAAM8mD,UAAW9mD,EAAMqnD,OAAQrnD,EAAMsnD,OACvEtnD,GAAMynD,iBAAmBF,EAAgBrtB,EACzCl6B,EAAM0nD,iBAAmBH,EAAgBhqC,EACzCvd,EAAMunD,gBAAmBl0C,GAAIk0C,EAAgBrtB,GAAK7mB,GAAIk0C,EAAgBhqC,GAAMgqC,EAAgBrtB,EAAIqtB,EAAgBhqC,EAEhHvd,EAAMsB,MAAQolD,EAAgB5K,EAAS4K,EAAcd,SAAUA,GAAY,EAC3E5lD,EAAM2nD,SAAWjB,EAAgBkB,EAAYlB,EAAcd,SAAUA,GAAY,EAEjF5lD,EAAM6nD,YAAe1B,EAAQG,UAAsCtmD,EAAM4lD,SAAShjD,OAC9EujD,EAAQG,UAAUuB,YAAe7nD,EAAM4lD,SAAShjD,OAASujD,EAAQG,UAAUuB,YADtC7nD,EAAM4lD,SAAShjD,OAGxDklD,EAAyB3B,EAASnmD,EAGlC,IAAIwH,GAASk9C,EAAQh+C,OACjBkB,GAAU5H,EAAMkgD,SAAS14C,OAAQA,KACjCA,EAASxH,EAAMkgD,SAAS14C,QAE5BxH,EAAMwH,OAASA,EAGnB,QAAS0/C,GAAef,EAASnmD,GAC7B,GAAI0yC,GAAS1yC,EAAM0yC,OACf5uB,EAASqiC,EAAQ4B,gBACjBC,EAAY7B,EAAQ6B,cACpB1B,EAAYH,EAAQG,eAEpBtmD,EAAM2hD,YAAcoE,IAAeO,EAAU3E,YAAcsE,MAC3D+B,EAAY7B,EAAQ6B,WAChB9tB,EAAGosB,EAAUe,QAAU,EACvB9pC,EAAG+oC,EAAUgB,QAAU,GAG3BxjC,EAASqiC,EAAQ4B,aACb7tB,EAAGwY,EAAOxY,EACV3c,EAAGm1B,EAAOn1B,IAIlBvd,EAAMqnD,OAASW,EAAU9tB,GAAKwY,EAAOxY,EAAIpW,EAAOoW,GAChDl6B,EAAMsnD,OAASU,EAAUzqC,GAAKm1B,EAAOn1B,EAAIuG,EAAOvG,GAQpD,QAASuqC,GAAyB3B,EAASnmD,GACvC,GAEIioD,GAAUC,EAAWC,EAAWnhC,EAFhCohC,EAAOjC,EAAQkC,cAAgBroD,EAC/B8mD,EAAY9mD,EAAM6mD,UAAYuB,EAAKvB,SAGvC,IAAI7mD,EAAM2hD,WAAauE,KAAiBY,EAAYwB,IAAoBF,EAAKH,WAAaplD,GAAY,CAClG,GAAIwkD,GAASrnD,EAAMqnD,OAASe,EAAKf,OAC7BC,EAAStnD,EAAMsnD,OAASc,EAAKd,OAE7Bp9C,EAAIs9C,EAAYV,EAAWO,EAAQC,EACvCY,GAAYh+C,EAAEgwB,EACdiuB,EAAYj+C,EAAEqT,EACd0qC,EAAY50C,GAAInJ,EAAEgwB,GAAK7mB,GAAInJ,EAAEqT,GAAMrT,EAAEgwB,EAAIhwB,EAAEqT,EAC3CyJ,EAAYogC,EAAaC,EAAQC,GAEjCnB,EAAQkC,aAAeroD,MAGvBioD,GAAWG,EAAKH,SAChBC,EAAYE,EAAKF,UACjBC,EAAYC,EAAKD,UACjBnhC,EAAYohC,EAAKphC,SAGrBhnB,GAAMioD,SAAWA,EACjBjoD,EAAMkoD,UAAYA,EAClBloD,EAAMmoD,UAAYA,EAClBnoD,EAAMgnB,UAAYA,EAQtB,QAASy/B,GAAqBzmD,GAK1B,IAFA,GAAI4lD,MACA7iD,EAAI,EACDA,EAAI/C,EAAM4lD,SAAShjD,QACtBgjD,EAAS7iD,IACLohC,QAAStf,GAAM7kB,EAAM4lD,SAAS7iD,GAAGohC,SACjCG,QAASzf,GAAM7kB,EAAM4lD,SAAS7iD,GAAGuhC,UAErCvhC,GAGJ,QACI8jD,UAAWtnC,KACXqmC,SAAUA,EACVlT,OAAQkU,EAAUhB,GAClByB,OAAQrnD,EAAMqnD,OACdC,OAAQtnD,EAAMsnD,QAStB,QAASV,GAAUhB,GACf,GAAIW,GAAiBX,EAAShjD,MAG9B,IAAuB,IAAnB2jD,EACA,OACIrsB,EAAGrV,GAAM+gC,EAAS,GAAGzhB,SACrB5mB,EAAGsH,GAAM+gC,EAAS,GAAGthB,SAK7B,KADA,GAAIpK,GAAI,EAAG3c,EAAI,EAAGxa,EAAI,EACXwjD,EAAJxjD,GACHm3B,GAAK0rB,EAAS7iD,GAAGohC,QACjB5mB,GAAKqoC,EAAS7iD,GAAGuhC,QACjBvhC,GAGJ,QACIm3B,EAAGrV,GAAMqV,EAAIqsB,GACbhpC,EAAGsH,GAAMtH,EAAIgpC,IAWrB,QAASiB,GAAYV,EAAW5sB,EAAG3c,GAC/B,OACI2c,EAAGA,EAAI4sB,GAAa,EACpBvpC,EAAGA,EAAIupC,GAAa,GAU5B,QAASM,GAAaltB,EAAG3c,GACrB,MAAI2c,KAAM3c,EACCgrC,GAGPl1C,GAAI6mB,IAAM7mB,GAAIkK,GACH,EAAJ2c,EAAQsuB,GAAiBC,GAEzB,EAAJlrC,EAAQmrC,GAAeC,GAUlC,QAAS1B,GAAY9uC,EAAIC,EAAIjV,GACpBA,IACDA,EAAQylD,GAEZ,IAAI1uB,GAAI9hB,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,IAC5Boa,EAAInF,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,GAEhC,OAAO5B,MAAKu0C,KAAM5b,EAAIA,EAAM3c,EAAIA,GAUpC,QAASypC,GAAS7uC,EAAIC,EAAIjV,GACjBA,IACDA,EAAQylD,GAEZ,IAAI1uB,GAAI9hB,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,IAC5Boa,EAAInF,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,GAChC,OAA0B,KAAnB5B,KAAKsnD,MAAMtrC,EAAG2c,GAAW34B,KAAK6wC,GASzC,QAASwV,GAAY3Y,EAAOE,GACxB,MAAO6X,GAAS7X,EAAI,GAAIA,EAAI,GAAI2Z,IAAmB9B,EAAS/X,EAAM,GAAIA,EAAM,GAAI6Z,IAUpF,QAAShN,GAAS7M,EAAOE,GACrB,MAAO8X,GAAY9X,EAAI,GAAIA,EAAI,GAAI2Z,IAAmB7B,EAAYhY,EAAM,GAAIA,EAAM,GAAI6Z,IAiB1F,QAASrD,KACLnpD,KAAKysD,KAAOC,GACZ1sD,KAAK2sD,MAAQC,GAEb5sD,KAAK6sD,OAAQ,EACb7sD,KAAK8sD,SAAU,EAEf3E,EAAMp1C,MAAM/S,KAAMqG,WAoEtB,QAASyiD,KACL9oD,KAAKysD,KAAOM,GACZ/sD,KAAK2sD,MAAQK,GAEb7E,EAAMp1C,MAAM/S,KAAMqG,WAElBrG,KAAKitD,MAASjtD,KAAKooD,QAAQyB,QAAQqD,iBAoEvC,QAASC,KACLntD,KAAKotD,SAAWC,GAChBrtD,KAAK2sD,MAAQW,GACbttD,KAAKutD,SAAU,EAEfpF,EAAMp1C,MAAM/S,KAAMqG,WAsCtB,QAASmnD,GAAuBjF,EAAI3gD,GAChC,GAAI6lD,GAAMjkD,EAAQ++C,EAAGmF,SACjBC,EAAUnkD,EAAQ++C,EAAGqF,eAMzB,OAJIhmD,IAAQ+hD,GAAYC,MACpB6D,EAAMpG,EAAYoG,EAAI5tB,OAAO8tB,GAAU,cAAc,KAGjDF,EAAKE,GAiBjB,QAAS3E,KACLhpD,KAAKotD,SAAWS,GAChB7tD,KAAK8tD,aAEL3F,EAAMp1C,MAAM/S,KAAMqG,WA0BtB,QAAS0nD,GAAWxF,EAAI3gD,GACpB,GAAIomD,GAAaxkD,EAAQ++C,EAAGmF,SACxBI,EAAY9tD,KAAK8tD,SAGrB,IAAIlmD,GAAQ6hD,GAAcwE,KAAqC,IAAtBD,EAAW1nD,OAEhD,MADAwnD,GAAUE,EAAW,GAAGE,aAAc,GAC9BF,EAAYA,EAGxB,IAAIvnD,GACAqhC,EACA8lB,EAAiBpkD,EAAQ++C,EAAGqF,gBAC5BO,KACAjjD,EAASlL,KAAKkL,MAQlB,IALA48B,EAAgBkmB,EAAWxuB,OAAO,SAAS4uB,GACvC,MAAO9iD,GAAU8iD,EAAMljD,OAAQA,KAI/BtD,IAAS6hD,GAET,IADAhjD,EAAI,EACGA,EAAIqhC,EAAcxhC,QACrBwnD,EAAUhmB,EAAcrhC,GAAGynD,aAAc,EACzCznD,GAMR,KADAA,EAAI,EACGA,EAAImnD,EAAetnD,QAClBwnD,EAAUF,EAAennD,GAAGynD,aAC5BC,EAAqB3mD,KAAKomD,EAAennD,IAIzCmB,GAAQ+hD,GAAYC,WACbkE,GAAUF,EAAennD,GAAGynD,YAEvCznD,GAGJ,OAAK0nD,GAAqB7nD,QAMtB+gD,EAAYvf,EAAcjI,OAAOsuB,GAAuB,cAAc,GACtEA,GAPJ,OAoBJ,QAASjF,KACLf,EAAMp1C,MAAM/S,KAAMqG,UAElB,IAAI++C,GAAUM,EAAO1lD,KAAKolD,QAASplD,KACnCA,MAAKouD,MAAQ,GAAIpF,GAAWhpD,KAAKooD,QAAShD,GAC1CplD,KAAKquD,MAAQ,GAAIlF,GAAWnpD,KAAKooD,QAAShD,GAyD9C,QAASkJ,GAAYlG,EAASrjD,GAC1B/E,KAAKooD,QAAUA,EACfpoD,KAAKoY,IAAIrT,GAwGb,QAASwpD,GAAkBC,GAEvB,GAAIzH,EAAMyH,EAASC,IACf,MAAOA,GAGX,IAAIC,GAAU3H,EAAMyH,EAASG,IACzBC,EAAU7H,EAAMyH,EAASK,GAM7B,OAAIH,IAAWE,EACJH,GAIPC,GAAWE,EACJF,EAAUC,GAAqBE,GAItC9H,EAAMyH,EAASM,IACRA,GAGJC,GA4CX,QAASC,GAAWnrD,GAChB7D,KAAK6D,QAAUmhD,MAAWhlD,KAAK8iB,SAAUjf,OAEzC7D,KAAKK,GAAKunD,IAEV5nD,KAAKooD,QAAU,KAGfpoD,KAAK6D,QAAQ2kD,OAAS/B,EAAYzmD,KAAK6D,QAAQ2kD,QAAQ,GAEvDxoD,KAAKivD,MAAQC,GAEblvD,KAAKmvD,gBACLnvD,KAAKovD,eAqOT,QAASC,GAASJ,GACd,MAAIA,GAAQK,GACD,SACAL,EAAQM,GACR,MACAN,EAAQO,GACR,OACAP,EAAQQ,GACR,QAEJ,GAQX,QAASC,GAAahlC,GAClB,MAAIA,IAAa2hC,GACN,OACA3hC,GAAa0hC,GACb,KACA1hC,GAAawhC,GACb,OACAxhC,GAAayhC,GACb,QAEJ,GASX,QAASwD,GAA6BC,EAAiBC,GACnD,GAAIzH,GAAUyH,EAAWzH,OACzB,OAAIA,GACOA,EAAQpxB,IAAI44B,GAEhBA,EAQX,QAASE,MACLd,EAAWj8C,MAAM/S,KAAMqG,WA6D3B,QAAS0pD,MACLD,GAAe/8C,MAAM/S,KAAMqG,WAE3BrG,KAAKgwD,GAAK,KACVhwD,KAAKiwD,GAAK,KA4Ed,QAASC,MACLJ,GAAe/8C,MAAM/S,KAAMqG,WAsC/B,QAAS8pD,MACLnB,EAAWj8C,MAAM/S,KAAMqG,WAEvBrG,KAAKowD,OAAS,KACdpwD,KAAKqwD,OAAS,KAmElB,QAASC,MACLR,GAAe/8C,MAAM/S,KAAMqG,WA8B/B,QAASkqD,MACLT,GAAe/8C,MAAM/S,KAAMqG,WA2D/B,QAASmqD,MACLxB,EAAWj8C,MAAM/S,KAAMqG,WAIvBrG,KAAKywD,OAAQ,EACbzwD,KAAK0wD,SAAU,EAEf1wD,KAAKowD,OAAS,KACdpwD,KAAKqwD,OAAS,KACdrwD,KAAKiyB,MAAQ,EAqGjB,QAASjuB,IAAOoG,EAASvG,GAGrB,MAFAA,GAAUA,MACVA,EAAQ8sD,YAAclK,EAAY5iD,EAAQ8sD,YAAa3sD,GAAO8e,SAAS8tC,QAChE,GAAI/L,IAAQz6C,EAASvG,GAiIhC,QAASghD,IAAQz6C,EAASvG,GACtB7D,KAAK6D,QAAUmhD,MAAWhhD,GAAO8e,SAAUjf,OAE3C7D,KAAK6D,QAAQwkD,YAAcroD,KAAK6D,QAAQwkD,aAAej+C,EAEvDpK,KAAK6wD,YACL7wD,KAAK6pD,WACL7pD,KAAK2wD,eAEL3wD,KAAKoK,QAAUA,EACfpK,KAAK0D,MAAQglD,EAAoB1oD,MACjCA,KAAK8wD,YAAc,GAAIxC,GAAYtuD,KAAMA,KAAK6D,QAAQitD,aAEtDC,GAAe/wD,MAAM,GAErB6lD,EAAK7lD,KAAK6D,QAAQ8sD,YAAa,SAASn/C,GACpC,GAAIq+C,GAAa7vD,KAAKimB,IAAI,GAAKzU,GAAK,GAAIA,EAAK,IAC7CA,GAAK,IAAMq+C,EAAWmB,cAAcx/C,EAAK,IACzCA,EAAK,IAAMq+C,EAAWoB,eAAez/C,EAAK,KAC3CxR,MAiPP,QAAS+wD,IAAe3I,EAASniC,GAC7B,GAAI7b,GAAUg+C,EAAQh+C,OACjBA,GAAQ0E,OAGb+2C,EAAKuC,EAAQvkD,QAAQqtD,SAAU,SAASnsD,EAAOyS,GAC3CpN,EAAQ0E,MAAMy4C,EAASn9C,EAAQ0E,MAAO0I,IAASyO,EAAMlhB,EAAQ,KASrE,QAASosD,IAAgBrmD,EAAOkN,GAC5B,GAAIo5C,GAAeh0B,EAASi0B,YAAY,QACxCD,GAAaE,UAAUxmD,GAAO,GAAM,GACpCsmD,EAAaG,QAAUv5C,EACvBA,EAAK9M,OAAOsmD,cAAcJ,GAx7E9B,GA+FIpM,IA/FA2C,IAAmB,GAAI,SAAU,MAAO,KAAM,KAAM,KACpD8J,GAAer0B,EAASM,cAAc,OAEtC8oB,GAAgB,WAEhBj+B,GAAQtjB,KAAKsjB,MACbxR,GAAM9R,KAAK8R,IACXkM,GAAM5d,KAAK4d,GA0FX+hC,IADyB,kBAAlB59C,QAAO49C,OACL,SAAgB95C,GACrB,GAAIA,IAAW3E,GAAwB,OAAX2E,EACxB,KAAM,IAAIhE,WAAU,6CAIxB,KAAK,GADDwT,GAAStT,OAAO8D,GACX9B,EAAQ,EAAGA,EAAQ/C,UAAUC,OAAQ8C,IAAS,CACnD,GAAIyoB,GAASxrB,UAAU+C,EACvB,IAAIyoB,IAAWtrB,GAAwB,OAAXsrB,EACxB,IAAK,GAAI6/B,KAAW7/B,GACZA,EAAO7rB,eAAe0rD,KACtBh3C,EAAOg3C,GAAW7/B,EAAO6/B,IAKzC,MAAOh3C,IAGFtT,OAAO49C,MAWpB,IAAIr+C,IAASiZ,EAAU,SAAgB+xC,EAAMxK,EAAKyK,GAG9C,IAFA,GAAI3iD,GAAO7H,OAAO6H,KAAKk4C,GACnB1gD,EAAI,EACDA,EAAIwI,EAAK3I,UACPsrD,GAAUA,GAASD,EAAK1iD,EAAKxI,MAAQF,KACtCorD,EAAK1iD,EAAKxI,IAAM0gD,EAAIl4C,EAAKxI,KAE7BA,GAEJ,OAAOkrD,IACR,SAAU,iBASTC,GAAQhyC,EAAU,SAAe+xC,EAAMxK,GACvC,MAAOxgD,IAAOgrD,EAAMxK,GAAK,IAC1B,QAAS,iBAiNRU,GAAY,EAeZgK,GAAe,wCAEf5I,GAAiB,gBAAkBl+C,GACnC89C,GAAyBtB,EAASx8C,EAAQ,kBAAoBxE,EAC9DwiD,GAAqBE,IAAiB4I,GAAahiD,KAAKrF,UAAUC,WAElEqnD,GAAmB,QACnBC,GAAiB,MACjBC,GAAmB,QACnBC,GAAoB,SAEpBjG,GAAmB,GAEnBvC,GAAc,EACdwE,GAAa,EACbtE,GAAY,EACZC,GAAe,EAEfqC,GAAiB,EACjBC,GAAiB,EACjBC,GAAkB,EAClBC,GAAe,EACfC,GAAiB,GAEjB6F,GAAuBhG,GAAiBC,GACxCgG,GAAqB/F,GAAeC,GACpC+F,GAAgBF,GAAuBC,GAEvC7F,IAAY,IAAK,KACjBE,IAAmB,UAAW,UA4BlCrE,GAAMl1C,WAKFmyC,QAAS,aAKTqD,KAAM,WACFzoD,KAAKysD,MAAQ7F,EAAkB5mD,KAAKoK,QAASpK,KAAKysD,KAAMzsD,KAAKsoD,YAC7DtoD,KAAKotD,UAAYxG,EAAkB5mD,KAAKkL,OAAQlL,KAAKotD,SAAUptD,KAAKsoD,YACpEtoD,KAAK2sD,OAAS/F,EAAkBkB,EAAoB9nD,KAAKoK,SAAUpK,KAAK2sD,MAAO3sD,KAAKsoD,aAMxFnpB,QAAS,WACLn/B,KAAKysD,MAAQ3F,EAAqB9mD,KAAKoK,QAASpK,KAAKysD,KAAMzsD,KAAKsoD,YAChEtoD,KAAKotD,UAAYtG,EAAqB9mD,KAAKkL,OAAQlL,KAAKotD,SAAUptD,KAAKsoD,YACvEtoD,KAAK2sD,OAAS7F,EAAqBgB,EAAoB9nD,KAAKoK,SAAUpK,KAAK2sD,MAAO3sD,KAAKsoD,aA4T/F,IAAI+J,KACAC,UAAW7I,GACX8I,UAAWtE,GACXuE,QAAS7I,IAGT+C,GAAuB,YACvBE,GAAsB,mBAiB1B3G,GAAQkD,EAAYhB,GAKhB/C,QAAS,SAAmBmD,GACxB,GAAIlD,GAAYgN,GAAgB9J,EAAG3gD,KAG/By9C,GAAYoE,IAA6B,IAAdlB,EAAG7R,SAC9B12C,KAAK8sD,SAAU,GAGfzH,EAAY4I,IAA2B,IAAb1F,EAAG9R,QAC7B4O,EAAYsE,IAIX3pD,KAAK8sD,SAAY9sD,KAAK6sD,QAIvBxH,EAAYsE,KACZ3pD,KAAK8sD,SAAU,GAGnB9sD,KAAKuJ,SAASvJ,KAAKooD,QAAS/C,GACxBiE,UAAWf,GACXiB,iBAAkBjB,GAClBrD,YAAa8M,GACbpO,SAAU2E,OAKtB,IAAIkK,KACAC,YAAajJ,GACbkJ,YAAa1E,GACb2E,UAAWjJ,GACXkJ,cAAejJ,GACfkJ,WAAYlJ,IAIZmJ,IACAC,EAAGlB,GACHmB,EAAGlB,GACHmB,EAAGlB,GACHmB,EAAGlB,IAGHlF,GAAyB,cACzBC,GAAwB,qCAGxBjiD,GAAOqoD,iBAAmBroD,EAAOsoD,eACjCtG,GAAyB,gBACzBC,GAAwB,6CAiB5B/G,EAAQ6C,EAAmBX,GAKvB/C,QAAS,SAAmBmD,GACxB,GAAI0E,GAAQjtD,KAAKitD,MACbqG,GAAgB,EAEhBC,EAAsBhL,EAAG3gD,KAAKuP,cAAchL,QAAQ,KAAM,IAC1Dk5C,EAAYoN,GAAkBc,GAC9BrO,EAAc6N,GAAuBxK,EAAGrD,cAAgBqD,EAAGrD,YAE3DsO,EAAWtO,GAAe4M,GAG1B2B,EAAavM,EAAQ+F,EAAO1E,EAAGmL,UAAW,YAG1CrO,GAAYoE,KAA8B,IAAdlB,EAAG7R,QAAgB8c,GAC9B,EAAbC,IACAxG,EAAMzlD,KAAK+gD,GACXkL,EAAaxG,EAAM3mD,OAAS,GAEzB++C,GAAasE,GAAYC,MAChC0J,GAAgB,GAIH,EAAbG,IAKJxG,EAAMwG,GAAclL,EAEpBvoD,KAAKuJ,SAASvJ,KAAKooD,QAAS/C,GACxBiE,SAAU2D,EACVzD,iBAAkBjB,GAClBrD,YAAaA,EACbtB,SAAU2E,IAGV+K,GAEArG,EAAM5jD,OAAOoqD,EAAY,MAKrC,IAAIE,KACAC,WAAYnK,GACZoK,UAAW5F,GACX6F,SAAUnK,GACVoK,YAAanK,IAGbyD,GAA6B,aAC7BC,GAA6B,2CAejCrH,GAAQkH,EAAkBhF,GACtB/C,QAAS,SAAmBmD,GACxB,GAAI3gD,GAAO+rD,GAAuBpL,EAAG3gD,KAOrC,IAJIA,IAAS6hD,KACTzpD,KAAKutD,SAAU,GAGdvtD,KAAKutD,QAAV,CAIA,GAAIG,GAAUF,EAAuBjtD,KAAKP,KAAMuoD,EAAI3gD,EAGhDA,IAAQ+hD,GAAYC,KAAiB8D,EAAQ,GAAGpnD,OAASonD,EAAQ,GAAGpnD,SAAW,IAC/EtG,KAAKutD,SAAU,GAGnBvtD,KAAKuJ,SAASvJ,KAAKooD,QAASxgD,GACxB0hD,SAAUoE,EAAQ,GAClBlE,gBAAiBkE,EAAQ,GACzBxI,YAAa4M,GACblO,SAAU2E,OAsBtB,IAAIyL,KACAJ,WAAYnK,GACZoK,UAAW5F,GACX6F,SAAUnK,GACVoK,YAAanK,IAGbiE,GAAsB,2CAc1B5H,GAAQ+C,EAAYb,GAChB/C,QAAS,SAAoBmD,GACzB,GAAI3gD,GAAOosD,GAAgBzL,EAAG3gD,MAC1B8lD,EAAUK,EAAWxtD,KAAKP,KAAMuoD,EAAI3gD,EACnC8lD,IAIL1tD,KAAKuJ,SAASvJ,KAAKooD,QAASxgD,GACxB0hD,SAAUoE,EAAQ,GAClBlE,gBAAiBkE,EAAQ,GACzBxI,YAAa4M,GACblO,SAAU2E,OAmFtBtC,EAAQiD,EAAiBf,GAOrB/C,QAAS,SAAoBgD,EAAS6L,EAAYC,GAC9C,GAAIV,GAAWU,EAAUhP,aAAe4M,GACpCqC,EAAWD,EAAUhP,aAAe8M,EAIxC,IAAIwB,EACAxzD,KAAKquD,MAAMxB,OAAQ,MAChB,IAAIsH,IAAYn0D,KAAKquD,MAAMxB,MAC9B,MAIAoH,IAActK,GAAYC,MAC1B5pD,KAAKquD,MAAMxB,OAAQ,GAGvB7sD,KAAKuJ,SAAS6+C,EAAS6L,EAAYC,IAMvC/0B,QAAS,WACLn/B,KAAKouD,MAAMjvB,UACXn/B,KAAKquD,MAAMlvB,YAInB,IAAIi1B,IAAwB7M,EAASkK,GAAa3iD,MAAO,eACrDulD,GAAsBD,KAA0B7tD,EAGhD+tD,GAAuB,UACvBvF,GAAoB,OACpBD,GAA4B,eAC5BL,GAAoB,OACpBE,GAAqB,QACrBE,GAAqB,OAczBP,GAAYr7C,WAKRmF,IAAK,SAASrT,GAENA,GAASuvD,KACTvvD,EAAQ/E,KAAKu0D,WAGbF,IAAuBr0D,KAAKooD,QAAQh+C,QAAQ0E,QAC5C9O,KAAKooD,QAAQh+C,QAAQ0E,MAAMslD,IAAyBrvD,GAExD/E,KAAKwuD,QAAUzpD,EAAMoS,cAAcpI,QAMvCmxB,OAAQ,WACJlgC,KAAKoY,IAAIpY,KAAKooD,QAAQvkD,QAAQitD,cAOlCyD,QAAS,WACL,GAAI/F,KAMJ,OALA3I,GAAK7lD,KAAKooD,QAAQuI,YAAa,SAASd,GAChCtJ,EAASsJ,EAAWhsD,QAAQ2kD,QAASqH,MACrCrB,EAAUA,EAAQ3uB,OAAOgwB,EAAW2E,qBAGrCjG,EAAkBC,EAAQtlD,KAAK,OAO1CurD,gBAAiB,SAAS/wD,GAEtB,IAAI2wD,GAAJ,CAIA,GAAIzQ,GAAWlgD,EAAMkgD,SACjBl5B,EAAYhnB,EAAMmnD,eAGtB,IAAI7qD,KAAKooD,QAAQyB,QAAQ6K,UAErB,WADA9Q,GAAS/4C,gBAIb,IAAI2jD,GAAUxuD,KAAKwuD,QACfmG,EAAU5N,EAAMyH,EAASC,IACzBG,EAAU7H,EAAMyH,EAASK,IACzBH,EAAU3H,EAAMyH,EAASG,GAE7B,IAAIgG,EAAS,CAGT,GAAIC,GAAyC,IAA1BlxD,EAAM4lD,SAAShjD,OAC9BuuD,EAAgBnxD,EAAMysC,SAAW,EACjC2kB,EAAiBpxD,EAAM8mD,UAAY,GAEvC,IAAIoK,GAAgBC,GAAiBC,EACjC,OAIR,IAAIpG,IAAWE,EAKf,MAAI+F,IACC/F,GAAWlkC,EAAYwnC,IACvBxD,GAAWhkC,EAAYynC,GACjBnyD,KAAK+0D,WAAWnR,GAH3B,SAWJmR,WAAY,SAASnR,GACjB5jD,KAAKooD,QAAQyB,QAAQ6K,WAAY,EACjC9Q,EAAS/4C,kBAkEjB,IAAIqkD,IAAiB,EACjBO,GAAc,EACdD,GAAgB,EAChBD,GAAc,EACdyF,GAAmBzF,GACnBD,GAAkB,GAClB2F,GAAe,EAwBnBjG,GAAW/7C,WAKP6P,YAOA1K,IAAK,SAASvU,GAKV,MAJAmhD,IAAOhlD,KAAK6D,QAASA,GAGrB7D,KAAKooD,SAAWpoD,KAAKooD,QAAQ0I,YAAY5wB,SAClClgC,MAQXgxD,cAAe,SAASpB,GACpB,GAAIjK,EAAeiK,EAAiB,gBAAiB5vD,MACjD,MAAOA,KAGX,IAAImvD,GAAenvD,KAAKmvD,YAMxB,OALAS,GAAkBD,EAA6BC,EAAiB5vD,MAC3DmvD,EAAaS,EAAgBvvD,MAC9B8uD,EAAaS,EAAgBvvD,IAAMuvD,EACnCA,EAAgBoB,cAAchxD,OAE3BA,MAQXk1D,kBAAmB,SAAStF,GACxB,MAAIjK,GAAeiK,EAAiB,oBAAqB5vD,MAC9CA,MAGX4vD,EAAkBD,EAA6BC,EAAiB5vD,YACzDA,MAAKmvD,aAAaS,EAAgBvvD,IAClCL,OAQXixD,eAAgB,SAASrB,GACrB,GAAIjK,EAAeiK,EAAiB,iBAAkB5vD,MAClD,MAAOA,KAGX,IAAIovD,GAAcpvD,KAAKovD,WAMvB,OALAQ,GAAkBD,EAA6BC,EAAiB5vD,MAClB,KAA1CknD,EAAQkI,EAAaQ,KACrBR,EAAY5nD,KAAKooD,GACjBA,EAAgBqB,eAAejxD,OAE5BA,MAQXm1D,mBAAoB,SAASvF,GACzB,GAAIjK,EAAeiK,EAAiB,qBAAsB5vD,MACtD,MAAOA,KAGX4vD,GAAkBD,EAA6BC,EAAiB5vD,KAChE,IAAIoJ,GAAQ89C,EAAQlnD,KAAKovD,YAAaQ,EAItC,OAHIxmD,GAAQ,IACRpJ,KAAKovD,YAAY/lD,OAAOD,EAAO,GAE5BpJ,MAOXo1D,mBAAoB,WAChB,MAAOp1D,MAAKovD,YAAY9oD,OAAS,GAQrC+uD,iBAAkB,SAASzF,GACvB,QAAS5vD,KAAKmvD,aAAaS,EAAgBvvD,KAQ/Cu3C,KAAM,SAASl0C,GAIX,QAASk0C,GAAK9sC,GACV2vC,EAAK2N,QAAQxQ,KAAK9sC,EAAOpH,GAJ7B,GAAI+2C,GAAOz6C,KACPivD,EAAQjvD,KAAKivD,KAOLM,IAARN,GACArX,EAAK6C,EAAK52C,QAAQiH,MAAQukD,EAASJ,IAGvCrX,EAAK6C,EAAK52C,QAAQiH,OAEdpH,EAAM4xD,iBACN1d,EAAKl0C,EAAM4xD,iBAIXrG,GAASM,IACT3X,EAAK6C,EAAK52C,QAAQiH,MAAQukD,EAASJ,KAU3CsG,QAAS,SAAS7xD,GACd,MAAI1D,MAAKw1D,UACEx1D,KAAK43C,KAAKl0C,QAGrB1D,KAAKivD,MAAQgG,KAOjBO,QAAS,WAEL,IADA,GAAI/uD,GAAI,EACDA,EAAIzG,KAAKovD,YAAY9oD,QAAQ,CAChC,KAAMtG,KAAKovD,YAAY3oD,GAAGwoD,OAASgG,GAAe/F,KAC9C,OAAO,CAEXzoD,KAEJ,OAAO,GAOXsjD,UAAW,SAASmK,GAGhB,GAAIuB,GAAiBzQ,MAAWkP,EAGhC,OAAK3N,GAASvmD,KAAK6D,QAAQ2kD,QAASxoD,KAAMy1D,KAOtCz1D,KAAKivD,OAAS+F,GAAmB1F,GAAkB2F,MACnDj1D,KAAKivD,MAAQC,IAGjBlvD,KAAKivD,MAAQjvD,KAAK01D,QAAQD,QAItBz1D,KAAKivD,OAASQ,GAAcD,GAAgBD,GAAcD,KAC1DtvD,KAAKu1D,QAAQE,MAfbz1D,KAAK21D,aACL31D,KAAKivD,MAAQgG,MAyBrBS,QAAS,SAASxB,KAOlBM,eAAgB,aAOhBmB,MAAO,cA8DX1P,EAAQ6J,GAAgBd,GAKpBlsC,UAKIwmC,SAAU,GASdsM,SAAU,SAASlyD,GACf,GAAImyD,GAAiB71D,KAAK6D,QAAQylD,QAClC,OAA0B,KAAnBuM,GAAwBnyD,EAAM4lD,SAAShjD,SAAWuvD,GAS7DH,QAAS,SAAShyD,GACd,GAAIurD,GAAQjvD,KAAKivD,MACb5J,EAAY3hD,EAAM2hD,UAElByQ,EAAe7G,GAASQ,GAAcD,IACtCj2C,EAAUvZ,KAAK41D,SAASlyD,EAG5B,OAAIoyD,KAAiBzQ,EAAYuE,KAAiBrwC,GACvC01C,EAAQK,GACRwG,GAAgBv8C,EACnB8rC,EAAYsE,GACLsF,EAAQM,GACNN,EAAQQ,GAGdR,EAAQO,GAFJC,GAIRwF,MAiBfhP,EAAQ8J,GAAeD,IAKnBhtC,UACIhY,MAAO,MACPgpB,UAAW,GACXw1B,SAAU,EACV5+B,UAAW0nC,IAGfoC,eAAgB,WACZ,GAAI9pC,GAAY1qB,KAAK6D,QAAQ6mB,UACzB8jC,IAOJ,OANI9jC,GAAYwnC,IACZ1D,EAAQhnD,KAAKqnD,IAEbnkC,EAAYynC,IACZ3D,EAAQhnD,KAAKmnD,IAEVH,GAGXuH,cAAe,SAASryD,GACpB,GAAIG,GAAU7D,KAAK6D,QACfmyD,GAAW,EACX7lB,EAAWzsC,EAAMysC,SACjBzlB,EAAYhnB,EAAMgnB,UAClBkT,EAAIl6B,EAAMqnD,OACV9pC,EAAIvd,EAAMsnD,MAed,OAZMtgC,GAAY7mB,EAAQ6mB,YAClB7mB,EAAQ6mB,UAAYwnC,IACpBxnC,EAAmB,IAANkT,EAAWquB,GAAsB,EAAJruB,EAASsuB,GAAiBC,GACpE6J,EAAWp4B,GAAK59B,KAAKgwD,GACrB7f,EAAWlrC,KAAK8R,IAAIrT,EAAMqnD,UAE1BrgC,EAAmB,IAANzJ,EAAWgrC,GAAsB,EAAJhrC,EAASmrC,GAAeC,GAClE2J,EAAW/0C,GAAKjhB,KAAKiwD,GACrB9f,EAAWlrC,KAAK8R,IAAIrT,EAAMsnD,UAGlCtnD,EAAMgnB,UAAYA,EACXsrC,GAAY7lB,EAAWtsC,EAAQiwB,WAAapJ,EAAY7mB,EAAQ6mB,WAG3EkrC,SAAU,SAASlyD,GACf,MAAOosD,IAAe78C,UAAU2iD,SAASr1D,KAAKP,KAAM0D,KAC/C1D,KAAKivD,MAAQQ,MAAkBzvD,KAAKivD,MAAQQ,KAAgBzvD,KAAK+1D,cAAcryD,KAGxFk0C,KAAM,SAASl0C,GAEX1D,KAAKgwD,GAAKtsD,EAAMqnD,OAChB/qD,KAAKiwD,GAAKvsD,EAAMsnD,MAEhB,IAAItgC,GAAYglC,EAAahsD,EAAMgnB,UAE/BA,KACAhnB,EAAM4xD,gBAAkBt1D,KAAK6D,QAAQiH,MAAQ4f,GAEjD1qB,KAAKsmD,OAAO1O,KAAKr3C,KAAKP,KAAM0D,MAcpCuiD,EAAQiK,GAAiBJ,IAKrBhtC,UACIhY,MAAO,QACPgpB,UAAW,EACXw1B,SAAU,GAGdkL,eAAgB,WACZ,OAAQ/F,KAGZmH,SAAU,SAASlyD,GACf,MAAO1D,MAAKsmD,OAAOsP,SAASr1D,KAAKP,KAAM0D,KAClCuB,KAAK8R,IAAIrT,EAAMsB,MAAQ,GAAKhF,KAAK6D,QAAQiwB,WAAa9zB,KAAKivD,MAAQQ,KAG5E7X,KAAM,SAASl0C,GACX,GAAoB,IAAhBA,EAAMsB,MAAa,CACnB,GAAIixD,GAAQvyD,EAAMsB,MAAQ,EAAI,KAAO,KACrCtB,GAAM4xD,gBAAkBt1D,KAAK6D,QAAQiH,MAAQmrD,EAEjDj2D,KAAKsmD,OAAO1O,KAAKr3C,KAAKP,KAAM0D,MAiBpCuiD,EAAQkK,GAAiBnB,GAKrBlsC,UACIhY,MAAO,QACPw+C,SAAU,EACVt+B,KAAM,IACN8I,UAAW,GAGf0gC,eAAgB,WACZ,OAAQzF,KAGZ2G,QAAS,SAAShyD,GACd,GAAIG,GAAU7D,KAAK6D,QACfqyD,EAAgBxyD,EAAM4lD,SAAShjD,SAAWzC,EAAQylD,SAClD6M,EAAgBzyD,EAAMysC,SAAWtsC,EAAQiwB,UACzCsiC,EAAY1yD,EAAM8mD,UAAY3mD,EAAQmnB,IAM1C,IAJAhrB,KAAKqwD,OAAS3sD,GAITyyD,IAAkBD,GAAkBxyD,EAAM2hD,WAAasE,GAAYC,MAAkBwM,EACtFp2D,KAAK21D,YACF,IAAIjyD,EAAM2hD,UAAYoE,GACzBzpD,KAAK21D,QACL31D,KAAKowD,OAAS3K,EAAkB,WAC5BzlD,KAAKivD,MAAQ+F,GACbh1D,KAAKu1D,WACN1xD,EAAQmnB,KAAMhrB,UACd,IAAI0D,EAAM2hD,UAAYsE,GACzB,MAAOqL,GAEX,OAAOC,KAGXU,MAAO,WACHryB,aAAatjC,KAAKowD,SAGtBxY,KAAM,SAASl0C,GACP1D,KAAKivD,QAAU+F,KAIftxD,GAAUA,EAAM2hD,UAAYsE,GAC5B3pD,KAAKooD,QAAQxQ,KAAK53C,KAAK6D,QAAQiH,MAAQ,KAAMpH,IAE7C1D,KAAKqwD,OAAO9F,UAAYtnC,KACxBjjB,KAAKooD,QAAQxQ,KAAK53C,KAAK6D,QAAQiH,MAAO9K,KAAKqwD,aAevDpK,EAAQqK,GAAkBR,IAKtBhtC,UACIhY,MAAO,SACPgpB,UAAW,EACXw1B,SAAU,GAGdkL,eAAgB,WACZ,OAAQ/F,KAGZmH,SAAU,SAASlyD,GACf,MAAO1D,MAAKsmD,OAAOsP,SAASr1D,KAAKP,KAAM0D,KAClCuB,KAAK8R,IAAIrT,EAAM2nD,UAAYrrD,KAAK6D,QAAQiwB,WAAa9zB,KAAKivD,MAAQQ,OAc/ExJ,EAAQsK,GAAiBT,IAKrBhtC,UACIhY,MAAO,QACPgpB,UAAW,GACX63B,SAAU,GACVjhC,UAAWwnC,GAAuBC,GAClC7I,SAAU,GAGdkL,eAAgB,WACZ,MAAOzE,IAAc98C,UAAUuhD,eAAej0D,KAAKP,OAGvD41D,SAAU,SAASlyD,GACf,GACIioD,GADAjhC,EAAY1qB,KAAK6D,QAAQ6mB,SAW7B,OARIA,IAAawnC,GAAuBC,IACpCxG,EAAWjoD,EAAMunD,gBACVvgC,EAAYwnC,GACnBvG,EAAWjoD,EAAMynD,iBACVzgC,EAAYynC,KACnBxG,EAAWjoD,EAAM0nD,kBAGdprD,KAAKsmD,OAAOsP,SAASr1D,KAAKP,KAAM0D,IACnCgnB,EAAYhnB,EAAMmnD,iBAClBnnD,EAAMysC,SAAWnwC,KAAK6D,QAAQiwB,WAC9BpwB,EAAM6nD,aAAevrD,KAAK6D,QAAQylD,UAClCvyC,GAAI40C,GAAY3rD,KAAK6D,QAAQ8nD,UAAYjoD,EAAM2hD,UAAYsE,IAGnE/R,KAAM,SAASl0C,GACX,GAAIgnB,GAAYglC,EAAahsD,EAAMmnD,gBAC/BngC,IACA1qB,KAAKooD,QAAQxQ,KAAK53C,KAAK6D,QAAQiH,MAAQ4f,EAAWhnB,GAGtD1D,KAAKooD,QAAQxQ,KAAK53C,KAAK6D,QAAQiH,MAAOpH,MA2B9CuiD,EAAQuK,GAAexB,GAKnBlsC,UACIhY,MAAO,MACPw+C,SAAU,EACV+M,KAAM,EACNtZ,SAAU,IACV/xB,KAAM,IACN8I,UAAW,EACXwiC,aAAc,IAGlB9B,eAAgB,WACZ,OAAQ1F,KAGZ4G,QAAS,SAAShyD,GACd,GAAIG,GAAU7D,KAAK6D,QAEfqyD,EAAgBxyD,EAAM4lD,SAAShjD,SAAWzC,EAAQylD,SAClD6M,EAAgBzyD,EAAMysC,SAAWtsC,EAAQiwB,UACzCyiC,EAAiB7yD,EAAM8mD,UAAY3mD,EAAQmnB,IAI/C,IAFAhrB,KAAK21D,QAEAjyD,EAAM2hD,UAAYoE,IAAgC,IAAfzpD,KAAKiyB,MACzC,MAAOjyB,MAAKw2D,aAKhB,IAAIL,GAAiBI,GAAkBL,EAAe,CAClD,GAAIxyD,EAAM2hD,WAAasE,GACnB,MAAO3pD,MAAKw2D,aAGhB,IAAIC,GAAgBz2D,KAAKywD,MAAS/sD,EAAM6mD,UAAYvqD,KAAKywD,MAAQ5sD,EAAQk5C,UAAY,EACjF2Z,GAAiB12D,KAAK0wD,SAAW/F,EAAY3qD,KAAK0wD,QAAShtD,EAAM0yC,QAAUvyC,EAAQyyD,YAEvFt2D,MAAKywD,MAAQ/sD,EAAM6mD,UACnBvqD,KAAK0wD,QAAUhtD,EAAM0yC,OAEhBsgB,GAAkBD,EAGnBz2D,KAAKiyB,OAAS,EAFdjyB,KAAKiyB,MAAQ,EAKjBjyB,KAAKqwD,OAAS3sD,CAId,IAAIizD,GAAW32D,KAAKiyB,MAAQpuB,EAAQwyD,IACpC,IAAiB,IAAbM,EAGA,MAAK32D,MAAKo1D,sBAGNp1D,KAAKowD,OAAS3K,EAAkB,WAC5BzlD,KAAKivD,MAAQ+F,GACbh1D,KAAKu1D,WACN1xD,EAAQk5C,SAAU/8C,MACdyvD,IANAuF,GAUnB,MAAOC,KAGXuB,YAAa,WAIT,MAHAx2D,MAAKowD,OAAS3K,EAAkB,WAC5BzlD,KAAKivD,MAAQgG,IACdj1D,KAAK6D,QAAQk5C,SAAU/8C,MACnBi1D,IAGXU,MAAO,WACHryB,aAAatjC,KAAKowD,SAGtBxY,KAAM,WACE53C,KAAKivD,OAAS+F,KACdh1D,KAAKqwD,OAAOsG,SAAW32D,KAAKiyB,MAC5BjyB,KAAKooD,QAAQxQ,KAAK53C,KAAK6D,QAAQiH,MAAO9K,KAAKqwD,YAoBvDrsD,GAAO4yD,QAAU,QAMjB5yD,GAAO8e,UAOH+zC,WAAW,EAQX/F,YAAawD,GAMb9L,QAAQ,EASRH,YAAa,KAObO,WAAY,KAOZgI,SAEKN,IAAmB9H,QAAQ,KAC3B0H,IAAkB1H,QAAQ,IAAS,YACnC+H,IAAkB7lC,UAAWwnC,MAC7BnC,IAAgBrlC,UAAWwnC,KAAwB,WACnD1B,KACAA,IAAgB1lD,MAAO,YAAaurD,KAAM,IAAK,SAC/ClG,KAQLe,UAMI4F,WAAY,OAOZC,YAAa,OASbC,aAAc,OAOdC,eAAgB,OAOhBC,SAAU,OAQVC,kBAAmB,iBAI3B,IAAIC,IAAO,EACPC,GAAc,CA8BlBxS,IAAQ5xC,WAMJmF,IAAK,SAASvU,GAaV,MAZAmhD,IAAOhlD,KAAK6D,QAASA,GAGjBA,EAAQitD,aACR9wD,KAAK8wD,YAAY5wB,SAEjBr8B,EAAQwkD,cAERroD,KAAK0D,MAAMy7B,UACXn/B,KAAK0D,MAAMwH,OAASrH,EAAQwkD,YAC5BroD,KAAK0D,MAAM+kD,QAERzoD,MASX8vC,KAAM,SAASwnB,GACXt3D,KAAK6pD,QAAQtF,QAAU+S,EAAQD,GAAcD,IASjDrN,UAAW,SAASmK,GAChB,GAAIrK,GAAU7pD,KAAK6pD,OACnB,KAAIA,EAAQtF,QAAZ,CAKAvkD,KAAK8wD,YAAY2D,gBAAgBP,EAEjC,IAAIrE,GACAc,EAAc3wD,KAAK2wD,YAKnB4G,EAAgB1N,EAAQ0N,gBAIvBA,GAAkBA,GAAiBA,EAActI,MAAQ+F,MAC1DuC,EAAgB1N,EAAQ0N,cAAgB,KAI5C,KADA,GAAI9wD,GAAI,EACDA,EAAIkqD,EAAYrqD,QACnBupD,EAAac,EAAYlqD,GAQrBojD,EAAQtF,UAAY8S,IACfE,GAAiB1H,GAAc0H,IAChC1H,EAAWwF,iBAAiBkC,GAGhC1H,EAAW8F,QAFX9F,EAAW9F,UAAUmK,IAOpBqD,GAAiB1H,EAAWZ,OAASQ,GAAcD,GAAgBD,MACpEgI,EAAgB1N,EAAQ0N,cAAgB1H,GAE5CppD,MASRuwB,IAAK,SAAS64B,GACV,GAAIA,YAAsBb,GACtB,MAAOa,EAIX,KAAK,GADDc,GAAc3wD,KAAK2wD,YACdlqD,EAAI,EAAGA,EAAIkqD,EAAYrqD,OAAQG,IACpC,GAAIkqD,EAAYlqD,GAAG5C,QAAQiH,OAAS+kD,EAChC,MAAOc,GAAYlqD,EAG3B,OAAO,OASXwf,IAAK,SAAS4pC,GACV,GAAIlK,EAAekK,EAAY,MAAO7vD,MAClC,MAAOA,KAIX,IAAIw3D,GAAWx3D,KAAKg3B,IAAI64B,EAAWhsD,QAAQiH,MAS3C,OARI0sD,IACAx3D,KAAK2hC,OAAO61B,GAGhBx3D,KAAK2wD,YAAYnpD,KAAKqoD,GACtBA,EAAWzH,QAAUpoD,KAErBA,KAAK8wD,YAAY5wB,SACV2vB,GAQXluB,OAAQ,SAASkuB,GACb,GAAIlK,EAAekK,EAAY,SAAU7vD,MACrC,MAAOA,KAMX,IAHA6vD,EAAa7vD,KAAKg3B,IAAI64B,GAGN,CACZ,GAAIc,GAAc3wD,KAAK2wD,YACnBvnD,EAAQ89C,EAAQyJ,EAAad,EAEnB,MAAVzmD,IACAunD,EAAYtnD,OAAOD,EAAO,GAC1BpJ,KAAK8wD,YAAY5wB,UAIzB,MAAOlgC,OASXo/B,GAAI,SAASglB,EAAQgB,GACjB,GAAIyL,GAAW7wD,KAAK6wD,QAKpB,OAJAhL,GAAKgB,EAASzC,GAAS,SAASt5C,GAC5B+lD,EAAS/lD,GAAS+lD,EAAS/lD,OAC3B+lD,EAAS/lD,GAAOtD,KAAK49C,KAElBplD,MASXu/B,IAAK,SAAS6kB,EAAQgB,GAClB,GAAIyL,GAAW7wD,KAAK6wD,QAQpB,OAPAhL,GAAKgB,EAASzC,GAAS,SAASt5C,GACvBs6C,EAGDyL,EAAS/lD,IAAU+lD,EAAS/lD,GAAOzB,OAAO69C,EAAQ2J,EAAS/lD,GAAQs6C,GAAU,SAFtEyL,GAAS/lD,KAKjB9K,MAQX43C,KAAM,SAAS9sC,EAAOkN,GAEdhY,KAAK6D,QAAQgzD,WACb1F,GAAgBrmD,EAAOkN,EAI3B,IAAI64C,GAAW7wD,KAAK6wD,SAAS/lD,IAAU9K,KAAK6wD,SAAS/lD,GAAOoC,OAC5D,IAAK2jD,GAAaA,EAASvqD,OAA3B,CAIA0R,EAAKpQ,KAAOkD,EACZkN,EAAKnN,eAAiB,WAClBmN,EAAK4rC,SAAS/4C,iBAIlB,KADA,GAAIpE,GAAI,EACDA,EAAIoqD,EAASvqD,QAChBuqD,EAASpqD,GAAGuR,GACZvR,MAQR04B,QAAS,WACLn/B,KAAKoK,SAAW2mD,GAAe/wD,MAAM,GAErCA,KAAK6wD,YACL7wD,KAAK6pD,WACL7pD,KAAK0D,MAAMy7B,UACXn/B,KAAKoK,QAAU,OA+BvB46C,GAAOhhD,IACHylD,YAAaA,GACbwE,WAAYA,GACZtE,UAAWA,GACXC,aAAcA,GAEdsF,eAAgBA,GAChBO,YAAaA,GACbD,cAAeA,GACfD,YAAaA,GACbyF,iBAAkBA,GAClB1F,gBAAiBA,GACjB2F,aAAcA,GAEdhJ,eAAgBA,GAChBC,eAAgBA,GAChBC,gBAAiBA,GACjBC,aAAcA,GACdC,eAAgBA,GAChB6F,qBAAsBA,GACtBC,mBAAoBA,GACpBC,cAAeA,GAEfvN,QAASA,GACTsD,MAAOA,EACPmG,YAAaA,EAEbtF,WAAYA,EACZG,WAAYA,EACZL,kBAAmBA,EACnBI,gBAAiBA,EACjBiE,iBAAkBA,EAElB6B,WAAYA,EACZc,eAAgBA,GAChB2H,IAAKjH,GACLkH,IAAK3H,GACL4H,MAAOpH,GACPqH,MAAO1H,GACP2H,OAAQvH,GACRwH,MAAO3H,GAEP/wB,GAAIwnB,EACJrnB,IAAKunB,EACLjB,KAAMA,EACN+L,MAAOA,GACPjrD,OAAQA,GACRq+C,OAAQA,GACRiB,QAASA,EACTP,OAAQA,EACR6B,SAAUA,GAKd,IAAIwQ,IAAgC,mBAAXhtD,GAAyBA,EAA0B,mBAAT0vC,MAAuBA,OAC1Fsd,IAAW/zD,OAASA,GAGdigD,EAAgC,WAC9B,MAAOjgD,KACTzD,KAAKX,EAASM,EAAqBN,EAASC,KAASokD,IAAkC19C,IAAc1G,EAAOD,QAAUqkD,KAOzHl5C,OAAQqyB,SAAU,WAKjB,SAASv9B,EAAQD,EAASM,GAkB9B,QAAS2B,GAAMs9C,EAAMt7C,GACnB,GAAIof,GAAMlf,IAASgjB,MAAM,GAAGC,QAAQ,GAAGC,QAAQ,GAAGC,aAAa,EAC/DlnB,MAAK2yC,MAAQ1vB,EAAIkF,QAAQlC,IAAI,GAAI,QAAQne,UACzC9H,KAAK6yC,IAAM5vB,EAAIkF,QAAQlC,IAAI,EAAG,QAAQne,UAEtC9H,KAAKm/C,KAAOA,EACZn/C,KAAKg4D,gBAAkB,EACvBh4D,KAAKi4D,YAAc,EACnBj4D,KAAKk4D,cAAe,EACpBl4D,KAAKm4D,YAAa,EAGlBn4D,KAAK2+C,gBACHhM,MAAO,KACPE,IAAK,KACL9uC,OAAQA,EACR2mB,UAAW,aACX0tC,UAAU,EACVC,UAAU,EACVzzD,IAAK,KACLC,IAAK,KACLyzD,QAAS,GACTC,QAAS,UAEXv4D,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBAEpC3+C,KAAK6G,OACHunD,UAEFpuD,KAAKw4D,eAAiB,KAGtBx4D,KAAKm/C,KAAKE,QAAQjgB,GAAG,WAAYp/B,KAAKy4D,aAAanZ,KAAKt/C,OACxDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAWp/B,KAAK04D,QAAQpZ,KAAKt/C,OAClDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,SAAUp/B,KAAK24D,WAAWrZ,KAAKt/C,OAGpDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAK44D,cAActZ,KAAKt/C,OAG3DA,KAAKm/C,KAAKE,QAAQjgB,GAAG,QAASp/B,KAAK64D,SAASvZ,KAAKt/C,OACjDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,QAASp/B,KAAK84D,SAASxZ,KAAKt/C,OAEjDA,KAAKg/B,WAAWn7B,GAsClB,QAASk1D,GAAkBruC,GACzB,GAAiB,cAAbA,GAA0C,YAAbA,EAC/B,KAAM,IAAIxjB,WAAU,sBAAwBwjB,EAAY,yCA2gB5D,QAASsuC,GAAW5K,EAAOhkD,GACzB,OACEwzB,EAAGwwB,EAAMxwB,EAAIj9B,EAAK6H,gBAAgB4B,GAClC6W,EAAGmtC,EAAMntC,EAAItgB,EAAKiI,eAAewB,IA/mBrC,GAAIzJ,GAAOT,EAAoB,GAE3B6D,GADa7D,EAAoB,IACxBA,EAAoB,IAC7BsC,EAAYtC,EAAoB,IAChC0B,EAAW1B,EAAoB,GAwDnC2B,GAAMoR,UAAY,GAAIzQ,GAkBtBX,EAAMoR,UAAU+rB,WAAa,SAAUn7B,GACrC,GAAIA,EAAS,CAEX,GAAIoM,IAAU,YAAa,MAAO,MAAO,UAAW,UAAW,WAAY,WAAY,SAAU,WAAY,cAAe,UAC5HtP,GAAKiG,gBAAgBqJ,EAAQjQ,KAAK6D,QAASA,IAEvC,SAAWA,IAAW,OAASA,KAEjC7D,KAAK89C,SAASj6C,EAAQ8uC,MAAO9uC,EAAQgvC,OA4B3ChxC,EAAMoR,UAAU6qC,SAAW,SAAUnL,EAAOE,EAAKgO,EAAWoY,GACtDA,KAAW,IACbA,GAAS,EAEX,IAAIC,GAAsB3yD,QAATosC,EAAqBhyC,EAAKgH,QAAQgrC,EAAO,QAAQ7qC,UAAY,KAC1EqxD,EAAkB5yD,QAAPssC,EAAmBlyC,EAAKgH,QAAQkrC,EAAK,QAAQ/qC,UAAY,IAGxE,IAFA9H,KAAKo5D,mBAEDvY,EAAW,CAEb,GAAI7gB,GAAKhgC,KACLq5D,EAAYr5D,KAAK2yC,MACjB2mB,EAAUt5D,KAAK6yC,IACfpsB,EAAgC,gBAAdo6B,IAA0B,YAAcA,GAAYA,EAAUp6B,SAAW,IAC3F8yC,EAAkC,gBAAd1Y,IAA0B,kBAAoBA,GAAYA,EAAU2Y,eAAiB,gBACzGA,EAAiB74D,EAAKmR,gBAAgBynD,EAC1C,KAAKC,EACH,KAAM,IAAIxyD,OAAM,2BAA6By7B,KAAKC,UAAU62B,GAAc,kBAAyBnyD,OAAO6H,KAAKtO,EAAKmR,iBAAiB5I,KAAK,MAG5I,IAAIuwD,IAAW,GAAIp0D,OAAOyC,UACtB4xD,GAAa,EAEbpiD,EAAO,QAASA,KAClB,IAAK0oB,EAAGn5B,MAAMunD,MAAMuL,SAAU,CAC5B,GAAI12C,IAAM,GAAI5d,OAAOyC,UACjBkjB,EAAO/H,EAAMw2C,EACbG,EAAOJ,EAAexuC,EAAOvE,GAC7BozC,EAAO7uC,EAAOvE,EACd9Y,EAAIksD,GAAuB,OAAfX,EAAsBA,EAAaG,GAAaH,EAAaG,GAAaO,EACtFpuD,EAAIquD,GAAqB,OAAbV,EAAoBA,EAAWG,GAAWH,EAAWG,GAAWM,CAEhFjM,GAAU3tB,EAAG85B,YAAYnsD,EAAGnC,GAC5B5J,EAASm4D,kBAAkB/5B,EAAGn8B,QAAQE,OAAQi8B,EAAGmf,KAAMnf,EAAGn8B,QAAQ07C,aAClEma,EAAaA,GAAc/L,EACvBA,GACF3tB,EAAGmf,KAAKE,QAAQzH,KAAK,eAAiBjF,MAAO,GAAIttC,MAAK26B,EAAG2S,OAAQE,IAAK,GAAIxtC,MAAK26B,EAAG6S,KAAMomB,OAAQA,IAG9FY,EACEH,GACF15B,EAAGmf,KAAKE,QAAQzH,KAAK,gBAAkBjF,MAAO,GAAIttC,MAAK26B,EAAG2S,OAAQE,IAAK,GAAIxtC,MAAK26B,EAAG6S,KAAMomB,OAAQA,IAKnGj5B,EAAGw4B,eAAiBtuD,WAAWoN,EAAM,KAK3C,OAAOA,KAEP,GAAIq2C,GAAU3tD,KAAK85D,YAAYZ,EAAYC,EAE3C,IADAv3D,EAASm4D,kBAAkB/5D,KAAK6D,QAAQE,OAAQ/D,KAAKm/C,KAAMn/C,KAAK6D,QAAQ07C,aACpEoO,EAAS,CACX,GAAIhuB,IAAWgT,MAAO,GAAIttC,MAAKrF,KAAK2yC,OAAQE,IAAK,GAAIxtC,MAAKrF,KAAK6yC,KAAMomB,OAAQA,EAC7Ej5D,MAAKm/C,KAAKE,QAAQzH,KAAK,cAAejY,GACtC3/B,KAAKm/C,KAAKE,QAAQzH,KAAK,eAAgBjY,KAS7C99B,EAAMoR,UAAUmmD,iBAAmB,WAC7Bp5D,KAAKw4D,iBACPl1B,aAAatjC,KAAKw4D,gBAClBx4D,KAAKw4D,eAAiB,OAa1B32D,EAAMoR,UAAU6mD,YAAc,SAAUnnB,EAAOE,GAC7C,GAII3qB,GAJA8xC,EAAoB,MAATrnB,EAAgBhyC,EAAKgH,QAAQgrC,EAAO,QAAQ7qC,UAAY9H,KAAK2yC,MACxEsnB,EAAgB,MAAPpnB,EAAclyC,EAAKgH,QAAQkrC,EAAK,QAAQ/qC,UAAY9H,KAAK6yC,IAClEhuC,EAA0B,MAApB7E,KAAK6D,QAAQgB,IAAclE,EAAKgH,QAAQ3H,KAAK6D,QAAQgB,IAAK,QAAQiD,UAAY,KACpFlD,EAA0B,MAApB5E,KAAK6D,QAAQe,IAAcjE,EAAKgH,QAAQ3H,KAAK6D,QAAQe,IAAK,QAAQkD,UAAY,IAIxF,IAAIrC,MAAMu0D,IAA0B,OAAbA,EACrB,KAAM,IAAIhzD,OAAM,kBAAoB2rC,EAAQ,IAE9C,IAAIltC,MAAMw0D,IAAsB,OAAXA,EACnB,KAAM,IAAIjzD,OAAM,gBAAkB6rC,EAAM,IAyC1C,IArCamnB,EAATC,IACFA,EAASD,GAIC,OAARp1D,GACaA,EAAXo1D,IACF9xC,EAAOtjB,EAAMo1D,EACbA,GAAY9xC,EACZ+xC,GAAU/xC,EAGC,MAAPrjB,GACEo1D,EAASp1D,IACXo1D,EAASp1D,IAOL,OAARA,GACEo1D,EAASp1D,IACXqjB,EAAO+xC,EAASp1D,EAChBm1D,GAAY9xC,EACZ+xC,GAAU/xC,EAGC,MAAPtjB,GACaA,EAAXo1D,IACFA,EAAWp1D,IAOU,OAAzB5E,KAAK6D,QAAQy0D,QAAkB,CACjC,GAAIA,GAAUluC,WAAWpqB,KAAK6D,QAAQy0D,QACxB,GAAVA,IACFA,EAAU,GAEYA,EAApB2B,EAASD,IACPh6D,KAAK6yC,IAAM7yC,KAAK2yC,QAAU2lB,GAAW0B,EAAWh6D,KAAK2yC,OAASsnB,EAASj6D,KAAK6yC,KAE9EmnB,EAAWh6D,KAAK2yC,MAChBsnB,EAASj6D,KAAK6yC,MAGd3qB,EAAOowC,GAAW2B,EAASD,GAC3BA,GAAY9xC,EAAO,EACnB+xC,GAAU/xC,EAAO,IAMvB,GAA6B,OAAzBloB,KAAK6D,QAAQ00D,QAAkB,CACjC,GAAIA,GAAUnuC,WAAWpqB,KAAK6D,QAAQ00D,QACxB,GAAVA,IACFA,EAAU,GAGR0B,EAASD,EAAWzB,IAClBv4D,KAAK6yC,IAAM7yC,KAAK2yC,QAAU4lB,GAAWyB,EAAWh6D,KAAK2yC,OAASsnB,EAASj6D,KAAK6yC,KAE9EmnB,EAAWh6D,KAAK2yC,MAChBsnB,EAASj6D,KAAK6yC,MAGd3qB,EAAO+xC,EAASD,EAAWzB,EAC3ByB,GAAY9xC,EAAO,EACnB+xC,GAAU/xC,EAAO,IAKvB,GAAIylC,GAAU3tD,KAAK2yC,OAASqnB,GAAYh6D,KAAK6yC,KAAOonB,CASpD,OANMD,IAAYh6D,KAAK2yC,OAASqnB,GAAYh6D,KAAK6yC,KAAOonB,GAAUj6D,KAAK2yC,OAASsnB,GAAUj6D,KAAK6yC,KAAU7yC,KAAK2yC,OAASqnB,GAAYh6D,KAAK2yC,OAASsnB,GAAUj6D,KAAK6yC,KAAOmnB,GAAYh6D,KAAK6yC,KAAOonB,GAC7Lj6D,KAAKm/C,KAAKE,QAAQzH,KAAK,oBAGzB53C,KAAK2yC,MAAQqnB,EACbh6D,KAAK6yC,IAAMonB,EACJtM,GAOT9rD,EAAMoR,UAAUinD,SAAW,WACzB,OACEvnB,MAAO3yC,KAAK2yC,MACZE,IAAK7yC,KAAK6yC,MAUdhxC,EAAMoR,UAAUknD,WAAa,SAAU37B,EAAO47B,GAC5C,MAAOv4D,GAAMs4D,WAAWn6D,KAAK2yC,MAAO3yC,KAAK6yC,IAAKrU,EAAO47B,IAWvDv4D,EAAMs4D,WAAa,SAAUxnB,EAAOE,EAAKrU,EAAO47B,GAI9C,MAHoB7zD,UAAhB6zD,IACFA,EAAc,GAEH,GAAT57B,GAAcqU,EAAMF,GAAS,GAE7BnrB,OAAQmrB,EACR3tC,MAAOw5B,GAASqU,EAAMF,EAAQynB,KAI9B5yC,OAAQ,EACRxiB,MAAO,IAUbnD,EAAMoR,UAAUwlD,aAAe,SAAU3tD,GACvC9K,KAAKg4D,gBAAkB,EACvBh4D,KAAKq6D,cAAgB,EAGhBr6D,KAAK6D,QAAQu0D,UAGbp4D,KAAKs6D,eAAexvD,IAIpB9K,KAAK6G,MAAMunD,MAAMmM,gBAEtBv6D,KAAK6G,MAAMunD,MAAMzb,MAAQ3yC,KAAK2yC,MAC9B3yC,KAAK6G,MAAMunD,MAAMvb,IAAM7yC,KAAK6yC,IAC5B7yC,KAAK6G,MAAMunD,MAAMuL,UAAW,EAExB35D,KAAKm/C,KAAKxF,IAAIj6C,OAChBM,KAAKm/C,KAAKxF,IAAIj6C,KAAKoP,MAAMmoC,OAAS,UAStCp1C,EAAMoR,UAAUylD,QAAU,SAAU5tD,GAClC,GAAK9K,KAAK6G,MAAMunD,MAAMuL,UAGjB35D,KAAK6D,QAAQu0D,UAKbp4D,KAAK6G,MAAMunD,MAAMmM,cAAtB,CAEA,GAAI7vC,GAAY1qB,KAAK6D,QAAQ6mB,SAC7BquC,GAAkBruC,EAClB,IAAIqB,GAAqB,cAAbrB,EAA4B5f,EAAMigD,OAASjgD,EAAMkgD,MAC7Dj/B,IAAS/rB,KAAKg4D,eACd,IAAIjb,GAAW/8C,KAAK6G,MAAMunD,MAAMvb,IAAM7yC,KAAK6G,MAAMunD,MAAMzb,MAGnDlsB,EAAW7kB,EAAS44D,yBAAyBx6D,KAAKm/C,KAAKI,YAAav/C,KAAK2yC,MAAO3yC,KAAK6yC,IACzFkK,IAAYt2B,CAEZ,IAAI+X,GAAqB,cAAb9T,EAA4B1qB,KAAKm/C,KAAKC,SAAShJ,OAAO5X,MAAQx+B,KAAKm/C,KAAKC,SAAShJ,OAAO3X,OAChGg8B,GAAa1uC,EAAQyS,EAAQue,EAC7Bid,EAAWh6D,KAAK6G,MAAMunD,MAAMzb,MAAQ8nB,EACpCR,EAASj6D,KAAK6G,MAAMunD,MAAMvb,IAAM4nB,EAGhCC,EAAY94D,EAAS+4D,mBAAmB36D,KAAKm/C,KAAKI,YAAaya,EAAUh6D,KAAKq6D,cAAgBtuC,GAAO,GACrG6uC,EAAUh5D,EAAS+4D,mBAAmB36D,KAAKm/C,KAAKI,YAAa0a,EAAQj6D,KAAKq6D,cAAgBtuC,GAAO,EACrG,IAAI2uC,GAAaV,GAAYY,GAAWX,EAKtC,MAJAj6D,MAAKg4D,iBAAmBjsC,EACxB/rB,KAAK6G,MAAMunD,MAAMzb,MAAQ+nB,EACzB16D,KAAK6G,MAAMunD,MAAMvb,IAAM+nB,MACvB56D,MAAK04D,QAAQ5tD,EAIf9K,MAAKq6D,cAAgBtuC,EACrB/rB,KAAK85D,YAAYE,EAAUC,EAE3B,IAAIY,GAAY,GAAIx1D,MAAKrF,KAAK2yC,OAC1BmoB,EAAU,GAAIz1D,MAAKrF,KAAK6yC,IAG5B7yC,MAAKm/C,KAAKE,QAAQzH,KAAK,eACrBjF,MAAOkoB,EACPhoB,IAAKioB,EACL7B,QAAQ,MASZp3D,EAAMoR,UAAU0lD,WAAa,SAAU7tD,GAChC9K,KAAK6G,MAAMunD,MAAMuL,UAGjB35D,KAAK6D,QAAQu0D,UAKbp4D,KAAK6G,MAAMunD,MAAMmM,gBAEtBv6D,KAAK6G,MAAMunD,MAAMuL,UAAW,EACxB35D,KAAKm/C,KAAKxF,IAAIj6C,OAChBM,KAAKm/C,KAAKxF,IAAIj6C,KAAKoP,MAAMmoC,OAAS,QAIpCj3C,KAAKm/C,KAAKE,QAAQzH,KAAK,gBACrBjF,MAAO,GAAIttC,MAAKrF,KAAK2yC,OACrBE,IAAK,GAAIxtC,MAAKrF,KAAK6yC,KACnBomB,QAAQ,MAUZp3D,EAAMoR,UAAU2lD,cAAgB,SAAU9tD,GAExC,GAAM9K,KAAK6D,QAAQw0D,UAAYr4D,KAAK6D,QAAQu0D,UAGvCp4D,KAAKs6D,eAAexvD,MAGrB9K,KAAK6D,QAAQk3D,SAAYjwD,EAAM9K,KAAK6D,QAAQk3D,UAAhD,CAGA,GAAIhvC,GAAQ,CAcZ,IAbIjhB,EAAM2tC,WAER1sB,EAAQjhB,EAAM2tC,WAAa,IAClB3tC,EAAM4tC,SAIf3sB,GAASjhB,EAAM4tC,OAAS,GAMtB3sB,EAAO,CAKT,GAAI/mB,EAEFA,GADU,EAAR+mB,EACM,EAAIA,EAAQ,EAEZ,GAAK,EAAIA,EAAQ,EAI3B,IAAIivC,GAAUhC,GAAap7B,EAAG9yB,EAAM+8B,QAAS5mB,EAAGnW,EAAMk9B,SAAWhoC,KAAKm/C,KAAKxF,IAAIvD,QAC3E6kB,EAAcj7D,KAAKk7D,eAAeF,EAEtCh7D,MAAKm7D,KAAKn2D,EAAOi2D,EAAalvC,GAKhCjhB,EAAMD,mBAORhJ,EAAMoR,UAAU4lD,SAAW,SAAU/tD,GACnC9K,KAAK6G,MAAMunD,MAAMzb,MAAQ3yC,KAAK2yC,MAC9B3yC,KAAK6G,MAAMunD,MAAMvb,IAAM7yC,KAAK6yC,IAC5B7yC,KAAK6G,MAAMunD,MAAMmM,eAAgB,EACjCv6D,KAAK6G,MAAMunD,MAAMhY,OAAS,KAC1Bp2C,KAAKi4D,YAAc,EACnBj4D,KAAKg4D,gBAAkB,GAQzBn2D,EAAMoR,UAAU6lD,SAAW,SAAUhuD,GAEnC,GAAM9K,KAAK6D,QAAQw0D,UAAYr4D,KAAK6D,QAAQu0D,SAA5C,CAEAp4D,KAAK6G,MAAMunD,MAAMmM,eAAgB,EAE5Bv6D,KAAK6G,MAAMunD,MAAMhY,SACpBp2C,KAAK6G,MAAMunD,MAAMhY,OAAS4iB,EAAWluD,EAAMsrC,OAAQp2C,KAAKm/C,KAAKxF,IAAIvD,QAGnE,IAAIpxC,GAAQ,GAAK8F,EAAM9F,MAAQhF,KAAKi4D,aAChCmD,EAAap7D,KAAKk7D,eAAel7D,KAAK6G,MAAMunD,MAAMhY,QAElDilB,EAAiBz5D,EAAS44D,yBAAyBx6D,KAAKm/C,KAAKI,YAAav/C,KAAK2yC,MAAO3yC,KAAK6yC,KAC3FyoB,EAAuB15D,EAAS25D,wBAAwBv7D,KAAK6D,QAAQE,OAAQ/D,KAAKm/C,KAAKI,YAAav/C,KAAMo7D,GAC1GI,EAAsBH,EAAiBC,EAGvCtB,EAAWoB,EAAaE,GAAwBt7D,KAAK6G,MAAMunD,MAAMzb,OAASyoB,EAAaE,IAAyBt2D,EAChHi1D,EAASmB,EAAaI,GAAuBx7D,KAAK6G,MAAMunD,MAAMvb,KAAOuoB,EAAaI,IAAwBx2D,CAG9GhF,MAAKk4D,aAA4B,GAAb,EAAIlzD,EACxBhF,KAAKm4D,WAA0B,GAAbnzD,EAAQ,CAE1B,IAAI01D,GAAY94D,EAAS+4D,mBAAmB36D,KAAKm/C,KAAKI,YAAaya,EAAU,EAAIh1D,GAAO,GACpF41D,EAAUh5D,EAAS+4D,mBAAmB36D,KAAKm/C,KAAKI,YAAa0a,EAAQj1D,EAAQ,GAAG,IAChF01D,GAAaV,GAAYY,GAAWX,KACtCj6D,KAAK6G,MAAMunD,MAAMzb,MAAQ+nB,EACzB16D,KAAK6G,MAAMunD,MAAMvb,IAAM+nB,EACvB56D,KAAKi4D,YAAc,EAAIntD,EAAM9F,MAC7Bg1D,EAAWU,EACXT,EAASW,GAGX56D,KAAK89C,SAASkc,EAAUC,GAAQ,GAAO,GAEvCj6D,KAAKk4D,cAAe,EACpBl4D,KAAKm4D,YAAa,IAUpBt2D,EAAMoR,UAAUqnD,eAAiB,SAAUxvD,GAGzC,GAAI+8B,GAAU/8B,EAAMsrC,OAAStrC,EAAMsrC,OAAOxY,EAAI9yB,EAAM+8B,QAChDjK,EAAIiK,EAAUlnC,EAAK6H,gBAAgBxI,KAAKm/C,KAAKxF,IAAIoJ,iBACjD/3B,EAAOhrB,KAAKm/C,KAAKx+C,KAAKm/C,OAAOliB,EAEjC,OAAO5S,IAAQhrB,KAAK2yC,OAAS3nB,GAAQhrB,KAAK6yC,KAS5ChxC,EAAMoR,UAAUioD,eAAiB,SAAUF,GACzC,GAAIb,GACAzvC,EAAY1qB,KAAK6D,QAAQ6mB,SAI7B,IAFAquC,EAAkBruC,GAED,cAAbA,EACF,MAAO1qB,MAAKm/C,KAAKx+C,KAAKm/C,OAAOkb,EAAQp9B,GAAG91B,SAExC,IAAI22B,GAASz+B,KAAKm/C,KAAKC,SAAShJ,OAAO3X,MAEvC,OADA07B,GAAan6D,KAAKm6D,WAAW17B,GACtBu8B,EAAQ/5C,EAAIk5C,EAAWn1D,MAAQm1D,EAAW3yC,QA4BrD3lB,EAAMoR,UAAUkoD,KAAO,SAAUn2D,EAAOoxC,EAAQrqB,GAEhC,MAAVqqB,IACFA,GAAUp2C,KAAK2yC,MAAQ3yC,KAAK6yC,KAAO,EAGrC,IAAIwoB,GAAiBz5D,EAAS44D,yBAAyBx6D,KAAKm/C,KAAKI,YAAav/C,KAAK2yC,MAAO3yC,KAAK6yC,KAC3FyoB,EAAuB15D,EAAS25D,wBAAwBv7D,KAAK6D,QAAQE,OAAQ/D,KAAKm/C,KAAKI,YAAav/C,KAAMo2C,GAC1GolB,EAAsBH,EAAiBC,EAGvCtB,EAAW5jB,EAASklB,GAAwBt7D,KAAK2yC,OAASyD,EAASklB,IAAyBt2D,EAC5Fi1D,EAAS7jB,EAASolB,GAAuBx7D,KAAK6yC,KAAOuD,EAASolB,IAAwBx2D,CAG1FhF,MAAKk4D,aAAensC,EAAQ,GAAI,GAAQ,EACxC/rB,KAAKm4D,YAAcpsC,EAAQ,GAAI,GAAQ,CACvC,IAAI2uC,GAAY94D,EAAS+4D,mBAAmB36D,KAAKm/C,KAAKI,YAAaya,EAAUjuC,GAAO,GAChF6uC,EAAUh5D,EAAS+4D,mBAAmB36D,KAAKm/C,KAAKI,YAAa0a,GAASluC,GAAO,IAC7E2uC,GAAaV,GAAYY,GAAWX,KACtCD,EAAWU,EACXT,EAASW,GAGX56D,KAAK89C,SAASkc,EAAUC,GAAQ,GAAO,GAEvCj6D,KAAKk4D,cAAe,EACpBl4D,KAAKm4D,YAAa,GASpBt2D,EAAMoR,UAAUwoD,KAAO,SAAU1vC,GAE/B,GAAI7D,GAAOloB,KAAK6yC,IAAM7yC,KAAK2yC,MAGvBqnB,EAAWh6D,KAAK2yC,MAAQzqB,EAAO6D,EAC/BkuC,EAASj6D,KAAK6yC,IAAM3qB,EAAO6D,CAI/B/rB,MAAK2yC,MAAQqnB,EACbh6D,KAAK6yC,IAAMonB,GAObp4D,EAAMoR,UAAUm/B,OAAS,SAAUA,GACjC,GAAIgE,IAAUp2C,KAAK2yC,MAAQ3yC,KAAK6yC,KAAO,EAEnC3qB,EAAOkuB,EAAShE,EAGhB4nB,EAAWh6D,KAAK2yC,MAAQzqB,EACxB+xC,EAASj6D,KAAK6yC,IAAM3qB,CAExBloB,MAAK89C,SAASkc,EAAUC,IAG1Bp6D,EAAOD,QAAUiC,GAIb,SAAShC,EAAQD,EAASM,GAIjBA,EAAoB,GAOjCN,GAAQ87D,QAAU,SAAUvX,EAAQ56C,GAClCA,EAAS6/C,aAAe,SAAUt+C,GAC5BA,EAAMq6C,SACR57C,EAASuB,IAIbq5C,EAAO/kB,GAAG,eAAgB71B,EAAS6/C,eAQrCxpD,EAAQ+7D,UAAY,SAAUxX,EAAQ56C,GAOpC,MANAA,GAAS6/C,aAAe,SAAUt+C,GAC5BA,EAAM4+C,SACRngD,EAASuB,IAINq5C,EAAO/kB,GAAG,eAAgB71B,EAAS6/C,eAQ5CxpD,EAAQg8D,SAAW,SAAUzX,EAAQ56C,GACnC46C,EAAO5kB,IAAI,eAAgBh2B,EAAS6/C,eAQtCxpD,EAAQi8D,WAAaj8D,EAAQg8D,UAIzB,SAAS/7D,EAAQD,GASrB,QAAS4C,GAAU28C,EAAMt7C,GACvB7D,KAAK6D,QAAU,KACf7D,KAAK6G,MAAQ,KAQfrE,EAAUyQ,UAAU+rB,WAAa,SAAUn7B,GACrCA,GACFlD,KAAKgG,OAAO3G,KAAK6D,QAASA,IAQ9BrB,EAAUyQ,UAAUw5B,OAAS,WAE3B,OAAO,GAMTjqC,EAAUyQ,UAAUksB,QAAU,aAU9B38B,EAAUyQ,UAAU6oD,WAAa,WAC/B,GAAIC,GAAU/7D,KAAK6G,MAAMm1D,iBAAmBh8D,KAAK6G,MAAM23B,OAASx+B,KAAK6G,MAAMo1D,kBAAoBj8D,KAAK6G,MAAM43B,MAK1G,OAHAz+B,MAAK6G,MAAMm1D,eAAiBh8D,KAAK6G,MAAM23B,MACvCx+B,KAAK6G,MAAMo1D,gBAAkBj8D,KAAK6G,MAAM43B,OAEjCs9B,GAGTl8D,EAAOD,QAAU4C,GAIb,SAAS3C,EAAQD,GAYrBA,EAAQs8D,qBAAuB,SAAUn4D,EAAQo7C,EAAMI,GACrD,GAAIA,IAAgBz4C,MAAMC,QAAQw4C,GAChC,MAAO3/C,GAAQs8D,qBAAqBn4D,EAAQo7C,GAAOI,GAIrD,IADAJ,EAAKI,eACDA,GACgC,GAA9Bz4C,MAAMC,QAAQw4C,GAAsB,CACtC,IAAK,GAAI94C,GAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IACtC,GAA8BF,SAA1Bg5C,EAAY94C,GAAG01D,OAAsB,CACvC,GAAIC,KACJA,GAASzpB,MAAQ5uC,EAAOw7C,EAAY94C,GAAGksC,OAAO3qC,SAASF,UACvDs0D,EAASvpB,IAAM9uC,EAAOw7C,EAAY94C,GAAGosC,KAAK7qC,SAASF,UACnDq3C,EAAKI,YAAY/3C,KAAK40D,GAG1Bjd,EAAKI,YAAY7gC,KAAK,SAAUxY,EAAGC,GACjC,MAAOD,GAAEysC,MAAQxsC,EAAEwsC,UAY3B/yC,EAAQm6D,kBAAoB,SAAUh2D,EAAQo7C,EAAMI,GAClD,GAAIA,IAAgBz4C,MAAMC,QAAQw4C,GAChC,MAAO3/C,GAAQm6D,kBAAkBh2D,EAAQo7C,GAAOI,GAGlD,IAAIA,GAAuDh5C,SAAxC44C,EAAKC,SAAS2D,gBAAgBvkB,MAAqB,CACpE5+B,EAAQs8D,qBAAqBn4D,EAAQo7C,EAAMI,EAQ3C,KAAK,GAND5M,GAAQ5uC,EAAOo7C,EAAKe,MAAMvN,OAC1BE,EAAM9uC,EAAOo7C,EAAKe,MAAMrN,KAExBwpB,EAAald,EAAKe,MAAMrN,IAAMsM,EAAKe,MAAMvN,MACzC2pB,EAAYD,EAAald,EAAKC,SAAS2D,gBAAgBvkB,MAElD/3B,EAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IACtC,GAA8BF,SAA1Bg5C,EAAY94C,GAAG01D,OAAsB,CACvC,GAAItB,GAAY92D,EAAOw7C,EAAY94C,GAAGksC,OAClCmoB,EAAU/2D,EAAOw7C,EAAY94C,GAAGosC,IAEpC,IAAoB,gBAAhBgoB,EAAUnmD,GACZ,KAAM,IAAI1N,OAAM,qCAAuCu4C,EAAY94C,GAAGksC,MAExE,IAAkB,gBAAdmoB,EAAQpmD,GACV,KAAM,IAAI1N,OAAM,mCAAqCu4C,EAAY94C,GAAGosC,IAGtE,IAAIpsB,GAAWq0C,EAAUD,CACzB,IAAIp0C,GAAY,EAAI61C,EAAW,CAE7B,GAAI90C,GAAS,EACT+0C,EAAW1pB,EAAI1qB,OACnB,QAAQo3B,EAAY94C,GAAG01D,QACrB,IAAK,QAECtB,EAAUl1C,OAASm1C,EAAQn1C,QAC7B6B,EAAS,GAEXqzC,EAAUp4C,UAAUkwB,EAAMlwB,aAC1Bo4C,EAAUr+C,KAAKm2B,EAAMn2B,QACrBq+C,EAAU1xC,SAAS,EAAG,QAEtB2xC,EAAQr4C,UAAUkwB,EAAMlwB,aACxBq4C,EAAQt+C,KAAKm2B,EAAMn2B,QACnBs+C,EAAQ3xC,SAAS,EAAI3B,EAAQ,QAE7B+0C,EAASt2C,IAAI,EAAG,QAChB,MACF,KAAK,SACH,GAAIu2C,GAAY1B,EAAQ5yC,KAAK2yC,EAAW,QACpCl1C,EAAMk1C,EAAUl1C,KAGpBk1C,GAAUl9C,KAAKg1B,EAAMh1B,QACrBk9C,EAAUp+C,MAAMk2B,EAAMl2B,SACtBo+C,EAAUr+C,KAAKm2B,EAAMn2B,QACrBs+C,EAAUD,EAAU1yC,QAGpB0yC,EAAUl1C,IAAIA,GACdm1C,EAAQn1C,IAAIA,GACZm1C,EAAQ70C,IAAIu2C,EAAW,QAEvB3B,EAAU1xC,SAAS,EAAG,SACtB2xC,EAAQ3xC,SAAS,EAAG,SAEpBozC,EAASt2C,IAAI,EAAG,QAChB,MACF,KAAK,UACC40C,EAAUp+C,SAAWq+C,EAAQr+C,UAC/B+K,EAAS,GAEXqzC,EAAUp+C,MAAMk2B,EAAMl2B,SACtBo+C,EAAUr+C,KAAKm2B,EAAMn2B,QACrBq+C,EAAU1xC,SAAS,EAAG,UAEtB2xC,EAAQr+C,MAAMk2B,EAAMl2B,SACpBq+C,EAAQt+C,KAAKm2B,EAAMn2B,QACnBs+C,EAAQ3xC,SAAS,EAAG,UACpB2xC,EAAQ70C,IAAIuB,EAAQ,UAEpB+0C,EAASt2C,IAAI,EAAG,SAChB,MACF,KAAK,SACC40C,EAAUr+C,QAAUs+C,EAAQt+C,SAC9BgL,EAAS,GAEXqzC,EAAUr+C,KAAKm2B,EAAMn2B,QACrBq+C,EAAU1xC,SAAS,EAAG,SACtB2xC,EAAQt+C,KAAKm2B,EAAMn2B,QACnBs+C,EAAQ3xC,SAAS,EAAG,SACpB2xC,EAAQ70C,IAAIuB,EAAQ,SAEpB+0C,EAASt2C,IAAI,EAAG,QAChB,MACF,SAEE,WADAtG,SAAQu+B,IAAI,2EAA4EqB,EAAY94C,GAAG01D,QAG3G,KAAmBI,EAAZ1B,GAEL,OADA1b,EAAKI,YAAY/3C,MAAOmrC,MAAOkoB,EAAU/yD,UAAW+qC,IAAKioB,EAAQhzD,YACzDy3C,EAAY94C,GAAG01D,QACrB,IAAK,QACHtB,EAAU50C,IAAI,EAAG,QACjB60C,EAAQ70C,IAAI,EAAG,OACf,MACF,KAAK,SACH40C,EAAU50C,IAAI,EAAG,SACjB60C,EAAQ70C,IAAI,EAAG,QACf,MACF,KAAK,UACH40C,EAAU50C,IAAI,EAAG,UACjB60C,EAAQ70C,IAAI,EAAG,SACf,MACF,KAAK,SACH40C,EAAU50C,IAAI,EAAG,KACjB60C,EAAQ70C,IAAI,EAAG,IACf,MACF,SAEE,WADAtG,SAAQu+B,IAAI,2EAA4EqB,EAAY94C,GAAG01D,QAI7Ghd,EAAKI,YAAY/3C,MAAOmrC,MAAOkoB,EAAU/yD,UAAW+qC,IAAKioB,EAAQhzD,aAKvElI,EAAQ68D,iBAAiBtd,EAEzB,IAAIud,GAAc98D,EAAQ+8D,SAASxd,EAAKe,MAAMvN,MAAOwM,EAAKI,aACtDqd,EAAYh9D,EAAQ+8D,SAASxd,EAAKe,MAAMrN,IAAKsM,EAAKI,aAClDsd,EAAa1d,EAAKe,MAAMvN,MACxBmqB,EAAW3d,EAAKe,MAAMrN,GACA,IAAtB6pB,EAAYK,SACdF,EAAwC,GAA3B1d,EAAKe,MAAMgY,aAAuBwE,EAAY7B,UAAY,EAAI6B,EAAY5B,QAAU,GAE3E,GAApB8B,EAAUG,SACZD,EAAoC,GAAzB3d,EAAKe,MAAMiY,WAAqByE,EAAU/B,UAAY,EAAI+B,EAAU9B,QAAU,IAEjE,GAAtB4B,EAAYK,QAAsC,GAApBH,EAAUG,SAC1C5d,EAAKe,MAAM4Z,YAAY+C,EAAYC,KAUzCl9D,EAAQ68D,iBAAmB,SAAUtd,GAGnC,IAAK,GAFDI,GAAcJ,EAAKI,YACnByd,KACKv2D,EAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IACtC,IAAK,GAAIgK,GAAI,EAAGA,EAAI8uC,EAAYj5C,OAAQmK,IAClChK,GAAKgK,GAA8B,GAAzB8uC,EAAY9uC,GAAGkxB,QAA2C,GAAzB4d,EAAY94C,GAAGk7B,SAExD4d,EAAY9uC,GAAGkiC,OAAS4M,EAAY94C,GAAGksC,OAAS4M,EAAY9uC,GAAGoiC,KAAO0M,EAAY94C,GAAGosC,IACvF0M,EAAY9uC,GAAGkxB,QAAS,EAGjB4d,EAAY9uC,GAAGkiC,OAAS4M,EAAY94C,GAAGksC,OAAS4M,EAAY9uC,GAAGkiC,OAAS4M,EAAY94C,GAAGosC,KAC5F0M,EAAY94C,GAAGosC,IAAM0M,EAAY9uC,GAAGoiC,IACpC0M,EAAY9uC,GAAGkxB,QAAS,GAGjB4d,EAAY9uC,GAAGoiC,KAAO0M,EAAY94C,GAAGksC,OAAS4M,EAAY9uC,GAAGoiC,KAAO0M,EAAY94C,GAAGosC,MACxF0M,EAAY94C,GAAGksC,MAAQ4M,EAAY9uC,GAAGkiC,MACtC4M,EAAY9uC,GAAGkxB,QAAS,GAMpC,KAAK,GAAIl7B,GAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IAClC84C,EAAY94C,GAAGk7B,UAAW,GAC5Bq7B,EAAUx1D,KAAK+3C,EAAY94C,GAI/B04C,GAAKI,YAAcyd,EACnB7d,EAAKI,YAAY7gC,KAAK,SAAUxY,EAAGC,GACjC,MAAOD,GAAEysC,MAAQxsC,EAAEwsC,SAIvB/yC,EAAQq9D,WAAa,SAAU1lC,GAC7B,IAAK,GAAI9wB,GAAI,EAAGA,EAAI8wB,EAAMjxB,OAAQG,IAChCkZ,QAAQu+B,IAAIz3C,EAAG,GAAIpB,MAAKkyB,EAAM9wB,GAAGksC,OAAQ,GAAIttC,MAAKkyB,EAAM9wB,GAAGosC,KAAMtb,EAAM9wB,GAAGksC,MAAOpb,EAAM9wB,GAAGosC,IAAKtb,EAAM9wB,GAAGk7B,SAU5G/hC,EAAQs9D,oBAAsB,SAAUn5D,EAAQo5D,EAAUC,GAGxD,IAAK,GAFDC,IAAe,EACfC,EAAeH,EAASI,QAAQz1D,UAC3BrB,EAAI,EAAGA,EAAI02D,EAAS5d,YAAYj5C,OAAQG,IAAK,CACpD,GAAIo0D,GAAYsC,EAAS5d,YAAY94C,GAAGksC,MACpCmoB,EAAUqC,EAAS5d,YAAY94C,GAAGosC,GACtC,IAAIyqB,GAAgBzC,GAA4BC,EAAfwC,EAAwB,CACvDD,GAAe,CACf,QAIJ,GAAoB,GAAhBA,GAAwBC,EAAeH,EAASzf,KAAK51C,WAAaw1D,GAAgBF,EAAc,CAClG,GAAIxrD,GAAY7N,EAAOq5D,GACnB/0D,EAAWtE,EAAO+2D,EAElBlpD,GAAU4K,QAAUnU,EAASmU,OAC/B2gD,EAASK,cAAe,EACf5rD,EAAU6K,SAAWpU,EAASoU,QACvC0gD,EAASM,eAAgB,EAChB7rD,EAAU6Q,aAAepa,EAASoa,cAC3C06C,EAASO,aAAc,GAGzBP,EAASI,QAAUl1D,IAkCvBzI,EAAQ8/C,SAAW,SAAU/9C,EAAMqpB,EAAMwT,GACvC,GAAoC,GAAhC78B,EAAKw9C,KAAKI,YAAYj5C,OAAa,CACrC,GAAI6zD,GAAax4D,EAAKu+C,MAAMia,WAAW37B,EACvC,QAAQxT,EAAKljB,UAAYqyD,EAAW3yC,QAAU2yC,EAAWn1D,MAEzD,GAAI+3D,GAASn9D,EAAQ+8D,SAAS3xC,EAAMrpB,EAAKw9C,KAAKI,YACzB,IAAjBwd,EAAOA,SACT/xC,EAAO+xC,EAAOlC,UAGhB,IAAIp0C,GAAW7mB,EAAQ46D,yBAAyB74D,EAAKw9C,KAAKI,YAAa59C,EAAKu+C,MAAMvN,MAAOhxC,EAAKu+C,MAAMrN,IACpG7nB,GAAOprB,EAAQ+9D,qBAAqBh8D,EAAKkC,QAAQE,OAAQpC,EAAKw9C,KAAKI,YAAa59C,EAAKu+C,MAAOl1B,EAE5F,IAAImvC,GAAax4D,EAAKu+C,MAAMia,WAAW37B,EAAO/X,EAC9C,QAAQuE,EAAKljB,UAAYqyD,EAAW3yC,QAAU2yC,EAAWn1D,OAY7DpF,EAAQkgD,OAAS,SAAUn+C,EAAMi8B,EAAGY,GAClC,GAAoC,GAAhC78B,EAAKw9C,KAAKI,YAAYj5C,OAAa,CACrC,GAAI6zD,GAAax4D,EAAKu+C,MAAMia,WAAW37B,EACvC,OAAO,IAAIn5B,MAAKu4B,EAAIu8B,EAAWn1D,MAAQm1D,EAAW3yC,QAElD,GAAI6zC,GAAiBz7D,EAAQ46D,yBAAyB74D,EAAKw9C,KAAKI,YAAa59C,EAAKu+C,MAAMvN,MAAOhxC,EAAKu+C,MAAMrN,KACtG+qB,EAAgBj8D,EAAKu+C,MAAMrN,IAAMlxC,EAAKu+C,MAAMvN,MAAQ0oB,EACpDwC,EAAkBD,EAAgBhgC,EAAIY,EACtCs/B,EAA4Bl+D,EAAQm+D,6BAA6Bp8D,EAAKw9C,KAAKI,YAAa59C,EAAKu+C,MAAO2d,GAEpGG,EAAU,GAAI34D,MAAKy4D,EAA4BD,EAAkBl8D,EAAKu+C,MAAMvN,MAChF,OAAOqrB,IAWXp+D,EAAQ46D,yBAA2B,SAAUjb,EAAa5M,EAAOE,GAE/D,IAAK,GADDpsB,GAAW,EACNhgB,EAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IAAK,CAC3C,GAAIo0D,GAAYtb,EAAY94C,GAAGksC,MAC3BmoB,EAAUvb,EAAY94C,GAAGosC,GAEzBgoB,IAAaloB,GAAmBE,EAAVioB,IACxBr0C,GAAYq0C,EAAUD,GAG1B,MAAOp0C,IAWT7mB,EAAQ+9D,qBAAuB,SAAU55D,EAAQw7C,EAAaW,EAAOl1B,GAGnE,MAFAA,GAAOjnB,EAAOinB,GAAMhjB,SAASF,UAC7BkjB,GAAQprB,EAAQ27D,wBAAwBx3D,EAAQw7C,EAAaW,EAAOl1B,IAItEprB,EAAQ27D,wBAA0B,SAAUx3D,EAAQw7C,EAAaW,EAAOl1B,GACtE,GAAIizC,GAAa,CACjBjzC,GAAOjnB,EAAOinB,GAAMhjB,SAASF,SAE7B,KAAK,GAAIrB,GAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IAAK,CAC3C,GAAIo0D,GAAYtb,EAAY94C,GAAGksC,MAC3BmoB,EAAUvb,EAAY94C,GAAGosC,GAEzBgoB,IAAa3a,EAAMvN,OAASmoB,EAAU5a,EAAMrN,KAC1C7nB,GAAQ8vC,IACVmD,GAAcnD,EAAUD,GAI9B,MAAOoD,IAWTr+D,EAAQm+D,6BAA+B,SAAUxe,EAAaW,EAAOge,GAKnE,IAAK,GAJD7C,GAAiB,EACjB50C,EAAW,EACX03C,EAAgBje,EAAMvN,MAEjBlsC,EAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IAAK,CAC3C,GAAIo0D,GAAYtb,EAAY94C,GAAGksC,MAC3BmoB,EAAUvb,EAAY94C,GAAGosC,GAE7B,IAAIgoB,GAAa3a,EAAMvN,OAASmoB,EAAU5a,EAAMrN,IAAK,CAGnD,GAFApsB,GAAYo0C,EAAYsD,EACxBA,EAAgBrD,EACZr0C,GAAYy3C,EACd,KAEA7C,IAAkBP,EAAUD,GAKlC,MAAOQ,IAWTz7D,EAAQ+6D,mBAAqB,SAAUpb,EAAav0B,EAAMN,EAAW0zC,GACnE,GAAIzB,GAAW/8D,EAAQ+8D,SAAS3xC,EAAMu0B,EACtC,OAAuB,IAAnBod,EAASI,OACK,EAAZryC,EACuB,GAArB0zC,EACKzB,EAAS9B,WAAa8B,EAAS7B,QAAU9vC,GAAQ,EAEjD2xC,EAAS9B,UAAY,EAGL,GAArBuD,EACKzB,EAAS7B,SAAW9vC,EAAO2xC,EAAS9B,WAAa,EAEjD8B,EAAS7B,QAAU,EAIvB9vC,GAWXprB,EAAQ+8D,SAAW,SAAU3xC,EAAMu0B,GACjC,IAAK,GAAI94C,GAAI,EAAGA,EAAI84C,EAAYj5C,OAAQG,IAAK,CAC3C,GAAIo0D,GAAYtb,EAAY94C,GAAGksC,MAC3BmoB,EAAUvb,EAAY94C,GAAGosC,GAE7B,IAAI7nB,GAAQ6vC,GAAoBC,EAAP9vC,EAEvB,OAAS+xC,QAAQ,EAAMlC,UAAWA,EAAWC,QAASA,GAI1D,OAASiC,QAAQ,EAAOlC,UAAWA,EAAWC,QAASA,KAKrD,SAASj7D,EAAQD,EAASM,GAqB9B,QAASyB,MAjBT,GAAIsmC,GAAU/nC,EAAoB,IAC9B8D,EAAS9D,EAAoB,IAC7Bm+D,EAAan+D,EAAoB,IACjCS,EAAOT,EAAoB,GAK3BgD,GAJUhD,EAAoB,GACnBA,EAAoB,IACvBA,EAAoB,IAClBA,EAAoB,IACnBA,EAAoB,KAC/Bo+D,EAAYp+D,EAAoB,IAChC0B,EAAW1B,EAAoB,IAC/BwC,EAAaxC,EAAoB,GASrC+nC,GAAQtmC,EAAKsR,WASbtR,EAAKsR,UAAUisC,QAAU,SAAU9a,GA0HjC,QAASm6B,GAAazzD,GAChBk1B,EAAGw+B,YACLx+B,EAAG4X,KAAK,aAAc9sC,GA3H1B9K,KAAK25C,OACL35C,KAAK6D,WAEL7D,KAAK25C,IAAIvV,UAAYA,EAErBpkC,KAAK25C,IAAIj6C,KAAO09B,SAASM,cAAc,OACvC19B,KAAK25C,IAAI1rC,WAAamvB,SAASM,cAAc;AAC7C19B,KAAK25C,IAAI8kB,mBAAqBrhC,SAASM,cAAc,OACrD19B,KAAK25C,IAAI+kB,qBAAuBthC,SAASM,cAAc,OACvD19B,KAAK25C,IAAIoJ,gBAAkB3lB,SAASM,cAAc,OAClD19B,KAAK25C,IAAIglB,cAAgBvhC,SAASM,cAAc,OAChD19B,KAAK25C,IAAIilB,eAAiBxhC,SAASM,cAAc,OACjD19B,KAAK25C,IAAIvD,OAAShZ,SAASM,cAAc,OACzC19B,KAAK25C,IAAIhxC,KAAOy0B,SAASM,cAAc,OACvC19B,KAAK25C,IAAI/H,MAAQxU,SAASM,cAAc,OACxC19B,KAAK25C,IAAI9wC,IAAMu0B,SAASM,cAAc,OACtC19B,KAAK25C,IAAItL,OAASjR,SAASM,cAAc,OACzC19B,KAAK25C,IAAIklB,UAAYzhC,SAASM,cAAc,OAC5C19B,KAAK25C,IAAImlB,aAAe1hC,SAASM,cAAc,OAC/C19B,KAAK25C,IAAIolB,cAAgB3hC,SAASM,cAAc,OAChD19B,KAAK25C,IAAIqlB,iBAAmB5hC,SAASM,cAAc,OACnD19B,KAAK25C,IAAIslB,eAAiB7hC,SAASM,cAAc,OACjD19B,KAAK25C,IAAIulB,kBAAoB9hC,SAASM,cAAc,OAEpD19B,KAAK25C,IAAIj6C,KAAKqJ,UAAY,eAC1B/I,KAAK25C,IAAI1rC,WAAWlF,UAAY,2BAChC/I,KAAK25C,IAAI8kB,mBAAmB11D,UAAY,wCACxC/I,KAAK25C,IAAI+kB,qBAAqB31D,UAAY,0CAC1C/I,KAAK25C,IAAIoJ,gBAAgBh6C,UAAY,uBACrC/I,KAAK25C,IAAIglB,cAAc51D,UAAY,qBACnC/I,KAAK25C,IAAIilB,eAAe71D,UAAY,sBACpC/I,KAAK25C,IAAI9wC,IAAIE,UAAY,oBACzB/I,KAAK25C,IAAItL,OAAOtlC,UAAY,uBAC5B/I,KAAK25C,IAAIhxC,KAAKI,UAAY,cAC1B/I,KAAK25C,IAAIvD,OAAOrtC,UAAY,cAC5B/I,KAAK25C,IAAI/H,MAAM7oC,UAAY,cAC3B/I,KAAK25C,IAAIklB,UAAU91D,UAAY,qBAC/B/I,KAAK25C,IAAImlB,aAAa/1D,UAAY,wBAClC/I,KAAK25C,IAAIolB,cAAch2D,UAAY,qBACnC/I,KAAK25C,IAAIqlB,iBAAiBj2D,UAAY,wBACtC/I,KAAK25C,IAAIslB,eAAel2D,UAAY,qBACpC/I,KAAK25C,IAAIulB,kBAAkBn2D,UAAY,wBAEvC/I,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAI1rC,YACnCjO,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAI8kB,oBACnCz+D,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAI+kB,sBACnC1+D,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAIoJ,iBACnC/iD,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAIglB,eACnC3+D,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAIilB,gBACnC5+D,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAI9wC,KACnC7I,KAAK25C,IAAIj6C,KAAK49B,YAAYt9B,KAAK25C,IAAItL,QAEnCruC,KAAK25C,IAAIoJ,gBAAgBzlB,YAAYt9B,KAAK25C,IAAIvD,QAC9Cp2C,KAAK25C,IAAIglB,cAAcrhC,YAAYt9B,KAAK25C,IAAIhxC,MAC5C3I,KAAK25C,IAAIilB,eAAethC,YAAYt9B,KAAK25C,IAAI/H,OAE7C5xC,KAAK25C,IAAIoJ,gBAAgBzlB,YAAYt9B,KAAK25C,IAAIklB,WAC9C7+D,KAAK25C,IAAIoJ,gBAAgBzlB,YAAYt9B,KAAK25C,IAAImlB,cAC9C9+D,KAAK25C,IAAIglB,cAAcrhC,YAAYt9B,KAAK25C,IAAIolB,eAC5C/+D,KAAK25C,IAAIglB,cAAcrhC,YAAYt9B,KAAK25C,IAAIqlB,kBAC5Ch/D,KAAK25C,IAAIilB,eAAethC,YAAYt9B,KAAK25C,IAAIslB,gBAC7Cj/D,KAAK25C,IAAIilB,eAAethC,YAAYt9B,KAAK25C,IAAIulB,mBAE7Cl/D,KAAKo/B,GAAG,cAAe,WACjBp/B,KAAKm/D,mBAAoB,GAC3Bn/D,KAAKihD,WAEN3B,KAAKt/C,OACRA,KAAKo/B,GAAG,QAASp/B,KAAK64D,SAASvZ,KAAKt/C,OACpCA,KAAKo/B,GAAG,MAAOp/B,KAAK04D,QAAQpZ,KAAKt/C,MAEjC,IAAIggC,GAAKhgC,IACTA,MAAKo/B,GAAG,UAAW,SAAU+mB,GACvBA,GAAkC,GAApBA,EAAWlnB,MAEtBe,EAAGo/B,eACNp/B,EAAGo/B,aAAel1D,WAAW,WAC3B81B,EAAGo/B,aAAe,KAClBp/B,EAAGihB,WACF,IAILjhB,EAAGihB,YAMPjhD,KAAKmkD,OAAS,GAAIngD,GAAOhE,KAAK25C,IAAIj6C,MAClCM,KAAKmkD,OAAOntB,IAAI,SAAS5e,KAAMowC,QAAQ,IACvCxoD,KAAKmkD,OAAOntB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KACtD1qB,KAAK86C,YAEL,IAAIsJ,IAAU,MAAO,YAAa,QAAS,QAAS,MAAO,WAAY,UAAW,SA6DlF,IAtDAA,EAAO96C,QAAQ,SAAU1B,GACvB,GAAI0C,GAAW,SAAkBQ,GAC3Bk1B,EAAGw+B,YACLx+B,EAAG4X,KAAKhwC,EAAMkD,GAGlBk1B,GAAGmkB,OAAO/kB,GAAGx3B,EAAM0C,GACnB01B,EAAG8a,UAAUlzC,GAAQ0C,IAIvB+zD,EAAW3C,QAAQ17D,KAAKmkD,OAAQ,SAAWr5C,GACzCk1B,EAAG4X,KAAK,QAAS9sC,IAChBw0C,KAAKt/C,OAGRq+D,EAAW1C,UAAU37D,KAAKmkD,OAAQ,SAAWr5C,GAC3Ck1B,EAAG4X,KAAK,UAAW9sC,IAClBw0C,KAAKt/C,OAORA,KAAK25C,IAAIj6C,KAAKyK,iBAAiB,aAAco0D,GAC7Cv+D,KAAK25C,IAAIj6C,KAAKyK,iBAAiB,iBAAkBo0D,GAGjDv+D,KAAK6G,OACHnH,QACAuO,cACA80C,mBACA4b,iBACAC,kBACAxoB,UACAztC,QACAipC,SACA/oC,OACAwlC,UACAngC,UACAmxD,UAAW,EACXC,aAAc,GAGhBt/D,KAAKu/D,eAGLv/D,KAAKouD,SAELpuD,KAAKw/D,YAAc,EACnBx/D,KAAKm/D,iBAAkB,GAGlB/6B,EAAW,KAAM,IAAIp9B,OAAM,wBAChCo9B,GAAU9G,YAAYt9B,KAAK25C,IAAIj6C,OA4BjCiC,EAAKsR,UAAU+rB,WAAa,SAAUn7B,GACpC,GAAIA,EAAS,CAEX,GAAIoM,IAAU,QAAS,SAAU,YAAa,YAAa,aAAc,QAAS,MAAO,aAAc,iBAAkB,cAAe,SAAU,UAAW,SAAU,iBAoBvK,IAnBAtP,EAAKiG,gBAAgBqJ,EAAQjQ,KAAK6D,QAASA,GAE3C7D,KAAK6D,QAAQi7C,aAAgBttC,KAAMjL,OAAWw4C,KAAMx4C,QAChD,eAAiB1C,KACgB,gBAAxBA,GAAQi7C,YACjB9+C,KAAK6D,QAAQi7C,aACXttC,KAAM3N,EAAQi7C,YACdC,KAAMl7C,EAAQi7C,aAEwB,gBAAxBj7C,GAAQi7C,cACpB,QAAUj7C,GAAQi7C,cACpB9+C,KAAK6D,QAAQi7C,YAAYttC,KAAO3N,EAAQi7C,YAAYttC,MAElD,QAAU3N,GAAQi7C,cACpB9+C,KAAK6D,QAAQi7C,YAAYC,KAAOl7C,EAAQi7C,YAAYC,QAKpB,SAAlC/+C,KAAK6D,QAAQi7C,YAAYC,MAC3B,IAAK/+C,KAAKmgD,UAAW,CACnB,GAAIA,GAAYngD,KAAKmgD,UAAY,GAAIj9C,GAASlD,KAAKm/C,KACnDgB,GAAUnhB,WAAa,SAAUn7B,GAC/B,GAAI86B,GAAW96B,EAAUlD,EAAKgG,UAAW9C,KACzC86B,GAASmgB,YAAc,MACvB57C,EAAS+P,UAAU+rB,WAAWz+B,KAAK4/C,EAAWxhB,IAEhD3+B,KAAKgC,WAAWwF,KAAK24C,QAGvB,IAAIngD,KAAKmgD,UAAW,CAClB,GAAI/2C,GAAQpJ,KAAKgC,WAAWuF,QAAQvH,KAAKmgD,UAC3B,MAAV/2C,GACFpJ,KAAKgC,WAAWqH,OAAOD,EAAO,GAEhCpJ,KAAKmgD,UAAUhhB,UACfn/B,KAAKmgD,UAAY,KA4BrB,GAvBiC,kBAAtBt8C,GAAQ47D,aACjB57D,EAAQ47D,YACNC,SAAU77D,EAAQ47D,aAIlB,eAAiBz/D,MAAK6D,SACxBjC,EAASs6D,qBAAqBl8D,KAAK6D,QAAQE,OAAQ/D,KAAKm/C,KAAMn/C,KAAK6D,QAAQ07C,aAGzE,cAAgB17C,KACdA,EAAQ87D,WACL3/D,KAAK4/D,YACR5/D,KAAK4/D,UAAY,GAAItB,GAAUt+D,KAAK25C,IAAIj6C,OAGtCM,KAAK4/D,YACP5/D,KAAK4/D,UAAUzgC,gBACRn/B,MAAK4/D,YAKd,kBAAoB/7D,GACtB,KAAM,IAAImD,OAAM,0GAIlBhH,MAAK6/D,kBASP,GALA7/D,KAAKgC,WAAWsH,QAAQ,SAAUw2D,GAChC,MAAOA,GAAU9gC,WAAWn7B,KAI1B,aAAeA,GAAS,CACrB7D,KAAK+/D,eACR//D,KAAK+/D,aAAe//D,KAAKshD,uBAG3BthD,KAAK+/D,aAAa/gC,WAAWn7B,EAAQm8D,UAGrC,IAAIC,GAAiBt/D,EAAK0G,cAAerH,KAAK6D,QAC9C7D,MAAKgC,WAAWsH,QAAQ,SAAUw2D,GAChCn/D,EAAK0G,WAAW44D,EAAgBH,EAAUj8D,WAE5C7D,KAAK+/D,aAAaG,kBAAmBttD,OAAQqtD,IAI1CjgE,KAAKmgE,YAKRngE,KAAKihD,WAJLjhD,KAAKmgE,YAAcngE,KAAKihD,QAAQ3B,KAAKt/C,MACrCA,KAAKihD,QAAUtgD,EAAKiJ,SAAS5J,KAAKmgE,YAAangE,KAAK6D,QAAQg7C,kBAWhEl9C,EAAKsR,UAAUurD,SAAW,WACxB,OAAQx+D,KAAK4/D,WAAa5/D,KAAK4/D,UAAUQ,QAM3Cz+D,EAAKsR,UAAUksB,QAAU,WAEvBn/B,KAAKghD,SAAS,MACdhhD,KAAK+gD,UAAU,MAGf/gD,KAAKu/B,MAGLv/B,KAAKqgE,kBAGDrgE,KAAK25C,IAAIj6C,KAAK2L,YAChBrL,KAAK25C,IAAIj6C,KAAK2L,WAAW3G,YAAY1E,KAAK25C,IAAIj6C,MAEhDM,KAAK25C,IAAM,KAGP35C,KAAK4/D,YACP5/D,KAAK4/D,UAAUzgC,gBACRn/B,MAAK4/D,UAId,KAAK,GAAI90D,KAAS9K,MAAK86C,UACjB96C,KAAK86C,UAAU90C,eAAe8E,UACzB9K,MAAK86C,UAAUhwC,EAG1B9K,MAAK86C,UAAY,KACjB96C,KAAKmkD,OAAS,KAGdnkD,KAAKgC,WAAWsH,QAAQ,SAAUw2D,GAChC,MAAOA,GAAU3gC,YAGnBn/B,KAAKm/C,KAAO,MAQdx9C,EAAKsR,UAAUqtD,cAAgB,SAAUt1C,EAAM3qB,GAC7C,GAAIk/D,GAAcv/D,KAAKu/D,YAAY//B,OAAO,SAAUsgC,GAClD,MAAOz/D,KAAOy/D,EAAUj8D,QAAQxD,IAGlC,IAA2B,IAAvBk/D,EAAYj5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAGnEk/D,GAAYj5D,OAAS,GACvBi5D,EAAY,GAAGe,cAAct1C,IASjCrpB,EAAKsR,UAAUstD,cAAgB,SAAUlgE,GACvC,GAAIk/D,GAAcv/D,KAAKu/D,YAAY//B,OAAO,SAAUsgC,GAClD,MAAOA,GAAUj8D,QAAQxD,KAAOA,GAGlC,IAA2B,IAAvBk/D,EAAYj5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAEvE,OAAOk/D,GAAY,GAAGgB,iBAQxB5+D,EAAKsR,UAAUutD,mBAAqB,SAAUC,EAAOpgE,GACnD,GAAIk/D,GAAcv/D,KAAKu/D,YAAY//B,OAAO,SAAUsgC,GAClD,MAAOA,GAAUj8D,QAAQxD,KAAOA,GAGlC,IAA2B,IAAvBk/D,EAAYj5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAEvE,OAAIk/D,GAAYj5D,OAAS,EAChBi5D,EAAY,GAAGmB,eAAeD,GADvC,QAWF9+D,EAAKsR,UAAUutC,mBAAqB,SAAU11C,GAC5C,OAASA,MAAOA,IAalBnJ,EAAKsR,UAAU0tD,cAAgB,SAAU31C,EAAM3qB,GAC7C,GAAIugE,GAAqBr6D,SAATykB,EAAqBrqB,EAAKgH,QAAQqjB,EAAM,QAAQljB,UAAY,GAAIzC,MAE5Eg9B,EAASriC,KAAKu/D,YAAYsB,KAAK,SAAU1d,GAC3C,MAAOA,GAAWt/C,QAAQxD,KAAOA,GAEnC,IAAIgiC,EACF,KAAM,IAAIr7B,OAAM,yBAA2By7B,KAAKC,UAAUriC,GAAM,kBAGlE,IAAI8iD,GAAa,GAAIzgD,GAAW1C,KAAKm/C,KAAMx+C,EAAKgG,UAAW3G,KAAK6D,SAC9DmnB,KAAM41C,EACNvgE,GAAIA,IAON,OAJAL,MAAKu/D,YAAY/3D,KAAK27C,GACtBnjD,KAAKgC,WAAWwF,KAAK27C,GACrBnjD,KAAKihD,UAEE5gD,GAQTsB,EAAKsR,UAAU6tD,iBAAmB,SAAUzgE,GAC1C,GAAIk/D,GAAcv/D,KAAKu/D,YAAY//B,OAAO,SAAU4c,GAClD,MAAOA,GAAIv4C,QAAQxD,KAAOA,GAG5B,IAA2B,IAAvBk/D,EAAYj5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAGvEk/D,GAAYj2D,QAAQ,SAAW65C,GAC7BnjD,KAAKu/D,YAAYl2D,OAAOrJ,KAAKu/D,YAAYh4D,QAAQ47C,GAAa,GAC9DnjD,KAAKgC,WAAWqH,OAAOrJ,KAAKgC,WAAWuF,QAAQ47C,GAAa,GAC5DA,EAAWhkB,WACVmgB,KAAKt/C,QAOV2B,EAAKsR,UAAU8tD,gBAAkB,WAC/B,MAAO/gE,MAAKqgD,SAAWrgD,KAAKqgD,QAAQ0gB,uBAatCp/D,EAAKsR,UAAU6tC,IAAM,SAAUj9C,GAC7B,GAAIq8C,GAAQlgD,KAAKkiD,cAGjB,IAAkB,OAAdhC,EAAMt7C,KAA8B,OAAds7C,EAAMr7C,IAAhC,CAKA,GAAIk4C,GAAWmD,EAAMr7C,IAAMq7C,EAAMt7C,IAC7BA,EAAM,GAAIS,MAAK66C,EAAMt7C,IAAIkD,UAAuB,IAAXi1C,GACrCl4C,EAAM,GAAIQ,MAAK66C,EAAMr7C,IAAIiD,UAAuB,IAAXi1C,GAErC8D,EAAYh9C,GAAiC0C,SAAtB1C,EAAQg9C,UAA0Bh9C,EAAQg9C,WAAY,CACjF7gD,MAAKkgD,MAAMpC,SAASl5C,EAAKC,EAAKg8C,KAQhCl/C,EAAKsR,UAAUivC,aAAe,WAE5B,KAAM,IAAIl7C,OAAM,+CAwBlBrF,EAAKsR,UAAU2tC,UAAY,SAAUjO,EAAOE,EAAKhvC,GAC/C,GAAIg9C,EACJ,IAAwB,GAApBx6C,UAAUC,OAAa,CACzB,GAAI45C,GAAQ75C,UAAU,EACtBw6C,GAAgCt6C,SAApB25C,EAAMW,UAA0BX,EAAMW,WAAY,EAC9D7gD,KAAKkgD,MAAMpC,SAASoC,EAAMvN,MAAOuN,EAAMrN,IAAKgO,OAE5CA,GAAYh9C,GAAiC0C,SAAtB1C,EAAQg9C,UAA0Bh9C,EAAQg9C,WAAY,EAC7E7gD,KAAKkgD,MAAMpC,SAASnL,EAAOE,EAAKgO,IAepCl/C,EAAKsR,UAAUm/B,OAAS,SAAUpnB,EAAMnnB,GACtC,GAAIk5C,GAAW/8C,KAAKkgD,MAAMrN,IAAM7yC,KAAKkgD,MAAMvN,MACvChjC,EAAIhP,EAAKgH,QAAQqjB,EAAM,QAAQljB,UAE/B6qC,EAAQhjC,EAAIotC,EAAW,EACvBlK,EAAMljC,EAAIotC,EAAW,EACrB8D,EAAYh9C,GAAiC0C,SAAtB1C,EAAQg9C,UAA0Bh9C,EAAQg9C,WAAY,CAEjF7gD,MAAKkgD,MAAMpC,SAASnL,EAAOE,EAAKgO,IAOlCl/C,EAAKsR,UAAU+tD,UAAY,WACzB,GAAI9gB,GAAQlgD,KAAKkgD,MAAMga,UACvB,QACEvnB,MAAO,GAAIttC,MAAK66C,EAAMvN,OACtBE,IAAK,GAAIxtC,MAAK66C,EAAMrN,OASxBlxC,EAAKsR,UAAUw5B,OAAS,WACtBzsC,KAAKihD,WAQPt/C,EAAKsR,UAAUguC,QAAU,WACvBjhD,KAAKw/D,aACL,IAAIzD,IAAU,EACVl4D,EAAU7D,KAAK6D,QACfgD,EAAQ7G,KAAK6G,MACb8yC,EAAM35C,KAAK25C,GAEf,IAAKA,GAAQA,EAAIvV,WAA0C,GAA7BuV,EAAIvV,UAAUqG,YAA5C,CAEA7oC,EAASm4D,kBAAkB/5D,KAAK6D,QAAQE,OAAQ/D,KAAKm/C,KAAMn/C,KAAK6D,QAAQ07C,aAG7C,OAAvB17C,EAAQi7C,aACVn+C,EAAKmI,aAAa6wC,EAAIj6C,KAAM,WAC5BiB,EAAKwI,gBAAgBwwC,EAAIj6C,KAAM,gBAE/BiB,EAAKwI,gBAAgBwwC,EAAIj6C,KAAM,WAC/BiB,EAAKmI,aAAa6wC,EAAIj6C,KAAM,eAI9Bi6C,EAAIj6C,KAAKoP,MAAMkwC,UAAYr+C,EAAK8K,OAAOK,OAAOjI,EAAQm7C,UAAW,IACjErF,EAAIj6C,KAAKoP,MAAMmwC,UAAYt+C,EAAK8K,OAAOK,OAAOjI,EAAQo7C,UAAW,IACjEtF,EAAIj6C,KAAKoP,MAAM0vB,MAAQ79B,EAAK8K,OAAOK,OAAOjI,EAAQ26B,MAAO,IAGzD33B,EAAMqH,OAAOvF,MAAQgxC,EAAIoJ,gBAAgB/I,YAAcL,EAAIoJ,gBAAgBtY,aAAe,EAC1F5jC,EAAMqH,OAAO0jC,MAAQ/qC,EAAMqH,OAAOvF,KAClC9B,EAAMqH,OAAOrF,KAAO8wC,EAAIoJ,gBAAgB7I,aAAeP,EAAIoJ,gBAAgBtT,cAAgB,EAC3F5oC,EAAMqH,OAAOmgC,OAASxnC,EAAMqH,OAAOrF,GACnC,IAAIo4D,GAAmBtnB,EAAIj6C,KAAKw6C,aAAeP,EAAIj6C,KAAK+vC,aACpDyxB,EAAkBvnB,EAAIj6C,KAAKs6C,YAAcL,EAAIj6C,KAAK+qC,WAIb,KAArCkP,EAAIoJ,gBAAgBtT,eACtB5oC,EAAMqH,OAAOvF,KAAO9B,EAAMqH,OAAOrF,IACjChC,EAAMqH,OAAO0jC,MAAQ/qC,EAAMqH,OAAOvF,MAEN,IAA1BgxC,EAAIj6C,KAAK+vC,eACXyxB,EAAkBD,GAKpBp6D,EAAMuvC,OAAO3X,OAASkb,EAAIvD,OAAO8D,aACjCrzC,EAAM8B,KAAK81B,OAASkb,EAAIhxC,KAAKuxC,aAC7BrzC,EAAM+qC,MAAMnT,OAASkb,EAAI/H,MAAMsI,aAC/BrzC,EAAMgC,IAAI41B,OAASkb,EAAI9wC,IAAI4mC,eAAiB5oC,EAAMqH,OAAOrF,IACzDhC,EAAMwnC,OAAO5P,OAASkb,EAAItL,OAAOoB,eAAiB5oC,EAAMqH,OAAOmgC,MAM/D,IAAI4L,GAAgBh1C,KAAKJ,IAAIgC,EAAM8B,KAAK81B,OAAQ53B,EAAMuvC,OAAO3X,OAAQ53B,EAAM+qC,MAAMnT,QAC7E0iC,EAAat6D,EAAMgC,IAAI41B,OAASwb,EAAgBpzC,EAAMwnC,OAAO5P,OAASwiC,EAAmBp6D,EAAMqH,OAAOrF,IAAMhC,EAAMqH,OAAOmgC,MAC7HsL,GAAIj6C,KAAKoP,MAAM2vB,OAAS99B,EAAK8K,OAAOK,OAAOjI,EAAQ46B,OAAQ0iC,EAAa,MAGxEt6D,EAAMnH,KAAK++B,OAASkb,EAAIj6C,KAAKw6C,aAC7BrzC,EAAMoH,WAAWwwB,OAAS53B,EAAMnH,KAAK++B,OAASwiC,CAC9C,IAAIG,GAAkBv6D,EAAMnH,KAAK++B,OAAS53B,EAAMgC,IAAI41B,OAAS53B,EAAMwnC,OAAO5P,OAASwiC,CACnFp6D,GAAMk8C,gBAAgBtkB,OAAS2iC,EAC/Bv6D,EAAM83D,cAAclgC,OAAS2iC,EAC7Bv6D,EAAM+3D,eAAengC,OAAS53B,EAAM83D,cAAclgC,OAGlD53B,EAAMnH,KAAK8+B,MAAQmb,EAAIj6C,KAAKs6C,YAC5BnzC,EAAMoH,WAAWuwB,MAAQ33B,EAAMnH,KAAK8+B,MAAQ0iC,EAC5Cr6D,EAAM8B,KAAK61B,MAAQmb,EAAIglB,cAAcl0B,cAAgB5jC,EAAMqH,OAAOvF,KAClE9B,EAAM83D,cAAcngC,MAAQ33B,EAAM8B,KAAK61B,MACvC33B,EAAM+qC,MAAMpT,MAAQmb,EAAIilB,eAAen0B,cAAgB5jC,EAAMqH,OAAO0jC,MACpE/qC,EAAM+3D,eAAepgC,MAAQ33B,EAAM+qC,MAAMpT,KACzC,IAAI6iC,GAAcx6D,EAAMnH,KAAK8+B,MAAQ33B,EAAM8B,KAAK61B,MAAQ33B,EAAM+qC,MAAMpT,MAAQ0iC,CAC5Er6D,GAAMuvC,OAAO5X,MAAQ6iC,EACrBx6D,EAAMk8C,gBAAgBvkB,MAAQ6iC,EAC9Bx6D,EAAMgC,IAAI21B,MAAQ6iC,EAClBx6D,EAAMwnC,OAAO7P,MAAQ6iC,EAGrB1nB,EAAI1rC,WAAWa,MAAM2vB,OAAS53B,EAAMoH,WAAWwwB,OAAS,KACxDkb,EAAI8kB,mBAAmB3vD,MAAM2vB,OAAS53B,EAAMoH,WAAWwwB,OAAS,KAChEkb,EAAI+kB,qBAAqB5vD,MAAM2vB,OAAS53B,EAAMk8C,gBAAgBtkB,OAAS,KACvEkb,EAAIoJ,gBAAgBj0C,MAAM2vB,OAAS53B,EAAMk8C,gBAAgBtkB,OAAS,KAClEkb,EAAIglB,cAAc7vD,MAAM2vB,OAAS53B,EAAM83D,cAAclgC,OAAS,KAC9Dkb,EAAIilB,eAAe9vD,MAAM2vB,OAAS53B,EAAM+3D,eAAengC,OAAS,KAEhEkb,EAAI1rC,WAAWa,MAAM0vB,MAAQ33B,EAAMoH,WAAWuwB,MAAQ,KACtDmb,EAAI8kB,mBAAmB3vD,MAAM0vB,MAAQ33B,EAAMk8C,gBAAgBvkB,MAAQ,KACnEmb,EAAI+kB,qBAAqB5vD,MAAM0vB,MAAQ33B,EAAMoH,WAAWuwB,MAAQ,KAChEmb,EAAIoJ,gBAAgBj0C,MAAM0vB,MAAQ33B,EAAMuvC,OAAO5X,MAAQ,KACvDmb,EAAI9wC,IAAIiG,MAAM0vB,MAAQ33B,EAAMgC,IAAI21B,MAAQ,KACxCmb,EAAItL,OAAOv/B,MAAM0vB,MAAQ33B,EAAMwnC,OAAO7P,MAAQ,KAG9Cmb,EAAI1rC,WAAWa,MAAMnG,KAAO,IAC5BgxC,EAAI1rC,WAAWa,MAAMjG,IAAM,IAC3B8wC,EAAI8kB,mBAAmB3vD,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ33B,EAAMqH,OAAOvF,KAAO,KAC3EgxC,EAAI8kB,mBAAmB3vD,MAAMjG,IAAM,IACnC8wC,EAAI+kB,qBAAqB5vD,MAAMnG,KAAO,IACtCgxC,EAAI+kB,qBAAqB5vD,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KACxDkb,EAAIoJ,gBAAgBj0C,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ,KACpDmb,EAAIoJ,gBAAgBj0C,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KACnDkb,EAAIglB,cAAc7vD,MAAMnG,KAAO,IAC/BgxC,EAAIglB,cAAc7vD,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KACjDkb,EAAIilB,eAAe9vD,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ33B,EAAMuvC,OAAO5X,MAAQ,KACxEmb,EAAIilB,eAAe9vD,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KAClDkb,EAAI9wC,IAAIiG,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ,KACxCmb,EAAI9wC,IAAIiG,MAAMjG,IAAM,IACpB8wC,EAAItL,OAAOv/B,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ,KAC3Cmb,EAAItL,OAAOv/B,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS53B,EAAMk8C,gBAAgBtkB,OAAS,KAIzEz+B,KAAKshE,kBAGL,IAAI95C,GAASxnB,KAAK6G,MAAMw4D,SACQ,QAA5Bx7D,EAAQi7C,YAAYttC,OACtBgW,GAAUviB,KAAKJ,IAAI7E,KAAK6G,MAAMk8C,gBAAgBtkB,OAASz+B,KAAK6G,MAAMuvC,OAAO3X,OAASz+B,KAAK6G,MAAMqH,OAAOrF,IAAM7I,KAAK6G,MAAMqH,OAAOmgC,OAAQ,IAEtIsL,EAAIvD,OAAOtnC,MAAMnG,KAAO,IACxBgxC,EAAIvD,OAAOtnC,MAAMjG,IAAM2e,EAAS,KAChCmyB,EAAIhxC,KAAKmG,MAAMnG,KAAO,IACtBgxC,EAAIhxC,KAAKmG,MAAMjG,IAAM2e,EAAS,KAC9BmyB,EAAI/H,MAAM9iC,MAAMnG,KAAO,IACvBgxC,EAAI/H,MAAM9iC,MAAMjG,IAAM2e,EAAS,IAG/B,IAAI+5C,GAAwC,GAAxBvhE,KAAK6G,MAAMw4D,UAAiB,SAAW,GACvDmC,EAAmBxhE,KAAK6G,MAAMw4D,WAAar/D,KAAK6G,MAAMy4D,aAAe,SAAW,EACpF3lB,GAAIklB,UAAU/vD,MAAM2yD,WAAaF,EACjC5nB,EAAImlB,aAAahwD,MAAM2yD,WAAaD,EACpC7nB,EAAIolB,cAAcjwD,MAAM2yD,WAAaF,EACrC5nB,EAAIqlB,iBAAiBlwD,MAAM2yD,WAAaD,EACxC7nB,EAAIslB,eAAenwD,MAAM2yD,WAAaF,EACtC5nB,EAAIulB,kBAAkBpwD,MAAM2yD,WAAaD,EAGzCxhE,KAAKgC,WAAWsH,QAAQ,SAAUw2D,GAChC/D,EAAU+D,EAAUrzB,UAAYsvB,GAElC,IAAI2F,GAAa,CACjB,IAAI3F,EAAS,CACX,GAAI/7D,KAAKw/D,YAAckC,EAErB,WADA1hE,MAAKm/C,KAAKE,QAAQzH,KAAK,UAGvBj4B,SAAQu+B,IAAI,yCAGdl+C,MAAKw/D,YAAc,CAErBx/D,MAAKm/D,iBAAkB,EAGvBn/D,KAAKm/C,KAAKE,QAAQzH,KAAK,aAIzBj2C,EAAKsR,UAAU0uD,QAAU,WACvB,KAAM,IAAI36D,OAAM,wDAUlBrF,EAAKsR,UAAU2uD,eAAiB,SAAU52C,GACxC,IAAKhrB,KAAKogD,YACR,KAAM,IAAIp5C,OAAM,sCAGlBhH,MAAKogD,YAAYwhB,eAAe52C,IAQlCrpB,EAAKsR,UAAU4uD,eAAiB,WAC9B,IAAK7hE,KAAKogD,YACR,KAAM,IAAIp5C,OAAM,sCAGlB,OAAOhH,MAAKogD,YAAYyhB,kBAU1BlgE,EAAKsR,UAAU8sC,QAAU,SAAUniB,GACjC,MAAOh8B,GAASk+C,OAAO9/C,KAAM49B,EAAG59B,KAAK6G,MAAMuvC,OAAO5X,QAUpD78B,EAAKsR,UAAUgtC,cAAgB,SAAUriB,GACvC,MAAOh8B,GAASk+C,OAAO9/C,KAAM49B,EAAG59B,KAAK6G,MAAMnH,KAAK8+B,QAalD78B,EAAKsR,UAAU0sC,UAAY,SAAU30B,GACnC,MAAOppB,GAAS89C,SAAS1/C,KAAMgrB,EAAMhrB,KAAK6G,MAAMuvC,OAAO5X,QAYzD78B,EAAKsR,UAAU4sC,gBAAkB,SAAU70B,GACzC,MAAOppB,GAAS89C,SAAS1/C,KAAMgrB,EAAMhrB,KAAK6G,MAAMnH,KAAK8+B,QASvD78B,EAAKsR,UAAU4sD,gBAAkB,WACA,GAA3B7/D,KAAK6D,QAAQ+6C,WACf5+C,KAAK8hE,mBAEL9hE,KAAKqgE,mBAST1+D,EAAKsR,UAAU6uD,iBAAmB,WAChC,GAAI9hC,GAAKhgC,IAETA,MAAKqgE,kBAELrgE,KAAK+hE,UAAY,WACf,MAA6B,IAAzB/hC,EAAGn8B,QAAQ+6C,eAEb5e,GAAGqgC,uBAIDrgC,EAAG2Z,IAAIj6C,OAKLsgC,EAAG2Z,IAAIj6C,KAAKs6C,aAAeha,EAAGn5B,MAAMm7D,WAAahiC,EAAG2Z,IAAIj6C,KAAKw6C,cAAgBla,EAAGn5B,MAAMo7D,cACxFjiC,EAAGn5B,MAAMm7D,UAAYhiC,EAAG2Z,IAAIj6C,KAAKs6C,YACjCha,EAAGn5B,MAAMo7D,WAAajiC,EAAG2Z,IAAIj6C,KAAKw6C,aAElCla,EAAGmf,KAAKE,QAAQzH,KAAK,cAM3Bj3C,EAAKwJ,iBAAiBY,OAAQ,SAAU/K,KAAK+hE,WAGzC/hC,EAAG2Z,IAAIj6C,OACTsgC,EAAGn5B,MAAMm7D,UAAYhiC,EAAG2Z,IAAIj6C,KAAKs6C,YACjCha,EAAGn5B,MAAMo7D,WAAajiC,EAAG2Z,IAAIj6C,KAAKw6C,cAGpCl6C,KAAKkiE,WAAaC,YAAYniE,KAAK+hE,UAAW,MAOhDpgE,EAAKsR,UAAUotD,gBAAkB,WAC3BrgE,KAAKkiE,aACPllB,cAAch9C,KAAKkiE,YACnBliE,KAAKkiE,WAAa37D,QAIhBvG,KAAK+hE,YACPphE,EAAKgK,oBAAoBI,OAAQ,SAAU/K,KAAK+hE,WAChD/hE,KAAK+hE,UAAY,OASrBpgE,EAAKsR,UAAU4lD,SAAW,SAAU/tD,GAClC9K,KAAKouD,MAAMmM,eAAgB,EAC3Bv6D,KAAKouD,MAAMgU,iBAAmBpiE,KAAK6G,MAAMw4D,WAQ3C19D,EAAKsR,UAAU6lD,SAAW,SAAUhuD,GAClC9K,KAAKouD,MAAMmM,eAAgB,GAQ7B54D,EAAKsR,UAAUylD,QAAU,SAAU5tD,GAGjC,GAAK9K,KAAKouD,MAAMmM,cAAhB,CAEA,GAAIxuC,GAAQjhB,EAAMkgD,OAEdqX,EAAeriE,KAAKsiE,gBACpBC,EAAeviE,KAAKwiE,cAAcxiE,KAAKouD,MAAMgU,iBAAmBr2C,EAEhEw2C,IAAgBF,GAClBriE,KAAK43C,KAAK,kBAUdj2C,EAAKsR,UAAUuvD,cAAgB,SAAUnD,GAGvC,MAFAr/D,MAAK6G,MAAMw4D,UAAYA,EACvBr/D,KAAKshE,mBACEthE,KAAK6G,MAAMw4D,WAQpB19D,EAAKsR,UAAUquD,iBAAmB,WAEhC,GAAIhC,GAAer6D,KAAKL,IAAI5E,KAAK6G,MAAMk8C,gBAAgBtkB,OAASz+B,KAAK6G,MAAMuvC,OAAO3X,OAAQ,EAc1F,OAbI6gC,IAAgBt/D,KAAK6G,MAAMy4D,eAGQ,OAAjCt/D,KAAK6D,QAAQi7C,YAAYttC,OAC3BxR,KAAK6G,MAAMw4D,WAAaC,EAAet/D,KAAK6G,MAAMy4D,cAEpDt/D,KAAK6G,MAAMy4D,aAAeA,GAIxBt/D,KAAK6G,MAAMw4D,UAAY,IAAGr/D,KAAK6G,MAAMw4D,UAAY,GACjDr/D,KAAK6G,MAAMw4D,UAAYC,IAAct/D,KAAK6G,MAAMw4D,UAAYC,GAEzDt/D,KAAK6G,MAAMw4D,WAQpB19D,EAAKsR,UAAUqvD,cAAgB,WAC7B,MAAOtiE,MAAK6G,MAAMw4D,WAQpB19D,EAAKsR,UAAUquC,oBAAsB,WACnC,KAAM,IAAIt6C,OAAM,sDAGlBnH,EAAOD,QAAU+B,GAIb,SAAS9B,EAAQD,EAASM,GA6B9B,QAAS6C,GAAQo8C,EAAMt7C,GACrB7D,KAAKm/C,KAAOA,EAEZn/C,KAAK2+C,gBACH/2C,KAAM,KACNk3C,aACEttC,KAAM,UAERixD,MAAO,OACP3gE,OAAO,EACP4gE,eAAgB,SAAwBC,EAAWC,EAASnkB,GAC1D,GAAIokB,GAAcD,EAAQ5hC,KAC1B4hC,GAAQ5hC,MAAQ2hC,EAAU3hC,MAC1B2hC,EAAU3hC,MAAQ6hC,GAEpBC,WAAY,QAEZC,YAAY,EACZC,aAAa,EACbC,sBAAsB,EAEtBC,UACEC,YAAY,EACZC,aAAa,EACbn9C,KAAK,EACL0b,QAAQ,GAGV0hC,eACEriC,OAAO,EACP/a,KAAK,EACL0b,QAAQ,GAGV0hB,KAAMthD,EAASshD,KAEfigB,MAAO,SAAe9xD,EAAMjI,GAC1BA,EAASiI,IAEX+xD,SAAU,SAAkB/xD,EAAMjI,GAChCA,EAASiI,IAEXgyD,OAAQ,SAAgBhyD,EAAMjI,GAC5BA,EAASiI,IAEXiyD,SAAU,SAAkBjyD,EAAMjI,GAChCA,EAASiI,IAEXkyD,SAAU,SAAkBlyD,EAAMjI,GAChCA,EAASiI,IAEXmyD,WAAY,SAAoBnyD,EAAMjI,GACpCA,EAASiI,IAEXoyD,YAAa,SAAqBpyD,EAAMjI,GACtCA,EAASiI,IAEXqyD,cAAe,SAAuBryD,EAAMjI,GAC1CA,EAASiI,IAGX+yB,QACE/yB,MACEy+B,WAAY,GACZC,SAAU,IAEZ6O,KAAM,KAKV/+C,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBAGpC3+C,KAAK8jE,aACHl8D,MAAQ+qC,MAAO,OAAQE,IAAK,SAG9B7yC,KAAKm6D,YACHza,SAAUP,EAAKx+C,KAAK++C,SACpBI,OAAQX,EAAKx+C,KAAKm/C,QAEpB9/C,KAAK25C,OACL35C,KAAK6G,SACL7G,KAAKmkD,OAAS,IAEd,IAAInkB,GAAKhgC,IACTA,MAAKsgD,UAAY,KACjBtgD,KAAKugD,WAAa,KAGlBvgD,KAAK+jE,eACH99C,IAAO,SAAanb,EAAO60B,EAAQC,GACjCI,EAAGgkC,OAAOrkC,EAAO19B,QAEnBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGikC,UAAUtkC,EAAO19B,QAEtB0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGkkC,UAAUvkC,EAAO19B,SAKxBjC,KAAKmkE,gBACHl+C,IAAO,SAAanb,EAAO60B,EAAQC,GACjCI,EAAGokC,aAAazkC,EAAO19B,QAEzBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGqkC,gBAAgB1kC,EAAO19B,QAE5B0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGskC,gBAAgB3kC,EAAO19B,SAI9BjC,KAAKiC,SACLjC,KAAKy+C,UACLz+C,KAAKukE,YAELvkE,KAAK2hD,aACL3hD,KAAKwkE,YAAa,EAElBxkE,KAAKykE,eACLzkE,KAAK0kE,oBAGL1kE,KAAKk/C,UAELl/C,KAAKg/B,WAAWn7B,GA1JlB,GAAIG,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/B6B,EAAW7B,EAAoB,IAC/BsC,EAAYtC,EAAoB,IAChC4C,EAAQ5C,EAAoB,IAC5BqC,EAAkBrC,EAAoB,IACtCkC,EAAUlC,EAAoB,IAC9BmC,EAAYnC,EAAoB,IAChCoC,EAAYpC,EAAoB,IAChCiC,EAAiBjC,EAAoB,IAErCykE,EAAY,gBACZC,EAAa,gBA+IjB7hE,GAAQkQ,UAAY,GAAIzQ,GAGxBO,EAAQu/B,OACNr0B,WAAY9L,EACZ0iE,IAAKziE,EACL89C,MAAO59C,EACPy7B,MAAO17B,GAMTU,EAAQkQ,UAAUisC,QAAU,WAC1B,GAAI3U,GAAQnN,SAASM,cAAc,MACnC6M,GAAMxhC,UAAY,cAClBwhC,EAAM,oBAAsBvqC,KAC5BA,KAAK25C,IAAIpP,MAAQA,CAGjB,IAAIt8B,GAAamvB,SAASM,cAAc,MACxCzvB,GAAWlF,UAAY,iBACvBwhC,EAAMjN,YAAYrvB,GAClBjO,KAAK25C,IAAI1rC,WAAaA,CAGtB,IAAIu1C,GAAapmB,SAASM,cAAc,MACxC8lB,GAAWz6C,UAAY,iBACvBwhC,EAAMjN,YAAYkmB,GAClBxjD,KAAK25C,IAAI6J,WAAaA,CAGtB,IAAIzE,GAAO3hB,SAASM,cAAc,MAClCqhB,GAAKh2C,UAAY,WACjB/I,KAAK25C,IAAIoF,KAAOA,CAGhB,IAAI0E,GAAWrmB,SAASM,cAAc,MACtC+lB,GAAS16C,UAAY,eACrB/I,KAAK25C,IAAI8J,SAAWA,EAGpBzjD,KAAK8kE,kBAGL,IAAIC,GAAkB,GAAIxiE,GAAgBqiE,EAAY,KAAM5kE,KAC5D+kE,GAAgBriB,OAChB1iD,KAAKy+C,OAAOmmB,GAAcG,EAM1B/kE,KAAKmkD,OAAS,GAAIngD,GAAOhE,KAAKm/C,KAAKxF,IAAIoJ,iBAGvC/iD,KAAKmkD,OAAO/kB,GAAG,eAAgB,SAAWt0B,GACpCA,EAAMq6C,SACRnlD,KAAK64D,SAAS/tD,IAEfw0C,KAAKt/C,OACRA,KAAKmkD,OAAO/kB,GAAG,WAAYp/B,KAAKy4D,aAAanZ,KAAKt/C,OAClDA,KAAKmkD,OAAO/kB,GAAG,UAAWp/B,KAAK04D,QAAQpZ,KAAKt/C,OAC5CA,KAAKmkD,OAAO/kB,GAAG,SAAUp/B,KAAK24D,WAAWrZ,KAAKt/C,OAC9CA,KAAKmkD,OAAOntB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KAGtD1qB,KAAKmkD,OAAO/kB,GAAG,MAAOp/B,KAAKglE,cAAc1lB,KAAKt/C,OAG9CA,KAAKmkD,OAAO/kB,GAAG,QAASp/B,KAAKilE,mBAAmB3lB,KAAKt/C,OAGrDA,KAAKmkD,OAAO/kB,GAAG,YAAap/B,KAAKklE,WAAW5lB,KAAKt/C,OAEjDA,KAAKmlE,YAAc,GAAInhE,GAAOhE,KAAKm/C,KAAKxF,IAAIglB,eAC5C3+D,KAAKmlE,YAAY/lC,GAAG,WAAYp/B,KAAKolE,kBAAkB9lB,KAAKt/C,OAC5DA,KAAKmlE,YAAY/lC,GAAG,UAAWp/B,KAAKqlE,aAAa/lB,KAAKt/C,OACtDA,KAAKmlE,YAAY/lC,GAAG,SAAUp/B,KAAKslE,gBAAgBhmB,KAAKt/C,OACxDA,KAAKmlE,YAAYnuC,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KAG3D1qB,KAAK0iD,QAmEP3/C,EAAQkQ,UAAU+rB,WAAa,SAAUn7B,GACvC,GAAIA,EAAS,CAEX,GAAIoM,IAAU,OAAQ,QAAS,QAAS,QAAS,aAAc,cAAe,uBAAwB,sBAAuB,aAAc,iBAAkB,WAAY,gBAAiB,OAAQ,OAAQ,iBAC1MtP,GAAKiG,gBAAgBqJ,EAAQjQ,KAAK6D,QAASA,GAEvC,eAAiBA,KACgB,gBAAxBA,GAAQi7C,YACjB9+C,KAAK6D,QAAQi7C,YAAYttC,KAA+B,QAAxB3N,EAAQi7C,YAAwB,MAAQ,SAChC,gBAAxBj7C,GAAQi7C,aAA4B,QAAUj7C,GAAQi7C,cACtE9+C,KAAK6D,QAAQi7C,YAAYttC,KAAO3N,EAAQi7C,YAAYttC,OAIpD,UAAY3N,KACgB,gBAAnBA,GAAQ0gC,QACjBvkC,KAAK6D,QAAQ0gC,OAAOwa,KAAOl7C,EAAQ0gC,OACnCvkC,KAAK6D,QAAQ0gC,OAAO/yB,KAAKy+B,WAAapsC,EAAQ0gC,OAC9CvkC,KAAK6D,QAAQ0gC,OAAO/yB,KAAK0+B,SAAWrsC,EAAQ0gC,QACT,gBAAnB1gC,GAAQ0gC,SACxB5jC,EAAKiG,iBAAiB,QAAS5G,KAAK6D,QAAQ0gC,OAAQ1gC,EAAQ0gC,QACxD,QAAU1gC,GAAQ0gC,SACe,gBAAxB1gC,GAAQ0gC,OAAO/yB,MACxBxR,KAAK6D,QAAQ0gC,OAAO/yB,KAAKy+B,WAAapsC,EAAQ0gC,OAAO/yB,KACrDxR,KAAK6D,QAAQ0gC,OAAO/yB,KAAK0+B,SAAWrsC,EAAQ0gC,OAAO/yB,MACX,gBAAxB3N,GAAQ0gC,OAAO/yB,MAC/B7Q,EAAKiG,iBAAiB,aAAc,YAAa5G,KAAK6D,QAAQ0gC,OAAO/yB,KAAM3N,EAAQ0gC,OAAO/yB,SAM9F,YAAc3N,KACgB,iBAArBA,GAAQq/D,UACjBljE,KAAK6D,QAAQq/D,SAASC,WAAat/D,EAAQq/D,SAC3CljE,KAAK6D,QAAQq/D,SAASE,YAAcv/D,EAAQq/D,SAC5CljE,KAAK6D,QAAQq/D,SAASj9C,IAAMpiB,EAAQq/D,SACpCljE,KAAK6D,QAAQq/D,SAASvhC,OAAS99B,EAAQq/D,UACF,gBAArBr/D,GAAQq/D,UACxBviE,EAAKiG,iBAAiB,aAAc,cAAe,MAAO,UAAW5G,KAAK6D,QAAQq/D,SAAUr/D,EAAQq/D,WAIpG,iBAAmBr/D,KACgB,iBAA1BA,GAAQw/D,eACjBrjE,KAAK6D,QAAQw/D,cAAcriC,MAAQn9B,EAAQw/D,cAC3CrjE,KAAK6D,QAAQw/D,cAAcp9C,IAAMpiB,EAAQw/D,cACzCrjE,KAAK6D,QAAQw/D,cAAc1hC,OAAS99B,EAAQw/D,eACF,gBAA1Bx/D,GAAQw/D,eACxB1iE,EAAKiG,iBAAiB,QAAS,MAAO,UAAW5G,KAAK6D,QAAQw/D,cAAex/D,EAAQw/D,eAKzF,IAAIkC,GAAc,SAAW/tD,GAC3B,GAAI3N,GAAKhG,EAAQ2T,EACjB,IAAI3N,EAAI,CACN,KAAMA,YAAcoP,WAClB,KAAM,IAAIjS,OAAM,UAAYwQ,EAAO,uBAAyBA,EAAO,mBAErExX,MAAK6D,QAAQ2T,GAAQ3N,IAEtBy1C,KAAKt/C,OACP,QAAS,WAAY,WAAY,SAAU,WAAY,aAAc,cAAe,iBAAiBsJ,QAAQi8D,GAG9GvlE,KAAKuhD,cASTx+C,EAAQkQ,UAAUsuC,UAAY,SAAU19C,GACtC7D,KAAKukE,YACLvkE,KAAKwkE,YAAa,EAEd3gE,GAAWA,EAAQ29C,cACrB7gD,EAAK2I,QAAQtJ,KAAKiC,MAAO,SAAUuP,GACjCA,EAAKg0D,OAAQ,EACTh0D,EAAKi0D,WAAWj0D,EAAKi7B,YAQ/B1pC,EAAQkQ,UAAUksB,QAAU,WAC1Bn/B,KAAK0lE,OACL1lE,KAAKghD,SAAS,MACdhhD,KAAK+gD,UAAU,MAEf/gD,KAAKmkD,OAAS,KAEdnkD,KAAKm/C,KAAO,KACZn/C,KAAKm6D,WAAa,MAMpBp3D,EAAQkQ,UAAUyyD,KAAO,WAEnB1lE,KAAK25C,IAAIpP,MAAMl/B,YACjBrL,KAAK25C,IAAIpP,MAAMl/B,WAAW3G,YAAY1E,KAAK25C,IAAIpP,OAI7CvqC,KAAK25C,IAAIoF,KAAK1zC,YAChBrL,KAAK25C,IAAIoF,KAAK1zC,WAAW3G,YAAY1E,KAAK25C,IAAIoF,MAI5C/+C,KAAK25C,IAAI8J,SAASp4C,YACpBrL,KAAK25C,IAAI8J,SAASp4C,WAAW3G,YAAY1E,KAAK25C,IAAI8J,WAQtD1gD,EAAQkQ,UAAUyvC,KAAO,WAElB1iD,KAAK25C,IAAIpP,MAAMl/B,YAClBrL,KAAKm/C,KAAKxF,IAAIvD,OAAO9Y,YAAYt9B,KAAK25C,IAAIpP,OAIvCvqC,KAAK25C,IAAIoF,KAAK1zC,YACjBrL,KAAKm/C,KAAKxF,IAAI8kB,mBAAmBnhC,YAAYt9B,KAAK25C,IAAIoF,MAInD/+C,KAAK25C,IAAI8J,SAASp4C,YACrBrL,KAAKm/C,KAAKxF,IAAIhxC,KAAK20B,YAAYt9B,KAAK25C,IAAI8J,WAW5C1gD,EAAQkQ,UAAU4uC,aAAe,SAAUphB,GACzC,GAAIh6B,GAAGm0B,EAAIv6B,EAAImR,CAMf,KAJWjL,QAAPk6B,IAAkBA,MACjB35B,MAAMC,QAAQ05B,KAAMA,GAAOA,IAG3Bh6B,EAAI,EAAGm0B,EAAK56B,KAAK2hD,UAAUr7C,OAAYs0B,EAAJn0B,EAAQA,IAC9CpG,EAAKL,KAAK2hD,UAAUl7C,GACpB+K,EAAOxR,KAAKiC,MAAM5B,GACdmR,GAAMA,EAAKm0D,UAKjB,KADA3lE,KAAK2hD,aACAl7C,EAAI,EAAGm0B,EAAK6F,EAAIn6B,OAAYs0B,EAAJn0B,EAAQA,IACnCpG,EAAKogC,EAAIh6B,GACT+K,EAAOxR,KAAKiC,MAAM5B,GACdmR,IACFxR,KAAK2hD,UAAUn6C,KAAKnH,GACpBmR,EAAKo0D,WASX7iE,EAAQkQ,UAAU2uC,aAAe,WAC/B,MAAO5hD,MAAK2hD,UAAU9hB,YAOxB98B,EAAQkQ,UAAU8tD,gBAAkB,WAClC,GAAI7gB,GAAQlgD,KAAKm/C,KAAKe,MAAMga,WACxBvxD,EAAO3I,KAAKm/C,KAAKx+C,KAAK++C,SAASQ,EAAMvN,OACrCf,EAAQ5xC,KAAKm/C,KAAKx+C,KAAK++C,SAASQ,EAAMrN,KAEtCpS,IACJ,KAAK,GAAIijB,KAAW1jD,MAAKy+C,OACvB,GAAIz+C,KAAKy+C,OAAOz4C,eAAe09C,GAM7B,IAAK,GALDT,GAAQjjD,KAAKy+C,OAAOiF,GACpBmiB,EAAkB5iB,EAAM6iB,aAInBr/D,EAAI,EAAGA,EAAIo/D,EAAgBv/D,OAAQG,IAAK,CAC/C,GAAI+K,GAAOq0D,EAAgBp/D,EAEvB+K,GAAK7I,KAAOipC,GAASpgC,EAAK7I,KAAO6I,EAAKgtB,MAAQ71B,GAChD83B,EAAIj5B,KAAKgK,EAAKnR,IAMtB,MAAOogC,IAQT19B,EAAQkQ,UAAU8yD,UAAY,SAAU1lE,GAEtC,IAAK,GADDshD,GAAY3hD,KAAK2hD,UACZl7C,EAAI,EAAGm0B,EAAK+mB,EAAUr7C,OAAYs0B,EAAJn0B,EAAQA,IAC7C,GAAIk7C,EAAUl7C,IAAMpG,EAAI,CAEtBshD,EAAUt4C,OAAO5C,EAAG,EACpB,SASN1D,EAAQkQ,UAAUw5B,OAAS,WACzB,GAAIlI,GAASvkC,KAAK6D,QAAQ0gC,OACtB2b,EAAQlgD,KAAKm/C,KAAKe,MAClBp0C,EAASnL,EAAK8K,OAAOK,OACrBjI,EAAU7D,KAAK6D,QACfi7C,EAAcj7C,EAAQi7C,YAAYttC,KAClCuqD,GAAU,EACVxxB,EAAQvqC,KAAK25C,IAAIpP,KAGrBvqC,MAAK6G,MAAMgC,IAAM7I,KAAKm/C,KAAKC,SAASv2C,IAAI41B,OAASz+B,KAAKm/C,KAAKC,SAASlxC,OAAOrF,IAC3E7I,KAAK6G,MAAM8B,KAAO3I,KAAKm/C,KAAKC,SAASz2C,KAAK61B,MAAQx+B,KAAKm/C,KAAKC,SAASlxC,OAAOvF,KAG5E4hC,EAAMxhC,UAAY,cAGlBgzD,EAAU/7D,KAAKgmE,gBAAkBjK,CAIjC,IAAIkK,GAAkB/lB,EAAMrN,IAAMqN,EAAMvN,MACpCuzB,EAASD,GAAmBjmE,KAAKmmE,qBAAuBnmE,KAAK6G,MAAM23B,OAASx+B,KAAK6G,MAAMm7D,SACvFkE,KAAQlmE,KAAKwkE,YAAa,GAC9BxkE,KAAKmmE,oBAAsBF,EAC3BjmE,KAAK6G,MAAMm7D,UAAYhiE,KAAK6G,MAAM23B,KAElC,IAAI4nC,GAAUpmE,KAAKwkE,WACf6B,EAAarmE,KAAKsmE,cAClBC,GACF/0D,KAAM+yB,EAAO/yB,KACbutC,KAAMxa,EAAOwa,MAEXynB,GACFh1D,KAAM+yB,EAAO/yB,KACbutC,KAAMxa,EAAO/yB,KAAK0+B,SAAW,GAE3BzR,EAAS,EACTwgB,EAAY1a,EAAOwa,KAAOxa,EAAO/yB,KAAK0+B,QA6B1C,OA1BAlwC,MAAKy+C,OAAOmmB,GAAYn4B,OAAOyT,EAAOsmB,EAAgBJ,GAGtDzlE,EAAK2I,QAAQtJ,KAAKy+C,OAAQ,SAAUwE,GAClC,GAAIwjB,GAAcxjB,GAASojB,EAAaE,EAAcC,EAClDE,EAAezjB,EAAMxW,OAAOyT,EAAOumB,EAAaL,EACpDrK,GAAU2K,GAAgB3K,EAC1Bt9B,GAAUwkB,EAAMxkB,SAElBA,EAASx5B,KAAKJ,IAAI45B,EAAQwgB,GAC1Bj/C,KAAKwkE,YAAa,EAGlBj6B,EAAMz7B,MAAM2vB,OAAS3yB,EAAO2yB,GAG5Bz+B,KAAK6G,MAAM23B,MAAQ+L,EAAMyP,YACzBh6C,KAAK6G,MAAM43B,OAASA,EAGpBz+B,KAAK25C,IAAIoF,KAAKjwC,MAAMjG,IAAMiD,EAAsB,OAAfgzC,EAAuB9+C,KAAKm/C,KAAKC,SAASv2C,IAAI41B,OAASz+B,KAAKm/C,KAAKC,SAASlxC,OAAOrF,IAAM7I,KAAKm/C,KAAKC,SAASv2C,IAAI41B,OAASz+B,KAAKm/C,KAAKC,SAAS2D,gBAAgBtkB,QAC3Lz+B,KAAK25C,IAAIoF,KAAKjwC,MAAMnG,KAAO,IAG3BozD,EAAU/7D,KAAK87D,cAAgBC,GAUjCh5D,EAAQkQ,UAAUqzD,YAAc,WAC9B,GAAIK,GAAmD,OAAjC3mE,KAAK6D,QAAQi7C,YAAYttC,KAAgB,EAAIxR,KAAKukE,SAASj+D,OAAS,EACtFsgE,EAAe5mE,KAAKukE,SAASoC,GAC7BN,EAAarmE,KAAKy+C,OAAOmoB,IAAiB5mE,KAAKy+C,OAAOkmB,EAE1D,OAAO0B,IAAc,MAQvBtjE,EAAQkQ,UAAU6xD,iBAAmB,WACnC,GAEItzD,GAAMsvB,EAFN+lC,EAAY7mE,KAAKy+C,OAAOkmB,EACX3kE,MAAKy+C,OAAOmmB,EAG7B,IAAI5kE,KAAKugD,YAEP,GAAIsmB,EAAW,CACbA,EAAUnB,aACH1lE,MAAKy+C,OAAOkmB,EAEnB,KAAK7jC,IAAU9gC,MAAKiC,MAClB,GAAIjC,KAAKiC,MAAM+D,eAAe86B,GAAS,CACrCtvB,EAAOxR,KAAKiC,MAAM6+B,GAClBtvB,EAAKjG,QAAUiG,EAAKjG,OAAOo2B,OAAOnwB,EAClC,IAAIkyC,GAAU1jD,KAAK8mE,YAAYt1D,EAAKwG,MAChCirC,EAAQjjD,KAAKy+C,OAAOiF,EACxBT,IAASA,EAAMh9B,IAAIzU,IAASA,EAAKk0D,aAMvC,KAAKmB,EAAW,CACd,GAAIxmE,GAAK,KACL2X,EAAO,IACX6uD,GAAY,GAAI/jE,GAAMzC,EAAI2X,EAAMhY,MAChCA,KAAKy+C,OAAOkmB,GAAakC,CAEzB,KAAK/lC,IAAU9gC,MAAKiC,MACdjC,KAAKiC,MAAM+D,eAAe86B,KAC5BtvB,EAAOxR,KAAKiC,MAAM6+B,GAClB+lC,EAAU5gD,IAAIzU,GAIlBq1D,GAAUnkB,SAShB3/C,EAAQkQ,UAAU8zD,YAAc,WAC9B,MAAO/mE,MAAK25C,IAAI8J,UAOlB1gD,EAAQkQ,UAAU+tC,SAAW,SAAU/+C,GACrC,GACIw+B,GADAT,EAAKhgC,KAELgnE,EAAehnE,KAAKsgD,SAGxB,IAAKr+C,EAEE,CAAA,KAAIA,YAAiBpB,IAAWoB,YAAiBnB,IAGtD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKsgD,UAAYr+C,MAFjBjC,MAAKsgD,UAAY,IAkBnB,IAXI0mB,IAEFrmE,EAAK2I,QAAQtJ,KAAK+jE,cAAe,SAAUx6D,EAAUuB,GACnDk8D,EAAaznC,IAAIz0B,EAAOvB,KAI1Bk3B,EAAMumC,EAAa5lC,SACnBphC,KAAKkkE,UAAUzjC,IAGbzgC,KAAKsgD,UAAW,CAElB,GAAIjgD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAK+jE,cAAe,SAAUx6D,EAAUuB,GACnDk1B,EAAGsgB,UAAUlhB,GAAGt0B,EAAOvB,EAAUlJ,KAInCogC,EAAMzgC,KAAKsgD,UAAUlf,SACrBphC,KAAKgkE,OAAOvjC,GAGZzgC,KAAK8kE,mBAGP9kE,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,KAO7Cl8B,EAAQkQ,UAAUg0D,SAAW,WAC3B,MAAOjnE,MAAKsgD,WAOdv9C,EAAQkQ,UAAU8tC,UAAY,SAAUtC,GACtC,GACIhe,GADAT,EAAKhgC,IAgBT,IAZIA,KAAKugD,aACP5/C,EAAK2I,QAAQtJ,KAAKmkE,eAAgB,SAAU56D,EAAUuB,GACpDk1B,EAAGugB,WAAWhhB,IAAIz0B,EAAOvB,KAI3Bk3B,EAAMzgC,KAAKugD,WAAWnf,SACtBphC,KAAKugD,WAAa,KAClBvgD,KAAKskE,gBAAgB7jC,IAIlBge,EAEE,CAAA,KAAIA,YAAkB59C,IAAW49C,YAAkB39C,IAGxD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKugD,WAAa9B,MAFlBz+C,MAAKugD,WAAa,IAOpB,IAAIvgD,KAAKugD,WAAY,CAEnB,GAAIlgD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAKmkE,eAAgB,SAAU56D,EAAUuB,GACpDk1B,EAAGugB,WAAWnhB,GAAGt0B,EAAOvB,EAAUlJ,KAIpCogC,EAAMzgC,KAAKugD,WAAWnf,SACtBphC,KAAKokE,aAAa3jC,GAIpBzgC,KAAK8kE,mBAGL9kE,KAAKknE,SAELlnE,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,KAO7Cl8B,EAAQkQ,UAAUk0D,UAAY,WAC5B,MAAOnnE,MAAKugD,YAOdx9C,EAAQkQ,UAAUm0D,WAAa,SAAU/mE,GACvC,GAAImR,GAAOxR,KAAKsgD,UAAUtpB,IAAI32B,GAC1ByiD,EAAU9iD,KAAKsgD,UAAUjf,YAEzB7vB,IAEFxR,KAAK6D,QAAQ4/D,SAASjyD,EAAM,SAAUA,GAChCA,GAGFsxC,EAAQnhB,OAAOthC,MAYvB0C,EAAQkQ,UAAUo0D,SAAW,SAAUrlB,GACrC,MAAOA,GAASp6C,MAAQ5H,KAAK6D,QAAQ+D,OAASo6C,EAASnP,IAAM,QAAU,QASzE9vC,EAAQkQ,UAAU6zD,YAAc,SAAU9kB,GACxC,GAAIp6C,GAAO5H,KAAKqnE,SAASrlB,EACzB,OAAY,cAARp6C,GAA0CrB,QAAlBy7C,EAASiB,MAC5B2hB,EAEA5kE,KAAKugD,WAAayB,EAASiB,MAAQ0hB,GAS9C5hE,EAAQkQ,UAAUgxD,UAAY,SAAUxjC,GACtC,GAAIT,GAAKhgC,IAETygC,GAAIn3B,QAAQ,SAAWjJ,GACrB,GAKIinE,GALAtlB,EAAWhiB,EAAGsgB,UAAUtpB,IAAI32B,EAAI2/B,EAAG8jC,aACnCtyD,EAAOwuB,EAAG/9B,MAAM5B,GAChBuH,EAAOo4B,EAAGqnC,SAASrlB,GAEnB76C,EAAcpE,EAAQu/B,MAAM16B,EAehC,IAZI4J,IAEGrK,GAAiBqK,YAAgBrK,GAMpC64B,EAAGQ,YAAYhvB,EAAMwwC,IAJrBslB,EAAW91D,EAAK81D,SAChBtnC,EAAGunC,YAAY/1D,GACfA,EAAO,QAMNA,EAAM,CAET,IAAIrK,EAQG,KAAY,iBAARS,EAEH,GAAIV,WAAU,gIAEd,GAAIA,WAAU,sBAAwBU,EAAO,IAXnD4J,GAAO,GAAIrK,GAAY66C,EAAUhiB,EAAGm6B,WAAYn6B,EAAGn8B,SACnD2N,EAAKnR,GAAKA,EACV2/B,EAAGC,SAASzuB,GACR81D,IACFtnE,KAAK2hD,UAAUn6C,KAAKnH,GACpBmR,EAAKo0D,YASVtmB,KAAKt/C,OAERA,KAAKknE,SACLlnE,KAAKwkE,YAAa,EAClBxkE,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,KAQ7Cl8B,EAAQkQ,UAAU+wD,OAASjhE,EAAQkQ,UAAUgxD,UAO7ClhE,EAAQkQ,UAAUixD,UAAY,SAAUzjC,GACtC,GAAIxO,GAAQ,EACR+N,EAAKhgC,IACTygC,GAAIn3B,QAAQ,SAAUjJ,GACpB,GAAImR,GAAOwuB,EAAG/9B,MAAM5B,EAChBmR,KACFygB,IACA+N,EAAGunC,YAAY/1D,MAIfygB,IAEFjyB,KAAKknE,SACLlnE,KAAKwkE,YAAa,EAClBxkE,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,MAQ/Cl8B,EAAQkQ,UAAUi0D,OAAS,WAGzBvmE,EAAK2I,QAAQtJ,KAAKy+C,OAAQ,SAAUwE,GAClCA,EAAMjiB,WASVj+B,EAAQkQ,UAAUoxD,gBAAkB,SAAU5jC,GAC5CzgC,KAAKokE,aAAa3jC,IAQpB19B,EAAQkQ,UAAUmxD,aAAe,SAAU3jC,GACzC,GAAIT,GAAKhgC,IAETygC,GAAIn3B,QAAQ,SAAUjJ,GACpB,GAAImnE,GAAYxnC,EAAGugB,WAAWvpB,IAAI32B,GAC9B4iD,EAAQjjB,EAAGye,OAAOp+C,EAEtB,IAAK4iD,EA4BHA,EAAMxf,QAAQ+jC,OA5BJ,CAEV,GAAInnE,GAAMskE,GAAatkE,GAAMukE,EAC3B,KAAM,IAAI59D,OAAM,qBAAuB3G,EAAK,qBAG9C,IAAIonE,GAAergE,OAAOgJ,OAAO4vB,EAAGn8B,QACpClD,GAAKgG,OAAO8gE,GACVhpC,OAAQ,OAGVwkB,EAAQ,GAAIngD,GAAMzC,EAAImnE,EAAWxnC,GACjCA,EAAGye,OAAOp+C,GAAM4iD,CAGhB,KAAK,GAAIniB,KAAUd,GAAG/9B,MACpB,GAAI+9B,EAAG/9B,MAAM+D,eAAe86B,GAAS,CACnC,GAAItvB,GAAOwuB,EAAG/9B,MAAM6+B,EAChBtvB,GAAKwG,KAAKirC,OAAS5iD,GACrB4iD,EAAMh9B,IAAIzU,GAKhByxC,EAAMjiB,QACNiiB,EAAMP,UAOV1iD,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,KAQ7Cl8B,EAAQkQ,UAAUqxD,gBAAkB,SAAU7jC,GAC5C,GAAIge,GAASz+C,KAAKy+C,MAClBhe,GAAIn3B,QAAQ,SAAUjJ,GACpB,GAAI4iD,GAAQxE,EAAOp+C,EAEf4iD,KACFA,EAAMyiB,aACCjnB,GAAOp+C,MAIlBL,KAAKuhD,YAELvhD,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,KAQ7Cl8B,EAAQkQ,UAAU+yD,aAAe,WAC/B,GAAIhmE,KAAKugD,WAAY,CAEnB,GAAIgkB,GAAWvkE,KAAKugD,WAAWnf,QAC7BJ,MAAOhhC,KAAK6D,QAAQi/D,aAGlBnV,GAAWhtD,EAAK8G,WAAW88D,EAAUvkE,KAAKukE,SAC9C,IAAI5W,EAAS,CAEX,GAAIlP,GAASz+C,KAAKy+C,MAClB8lB,GAASj7D,QAAQ,SAAUo6C,GACzBjF,EAAOiF,GAASgiB,SAIlBnB,EAASj7D,QAAQ,SAAUo6C,GACzBjF,EAAOiF,GAAShB,SAGlB1iD,KAAKukE,SAAWA,EAGlB,MAAO5W,GAEP,OAAO,GASX5qD,EAAQkQ,UAAUgtB,SAAW,SAAUzuB,GACrCxR,KAAKiC,MAAMuP,EAAKnR,IAAMmR,CAGtB,IAAIkyC,GAAU1jD,KAAK8mE,YAAYt1D,EAAKwG,MAChCirC,EAAQjjD,KAAKy+C,OAAOiF,EACpBT,IAAOA,EAAMh9B,IAAIzU,IASvBzO,EAAQkQ,UAAUutB,YAAc,SAAUhvB,EAAMwwC,GAC9C,GAAI0lB,GAAal2D,EAAKwG,KAAKirC,MACvB0kB,EAAgBn2D,EAAKwG,KAAK4vD,QAM9B,IAHAp2D,EAAKiyB,QAAQue,GAGT0lB,GAAcl2D,EAAKwG,KAAKirC,OAAS0kB,GAAiBn2D,EAAKwG,KAAK4vD,SAAU,CACxE,GAAIC,GAAW7nE,KAAKy+C,OAAOipB,EACvBG,IAAUA,EAASlmC,OAAOnwB,EAE9B,IAAIkyC,GAAU1jD,KAAK8mE,YAAYt1D,EAAKwG,MAChCirC,EAAQjjD,KAAKy+C,OAAOiF,EACpBT,IAAOA,EAAMh9B,IAAIzU,KAUzBzO,EAAQkQ,UAAUs0D,YAAc,SAAU/1D,GAExCA,EAAKk0D,aAGE1lE,MAAKiC,MAAMuP,EAAKnR,GAGvB,IAAI+I,GAAQpJ,KAAK2hD,UAAUp6C,QAAQiK,EAAKnR,GAC3B,KAAT+I,GAAapJ,KAAK2hD,UAAUt4C,OAAOD,EAAO,GAG9CoI,EAAKjG,QAAUiG,EAAKjG,OAAOo2B,OAAOnwB,IASpCzO,EAAQkQ,UAAU60D,qBAAuB,SAAUr+D,GAGjD,IAAK,GAFDs+D,MAEKthE,EAAI,EAAGA,EAAIgD,EAAMnD,OAAQG,IAC5BgD,EAAMhD,YAAcnE,IACtBylE,EAASvgE,KAAKiC,EAAMhD,GAGxB,OAAOshE,IAaThlE,EAAQkQ,UAAU4lD,SAAW,SAAU/tD,GAErC9K,KAAKykE,YAAYjzD,KAAOxR,KAAKgjD,eAAel4C,GAC5C9K,KAAKykE,YAAYuD,aAAel9D,EAAMI,OAAO88D,eAAgB,EAC7DhoE,KAAKykE,YAAYwD,cAAgBn9D,EAAMI,OAAO+8D,gBAAiB,EAC/DjoE,KAAKykE,YAAYyD,UAAY,MAS/BnlE,EAAQkQ,UAAUk1D,eAAiB,SAAUzkB,GAC3C,IAAK,GAAIj9C,GAAI,EAAGA,EAAIzG,KAAKukE,SAASj+D,OAAQG,IACxC,GAAIi9C,GAAW1jD,KAAKukE,SAAS99D,GAAI,MAAOA,IAS5C1D,EAAQkQ,UAAUwlD,aAAe,SAAU3tD,GACzC,GAEIjE,GAFA2K,EAAOxR,KAAKykE,YAAYjzD,MAAQ,KAChCwuB,EAAKhgC,IAGT,IAAIwR,IAASA,EAAK81D,UAAYtnE,KAAK6D,QAAQo/D,sBAAuB,CAEhE,IAAKjjE,KAAK6D,QAAQq/D,SAASC,aAAenjE,KAAK6D,QAAQq/D,SAASE,cAAgB5xD,EAAK0xD,SACnF,MAIF,IAAI1xD,EAAK0xD,YAAa,EACpB,MAGF,IAAI8E,GAAehoE,KAAKykE,YAAYuD,aAChCC,EAAgBjoE,KAAKykE,YAAYwD,aAErC,IAAID,EACFnhE,GACE2K,KAAMw2D,EACNI,SAAUt9D,EAAMsrC,OAAOxY,EACvByqC,UAAU,EACVrwD,KAAMhY,KAAKsoE,eAAe92D,EAAKwG,OAGjChY,KAAKykE,YAAYyD,WAAarhE,OACzB,IAAIohE,EACTphE,GACE2K,KAAMy2D,EACNG,SAAUt9D,EAAMsrC,OAAOxY,EACvB2qC,WAAW,EACXvwD,KAAMhY,KAAKsoE,eAAe92D,EAAKwG,OAGjChY,KAAKykE,YAAYyD,WAAarhE,OACzB,CACL7G,KAAKykE,YAAY+D,aAAeh3D,CAEhC,IAAIi3D,GAAiBzoE,KAAKmoE,eAAe32D,EAAKwG,KAAKirC,OAE/CylB,EAAc1oE,KAAK6D,QAAQo/D,uBAAyBzxD,EAAK81D,UAAY91D,EAAKnR,IAAML,KAAK4hD,cAEzF5hD,MAAKykE,YAAYyD,UAAYQ,EAAYr7D,IAAI,SAAWhN,GACtD,GAAImR,GAAOwuB,EAAG/9B,MAAM5B,GAChBsoE,EAAa3oC,EAAGmoC,eAAe32D,EAAKwG,KAAKirC,MAC7C,QACEzxC,KAAMA,EACN42D,SAAUt9D,EAAMsrC,OAAOxY,EACvBgrC,YAAaH,EAAiBE,EAC9B3wD,KAAMhY,KAAKsoE,eAAe92D,EAAKwG,QAEhCsnC,KAAKt/C,OAGV8K,EAAM05C,sBACGxkD,MAAK6D,QAAQq/D,SAASj9C,MAAQnb,EAAM84C,SAASilB,SAAW/9D,EAAM84C,SAASklB,UAEhF9oE,KAAK+oE,oBAAoBj+D,IAS7B/H,EAAQkQ,UAAU81D,oBAAsB,SAAUj+D,GAChD,GAAIu4C,GAAOrjD,KAAK6D,QAAQw/C,MAAQ,KAC5B2lB,EAAOroE,EAAK6H,gBAAgBxI,KAAK25C,IAAIpP,OACrC3M,EAAI9yB,EAAMsrC,OAAOxY,EAAIorC,EAAO,GAC5Bh+C,EAAOhrB,KAAKm/C,KAAKx+C,KAAKm/C,OAAOliB,GAC7B54B,EAAQhF,KAAKm/C,KAAKx+C,KAAK6+C,WACvB9M,EAAO1yC,KAAKm/C,KAAKx+C,KAAK69C,UACtB7L,EAAQ0Q,EAAOA,EAAKr4B,EAAMhmB,EAAO0tC,GAAQ1nB,EACzC6nB,EAAMF,EAENqP,GACFp6C,KAAM,QACN+qC,MAAOA,EACPE,IAAKA,EACLxU,QAAS,YAGPh+B,EAAKM,EAAKgF,YACdq8C,GAAShiD,KAAKsgD,UAAU1hB,UAAYv+B,CAEpC,IAAI4iD,GAAQjjD,KAAKkjD,gBAAgBp4C,EAC7Bm4C,KACFjB,EAASiB,MAAQA,EAAMS,QAGzB,IAAIulB,GAAU,GAAI3mE,GAAU0/C,EAAUhiD,KAAKm6D,WAAYn6D,KAAK6D,QAC5DolE,GAAQ5oE,GAAKA,EACb4oE,EAAQjxD,KAAOhY,KAAKsoE,eAAetmB,GACnChiD,KAAKigC,SAASgpC,EAEd,IAAIpiE,IACF2K,KAAMy3D,EACNV,WAAW,EACXH,SAAUt9D,EAAMsrC,OAAOxY,EACvB5lB,KAAMixD,EAAQjxD,KAEhBhY,MAAKykE,YAAYyD,WAAarhE,GAE9BiE,EAAM05C,mBAQRzhD,EAAQkQ,UAAUylD,QAAU,SAAU5tD,GACpC,GAAI9K,KAAKykE,YAAYyD,UAAW,CAC9Bp9D,EAAM05C,iBAEN,IAAIxkB,GAAKhgC,KACLqjD,EAAOrjD,KAAK6D,QAAQw/C,MAAQ,KAC5BllB,EAAUn+B,KAAKm/C,KAAKxF,IAAIj6C,KAAKwpE,WAAalpE,KAAKm/C,KAAKC,SAASz2C,KAAK61B,MAClEx5B,EAAQhF,KAAKm/C,KAAKx+C,KAAK6+C,WACvB9M,EAAO1yC,KAAKm/C,KAAKx+C,KAAK69C,UAGtBgqB,EAAexoE,KAAKykE,YAAY+D,aAChCW,EAAqBnpC,EAAGn8B,QAAQq/D,SAASE,YACzCgG,EAAe,IACnB,IAAID,GAAsBX,GACOjiE,QAA3BiiE,EAAaxwD,KAAKirC,MAAoB,CAExC,GAAIA,GAAQjjB,EAAGkjB,gBAAgBp4C,EAC3Bm4C,KAGFmmB,EAAeppE,KAAKmoE,eAAellB,EAAMS,UAM/C1jD,KAAKykE,YAAYyD,UAAU5+D,QAAQ,SAAWzC,GAC5C,GAAI02D,GAAUv9B,EAAGmf,KAAKx+C,KAAKm/C,OAAOh1C,EAAMsrC,OAAOxY,EAAIO,GAC/CkrC,EAAUrpC,EAAGmf,KAAKx+C,KAAKm/C,OAAOj5C,EAAMuhE,SAAWjqC,GAC/C3W,EAAS+1C,EAAU8L,EAEnBrnB,EAAWhiD,KAAKsoE,eAAezhE,EAAM2K,KAAKwG,KAC9C,IAAInR,EAAM2K,KAAK0xD,YAAa,EAA5B,CAIA,GAAIoG,GAAoBtpC,EAAGn8B,QAAQq/D,SAASC,YAAct8D,EAAM2K,KAAK0xD,YAAa,CAElF,IAAIoG,EACF,GAAIziE,EAAMwhE,UAER,GAAsB9hE,QAAlBy7C,EAASrP,MAAoB,CAC/B,GAAI42B,GAAe5oE,EAAKgH,QAAQd,EAAMmR,KAAK26B,MAAO,QAC9CA,EAAQ,GAAIttC,MAAKkkE,EAAazhE,UAAY0f,EAE9Cw6B,GAASrP,MAAQ0Q,EAAOA,EAAK1Q,EAAO3tC,EAAO0tC,GAAQC,OAEhD,IAAI9rC,EAAM0hE,WAEf,GAAoBhiE,QAAhBy7C,EAASnP,IAAkB,CAC7B,GAAI22B,GAAa7oE,EAAKgH,QAAQd,EAAMmR,KAAK66B,IAAK,QAC1CA,EAAM,GAAIxtC,MAAKmkE,EAAW1hE,UAAY0f,EAE1Cw6B,GAASnP,IAAMwQ,EAAOA,EAAKxQ,EAAK7tC,EAAO0tC,GAAQG,OAIjD,IAAsBtsC,QAAlBy7C,EAASrP,MAAoB,CAC/B,GAAI42B,GAAe5oE,EAAKgH,QAAQd,EAAMmR,KAAK26B,MAAO,QAAQ7qC,UACtD6qC,EAAQ,GAAIttC,MAAKkkE,EAAe/hD,EAEpC,IAAoBjhB,QAAhBy7C,EAASnP,IAAkB,CAC7B,GAAI22B,GAAa7oE,EAAKgH,QAAQd,EAAMmR,KAAK66B,IAAK,QAC1CpsB,EAAW+iD,EAAW1hE,UAAYyhE,EAAazhE,SAGnDk6C,GAASrP,MAAQ0Q,EAAOA,EAAK1Q,EAAO3tC,EAAO0tC,GAAQC,EACnDqP,EAASnP,IAAM,GAAIxtC,MAAK28C,EAASrP,MAAM7qC,UAAY2e,OAGnDu7B,GAASrP,MAAQ0Q,EAAOA,EAAK1Q,EAAO3tC,EAAO0tC,GAAQC,EAM3D,GAAIw2B,GAAqBnpC,EAAGn8B,QAAQq/D,SAASE,aAAev8D,EAAM2K,KAAK0xD,YAAa,CAEpF,IAAIiG,IAAuBtiE,EAAMwhE,WAAaxhE,EAAM0hE,WAA6B,MAAhBa,GACzC7iE,QAAlBy7C,EAASiB,MAAoB,CAC/B,GAAIwmB,GAAYL,EAAeviE,EAAM+hE,WAGrCa,GAAYxkE,KAAKJ,IAAI,EAAG4kE,GACxBA,EAAYxkE,KAAKL,IAAIo7B,EAAGukC,SAASj+D,OAAS,EAAGmjE,GAE7CznB,EAASiB,MAAQjjB,EAAGukC,SAASkF,GAKjCznB,EAAWhiD,KAAKsoE,eAAetmB,GAC/BhiB,EAAGn8B,QAAQ6/D,SAAS1hB,EAAU,SAAWA,GACnCA,GACFn7C,EAAM2K,KAAKiyB,QAAQzjC,KAAKsoE,eAAetmB,EAAU,UAElD1C,KAAKt/C,SACPs/C,KAAKt/C,OAERA,KAAKwkE,YAAa,EAClBxkE,KAAKm/C,KAAKE,QAAQzH,KAAK,aAU3B70C,EAAQkQ,UAAUy2D,aAAe,SAAUl4D,EAAMkyC,GAC/C,GAAIT,GAAQjjD,KAAKy+C,OAAOiF;AACxB,GAAIT,GAASA,EAAMS,SAAWlyC,EAAKwG,KAAKirC,MAAO,CAC7C,GAAI4kB,GAAWr2D,EAAKjG,MACpBs8D,GAASlmC,OAAOnwB,GAChBq2D,EAAS7mC,QACTiiB,EAAMh9B,IAAIzU,GACVyxC,EAAMjiB,QAENxvB,EAAKwG,KAAKirC,MAAQA,EAAMS,UAS5B3gD,EAAQkQ,UAAU0lD,WAAa,SAAU7tD,GACvC,GAAI9K,KAAKykE,YAAYyD,UAAW,CAC9Bp9D,EAAM05C,iBAEN,IAAIxkB,GAAKhgC,KACL8iD,EAAU9iD,KAAKsgD,UAAUjf,aACzB6mC,EAAYloE,KAAKykE,YAAYyD,SACjCloE,MAAKykE,YAAYyD,UAAY,KAE7BA,EAAU5+D,QAAQ,SAAWzC,GAC3B,GAAIxG,GAAKwG,EAAM2K,KAAKnR,GAChBgiC,EAAiD,MAAxCrC,EAAGsgB,UAAUtpB,IAAI32B,EAAI2/B,EAAG8jC,YAErC,IAAKzhC,EAYE,CAEL,GAAI2f,GAAWhiD,KAAKsoE,eAAezhE,EAAM2K,KAAKwG,KAC9CgoB,GAAGn8B,QAAQ2/D,OAAOxhB,EAAU,SAAUA,GAChCA,GAEFA,EAASc,EAAQlkB,UAAYv+B,EAC7ByiD,EAAQ5iB,OAAO8hB,KAGfn7C,EAAM2K,KAAKiyB,QAAQ58B,EAAMmR,MAEzBgoB,EAAGwkC,YAAa,EAChBxkC,EAAGmf,KAAKE,QAAQzH,KAAK,kBAvBzB5X,GAAGn8B,QAAQy/D,MAAMz8D,EAAM2K,KAAKwG,KAAM,SAAUgqC,GAC1ChiB,EAAGunC,YAAY1gE,EAAM2K,MACjBwwC,GACFhiB,EAAGsgB,UAAUjf,aAAapb,IAAI+7B,GAIhChiB,EAAGwkC,YAAa,EAChBxkC,EAAGmf,KAAKE,QAAQzH,KAAK,cAmBxB0H,KAAKt/C,SAIZ+C,EAAQkQ,UAAUmyD,kBAAoB,SAAUt6D,GAC1C9K,KAAK6D,QAAQw/D,cAAcriC,QAC7BhhC,KAAK0kE,iBAAiBzhB,MAAQjjD,KAAKkjD,gBAAgBp4C,GAE/C9K,KAAK0kE,iBAAiBzhB,QACxBn4C,EAAM05C,kBAENxkD,KAAK0kE,iBAAiBiF,cAAgB3pE,KAAKugD,WAAWnf,QACpDJ,MAAOhhC,KAAK6D,QAAQi/D,gBAM5B//D,EAAQkQ,UAAUoyD,aAAe,SAAUv6D,GACzC,GAAI9K,KAAK6D,QAAQw/D,cAAcriC,OAAShhC,KAAK0kE,iBAAiBzhB,MAAO,CACnEn4C,EAAM05C,iBAGN,IAAIvB,GAAQjjD,KAAKkjD,gBAAgBp4C,EAGjC,IAAIm4C,GAASA,EAAMxkB,QAAUz+B,KAAK0kE,iBAAiBzhB,MAAMxkB,OAAQ,CAC/D,GAAImrC,GAAW3mB,EAAMp6C,IAAM7I,KAAK0kE,iBAAiBzhB,MAAMp6C,IACnDm/B,EAAUl9B,EAAMsrC,OAAStrC,EAAMsrC,OAAOn1B,EAAInW,EAAMk9B,QAChD6hC,EAAiBlpE,EAAKiI,eAAeq6C,EAAMtJ,IAAI6J,YAC/CsmB,EAAqB9pE,KAAK0kE,iBAAiBzhB,MAAMxkB,MACrD,IAAImrC,GAEF,GAA0C5hC,EAAtC6hC,EAAiBC,EACnB,WAEG,CACL,GAAIC,GAAoB9mB,EAAMxkB,MAE9B,IAAIorC,EAAiBE,EAAoBD,EAAqB9hC,EAC5D,QAKN,GAAIib,GAASA,GAASjjD,KAAK0kE,iBAAiBzhB,MAAO,CACjD,GAAI1C,GAAavgD,KAAKugD,WAClBypB,EAAczpB,EAAWvpB,IAAIisB,EAAMS,SACnCumB,EAAe1pB,EAAWvpB,IAAIh3B,KAAK0kE,iBAAiBzhB,MAAMS,QAG1DumB,IAAgBD,IAClBhqE,KAAK6D,QAAQ6+D,eAAeuH,EAAcD,EAAahqE,KAAKugD,YAC5DvgD,KAAKugD,WAAWrgB,OAAO+pC,GACvBjqE,KAAKugD,WAAWrgB,OAAO8pC,GAIzB,IAAIE,GAAWlqE,KAAKugD,WAAWnf,QAC7BJ,MAAOhhC,KAAK6D,QAAQi/D,YAItB,KAAKniE,EAAK8G,WAAWyiE,EAAUlqE,KAAK0kE,iBAAiBiF,eAQnD,IAPA,GAAIppB,GAAavgD,KAAKugD,WAClB4pB,EAAYnqE,KAAK0kE,iBAAiBiF,cAClCS,EAAYpqE,KAAK0kE,iBAAiBzhB,MAAMS,QACxC2mB,EAAYplE,KAAKL,IAAIulE,EAAU7jE,OAAQ4jE,EAAS5jE,QAChDgkE,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,EAAS3iE,QAAQ4iE,EAAUG,EAASC,IACtDE,EAAclqB,EAAWvpB,IAAIkzC,EAASI,EAASb,IAC/CiB,EAAgBnqB,EAAWvpB,IAAImzC,EAAUG,EAASC,GACtDvqE,MAAK6D,QAAQ6+D,eAAe+H,EAAaC,EAAenqB,GACxDA,EAAWrgB,OAAOuqC,GAClBlqB,EAAWrgB,OAAOwqC,EAElB,IAAIC,GAAgBT,EAASI,EAASb,EACtCS,GAASI,EAASb,GAAaU,EAAUG,EAASC,GAClDL,EAASM,GAAmBG,EAE5BL,QAjBFC,GAAY,MALdd,GAAY,MA8BxB1mE,EAAQkQ,UAAUqyD,gBAAkB,SAAUx6D,GAC5C,GAAI9K,KAAK6D,QAAQw/D,cAAcriC,OAAShhC,KAAK0kE,iBAAiBzhB,MAAO,CACnEn4C,EAAM05C,iBAGN,IAAIxkB,GAAKhgC,KACLK,EAAK2/B,EAAG0kC,iBAAiBzhB,MAAMS,QAC/BZ,EAAU9iB,EAAGugB,WAAWlf,aACxBmmC,EAAY7mE,EAAKgG,UAAWm8C,EAAQ9rB,IAAI32B,GAC5C2/B,GAAGn8B,QAAQ+/D,YAAY4D,EAAW,SAAUA,GAC1C,GAAIA,EAEFA,EAAU1kB,EAAQlkB,UAAYv+B,EAC9ByiD,EAAQ5iB,OAAOsnC,OACV,CAGL,GAAI0C,GAAWpnB,EAAQ1hB,QACrBJ,MAAOhB,EAAGn8B,QAAQi/D,YAIpB,KAAKniE,EAAK8G,WAAWyiE,EAAUlqC,EAAG0kC,iBAAiBiF,eAIjD,IAHA,GAAIQ,GAAYnqC,EAAG0kC,iBAAiBiF,cAChCU,EAAYplE,KAAKL,IAAIulE,EAAU7jE,OAAQ4jE,EAAS5jE,QAChDgkE,EAAS,EACGD,EAATC,GAAoB,CAEzB,KAAgBD,EAATC,GAAsBJ,EAASI,IAAWH,EAAUG,IACzDA,GAIF,IAAIA,GAAUD,EACZ,KAKF,IAAIG,GAAkBN,EAAS3iE,QAAQ4iE,EAAUG,IAC7CG,EAAc3nB,EAAQ9rB,IAAIkzC,EAASI,IACnCI,EAAgB5nB,EAAQ9rB,IAAImzC,EAAUG,GAC1CtqC,GAAGn8B,QAAQ6+D,eAAe+H,EAAaC,EAAe5nB,GACtDvC,WAAWrgB,OAAOuqC,GAClBlqB,WAAWrgB,OAAOwqC,EAElB,IAAIC,GAAgBT,EAASI,EAC7BJ,GAASI,GAAUH,EAAUG,GAC7BJ,EAASM,GAAmBG,EAE5BL,QAMRtqC,EAAGmf,KAAKE,QAAQzH,KAAK,gBAAkB8L,QAASrjD,MASpD0C,EAAQkQ,UAAU+xD,cAAgB,SAAUl6D,GAC1C,GAAK9K,KAAK6D,QAAQk/D,WAAlB,CAEA,GAAI8F,GAAU/9D,EAAM84C,WAAa94C,EAAM84C,SAASilB,SAAW/9D,EAAM84C,SAASklB,SACtE8B,EAAW9/D,EAAM84C,UAAY94C,EAAM84C,SAASgnB,QAChD,IAAI/B,GAAW+B,EAEb,WADA5qE,MAAKilE,mBAAmBn6D,EAI1B,IAAI+/D,GAAe7qE,KAAK4hD,eAEpBpwC,EAAOxR,KAAKgjD,eAAel4C,GAC3B62C,EAAYnwC,GAAQA,EAAKnR,MAC7BL,MAAK6hD,aAAaF,EAElB,IAAImpB,GAAe9qE,KAAK4hD,gBAIpBkpB,EAAaxkE,OAAS,GAAKukE,EAAavkE,OAAS,IACnDtG,KAAKm/C,KAAKE,QAAQzH,KAAK,UACrB31C,MAAO6oE,EACPhgE,MAAOA,MAUb/H,EAAQkQ,UAAUiyD,WAAa,SAAUp6D,GACvC,GAAK9K,KAAK6D,QAAQk/D,YACb/iE,KAAK6D,QAAQq/D,SAASj9C,IAA3B,CAEA,GAAI+Z,GAAKhgC,KACLqjD,EAAOrjD,KAAK6D,QAAQw/C,MAAQ,KAC5B7xC,EAAOxR,KAAKgjD,eAAel4C,EAE/B,IAAI0G,EAAM,CAIR,GAAIwwC,GAAWhiB,EAAGsgB,UAAUtpB,IAAIxlB,EAAKnR,GACrCL,MAAK6D,QAAQ0/D,SAASvhB,EAAU,SAAUA,GACpCA,GACFhiB,EAAGsgB,UAAUjf,aAAanB,OAAO8hB,SAGhC,CAEL,GAAIgnB,GAAOroE,EAAK6H,gBAAgBxI,KAAK25C,IAAIpP,OACrC3M,EAAI9yB,EAAMsrC,OAAOxY,EAAIorC,EACrBr2B,EAAQ3yC,KAAKm/C,KAAKx+C,KAAKm/C,OAAOliB,GAC9B54B,EAAQhF,KAAKm/C,KAAKx+C,KAAK6+C,WACvB9M,EAAO1yC,KAAKm/C,KAAKx+C,KAAK69C,UAEtBusB,GACFp4B,MAAO0Q,EAAOA,EAAK1Q,EAAO3tC,EAAO0tC,GAAQC,EACzCtU,QAAS,WAIX,IAA0B,UAAtBr+B,KAAK6D,QAAQ+D,KAAkB,CACjC,GAAIirC,GAAM7yC,KAAKm/C,KAAKx+C,KAAKm/C,OAAOliB,EAAI59B,KAAK6G,MAAM23B,MAAQ,EACvDusC,GAAYl4B,IAAMwQ,EAAOA,EAAKxQ,EAAK7tC,EAAO0tC,GAAQG,EAGpDk4B,EAAY/qE,KAAKsgD,UAAU1hB,UAAYj+B,EAAKgF,YAE5C,IAAIs9C,GAAQjjD,KAAKkjD,gBAAgBp4C,EAC7Bm4C,KACF8nB,EAAY9nB,MAAQA,EAAMS,SAI5BqnB,EAAc/qE,KAAKsoE,eAAeyC,GAClC/qE,KAAK6D,QAAQy/D,MAAMyH,EAAa,SAAUv5D,GACpCA,GACFwuB,EAAGsgB,UAAUjf,aAAapb,IAAIzU,QAYtCzO,EAAQkQ,UAAUgyD,mBAAqB,SAAUn6D,GAC/C,GAAK9K,KAAK6D,QAAQk/D,WAAlB,CAEA,GAAIvxD,GAAOxR,KAAKgjD,eAAel4C,EAE/B,IAAI0G,EAAM,CAGR,GAAImwC,GAAY3hD,KAAK6D,QAAQm/D,YAAchjE,KAAK4hD,kBAG5CgpB,EAAW9/D,EAAM84C,UAAY94C,EAAM84C,SAASgnB,WAAY,CAE5D,IAAIA,GAAY5qE,KAAK6D,QAAQm/D,YAAa,CAExC,GAAIgI,GAAYhrE,KAAKsgD,UAAUtpB,IAAIxlB,EAAKnR,IAAI4iD,MAGxCgoB,EAAoB1kE,MACpBvG,MAAK6D,QAAQqnE,qBACXvpB,EAAUr7C,OAAS,IACrB2kE,EAAoBjrE,KAAKsgD,UAAUtpB,IAAI2qB,EAAU,IAAIsB,OAKpDjjD,KAAK6D,QAAQqnE,qBAA4C3kE,QAArB0kE,GAAkCA,GAAqBD,GAC9FrpB,EAAUn6C,KAAKgK,EAAKnR,GAEtB,IAAI6/C,GAAQn9C,EAAQooE,cAAcnrE,KAAKsgD,UAAUtpB,IAAI2qB,EAAW3hD,KAAK8jE,aAErE,KAAK9jE,KAAK6D,QAAQqnE,qBAAuBD,GAAqBD,EAAW,CAEvErpB,IACA,KAAK,GAAIthD,KAAML,MAAKiC,MAClB,GAAIjC,KAAKiC,MAAM+D,eAAe3F,GAAK,CACjC,GAAI+qE,GAAQprE,KAAKiC,MAAM5B,GACnBsyC,EAAQy4B,EAAMpzD,KAAK26B,MACnBE,EAAyBtsC,SAAnB6kE,EAAMpzD,KAAK66B,IAAoBu4B,EAAMpzD,KAAK66B,IAAMF,IAEtDA,GAASuN,EAAMt7C,KAAOiuC,GAAOqN,EAAMr7C,MAAS7E,KAAK6D,QAAQqnE,qBAAuBD,GAAqBjrE,KAAKsgD,UAAUtpB,IAAIo0C,EAAM/qE,IAAI4iD,OAAYmoB,YAAiBjpE,IACjKw/C,EAAUn6C,KAAK4jE,EAAM/qE,UAKxB,CAEH,GAAI+I,GAAQu4C,EAAUp6C,QAAQiK,EAAKnR,GACtB,KAAT+I,EAEFu4C,EAAUn6C,KAAKgK,EAAKnR,IAGpBshD,EAAUt4C,OAAOD,EAAO,GAI9BpJ,KAAK6hD,aAAaF,GAElB3hD,KAAKm/C,KAAKE,QAAQzH,KAAK,UACrB31C,MAAOjC,KAAK4hD,eACZ92C,MAAOA,OAWb/H,EAAQooE,cAAgB,SAAU7qB,GAChC,GAAIz7C,GAAM,KACND,EAAM,IAkBV,OAhBA07C,GAAUh3C,QAAQ,SAAU0O,IACf,MAAPpT,GAAeoT,EAAK26B,MAAQ/tC,KAC9BA,EAAMoT,EAAK26B,OAGGpsC,QAAZyR,EAAK66B,KACI,MAAPhuC,GAAemT,EAAK66B,IAAMhuC,KAC5BA,EAAMmT,EAAK66B,MAGF,MAAPhuC,GAAemT,EAAK26B,MAAQ9tC,KAC9BA,EAAMmT,EAAK26B,UAMf/tC,IAAKA,EACLC,IAAKA,IAUT9B,EAAQkQ,UAAU+vC,eAAiB,SAAUl4C,GAE3C,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOlF,eAAe,iBACxB,MAAOkF,GAAO,gBAEhBA,GAASA,EAAOG,WAGlB,MAAO,OASTtI,EAAQkQ,UAAUiwC,gBAAkB,SAAUp4C,GAE5C,IAAK,GADDk9B,GAAUl9B,EAAMsrC,OAAStrC,EAAMsrC,OAAOn1B,EAAInW,EAAMk9B,QAC3CvhC,EAAI,EAAGA,EAAIzG,KAAKukE,SAASj+D,OAAQG,IAAK,CAC7C,GAAIi9C,GAAU1jD,KAAKukE,SAAS99D,GACxBw8C,EAAQjjD,KAAKy+C,OAAOiF,GACpBF,EAAaP,EAAMtJ,IAAI6J,WACvB36C,EAAMlI,EAAKiI,eAAe46C,EAC9B,IAAIxb,EAAUn/B,GAAOm/B,EAAUn/B,EAAM26C,EAAWtJ,aAC9C,MAAO+I,EAGT,IAAsC,QAAlCjjD,KAAK6D,QAAQi7C,YAAYttC,MAC3B,GAAI/K,IAAMzG,KAAKukE,SAASj+D,OAAS,GAAK0hC,EAAUn/B,EAC9C,MAAOo6C,OAGT,IAAU,IAANx8C,GAAWuhC,EAAUn/B,EAAM26C,EAAWh8B,OACxC,MAAOy7B,GAKb,MAAO,OASTlgD,EAAQsoE,kBAAoB,SAAUvgE,GAEpC,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOlF,eAAe,oBACxB,MAAOkF,GAAO,mBAEhBA,GAASA,EAAOG,WAGlB,MAAO,OAYTtI,EAAQkQ,UAAUq1D,eAAiB,SAAUtmB,EAAUp6C,GACrD,GAAIugB,GAAQxnB,EAAKgG,UAAWq7C,EAc5B,OAZKp6C,KAEHA,EAAO5H,KAAKsgD,UAAUjf,aAAa1C,SAAS/2B,MAG3BrB,QAAf4hB,EAAMwqB,QACRxqB,EAAMwqB,MAAQhyC,EAAKgH,QAAQwgB,EAAMwqB,MAAO/qC,GAAQA,EAAK+qC,OAAS,SAE/CpsC,QAAb4hB,EAAM0qB,MACR1qB,EAAM0qB,IAAMlyC,EAAKgH,QAAQwgB,EAAM0qB,IAAKjrC,GAAQA,EAAKirC,KAAO,SAGnD1qB,GAGTtoB,EAAOD,QAAUmD,GAIb,SAASlD,EAAQD,EAASM,GAkC9B,QAAS6B,GAAS4wC,EAAOE,EAAKy4B,EAAa/rB,GACzCv/C,KAAK+D,OAASA,EAGd/D,KAAKu9D,QAAUv9D,KAAK+D,SACpB/D,KAAKy9C,OAASz9C,KAAK+D,SACnB/D,KAAK09C,KAAO19C,KAAK+D,SAEjB/D,KAAKurE,WAAY,EACjBvrE,KAAKgF,MAAQ,MACbhF,KAAK0yC,KAAO,EAGZ1yC,KAAK89C,SAASnL,EAAOE,EAAKy4B,GAG1BtrE,KAAK09D,aAAc,EACnB19D,KAAKy9D,eAAgB,EACrBz9D,KAAKw9D,cAAe,EAChB12D,MAAMC,QAAQw4C,GAChBv/C,KAAKu/C,YAAcA,EACKh5C,QAAfg5C,EACTv/C,KAAKu/C,aAAeA,GAEpBv/C,KAAKu/C,eAGPv/C,KAAKqT,OAAStR,EAASypE,OAzDzB,GAAIznE,GAAS7D,EAAoB,GAC7B0B,EAAW1B,EAAoB,IAC/BS,EAAOT,EAAoB,EA2D/B6B,GAASypE,QACPC,aACE3lD,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACLlJ,MAAO,MACPD,KAAM,QAERkvD,aACE5lD,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACLlJ,MAAO,OACPD,KAAM,KASVza,EAASkR,UAAU04D,UAAY,SAAU5nE,GACvC/D,KAAK+D,OAASA,EAGd/D,KAAKu9D,QAAUv9D,KAAK+D,OAAO/D,KAAKu9D,SAChCv9D,KAAKy9C,OAASz9C,KAAK+D,OAAO/D,KAAKy9C,QAC/Bz9C,KAAK09C,KAAO19C,KAAK+D,OAAO/D,KAAK09C,OAS/B37C,EAASkR,UAAU24D,UAAY,SAAUv4D,GACvC,GAAIkZ,GAAgB5rB,EAAK0G,cAAetF,EAASypE,OACjDxrE,MAAKqT,OAAS1S,EAAK0G,WAAWklB,EAAelZ,IAa/CtR,EAASkR,UAAU6qC,SAAW,SAAUnL,EAAOE,EAAKy4B,GAClD,KAAM34B,YAAiBttC,OAAWwtC,YAAextC,OAC/C,KAAM,+CAGRrF,MAAKy9C,OAAkBl3C,QAATosC,EAAqB3yC,KAAK+D,OAAO4uC,EAAM7qC,WAAa,GAAIzC,MACtErF,KAAK09C,KAAcn3C,QAAPssC,EAAmB7yC,KAAK+D,OAAO8uC,EAAI/qC,WAAa,GAAIzC,MAE5DrF,KAAKurE,WACPvrE,KAAK6rE,eAAeP,IAOxBvpE,EAASkR,UAAU0/B,MAAQ,WACzB3yC,KAAKu9D,QAAUv9D,KAAKy9C,OAAOt1B,QAC3BnoB,KAAK8rE,gBAOP/pE,EAASkR,UAAU64D,aAAe,WAIhC,OAAQ9rE,KAAKgF,OACX,IAAK,OACHhF,KAAKu9D,QAAQ/gD,KAAKxc,KAAK0yC,KAAOztC,KAAKuK,MAAMxP,KAAKu9D,QAAQ/gD,OAASxc,KAAK0yC,OACpE1yC,KAAKu9D,QAAQ9gD,MAAM,EACrB,KAAK,QACHzc,KAAKu9D,QAAQ5/C,KAAK,EACpB,KAAK,MACL,IAAK,UACH3d,KAAKu9D,QAAQx2C,MAAM,EACrB,KAAK,OACH/mB,KAAKu9D,QAAQv2C,QAAQ,EACvB,KAAK,SACHhnB,KAAKu9D,QAAQt2C,QAAQ,EACvB,KAAK,SACHjnB,KAAKu9D,QAAQr2C,aAAa,GAI9B,GAAiB,GAAblnB,KAAK0yC,KAEP,OAAQ1yC,KAAKgF,OACX,IAAK,cACHhF,KAAKu9D,QAAQp0C,SAASnpB,KAAKu9D,QAAQr2C,eAAiBlnB,KAAK0yC,KAAM,eAAgB,MACjF,KAAK,SACH1yC,KAAKu9D,QAAQp0C,SAASnpB,KAAKu9D,QAAQt2C,UAAYjnB,KAAK0yC,KAAM,UAAW,MACvE,KAAK,SACH1yC,KAAKu9D,QAAQp0C,SAASnpB,KAAKu9D,QAAQv2C,UAAYhnB,KAAK0yC,KAAM,UAAW,MACvE,KAAK,OACH1yC,KAAKu9D,QAAQp0C,SAASnpB,KAAKu9D,QAAQx2C,QAAU/mB,KAAK0yC,KAAM,QAAS,MACnE,KAAK,UACL,IAAK,MACH1yC,KAAKu9D,QAAQp0C,UAAUnpB,KAAKu9D,QAAQ5/C,OAAS,GAAK3d,KAAK0yC,KAAM,MAAO,MACtE,KAAK,QACH1yC,KAAKu9D,QAAQp0C,SAASnpB,KAAKu9D,QAAQ9gD,QAAUzc,KAAK0yC,KAAM,QAAS,MACnE,KAAK,OACH1yC,KAAKu9D,QAAQp0C,SAASnpB,KAAKu9D,QAAQ/gD,OAASxc,KAAK0yC,KAAM,UAW/D3wC,EAASkR,UAAU84D,QAAU,WAC3B,MAAO/rE,MAAKu9D,QAAQz1D,WAAa9H,KAAK09C,KAAK51C,WAM7C/F,EAASkR,UAAUqE,KAAO,WACxB,GAAI6kC,GAAOn8C,KAAKu9D,QAAQz1D,SAIxB,IAAI9H,KAAKu9D,QAAQ9gD,QAAU,EACzB,OAAQzc,KAAKgF,OACX,IAAK,cACHhF,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,cAAe,MAC7C,KAAK,SACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,SAAU,MACxC,KAAK,SACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,SAAU,MACxC,KAAK,OACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,QAG5B1yC,KAAKu9D,QAAQp0C,SAASnpB,KAAKu9D,QAAQx2C,QAAU/mB,KAAK0yC,KAAM,OACxD,MACF,KAAK,UACL,IAAK,MACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,MAAO,MACrC,KAAK,QACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,QAAS,MACvC,KAAK,OACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,YAKhC,QAAQ1yC,KAAKgF,OACX,IAAK,cACHhF,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,cAAe,MAC7C,KAAK,SACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,SAAU,MACxC,KAAK,SACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,SAAU,MACxC,KAAK,OACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,OAAQ,MACtC,KAAK,UACL,IAAK,MACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,MAAO,MACrC,KAAK,QACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,QAAS,MACvC,KAAK,OACH1yC,KAAKu9D,QAAQt3C,IAAIjmB,KAAK0yC,KAAM,QAMlC,GAAiB,GAAb1yC,KAAK0yC,KAEP,OAAQ1yC,KAAKgF,OACX,IAAK,cACChF,KAAKu9D,QAAQr2C,eAAiBlnB,KAAK0yC,MAAM1yC,KAAKu9D,QAAQr2C,aAAa,EAAG,MAC5E,KAAK,SACClnB,KAAKu9D,QAAQt2C,UAAYjnB,KAAK0yC,MAAM1yC,KAAKu9D,QAAQt2C,QAAQ,EAAG,MAClE,KAAK,SACCjnB,KAAKu9D,QAAQv2C,UAAYhnB,KAAK0yC,MAAM1yC,KAAKu9D,QAAQv2C,QAAQ,EAAG,MAClE,KAAK,OACChnB,KAAKu9D,QAAQx2C,QAAU/mB,KAAK0yC,MAAM1yC,KAAKu9D,QAAQx2C,MAAM,EAAG,MAC9D,KAAK,UACL,IAAK,MACC/mB,KAAKu9D,QAAQ5/C,OAAS3d,KAAK0yC,KAAO,GAAG1yC,KAAKu9D,QAAQ5/C,KAAK,EAAG,MAChE,KAAK,QACC3d,KAAKu9D,QAAQ9gD,QAAUzc,KAAK0yC,MAAM1yC,KAAKu9D,QAAQ9gD,MAAM,EAAG,MAC9D,KAAK,QAQLzc,KAAKu9D,QAAQz1D,WAAaq0C,IAC5Bn8C,KAAKu9D,QAAUv9D,KAAK09C,KAAKv1B,SAG3BvmB,EAASs7D,oBAAoBl9D,KAAK+D,OAAQ/D,KAAMm8C,IAOlDp6C,EAASkR,UAAU2/B,WAAa,WAC9B,MAAO5yC,MAAKu9D,SAedx7D,EAASkR,UAAU+4D,SAAW,SAAUrsC,GAClCA,GAAiC,gBAAhBA,GAAO36B,QAC1BhF,KAAKgF,MAAQ26B,EAAO36B,MACpBhF,KAAK0yC,KAAO/S,EAAO+S,KAAO,EAAI/S,EAAO+S,KAAO,EAC5C1yC,KAAKurE,WAAY,IAQrBxpE,EAASkR,UAAUg5D,aAAe,SAAUzjB,GAC1CxoD,KAAKurE,UAAY/iB,GAOnBzmD,EAASkR,UAAU44D,eAAiB,SAAUP,GAC5C,GAAmB/kE,QAAf+kE,EAAJ,CAMA,GAAIY,GAAW,QACXC,EAAY,OACZC,EAAU,MACVC,EAAW,KACXC,EAAa,IACbC,EAAa,IACbC,EAAkB,CAGP,KAAXN,EAAkBZ,IACpBtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,KAEnB,IAAXw5B,EAAiBZ,IACnBtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,KAEnB,IAAXw5B,EAAiBZ,IACnBtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,KAEnB,GAAXw5B,EAAgBZ,IAClBtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,IAEnB,GAAXw5B,EAAgBZ,IAClBtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,IAEnB,EAAXw5B,EAAeZ,IACjBtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,GAE9Bw5B,EAAWZ,IACbtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,GAElB,EAAZy5B,EAAgBb,IAClBtrE,KAAKgF,MAAQ,QAAQhF,KAAK0yC,KAAO,GAE/By5B,EAAYb,IACdtrE,KAAKgF,MAAQ,QAAQhF,KAAK0yC,KAAO,GAErB,EAAV05B,EAAcd,IAChBtrE,KAAKgF,MAAQ,MAAMhF,KAAK0yC,KAAO,GAEnB,EAAV05B,EAAcd,IAChBtrE,KAAKgF,MAAQ,MAAMhF,KAAK0yC,KAAO,GAE7B05B,EAAUd,IACZtrE,KAAKgF,MAAQ,MAAMhF,KAAK0yC,KAAO,GAE7B05B,EAAU,EAAId,IAChBtrE,KAAKgF,MAAQ,UAAUhF,KAAK0yC,KAAO,GAEtB,EAAX25B,EAAef,IACjBtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,GAE9B25B,EAAWf,IACbtrE,KAAKgF,MAAQ,OAAOhF,KAAK0yC,KAAO,GAEjB,GAAb45B,EAAkBhB,IACpBtrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,IAEnB,GAAb45B,EAAkBhB,IACpBtrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,IAEnB,EAAb45B,EAAiBhB,IACnBtrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,GAEhC45B,EAAahB,IACftrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,GAEnB,GAAb65B,EAAkBjB,IACpBtrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,IAEnB,GAAb65B,EAAkBjB,IACpBtrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,IAEnB,EAAb65B,EAAiBjB,IACnBtrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,GAEhC65B,EAAajB,IACftrE,KAAKgF,MAAQ,SAAShF,KAAK0yC,KAAO,GAEd,IAAlB85B,EAAwBlB,IAC1BtrE,KAAKgF,MAAQ,cAAchF,KAAK0yC,KAAO,KAEnB,IAAlB85B,EAAwBlB,IAC1BtrE,KAAKgF,MAAQ,cAAchF,KAAK0yC,KAAO,KAEnB,GAAlB85B,EAAuBlB,IACzBtrE,KAAKgF,MAAQ,cAAchF,KAAK0yC,KAAO,IAEnB,GAAlB85B,EAAuBlB,IACzBtrE,KAAKgF,MAAQ,cAAchF,KAAK0yC,KAAO,IAEnB,EAAlB85B,EAAsBlB,IACxBtrE,KAAKgF,MAAQ,cAAchF,KAAK0yC,KAAO,GAErC85B,EAAkBlB,IACpBtrE,KAAKgF,MAAQ,cAAchF,KAAK0yC,KAAO,KAc3C3wC,EAASshD,KAAO,SAAU1lC,EAAM3Y,EAAO0tC,GACrC,GAAIvqB,GAAQpkB,EAAO4Z,EAEnB,IAAa,QAAT3Y,EAAiB,CACnB,GAAIwX,GAAO2L,EAAM3L,OAASvX,KAAKsjB,MAAMJ,EAAM1L,QAAU,GACrD0L,GAAM3L,KAAKvX,KAAKsjB,MAAM/L,EAAOk2B,GAAQA,GACrCvqB,EAAM1L,MAAM,GACZ0L,EAAMxK,KAAK,GACXwK,EAAMpB,MAAM,GACZoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,SAATliB,EACLmjB,EAAMxK,OAAS,IACjBwK,EAAMxK,KAAK,GACXwK,EAAMlC,IAAI,EAAG,UAGXkC,EAAMxK,KAAK,GAGfwK,EAAMpB,MAAM,GACZoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,OAATliB,EAAgB,CAEzB,OAAQ0tC,GACN,IAAK,GACL,IAAK,GACHvqB,EAAMpB,MAAuC,GAAjC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,IAAU,MACnD,SACEoB,EAAMpB,MAAuC,GAAjC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,KAE3CoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,WAATliB,EAAoB,CAE7B,OAAQ0tC,GACN,IAAK,GACL,IAAK,GACHvqB,EAAMpB,MAAuC,GAAjC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,IAAU,MACnD,SACEoB,EAAMpB,MAAsC,EAAhC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,IAE3CoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,QAATliB,EAAiB,CAC1B,OAAQ0tC,GACN,IAAK,GACHvqB,EAAMnB,QAA2C,GAAnC/hB,KAAKsjB,MAAMJ,EAAMnB,UAAY,IAAU,MACvD,SACEmB,EAAMnB,QAA2C,GAAnC/hB,KAAKsjB,MAAMJ,EAAMnB,UAAY,KAE/CmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,UAATliB,EAAmB,CAE5B,OAAQ0tC,GACN,IAAK,IACL,IAAK,IACHvqB,EAAMnB,QAA0C,EAAlC/hB,KAAKsjB,MAAMJ,EAAMnB,UAAY,IAC3CmB,EAAMlB,QAAQ,EACd,MACF,KAAK,GACHkB,EAAMlB,QAA2C,GAAnChiB,KAAKsjB,MAAMJ,EAAMlB,UAAY,IAAU,MACvD,SACEkB,EAAMlB,QAA2C,GAAnChiB,KAAKsjB,MAAMJ,EAAMlB,UAAY,KAE/CkB,EAAMjB,aAAa,OACd,IAAa,UAATliB,EAET,OAAQ0tC,GACN,IAAK,IACL,IAAK,IACHvqB,EAAMlB,QAA0C,EAAlChiB,KAAKsjB,MAAMJ,EAAMlB,UAAY,IAC3CkB,EAAMjB,aAAa,EACnB,MACF,KAAK,GACHiB,EAAMjB,aAAuD,IAA1CjiB,KAAKsjB,MAAMJ,EAAMjB,eAAiB,KAAc,MACrE,SACEiB,EAAMjB,aAAsD,IAAzCjiB,KAAKsjB,MAAMJ,EAAMjB,eAAiB,UAEpD,IAAa,eAATliB,EAAwB,CACjC,GAAI24C,GAAQjL,EAAO,EAAIA,EAAO,EAAI,CAClCvqB,GAAMjB,aAAajiB,KAAKsjB,MAAMJ,EAAMjB,eAAiBy2B,GAASA,GAGhE,MAAOx1B,IAQTpmB,EAASkR,UAAUw5D,QAAU,WAC3B,GAAyB,GAArBzsE,KAAKw9D,aAEP,OADAx9D,KAAKw9D,cAAe,EACZx9D,KAAKgF,OACX,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,MACL,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,cACH,OAAO,CACT,SACE,OAAO,MAEN,IAA0B,GAAtBhF,KAAKy9D,cAEd,OADAz9D,KAAKy9D,eAAgB,EACbz9D,KAAKgF,OACX,IAAK,UACL,IAAK,MACL,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,cACH,OAAO,CACT,SACE,OAAO,MAEN,IAAwB,GAApBhF,KAAK09D,YAEd,OADA19D,KAAK09D,aAAc,EACX19D,KAAKgF,OACX,IAAK,cACL,IAAK,SACL,IAAK,SACL,IAAK,OACH,OAAO,CACT,SACE,OAAO,EAIb,GAAI2Y,GAAO3d,KAAK+D,OAAO/D,KAAKu9D,QAC5B,QAAQv9D,KAAKgF,OACX,IAAK,cACH,MAA8B,IAAvB2Y,EAAKuJ,cACd,KAAK,SACH,MAAyB,IAAlBvJ,EAAKsJ,SACd,KAAK,SACH,MAAuB,IAAhBtJ,EAAKoJ,SAAkC,GAAlBpJ,EAAKqJ,SACnC,KAAK,OACH,MAAuB,IAAhBrJ,EAAKoJ,OACd,KAAK,UACL,IAAK,MACH,MAAsB,IAAfpJ,EAAKA,MACd,KAAK,QACH,MAAuB,IAAhBA,EAAKlB,OACd,KAAK,OACH,OAAO,CACT,SACE,OAAO,IAUb1a,EAASkR,UAAUy5D,cAAgB,SAAU/uD,GAC/BpX,QAARoX,IACFA,EAAO3d,KAAKu9D,QAGd,IAAIlqD,GAASrT,KAAKqT,OAAOo4D,YAAYzrE,KAAKgF,MAC1C,OAAOqO,IAAUA,EAAO/M,OAAS,EAAItG,KAAK+D,OAAO4Z,GAAMtK,OAAOA,GAAU,IAS1EtR,EAASkR,UAAU05D,cAAgB,SAAUhvD,GAC/BpX,QAARoX,IACFA,EAAO3d,KAAKu9D,QAGd,IAAIlqD,GAASrT,KAAKqT,OAAOq4D,YAAY1rE,KAAKgF,MAC1C,OAAOqO,IAAUA,EAAO/M,OAAS,EAAItG,KAAK+D,OAAO4Z,GAAMtK,OAAOA,GAAU,IAG1EtR,EAASkR,UAAU25D,aAAe,WAMhC,QAASC,GAAK9nE,GACZ,MAAOA,GAAQ2tC,EAAO,GAAK,EAAI,YAAc,WAG/C,QAASo6B,GAAMnvD,GACb,MAAIA,GAAK6N,OAAO,GAAInmB,MAAQ,OACnB,aAELsY,EAAK6N,OAAO4O,IAAUnU,IAAI,EAAG,OAAQ,OAChC,gBAELtI,EAAK6N,OAAO4O,IAAUnU,IAAI,GAAI,OAAQ,OACjC,iBAEF,GAGT,QAAS8mD,GAAYpvD,GACnB,MAAOA,GAAK6N,OAAO,GAAInmB,MAAQ,QAAU,oBAAsB,GAGjE,QAAS2nE,GAAarvD,GACpB,MAAOA,GAAK6N,OAAO,GAAInmB,MAAQ,SAAW,qBAAuB,GAGnE,QAAS4nE,GAAYtvD,GACnB,MAAOA,GAAK6N,OAAO,GAAInmB,MAAQ,QAAU,oBAAsB,GA/BjE,GAAI+0B,GAAUp6B,KAAK+D,OACfvD,EAAIR,KAAK+D,OAAO/D,KAAKu9D,SACrBA,EAAU/8D,EAAE8S,OAAS9S,EAAE8S,OAAO,MAAQ9S,EAAEu1B,KAAK,MAC7C2c,EAAO1yC,KAAK0yC,IA+BhB,QAAQ1yC,KAAKgF,OACX,IAAK,cACH,MAAO6nE,GAAKtP,EAAQr2C,gBAAgBnY,MAEtC,KAAK,SACH,MAAO89D,GAAKtP,EAAQt2C,WAAWlY,MAEjC,KAAK,SACH,MAAO89D,GAAKtP,EAAQv2C,WAAWjY,MAEjC,KAAK,OACH,GAAIgY,GAAQw2C,EAAQx2C,OAIpB,OAHiB,IAAb/mB,KAAK0yC,OACP3rB,EAAQA,EAAQ,MAAQA,EAAQ,IAE3B,QAAUA,EAAQ+lD,EAAMvP,GAAWsP,EAAKtP,EAAQx2C,QAEzD,KAAK,UACH,MAAO,OAASw2C,EAAQlqD,OAAO,QAAQ8D,cAAgB21D,EAAMvP,GAAWwP,EAAYxP,GAAWsP,EAAKtP,EAAQ5/C,OAE9G,KAAK,MACH,GAAIgI,GAAM43C,EAAQ5/C,OACdlB,EAAQ8gD,EAAQlqD,OAAO,QAAQ8D,aACnC,OAAO,UAAYwO,EAAM,QAAUlJ,EAAQuwD,EAAazP,GAAWsP,EAAKlnD,EAAM,EAEhF,KAAK,QACH,MAAO,OAAS43C,EAAQlqD,OAAO,QAAQ8D,cAAgB61D,EAAazP,GAAWsP,EAAKtP,EAAQ9gD,QAE9F,KAAK,OACH,GAAID,GAAO+gD,EAAQ/gD,MACnB,OAAO,WAAaA,EAAOywD,EAAY1P,GAAWsP,EAAKrwD,EAEzD,SACE,MAAO,KAIb3c,EAAOD,QAAUmC,GAIb,SAASlC,EAAQD,EAASM,GAc9B,QAAS4C,GAAM4gD,EAAS1rC,EAAMqoC,GAC5BrgD,KAAK0jD,QAAUA,EACf1jD,KAAKktE,aACLltE,KAAKmtE,cAAgB,EACrBntE,KAAKotE,gBAAkBp1D,GAAQA,EAAKq1D,cACpCrtE,KAAKqgD,QAAUA,EAEfrgD,KAAK25C,OACL35C,KAAK6G,OACHq3B,OACEM,MAAO,EACPC,OAAQ,IAGZz+B,KAAK+I,UAAY,KAEjB/I,KAAKiC,SACLjC,KAAK8lE,gBACL9lE,KAAK+Q,cACHu8D,WACAC,UAEFvtE,KAAKwtE,kBAAmB,CACxB,IAAIxtC,GAAKhgC,IACTA,MAAKqgD,QAAQlB,KAAKE,QAAQjgB,GAAG,mBAAoB,WAC/CY,EAAGwtC,kBAAmB,IAGxBxtE,KAAKk/C,UAELl/C,KAAKyjC,QAAQzrB,GAxCf,GAAIrX,GAAOT,EAAoB,GAC3B4B,EAAQ5B,EAAoB,GAChBA,GAAoB,GA6CpC4C,GAAMmQ,UAAUisC,QAAU,WACxB,GAAIhhB,GAAQd,SAASM,cAAc,MAC/B19B,MAAKqgD,QAAQx8C,QAAQw/D,cAAcriC,MACrC9C,EAAMn1B,UAAY,sBAElBm1B,EAAMn1B,UAAY,YAEpB/I,KAAK25C,IAAIzb,MAAQA,CAEjB,IAAIuvC,GAAQrwC,SAASM,cAAc,MACnC+vC,GAAM1kE,UAAY,YAClBm1B,EAAMZ,YAAYmwC,GAClBztE,KAAK25C,IAAI8zB,MAAQA,CAEjB,IAAIjqB,GAAapmB,SAASM,cAAc,MACxC8lB,GAAWz6C,UAAY,YACvBy6C,EAAW,kBAAoBxjD,KAC/BA,KAAK25C,IAAI6J,WAAaA,EAEtBxjD,KAAK25C,IAAI1rC,WAAamvB,SAASM,cAAc,OAC7C19B,KAAK25C,IAAI1rC,WAAWlF,UAAY,YAEhC/I,KAAK25C,IAAIoF,KAAO3hB,SAASM,cAAc,OACvC19B,KAAK25C,IAAIoF,KAAKh2C,UAAY,YAK1B/I,KAAK25C,IAAI+zB,OAAStwC,SAASM,cAAc,OACzC19B,KAAK25C,IAAI+zB,OAAO5+D,MAAM2yD,WAAa,SACnCzhE,KAAK25C,IAAI+zB,OAAO7+B,UAAY,IAC5B7uC,KAAK25C,IAAI1rC,WAAWqvB,YAAYt9B,KAAK25C,IAAI+zB,SAO3C5qE,EAAMmQ,UAAUwwB,QAAU,SAAUzrB,GAElC,GAAIqmB,EAOJ,IALEA,EADEr+B,KAAKqgD,QAAQx8C,SAAW7D,KAAKqgD,QAAQx8C,QAAQg6B,cACrC79B,KAAKqgD,QAAQx8C,QAAQg6B,cAAc7lB,GAEnCA,GAAQA,EAAKqmB,QAGrBA,YAAmBsvC,SAAS,CAE9B,IADA3tE,KAAK25C,IAAI8zB,MAAMnwC,YAAYe,GACpBr+B,KAAK25C,IAAI8zB,MAAMhpE,YACpBzE,KAAK25C,IAAI8zB,MAAM/oE,YAAY1E,KAAK25C,IAAI8zB,MAAMhpE,WAE5CzE,MAAK25C,IAAI8zB,MAAMnwC,YAAYe,OACN93B,UAAZ83B,GAAqC,OAAZA,EAClCr+B,KAAK25C,IAAI8zB,MAAM5+B,UAAYxQ,EAE3Br+B,KAAK25C,IAAI8zB,MAAM5+B,UAAY7uC,KAAK0jD,SAAW,EAI7C1jD,MAAK25C,IAAIzb,MAAMuiC,MAAQzoD,GAAQA,EAAKyoD,OAAS,GAExCzgE,KAAK25C,IAAI8zB,MAAMhpE,WAGlB9D,EAAKwI,gBAAgBnJ,KAAK25C,IAAI8zB,MAAO,cAFrC9sE,EAAKmI,aAAa9I,KAAK25C,IAAI8zB,MAAO,aAMpC,IAAI1kE,GAAYiP,GAAQA,EAAKjP,WAAa,IACtCA,IAAa/I,KAAK+I,YAChB/I,KAAK+I,YACPpI,EAAKwI,gBAAgBnJ,KAAK25C,IAAIzb,MAAOl+B,KAAK+I,WAC1CpI,EAAKwI,gBAAgBnJ,KAAK25C,IAAI6J,WAAYxjD,KAAK+I,WAC/CpI,EAAKwI,gBAAgBnJ,KAAK25C,IAAI1rC,WAAYjO,KAAK+I,WAC/CpI,EAAKwI,gBAAgBnJ,KAAK25C,IAAIoF,KAAM/+C,KAAK+I,YAE3CpI,EAAKmI,aAAa9I,KAAK25C,IAAIzb,MAAOn1B,GAClCpI,EAAKmI,aAAa9I,KAAK25C,IAAI6J,WAAYz6C,GACvCpI,EAAKmI,aAAa9I,KAAK25C,IAAI1rC,WAAYlF,GACvCpI,EAAKmI,aAAa9I,KAAK25C,IAAIoF,KAAMh2C,GACjC/I,KAAK+I,UAAYA,GAIf/I,KAAK8O,QACPnO,EAAK0O,cAAcrP,KAAK25C,IAAIzb,MAAOl+B,KAAK8O,OACxC9O,KAAK8O,MAAQ,MAEXkJ,GAAQA,EAAKlJ,QACfnO,EAAKuO,WAAWlP,KAAK25C,IAAIzb,MAAOlmB,EAAKlJ,OACrC9O,KAAK8O,MAAQkJ,EAAKlJ,QAQtBhM,EAAMmQ,UAAU26D,cAAgB,WAC9B,MAAO5tE,MAAK6G,MAAMq3B,MAAMM,OAU1B17B,EAAMmQ,UAAUw5B,OAAS,SAAUyT,EAAO3b,EAAQ6hC,GAChD,GAAIrK,IAAU,EAIV8R,EAAe7tE,KAAK25C,IAAI+zB,OAAOj+B,YAgBnC,IAfIo+B,GAAgB7tE,KAAK8tE,mBACvB9tE,KAAK8tE,iBAAmBD,EAExBltE,EAAK2I,QAAQtJ,KAAKiC,MAAO,SAAUuP,GACjCA,EAAKg0D,OAAQ,EACTh0D,EAAKi0D,WAAWj0D,EAAKi7B,WAG3B25B,GAAU,GAIZpmE,KAAK+tE,4BAGqC,kBAA/B/tE,MAAKqgD,QAAQx8C,QAAQm9B,MAAsB,CAGpD,GAAIolC,EAAS,CAIX,GAAIpmC,GAAKhgC,KACLguE,GAAY,CAChBrtE,GAAK2I,QAAQtJ,KAAKiC,MAAO,SAAUuP,GAC5BA,EAAKi0D,YACRj0D,EAAKi7B,SACLzM,EAAG8lC,aAAat+D,KAAKgK,IAEvBA,EAAKmxC,YAAYqrB,IAInB,IAAIC,GAAqBjuE,KAAK+Q,aAAau8D,QAAQpgE,QAAQwR,KAAK,SAAUxY,EAAGC,GAC3E,MAAO65B,GAAGqgB,QAAQx8C,QAAQm9B,MAAM96B,EAAE8R,KAAM7R,EAAE6R,OAE5ClW,GAAMA,MAAMmsE,EAAoB1pC,GAAQ,GAG1CvkC,KAAK8lE,aAAe9lE,KAAKkuE,oBAAoBluE,KAAK+Q,aAAc/Q,KAAK8lE,aAAc5lB,OAGnFlgD,MAAK8lE,aAAe9lE,KAAKkuE,oBAAoBluE,KAAK+Q,aAAc/Q,KAAK8lE,aAAc5lB,GAE/ElgD,KAAKqgD,QAAQx8C,QAAQ/B,MAEvBA,EAAMA,MAAM9B,KAAK8lE,aAAcvhC,EAAQ6hC,GAGvCtkE,EAAMqsE,QAAQnuE,KAAK8lE,aAAcvhC,EAAQvkC,KAAKktE,UAKlD,IAAIzuC,GAASz+B,KAAKouE,iBAAiB7pC,GAG/Bif,EAAaxjD,KAAK25C,IAAI6J,UAC1BxjD,MAAK6I,IAAM26C,EAAW6qB,UACtBruE,KAAK2I,KAAO66C,EAAW0lB,WACvBlpE,KAAKw+B,MAAQglB,EAAWxJ,YACxB+hB,EAAUp7D,EAAK+I,eAAe1J,KAAM,SAAUy+B,IAAWs9B,EAGzDA,EAAUp7D,EAAK+I,eAAe1J,KAAK6G,MAAMq3B,MAAO,QAASl+B,KAAK25C,IAAI8zB,MAAMhjC,cAAgBsxB,EACxFA,EAAUp7D,EAAK+I,eAAe1J,KAAK6G,MAAMq3B,MAAO,SAAUl+B,KAAK25C,IAAI8zB,MAAMh+B,eAAiBssB,EAG1F/7D,KAAK25C,IAAI1rC,WAAWa,MAAM2vB,OAASA,EAAS,KAC5Cz+B,KAAK25C,IAAI6J,WAAW10C,MAAM2vB,OAASA,EAAS,KAC5Cz+B,KAAK25C,IAAIzb,MAAMpvB,MAAM2vB,OAASA,EAAS,IAGvC,KAAK,GAAIh4B,GAAI,EAAGm0B,EAAK56B,KAAK8lE,aAAax/D,OAAYs0B,EAAJn0B,EAAQA,IAAK,CAC1D,GAAI+K,GAAOxR,KAAK8lE,aAAar/D,EAC7B+K,GAAK88D,YAAY/pC,GAGnB,MAAOw3B,IAOTj5D,EAAMmQ,UAAU86D,0BAA4B,WAC1C,GAAI3mE,OAAO6H,KAAKjP,KAAKktE,WAAW5mE,OAAS,EAAG,CAC1C,GAAI05B,GAAKhgC,IAETA,MAAKuuE,iBAEL5tE,EAAK2I,QAAQtJ,KAAK8lE,aAAc,SAAUt0D,GACbjL,SAAvBiL,EAAKwG,KAAK4vD,WACZ5nC,EAAGktC,UAAU17D,EAAKwG,KAAK4vD,UAAUnpC,OAASx5B,KAAKJ,IAAIm7B,EAAGktC,UAAU17D,EAAKwG,KAAK4vD,UAAUnpC,OAAQjtB,EAAKitB,QACjGuB,EAAGktC,UAAU17D,EAAKwG,KAAK4vD,UAAU30B,SAAU,OAYnDnwC,EAAMmQ,UAAUm7D,iBAAmB,SAAU7pC,GAE3C,GAAI9F,GACAqnC,EAAe9lE,KAAK8lE,YACxB,IAAIA,EAAax/D,OAAS,EAAG,CAC3B,GAAI1B,GAAMkhE,EAAa,GAAGj9D,IACtBhE,EAAMihE,EAAa,GAAGj9D,IAAMi9D,EAAa,GAAGrnC,MAKhD,IAJA99B,EAAK2I,QAAQw8D,EAAc,SAAUt0D,GACnC5M,EAAMK,KAAKL,IAAIA,EAAK4M,EAAK3I,KACzBhE,EAAMI,KAAKJ,IAAIA,EAAK2M,EAAK3I,IAAM2I,EAAKitB,UAElC75B,EAAM2/B,EAAOwa,KAAM,CAErB,GAAIv3B,GAAS5iB,EAAM2/B,EAAOwa,IAC1Bl6C,IAAO2iB,EACP7mB,EAAK2I,QAAQw8D,EAAc,SAAUt0D,GACnCA,EAAK3I,KAAO2e,IAGhBiX,EAAS55B,EAAM0/B,EAAO/yB,KAAK0+B,SAAW,MAEtCzR,GAAS,CAIX,OAFAA,GAASx5B,KAAKJ,IAAI45B,EAAQz+B,KAAK6G,MAAMq3B,MAAMO,SAQ7C37B,EAAMmQ,UAAUyvC,KAAO,WAChB1iD,KAAK25C,IAAIzb,MAAM7yB,YAClBrL,KAAKqgD,QAAQ1G,IAAI8J,SAASnmB,YAAYt9B,KAAK25C,IAAIzb,OAG5Cl+B,KAAK25C,IAAI6J,WAAWn4C,YACvBrL,KAAKqgD,QAAQ1G,IAAI6J,WAAWlmB,YAAYt9B,KAAK25C,IAAI6J,YAG9CxjD,KAAK25C,IAAI1rC,WAAW5C,YACvBrL,KAAKqgD,QAAQ1G,IAAI1rC,WAAWqvB,YAAYt9B,KAAK25C,IAAI1rC,YAG9CjO,KAAK25C,IAAIoF,KAAK1zC,YACjBrL,KAAKqgD,QAAQ1G,IAAIoF,KAAKzhB,YAAYt9B,KAAK25C,IAAIoF,OAO/Cj8C,EAAMmQ,UAAUyyD,KAAO,WACrB,GAAIxnC,GAAQl+B,KAAK25C,IAAIzb,KACjBA,GAAM7yB,YACR6yB,EAAM7yB,WAAW3G,YAAYw5B,EAG/B,IAAIslB,GAAaxjD,KAAK25C,IAAI6J,UACtBA,GAAWn4C,YACbm4C,EAAWn4C,WAAW3G,YAAY8+C,EAGpC,IAAIv1C,GAAajO,KAAK25C,IAAI1rC,UACtBA,GAAW5C,YACb4C,EAAW5C,WAAW3G,YAAYuJ,EAGpC,IAAI8wC,GAAO/+C,KAAK25C,IAAIoF,IAChBA,GAAK1zC,YACP0zC,EAAK1zC,WAAW3G,YAAYq6C,IAQhCj8C,EAAMmQ,UAAUgT,IAAM,SAAUzU,GAc9B,GAbAxR,KAAKiC,MAAMuP,EAAKnR,IAAMmR,EACtBA,EAAKg9D,UAAUxuE,MAGYuG,SAAvBiL,EAAKwG,KAAK4vD,WAC+BrhE,SAAvCvG,KAAKktE,UAAU17D,EAAKwG,KAAK4vD,YAC3B5nE,KAAKktE,UAAU17D,EAAKwG,KAAK4vD,WAAcnpC,OAAQ,EAAGwU,SAAS,EAAO7pC,MAAOpJ,KAAKmtE,cAAelrE,UAC7FjC,KAAKmtE,iBAEPntE,KAAKktE,UAAU17D,EAAKwG,KAAK4vD,UAAU3lE,MAAMuF,KAAKgK,IAEhDxR,KAAKyuE,iBAEkC,IAAnCzuE,KAAK8lE,aAAav+D,QAAQiK,GAAa,CACzC,GAAI0uC,GAAQlgD,KAAKqgD,QAAQlB,KAAKe,KAC9BlgD,MAAK0uE,gBAAgBl9D,EAAMxR,KAAK8lE,aAAc5lB,KAIlDp9C,EAAMmQ,UAAUw7D,eAAiB,WAC/B,GAA6BloE,SAAzBvG,KAAKotE,gBAA+B,CACtC,GAAIuB,KACJ,IAAmC,gBAAxB3uE,MAAKotE,gBAA6B,CAC3C,IAAK,GAAIxF,KAAY5nE,MAAKktE,UACxByB,EAAUnnE,MAAOogE,SAAUA,EAAUgH,UAAW5uE,KAAKktE,UAAUtF,GAAU3lE,MAAM,GAAG+V,KAAKhY,KAAKotE,kBAE9FuB,GAAUjwD,KAAK,SAAUxY,EAAGC,GAC1B,MAAOD,GAAE0oE,UAAYzoE,EAAEyoE,gBAEpB,IAAmC,kBAAxB5uE,MAAKotE,gBAA+B,CACpD,IAAK,GAAIxF,KAAY5nE,MAAKktE,UACxByB,EAAUnnE,KAAKxH,KAAKktE,UAAUtF,GAAU3lE,MAAM,GAAG+V,KAEnD22D,GAAUjwD,KAAK1e,KAAKotE,iBAGtB,GAAIuB,EAAUroE,OAAS,EACrB,IAAK,GAAIG,GAAI,EAAGA,EAAIkoE,EAAUroE,OAAQG,IACpCzG,KAAKktE,UAAUyB,EAAUloE,GAAGmhE,UAAUx+D,MAAQ3C,IAMtD3D,EAAMmQ,UAAUs7D,eAAiB,WAC/B,IAAK,GAAI3G,KAAY5nE,MAAKktE,UACpBltE,KAAKktE,UAAUlnE,eAAe4hE,KAChC5nE,KAAKktE,UAAUtF,GAAU30B,SAAU,IASzCnwC,EAAMmQ,UAAU0uB,OAAS,SAAUnwB,SAC1BxR,MAAKiC,MAAMuP,EAAKnR,IACvBmR,EAAKg9D,UAAU,KAGf,IAAIplE,GAAQpJ,KAAK8lE,aAAav+D,QAAQiK,EAGtC,IAFa,IAATpI,GAAapJ,KAAK8lE,aAAaz8D,OAAOD,EAAO,GAEtB7C,SAAvBiL,EAAKwG,KAAK4vD,SAAwB,CACpC,GAAIA,GAAW5nE,KAAKktE,UAAU17D,EAAKwG,KAAK4vD,SACxC,IAAIA,EAAU,CACZ,GAAIiH,GAAYjH,EAAS3lE,MAAMsF,QAAQiK,EACvCo2D,GAAS3lE,MAAMoH,OAAOwlE,EAAW,GAC5BjH,EAAS3lE,MAAMqE,eACXtG,MAAKktE,UAAU17D,EAAKwG,KAAK4vD,UAChC5nE,KAAKmtE,iBAEPntE,KAAKyuE,oBASX3rE,EAAMmQ,UAAU67D,kBAAoB,SAAUt9D,GAC5CxR,KAAKqgD,QAAQ+mB,WAAW51D,EAAKnR,KAM/ByC,EAAMmQ,UAAU+tB,MAAQ,WAKtB,IAAK,GAJDv3B,GAAQ9I,EAAK6I,QAAQxJ,KAAKiC,OAC1B8sE,KACAhH,KAEKthE,EAAI,EAAGA,EAAIgD,EAAMnD,OAAQG,IACNF,SAAtBkD,EAAMhD,GAAGuR,KAAK66B,KAChBk1B,EAASvgE,KAAKiC,EAAMhD,IAEtBsoE,EAAWvnE,KAAKiC,EAAMhD,GAExBzG,MAAK+Q,cACHu8D,QAASyB,EACTxB,MAAOxF,GAGTjmE,EAAMktE,aAAahvE,KAAK+Q,aAAau8D,SACrCxrE,EAAMmtE,WAAWjvE,KAAK+Q,aAAaw8D,QAWrCzqE,EAAMmQ,UAAUi7D,oBAAsB,SAAUn9D,EAAcm+D,EAAiBhvB,GAC7E,GAKI1uC,GAAM/K,EALNq/D,KACAqJ,KACApyB,GAAYmD,EAAMrN,IAAMqN,EAAMvN,OAAS,EACvCy8B,EAAalvB,EAAMvN,MAAQoK,EAC3BsyB,EAAanvB,EAAMrN,IAAMkK,EAIzBuyB,EAAiB,SAAwBvqE,GAC3C,MAAYqqE,GAARrqE,EACK,GACWsqE,GAATtqE,EACF,EAEA,EAOX,IAAImqE,EAAgB5oE,OAAS,EAC3B,IAAKG,EAAI,EAAGA,EAAIyoE,EAAgB5oE,OAAQG,IACtCzG,KAAKuvE,6BAA6BL,EAAgBzoE,GAAIq/D,EAAcqJ,EAAoBjvB,EAK5F,IAAIsvB,GAAoB7uE,EAAKmQ,mBAAmBC,EAAau8D,QAASgC,EAAgB,OAAQ,QAS9F,IANAtvE,KAAKyvE,cAAcD,EAAmBz+D,EAAau8D,QAASxH,EAAcqJ,EAAoB,SAAU39D,GACtG,MAAOA,GAAKwG,KAAK26B,MAAQy8B,GAAc59D,EAAKwG,KAAK26B,MAAQ08B,IAK9B,GAAzBrvE,KAAKwtE,iBAEP,IADAxtE,KAAKwtE,kBAAmB,EACnB/mE,EAAI,EAAGA,EAAIsK,EAAaw8D,MAAMjnE,OAAQG,IACzCzG,KAAKuvE,6BAA6Bx+D,EAAaw8D,MAAM9mE,GAAIq/D,EAAcqJ,EAAoBjvB,OAExF,CAEL,GAAIwvB,GAAkB/uE,EAAKmQ,mBAAmBC,EAAaw8D,MAAO+B,EAAgB,OAAQ,MAG1FtvE,MAAKyvE,cAAcC,EAAiB3+D,EAAaw8D,MAAOzH,EAAcqJ,EAAoB,SAAU39D,GAClG,MAAOA,GAAKwG,KAAK66B,IAAMu8B,GAAc59D,EAAKwG,KAAK66B,IAAMw8B,IAKzD,IAAK5oE,EAAI,EAAGA,EAAIq/D,EAAax/D,OAAQG,IACnC+K,EAAOs0D,EAAar/D,GACf+K,EAAKi0D,WAAWj0D,EAAKkxC,OAE1BlxC,EAAKmxC,aAgBP,OAAOmjB,IAGThjE,EAAMmQ,UAAUw8D,cAAgB,SAAUE,EAAY1tE,EAAO6jE,EAAcqJ,EAAoBS,GAC7F,GAAIp+D,GACA/K,CAEJ,IAAkB,IAAdkpE,EAAkB,CACpB,IAAKlpE,EAAIkpE,EAAYlpE,GAAK,IACxB+K,EAAOvP,EAAMwE,IACTmpE,EAAep+D,IAFQ/K,IAKWF,SAAhC4oE,EAAmB39D,EAAKnR,MAC1B8uE,EAAmB39D,EAAKnR,KAAM,EAC9BylE,EAAat+D,KAAKgK,GAKxB,KAAK/K,EAAIkpE,EAAa,EAAGlpE,EAAIxE,EAAMqE,SACjCkL,EAAOvP,EAAMwE,IACTmpE,EAAep+D,IAFsB/K,IAKHF,SAAhC4oE,EAAmB39D,EAAKnR,MAC1B8uE,EAAmB39D,EAAKnR,KAAM,EAC9BylE,EAAat+D,KAAKgK,MAkB5B1O,EAAMmQ,UAAUy7D,gBAAkB,SAAUl9D,EAAMs0D,EAAc5lB,GAC1D1uC,EAAKq+D,UAAU3vB,IACZ1uC,EAAKi0D,WAAWj0D,EAAKkxC,OAE1BlxC,EAAKmxC,cACLmjB,EAAat+D,KAAKgK,IAEdA,EAAKi0D,WAAWj0D,EAAKk0D,QAe7B5iE,EAAMmQ,UAAUs8D,6BAA+B,SAAU/9D,EAAMs0D,EAAcqJ,EAAoBjvB,GAC3F1uC,EAAKq+D,UAAU3vB,GACmB35C,SAAhC4oE,EAAmB39D,EAAKnR,MAC1B8uE,EAAmB39D,EAAKnR,KAAM,EAC9BylE,EAAat+D,KAAKgK,IAGhBA,EAAKi0D,WAAWj0D,EAAKk0D,QAI7B7lE,EAAOD,QAAUkD,GAIb,SAASjD,EAAQD,GAKrB,GAAIkwE,GAAU,IAMdlwE,GAAQovE,aAAe,SAAU/sE,GAC/BA,EAAMyc,KAAK,SAAUxY,EAAGC,GACtB,MAAOD,GAAE8R,KAAK26B,MAAQxsC,EAAE6R,KAAK26B,SASjC/yC,EAAQqvE,WAAa,SAAUhtE,GAC7BA,EAAMyc,KAAK,SAAUxY,EAAGC,GACtB,GAAI4pE,GAAQ,OAAS7pE,GAAE8R,KAAO9R,EAAE8R,KAAK66B,IAAM3sC,EAAE8R,KAAK26B,MAC9Cq9B,EAAQ,OAAS7pE,GAAE6R,KAAO7R,EAAE6R,KAAK66B,IAAM1sC,EAAE6R,KAAK26B,KAElD,OAAOo9B,GAAQC,KAenBpwE,EAAQkC,MAAQ,SAAUG,EAAOsiC,EAAQ+yB,GACvC,GAAI7wD,GAAGwpE,CAEP,IAAI3Y,EAEF,IAAK7wD,EAAI,EAAGwpE,EAAOhuE,EAAMqE,OAAY2pE,EAAJxpE,EAAUA,IACzCxE,EAAMwE,GAAGoC,IAAM,IAKnB,KAAKpC,EAAI,EAAGwpE,EAAOhuE,EAAMqE,OAAY2pE,EAAJxpE,EAAUA,IAAK,CAC9C,GAAI+K,GAAOvP,EAAMwE,EACjB,IAAI+K,EAAK1P,OAAsB,OAAb0P,EAAK3I,IAAc,CAEnC2I,EAAK3I,IAAM07B,EAAOwa,IAElB,GAAG,CAID,IAAK,GADDmxB,GAAgB,KACXz/D,EAAI,EAAG0/D,EAAKluE,EAAMqE,OAAY6pE,EAAJ1/D,EAAQA,IAAK,CAC9C,GAAI/J,GAAQzE,EAAMwO,EAClB,IAAkB,OAAd/J,EAAMmC,KAAgBnC,IAAU8K,GAAQ9K,EAAM5E,OAASlC,EAAQwwE,UAAU5+D,EAAM9K,EAAO69B,EAAO/yB,MAAO,CACtG0+D,EAAgBxpE,CAChB,QAIiB,MAAjBwpE,IAEF1+D,EAAK3I,IAAMqnE,EAAcrnE,IAAMqnE,EAAczxC,OAAS8F,EAAO/yB,KAAK0+B,gBAE7DggC,MAYftwE,EAAQuuE,QAAU,SAAUlsE,EAAOsiC,EAAQ2oC,GACzC,GAAIzmE,GAAGwpE,EAAMI,CAGb,KAAK5pE,EAAI,EAAGwpE,EAAOhuE,EAAMqE,OAAY2pE,EAAJxpE,EAAUA,IACzC,GAA+BF,SAA3BtE,EAAMwE,GAAGuR,KAAK4vD,SAAwB,CACxCyI,EAAS9rC,EAAOwa,IAChB,KAAK,GAAI6oB,KAAYsF,GACfA,EAAUlnE,eAAe4hE,IACQ,GAA/BsF,EAAUtF,GAAU30B,SAAmBi6B,EAAUtF,GAAUx+D,MAAQ8jE,EAAUjrE,EAAMwE,GAAGuR,KAAK4vD,UAAUx+D,QACvGinE,GAAUnD,EAAUtF,GAAUnpC,OAAS8F,EAAO/yB,KAAK0+B,SAIzDjuC,GAAMwE,GAAGoC,IAAMwnE,MAEfpuE,GAAMwE,GAAGoC,IAAM07B,EAAOwa,MAe5Bn/C,EAAQwwE,UAAY,SAAUlqE,EAAGC,EAAGo+B,GAClC,MAAOr+B,GAAEyC,KAAO47B,EAAO0L,WAAa6/B,EAAU3pE,EAAEwC,KAAOxC,EAAEq4B,OAASt4B,EAAEyC,KAAOzC,EAAEs4B,MAAQ+F,EAAO0L,WAAa6/B,EAAU3pE,EAAEwC,MAAQzC,EAAE2C,IAAM07B,EAAO2L,SAAW4/B,EAAU3pE,EAAE0C,IAAM1C,EAAEs4B,QAAUv4B,EAAE2C,IAAM3C,EAAEu4B,OAAS8F,EAAO2L,SAAW4/B,EAAU3pE,EAAE0C,MAKpO,SAAShJ,EAAQD,EAASM,GAiB9B,QAASoC,GAAU0V,EAAMmiD,EAAYt2D,GASnC,GARA7D,KAAK6G,OACHw3B,SACEG,MAAO,IAGXx+B,KAAK8T,UAAW,EAGZkE,EAAM,CACR,GAAkBzR,QAAdyR,EAAK26B,MACP,KAAM,IAAI3rC,OAAM,oCAAsCgR,EAAK3X,GAE7D,IAAgBkG,QAAZyR,EAAK66B,IACP,KAAM,IAAI7rC,OAAM,kCAAoCgR,EAAK3X,IAI7D6B,EAAK3B,KAAKP,KAAMgY,EAAMmiD,EAAYt2D,GA/BpC,GACI3B,IADShC,EAAoB,IACtBA,EAAoB,IAiC/BoC,GAAU2Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAE3CI,EAAU2Q,UAAUq9D,cAAgB,qBAOpChuE,EAAU2Q,UAAU48D,UAAY,SAAU3vB,GAExC,MAAOlgD,MAAKgY,KAAK26B,MAAQuN,EAAMrN,KAAO7yC,KAAKgY,KAAK66B,IAAMqN,EAAMvN,OAM9DrwC,EAAU2Q,UAAUw5B,OAAS,WAC3B,GAAIkN,GAAM35C,KAAK25C,GA2Bf,IA1BKA,IAEH35C,KAAK25C,OACLA,EAAM35C,KAAK25C,IAGXA,EAAIkrB,IAAMznC,SAASM,cAAc,OAIjCic,EAAIpP,MAAQnN,SAASM,cAAc,OACnCic,EAAIpP,MAAMxhC,UAAY,oBACtB4wC,EAAIkrB,IAAIvnC,YAAYqc,EAAIpP,OAGxBoP,EAAItb,QAAUjB,SAASM,cAAc,OACrCic,EAAItb,QAAQt1B,UAAY,mBACxB4wC,EAAIpP,MAAMjN,YAAYqc,EAAItb,SAG1Bsb,EAAIkrB,IAAI,iBAAmB7kE,KAE3BA,KAAKwlE,OAAQ,IAIVxlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK2yC,EAAIkrB,IAAIx5D,WAAY,CACvB,GAAIm4C,GAAaxjD,KAAKuL,OAAOouC,IAAI6J,UACjC,KAAKA,EACH,KAAM,IAAIx8C,OAAM,iEAElBw8C,GAAWlmB,YAAYqc,EAAIkrB,KAQ7B,GANA7kE,KAAKylE,WAAY,EAMbzlE,KAAKwlE,MAAO,CACdxlE,KAAKuwE,gBAAgBvwE,KAAK25C,IAAItb,SAC9Br+B,KAAKwwE,aAAaxwE,KAAK25C,IAAIkrB,KAC3B7kE,KAAKywE,sBAAsBzwE,KAAK25C,IAAIkrB,KACpC7kE,KAAK0wE,aAAa1wE,KAAK25C,IAAIkrB,IAE3B,IAAI3B,IAAYljE,KAAK6D,QAAQq/D,SAASC,YAAcnjE,KAAK6D,QAAQq/D,SAASE,aAAepjE,KAAKkjE,YAAa,IAASljE,KAAKkjE,YAAa,EAGlIn6D,GAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKsnE,SAAW,gBAAkB,KAAOpE,EAAW,gBAAkB,gBAChJvpB,GAAIkrB,IAAI97D,UAAY/I,KAAKswE,cAAgBvnE,EAGzC/I,KAAK8T,SAA2D,WAAhD/I,OAAO4lE,iBAAiBh3B,EAAIpP,OAAOz2B,SAKnD9T,KAAK25C,IAAItb,QAAQvvB,MAAM8hE,SAAW,OAClC5wE,KAAK6G,MAAMw3B,QAAQG,MAAQx+B,KAAK25C,IAAItb,QAAQ2b,YAC5Ch6C,KAAKy+B,OAASz+B,KAAK25C,IAAIkrB,IAAI3qB,aAC3Bl6C,KAAK25C,IAAItb,QAAQvvB,MAAM8hE,SAAW,GAElC5wE,KAAKwlE,OAAQ,EAGfxlE,KAAK6wE,qBAAqBl3B,EAAIkrB,KAC9B7kE,KAAK8wE,mBACL9wE,KAAK+wE,qBAOPzuE,EAAU2Q,UAAUyvC,KAAO,WACpB1iD,KAAKylE,WACRzlE,KAAKysC,UAQTnqC,EAAU2Q,UAAUyyD,KAAO,WACzB,GAAI1lE,KAAKylE,UAAW,CAClB,GAAIZ,GAAM7kE,KAAK25C,IAAIkrB,GAEfA,GAAIx5D,YACNw5D,EAAIx5D,WAAW3G,YAAYmgE,GAG7B7kE,KAAKylE,WAAY,IAarBnjE,EAAU2Q,UAAU0vC,YAAc,SAAUqrB,GAC1C,GAGIgD,GACAj3B,EAJAk3B,EAAcjxE,KAAKuL,OAAOizB,MAC1BmU,EAAQ3yC,KAAKm6D,WAAWza,SAAS1/C,KAAKgY,KAAK26B,OAC3CE,EAAM7yC,KAAKm6D,WAAWza,SAAS1/C,KAAKgY,KAAK66B,MAK3BtsC,SAAdynE,GAA2BA,KAAc,MAC9BiD,EAATt+B,IACFA,GAASs+B,GAEPp+B,EAAM,EAAIo+B,IACZp+B,EAAM,EAAIo+B,GAGd,IAAIC,GAAWjsE,KAAKJ,IAAIguC,EAAMF,EAAO,EAmBrC,QAjBI3yC,KAAK8T,UACP9T,KAAK2I,KAAOgqC,EACZ3yC,KAAKw+B,MAAQ0yC,EAAWlxE,KAAK6G,MAAMw3B,QAAQG,MAC3Cub,EAAe/5C,KAAK6G,MAAMw3B,QAAQG,QAMhCx+B,KAAK2I,KAAOgqC,EACZ3yC,KAAKw+B,MAAQ0yC,EACbn3B,EAAe90C,KAAKL,IAAIiuC,EAAMF,EAAO3yC,KAAK6G,MAAMw3B,QAAQG,QAG5Dx+B,KAAK25C,IAAIkrB,IAAI/1D,MAAMnG,KAAO3I,KAAK2I,KAAO,KACtC3I,KAAK25C,IAAIkrB,IAAI/1D,MAAM0vB,MAAQ0yC,EAAW,KAE9BlxE,KAAK6D,QAAQ4+D,OACnB,IAAK,OACHziE,KAAK25C,IAAItb,QAAQvvB,MAAMnG,KAAO,GAC9B,MAEF,KAAK,QACH3I,KAAK25C,IAAItb,QAAQvvB,MAAMnG,KAAO1D,KAAKJ,IAAIqsE,EAAWn3B,EAAc,GAAK,IACrE,MAEF,KAAK,SACH/5C,KAAK25C,IAAItb,QAAQvvB,MAAMnG,KAAO1D,KAAKJ,KAAKqsE,EAAWn3B,GAAgB,EAAG,GAAK,IAC3E,MAEF,SAKMi3B,EAFAhxE,KAAK8T,SACH++B,EAAM,EACM5tC,KAAKJ,KAAK8tC,EAAO,IAEhBoH,EAGH,EAARpH,GACaA,EAED,EAGpB3yC,KAAK25C,IAAItb,QAAQvvB,MAAMnG,KAAOqoE,EAAc,OAQlD1uE,EAAU2Q,UAAUq7D,YAAc,WAChC,GAAIxvB,GAAc9+C,KAAK6D,QAAQi7C,YAAYttC,KACvCqzD,EAAM7kE,KAAK25C,IAAIkrB,GAEA,QAAf/lB,EACF+lB,EAAI/1D,MAAMjG,IAAM7I,KAAK6I,IAAM,KAE3Bg8D,EAAI/1D,MAAMjG,IAAM7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,IAAM7I,KAAKy+B,OAAS,MAQlEn8B,EAAU2Q,UAAU69D,iBAAmB,WACrC,GAAI9wE,KAAKsnE,UAAYtnE,KAAK6D,QAAQq/D,SAASC,aAAenjE,KAAK25C,IAAI0uB,SAAU,CAE3E,GAAIA,GAAWjrC,SAASM,cAAc,MACtC2qC,GAASt/D,UAAY,gBACrBs/D,EAASL,aAAehoE,KAExBA,KAAK25C,IAAIkrB,IAAIvnC,YAAY+qC,GACzBroE,KAAK25C,IAAI0uB,SAAWA,OACVroE,KAAKsnE,UAAYtnE,KAAK25C,IAAI0uB,WAEhCroE,KAAK25C,IAAI0uB,SAASh9D,YACpBrL,KAAK25C,IAAI0uB,SAASh9D,WAAW3G,YAAY1E,KAAK25C,IAAI0uB,UAEpDroE,KAAK25C,IAAI0uB,SAAW,OAQxB/lE,EAAU2Q,UAAU89D,kBAAoB,WACtC,GAAI/wE,KAAKsnE,UAAYtnE,KAAK6D,QAAQq/D,SAASC,aAAenjE,KAAK25C,IAAI4uB,UAAW,CAE5E,GAAIA,GAAYnrC,SAASM,cAAc,MACvC6qC,GAAUx/D,UAAY,iBACtBw/D,EAAUN,cAAgBjoE,KAE1BA,KAAK25C,IAAIkrB,IAAIvnC,YAAYirC,GACzBvoE,KAAK25C,IAAI4uB,UAAYA,OACXvoE,KAAKsnE,UAAYtnE,KAAK25C,IAAI4uB,YAEhCvoE,KAAK25C,IAAI4uB,UAAUl9D,YACrBrL,KAAK25C,IAAI4uB,UAAUl9D,WAAW3G,YAAY1E,KAAK25C,IAAI4uB,WAErDvoE,KAAK25C,IAAI4uB,UAAY,OAIzB1oE,EAAOD,QAAU0C,GAIb,SAASzC,EAAQD,EAASM,GAgB9B,QAASgC,GAAK8V,EAAMmiD,EAAYt2D,GAC9B7D,KAAKK,GAAK,KACVL,KAAKuL,OAAS,KACdvL,KAAKgY,KAAOA,EACZhY,KAAK25C,IAAM,KACX35C,KAAKm6D,WAAaA,MAClBn6D,KAAK6D,QAAUA,MAEf7D,KAAKsnE,UAAW,EAChBtnE,KAAKylE,WAAY,EACjBzlE,KAAKwlE,OAAQ,EAEbxlE,KAAK6I,IAAM,KACX7I,KAAK2I,KAAO,KACZ3I,KAAKw+B,MAAQ,KACbx+B,KAAKy+B,OAAS,KAEdz+B,KAAKkjE,SAAW,KACZljE,KAAKgY,MAAQhY,KAAKgY,KAAKhS,eAAe,aAA6C,iBAAvBhG,MAAKgY,KAAKkrD,WACxEljE,KAAKkjE,SAAWlrD,EAAKkrD,UA/BzB,GAAIl/D,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,EAkC/BgC,GAAK+Q,UAAUnR,OAAQ,EAKvBI,EAAK+Q,UAAU2yD,OAAS,WACtB5lE,KAAKsnE,UAAW,EAChBtnE,KAAKwlE,OAAQ,EACTxlE,KAAKylE,WAAWzlE,KAAKysC,UAM3BvqC,EAAK+Q,UAAU0yD,SAAW,WACxB3lE,KAAKsnE,UAAW,EAChBtnE,KAAKwlE,OAAQ,EACTxlE,KAAKylE,WAAWzlE,KAAKysC,UAQ3BvqC,EAAK+Q,UAAUwwB,QAAU,SAAUzrB,GACjC,GAAIm5D,GAA6B5qE,QAAdyR,EAAKirC,OAAsBjjD,KAAKgY,KAAKirC,OAASjrC,EAAKirC,KAClEkuB,IACFnxE,KAAKuL,OAAO80C,QAAQqpB,aAAa1pE,KAAMgY,EAAKirC,OAG1CjrC,EAAKhS,eAAe,aAAwC,iBAAlBgS,GAAKkrD,WACjDljE,KAAKkjE,SAAWlrD,EAAKkrD,UAGvBljE,KAAKgY,KAAOA,EACZhY,KAAKwlE,OAAQ,EACTxlE,KAAKylE,WAAWzlE,KAAKysC,UAO3BvqC,EAAK+Q,UAAUu7D,UAAY,SAAUjjE,GAC/BvL,KAAKylE,WACPzlE,KAAK0lE,OACL1lE,KAAKuL,OAASA,EACVvL,KAAKuL,QACPvL,KAAK0iD,QAGP1iD,KAAKuL,OAASA,GASlBrJ,EAAK+Q,UAAU48D,UAAY,SAAU3vB,GAEnC,OAAO,GAOTh+C,EAAK+Q,UAAUyvC,KAAO,WACpB,OAAO,GAOTxgD,EAAK+Q,UAAUyyD,KAAO,WACpB,OAAO,GAMTxjE,EAAK+Q,UAAUw5B,OAAS,aAOxBvqC,EAAK+Q,UAAU0vC,YAAc,aAO7BzgD,EAAK+Q,UAAUq7D,YAAc,aAS7BpsE,EAAK+Q,UAAU49D,qBAAuB,SAAUzkD,GAC9C,GAAI82C,IAAYljE,KAAK6D,QAAQq/D,SAASvhC,QAAU3hC,KAAKgY,KAAKkrD,YAAa,IAASljE,KAAKgY,KAAKkrD,YAAa,CAEvG,IAAIljE,KAAKsnE,UAAYpE,IAAaljE,KAAK25C,IAAIy3B,aAAc,CAEvD,GAAIpxC,GAAKhgC,KAELoxE,EAAeh0C,SAASM,cAAc,MAC1C0zC,GAAaroE,UAAY,aACzBqoE,EAAa3Q,MAAQ,mBAGrB,GAAIz8D,GAAOotE,GAAchyC,GAAG,MAAO,SAAUt0B,GAC3CA,EAAM05C,kBACNxkB,EAAGz0B,OAAOujE,kBAAkB9uC,KAG9B5T,EAAOkR,YAAY8zC,GACnBpxE,KAAK25C,IAAIy3B,aAAeA,OACdpxE,KAAKsnE,UAAYtnE,KAAK25C,IAAIy3B,eAEhCpxE,KAAK25C,IAAIy3B,aAAa/lE,YACxBrL,KAAK25C,IAAIy3B,aAAa/lE,WAAW3G,YAAY1E,KAAK25C,IAAIy3B,cAExDpxE,KAAK25C,IAAIy3B,aAAe,OAS5BlvE,EAAK+Q,UAAUs9D,gBAAkB,SAAUnmE,GACzC,GAAIi0B,EACJ,IAAIr+B,KAAK6D,QAAQwtE,SAAU,CACzB,GAAIrvB,GAAWhiD,KAAKuL,OAAO80C,QAAQC,UAAUtpB,IAAIh3B,KAAKK,GACtDg+B,GAAUr+B,KAAK6D,QAAQwtE,SAASrvB,OAEhC3jB,GAAUr+B,KAAKgY,KAAKqmB,OAGtB,IAAIsvB,GAAU3tD,KAAKsxE,iBAAiBtxE,KAAKq+B,WAAar+B,KAAKsxE,iBAAiBjzC,EAC5E,IAAIsvB,EAAS,CAEX,GAAItvB,YAAmBsvC,SACrBvjE,EAAQykC,UAAY,GACpBzkC,EAAQkzB,YAAYe,OACf,IAAe93B,QAAX83B,EACTj0B,EAAQykC,UAAYxQ,MAEpB,IAAwB,cAAlBr+B,KAAKgY,KAAKpQ,MAA8CrB,SAAtBvG,KAAKgY,KAAKqmB,QAChD,KAAM,IAAIr3B,OAAM,sCAAwChH,KAAKK,GAIjEL,MAAKq+B,QAAUA,IASnBn8B,EAAK+Q,UAAUu9D,aAAe,SAAUpmE,GACf,MAAnBpK,KAAKgY,KAAKyoD,MACZr2D,EAAQq2D,MAAQzgE,KAAKgY,KAAKyoD,OAAS,GAEnCr2D,EAAQmnE,gBAAgB,cAS5BrvE,EAAK+Q,UAAUw9D,sBAAwB,SAAUrmE,GAC/C,GAAIpK,KAAK6D,QAAQ2tE,gBAAkBxxE,KAAK6D,QAAQ2tE,eAAelrE,OAAS,EAAG,CACzE,GAAImrE,KAEJ,IAAI3qE,MAAMC,QAAQ/G,KAAK6D,QAAQ2tE,gBAC7BC,EAAazxE,KAAK6D,QAAQ2tE,mBACrB,CAAA,GAAmC,OAA/BxxE,KAAK6D,QAAQ2tE,eAGtB,MAFAC,GAAarqE,OAAO6H,KAAKjP,KAAKgY,MAKhC,IAAK,GAAIvR,GAAI,EAAGA,EAAIgrE,EAAWnrE,OAAQG,IAAK,CAC1C,GAAI+Q,GAAOi6D,EAAWhrE,GAClB1B,EAAQ/E,KAAKgY,KAAKR,EAET,OAATzS,EACFqF,EAAQsnE,aAAa,QAAUl6D,EAAMzS,GAErCqF,EAAQmnE,gBAAgB,QAAU/5D,MAW1CtV,EAAK+Q,UAAUy9D,aAAe,SAAUtmE,GAElCpK,KAAK8O,QACPnO,EAAK0O,cAAcjF,EAASpK,KAAK8O,OACjC9O,KAAK8O,MAAQ,MAIX9O,KAAKgY,KAAKlJ,QACZnO,EAAKuO,WAAW9E,EAASpK,KAAKgY,KAAKlJ,OACnC9O,KAAK8O,MAAQ9O,KAAKgY,KAAKlJ,QAU3B5M,EAAK+Q,UAAUq+D,iBAAmB,SAAUjzC,GAC1C,MAAuB,gBAAZA,GAA6BA,EACpCA,GAAW,aAAeA,GAAgBA,EAAQszC,UAC/CtzC,GAOTn8B,EAAK+Q,UAAU2vC,aAAe,WAC5B,MAAO,IAOT1gD,EAAK+Q,UAAU4vC,cAAgB,WAC7B,MAAO,IAGThjD,EAAOD,QAAUsC,GAIb,SAASrC,EAAQD,EAASM,GAa9B,QAASqC,GAAgBmhD,EAAS1rC,EAAMqoC,GACtCv9C,EAAMvC,KAAKP,KAAM0jD,EAAS1rC,EAAMqoC,GAEhCrgD,KAAKw+B,MAAQ,EACbx+B,KAAKy+B,OAAS,EACdz+B,KAAK6I,IAAM,EACX7I,KAAK2I,KAAO,EAfd,GACI7F,IADO5C,EAAoB,GACnBA,EAAoB,IAiBhCqC,GAAgB0Q,UAAY7L,OAAOgJ,OAAOtN,EAAMmQ,WAShD1Q,EAAgB0Q,UAAUw5B,OAAS,SAAUyT,EAAO3b,EAAQ6hC,GAC1D,GAAIrK,IAAU,CAEd/7D,MAAK8lE,aAAe9lE,KAAKkuE,oBAAoBluE,KAAK+Q,aAAc/Q,KAAK8lE,aAAc5lB,GAGnFlgD,KAAKw+B,MAAQx+B,KAAK25C,IAAI1rC,WAAW+rC,YAGjCh6C,KAAK25C,IAAI1rC,WAAWa,MAAM2vB,OAAS,GAGnC,KAAK,GAAIh4B,GAAI,EAAGm0B,EAAK56B,KAAK8lE,aAAax/D,OAAYs0B,EAAJn0B,EAAQA,IAAK,CAC1D,GAAI+K,GAAOxR,KAAK8lE,aAAar/D,EAC7B+K,GAAK88D,YAAY/pC,GAGnB,MAAOw3B,IAMTx5D,EAAgB0Q,UAAUyvC,KAAO,WAC1B1iD,KAAK25C,IAAI1rC,WAAW5C,YACvBrL,KAAKqgD,QAAQ1G,IAAI1rC,WAAWqvB,YAAYt9B,KAAK25C,IAAI1rC,aAIrDpO,EAAOD,QAAU2C,GAIb,SAAS1C,EAAQD,EAASM;AAiB9B,QAASkC,GAAQ4V,EAAMmiD,EAAYt2D,GAajC,GAZA7D,KAAK6G,OACH6yC,KACElb,MAAO,EACPC,OAAQ,GAEVgb,MACEjb,MAAO,EACPC,OAAQ,IAKRzmB,GACgBzR,QAAdyR,EAAK26B,MACP,KAAM,IAAI3rC,OAAM,oCAAsCgR,EAI1D9V,GAAK3B,KAAKP,KAAMgY,EAAMmiD,EAAYt2D,GAhCpC,GAAI3B,GAAOhC,EAAoB,GACpBA,GAAoB,EAkC/BkC,GAAQ6Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAOzCE,EAAQ6Q,UAAU48D,UAAY,SAAU3vB,GAGtC,GAAInD,IAAYmD,EAAMrN,IAAMqN,EAAMvN,OAAS,CAC3C,OAAO3yC,MAAKgY,KAAK26B,MAAQuN,EAAMvN,MAAQoK,GAAY/8C,KAAKgY,KAAK26B,MAAQuN,EAAMrN,IAAMkK,GAMnF36C,EAAQ6Q,UAAUw5B,OAAS,WACzB,GAAIkN,GAAM35C,KAAK25C,GA6Bf,IA5BKA,IAEH35C,KAAK25C,OACLA,EAAM35C,KAAK25C,IAGXA,EAAIkrB,IAAMznC,SAASM,cAAc,OAGjCic,EAAItb,QAAUjB,SAASM,cAAc,OACrCic,EAAItb,QAAQt1B,UAAY,mBACxB4wC,EAAIkrB,IAAIvnC,YAAYqc,EAAItb,SAGxBsb,EAAIF,KAAOrc,SAASM,cAAc,OAClCic,EAAIF,KAAK1wC,UAAY,WAGrB4wC,EAAID,IAAMtc,SAASM,cAAc,OACjCic,EAAID,IAAI3wC,UAAY,UAGpB4wC,EAAIkrB,IAAI,iBAAmB7kE,KAE3BA,KAAKwlE,OAAQ,IAIVxlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK2yC,EAAIkrB,IAAIx5D,WAAY,CACvB,GAAIm4C,GAAaxjD,KAAKuL,OAAOouC,IAAI6J,UACjC,KAAKA,EAAY,KAAM,IAAIx8C,OAAM,iEACjCw8C,GAAWlmB,YAAYqc,EAAIkrB,KAE7B,IAAKlrB,EAAIF,KAAKpuC,WAAY,CACxB,GAAI4C,GAAajO,KAAKuL,OAAOouC,IAAI1rC,UACjC,KAAKA,EAAY,KAAM,IAAIjH,OAAM,iEACjCiH,GAAWqvB,YAAYqc,EAAIF,MAE7B,IAAKE,EAAID,IAAIruC,WAAY,CACvB,GAAI0zC,GAAO/+C,KAAKuL,OAAOouC,IAAIoF,IAC3B,KAAK9wC,EAAY,KAAM,IAAIjH,OAAM,2DACjC+3C,GAAKzhB,YAAYqc,EAAID,KAQvB,GANA15C,KAAKylE,WAAY,EAMbzlE,KAAKwlE,MAAO,CACdxlE,KAAKuwE,gBAAgBvwE,KAAK25C,IAAItb,SAC9Br+B,KAAKwwE,aAAaxwE,KAAK25C,IAAIkrB,KAC3B7kE,KAAKywE,sBAAsBzwE,KAAK25C,IAAIkrB,KACpC7kE,KAAK0wE,aAAa1wE,KAAK25C,IAAIkrB,IAE3B,IAAI3B,IAAYljE,KAAK6D,QAAQq/D,SAASC,YAAcnjE,KAAK6D,QAAQq/D,SAASE,aAAepjE,KAAKkjE,YAAa,IAASljE,KAAKkjE,YAAa,EAGlIn6D,GAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKsnE,SAAW,gBAAkB,KAAOpE,EAAW,gBAAkB,gBAChJvpB,GAAIkrB,IAAI97D,UAAY,mBAAqBA,EACzC4wC,EAAIF,KAAK1wC,UAAY,oBAAsBA,EAC3C4wC,EAAID,IAAI3wC,UAAY,mBAAqBA,EAGzC/I,KAAK6G,MAAM6yC,IAAIjb,OAASkb,EAAID,IAAIQ,aAChCl6C,KAAK6G,MAAM6yC,IAAIlb,MAAQmb,EAAID,IAAIM,YAC/Bh6C,KAAK6G,MAAM4yC,KAAKjb,MAAQmb,EAAIF,KAAKO,YACjCh6C,KAAKw+B,MAAQmb,EAAIkrB,IAAI7qB,YACrBh6C,KAAKy+B,OAASkb,EAAIkrB,IAAI3qB,aAEtBl6C,KAAKwlE,OAAQ,EAGfxlE,KAAK6wE,qBAAqBl3B,EAAIkrB,MAOhCziE,EAAQ6Q,UAAUyvC,KAAO,WAClB1iD,KAAKylE,WACRzlE,KAAKysC,UAOTrqC,EAAQ6Q,UAAUyyD,KAAO,WACvB,GAAI1lE,KAAKylE,UAAW,CAClB,GAAI9rB,GAAM35C,KAAK25C,GAEXA,GAAIkrB,IAAIx5D,YAAYsuC,EAAIkrB,IAAIx5D,WAAW3G,YAAYi1C,EAAIkrB,KACvDlrB,EAAIF,KAAKpuC,YAAYsuC,EAAIF,KAAKpuC,WAAW3G,YAAYi1C,EAAIF,MACzDE,EAAID,IAAIruC,YAAYsuC,EAAID,IAAIruC,WAAW3G,YAAYi1C,EAAID,KAE3D15C,KAAKylE,WAAY,IAQrBrjE,EAAQ6Q,UAAU0vC,YAAc,WAC9B,GAAIhQ,GAAQ3yC,KAAKm6D,WAAWza,SAAS1/C,KAAKgY,KAAK26B,OAC3C8vB,EAAQziE,KAAK6D,QAAQ4+D,KAIZ,UAATA,EACFziE,KAAK2I,KAAOgqC,EAAQ3yC,KAAKw+B,MACP,QAATikC,EACTziE,KAAK2I,KAAOgqC,EAGZ3yC,KAAK2I,KAAOgqC,EAAQ3yC,KAAKw+B,MAAQ,EAInCx+B,KAAK25C,IAAIkrB,IAAI/1D,MAAMnG,KAAO3I,KAAK2I,KAAO,KAGtC3I,KAAK25C,IAAIF,KAAK3qC,MAAMnG,KAAOgqC,EAAQ3yC,KAAK6G,MAAM4yC,KAAKjb,MAAQ,EAAI,KAG/Dx+B,KAAK25C,IAAID,IAAI5qC,MAAMnG,KAAOgqC,EAAQ3yC,KAAK6G,MAAM6yC,IAAIlb,MAAQ,EAAI,MAO/Dp8B,EAAQ6Q,UAAUq7D,YAAc,WAC9B,GAAIxvB,GAAc9+C,KAAK6D,QAAQi7C,YAAYttC,KACvCqzD,EAAM7kE,KAAK25C,IAAIkrB,IACfprB,EAAOz5C,KAAK25C,IAAIF,KAChBC,EAAM15C,KAAK25C,IAAID,GAEnB,IAAmB,OAAfoF,EACF+lB,EAAI/1D,MAAMjG,KAAO7I,KAAK6I,KAAO,GAAK,KAElC4wC,EAAK3qC,MAAMjG,IAAM,IACjB4wC,EAAK3qC,MAAM2vB,OAASz+B,KAAKuL,OAAO1C,IAAM7I,KAAK6I,IAAM,EAAI,KACrD4wC,EAAK3qC,MAAMu/B,OAAS,OACf,CAEL,GAAIujC,GAAgB5xE,KAAKuL,OAAO80C,QAAQx5C,MAAM43B,OAC1C0b,EAAay3B,EAAgB5xE,KAAKuL,OAAO1C,IAAM7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,GAE7Eg8D,GAAI/1D,MAAMjG,KAAO7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,IAAM7I,KAAKy+B,QAAU,GAAK,KACrEgb,EAAK3qC,MAAMjG,IAAM+oE,EAAgBz3B,EAAa,KAC9CV,EAAK3qC,MAAMu/B,OAAS,IAGtBqL,EAAI5qC,MAAMjG,KAAO7I,KAAK6G,MAAM6yC,IAAIjb,OAAS,EAAI,MAO/Cr8B,EAAQ6Q,UAAU2vC,aAAe,WAC/B,MAAO5iD,MAAKw+B,MAAQ,GAOtBp8B,EAAQ6Q,UAAU4vC,cAAgB,WAChC,MAAO7iD,MAAKw+B,MAAQ,GAGtB3+B,EAAOD,QAAUwC,GAIb,SAASvC,EAAQD,EAASM,GAgB9B,QAASmC,GAAU2V,EAAMmiD,EAAYt2D,GAcnC,GAbA7D,KAAK6G,OACH6yC,KACE7wC,IAAK,EACL21B,MAAO,EACPC,OAAQ,GAEVJ,SACEI,OAAQ,EACRozC,WAAY,IAKZ75D,GACgBzR,QAAdyR,EAAK26B,MACP,KAAM,IAAI3rC,OAAM,oCAAsCgR,EAI1D9V,GAAK3B,KAAKP,KAAMgY,EAAMmiD,EAAYt2D,GAhCpC,GAAI3B,GAAOhC,EAAoB,GAmC/BmC,GAAU4Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAO3CG,EAAU4Q,UAAU48D,UAAY,SAAU3vB,GAGxC,GAAInD,IAAYmD,EAAMrN,IAAMqN,EAAMvN,OAAS,CAC3C,OAAO3yC,MAAKgY,KAAK26B,MAAQuN,EAAMvN,MAAQoK,GAAY/8C,KAAKgY,KAAK26B,MAAQuN,EAAMrN,IAAMkK,GAMnF16C,EAAU4Q,UAAUw5B,OAAS,WAC3B,GAAIkN,GAAM35C,KAAK25C,GA0Bf,IAzBKA,IAEH35C,KAAK25C,OACLA,EAAM35C,KAAK25C,IAGXA,EAAI5b,MAAQX,SAASM,cAAc,OAInCic,EAAItb,QAAUjB,SAASM,cAAc,OACrCic,EAAItb,QAAQt1B,UAAY,mBACxB4wC,EAAI5b,MAAMT,YAAYqc,EAAItb,SAG1Bsb,EAAID,IAAMtc,SAASM,cAAc,OACjCic,EAAI5b,MAAMT,YAAYqc,EAAID,KAG1BC,EAAI5b,MAAM,iBAAmB/9B,KAE7BA,KAAKwlE,OAAQ,IAIVxlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK2yC,EAAI5b,MAAM1yB,WAAY,CACzB,GAAIm4C,GAAaxjD,KAAKuL,OAAOouC,IAAI6J,UACjC,KAAKA,EACH,KAAM,IAAIx8C,OAAM,iEAElBw8C,GAAWlmB,YAAYqc,EAAI5b,OAQ7B,GANA/9B,KAAKylE,WAAY,EAMbzlE,KAAKwlE,MAAO,CACdxlE,KAAKuwE,gBAAgBvwE,KAAK25C,IAAItb,SAC9Br+B,KAAKwwE,aAAaxwE,KAAK25C,IAAI5b,OAC3B/9B,KAAKywE,sBAAsBzwE,KAAK25C,IAAI5b,OACpC/9B,KAAK0wE,aAAa1wE,KAAK25C,IAAI5b,MAE3B,IAAImlC,IAAYljE,KAAK6D,QAAQq/D,SAASC,YAAcnjE,KAAK6D,QAAQq/D,SAASE,aAAepjE,KAAKkjE,YAAa,IAASljE,KAAKkjE,YAAa,EAGlIn6D,GAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKsnE,SAAW,gBAAkB,KAAOpE,EAAW,gBAAkB,gBAChJvpB,GAAI5b,MAAMh1B,UAAY,qBAAuBA,EAC7C4wC,EAAID,IAAI3wC,UAAY,mBAAqBA,EAGzC/I,KAAK6G,MAAM6yC,IAAIlb,MAAQmb,EAAID,IAAIM,YAC/Bh6C,KAAK6G,MAAM6yC,IAAIjb,OAASkb,EAAID,IAAIQ,aAChCl6C,KAAK6G,MAAMw3B,QAAQI,OAASkb,EAAItb,QAAQ6b,aAGxCP,EAAItb,QAAQvvB,MAAM+iE,WAAa,EAAI7xE,KAAK6G,MAAM6yC,IAAIlb,MAAQ,KAI1Dx+B,KAAKw+B,MAAQmb,EAAI5b,MAAMic,YACvBh6C,KAAKy+B,OAASkb,EAAI5b,MAAMmc,aAGxBP,EAAID,IAAI5qC,MAAMjG,KAAO7I,KAAKy+B,OAASz+B,KAAK6G,MAAM6yC,IAAIjb,QAAU,EAAI,KAChEkb,EAAID,IAAI5qC,MAAMnG,KAAO3I,KAAK6G,MAAM6yC,IAAIlb,MAAQ,EAAI,KAEhDx+B,KAAKwlE,OAAQ,EAGfxlE,KAAK6wE,qBAAqBl3B,EAAI5b,QAOhC17B,EAAU4Q,UAAUyvC,KAAO,WACpB1iD,KAAKylE,WACRzlE,KAAKysC,UAOTpqC,EAAU4Q,UAAUyyD,KAAO,WACrB1lE,KAAKylE,YACHzlE,KAAK25C,IAAI5b,MAAM1yB,YACjBrL,KAAK25C,IAAI5b,MAAM1yB,WAAW3G,YAAY1E,KAAK25C,IAAI5b,OAGjD/9B,KAAKylE,WAAY,IAQrBpjE,EAAU4Q,UAAU0vC,YAAc,WAChC,GAAIhQ,GAAQ3yC,KAAKm6D,WAAWza,SAAS1/C,KAAKgY,KAAK26B,MAE/C3yC,MAAK2I,KAAOgqC,EAAQ3yC,KAAK6G,MAAM6yC,IAAIlb,MAGnCx+B,KAAK25C,IAAI5b,MAAMjvB,MAAMnG,KAAO3I,KAAK2I,KAAO,MAO1CtG,EAAU4Q,UAAUq7D,YAAc,WAChC,GAAIxvB,GAAc9+C,KAAK6D,QAAQi7C,YAAYttC,KACvCusB,EAAQ/9B,KAAK25C,IAAI5b,KAEF,QAAf+gB,EACF/gB,EAAMjvB,MAAMjG,IAAM7I,KAAK6I,IAAM,KAE7Bk1B,EAAMjvB,MAAMjG,IAAM7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,IAAM7I,KAAKy+B,OAAS,MAQpEp8B,EAAU4Q,UAAU2vC,aAAe,WACjC,MAAO5iD,MAAK6G,MAAM6yC,IAAIlb,OAOxBn8B,EAAU4Q,UAAU4vC,cAAgB,WAClC,MAAO7iD,MAAKw+B,MAAQx+B,KAAK6G,MAAM6yC,IAAIlb,OAGrC3+B,EAAOD,QAAUyC,GAIb,SAASxC,EAAQD,EAASM,GAoB9B,QAASiC,GAAe6V,EAAMmiD,EAAYt2D,GASxC,GARA7D,KAAK6G,OACHw3B,SACEG,MAAO,IAGXx+B,KAAK8T,UAAW,EAGZkE,EAAM,CACR,GAAkBzR,QAAdyR,EAAK26B,MACP,KAAM,IAAI3rC,OAAM,oCAAsCgR,EAAK3X,GAE7D,IAAgBkG,QAAZyR,EAAK66B,IACP,KAAM,IAAI7rC,OAAM,kCAAoCgR,EAAK3X,IAI7D6B,EAAK3B,KAAKP,KAAMgY,EAAMmiD,EAAYt2D,GAlCpC,GACI3B,IADShC,EAAoB,IACtBA,EAAoB,KAC3BqC,EAAkBrC,EAAoB,IACtCoC,EAAYpC,EAAoB,GAkCpCiC,GAAe8Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAEhDC,EAAe8Q,UAAUq9D,cAAgB,0BACzCnuE,EAAe8Q,UAAUnR,OAAQ,EAOjCK,EAAe8Q,UAAU48D,UAAY,SAAU3vB,GAE7C,MAAOlgD,MAAKgY,KAAK26B,MAAQuN,EAAMrN,KAAO7yC,KAAKgY,KAAK66B,IAAMqN,EAAMvN,OAM9DxwC,EAAe8Q,UAAUw5B,OAAS,WAChC,GAAIkN,GAAM35C,KAAK25C,GA4Bf,IA3BKA,IAEH35C,KAAK25C,OACLA,EAAM35C,KAAK25C,IAGXA,EAAIkrB,IAAMznC,SAASM,cAAc,OAIjCic,EAAIpP,MAAQnN,SAASM,cAAc,OACnCic,EAAIpP,MAAMxhC,UAAY,oBACtB4wC,EAAIkrB,IAAIvnC,YAAYqc,EAAIpP,OAGxBoP,EAAItb,QAAUjB,SAASM,cAAc,OACrCic,EAAItb,QAAQt1B,UAAY,mBACxB4wC,EAAIpP,MAAMjN,YAAYqc,EAAItb,SAM1Br+B,KAAKwlE,OAAQ,IAIVxlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK2yC,EAAIkrB,IAAIx5D,WAAY,CACvB,GAAI4C,GAAajO,KAAKuL,OAAOouC,IAAI1rC,UACjC,KAAKA,EACH,KAAM,IAAIjH,OAAM,iEAElBiH,GAAWqvB,YAAYqc,EAAIkrB,KAQ7B,GANA7kE,KAAKylE,WAAY,EAMbzlE,KAAKwlE,MAAO,CACdxlE,KAAKuwE,gBAAgBvwE,KAAK25C,IAAItb,SAC9Br+B,KAAKwwE,aAAaxwE,KAAK25C,IAAItb,SAC3Br+B,KAAKywE,sBAAsBzwE,KAAK25C,IAAItb,SACpCr+B,KAAK0wE,aAAa1wE,KAAK25C,IAAIkrB,IAG3B,IAAI97D,IAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKsnE,SAAW,gBAAkB,GAC5G3tB,GAAIkrB,IAAI97D,UAAY/I,KAAKswE,cAAgBvnE,EAGzC/I,KAAK8T,SAA6D,WAAlD/I,OAAO4lE,iBAAiBh3B,EAAItb,SAASvqB,SAGrD9T,KAAK6G,MAAMw3B,QAAQG,MAAQx+B,KAAK25C,IAAItb,QAAQ2b,YAC5Ch6C,KAAKy+B,OAAS,EAEdz+B,KAAKwlE,OAAQ,IAQjBrjE,EAAe8Q,UAAUyvC,KAAOpgD,EAAU2Q,UAAUyvC,KAMpDvgD,EAAe8Q,UAAUyyD,KAAOpjE,EAAU2Q,UAAUyyD,KAMpDvjE,EAAe8Q,UAAU0vC,YAAcrgD,EAAU2Q,UAAU0vC,YAM3DxgD,EAAe8Q,UAAUq7D,YAAc,SAAU/pC,GAC/C,GAAIutC,GAA0C,QAAlC9xE,KAAK6D,QAAQi7C,YAAYttC,IACrCxR,MAAK25C,IAAItb,QAAQvvB,MAAMjG,IAAMipE,EAAQ,GAAK,IAC1C9xE,KAAK25C,IAAItb,QAAQvvB,MAAMu/B,OAASyjC,EAAQ,IAAM,EAC9C,IAAIrzC,EAGJ,IAA2Bl4B,SAAvBvG,KAAKgY,KAAK4vD,SAAwB,CAGpC,GAAImK,GAAe/xE,KAAKgY,KAAK4vD,SACzBsF,EAAYltE,KAAKuL,OAAO2hE,UACxBC,EAAgBD,EAAU6E,GAAc3oE,KAE5C,IAAa,GAAT0oE,EAAe,CAEjBrzC,EAASz+B,KAAKuL,OAAO2hE,UAAU6E,GAActzC,OAAS8F,EAAO/yB,KAAK0+B,SAClEzR,GAA2B,GAAjB0uC,EAAqB5oC,EAAOwa,KAAO,GAAMxa,EAAO/yB,KAAK0+B,SAAW,CAC1E,IAAImgC,GAASrwE,KAAKuL,OAAO1C,GACzB,KAAK,GAAI++D,KAAYsF,GACfA,EAAUlnE,eAAe4hE,IACQ,GAA/BsF,EAAUtF,GAAU30B,SAAmBi6B,EAAUtF,GAAUx+D,MAAQ+jE,IACrEkD,GAAUnD,EAAUtF,GAAUnpC,OAAS8F,EAAO/yB,KAAK0+B,SAMzDmgC,IAA2B,GAAjBlD,EAAqB5oC,EAAOwa,KAAO,GAAMxa,EAAO/yB,KAAK0+B,SAAW,EAC1ElwC,KAAK25C,IAAIkrB,IAAI/1D,MAAMjG,IAAMwnE,EAAS,KAClCrwE,KAAK25C,IAAIkrB,IAAI/1D,MAAMu/B,OAAS,OAGzB,CACD,GAAIgiC,GAASrwE,KAAKuL,OAAO1C,IACrBmpE,EAAc,CAClB,KAAK,GAAIpK,KAAYsF,GACnB,GAAIA,EAAUlnE,eAAe4hE,IACQ,GAA/BsF,EAAUtF,GAAU30B,QAAiB,CACvC,GAAIg/B,GAAY/E,EAAUtF,GAAUnpC,OAAS8F,EAAO/yB,KAAK0+B,QACzD8hC,IAAeC,EACX/E,EAAUtF,GAAUx+D,MAAQ+jE,IAC9BkD,GAAU4B,GAKlBxzC,EAASz+B,KAAKuL,OAAO2hE,UAAU6E,GAActzC,OAAS8F,EAAO/yB,KAAK0+B,SAClElwC,KAAK25C,IAAIkrB,IAAI/1D,MAAMjG,IAAM7I,KAAKuL,OAAOkzB,OAASuzC,EAAc3B,EAAS,KACrErwE,KAAK25C,IAAIkrB,IAAI/1D,MAAMu/B,OAAS,QAM1BruC,MAAKuL,iBAAkBhJ,IAEzBk8B,EAASx5B,KAAKJ,IAAI7E,KAAKuL,OAAOkzB,OAAQz+B,KAAKuL,OAAO80C,QAAQlB,KAAKC,SAAShJ,OAAO3X,OAAQz+B,KAAKuL,OAAO80C,QAAQlB,KAAKC,SAAS2D,gBAAgBtkB,QACzIz+B,KAAK25C,IAAIkrB,IAAI/1D,MAAMjG,IAAMipE,EAAQ,IAAM,GACvC9xE,KAAK25C,IAAIkrB,IAAI/1D,MAAMu/B,OAASyjC,EAAQ,GAAK,MAEzCrzC,EAASz+B,KAAKuL,OAAOkzB,OAErBz+B,KAAK25C,IAAIkrB,IAAI/1D,MAAMjG,IAAM7I,KAAKuL,OAAO1C,IAAM,KAC3C7I,KAAK25C,IAAIkrB,IAAI/1D,MAAMu/B,OAAS,GAGlCruC,MAAK25C,IAAIkrB,IAAI/1D,MAAM2vB,OAASA,EAAS,MAGvC5+B,EAAOD,QAAUuC,GAIb,SAAStC,EAAQD,EAASM,GAkB9B,QAASgD,GAASi8C,EAAMt7C,GACtB7D,KAAK25C,KACH6J,WAAY,KACZ0uB,SACAC,cACAC,cACAv1C,WACEq1C,SACAC,cACAC,gBAGJpyE,KAAK6G,OACHq5C,OACEvN,MAAO,EACPE,IAAK,EACLy4B,YAAa,GAEf+G,QAAS,GAGXryE,KAAK2+C,gBACHG,aACEC,KAAM,UAERuzB,iBAAiB,EACjBC,iBAAiB,EACjBC,cAAe,EACfn/D,OAAQtR,EAASypE,OACjBznE,OAAQA,EACR07C,SAAU,MAEZz/C,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBAEpC3+C,KAAKm/C,KAAOA,EAGZn/C,KAAKk/C,UAELl/C,KAAKg/B,WAAWn7B,GArDlB,GAAIlD,GAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6B,EAAW7B,EAAoB,IAC/B0B,EAAW1B,EAAoB,IAC/B6D,EAAS7D,EAAoB,EAoDjCgD,GAAS+P,UAAY,GAAIzQ,GAUzBU,EAAS+P,UAAU+rB,WAAa,SAAUn7B,GACpCA,IAEFlD,EAAKiG,iBAAiB,kBAAmB,kBAAmB,gBAAiB,cAAe,WAAY,UAAW5G,KAAK6D,QAASA,GAGjIlD,EAAKsG,qBAAqB,UAAWjH,KAAK6D,QAASA,GAE/C,eAAiBA,KACgB,gBAAxBA,GAAQi7C,YACjB9+C,KAAK6D,QAAQi7C,YAAYC,KAAOl7C,EAAQi7C,YACA,gBAAxBj7C,GAAQi7C,aAA4B,QAAUj7C,GAAQi7C,cACtE9+C,KAAK6D,QAAQi7C,YAAYC,KAAOl7C,EAAQi7C,YAAYC,OAMpD,UAAYl7C,KACe,kBAAlBE,GAAOuP,OAEhBvP,EAAOuP,OAAOzP,EAAQyP,QAEtBvP,EAAOgyB,KAAKlyB,EAAQyP,WAS5BpQ,EAAS+P,UAAUisC,QAAU,WAC3Bl/C,KAAK25C,IAAI6J,WAAapmB,SAASM,cAAc,OAC7C19B,KAAK25C,IAAI1rC,WAAamvB,SAASM,cAAc,OAE7C19B,KAAK25C,IAAI6J,WAAWz6C,UAAY,+BAChC/I,KAAK25C,IAAI1rC,WAAWlF,UAAY,gCAMlC7F,EAAS+P,UAAUksB,QAAU,WAEvBn/B,KAAK25C,IAAI6J,WAAWn4C,YACtBrL,KAAK25C,IAAI6J,WAAWn4C,WAAW3G,YAAY1E,KAAK25C,IAAI6J,YAElDxjD,KAAK25C,IAAI1rC,WAAW5C,YACtBrL,KAAK25C,IAAI1rC,WAAW5C,WAAW3G,YAAY1E,KAAK25C,IAAI1rC,YAGtDjO,KAAKm/C,KAAO,MAOdj8C,EAAS+P,UAAUw5B,OAAS,WAC1B,GAAI5lC,GAAQ7G,KAAK6G,MACb28C,EAAaxjD,KAAK25C,IAAI6J,WACtBv1C,EAAajO,KAAK25C,IAAI1rC,WAGtB1C,EAA0C,OAAjCvL,KAAK6D,QAAQi7C,YAAYC,KAAgB/+C,KAAKm/C,KAAKxF,IAAI9wC,IAAM7I,KAAKm/C,KAAKxF,IAAItL,OACpFokC,EAAgBjvB,EAAWn4C,aAAeE,CAG9CvL,MAAK0yE,oBAGL,IAAIJ,GAAkBtyE,KAAK6D,QAAQyuE,iBAAqD,SAAlCtyE,KAAK6D,QAAQi7C,YAAYC,KAC3EwzB,EAAkBvyE,KAAK6D,QAAQ0uE,iBAAqD,SAAlCvyE,KAAK6D,QAAQi7C,YAAYC,IAG/El4C,GAAM8rE,iBAAmBL,EAAkBzrE,EAAM+rE,gBAAkB,EACnE/rE,EAAMgsE,iBAAmBN,EAAkB1rE,EAAMisE,gBAAkB,EACnEjsE,EAAM43B,OAAS53B,EAAM8rE,iBAAmB9rE,EAAMgsE,iBAC9ChsE,EAAM23B,MAAQglB,EAAWxJ,YAEzBnzC,EAAMksE,gBAAkB/yE,KAAKm/C,KAAKC,SAAS1/C,KAAK++B,OAAS53B,EAAMgsE,kBAAqD,OAAjC7yE,KAAK6D,QAAQi7C,YAAYC,KAAgB/+C,KAAKm/C,KAAKC,SAAS/Q,OAAO5P,OAASz+B,KAAKm/C,KAAKC,SAASv2C,IAAI41B,QACtL53B,EAAMmsE,eAAiB,EACvBnsE,EAAMosE,gBAAkBpsE,EAAMksE,gBAAkBlsE,EAAMgsE,iBACtDhsE,EAAMqsE,eAAiB,CAGvB,IAAIC,GAAwB3vB,EAAW4vB,YACnCC,EAAwBplE,EAAWmlE,WAoBvC,OAnBA5vB,GAAWn4C,YAAcm4C,EAAWn4C,WAAW3G,YAAY8+C,GAC3Dv1C,EAAW5C,YAAc4C,EAAW5C,WAAW3G,YAAYuJ,GAE3Du1C,EAAW10C,MAAM2vB,OAASz+B,KAAK6G,MAAM43B,OAAS,KAE9Cz+B,KAAKszE,iBAGDH,EACF5nE,EAAOkyB,aAAa+lB,EAAY2vB,GAEhC5nE,EAAO+xB,YAAYkmB,GAEjB6vB,EACFrzE,KAAKm/C,KAAKxF,IAAI8kB,mBAAmBhhC,aAAaxvB,EAAYolE,GAE1DrzE,KAAKm/C,KAAKxF,IAAI8kB,mBAAmBnhC,YAAYrvB,GAGxCjO,KAAK87D,cAAgB2W,GAO9BvvE,EAAS+P,UAAUqgE,eAAiB,WAClC,GAAIx0B,GAAc9+C,KAAK6D,QAAQi7C,YAAYC,KAGvCpM,EAAQhyC,EAAKgH,QAAQ3H,KAAKm/C,KAAKe,MAAMvN,MAAO,UAC5CE,EAAMlyC,EAAKgH,QAAQ3H,KAAKm/C,KAAKe,MAAMrN,IAAK,UACxC0gC,EAAgBvzE,KAAKm/C,KAAKx+C,KAAKm/C,QAAQ9/C,KAAK6G,MAAM2sE,gBAAkB,IAAMxzE,KAAK6D,QAAQ2uE,eAAe1qE,UACtGwjE,EAAciI,EAAgB3xE,EAAS25D,wBAAwBv7D,KAAK6D,QAAQE,OAAQ/D,KAAKm/C,KAAKI,YAAav/C,KAAKm/C,KAAKe,MAAOqzB,EAChIjI,IAAetrE,KAAKm/C,KAAKx+C,KAAKm/C,OAAO,GAAGh4C,SAExC,IAAI4qC,GAAO,GAAI3wC,GAAS,GAAIsD,MAAKstC,GAAQ,GAAIttC,MAAKwtC,GAAMy4B,EAAatrE,KAAKm/C,KAAKI,YAC/E7M,GAAKi5B,UAAU3rE,KAAK6D,QAAQE,QACxB/D,KAAK6D,QAAQwP,QACfq/B,EAAKk5B,UAAU5rE,KAAK6D,QAAQwP,QAE1BrT,KAAK6D,QAAQ47C,UACf/M,EAAKs5B,SAAShsE,KAAK6D,QAAQ47C,UAE7Bz/C,KAAK0yC,KAAOA,CAKZ,IAAIiH,GAAM35C,KAAK25C,GACfA,GAAI9c,UAAUq1C,MAAQv4B,EAAIu4B,MAC1Bv4B,EAAI9c,UAAUs1C,WAAax4B,EAAIw4B,WAC/Bx4B,EAAI9c,UAAUu1C,WAAaz4B,EAAIy4B,WAC/Bz4B,EAAIu4B,SACJv4B,EAAIw4B,cACJx4B,EAAIy4B,aAEJ,IAAI7U,GACAjmD,EACAsmB,EACA61C,EACAhH,EAASiH,EAETC,EACAl6B,EACAm6B,EAIA7qE,EAPAy1B,EAAQ,EAIRq1C,EAAmBttE,OACnB0rB,EAAQ,EACR6hD,EAAM,GAMV,KAHAphC,EAAKC,QACLr7B,EAAOo7B,EAAKE,aACZ6gC,EAAQzzE,KAAKm/C,KAAKx+C,KAAK++C,SAASpoC,GACzBo7B,EAAKq5B,WAAqB+H,EAAR7hD,GAAa,CACpCA,IAEAw6C,EAAU/5B,EAAK+5B,UACf1jE,EAAY2pC,EAAKk6B,eACjBgH,EAAalhC,EAAKg6B,gBAElBnP,EAAUjmD,EACVsmB,EAAI61C,EAEJ/gC,EAAKp7B,OACLA,EAAOo7B,EAAKE,aACZ8gC,EAAchhC,EAAK+5B,UACnBgH,EAAQzzE,KAAKm/C,KAAKx+C,KAAK++C,SAASpoC,GAEhCq8D,EAAYn1C,EACZA,EAAQi1C,EAAQ71C,CAChB,IAAIm2C,GAAgBv1C,GAAqB,GAAZm1C,CAE7B,IAAI3zE,KAAK6D,QAAQyuE,iBAAmByB,EAAe,CACjD,GAAI71C,GAAQl+B,KAAKg0E,kBAAkBp2C,EAAGg2C,EAAY90B,EAAa/1C,EAC/Dm1B,GAAMpvB,MAAM0vB,MAAQA,EAAQ,KAG1BiuC,GAAWzsE,KAAK6D,QAAQ0uE,iBACtB30C,EAAI,IACkBr3B,QAApBstE,IACFA,EAAmBj2C,GAErBM,EAAQl+B,KAAKi0E,kBAAkBr2C,EAAG8U,EAAKi6B,gBAAiB7tB,EAAa/1C,IAEvE0wC,EAAOz5C,KAAKk0E,kBAAkBt2C,EAAGY,EAAOsgB,EAAa/1C,IAGjDgrE,EACFt6B,EAAOz5C,KAAKm0E,kBAAkBv2C,EAAGY,EAAOsgB,EAAa/1C,GAEjD0wC,IAEFA,EAAK3qC,MAAM0vB,MAAQjyB,SAASktC,EAAK3qC,MAAM0vB,OAASA,EAAQ,MAYhE,GANIvM,IAAU6hD,GAAQM,IACpBz0D,QAAQH,KAAK,gFAAkFs0D,EAAM,WACrGM,GAAoB,GAIlBp0E,KAAK6D,QAAQ0uE,gBAAiB,CAChC,GAAI8B,GAAWr0E,KAAKm/C,KAAKx+C,KAAKm/C,OAAO,GACjCw0B,EAAW5hC,EAAKi6B,cAAc0H,GAC9BE,EAAYD,EAAShuE,QAAUtG,KAAK6G,MAAM2tE,gBAAkB,IAAM,IAE9CjuE,QAApBstE,GAA6CA,EAAZU,IACnCv0E,KAAKi0E,kBAAkB,EAAGK,EAAUx1B,EAAa/1C,GAKrDpI,EAAK2I,QAAQtJ,KAAK25C,IAAI9c,UAAW,SAAUz0B,GACzC,KAAOA,EAAI9B,QAAQ,CACjB,GAAImC,GAAOL,EAAIqsE,KACXhsE,IAAQA,EAAK4C,YACf5C,EAAK4C,WAAW3G,YAAY+D,OAepCvF,EAAS+P,UAAU+gE,kBAAoB,SAAUp2C,EAAGgW,EAAMkL,EAAa/1C,GAErE,GAAIm1B,GAAQl+B,KAAK25C,IAAI9c,UAAUu1C,WAAWj1C,OAE1C,KAAKe,EAAO,CAEV,GAAIG,GAAUjB,SAASs3C,eAAe,GACtCx2C,GAAQd,SAASM,cAAc,OAC/BQ,EAAMZ,YAAYe,GAClBr+B,KAAK25C,IAAI6J,WAAWlmB,YAAYY,GAWlC,MATAl+B,MAAK25C,IAAIy4B,WAAW5qE,KAAK02B,GAEzBA,EAAMy2C,WAAW,GAAGC,UAAYhhC,EAEhC1V,EAAMpvB,MAAMjG,IAAqB,OAAfi2C,EAAuB9+C,KAAK6G,MAAMgsE,iBAAmB,KAAO,IAC9E30C,EAAMpvB,MAAMnG,KAAOi1B,EAAI,KACvBM,EAAMn1B,UAAY,sBAAwBA,EAGnCm1B,GAYTh7B,EAAS+P,UAAUghE,kBAAoB,SAAUr2C,EAAGgW,EAAMkL,EAAa/1C,GAErE,GAAIm1B,GAAQl+B,KAAK25C,IAAI9c,UAAUs1C,WAAWh1C,OAE1C,KAAKe,EAAO,CAEV,GAAIG,GAAUjB,SAASs3C,eAAe9gC,EACtC1V,GAAQd,SAASM,cAAc,OAC/BQ,EAAMZ,YAAYe,GAClBr+B,KAAK25C,IAAI6J,WAAWlmB,YAAYY,GAWlC,MATAl+B,MAAK25C,IAAIw4B,WAAW3qE,KAAK02B,GAEzBA,EAAMy2C,WAAW,GAAGC,UAAYhhC,EAChC1V,EAAMn1B,UAAY,sBAAwBA,EAG1Cm1B,EAAMpvB,MAAMjG,IAAqB,OAAfi2C,EAAuB,IAAM9+C,KAAK6G,MAAM8rE,iBAAmB,KAC7Ez0C,EAAMpvB,MAAMnG,KAAOi1B,EAAI,KAEhBM,GAYTh7B,EAAS+P,UAAUkhE,kBAAoB,SAAUv2C,EAAGY,EAAOsgB,EAAa/1C,GAEtE,GAAI0wC,GAAOz5C,KAAK25C,IAAI9c,UAAUq1C,MAAM/0C,OAC/Bsc,KAEHA,EAAOrc,SAASM,cAAc,OAC9B19B,KAAK25C,IAAI1rC,WAAWqvB,YAAYmc,IAElCz5C,KAAK25C,IAAIu4B,MAAM1qE,KAAKiyC,EAEpB,IAAI5yC,GAAQ7G,KAAK6G,KAYjB,OAXmB,OAAfi4C,EACFrF,EAAK3qC,MAAMjG,IAAMhC,EAAMgsE,iBAAmB,KAE1Cp5B,EAAK3qC,MAAMjG,IAAM7I,KAAKm/C,KAAKC,SAASv2C,IAAI41B,OAAS,KAEnDgb,EAAK3qC,MAAM2vB,OAAS53B,EAAMksE,gBAAkB,KAC5Ct5B,EAAK3qC,MAAMnG,KAAOi1B,EAAI/2B,EAAMmsE,eAAiB,EAAI,KACjDv5B,EAAK3qC,MAAM0vB,MAAQA,EAAQ,KAE3Bib,EAAK1wC,UAAY,mCAAqCA,EAE/C0wC,GAYTv2C,EAAS+P,UAAUihE,kBAAoB,SAAUt2C,EAAGY,EAAOsgB,EAAa/1C,GAEtE,GAAI0wC,GAAOz5C,KAAK25C,IAAI9c,UAAUq1C,MAAM/0C,OAC/Bsc,KAEHA,EAAOrc,SAASM,cAAc,OAC9B19B,KAAK25C,IAAI1rC,WAAWqvB,YAAYmc,IAElCz5C,KAAK25C,IAAIu4B,MAAM1qE,KAAKiyC,EAEpB,IAAI5yC,GAAQ7G,KAAK6G,KAYjB,OAXmB,OAAfi4C,EACFrF,EAAK3qC,MAAMjG,IAAM,IAEjB4wC,EAAK3qC,MAAMjG,IAAM7I,KAAKm/C,KAAKC,SAASv2C,IAAI41B,OAAS,KAEnDgb,EAAK3qC,MAAMnG,KAAOi1B,EAAI/2B,EAAMqsE,eAAiB,EAAI,KACjDz5B,EAAK3qC,MAAM2vB,OAAS53B,EAAMosE,gBAAkB,KAC5Cx5B,EAAK3qC,MAAM0vB,MAAQA,EAAQ,KAE3Bib,EAAK1wC,UAAY,mCAAqCA,EAE/C0wC,GAQTv2C,EAAS+P,UAAUy/D,mBAAqB,WAKjC1yE,KAAK25C,IAAIk7B,mBACZ70E,KAAK25C,IAAIk7B,iBAAmBz3C,SAASM,cAAc,OACnD19B,KAAK25C,IAAIk7B,iBAAiB9rE,UAAY,iCACtC/I,KAAK25C,IAAIk7B,iBAAiB/lE,MAAM2/B,SAAW,WAE3CzuC,KAAK25C,IAAIk7B,iBAAiBv3C,YAAYF,SAASs3C,eAAe,MAC9D10E,KAAK25C,IAAI6J,WAAWlmB,YAAYt9B,KAAK25C,IAAIk7B,mBAE3C70E,KAAK6G,MAAM+rE,gBAAkB5yE,KAAK25C,IAAIk7B,iBAAiBplC,aACvDzvC,KAAK6G,MAAM2sE,eAAiBxzE,KAAK25C,IAAIk7B,iBAAiBpqC,YAGjDzqC,KAAK25C,IAAIm7B,mBACZ90E,KAAK25C,IAAIm7B,iBAAmB13C,SAASM,cAAc,OACnD19B,KAAK25C,IAAIm7B,iBAAiB/rE,UAAY,iCACtC/I,KAAK25C,IAAIm7B,iBAAiBhmE,MAAM2/B,SAAW,WAE3CzuC,KAAK25C,IAAIm7B,iBAAiBx3C,YAAYF,SAASs3C,eAAe,MAC9D10E,KAAK25C,IAAI6J,WAAWlmB,YAAYt9B,KAAK25C,IAAIm7B,mBAE3C90E,KAAK6G,MAAMisE,gBAAkB9yE,KAAK25C,IAAIm7B,iBAAiBrlC,aACvDzvC,KAAK6G,MAAM2tE,eAAiBx0E,KAAK25C,IAAIm7B,iBAAiBrqC,YAGxD,IAAI2pC,IAAoB,CAExBv0E,GAAOD,QAAUsD,GAIb,SAASrD,EAAQD,EAASM,GAmB9B,QAASo+D,GAAUl6B,GACjBpkC,KAAKogE,QAAS,EAEdpgE,KAAK25C,KACHvV,UAAWA,GAGbpkC,KAAK25C,IAAIo7B,QAAU33C,SAASM,cAAc,OAC1C19B,KAAK25C,IAAIo7B,QAAQhsE,UAAY,cAE7B/I,KAAK25C,IAAIvV,UAAU9G,YAAYt9B,KAAK25C,IAAIo7B,SAExC/0E,KAAKmkD,OAASngD,EAAOhE,KAAK25C,IAAIo7B,SAC9B/0E,KAAKmkD,OAAO/kB,GAAG,MAAOp/B,KAAKg1E,cAAc11B,KAAKt/C,MAG9C,IAAIggC,GAAKhgC,KACLokD,GAAU,MAAO,YAAa,QAAS,QAAS,MAAO,WAAY,UAAW,SAClFA,GAAO96C,QAAQ,SAAUwB,GACvBk1B,EAAGmkB,OAAO/kB,GAAGt0B,EAAO,SAAUA,GAC5BA,EAAM05C,sBAKNpnB,UAAYA,SAAS+hB,OACvBn/C,KAAKi1E,QAAU,SAAUnqE,GAClBoqE,EAAWpqE,EAAMI,OAAQk5B,IAC5BpE,EAAGm1C,cAGP/3C,SAAS+hB,KAAKh1C,iBAAiB,QAASnK,KAAKi1E,UAGzB1uE,SAAlBvG,KAAKiE,UACPjE,KAAKiE,SAASk7B,UAEhBn/B,KAAKiE,SAAWA,IAGhBjE,KAAKo1E,YAAcp1E,KAAKm1E,WAAW71B,KAAKt/C,MAsF1C,QAASk1E,GAAW9qE,EAASmB,GAC3B,KAAOnB,GAAS,CACd,GAAIA,IAAYmB,EACd,OAAO,CAETnB,GAAUA,EAAQiB,WAEpB,OAAO,EApJT,GAAIpH,GAAW/D,EAAoB,IAC/B+nC,EAAU/nC,EAAoB,IAC9B8D,EAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,EAwD/B+nC,GAAQq2B,EAAUrrD,WAGlBqrD,EAAUf,QAAU,KAKpBe,EAAUrrD,UAAUksB,QAAU,WAC5Bn/B,KAAKm1E,aAGLn1E,KAAK25C,IAAIo7B,QAAQ1pE,WAAW3G,YAAY1E,KAAK25C,IAAIo7B,SAG7C/0E,KAAKi1E,SACP73C,SAAS+hB,KAAKx0C,oBAAoB,QAAS3K,KAAKi1E,SAIlDj1E,KAAKmkD,OAAOhlB,UACZn/B,KAAKmkD,OAAS,MAQhBma,EAAUrrD,UAAUoiE,SAAW,WAEzB/W,EAAUf,SACZe,EAAUf,QAAQ4X,aAEpB7W,EAAUf,QAAUv9D,KAEpBA,KAAKogE,QAAS,EACdpgE,KAAK25C,IAAIo7B,QAAQjmE,MAAMwmE,QAAU,OACjC30E,EAAKmI,aAAa9I,KAAK25C,IAAIvV,UAAW,cAEtCpkC,KAAK43C,KAAK,UACV53C,KAAK43C,KAAK,YAIV53C,KAAKiE,SAASq7C,KAAK,MAAOt/C,KAAKo1E,cAOjC9W,EAAUrrD,UAAUkiE,WAAa,WAC/Bn1E,KAAKogE,QAAS,EACdpgE,KAAK25C,IAAIo7B,QAAQjmE,MAAMwmE,QAAU,GACjC30E,EAAKwI,gBAAgBnJ,KAAK25C,IAAIvV,UAAW,cACzCpkC,KAAKiE,SAASsxE,OAAO,MAAOv1E,KAAKo1E,aAEjCp1E,KAAK43C,KAAK,UACV53C,KAAK43C,KAAK,eAQZ0mB,EAAUrrD,UAAU+hE,cAAgB,SAAUlqE,GAE5C9K,KAAKq1E,WACLvqE,EAAM05C,mBAsBR3kD,EAAOD,QAAU0+D,GAIb,SAASz+D,EAAQD,EAASM,GAE9B,GAAI6jD,GAAgCC,EAA8BC,GAOjE,SAAUvkD,EAAMC,GAGXqkD,KAAmCD,EAAiC,EAAWE,EAA2E,kBAAnCF,GAAiDA,EAA+BhxC,MAAMnT,EAASokD,GAAiCD,IAAmEx9C,SAAlC09C,IAAgDpkD,EAAOD,QAAUqkD,KAU7VjkD,KAAM,WAEN,QAASiE,GAASJ,GAChB,GAOI4C,GAPAoE,EAAiBhH,GAAWA,EAAQgH,iBAAkB,EAEtDu5B,EAAYvgC,GAAWA,EAAQugC,WAAar5B,OAE5CyqE,KACAC,GAAUC,WAAYC,UACtBC,IAIJ,KAAKnvE,EAAI,GAAS,KAALA,EAAUA,IAAMmvE,EAAMzwE,OAAO0wE,aAAapvE,KAAOoR,KAAK,IAAMpR,EAAI,IAAK02B,OAAO,EAEzF,KAAK12B,EAAI,GAAS,IAALA,EAASA,IAAMmvE,EAAMzwE,OAAO0wE,aAAapvE,KAAOoR,KAAKpR,EAAG02B,OAAO,EAE5E,KAAK12B,EAAI,EAAS,GAALA,EAAUA,IAAMmvE,EAAM,GAAKnvE,IAAMoR,KAAK,GAAKpR,EAAG02B,OAAO,EAElE,KAAK12B,EAAI,EAAS,IAALA,EAAWA,IAAMmvE,EAAM,IAAMnvE,IAAMoR,KAAK,IAAMpR,EAAG02B,OAAO,EAErE,KAAK12B,EAAI,EAAS,GAALA,EAAUA,IAAMmvE,EAAM,MAAQnvE,IAAMoR,KAAK,GAAKpR,EAAG02B,OAAO,EAGrEy4C,GAAM,SAAW/9D,KAAK,IAAKslB,OAAO,GAClCy4C,EAAM,SAAW/9D,KAAK,IAAKslB,OAAO,GAClCy4C,EAAM,SAAW/9D,KAAK,IAAKslB,OAAO,GAClCy4C,EAAM,SAAW/9D,KAAK,IAAKslB,OAAO,GAClCy4C,EAAM,SAAW/9D,KAAK,IAAKslB,OAAO,GAElCy4C,EAAY,MAAM/9D,KAAK,GAAIslB,OAAO,GAClCy4C,EAAU,IAAQ/9D,KAAK,GAAIslB,OAAO,GAClCy4C,EAAa,OAAK/9D,KAAK,GAAIslB,OAAO,GAClCy4C,EAAY,MAAM/9D,KAAK,GAAIslB,OAAO,GAElCy4C,EAAa,OAAK/9D,KAAK,GAAIslB,OAAO,GAClCy4C,EAAa,OAAK/9D,KAAK,GAAIslB,OAAO,GAClCy4C,EAAa,OAAK/9D,KAAK,GAAIslB,MAAO52B,QAClCqvE,EAAW,KAAO/9D,KAAK,GAAIslB,OAAO,GAClCy4C,EAAiB,WAAK/9D,KAAK,EAAGslB,OAAO,GACrCy4C,EAAW,KAAW/9D,KAAK,EAAGslB,OAAO,GACrCy4C,EAAY,MAAU/9D,KAAK,GAAIslB,OAAO,GACtCy4C,EAAW,KAAW/9D,KAAK,GAAIslB,OAAO,GACtCy4C,EAAM,WAAgB/9D,KAAK,GAAIslB,OAAO,GACtCy4C,EAAc,QAAQ/9D,KAAK,GAAIslB,OAAO,GACtCy4C,EAAgB,UAAM/9D,KAAK,GAAIslB,OAAO,GAEtCy4C,EAAM,MAAY/9D,KAAK,IAAKslB,OAAO,GACnCy4C,EAAM,MAAY/9D,KAAK,IAAKslB,OAAO,GACnCy4C,EAAM,MAAY/9D,KAAK,IAAKslB,OAAO,GACnCy4C,EAAM,MAAY/9D,KAAK,IAAKslB,OAAO,EAInC,IAAI24C,GAAO,SAAShrE,GAAQirE,EAAYjrE,EAAM,YAC1CkrE,EAAK,SAASlrE,GAAQirE,EAAYjrE,EAAM,UAGxCirE,EAAc,SAASjrE,EAAMlD,GAC/B,GAAoCrB,SAAhCkvE,EAAO7tE,GAAMkD,EAAMmrE,SAAwB,CAE7C,IAAK,GADDC,GAAQT,EAAO7tE,GAAMkD,EAAMmrE,SACtBxvE,EAAI,EAAGA,EAAIyvE,EAAM5vE,OAAQG,IACTF,SAAnB2vE,EAAMzvE,GAAG02B,MACX+4C,EAAMzvE,GAAGoD,GAAGiB,GAEa,GAAlBorE,EAAMzvE,GAAG02B,OAAmC,GAAlBryB,EAAM8/D,SACvCsL,EAAMzvE,GAAGoD,GAAGiB,GAEa,GAAlBorE,EAAMzvE,GAAG02B,OAAoC,GAAlBryB,EAAM8/D,UACxCsL,EAAMzvE,GAAGoD,GAAGiB,EAIM,IAAlBD,GACFC,EAAMD,kBA4FZ,OAtFA2qE,GAAiBl2B,KAAO,SAAS31C,EAAKJ,EAAU3B,GAI9C,GAHarB,SAATqB,IACFA,EAAO,WAEUrB,SAAfqvE,EAAMjsE,GACR,KAAM,IAAI3C,OAAM,oBAAsB2C,EAEFpD,UAAlCkvE,EAAO7tE,GAAMguE,EAAMjsE,GAAKkO,QAC1B49D,EAAO7tE,GAAMguE,EAAMjsE,GAAKkO,UAE1B49D,EAAO7tE,GAAMguE,EAAMjsE,GAAKkO,MAAMrQ,MAAMqC,GAAGN,EAAU4zB,MAAMy4C,EAAMjsE,GAAKwzB,SAKpEq4C,EAAiBW,QAAU,SAAS5sE,EAAU3B,GAC/BrB,SAATqB,IACFA,EAAO,UAET,KAAK,GAAI+B,KAAOisE,GACVA,EAAM5vE,eAAe2D,IACvB6rE,EAAiBl2B,KAAK31C,EAAIJ,EAAS3B,IAMzC4tE,EAAiBY,OAAS,SAAStrE,GACjC,IAAK,GAAInB,KAAOisE,GACd,GAAIA,EAAM5vE,eAAe2D,GAAM,CAC7B,GAAsB,GAAlBmB,EAAM8/D,UAAwC,GAApBgL,EAAMjsE,GAAKwzB,OAAiBryB,EAAMmrE,SAAWL,EAAMjsE,GAAKkO,KACpF,MAAOlO,EAEJ,IAAsB,GAAlBmB,EAAM8/D,UAAyC,GAApBgL,EAAMjsE,GAAKwzB,OAAkBryB,EAAMmrE,SAAWL,EAAMjsE,GAAKkO,KAC3F,MAAOlO,EAEJ,IAAImB,EAAMmrE,SAAWL,EAAMjsE,GAAKkO,MAAe,SAAPlO,EAC3C,MAAOA,GAIb,MAAO,wCAIT6rE,EAAiBD,OAAS,SAAS5rE,EAAKJ,EAAU3B,GAIhD,GAHarB,SAATqB,IACFA,EAAO,WAEUrB,SAAfqvE,EAAMjsE,GACR,KAAM,IAAI3C,OAAM,oBAAsB2C,EAExC,IAAiBpD,SAAbgD,EAAwB,CAC1B,GAAI8sE,MACAH,EAAQT,EAAO7tE,GAAMguE,EAAMjsE,GAAKkO,KACpC,IAActR,SAAV2vE,EACF,IAAK,GAAIzvE,GAAI,EAAGA,EAAIyvE,EAAM5vE,OAAQG,KAC1ByvE,EAAMzvE,GAAGoD,IAAMN,GAAY2sE,EAAMzvE,GAAG02B,OAASy4C,EAAMjsE,GAAKwzB,QAC5Dk5C,EAAY7uE,KAAKiuE,EAAO7tE,GAAMguE,EAAMjsE,GAAKkO,MAAMpR,GAIrDgvE,GAAO7tE,GAAMguE,EAAMjsE,GAAKkO,MAAQw+D,MAGhCZ,GAAO7tE,GAAMguE,EAAMjsE,GAAKkO,UAK5B29D,EAAiB7f,MAAQ,WACvB8f,GAAUC,WAAYC,WAIxBH,EAAiBr2C,QAAU,WACzBs2C,GAAUC,WAAYC,UACtBvxC,EAAUz5B,oBAAoB,UAAWmrE,GAAM,GAC/C1xC,EAAUz5B,oBAAoB,QAASqrE,GAAI,IAI7C5xC,EAAUj6B,iBAAiB,UAAU2rE,GAAK,GAC1C1xC,EAAUj6B,iBAAiB,QAAQ6rE,GAAG,GAG/BR,EAGT,MAAOvxE,MAQL,SAASpE,EAAQD,EAASM,GAqB9B,QAASwC,GAAWy8C,EAAMt7C,GACxB7D,KAAKm/C,KAAOA,EAGZn/C,KAAK2+C,gBACH56C,OAAQA,EACR2T,QAASA,EACTpE,OAAQ,KACRjT,GAAIkG,OACJk6D,MAAOl6D,QAETvG,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBAEhC96C,GAAWA,EAAQmnB,KACrBhrB,KAAKmjD,WAAat/C,EAAQmnB,KAE1BhrB,KAAKmjD,WAAa,GAAI99C,MAGxBrF,KAAKs2E,eAELt2E,KAAKg/B,WAAWn7B,GAGhB7D,KAAKk/C,UAzCP,GAAIl7C,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6D,EAAS7D,EAAoB,GAC7BwX,EAAUxX,EAAoB,GAwClCwC,GAAWuQ,UAAY,GAAIzQ,GAS3BE,EAAWuQ,UAAU+rB,WAAa,SAAUn7B,GACtCA,GAEFlD,EAAKiG,iBAAiB,SAAU,SAAU,UAAW,MAAO5G,KAAK6D,QAASA,IAQ9EnB,EAAWuQ,UAAUisC,QAAU,WAC7B,GAAI9C,GAAMhf,SAASM,cAAc,MACjC0e,GAAI,eAAiBp8C,KACrBo8C,EAAIrzC,UAAY,oBAAsB/I,KAAK6D,QAAQxD,IAAM,IACzD+7C,EAAIttC,MAAM2/B,SAAW,WACrB2N,EAAIttC,MAAMjG,IAAM,MAChBuzC,EAAIttC,MAAM2vB,OAAS,OACnBz+B,KAAKo8C,IAAMA,CAEX,IAAIm6B,GAAOn5C,SAASM,cAAc,MAClC64C,GAAKznE,MAAM2/B,SAAW,WACtB8nC,EAAKznE,MAAMjG,IAAM,MACjB0tE,EAAKznE,MAAMnG,KAAO,QAClB4tE,EAAKznE,MAAM2vB,OAAS,OACpB83C,EAAKznE,MAAM0vB,MAAQ,OACnB4d,EAAI9e,YAAYi5C,GAGhBv2E,KAAKmkD,OAAS,GAAIngD,GAAOuyE,GACzBv2E,KAAKmkD,OAAO/kB,GAAG,WAAYp/B,KAAKy4D,aAAanZ,KAAKt/C,OAClDA,KAAKmkD,OAAO/kB,GAAG,UAAWp/B,KAAK04D,QAAQpZ,KAAKt/C,OAC5CA,KAAKmkD,OAAO/kB,GAAG,SAAUp/B,KAAK24D,WAAWrZ,KAAKt/C,OAC9CA,KAAKmkD,OAAOntB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,MAMxDhoB,EAAWuQ,UAAUksB,QAAU,WAC7Bn/B,KAAK0lE,OAEL1lE,KAAKmkD,OAAOhlB,UACZn/B,KAAKmkD,OAAS,KAEdnkD,KAAKm/C,KAAO,MAOdz8C,EAAWuQ,UAAUw5B,OAAS,WAC5B,GAAIlhC,GAASvL,KAAKm/C,KAAKxF,IAAI8kB,kBACvBz+D,MAAKo8C,IAAI/wC,YAAcE,IAErBvL,KAAKo8C,IAAI/wC,YACXrL,KAAKo8C,IAAI/wC,WAAW3G,YAAY1E,KAAKo8C,KAEvC7wC,EAAO+xB,YAAYt9B,KAAKo8C,KAG1B,IAAIxe,GAAI59B,KAAKm/C,KAAKx+C,KAAK++C,SAAS1/C,KAAKmjD,YAEjC7vC,EAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC1CA,KACEtT,KAAKw2E,SACR72D,QAAQu+B,IAAI,6BAAgCl+C,KAAK6D,QAAQyP,OAAS,sEAClEtT,KAAKw2E,QAAS,GAEhBljE,EAAStT,KAAK6D,QAAQ6T,QAAY,GAGpC,IAAI+oD,GAAQzgE,KAAK6D,QAAQ48D,KAUzB,OARcl6D,UAAVk6D,IACFA,EAAQntD,EAAO0X,KAAO,KAAOhrB,KAAK6D,QAAQE,OAAO/D,KAAKmjD,YAAY9vC,OAAO,+BACzEotD,EAAQA,EAAMpwC,OAAO,GAAGa,cAAgBuvC,EAAMgW,UAAU,IAG1Dz2E,KAAKo8C,IAAIttC,MAAMnG,KAAOi1B,EAAI,KAC1B59B,KAAKo8C,IAAIqkB,MAAQA,GAEV,GAMT/9D,EAAWuQ,UAAUyyD,KAAO,WAEtB1lE,KAAKo8C,IAAI/wC,YACXrL,KAAKo8C,IAAI/wC,WAAW3G,YAAY1E,KAAKo8C,MAQzC15C,EAAWuQ,UAAUqtD,cAAgB,SAAUt1C,GAC7ChrB,KAAKmjD,WAAaxiD,EAAKgH,QAAQqjB,EAAM,QACrChrB,KAAKysC,UAOP/pC,EAAWuQ,UAAUstD,cAAgB,WACnC,MAAO,IAAIl7D,MAAKrF,KAAKmjD,WAAWr7C,YAOlCpF,EAAWuQ,UAAUytD,eAAiB,SAAUD,GAC9CzgE,KAAK6D,QAAQ48D,MAAQA,GAQvB/9D,EAAWuQ,UAAUwlD,aAAe,SAAU3tD,GAC5C9K,KAAKs2E,YAAY3c,UAAW,EAC5B35D,KAAKs2E,YAAYnzB,WAAanjD,KAAKmjD,WAEnCr4C,EAAM05C,mBAQR9hD,EAAWuQ,UAAUylD,QAAU,SAAU5tD,GACvC,GAAK9K,KAAKs2E,YAAY3c,SAAtB,CAEA,GAAI/7B,GAAI59B,KAAKm/C,KAAKx+C,KAAK++C,SAAS1/C,KAAKs2E,YAAYnzB,YAAcr4C,EAAMigD,OACjE//B,EAAOhrB,KAAKm/C,KAAKx+C,KAAKm/C,OAAOliB,EAEjC59B,MAAKsgE,cAAct1C,GAGnBhrB,KAAKm/C,KAAKE,QAAQzH,KAAK,cACrBv3C,GAAIL,KAAK6D,QAAQxD,GACjB2qB,KAAM,GAAI3lB,MAAKrF,KAAKmjD,WAAWr7C,aAGjCgD,EAAM05C,oBAQR9hD,EAAWuQ,UAAU0lD,WAAa,SAAU7tD,GACrC9K,KAAKs2E,YAAY3c,WAGtB35D,KAAKm/C,KAAKE,QAAQzH,KAAK,eACrBv3C,GAAIL,KAAK6D,QAAQxD,GACjB2qB,KAAM,GAAI3lB,MAAKrF,KAAKmjD,WAAWr7C,aAGjCgD,EAAM05C,oBASR9hD,EAAW0gD,qBAAuB,SAAUt4C,GAE1C,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOlF,eAAe,eACxB,MAAOkF,GAAO,cAEhBA,GAASA,EAAOG,WAGlB,MAAO,OAGTxL,EAAOD,QAAU8C,GAIb,SAAS7C,EAAQD,GAKrBA,EAAY,IACV29D,QAAS,UACTvyC,KAAM,QAERprB,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACV29D,QAAS,UACTvyC,KAAM,QAERprB,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,IAI3B,SAASC,EAAQD,EAASM,GAiB9B,QAASuC,GAAY08C,EAAMt7C,GACzB7D,KAAKm/C,KAAOA,EAGZn/C,KAAK2+C,gBACH+3B,iBAAiB,EAEjB3yE,OAAQA,EACR2T,QAASA,EACTpE,OAAQ,MAEVtT,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBACpC3+C,KAAKwnB,OAAS,EAEdxnB,KAAKk/C,UAELl/C,KAAKg/B,WAAWn7B,GA7BlB,GAAIlD,GAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6D,EAAS7D,EAAoB,GAC7BwX,EAAUxX,EAAoB,GA6BlCuC,GAAYwQ,UAAY,GAAIzQ,GAM5BC,EAAYwQ,UAAUisC,QAAU,WAC9B,GAAI9C,GAAMhf,SAASM,cAAc,MACjC0e,GAAIrzC,UAAY,mBAChBqzC,EAAIttC,MAAM2/B,SAAW,WACrB2N,EAAIttC,MAAMjG,IAAM,MAChBuzC,EAAIttC,MAAM2vB,OAAS,OAEnBz+B,KAAKo8C,IAAMA,GAMb35C,EAAYwQ,UAAUksB,QAAU,WAC9Bn/B,KAAK6D,QAAQ6yE,iBAAkB,EAC/B12E,KAAKysC,SAELzsC,KAAKm/C,KAAO,MAQd18C,EAAYwQ,UAAU+rB,WAAa,SAAUn7B,GACvCA,GAEFlD,EAAKiG,iBAAiB,kBAAmB,SAAU,SAAU,WAAY5G,KAAK6D,QAASA,IAQ3FpB,EAAYwQ,UAAUw5B,OAAS,WAC7B,GAAIzsC,KAAK6D,QAAQ6yE,gBAAiB,CAChC,GAAInrE,GAASvL,KAAKm/C,KAAKxF,IAAI8kB,kBACvBz+D,MAAKo8C,IAAI/wC,YAAcE,IAErBvL,KAAKo8C,IAAI/wC,YACXrL,KAAKo8C,IAAI/wC,WAAW3G,YAAY1E,KAAKo8C,KAEvC7wC,EAAO+xB,YAAYt9B,KAAKo8C,KAExBp8C,KAAK2yC,QAGP,IAAI1vB,GAAMjjB,KAAK6D,QAAQE,QAAO,GAAIsB,OAAOyC,UAAY9H,KAAKwnB,QACtDoW,EAAI59B,KAAKm/C,KAAKx+C,KAAK++C,SAASz8B,GAE5B3P,EAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC1CA,KACEtT,KAAKw2E,SACR72D,QAAQu+B,IAAI,6BAAgCl+C,KAAK6D,QAAQyP,OAAS,kEAClEtT,KAAKw2E,QAAS,GAEhBljE,EAAStT,KAAK6D,QAAQ6T,QAAY,GAEpC,IAAI+oD,GAAQntD,EAAOiqD,QAAU,IAAMjqD,EAAO0X,KAAO,KAAO/H,EAAI5P,OAAO,8BACnEotD,GAAQA,EAAMpwC,OAAO,GAAGa,cAAgBuvC,EAAMgW,UAAU,GAExDz2E,KAAKo8C,IAAIttC,MAAMnG,KAAOi1B,EAAI,KAC1B59B,KAAKo8C,IAAIqkB,MAAQA,MAGbzgE,MAAKo8C,IAAI/wC,YACXrL,KAAKo8C,IAAI/wC,WAAW3G,YAAY1E,KAAKo8C,KAEvCp8C,KAAK8vC,MAGP,QAAO,GAMTrtC,EAAYwQ,UAAU0/B,MAAQ,WAG5B,QAASzS,KACPF,EAAG8P,MAGH,IAAI9qC,GAAQg7B,EAAGmf,KAAKe,MAAMia,WAAWn6B,EAAGmf,KAAKC,SAAShJ,OAAO5X,OAAOx5B,MAChE+3C,EAAW,EAAI/3C,EAAQ,EACZ,IAAX+3C,IAAeA,EAAW,IAC1BA,EAAW,MAAMA,EAAW,KAEhC/c,EAAGyM,SAGHzM,EAAG22C,iBAAmBzsE,WAAWg2B,EAAQ6c,GAd3C,GAAI/c,GAAKhgC,IAiBTkgC,MAMFz9B,EAAYwQ,UAAU68B,KAAO,WACGvpC,SAA1BvG,KAAK22E,mBACPrzC,aAAatjC,KAAK22E,wBACX32E,MAAK22E,mBAUhBl0E,EAAYwQ,UAAU2uD,eAAiB,SAAU52C,GAC/C,GAAIrb,GAAIhP,EAAKgH,QAAQqjB,EAAM,QAAQljB,UAC/Bmb,GAAM,GAAI5d,OAAOyC,SACrB9H,MAAKwnB,OAAS7X,EAAIsT,EAClBjjB,KAAKysC,UAOPhqC,EAAYwQ,UAAU4uD,eAAiB,WACrC,MAAO,IAAIx8D,OAAK,GAAIA,OAAOyC,UAAY9H,KAAKwnB,SAG9C3nB,EAAOD,QAAU6C,GAIb,SAAS5C,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBU,EAAez3E,EAAoB,IAEnC03E,EAAgBhB,EAAuBe,GAgBvCh3E,EAAOT,EAAoB,GAE3BghD,EAAe,WACjB,QAASA,GAAa22B,EAAcC,EAAkBz2B,GACpD,GAAI02B,GAAa1xE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAErF0wE,GAAgB/2E,KAAMkhD,GAEtBlhD,KAAKuL,OAASssE,EACd73E,KAAKg4E,kBACLh4E,KAAKokC,UAAY0zC,EACjB93E,KAAKi4E,eAAgB,EAErBj4E,KAAK6D,WACL7D,KAAKk4E,aAAc,EACnBl4E,KAAKm4E,aAAe,EACpBn4E,KAAK2+C,gBACH9tC,SAAS,EACT2uB,QAAQ,EACR4E,UAAW79B,OACX6xE,YAAY,GAEdz3E,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAKqhD,iBAAmBA,EACxBrhD,KAAKq4E,iBACLr4E,KAAKs4E,eACLt4E,KAAKu4E,YACLv4E,KAAKw4E,WAAa,EAClBx4E,KAAKy4E,gBACLz4E,KAAK04E,YAAc,GAAId,GAAc,WAAWG,GAChD/3E,KAAKilD,QAAU1+C,OA6tBjB,MAntBA4wE,GAAaj2B,IACXv3C,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAEzB7D,KAAKy4E,gBACLz4E,KAAK24E,cAEL,IAAI9nE,IAAU,CACS,iBAAZhN,GACT7D,KAAK6D,QAAQ27B,OAAS37B,EACbA,YAAmBiD,OAC5B9G,KAAK6D,QAAQ27B,OAAS37B,EAAQqF,OACF,gBAAZrF,IACU0C,SAAtB1C,EAAQugC,YACVpkC,KAAK6D,QAAQugC,UAAYvgC,EAAQugC,WAEZ79B,SAAnB1C,EAAQ27B,SACVx/B,KAAK6D,QAAQ27B,OAAS37B,EAAQ27B,QAELj5B,SAAvB1C,EAAQu0E,aACVp4E,KAAK6D,QAAQu0E,WAAav0E,EAAQu0E,YAEZ7xE,SAApB1C,EAAQgN,UACVA,EAAUhN,EAAQgN,UAEQ,iBAAZhN,IAChB7D,KAAK6D,QAAQ27B,QAAS,EACtB3uB,EAAUhN,GACkB,kBAAZA,KAChB7D,KAAK6D,QAAQ27B,OAAS37B,EACtBgN,GAAU,GAER7Q,KAAK6D,QAAQ27B,UAAW,IAC1B3uB,GAAU,GAGZ7Q,KAAK6D,QAAQgN,QAAUA,EAEzB7Q,KAAK44E,YAGPjvE,IAAK,mBACL5E,MAAO,SAA0BszE,GAC/Br4E,KAAKq4E,cAAgBA,EACjBr4E,KAAK6D,QAAQgN,WAAY,IAC3B7Q,KAAK44E,SAC0BryE,SAA3BvG,KAAK6D,QAAQugC,YACfpkC,KAAKokC,UAAYpkC,KAAK6D,QAAQugC,WAEhCpkC,KAAKk/C,cASTv1C,IAAK,UACL5E,MAAO,WACL,GAAIk9C,GAAQjiD,IAEZA,MAAK44E,SACL54E,KAAKg4E,iBAEL,IAAIx4C,GAASx/B,KAAK6D,QAAQ27B,OACtBsM,EAAU,EACV4W,GAAO,CACX,KAAK,GAAIj3C,KAAUzL,MAAKqhD,iBAClBrhD,KAAKqhD,iBAAiBr7C,eAAeyF,KACvCzL,KAAKi4E,eAAgB,EACrBv1B,GAAO,EACe,kBAAXljB,IACTkjB,EAAOljB,EAAO/zB,MACdi3C,EAAOA,GAAQ1iD,KAAK64E,cAAc74E,KAAKqhD,iBAAiB51C,IAAUA,IAAS,KAClE+zB,KAAW,GAAmC,KAA3BA,EAAOj4B,QAAQkE,MAC3Ci3C,GAAO,GAGLA,KAAS,IACX1iD,KAAKi4E,eAAgB,EAGjBnsC,EAAU,GACZ9rC,KAAK84E,cAGP94E,KAAK+4E,YAAYttE,GAGjBzL,KAAK64E,cAAc74E,KAAKqhD,iBAAiB51C,IAAUA,KAErDqgC,IAIA9rC,MAAK6D,QAAQu0E,cAAe,IAC9B,WACE,GAAIY,GAAiB57C,SAASM,cAAc,MAC5Cs7C,GAAejwE,UAAY,sCAC3BiwE,EAAenqC,UAAY,mBAC3BmqC,EAAez8B,QAAU,WACvB0F,EAAMg3B,iBAERD,EAAeE,YAAc,WAC3BF,EAAejwE,UAAY,6CAE7BiwE,EAAeG,WAAa,WAC1BH,EAAejwE,UAAY,uCAG7Bk5C,EAAMm3B,iBAAmBh8C,SAASM,cAAc,OAChDukB,EAAMm3B,iBAAiBrwE,UAAY,gDAEnCk5C,EAAMq2B,YAAY9wE,KAAKy6C,EAAMm3B,kBAC7Bn3B,EAAMq2B,YAAY9wE,KAAKwxE,MAI3Bh5E,KAAKq5E,WASP1vE,IAAK,QACL5E,MAAO,WACL/E,KAAKilD,QAAU7nB,SAASM,cAAc,OACtC19B,KAAKilD,QAAQl8C,UAAY,4BACzB/I,KAAKokC,UAAU9G,YAAYt9B,KAAKilD,QAChC,KAAK,GAAIx+C,GAAI,EAAGA,EAAIzG,KAAKs4E,YAAYhyE,OAAQG,IAC3CzG,KAAKilD,QAAQ3nB,YAAYt9B,KAAKs4E,YAAY7xE,GAG5CzG,MAAKs5E,wBAQP3vE,IAAK,SACL5E,MAAO,WACL,IAAK,GAAI0B,GAAI,EAAGA,EAAIzG,KAAKs4E,YAAYhyE,OAAQG,IAC3CzG,KAAKilD,QAAQvgD,YAAY1E,KAAKs4E,YAAY7xE,GAGvBF,UAAjBvG,KAAKilD,UACPjlD,KAAKokC,UAAU1/B,YAAY1E,KAAKilD,SAChCjlD,KAAKilD,QAAU1+C,QAEjBvG,KAAKs4E,eAELt4E,KAAK24E,kBAUPhvE,IAAK,YACL5E,MAAO,SAAmBw0E,GAExB,IAAK,GADDjvD,GAAOtqB,KAAKq4E,cACP5xE,EAAI,EAAGA,EAAI8yE,EAAKjzE,OAAQG,IAAK,CACpC,GAAsBF,SAAlB+jB,EAAKivD,EAAK9yE,IAEP,CACL6jB,EAAO/jB,MACP,OAHA+jB,EAAOA,EAAKivD,EAAK9yE,IAMrB,MAAO6jB,MAUT3gB,IAAK,YACL5E,MAAO,SAAmBw0E,GACxB,GAAIC,GAAanzE,UACbozE,EAASz5E,IAEb,IAAIA,KAAKi4E,iBAAkB,EAAM,CAC/B,GAAIyB,GAAMpB,EAAaqB,EAEnBC,EAAQ,WACV,GAAIpoE,GAAO4rB,SAASM,cAAc,MAGlC,KAFAlsB,EAAKzI,UAAY,iDAAmDwwE,EAAKjzE,OAEpEozE,EAAOF,EAAWlzE,OAAQgyE,EAAcxxE,MAAM4yE,EAAO,EAAIA,EAAO,EAAI,GAAIC,EAAO,EAAUD,EAAPC,EAAaA,IAClGrB,EAAYqB,EAAO,GAAKH,EAAWG,EAOrC,OAJArB,GAAYhvE,QAAQ,SAAUc,GAC5BoH,EAAK8rB,YAAYlzB,KAEnBqvE,EAAOnB,YAAY9wE,KAAKgK,IAEtB5D,EAAG6rE,EAAOnB,YAAYhyE,UAI1B,IAAqB,gBAAVszE,GAAoB,MAAOA,GAAMhsE,EAE9C,MAAO,MASTjE,IAAK,cACL5E,MAAO,SAAqByS,GAC1B,GAAIqiE,GAAMz8C,SAASM,cAAc,MACjCm8C,GAAI9wE,UAAY,sCAChB8wE,EAAIhrC,UAAYr3B,EAChBxX,KAAK84E,aAAce,MAYrBlwE,IAAK,aACL5E,MAAO,SAAoByS,EAAM+hE,GAC/B,GAAIO,GAAczzE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEtFwzE,EAAMz8C,SAASM,cAAc,MAOjC,OANAm8C,GAAI9wE,UAAY,kDAAoDwwE,EAAKjzE,OACrEwzE,KAAgB,EAClBD,EAAIhrC,UAAY,SAAWr3B,EAAO,YAElCqiE,EAAIhrC,UAAYr3B,EAAO,IAElBqiE,KAWTlwE,IAAK,gBACL5E,MAAO,SAAuBqD,EAAKrD,EAAOw0E,GACxC,GAAI3T,GAASxoC,SAASM,cAAc,SACpCkoC,GAAO78D,UAAY,qCACnB,IAAIgxE,GAAgB,CACNxzE,UAAVxB,GACyB,KAAvBqD,EAAIb,QAAQxC,KACdg1E,EAAgB3xE,EAAIb,QAAQxC,GAIhC,KAAK,GAAI0B,GAAI,EAAGA,EAAI2B,EAAI9B,OAAQG,IAAK,CACnC,GAAIgF,GAAS2xB,SAASM,cAAc,SACpCjyB,GAAO1G,MAAQqD,EAAI3B,GACfA,IAAMszE,IACRtuE,EAAO67D,SAAW,YAEpB77D,EAAOojC,UAAYzmC,EAAI3B,GACvBm/D,EAAOtoC,YAAY7xB,GAGrB,GAAIu0B,GAAKhgC,IACT4lE,GAAOxyB,SAAW,WAChBpT,EAAGg6C,QAAQh6E,KAAK+E,MAAOw0E,GAGzB,IAAIr7C,GAAQl+B,KAAKi6E,WAAWV,EAAKA,EAAKjzE,OAAS,GAAIizE,EACnDv5E,MAAK84E,UAAUS,EAAMr7C,EAAO0nC,MAW9Bj8D,IAAK,aACL5E,MAAO,SAAoBqD,EAAKrD,EAAOw0E,GACrC,GAAI5tE,GAAevD,EAAI,GACnBxD,EAAMwD,EAAI,GACVvD,EAAMuD,EAAI,GACVsqC,EAAOtqC,EAAI,GACX83C,EAAQ9iB,SAASM,cAAc,QACnCwiB,GAAMn3C,UAAY,oCAClB,KACEm3C,EAAMt4C,KAAO,QACbs4C,EAAMt7C,IAAMA,EACZs7C,EAAMr7C,IAAMA,EACZ,MAAOq1E,IACTh6B,EAAMxN,KAAOA,CAGb,IAAIynC,GAAc,GACdC,EAAa,CAEjB,IAAc7zE,SAAVxB,EAAqB,CACvB,GAAIs9C,GAAS,GACD,GAARt9C,GAA8BH,EAAjBG,EAAQs9C,GACvBnC,EAAMt7C,IAAMK,KAAKoR,KAAKtR,EAAQs9C,GAC9B+3B,EAAal6B,EAAMt7C,IACnBu1E,EAAc,mBACYv1E,EAAjBG,EAAQs9C,IACjBnC,EAAMt7C,IAAMK,KAAKoR,KAAKtR,EAAQs9C,GAC9B+3B,EAAal6B,EAAMt7C,IACnBu1E,EAAc,mBAEZp1E,EAAQs9C,EAASx9C,GAAe,IAARA,IAC1Bq7C,EAAMr7C,IAAMI,KAAKoR,KAAKtR,EAAQs9C,GAC9B+3B,EAAal6B,EAAMr7C,IACnBs1E,EAAc,mBAEhBj6B,EAAMn7C,MAAQA,MAEdm7C,GAAMn7C,MAAQ4G,CAGhB,IAAIjI,GAAQ05B,SAASM,cAAc,QACnCh6B,GAAMqF,UAAY,0CAClBrF,EAAMqB,MAAQm7C,EAAMn7C,KAEpB,IAAIi7B,GAAKhgC,IACTkgD,GAAM9M,SAAW,WACf1vC,EAAMqB,MAAQ/E,KAAK+E,MAAMi7B,EAAGg6C,QAAQ31E,OAAOrE,KAAK+E,OAAQw0E,IAE1Dr5B,EAAMm6B,QAAU,WACd32E,EAAMqB,MAAQ/E,KAAK+E,MAGrB,IAAIm5B,GAAQl+B,KAAKi6E,WAAWV,EAAKA,EAAKjzE,OAAS,GAAIizE,GAC/C1K,EAAY7uE,KAAK84E,UAAUS,EAAMr7C,EAAOgiB,EAAOx8C,EAG/B,MAAhBy2E,GAAsBn6E,KAAKy4E,aAAa5J,KAAeuL,IACzDp6E,KAAKy4E,aAAa5J,GAAauL,EAC/Bp6E,KAAKs6E,YAAYH,EAAatL,OAWlCllE,IAAK,cACL5E,MAAO,SAAqBub,EAAQlX,GAClC,GAAImxE,GAASv6E,IAEb,IAAIA,KAAKk4E,eAAgB,GAAQl4E,KAAKi4E,iBAAkB,GAAQj4E,KAAKm4E,aAAen4E,KAAKw4E,WAAY,CACnG,GAAIqB,GAAMz8C,SAASM,cAAc,MACjCm8C,GAAIx5E,GAAK,0BACTw5E,EAAI9wE,UAAY,0BAChB8wE,EAAIhrC,UAAYvuB,EAChBu5D,EAAIt9B,QAAU,WACZg+B,EAAO5B,gBAET34E,KAAKm4E,cAAgB,EACrBn4E,KAAKu4E,UAAaiC,KAAMX,EAAKzwE,MAAOA,OASxCO,IAAK,eACL5E,MAAO,WACsBwB,SAAvBvG,KAAKu4E,SAASiC,OAChBx6E,KAAKu4E,SAASiC,KAAKnvE,WAAW3G,YAAY1E,KAAKu4E,SAASiC,MACxDl3C,aAAatjC,KAAKu4E,SAASkC,aAC3Bn3C,aAAatjC,KAAKu4E,SAASmC,eAC3B16E,KAAKu4E,gBAST5uE,IAAK,qBACL5E,MAAO,WACL,GAAI41E,GAAS36E,IAEb,IAA2BuG,SAAvBvG,KAAKu4E,SAASiC,KAAoB,CACpC,GAAII,GAAuB56E,KAAKs4E,YAAYt4E,KAAKu4E,SAASnvE,OACtDs1B,EAAOk8C,EAAqBlyE,uBAChC1I,MAAKu4E,SAASiC,KAAK1rE,MAAMnG,KAAO+1B,EAAK/1B,KAAO,KAC5C3I,KAAKu4E,SAASiC,KAAK1rE,MAAMjG,IAAM61B,EAAK71B,IAAM,GAAK,KAC/Cu0B,SAAS+hB,KAAK7hB,YAAYt9B,KAAKu4E,SAASiC,MACxCx6E,KAAKu4E,SAASkC,YAAcvwE,WAAW,WACrCywE,EAAOpC,SAASiC,KAAK1rE,MAAMpC,QAAU,GACpC,MACH1M,KAAKu4E,SAASmC,cAAgBxwE,WAAW,WACvCywE,EAAOhC,gBACN,UAYPhvE,IAAK,gBACL5E,MAAO,SAAuB4G,EAAc5G,EAAOw0E,GACjD,GAAIsB,GAAWz9C,SAASM,cAAc,QACtCm9C,GAASjzE,KAAO,WAChBizE,EAAS9xE,UAAY,wCACrB8xE,EAASC,QAAUnvE,EACLpF,SAAVxB,IACF81E,EAASC,QAAU/1E,EACfA,IAAU4G,IACgB,gBAAjBA,GACL5G,IAAU4G,EAAakF,SACzB7Q,KAAKg4E,eAAexwE;AAAO+xE,KAAMA,EAAMx0E,MAAOA,IAGhD/E,KAAKg4E,eAAexwE,MAAO+xE,KAAMA,EAAMx0E,MAAOA,KAKpD,IAAIi7B,GAAKhgC,IACT66E,GAASznC,SAAW,WAClBpT,EAAGg6C,QAAQh6E,KAAK86E,QAASvB,GAG3B,IAAIr7C,GAAQl+B,KAAKi6E,WAAWV,EAAKA,EAAKjzE,OAAS,GAAIizE,EACnDv5E,MAAK84E,UAAUS,EAAMr7C,EAAO28C,MAW9BlxE,IAAK,iBACL5E,MAAO,SAAwB4G,EAAc5G,EAAOw0E,GAClD,GAAIsB,GAAWz9C,SAASM,cAAc,QACtCm9C,GAASjzE,KAAO,OAChBizE,EAAS9xE,UAAY,oCACrB8xE,EAAS91E,MAAQA,EACbA,IAAU4G,GACZ3L,KAAKg4E,eAAexwE,MAAO+xE,KAAMA,EAAMx0E,MAAOA,GAGhD,IAAIi7B,GAAKhgC,IACT66E,GAASznC,SAAW,WAClBpT,EAAGg6C,QAAQh6E,KAAK+E,MAAOw0E,GAGzB,IAAIr7C,GAAQl+B,KAAKi6E,WAAWV,EAAKA,EAAKjzE,OAAS,GAAIizE,EACnDv5E,MAAK84E,UAAUS,EAAMr7C,EAAO28C,MAW9BlxE,IAAK,kBACL5E,MAAO,SAAyBqD,EAAKrD,EAAOw0E,GAC1C,GAAIwB,GAAS/6E,KAETg7E,EAAe5yE,EAAI,GACnByxE,EAAMz8C,SAASM,cAAc,MACjC34B,GAAkBwB,SAAVxB,EAAsBi2E,EAAej2E,EAE/B,SAAVA,GACF80E,EAAI9wE,UAAY,0CAChB8wE,EAAI/qE,MAAM87B,gBAAkB7lC,GAE5B80E,EAAI9wE,UAAY,+CAGlBhE,EAAkBwB,SAAVxB,EAAsBi2E,EAAej2E,EAC7C80E,EAAIt9B,QAAU,WACZw+B,EAAOE,iBAAiBl2E,EAAO80E,EAAKN,GAGtC,IAAIr7C,GAAQl+B,KAAKi6E,WAAWV,EAAKA,EAAKjzE,OAAS,GAAIizE,EACnDv5E,MAAK84E,UAAUS,EAAMr7C,EAAO27C,MAY9BlwE,IAAK,mBACL5E,MAAO,SAA0BA,EAAO80E,EAAKN,GAC3C,GAAI2B,GAASl7E,IAGb65E,GAAIt9B,QAAU,aAEdv8C,KAAK04E,YAAYyC,SAAStB,GAC1B75E,KAAK04E,YAAYh2B,OAEjB1iD,KAAK04E,YAAY0C,SAASr2E,GAC1B/E,KAAK04E,YAAY2C,kBAAkB,SAAU5uE,GAC3C,GAAI6uE,GAAc,QAAU7uE,EAAML,EAAI,IAAMK,EAAMJ,EAAI,IAAMI,EAAMtG,EAAI,IAAMsG,EAAMvG,EAAI,GACtF2zE,GAAI/qE,MAAM87B,gBAAkB0wC,EAC5BJ,EAAOlB,QAAQsB,EAAa/B,KAI9Bv5E,KAAK04E,YAAY6C,iBAAiB,WAChC1B,EAAIt9B,QAAU,WACZ2+B,EAAOD,iBAAiBl2E,EAAO80E,EAAKN,SAY1C5vE,IAAK,gBACL5E,MAAO,SAAuBe,GAC5B,GAAIyzE,GAAOlzE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAC5Em1E,EAAYn1E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFq8C,GAAO,EACPljB,EAASx/B,KAAK6D,QAAQ27B,OACtBi8C,GAAe,CACnB,KAAK,GAAIC,KAAU51E,GACjB,GAAIA,EAAIE,eAAe01E,GAAS,CAC9Bh5B,GAAO,CACP,IAAIlxC,GAAO1L,EAAI41E,GACXC,EAAUh7E,EAAKwH,mBAAmBoxE,EAAMmC,EAc5C,IAbsB,kBAAXl8C,KACTkjB,EAAOljB,EAAOk8C,EAAQnC,GAGlB72B,KAAS,KACLlxC,YAAgB1K,SAA0B,gBAAT0K,IAAqC,iBAATA,IAAsBA,YAAgBpK,UACvGpH,KAAKi4E,eAAgB,EACrBv1B,EAAO1iD,KAAK64E,cAAcrnE,EAAMmqE,GAAS,GACzC37E,KAAKi4E,cAAgBuD,KAAc,IAKrC94B,KAAS,EAAO,CAClB+4B,GAAe,CACf,IAAI12E,GAAQ/E,KAAK47E,UAAUD,EAE3B,IAAInqE,YAAgB1K,OAClB9G,KAAK67E,aAAarqE,EAAMzM,EAAO42E,OAC1B,IAAoB,gBAATnqE,GAChBxR,KAAK87E,eAAetqE,EAAMzM,EAAO42E,OAC5B,IAAoB,iBAATnqE,GAChBxR,KAAK+7E,cAAcvqE,EAAMzM,EAAO42E,OAC3B,IAAInqE,YAAgBpK,QAAQ,CAEjC,GAAI40E,IAAO,CAOX,IANgC,KAA5BzC,EAAKhyE,QAAQ,YACXvH,KAAKq4E,cAAc4D,QAAQC,SAAWR,IACxCM,GAAO,GAIPA,KAAS,EAEX,GAAqBz1E,SAAjBiL,EAAKX,QAAuB,CAC9B,GAAIsrE,GAAcx7E,EAAKwH,mBAAmBwzE,EAAS,WAC/CS,EAAep8E,KAAK47E,UAAUO,EAClC,IAAIC,KAAiB,EAAM,CACzB,GAAIl+C,GAAQl+B,KAAKi6E,WAAWyB,EAAQC,GAAS,EAC7C37E,MAAK84E,UAAU6C,EAASz9C,GACxBu9C,EAAez7E,KAAK64E,cAAcrnE,EAAMmqE,IAAYF,MAEpDz7E,MAAK+7E,cAAcvqE,EAAM4qE,EAAcT,OAEpC,CACL,GAAIz9C,GAAQl+B,KAAKi6E,WAAWyB,EAAQC,GAAS,EAC7C37E,MAAK84E,UAAU6C,EAASz9C,GACxBu9C,EAAez7E,KAAK64E,cAAcrnE,EAAMmqE,IAAYF,OAIxD97D,SAAQ08D,MAAM,0BAA2B7qE,EAAMkqE,EAAQC,IAK/D,MAAOF,MAYT9xE,IAAK,eACL5E,MAAO,SAAsBqD,EAAKrD,EAAOw0E,GACjB,gBAAXnxE,GAAI,IAA8B,UAAXA,EAAI,IACpCpI,KAAKs8E,gBAAgBl0E,EAAKrD,EAAOw0E,GAC7BnxE,EAAI,KAAOrD,GACb/E,KAAKg4E,eAAexwE,MAAO+xE,KAAMA,EAAMx0E,MAAOA,KAErB,gBAAXqD,GAAI,IACpBpI,KAAKu8E,cAAcn0E,EAAKrD,EAAOw0E,GAC3BnxE,EAAI,KAAOrD,GACb/E,KAAKg4E,eAAexwE,MAAO+xE,KAAMA,EAAMx0E,MAAOA,KAErB,gBAAXqD,GAAI,KACpBpI,KAAKw8E,WAAWp0E,EAAKrD,EAAOw0E,GACxBnxE,EAAI,KAAOrD,GACb/E,KAAKg4E,eAAexwE,MAAO+xE,KAAMA,EAAMx0E,MAAOV,OAAOU,SAY3D4E,IAAK,UACL5E,MAAO,SAAiBA,EAAOw0E,GAC7B,GAAI11E,GAAU7D,KAAKy8E,kBAAkB13E,EAAOw0E,EAExCv5E,MAAKuL,OAAO4zC,MAAQn/C,KAAKuL,OAAO4zC,KAAKE,SAAWr/C,KAAKuL,OAAO4zC,KAAKE,QAAQzH,MAC3E53C,KAAKuL,OAAO4zC,KAAKE,QAAQzH,KAAK,eAAgB/zC,GAEhD7D,KAAKk4E,aAAc,EACnBl4E,KAAKuL,OAAOyzB,WAAWn7B,MAGzB8F,IAAK,oBACL5E,MAAO,SAA2BA,EAAOw0E,GACvC,GAAImD,GAAar2E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAElF20D,EAAU0hB,CAGd33E,GAAkB,SAAVA,GAAmB,EAAOA,EAClCA,EAAkB,UAAVA,GAAoB,EAAQA,CAEpC,KAAK,GAAI0B,GAAI,EAAGA,EAAI8yE,EAAKjzE,OAAQG,IACf,WAAZ8yE,EAAK9yE,KACkBF,SAArBy0D,EAAQue,EAAK9yE,MACfu0D,EAAQue,EAAK9yE,QAEXA,IAAM8yE,EAAKjzE,OAAS,EACtB00D,EAAUA,EAAQue,EAAK9yE,IAEvBu0D,EAAQue,EAAK9yE,IAAM1B,EAIzB,OAAO23E,MAGT/yE,IAAK,gBACL5E,MAAO,WACL,GAAIlB,GAAU7D,KAAK28E,YACnB38E,MAAKo5E,iBAAiBvqC,UAAY,sBAAwBpM,KAAKC,UAAU7+B,EAAS,KAAM,GAAK,YAG/F8F,IAAK,aACL5E,MAAO,WAEL,IAAK,GADDlB,MACK4C,EAAI,EAAGA,EAAIzG,KAAKg4E,eAAe1xE,OAAQG,IAC9CzG,KAAKy8E,kBAAkBz8E,KAAKg4E,eAAevxE,GAAG1B,MAAO/E,KAAKg4E,eAAevxE,GAAG8yE,KAAM11E,EAEpF,OAAOA,OAIJq9C,IAGTthD,GAAQ,WAAashD,EACrBrhD,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBjzE,EAAS9D,EAAoB,IAC7Bm+D,EAAan+D,EAAoB,IACjCS,EAAOT,EAAoB,GAE3B08E,EAAc,WAChB,QAASA,KACP,GAAI7E,GAAa1xE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAErF0wE,GAAgB/2E,KAAM48E,GAEtB58E,KAAK+3E,WAAaA,EAClB/3E,KAAK68E,WAAY,EACjB78E,KAAK88E,mBAAsBl/C,EAAG,MAAS3c,EAAG,OAC1CjhB,KAAKoM,EAAI,IAAM,IACfpM,KAAKyM,OAAUL,EAAG,IAAKC,EAAG,IAAKlG,EAAG,IAAKD,EAAG,GAC1ClG,KAAK+8E,UAAYx2E,OACjBvG,KAAKg9E,cAAiB5wE,EAAG,IAAKC,EAAG,IAAKlG,EAAG,IAAKD,EAAG,GACjDlG,KAAKi9E,cAAgB12E,OACrBvG,KAAKk9E,SAAU,EAGfl9E,KAAKm9E,eAAiB,aACtBn9E,KAAKo9E,cAAgB,aAGrBp9E,KAAKk/C,UAujBP,MA/iBAi4B,GAAayF,IACXjzE,IAAK,WACL5E,MAAO,SAAkBq/B,GACH79B,SAAhBvG,KAAKmkD,SACPnkD,KAAKmkD,OAAOhlB,UACZn/B,KAAKmkD,OAAS59C,QAEhBvG,KAAKokC,UAAYA,EACjBpkC,KAAKokC,UAAU9G,YAAYt9B,KAAKuqC,OAChCvqC,KAAKq9E,cAELr9E,KAAKs9E,cAQP3zE,IAAK,oBACL5E,MAAO,SAA2BwE,GAChC,GAAwB,kBAAbA,GAGT,KAAM,IAAIvC,OAAM,8EAFhBhH,MAAKm9E,eAAiB5zE,KAW1BI,IAAK,mBACL5E,MAAO,SAA0BwE,GAC/B,GAAwB,kBAAbA,GAGT,KAAM,IAAIvC,OAAM,+EAFhBhH,MAAKo9E,cAAgB7zE,KAMzBI,IAAK,iBACL5E,MAAO,SAAwB0H,GAC7B,GAAI8wE,IAAeC,MAAO,UAAWC,KAAM,UAAWC,SAAU,UAAWC,WAAY,UAAW3wE,KAAM,UAAW4wE,UAAW,UAAW7wE,MAAO,UAAW8wE,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,UAAWp3E,IAAK,UAAWq3E,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,gBAAVv5E,GACF8wE,EAAW9wE,GADpB,UAkBF9C,IAAK,WACL5E,MAAO,SAAkB0H,GACvB,GAAIw5E,GAAa5/E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAExF,IAAc,SAAVoG,EAAJ,CAIA,GAAIsD,GAAOxJ,OAGP2/E,EAAYlmF,KAAKmmF,eAAe15E,EAMpC,IALkBlG,SAAd2/E,IACFz5E,EAAQy5E,GAINvlF,EAAKuE,SAASuH,MAAW,GAC3B,GAAI9L,EAAKyM,WAAWX,MAAW,EAAM,CACnC,GAAI25E,GAAY35E,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMnG,OAAS,GAAG2C,MAAM,IAClE8G,IAAS3D,EAAGg6E,EAAU,GAAI/5E,EAAG+5E,EAAU,GAAIjgF,EAAGigF,EAAU,GAAIlgF,EAAG,OAC1D,IAAIvF,EAAKmP,YAAYrD,MAAW,EAAM,CAC3C,GAAI25E,GAAY35E,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMnG,OAAS,GAAG2C,MAAM,IAClE8G,IAAS3D,EAAGg6E,EAAU,GAAI/5E,EAAG+5E,EAAU,GAAIjgF,EAAGigF,EAAU,GAAIlgF,EAAGkgF,EAAU,QACpE,IAAIzlF,EAAK2M,WAAWb,MAAW,EAAM,CAC1C,GAAI45E,GAAS1lF,EAAKqL,SAASS,EAC3BsD,IAAS3D,EAAGi6E,EAAOj6E,EAAGC,EAAGg6E,EAAOh6E,EAAGlG,EAAGkgF,EAAOlgF,EAAGD,EAAG,QAGrD,IAAIuG,YAAiBrF,SACHb,SAAZkG,EAAML,GAA+B7F,SAAZkG,EAAMJ,GAA+B9F,SAAZkG,EAAMtG,EAAiB,CAC3E,GAAImgF,GAAoB//E,SAAZkG,EAAMvG,EAAkBuG,EAAMvG,EAAI,KAC9C6J,IAAS3D,EAAGK,EAAML,EAAGC,EAAGI,EAAMJ,EAAGlG,EAAGsG,EAAMtG,EAAGD,EAAGogF,GAMtD,GAAa//E,SAATwJ,EACF,KAAM,IAAI/I,OAAM,gIAAkIy7B,KAAKC,UAAUj2B,GAEjKzM,MAAKumF,UAAUx2E,EAAMk2E,OASzBt8E,IAAK,OACL5E,MAAO,WACsBwB,SAAvBvG,KAAKo9E,gBACPp9E,KAAKo9E,gBACLp9E,KAAKo9E,cAAgB72E,QAGvBvG,KAAKk9E,SAAU,EACfl9E,KAAKuqC,MAAMz7B,MAAMwmE,QAAU,QAC3Bt1E,KAAKwmF,wBAYP78E,IAAK,QACL5E,MAAO,WACL,GAAIk9C,GAAQjiD,KAERymF,EAAgBpgF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGvFogF,MAAkB,IACpBzmF,KAAKi9E,cAAgBt8E,EAAKgG,UAAW3G,KAAKyM,QAGxCzM,KAAKk9E,WAAY,GACnBl9E,KAAKm9E,eAAen9E,KAAKg9E,cAG3Bh9E,KAAKuqC,MAAMz7B,MAAMwmE,QAAU,OAI3BprE,WAAW,WACmB3D,SAAxB07C,EAAMm7B,gBACRn7B,EAAMm7B,gBACNn7B,EAAMm7B,cAAgB72E,SAEvB,MAQLoD,IAAK,QACL5E,MAAO,WACL/E,KAAKm9E,eAAen9E,KAAKyM,OACzBzM,KAAKk9E,SAAU,EACfl9E,KAAK0mF,WAQP/8E,IAAK,SACL5E,MAAO,WACL/E,KAAKk9E,SAAU,EACfl9E,KAAKm9E,eAAen9E,KAAKyM,OACzBzM,KAAK2mF,cAAc3mF,KAAKyM,UAQ1B9C,IAAK,YACL5E,MAAO,WACsBwB,SAAvBvG,KAAKi9E,cACPj9E,KAAKo7E,SAASp7E,KAAKi9E,eAAe,GAElC2J,MAAM,wCAWVj9E,IAAK,YACL5E,MAAO,SAAmBgL,GACxB,GAAIk2E,GAAa5/E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGpF4/E,MAAe,IACjBjmF,KAAKg9E,aAAer8E,EAAKgG,UAAWoJ,IAGtC/P,KAAKyM,MAAQsD,CACb,IAAIxC,GAAM5M,EAAK0N,SAAS0B,EAAK3D,EAAG2D,EAAK1D,EAAG0D,EAAK5J,GAEzC0gF,EAAe,EAAI5hF,KAAK6wC,GACxBF,EAAS51C,KAAKoM,EAAImB,EAAII,EACtBiwB,EAAI59B,KAAK88E,kBAAkBl/C,EAAIgY,EAAS3wC,KAAKokC,IAAIw9C,EAAet5E,EAAIG,GACpEuT,EAAIjhB,KAAK88E,kBAAkB77D,EAAI20B,EAAS3wC,KAAKukC,IAAIq9C,EAAet5E,EAAIG,EAExE1N,MAAK8mF,oBAAoBh4E,MAAMnG,KAAOi1B,EAAI,GAAM59B,KAAK8mF,oBAAoBr8C,YAAc,KACvFzqC,KAAK8mF,oBAAoBh4E,MAAMjG,IAAMoY,EAAI,GAAMjhB,KAAK8mF,oBAAoBr3C,aAAe,KAEvFzvC,KAAK2mF,cAAc52E,MASrBpG,IAAK,cACL5E,MAAO,SAAqBA,GAC1B/E,KAAKyM,MAAMvG,EAAInB,EAAQ,IACvB/E,KAAK2mF,cAAc3mF,KAAKyM,UAS1B9C,IAAK,iBACL5E,MAAO,SAAwBA,GAC7B,GAAIwI,GAAM5M,EAAK0N,SAASrO,KAAKyM,MAAML,EAAGpM,KAAKyM,MAAMJ,EAAGrM,KAAKyM,MAAMtG,EAC/DoH,GAAIK,EAAI7I,EAAQ,GAChB,IAAIgL,GAAOpP,EAAK4O,SAAShC,EAAIG,EAAGH,EAAII,EAAGJ,EAAIK,EAC3CmC,GAAQ,EAAI/P,KAAKyM,MAAMvG,EACvBlG,KAAKyM,MAAQsD,EACb/P,KAAK2mF,mBASPh9E,IAAK,gBACL5E,MAAO,WACL,GAAIgL,GAAO1J,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKyM,MAAQpG,UAAU,GAEpFkH,EAAM5M,EAAK0N,SAAS0B,EAAK3D,EAAG2D,EAAK1D,EAAG0D,EAAK5J,GACzCmrC,EAAMtxC,KAAK+mF,kBAAkBx1C,WAAW,KACnBhrC,UAArBvG,KAAKgnF,cACPhnF,KAAK+3E,YAAchtE,OAAOk8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,IAExNh2C,EAAIi2C,aAAavnF,KAAK+3E,WAAY,EAAG,EAAG/3E,KAAK+3E,WAAY,EAAG,EAG5D,IAAIj0D,GAAI9jB,KAAK+mF,kBAAkBt8C,YAC3B/8B,EAAI1N,KAAK+mF,kBAAkBt3C,YAC/B6B,GAAIE,UAAU,EAAG,EAAG1tB,EAAGpW,GAEvB4jC,EAAIk2C,aAAaxnF,KAAK+8E,UAAW,EAAG,GACpCzrC,EAAIiB,UAAY,eAAiB,EAAIhlC,EAAIK,GAAK,IAC9C0jC,EAAIm2C,OAAOznF,KAAK88E,kBAAkBl/C,EAAG59B,KAAK88E,kBAAkB77D,EAAGjhB,KAAKoM,GACpEklC,EAAI7J,OAEJznC,KAAK0nF,gBAAgB3iF,MAAQ,IAAMwI,EAAIK,EACvC5N,KAAK2nF,aAAa5iF,MAAQ,IAAMgL,EAAK7J,EAErClG,KAAK4nF,gBAAgB94E,MAAM87B,gBAAkB,QAAU5qC,KAAKg9E,aAAa5wE,EAAI,IAAMpM,KAAKg9E,aAAa3wE,EAAI,IAAMrM,KAAKg9E,aAAa72E,EAAI,IAAMnG,KAAKg9E,aAAa92E,EAAI,IACjKlG,KAAK6nF,YAAY/4E,MAAM87B,gBAAkB,QAAU5qC,KAAKyM,MAAML,EAAI,IAAMpM,KAAKyM,MAAMJ,EAAI,IAAMrM,KAAKyM,MAAMtG,EAAI,IAAMnG,KAAKyM,MAAMvG,EAAI,OAQnIyD,IAAK,WACL5E,MAAO,WACL/E,KAAK+mF,kBAAkBj4E,MAAM0vB,MAAQ,OACrCx+B,KAAK+mF,kBAAkBj4E,MAAM2vB,OAAS,OAEtCz+B,KAAK+mF,kBAAkBvoD,MAAQ,IAAMx+B,KAAK+3E,WAC1C/3E,KAAK+mF,kBAAkBtoD,OAAS,IAAMz+B,KAAK+3E,cAS7CpuE,IAAK,UACL5E,MAAO,WAYL,GAXA/E,KAAKuqC,MAAQnN,SAASM,cAAc,OACpC19B,KAAKuqC,MAAMxhC,UAAY,mBAEvB/I,KAAK8nF,eAAiB1qD,SAASM,cAAc,OAC7C19B,KAAK8mF,oBAAsB1pD,SAASM,cAAc,OAClD19B,KAAK8mF,oBAAoB/9E,UAAY,eACrC/I,KAAK8nF,eAAexqD,YAAYt9B,KAAK8mF,qBAErC9mF,KAAK+mF,kBAAoB3pD,SAASM,cAAc,UAChD19B,KAAK8nF,eAAexqD,YAAYt9B,KAAK+mF,mBAEhC/mF,KAAK+mF,kBAAkBx1C,WAOrB,CACL,GAAID,GAAMtxC,KAAK+mF,kBAAkBx1C,WAAW,KAC5CvxC,MAAK+3E,YAAchtE,OAAOk8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAEtNtnF,KAAK+mF,kBAAkBx1C,WAAW,MAAMg2C,aAAavnF,KAAK+3E,WAAY,EAAG,EAAG/3E,KAAK+3E,WAAY,EAAG,OAX1D,CACtC,GAAIrpC,GAAWtR,SAASM,cAAc,MACtCgR,GAAS5/B,MAAMrC,MAAQ,MACvBiiC,EAAS5/B,MAAM6/B,WAAa,OAC5BD,EAAS5/B,MAAM8/B,QAAU,OACzBF,EAASG,UAAY,mDACrB7uC,KAAK+mF,kBAAkBzpD,YAAYoR,GAQrC1uC,KAAK8nF,eAAe/+E,UAAY,YAEhC/I,KAAK+nF,WAAa3qD,SAASM,cAAc,OACzC19B,KAAK+nF,WAAWh/E,UAAY,cAE5B/I,KAAKgoF,cAAgB5qD,SAASM,cAAc,OAC5C19B,KAAKgoF,cAAcj/E,UAAY,iBAE/B/I,KAAKioF,SAAW7qD,SAASM,cAAc,OACvC19B,KAAKioF,SAASl/E,UAAY,YAE1B/I,KAAK2nF,aAAevqD,SAASM,cAAc,QAC3C,KACE19B,KAAK2nF,aAAa//E,KAAO,QACzB5H,KAAK2nF,aAAa/iF,IAAM,IACxB5E,KAAK2nF,aAAa9iF,IAAM,MACxB,MAAOq1E,IACTl6E,KAAK2nF,aAAa5iF,MAAQ,MAC1B/E,KAAK2nF,aAAa5+E,UAAY,YAE9B/I,KAAK0nF,gBAAkBtqD,SAASM,cAAc,QAC9C,KACE19B,KAAK0nF,gBAAgB9/E,KAAO,QAC5B5H,KAAK0nF,gBAAgB9iF,IAAM,IAC3B5E,KAAK0nF,gBAAgB7iF,IAAM,MAC3B,MAAOq1E,IACTl6E,KAAK0nF,gBAAgB3iF,MAAQ,MAC7B/E,KAAK0nF,gBAAgB3+E,UAAY,YAEjC/I,KAAK+nF,WAAWzqD,YAAYt9B,KAAK2nF,cACjC3nF,KAAKgoF,cAAc1qD,YAAYt9B,KAAK0nF,gBAEpC,IAAI1nD,GAAKhgC,IACTA,MAAK2nF,aAAav0C,SAAW,WAC3BpT,EAAGkoD,YAAYloF,KAAK+E,QAEtB/E,KAAK2nF,aAAatN,QAAU,WAC1Br6C,EAAGkoD,YAAYloF,KAAK+E,QAEtB/E,KAAK0nF,gBAAgBt0C,SAAW,WAC9BpT,EAAGmoD,eAAenoF,KAAK+E,QAEzB/E,KAAK0nF,gBAAgBrN,QAAU,WAC7Br6C,EAAGmoD,eAAenoF,KAAK+E,QAGzB/E,KAAKooF,gBAAkBhrD,SAASM,cAAc,OAC9C19B,KAAKooF,gBAAgBr/E,UAAY,2BACjC/I,KAAKooF,gBAAgBv5C,UAAY,cAEjC7uC,KAAKqoF,aAAejrD,SAASM,cAAc,OAC3C19B,KAAKqoF,aAAat/E,UAAY,wBAC9B/I,KAAKqoF,aAAax5C,UAAY,WAE9B7uC,KAAK6nF,YAAczqD,SAASM,cAAc,OAC1C19B,KAAK6nF,YAAY9+E,UAAY,gBAC7B/I,KAAK6nF,YAAYh5C,UAAY,MAE7B7uC,KAAK4nF,gBAAkBxqD,SAASM,cAAc,OAC9C19B,KAAK4nF,gBAAgB7+E,UAAY,oBACjC/I,KAAK4nF,gBAAgB/4C,UAAY,UAEjC7uC,KAAKsoF,aAAelrD,SAASM,cAAc,OAC3C19B,KAAKsoF,aAAav/E,UAAY,wBAC9B/I,KAAKsoF,aAAaz5C,UAAY,SAC9B7uC,KAAKsoF,aAAa/rC,QAAUv8C,KAAK0mF,MAAMpnC,KAAKt/C,MAAM,GAElDA,KAAKuoF,YAAcnrD,SAASM,cAAc,OAC1C19B,KAAKuoF,YAAYx/E,UAAY,uBAC7B/I,KAAKuoF,YAAY15C,UAAY,QAC7B7uC,KAAKuoF,YAAYhsC,QAAUv8C,KAAKwoF,OAAOlpC,KAAKt/C,MAE5CA,KAAKyoF,WAAarrD,SAASM,cAAc,OACzC19B,KAAKyoF,WAAW1/E,UAAY,sBAC5B/I,KAAKyoF,WAAW55C,UAAY,OAC5B7uC,KAAKyoF,WAAWlsC,QAAUv8C,KAAK0oF,MAAMppC,KAAKt/C,MAE1CA,KAAK2oF,WAAavrD,SAASM,cAAc,OACzC19B,KAAK2oF,WAAW5/E,UAAY,sBAC5B/I,KAAK2oF,WAAW95C,UAAY,YAC5B7uC,KAAK2oF,WAAWpsC,QAAUv8C,KAAK4oF,UAAUtpC,KAAKt/C,MAE9CA,KAAKuqC,MAAMjN,YAAYt9B,KAAK8nF,gBAC5B9nF,KAAKuqC,MAAMjN,YAAYt9B,KAAKioF,UAC5BjoF,KAAKuqC,MAAMjN,YAAYt9B,KAAKooF,iBAC5BpoF,KAAKuqC,MAAMjN,YAAYt9B,KAAKgoF,eAC5BhoF,KAAKuqC,MAAMjN,YAAYt9B,KAAKqoF,cAC5BroF,KAAKuqC,MAAMjN,YAAYt9B,KAAK+nF,YAC5B/nF,KAAKuqC,MAAMjN,YAAYt9B,KAAK6nF,aAC5B7nF,KAAKuqC,MAAMjN,YAAYt9B,KAAK4nF,iBAE5B5nF,KAAKuqC,MAAMjN,YAAYt9B,KAAKsoF,cAC5BtoF,KAAKuqC,MAAMjN,YAAYt9B,KAAKuoF,aAC5BvoF,KAAKuqC,MAAMjN,YAAYt9B,KAAKyoF,YAC5BzoF,KAAKuqC,MAAMjN,YAAYt9B,KAAK2oF,eAQ9Bh/E,IAAK,cACL5E,MAAO,WACL,GAAI00E,GAASz5E,IAEbA,MAAKu2E,QACLv2E,KAAK6oF,SACL7oF,KAAKmkD,OAAS,GAAIngD,GAAOhE,KAAK+mF,mBAC9B/mF,KAAKmkD,OAAOntB,IAAI,SAAS5e,KAAMowC,QAAQ,IAEvC6V,EAAW3C,QAAQ17D,KAAKmkD,OAAQ,SAAUr5C,GACxC2uE,EAAOqP,cAAch+E,KAEvB9K,KAAKmkD,OAAO/kB,GAAG,MAAO,SAAUt0B,GAC9B2uE,EAAOqP,cAAch+E,KAEvB9K,KAAKmkD,OAAO/kB,GAAG,WAAY,SAAUt0B,GACnC2uE,EAAOqP,cAAch+E,KAEvB9K,KAAKmkD,OAAO/kB,GAAG,UAAW,SAAUt0B,GAClC2uE,EAAOqP,cAAch+E,KAEvB9K,KAAKmkD,OAAO/kB,GAAG,SAAU,SAAUt0B,GACjC2uE,EAAOqP,cAAch+E,QASzBnB,IAAK,qBACL5E,MAAO,WACL,GAAI/E,KAAK68E,aAAc,EAAO,CAC5B,GAAIvrC,GAAMtxC,KAAK+mF,kBAAkBx1C,WAAW,KACnBhrC,UAArBvG,KAAKgnF,cACPhnF,KAAK+3E,YAAchtE,OAAOk8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,IAExNh2C,EAAIi2C,aAAavnF,KAAK+3E,WAAY,EAAG,EAAG/3E,KAAK+3E,WAAY,EAAG,EAG5D,IAAIj0D,GAAI9jB,KAAK+mF,kBAAkBt8C,YAC3B/8B,EAAI1N,KAAK+mF,kBAAkBt3C,YAC/B6B,GAAIE,UAAU,EAAG,EAAG1tB,EAAGpW,EAGvB,IAAIkwB,GAAIr3B,OACJ0a,EAAI1a,OACJkI,EAAMlI,OACNwiF,EAAMxiF,MACVvG,MAAK88E,mBAAsBl/C,EAAO,GAAJ9Z,EAAS7C,EAAO,GAAJvT,GAC1C1N,KAAKoM,EAAI,IAAO0X,CAChB,IAAI+iE,GAAe,EAAI5hF,KAAK6wC,GAAK,IAC7BkzC,EAAO,EAAI,IACXC,EAAO,EAAIjpF,KAAKoM,EAChBO,EAAMpG,MACV,KAAKkI,EAAM,EAAS,IAANA,EAAWA,IACvB,IAAKs6E,EAAM,EAAGA,EAAM/oF,KAAKoM,EAAG28E,IAC1BnrD,EAAI59B,KAAK88E,kBAAkBl/C,EAAImrD,EAAM9jF,KAAKokC,IAAIw9C,EAAep4E,GAC7DwS,EAAIjhB,KAAK88E,kBAAkB77D,EAAI8nE,EAAM9jF,KAAKukC,IAAIq9C,EAAep4E,GAC7D9B,EAAMhM,EAAK4O,SAASd,EAAMu6E,EAAMD,EAAME,EAAM,GAC5C33C,EAAIiB,UAAY,OAAS5lC,EAAIP,EAAI,IAAMO,EAAIN,EAAI,IAAMM,EAAIxG,EAAI,IAC7DmrC,EAAI43C,SAAStrD,EAAI,GAAK3c,EAAI,GAAK,EAAG,EAGtCqwB,GAAIY,YAAc,gBAClBZ,EAAIm2C,OAAOznF,KAAK88E,kBAAkBl/C,EAAG59B,KAAK88E,kBAAkB77D,EAAGjhB,KAAKoM,GACpEklC,EAAI5J,SAEJ1nC,KAAK+8E,UAAYzrC,EAAI63C,aAAa,EAAG,EAAGrlE,EAAGpW,GAE7C1N,KAAK68E,WAAY,KAUnBlzE,IAAK,gBACL5E,MAAO,SAAuB+F,GAC5B,GAAI4zB,GAAO1+B,KAAK8nF,eAAep/E,wBAC3BC,EAAOmC,EAAMsrC,OAAOxY,EAAIc,EAAK/1B,KAC7BE,EAAMiC,EAAMsrC,OAAOn1B,EAAIyd,EAAK71B,IAE5BugF,EAAU,GAAMppF,KAAK8nF,eAAer4C,aACpC45C,EAAU,GAAMrpF,KAAK8nF,eAAer9C,YAEpC7M,EAAIj1B,EAAO0gF,EACXpoE,EAAIpY,EAAMugF,EAEV3+B,EAAQxlD,KAAKsnD,MAAM3uB,EAAG3c,GACtB20B,EAAS,IAAO3wC,KAAKL,IAAIK,KAAKu0C,KAAK5b,EAAIA,EAAI3c,EAAIA,GAAIooE,GAEnDhZ,EAASprE,KAAKukC,IAAIihB,GAAS7U,EAASwzC,EACpCE,EAAUrkF,KAAKokC,IAAIohB,GAAS7U,EAASyzC,CAEzCrpF,MAAK8mF,oBAAoBh4E,MAAMjG,IAAMwnE,EAAS,GAAMrwE,KAAK8mF,oBAAoBr3C,aAAe,KAC5FzvC,KAAK8mF,oBAAoBh4E,MAAMnG,KAAO2gF,EAAU,GAAMtpF,KAAK8mF,oBAAoBr8C,YAAc,IAG7F,IAAI/8B,GAAI+8C,GAAS,EAAIxlD,KAAK6wC,GAC1BpoC,GAAQ,EAAJA,EAAQA,EAAI,EAAIA,CACpB,IAAIC,GAAIioC,EAAS51C,KAAKoM,EAClBmB,EAAM5M,EAAK0N,SAASrO,KAAKyM,MAAML,EAAGpM,KAAKyM,MAAMJ,EAAGrM,KAAKyM,MAAMtG,EAC/DoH,GAAIG,EAAIA,EACRH,EAAII,EAAIA,CACR,IAAIoC,GAAOpP,EAAK4O,SAAShC,EAAIG,EAAGH,EAAII,EAAGJ,EAAIK,EAC3CmC,GAAQ,EAAI/P,KAAKyM,MAAMvG,EACvBlG,KAAKyM,MAAQsD,EAGb/P,KAAK4nF,gBAAgB94E,MAAM87B,gBAAkB,QAAU5qC,KAAKg9E,aAAa5wE,EAAI,IAAMpM,KAAKg9E,aAAa3wE,EAAI,IAAMrM,KAAKg9E,aAAa72E,EAAI,IAAMnG,KAAKg9E,aAAa92E,EAAI,IACjKlG,KAAK6nF,YAAY/4E,MAAM87B,gBAAkB,QAAU5qC,KAAKyM,MAAML,EAAI,IAAMpM,KAAKyM,MAAMJ,EAAI,IAAMrM,KAAKyM,MAAMtG,EAAI,IAAMnG,KAAKyM,MAAMvG,EAAI,QAI9H02E,IAGTh9E,GAAQ,WAAag9E,EACrB/8E,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBt2E,EAAOT,EAAoB,GAE3BuhD,GAAa,EACbj+C,EAAa+C,OACb66C,EAAa,sCAKbD,EAAY,WACd,QAASA,KACP41B,EAAgB/2E,KAAMmhD,GA6RxB,MAnRAg2B,GAAah2B,EAAW,OACtBx3C,IAAK,WACL5E,MAAO,SAAkBlB,EAAS0lF,EAAkBC,GAClD/nC,GAAa,EACbj+C,EAAa+lF,CACb,IAAIE,GAAcF,CAKlB,OAJkBhjF,UAAdijF,IACFC,EAAcF,EAAiBC,IAEjCroC,EAAUz7C,MAAM7B,EAAS4lF,MAClBhoC,KAUT93C,IAAK,QACL5E,MAAO,SAAelB,EAAS0lF,EAAkBhQ,GAC/C,IAAK,GAAI9tE,KAAU5H,GACbA,EAAQmC,eAAeyF,IACzB01C,EAAUuoC,MAAMj+E,EAAQ5H,EAAS0lF,EAAkBhQ,MAazD5vE,IAAK,QACL5E,MAAO,SAAe0G,EAAQ5H,EAAS0lF,EAAkBhQ,GACtBhzE,SAA7BgjF,EAAiB99E,IAAsDlF,SAA7BgjF,EAAiBI,QAC7DxoC,EAAUyoC,cAAcn+E,EAAQ89E,EAAkBhQ,GACZhzE,SAA7BgjF,EAAiB99E,IAAsDlF,SAA7BgjF,EAAiBI,QAEzB,WAAvCxoC,EAAUl5C,QAAQpE,EAAQ4H,KAAkElF,SAAzCgjF,EAA0B,QAAEM,SAEjF1oC,EAAU2oC,YAAYr+E,EAAQ5H,EAAS0lF,EAAkB,UAAWA,EAA0B,QAAEM,SAAUtQ,GAE1Gp4B,EAAU2oC,YAAYr+E,EAAQ5H,EAAS0lF,EAAkB,UAAWA,EAA0B,QAAGhQ,GAIzDhzE,SAAtCgjF,EAAiB99E,GAAQo+E,SAE3B1oC,EAAU2oC,YAAYr+E,EAAQ5H,EAAS0lF,EAAkB99E,EAAQ89E,EAAiB99E,GAAQo+E,SAAUtQ,GAEpGp4B,EAAU2oC,YAAYr+E,EAAQ5H,EAAS0lF,EAAkB99E,EAAQ89E,EAAiB99E,GAAS8tE,MAejG5vE,IAAK,cACL5E,MAAO,SAAqB0G,EAAQ5H,EAAS0lF,EAAkBQ,EAAiBC,EAAczQ,GAC5F,GAAI0Q,GAAa9oC,EAAUl5C,QAAQpE,EAAQ4H,IACvCy+E,EAAgBF,EAAaC,EACX1jF,UAAlB2jF,EAEuC,UAArC/oC,EAAUl5C,QAAQiiF,IAC2B,KAA3CA,EAAc3iF,QAAQ1D,EAAQ4H,KAChCkU,QAAQu+B,IAAI,iCAAmCzyC,EAAS,yBAAgC01C,EAAUgpC,MAAMD,GAAiB,SAAWrmF,EAAQ4H,GAAU,MAAQ01C,EAAUipC,cAAc7Q,EAAM9tE,GAAS21C,GACrMK,GAAa,GAKS,WAAfwoC,GAA+C,YAApBF,IACpCxQ,EAAO54E,EAAKwH,mBAAmBoxE,EAAM9tE,GACrC01C,EAAUz7C,MAAM7B,EAAQ4H,GAAS89E,EAAiBQ,GAAkBxQ,IAErChzE,SAAxByjF,EAAkB,MAE3BrqE,QAAQu+B,IAAI,gCAAkCzyC,EAAS,gBAAkB01C,EAAUgpC,MAAM/iF,OAAO6H,KAAK+6E,IAAiB,eAAiBC,EAAa,MAAQpmF,EAAQ4H,GAAU,IAAM01C,EAAUipC,cAAc7Q,EAAM9tE,GAAS21C,GAC3NK,GAAa,MAIjB93C,IAAK,UACL5E,MAAO,SAAiBX,GACtB,GAAIwD,SAAcxD,EAElB,OAAa,WAATwD,EACa,OAAXxD,EACK,OAELA,YAAkByD,SACb,UAELzD,YAAkBC,QACb,SAELD,YAAkBe,QACb,SAEL2B,MAAMC,QAAQ3C,GACT,QAELA,YAAkBiB,MACb,OAEekB,SAApBnC,EAAOgH,SACF,MAELhH,EAAOkR,oBAAqB,EACvB,SAEF,SACW,WAAT1N,EACF,SACW,YAATA,EACF,UACW,WAATA,EACF,SACWrB,SAATqB,EACF,YAEFA,KAGT+B,IAAK,gBACL5E,MAAO,SAAuB0G,EAAQ5H,EAAS01E,GAC7C,GAAI8Q,GAAclpC,EAAUmpC,cAAc7+E,EAAQ5H,EAAS01E,GAAM,GAC7DgR,EAAeppC,EAAUmpC,cAAc7+E,EAAQjI,MAAgB,GAE/DgnF,EAAuB,EACvBC,EAAwB,CAEGlkF,UAA3B8jF,EAAYK,WACd/qE,QAAQu+B,IAAI,+BAAiCzyC,EAAS,QAAU01C,EAAUipC,cAAcC,EAAY9Q,KAAM9tE,EAAQ,IAAM,6CAA+C4+E,EAAYK,WAAa,SAAUtpC,GACjMmpC,EAAap6C,UAAYs6C,GAAyBJ,EAAYl6C,SAAWo6C,EAAap6C,SAC/FxwB,QAAQu+B,IAAI,+BAAiCzyC,EAAS,QAAU01C,EAAUipC,cAAcC,EAAY9Q,KAAM9tE,EAAQ,IAAM,uDAAyD01C,EAAUipC,cAAcG,EAAahR,KAAMgR,EAAaI,aAAc,IAAKvpC,GACnPipC,EAAYl6C,UAAYq6C,EACjC7qE,QAAQu+B,IAAI,+BAAiCzyC,EAAS,oBAAsB4+E,EAAYM,aAAe,KAAOxpC,EAAUipC,cAAcC,EAAY9Q,KAAM9tE,GAAS21C,GAEjKzhC,QAAQu+B,IAAI,+BAAiCzyC,EAAS,iCAAmC01C,EAAUgpC,MAAM/iF,OAAO6H,KAAKpL,IAAYs9C,EAAUipC,cAAc7Q,EAAM9tE,GAAS21C,GAG1KK,GAAa,KAYf93C,IAAK,gBACL5E,MAAO,SAAuB0G,EAAQ5H,EAAS01E,GAC7C,GAAIqR,GAAYvkF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFzB,EAAM,IACN+lF,EAAe,GACfE,KACAC,EAAkBr/E,EAAO0L,cACzBuzE,EAAankF,MACjB,KAAK,GAAIwkF,KAAMlnF,GAAS,CACtB,GAAIssC,GAAW5pC,MACf,IAA6BA,SAAzB1C,EAAQknF,GAAIlB,UAA0Be,KAAc,EAAM,CAC5D,GAAIt+E,GAAS60C,EAAUmpC,cAAc7+E,EAAQ5H,EAAQknF,GAAKpqF,EAAKwH,mBAAmBoxE,EAAMwR,GACpFnmF,GAAM0H,EAAO6jC,WACfw6C,EAAer+E,EAAOq+E,aACtBE,EAAmBv+E,EAAOitE,KAC1B30E,EAAM0H,EAAO6jC,SACbu6C,EAAap+E,EAAOo+E,gBAG4B,KAA9CK,EAAG5zE,cAAc5P,QAAQujF,KAC3BJ,EAAaK,GAEf56C,EAAWgR,EAAU6pC,oBAAoBv/E,EAAQs/E,GAC7CnmF,EAAMurC,IACRw6C,EAAeI,EACfF,EAAmBlqF,EAAK4H,UAAUgxE,GAClC30E,EAAMurC,GAIZ,OAASw6C,aAAcA,EAAcpR,KAAMsR,EAAkB16C,SAAUvrC,EAAK8lF,WAAYA,MAG1F/gF,IAAK,gBACL5E,MAAO,SAAuBw0E,EAAM9tE,GAIlC,IAAK,GAHDg8C,GAASphD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,6BAA+BA,UAAU,GAExG2gD,EAAM,OAASS,EAAS,gBACnBhhD,EAAI,EAAGA,EAAI8yE,EAAKjzE,OAAQG,IAAK,CACpC,IAAK,GAAIgK,GAAI,EAAOhK,EAAI,EAARgK,EAAWA,IACzBu2C,GAAO,IAETA,IAAOuyB,EAAK9yE,GAAK,QAEnB,IAAK,GAAIgK,GAAI,EAAGA,EAAI8oE,EAAKjzE,OAAS,EAAGmK,IACnCu2C,GAAO,IAETA,IAAOv7C,EAAS,IAChB,KAAK,GAAIhF,GAAI,EAAGA,EAAI8yE,EAAKjzE,OAAS,EAAGG,IAAK,CACxC,IAAK,GAAIgK,GAAI,EAAGA,EAAI8oE,EAAKjzE,OAASG,EAAGgK,IACnCu2C,GAAO,IAETA,IAAO,MAET,MAAOA,GAAM,UAGfr9C,IAAK,QACL5E,MAAO,SAAelB,GACpB,MAAO4+B,MAAKC,UAAU7+B,GAASsI,QAAQ,gCAAiC,IAAIA,QAAQ,QAAS,SAY/FxC,IAAK,sBACL5E,MAAO,SAA6BmB,EAAGC,GACrC,GAAiB,IAAbD,EAAEI,OAAc,MAAOH,GAAEG,MAC7B,IAAiB,IAAbH,EAAEG,OAAc,MAAOJ,GAAEI,MAE7B,IAGIG,GAHAwkF,IAIJ,KAAKxkF,EAAI,EAAGA,GAAKN,EAAEG,OAAQG,IACzBwkF,EAAOxkF,IAAMA,EAIf,IAAIgK,EACJ,KAAKA,EAAI,EAAGA,GAAKvK,EAAEI,OAAQmK,IACzBw6E,EAAO,GAAGx6E,GAAKA,CAIjB,KAAKhK,EAAI,EAAGA,GAAKN,EAAEG,OAAQG,IACzB,IAAKgK,EAAI,EAAGA,GAAKvK,EAAEI,OAAQmK,IACrBtK,EAAEkqB,OAAO5pB,EAAI,IAAMP,EAAEmqB,OAAO5f,EAAI,GAClCw6E,EAAOxkF,GAAGgK,GAAKw6E,EAAOxkF,EAAI,GAAGgK,EAAI,GAEjCw6E,EAAOxkF,GAAGgK,GAAKxL,KAAKL,IAAIqmF,EAAOxkF,EAAI,GAAGgK,EAAI,GAAK,EAC/CxL,KAAKL,IAAIqmF,EAAOxkF,GAAGgK,EAAI,GAAK,EAC5Bw6E,EAAOxkF,EAAI,GAAGgK,GAAK,GAKzB,OAAOw6E,GAAO9kF,EAAEG,QAAQJ,EAAEI,YAIvB66C,IAGTvhD,GAAQ,WAAauhD,EACrBvhD,EAAQwhD,WAAaA,GAIjB,SAASvhD,EAAQD,GAWrBwH,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAET,IAAIub,GAAS,SACT4qE,EAAU,UACV90E,EAAS,SACT3M,EAAQ,QACRkU,EAAO,OACPvZ,EAAS,SACTu1C,EAAM,MACN51C,EAAS,SACTonF,EAAM,MAEN3nF,GACFw8D,WACEnvD,SAAWq6E,UAASA,GACpB1rD,QAAU0rD,UAASA,EAASE,WAAY,YACxChnD,WAAauV,IAAKA,GAClBkwC,UAAYzlF,OAAQA,EAAQ8mF,UAASA,EAASE,WAAY,aAI5D3oB,OAASniD,OAAQA,GACjBs+B,YAAcssC,UAASA,GACvBrsC,gBAAkBzoC,OAAQA,GAC1BupD,YAAcurB,UAASA,GACvB1Z,gBAAkBlxD,OAAQA,EAAQ7W,MAAOA,GACzCy5D,UACEj9C,KAAOilE,UAASA,EAAS3kF,UAAa,aACtCo7B,QAAUupD,UAASA,EAAS3kF,UAAa,aACzC68D,aAAe8nB,UAASA,EAAS3kF,UAAa,aAC9C48D,YAAc+nB,UAASA,EAAS3kF,UAAa,aAC7CsjF,UAAYqB,UAASA,EAAS9mF,OAAQA,IAExCyuC,KAAOz8B,OAAQA,EAAQuH,KAAMA,EAAM2C,OAAQA,EAAQvc,OAAQA,GAC3DsP,QACEo4D,aACE3lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCsjF,UAAYzlF,OAAQA,IAEtBsnE,aACE5lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCsjF,UAAYzlF,OAAQA,IAEtBylF,UAAYzlF,OAAQA,IAEtBL,QAAUqnF,WAAY,YACtBtoB,YAAcxiD,OAAQA,EAAQ8qE,WAAY,YAC1C/nB,eACEp9C,KAAOilE,UAASA,EAAS3kF,UAAa,aACtCo7B,QAAUupD,UAASA,EAAS3kF,UAAa,aACzCy6B,OAASkqD,UAASA,EAAS3kF,UAAa,aACxCsjF,UAAYqB,UAASA,EAAS9mF,OAAQA,IAExCs+D,gBAAkB0oB,WAAY,YAC9B3sD,QAAUne,OAAQA,EAAQlK,OAAQA,GAClCmpC,aACE5M,OAASh1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7D8uC,KAAOl1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Do4D,QAAU77C,OAAQA,GAClBupE,UAAYzlF,OAAQA,EAAQqF,MAAOA,IAErCw5D,sBAAwBioB,UAASA,GACjC53E,QAAUgN,OAAQA,GAClB5I,SACEiyE,SAAWwB,IAAKA,GAChBtB,UAAYzlF,OAAQA,IAEtBmgC,QACEwa,MAAQ3oC,OAAQA,GAChB5E,MACEy+B,YAAc75B,OAAQA,EAAQ7P,UAAa,aAC3C2pC,UAAY95B,OAAQA,EAAQ7P,UAAa,aACzCsjF,UAAYzlF,OAAQA,EAAQgS,OAAQA,IAEtCyzE,UAAYzlF,OAAQA,EAAQgS,OAAQA,IAEtCvR,KAAO8Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Di7C,WAAa5oC,OAAQA,EAAQkK,OAAQA,GACrCkyD,eAAiBp8D,OAAQA,GACzBxR,KAAO+Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dk7C,WAAa7oC,OAAQA,EAAQkK,OAAQA,GACrC83C,UAAY8yB,UAASA,GACrBloB,aAAekoB,UAASA,GACxBhgB,qBAAuBggB,UAASA,GAChC5nB,OAAS8nB,WAAY,YACrB7nB,UAAY6nB,WAAY,YACxB5nB,QAAU4nB,WAAY,YACtB1nB,UAAY0nB,WAAY,YACxB3nB,UAAY2nB,WAAY,YACxBznB,YAAcynB,WAAY,YAC1BxnB,aAAewnB,WAAY,YAC3BvnB,eAAiBunB,WAAY,YAC7BpqD,OAASoqD,WAAY,YACrBtsC,aACEC,MAAQz+B,OAAQA,EAAQ/Z,UAAa,aACrCiL,MAAQ8O,OAAQA,EAAQ/Z,UAAa,aACrCsjF,UAAYvpE,OAAQA,EAAQlc,OAAQA,IAEtC2+D,YAAcmoB,UAASA,GACvBxU,iBAAmBwU,UAASA,GAC5B3Y,iBAAmB2Y,UAASA,GAC5B5Y,iBAAmB4Y,UAASA,GAC5BppF,OAASopF,UAASA,GAClB7nC,MAAQ+nC,WAAY,WAAYC,OAAQ,QACxC14C,OAASh1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7DstE,UAAY+Z,WAAY,YACxBvtD,eAAiButD,WAAY,YAC7B3rC,UACEz6C,OAASsb,OAAQA,EAAQ/Z,UAAa,aACtCmsC,MAAQt8B,OAAQA,EAAQ7P,UAAa,aACrCsjF,UAAYzlF,OAAQA,IAEtBwD,MAAQ0Y,OAAQA,GAChBke,OAASle,OAAQA,EAAQlK,OAAQA,GACjCiiD,UAAY6yB,UAASA,GACrBnwB,SAAWz6C,QAAS,UAAW,SAAU,UAAW,KACpDi4C,SAAWniD,OAAQA,GACnBkiD,SAAWliD,OAAQA,GAEnByzE,UAAYzlF,OAAQA,IAGlBi9C,GACFzuC,QACE6vD,OAAQ,SAAU,OAAQ,SAC1B7jB,YAAY,EACZC,gBAAiB,GAAI,EAAG,IAAM,IAC9B8gB,YAAY,EAEZuD,UACEj9C,KAAK,EACL0b,QAAQ,EACRyhC,aAAa,EACbD,YAAY,GAEdtwB,IAAK,GACLx/B,QACEo4D,aACE3lD,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACLlJ,MAAO,MACPD,KAAM,QAERkvD,aACE5lD,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACLlJ,MAAO,OACPD,KAAM,KAKV8uE,iBAAiB,EACjB7sD,OAAQ,GAERnrB,OAAQ,GACRixB,QACEwa,MAAO,GAAI,EAAG,IAAK,GACnBvtC,MACEy+B,YAAa,GAAI,EAAG,IAAK,GACzBC,UAAW,GAAI,EAAG,IAAK,KAG3BrrC,IAAK,GACLm6C,UAAW,GACXwzB,eAAgB,EAAG,EAAG,GAAI,GAC1B5tE,IAAK,GACLq6C,UAAW,GACXmZ,UAAU,EACV4K,aAAa,EACbkI,qBAAqB,EAOrBpsB,aACEC,MAAO,OAAQ,SAAU,OACzBvtC,MAAO,SAAU,QAEnBuxD,YAAY,EACZ2T,iBAAiB,EACjBnE,iBAAiB,EACjBD,iBAAiB,EACjBxwE,OAAO,EAEP6wC,MAAO,GAMP/qC,MAAO,MAAO,QAAS,QAAS,cAChC42B,MAAO,OACP65B,UAAU,EACV0C,SAAU,UAAW,SAAU,UAAW,IAC1CxC,SAAU,SAAiB,GAAI,SAAiB,GAChDD,SAAU,GAAI,GAAI,SAAiB,IAIvC14D,GAAQ4D,WAAaA,EACrB5D,EAAQyhD,iBAAmBA,GAIvB,SAASxhD,EAAQD,EAASM,GA+B9B,QAASuB,GAAQ2iC,EAAWniC,EAAOw8C,EAAQ56C,GAEzC,KAAMiD,MAAMC,QAAQ03C,IAAWA,YAAkB59C,IAAW49C,YAAkB39C,KAAa29C,YAAkBr3C,QAAQ,CACnH,GAAIs3C,GAAgB76C,CACpBA,GAAU46C,EACVA,EAASC,EAGX,GAAI1e,GAAKhgC,IACTA,MAAK2+C,gBACHhM,MAAO,KACPE,IAAK,KAEL+L,YAAY,EAEZE,aACEC,KAAM,SACNvtC,KAAM,UAGRzN,OAAQA,EAERy6B,MAAO,KACPC,OAAQ,KACRugB,UAAW,KACXC,UAAW,MAEbj/C,KAAK6D,QAAUlD,EAAK0G,cAAerH,KAAK2+C,gBAGxC3+C,KAAKk/C,QAAQ9a,GAGbpkC,KAAKgC,cAELhC,KAAKm/C,MACHxF,IAAK35C,KAAK25C,IACVyF,SAAUp/C,KAAK6G,MACfw4C,SACEjgB,GAAIp/B,KAAKo/B,GAAGkgB,KAAKt/C,MACjBu/B,IAAKv/B,KAAKu/B,IAAI+f,KAAKt/C,MACnB43C,KAAM53C,KAAK43C,KAAK0H,KAAKt/C,OAEvBu/C,eACA5+C,MACE++C,SAAU1f,EAAG2f,UAAUL,KAAKtf,GAC5B4f,eAAgB5f,EAAG6f,gBAAgBP,KAAKtf,GACxC8f,OAAQ9f,EAAG+f,QAAQT,KAAKtf,GACxBggB,aAAchgB,EAAGigB,cAAcX,KAAKtf,KAKxChgC,KAAKkgD,MAAQ,GAAIr+C,GAAM7B,KAAKm/C,MAC5Bn/C,KAAKgC,WAAWwF,KAAKxH,KAAKkgD,OAC1BlgD,KAAKm/C,KAAKe,MAAQlgD,KAAKkgD,MAGvBlgD,KAAKy/C,SAAW,GAAIv8C,GAASlD,KAAKm/C,MAClCn/C,KAAKgC,WAAWwF,KAAKxH,KAAKy/C,UAI1Bz/C,KAAKogD,YAAc,GAAI39C,GAAYzC,KAAKm/C,MACxCn/C,KAAKgC,WAAWwF,KAAKxH,KAAKogD,aAG1BpgD,KAAKurF,UAAY,GAAItoF,GAAUjD,KAAKm/C,MAEpCn/C,KAAKgC,WAAWwF,KAAKxH,KAAKurF,WAE1BvrF,KAAKsgD,UAAY,KACjBtgD,KAAKugD,WAAa,KAElBvgD,KAAKo/B,GAAG,MAAO,SAAUt0B,GACvBk1B,EAAG4X,KAAK,QAAS5X,EAAGwgB,mBAAmB11C,MAEzC9K,KAAKo/B,GAAG,YAAa,SAAUt0B,GAC7Bk1B,EAAG4X,KAAK,cAAe5X,EAAGwgB,mBAAmB11C,MAE/C9K,KAAK25C,IAAIj6C,KAAK+gD,cAAgB,SAAU31C,GACtCk1B,EAAG4X,KAAK,cAAe5X,EAAGwgB,mBAAmB11C,KAI3CjH,GACF7D,KAAKg/B,WAAWn7B,GAId46C,GACFz+C,KAAK+gD,UAAUtC,GAIbx8C,GACFjC,KAAKghD,SAAS/+C,GAIhBjC,KAAKihD,UA/HP,GAEIl9C,IAFU7D,EAAoB,IACrBA,EAAoB,IACpBA,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/B2B,EAAQ3B,EAAoB,IAC5ByB,EAAOzB,EAAoB,IAC3BgD,EAAWhD,EAAoB,IAC/BuC,EAAcvC,EAAoB,IAClCwC,EAAaxC,EAAoB,IACjC+C,EAAY/C,EAAoB,IAEhCghD,EAAehhD,EAAoB,IACnCihD,EAAYjhD,EAAoB,IAAI,WACpCkhD,EAAalhD,EAAoB,IAAIkhD,WACrC59C,EAAatD,EAAoB,IAAIsD,WACrC69C,EAAmBnhD,EAAoB,IAAImhD,gBAkH/C5/C,GAAQwR,UAAY,GAAItR,GAExBF,EAAQwR,UAAU+rB,WAAa,SAAUn7B,GAEvC,GAAI49C,GAAaN,EAAUO,SAAS79C,EAASL,EACzCi+C,MAAe,GACjB9hC,QAAQu+B,IAAI,2DAA4DkD,GAG1Ez/C,EAAKsR,UAAU+rB,WAAWz+B,KAAKP,KAAM6D,IAOvCpC,EAAQwR,UAAU+tC,SAAW,SAAU/+C,GACrC,GAGI6/C,GAHA0pC,EAAgC,MAAlBxrF,KAAKsgD,SAsBvB,IAfEwB,EAHG7/C,EAEMA,YAAiBpB,IAAWoB,YAAiBnB,GACzCmB,EAGA,GAAIpB,GAAQoB,GACvB2F,MACE+qC,MAAO,OACPE,IAAK,UARI,KAcf7yC,KAAKsgD,UAAYwB,EACjB9hD,KAAKurF,WAAavrF,KAAKurF,UAAUvqC,SAASc,GAEtC0pC,EACF,GAA0BjlF,QAAtBvG,KAAK6D,QAAQ8uC,OAA0CpsC,QAApBvG,KAAK6D,QAAQgvC,IAAkB,CACpE,GAAIF,GAA8BpsC,QAAtBvG,KAAK6D,QAAQ8uC,MAAqB3yC,KAAK6D,QAAQ8uC,MAAQ,KAC/DE,EAA0BtsC,QAApBvG,KAAK6D,QAAQgvC,IAAmB7yC,KAAK6D,QAAQgvC,IAAM,IAC7D7yC,MAAK4gD,UAAUjO,EAAOE,GAAOgO,WAAW,QAExC7gD,MAAK8gD,KAAMD,WAAW,KAS5Bp/C,EAAQwR,UAAU8tC,UAAY,SAAUtC,GAEtC,GAAIqD,EAIFA,GAHGrD,EAEMA,YAAkB59C,IAAW49C,YAAkB39C,GAC3C29C,EAGA,GAAI59C,GAAQ49C,GALZ,KAQfz+C,KAAKugD,WAAauB,EAClB9hD,KAAKurF,UAAUxqC,UAAUe,IAS3BrgD,EAAQwR,UAAUw4E,UAAY,SAAU/nC,EAASllB,EAAOC,GAOtD,MANcl4B,UAAVi4B,IACFA,EAAQ,IAEKj4B,SAAXk4B,IACFA,EAAS,IAE4Bl4B,SAAnCvG,KAAKurF,UAAU9sC,OAAOiF,GACjB1jD,KAAKurF,UAAU9sC,OAAOiF,GAAS+nC,UAAUjtD,EAAOC,GAEhD,sBAAwBilB,EAAU,KAS7CjiD,EAAQwR,UAAUy4E,eAAiB,SAAUhoC,GAC3C,MAAuCn9C,UAAnCvG,KAAKurF,UAAU9sC,OAAOiF,GACjB1jD,KAAKurF,UAAU9sC,OAAOiF,GAASzQ,UAAkE1sC,SAAtDvG,KAAKurF,UAAU1nF,QAAQ46C,OAAOgjB,WAAW/d,IAA+E,GAArD1jD,KAAKurF,UAAU1nF,QAAQ46C,OAAOgjB,WAAW/d,KAEvJ,GAUXjiD,EAAQwR,UAAUivC,aAAe,WAC/B,GAAIt9C,GAAM,KACNC,EAAM,IAGV,KAAK,GAAI6+C,KAAW1jD,MAAKurF,UAAU9sC,OACjC,GAAIz+C,KAAKurF,UAAU9sC,OAAOz4C,eAAe09C,IACO,GAA1C1jD,KAAKurF,UAAU9sC,OAAOiF,GAASzQ,QACjC,IAAK,GAAIxsC,GAAI,EAAGA,EAAIzG,KAAKurF,UAAU9sC,OAAOiF,GAASpD,UAAUh6C,OAAQG,IAAK,CACxE,GAAI+K,GAAOxR,KAAKurF,UAAU9sC,OAAOiF,GAASpD,UAAU75C,GAChD1B,EAAQpE,EAAKgH,QAAQ6J,EAAKosB,EAAG,QAAQ91B,SACzClD,GAAa,MAAPA,EAAcG,EAAQH,EAAMG,EAAQA,EAAQH,EAClDC,EAAa,MAAPA,EAAcE,EAAcA,EAANF,EAAcE,EAAQF,EAM1D,OACED,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAUvCpD,EAAQwR,UAAUutC,mBAAqB,SAAU11C,GAC/C,GAAI+8B,GAAU/8B,EAAMsrC,OAAStrC,EAAMsrC,OAAOxY,EAAI9yB,EAAM+8B,QAChDG,EAAUl9B,EAAMsrC,OAAStrC,EAAMsrC,OAAOn1B,EAAInW,EAAMk9B,QAChDpK,EAAIiK,EAAUlnC,EAAK6H,gBAAgBxI,KAAK25C,IAAIoJ,iBAC5C9hC,EAAI+mB,EAAUrnC,EAAKiI,eAAe5I,KAAK25C,IAAIoJ,iBAC3C/3B,EAAOhrB,KAAK+/C,QAAQniB,GAEpBulB,EAAazgD,EAAW0gD,qBAAqBt4C,GAE7CV,EAAUzJ,EAAKsK,UAAUH,GACzBy4C,EAAO,IACP5iD,GAAK2K,UAAUlB,EAASpK,KAAKy/C,SAAS9F,IAAI6J,YAC5CD,EAAO,OACEvjD,KAAKmgD,WAAax/C,EAAK2K,UAAUlB,EAASpK,KAAKmgD,UAAUxG,IAAI6J,YACtED,EAAO,OACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKurF,UAAUI,UAAUhyC,IAAIpP,OAC9DgZ,EAAO,YACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKurF,UAAUK,WAAWjyC,IAAIpP,OAC/DgZ,EAAO,YACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKurF,UAAUM,WAAWlyC,IAAIpP,OAC/DgZ,EAAO,SACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKurF,UAAUO,YAAYnyC,IAAIpP,OAChEgZ,EAAO,SACgB,MAAdJ,EACTI,EAAO,cACE5iD,EAAK2K,UAAUlB,EAASpK,KAAKogD,YAAYhE,KAClDmH,EAAO,eACE5iD,EAAK2K,UAAUlB,EAASpK,KAAK25C,IAAIvD,UAC1CmN,EAAO,aAGT,IAAIx+C,MACA4mF,EAAY3rF,KAAKurF,UAAUI,UAC3BC,EAAa5rF,KAAKurF,UAAUK,UAQhC,OAPKD,GAAU5uB,QACbh4D,EAAMyC,KAAKmkF,EAAUI,cAAc9qE,IAEhC2qE,EAAW7uB,QACdh4D,EAAMyC,KAAKokF,EAAWG,cAAc9qE,KAIpCnW,MAAOA,EACPy4C,KAAMA,EACNI,MAAO74C,EAAM84C,SAAW94C,EAAM84C,SAASD,MAAQ74C,EAAM64C,MACrDE,MAAO/4C,EAAM84C,SAAW94C,EAAM84C,SAASC,MAAQ/4C,EAAM+4C,MACrDjmB,EAAGA,EACH3c,EAAGA,EACH+J,KAAMA,EACNjmB,MAAOA,IASXtD,EAAQwR,UAAUquC,oBAAsB,WACtC,MAAO,IAAIJ,GAAalhD,KAAMA,KAAK25C,IAAIvV,UAAWid,IAGpDxhD,EAAOD,QAAU6B,GAIb,SAAS5B,EAAQD,EAASM,GAyB9B,QAAS+C,GAAUk8C,EAAMt7C,GACvB7D,KAAKK,GAAKM,EAAKgF,aACf3F,KAAKm/C,KAAOA,EAEZn/C,KAAK2+C,gBACHqtC,iBAAkB,OAClBC,aAAc,UACdvtE,MAAM,EACNwtE,UAAU,EACVpqF,OAAO,EACPqqF,YAAa,QACbC,QACEv7E,SAAS,EACTiuC,YAAa,UAEfhwC,MAAO,OACPu9E,UACE7tD,MAAO,GACP8tD,YAAY,EACZ7pB,MAAO,UAET8pB,eACE17E,SAAS,EACT27E,gBAAiB,cACjBlG,MAAO,IAET7mB,YACE5uD,SAAS,EACTotB,KAAM,EACNnvB,MAAO,UAET29E,YACAC,UACAjuC,QACEgjB,gBAKJzhE,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBACpC3+C,KAAK25C,OACL35C,KAAK6G,SACL7G,KAAKmkD,OAAS,KACdnkD,KAAKy+C,UACLz+C,KAAK2sF,oBAAqB,EAC1B3sF,KAAK4sF,iBAAkB,EACvB5sF,KAAK6sF,yBAA0B,EAC/B7sF,KAAK8sF,kBAAmB,CAExB,IAAI9sD,GAAKhgC,IACTA,MAAKsgD,UAAY,KACjBtgD,KAAKugD,WAAa,KAGlBvgD,KAAK+jE,eACH99C,IAAO,SAAanb,EAAO60B,EAAQC,GACjCI,EAAGgkC,OAAOrkC,EAAO19B,QAEnBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGikC,UAAUtkC,EAAO19B,QAEtB0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGkkC,UAAUvkC,EAAO19B,SAKxBjC,KAAKmkE,gBACHl+C,IAAO,SAAanb,EAAO60B,EAAQC,GACjCI,EAAGokC,aAAazkC,EAAO19B,QAEzBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGqkC,gBAAgB1kC,EAAO19B,QAE5B0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGskC,gBAAgB3kC,EAAO19B,SAI9BjC,KAAKiC,SACLjC,KAAK2hD,aACL3hD,KAAK+sF,UAAY/sF,KAAKm/C,KAAKe,MAAMvN;AACjC3yC,KAAKykE,eAELzkE,KAAKgtF,eACLhtF,KAAKg/B,WAAWn7B,GAChB7D,KAAKitF,0BAA4B,GACjCjtF,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnCY,EAAG+sD,UAAY/sD,EAAGmf,KAAKe,MAAMvN,MAC7B3S,EAAGktD,IAAIp+E,MAAMnG,KAAOhI,EAAK8K,OAAOK,QAAQk0B,EAAGn5B,MAAM23B,OAEjDwB,EAAG8sD,kBAAmB,EAEtB9sD,EAAGyM,OAAOlsC,KAAKy/B,KAIjBhgC,KAAKk/C,UACLl/C,KAAKmtF,WAAcD,IAAKltF,KAAKktF,IAAKF,YAAahtF,KAAKgtF,YAAanpF,QAAS7D,KAAK6D,QAAS46C,OAAQz+C,KAAKy+C,QAvHvG,GAAI99C,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/BsC,EAAYtC,EAAoB,IAChCyC,EAAWzC,EAAoB,IAC/B2C,EAAa3C,EAAoB,IACjC8C,EAAS9C,EAAoB,IAC7BktF,EAAOltF,EAAoB,IAC3BmtF,EAAQntF,EAAoB,IAC5BotF,EAASptF,EAAoB,IAE7BykE,EAAY,eA8GhB1hE,GAAUgQ,UAAY,GAAIzQ,GAK1BS,EAAUgQ,UAAUisC,QAAU,WAC5B,GAAI3U,GAAQnN,SAASM,cAAc,MACnC6M,GAAMxhC,UAAY,iBAClB/I,KAAK25C,IAAIpP,MAAQA,EAGjBvqC,KAAKktF,IAAM9vD,SAASC,gBAAgB,6BAA8B,OAClEr9B,KAAKktF,IAAIp+E,MAAM2/B,SAAW,WAC1BzuC,KAAKktF,IAAIp+E,MAAM2vB,QAAU,GAAKz+B,KAAK6D,QAAQsoF,aAAahgF,QAAQ,KAAM,IAAM,KAC5EnM,KAAKktF,IAAIp+E,MAAMwmE,QAAU,QACzB/qC,EAAMjN,YAAYt9B,KAAKktF,KAGvBltF,KAAK6D,QAAQ4oF,SAAS3tC,YAAc,OACpC9+C,KAAK2rF,UAAY,GAAIhpF,GAAS3C,KAAKm/C,KAAMn/C,KAAK6D,QAAQ4oF,SAAUzsF,KAAKktF,IAAKltF,KAAK6D,QAAQ46C,QAEvFz+C,KAAK6D,QAAQ4oF,SAAS3tC,YAAc,QACpC9+C,KAAK4rF,WAAa,GAAIjpF,GAAS3C,KAAKm/C,KAAMn/C,KAAK6D,QAAQ4oF,SAAUzsF,KAAKktF,IAAKltF,KAAK6D,QAAQ46C,cACjFz+C,MAAK6D,QAAQ4oF,SAAS3tC,YAG7B9+C,KAAK6rF,WAAa,GAAI7oF,GAAOhD,KAAKm/C,KAAMn/C,KAAK6D,QAAQ6oF,OAAQ,OAAQ1sF,KAAK6D,QAAQ46C,QAClFz+C,KAAK8rF,YAAc,GAAI9oF,GAAOhD,KAAKm/C,KAAMn/C,KAAK6D,QAAQ6oF,OAAQ,QAAS1sF,KAAK6D,QAAQ46C,QAEpFz+C,KAAK0iD,QAOPz/C,EAAUgQ,UAAU+rB,WAAa,SAAUn7B,GACzC,GAAIA,EAAS,CACX,GAAIoM,IAAU,WAAY,eAAgB,QAAS,SAAU,cAAe,mBAAoB,QAAS,WAAY,WAAY,OAAQ,SAC7G1J,UAAxB1C,EAAQsoF,aAAgD5lF,SAAnB1C,EAAQ46B,QAC/Cz+B,KAAK4sF,iBAAkB,EACvB5sF,KAAK6sF,yBAA0B,GACwBtmF,SAA9CvG,KAAKm/C,KAAKC,SAAS2D,gBAAgBtkB,QAAgDl4B,SAAxB1C,EAAQsoF,aACxE5/E,UAAU1I,EAAQsoF,YAAc,IAAIhgF,QAAQ,KAAM,KAAOnM,KAAKm/C,KAAKC,SAAS2D,gBAAgBtkB,SAC9Fz+B,KAAK4sF,iBAAkB,GAG3BjsF,EAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAC/ClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,iBACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,cACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,UACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,UAErCA,EAAQ0oF,eAC0B,gBAAzB1oF,GAAQ0oF,eACb1oF,EAAQ0oF,cAAcC,kBACqB,WAAzC3oF,EAAQ0oF,cAAcC,gBACxBxsF,KAAK6D,QAAQ0oF,cAAcjG,MAAQ,EACe,WAAzCziF,EAAQ0oF,cAAcC,gBAC/BxsF,KAAK6D,QAAQ0oF,cAAcjG,MAAQ,GAEnCtmF,KAAK6D,QAAQ0oF,cAAcC,gBAAkB,cAC7CxsF,KAAK6D,QAAQ0oF,cAAcjG,MAAQ,KAMvCtmF,KAAK2rF,WACkBplF,SAArB1C,EAAQ4oF,WACVzsF,KAAK2rF,UAAU3sD,WAAWh/B,KAAK6D,QAAQ4oF,UACvCzsF,KAAK4rF,WAAW5sD,WAAWh/B,KAAK6D,QAAQ4oF,WAIxCzsF,KAAK6rF,YACgBtlF,SAAnB1C,EAAQ6oF,SACV1sF,KAAK6rF,WAAW7sD,WAAWh/B,KAAK6D,QAAQ6oF,QACxC1sF,KAAK8rF,YAAY9sD,WAAWh/B,KAAK6D,QAAQ6oF,SAIzC1sF,KAAKy+C,OAAOz4C,eAAe2+D,IAC7B3kE,KAAKy+C,OAAOkmB,GAAW3lC,WAAWn7B,GAKlC7D,KAAK25C,IAAIpP,QAEXvqC,KAAK8sF,kBAAmB,EACxB9sF,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,MAO/Ch8B,EAAUgQ,UAAUyyD,KAAO,WAErB1lE,KAAK25C,IAAIpP,MAAMl/B,YACjBrL,KAAK25C,IAAIpP,MAAMl/B,WAAW3G,YAAY1E,KAAK25C,IAAIpP,QAQnDtnC,EAAUgQ,UAAUyvC,KAAO,WAEpB1iD,KAAK25C,IAAIpP,MAAMl/B,YAClBrL,KAAKm/C,KAAKxF,IAAIvD,OAAO9Y,YAAYt9B,KAAK25C,IAAIpP,QAQ9CtnC,EAAUgQ,UAAU+tC,SAAW,SAAU/+C,GACvC,GACIw+B,GADAT,EAAKhgC,KAELgnE,EAAehnE,KAAKsgD,SAGxB,IAAKr+C,EAEE,CAAA,KAAIA,YAAiBpB,IAAWoB,YAAiBnB,IAGtD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKsgD,UAAYr+C,MAFjBjC,MAAKsgD,UAAY,IAkBnB,IAXI0mB,IAEFrmE,EAAK2I,QAAQtJ,KAAK+jE,cAAe,SAAUx6D,EAAUuB,GACnDk8D,EAAaznC,IAAIz0B,EAAOvB,KAI1Bk3B,EAAMumC,EAAa5lC,SACnBphC,KAAKkkE,UAAUzjC,IAGbzgC,KAAKsgD,UAAW,CAElB,GAAIjgD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAK+jE,cAAe,SAAUx6D,EAAUuB,GACnDk1B,EAAGsgB,UAAUlhB,GAAGt0B,EAAOvB,EAAUlJ,KAInCogC,EAAMzgC,KAAKsgD,UAAUlf,SACrBphC,KAAKgkE,OAAOvjC,KAQhBx9B,EAAUgQ,UAAU8tC,UAAY,SAAUtC,GACxC,GACIhe,GADAT,EAAKhgC,IAIT,IAAIA,KAAKugD,WAAY,CACnB5/C,EAAK2I,QAAQtJ,KAAKmkE,eAAgB,SAAU56D,EAAUuB,GACpDk1B,EAAGugB,WAAWhhB,IAAIz0B,EAAOvB,KAI3Bk3B,EAAMzgC,KAAKugD,WAAWnf,SACtBphC,KAAKugD,WAAa,IAClB,KAAK,GAAI95C,GAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAC9BzG,KAAKutF,aAAa9sD,EAAIh6B,IAK1B,GAAKg4C,EAEE,CAAA,KAAIA,YAAkB59C,IAAW49C,YAAkB39C,IAGxD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKugD,WAAa9B,MAFlBz+C,MAAKugD,WAAa,IAOpB,IAAIvgD,KAAKugD,WAAY,CAEnB,GAAIlgD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAKmkE,eAAgB,SAAU56D,EAAUuB,GACpDk1B,EAAGugB,WAAWnhB,GAAGt0B,EAAOvB,EAAUlJ,KAIpCogC,EAAMzgC,KAAKugD,WAAWnf,SACtBphC,KAAKokE,aAAa3jC,KAItBx9B,EAAUgQ,UAAUgxD,UAAY,SAAUxjC,GACxCzgC,KAAKwtF,uBAEPvqF,EAAUgQ,UAAU+wD,OAAS,SAAUvjC,GACrCzgC,KAAKikE,UAAUxjC,IAEjBx9B,EAAUgQ,UAAUixD,UAAY,SAAUzjC,GACxCzgC,KAAKikE,UAAUxjC,IAEjBx9B,EAAUgQ,UAAUoxD,gBAAkB,SAAUE,GAC9CvkE,KAAKwtF,uBAEPvqF,EAAUgQ,UAAUmxD,aAAe,SAAUG,GAC3CvkE,KAAKqkE,gBAAgBE,IAQvBthE,EAAUgQ,UAAUqxD,gBAAkB,SAAUC,GAC9C,IAAK,GAAI99D,GAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IACnCzG,KAAKutF,aAAahpB,EAAS99D,GAE7BzG,MAAK8sF,kBAAmB,EACxB9sF,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,KAQ7Ch8B,EAAUgQ,UAAUs6E,aAAe,SAAU7pC,GACvC1jD,KAAKy+C,OAAOz4C,eAAe09C,KACwB,SAAjD1jD,KAAKy+C,OAAOiF,GAAS7/C,QAAQmoF,kBAC/BhsF,KAAK4rF,WAAW6B,YAAY/pC,GAC5B1jD,KAAK8rF,YAAY2B,YAAY/pC,GAC7B1jD,KAAK8rF,YAAYr/C,WAEjBzsC,KAAK2rF,UAAU8B,YAAY/pC,GAC3B1jD,KAAK6rF,WAAW4B,YAAY/pC,GAC5B1jD,KAAK6rF,WAAWp/C,gBAEXzsC,MAAKy+C,OAAOiF,KAWvBzgD,EAAUgQ,UAAUy6E,aAAe,SAAUzqC,EAAOS,GAC7C1jD,KAAKy+C,OAAOz4C,eAAe09C,IAU9B1jD,KAAKy+C,OAAOiF,GAASxjB,OAAO+iB,GACyB,SAAjDjjD,KAAKy+C,OAAOiF,GAAS7/C,QAAQmoF,kBAC/BhsF,KAAK4rF,WAAWxoB,YAAY1f,EAAS1jD,KAAKy+C,OAAOiF,IACjD1jD,KAAK8rF,YAAY1oB,YAAY1f,EAAS1jD,KAAKy+C,OAAOiF,IAElD1jD,KAAK2rF,UAAU8B,YAAY/pC,GAC3B1jD,KAAK6rF,WAAW4B,YAAY/pC,KAE5B1jD,KAAK2rF,UAAUvoB,YAAY1f,EAAS1jD,KAAKy+C,OAAOiF,IAChD1jD,KAAK6rF,WAAWzoB,YAAY1f,EAAS1jD,KAAKy+C,OAAOiF,IAEjD1jD,KAAK4rF,WAAW6B,YAAY/pC,GAC5B1jD,KAAK8rF,YAAY2B,YAAY/pC,MArB/B1jD,KAAKy+C,OAAOiF,GAAW,GAAI7gD,GAAWogD,EAAOS,EAAS1jD,KAAK6D,QAAS7D,KAAKitF,0BACpB,SAAjDjtF,KAAKy+C,OAAOiF,GAAS7/C,QAAQmoF,kBAC/BhsF,KAAK4rF,WAAW+B,SAASjqC,EAAS1jD,KAAKy+C,OAAOiF,IAC9C1jD,KAAK8rF,YAAY6B,SAASjqC,EAAS1jD,KAAKy+C,OAAOiF,MAE/C1jD,KAAK2rF,UAAUgC,SAASjqC,EAAS1jD,KAAKy+C,OAAOiF,IAC7C1jD,KAAK6rF,WAAW8B,SAASjqC,EAAS1jD,KAAKy+C,OAAOiF,MAkBlD1jD,KAAK6rF,WAAWp/C,SAChBzsC,KAAK8rF,YAAYr/C,UAQnBxpC,EAAUgQ,UAAUu6E,oBAAsB,WACxC,GAAsB,MAAlBxtF,KAAKsgD,UAAmB,CAK1B,IAAK,GAJDstC,MACA3rF,EAAQjC,KAAKsgD,UAAUtpB,MAEvB62D,KACKpnF,EAAI,EAAGA,EAAIxE,EAAMqE,OAAQG,IAAK,CACrC,GAAI+K,GAAOvP,EAAMwE,GACbi9C,EAAUlyC,EAAKyxC,OACH,OAAZS,GAAgCn9C,SAAZm9C,KACtBA,EAAUihB,GAEZkpB,EAAY7nF,eAAe09C,GAAWmqC,EAAYnqC,KAAamqC,EAAYnqC,GAAW,EAGxF,IAAK,GAAIj9C,GAAI,EAAGA,EAAIxE,EAAMqE,OAAQG,IAAK,CACrC,GAAI+K,GAAOvP,EAAMwE,GACbi9C,EAAUlyC,EAAKyxC,OACH,OAAZS,GAAgCn9C,SAAZm9C,KACtBA,EAAUihB,GAEPipB,EAAc5nF,eAAe09C,KAChCkqC,EAAclqC,GAAW,GAAI58C,OAAM+mF,EAAYnqC,IAGjD,IAAIoqC,GAAWntF,EAAK0P,aAAamB,EACjCs8E,GAASlwD,EAAIj9B,EAAKgH,QAAQ6J,EAAKosB,EAAG,QAClCkwD,EAASC,SAAWv8E,EAAKyP,EACzB6sE,EAAS7sE,EAAI5c,OAAOmN,EAAKyP,EAEzB,IAAI7X,GAAQwkF,EAAclqC,GAASp9C,OAASunF,EAAYnqC,IACxDkqC,GAAclqC,GAASt6C,GAAS0kF,EAIlC,IAAK,GAAIpqC,KAAW1jD,MAAKy+C,OACnBz+C,KAAKy+C,OAAOz4C,eAAe09C,KACxBkqC,EAAc5nF,eAAe09C,KAChCkqC,EAAclqC,GAAW,GAAI58C,OAAM,IAMzC,KAAK,GAAI48C,KAAWkqC,GAClB,GAAIA,EAAc5nF,eAAe09C,GAC/B,GAAqC,GAAjCkqC,EAAclqC,GAASp9C,OACrBtG,KAAKy+C,OAAOz4C,eAAe09C,IAC7B1jD,KAAKutF,aAAa7pC,OAEf,CACL,GAAIT,GAAQ18C,MACWA,SAAnBvG,KAAKugD,aACP0C,EAAQjjD,KAAKugD,WAAWvpB,IAAI0sB,IAEjBn9C,QAAT08C,IACFA,GAAU5iD,GAAIqjD,EAASrlB,QAASr+B,KAAK6D,QAAQooF,aAAevoC,IAE9D1jD,KAAK0tF,aAAazqC,EAAOS,GACzB1jD,KAAKy+C,OAAOiF,GAAS1C,SAAS4sC,EAAclqC,IAIlD1jD,KAAK8sF,kBAAmB,EACxB9sF,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAa3Y,OAAO,MAQ/Ch8B,EAAUgQ,UAAUw5B,OAAS,WAC3B,GAAIsvB,IAAU,CAGd/7D,MAAK6G,MAAM23B,MAAQx+B,KAAK25C,IAAIpP,MAAMyP,YAClCh6C,KAAK6G,MAAM43B,OAASz+B,KAAKm/C,KAAKC,SAAS2D,gBAAgBtkB,OAASz+B,KAAKm/C,KAAKC,SAASlxC,OAAOrF,IAAM7I,KAAKm/C,KAAKC,SAASlxC,OAAOmgC,OAG1H0tB,EAAU/7D,KAAK87D,cAAgBC,CAG/B,IAAIkK,GAAkBjmE,KAAKm/C,KAAKe,MAAMrN,IAAM7yC,KAAKm/C,KAAKe,MAAMvN,MACxDuzB,EAASD,GAAmBjmE,KAAKmmE,mBA2BrC,IA1BAnmE,KAAKmmE,oBAAsBF,EAIZ,GAAXlK,IACF/7D,KAAKktF,IAAIp+E,MAAM0vB,MAAQ79B,EAAK8K,OAAOK,OAAO,EAAI9L,KAAK6G,MAAM23B,OACzDx+B,KAAKktF,IAAIp+E,MAAMnG,KAAOhI,EAAK8K,OAAOK,QAAQ9L,KAAK6G,MAAM23B,QAGN,KAA1Cx+B,KAAK6D,QAAQ46B,OAAS,IAAIl3B,QAAQ,MAA8C,GAAhCvH,KAAK6sF,2BACxD7sF,KAAK4sF,iBAAkB,IAKC,GAAxB5sF,KAAK4sF,iBACH5sF,KAAK6D,QAAQsoF,aAAensF,KAAK6G,MAAM43B,OAAS,OAClDz+B,KAAK6D,QAAQsoF,YAAcnsF,KAAK6G,MAAM43B,OAAS,KAC/Cz+B,KAAKktF,IAAIp+E,MAAM2vB,OAASz+B,KAAK6G,MAAM43B,OAAS,MAE9Cz+B,KAAK4sF,iBAAkB,GAEvB5sF,KAAKktF,IAAIp+E,MAAM2vB,QAAU,GAAKz+B,KAAK6D,QAAQsoF,aAAahgF,QAAQ,KAAM,IAAM,KAI/D,GAAX4vD,GAA6B,GAAVmK,GAA6C,GAA3BlmE,KAAK2sF,oBAAuD,GAAzB3sF,KAAK8sF,iBAC/E/wB,EAAU/7D,KAAKguF,gBAAkBjyB,EACjC/7D,KAAK8sF,kBAAmB,MAGxB,IAAsB,GAAlB9sF,KAAK+sF,UAAgB,CACvB,GAAIvlE,GAASxnB,KAAKm/C,KAAKe,MAAMvN,MAAQ3yC,KAAK+sF,UACtC7sC,EAAQlgD,KAAKm/C,KAAKe,MAAMrN,IAAM7yC,KAAKm/C,KAAKe,MAAMvN,KAClD,IAAwB,GAApB3yC,KAAK6G,MAAM23B,MAAY,CACzB,GAAIyvD,GAAmBjuF,KAAK6G,MAAM23B,MAAQ0hB,EACtC/hB,EAAU3W,EAASymE,CACvBjuF,MAAKktF,IAAIp+E,MAAMnG,MAAQ3I,KAAK6G,MAAM23B,MAAQL,EAAU,MAM1D,MAFAn+B,MAAK6rF,WAAWp/C,SAChBzsC,KAAK8rF,YAAYr/C,SACVsvB,GAGT94D,EAAUgQ,UAAUi7E,mBAAqB,WAEvC,GAAIC,KACJ,KAAK,GAAIzqC,KAAW1jD,MAAKy+C,OACvB,GAAIz+C,KAAKy+C,OAAOz4C,eAAe09C,GAAU,CACvC,GAAIT,GAAQjjD,KAAKy+C,OAAOiF,EACH,IAAjBT,EAAMhQ,SAAgE1sC,SAA5CvG,KAAK6D,QAAQ46C,OAAOgjB,WAAW/d,IAAqE,GAA3C1jD,KAAK6D,QAAQ46C,OAAOgjB,WAAW/d,IACpHyqC,EAAU3mF,MAAOnH,GAAIqjD,EAAS0qC,OAAQnrC,EAAMp/C,QAAQuqF,SAI1DztF,EAAK2P,WAAW69E,EAAW,SAAUjoF,EAAGC,GACtC,GAAI4iC,GAAK7iC,EAAEkoF,OACPC,EAAKloF,EAAEioF,MAGX,OAFW7nF,UAAPwiC,IAAkBA,EAAK,GAChBxiC,SAAP8nF,IAAkBA,EAAK,GACpBtlD,GAAMslD,EAAK,EAASA,EAALtlD,EAAU,GAAK,GAGvC,KAAK,GADDw7B,GAAW,GAAIz9D,OAAMqnF,EAAU7nF,QAC1BG,EAAI,EAAGA,EAAI0nF,EAAU7nF,OAAQG,IACpC89D,EAAS99D,GAAK0nF,EAAU1nF,GAAGpG,EAE7B,OAAOkkE,IAOTthE,EAAUgQ,UAAU+6E,aAAe,WAGjC,GADAptF,EAAQ87B,gBAAgB18B,KAAKgtF,aACL,GAApBhtF,KAAK6G,MAAM23B,OAAgC,MAAlBx+B,KAAKsgD,UAAmB,CACnD,GAAI2C,GAAOx8C,EACP6nF,KACAC,GAAe,EAEfC,EAAUxuF,KAAKm/C,KAAKx+C,KAAKq/C,cAAchgD,KAAKm/C,KAAKC,SAAS1/C,KAAK8+B,OAC/DiwD,EAAUzuF,KAAKm/C,KAAKx+C,KAAKq/C,aAAa,EAAIhgD,KAAKm/C,KAAKC,SAAS1/C,KAAK8+B,OAGlE+lC,EAAWvkE,KAAKkuF,oBACpB,IAAI3pB,EAASj+D,OAAS,EAAG,CACvB,GAAIi6C,KASJ,KANAvgD,KAAK0uF,iBAAiBnqB,EAAUhkB,EAAYiuC,EAASC,GAGrDzuF,KAAK2uF,eAAepqB,EAAUhkB,GAGzB95C,EAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAC/BzG,KAAK4uF,qBAAqBruC,EAAWgkB,EAAS99D,IAWhD,IAPAzG,KAAK6uF,YAAYtqB,EAAUhkB,EAAY+tC,GAGvCC,EAAevuF,KAAK8uF,aAAavqB,EAAU+pB,GAIvB,GAAhBC,EAGF,MAFA3tF,GAAQm8B,gBAAgB/8B,KAAKgtF,aAC7BhtF,KAAK2sF,oBAAqB,GACnB,CAET3sF,MAAK2sF,oBAAqB,CAG1B,IAAIoC,GAAQxoF,MACZ,KAAKE,EAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAC/Bw8C,EAAQjjD,KAAKy+C,OAAO8lB,EAAS99D,IACzBzG,KAAK6D,QAAQ/B,SAAU,GAA+B,SAAvB9B,KAAK6D,QAAQiL,QACLvI,QAArC08C,EAAMp/C,QAAQmrF,qBAAqC/rC,EAAMp/C,QAAQmrF,sBACtDzoF,QAATwoF,IACF/uF,KAAKivF,OAAO1uC,EAAW0C,EAAM5iD,IAAKkgD,EAAWwuC,EAAM1uF,KACf,GAAhC4iD,EAAMp/C,QAAQuoF,OAAOv7E,SAAwD,UAArCoyC,EAAMp/C,QAAQuoF,OAAOttC,cACvB,OAApCmE,EAAMp/C,QAAQuoF,OAAOttC,aAA6D,UAArCiwC,EAAMlrF,QAAQuoF,OAAOttC,aACpEiwC,EAAMlrF,QAAQuoF,OAAOttC,YAAc,QACnCiwC,EAAMlrF,QAAQuoF,OAAO1oC,QAAUT,EAAM5iD,KAErC4iD,EAAMp/C,QAAQuoF,OAAOttC,YAAc,QACnCmE,EAAMp/C,QAAQuoF,OAAO1oC,QAAUqrC,EAAM1uF,MAI3C0uF,EAAQ9rC,IAGZjjD,KAAKkvF,qBAAqB3uC,EAAWgkB,EAAS99D,IAAKw8C,EAIrD,IAAI3oB,KACJ,KAAK7zB,EAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAE/B,GADAw8C,EAAQjjD,KAAKy+C,OAAO8lB,EAAS99D,IACD,SAAxBw8C,EAAMp/C,QAAQiL,OAAoD,GAAhCm0C,EAAMp/C,QAAQuoF,OAAOv7E,QAAiB,CAC1E,GAAIiyC,GAAUvC,EAAWgkB,EAAS99D,GAClC,IAAe,MAAXq8C,GAAqC,GAAlBA,EAAQx8C,OAC7B,QAKF,IAHKg0B,EAAMt0B,eAAeu+D,EAAS99D,MACjC6zB,EAAMiqC,EAAS99D,IAAM4mF,EAAM8B,SAASrsC,EAASG,IAEN,UAArCA,EAAMp/C,QAAQuoF,OAAOttC,YAAyB,CAChD,GAAIswC,GAAansC,EAAMp/C,QAAQuoF,OAAO1oC,OACtC,IAAqC,KAAjC6gB,EAASh9D,QAAQ6nF,GAAoB,CACvCzvE,QAAQu+B,IAAI+E,EAAM5iD,GAAK,wCAA0C+uF,EACjE,UAEG90D,EAAMt0B,eAAeopF,KACxB90D,EAAM80D,GAAc/B,EAAM8B,SAAS5uC,EAAW6uC,GAAapvF,KAAKy+C,OAAO2wC,KAEzE/B,EAAMgC,YAAY/0D,EAAMiqC,EAAS99D,IAAKw8C,EAAO3oB,EAAM80D,GAAapvF,KAAKmtF,eAErEE,GAAMgC,YAAY/0D,EAAMiqC,EAAS99D,IAAKw8C,EAAO18C,OAAWvG,KAAKmtF,WAOnE,IADAC,EAAKpR,KAAKzX,EAAUhkB,EAAYvgD,KAAKmtF,WAChC1mF,EAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAE/B,GADAw8C,EAAQjjD,KAAKy+C,OAAO8lB,EAAS99D,IACzB85C,EAAWgkB,EAAS99D,IAAIH,OAAS,EACnC,OAAQ28C,EAAMp/C,QAAQiL,OACpB,IAAK,OACEwrB,EAAMt0B,eAAeu+D,EAAS99D,MACjC6zB,EAAMiqC,EAAS99D,IAAM4mF,EAAM8B,SAAS5uC,EAAWgkB,EAAS99D,IAAKw8C,IAE/DoqC,EAAMrR,KAAK1hD,EAAMiqC,EAAS99D,IAAKw8C,EAAOjjD,KAAKmtF,UAE7C,KAAK,QAEL,IAAK,UACwB,SAAvBlqC,EAAMp/C,QAAQiL,OAA2C,UAAvBm0C,EAAMp/C,QAAQiL,OAAyD,GAApCm0C,EAAMp/C,QAAQ47D,WAAW5uD,UAChGy8E,EAAOtR,KAAKz7B,EAAWgkB,EAAS99D,IAAKw8C,EAAOjjD,KAAKmtF,UAEnD,MACF,KAAK,SAaf,MADAvsF,GAAQm8B,gBAAgB/8B,KAAKgtF,cACtB,GAGT/pF,EAAUgQ,UAAUg8E,OAAS,SAAUj3E,EAAMs3E,GAC3C,GAAIlmF,GAAOygC,EAAIC,EAAIylD,EAAcC,CACjCpmF,GAAQ,CAER,KAAK,GAAIqH,GAAI,EAAGA,EAAIuH,EAAK1R,OAAQmK,IAAK,CACpC8+E,EAAehpF,OACfipF,EAAejpF,MAEf,KAAK,GAAIiK,GAAIpH,EAAOoH,EAAI8+E,EAAQhpF,OAAQkK,IAAK,CAE3C,GAAI8+E,EAAQ9+E,GAAGotB,IAAM5lB,EAAKvH,GAAGmtB,EAAG,CAC9B2xD,EAAeD,EAAQ9+E,GACvBg/E,EAAeF,EAAQ9+E,GACvBpH,EAAQoH,CACR,OACK,GAAI8+E,EAAQ9+E,GAAGotB,EAAI5lB,EAAKvH,GAAGmtB,EAAG,CAEnC4xD,EAAeF,EAAQ9+E,GAErB++E,EADO,GAAL/+E,EACag/E,EAEAF,EAAQ9+E,EAAI,GAE7BpH,EAAQoH,CACR,QAIiBjK,SAAjBipF,IACFD,EAAeD,EAAQA,EAAQhpF,OAAS,GACxCkpF,EAAeF,EAAQA,EAAQhpF,OAAS,IAG1CujC,EAAK2lD,EAAa5xD,EAAI2xD,EAAa3xD,EACnCkM,EAAK0lD,EAAavuE,EAAIsuE,EAAatuE,EACzB,GAAN4oB,EACF7xB,EAAKvH,GAAGwQ,EAAIjJ,EAAKvH,GAAGs9E,SAAWyB,EAAavuE,EAE5CjJ,EAAKvH,GAAGwQ,EAAIjJ,EAAKvH,GAAGs9E,SAAWjkD,EAAKD,GAAM7xB,EAAKvH,GAAGmtB,EAAI2xD,EAAa3xD,GAAK2xD,EAAatuE,IAkB3Fhe,EAAUgQ,UAAUy7E,iBAAmB,SAAUnqB,EAAUhkB,EAAYiuC,EAASC,GAC9E,GAAIxrC,GAAOx8C,EAAGgK,EAAGe,CACjB,IAAI+yD,EAASj+D,OAAS,EACpB,IAAKG,EAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAAK,CACpCw8C,EAAQjjD,KAAKy+C,OAAO8lB,EAAS99D,GAC7B,IAAI65C,GAAY2C,EAAMgkB,UAEtB,IAA0B,GAAtBhkB,EAAMp/C,QAAQ6a,KAAc,CAC9B,GAAI+wE,GAAiB,SAAwBvpF,EAAGC,GAC9C,MAAOD,GAAEyO,WAAaxO,EAAEwO,UAAY,EAAQxO,EAAJD,EAAQ,GAAK,GAEnDwpF,EAAQzqF,KAAKJ,IAAI,EAAGlE,EAAK+Q,kBAAkB4uC,EAAWkuC,EAAS,IAAK,SAAUiB,IAC9E3jC,EAAO7mD,KAAKL,IAAI07C,EAAUh6C,OAAQ3F,EAAK+Q,kBAAkB4uC,EAAWmuC,EAAS,IAAK,QAASgB,GAAkB,EACrG,IAAR3jC,IACFA,EAAOxL,EAAUh6C,OAEnB,IAAIqpF,GAAgB,GAAI7oF,OAAMglD,EAAO4jC,EACrC,KAAKj/E,EAAIi/E,EAAW5jC,EAAJr7C,EAAUA,IACxBe,EAAOyxC,EAAM3C,UAAU7vC,GACvBk/E,EAAcl/E,EAAIi/E,GAASl+E,CAE7B+uC,GAAWgkB,EAAS99D,IAAMkpF,MAG1BpvC,GAAWgkB,EAAS99D,IAAMw8C,EAAM3C,YAYxCr9C,EAAUgQ,UAAU07E,eAAiB,SAAUpqB,EAAUhkB,GACvD,GAAI0C,EACJ,IAAIshB,EAASj+D,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAEnC,GADAw8C,EAAQjjD,KAAKy+C,OAAO8lB,EAAS99D,IACC,GAA1Bw8C,EAAMp/C,QAAQqoF,SAAkB,CAClC,GAAIyD,GAAgBpvC,EAAWgkB,EAAS99D,GACxC,IAAIkpF,EAAcrpF,OAAS,EAAG,CAC5B,GAAIspF,GAAY,EACZC,EAAiBF,EAAcrpF,OAI/BwpF,EAAY9vF,KAAKm/C,KAAKx+C,KAAKi/C,eAAe+vC,EAAcA,EAAcrpF,OAAS,GAAGs3B,GAAK59B,KAAKm/C,KAAKx+C,KAAKi/C,eAAe+vC,EAAc,GAAG/xD,GACtImyD,EAAiBF,EAAiBC,CACtCF,GAAY3qF,KAAKL,IAAIK,KAAKoR,KAAK,GAAMw5E,GAAiB5qF,KAAKJ,IAAI,EAAGI,KAAKsjB,MAAMwnE,IAG7E,KAAK,GADDC,GAAc,GAAIlpF,OAAM+oF,GACnBp/E,EAAI,EAAOo/E,EAAJp/E,EAAoBA,GAAKm/E,EAAW,CAClD,GAAIrqC,GAAMtgD,KAAKsjB,MAAM9X,EAAIm/E,EACzBI,GAAYzqC,GAAOoqC,EAAcl/E,GAEnC8vC,EAAWgkB,EAAS99D,IAAMupF,EAAY3mF,OAAO,EAAGpE,KAAKsjB,MAAMsnE,EAAiBD,OAetF3sF,EAAUgQ,UAAU47E,YAAc,SAAUtqB,EAAUhkB,EAAY+tC,GAChE,GAAI9mB,GAAWvkB,EAAOx8C,EAGlB5C,EAFAosF,KACAC,IAEJ,IAAI3rB,EAASj+D,OAAS,EAAG,CACvB,IAAKG,EAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAC/B+gE,EAAYjnB,EAAWgkB,EAAS99D,IAChC5C,EAAU7D,KAAKy+C,OAAO8lB,EAAS99D,IAAI5C,QAC/B2jE,EAAUlhE,OAAS,IACrB28C,EAAQjjD,KAAKy+C,OAAO8lB,EAAS99D,IAEzB5C,EAAQ/B,SAAU,GAA0B,QAAlB+B,EAAQiL,MACH,SAA7BjL,EAAQmoF,iBACViE,EAAmBA,EAAiBpwD,OAAOojB,EAAMgkB,YAEjDipB,EAAoBA,EAAkBrwD,OAAOojB,EAAMgkB,YAGrDqnB,EAAY/pB,EAAS99D,IAAMw8C,EAAMktC,UAAU3oB,EAAWjD,EAAS99D,IAMrE2mF,GAAKgD,iBAAiBH,EAAkB3B,EAAa/pB,EAAU,iBAAkB,QACjF6oB,EAAKgD,iBAAiBF,EAAmB5B,EAAa/pB,EAAU,kBAAmB,WAUvFthE,EAAUgQ,UAAU67E,aAAe,SAAUvqB,EAAU+pB,GACrD,GAOI+B,GACAC,EARAv0B,GAAU,EACVw0B,GAAgB,EAChBC,GAAiB,EACjBC,EAAU,IACVC,EAAW,IACXC,EAAU,KACVC,EAAW,IAIf,IAAIrsB,EAASj+D,OAAS,EAAG,CAEvB,IAAK,GAAIG,GAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAAK,CACxC,GAAIw8C,GAAQjjD,KAAKy+C,OAAO8lB,EAAS99D,GAC7Bw8C,IAA2C,SAAlCA,EAAMp/C,QAAQmoF,kBACzBuE,GAAgB,EAChBE,EAAU,IACVE,EAAU,MACD1tC,GAASA,EAAMp/C,QAAQmoF,mBAChCwE,GAAiB,EACjBE,EAAW,IACXE,EAAW,MAKf,IAAK,GAAInqF,GAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAC/B6nF,EAAYtoF,eAAeu+D,EAAS99D,KAClC6nF,EAAY/pB,EAAS99D,IAAIoqF,UAAW,IACtCR,EAAS/B,EAAY/pB,EAAS99D,IAAI7B,IAClC0rF,EAAShC,EAAY/pB,EAAS99D,IAAI5B,IAEe,SAA7CypF,EAAY/pB,EAAS99D,IAAIulF,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,GACFvwF,KAAK2rF,UAAU7tC,SAAS2yC,EAASE,GAEb,GAAlBH,GACFxwF,KAAK4rF,WAAW9tC,SAAS4yC,EAAUE,GAGvC70B,EAAU/7D,KAAK8wF,qBAAqBP,EAAevwF,KAAK2rF,YAAc5vB,EACtEA,EAAU/7D,KAAK8wF,qBAAqBN,EAAgBxwF,KAAK4rF,aAAe7vB,EAElD,GAAlBy0B,GAA2C,GAAjBD,GAC5BvwF,KAAK2rF,UAAUoF,WAAY,EAC3B/wF,KAAK4rF,WAAWmF,WAAY,IAE5B/wF,KAAK2rF,UAAUoF,WAAY,EAC3B/wF,KAAK4rF,WAAWmF,WAAY,GAE9B/wF,KAAK4rF,WAAWoF,QAAUT,EAC1BvwF,KAAK4rF,WAAWqF,WAAajxF,KAAK2rF,UAEJ,GAA1B3rF,KAAK4rF,WAAWoF,QACI,GAAlBR,EACFxwF,KAAK2rF,UAAUuF,WAAalxF,KAAK4rF,WAAWptD,MAE5Cx+B,KAAK2rF,UAAUuF,WAAa,EAG9Bn1B,EAAU/7D,KAAK2rF,UAAUl/C,UAAYsvB,EACrCA,EAAU/7D,KAAK4rF,WAAWn/C,UAAYsvB,GAEtCA,EAAU/7D,KAAK4rF,WAAWn/C,UAAYsvB,CAKxC,KAAK,GADDo1B,IAAc,iBAAkB,kBAAmB,kBAAmB,oBACjE1qF,EAAI,EAAGA,EAAI0qF,EAAW7qF,OAAQG,IACE,IAAnC89D,EAASh9D,QAAQ4pF,EAAW1qF,KAC9B89D,EAASl7D,OAAOk7D,EAASh9D,QAAQ4pF,EAAW1qF,IAAK,EAIrD,OAAOs1D,IAWT94D,EAAUgQ,UAAU69E,qBAAuB,SAAUM,EAAUryC,GAC7D,GAAI4O,IAAU,CAYd,OAXgB,IAAZyjC,EACEryC,EAAKpF,IAAIpP,MAAMl/B,YAA6B,GAAf0zC,EAAKge,SACpChe,EAAK2mB,OACL/X,GAAU,GAGP5O,EAAKpF,IAAIpP,MAAMl/B,YAA6B,GAAf0zC,EAAKge,SACrChe,EAAK2D,OACLiL,GAAU,GAGPA,GAYT1qD,EAAUgQ,UAAU27E,qBAAuB,SAAUyC,GAEnD,IAAK,GADD3xC,GAAW1/C,KAAKm/C,KAAKx+C,KAAK++C,SACrBj5C,EAAI,EAAGA,EAAI4qF,EAAW/qF,OAAQG,IACrC4qF,EAAW5qF,GAAG6qF,SAAW5xC,EAAS2xC,EAAW5qF,GAAGm3B,GAAK59B,KAAK6G,MAAM23B,MAChE6yD,EAAW5qF,GAAG8qF,SAAWF,EAAW5qF,GAAGwa,GAc3Che,EAAUgQ,UAAUi8E,qBAAuB,SAAUmC,EAAYpuC,GAC/D,GAAIlE,GAAO/+C,KAAK2rF,UACZ6F,EAAYntF,OAAOrE,KAAKktF,IAAIp+E,MAAM2vB,OAAOtyB,QAAQ,KAAM,IACrB,UAAlC82C,EAAMp/C,QAAQmoF,mBAChBjtC,EAAO/+C,KAAK4rF,WAEd,KAAK,GAAInlF,GAAI,EAAGA,EAAI4qF,EAAW/qF,OAAQG,IACrC4qF,EAAW5qF,GAAG8qF,SAAWtsF,KAAKsjB,MAAMw2B,EAAK0yC,aAAaJ,EAAW5qF,GAAGwa,GAEtEgiC,GAAMyuC,gBAAgBzsF,KAAKL,IAAI4sF,EAAWzyC,EAAK0yC,aAAa,MAG9D5xF,EAAOD,QAAUqD,GAIb,SAASpD,EAAQD,EAASM,GAgB9B,QAASyC,GAASw8C,EAAMt7C,EAASqpF,EAAKyE,GACpC3xF,KAAKK,GAAKM,EAAKgF,aACf3F,KAAKm/C,KAAOA,EAEZn/C,KAAK2+C,gBACHG,YAAa,OACbwzB,iBAAiB,EACjBC,iBAAiB,EACjBqf,OAAO,EACPC,iBAAkB,EAClBC,iBAAkB,EAClBC,aAAc,GACdC,aAAc,EACdC,UAAW,GACXzzD,MAAO,OACPyU,SAAS,EACTi/C,YAAY,EACZvpF,MACEu3C,OAASt7C,IAAK2B,OAAW1B,IAAK0B,QAC9B8M,OAAQ,SAAgBtO,GACtB,MAAO,GAAKV,OAAO+lB,WAAWrlB,EAAMw5C,YAAY,KAElDkiB,OAAS7sB,KAAMrtC,OAAWuI,MAAOvI,SAEnCqrC,OACEsO,OAASt7C,IAAK2B,OAAW1B,IAAK0B,QAC9B8M,OAAQ,SAAgBtO,GACtB,MAAO,GAAKV,OAAO+lB,WAAWrlB,EAAMw5C,YAAY,KAElDkiB,OAAS7sB,KAAMrtC,OAAWuI,MAAOvI,UAIrCvG,KAAK2xF,iBAAmBA,EACxB3xF,KAAKmyF,aAAejF,EACpBltF,KAAK6G,SACL7G,KAAKoyF,aACHlgB,SACAmgB,UACA5xB,UAGFzgE,KAAK25C,OACL35C,KAAKgF,MAAQuB,OACbvG,KAAKkgD,OAAUvN,MAAO,EAAGE,IAAK,GAE9B7yC,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBACpC3+C,KAAKsyF,iBAAmB,EAExBtyF,KAAKg/B,WAAWn7B,GAChB7D,KAAKw+B,MAAQn6B,QAAQ,GAAKrE,KAAK6D,QAAQ26B,OAAOryB,QAAQ,KAAM,KAC5DnM,KAAKuyF,SAAWvyF,KAAKw+B,MACrBx+B,KAAKy+B,OAASz+B,KAAKmyF,aAAazpF,wBAAwB+1B,OACxDz+B,KAAK+8D,QAAS,EAEd/8D,KAAKwyF,WAAa,GAClBxyF,KAAKyyF,aAAe,GACpBzyF,KAAK0yF,cAAgB,GAErB1yF,KAAKkxF,WAAa,EAClBlxF,KAAKgxF,QAAS,EACdhxF,KAAKixF,WAAa,KAClBjxF,KAAKgtF,eACLhtF,KAAK2yF,cAAe,EAEpB3yF,KAAKy+C,UACLz+C,KAAK4yF,eAAiB,EAGtB5yF,KAAKk/C,UACLl/C,KAAKmtF,WAAcD,IAAKltF,KAAKktF,IAAKF,YAAahtF,KAAKgtF,YAAanpF,QAAS7D,KAAK6D,QAAS46C,OAAQz+C,KAAKy+C,OAErG,IAAIze,GAAKhgC,IACTA,MAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnCY,EAAG2Z,IAAIk5C,cAAc/jF,MAAMjG,IAAMm3B,EAAGmf,KAAKC,SAASigB,UAAY,OAtFlE,GAAI1+D,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BsC,EAAYtC,EAAoB,IAChC0C,EAAY1C,EAAoB,GAuFpCyC,GAASsQ,UAAY,GAAIzQ,GAEzBG,EAASsQ,UAAU06E,SAAW,SAAUzvD,EAAO40D,GACxC9yF,KAAKy+C,OAAOz4C,eAAek4B,KAC9Bl+B,KAAKy+C,OAAOvgB,GAAS40D,GAEvB9yF,KAAK4yF,gBAAkB,GAGzBjwF,EAASsQ,UAAUmwD,YAAc,SAAUllC,EAAO40D,GAC3C9yF,KAAKy+C,OAAOz4C,eAAek4B,KAC9Bl+B,KAAK4yF,gBAAkB,GAEzB5yF,KAAKy+C,OAAOvgB,GAAS40D,GAGvBnwF,EAASsQ,UAAUw6E,YAAc,SAAUvvD,GACrCl+B,KAAKy+C,OAAOz4C,eAAek4B,WACtBl+B,MAAKy+C,OAAOvgB,GACnBl+B,KAAK4yF,gBAAkB,IAI3BjwF,EAASsQ,UAAU+rB,WAAa,SAAUn7B,GACxC,GAAIA,EAAS,CACX,GAAI4oC,IAAS,CACTzsC,MAAK6D,QAAQi7C,aAAej7C,EAAQi7C,aAAuCv4C,SAAxB1C,EAAQi7C,cAC7DrS,GAAS,EAEX,IAAIx8B,IAAU,cAAe,kBAAmB,kBAAmB,QAAS,mBAAoB,mBAAoB,eAAgB,eAAgB,YAAa,QAAS,UAAW,OAAQ,QAAS,aACtMtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAE/C7D,KAAKuyF,SAAWluF,QAAQ,GAAKrE,KAAK6D,QAAQ26B,OAAOryB,QAAQ,KAAM,KAC3DsgC,KAAW,GAAQzsC,KAAK25C,IAAIpP,QAC9BvqC,KAAK0lE,OACL1lE,KAAK0iD,UAQX//C,EAASsQ,UAAUisC,QAAU,WAC3Bl/C,KAAK25C,IAAIpP,MAAQnN,SAASM,cAAc,OACxC19B,KAAK25C,IAAIpP,MAAMz7B,MAAM0vB,MAAQx+B,KAAK6D,QAAQ26B,MAC1Cx+B,KAAK25C,IAAIpP,MAAMz7B,MAAM2vB,OAASz+B,KAAKy+B,OAEnCz+B,KAAK25C,IAAIk5C,cAAgBz1D,SAASM,cAAc,OAChD19B,KAAK25C,IAAIk5C,cAAc/jF,MAAM0vB,MAAQ,OACrCx+B,KAAK25C,IAAIk5C,cAAc/jF,MAAM2vB,OAASz+B,KAAKy+B,OAC3Cz+B,KAAK25C,IAAIk5C,cAAc/jF,MAAM2/B,SAAW,WAGxCzuC,KAAKktF,IAAM9vD,SAASC,gBAAgB,6BAA8B,OAClEr9B,KAAKktF,IAAIp+E,MAAM2/B,SAAW,WAC1BzuC,KAAKktF,IAAIp+E,MAAMjG,IAAM,MACrB7I,KAAKktF,IAAIp+E,MAAM2vB,OAAS,OACxBz+B,KAAKktF,IAAIp+E,MAAM0vB,MAAQ,OACvBx+B,KAAKktF,IAAIp+E,MAAMwmE,QAAU,QACzBt1E,KAAK25C,IAAIpP,MAAMjN,YAAYt9B,KAAKktF,MAGlCvqF,EAASsQ,UAAU8/E,kBAAoB,WACrCnyF,EAAQ87B,gBAAgB18B,KAAKgtF,YAE7B,IAAIpvD,GACAq0D,EAAYjyF,KAAK6D,QAAQouF,UACzBe,EAAa,GACbC,EAAa,EACbhyE,EAAIgyE,EAAa,GAAMD,CAGzBp1D,GAD+B,SAA7B59B,KAAK6D,QAAQi7C,YACXm0C,EAEAjzF,KAAKw+B,MAAQyzD,EAAYgB,CAG/B,IAAIC,GAAa9rF,OAAO6H,KAAKjP,KAAKy+C,OAClCy0C,GAAWx0E,KAAK,SAAUxY,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,GAGtB,KAAK,GAAIO,GAAI,EAAGA,EAAIysF,EAAW5sF,OAAQG,IAAK,CAC1C,GAAIi9C,GAAUwvC,EAAWzsF,EACrBzG,MAAKy+C,OAAOiF,GAASzQ,WAAY,GAAuD1sC,SAA9CvG,KAAK2xF,iBAAiBlwB,WAAW/d,IAA0B1jD,KAAK2xF,iBAAiBlwB,WAAW/d,MAAa,IACrJ1jD,KAAKy+C,OAAOiF,GAAS+nC,UAAUwG,EAAWe,EAAYhzF,KAAKmtF,UAAWvvD,EAAG3c,GACzEA,GAAK+xE,EAAaC,GAItBryF,EAAQm8B,gBAAgB/8B,KAAKgtF,aAC7BhtF,KAAK2yF,cAAe,GAGtBhwF,EAASsQ,UAAUkgF,cAAgB,WAC7BnzF,KAAK2yF,gBAAiB,IACxB/xF,EAAQ87B,gBAAgB18B,KAAKgtF,aAC7BpsF,EAAQm8B,gBAAgB/8B,KAAKgtF,aAC7BhtF,KAAK2yF,cAAe,IAOxBhwF,EAASsQ,UAAUyvC,KAAO,WACxB1iD,KAAK+8D,QAAS,EACT/8D,KAAK25C,IAAIpP,MAAMl/B,aACe,SAA7BrL,KAAK6D,QAAQi7C,YACf9+C,KAAKm/C,KAAKxF,IAAIhxC,KAAK20B,YAAYt9B,KAAK25C,IAAIpP,OAExCvqC,KAAKm/C,KAAKxF,IAAI/H,MAAMtU,YAAYt9B,KAAK25C,IAAIpP,QAIxCvqC,KAAK25C,IAAIk5C,cAAcxnF,YAC1BrL,KAAKm/C,KAAKxF,IAAI+kB,qBAAqBphC,YAAYt9B,KAAK25C,IAAIk5C,gBAO5DlwF,EAASsQ,UAAUyyD,KAAO,WACxB1lE,KAAK+8D,QAAS,EACV/8D,KAAK25C,IAAIpP,MAAMl/B,YACjBrL,KAAK25C,IAAIpP,MAAMl/B,WAAW3G,YAAY1E,KAAK25C,IAAIpP,OAG7CvqC,KAAK25C,IAAIk5C,cAAcxnF,YACzBrL,KAAK25C,IAAIk5C,cAAcxnF,WAAW3G,YAAY1E,KAAK25C,IAAIk5C,gBAU3DlwF,EAASsQ,UAAU6qC,SAAW,SAAUnL,EAAOE,GAC7C7yC,KAAKkgD,MAAMvN,MAAQA,EACnB3yC,KAAKkgD,MAAMrN,IAAMA,GAOnBlwC,EAASsQ,UAAUw5B,OAAS,WAC1B,GAAIsvB,IAAU,EACVq3B,EAAe,CAGnBpzF,MAAK25C,IAAIk5C,cAAc/jF,MAAMjG,IAAM7I,KAAKm/C,KAAKC,SAASigB,UAAY,IAElE,KAAK,GAAI3b,KAAW1jD,MAAKy+C,OACnBz+C,KAAKy+C,OAAOz4C,eAAe09C,KACzB1jD,KAAKy+C,OAAOiF,GAASzQ,WAAY,GAAuD1sC,SAA9CvG,KAAK2xF,iBAAiBlwB,WAAW/d,IAA0B1jD,KAAK2xF,iBAAiBlwB,WAAW/d,MAAa,GACrJ0vC,IAIN,IAA4B,IAAxBpzF,KAAK4yF,gBAAyC,IAAjBQ,EAC/BpzF,KAAK0lE,WACA,CACL1lE,KAAK0iD,OACL1iD,KAAKy+B,OAASp6B,OAAOrE,KAAKmyF,aAAarjF,MAAM2vB,OAAOtyB,QAAQ,KAAM,KAGlEnM,KAAK25C,IAAIk5C,cAAc/jF,MAAM2vB,OAASz+B,KAAKy+B,OAAS,KACpDz+B,KAAKw+B,MAAQx+B,KAAK6D,QAAQovC,WAAY,EAAO5uC,QAAQ,GAAKrE,KAAK6D,QAAQ26B,OAAOryB,QAAQ,KAAM,KAAO,CAEnG,IAAItF,GAAQ7G,KAAK6G,MACb0jC,EAAQvqC,KAAK25C,IAAIpP,KAGrBA,GAAMxhC,UAAY,gBAGlB/I,KAAK0yE,oBAEL,IAAI5zB,GAAc9+C,KAAK6D,QAAQi7C,YAC3BwzB,EAAkBtyE,KAAK6D,QAAQyuE,gBAC/BC,EAAkBvyE,KAAK6D,QAAQ0uE,eAGnC1rE,GAAM8rE,iBAAmBL,EAAkBzrE,EAAM+rE,gBAAkB,EACnE/rE,EAAMgsE,iBAAmBN,EAAkB1rE,EAAMisE,gBAAkB,EAEnEjsE,EAAMmsE,eAAiBhzE,KAAKm/C,KAAKxF,IAAI+kB,qBAAqB1kB,YAAch6C,KAAKkxF,WAAalxF,KAAKw+B,MAAQ,EAAIx+B,KAAK6D,QAAQiuF,iBACxHjrF,EAAMksE,gBAAkB,EACxBlsE,EAAMqsE,eAAiBlzE,KAAKm/C,KAAKxF,IAAI+kB,qBAAqB1kB,YAAch6C,KAAKkxF,WAAalxF,KAAKw+B,MAAQ,EAAIx+B,KAAK6D,QAAQguF,iBACxHhrF,EAAMosE,gBAAkB,EAGJ,SAAhBn0B,GACFvU,EAAMz7B,MAAMjG,IAAM,IAClB0hC,EAAMz7B,MAAMnG,KAAO,IACnB4hC,EAAMz7B,MAAMu/B,OAAS,GACrB9D,EAAMz7B,MAAM0vB,MAAQx+B,KAAKw+B,MAAQ,KACjC+L,EAAMz7B,MAAM2vB,OAASz+B,KAAKy+B,OAAS,KACnCz+B,KAAK6G,MAAM23B,MAAQx+B,KAAKm/C,KAAKC,SAASz2C,KAAK61B,MAC3Cx+B,KAAK6G,MAAM43B,OAASz+B,KAAKm/C,KAAKC,SAASz2C,KAAK81B,SAG5C8L,EAAMz7B,MAAMjG,IAAM,GAClB0hC,EAAMz7B,MAAMu/B,OAAS,IACrB9D,EAAMz7B,MAAMnG,KAAO,IACnB4hC,EAAMz7B,MAAM0vB,MAAQx+B,KAAKw+B,MAAQ,KACjC+L,EAAMz7B,MAAM2vB,OAASz+B,KAAKy+B,OAAS,KACnCz+B,KAAK6G,MAAM23B,MAAQx+B,KAAKm/C,KAAKC,SAASxN,MAAMpT,MAC5Cx+B,KAAK6G,MAAM43B,OAASz+B,KAAKm/C,KAAKC,SAASxN,MAAMnT,QAG/Cs9B,EAAU/7D,KAAKqzF,gBACft3B,EAAU/7D,KAAK87D,cAAgBC,EAE3B/7D,KAAK6D,QAAQ+tF,SAAU,EACzB5xF,KAAK+yF,oBAEL/yF,KAAKmzF,gBAGPnzF,KAAKszF,aAAax0C,GAEpB,MAAOid,IAOTp5D,EAASsQ,UAAUogF,cAAgB,WACjC,GAAIpxC,GAAQjiD,KAER+7D,GAAU,CACdn7D,GAAQ87B,gBAAgB18B,KAAKoyF,YAAYlgB,OACzCtxE,EAAQ87B,gBAAgB18B,KAAKoyF,YAAYC,OACzC,IAAIvzC,GAAc9+C,KAAK6D,QAAqB,YACxC0vF,EAAiDhtF,QAAnCvG,KAAK6D,QAAQi7C,GAAaoB,MAAqBlgD,KAAK6D,QAAQi7C,GAAaoB,SAGvFszC,GAAe,CACIjtF,SAAnBgtF,EAAY1uF,MACd7E,KAAKkgD,MAAMrN,IAAM0gD,EAAY1uF,IAC7B2uF,GAAe,EAEjB,IAAIC,IAAiB,CACEltF,SAAnBgtF,EAAY3uF,MACd5E,KAAKkgD,MAAMvN,MAAQ4gD,EAAY3uF,IAC/B6uF,GAAiB,GAGnBzzF,KAAKgF,MAAQ,GAAIpC,GAAU5C,KAAKkgD,MAAMvN,MAAO3yC,KAAKkgD,MAAMrN,IAAK4gD,EAAgBD,EAAcxzF,KAAK25C,IAAIpP,MAAM2P,aAAcl6C,KAAK6G,MAAMisE,gBAAiB9yE,KAAK6D,QAAQquF,WAAYlyF,KAAK6D,QAAQi7C,GAAazrC,QAEnMrT,KAAKgxF,UAAW,GAA4BzqF,QAAnBvG,KAAKixF,YAChCjxF,KAAKgF,MAAM0uF,YAAY1zF,KAAKixF,WAAWjsF,OAIzChF,KAAK2zF,aAAe,CAEpB,IAAIzhB,GAAQlyE,KAAKgF,MAAM4uF,UACvB1hB,GAAM5oE,QAAQ,SAAUmwC,GACtB,GAAIx4B,GAAIw4B,EAAKx4B,EACTwrD,EAAUhzB,EAAKo6C,KACf5xC,GAAMp+C,QAAyB,iBAAK4oE,KAAY,GAClDxqB,EAAM6xC,aAAa7yE,EAAI,EAAGw4B,EAAKpkC,IAAKypC,EAAa,uBAAwBmD,EAAMp7C,MAAM+rE,iBAEnFnG,GACExrD,GAAK,GACPghC,EAAM6xC,aAAa7yE,EAAI,EAAGw4B,EAAKpkC,IAAKypC,EAAa,uBAAwBmD,EAAMp7C,MAAMisE,iBAGrF7wB,EAAM+uC,UAAW,IACfvkB,EACFxqB,EAAM8xC,YAAY9yE,EAAG69B,EAAa,oCAAqCmD,EAAMp+C,QAAQguF,iBAAkB5vC,EAAMp7C,MAAMqsE,gBAEnHjxB,EAAM8xC,YAAY9yE,EAAG69B,EAAa,oCAAqCmD,EAAMp+C,QAAQiuF,iBAAkB7vC,EAAMp7C,MAAMmsE,kBAMzH,IAAIghB,GAAa,CACuBztF,UAApCvG,KAAK6D,QAAQi7C,GAAa2hB,OAAgEl6D,SAAzCvG,KAAK6D,QAAQi7C,GAAa2hB,MAAM7sB,OACnFogD,EAAah0F,KAAK6G,MAAMotF,gBAE1B,IAAIzsE,GAASxnB,KAAK6D,QAAQ+tF,SAAU,EAAO3sF,KAAKJ,IAAI7E,KAAK6D,QAAQouF,UAAW+B,GAAch0F,KAAK6D,QAAQkuF,aAAe,GAAKiC,EAAah0F,KAAK6D,QAAQkuF,aAAe,EAyBpK,OAtBI/xF,MAAK2zF,aAAe3zF,KAAKw+B,MAAQhX,GAAUxnB,KAAK6D,QAAQovC,WAAY,GACtEjzC,KAAKw+B,MAAQx+B,KAAK2zF,aAAensE,EACjCxnB,KAAK6D,QAAQ26B,MAAQx+B,KAAKw+B,MAAQ,KAClC59B,EAAQm8B,gBAAgB/8B,KAAKoyF,YAAYlgB,OACzCtxE,EAAQm8B,gBAAgB/8B,KAAKoyF,YAAYC,QACzCryF,KAAKysC,SACLsvB,GAAU,GAGH/7D,KAAK2zF,aAAe3zF,KAAKw+B,MAAQhX,GAAUxnB,KAAK6D,QAAQovC,WAAY,GAAQjzC,KAAKw+B,MAAQx+B,KAAKuyF,UACnGvyF,KAAKw+B,MAAQv5B,KAAKJ,IAAI7E,KAAKuyF,SAAUvyF,KAAK2zF,aAAensE,GACzDxnB,KAAK6D,QAAQ26B,MAAQx+B,KAAKw+B,MAAQ,KAClC59B,EAAQm8B,gBAAgB/8B,KAAKoyF,YAAYlgB,OACzCtxE,EAAQm8B,gBAAgB/8B,KAAKoyF,YAAYC,QACzCryF,KAAKysC,SACLsvB,GAAU,IAEVn7D,EAAQm8B,gBAAgB/8B,KAAKoyF,YAAYlgB,OACzCtxE,EAAQm8B,gBAAgB/8B,KAAKoyF,YAAYC,QACzCt2B,GAAU,GAGPA,GAGTp5D,EAASsQ,UAAUw+E,aAAe,SAAU1sF,GAC1C,MAAO/E,MAAKgF,MAAMysF,aAAa1sF,IAGjCpC,EAASsQ,UAAU84E,cAAgB,SAAUnuD,GAC3C,MAAO59B,MAAKgF,MAAM+mF,cAAcnuD,IAYlCj7B,EAASsQ,UAAU6gF,aAAe,SAAU7yE,EAAG2yB,EAAMkL,EAAa/1C,EAAWmrF,GAE3E,GAAIh2D,GAAQt9B,EAAQ28B,cAAc,MAAOv9B,KAAKoyF,YAAYC,OAAQryF,KAAK25C,IAAIpP,MAC3ErM,GAAMn1B,UAAYA,EAClBm1B,EAAM2Q,UAAY+E,EACE,SAAhBkL,GACF5gB,EAAMpvB,MAAMnG,KAAO,IAAM3I,KAAK6D,QAAQkuF,aAAe,KACrD7zD,EAAMpvB,MAAMgkC,UAAY,UAExB5U,EAAMpvB,MAAM8iC,MAAQ,IAAM5xC,KAAK6D,QAAQkuF,aAAe,KACtD7zD,EAAMpvB,MAAMgkC,UAAY,QAG1B5U,EAAMpvB,MAAMjG,IAAMoY,EAAI,GAAMizE,EAAkBl0F,KAAK6D,QAAQmuF,aAAe,KAE1Ep+C,GAAQ,EAER,IAAIugD,GAAelvF,KAAKJ,IAAI7E,KAAK6G,MAAM2tE,eAAgBx0E,KAAK6G,MAAM2sE,eAC9DxzE,MAAK2zF,aAAe//C,EAAKttC,OAAS6tF,IACpCn0F,KAAK2zF,aAAe//C,EAAKttC,OAAS6tF,IAYtCxxF,EAASsQ,UAAU8gF,YAAc,SAAU9yE,EAAG69B,EAAa/1C,EAAWye,EAAQgX,GAC5E,GAAIx+B,KAAKgxF,UAAW,EAAM,CACxB,GAAIv3C,GAAO74C,EAAQ28B,cAAc,MAAOv9B,KAAKoyF,YAAYlgB,MAAOlyE,KAAK25C,IAAIk5C,cACzEp5C,GAAK1wC,UAAYA,EACjB0wC,EAAK5K,UAAY,GAEG,SAAhBiQ,EACFrF,EAAK3qC,MAAMnG,KAAO3I,KAAKw+B,MAAQhX,EAAS,KAExCiyB,EAAK3qC,MAAM8iC,MAAQ5xC,KAAKw+B,MAAQhX,EAAS,KAG3CiyB,EAAK3qC,MAAM0vB,MAAQA,EAAQ,KAC3Bib,EAAK3qC,MAAMjG,IAAMoY,EAAI,OASzBte,EAASsQ,UAAUqgF,aAAe,SAAUx0C,GAI1C,GAHAl+C,EAAQ87B,gBAAgB18B,KAAKoyF,YAAY3xB,OAGDl6D,SAApCvG,KAAK6D,QAAQi7C,GAAa2hB,OAAgEl6D,SAAzCvG,KAAK6D,QAAQi7C,GAAa2hB,MAAM7sB,KAAoB,CACvG,GAAI6sB,GAAQ7/D,EAAQ28B,cAAc,MAAOv9B,KAAKoyF,YAAY3xB,MAAOzgE,KAAK25C,IAAIpP,MAC1Ek2B,GAAM13D,UAAY,4BAA8B+1C,EAChD2hB,EAAM5xB,UAAY7uC,KAAK6D,QAAQi7C,GAAa2hB,MAAM7sB,KAGJrtC,SAA1CvG,KAAK6D,QAAQi7C,GAAa2hB,MAAM3xD,OAClCnO,EAAKuO,WAAWuxD,EAAOzgE,KAAK6D,QAAQi7C,GAAa2hB,MAAM3xD,OAGrC,SAAhBgwC,EACF2hB,EAAM3xD,MAAMnG,KAAO3I,KAAK6G,MAAMotF,gBAAkB,KAEhDxzB,EAAM3xD,MAAM8iC,MAAQ5xC,KAAK6G,MAAMotF,gBAAkB,KAGnDxzB,EAAM3xD,MAAM0vB,MAAQx+B,KAAKy+B,OAAS,KAIpC79B,EAAQm8B,gBAAgB/8B,KAAKoyF,YAAY3xB,QAQ3C99D,EAASsQ,UAAUy/D,mBAAqB,WAEtC,KAAM,mBAAqB1yE,MAAK6G,OAAQ,CACtC,GAAIutF,GAAYh3D,SAASs3C,eAAe,KACpCG,EAAmBz3C,SAASM,cAAc,MAC9Cm3C,GAAiB9rE,UAAY,mCAC7B8rE,EAAiBv3C,YAAY82D,GAC7Bp0F,KAAK25C,IAAIpP,MAAMjN,YAAYu3C,GAE3B70E,KAAK6G,MAAM+rE,gBAAkBiC,EAAiBplC,aAC9CzvC,KAAK6G,MAAM2sE,eAAiBqB,EAAiBpqC,YAE7CzqC,KAAK25C,IAAIpP,MAAM7lC,YAAYmwE,GAG7B,KAAM,mBAAqB70E,MAAK6G,OAAQ,CACtC,GAAIwtF,GAAYj3D,SAASs3C,eAAe,KACpCI,EAAmB13C,SAASM,cAAc,MAC9Co3C,GAAiB/rE,UAAY,mCAC7B+rE,EAAiBx3C,YAAY+2D,GAC7Br0F,KAAK25C,IAAIpP,MAAMjN,YAAYw3C,GAE3B90E,KAAK6G,MAAMisE,gBAAkBgC,EAAiBrlC,aAC9CzvC,KAAK6G,MAAM2tE,eAAiBM,EAAiBrqC,YAE7CzqC,KAAK25C,IAAIpP,MAAM7lC,YAAYowE,GAG7B,KAAM,mBAAqB90E,MAAK6G,OAAQ,CACtC,GAAIytF,GAAYl3D,SAASs3C,eAAe,KACpC6f,EAAmBn3D,SAASM,cAAc,MAC9C62D,GAAiBxrF,UAAY,mCAC7BwrF,EAAiBj3D,YAAYg3D,GAC7Bt0F,KAAK25C,IAAIpP,MAAMjN,YAAYi3D,GAE3Bv0F,KAAK6G,MAAMotF,gBAAkBM,EAAiB9kD,aAC9CzvC,KAAK6G,MAAM2tF,eAAiBD,EAAiB9pD,YAE7CzqC,KAAK25C,IAAIpP,MAAM7lC,YAAY6vF,KAI/B10F,EAAOD,QAAU+C,GAIb,SAAS9C,EAAQD,GAQrB,QAASgD,GAAU+vC,EAAOE,EAAK4gD,EAAgBD,EAAcpyB,EAAiB0R,GAC5E,GAAI2hB,GAAYpuF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACpFquF,EAAqBruF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAsBjG,IApBArG,KAAK20F,YAAc,EAAG,EAAG,EAAG,IAC5B30F,KAAK40F,YAAc,IAAM,GAAK,EAAG,GACjC50F,KAAK60F,YAAc,KAEnB70F,KAAKohE,gBAAkBA,EACvBphE,KAAK8yE,gBAAkBA,EACvB9yE,KAAKy9C,OAAS9K,EACd3yC,KAAK09C,KAAO7K,EAEZ7yC,KAAKgF,MAAQ,EACbhF,KAAK80F,aAAe,GACpB90F,KAAK+0F,gBAAkB,EACvB/0F,KAAKg1F,iBAELh1F,KAAKy0F,UAAYA,EACjBz0F,KAAKyzF,eAAiBA,EACtBzzF,KAAKwzF,aAAeA,EAEpBxzF,KAAK00F,mBAAqBA,EAEtBjB,GAAkBD,EAAc,CAClC,GAAIxzD,GAAKhgC,KACL8rE,EAAe,SAAsB/mE,GACvC,GAAIkwF,GAAUlwF,EAAQA,GAASi7B,EAAG+0D,gBAAkB/0D,EAAG40D,WAAW50D,EAAG80D,cACrE,OAAI/vF,IAASi7B,EAAG+0D,gBAAkB/0D,EAAG40D,WAAW50D,EAAG80D,eAAiB,IAAO90D,EAAG+0D,gBAAkB/0D,EAAG40D,WAAW50D,EAAG80D,eACxGG,EAAUj1D,EAAG+0D,gBAAkB/0D,EAAG40D,WAAW50D,EAAG80D,cAEhDG,EAGPxB,KACFzzF,KAAKy9C,QAAiC,EAAvBz9C,KAAK+0F,gBAAsB/0F,KAAK40F,WAAW50F,KAAK80F,cAC/D90F,KAAKy9C,OAASquB,EAAa9rE,KAAKy9C,SAG9B+1C,IACFxzF,KAAK09C,MAAQ19C,KAAK+0F,gBAAkB/0F,KAAK40F,WAAW50F,KAAK80F,cACzD90F,KAAK09C,KAAOouB,EAAa9rE,KAAK09C,OAEhC19C,KAAKg1F,kBAITpyF,EAAUqQ,UAAUiiF,cAAgB,SAAUpiB,GAC5C9yE,KAAK8yE,gBAAkBA,GAGzBlwE,EAAUqQ,UAAUkiF,UAAY,SAAU/zB,GACxCphE,KAAKohE,gBAAkBA,GAGzBx+D,EAAUqQ,UAAU+hF,eAAiB,WACnC,GAAI90C,GAAQlgD,KAAK09C,KAAO19C,KAAKy9C,MAC7Bz9C,MAAKgF,MAAQhF,KAAKohE,gBAAkBlhB,CACpC,IAAIk1C,GAAmBp1F,KAAK8yE,gBAAkB9yE,KAAKgF,MAC/CqwF,EAAmBpwF,KAAKsjB,MAAMtjB,KAAKi5C,IAAIgC,GAASj7C,KAAKk5C,KAEzDn+C,MAAK80F,aAAe,GACpB90F,KAAK+0F,gBAAkB9vF,KAAK8U,IAAI,GAAIs7E,EAEpC,IAAI1iD,GAAQ,CACW,GAAnB0iD,IACF1iD,EAAQ0iD,EAIV,KAAK,GADDC,IAAgB,EACXr1E,EAAI0yB,EAAO1tC,KAAK8R,IAAIkJ,IAAMhb,KAAK8R,IAAIs+E,GAAmBp1E,IAAK,CAClEjgB,KAAK+0F,gBAAkB9vF,KAAK8U,IAAI,GAAIkG,EACpC,KAAK,GAAIxP,GAAI,EAAGA,EAAIzQ,KAAK40F,WAAWtuF,OAAQmK,IAAK,CAC/C,GAAI8kF,GAAWv1F,KAAK+0F,gBAAkB/0F,KAAK40F,WAAWnkF,EACtD,IAAI8kF,GAAYH,EAAkB,CAChCE,GAAgB,EAChBt1F,KAAK80F,aAAerkF,CACpB,QAGJ,GAAI6kF,KAAkB,EACpB,QAKN1yF,EAAUqQ,UAAUuiF,SAAW,SAAUzwF,GACvC,MAAOA,IAAS/E,KAAK+0F,gBAAkB/0F,KAAK20F,WAAW30F,KAAK80F,iBAAmB,GAGjFlyF,EAAUqQ,UAAUurC,QAAU,WAC5B,MAAOx+C,MAAK+0F,gBAAkB/0F,KAAK40F,WAAW50F,KAAK80F,eAGrDlyF,EAAUqQ,UAAUwiF,cAAgB,WAClC,GAAIC,GAAY11F,KAAK+0F,gBAAkB/0F,KAAK20F,WAAW30F,KAAK80F,aAC5D,OAAO90F,MAAKyxF,aAAazxF,KAAKy9C,QAAUi4C,EAAY11F,KAAKy9C,OAASi4C,GAAaA,IAGjF9yF,EAAUqQ,UAAU0iF,YAAc,SAAUp4B,GAC1C,GAAIvyD,GAAcuyD,EAAQhf,YAAY,EAKtC,OAJuC,kBAA5Bv+C,MAAK00F,qBACd1pF,EAAchL,KAAK00F,mBAAmBn3B,IAGb,gBAAhBvyD,GACF,GAAKA,EACoB,gBAAhBA,GACTA,EAEAuyD,EAAQhf,YAAY,IAI/B37C,EAAUqQ,UAAU2gF,SAAW,WAI7B,IAAK,GAHD1hB,MACAx/B,EAAO1yC,KAAKw+C,UACZo3C,GAAgBljD,EAAO1yC,KAAKy9C,OAAS/K,GAAQA,EACxCjsC,EAAIzG,KAAKy9C,OAASm4C,EAAc51F,KAAK09C,KAAOj3C,EAAI,KAASA,GAAKisC,EACjEjsC,GAAKzG,KAAKy9C,QAEZy0B,EAAM1qE,MAAOqsF,MAAO7zF,KAAKw1F,SAAS/uF,GAAIwa,EAAGjhB,KAAKyxF,aAAahrF,GAAI4O,IAAKrV,KAAK21F,YAAYlvF,IAGzF,OAAOyrE,IAGTtvE,EAAUqQ,UAAUygF,YAAc,SAAUhtF,GAC1C,GAAImvF,GAAa71F,KAAK80F,aAClBgB,EAAW91F,KAAKy9C,OAChBs4C,EAAS/1F,KAAK09C,KAEd1d,EAAKhgC,KACLg2F,EAAoB,WACtBh2D,EAAG+0D,iBAAmB,GAEpBkB,EAAoB,WACtBj2D,EAAG+0D,iBAAmB,EAGpBruF,GAAMouF,cAAgB,GAAK90F,KAAK80F,cAAgB,GAAKpuF,EAAMouF,aAAe,GAAK90F,KAAK80F,aAAe,IAE5FpuF,EAAMouF,aAAe90F,KAAK80F,cAEjC90F,KAAK80F,aAAe,EACF,GAAde,EACFG,KAEAA,IACAA,OAIFh2F,KAAK80F,aAAe,EACF,GAAde,EACFI,KAEAA,IACAA,MAYN,KAPA,GACIC,IADQxvF,EAAMktF,WACFltF,EAAM+qF,aAAa,IAC/B0E,EAAYzvF,EAAM83C,UAAY93C,EAAM1B,MAEpC60D,GAAO,EACP5nC,EAAQ,GAEJ4nC,GAAQ5nC,IAAU,GAAG,CAG3BjyB,KAAKgF,MAAQmxF,GAAan2F,KAAK40F,WAAW50F,KAAK80F,cAAgB90F,KAAK+0F,gBACpE,IAAIqB,GAAWp2F,KAAKohE,gBAAkBphE,KAAKgF,KAG3ChF,MAAKy9C,OAASq4C,EACd91F,KAAK09C,KAAO19C,KAAKy9C,OAAS24C,CAE1B,IAAIC,GAAiBr2F,KAAK09C,KAAO19C,KAAKgF,MAClC0wF,EAAY11F,KAAK+0F,gBAAkB/0F,KAAK20F,WAAW30F,KAAK80F,cACxDwB,EAAct2F,KAAKy1F,gBAAkB/uF,EAAM+uF,eAE/C,IAAIz1F,KAAKy0F,UAAW,CAClB,GAAI8B,GAAaL,EAAYG,CAC7Br2F,MAAK09C,MAAQ64C,EAAav2F,KAAKgF,MAC/BhF,KAAKy9C,OAASz9C,KAAK09C,KAAO04C,MAErBp2F,MAAKyzF,gBAIRzzF,KAAKy9C,QAAU64C,EAAct2F,KAAKgF,MAClChF,KAAK09C,KAAO19C,KAAKy9C,OAAS24C,IAJ1Bp2F,KAAKy9C,QAAUi4C,EAAYY,EAAct2F,KAAKgF,MAC9ChF,KAAK09C,KAAO19C,KAAKy9C,OAAS24C,EAM9B,KAAKp2F,KAAKwzF,cAAgBxzF,KAAK09C,KAAOq4C,EAAS,KAE7CE,IACAp8B,GAAO,MAHT,CAMA,IAAK75D,KAAKyzF,gBAAkBzzF,KAAKy9C,OAASq4C,EAAW,KAAS,CAC5D,KAAI91F,KAAKy0F,WAAaqB,GAAY,GAE3B,CAELG,IACAp8B,GAAO,CACP,UALAl6C,QAAQH,KAAK,uDAQbxf,KAAKyzF,gBAAkBzzF,KAAKwzF,cAA2BuC,EAASD,EAApBM,GAC9CJ,IACAn8B,GAAO,GAGTA,GAAO,KAIXj3D,EAAUqQ,UAAUw+E,aAAe,SAAU1sF,GAC3C,MAAO/E,MAAKohE,iBAAmBr8D,EAAQ/E,KAAKy9C,QAAUz9C,KAAKgF,OAG7DpC,EAAUqQ,UAAU84E,cAAgB,SAAUyK,GAC5C,OAAQx2F,KAAKohE,gBAAkBo1B,GAAUx2F,KAAKgF,MAAQhF,KAAKy9C,QAG7D59C,EAAOD,QAAUgD,GAIb,SAAS/C,EAAQD,EAASM,GAoB9B,QAAS2C,GAAWogD,EAAOS,EAAS7/C,EAASopF,GAC3CjtF,KAAKK,GAAKqjD,CACV,IAAIzzC,IAAU,WAAY,QAAS,OAAQ,mBAAoB,WAAY,aAAc,SAAU,gBAAiB,SAAU,sBAAuB,oBACrJjQ,MAAK6D,QAAUlD,EAAKqP,sBAAsBC,EAAQpM,GAClD7D,KAAKy2F,kBAAwClwF,SAApB08C,EAAMl6C,UAC/B/I,KAAKitF,yBAA2BA,EAChCjtF,KAAK02F,aAAe,EACpB12F,KAAKkgC,OAAO+iB,GACkB,GAA1BjjD,KAAKy2F,oBACPz2F,KAAKitF,yBAAyB,IAAM,GAEtCjtF,KAAKsgD,aACLtgD,KAAKizC,QAA4B1sC,SAAlB08C,EAAMhQ,SAAwB,EAAOgQ,EAAMhQ,QA5B5D,GAAItyC,GAAOT,EAAoB,GAE3BktF,GADUltF,EAAoB,GACvBA,EAAoB,KAC3BmtF,EAAQntF,EAAoB,IAC5BotF,EAASptF,EAAoB,GA+BjC2C,GAAWoQ,UAAU+tC,SAAW,SAAU/+C,GAC3B,MAATA,GACFjC,KAAKsgD,UAAYr+C,EACQ,GAArBjC,KAAK6D,QAAQ6a,MACf/d,EAAK2P,WAAWtQ,KAAKsgD,UAAW,SAAUp6C,EAAGC,GAC3C,MAAOD,GAAE03B,EAAIz3B,EAAEy3B,EAAI,EAAI,MAI3B59B,KAAKsgD,cAITz9C,EAAWoQ,UAAUg0D,SAAW,WAC9B,MAAOjnE,MAAKsgD,WAOdz9C,EAAWoQ,UAAUy+E,gBAAkB,SAAUn7D,GAC/Cv2B,KAAK02F,aAAengE,GAOtB1zB,EAAWoQ,UAAU+rB,WAAa,SAAUn7B,GAC1C,GAAgB0C,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,WAAY,QAAS,OAAQ,mBAAoB,WAAY,SAAU,sBAAuB,oBAC5GtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAGd,kBAAtBA,GAAQ47D,aACjB57D,EAAQ47D,YACNC,SAAU77D,EAAQ47D,aAItB9+D,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,iBACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,cACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,UAErCA,EAAQ0oF,eAC0B,gBAAzB1oF,GAAQ0oF,eACb1oF,EAAQ0oF,cAAcC,kBACqB,WAAzC3oF,EAAQ0oF,cAAcC,gBACxBxsF,KAAK6D,QAAQ0oF,cAAcjG,MAAQ,EACe,WAAzCziF,EAAQ0oF,cAAcC,gBAC/BxsF,KAAK6D,QAAQ0oF,cAAcjG,MAAQ,GAEnCtmF,KAAK6D,QAAQ0oF,cAAcC,gBAAkB,cAC7CxsF,KAAK6D,QAAQ0oF,cAAcjG,MAAQ,OAY/CzjF,EAAWoQ,UAAUitB,OAAS,SAAU+iB,GACtCjjD,KAAKijD,MAAQA,EACbjjD,KAAKq+B,QAAU4kB,EAAM5kB,SAAW,QAChCr+B,KAAK+I,UAAYk6C,EAAMl6C,WAAa/I,KAAK+I,WAAa,kBAAoB/I,KAAKitF,yBAAyB,GAAK,GAC7GjtF,KAAKizC,QAA4B1sC,SAAlB08C,EAAMhQ,SAAwB,EAAOgQ,EAAMhQ,QAC1DjzC,KAAK8O,MAAQm0C,EAAMn0C,MACnB9O,KAAKg/B,WAAWikB,EAAMp/C,UAUxBhB,EAAWoQ,UAAUw4E,UAAY,SAAUwG,EAAWe,EAAY7F,EAAWvvD,EAAG3c,GAC9E,GAAiB1a,QAAb4mF,GAAuC,MAAbA,EAAmB,CAC/C,GAAID,GAAM9vD,SAASC,gBAAgB,6BAA8B,MACjE8vD,IAAcD,IAAKA,EAAKF,eAAiBnpF,QAAS7D,KAAK6D,QAAS46C,QAASz+C,OAQ3E,QANSuG,QAALq3B,GAAuB,MAALA,KACpBA,EAAI,IAEGr3B,QAAL0a,GAAuB,MAALA,KACpBA,EAAI,GAAM+xE,GAEJhzF,KAAK6D,QAAQiL,OACnB,IAAK,OACHu+E,EAAMsJ,SAAS32F,KAAM49B,EAAG3c,EAAGgxE,EAAWe,EAAY7F,EAClD,MACF,KAAK,SACL,IAAK,QACHG,EAAOqJ,SAAS32F,KAAM49B,EAAG3c,EAAGgxE,EAAWe,EAAY7F,EACnD,MACF,KAAK,MACHC,EAAKuJ,SAAS32F,KAAM49B,EAAG3c,EAAGgxE,EAAWe,EAAY7F,GAGrD,OAASyJ,KAAMzJ,EAAUD,IAAKhvD,MAAOl+B,KAAKq+B,QAASygB,YAAa9+C,KAAK6D,QAAQmoF,mBAG/EnpF,EAAWoQ,UAAUk9E,UAAY,SAAU3oB,GAGzC,IAAK,GAFD5gC,GAAO4gC,EAAU,GAAGvmD,EACpB6lB,EAAO0gC,EAAU,GAAGvmD,EACfxQ,EAAI,EAAGA,EAAI+2D,EAAUlhE,OAAQmK,IACpCm2B,EAAOA,EAAO4gC,EAAU/2D,GAAGwQ,EAAIumD,EAAU/2D,GAAGwQ,EAAI2lB,EAChDE,EAAOA,EAAO0gC,EAAU/2D,GAAGwQ,EAAIumD,EAAU/2D,GAAGwQ,EAAI6lB,CAElD,QAASliC,IAAKgiC,EAAM/hC,IAAKiiC,EAAMklD,iBAAkBhsF,KAAK6D,QAAQmoF,mBAGhEnsF,EAAOD,QAAUiD,GAIb,SAAShD,EAAQD,EAASM,GAO9B,QAAS22F,GAASnzC,EAAS7/C,IAH3B,GAAIjD,GAAUV,EAAoB,GAC9BotF,EAASptF,EAAoB,GAIjC22F,GAASF,SAAW,SAAU1zC,EAAOrlB,EAAG3c,EAAGgxE,EAAWe,EAAY7F,GAChE,GAAI2J,GAA0B,GAAb9D,EAGb+D,EAAUn2F,EAAQq8B,cAAc,OAAQkwD,EAAUH,YAAaG,EAAUD,IAC7E6J,GAAQ/4D,eAAe,KAAM,IAAKJ,GAClCm5D,EAAQ/4D,eAAe,KAAM,IAAK/c,EAAI61E,GACtCC,EAAQ/4D,eAAe,KAAM,QAASi0D,GACtC8E,EAAQ/4D,eAAe,KAAM,SAAU,EAAI84D,GAC3CC,EAAQ/4D,eAAe,KAAM,QAAS,cAEtC,IAAIg5D,GAAW/xF,KAAKsjB,MAAM,GAAM0pE,GAC5BgF,EAAgBh0C,EAAMp/C,QAAQwoF,SAAS7tD,MACvCx5B,EAAQiyF,EAAgBD,EACxBE,EAAajyF,KAAKsjB,MAAM,GAAMyqE,GAC9BmE,EAAalyF,KAAKsjB,MAAM,IAAOyqE,GAE/BxrE,EAASviB,KAAKsjB,OAAO0pE,EAAY,EAAI+E,GAAY,EAKrD,IAHAp2F,EAAQ29B,QAAQX,EAAI,GAAMo5D,EAAWxvE,EAAQvG,EAAI61E,EAAaI,EAAa,EAAGF,EAAUE,EAAYj0C,EAAMl6C,UAAY,WAAYokF,EAAUH,YAAaG,EAAUD,IAAKjqC,EAAMn0C,OAC9KlO,EAAQ29B,QAAQX,EAAI,IAAMo5D,EAAWxvE,EAAS,EAAGvG,EAAI61E,EAAaK,EAAa,EAAGH,EAAUG,EAAYl0C,EAAMl6C,UAAY,WAAYokF,EAAUH,YAAaG,EAAUD,IAAKjqC,EAAMn0C,OAE1I,GAApCm0C,EAAMp/C,QAAQ47D,WAAW5uD,QAAiB,CAC5C,GAAIgtB,IACF/uB,MAAOm0C,EAAMp/C,QAAQ47D,WAAW3wD,MAChCD,OAAQo0C,EAAMp/C,QAAQ47D,WAAW5wD,OACjCovB,KAAMglB,EAAMp/C,QAAQ47D,WAAWxhC,KAAOj5B,EACtC+D,UAAWk6C,EAAMl6C,UAEnBnI,GAAQ+8B,UAAUC,EAAI,GAAMo5D,EAAWxvE,EAAQvG,EAAI61E,EAAaI,EAAa,EAAGr5D,EAAesvD,EAAUH,YAAaG,EAAUD,KAChItsF,EAAQ+8B,UAAUC,EAAI,IAAMo5D,EAAWxvE,EAAS,EAAGvG,EAAI61E,EAAaK,EAAa,EAAGt5D,EAAesvD,EAAUH,YAAaG,EAAUD,OAUxI2J,EAAS7a,KAAO,SAAUzX,EAAU6yB,EAAoBjK,GACtD,GAEIkK,GACA1tF,EAAK2tF,EACLr0C,EACAx8C,EAAGgK,EALH8mF,KACAC,KAKAC,EAAY,CAGhB,KAAKhxF,EAAI,EAAGA,EAAI89D,EAASj+D,OAAQG,IAE/B,GADAw8C,EAAQkqC,EAAU1uC,OAAO8lB,EAAS99D,IACN,QAAxBw8C,EAAMp/C,QAAQiL,OACZm0C,EAAMhQ,WAAY,IAA8D1sC,SAArD4mF,EAAUtpF,QAAQ46C,OAAOgjB,WAAW8C,EAAS99D,KAAqB0mF,EAAUtpF,QAAQ46C,OAAOgjB,WAAW8C,EAAS99D,OAAQ,GACpJ,IAAKgK,EAAI,EAAGA,EAAI2mF,EAAmB7yB,EAAS99D,IAAIH,OAAQmK,IACtD8mF,EAAa/vF,MACX8pF,SAAU8F,EAAmB7yB,EAAS99D,IAAIgK,GAAG6gF,SAC7CC,SAAU6F,EAAmB7yB,EAAS99D,IAAIgK,GAAG8gF,SAC7C3zD,EAAGw5D,EAAmB7yB,EAAS99D,IAAIgK,GAAGmtB,EACtC3c,EAAGm2E,EAAmB7yB,EAAS99D,IAAIgK,GAAGwQ,EACtCyiC,QAAS6gB,EAAS99D,GAClBy3B,MAAOk5D,EAAmB7yB,EAAS99D,IAAIgK,GAAGytB,QAE5Cu5D,GAAa,CAMrB,IAAkB,IAAdA,EAiBJ,IAZAF,EAAa74E,KAAK,SAAUxY,EAAGC,GAC7B,MAAID,GAAEorF,WAAanrF,EAAEmrF,SACZprF,EAAEw9C,QAAUv9C,EAAEu9C,QAAU,GAAK,EAE7Bx9C,EAAEorF,SAAWnrF,EAAEmrF,WAK1BuF,EAASa,sBAAsBF,EAAeD,GAGzC9wF,EAAI,EAAGA,EAAI8wF,EAAajxF,OAAQG,IAAK,CACxCw8C,EAAQkqC,EAAU1uC,OAAO84C,EAAa9wF,GAAGi9C,QACzC,IAAI6uC,GAA8ChsF,QAAnC08C,EAAMp/C,QAAQwoF,SAASkG,SAAwBtvC,EAAMp/C,QAAQwoF,SAASkG,SAAW,GAAMtvC,EAAMp/C,QAAQwoF,SAAS7tD,KAE7H70B,GAAM4tF,EAAa9wF,GAAG6qF,QACtB,IAAIqG,GAAe,CACnB,IAA2BpxF,SAAvBixF,EAAc7tF,GACZlD,EAAI,EAAI8wF,EAAajxF,SACvB+wF,EAAepyF,KAAK8R,IAAIwgF,EAAa9wF,EAAI,GAAG6qF,SAAW3nF,IAEzD2tF,EAAWT,EAASe,iBAAiBP,EAAcp0C,EAAOsvC,OACrD,CACL,GAAI7gC,GAAUjrD,GAAK+wF,EAAc7tF,GAAKkuF,OAASL,EAAc7tF,GAAKmuF,SACpDrxF,IAAK+wF,EAAc7tF,GAAKmuF,SAAW,EAC7CpmC,GAAU6lC,EAAajxF,SACzB+wF,EAAepyF,KAAK8R,IAAIwgF,EAAa7lC,GAAS4/B,SAAW3nF,IAE3D2tF,EAAWT,EAASe,iBAAiBP,EAAcp0C,EAAOsvC;AAC1DiF,EAAc7tF,GAAKmuF,UAAY,EAE3B70C,EAAMp/C,QAAQ/B,SAAU,GAAQmhD,EAAMp/C,QAAQmrF,uBAAwB,EACpEuI,EAAa9wF,GAAG8qF,SAAWtuC,EAAMyzC,cACnCiB,EAAeH,EAAc7tF,GAAKouF,oBAClCP,EAAc7tF,GAAKouF,qBAAuB90C,EAAMyzC,aAAea,EAAa9wF,GAAG8qF,WAE/EoG,EAAeH,EAAc7tF,GAAKquF,oBAClCR,EAAc7tF,GAAKquF,qBAAuB/0C,EAAMyzC,aAAea,EAAa9wF,GAAG8qF,UAExEtuC,EAAMp/C,QAAQwoF,SAASC,cAAe,IAC/CgL,EAAS94D,MAAQ84D,EAAS94D,MAAQg5D,EAAc7tF,GAAKkuF,OACrDP,EAAS9vE,QAAUgwE,EAAc7tF,GAAKmuF,SAAWR,EAAS94D,MAAQ,GAAM84D,EAAS94D,OAASg5D,EAAc7tF,GAAKkuF,OAAS,IAK1H,GAFAj3F,EAAQ29B,QAAQg5D,EAAa9wF,GAAG6qF,SAAWgG,EAAS9vE,OAAQ+vE,EAAa9wF,GAAG8qF,SAAWoG,EAAcL,EAAS94D,MAAOykB,EAAMyzC,aAAea,EAAa9wF,GAAG8qF,SAAUtuC,EAAMl6C,UAAY,WAAYokF,EAAUH,YAAaG,EAAUD,IAAKjqC,EAAMn0C,OAE1Om0C,EAAMp/C,QAAQ47D,WAAW5uD,WAAY,EAAM,CAC7C,GAAIonF,IACF3G,SAAUiG,EAAa9wF,GAAG6qF,SAC1BC,SAAUgG,EAAa9wF,GAAG8qF,SAAWoG,EACrC/5D,EAAG25D,EAAa9wF,GAAGm3B,EACnB3c,EAAGs2E,EAAa9wF,GAAGwa,EACnByiC,QAAS6zC,EAAa9wF,GAAGi9C,QACzBxlB,MAAOq5D,EAAa9wF,GAAGy3B,MAEzBovD,GAAOtR,MAAMic,GAAYh1C,EAAOkqC,EAAWmK,EAAS9vE,WAY1DqvE,EAASa,sBAAwB,SAAUF,EAAeD,GAGxD,IAAK,GADDF,GACK5wF,EAAI,EAAGA,EAAI8wF,EAAajxF,OAAQG,IACnCA,EAAI,EAAI8wF,EAAajxF,SACvB+wF,EAAepyF,KAAK8R,IAAIwgF,EAAa9wF,EAAI,GAAG6qF,SAAWiG,EAAa9wF,GAAG6qF,WAErE7qF,EAAI,IACN4wF,EAAepyF,KAAKL,IAAIyyF,EAAcpyF,KAAK8R,IAAIwgF,EAAa9wF,EAAI,GAAG6qF,SAAWiG,EAAa9wF,GAAG6qF,YAE3E,IAAjB+F,IAC8C9wF,SAA5CixF,EAAcD,EAAa9wF,GAAG6qF,YAChCkG,EAAcD,EAAa9wF,GAAG6qF,WAC5BuG,OAAQ,EACRC,SAAU,EACVE,oBAAqB,EACrBD,oBAAqB,IAGzBP,EAAcD,EAAa9wF,GAAG6qF,UAAUuG,QAAU,IAcxDhB,EAASe,iBAAmB,SAAUP,EAAcp0C,EAAOsvC,GACzD,GAAI/zD,GAAOhX,CAqBX,OApBI6vE,GAAep0C,EAAMp/C,QAAQwoF,SAAS7tD,OAAS64D,EAAe,GAChE74D,EAAuB+zD,EAAf8E,EAA0B9E,EAAW8E,EAE7C7vE,EAAS,EAC4B,SAAjCy7B,EAAMp/C,QAAQwoF,SAAS5pB,MACzBj7C,GAAU,GAAM6vE,EAC0B,UAAjCp0C,EAAMp/C,QAAQwoF,SAAS5pB,QAChCj7C,GAAU,GAAM6vE,KAIlB74D,EAAQykB,EAAMp/C,QAAQwoF,SAAS7tD,MAC/BhX,EAAS,EAC4B,SAAjCy7B,EAAMp/C,QAAQwoF,SAAS5pB,MACzBj7C,GAAU,GAAMy7B,EAAMp/C,QAAQwoF,SAAS7tD,MACG,UAAjCykB,EAAMp/C,QAAQwoF,SAAS5pB,QAChCj7C,GAAU,GAAMy7B,EAAMp/C,QAAQwoF,SAAS7tD,SAIlCA,MAAOA,EAAOhX,OAAQA,IAGjCqvE,EAASzG,iBAAmB,SAAUmH,EAAcjJ,EAAa/pB,EAAU2zB,EAAYp5C,GACrF,GAAIy4C,EAAajxF,OAAS,EAAG,CAE3BixF,EAAa74E,KAAK,SAAUxY,EAAGC,GAC7B,MAAID,GAAEorF,WAAanrF,EAAEmrF,SACZprF,EAAEw9C,QAAUv9C,EAAEu9C,QAAU,GAAK,EAE7Bx9C,EAAEorF,SAAWnrF,EAAEmrF,UAG1B,IAAIkG,KAEJX,GAASa,sBAAsBF,EAAeD,GAC9CjJ,EAAY4J,GAAcrB,EAASsB,kBAAkBX,EAAeD,GACpEjJ,EAAY4J,GAAYlM,iBAAmBltC,EAC3CylB,EAAS/8D,KAAK0wF,KAIlBrB,EAASsB,kBAAoB,SAAUX,EAAeD,GAIpD,IAAK,GAHD5tF,GACAi9B,EAAO2wD,EAAa,GAAGhG,SACvBzqD,EAAOywD,EAAa,GAAGhG,SAClB9qF,EAAI,EAAGA,EAAI8wF,EAAajxF,OAAQG,IACvCkD,EAAM4tF,EAAa9wF,GAAG6qF,SACK/qF,SAAvBixF,EAAc7tF,IAChBi9B,EAAOA,EAAO2wD,EAAa9wF,GAAG8qF,SAAWgG,EAAa9wF,GAAG8qF,SAAW3qD,EACpEE,EAAOA,EAAOywD,EAAa9wF,GAAG8qF,SAAWgG,EAAa9wF,GAAG8qF,SAAWzqD,GAEhEywD,EAAa9wF,GAAG8qF,SAAW,EAC7BiG,EAAc7tF,GAAKouF,qBAAuBR,EAAa9wF,GAAG8qF,SAE1DiG,EAAc7tF,GAAKquF,qBAAuBT,EAAa9wF,GAAG8qF,QAIhE,KAAK,GAAI6G,KAAQZ,GACXA,EAAcxxF,eAAeoyF,KAC/BxxD,EAAOA,EAAO4wD,EAAcY,GAAML,oBAAsBP,EAAcY,GAAML,oBAAsBnxD,EAClGA,EAAOA,EAAO4wD,EAAcY,GAAMJ,oBAAsBR,EAAcY,GAAMJ,oBAAsBpxD,EAClGE,EAAOA,EAAO0wD,EAAcY,GAAML,oBAAsBP,EAAcY,GAAML,oBAAsBjxD,EAClGA,EAAOA,EAAO0wD,EAAcY,GAAMJ,oBAAsBR,EAAcY,GAAMJ,oBAAsBlxD,EAItG,QAASliC,IAAKgiC,EAAM/hC,IAAKiiC,IAG3BjnC,EAAOD,QAAUi3F,GAIb,SAASh3F,EAAQD,EAASM,GAM9B,QAASotF,GAAO5pC,EAAS7/C,IA2CzB,QAASw0F,GAAiBp1C,EAAOq1C,GAE/B,MADAA,GAA2C,mBAAnBA,MAAsCA,GAE5DxpF,MAAOwpF,EAAexpF,OAASm0C,EAAMp/C,QAAQ47D,WAAW3wD,MACxDD,OAAQypF,EAAezpF,QAAUo0C,EAAMp/C,QAAQ47D,WAAW5wD,OAC1DovB,KAAMq6D,EAAer6D,MAAQglB,EAAMp/C,QAAQ47D,WAAWxhC,KACtDl1B,UAAWuvF,EAAevvF,WAAak6C,EAAMl6C,WAIjD,QAASwvF,GAAYpL,EAAWlqC,GAC9B,GAAI15C,GAAWhD,MAUf,OARI4mF,GAAUtpF,SAAWspF,EAAUtpF,QAAQ47D,YAAc0tB,EAAUtpF,QAAQ47D,WAAWC,UAA4D,kBAAzCytB,GAAUtpF,QAAQ47D,WAAWC,WACpIn2D,EAAW4jF,EAAUtpF,QAAQ47D,WAAWC,UAItCzc,EAAMA,MAAMp/C,SAAWo/C,EAAMA,MAAMp/C,QAAQ47D,YAAcxc,EAAMA,MAAMp/C,QAAQ47D,WAAWC,UAA8D,kBAA3Czc,GAAMA,MAAMp/C,QAAQ47D,WAAWC,WAC5In2D,EAAW05C,EAAMA,MAAMp/C,QAAQ47D,WAAWC,UAErCn2D,EAlET,GAAI3I,GAAUV,EAAoB,EAalCotF,GAAOtR,KAAO,SAAUl5B,EAASG,EAAOkqC,EAAW3lE,GACjDA,EAASA,GAAU,CAGnB,KAAK,GAFDje,GAAWgvF,EAAYpL,EAAWlqC,GAE7Bx8C,EAAI,EAAGA,EAAIq8C,EAAQx8C,OAAQG,IAClC,GAAK8C,EAGE,CACL,GAAI+uF,GAAiB/uF,EAASu5C,EAAQr8C,GAAIw8C,IACtCq1C,KAAmB,GAAkC,gBAAnBA,KACpC13F,EAAQ+8B,UAAUmlB,EAAQr8C,GAAG6qF,SAAW9pE,EAAQs7B,EAAQr8C,GAAG8qF,SAAU8G,EAAiBp1C,EAAOq1C,GAAiBnL,EAAUH,YAAaG,EAAUD,IAAKpqC,EAAQr8C,GAAGy3B,WAJjKt9B,GAAQ+8B,UAAUmlB,EAAQr8C,GAAG6qF,SAAW9pE,EAAQs7B,EAAQr8C,GAAG8qF,SAAU8G,EAAiBp1C,GAAQkqC,EAAUH,YAAaG,EAAUD,IAAKpqC,EAAQr8C,GAAGy3B,QAUrJovD,EAAOqJ,SAAW,SAAU1zC,EAAOrlB,EAAG3c,EAAGgxE,EAAWe,EAAY7F,GAC9D,GAAI2J,GAA0B,GAAb9D,EAGb+D,EAAUn2F,EAAQq8B,cAAc,OAAQkwD,EAAUH,YAAaG,EAAUD,IAC7E6J,GAAQ/4D,eAAe,KAAM,IAAKJ,GAClCm5D,EAAQ/4D,eAAe,KAAM,IAAK/c,EAAI61E,GACtCC,EAAQ/4D,eAAe,KAAM,QAASi0D,GACtC8E,EAAQ/4D,eAAe,KAAM,SAAU,EAAI84D,GAC3CC,EAAQ/4D,eAAe,KAAM,QAAS,eAGtCp9B,EAAQ+8B,UAAUC,EAAI,GAAMq0D,EAAWhxE,EAAGo3E,EAAiBp1C,GAAQkqC,EAAUH,YAAaG,EAAUD,MA2BtGrtF,EAAOD,QAAU0tF,GAIb,SAASztF,EAAQD,EAASM,GAM9B,QAASs4F,GAAK90C,EAAS7/C,IAFvB,GAAIjD,GAAUV,EAAoB,EAIlCs4F,GAAKrJ,SAAW,SAAUrsC,EAASG,GAC/B,GAAe,MAAXH,GACIA,EAAQx8C,OAAS,EAAG,CACpB,GAAIkI,KAQJ,OAJIA,GADuC,GAAvCy0C,EAAMp/C,QAAQ0oF,cAAc17E,QACxB2nF,EAAKC,YAAY31C,EAASG,GAE1Bu1C,EAAKE,QAAQ51C,KAOjC01C,EAAK7B,SAAW,SAAU1zC,EAAOrlB,EAAG3c,EAAGgxE,EAAWe,EAAY7F,GAC1D,GACI5T,GAAMof,EADN7B,EAA0B,GAAb9D,EAGb+D,EAAUn2F,EAAQq8B,cAAc,OAAQkwD,EAAUH,YAAaG,EAAUD,IA2B7E,IA1BA6J,EAAQ/4D,eAAe,KAAM,IAAKJ,GAClCm5D,EAAQ/4D,eAAe,KAAM,IAAK/c,EAAI61E,GACtCC,EAAQ/4D,eAAe,KAAM,QAASi0D,GACtC8E,EAAQ/4D,eAAe,KAAM,SAAU,EAAI84D,GAC3CC,EAAQ/4D,eAAe,KAAM,QAAS,eAEtCu7C,EAAO34E,EAAQq8B,cAAc,OAAQkwD,EAAUH,YAAaG,EAAUD,KACtE3T,EAAKv7C,eAAe,KAAM,QAASilB,EAAMl6C,WACrBxC,SAAhB08C,EAAMn0C,OACNyqE,EAAKv7C,eAAe,KAAM,QAASilB,EAAMn0C,OAG7CyqE,EAAKv7C,eAAe,KAAM,IAAK,IAAMJ,EAAI,IAAM3c,EAAI,MAAQ2c,EAAIq0D,GAAa,IAAMhxE,GAC9C,GAAhCgiC,EAAMp/C,QAAQuoF,OAAOv7E,UACrB8nF,EAAW/3F,EAAQq8B,cAAc,OAAQkwD,EAAUH,YAAaG,EAAUD,KAClC,OAApCjqC,EAAMp/C,QAAQuoF,OAAOttC,YACrB65C,EAAS36D,eAAe,KAAM,IAAK,IAAMJ,EAAI,MAAQ3c,EAAI61E,GAAc,IAAMl5D,EAAI,IAAM3c,EAAI,MAAQ2c,EAAIq0D,GAAa,IAAMhxE,EAAI,MAAQ2c,EAAIq0D,GAAa,KAAOhxE,EAAI61E,IAElK6B,EAAS36D,eAAe,KAAM,IAAK,IAAMJ,EAAI,IAAM3c,EAAI,KAAY2c,EAAI,KAAO3c,EAAI61E,GAAc,MAAal5D,EAAIq0D,GAAa,KAAOhxE,EAAI61E,GAAc,KAAOl5D,EAAIq0D,GAAa,IAAMhxE,GAEzL03E,EAAS36D,eAAe,KAAM,QAASilB,EAAMl6C,UAAY,kBACtBxC,SAA/B08C,EAAMp/C,QAAQuoF,OAAOt9E,OAAsD,KAA/Bm0C,EAAMp/C,QAAQuoF,OAAOt9E,OACjE6pF,EAAS36D,eAAe,KAAM,QAASilB,EAAMp/C,QAAQuoF,OAAOt9E,QAI5B,GAApCm0C,EAAMp/C,QAAQ47D,WAAW5uD,QAAiB,CAC1C,GAAIgtB,IACA/uB,MAAOm0C,EAAMp/C,QAAQ47D,WAAW3wD,MAChCD,OAAQo0C,EAAMp/C,QAAQ47D,WAAW5wD,OACjCovB,KAAMglB,EAAMp/C,QAAQ47D,WAAWxhC,KAC/Bl1B,UAAWk6C,EAAMl6C,UAErBnI,GAAQ+8B,UAAUC,EAAI,GAAMq0D,EAAWhxE,EAAG4c,EAAesvD,EAAUH,YAAaG,EAAUD,OAIlGsL,EAAKnJ,YAAc,SAAUuJ,EAAW31C,EAAO41C,EAAc1L,GAEzD,GAAoC,GAAhClqC,EAAMp/C,QAAQuoF,OAAOv7E,QAAiB,CACtC,GAAI2gF,GAAYntF,OAAO8oF,EAAUD,IAAIp+E,MAAM2vB,OAAOtyB,QAAQ,KAAM,KAC5DwsF,EAAW/3F,EAAQq8B,cAAc,OAAQkwD,EAAUH,YAAaG,EAAUD,KAC1EtlF,EAAO,GACgC,IAAvCq7C,EAAMp/C,QAAQ0oF,cAAc17E,UAC5BjJ,EAAO,IAEX,IAAIkxF,GACAC,EAAO,CAEPA,GADoC,OAApC91C,EAAMp/C,QAAQuoF,OAAOttC,YACd,EACoC,UAApCmE,EAAMp/C,QAAQuoF,OAAOttC,YACrB0yC,EAEAvsF,KAAKL,IAAIK,KAAKJ,IAAI,EAAGo+C,EAAMyzC,cAAelF,GAGjDsH,EADoC,SAApC71C,EAAMp/C,QAAQuoF,OAAOttC,aAA0C,MAAhB+5C,GAAwCtyF,QAAhBsyF,EAC/D,IAAMD,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAM54F,KAAKg5F,cAAcJ,EAAWhxF,GAAM,GAAS,KAAOixF,EAAaA,EAAavyF,OAAS,GAAG,GAAK,IAAMuyF,EAAaA,EAAavyF,OAAS,GAAG,GAAK,IAAMtG,KAAKg5F,cAAcH,EAAcjxF,GAAM,GAAQixF,EAAa,GAAG,GAAK,IAAMA,EAAa,GAAG,GAAK,KAE3S,IAAMD,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAM54F,KAAKg5F,cAAcJ,EAAWhxF,GAAM,GAAS,KAAOmxF,EAAO,KAAOH,EAAU,GAAG,GAAK,KAGtJD,EAAS36D,eAAe,KAAM,QAASilB,EAAMl6C,UAAY,aACtBxC,SAA/B08C,EAAMp/C,QAAQuoF,OAAOt9E,OACrB6pF,EAAS36D,eAAe,KAAM,QAASilB,EAAMp/C,QAAQuoF,OAAOt9E,OAEhE6pF,EAAS36D,eAAe,KAAM,IAAK86D,KAU3CN,EAAKxc,KAAO,SAAU4c,EAAW31C,EAAOkqC,GACpC,GAAiB,MAAbyL,GAAkCryF,QAAbqyF,EAAwB,CAC7C,GAAIrf,GAAO34E,EAAQq8B,cAAc,OAAQkwD,EAAUH,YAAaG,EAAUD,IAC1E3T,GAAKv7C,eAAe,KAAM,QAASilB,EAAMl6C,WACrBxC,SAAhB08C,EAAMn0C,OACNyqE,EAAKv7C,eAAe,KAAM,QAASilB,EAAMn0C,MAG7C,IAAIlH,GAAO,GACgC,IAAvCq7C,EAAMp/C,QAAQ0oF,cAAc17E,UAC5BjJ,EAAO,KAGX2xE,EAAKv7C,eAAe,KAAM,IAAK,IAAM46D,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAM54F,KAAKg5F,cAAcJ,EAAWhxF,GAAM,MAIjI4wF,EAAKQ,cAAgB,SAAUJ,EAAWhxF,EAAMqxF,GAC5C,GAAIL,EAAUtyF,OAAS,EAEnB,MAAO,EAEX,IAAIkI,GAAI5G,CACR,IAAIqxF,EACA,IAAK,GAAIxyF,GAAImyF,EAAUtyF,OAAS,EAAGG,EAAI,EAAGA,IACtC+H,GAAKoqF,EAAUnyF,GAAG,GAAK,IAAMmyF,EAAUnyF,GAAG,GAAK,QAGnD,KAAK,GAAIA,GAAI,EAAGA,EAAImyF,EAAUtyF,OAAQG,IAClC+H,GAAKoqF,EAAUnyF,GAAG,GAAK,IAAMmyF,EAAUnyF,GAAG,GAAK,GAGvD,OAAO+H,IAUXgqF,EAAKU,mBAAqB,SAAUlhF,GAEhC,GAAImhF,GAAIt9E,EAAIC,EAAIC,EAAIq9E,EAAKC,EACrB7qF,IACJA,GAAEhH,MAAMvC,KAAKsjB,MAAMvQ,EAAK,GAAGs5E,UAAWrsF,KAAKsjB,MAAMvQ,EAAK,GAAGu5E,WAGzD,KAAK,GAFD+H,GAAgB,EAAI,EACpBhzF,EAAS0R,EAAK1R,OACTG,EAAI,EAAOH,EAAS,EAAbG,EAAgBA,IAE5B0yF,EAAU,GAAL1yF,EAASuR,EAAK,GAAKA,EAAKvR,EAAI,GACjCoV,EAAK7D,EAAKvR,GACVqV,EAAK9D,EAAKvR,EAAI,GACdsV,EAAazV,EAARG,EAAI,EAAauR,EAAKvR,EAAI,GAAKqV,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,GAI9D9qF,EAAEhH,MAAM4xF,EAAI9H,SAAU8H,EAAI7H,WAC1B/iF,EAAEhH,MAAM6xF,EAAI/H,SAAU+H,EAAI9H,WAC1B/iF,EAAEhH,MAAMsU,EAAGw1E,SAAUx1E,EAAGy1E,UAG5B,OAAO/iF,IAcXgqF,EAAKC,YAAc,SAAUzgF,EAAMirC,GAC/B,GAAIqjC,GAAQrjC,EAAMp/C,QAAQ0oF,cAAcjG,KACxC,IAAa,GAATA,GAAwB//E,SAAV+/E,EACd,MAAOtmF,MAAKk5F,mBAAmBlhF,EAE/B,IAAImhF,GAAIt9E,EAAIC,EAAIC,EAAIq9E,EAAKC,EAAKE,EAAIC,EAAIC,EAAIC,EAAG/kD,EAAGglD,EAAGz4E,EAC/C04E,EAAQC,EAAQC,EAASC,EAASC,EAASC,EAC3CzrF,IACJA,GAAEhH,MAAMvC,KAAKsjB,MAAMvQ,EAAK,GAAGs5E,UAAWrsF,KAAKsjB,MAAMvQ,EAAK,GAAGu5E,WAEzD,KAAK,GADDjrF,GAAS0R,EAAK1R,OACTG,EAAI,EAAOH,EAAS,EAAbG,EAAgBA,IAE5B0yF,EAAU,GAAL1yF,EAASuR,EAAK,GAAKA,EAAKvR,EAAI,GACjCoV,EAAK7D,EAAKvR,GACVqV,EAAK9D,EAAKvR,EAAI,GACdsV,EAAazV,EAARG,EAAI,EAAauR,EAAKvR,EAAI,GAAKqV,EAEpCy9E,EAAKt0F,KAAKu0C,KAAKv0C,KAAK8U,IAAIo/E,EAAG7H,SAAWz1E,EAAGy1E,SAAU,GAAKrsF,KAAK8U,IAAIo/E,EAAG5H,SAAW11E,EAAG01E,SAAU,IAC5FiI,EAAKv0F,KAAKu0C,KAAKv0C,KAAK8U,IAAI8B,EAAGy1E,SAAWx1E,EAAGw1E,SAAU,GAAKrsF,KAAK8U,IAAI8B,EAAG01E,SAAWz1E,EAAGy1E,SAAU,IAC5FkI,EAAKx0F,KAAKu0C,KAAKv0C,KAAK8U,IAAI+B,EAAGw1E,SAAWv1E,EAAGu1E,SAAU,GAAKrsF,KAAK8U,IAAI+B,EAAGy1E,SAAWx1E,EAAGw1E,SAAU,IAY5FqI,EAAS30F,KAAK8U,IAAI0/E,EAAInT,GACtBwT,EAAU70F,KAAK8U,IAAI0/E,EAAI,EAAInT,GAC3BuT,EAAS50F,KAAK8U,IAAIy/E,EAAIlT,GACtByT,EAAU90F,KAAK8U,IAAIy/E,EAAI,EAAIlT,GAC3B2T,EAASh1F,KAAK8U,IAAIw/E,EAAIjT,GACtB0T,EAAU/0F,KAAK8U,IAAIw/E,EAAI,EAAIjT,GAE3BoT,EAAI,EAAIM,EAAU,EAAIC,EAASJ,EAASE,EACxCplD,EAAI,EAAImlD,EAAU,EAAIF,EAASC,EAASE,EACxCJ,EAAI,EAAIM,GAAUA,EAASJ,GACvBF,EAAI,IACJA,EAAI,EAAIA,GAEZz4E,EAAI,EAAI04E,GAAUA,EAASC,GACvB34E,EAAI,IACJA,EAAI,EAAIA,GAGZk4E,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,SAAW38C,EAAI74B,EAAGw1E,SAAWyI,EAAUh+E,EAAGu1E,UAAYpwE,EAC9EqwE,UAAWuI,EAAUj+E,EAAG01E,SAAW58C,EAAI74B,EAAGy1E,SAAWwI,EAAUh+E,EAAGw1E,UAAYrwE,GAG9D,GAAhBk4E,EAAI9H,UAAiC,GAAhB8H,EAAI7H,WACzB6H,EAAMv9E,GAEU,GAAhBw9E,EAAI/H,UAAiC,GAAhB+H,EAAI9H,WACzB8H,EAAMv9E,GAEVtN,EAAEhH,MAAM4xF,EAAI9H,SAAU8H,EAAI7H,WAC1B/iF,EAAEhH,MAAM6xF,EAAI/H,SAAU+H,EAAI9H,WAC1B/iF,EAAEhH,MAAMsU,EAAGw1E,SAAUx1E,EAAGy1E,UAG5B,OAAO/iF,IAUfgqF,EAAKE,QAAU,SAAU1gF,GAGrB,IAAK,GADDxJ,MACK/H,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAC7B+H,EAAEhH,MAAMwQ,EAAKvR,GAAG6qF,SAAUt5E,EAAKvR,GAAG8qF,UAEtC,OAAO/iF,IAGX3O,EAAOD,QAAU44F,GAIb,SAAS34F,EAAQD,EAASM,GAW9B,QAAS8C,GAAOm8C,EAAMt7C,EAASq2F,EAAMvI,GACnC3xF,KAAKm/C,KAAOA,EACZn/C,KAAK2+C,gBACH9tC,SAAS,EACT+gF,OAAO,EACPuI,SAAU,GACVC,YAAa,EACbzxF,MACEsqC,SAAS,EACTxE,SAAU,YAEZmD,OACEqB,SAAS,EACTxE,SAAU,cAIdzuC,KAAKk6F,KAAOA,EACZl6F,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK2+C,gBACpC3+C,KAAK2xF,iBAAmBA,EAExB3xF,KAAKgtF,eACLhtF,KAAK25C,OACL35C,KAAKy+C,UACLz+C,KAAK4yF,eAAiB,EACtB5yF,KAAKk/C,UACLl/C,KAAKmtF,WAAcD,IAAKltF,KAAKktF,IAAKF,YAAahtF,KAAKgtF,YAAanpF,QAAS7D,KAAK6D,QAAS46C,OAAQz+C,KAAKy+C,QAErGz+C,KAAKg/B,WAAWn7B,GAnClB,GAAIlD,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BsC,EAAYtC,EAAoB,GAoCpC8C,GAAOiQ,UAAY,GAAIzQ,GAEvBQ,EAAOiQ,UAAU8uB,MAAQ,WACvB/hC,KAAKy+C,UACLz+C,KAAK4yF,eAAiB,GAGxB5vF,EAAOiQ,UAAU06E,SAAW,SAAUzvD,EAAO40D,GAGG,GAA1CA,EAAajvF,QAAQw2F,oBAClBr6F,KAAKy+C,OAAOz4C,eAAek4B,KAC9Bl+B,KAAKy+C,OAAOvgB,GAAS40D,GAEvB9yF,KAAK4yF,gBAAkB,IAI3B5vF,EAAOiQ,UAAUmwD,YAAc,SAAUllC,EAAO40D,GAC9C9yF,KAAKy+C,OAAOvgB,GAAS40D,GAGvB9vF,EAAOiQ,UAAUw6E,YAAc,SAAUvvD,GACnCl+B,KAAKy+C,OAAOz4C,eAAek4B,WACtBl+B,MAAKy+C,OAAOvgB,GACnBl+B,KAAK4yF,gBAAkB,IAI3B5vF,EAAOiQ,UAAUisC,QAAU,WACzBl/C,KAAK25C,IAAIpP,MAAQnN,SAASM,cAAc,OACxC19B,KAAK25C,IAAIpP,MAAMxhC,UAAY,aAC3B/I,KAAK25C,IAAIpP,MAAMz7B,MAAM2/B,SAAW,WAChCzuC,KAAK25C,IAAIpP,MAAMz7B,MAAMjG,IAAM,OAC3B7I,KAAK25C,IAAIpP,MAAMz7B,MAAMwmE,QAAU,QAE/Bt1E,KAAK25C,IAAI2gD,SAAWl9D,SAASM,cAAc,OAC3C19B,KAAK25C,IAAI2gD,SAASvxF,UAAY,kBAC9B/I,KAAK25C,IAAI2gD,SAASxrF,MAAM2/B,SAAW,WACnCzuC,KAAK25C,IAAI2gD,SAASxrF,MAAMjG,IAAM,MAE9B7I,KAAKktF,IAAM9vD,SAASC,gBAAgB,6BAA8B,OAClEr9B,KAAKktF,IAAIp+E,MAAM2/B,SAAW,WAC1BzuC,KAAKktF,IAAIp+E,MAAMjG,IAAM,MACrB7I,KAAKktF,IAAIp+E,MAAM0vB,MAAQx+B,KAAK6D,QAAQs2F,SAAW,EAAI,KACnDn6F,KAAKktF,IAAIp+E,MAAM2vB,OAAS,OAExBz+B,KAAK25C,IAAIpP,MAAMjN,YAAYt9B,KAAKktF,KAChCltF,KAAK25C,IAAIpP,MAAMjN,YAAYt9B,KAAK25C,IAAI2gD,WAMtCt3F,EAAOiQ,UAAUyyD,KAAO,WAElB1lE,KAAK25C,IAAIpP,MAAMl/B,YACjBrL,KAAK25C,IAAIpP,MAAMl/B,WAAW3G,YAAY1E,KAAK25C,IAAIpP,QAQnDvnC,EAAOiQ,UAAUyvC,KAAO,WAEjB1iD,KAAK25C,IAAIpP,MAAMl/B,YAClBrL,KAAKm/C,KAAKxF,IAAIvD,OAAO9Y,YAAYt9B,KAAK25C,IAAIpP,QAI9CvnC,EAAOiQ,UAAU+rB,WAAa,SAAUn7B,GACtC,GAAIoM,IAAU,UAAW,cAAe,QAAS,OAAQ,QACzDtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,IAGjDb,EAAOiQ,UAAUw5B,OAAS,WACxB,GAAI2mD,GAAe,EACfF,EAAa9rF,OAAO6H,KAAKjP,KAAKy+C,OAClCy0C,GAAWx0E,KAAK,SAAUxY,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,GAGtB,KAAK,GAAIO,GAAI,EAAGA,EAAIysF,EAAW5sF,OAAQG,IAAK,CAC1C,GAAIi9C,GAAUwvC,EAAWzsF,EACW,IAAhCzG,KAAKy+C,OAAOiF,GAASzQ,SAAkE1sC,SAA9CvG,KAAK2xF,iBAAiBlwB,WAAW/d,IAAuE,GAA7C1jD,KAAK2xF,iBAAiBlwB,WAAW/d,IACvI0vC,IAIJ,GAAuC,GAAnCpzF,KAAK6D,QAAQ7D,KAAKk6F,MAAMjnD,SAA2C,GAAvBjzC,KAAK4yF,gBAA+C,GAAxB5yF,KAAK6D,QAAQgN,SAAoC,GAAhBuiF,EAC3GpzF,KAAK0lE,WACA,CAoBL,GAnBA1lE,KAAK0iD,OACmC,YAApC1iD,KAAK6D,QAAQ7D,KAAKk6F,MAAMzrD,UAA8D,eAApCzuC,KAAK6D,QAAQ7D,KAAKk6F,MAAMzrD,UAC5EzuC,KAAK25C,IAAIpP,MAAMz7B,MAAMnG,KAAO,MAC5B3I,KAAK25C,IAAIpP,MAAMz7B,MAAMgkC,UAAY,OACjC9yC,KAAK25C,IAAI2gD,SAASxrF,MAAMgkC,UAAY,OACpC9yC,KAAK25C,IAAI2gD,SAASxrF,MAAMnG,KAAO3I,KAAK6D,QAAQs2F,SAAW,GAAK,KAC5Dn6F,KAAK25C,IAAI2gD,SAASxrF,MAAM8iC,MAAQ,GAChC5xC,KAAKktF,IAAIp+E,MAAMnG,KAAO,MACtB3I,KAAKktF,IAAIp+E,MAAM8iC,MAAQ,KAEvB5xC,KAAK25C,IAAIpP,MAAMz7B,MAAM8iC,MAAQ,MAC7B5xC,KAAK25C,IAAIpP,MAAMz7B,MAAMgkC,UAAY,QACjC9yC,KAAK25C,IAAI2gD,SAASxrF,MAAMgkC,UAAY,QACpC9yC,KAAK25C,IAAI2gD,SAASxrF,MAAM8iC,MAAQ5xC,KAAK6D,QAAQs2F,SAAW,GAAK,KAC7Dn6F,KAAK25C,IAAI2gD,SAASxrF,MAAMnG,KAAO,GAC/B3I,KAAKktF,IAAIp+E,MAAM8iC,MAAQ,MACvB5xC,KAAKktF,IAAIp+E,MAAMnG,KAAO,IAGgB,YAApC3I,KAAK6D,QAAQ7D,KAAKk6F,MAAMzrD,UAA8D,aAApCzuC,KAAK6D,QAAQ7D,KAAKk6F,MAAMzrD,SAC5EzuC,KAAK25C,IAAIpP,MAAMz7B,MAAMjG,IAAM,EAAIxE,OAAOrE,KAAKm/C,KAAKxF,IAAIvD,OAAOtnC,MAAMjG,IAAIsD,QAAQ,KAAM,KAAO,KAC1FnM,KAAK25C,IAAIpP,MAAMz7B,MAAMu/B,OAAS,OACzB,CACL,GAAIksD,GAAmBv6F,KAAKm/C,KAAKC,SAAShJ,OAAO3X,OAASz+B,KAAKm/C,KAAKC,SAAS2D,gBAAgBtkB,MAC7Fz+B,MAAK25C,IAAIpP,MAAMz7B,MAAMu/B,OAAS,EAAIksD,EAAmBl2F,OAAOrE,KAAKm/C,KAAKxF,IAAIvD,OAAOtnC,MAAMjG,IAAIsD,QAAQ,KAAM,KAAO,KAChHnM,KAAK25C,IAAIpP,MAAMz7B,MAAMjG,IAAM,GAGH,GAAtB7I,KAAK6D,QAAQ+tF,OACf5xF,KAAK25C,IAAIpP,MAAMz7B,MAAM0vB,MAAQx+B,KAAK25C,IAAI2gD,SAAStgD,YAAc,GAAK,KAClEh6C,KAAK25C,IAAI2gD,SAASxrF,MAAM8iC,MAAQ,GAChC5xC,KAAK25C,IAAI2gD,SAASxrF,MAAMnG,KAAO,GAC/B3I,KAAKktF,IAAIp+E,MAAM0vB,MAAQ,QAEvBx+B,KAAK25C,IAAIpP,MAAMz7B,MAAM0vB,MAAQx+B,KAAK6D,QAAQs2F,SAAW,GAAKn6F,KAAK25C,IAAI2gD,SAAStgD,YAAc,GAAK,KAC/Fh6C,KAAKw6F,kBAIP,KAAK,GADDn8D,GAAU,GACL53B,EAAI,EAAGA,EAAIysF,EAAW5sF,OAAQG,IAAK,CAC1C,GAAIi9C,GAAUwvC,EAAWzsF,EACW,IAAhCzG,KAAKy+C,OAAOiF,GAASzQ,SAAkE1sC,SAA9CvG,KAAK2xF,iBAAiBlwB,WAAW/d,IAAuE,GAA7C1jD,KAAK2xF,iBAAiBlwB,WAAW/d,KACvIrlB,GAAWr+B,KAAKy+C,OAAOiF,GAASrlB,QAAU,UAG9Cr+B,KAAK25C,IAAI2gD,SAASzrD,UAAYxQ,EAC9Br+B,KAAK25C,IAAI2gD,SAASxrF,MAAMqrC,WAAa,IAAOn6C,KAAK6D,QAAQs2F,SAAWn6F,KAAK6D,QAAQu2F,YAAc,OAInGp3F,EAAOiQ,UAAUunF,gBAAkB,WACjC,GAAIx6F,KAAK25C,IAAIpP,MAAMl/B,WAAY,CAC7B,GAAI6nF,GAAa9rF,OAAO6H,KAAKjP,KAAKy+C,OAClCy0C,GAAWx0E,KAAK,SAAUxY,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,IAItBtF,EAAQo8B,cAAch9B,KAAKgtF,YAE3B,IAAIp+C,GAAU7jC,OAAO4lE,iBAAiB3wE,KAAK25C,IAAIpP,OAAOkwD,WAClDxH,EAAa5uF,OAAOuqC,EAAQziC,QAAQ,KAAM,KAC1CyxB,EAAIq1D,EACJhB,EAAYjyF,KAAK6D,QAAQs2F,SACzBnH,EAAa,IAAOhzF,KAAK6D,QAAQs2F,SACjCl5E,EAAIgyE,EAAa,GAAMD,EAAa,CAExChzF,MAAKktF,IAAIp+E,MAAM0vB,MAAQyzD,EAAY,EAAIgB,EAAa,IAEpD,KAAK,GAAIxsF,GAAI,EAAGA,EAAIysF,EAAW5sF,OAAQG,IAAK,CAC1C,GAAIi9C,GAAUwvC,EAAWzsF,EACW,IAAhCzG,KAAKy+C,OAAOiF,GAASzQ,SAAkE1sC,SAA9CvG,KAAK2xF,iBAAiBlwB,WAAW/d,IAAuE,GAA7C1jD,KAAK2xF,iBAAiBlwB,WAAW/d,KACvI1jD,KAAKy+C,OAAOiF,GAAS+nC,UAAUwG,EAAWe,EAAYhzF,KAAKmtF,UAAWvvD,EAAG3c,GACzEA,GAAK+xE,EAAahzF,KAAK6D,QAAQu2F,gBAMvCv6F,EAAOD,QAAUoD,GAIb,SAASnD,EAAQD,GAWrBwH,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAET,IAAIub,GAAS,SACT4qE,EAAU,UACV90E,EAAS,SACT3M,EAAQ,QACRkU,EAAO,OACPvZ,EAAS,SACTu1C,EAAM,MACN51C,EAAS,SACTonF,EAAM,MAEN3nF,GACFw8D,WACEnvD,SAAWq6E,UAASA,GACpB1rD,QAAU0rD,UAASA,EAASE,WAAY,YACxChnD,WAAauV,IAAKA,GAClBkwC,UAAYzlF,OAAQA,EAAQ8mF,UAASA,EAASE,WAAY,aAI5DY,kBAAoB1rE,QAAS,OAAQ,UACrC2rE,cAAgB3rE,OAAQA,GACxB5B,MAAQwsE,UAASA,GACjBgB,UAAYhB,UAASA,GACrBppF,OAASopF,UAASA,GAClBiB,aAAe7rE,OAAQA,EAAQlK,OAAQA,GACvCg2E,QACEv7E,SAAWq6E,UAASA,GACpBpsC,aAAex+B,QAAS,SAAU,MAAO,OAAQ,UACjDojC,SAAWt/C,OAAQA,GACnBylF,UAAYqB,UAASA,EAAS9mF,OAAQA,IAExC0K,OAASwR,QAAS,OAAQ,MAAO,WACjC+rE,UACE7tD,OAASpoB,OAAQA,GACjBm8E,UAAYn8E,OAAQA,GACpBk2E,YAAcpB,UAASA,GACvBzoB,OAASniD,QAAS,OAAQ,SAAU,UACpCupE,UAAYzlF,OAAQA,IAEtBmoF,eACE17E,SAAWq6E,UAASA,GACpBsB,iBAAmBlsE,QAAS,cAAe,UAAW,YACtDgmE,OAASlwE,OAAQA,GACjByzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCzrB,YACE5uD,SAAWq6E,UAASA,GACpBxrB,UAAY0rB,WAAY,YACxBntD,MAAQ7nB,OAAQA,GAChBtH,OAASwR,QAAS,SAAU,WAC5BupE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,EAASE,WAAY,aAE5DqB,UACEna,iBAAmB4Y,UAASA,GAC5B3Y,iBAAmB2Y,UAASA,GAC5B0G,OAAS1G,UAASA,GAClB1sD,OAASle,OAAQA,EAAQlK,OAAQA,GACjC68B,SAAWi4C,UAASA,GACpBgH,YAAchH,UAASA,GACvBviF,MACEu3C,OAASt7C,KAAOwR,OAAQA,GAAUvR,KAAOuR,OAAQA,GAAUyzE,UAAYzlF,OAAQA,IAC/EiP,QAAU+3E,WAAY,YACtB3qB,OAAS7sB,MAAQtzB,OAAQA,EAAQlK,OAAQA,GAAUtH,OAASwR,OAAQA,GAAUupE,UAAYzlF,OAAQA,IAClGylF,UAAYzlF,OAAQA,IAEtBwtC,OACEsO,OAASt7C,KAAOwR,OAAQA,GAAUvR,KAAOuR,OAAQA,GAAUyzE,UAAYzlF,OAAQA,IAC/EiP,QAAU+3E,WAAY,YACtB3qB,OAAS7sB,MAAQtzB,OAAQA,EAAQlK,OAAQA,GAAUtH,OAASwR,OAAQA,GAAUupE,UAAYzlF,OAAQA,IAClGylF,UAAYzlF,OAAQA,IAEtBylF,UAAYzlF,OAAQA,IAEtBsoF,QACE77E,SAAWq6E,UAASA,GACpB0G,OAAS1G,UAASA,GAClBviF,MACEsqC,SAAWi4C,UAASA,GACpBz8C,UAAYnuB,QAAS,YAAa,eAAgB,WAAY,gBAC9DupE,UAAYzlF,OAAQA,IAEtBwtC,OACEqB,SAAWi4C,UAASA,GACpBz8C,UAAYnuB,QAAS,YAAa,eAAgB,WAAY,gBAC9DupE,UAAYzlF,OAAQA,IAEtBylF,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCzsC,QACEgjB,YAAc0pB,IAAKA,GACnBtB,UAAYzlF,OAAQA,IAGtBw6C,YAAcssC,UAASA,GACvBrsC,gBAAkBzoC,OAAQA,GAC1BupD,YAAcurB,UAASA,GACvBr4C,KAAOz8B,OAAQA,EAAQuH,KAAMA,EAAM2C,OAAQA,EAAQvc,OAAQA,GAC3DsP,QACEo4D,aACE3lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCsjF,UAAYzlF,OAAQA,IAEtBsnE,aACE5lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCsjF,UAAYzlF,OAAQA,IAEtBylF,UAAYzlF,OAAQA,IAEtBL,QAAUqnF,WAAY,YACtB3sD,QAAUne,OAAQA,EAAQlK,OAAQA,GAClCmpC,aACE5M,OAASh1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7D8uC,KAAOl1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Do4D,QAAU77C,OAAQA,GAClBupE,UAAYzlF,OAAQA,EAAQqF,MAAOA,IAErC6J,QAAUgN,OAAQA,GAClB5I,SACEiyE,SAAWwB,IAAKA,GAChBtB,UAAYzlF,OAAQA,IAEtBS,KAAO8Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Di7C,WAAa5oC,OAAQA,EAAQkK,OAAQA,GACrCkyD,eAAiBp8D,OAAQA,GACzBxR,KAAO+Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dk7C,WAAa7oC,OAAQA,EAAQkK,OAAQA,GACrC83C,UAAY8yB,UAASA,GACrBloB,aAAekoB,UAASA,GACxBpsC,aAAex+B,OAAQA,GACvBo2D,iBAAmBwU,UAASA,GAC5B3Y,iBAAmB2Y,UAASA,GAC5B5Y,iBAAmB4Y,UAASA,GAC5Bv4C,OAASh1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7D07C,UACEz6C,OAASsb,OAAQA,EAAQ/Z,UAAa,aACtCmsC,MAAQt8B,OAAQA,EAAQ7P,UAAa,aACrCsjF,UAAYzlF,OAAQA,IAEtBo6B,OAASle,OAAQA,EAAQlK,OAAQA,GACjCiiD,UAAY6yB,UAASA,GACrBnwB,SAAWz6C,QAAS,UAAW,SAAU,UAAW,KACpDi4C,SAAWniD,OAAQA,GACnBkiD,SAAWliD,OAAQA,GACnBg4E,QAAUh4E,OAAQA,GAClByzE,UAAYzlF,OAAQA,IAGlBi9C,GACFzuC,QAEE8L,MAAM,EACNwtE,UAAU,EACVpqF,OAAO,EACPsqF,QACEv7E,SAAS,EACTiuC,aAAc,OAAQ,MAAO,SAAU,UAEzChwC,OAAQ,OAAQ,MAAO,UACvBu9E,UACE7tD,OAAQ,GAAI,EAAG,IAAK,GACpB+zD,UAAW,GAAI,EAAG,IAAK,GACvBjG,YAAY,EACZ7pB,OAAQ,OAAQ,SAAU,UAE5B8pB,eACE17E,SAAS,EACT27E,iBAAkB,cAAe,UAAW,YAE9C/sB,YACE5uD,SAAS,EACTotB,MAAO,EAAG,EAAG,GAAI,GACjBnvB,OAAQ,SAAU,WAEpB29E,UACEna,iBAAiB,EACjBC,iBAAiB,EACjBqf,OAAO,EACPpzD,OAAQ,GAAI,EAAG,IAAK,GACpByU,SAAS,EACTi/C,YAAY,EACZvpF,MAGE83D,OAAS7sB,KAAM,GAAI9kC,MAAO,KAE5B8iC,OAGE6uB,OAAS7sB,KAAM,GAAI9kC,MAAO,MAG9B49E,QACE77E,SAAS,EACT+gF,OAAO,EACPjpF,MACEsqC,SAAS,EACTxE,UAAW,YAAa,eAAgB,WAAY,gBAEtDmD,OACEqB,SAAS,EACTxE,UAAW,YAAa,eAAgB,WAAY,iBAIxDmQ,YAAY,EACZC,gBAAiB,GAAI,EAAG,IAAM,IAC9B8gB,YAAY,EACZ9sB,IAAK,GACLx/B,QACEo4D,aACE3lD,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACLlJ,MAAO,MACPD,KAAM,QAERkvD,aACE5lD,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACLlJ,MAAO,OACPD,KAAM,KAIViiB,OAAQ,GACRnrB,OAAQ,GACRzO,IAAK,GACLm6C,UAAW,GACXwzB,eAAgB,EAAG,EAAG,GAAI,GAC1B5tE,IAAK,GACLq6C,UAAW,GACXmZ,UAAU,EACVtZ,aAAc,OAAQ,SAAU,OAChC43B,iBAAiB,EACjBnE,iBAAiB,EACjBD,iBAAiB,EACjB3/B,MAAO,GACPnU,MAAO,OACP65B,UAAU,EACV0C,SAAU,UAAW,SAAU,UAAW,IAC1CxC,SAAU,SAAiB,GAAI,SAAiB,GAChDD,SAAU,GAAI,GAAI,SAAiB,GACnC81B,OAAQ,GAIZxuF,GAAQ4D,WAAaA,EACrB5D,EAAQyhD,iBAAmBA,GAIvB,SAASxhD,EAAQD,EAASM,GAK9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAwFzF,QAAS3C,GAAQihC,EAAWpsB,EAAMnU,GAChC,GAAIo+C,GAAQjiD,IAEZ,MAAMA,eAAgBmD,IACpB,KAAM,IAAIkhC,aAAY,mDAIxBrkC,MAAK6D,WACL7D,KAAK2+C,gBACHrrC,OAAQ,KACRoE,QAASA,EACTioD,YAAY,GAEdh/D,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAG/B3+C,KAAKm/C,MACH/a,UAAWA,EACXs2D,SACAC,eACAC,SACAC,eACAx7C,SACEjgB,GAAIp/B,KAAKo/B,GAAGkgB,KAAKt/C,MACjBu/B,IAAKv/B,KAAKu/B,IAAI+f,KAAKt/C,MACnB43C,KAAM53C,KAAK43C,KAAK0H,KAAKt/C,MACrBw6C,KAAMx6C,KAAKw6C,KAAK8E,KAAKt/C,OAEvB86F,gBACEC,MAAO,aACPr/B,QAAS,aACTs/B,YAAa,aACbC,OAAQ,aACRC,YAAa,aACbC,OAAQ,aACRC,UAAW,aACX78B,aAAc,aACd88B,QAAS,aACTC,YAAa,aACb3/B,UAAW,aACX4/B,UAAW,cAEbvjF,MACE0iF,MAAO,KACPE,MAAO,MAETY,WACEC,WAAY,aACZC,WAAY,aACZ1iC,WAAY,cAEd/4D,WACA07F,MACE32F,MAAO,EACP0jC,aAAe9K,EAAG,EAAG3c,EAAG,KAK5BjhB,KAAK47F,qBAGL57F,KAAK67F,OAAS,GAAIx4F,GAAO,WACvB,MAAO4+C,GAAM9C,KAAKE,QAAQzH,KAAK,oBAEjC53C,KAAKy+C,OAAS,GAAIq9C,GAAgB,WAClC97F,KAAKwqC,OAAS,GAAIuxD,GAAgB,WAAW/7F,KAAKm/C,MAClDn/C,KAAKg8F,iBAAmB,GAAIC,GAA0B,WAAWj8F,KAAKm/C,KAAMn/C,KAAKwqC,QACjFxqC,KAAKk8F,mBAAqB,GAAIC,GAA4B,WAAWn8F,KAAKm/C,KAAMn/C,KAAKwqC,OAAQxqC,KAAKg8F,kBAClGh8F,KAAK27F,KAAO,GAAIS,GAAc,WAAWp8F,KAAKm/C,KAAMn/C,KAAKwqC,QACzDxqC,KAAKq8F,SAAW,GAAIC,GAAwB,WAAWt8F,KAAKm/C,KAAMn/C,KAAKwqC,QACvExqC,KAAKi8E,QAAU,GAAIsgB,GAAuB,WAAWv8F,KAAKm/C,MAC1Dn/C,KAAKw8F,aAAe,GAAIC,GAAsB,WAAWz8F,KAAKm/C,MAC9Dn/C,KAAK08F,WAAa,GAAIC,GAAoB,WAAW38F,KAAKm/C,MAC1Dn/C,KAAK48F,aAAe,GAAIC,GAA4B,WAAW78F,KAAKm/C,KAAMn/C,KAAKwqC,OAAQxqC,KAAKg8F,kBAE5Fh8F,KAAK88F,aAAe,GAAIC,GAAsB,WAAW/8F,KAAKm/C,KAAMn/C,KAAK67F,OAAQ77F,KAAKy+C,OAAQz+C,KAAKw8F,cACnGx8F,KAAKg9F,aAAe,GAAIC,GAAsB,WAAWj9F,KAAKm/C,KAAMn/C,KAAK67F,OAAQ77F,KAAKy+C,QAEtFz+C,KAAKm/C,KAAKl/C,QAAqB,YAAI,GAAIi9F,GAAuB,WAAWl9F,KAAKm/C,KAAM,IAAK,KACzFn/C,KAAKm/C,KAAKl/C,QAAoB,WAAID,KAAK08F,WAGvC18F,KAAKwqC,OAAO0U,UAGZl/C,KAAKg/B,WAAWn7B,GAGhB7D,KAAKyjC,QAAQzrB,GAhLf,GAAImlF,GAAiBj9F,EAAoB,IAErC47F,EAAkBllB,EAAuBumB,GAEzCC,EAAuBl9F,EAAoB,IAE3C68F,EAAwBnmB,EAAuBwmB,GAE/CC,EAAuBn9F,EAAoB,IAE3C+8F,EAAwBrmB,EAAuBymB,GAE/CC,EAAwBp9F,EAAoB,IAE5Cq8F,EAAyB3lB,EAAuB0mB,GAEhDC,EAAqBr9F,EAAoB,IAEzCy8F,EAAsB/lB,EAAuB2mB,GAE7CC,EAAyBt9F,EAAoB,KAE7Co8F,EAA0B1lB,EAAuB4mB,GAEjDC,EAAiBv9F,EAAoB,KAErC67F,EAAkBnlB,EAAuB6mB,GAEzCC,EAAex9F,EAAoB,KAEnCk8F,EAAgBxlB,EAAuB8mB,GAEvCC,EAA6Bz9F,EAAoB,KAEjDi8F,EAA8BvlB,EAAuB+mB,GAErDC,EAA2B19F,EAAoB,KAE/C+7F,EAA4BrlB,EAAuBgnB,GAEnDC,EAAuB39F,EAAoB,KAE3Cu8F,EAAwB7lB,EAAuBinB,GAE/CC,EAA6B59F,EAAoB,KAEjD28F,EAA8BjmB,EAAuBknB,GAErDC,EAAsB79F,EAAoB,IAE1C89F,EAAuBpnB,EAAuBmnB,GAE9CE,EAAmB/9F,EAAoB,IAEvCg+F,EAAoBtnB,EAAuBqnB,GAE3CE,EAAaj+F,EAAoB,KAEjCk+F,EAAwBl+F,EAAoB,KAE5Cg9F,EAAyBtmB,EAAuBwnB,EAapDl+F,GAAoB,IAEpB,IAAI+nC,GAAU/nC,EAAoB,IAE9BS,GADST,EAAoB,IACtBA,EAAoB,IAG3BoD,GAFUpD,EAAoB,GACnBA,EAAoB,IACnBA,EAAoB,MAChCqD,EAAcrD,EAAoB,KAClCmD,EAASnD,EAAoB,KAC7Bo+D,EAAYp+D,EAAoB,IAChCwX,EAAUxX,EAAoB,IAgGlC+nC,GAAQ9kC,EAAQ8P,WAMhB9P,EAAQ8P,UAAU+rB,WAAa,SAAUn7B,GACvC,GAAI41E,GAASz5E,IAEb,IAAgBuG,SAAZ1C,EAAuB,CACzB,GAAI49C,GAAay8C,EAAkB,WAAWx8C,SAAS79C,EAASs6F,EAAW36F,WACvEi+C,MAAe,GACjB9hC,QAAQu+B,IAAI,2DAA4D+/C,EAAiB78C,WAI3F,IAAInxC,IAAU,SAAU,UAAW,aAoCnC,IAnCAtP,EAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAG/CA,EAAU7D,KAAKw8F,aAAax9D,WAAWn7B,EAAQw6F,OAAQx6F,GAEvD7D,KAAKwqC,OAAOxL,WAAWn7B,GAGvB7D,KAAKy+C,OAAOzf,WAAWn7B,EAAQ46C,QAC/Bz+C,KAAK88F,aAAa99D,WAAWn7B,EAAQ62F,OACrC16F,KAAKg9F,aAAah+D,WAAWn7B,EAAQ+2F,OACrC56F,KAAKi8E,QAAQj9C,WAAWn7B,EAAQo4E,SAChCj8E,KAAK48F,aAAa59D,WAAWn7B,EAAQ+4F,aAAc/4F,EAAS7D,KAAK6D,SAEjE7D,KAAKk8F,mBAAmBl9D,WAAWn7B,EAAQy6F,aAC3Ct+F,KAAKq8F,SAASr9D,WAAWn7B,EAAQy6F,aACjCt+F,KAAKg8F,iBAAiBh9D,WAAWn7B,EAAQy6F,aAGlB/3F,SAAnB1C,EAAQ46C,QACVz+C,KAAKm/C,KAAKE,QAAQzH,KAAK,gBAMrB,aAAe/zC,KACZ7D,KAAK+/D,eACR//D,KAAK+/D,aAAe,GAAIi+B,GAAqB,WAAWh+F,KAAMA,KAAKm/C,KAAK/a,UAAW+5D,EAAW98C,iBAAkBrhD,KAAKwqC,OAAOutC,aAG9H/3E,KAAK+/D,aAAa/gC,WAAWn7B,EAAQm8D,YAInChgE,KAAK+/D,cAAgB//D,KAAK+/D,aAAal8D,QAAQgN,WAAY,EAAM,CACnE,GAAI0tF,IAAmB7D,SAAWE,SAAWyD,UAAYC,eAAiB1B,gBAAkB3gB,WAAarpE,UACzGjS,GAAK0G,WAAWk3F,EAAe7D,MAAO16F,KAAK88F,aAAaj5F,SACxDlD,EAAK0G,WAAWk3F,EAAe3D,MAAO56F,KAAKg9F,aAAan5F,SACxDlD,EAAK0G,WAAWk3F,EAAeF,OAAQr+F,KAAKw8F,aAAa34F,SAEzDlD,EAAK0G,WAAWk3F,EAAeD,YAAat+F,KAAKg8F,iBAAiBn4F,SAClElD,EAAK0G,WAAWk3F,EAAeD,YAAat+F,KAAKq8F,SAASx4F,SAE1DlD,EAAK0G,WAAWk3F,EAAeD,YAAat+F,KAAKk8F,mBAAmBr4F,SACpElD,EAAK0G,WAAWk3F,EAAe3B,aAAc58F,KAAK48F,aAAa/4F,SAC/DlD,EAAK0G,WAAWk3F,EAAetiB,QAASj8E,KAAKi8E,QAAQp4E,SAGrDlD,EAAK0G,WAAWk3F,EAAe3rF,OAAQ5S,KAAKwqC,OAAO3mC,SACnDlD,EAAK0G,WAAWk3F,EAAe3rF,OAAQ5S,KAAK6D,SAE5C7D,KAAK+/D,aAAaG,iBAAiBq+B,GAIVh4F,SAAvB1C,EAAQ87D,WACN97D,EAAQ87D,cAAe,EACFp5D,SAAnBvG,KAAK4/D,YACP5/D,KAAK4/D,UAAY,GAAItB,GAAUt+D,KAAKwqC,OAAOD,OAC3CvqC,KAAK4/D,UAAUxgC,GAAG,SAAU,WAC1Bq6C,EAAOt6B,KAAKE,QAAQzH,KAAK,gBAINrxC,SAAnBvG,KAAK4/D,YACP5/D,KAAK4/D,UAAUzgC,gBACRn/B,MAAK4/D,WAEd5/D,KAAKm/C,KAAKE,QAAQzH,KAAK,aAGzB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,YAGzB53C,KAAKwqC,OAAO+E,UAEZvvC,KAAKm/C,KAAKE,QAAQzH,KAAK,qBAQ3Bz0C,EAAQ8P,UAAUurF,sBAAwB,WACxC,GAAI9D,GAAQ16F,KAAKm/C,KAAKu7C,MAClBE,EAAQ56F,KAAKm/C,KAAKy7C,KACtB56F,MAAKm/C,KAAKw7C,eACV36F,KAAKm/C,KAAK07C,cAEV,KAAK,GAAI4D,KAAU/D,GACbA,EAAM10F,eAAey4F,IACnB/D,EAAM+D,GAAQ56F,QAAQk5D,UAAW,GACnC/8D,KAAKm/C,KAAKw7C,YAAYnzF,KAAKkzF,EAAM+D,GAAQp+F,GAK/C,KAAK,GAAIq+F,KAAU9D,GACbA,EAAM50F,eAAe04F,IACnB9D,EAAM8D,GAAQ76F,QAAQk5D,UAAW,GACnC/8D,KAAKm/C,KAAK07C,YAAYrzF,KAAKozF,EAAM8D,GAAQr+F,KASjD8C,EAAQ8P,UAAU2oF,mBAAqB,WACrC,GAAIrhB,GAASv6E,IAGbA,MAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WAEnCm7C,EAAOikB,wBACPjkB,EAAOp7B,KAAKE,QAAQzH,KAAK,kBAEzB2iC,EAAOp7B,KAAKE,QAAQzH,KAAK,kBAI3B53C,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WAEnCm7C,EAAOokB,kBAAkBpkB,EAAOp7B,KAAKu7C,OACrCngB,EAAOokB,kBAAkBpkB,EAAOp7B,KAAKy7C,OAErCrgB,EAAOp7B,KAAKE,QAAQzH,KAAK,mBACzB2iC,EAAOp7B,KAAKE,QAAQzH,KAAK,qBAc7Bz0C,EAAQ8P,UAAUwwB,QAAU,SAAUzrB,GAQpC,GANAhY,KAAKm/C,KAAKE,QAAQzH,KAAK,gBACvB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,cAGvB53C,KAAKg8F,iBAAiB4C,cAElB5mF,GAAQA,EAAK0hC,MAAQ1hC,EAAK0iF,OAAS1iF,EAAK4iF,OAC1C,KAAM,IAAIv2D,aAAY,iGAMxB,IAFArkC,KAAKg/B,WAAWhnB,GAAQA,EAAKnU,SAEzBmU,GAAQA,EAAK0hC,IAAK,CACpB/5B,QAAQu+B,IAAI,4PAEZ,IAAI2gD,GAAUv7F,EAAUK,WAAWqU,EAAK0hC,IAExC,YADA15C,MAAKyjC,QAAQo7D,GAER,GAAI7mF,GAAQA,EAAK8mF,MAAO,CAE7Bn/E,QAAQu+B,IAAI,oQACZ,IAAI6gD,GAAYx7F,EAAYO,WAAWkU,EAAK8mF,MAE5C,YADA9+F,MAAKyjC,QAAQs7D,GAGb/+F,KAAK88F,aAAar5D,QAAQzrB,GAAQA,EAAK0iF,OAAO,GAC9C16F,KAAKg9F,aAAav5D,QAAQzrB,GAAQA,EAAK4iF,OAAO,GAIhD56F,KAAKm/C,KAAKE,QAAQzH,KAAK,gBAGvB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,eAGvB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,gBASzBz0C,EAAQ8P,UAAUksB,QAAU,WAC1Bn/B,KAAKm/C,KAAKE,QAAQzH,KAAK,WAEvB53C,KAAKm/C,KAAKE,QAAQ9f,MAClBv/B,KAAKu/B,YAGEv/B,MAAKy+C,aACLz+C,MAAKwqC,aACLxqC,MAAKg8F,uBACLh8F,MAAKk8F,yBACLl8F,MAAK27F,WACL37F,MAAKq8F,eACLr8F,MAAKi8E,cACLj8E,MAAKw8F,mBACLx8F,MAAK08F,iBACL18F,MAAK48F,mBACL58F,MAAK88F,mBACL98F,MAAKg9F,mBACLh9F,MAAK+/D,mBACL//D,MAAK67F,MAEZ,KAAK,GAAI4C,KAAUz+F,MAAKm/C,KAAKu7C,YACpB16F,MAAKm/C,KAAKu7C,MAAM+D,EAEzB,KAAK,GAAIC,KAAU1+F,MAAKm/C,KAAKy7C,YACpB56F,MAAKm/C,KAAKy7C,MAAM8D,EAIzB/9F,GAAK2D,mBAAmBtE,KAAKm/C,KAAK/a,YAWpCjhC,EAAQ8P,UAAU0rF,kBAAoB,SAAU74F,GAC9C,GAAIzF,GAGA6mC,EAAW3gC,OACX4gC,EAAW5gC,OACXy4F,EAAa,CACjB,KAAK3+F,IAAMyF,GACT,GAAIA,EAAIE,eAAe3F,GAAK,CAC1B,GAAI0E,GAAQe,EAAIzF,GAAI27C,UACNz1C,UAAVxB,IACFmiC,EAAwB3gC,SAAb2gC,EAAyBniC,EAAQE,KAAKL,IAAIG,EAAOmiC,GAC5DC,EAAwB5gC,SAAb4gC,EAAyBpiC,EAAQE,KAAKJ,IAAIE,EAAOoiC,GAC5D63D,GAAcj6F,GAMpB,GAAiBwB,SAAb2gC,GAAuC3gC,SAAb4gC,EAC5B,IAAK9mC,IAAMyF,GACLA,EAAIE,eAAe3F,IACrByF,EAAIzF,GAAI4+F,cAAc/3D,EAAUC,EAAU63D,IAUlD77F,EAAQ8P,UAAUurD,SAAW,WAC3B,OAAQx+D,KAAK4/D,WAAa5/D,KAAK4/D,UAAUQ,QAG3Cj9D,EAAQ8P,UAAUs8B,QAAU,WAC1B,MAAOvvC,MAAKwqC,OAAO+E,QAAQx8B,MAAM/S,KAAKwqC,OAAQnkC,YAEhDlD,EAAQ8P,UAAUisF,YAAc,WAC9B,MAAOl/F,MAAKwqC,OAAO00D,YAAYnsF,MAAM/S,KAAKwqC,OAAQnkC,YAEpDlD,EAAQ8P,UAAUksF,YAAc,WAC9B,MAAOn/F,MAAKwqC,OAAO20D,YAAYpsF,MAAM/S,KAAKwqC,OAAQnkC,YAEpDlD,EAAQ8P,UAAUmsF,SAAW,WAC3B,MAAOp/F,MAAK08F,WAAW0C,SAASrsF,MAAM/S,KAAK08F,WAAYr2F,YAEzDlD,EAAQ8P,UAAUosF,UAAY,WAC5B,MAAOr/F,MAAK08F,WAAW2C,UAAUtsF,MAAM/S,KAAK08F,WAAYr2F,YAE1DlD,EAAQ8P,UAAUqsF,YAAc,WAC9B,MAAOt/F,MAAK08F,WAAW4C,YAAYvsF,MAAM/S,KAAK08F,WAAYr2F,YAE5DlD,EAAQ8P,UAAUssF,QAAU,WAC1B,MAAOv/F,MAAK08F,WAAW6C,QAAQxsF,MAAM/S,KAAK08F,WAAYr2F,YAExDlD,EAAQ8P,UAAUusF,kBAAoB,WACpC,MAAOx/F,MAAK08F,WAAW8C,kBAAkBzsF,MAAM/S,KAAK08F,WAAYr2F,YAElElD,EAAQ8P,UAAUwsF,oBAAsB,WACtC,MAAOz/F,MAAK08F,WAAW+C,oBAAoB1sF,MAAM/S,KAAK08F,WAAYr2F,YAEpElD,EAAQ8P,UAAUysF,iBAAmB,WACnC,MAAO1/F,MAAK08F,WAAWgD,iBAAiB3sF,MAAM/S,KAAK08F,WAAYr2F,YAEjElD,EAAQ8P,UAAU0sF,gBAAkB,WAClC,MAAO3/F,MAAK08F,WAAWiD,gBAAgB5sF,MAAM/S,KAAK08F,WAAYr2F,YAEhElD,EAAQ8P,UAAU2sF,QAAU,WAC1B,MAAO5/F,MAAKw8F,aAAaoD,QAAQ7sF,MAAM/S,KAAKw8F,aAAcn2F,YAE5DlD,EAAQ8P,UAAU4sF,eAAiB,WACjC,MAAO7/F,MAAK48F,aAAaiD,eAAe9sF,MAAM/S,KAAK48F,aAAcv2F,YAEnElD,EAAQ8P,UAAU6sF,gBAAkB,WAClC,MAAO9/F,MAAK48F,aAAakD,gBAAgB/sF,MAAM/S,KAAK48F,aAAcv2F,YAEpElD,EAAQ8P,UAAU8sF,YAAc,WAC9B,MAAO//F,MAAK48F,aAAamD,YAAYhtF,MAAM/S,KAAK48F,aAAcv2F,YAEhElD,EAAQ8P,UAAU+sF,SAAW,WAC3B,MAAOhgG,MAAK48F,aAAaoD,SAASjtF,MAAM/S,KAAK48F,aAAcv2F,YAE7DlD,EAAQ8P,UAAUgtF,aAAe,WACyC,MAAxEtgF,SAAQu+B,IAAI,4DAAmEl+C,KAAK48F,aAAaoD,SAASjtF,MAAM/S,KAAK48F,aAAcv2F,YAErIlD,EAAQ8P,UAAUitF,YAAc,WAC9B,MAAOlgG,MAAK48F,aAAasD,YAAYntF,MAAM/S,KAAK48F,aAAcv2F,YAEhElD,EAAQ8P,UAAUktF,aAAe,WAC/B,MAAOngG,MAAK48F,aAAauD,aAAaptF,MAAM/S,KAAK48F,aAAcv2F,YAEjElD,EAAQ8P,UAAUmtF,eAAiB,WACjC,MAAOpgG,MAAK48F,aAAawD,eAAertF,MAAM/S,KAAK48F,aAAcv2F,YAEnElD,EAAQ8P,UAAUotF,aAAe,WAC/B,MAAOrgG,MAAK88F,aAAauD,aAAattF,MAAM/S,KAAK88F,aAAcz2F,YAEjElD,EAAQ8P,UAAUqtF,eAAiB,WACjC,MAAOtgG,MAAK88F,aAAawD,eAAevtF,MAAM/S,KAAK88F,aAAcz2F,YAEnElD,EAAQ8P,UAAUstF,SAAW,WAC3B,MAAOvgG,MAAK88F,aAAayD,SAASxtF,MAAM/S,KAAK88F,aAAcz2F,YAE7DlD,EAAQ8P,UAAUutF,eAAiB,WACjC,MAAOxgG,MAAK88F,aAAa0D,eAAeztF,MAAM/S,KAAK88F,aAAcz2F,YAEnElD,EAAQ8P,UAAUwtF,kBAAoB,SAAUC,GAC9C,MAAkCn6F,UAA9BvG,KAAKm/C,KAAKu7C,MAAMgG,GACX1gG,KAAK88F,aAAa2D,kBAAkB1tF,MAAM/S,KAAK88F,aAAcz2F,WAE7DrG,KAAKg9F,aAAayD,kBAAkB1tF,MAAM/S,KAAKg9F,aAAc32F,YAGxElD,EAAQ8P,UAAU0tF,kBAAoB,WACpC,MAAO3gG,MAAK88F,aAAa6D,kBAAkB5tF,MAAM/S,KAAK88F,aAAcz2F,YAEtElD,EAAQ8P,UAAU2tF,gBAAkB,WAClC,MAAO5gG,MAAKi8E,QAAQ2kB,gBAAgB7tF,MAAM/S,KAAKi8E,QAAS51E,YAE1DlD,EAAQ8P,UAAU4tF,eAAiB,WACjC,MAAO7gG,MAAKi8E,QAAQ4kB,eAAe9tF,MAAM/S,KAAKi8E,QAAS51E,YAEzDlD,EAAQ8P,UAAU6tF,UAAY,WAC5B,MAAO9gG,MAAKi8E,QAAQ6kB,UAAU/tF,MAAM/S,KAAKi8E,QAAS51E,YAEpDlD,EAAQ8P,UAAU2uC,aAAe,WAC/B,MAAO5hD,MAAKg8F,iBAAiBp6C,aAAa7uC,MAAM/S,KAAKg8F,iBAAkB31F,YAEzElD,EAAQ8P,UAAU4uC,aAAe,WAC/B,MAAO7hD,MAAKg8F,iBAAiBn6C,aAAa9uC,MAAM/S,KAAKg8F,iBAAkB31F,YAEzElD,EAAQ8P,UAAU8tF,iBAAmB,WACnC,MAAO/gG,MAAKg8F,iBAAiB+E,iBAAiBhuF,MAAM/S,KAAKg8F,iBAAkB31F,YAE7ElD,EAAQ8P,UAAU+tF,iBAAmB,WACnC,MAAOhhG,MAAKg8F,iBAAiBgF,iBAAiBjuF,MAAM/S,KAAKg8F,iBAAkB31F,YAE7ElD,EAAQ8P,UAAUguF,UAAY,WAC5B,GAAIrlE,GAAO57B,KAAKg8F,iBAAiBiF,UAAUluF,MAAM/S,KAAKg8F,iBAAkB31F,UACxE,OAAaE,UAATq1B,GAAkCr1B,SAAZq1B,EAAKv7B,GACtBu7B,EAAKv7B,GAEPu7B,GAETz4B,EAAQ8P,UAAUiuF,UAAY,WAC5B,GAAIC,GAAOnhG,KAAKg8F,iBAAiBkF,UAAUnuF,MAAM/S,KAAKg8F,iBAAkB31F,UACxE,OAAaE,UAAT46F,GAAkC56F,SAAZ46F,EAAK9gG,GACtB8gG,EAAK9gG,GAEP8gG,GAETh+F,EAAQ8P,UAAUmuF,YAAc,WAC9B,MAAOphG,MAAKg8F,iBAAiBoF,YAAYruF,MAAM/S,KAAKg8F,iBAAkB31F,YAExElD,EAAQ8P,UAAUouF,YAAc,WAC9B,MAAOrhG,MAAKg8F,iBAAiBqF,YAAYtuF,MAAM/S,KAAKg8F,iBAAkB31F,YAExElD,EAAQ8P,UAAU2rF,YAAc,WAC9B5+F,KAAKg8F,iBAAiB4C,YAAY7rF,MAAM/S,KAAKg8F,iBAAkB31F,WAC/DrG,KAAKysC,UAEPtpC,EAAQ8P,UAAUw5B,OAAS,WACzB,MAAOzsC,MAAKq8F,SAAS5vD,OAAO15B,MAAM/S,KAAKq8F,SAAUh2F,YAEnDlD,EAAQ8P,UAAUusC,SAAW,WAC3B,MAAOx/C,MAAK27F,KAAKn8C,SAASzsC,MAAM/S,KAAK27F,KAAMt1F,YAE7ClD,EAAQ8P,UAAUquF,gBAAkB,WAClC,MAAOthG,MAAK27F,KAAK2F,gBAAgBvuF,MAAM/S,KAAK27F,KAAMt1F,YAEpDlD,EAAQ8P,UAAU6tC,IAAM,WACtB,MAAO9gD,MAAK27F,KAAK76C,IAAI/tC,MAAM/S,KAAK27F,KAAMt1F,YAExClD,EAAQ8P,UAAUm/B,OAAS,WACzB,MAAOpyC,MAAK27F,KAAKvpD,OAAOr/B,MAAM/S,KAAK27F,KAAMt1F,YAE3ClD,EAAQ8P,UAAU8uC,MAAQ,WACxB,MAAO/hD,MAAK27F,KAAK55C,MAAMhvC,MAAM/S,KAAK27F,KAAMt1F,YAE1ClD,EAAQ8P,UAAUsuF,YAAc,WAC9B,MAAOvhG,MAAK27F,KAAK4F,YAAYxuF,MAAM/S,KAAK27F,KAAMt1F,YAEhDlD,EAAQ8P,UAAUuuF,2BAA6B,WAC7C,GAAI39F,KAIJ,OAHI7D,MAAK+/D,eACPl8D,EAAU7D,KAAK+/D,aAAa4c,WAAW5pE,MAAM/S,KAAK+/D,eAE7Cl8D,GAGThE,EAAOD,QAAUuD,GAIb,SAAStD,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBt2E,EAAOT,EAAoB,GAO3BuhG,EAAS,WACX,QAASA,KACP1qB,EAAgB/2E,KAAMyhG,GAEtBzhG,KAAK+hC,QACL/hC,KAAK0hG,aAAe,EACpB1hG,KAAK2hG,eACL3hG,KAAK2oE,WAAa,EAElB3oE,KAAK4hG,gBAAmB1zF,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;AAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAG7IjO,KAAK6D,WACL7D,KAAK2+C,gBACHkjD,kBAAkB,GAEpBlhG,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBA6EjC,MA1EAw4B,GAAasqB,IACX93F,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAIi+F,IAAgB,mBAEpB,IAAgBv7F,SAAZ1C,EACF,IAAK,GAAIk+F,KAAal+F,GACpB,GAAIA,EAAQmC,eAAe+7F,IACe,KAApCD,EAAav6F,QAAQw6F,GAAmB,CAC1C,GAAI9+C,GAAQp/C,EAAQk+F,EACpB/hG,MAAKimB,IAAI87E,EAAW9+C,OAW9Bt5C,IAAK,QACL5E,MAAO,WACL/E,KAAKy+C,UACLz+C,KAAK2hG,kBAUPh4F,IAAK,MACL5E,MAAO,SAAai9F,GAClB,GAAI/+C,GAAQjjD,KAAKy+C,OAAOujD,EACxB,IAAcz7F,SAAV08C,EACF,GAAIjjD,KAAK6D,QAAQg+F,oBAAqB,GAAS7hG,KAAK2hG,YAAYr7F,OAAS,EAAG,CAE1E,GAAI8C,GAAQpJ,KAAK2oE,WAAa3oE,KAAK2hG,YAAYr7F,MAC/CtG,MAAK2oE,aACL1lB,KACAA,EAAMx2C,MAAQzM,KAAKy+C,OAAOz+C,KAAK2hG,YAAYv4F,IAC3CpJ,KAAKy+C,OAAOujD,GAAa/+C,MACpB,CAEL,GAAI75C,GAAQpJ,KAAK0hG,aAAe1hG,KAAK4hG,cAAct7F,MACnDtG,MAAK0hG,eACLz+C,KACAA,EAAMx2C,MAAQzM,KAAK4hG,cAAcx4F,GACjCpJ,KAAKy+C,OAAOujD,GAAa/+C,EAI7B,MAAOA,MAWTt5C,IAAK,MACL5E,MAAO,SAAag9F,EAAWjzF,GAG7B,MAFA9O,MAAKy+C,OAAOsjD,GAAajzF,EACzB9O,KAAK2hG,YAAYn6F,KAAKu6F,GACfjzF,MAIJ2yF,IAGT7hG,GAAQ,WAAa6hG,EACrB5hG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBgrB,EAAkB/hG,EAAoB,IAEtCgiG,EAAmBtrB,EAAuBqrB,GAE1CE,EAAyBjiG,EAAoB,IAE7CkiG,EAA0BxrB,EAAuBurB,GAEjDxhG,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAE/BmiG,EAAe,WACjB,QAASA,GAAaljD,EAAM08C,EAAQp9C,EAAQ+9C,GAC1C,GAAIv6C,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAMqiG,GAEtBriG,KAAKm/C,KAAOA,EACZn/C,KAAK67F,OAASA,EACd77F,KAAKy+C,OAASA,EACdz+C,KAAKw8F,aAAeA,EAGpBx8F,KAAKm/C,KAAKq8C,UAAUC,WAAaz7F,KAAKoQ,OAAOkvC,KAAKt/C,MAElDA,KAAKsiG,gBACHr8E,IAAK,SAAanb,EAAO60B,GACvBsiB,EAAMh8B,IAAI0Z,EAAO19B,QAEnBi+B,OAAQ,SAAgBp1B,EAAO60B,GAC7BsiB,EAAM/hB,OAAOP,EAAO19B,MAAO09B,EAAO3nB,OAEpC2pB,OAAQ,SAAgB72B,EAAO60B,GAC7BsiB,EAAMtgB,OAAOhC,EAAO19B,SAIxBjC,KAAK6D,WACL7D,KAAK2+C,gBACH7T,YAAa,EACby3D,oBAAqB,EACrBC,YAAaj8F,OACbkG,OACEyB,OAAQ,UACRD,WAAY,UACZE,WACED,OAAQ,UACRD,WAAY,WAEdG,OACEF,OAAQ,UACRD,WAAY,YAGhBw0F,OACE7kE,GAAG,EACH3c,GAAG,GAEL6wB,MACErlC,MAAO,UACPwxB,KAAM,GACNykE,KAAM,QACNz0F,WAAY,OACZ05B,YAAa,EACbg7D,YAAa,UACblgC,MAAO,cAETxf,MAAO18C,OACPw2D,QAAQ,EACR65B,MACE8L,KAAM,cACN7qF,KAAMtR,OACN03B,KAAM,GACNxxB,MAAO,WAETm2F,MAAOr8F,OACP23B,MAAO33B,OACPs8F,oBAAoB,EACpBC,MAAOv8F,OACPw8F,KAAM,EACN9mB,SAAS,EACT+mB,SACEp+F,IAAK,GACLC,IAAK,GACLq5B,OACErtB,SAAS,EACTjM,IAAK,GACLC,IAAK,GACLo+F,WAAY,GACZC,cAAe,GAEjBC,sBAAuB,SAA+Bv+F,EAAKC,EAAKC,EAAOC,GACrE,GAAIF,IAAQD,EACV,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,KAIzCo+F,QACEvyF,SAAS,EACTpE,MAAO,kBACPwxB,KAAM,GACNL,EAAG,EACH3c,EAAG,GAELoiF,MAAO,UACPC,iBACEC,cAAc,EACd3pD,aAAc,EACd4pD,cAAc,EACdC,oBAAoB,GAEtBxlE,KAAM,GACNwiC,MAAOl6D,OACPxB,MAAOwB,OACPq3B,EAAGr3B,OACH0a,EAAG1a,QAEL5F,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAK47F,qBAiXP,MA9WAzkB,GAAakrB,IACX14F,IAAK,qBACL5E,MAAO,WACL,GAAI00E,GAASz5E,IAGbA,MAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgBp/B,KAAK0jC,QAAQ4b,KAAKt/C,OACvDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAWp/B,KAAK0jC,QAAQ4b,KAAKt/C,OAClDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9Bz+B,EAAK2I,QAAQmwE,EAAO6oB,eAAgB,SAAU/4F,EAAUuB,GAClD2uE,EAAOt6B,KAAKnnC,KAAK0iF,OAAOjhB,EAAOt6B,KAAKnnC,KAAK0iF,MAAMn7D,IAAIz0B,EAAOvB,WAEzDkwE,GAAOt6B,KAAKq8C,UAAUC,iBACtBhiB,GAAO6oB,eAAer8E,UACtBwzD,GAAO6oB,eAAepiE,aACtBu5C,GAAO6oB,eAAe3gE,aACtB83C,GAAO6oB,oBAIlB34F,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAIzB,GAHAq+F,EAAiB,WAAWwB,aAAa1jG,KAAK6D,QAASA,GAGjC0C,SAAlB1C,EAAQw/F,MACV,IAAK,GAAI5E,KAAUz+F,MAAKm/C,KAAKu7C,MACvB16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,IACjCz+F,KAAKm/C,KAAKu7C,MAAM+D,GAAQkF,aAM9B,IAAqBp9F,SAAjB1C,EAAQiuC,KAAoB,CAC9BswD,EAAwB,WAAWsB,aAAa1jG,KAAK6D,QAAQiuC,KAAMjuC,EACnE,KAAK,GAAI46F,KAAUz+F,MAAKm/C,KAAKu7C,MACvB16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,KACjCz+F,KAAKm/C,KAAKu7C,MAAM+D,GAAQmF,oBACxB5jG,KAAKm/C,KAAKu7C,MAAM+D,GAAQoF,UAM9B,GAAqBt9F,SAAjB1C,EAAQo6B,KACV,IAAK,GAAIwgE,KAAUz+F,MAAKm/C,KAAKu7C,MACvB16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,IACjCz+F,KAAKm/C,KAAKu7C,MAAM+D,GAAQoF,UAMPt9F,SAAnB1C,EAAQk5D,QAA4Cx2D,SAApB1C,EAAQo4E,UAC1Cj8E,KAAKm/C,KAAKE,QAAQzH,KAAK,oBAW7BjuC,IAAK,UACL5E,MAAO,SAAiB21F,GACtB,GAAIngB,GAASv6E,KAET8jG,EAAYz9F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpF09F,EAAe/jG,KAAKm/C,KAAKnnC,KAAK0iF,KAElC,IAAIA,YAAiB75F,IAAW65F,YAAiB55F,GAC/Cd,KAAKm/C,KAAKnnC,KAAK0iF,MAAQA,MAClB,IAAI5zF,MAAMC,QAAQ2zF,GACvB16F,KAAKm/C,KAAKnnC,KAAK0iF,MAAQ,GAAI75F,GAC3Bb,KAAKm/C,KAAKnnC,KAAK0iF,MAAMz0E,IAAIy0E,OACpB,CAAA,GAAKA,EAGV,KAAM,IAAIxzF,WAAU,4BAFpBlH,MAAKm/C,KAAKnnC,KAAK0iF,MAAQ,GAAI75F,GAKzBkjG,GAEFpjG,EAAK2I,QAAQtJ,KAAKsiG,eAAgB,SAAU/4F,EAAUuB,GACpDi5F,EAAaxkE,IAAIz0B,EAAOvB,KAK5BvJ,KAAKm/C,KAAKu7C,SAEN16F,KAAKm/C,KAAKnnC,KAAK0iF,QACjB,WAEE,GAAI16D,GAAKu6C,CACT55E,GAAK2I,QAAQixE,EAAO+nB,eAAgB,SAAU/4F,EAAUuB,GACtDk1B,EAAGmf,KAAKnnC,KAAK0iF,MAAMt7D,GAAGt0B,EAAOvB,IAI/B,IAAIk3B,GAAM85C,EAAOp7B,KAAKnnC,KAAK0iF,MAAMt5D,QACjCm5C,GAAOt0D,IAAIwa,GAAK,MAIhBqjE,KAAc,GAChB9jG,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAU3BjuC,IAAK,MACL5E,MAAO,SAAa07B,GAKlB,IAAK,GAJDqjE,GAAYz9F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFhG,EAAKkG,OACLy9F,KACKv9F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnCpG,EAAKogC,EAAIh6B,EACT,IAAI0/C,GAAanmD,KAAKm/C,KAAKnnC,KAAK0iF,MAAM1jE,IAAI32B,GACtCu7B,EAAO57B,KAAKoQ,OAAO+1C,EACvB69C,GAASx8F,KAAKo0B,GACd57B,KAAKm/C,KAAKu7C,MAAMr6F,GAAMu7B,EAGxB57B,KAAKw8F,aAAayH,kBAAkBD,GAEhCF,KAAc,GAChB9jG,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAU3BjuC,IAAK,SACL5E,MAAO,SAAgB07B,EAAKyjE,GAG1B,IAAK,GAFDxJ,GAAQ16F,KAAKm/C,KAAKu7C,MAClByJ,GAAc,EACT19F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GACTm1B,EAAO8+D,EAAMr6F,GACb2X,EAAOksF,EAAYz9F,EACVF,UAATq1B,EAEFuoE,EAAcvoE,EAAKoD,WAAWhnB,IAE9BmsF,GAAc,EAEdvoE,EAAO57B,KAAKoQ,OAAO4H,GACnB0iF,EAAMr6F,GAAMu7B,GAGZuoE,KAAgB,EAClBnkG,KAAKm/C,KAAKE,QAAQzH,KAAK,gBAEvB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAU3BjuC,IAAK,SACL5E,MAAO,SAAgB07B,GAGrB,IAAK,GAFDi6D,GAAQ16F,KAAKm/C,KAAKu7C,MAEbj0F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,SACNi0F,GAAMr6F,GAGfL,KAAKm/C,KAAKE,QAAQzH,KAAK,mBASzBjuC,IAAK,SACL5E,MAAO,SAAgBohD,GACrB,GAAIi+C,GAAmB/9F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB67F,EAAiB,WAAa77F,UAAU,EAErH,OAAO,IAAI+9F,GAAiBj+C,EAAYnmD,KAAKm/C,KAAMn/C,KAAK67F,OAAQ77F,KAAKy+C,OAAQz+C,KAAK6D,YAGpF8F,IAAK,UACL5E,MAAO,WACL,GAAIs/F,GAAiBh+F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEzFq0F,EAAQ16F,KAAKm/C,KAAKu7C,KACtB,KAAK,GAAI+D,KAAU/D,GAAO,CACxB,GAAI9+D,GAAOr1B,MACPm0F,GAAM10F,eAAey4F,KACvB7iE,EAAO8+D,EAAM+D,GAEf,IAAIzmF,GAAOhY,KAAKm/C,KAAKnnC,KAAK0iF,MAAMrzE,MAAMo3E,EACzBl4F,UAATq1B,GAA+Br1B,SAATyR,IACpBqsF,KAAmB,GACrBzoE,EAAKoD,YAAapB,EAAG,KAAM3c,EAAG,OAEhC2a,EAAKoD,YAAayjE,OAAO,IACzB7mE,EAAKoD,WAAWhnB,QAWtBrO,IAAK,eACL5E,MAAO,SAAsB07B,GAC3B,GAAI6jE,KACJ,IAAY/9F,SAARk6B,GACF,GAAI35B,MAAMC,QAAQ05B,MAAS,GACzB,IAAK,GAAIh6B,GAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAC9B,GAAgCF,SAA5BvG,KAAKm/C,KAAKu7C,MAAMj6D,EAAIh6B,IAAmB,CACzC,GAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAMj6D,EAAIh6B,GAC/B69F,GAAU7jE,EAAIh6B,KAAQm3B,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,SAIpE,IAA6B1a,SAAzBvG,KAAKm/C,KAAKu7C,MAAMj6D,GAAoB,CACtC,GAAI7E,GAAO57B,KAAKm/C,KAAKu7C,MAAMj6D,EAC3B6jE,GAAU7jE,IAAS7C,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,SAIjE,KAAK,GAAIxa,GAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,GACjD69F,GAAUtkG,KAAKm/C,KAAKw7C,YAAYl0F,KAAQm3B,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,IAGtF,MAAOqjF,MAOT36F,IAAK,iBACL5E,MAAO,WAEL,GAAIu/F,MACAxhD,EAAU9iD,KAAKm/C,KAAKnnC,KAAK0iF,MAAMr5D,YAEnC,KAAK,GAAIo9D,KAAU37C,GAAQz7B,MACzB,GAAIy7B,EAAQz7B,MAAMrhB,eAAey4F,GAAS,CACxC,GAAI7iE,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,IACvB37C,EAAQz7B,MAAMo3E,GAAQ7gE,GAAK34B,KAAKsjB,MAAMqT,EAAKgC,IAAMklB,EAAQz7B,MAAMo3E,GAAQx9E,GAAKhc,KAAKsjB,MAAMqT,EAAK3a,KAC9FqjF,EAAU98F,MAAOnH,GAAIu7B,EAAKv7B,GAAIu9B,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,KAI9E6hC,EAAQ5iB,OAAOokE,MASjB36F,IAAK,iBACL5E,MAAO,SAAwB05F,GAC7B,MAAgCl4F,UAA5BvG,KAAKm/C,KAAKu7C,MAAM+D,GACXz+F,KAAKm/C,KAAKu7C,MAAM+D,GAAQ4E,MAAMkB,YADvC,UAWF56F,IAAK,oBACL5E,MAAO,SAA2B05F,GAChC,GAAI+F,KACJ,IAAgCj+F,SAA5BvG,KAAKm/C,KAAKu7C,MAAM+D,GAGlB,IAAK,GAFD7iE,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,GACvBgG,KACKh+F,EAAI,EAAGA,EAAIm1B,EAAKg/D,MAAMt0F,OAAQG,IAAK,CAC1C,GAAI06F,GAAOvlE,EAAKg/D,MAAMn0F,EAClB06F,GAAKuD,MAAQ9oE,EAAKv7B,GAESkG,SAAzBk+F,EAAQtD,EAAKwD,UACfH,EAASh9F,KAAK25F,EAAKwD,QACnBF,EAAQtD,EAAKwD,SAAU,GAEhBxD,EAAKwD,QAAU/oE,EAAKv7B,IAEFkG,SAAvBk+F,EAAQtD,EAAKuD,QACfF,EAASh9F,KAAK25F,EAAKuD,MACnBD,EAAQtD,EAAKuD,OAAQ,GAK7B,MAAOF,MAST76F,IAAK,oBACL5E,MAAO,SAA2B05F,GAChC,GAAImG,KACJ,IAAgCr+F,SAA5BvG,KAAKm/C,KAAKu7C,MAAM+D,GAElB,IAAK,GADD7iE,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,GAClBh4F,EAAI,EAAGA,EAAIm1B,EAAKg/D,MAAMt0F,OAAQG,IACrCm+F,EAASp9F,KAAKo0B,EAAKg/D,MAAMn0F,GAAGpG,QAG9Bsf,SAAQu+B,IAAI,mEAAoEugD,EAElF,OAAOmG,MAUTj7F,IAAK,WACL5E,MAAO,SAAkB05F,EAAQ7gE,EAAG3c,GAClC,GAAI05D,GAAS36E,IAEmBuG,UAA5BvG,KAAKm/C,KAAKu7C,MAAM+D,IAClBz+F,KAAKm/C,KAAKu7C,MAAM+D,GAAQ7gE,EAAIv5B,OAAOu5B,GACnC59B,KAAKm/C,KAAKu7C,MAAM+D,GAAQx9E,EAAI5c,OAAO4c,GACnC/W,WAAW,WACTywE,EAAOx7B,KAAKE,QAAQzH,KAAK,oBACxB,IAEHj4B,QAAQu+B,IAAI,0DAA2DugD,OAKtE4D,IAGTziG,GAAQ,WAAayiG,EACrBxiG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB4tB,EAAe3kG,EAAoB,IAEnC4kG,EAAgBluB,EAAuBiuB,GAEvCE,EAAkB7kG,EAAoB,IAEtC8kG,EAAmBpuB,EAAuBmuB,GAE1CE,EAAqB/kG,EAAoB,IAEzCglG,EAAsBtuB,EAAuBquB,GAE7CE,EAA4BjlG,EAAoB,IAEhDklG,EAA6BxuB,EAAuBuuB,GAEpDE,EAAuBnlG,EAAoB,IAE3ColG,EAAwB1uB,EAAuByuB,GAE/CE,EAAsBrlG,EAAoB,IAE1CslG,EAAuB5uB,EAAuB2uB,GAE9CE,EAAkBvlG,EAAoB,IAEtCwlG,EAAmB9uB,EAAuB6uB,GAE1CE,EAAsBzlG,EAAoB,IAE1C0lG,EAAuBhvB,EAAuB+uB,GAE9CE,EAAmB3lG,EAAoB,IAEvC4lG,EAAoBlvB,EAAuBivB,GAE3CE,EAAoB7lG,EAAoB,IAExC8lG,EAAqBpvB,EAAuBmvB,GAE5CE,EAAqB/lG,EAAoB,IAEzCgmG,EAAsBtvB,EAAuBqvB,GAE7CE,EAAmBjmG,EAAoB,IAEvCkmG,EAAoBxvB,EAAuBuvB,GAE3CE,EAAmBnmG,EAAoB,IAEvComG,EAAoB1vB,EAAuByvB,GAE3CE,EAAuBrmG,EAAoB,IAE3CsmG,EAAwB5vB,EAAuB2vB,GAE/CE,EAA2BvmG,EAAoB,IAE/CwmG,EAA4B9vB,EAAuB6vB,GAEnDxI,EAAmB/9F,EAAoB,IAIvCS,GAFoBi2E,EAAuBqnB,GAEpC/9F,EAAoB,IA4B3BymG,EAAO,WACT,QAASA,GAAK9iG,EAASs7C,EAAMynD,EAAWzY,EAAWv9E,GACjDmmE,EAAgB/2E,KAAM2mG,GAEtB3mG,KAAK6D,QAAUlD,EAAK0P,aAAaO,GACjC5Q,KAAK4Q,cAAgBA,EACrB5Q,KAAKm/C,KAAOA,EAEZn/C,KAAK46F,SAGL56F,KAAKK,GAAKkG,OACVvG,KAAK4mG,UAAYA,EACjB5mG,KAAKmuF,UAAYA,EAGjBnuF,KAAK49B,EAAIr3B,OACTvG,KAAKihB,EAAI1a,OACTvG,KAAK6mG,SAAW7mG,KAAK6D,QAAQo6B,KAC7Bj+B,KAAK8mG,aAAe9mG,KAAK6D,QAAQiuC,KAAK7T,KACtCj+B,KAAK+mG,oBAAqB,EAC1B/mG,KAAKsnE,UAAW,EAChBtnE,KAAKoO,OAAQ,EAEbpO,KAAKgnG,YAAc,GAAIlC,GAAc,WAAW9kG,KAAKm/C,KAAMn/C,KAAK6D,SAChE7D,KAAKg/B,WAAWn7B,GAqYlB,MA7XAszE,GAAawvB,IACXh9F,IAAK,aACL5E,MAAO,SAAoBo8F,GACQ,KAA7BnhG,KAAK46F,MAAMrzF,QAAQ45F,IACrBnhG,KAAK46F,MAAMpzF,KAAK25F,MASpBx3F,IAAK,aACL5E,MAAO,SAAoBo8F,GACzB,GAAI/3F,GAAQpJ,KAAK46F,MAAMrzF,QAAQ45F,EAClB,KAAT/3F,GACFpJ,KAAK46F,MAAMvxF,OAAOD,EAAO,MAU7BO,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAIojG,GAAejnG,KAAK6D,QAAQw/F,KAChC,IAAKx/F,EAAL,CAQA,GAJmB0C,SAAf1C,EAAQxD,KACVL,KAAKK,GAAKwD,EAAQxD,IAGJkG,SAAZvG,KAAKK,GACP,KAAM,sBA2BR,IAtBkBkG,SAAd1C,EAAQ+5B,IACQ,OAAd/5B,EAAQ+5B,GACV59B,KAAK49B,EAAIr3B,OAAUvG,KAAK+mG,oBAAqB,IAE7C/mG,KAAK49B,EAAIrxB,SAAS1I,EAAQ+5B,GAAG59B,KAAK+mG,oBAAqB,IAGzCxgG,SAAd1C,EAAQod,IACQ,OAAdpd,EAAQod,GACVjhB,KAAKihB,EAAI1a,OAAUvG,KAAK+mG,oBAAqB,IAE7C/mG,KAAKihB,EAAI1U,SAAS1I,EAAQod,GAAGjhB,KAAK+mG,oBAAqB,IAGtCxgG,SAAjB1C,EAAQo6B,OACVj+B,KAAK6mG,SAAWhjG,EAAQo6B,MAEJ13B,SAAlB1C,EAAQkB,QACVlB,EAAQkB,MAAQqlB,WAAWvmB,EAAQkB,QAIR,gBAAlBlB,GAAQo/C,OAA+C,gBAAlBp/C,GAAQo/C,OAAuC,IAAjBp/C,EAAQo/C,MAAa,CACjG,GAAIikD,GAAWlnG,KAAKmuF,UAAUn3D,IAAInzB,EAAQo/C,MAC1CtiD,GAAK0G,WAAWrH,KAAK6D,QAASqjG,GAE9BlnG,KAAK6D,QAAQ4I,MAAQ9L,EAAKwM,WAAWnN,KAAK6D,QAAQ4I,OAOpD,GAHAk6F,EAAKjD,aAAa1jG,KAAK6D,QAASA,GAAS,EAAM7D,KAAK4Q,eAGzBrK,SAAvBvG,KAAK6D,QAAQ++F,MAAqB,CACpC,IAAI5iG,KAAK4mG,UAGP,KAAM,uBAFN5mG,MAAKmnG,SAAWnnG,KAAK4mG,UAAUQ,KAAKpnG,KAAK6D,QAAQ++F,MAAO5iG,KAAK6D,QAAQ2+F,YAAaxiG,KAAKK,IAS3F,MAHAL,MAAK4jG,oBACL5jG,KAAK2jG,YAAYsD,GAEM1gG,SAAnB1C,EAAQk5D,QAA4Cx2D,SAApB1C,EAAQo4E,SACnC,GAEF,MAYTtyE,IAAK,oBACL5E,MAAO,YACsBwB,SAAvBvG,KAAK6D,QAAQq6B,OAA8C,OAAvBl+B,KAAK6D,QAAQq6B,SACnDl+B,KAAK6D,QAAQq6B,MAAQ,IAEvBl+B,KAAKgnG,YAAYhoE,WAAWh/B,KAAK6D,SAAS,GACR0C,SAA9BvG,KAAKgnG,YAAYH,WACnB7mG,KAAK8mG,aAAe9mG,KAAKgnG,YAAYH,aAIzCl9F,IAAK,cACL5E,MAAO,SAAqBkiG,GAC1B,GAAIA,IAAiBjnG,KAAK6D,QAAQw/F,OAASrjG,KAAKqjG,MAC9CrjG,KAAKqjG,MAAMrkE,WAAWh/B,KAAK6D,QAAS7D,KAAKmnG,cAGzC,QAAQnnG,KAAK6D,QAAQw/F,OACnB,IAAK,MACHrjG,KAAKqjG,MAAQ,GAAI2B,GAAiB,WAAWhlG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC3E,MACF,KAAK,SACHhnG,KAAKqjG,MAAQ,GAAI6B,GAAoB,WAAWllG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC9E,MACF,KAAK,gBACHhnG,KAAKqjG,MAAQ,GAAI+B,GAA2B,WAAWplG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAAahnG,KAAKmnG,SACvG,MACF,KAAK,WACHnnG,KAAKqjG,MAAQ,GAAIiC,GAAsB,WAAWtlG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAChF,MACF,KAAK,UACHhnG,KAAKqjG,MAAQ,GAAImC,GAAqB,WAAWxlG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC/E,MACF,KAAK,MACHhnG,KAAKqjG,MAAQ,GAAIqC,GAAiB,WAAW1lG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC3E,MACF,KAAK,UACHhnG,KAAKqjG,MAAQ,GAAIuC,GAAqB,WAAW5lG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC/E,MACF,KAAK,OACHhnG,KAAKqjG,MAAQ,GAAIyC,GAAkB,WAAW9lG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC5E,MACF,KAAK,QACHhnG,KAAKqjG,MAAQ,GAAI2C,GAAmB,WAAWhmG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAAahnG,KAAKmnG,SAC/F,MACF,KAAK,SACHnnG,KAAKqjG,MAAQ,GAAI6C,GAAoB,WAAWlmG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC9E,MACF,KAAK,OACHhnG,KAAKqjG,MAAQ,GAAI+C,GAAkB,WAAWpmG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC5E,MACF,KAAK,OACHhnG,KAAKqjG,MAAQ,GAAIiD,GAAkB,WAAWtmG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAC5E,MACF,KAAK,WACHhnG,KAAKqjG,MAAQ,GAAImD,GAAsB,WAAWxmG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YAChF,MACF,KAAK,eACHhnG,KAAKqjG,MAAQ,GAAIqD,GAA0B,WAAW1mG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,YACpF,MACF,SACEhnG,KAAKqjG,MAAQ,GAAIuC,GAAqB,WAAW5lG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,aAIrFhnG,KAAK6jG,YAOPl6F,IAAK,SACL5E,MAAO,WACL/E,KAAKsnE,UAAW,EAChBtnE,KAAK6jG,YAOPl6F,IAAK,WACL5E,MAAO,WACL/E,KAAKsnE,UAAW,EAChBtnE,KAAK6jG,YAQPl6F,IAAK,SACL5E,MAAO,WACL/E,KAAKqjG,MAAM7kE,MAAQj4B,OACnBvG,KAAKqjG,MAAM5kE,OAASl4B,UAStBoD,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQ48D,SAUtB92D,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKqjG,MAAMgE,iBAAiB/1D,EAAKmZ,MAQ1C9gD,IAAK,UACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQ4+F,MAAM7kE,GAAK59B,KAAK6D,QAAQ4+F,MAAMxhF,KAQpDtX,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKsnE,YAQd39D,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQkB,SAUtB4E,IAAK,gBACL5E,MAAO,SAAuBH,EAAKC,EAAKC,GACtC,GAA2ByB,SAAvBvG,KAAK6D,QAAQkB,MAAqB,CACpC,GAAIC,GAAQhF,KAAK6D,QAAQm/F,QAAQG,sBAAsBv+F,EAAKC,EAAKC,EAAO9E,KAAK6D,QAAQkB,OACjFuiG,EAAWtnG,KAAK6D,QAAQm/F,QAAQn+F,IAAM7E,KAAK6D,QAAQm/F,QAAQp+F,GAC/D,IAAI5E,KAAK6D,QAAQm/F,QAAQ9kE,MAAMrtB,WAAY,EAAM,CAC/C,GAAI02F,GAAWvnG,KAAK6D,QAAQm/F,QAAQ9kE,MAAMr5B,IAAM7E,KAAK6D,QAAQm/F,QAAQ9kE,MAAMt5B,GAC3E5E,MAAK6D,QAAQiuC,KAAK7T,KAAOj+B,KAAK6D,QAAQm/F,QAAQ9kE,MAAMt5B,IAAMI,EAAQuiG,EAEpEvnG,KAAK6D,QAAQo6B,KAAOj+B,KAAK6D,QAAQm/F,QAAQp+F,IAAMI,EAAQsiG,MAEvDtnG,MAAK6D,QAAQo6B,KAAOj+B,KAAK6mG,SACzB7mG,KAAK6D,QAAQiuC,KAAK7T,KAAOj+B,KAAK8mG,YAGhC9mG,MAAK4jG,uBASPj6F,IAAK,OACL5E,MAAO,SAAcusC,GACnBtxC,KAAKqjG,MAAMrnB,KAAK1qC,EAAKtxC,KAAK49B,EAAG59B,KAAKihB,EAAGjhB,KAAKsnE,SAAUtnE,KAAKoO,UAO3DzE,IAAK,oBACL5E,MAAO,SAA2BusC,GAChCtxC,KAAKqjG,MAAMmE,kBAAkBxnG,KAAK49B,EAAG59B,KAAKihB,EAAGqwB,MAS/C3nC,IAAK,SACL5E,MAAO,SAAgBusC,GACrBtxC,KAAKqjG,MAAMoE,OAAOn2D,EAAKtxC,KAAKsnE,aAS9B39D,IAAK,oBACL5E,MAAO,SAA2Be,GAChC,MAAO9F,MAAKqjG,MAAM16F,KAAO7C,EAAI8rC,OAAS5xC,KAAKqjG,MAAM16F,KAAO3I,KAAKqjG,MAAM7kE,MAAQ14B,EAAI6C,MAAQ3I,KAAKqjG,MAAMx6F,IAAM/C,EAAIuoC,QAAUruC,KAAKqjG,MAAMx6F,IAAM7I,KAAKqjG,MAAM5kE,OAAS34B,EAAI+C,OASjKc,IAAK,+BACL5E,MAAO,SAAsCe,GAC3C,MAAO9F,MAAKqjG,MAAMkB,YAAY57F,KAAO7C,EAAI8rC,OAAS5xC,KAAKqjG,MAAMkB,YAAY3yD,MAAQ9rC,EAAI6C,MAAQ3I,KAAKqjG,MAAMkB,YAAY17F,IAAM/C,EAAIuoC,QAAUruC,KAAKqjG,MAAMkB,YAAYl2D,OAASvoC,EAAI+C,SAG9Kc,IAAK,eACL5E,MAAO,SAAsB2iG,EAAeC,GAC1C,GAAIvhG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxFuK,EAAgBvK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF4J,GAAU,QAAS,OAAQ,QAAS,SAOxC,IANAtP,EAAK2G,uBAAuB2I,EAAQy3F,EAAeC,EAAYvhG,GAG/DzF,EAAK+P,aAAag3F,EAAeC,EAAY,SAAUvhG,EAAewK,GAG7CrK,SAArBohG,EAAWl7F,OAA4C,OAArBk7F,EAAWl7F,MAAgB,CAC/D,GAAIm7F,GAAcjnG,EAAKwM,WAAWw6F,EAAWl7F,MAC7C9L,GAAKsF,cAAcyhG,EAAcj7F,MAAOm7F,OAC/BxhG,MAAkB,GAA6B,OAArBuhG,EAAWl7F,QAC9Ci7F,EAAcj7F,MAAQ9L,EAAK0P,aAAaO,EAAcnE,OAI/BlG,UAArBohG,EAAWlF,OAA4C,OAArBkF,EAAWlF,QACf,iBAArBkF,GAAWlF,OACpBiF,EAAcjF,MAAM7kE,EAAI+pE,EAAWlF,MACnCiF,EAAcjF,MAAMxhF,EAAI0mF,EAAWlF,QAERl8F,SAAvBohG,EAAWlF,MAAM7kE,GAAiD,iBAAvB+pE,GAAWlF,MAAM7kE,IAC9D8pE,EAAcjF,MAAM7kE,EAAI+pE,EAAWlF,MAAM7kE,GAEhBr3B,SAAvBohG,EAAWlF,MAAMxhF,GAAiD,iBAAvB0mF,GAAWlF,MAAMxhF,IAC9DymF,EAAcjF,MAAMxhF,EAAI0mF,EAAWlF,MAAMxhF,KAMvB1a,SAApBohG,EAAW71D,MAA0C,OAApB61D,EAAW71D,KAC9CgzD,EAAc,WAAWpB,aAAagE,EAAc51D,KAAM61D,GACjDvhG,KAAkB,GAA4B,OAApBuhG,EAAW71D,OAC9C41D,EAAc51D,KAAOnxC,EAAK0P,aAAaO,EAAckhC,OAI5BvrC,SAAvBohG,EAAW3E,SACbriG,EAAK+P,aAAag3F,EAAc1E,QAAS2E,EAAW3E,QAAS,QAAS58F,EAAewK,EAAcoyF,aAKlG2D,IAGT/mG,GAAQ,WAAa+mG,EACrB9mG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI8iG,GAAiB,WAAe,QAASC,GAAc1/F,EAAK3B,GAAK,GAAIshG,MAAeC,GAAK,EAAUtzF,GAAK,EAAWuzF,EAAK1hG,MAAW,KAAM,IAAK,GAAiC2hG,GAA7B3yF,EAAKnN,EAAI+/F,OAAOriD,cAAmBkiD,GAAME,EAAK3yF,EAAG+B,QAAQuiD,QAAoBkuC,EAAKvgG,KAAK0gG,EAAGnjG,QAAY0B,GAAKshG,EAAKzhG,SAAWG,GAA3DuhG,GAAK,IAAoE,MAAO9tB,GAAOxlE,GAAK,EAAMuzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAMzyF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMuzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU3/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAI+/F,OAAOriD,WAAY1+C,QAAOgB,GAAQ,MAAO0/F,GAAc1/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBiwE,EAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBt2E,EAAOT,EAAoB,GAE3BkoG,EAAQ,WACV,QAASA,GAAMjpD,EAAMt7C,GACnBkzE,EAAgB/2E,KAAMooG,GAEtBpoG,KAAKm/C,KAAOA,EAEZn/C,KAAKqoG,aAAc,EACnBroG,KAAK6mG,SAAWtgG,OAChBvG,KAAKsoG,eACLtoG,KAAKg/B,WAAWn7B,GAChB7D,KAAKi+B,MAASp1B,IAAK,EAAGF,KAAM,EAAG61B,MAAO,EAAGC,OAAQ,EAAG8pE,MAAO,GA+R7D,MA5RApxB,GAAaixB,IACXz+F,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAIuC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5FrG,MAAKwoG,YAAc3kG,EAInB7D,KAAKsoG,YAAc3nG,EAAK0G,cAAexD,EAAQiuC,MAAM,GAE/BvrC,SAAlB1C,EAAQq6B,QACVl+B,KAAKyoG,YAAa,GAGCliG,SAAjB1C,EAAQiuC,OACVs2D,EAAM1E,aAAa1jG,KAAKsoG,YAAazkG,EAASuC,GAClB,gBAAjBvC,GAAQiuC,KACjB9xC,KAAK6mG,SAAW7mG,KAAKsoG,YAAYrqE,KACA,gBAAjBp6B,GAAQiuC,MACEvrC,SAAtB1C,EAAQiuC,KAAK7T,OACfj+B,KAAK6mG,SAAWhjG,EAAQiuC,KAAK7T,UAMrCt0B,IAAK,OAUL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,GAC9B,GAAIohC,GAAWriG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,EAG1F,IAA+BE,SAA3BvG,KAAKwoG,YAAYtqE,MAArB,CAGA,GAAIyqE,GAAe3oG,KAAKsoG,YAAYrqE,KAAOj+B,KAAKm/C,KAAKw8C,KAAK32F,KACtDhF,MAAKwoG,YAAYtqE,OAASyqE,EAAe3oG,KAAKwoG,YAAYxF,QAAQ9kE,MAAMglE,cAAgB,IAG5FljG,KAAK4oG,mBAAmBt3D,EAAKg2B,EAAU1pC,EAAG3c,EAAGynF,GAG7C1oG,KAAK6oG,gBAAgBv3D,GAErBtxC,KAAK8oG,UAAUx3D,EAAKg2B,EAAU1pC,EAAG3c,EAAGynF,QAStC/+F,IAAK,kBACL5E,MAAO,SAAyBusC,GAC9B,GAAoC/qC,SAAhCvG,KAAKsoG,YAAYr6F,YAA4D,SAAhCjO,KAAKsoG,YAAYr6F,WAAuB,CACvFqjC,EAAIiB,UAAYvyC,KAAKsoG,YAAYr6F,UAEjC,IAAI86F,GAAa,CAEjB,QAAQ/oG,KAAKsoG,YAAY7lC,OACvB,IAAK,SACHnxB,EAAI43C,SAA4B,IAAlBlpF,KAAKi+B,KAAKO,MAAiC,IAAnBx+B,KAAKi+B,KAAKQ,OAAcz+B,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,OACzF,MACF,KAAK,MACH6S,EAAI43C,SAA4B,IAAlBlpF,KAAKi+B,KAAKO,QAAex+B,KAAKi+B,KAAKQ,OAASsqE,GAAa/oG,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,OAClG,MACF,KAAK,SACH6S,EAAI43C,SAA4B,IAAlBlpF,KAAKi+B,KAAKO,MAAauqE,EAAY/oG,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,OAC5E,MACF,SACE6S,EAAI43C,SAASlpF,KAAKi+B,KAAKt1B,KAAM3I,KAAKi+B,KAAKp1B,IAAM,GAAMkgG,EAAY/oG,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,aAclG90B,IAAK,YACL5E,MAAO,SAAmBusC,EAAKg2B,EAAU1pC,EAAG3c,GAC1C,GAAIynF,GAAWriG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,GAEtF2iG,EAAWhpG,KAAKsoG,YAAYrqE,KAC5B0qE,EAAeK,EAAWhpG,KAAKm/C,KAAKw8C,KAAK32F,KAEzC2jG,IAAgB3oG,KAAKwoG,YAAYxF,QAAQ9kE,MAAM+kE,aACjD+F,EAAW3kG,OAAOrE,KAAKwoG,YAAYxF,QAAQ9kE,MAAM+kE,YAAcjjG,KAAKm/C,KAAKw8C,KAAK32F,MAGhF,IAAIujG,GAAQvoG,KAAKi+B,KAAKsqE,MAElBU,EAAajpG,KAAKkpG,UAAUP,GAE5BQ,EAActB,EAAeoB,EAAY,GAEzCG,EAAYD,EAAY,GACxBxG,EAAcwG,EAAY,GAI1BE,EAAiBrpG,KAAKspG,cAAch4D,EAAK1T,EAAG2qE,EAAOG,GAEnDa,EAAkB1B,EAAewB,EAAgB,EAErDzrE,GAAI2rE,EAAgB,GACpBhB,EAAQgB,EAAgB,GACxBj4D,EAAIQ,MAAQw1B,GAAYtnE,KAAKwoG,YAAY3F,mBAAqB,QAAU,IAAMmG,EAAW,MAAQhpG,KAAKsoG,YAAY5F,KAClHpxD,EAAIiB,UAAY62D,EAChB93D,EAAIwB,UAAY,SAGZ9yC,KAAKsoG,YAAY3gE,YAAc,IACjC2J,EAAIO,UAAY7xC,KAAKsoG,YAAY3gE,YACjC2J,EAAIY,YAAcywD,EAClBrxD,EAAI4D,SAAW,QAIjB,KAAK,GAAIzuC,GAAI,EAAGA,EAAIzG,KAAKwpG,UAAW/iG,IAC9BzG,KAAKsoG,YAAY3gE,YAAc,GACjC2J,EAAIm4D,WAAWzpG,KAAKkyE,MAAMzrE,GAAIm3B,EAAG2qE,GAEnCj3D,EAAI0B,SAAShzC,KAAKkyE,MAAMzrE,GAAIm3B,EAAG2qE,GAC/BA,GAASS,KAIbr/F,IAAK,gBACL5E,MAAO,SAAuBusC,EAAK1T,EAAG2qE,EAAOG,GAG3C,GAA+B,eAA3B1oG,KAAKsoG,YAAY7lC,OAA0BziE,KAAKqoG,eAAgB,EAAO,CACzEzqE,EAAI,EACJ2qE,EAAQ,CAER,IAAIQ,GAAa,CACc,SAA3B/oG,KAAKsoG,YAAY7lC,OACnBnxB,EAAIyB,aAAe,aACnBw1D,GAAS,EAAIQ,GACuB,WAA3B/oG,KAAKsoG,YAAY7lC,OACxBnxB,EAAIyB,aAAe,UACnBw1D,GAAS,EAAIQ,GAEXz3D,EAAIyB,aAAe,aAGzBzB,GAAIyB,aAAe21D,CAGrB,QAAQ9qE,EAAG2qE,MAYb5+F,IAAK,YACL5E,MAAO,SAAmB4jG,GACxB,GAAIS,GAAYppG,KAAKsoG,YAAY77F,OAAS,UACtCk2F,EAAc3iG,KAAKsoG,YAAY3F,aAAe,SAClD,IAAIgG,GAAgB3oG,KAAKwoG,YAAYxF,QAAQ9kE,MAAMglE,cAAe,CAChE,GAAIx2F,GAAUzH,KAAKJ,IAAI,EAAGI,KAAKL,IAAI,EAAG,GAAK5E,KAAKwoG,YAAYxF,QAAQ9kE,MAAMglE,cAAgByF,IAC1FS,GAAYzoG,EAAK6L,gBAAgB48F,EAAW18F,GAC5Ci2F,EAAchiG,EAAK6L,gBAAgBm2F,EAAaj2F,GAElD,OAAQ08F,EAAWzG,MAUrBh5F,IAAK,cACL5E,MAAO,SAAqBusC,GAC1B,GAAIg2B,GAAWjhE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEnF43B,GACFO,MAAOx+B,KAAK0pG,cAAcp4D,EAAKg2B,GAC/B7oC,OAAQz+B,KAAKsoG,YAAYrqE,KAAOj+B,KAAKwpG,UACrCA,UAAWxpG,KAAKwpG,UAElB,OAAOvrE,MAYTt0B,IAAK,qBACL5E,MAAO,SAA4BusC,EAAKg2B,GACtC,GAAI1pC,GAAIv3B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,GACxE4a,EAAI5a,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,GACxEqiG,EAAWriG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,EAEtFrG,MAAKyoG,cAAe,IACtBzoG,KAAKi+B,KAAKO,MAAQx+B,KAAK0pG,cAAcp4D,EAAKg2B,IAE5CtnE,KAAKi+B,KAAKQ,OAASz+B,KAAKsoG,YAAYrqE,KAAOj+B,KAAKwpG,UAChDxpG,KAAKi+B,KAAKt1B,KAAOi1B,EAAsB,GAAlB59B,KAAKi+B,KAAKO,MAC/Bx+B,KAAKi+B,KAAKp1B,IAAMoY,EAAuB,GAAnBjhB,KAAKi+B,KAAKQ,OAC9Bz+B,KAAKi+B,KAAKsqE,MAAQtnF,EAA2B,IAAtB,EAAIjhB,KAAKwpG,WAAmBxpG,KAAKsoG,YAAYrqE,KACnD,YAAbyqE,IACF1oG,KAAKi+B,KAAKp1B,KAAO,GAAM7I,KAAKsoG,YAAYrqE,KACxCj+B,KAAKi+B,KAAKp1B,KAAO,EACjB7I,KAAKi+B,KAAKsqE,OAAS,GAGrBvoG,KAAKyoG,YAAa,KAWpB9+F,IAAK,gBACL5E,MAAO,SAAuBusC,EAAKg2B,GACjC,GAAI9oC,GAAQ,EACR0zC,GAAS,IACTs3B,EAAY,CAChB,IAA+BjjG,SAA3BvG,KAAKwoG,YAAYtqE,MAAqB,CACxCg0C,EAAQ/sE,OAAOnF,KAAKwoG,YAAYtqE,OAAOj1B,MAAM,MAC7CugG,EAAYt3B,EAAM5rE,OAClBgrC,EAAIQ,MAAQw1B,GAAYtnE,KAAKwoG,YAAY3F,mBAAqB,QAAU,IAAM7iG,KAAKsoG,YAAYrqE,KAAO,MAAQj+B,KAAKsoG,YAAY5F,KAC/HlkE,EAAQ8S,EAAIq4D,YAAYz3B,EAAM,IAAI1zC,KAClC,KAAK,GAAI/3B,GAAI,EAAO+iG,EAAJ/iG,EAAeA,IAAK,CAClC,GAAIorC,GAAYP,EAAIq4D,YAAYz3B,EAAMzrE,IAAI+3B,KAC1CA,GAAQqT,EAAYrT,EAAQqT,EAAYrT,GAM5C,MAHAx+B,MAAKkyE,MAAQA,EACblyE,KAAKwpG,UAAYA,EAEVhrE,OAGT70B,IAAK,eACL5E,MAAO,SAAsB2iG,EAAeC,GAC1C,GAAIvhG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5F,IAA+B,gBAApBshG,GAAW71D,KAAmB,CACvC,GAAI83D,GAAkBjC,EAAW71D,KAAK7oC,MAAM,IAC5Cy+F,GAAczpE,KAAO2rE,EAAgB,GAAGz9F,QAAQ,KAAM,IACtDu7F,EAAchF,KAAOkH,EAAgB,GACrClC,EAAcj7F,MAAQm9F,EAAgB,OACF,gBAApBjC,GAAW71D,MAC3BnxC,EAAKsF,cAAcyhG,EAAeC,EAAW71D,KAAM1rC,EAErDshG,GAAczpE,KAAO55B,OAAOqjG,EAAczpE,UAIvCmqE,IAGTxoG,GAAQ,WAAawoG,EACrBvoG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcokG,EAAgBzqG,EAAoB,IAEpC0qG,EAAiBh0B,EAAuB+zB,GAExCE,EAAM,SAAWC,GAGnB,QAASD,GAAIhnG,EAASs7C,EAAM6nD,GAC1BjwB,EAAgB/2E,KAAM6qG,GAEtBX,EAAK9iG,OAAOsjG,eAAeG,EAAI53F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GA+E5F,MApFA6C,GAAUgB,EAAKC,GAQf3zB,EAAa0zB,IACXlhG,IAAK,SACL5E,MAAO,SAAgBusC,EAAKg2B,GAC1B,GAAmB/gE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTwmE,EAAW/qG,KAAKgnG,YAAYgE,YAAY15D,EAAKg2B,EACjDtnE,MAAKw+B,MAAQusE,EAASvsE,MAAQ,EAAI+F,EAClCvkC,KAAKy+B,OAASssE,EAAStsE,OAAS,EAAI8F,EACpCvkC,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAKynG,OAAOn2D,EAAKg2B,GACjBtnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIqM,GAAc9qC,KAAK6D,QAAQinC,YAC3BmgE,EAAqBjrG,KAAK6D,QAAQ0+F,qBAAuB,EAAIviG,KAAK6D,QAAQinC,WAE9EwG,GAAIY,YAAco1B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAChIojC,EAAIO,UAAYy1B,EAAW2jC,EAAqBngE,EAChDwG,EAAIO,WAAa7xC,KAAKm/C,KAAKw8C,KAAK32F,MAChCssC,EAAIO,UAAY5sC,KAAKL,IAAI5E,KAAKw+B,MAAO8S,EAAIO,WAEzCP,EAAIiB,UAAY+0B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,UAEtI,IAAI2rC,GAAe55C,KAAK6D,QAAQy/F,gBAAgB1pD,YAChDtI,GAAI45D,UAAUlrG,KAAK2I,KAAM3I,KAAK6I,IAAK7I,KAAKw+B,MAAOx+B,KAAKy+B,OAAQmb,GAG5D55C,KAAKmrG,aAAa75D,GAElBA,EAAI7J,OAEJznC,KAAKorG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB9qC,KAAKsrG,mBAAmBh6D,GAExBA,EAAI5J,SAEJ1nC,KAAKurG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEJxrG,KAAKwnG,kBAAkB5pE,EAAG3c,EAAGqwB,EAAKg2B,GAClCtnE,KAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG3c,EAAGqmD,MAGnC39D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGqwB,EAAKg2B,GAC3CtnE,KAAKynG,OAAOn2D,EAAKg2B,GACjBtnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,MAEpB,IAAImb,GAAe55C,KAAK6D,QAAQy/F,gBAAgB1pD,YAChD55C,MAAKukG,YAAY57F,KAAO3I,KAAK2I,KAAOixC,EACpC55C,KAAKukG,YAAY17F,IAAM7I,KAAK6I,IAAM+wC,EAClC55C,KAAKukG,YAAYl2D,OAASruC,KAAK6I,IAAM7I,KAAKy+B,OAASmb,EACnD55C,KAAKukG,YAAY3yD,MAAQ5xC,KAAK2I,KAAO3I,KAAKw+B,MAAQob,KAGpDjwC,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpCzqD,KAAKynG,OAAOn2D,EACZ,IAAIxG,GAAc9qC,KAAK6D,QAAQinC,WAE/B,OAAO7lC,MAAKL,IAAIK,KAAK8R,IAAI/W,KAAKw+B,MAAQ,EAAIv5B,KAAKukC,IAAIihB,IAASxlD,KAAK8R,IAAI/W,KAAKy+B,OAAS,EAAIx5B,KAAKokC,IAAIohB,KAAW3f,MAIxG+/D,GACND,EAAe,WAElBhrG,GAAQ,WAAairG,EACrBhrG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBw0B,EAAW,WACb,QAASA,GAAS5nG,EAASs7C,EAAM6nD,GAC/BjwB,EAAgB/2E,KAAMyrG,GAEtBzrG,KAAKm/C,KAAOA,EACZn/C,KAAKgnG,YAAcA,EACnBhnG,KAAKg/B,WAAWn7B,GAChB7D,KAAK6I,IAAMtC,OACXvG,KAAK2I,KAAOpC,OACZvG,KAAKy+B,OAASl4B,OACdvG,KAAKw+B,MAAQj4B,OACbvG,KAAK41C,OAASrvC,OACdvG,KAAKukG,aAAgB17F,IAAK,EAAGF,KAAM,EAAGipC,MAAO,EAAGvD,OAAQ,GAiE1D,MA9DA8oC,GAAas0B,IACX9hG,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAGjB8F,IAAK,oBACL5E,MAAO,SAA2BusC,EAAKmZ,GACrC,GAAI3f,GAAc9qC,KAAK6D,QAAQinC,WAE/B,OADA9qC,MAAKynG,OAAOn2D,GACLrsC,KAAKL,IAAIK,KAAK8R,IAAI/W,KAAKw+B,MAAQ,EAAIv5B,KAAKukC,IAAIihB,IAASxlD,KAAK8R,IAAI/W,KAAKy+B,OAAS,EAAIx5B,KAAKokC,IAAIohB,KAAW3f,KAG7GnhC,IAAK,eACL5E,MAAO,SAAsBusC,GACvBtxC,KAAK6D,QAAQu/F,OAAOvyF,WAAY,IAClCygC,EAAIo6D,YAAc1rG,KAAK6D,QAAQu/F,OAAO32F,MACtC6kC,EAAIq6D,WAAa3rG,KAAK6D,QAAQu/F,OAAOnlE,KACrCqT,EAAIs6D,cAAgB5rG,KAAK6D,QAAQu/F,OAAOxlE,EACxC0T,EAAIu6D,cAAgB7rG,KAAK6D,QAAQu/F,OAAOniF,MAI5CtX,IAAK,gBACL5E,MAAO,SAAuBusC,GACxBtxC,KAAK6D,QAAQu/F,OAAOvyF,WAAY,IAClCygC,EAAIo6D,YAAc,gBAClBp6D,EAAIq6D,WAAa,EACjBr6D,EAAIs6D,cAAgB,EACpBt6D,EAAIu6D,cAAgB,MAIxBliG,IAAK,qBACL5E,MAAO,SAA4BusC,GACjC,GAAItxC,KAAK6D,QAAQy/F,gBAAgBC,gBAAiB,EAChD,GAAwBh9F,SAApB+qC,EAAIw6D,YAA2B,CACjC,GAAIC,GAAS/rG,KAAK6D,QAAQy/F,gBAAgBC,YACtCwI,MAAW,IACbA,GAAU,EAAG,KAEfz6D,EAAIw6D,YAAYC,OAEhBpsF,SAAQH,KAAK,oFACbxf,KAAK6D,QAAQy/F,gBAAgBC,cAAe,KAKlD55F,IAAK,sBACL5E,MAAO,SAA6BusC,GAC9BtxC,KAAK6D,QAAQy/F,gBAAgBC,gBAAiB,IACxBh9F,SAApB+qC,EAAIw6D,YACNx6D,EAAIw6D,aAAa,KAEjBnsF,QAAQH,KAAK,oFACbxf,KAAK6D,QAAQy/F,gBAAgBC,cAAe,QAM7CkI,IAGT7rG,GAAQ,WAAa6rG,EACrB5rG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcylG,EAAuB9rG,EAAoB,IAE3C+rG,EAAwBr1B,EAAuBo1B,GAE/CE,EAAS,SAAWC,GAGtB,QAASD,GAAOroG,EAASs7C,EAAM6nD,GAC7BjwB,EAAgB/2E,KAAMksG,GAEtBhC,EAAK9iG,OAAOsjG,eAAewB,EAAOj5F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAkD/F,MAvDA6C,GAAUqC,EAAQC,GAQlBh1B,EAAa+0B,IACXviG,IAAK,SACL5E,MAAO,SAAgBusC,EAAKg2B,GAC1B,GAAmB/gE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTwmE,EAAW/qG,KAAKgnG,YAAYgE,YAAY15D,EAAKg2B,GAC7C8kC,EAAWnnG,KAAKJ,IAAIkmG,EAASvsE,MAAOusE,EAAStsE,QAAU,EAAI8F,CAC/DvkC,MAAK6D,QAAQo6B,KAAOmuE,EAAW,EAE/BpsG,KAAKw+B,MAAQ4tE,EACbpsG,KAAKy+B,OAAS2tE,EACdpsG,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAKynG,OAAOn2D,EAAKg2B,GACjBtnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAE7Bz+B,KAAKqsG,eAAe/6D,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,EAAOpO,KAAK6D,QAAQo6B,MAE7Dj+B,KAAKukG,YAAY17F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKukG,YAAY57F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKukG,YAAY3yD,MAAQhU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKukG,YAAYl2D,OAASptB,EAAIjhB,KAAK6D,QAAQo6B,KAE3Cj+B,KAAKwnG,kBAAkB5pE,EAAG3c,GAC1BjhB,KAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG3c,EAAGqmD,MAGnC39D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAKukG,YAAY17F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKukG,YAAY57F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKukG,YAAY3yD,MAAQhU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKukG,YAAYl2D,OAASptB,EAAIjhB,KAAK6D,QAAQo6B,QAG7Ct0B,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GAEpC,MADAzqD,MAAKynG,OAAOn2D,GACQ,GAAbtxC,KAAKw+B,UAIT0tE,GACND,EAAsB,WAEzBrsG,GAAQ,WAAassG,EACrBrsG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcokG,EAAgBzqG,EAAoB,IAEpC0qG,EAAiBh0B,EAAuB+zB,GAExC2B,EAAkB,SAAWxB,GAG/B,QAASwB,GAAgBzoG,EAASs7C,EAAM6nD,GACtCjwB,EAAgB/2E,KAAMssG,GAEtBpC,EAAK9iG,OAAOsjG,eAAe4B,EAAgBr5F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GACtGhnG,KAAKusG,YAAc,EACnBvsG,KAAKwsG,aAAc,EAsIrB,MA7IA3C,GAAUyC,EAAiBxB,GAU3B3zB,EAAam1B,IACX3iG,IAAK,aACL5E,MAAO,SAAoBlB,EAASsjG,GAClCnnG,KAAK6D,QAAUA,EACXsjG,IACFnnG,KAAKmnG,SAAWA,MAWpBx9F,IAAK,eACL5E,MAAO,WACL,GAAIuyD,IAAQ,CASZ,IARKt3D,KAAKmnG,SAAS3oE,OAAUx+B,KAAKmnG,SAAS1oE,OAGhCz+B,KAAKwsG,eAAgB,IAC9BxsG,KAAKwsG,aAAc,EACnBl1C,GAAQ,GAHRt3D,KAAKwsG,aAAc,GAMhBxsG,KAAKw+B,QAAUx+B,KAAKy+B,QAAU64B,KAAU,EAAM,CAEjD,GAAI94B,GAAOC,EAAQguE,CACfzsG,MAAKmnG,SAAS3oE,OAASx+B,KAAKmnG,SAAS1oE,SAEvCD,EAAQ,EACRC,EAAS,GAEPz+B,KAAK6D,QAAQy/F,gBAAgBE,gBAAiB,EAC5CxjG,KAAKmnG,SAAS3oE,MAAQx+B,KAAKmnG,SAAS1oE,QACtCguE,EAAQzsG,KAAKmnG,SAAS3oE,MAAQx+B,KAAKmnG,SAAS1oE,OAC5CD,EAA4B,EAApBx+B,KAAK6D,QAAQo6B,KAAWwuE,GAASzsG,KAAKmnG,SAAS3oE,MACvDC,EAA6B,EAApBz+B,KAAK6D,QAAQo6B,MAAYj+B,KAAKmnG,SAAS1oE,SAI9CguE,EAFEzsG,KAAKmnG,SAAS3oE,OAASx+B,KAAKmnG,SAAS1oE,OAE/Bz+B,KAAKmnG,SAAS1oE,OAASz+B,KAAKmnG,SAAS3oE,MAErC,EAEVA,EAA4B,EAApBx+B,KAAK6D,QAAQo6B,KACrBQ,EAA6B,EAApBz+B,KAAK6D,QAAQo6B,KAAWwuE,IAInCjuE,EAAQx+B,KAAKmnG,SAAS3oE,MACtBC,EAASz+B,KAAKmnG,SAAS1oE,QAEzBz+B,KAAKw+B,MAAQA,EACbx+B,KAAKy+B,OAASA,EACdz+B,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,iBACL5E,MAAO,SAAwBusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,EAAO6vB,GACzD,GAAIyuE,GAAqB1sG,KAAK6D,QAAQinC,YAClCmgE,EAAqBjrG,KAAK6D,QAAQ0+F,qBAAuB,EAAIviG,KAAK6D,QAAQinC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB1sG,KAAKm/C,KAAKw8C,KAAK32F,KACxFssC,GAAIO,UAAY5sC,KAAKL,IAAI5E,KAAKw+B,MAAOsM,GAErCwG,EAAIY,YAAco1B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAChIojC,EAAIiB,UAAY+0B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIqjC,EAAIm2C,OAAO7pD,EAAG3c,EAAGgd,GAGjBj+B,KAAKmrG,aAAa75D,GAElBA,EAAI7J,OAEJznC,KAAKorG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB9qC,KAAKsrG,mBAAmBh6D,GAExBA,EAAI5J,SAEJ1nC,KAAKurG,oBAAoBj6D,IAE3BA,EAAIk6D,aAGN7hG,IAAK,uBACL5E,MAAO,SAA8BusC,GACR,GAAvBtxC,KAAKmnG,SAAS3oE,QAEhB8S,EAAIq7D,YAAc,EAGlB3sG,KAAKmrG,aAAa75D,GAGlBA,EAAIs7D,UAAU5sG,KAAKmnG,SAAUnnG,KAAK2I,KAAM3I,KAAK6I,IAAK7I,KAAKw+B,MAAOx+B,KAAKy+B,QAGnEz+B,KAAKorG,cAAc95D,OAIvB3nC,IAAK,kBACL5E,MAAO,SAAyBusC,EAAK1T,EAAG3c,EAAGqmD,GACzC,GAAI3iC,GACAnd,EAAS,CAEb,IAAoBjhB,SAAhBvG,KAAKy+B,OAAsB,CAC7BjX,EAAuB,GAAdxnB,KAAKy+B,MACd,IAAIouE,GAAkB7sG,KAAKgnG,YAAYgE,YAAY15D,EAC/Cu7D,GAAgBrD,WAAa,IAC/BhiF,GAAUqlF,EAAgBpuE,OAAS,GAIvCkG,EAAS1jB,EAAIuG,EAETxnB,KAAK6D,QAAQq6B,QACfl+B,KAAKusG,YAAc/kF,GAErBxnB,KAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG+G,EAAQ2iC,EAAU,eAI7CglC,GACN1B,EAAe,WAElBhrG,GAAQ,WAAa0sG,EACrBzsG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF;GAQxcylG,EAAuB9rG,EAAoB,IAE3C+rG,EAAwBr1B,EAAuBo1B,GAE/Cc,EAAgB,SAAWX,GAG7B,QAASW,GAAcjpG,EAASs7C,EAAM6nD,EAAaG,GACjDpwB,EAAgB/2E,KAAM8sG,GAEtB5C,EAAK9iG,OAAOsjG,eAAeoC,EAAc75F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GACpGhnG,KAAKmnG,SAAWA,EAChBnnG,KAAK+sG,mCAAoC,EAoE3C,MA3EAlD,GAAUiD,EAAeX,GAUzBh1B,EAAa21B,IACXnjG,IAAK,SACL5E,MAAO,WACL,GAA0BwB,SAAtBvG,KAAKmnG,SAAShgD,KAA6C5gD,SAAxBvG,KAAKmnG,SAAS3oE,OAAgDj4B,SAAzBvG,KAAKmnG,SAAS1oE,QACxF,IAAKz+B,KAAKw+B,MAAO,CACf,GAAI4tE,GAA+B,EAApBpsG,KAAK6D,QAAQo6B,IAC5Bj+B,MAAKw+B,MAAQ4tE,EACbpsG,KAAKy+B,OAAS2tE,EACdpsG,KAAK+sG,mCAAoC,EACzC/sG,KAAK41C,OAAS,GAAM51C,KAAKw+B,WAGvBx+B,MAAK+sG,oCACP/sG,KAAKw+B,MAAQj4B,OACbvG,KAAKy+B,OAASl4B,OACdvG,KAAK+sG,mCAAoC,GAE3C/sG,KAAKgtG,kBAITrjG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAKynG,SAELznG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIR,GAAOh5B,KAAKL,IAAI,GAAM5E,KAAKy+B,OAAQ,GAAMz+B,KAAKw+B,MAGlDx+B,MAAKqsG,eAAe/6D,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,EAAO6vB,GAGhDqT,EAAI+5D,OAEJ/5D,EAAI27D,OAEJjtG,KAAKktG,qBAAqB57D,GAE1BA,EAAIk6D,UAEJxrG,KAAKmtG,gBAAgB77D,EAAK1T,EAAG3c,EAAGqmD,GAEhCtnE,KAAKwnG,kBAAkB5pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAKukG,YAAY17F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKukG,YAAY57F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKukG,YAAY3yD,MAAQhU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKukG,YAAYl2D,OAASptB,EAAIjhB,KAAK6D,QAAQo6B,KAC3Cj+B,KAAKukG,YAAY57F,KAAO1D,KAAKL,IAAI5E,KAAKukG,YAAY57F,KAAM3I,KAAKgnG,YAAY/oE,KAAKt1B,MAC9E3I,KAAKukG,YAAY3yD,MAAQ3sC,KAAKJ,IAAI7E,KAAKukG,YAAY3yD,MAAO5xC,KAAKgnG,YAAY/oE,KAAKt1B,KAAO3I,KAAKgnG,YAAY/oE,KAAKO,OAC7Gx+B,KAAKukG,YAAYl2D,OAASppC,KAAKJ,IAAI7E,KAAKukG,YAAYl2D,OAAQruC,KAAKukG,YAAYl2D,OAASruC,KAAKusG,gBAG7F5iG,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GAEpC,MADAzqD,MAAKynG,OAAOn2D,GACQ,GAAbtxC,KAAKw+B,UAITsuE,GACNb,EAAsB,WAEzBrsG,GAAQ,WAAaktG,EACrBjtG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcokG,EAAgBzqG,EAAoB,IAEpC0qG,EAAiBh0B,EAAuB+zB,GAExCyC,EAAW,SAAWtC,GAGxB,QAASsC,GAASvpG,EAASs7C,EAAM6nD,GAC/BjwB,EAAgB/2E,KAAMotG,GAEtBlD,EAAK9iG,OAAOsjG,eAAe0C,EAASn6F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GA0EjG,MA/EA6C,GAAUuD,EAAUtC,GAQpB3zB,EAAai2B,IACXzjG,IAAK,SACL5E,MAAO,SAAgBusC,EAAKg2B,GAC1B,GAAmB/gE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTwmE,EAAW/qG,KAAKgnG,YAAYgE,YAAY15D,EAAKg2B,GAC7CrpC,EAAO8sE,EAASvsE,MAAQ,EAAI+F,CAChCvkC,MAAKw+B,MAAQP,EACbj+B,KAAKy+B,OAASR,EACdj+B,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAKynG,OAAOn2D,EAAKg2B,GACjBtnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIiuE,GAAqB1sG,KAAK6D,QAAQinC,YAClCmgE,EAAqBjrG,KAAK6D,QAAQ0+F,qBAAuB,EAAIviG,KAAK6D,QAAQinC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB1sG,KAAKm/C,KAAKw8C,KAAK32F,KACxFssC,GAAIO,UAAY5sC,KAAKL,IAAI5E,KAAKw+B,MAAOsM,GAErCwG,EAAIY,YAAco1B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAEhIojC,EAAIiB,UAAY+0B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIqjC,EAAI+7D,SAASzvE,EAAI59B,KAAKw+B,MAAQ,EAAGvd,EAAkB,GAAdjhB,KAAKy+B,OAAcz+B,KAAKw+B,MAAOx+B,KAAKy+B,QAGzEz+B,KAAKmrG,aAAa75D,GAElBA,EAAI7J,OAEJznC,KAAKorG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB9qC,KAAKsrG,mBAAmBh6D,GAExBA,EAAI5J,SAEJ1nC,KAAKurG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEJxrG,KAAKwnG,kBAAkB5pE,EAAG3c,EAAGqwB,EAAKg2B,GAClCtnE,KAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG3c,EAAGqmD,MAGnC39D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGqwB,EAAKg2B,GAC3CtnE,KAAKynG,OAAOn2D,EAAKg2B,GAEjBtnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,OAEpBz+B,KAAKukG,YAAY57F,KAAO3I,KAAK2I,KAC7B3I,KAAKukG,YAAY17F,IAAM7I,KAAK6I,IAC5B7I,KAAKukG,YAAYl2D,OAASruC,KAAK6I,IAAM7I,KAAKy+B,OAC1Cz+B,KAAKukG,YAAY3yD,MAAQ5xC,KAAK2I,KAAO3I,KAAKw+B,SAG5C70B,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhC2iD,GACNxC,EAAe,WAElBhrG,GAAQ,WAAawtG,EACrBvtG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcgnG,EAAiBrtG,EAAoB,IAErCstG,EAAkB52B,EAAuB22B,GAEzCE,EAAU,SAAWC,GAGvB,QAASD,GAAQ5pG,EAASs7C,EAAM6nD,GAC9BjwB,EAAgB/2E,KAAMytG,GAEtBvD,EAAK9iG,OAAOsjG,eAAe+C,EAAQx6F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAoBhG,MAzBA6C,GAAU4D,EAASC,GAQnBv2B,EAAas2B,IACX9jG,IAAK,SACL5E,MAAO,SAAgBusC,GACrBtxC,KAAK2tG,kBAGPhkG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAK4tG,WAAWt8D,EAAK,UAAW,EAAG1T,EAAG3c,EAAGqmD,EAAUl5D,MAGrDzE,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhCgjD,GACND,EAAgB,WAEnB5tG,GAAQ,WAAa6tG,EACrB5tG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcokG,EAAgBzqG,EAAoB,IAEpC0qG,EAAiBh0B,EAAuB+zB,GAExCkD,EAAY,SAAW/C,GAGzB,QAAS+C,GAAUhqG,EAASs7C,EAAM6nD,GAChCjwB,EAAgB/2E,KAAM6tG,GAEtB3D,EAAK9iG,OAAOsjG,eAAemD,EAAU56F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAwElG,MA7EA6C,GAAUgE,EAAW/C,GAQrB3zB,EAAa02B,IACXlkG,IAAK,eACL5E,MAAO,WACL,GAAmBwB,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAIP,GAAO,EAAIj+B,KAAK6D,QAAQo6B,IAC5Bj+B,MAAKw+B,MAAQP,EACbj+B,KAAKy+B,OAASR,EACdj+B,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,aACL5E,MAAO,SAAoBusC,EAAK+xD,EAAOyK,EAAgBlwE,EAAG3c,EAAGqmD,EAAUl5D,GACrEpO,KAAK2tG,eAEL3tG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIiuE,GAAqB1sG,KAAK6D,QAAQinC,YAClCmgE,EAAqBjrG,KAAK6D,QAAQ0+F,qBAAuB,EAAIviG,KAAK6D,QAAQinC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB1sG,KAAKm/C,KAAKw8C,KAAK32F,KA0BxF,IAzBAssC,EAAIO,UAAY5sC,KAAKL,IAAI5E,KAAKw+B,MAAOsM,GAErCwG,EAAIY,YAAco1B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAChIojC,EAAIiB,UAAY+0B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIqjC,EAAI+xD,GAAOzlE,EAAG3c,EAAGjhB,KAAK6D,QAAQo6B,MAG9Bj+B,KAAKmrG,aAAa75D,GAElBA,EAAI7J,OAEJznC,KAAKorG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB9qC,KAAKsrG,mBAAmBh6D,GAExBA,EAAI5J,SAEJ1nC,KAAKurG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEuBjlG,SAAvBvG,KAAK6D,QAAQq6B,MAAqB,CACpC,GAAIyG,GAAS1jB,EAAI,GAAMjhB,KAAKy+B,OAAS,CACrCz+B,MAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG+G,EAAQ2iC,EAAU,WAGlDtnE,KAAKwnG,kBAAkB5pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAKukG,YAAY17F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKukG,YAAY57F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKukG,YAAY3yD,MAAQhU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKukG,YAAYl2D,OAASptB,EAAIjhB,KAAK6D,QAAQo6B,KAEhB13B,SAAvBvG,KAAK6D,QAAQq6B,OAAuBl+B,KAAKgnG,YAAY/oE,KAAKO,MAAQ,IACpEx+B,KAAKukG,YAAY57F,KAAO1D,KAAKL,IAAI5E,KAAKukG,YAAY57F,KAAM3I,KAAKgnG,YAAY/oE,KAAKt1B,MAC9E3I,KAAKukG,YAAY3yD,MAAQ3sC,KAAKJ,IAAI7E,KAAKukG,YAAY3yD,MAAO5xC,KAAKgnG,YAAY/oE,KAAKt1B,KAAO3I,KAAKgnG,YAAY/oE,KAAKO,OAC7Gx+B,KAAKukG,YAAYl2D,OAASppC,KAAKJ,IAAI7E,KAAKukG,YAAYl2D,OAAQruC,KAAKukG,YAAYl2D,OAASruC,KAAKgnG,YAAY/oE,KAAKQ,OAAS,QAKpHovE,GACNjD,EAAe,WAElBhrG,GAAQ,WAAaiuG,EACrBhuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcgnG,EAAiBrtG,EAAoB,IAErCstG,EAAkB52B,EAAuB22B,GAEzCQ,EAAM,SAAWL,GAGnB,QAASK,GAAIlqG,EAASs7C,EAAM6nD,GAC1BjwB,EAAgB/2E,KAAM+tG,GAEtB7D,EAAK9iG,OAAOsjG,eAAeqD,EAAI96F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAqB5F,MA1BA6C,GAAUkE,EAAKL,GAQfv2B,EAAa42B,IACXpkG,IAAK,SACL5E,MAAO,SAAgBusC,GACrBtxC,KAAK2tG,kBAGPhkG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAK4tG,WAAWt8D,EAAK,SAAU,EAAG1T,EAAG3c,EAAGqmD,EAAUl5D,MAGpDzE,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GAEpC,MADAzqD,MAAKynG,OAAOn2D,GACLtxC,KAAK6D,QAAQo6B,SAIjB8vE,GACNP,EAAgB,WAEnB5tG,GAAQ,WAAamuG,EACrBluG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcokG,EAAgBzqG,EAAoB,IAEpC0qG,EAAiBh0B,EAAuB+zB,GAExCqD,EAAU,SAAWlD,GAGvB,QAASkD,GAAQnqG,EAASs7C,EAAM6nD,GAC9BjwB,EAAgB/2E,KAAMguG,GAEtB9D,EAAK9iG,OAAOsjG,eAAesD,EAAQ/6F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAmFhG,MAxFA6C,GAAUmE,EAASlD,GAQnB3zB,EAAa62B,IACXrkG,IAAK,SACL5E,MAAO,SAAgBusC,EAAKg2B,GAC1B,GAAmB/gE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAIusE,GAAW/qG,KAAKgnG,YAAYgE,YAAY15D,EAAKg2B,EAEjDtnE,MAAKw+B,MAAyB,IAAjBusE,EAASvsE,MACtBx+B,KAAKy+B,OAA2B,EAAlBssE,EAAStsE,OACnBz+B,KAAKw+B,MAAQx+B,KAAKy+B,SACpBz+B,KAAKw+B,MAAQx+B,KAAKy+B,QAEpBz+B,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAKynG,OAAOn2D,EAAKg2B,GACjBtnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,MAEpB,IAAIiuE,GAAqB1sG,KAAK6D,QAAQinC,YAClCmgE,EAAqBjrG,KAAK6D,QAAQ0+F,qBAAuB,EAAIviG,KAAK6D,QAAQinC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB1sG,KAAKm/C,KAAKw8C,KAAK32F,KACxFssC,GAAIO,UAAY5sC,KAAKL,IAAI5E,KAAKw+B,MAAOsM,GAErCwG,EAAIY,YAAco1B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAEhIojC,EAAIiB,UAAY+0B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIqjC,EAAI28D,QAAQjuG,KAAK2I,KAAM3I,KAAK6I,IAAK7I,KAAKw+B,MAAOx+B,KAAKy+B,QAGlDz+B,KAAKmrG,aAAa75D,GAElBA,EAAI7J,OAEJznC,KAAKorG,cAAc95D,GAGnBA,EAAI+5D,OAGAvgE,EAAc,IAChB9qC,KAAKsrG,mBAAmBh6D,GAExBA,EAAI5J,SAEJ1nC,KAAKurG,oBAAoBj6D,IAG3BA,EAAIk6D,UAEJxrG,KAAKwnG,kBAAkB5pE,EAAG3c,EAAGqwB,EAAKg2B,GAClCtnE,KAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG3c,EAAGqmD,MAGnC39D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGqwB,EAAKg2B,GAC3CtnE,KAAKynG,OAAOn2D,EAAKg2B,GAEjBtnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,OAEpBz+B,KAAKukG,YAAY57F,KAAO3I,KAAK2I,KAC7B3I,KAAKukG,YAAY17F,IAAM7I,KAAK6I,IAC5B7I,KAAKukG,YAAYl2D,OAASruC,KAAK6I,IAAM7I,KAAKy+B,OAC1Cz+B,KAAKukG,YAAY3yD,MAAQ5xC,KAAK2I,KAAO3I,KAAKw+B,SAG5C70B,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpCzqD,KAAKynG,OAAOn2D,EACZ,IAAIprC,GAAiB,GAAblG,KAAKw+B,MACTr4B,EAAkB,GAAdnG,KAAKy+B,OACT3a,EAAI7e,KAAKokC,IAAIohB,GAASvkD,EACtBwH,EAAIzI,KAAKukC,IAAIihB,GAAStkD,CAC1B,OAAOD,GAAIC,EAAIlB,KAAKu0C,KAAK11B,EAAIA,EAAIpW,EAAIA,OAIlCsgG,GACNpD,EAAe,WAElBhrG,GAAQ,WAAaouG,EACrBnuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcokG,EAAgBzqG,EAAoB,IAEpC0qG,EAAiBh0B,EAAuB+zB,GAExCuD,EAAO,SAAWpD,GAGpB,QAASoD,GAAKrqG,EAASs7C,EAAM6nD,GAC3BjwB,EAAgB/2E,KAAMkuG,GAEtBhE,EAAK9iG,OAAOsjG,eAAewD,EAAKj7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GA+E7F,MApFA6C,GAAUqE,EAAMpD,GAQhB3zB,EAAa+2B,IACXvkG,IAAK,SACL5E,MAAO,SAAgBusC,GACrB,GAAmB/qC,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACT41D,GACF37D,MAAOn6B,OAAOrE,KAAK6D,QAAQ+yF,KAAK34D,MAChCQ,OAAQp6B,OAAOrE,KAAK6D,QAAQ+yF,KAAK34D,MAEnCj+B,MAAKw+B,MAAQ27D,EAAS37D,MAAQ,EAAI+F,EAClCvkC,KAAKy+B,OAAS07D,EAAS17D,OAAS,EAAI8F,EACpCvkC,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GAQxC,GAPApO,KAAKynG,OAAOn2D,GACZtxC,KAAK6D,QAAQ+yF,KAAK34D,KAAOj+B,KAAK6D,QAAQ+yF,KAAK34D,MAAQ,GAEnDj+B,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,OACpBz+B,KAAKmuG,MAAM78D,EAAK1T,EAAG3c,EAAGqmD,GAEK/gE,SAAvBvG,KAAK6D,QAAQq6B,MAAqB,CACpC,GAAIkwE,GAAkB,CACtBpuG,MAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG3c,EAAkB,GAAdjhB,KAAKy+B,OAAe2vE,EAAiB9mC,GAGzEtnE,KAAKwnG,kBAAkB5pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GAMnC,GALAjhB,KAAKukG,YAAY17F,IAAMoY,EAA6B,GAAzBjhB,KAAK6D,QAAQ+yF,KAAK34D,KAC7Cj+B,KAAKukG,YAAY57F,KAAOi1B,EAA6B,GAAzB59B,KAAK6D,QAAQ+yF,KAAK34D,KAC9Cj+B,KAAKukG,YAAY3yD,MAAQhU,EAA6B,GAAzB59B,KAAK6D,QAAQ+yF,KAAK34D,KAC/Cj+B,KAAKukG,YAAYl2D,OAASptB,EAA6B,GAAzBjhB,KAAK6D,QAAQ+yF,KAAK34D,KAErB13B,SAAvBvG,KAAK6D,QAAQq6B,OAAuBl+B,KAAKgnG,YAAY/oE,KAAKO,MAAQ,EAAG,CACvE,GAAI4vE,GAAkB,CACtBpuG,MAAKukG,YAAY57F,KAAO1D,KAAKL,IAAI5E,KAAKukG,YAAY57F,KAAM3I,KAAKgnG,YAAY/oE,KAAKt1B,MAC9E3I,KAAKukG,YAAY3yD,MAAQ3sC,KAAKJ,IAAI7E,KAAKukG,YAAY3yD,MAAO5xC,KAAKgnG,YAAY/oE,KAAKt1B,KAAO3I,KAAKgnG,YAAY/oE,KAAKO,OAC7Gx+B,KAAKukG,YAAYl2D,OAASppC,KAAKJ,IAAI7E,KAAKukG,YAAYl2D,OAAQruC,KAAKukG,YAAYl2D,OAASruC,KAAKgnG,YAAY/oE,KAAKQ,OAAS2vE,OAIzHzkG,IAAK,QACL5E,MAAO,SAAeusC,EAAK1T,EAAG3c,EAAGqmD,GAC/B,GAAI6yB,GAAW91F,OAAOrE,KAAK6D,QAAQ+yF,KAAK34D,KAET13B,UAA3BvG,KAAK6D,QAAQ+yF,KAAK/+E,MACpBy5B,EAAIQ,MAAQw1B,EAAW,QAAU,IAAM6yB,EAAW,MAAQn6F,KAAK6D,QAAQ+yF,KAAK8L,KAG5EpxD,EAAIiB,UAAYvyC,KAAK6D,QAAQ+yF,KAAKnqF,OAAS,QAC3C6kC,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,SAGnB/yC,KAAKmrG,aAAa75D,GAClBA,EAAI0B,SAAShzC,KAAK6D,QAAQ+yF,KAAK/+E,KAAM+lB,EAAG3c,GAGxCjhB,KAAKorG,cAAc95D,IAEnB3xB,QAAQ08D,MAAM,gIAIlB1yE,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhCyjD,GACNtD,EAAe,WAElBhrG,GAAQ,WAAasuG,EACrBruG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcylG,EAAuB9rG,EAAoB,IAE3C+rG,EAAwBr1B,EAAuBo1B,GAE/CqC,EAAQ,SAAWlC,GAGrB,QAASkC,GAAMxqG,EAASs7C,EAAM6nD,EAAaG,GACzCpwB,EAAgB/2E,KAAMquG,GAEtBnE,EAAK9iG,OAAOsjG,eAAe2D,EAAMp7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAC5FhnG,KAAKmnG,SAAWA,EA+ElB,MArFA0C,GAAUwE,EAAOlC,GASjBh1B,EAAak3B,IACX1kG,IAAK,SACL5E,MAAO,WACL/E,KAAKgtG,kBAGPrjG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GAKxC,GAJApO,KAAKynG,SACLznG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAEzBz+B,KAAK6D,QAAQy/F,gBAAgBG,sBAAuB,EAAM,CAC5D,GAAIiJ,GAAqB1sG,KAAK6D,QAAQinC,YAClCmgE,EAAqBjrG,KAAK6D,QAAQ0+F,qBAAuB,EAAIviG,KAAK6D,QAAQinC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB1sG,KAAKm/C,KAAKw8C,KAAK32F,KACxFssC,GAAIO,UAAY5sC,KAAKL,IAAI5E,KAAKw+B,MAAOsM,GAErCwG,EAAIa,YAGJb,EAAIY,YAAco1B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAGhIojC,EAAIiB,UAAY+0B,EAAWtnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WAGtIqjC,EAAI5S,KAAK1+B,KAAK2I,KAAO,GAAM2oC,EAAIO,UAAW7xC,KAAK6I,IAAM,GAAMyoC,EAAIO,UAAW7xC,KAAKw+B,MAAQ8S,EAAIO,UAAW7xC,KAAKy+B,OAAS6S,EAAIO,WACxHP,EAAI7J,OAGJ6J,EAAI+5D,OAEAvgE,EAAc,IAChB9qC,KAAKsrG,mBAAmBh6D,GAExBA,EAAI5J,SAEJ1nC,KAAKurG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEJl6D,EAAIkB,YAGNxyC,KAAKktG,qBAAqB57D,GAE1BtxC,KAAKmtG,gBAAgB77D,EAAK1T,EAAG3c,EAAGqmD,GAAYl5D,GAE5CpO,KAAKwnG,kBAAkB5pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAKynG,SACLznG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAE7Bz+B,KAAKukG,YAAY17F,IAAM7I,KAAK6I,IAC5B7I,KAAKukG,YAAY57F,KAAO3I,KAAK2I,KAC7B3I,KAAKukG,YAAY3yD,MAAQ5xC,KAAK2I,KAAO3I,KAAKw+B,MAC1Cx+B,KAAKukG,YAAYl2D,OAASruC,KAAK6I,IAAM7I,KAAKy+B,OAEfl4B,SAAvBvG,KAAK6D,QAAQq6B,OAAuBl+B,KAAKgnG,YAAY/oE,KAAKO,MAAQ,IACpEx+B,KAAKukG,YAAY57F,KAAO1D,KAAKL,IAAI5E,KAAKukG,YAAY57F,KAAM3I,KAAKgnG,YAAY/oE,KAAKt1B,MAC9E3I,KAAKukG,YAAY3yD,MAAQ3sC,KAAKJ,IAAI7E,KAAKukG,YAAY3yD,MAAO5xC,KAAKgnG,YAAY/oE,KAAKt1B,KAAO3I,KAAKgnG,YAAY/oE,KAAKO,OAC7Gx+B,KAAKukG,YAAYl2D,OAASppC,KAAKJ,IAAI7E,KAAKukG,YAAYl2D,OAAQruC,KAAKukG,YAAYl2D,OAASruC,KAAKusG,iBAI/F5iG,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhC4jD,GACNpC,EAAsB,WAEzBrsG,GAAQ,WAAayuG,EACrBxuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcgnG,EAAiBrtG,EAAoB,IAErCstG,EAAkB52B,EAAuB22B,GAEzCe,EAAS,SAAWZ,GAGtB,QAASY,GAAOzqG,EAASs7C,EAAM6nD,GAC7BjwB,EAAgB/2E,KAAMsuG,GAEtBpE,EAAK9iG,OAAOsjG,eAAe4D,EAAOr7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAoB/F,MAzBA6C,GAAUyE,EAAQZ,GAQlBv2B,EAAam3B,IACX3kG,IAAK,SACL5E,MAAO,WACL/E,KAAK2tG,kBAGPhkG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAK4tG,WAAWt8D,EAAK,SAAU,EAAG1T,EAAG3c,EAAGqmD,EAAUl5D,MAGpDzE,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhC6jD,GACNd,EAAgB,WAEnB5tG,GAAQ,WAAa0uG,EACrBzuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcgnG,EAAiBrtG,EAAoB,IAErCstG,EAAkB52B,EAAuB22B,GAEzCgB,EAAO,SAAWb,GAGpB,QAASa,GAAK1qG,EAASs7C,EAAM6nD,GAC3BjwB,EAAgB/2E,KAAMuuG,GAEtBrE,EAAK9iG,OAAOsjG,eAAe6D,EAAKt7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAoB7F,MAzBA6C,GAAU0E,EAAMb,GAQhBv2B,EAAao3B,IACX5kG,IAAK,SACL5E,MAAO,SAAgBusC,GACrBtxC,KAAK2tG,kBAGPhkG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAK4tG,WAAWt8D,EAAK,OAAQ,EAAG1T,EAAG3c,EAAGqmD,EAAUl5D,MAGlDzE,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhC8jD,GACNf,EAAgB,WAEnB5tG,GAAQ,WAAa2uG,EACrB1uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcokG,EAAgBzqG,EAAoB,IAEpC0qG,EAAiBh0B,EAAuB+zB,GAExC6D,EAAO,SAAW1D,GAGpB,QAAS0D,GAAK3qG,EAASs7C,EAAM6nD,GAC3BjwB,EAAgB/2E,KAAMwuG,GAEtBtE,EAAK9iG,OAAOsjG,eAAe8D,EAAKv7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAkD7F,MAvDA6C,GAAU2E,EAAM1D,GAQhB3zB,EAAaq3B,IACX7kG,IAAK,SACL5E,MAAO,SAAgBusC,EAAKg2B,GAC1B,GAAmB/gE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTwmE,EAAW/qG,KAAKgnG,YAAYgE,YAAY15D,EAAKg2B,EACjDtnE,MAAKw+B,MAAQusE,EAASvsE,MAAQ,EAAI+F,EAClCvkC,KAAKy+B,OAASssE,EAAStsE,OAAS,EAAI8F,EACpCvkC,KAAK41C,OAAS,GAAM51C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAKynG,OAAOn2D,EAAKg2B,GAAYl5D,GAC7BpO,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAG7Bz+B,KAAKmrG,aAAa75D,GAClBtxC,KAAKgnG,YAAYhrB,KAAK1qC,EAAK1T,EAAG3c,EAAGqmD,GAAYl5D,GAG7CpO,KAAKorG,cAAc95D,GAEnBtxC,KAAKwnG,kBAAkB5pE,EAAG3c,EAAGqwB,EAAKg2B,MAGpC39D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGqwB,EAAKg2B,GAC3CtnE,KAAKynG,OAAOn2D,EAAKg2B,GAEjBtnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAE7Bz+B,KAAKukG,YAAY17F,IAAM7I,KAAK6I,IAC5B7I,KAAKukG,YAAY57F,KAAO3I,KAAK2I,KAC7B3I,KAAKukG,YAAY3yD,MAAQ5xC,KAAK2I,KAAO3I,KAAKw+B,MAC1Cx+B,KAAKukG,YAAYl2D,OAASruC,KAAK6I,IAAM7I,KAAKy+B,UAG5C90B,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhC+jD,GACN5D,EAAe,WAElBhrG,GAAQ,WAAa4uG,EACrB3uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcgnG,EAAiBrtG,EAAoB,IAErCstG,EAAkB52B,EAAuB22B,GAEzCkB,EAAW,SAAWf,GAGxB,QAASe,GAAS5qG,EAASs7C,EAAM6nD,GAC/BjwB,EAAgB/2E,KAAMyuG,GAEtBvE,EAAK9iG,OAAOsjG,eAAe+D,EAASx7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAoBjG,MAzBA6C,GAAU4E,EAAUf,GAQpBv2B,EAAas3B,IACX9kG,IAAK,SACL5E,MAAO,SAAgBusC,GACrBtxC,KAAK2tG,kBAGPhkG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAK4tG,WAAWt8D,EAAK,WAAY,EAAG1T,EAAG3c,EAAGqmD,EAAUl5D,MAGtDzE,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhCgkD,GACNjB,EAAgB,WAEnB5tG,GAAQ,WAAa6uG,EACrB5uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcgnG,EAAiBrtG,EAAoB,IAErCstG,EAAkB52B,EAAuB22B,GAEzCmB,EAAe,SAAWhB,GAG5B,QAASgB,GAAa7qG,EAASs7C,EAAM6nD,GACnCjwB,EAAgB/2E,KAAM0uG,GAEtBxE,EAAK9iG,OAAOsjG,eAAegE,EAAaz7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAoBrG,MAzBA6C,GAAU6E,EAAchB,GAQxBv2B,EAAau3B,IACX/kG,IAAK,SACL5E,MAAO,SAAgBusC,GACrBtxC,KAAK2tG,kBAGPhkG,IAAK,OACL5E,MAAO,SAAcusC,EAAK1T,EAAG3c,EAAGqmD,EAAUl5D,GACxCpO,KAAK4tG,WAAWt8D,EAAK,eAAgB,EAAG1T,EAAG3c,EAAGqmD,EAAUl5D,MAG1DzE,IAAK,mBACL5E,MAAO,SAA0BusC,EAAKmZ,GACpC,MAAOzqD,MAAKstG,kBAAkBh8D,EAAKmZ,OAIhCikD,GACNlB,EAAgB,WAEnB5tG,GAAQ,WAAa8uG,EACrB7uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB03B,EAAkBzuG,EAAoB,IAEtC0uG,EAAmBh4B,EAAuB+3B,GAE1CxM,EAAyBjiG,EAAoB,IAE7CkiG,EAA0BxrB,EAAuBurB,GAEjDxhG,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAE/B2uG,EAAe,WACjB,QAASA,GAAa1vD,EAAM08C,EAAQp9C,GAClC,GAAIwD,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAM6uG,GAEtB7uG,KAAKm/C,KAAOA,EACZn/C,KAAK67F,OAASA,EACd77F,KAAKy+C,OAASA,EAGdz+C,KAAKm/C,KAAKq8C,UAAUE,WAAa17F,KAAKoQ,OAAOkvC,KAAKt/C,MAElDA,KAAK8uG,gBACH7oF,IAAK,SAAanb,EAAO60B,GACvBsiB,EAAMh8B,IAAI0Z,EAAO19B,QAEnBi+B,OAAQ,SAAgBp1B,EAAO60B,GAC7BsiB,EAAM/hB,OAAOP,EAAO19B,QAEtB0/B,OAAQ,SAAgB72B,EAAO60B,GAC7BsiB,EAAMtgB,OAAOhC,EAAO19B,SAIxBjC,KAAK6D,WACL7D,KAAK2+C,gBACHowD,QACE55F,IAAMtE,SAAS,EAAOm+F,YAAa,GACnCz9F,QAAUV,SAAS,EAAOm+F,YAAa,GACvC55F,MAAQvE,SAAS,EAAOm+F,YAAa,IAEvCC,oBAAoB,EACpBxiG,OACEA,MAAO,UACP0B,UAAW,UACXC,MAAO,UACP63C,QAAS,OACTv5C,QAAS,GAEXq/F,QAAQ,EACRj6D,MACErlC,MAAO,UACPwxB,KAAM,GACNykE,KAAM,QACNz0F,WAAY,OACZ05B,YAAa,EACbg7D,YAAa,UACblgC,MAAO,cAET1F,QAAQ,EACRmyC,WAAY,IACZhxE,MAAO33B,OACPs8F,oBAAoB,EACpBv8F,OAAQC,OACR01E,SAAS,EACT+mB,SACEp+F,IAAK,EACLC,IAAK,GACLq5B,OACErtB,SAAS,EACTjM,IAAK,GACLC,IAAK,GACLo+F,WAAY,GACZC,cAAe,GAEjBC,sBAAuB,SAA+Bv+F,EAAKC,EAAKC,EAAOC,GACrE,GAAIF,IAAQD,EACV,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,KAIzCmqG,eAAgB,IAChBC,kBAAmB,GACnBhM,QACEvyF,SAAS,EACTpE,MAAO,kBACPwxB,KAAM,GACNL,EAAG,EACH3c,EAAG,GAELouF,QACEx+F,SAAS,EACTjJ,KAAM,UACN0nG,eAAgB,OAChBC,UAAW,IAEb9uC,MAAOl6D,OACPi4B,MAAO,EACPz5B,MAAOwB,QAGT5F,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAK47F,qBAuTP,MApTAzkB,GAAa03B,IACXllG,IAAK,qBACL5E,MAAO,WACL,GAAI00E,GAASz5E,IAGbA,MAAKm/C,KAAKE,QAAQjgB,GAAG,6BAA8B,SAAUx3B,GAC9C,YAATA,IACFA,EAAO,aAET,IAAI4nG,IAAa,CACjB,KAAK,GAAI9Q,KAAUjlB,GAAOt6B,KAAKy7C,MAC7B,GAAInhB,EAAOt6B,KAAKy7C,MAAM50F,eAAe04F,GAAS,CAC5C,GAAIyC,GAAO1nB,EAAOt6B,KAAKy7C,MAAM8D,GACzB+Q,EAAWh2B,EAAOt6B,KAAKnnC,KAAK4iF,MAAMvzE,MAAMq3E,EAI5C,IAAiBn4F,SAAbkpG,EAAwB,CAC1B,GAAIC,GAAcD,EAASJ,MACP9oG,UAAhBmpG,GACEA,EAAY7+F,WAAY,GAA6B,YAArB6+F,EAAY9nG,OACjCrB,SAATqB,EACFu5F,EAAKniE,YAAaqwE,QAAQ,IAE1BlO,EAAKniE,YAAaqwE,QAAUznG,KAAMA,KAEpC4nG,GAAa,IAMnBA,KAAe,GACjB/1B,EAAOt6B,KAAKE,QAAQzH,KAAK,kBAK7B53C,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnCq6C,EAAOk2B,iBACPl2B,EAAOm2B,wBAIT5vG,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgBp/B,KAAK0jC,QAAQ4b,KAAKt/C,OACvDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAWp/B,KAAK0jC,QAAQ4b,KAAKt/C,OAClDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9Bz+B,EAAK2I,QAAQmwE,EAAOq1B,eAAgB,SAAUvlG,EAAUuB,GAClD2uE,EAAOt6B,KAAKnnC,KAAK4iF,OAAOnhB,EAAOt6B,KAAKnnC,KAAK4iF,MAAMr7D,IAAIz0B,EAAOvB,WAEzDkwE,GAAOt6B,KAAKq8C,UAAUE,iBACtBjiB,GAAOq1B,eAAe7oF,UACtBwzD,GAAOq1B,eAAe5uE,aACtBu5C,GAAOq1B,eAAentE,aACtB83C,GAAOq1B,oBAIlBnlG,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAEzB+qG,EAAiB,WAAWlL,aAAa1jG,KAAK6D,QAASA,GAGjC0C,SAAlB1C,EAAQ4I,OACVzM,KAAK4vG,qBAIP,IAAIzL,IAAc,CAClB,IAAuB59F,SAAnB1C,EAAQwrG,OACV,IAAK,GAAI3Q,KAAU1+F,MAAKm/C,KAAKy7C,MACvB56F,KAAKm/C,KAAKy7C,MAAM50F,eAAe04F,KACjCyF,EAAcnkG,KAAKm/C,KAAKy7C,MAAM8D,GAAQmR,kBAAoB1L,EAMhE,IAAqB59F,SAAjB1C,EAAQiuC,KAAoB,CAE9BswD,EAAwB,WAAWsB,aAAa1jG,KAAK6D,QAAQiuC,KAAMjuC,EACnE,KAAK,GAAI66F,KAAU1+F,MAAKm/C,KAAKy7C,MACvB56F,KAAKm/C,KAAKy7C,MAAM50F,eAAe04F,IACjC1+F,KAAKm/C,KAAKy7C,MAAM8D,GAAQkF,qBAMPr9F,SAAnB1C,EAAQk5D,QAA4Cx2D,SAApB1C,EAAQo4E,SAAyBkoB,KAAgB,IACnFnkG,KAAKm/C,KAAKE,QAAQzH,KAAK,oBAY7BjuC,IAAK,UACL5E,MAAO,SAAiB61F,GACtB,GAAIrgB,GAASv6E,KAET8jG,EAAYz9F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFypG,EAAe9vG,KAAKm/C,KAAKnnC,KAAK4iF,KAElC,IAAIA,YAAiB/5F,IAAW+5F,YAAiB95F,GAC/Cd,KAAKm/C,KAAKnnC,KAAK4iF,MAAQA,MAClB,IAAI9zF,MAAMC,QAAQ6zF,GACvB56F,KAAKm/C,KAAKnnC,KAAK4iF,MAAQ,GAAI/5F,GAC3Bb,KAAKm/C,KAAKnnC,KAAK4iF,MAAM30E,IAAI20E,OACpB,CAAA,GAAKA,EAGV,KAAM,IAAI1zF,WAAU,4BAFpBlH,MAAKm/C,KAAKnnC,KAAK4iF,MAAQ,GAAI/5F,GAiB7B,GAXIivG,GAEFnvG,EAAK2I,QAAQtJ,KAAK8uG,eAAgB,SAAUvlG,EAAUuB,GACpDglG,EAAavwE,IAAIz0B,EAAOvB,KAK5BvJ,KAAKm/C,KAAKy7C,SAGN56F,KAAKm/C,KAAKnnC,KAAK4iF,MAAO,CAExBj6F,EAAK2I,QAAQtJ,KAAK8uG,eAAgB,SAAUvlG,EAAUuB,GACpDyvE,EAAOp7B,KAAKnnC,KAAK4iF,MAAMx7D,GAAGt0B,EAAOvB,IAInC,IAAIk3B,GAAMzgC,KAAKm/C,KAAKnnC,KAAK4iF,MAAMx5D,QAC/BphC,MAAKimB,IAAIwa,GAAK,GAGZqjE,KAAc,GAChB9jG,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAU3BjuC,IAAK,MACL5E,MAAO,SAAa07B,GAMlB,IAAK,GALDqjE,GAAYz9F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFu0F,EAAQ56F,KAAKm/C,KAAKy7C,MAClBmV,EAAY/vG,KAAKm/C,KAAKnnC,KAAK4iF,MAEtBn0F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GAETupG,EAAUpV,EAAMv6F,EAChB2vG,IACFA,EAAQC,YAGV,IAAIj4F,GAAO+3F,EAAU/4E,IAAI32B,GAAM6vG,iBAAmB,GAClDtV,GAAMv6F,GAAML,KAAKoQ,OAAO4H,GAGtB8rF,KAAc,GAChB9jG,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAU3BjuC,IAAK,SACL5E,MAAO,SAAgB07B,GAIrB,IAAK,GAHDm6D,GAAQ56F,KAAKm/C,KAAKy7C,MAClBmV,EAAY/vG,KAAKm/C,KAAKnnC,KAAK4iF,MAC3BuJ,GAAc,EACT19F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GACTuR,EAAO+3F,EAAU/4E,IAAI32B,GACrB8gG,EAAOvG,EAAMv6F,EACJkG,UAAT46F,GAEFA,EAAK8O,aACL9L,EAAchD,EAAKniE,WAAWhnB,IAASmsF,EACvChD,EAAKgP,YAGLnwG,KAAKm/C,KAAKy7C,MAAMv6F,GAAML,KAAKoQ,OAAO4H,GAClCmsF,GAAc,GAIdA,KAAgB,EAClBnkG,KAAKm/C,KAAKE,QAAQzH,KAAK,gBAEvB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAU3BjuC,IAAK,SACL5E,MAAO,SAAgB07B,GAErB,IAAK,GADDm6D,GAAQ56F,KAAKm/C,KAAKy7C,MACbn0F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GACT06F,EAAOvG,EAAMv6F,EACJkG,UAAT46F,IACFA,EAAKiP,UACLjP,EAAK8O,mBACErV,GAAMv6F,IAIjBL,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAGzBjuC,IAAK,UACL5E,MAAO,WACL,GAAI61F,GAAQ56F,KAAKm/C,KAAKy7C,KACtB,KAAK,GAAI8D,KAAU9D,GAAO,CACxB,GAAIuG,GAAO56F,MACPq0F,GAAM50F,eAAe04F,KACvByC,EAAOvG,EAAM8D,GAEf,IAAI1mF,GAAOhY,KAAKm/C,KAAKnnC,KAAK4iF,MAAMvzE,MAAMq3E,EACzBn4F,UAAT46F,GAA+B56F,SAATyR,GACxBmpF,EAAKniE,WAAWhnB,OAKtBrO,IAAK,SACL5E,MAAO,SAAgBohD,GACrB,MAAO,IAAIyoD,GAAiB,WAAWzoD,EAAYnmD,KAAKm/C,KAAMn/C,KAAK6D,YAGrE8F,IAAK,sBACL5E,MAAO,WACL,IAAK,GAAI25F,KAAU1+F,MAAKm/C,KAAKy7C,MAC3B56F,KAAKm/C,KAAKy7C,MAAM8D,GAAQ2R,SAASC,YAAa,KASlD3mG,IAAK,iBACL5E,MAAO,WACL,GAAI1E,GACAq6F,EAAQ16F,KAAKm/C,KAAKu7C,MAClBE,EAAQ56F,KAAKm/C,KAAKy7C,KAEtB,KAAKv6F,IAAMq6F,GACLA,EAAM10F,eAAe3F,KACvBq6F,EAAMr6F,GAAIu6F,SAId,KAAKv6F,IAAMu6F,GACT,GAAIA,EAAM50F,eAAe3F,GAAK,CAC5B,GAAI8gG,GAAOvG,EAAMv6F,EACjB8gG,GAAK/rF,KAAO,KACZ+rF,EAAKhsF,GAAK,KACVgsF,EAAKgP,cAKXxmG,IAAK,oBACL5E,MAAO,SAA2B25F;AAChC,GAAI8F,KACJ,IAAgCj+F,SAA5BvG,KAAKm/C,KAAKy7C,MAAM8D,GAAuB,CACzC,GAAIyC,GAAOnhG,KAAKm/C,KAAKy7C,MAAM8D,EACvByC,GAAKwD,QACPH,EAASh9F,KAAK25F,EAAKwD,QAEjBxD,EAAKuD,MACPF,EAASh9F,KAAK25F,EAAKuD,MAGvB,MAAOF,OAIJqK,IAGTjvG,GAAQ,WAAaivG,EACrBhvG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB4tB,EAAe3kG,EAAoB,IAEnC4kG,EAAgBluB,EAAuBiuB,GAEvC0L,EAAwBrwG,EAAoB,IAE5CswG,EAAyB55B,EAAuB25B,GAEhDE,EAA0BvwG,EAAoB,IAE9CwwG,EAA2B95B,EAAuB65B,GAElDE,EAAyBzwG,EAAoB,IAE7C0wG,EAA0Bh6B,EAAuB+5B,GAEjDE,EAAqB3wG,EAAoB,IAEzC4wG,EAAsBl6B,EAAuBi6B,GAiB7ClwG,EAAOT,EAAoB,GAE3B6wG,EAAO,WACT,QAASA,GAAKltG,EAASs7C,EAAMvuC,GAG3B,GAFAmmE,EAAgB/2E,KAAM+wG,GAETxqG,SAAT44C,EACF,KAAM,kBAERn/C,MAAK6D,QAAUlD,EAAK0P,aAAaO,GACjC5Q,KAAK4Q,cAAgBA,EACrB5Q,KAAKm/C,KAAOA,EAGZn/C,KAAKK,GAAKkG,OACVvG,KAAK2kG,OAASp+F,OACdvG,KAAK0kG,KAAOn+F,OACZvG,KAAKsnE,UAAW,EAChBtnE,KAAKoO,OAAQ,EACbpO,KAAKyoG,YAAa,EAClBzoG,KAAKswG,YAAa,EAElBtwG,KAAKgxG,UAAYhxG,KAAK6D,QAAQ26B,MAC9Bx+B,KAAK8mG,aAAe9mG,KAAK6D,QAAQiuC,KAAK7T,KAEtCj+B,KAAKoV,KAAO7O,OACZvG,KAAKmV,GAAK5O,OAEVvG,KAAKqwG,SAAW9pG,OAEhBvG,KAAKixG,WAAY,EAEjBjxG,KAAKgnG,YAAc,GAAIlC,GAAc,WAAW9kG,KAAKm/C,KAAMn/C,KAAK6D,SAEhE7D,KAAKg/B,WAAWn7B,GA6flB,MApfAszE,GAAa45B,IACXpnG,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAKA,EAAL,CAGA7D,KAAKswG,YAAa,EAElBS,EAAKrN,aAAa1jG,KAAK6D,QAASA,GAAS,EAAM7D,KAAK4Q,eAEjCrK,SAAf1C,EAAQxD,KACVL,KAAKK,GAAKwD,EAAQxD,IAECkG,SAAjB1C,EAAQuR,OACVpV,KAAK2kG,OAAS9gG,EAAQuR,MAEL7O,SAAf1C,EAAQsR,KACVnV,KAAK0kG,KAAO7gG,EAAQsR,IAEA5O,SAAlB1C,EAAQ48D,QACVzgE,KAAKygE,MAAQ58D,EAAQ48D,OAEDl6D,SAAlB1C,EAAQkB,QACVlB,EAAQkB,MAAQqlB,WAAWvmB,EAAQkB,QAIrC/E,KAAK4jG,mBAEL,IAAIO,GAAcnkG,KAAK6vG,gBAYvB,OATA7vG,MAAKkxG,wBAGLlxG,KAAKmwG,WAEkB5pG,SAAnB1C,EAAQk5D,QAA4Cx2D,SAApB1C,EAAQo4E,WAC1CkoB,GAAc,GAGTA,MAGTx6F,IAAK,oBAML5E,MAAO,WACL/E,KAAKgnG,YAAYhoE,WAAWh/B,KAAK6D,SAAS,GACR0C,SAA9BvG,KAAKgnG,YAAYH,WACnB7mG,KAAK8mG,aAAe9mG,KAAKgnG,YAAYH,aASzCl9F,IAAK,iBACL5E,MAAO,WACL,GAAIo/F,IAAc,EACdgN,GAAe,EACf9B,EAASrvG,KAAK6D,QAAQwrG,MAsC1B,OArCsB9oG,UAAlBvG,KAAKqwG,WACHrwG,KAAKqwG,mBAAoBK,GAAyB,YAAcrB,EAAOx+F,WAAY,GAAwB,YAAhBw+F,EAAOznG,OACpGupG,GAAe,GAEbnxG,KAAKqwG,mBAAoBG,GAAuB,YAAcnB,EAAOx+F,WAAY,GAAwB,gBAAhBw+F,EAAOznG,OAClGupG,GAAe,GAEbnxG,KAAKqwG,mBAAoBO,GAAwB,YAAcvB,EAAOx+F,WAAY,GAAwB,YAAhBw+F,EAAOznG,MAAsC,gBAAhBynG,EAAOznG,OAChIupG,GAAe,GAEbnxG,KAAKqwG,mBAAoBS,GAAoB,YAAczB,EAAOx+F,WAAY,IAChFsgG,GAAe,GAGbA,KAAiB,IACnBhN,EAAcnkG,KAAKowG,YAInBe,KAAiB,EACfnxG,KAAK6D,QAAQwrG,OAAOx+F,WAAY,EACD,YAA7B7Q,KAAK6D,QAAQwrG,OAAOznG,MACtBu8F,GAAc,EACdnkG,KAAKqwG,SAAW,GAAIK,GAAyB,WAAW1wG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,cAChD,gBAA7BhnG,KAAK6D,QAAQwrG,OAAOznG,KAC7B5H,KAAKqwG,SAAW,GAAIG,GAAuB,WAAWxwG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,aAEpFhnG,KAAKqwG,SAAW,GAAIO,GAAwB,WAAW5wG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,aAGvFhnG,KAAKqwG,SAAW,GAAIS,GAAoB,WAAW9wG,KAAK6D,QAAS7D,KAAKm/C,KAAMn/C,KAAKgnG,aAInFhnG,KAAKqwG,SAASrxE,WAAWh/B,KAAK6D,SAGzBsgG,KAOTx6F,IAAK,UACL5E,MAAO,WACL/E,KAAKiwG,aAELjwG,KAAKoV,KAAOpV,KAAKm/C,KAAKu7C,MAAM16F,KAAK2kG,SAAWp+F,OAC5CvG,KAAKmV,GAAKnV,KAAKm/C,KAAKu7C,MAAM16F,KAAK0kG,OAASn+F,OACxCvG,KAAKixG,UAA0B1qG,SAAdvG,KAAKoV,MAAkC7O,SAAZvG,KAAKmV,GAE7CnV,KAAKixG,aAAc,GACrBjxG,KAAKoV,KAAKg8F,WAAWpxG,MACrBA,KAAKmV,GAAGi8F,WAAWpxG,QAEfA,KAAKoV,MACPpV,KAAKoV,KAAKi8F,WAAWrxG,MAEnBA,KAAKmV,IACPnV,KAAKmV,GAAGk8F,WAAWrxG,OAIvBA,KAAKqwG,SAASF,aAOhBxmG,IAAK,aACL5E,MAAO,WACD/E,KAAKoV,OACPpV,KAAKoV,KAAKi8F,WAAWrxG,MACrBA,KAAKoV,KAAO7O,QAEVvG,KAAKmV,KACPnV,KAAKmV,GAAGk8F,WAAWrxG,MACnBA,KAAKmV,GAAK5O,QAGZvG,KAAKixG,WAAY,KASnBtnG,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAKygE,SAQd92D,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKsnE,YAQd39D,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQkB,SAWtB4E,IAAK,gBACL5E,MAAO,SAAuBH,EAAKC,EAAKC,GACtC,GAA2ByB,SAAvBvG,KAAK6D,QAAQkB,MAAqB,CACpC,GAAIC,GAAQhF,KAAK6D,QAAQm/F,QAAQG,sBAAsBv+F,EAAKC,EAAKC,EAAO9E,KAAK6D,QAAQkB,OACjFusG,EAAYtxG,KAAK6D,QAAQm/F,QAAQn+F,IAAM7E,KAAK6D,QAAQm/F,QAAQp+F,GAChE,IAAI5E,KAAK6D,QAAQm/F,QAAQ9kE,MAAMrtB,WAAY,EAAM,CAC/C,GAAI02F,GAAWvnG,KAAK6D,QAAQm/F,QAAQ9kE,MAAMr5B,IAAM7E,KAAK6D,QAAQm/F,QAAQ9kE,MAAMt5B,GAC3E5E,MAAK6D,QAAQiuC,KAAK7T,KAAOj+B,KAAK6D,QAAQm/F,QAAQ9kE,MAAMt5B,IAAMI,EAAQuiG,EAEpEvnG,KAAK6D,QAAQ26B,MAAQx+B,KAAK6D,QAAQm/F,QAAQp+F,IAAMI,EAAQssG,MAExDtxG,MAAK6D,QAAQ26B,MAAQx+B,KAAKgxG,UAC1BhxG,KAAK6D,QAAQiuC,KAAK7T,KAAOj+B,KAAK8mG,YAGhC9mG,MAAKkxG,wBACLlxG,KAAK4jG,uBAGPj6F,IAAK,wBACL5E,MAAO,WACkC,kBAA5B/E,MAAK6D,QAAQqrG,WACtBlvG,KAAKqwG,SAASnB,WAAalvG,KAAK6D,QAAQqrG,WAAWlvG,KAAK6D,QAAQ26B,OAEhEx+B,KAAKqwG,SAASnB,WAAalvG,KAAK6D,QAAQqrG,WAAalvG,KAAK6D,QAAQ26B,MAGzB,kBAAhCx+B,MAAK6D,QAAQsrG,eACtBnvG,KAAKqwG,SAASlB,eAAiBnvG,KAAK6D,QAAQsrG,eAAenvG,KAAK6D,QAAQ26B,OAExEx+B,KAAKqwG,SAASlB,eAAiBnvG,KAAK6D,QAAQsrG,eAAiBnvG,KAAK6D,QAAQ26B,SAW9E70B,IAAK,OACL5E,MAAO,SAAcusC,GAEnB,GAAIigE,GAAUvxG,KAAKqwG,SAASmB,aACxBC,IAGJzxG,MAAKqwG,SAASqB,UAAY1xG,KAAKoV,KAC/BpV,KAAKqwG,SAASsB,QAAU3xG,KAAKmV,GAGzBnV,KAAK6D,QAAQkrG,OAAO35F,KAAKvE,WAAY,IACvC4gG,EAAUr8F,KAAOpV,KAAKqwG,SAASuB,aAAatgE,EAAK,OAAQigE,EAASvxG,KAAKsnE,SAAUtnE,KAAKoO,OAClFpO,KAAK6D,QAAQorG,sBAAuB,IAAOjvG,KAAKqwG,SAASqB,UAAYD,EAAUr8F,KAAKy8F,OAEtF7xG,KAAK6D,QAAQkrG,OAAO55F,GAAGtE,WAAY,IACrC4gG,EAAUt8F,GAAKnV,KAAKqwG,SAASuB,aAAatgE,EAAK,KAAMigE,EAASvxG,KAAKsnE,SAAUtnE,KAAKoO,OAC9EpO,KAAK6D,QAAQorG,sBAAuB,IAAOjvG,KAAKqwG,SAASsB,QAAUF,EAAUt8F,GAAG08F,OAIlF7xG,KAAK6D,QAAQkrG,OAAOx9F,OAAOV,WAAY,IACzC4gG,EAAUlgG,OAASvR,KAAKqwG,SAASuB,aAAatgE,EAAK,SAAUigE,EAASvxG,KAAKsnE,SAAUtnE,KAAKoO,QAI5FpO,KAAKqwG,SAASyB,SAASxgE,EAAKtxC,KAAKsnE,SAAUtnE,KAAKoO,MAAOmjG,GACvDvxG,KAAK+xG,WAAWzgE,EAAKmgE,GACrBzxG,KAAKgyG,UAAU1gE,EAAKigE,MAGtB5nG,IAAK,aACL5E,MAAO,SAAoBusC,EAAKmgE,GAC1BzxG,KAAK6D,QAAQkrG,OAAO35F,KAAKvE,WAAY,GACvC7Q,KAAKqwG,SAAS4B,cAAc3gE,EAAKtxC,KAAKsnE,SAAUtnE,KAAKoO,MAAOqjG,EAAUr8F,MAEpEpV,KAAK6D,QAAQkrG,OAAOx9F,OAAOV,WAAY,GACzC7Q,KAAKqwG,SAAS4B,cAAc3gE,EAAKtxC,KAAKsnE,SAAUtnE,KAAKoO,MAAOqjG,EAAUlgG,QAEpEvR,KAAK6D,QAAQkrG,OAAO55F,GAAGtE,WAAY,GACrC7Q,KAAKqwG,SAAS4B,cAAc3gE,EAAKtxC,KAAKsnE,SAAUtnE,KAAKoO,MAAOqjG,EAAUt8F,OAI1ExL,IAAK,YACL5E,MAAO,SAAmBusC,EAAKigE,GAC7B,GAA2BhrG,SAAvBvG,KAAK6D,QAAQq6B,MAAqB,CAEpC,GAAIg0E,GAAQlyG,KAAKoV,KACb+8F,EAAQnyG,KAAKmV,GACbmyD,EAAWtnE,KAAKoV,KAAKkyD,UAAYtnE,KAAKmV,GAAGmyD,UAAYtnE,KAAKsnE,QAC9D,IAAI4qC,EAAM7xG,IAAM8xG,EAAM9xG,GAAI,CACxBL,KAAKgnG,YAAYqB,aAAc,CAC/B,IAAItqE,GAAQ/9B,KAAKqwG,SAAS+B,SAAS,GAAKb,EACxCjgE,GAAI+5D,OAG4B,eAA5BrrG,KAAK6D,QAAQiuC,KAAK2wB,QACpBziE,KAAKgnG,YAAY4B,mBAAmBt3D,EAAKg2B,EAAUvpC,EAAMH,EAAGG,EAAM9c,GAClEqwB,EAAI+gE,UAAUt0E,EAAMH,EAAG59B,KAAKgnG,YAAY/oE,KAAKsqE,OAC7CvoG,KAAKsyG,yBAAyBhhE,IAIhCtxC,KAAKgnG,YAAYhrB,KAAK1qC,EAAKvT,EAAMH,EAAGG,EAAM9c,EAAGqmD,GAC7Ch2B,EAAIk6D,cACC,CAELxrG,KAAKgnG,YAAYqB,aAAc,CAC/B,IAAIzqE,GAAG3c,EACH20B,EAAS51C,KAAK6D,QAAQurG,iBACtB8C,GAAM7O,MAAM7kE,MAAQ0zE,EAAM7O,MAAM5kE,QAClCb,EAAIs0E,EAAMt0E,EAAwB,GAApBs0E,EAAM7O,MAAM7kE,MAC1Bvd,EAAIixF,EAAMjxF,EAAI20B,IAEdhY,EAAIs0E,EAAMt0E,EAAIgY,EACd30B,EAAIixF,EAAMjxF,EAAyB,GAArBixF,EAAM7O,MAAM5kE,QAE5BV,EAAQ/9B,KAAKuyG,eAAe30E,EAAG3c,EAAG20B,EAAQ,MAC1C51C,KAAKgnG,YAAYhrB,KAAK1qC,EAAKvT,EAAMH,EAAGG,EAAM9c,EAAGqmD,QAWnD39D,IAAK,oBACL5E,MAAO,SAA2Be,GAChC,GAAI9F,KAAKixG,UAAW,CAClB,GAAIh4D,GAAU,GACVu5D,EAAQxyG,KAAKoV,KAAKwoB,EAClB60E,EAAQzyG,KAAKoV,KAAK6L,EAClByxF,EAAM1yG,KAAKmV,GAAGyoB,EACd+0E,EAAM3yG,KAAKmV,GAAG8L,EACd2xF,EAAO9sG,EAAI6C,KACXkqG,EAAO/sG,EAAI+C,IAEXwsC,EAAOr1C,KAAKqwG,SAASyC,kBAAkBN,EAAOC,EAAOC,EAAKC,EAAKC,EAAMC,EAEzE,OAAc55D,GAAP5D,EAEP,OAAO,KAUX1rC,IAAK,2BACL5E,MAAO,SAAkCusC,GACvC,GAAIxH,GAAK9pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EAC3B4oB,EAAK7pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EAC3Bm1E,EAAiB9tG,KAAKsnD,MAAMziB,EAAID,IAGf,GAAjBkpE,GAA4B,EAALlpE,GAAUkpE,EAAiB,GAAU,EAALlpE,KACzDkpE,GAAkC9tG,KAAK6wC,IAGzCxE,EAAI0hE,OAAOD,MAabppG,IAAK,iBACL5E,MAAO,SAAwB64B,EAAG3c,EAAG20B,EAAQq9D,GAC3C,GAAIxoD,GAAqB,EAAbwoD,EAAiBhuG,KAAK6wC,EAClC,QACElY,EAAGA,EAAIgY,EAAS3wC,KAAKukC,IAAIihB,GACzBxpC,EAAGA,EAAI20B,EAAS3wC,KAAKokC,IAAIohB,OAI7B9gD,IAAK,SACL5E,MAAO,WACL/E,KAAKsnE,UAAW,KAGlB39D,IAAK,WACL5E,MAAO,WACL/E,KAAKsnE,UAAW,KAQlB39D,IAAK,UACL5E,MAAO,WACL,MAAO/E,MAAKqwG,SAASD,eAGvBzmG,IAAK,eACL5E,MAAO,SAAsB2iG,EAAeC,GAC1C,GAAIvhG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxFuK,EAAgBvK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF4J,GAAU,qBAAsB,KAAM,OAAQ,SAAU,aAAc,QAAS,qBAAsB,SAAU,OAAQ,UAAW,UAAW,UAAW,iBAAkB,oBAAqB,KAAM,QAAS,QAAS,QA4B3N,IAzBAtP,EAAKsG,oBAAoBgJ,EAAQy3F,EAAeC,EAAYvhG,GAE5DzF,EAAK+P,aAAag3F,EAAeC,EAAY,SAAUvhG,EAAewK,GACtEjQ,EAAK+P,aAAag3F,EAAeC,EAAY,SAAUvhG,EAAewK,GAE5CrK,SAAtBohG,EAAWoE,QAA8C,OAAtBpE,EAAWoE,OAChDrE,EAAcqE,OAASpE,EAAWoE,OACzB3lG,KAAkB,GAA8B,OAAtBuhG,EAAWoE,SAC9CrE,EAAcqE,OAAS3kG,OAAOgJ,OAAOQ,EAAcm7F,SAI1BxlG,SAAvBohG,EAAW3E,SAAgD,OAAvB2E,EAAW3E,SAClBz8F,SAA3BohG,EAAW3E,QAAQp+F,MACrB8iG,EAAc1E,QAAQp+F,IAAM+iG,EAAW3E,QAAQp+F,KAElB2B,SAA3BohG,EAAW3E,QAAQn+F,MACrB6iG,EAAc1E,QAAQn+F,IAAM8iG,EAAW3E,QAAQn+F,KAEjDlE,EAAK+P,aAAag3F,EAAc1E,QAAS2E,EAAW3E,QAAS,QAAS58F,EAAewK,EAAcoyF,UAC1F58F,KAAkB,GAA+B,OAAvBuhG,EAAW3E,UAC9C0E,EAAc1E,QAAU57F,OAAOgJ,OAAOQ,EAAcoyF,UAI5Bz8F,SAAtBohG,EAAWoH,QAA8C,OAAtBpH,EAAWoH,OAChD,GAAiC,gBAAtBpH,GAAWoH,OAAqB,CACzC,GAAIA,GAASpH,EAAWoH,OAAO53F,aACH,KAAxB43F,EAAOxnG,QAAQ,QACjBmgG,EAAcqH,OAAO55F,GAAGtE,SAAU,GAEJ,IAA5Bk+F,EAAOxnG,QAAQ,YACjBmgG,EAAcqH,OAAOx9F,OAAOV,SAAU,GAEV,IAA1Bk+F,EAAOxnG,QAAQ,UACjBmgG,EAAcqH,OAAO35F,KAAKvE,SAAU,OAEjC,CAAA,GAAiC,gBAAtB82F,GAAWoH,OAK3B,KAAM,IAAI/nG,OAAM,gGAAkGy7B,KAAKC,UAAUilE,EAAWoH,QAJ5IpuG,GAAK+P,aAAag3F,EAAcqH,OAAQpH,EAAWoH,OAAQ,KAAM3oG,EAAewK,EAAcm+F,QAC9FpuG,EAAK+P,aAAag3F,EAAcqH,OAAQpH,EAAWoH,OAAQ,SAAU3oG,EAAewK,EAAcm+F,QAClGpuG,EAAK+P,aAAag3F,EAAcqH,OAAQpH,EAAWoH,OAAQ,OAAQ3oG,EAAewK,EAAcm+F,YAIzF3oG,MAAkB,GAA8B,OAAtBuhG,EAAWoH,SAC9CrH,EAAcqH,OAAS3nG,OAAOgJ,OAAOQ,EAAcm+F,QAIrD,IAAyBxoG,SAArBohG,EAAWl7F,OAA4C,OAArBk7F,EAAWl7F,MAG/C,GADAi7F,EAAcj7F,MAAQ9L,EAAK0G,cAAeqgG,EAAcj7F,OAAO,GAC3D9L,EAAKuE,SAASyiG,EAAWl7F,OAC3Bi7F,EAAcj7F,MAAMA,MAAQk7F,EAAWl7F,MACvCi7F,EAAcj7F,MAAM0B,UAAYw5F,EAAWl7F,MAC3Ci7F,EAAcj7F,MAAM2B,MAAQu5F,EAAWl7F,MACvCi7F,EAAcj7F,MAAMw5C,SAAU,MACzB,CACL,GAAIitD,IAAgB,CACW3sG,UAA3BohG,EAAWl7F,MAAMA,QACnBi7F,EAAcj7F,MAAMA,MAAQk7F,EAAWl7F,MAAMA,MAAMymG,GAAgB,GAElC3sG,SAA/BohG,EAAWl7F,MAAM0B,YACnBu5F,EAAcj7F,MAAM0B,UAAYw5F,EAAWl7F,MAAM0B,UAAU+kG,GAAgB,GAE9C3sG,SAA3BohG,EAAWl7F,MAAM2B,QACnBs5F,EAAcj7F,MAAM2B,MAAQu5F,EAAWl7F,MAAM2B,MAAM8kG,GAAgB,GAEpC3sG,SAA7BohG,EAAWl7F,MAAMw5C,UACnByhD,EAAcj7F,MAAMw5C,QAAU0hD,EAAWl7F,MAAMw5C,SAEhB1/C,SAA7BohG,EAAWl7F,MAAMC,UACnBg7F,EAAcj7F,MAAMC,QAAUzH,KAAKL,IAAI,EAAGK,KAAKJ,IAAI,EAAG8iG,EAAWl7F,MAAMC,WAGxCnG,SAA7BohG,EAAWl7F,MAAMw5C,SAAyBitD,KAAkB,IAC9DxL,EAAcj7F,MAAMw5C,SAAU,OAGzB7/C,MAAkB,GAA6B,OAArBuhG,EAAWl7F,QAC9Ci7F,EAAcj7F,MAAQ9L,EAAK0P,aAAaO,EAAcnE,OAIhClG,UAApBohG,EAAW71D,MAA0C,OAApB61D,EAAW71D,KAC9CgzD,EAAc,WAAWpB,aAAagE,EAAc51D,KAAM61D,GACjDvhG,KAAkB,GAA4B,OAApBuhG,EAAW71D,OAC9C41D,EAAc51D,KAAOnxC,EAAK0P,aAAaO,EAAckhC,WAKpDi/D,IAGTnxG,GAAQ,WAAamxG,EACrBlxG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAc9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAdje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI8iG,GAAiB,WAAe,QAASC,GAAc1/F,EAAK3B,GAAK,GAAIshG,MAAeC,GAAK,EAAUtzF,GAAK,EAAWuzF,EAAK1hG,MAAW,KAAM,IAAK,GAAiC2hG,GAA7B3yF,EAAKnN,EAAI+/F,OAAOriD,cAAmBkiD,GAAME,EAAK3yF,EAAG+B,QAAQuiD,QAAoBkuC,EAAKvgG,KAAK0gG,EAAGnjG,QAAY0B,GAAKshG,EAAKzhG,SAAWG,GAA3DuhG,GAAK,IAAoE,MAAO9tB,GAAOxlE,GAAK,EAAMuzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAMzyF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMuzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU3/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAI+/F,OAAOriD,WAAY1+C,QAAOgB,GAAQ,MAAO0/F,GAAc1/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBiwE,EAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaG,EAAK8I,EAAKC,GAAqC,IAA9B,GAAI9I,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAASimG,EAAK7iD,EAAW2rD,EAAK5I,EAAW6I,CAAK9I,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAAhW,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B8+F,GAAM9+F,EAAQ4nG,EAAM3rD,EAAU4rD,EAAM7I,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQ3c8sG,EAA2BnzG,EAAoB,IAE/CozG,EAA4B18B,EAAuBy8B,GAEnDE,EAAkB,SAAWC,GAG/B,QAASD,GAAgB1vG,EAASs7C,EAAM6nD,GACtCjwB,EAAgB/2E,KAAMuzG,GAEtBrJ,EAAK9iG,OAAOsjG,eAAe6I,EAAgBtgG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GA+GxG,MApHA6C,GAAU0J,EAAiBC,GAc3Br8B,EAAao8B,IACX5pG,IAAK,QACL5E,MAAO,SAAeusC,EAAKmiE,GAEzB,GAAIC,GAAOD,EAAS,GAChBE,EAAOF,EAAS,EAGpBniE,GAAIa,YACJb,EAAIc,OAAOpyC,KAAK0xG,UAAU9zE,EAAG59B,KAAK0xG,UAAUzwF,GAG3B1a,SAAbktG,GAAqCltG,SAAXmtG,EAAK91E,EACjC0T,EAAIe,OAAOryC,KAAK2xG,QAAQ/zE,EAAG59B,KAAK2xG,QAAQ1wF,GAExCqwB,EAAIsiE,cAAcF,EAAK91E,EAAG81E,EAAKzyF,EAAG0yF,EAAK/1E,EAAG+1E,EAAK1yF,EAAGjhB,KAAK2xG,QAAQ/zE,EAAG59B,KAAK2xG,QAAQ1wF,GAGjFjhB,KAAKmrG,aAAa75D,GAClBA,EAAI5J,SACJ1nC,KAAKorG,cAAc95D,MAGrB3nC,IAAK,qBACL5E,MAAO,WACL,GAAI8kC,GAAK7pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EAC3BkM,EAAK9pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EAE3B4yF,EAAKttG,OACLutG,EAAKvtG,OACLwtG,EAAKxtG,OACLytG,EAAKztG,OACLgpG,EAAYvvG,KAAK6D,QAAQwrG,OAAOE,SAepC,QAZKtqG,KAAK8R,IAAI8yB,GAAM5kC,KAAK8R,IAAI+yB,IAAO9pC,KAAK6D,QAAQwrG,OAAOC,kBAAmB,GAA+C,eAAvCtvG,KAAK6D,QAAQwrG,OAAOC,iBAA2E,aAAvCtvG,KAAK6D,QAAQwrG,OAAOC,gBAC7JwE,EAAK9zG,KAAKoV,KAAK6L,EACf+yF,EAAKh0G,KAAKmV,GAAG8L,EACb4yF,EAAK7zG,KAAKoV,KAAKwoB,EAAI2xE,EAAY1lE,EAC/BkqE,EAAK/zG,KAAKmV,GAAGyoB,EAAI2xE,EAAY1lE,IAE7BiqE,EAAK9zG,KAAKoV,KAAK6L,EAAIsuF,EAAYzlE,EAC/BkqE,EAAKh0G,KAAKmV,GAAG8L,EAAIsuF,EAAYzlE,EAC7B+pE,EAAK7zG,KAAKoV,KAAKwoB,EACfm2E,EAAK/zG,KAAKmV,GAAGyoB,KAGLA,EAAGi2E,EAAI5yF,EAAG6yF,IAAQl2E,EAAGm2E,EAAI9yF,EAAG+yF,OAGxCrqG,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKi0G,wBAGdtqG,IAAK,sBACL5E,MAAO,SAA6BmvG,EAAU5iE,GAC5C,MAAOtxC,MAAKm0G,0BAA0BD,EAAU5iE,MAGlD3nC,IAAK,qBACL5E,MAAO,SAA4B8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAIC,GAAOjuG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKi0G,qBAAuB5tG,UAAU,GAEnGkuG,EAAQ1M,EAAeyM,EAAM,GAE7BZ,EAAOa,EAAM,GACbZ,EAAOY,EAAM,EAEjB,OAAOv0G,MAAKw0G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIX,EAAMC,MAWrEhqG,IAAK,WACL5E,MAAO,SAAkBkuG,GACvB,GAAIwB,GAAQpuG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKi0G,qBAAuB5tG,UAAU,GAEpGquG,EAAS7M,EAAe4M,EAAO,GAE/Bf,EAAOgB,EAAO,GACdf,EAAOe,EAAO,GAEd/kG,EAAIsjG,EACJ0B,IACJA,GAAI,GAAK1vG,KAAK8U,IAAI,EAAIpK,EAAG,GACzBglG,EAAI,GAAK,EAAIhlG,EAAI1K,KAAK8U,IAAI,EAAIpK,EAAG,GACjCglG,EAAI,GAAK,EAAI1vG,KAAK8U,IAAIpK,EAAG,IAAM,EAAIA,GACnCglG,EAAI,GAAK1vG,KAAK8U,IAAIpK,EAAG,EACrB,IAAIiuB,GAAI+2E,EAAI,GAAK30G,KAAK0xG,UAAU9zE,EAAI+2E,EAAI,GAAKjB,EAAK91E,EAAI+2E,EAAI,GAAKhB,EAAK/1E,EAAI+2E,EAAI,GAAK30G,KAAK2xG,QAAQ/zE,EAC1F3c,EAAI0zF,EAAI,GAAK30G,KAAK0xG,UAAUzwF,EAAI0zF,EAAI,GAAKjB,EAAKzyF,EAAI0zF,EAAI,GAAKhB,EAAK1yF,EAAI0zF,EAAI,GAAK30G,KAAK2xG,QAAQ1wF,CAE9F,QAAS2c,EAAGA,EAAG3c,EAAGA,OAIfsyF,GACND,EAA0B,WAE7B1zG,GAAQ,WAAa2zG,EACrB1zG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcquG,EAAmB10G,EAAoB,IAEvC20G,EAAmBj+B,EAAuBg+B,GAE1CE,EAAsB,SAAWC,GAGnC,QAASD,GAAoBjxG,EAASs7C,EAAM6nD,GAC1CjwB,EAAgB/2E,KAAM80G,GAEtB5K,EAAK9iG,OAAOsjG,eAAeoK,EAAoB7hG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAkD5G,MAvDA6C,GAAUiL,EAAqBC,GAsB/B59B,EAAa29B,IACXnrG,IAAK,2BACL5E,MAAO,SAAkC8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIX,EAAMC,GAErE,GAAIqB,GAAc,IACd7kE,EAAW5pC,OACXE,EAAIF,OACJoJ,EAAIpJ,OACJq3B,EAAIr3B,OACJ0a,EAAI1a,OACJ0uG,EAAQpB,EACRqB,EAAQpB,EACRa,GAAO,EAAG,EAAG,EAAG,EACpB,KAAKluG,EAAI,EAAO,GAAJA,EAAQA,IAClBkJ,EAAI,GAAMlJ,EACVkuG,EAAI,GAAK1vG,KAAK8U,IAAI,EAAIpK,EAAG,GACzBglG,EAAI,GAAK,EAAIhlG,EAAI1K,KAAK8U,IAAI,EAAIpK,EAAG,GACjCglG,EAAI,GAAK,EAAI1vG,KAAK8U,IAAIpK,EAAG,IAAM,EAAIA,GACnCglG,EAAI,GAAK1vG,KAAK8U,IAAIpK,EAAG,GACrBiuB,EAAI+2E,EAAI,GAAKd,EAAKc,EAAI,GAAKjB,EAAK91E,EAAI+2E,EAAI,GAAKhB,EAAK/1E,EAAI+2E,EAAI,GAAKZ,EAC/D9yF,EAAI0zF,EAAI,GAAKb,EAAKa,EAAI,GAAKjB,EAAKzyF,EAAI0zF,EAAI,GAAKhB,EAAK1yF,EAAI0zF,EAAI,GAAKX,EAC3DvtG,EAAI,IACN0pC,EAAWnwC,KAAKm1G,mBAAmBF,EAAOC,EAAOt3E,EAAG3c,EAAGmzF,EAAIC,GAC3DW,EAAyBA,EAAX7kE,EAAyBA,EAAW6kE,GAEpDC,EAAQr3E,EACRs3E,EAAQj0F,CAGV,OAAO+zF,OAIJF,GACND,EAAiB,WAEpBj1G,GAAQ,WAAak1G,EACrBj1G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaE,EAAKC,EAAK8I,GAAqC,IAA9B,GAAI7I,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAASgmG,EAAK5iD,EAAW6iD,EAAKE,EAAW4I,CAAK7I,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAAhW,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAM7+F,EAAQ8+F,EAAM7iD,EAAU2rD,EAAM5I,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQ3c6uG,EAAal1G,EAAoB,IAEjCm1G,EAAaz+B,EAAuBw+B,GAEpCE,EAAiB,SAAWC,GAG9B,QAASD,GAAezxG,EAASs7C,EAAM6nD,GACrCjwB,EAAgB/2E,KAAMs1G,GAEtBpL,EAAK9iG,OAAOsjG,eAAe4K,EAAeriG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GA2GvG,MAhHA6C,GAAUyL,EAAgBC,GAsB1Bp+B,EAAam+B,IACX3rG,IAAK,4BACL5E,MAAO,SAAmCmvG,EAAU5iE,GAClD,GAMI/a,GAAKk0B,EAAO48C,EAAkBmO,EAAiBC,EAN/ClE,EAAUlrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKi0G,qBAAuB5tG,UAAU,GAEtG8K,EAAgB,GAChBC,EAAY,EACZC,EAAM,EACNC,EAAO,EAEPwiB,EAAY,GACZ8H,EAAO57B,KAAKmV,GACZC,GAAO,CAMX,KALI8+F,EAAS7zG,KAAOL,KAAKoV,KAAK/U,KAC5Bu7B,EAAO57B,KAAKoV,KACZA,GAAO,GAGK9D,GAAPD,GAA2BF,EAAZC,GAA2B,CAC/C,GAAIG,GAAwB,IAAdF,EAAMC,EAOpB,IALAilB,EAAMv2B,KAAKoyG,SAAS7gG,EAAQggG,GAC5B9mD,EAAQxlD,KAAKsnD,MAAM3wB,EAAK3a,EAAIsV,EAAItV,EAAG2a,EAAKgC,EAAIrH,EAAIqH,GAChDypE,EAAmBzrE,EAAKyrE,iBAAiB/1D,EAAKmZ,GAC9C+qD,EAAkBvwG,KAAKu0C,KAAKv0C,KAAK8U,IAAIwc,EAAIqH,EAAIhC,EAAKgC,EAAG,GAAK34B,KAAK8U,IAAIwc,EAAItV,EAAI2a,EAAK3a,EAAG,IACnFw0F,EAAapO,EAAmBmO,EAC5BvwG,KAAK8R,IAAI0+F,GAAc3hF,EACzB,KACsB,GAAb2hF,EAEHrgG,KAAS,EACX/D,EAAME,EAEND,EAAOC,EAGL6D,KAAS,EACX9D,EAAOC,EAEPF,EAAME,EAIZH,IAIF,MAFAmlB,GAAI5mB,EAAI4B,EAEDglB,KAgBT5sB,IAAK,2BACL5E,MAAO,SAAkC8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,GAE/D,GAAIV,GAAc,IACd7kE,EAAW5pC,OACXE,EAAIF,OACJoJ,EAAIpJ,OACJq3B,EAAIr3B,OACJ0a,EAAI1a,OACJ0uG,EAAQpB,EACRqB,EAAQpB,CACZ,KAAKrtG,EAAI,EAAO,GAAJA,EAAQA,IAClBkJ,EAAI,GAAMlJ,EACVm3B,EAAI34B,KAAK8U,IAAI,EAAIpK,EAAG,GAAKkkG,EAAK,EAAIlkG,GAAK,EAAIA,GAAK+lG,EAAI93E,EAAI34B,KAAK8U,IAAIpK,EAAG,GAAKokG,EACzE9yF,EAAIhc,KAAK8U,IAAI,EAAIpK,EAAG,GAAKmkG,EAAK,EAAInkG,GAAK,EAAIA,GAAK+lG,EAAIz0F,EAAIhc,KAAK8U,IAAIpK,EAAG,GAAKqkG,EACrEvtG,EAAI,IACN0pC,EAAWnwC,KAAKm1G,mBAAmBF,EAAOC,EAAOt3E,EAAG3c,EAAGmzF,EAAIC,GAC3DW,EAAyBA,EAAX7kE,EAAyBA,EAAW6kE,GAEpDC,EAAQr3E,EACRs3E,EAAQj0F,CAGV,OAAO+zF,OAIJM,GACND,EAAW,WAEdz1G,GAAQ,WAAa01G,EACrBz1G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI8iG,GAAiB,WAAe,QAASC,GAAc1/F,EAAK3B,GAAK,GAAIshG,MAAeC,GAAK,EAAUtzF,GAAK,EAAWuzF,EAAK1hG,MAAW,KAAM,IAAK,GAAiC2hG,GAA7B3yF,EAAKnN,EAAI+/F,OAAOriD,cAAmBkiD,GAAME,EAAK3yF,EAAG+B,QAAQuiD,QAAoBkuC,EAAKvgG,KAAK0gG,EAAGnjG,QAAY0B,GAAKshG,EAAKzhG,SAAWG,GAA3DuhG,GAAK,IAAoE,MAAO9tB,GAAOxlE,GAAK,EAAMuzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAMzyF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMuzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU3/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAI+/F,OAAOriD,WAAY1+C,QAAOgB,GAAQ,MAAO0/F,GAAc1/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBiwE,EAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBt2E,EAAOT,EAAoB,GAE3By1G,EAAW,WACb,QAASA,GAAS9xG,EAASs7C,EAAM6nD,GAC/BjwB,EAAgB/2E,KAAM21G,GAEtB31G,KAAKm/C,KAAOA,EACZn/C,KAAKgnG,YAAcA,EACnBhnG,KAAK6D,WACL7D,KAAKg/B,WAAWn7B,GAChB7D,KAAKswG,YAAa,EAClBtwG,KAAKyM,SACLzM,KAAKmvG,eAAiB,EACtBnvG,KAAKkvG,WAAa,IAClBlvG,KAAK0xG,UAAY1xG,KAAKoV,KACtBpV,KAAK2xG,QAAU3xG,KAAKmV,GAsiBtB,MAniBAgiE,GAAaw+B,IACXhsG,IAAK,UACL5E,MAAO,WACL/E,KAAKoV,KAAOpV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQsR,OAGzCxL,IAAK,UACL5E,MAAO,WACL,OAAO,KAGT4E,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,EACf7D,KAAKoV,KAAOpV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQsR,IACvCnV,KAAKK,GAAKL,KAAK6D,QAAQxD,MAWzBsJ,IAAK,WACL5E,MAAO,SAAkBusC,EAAKg2B,EAAUl5D,EAAOmjG,GAE7CjgE,EAAIY,YAAclyC,KAAK41G,SAAStkE,EAAKg2B,EAAUl5D,GAC/CkjC,EAAIO,UAAY7xC,KAAK61G,aAAavuC,EAAUl5D,GAExCpO,KAAK6D,QAAQkoG,UAAW,EAC1B/rG,KAAK81G,gBAAgBxkE,EAAKigE,GAE1BvxG,KAAK+1G,UAAUzkE,EAAKigE,MAIxB5nG,IAAK,YACL5E,MAAO,SAAmBusC,EAAKigE,EAASG,EAAWC,GACjD,GAAI3xG,KAAKoV,MAAQpV,KAAKmV,GAEpBnV,KAAKg2G,MAAM1kE,EAAKigE,EAASG,EAAWC,OAC/B,CACL,GAAIsE,GAAkBj2G,KAAKk2G,eAAe5kE,GAEtC6kE,EAAmBtO,EAAeoO,EAAiB,GAEnDr4E,EAAIu4E,EAAiB,GACrBl1F,EAAIk1F,EAAiB,GACrBvgE,EAASugE,EAAiB,EAE9Bn2G,MAAKo2G,QAAQ9kE,EAAK1T,EAAG3c,EAAG20B,OAI5BjsC,IAAK,kBACL5E,MAAO,SAAyBusC,EAAKigE,EAASG,EAAWC,GACvDrgE,EAAI6D,QAAU,OACd,IAAIkhE,IAAW,EAAG,EAMlB,IALIvvG,MAAMC,QAAQ/G,KAAK6D,QAAQkoG,WAAY,IACzCsK,EAAUr2G,KAAK6D,QAAQkoG,QAIDxlG,SAApB+qC,EAAIw6D,YAA2B,CAQjC,GAPAx6D,EAAI+5D,OAGJ/5D,EAAIw6D,YAAYuK,GAChB/kE,EAAIglE,eAAiB,EAGjBt2G,KAAKoV,MAAQpV,KAAKmV,GAEpBnV,KAAKg2G,MAAM1kE,EAAKigE,OACX,CACL,GAAIgF,GAAkBv2G,KAAKk2G,eAAe5kE,GAEtCklE,EAAmB3O,EAAe0O,EAAiB,GAEnD34E,EAAI44E,EAAiB,GACrBv1F,EAAIu1F,EAAiB,GACrB5gE,EAAS4gE,EAAiB,EAE9Bx2G,MAAKo2G,QAAQ9kE,EAAK1T,EAAG3c,EAAG20B,GAI1BtE,EAAIw6D,aAAa,IACjBx6D,EAAIglE,eAAiB,EACrBhlE,EAAIk6D,cACC,CAEL,GAAIxrG,KAAKoV,MAAQpV,KAAKmV,GAEpBm8B,EAAImlE,WAAWz2G,KAAKoV,KAAKwoB,EAAG59B,KAAKoV,KAAK6L,EAAGjhB,KAAKmV,GAAGyoB,EAAG59B,KAAKmV,GAAG8L,EAAGo1F,OAC1D,CACL,GAAIK,GAAkB12G,KAAKk2G,eAAe5kE,GAEtCqlE,EAAmB9O,EAAe6O,EAAiB,GAEnD94E,EAAI+4E,EAAiB,GACrB11F,EAAI01F,EAAiB,GACrB/gE,EAAS+gE,EAAiB,EAE9B32G,MAAKo2G,QAAQ9kE,EAAK1T,EAAG3c,EAAG20B,GAG1B51C,KAAKmrG,aAAa75D,GAElBA,EAAI5J,SAGJ1nC,KAAKorG,cAAc95D,OAIvB3nC,IAAK,qBACL5E,MAAO,SAA4BmvG,EAAU5iE,EAAKztC,GAChD,MAAI7D,MAAKoV,MAAQpV,KAAKmV,GACbnV,KAAK42G,oBAAoB1C,EAAU5iE,EAAKztC,GAExC7D,KAAK62G,0BAA0B3C,EAAU5iE,EAAKztC,MAIzD8F,IAAK,sBACL5E,MAAO,SAA6BusC,GAClC,GAAIl8B,MACAD,IACJ,IAAInV,KAAKoV,MAAQpV,KAAKmV,GACpBC,EAAOpV,KAAK42G,oBAAoB52G,KAAKoV,KAAMk8B,GAC3Cn8B,EAAKnV,KAAK42G,oBAAoB52G,KAAKmV,GAAIm8B,OAClC,CACL,GAAIwlE,GAAkB92G,KAAKk2G,eAAe5kE,GAEtCylE,EAAmBlP,EAAeiP,EAAiB,GAEnDl5E,EAAIm5E,EAAiB,GACrB91F,EAAI81F,EAAiB,EACZA,GAAiB,EAE9B3hG,GAAOpV,KAAK62G,0BAA0B72G,KAAKoV,KAAMk8B,GAAO1T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,IAAMC,KAAM,GAAKoZ,UAAW,KACrGvV,EAAKnV,KAAK62G,0BAA0B72G,KAAKoV,KAAMk8B,GAAO1T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,GAAKC,KAAM,GAAKoZ,UAAW,IAEpG,OAAStV,KAAMA,EAAMD,GAAIA,MAG3BxL,IAAK,iBACL5E,MAAO,SAAwBusC,GAC7B,GAAI1T,GAAIr3B,OACJ0a,EAAI1a,OACJq1B,EAAO57B,KAAKoV,KACZwgC,EAAS51C,KAAK6D,QAAQurG,iBAgB1B,OAdY7oG,UAAR+qC,GACuB/qC,SAArBq1B,EAAKynE,MAAM7kE,OACb5C,EAAKynE,MAAMoE,OAAOn2D,GAKlB1V,EAAKynE,MAAM7kE,MAAQ5C,EAAKynE,MAAM5kE,QAChCb,EAAIhC,EAAKgC,EAAuB,GAAnBhC,EAAKynE,MAAM7kE,MACxBvd,EAAI2a,EAAK3a,EAAI20B,IAEbhY,EAAIhC,EAAKgC,EAAIgY,EACb30B,EAAI2a,EAAK3a,EAAwB,GAApB2a,EAAKynE,MAAM5kE,SAElBb,EAAG3c,EAAG20B,MAahBjsC,IAAK,iBACL5E,MAAO,SAAwB64B,EAAG3c,EAAG20B,EAAQq9D,GAC3C,GAAIxoD,GAAqB,EAAbwoD,EAAiBhuG,KAAK6wC,EAClC,QACElY,EAAGA,EAAIgY,EAAS3wC,KAAKukC,IAAIihB,GACzBxpC,EAAGA,EAAI20B,EAAS3wC,KAAKokC,IAAIohB,OAa7B9gD,IAAK,4BACL5E,MAAO,SAAmC62B,EAAM0V,EAAKztC,GAkBnD,IAjBA,GAAI+5B,GAAI/5B,EAAQ+5B,EACZ3c,EAAIpd,EAAQod,EACZ5P,EAAMxN,EAAQwN,IACdC,EAAOzN,EAAQyN,KACfoZ,EAAY7mB,EAAQ6mB,UAEpBvZ,EAAgB,GAChBC,EAAY,EACZwkC,EAAS51C,KAAK6D,QAAQurG,kBACtB74E,EAAMhwB,OACNkkD,EAAQlkD,OACR8gG,EAAmB9gG,OACnBivG,EAAkBjvG,OAClBkvG,EAAalvG,OACbutB,EAAY,IACZviB,EAAwB,IAAdF,EAAMC,GAENA,GAAPD,GAA2BF,EAAZC,IACpBG,EAAwB,IAAdF,EAAMC,GAEhBilB,EAAMv2B,KAAKuyG,eAAe30E,EAAG3c,EAAG20B,EAAQrkC,GACxCk5C,EAAQxlD,KAAKsnD,MAAM3wB,EAAK3a,EAAIsV,EAAItV,EAAG2a,EAAKgC,EAAIrH,EAAIqH,GAChDypE,EAAmBzrE,EAAKyrE,iBAAiB/1D,EAAKmZ,GAC9C+qD,EAAkBvwG,KAAKu0C,KAAKv0C,KAAK8U,IAAIwc,EAAIqH,EAAIhC,EAAKgC,EAAG,GAAK34B,KAAK8U,IAAIwc,EAAItV,EAAI2a,EAAK3a,EAAG,IACnFw0F,EAAapO,EAAmBmO,IAC5BvwG,KAAK8R,IAAI0+F,GAAc3hF,KAEhB2hF,EAAa,EAEhB/qF,EAAY,EACdrZ,EAAME,EAEND,EAAOC,EAGLmZ,EAAY,EACdpZ,EAAOC,EAEPF,EAAME,EAGZH,GAIF,OAFAmlB,GAAI5mB,EAAI4B,EAEDglB,KAUT5sB,IAAK,eACL5E,MAAO,SAAsBuiE,EAAUl5D,GACrC,MAAIk5D,MAAa,EACRriE,KAAKJ,IAAI7E,KAAKmvG,eAAgB,GAAMnvG,KAAKm/C,KAAKw8C,KAAK32F,OAEtDoJ,KAAU,EACLnJ,KAAKJ,IAAI7E,KAAKkvG,WAAY,GAAMlvG,KAAKm/C,KAAKw8C,KAAK32F,OAE/CC,KAAKJ,IAAI7E,KAAK6D,QAAQ26B,MAAO,GAAMx+B,KAAKm/C,KAAKw8C,KAAK32F,UAK/D2E,IAAK,WACL5E,MAAO,SAAkBusC,EAAKg2B,EAAUl5D,GACtC,GAAI4oG,GAAeh3G,KAAK6D,QAAQ4I,KAChC,IAAIuqG,EAAa/wD,WAAY,EAAO,CAElC,GAA6B,SAAzB+wD,EAAa/wD,SAAsBjmD,KAAKoV,KAAK/U,KAAOL,KAAKmV,GAAG9U,GAAI,CAClE,GAAI42G,GAAM3lE,EAAI4lE,qBAAqBl3G,KAAKoV,KAAKwoB,EAAG59B,KAAKoV,KAAK6L,EAAGjhB,KAAKmV,GAAGyoB,EAAG59B,KAAKmV,GAAG8L,GAC5Ek2F,EAAY5wG,OACZ6wG,EAAU7wG,MAgBd,OAfA4wG,GAAYn3G,KAAKoV,KAAKvR,QAAQ4I,MAAM0B,UAAUD,OAC9CkpG,EAAUp3G,KAAKmV,GAAGtR,QAAQ4I,MAAM0B,UAAUD,OAEtClO,KAAKoV,KAAKkyD,YAAa,GAAStnE,KAAKmV,GAAGmyD,YAAa,GACvD6vC,EAAYx2G,EAAK6L,gBAAgBxM,KAAKoV,KAAKvR,QAAQ4I,MAAMyB,OAAQlO,KAAK6D,QAAQ4I,MAAMC,SACpF0qG,EAAUz2G,EAAK6L,gBAAgBxM,KAAKmV,GAAGtR,QAAQ4I,MAAMyB,OAAQlO,KAAK6D,QAAQ4I,MAAMC,UACvE1M,KAAKoV,KAAKkyD,YAAa,GAAQtnE,KAAKmV,GAAGmyD,YAAa,EAC7D8vC,EAAUp3G,KAAKmV,GAAGtR,QAAQ4I,MAAMyB,OACvBlO,KAAKoV,KAAKkyD,YAAa,GAAStnE,KAAKmV,GAAGmyD,YAAa,IAC9D6vC,EAAYn3G,KAAKoV,KAAKvR,QAAQ4I,MAAMyB,QAEtC+oG,EAAII,aAAa,EAAGF,GACpBF,EAAII,aAAa,EAAGD,GAGbH,EAGLj3G,KAAKswG,cAAe,IACO,OAAzB0G,EAAa/wD,SACfjmD,KAAKyM,MAAM0B,UAAYnO,KAAKmV,GAAGtR,QAAQ4I,MAAM0B,UAAUD,OACvDlO,KAAKyM,MAAM2B,MAAQpO,KAAKmV,GAAGtR,QAAQ4I,MAAM2B,MAAMF,OAC/ClO,KAAKyM,MAAMA,MAAQ9L,EAAK6L,gBAAgBxM,KAAKmV,GAAGtR,QAAQ4I,MAAMyB,OAAQ8oG,EAAatqG,WAGnF1M,KAAKyM,MAAM0B,UAAYnO,KAAKoV,KAAKvR,QAAQ4I,MAAM0B,UAAUD,OACzDlO,KAAKyM,MAAM2B,MAAQpO,KAAKoV,KAAKvR,QAAQ4I,MAAM2B,MAAMF,OACjDlO,KAAKyM,MAAMA,MAAQ9L,EAAK6L,gBAAgBxM,KAAKoV,KAAKvR,QAAQ4I,MAAMyB,OAAQ8oG,EAAatqG,eAGhF1M,MAAKswG,cAAe,IAC7BtwG,KAAKyM,MAAM0B,UAAY6oG,EAAa7oG,UACpCnO,KAAKyM,MAAM2B,MAAQ4oG,EAAa5oG,MAChCpO,KAAKyM,MAAMA,MAAQ9L,EAAK6L,gBAAgBwqG,EAAavqG,MAAOuqG,EAAatqG,SAM3E,OAFA1M,MAAKswG,YAAa,EAEdhpC,KAAa,EACRtnE,KAAKyM,MAAM0B,UACTC,KAAU,EACZpO,KAAKyM,MAAM2B,MAEXpO,KAAKyM,MAAMA,SAatB9C,IAAK,UACL5E,MAAO,SAAiBusC,EAAK1T,EAAG3c,EAAG20B,GAEjC51C,KAAKmrG,aAAa75D,GAGlBA,EAAIa,YACJb,EAAIuE,IAAIjY,EAAG3c,EAAG20B,EAAQ,EAAG,EAAI3wC,KAAK6wC,IAAI,GACtCxE,EAAI5J,SAGJ1nC,KAAKorG,cAAc95D,MAgBrB3nC,IAAK,oBACL5E,MAAO,SAA2B8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,GAExD,GAAI1qG,GAAc,CAClB,IAAIhL,KAAKoV,MAAQpV,KAAKmV,GACpBnK,EAAchL,KAAKs3G,mBAAmBzD,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,OACzD,CACL,GAAI6B,GAAkBv3G,KAAKk2G,iBAEvBsB,EAAmB3P,EAAe0P,EAAiB,GAEnD35E,EAAI45E,EAAiB,GACrBv2F,EAAIu2F,EAAiB,GACrB5hE,EAAS4hE,EAAiB,GAE1B3tE,EAAKjM,EAAIw2E,EACTtqE,EAAK7oB,EAAIozF,CACbrpG,GAAc/F,KAAK8R,IAAI9R,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAAM8L,GAGxD,MAAI51C,MAAKgnG,YAAY/oE,KAAKt1B,KAAOyrG,GAAMp0G,KAAKgnG,YAAY/oE,KAAKt1B,KAAO3I,KAAKgnG,YAAY/oE,KAAKO,MAAQ41E,GAAMp0G,KAAKgnG,YAAY/oE,KAAKp1B,IAAMwrG,GAAMr0G,KAAKgnG,YAAY/oE,KAAKp1B,IAAM7I,KAAKgnG,YAAY/oE,KAAKQ,OAAS41E,EAC5L,EAEArpG,KAIXrB,IAAK,qBACL5E,MAAO,SAA4B8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAIoD,GAAK1D,EAAKF,EACV6D,EAAK1D,EAAKF,EACV6D,EAAYF,EAAKA,EAAKC,EAAKA,EAC3BE,IAAMxD,EAAKP,GAAM4D,GAAMpD,EAAKP,GAAM4D,GAAMC,CAExCC,GAAI,EACNA,EAAI,EACS,EAAJA,IACTA,EAAI,EAGN,IAAIh6E,GAAIi2E,EAAK+D,EAAIH,EACbx2F,EAAI6yF,EAAK8D,EAAIF,EACb7tE,EAAKjM,EAAIw2E,EACTtqE,EAAK7oB,EAAIozF,CAQb,OAAOpvG,MAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,MAUlCngC,IAAK,eACL5E,MAAO,SAAsBusC,EAAK7C,EAAU8iE,EAASjqC,EAAUl5D,GAE7D,GAAIq8C,GAAQlkD,OACRsxG,EAAatxG,OACb2rG,EAAQ3rG,OACR4rG,EAAQ5rG,OACRuxG,EAAcvxG,OACdyoG,EAAczoG,OACdsrC,EAAY7xC,KAAK61G,aAAavuC,EAAUl5D,EAmB5C,IAjBiB,SAAbqgC,GACFyjE,EAAQlyG,KAAKoV,KACb+8F,EAAQnyG,KAAKmV,GACb2iG,EAAc,GACd9I,EAAchvG,KAAK6D,QAAQkrG,OAAO35F,KAAK45F,aACjB,OAAbvgE,GACTyjE,EAAQlyG,KAAKmV,GACbg9F,EAAQnyG,KAAKoV,KACb0iG,GAAe,GACf9I,EAAchvG,KAAK6D,QAAQkrG,OAAO55F,GAAG65F,cAErCkD,EAAQlyG,KAAKmV,GACbg9F,EAAQnyG,KAAKoV,KACb45F,EAAchvG,KAAK6D,QAAQkrG,OAAOx9F,OAAOy9F,aAIvCkD,GAASC,EACX,GAAiB,WAAb1jE,EAEF,GAAIzuC,KAAK6D,QAAQwrG,OAAOx+F,WAAY,EAAM,CACxCgnG,EAAa73G,KAAK+3G,mBAAmB7F,EAAO5gE,GAAOokE,IAAKnE,GACxD,IAAIyG,GAAWh4G,KAAKoyG,SAASntG,KAAKJ,IAAI,EAAKI,KAAKL,IAAI,EAAKizG,EAAWloG,EAAImoG,IAAevG,EACvF9mD,GAAQxlD,KAAKsnD,MAAMsrD,EAAW52F,EAAI+2F,EAAS/2F,EAAG42F,EAAWj6E,EAAIo6E,EAASp6E,OAEtE6sB,GAAQxlD,KAAKsnD,MAAM2lD,EAAMjxF,EAAIkxF,EAAMlxF,EAAGixF,EAAMt0E,EAAIu0E,EAAMv0E,GACtDi6E,EAAa73G,KAAK+3G,mBAAmB7F,EAAO5gE,OAG9CmZ,GAAQxlD,KAAKsnD,MAAM2lD,EAAMjxF,EAAIkxF,EAAMlxF,EAAGixF,EAAMt0E,EAAIu0E,EAAMv0E,GACtDi6E,EAAa73G,KAAKoyG,SAAS,GAAKb,OAE7B,CACH,GAAI0G,GAAkBj4G,KAAKk2G,eAAe5kE,GAEtC4mE,EAAmBrQ,EAAeoQ,EAAiB,GAEnDr6E,EAAIs6E,EAAiB,GACrBj3F,EAAIi3F,EAAiB,GACrBtiE,EAASsiE,EAAiB,EAEb,UAAbzpE,GACFopE,EAAa73G,KAAK+3G,mBAAmB/3G,KAAKoV,KAAMk8B,GAAO1T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,IAAMC,KAAM,GAAKoZ,UAAW,KACpG+/B,EAAuB,GAAfotD,EAAWloG,EAAS1K,KAAK6wC,GAAK,IAAM7wC,KAAK6wC,GAAK,GAAM7wC,KAAK6wC,IAC3C,OAAbrH,GACTopE,EAAa73G,KAAK+3G,mBAAmB/3G,KAAKoV,KAAMk8B,GAAO1T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,GAAKC,KAAM,EAAKoZ,UAAW,IACnG+/B,EAAuB,GAAfotD,EAAWloG,EAAS1K,KAAK6wC,GAAK,IAAM7wC,KAAK6wC,GAAK,IAAM7wC,KAAK6wC,KAEjE+hE,EAAa73G,KAAKuyG,eAAe30E,EAAG3c,EAAG20B,EAAQ,MAC/C6U,EAAQ,oBAId,GAAInkD,GAAS,GAAK0oG,EAAc,EAAIn9D,EAEhCsmE,EAAKN,EAAWj6E,EAAa,GAATt3B,EAAerB,KAAKukC,IAAIihB,GAC5C2tD,EAAKP,EAAW52F,EAAa,GAAT3a,EAAerB,KAAKokC,IAAIohB,GAC5C4tD,GAAcz6E,EAAGu6E,EAAIl3F,EAAGm3F,EAE5B,QAASr6E,MAAO85E,EAAYhG,KAAMwG,EAAW5tD,MAAOA,EAAOnkD,OAAQA,MAWrEqD,IAAK,gBACL5E,MAAO,SAAuBusC,EAAKg2B,EAAUl5D,EAAOqjG,GAElDngE,EAAIY,YAAclyC,KAAK41G,SAAStkE,EAAKg2B,EAAUl5D,GAC/CkjC,EAAIiB,UAAYjB,EAAIY,YACpBZ,EAAIO,UAAY7xC,KAAK61G,aAAavuC,EAAUl5D,GAG5CkjC,EAAIgnE,MAAM7G,EAAU1zE,MAAMH,EAAG6zE,EAAU1zE,MAAM9c,EAAGwwF,EAAUhnD,MAAOgnD,EAAUnrG,QAG3EtG,KAAKmrG,aAAa75D,GAClBA,EAAI7J,OAEJznC,KAAKorG,cAAc95D,MAGrB3nC,IAAK,eACL5E,MAAO,SAAsBusC,GACvBtxC,KAAK6D,QAAQu/F,OAAOvyF,WAAY,IAClCygC,EAAIo6D,YAAc1rG,KAAK6D,QAAQu/F,OAAO32F,MACtC6kC,EAAIq6D,WAAa3rG,KAAK6D,QAAQu/F,OAAOnlE,KACrCqT,EAAIs6D,cAAgB5rG,KAAK6D,QAAQu/F,OAAOxlE,EACxC0T,EAAIu6D,cAAgB7rG,KAAK6D,QAAQu/F,OAAOniF,MAI5CtX,IAAK,gBACL5E,MAAO,SAAuBusC,GACxBtxC,KAAK6D,QAAQu/F,OAAOvyF,WAAY,IAClCygC,EAAIo6D,YAAc,gBAClBp6D,EAAIq6D,WAAa,EACjBr6D,EAAIs6D,cAAgB,EACpBt6D,EAAIu6D,cAAgB,OAKnB8J,IAGT/1G,GAAQ,WAAa+1G,EACrB91G,EAAOD,QAAUA,EAAQ,YAMrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaE,EAAKC,EAAK8I,GAAqC,IAA9B,GAAI7I,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAASgmG,EAAK5iD,EAAW6iD,EAAKE,EAAW4I,CAAK7I,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAAhW,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAM7+F,EAAQ8+F,EAAM7iD,EAAU2rD,EAAM5I,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQ3cgyG,EAAsBr4G,EAAoB,IAE1Cs4G,EAAuB5hC,EAAuB2hC,GAE9CE,EAAoB,SAAW1D,GAGjC,QAAS0D,GAAkB50G,EAASs7C,EAAM6nD,GACxC,GAAI/kD,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAMy4G,GAGtBvO,EAAK9iG,OAAOsjG,eAAe+N,EAAkBxlG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GACxGhnG,KAAK04G,eAAiB,WACpBz2D,EAAM02D,sBAER34G,KAAKm/C,KAAKE,QAAQjgB,GAAG,yBAA0Bp/B,KAAK04G,gBA4JtD,MAxKA7O,GAAU4O,EAAmB1D,GAe7B59B,EAAashC,IACX9uG,IAAK,aACL5E,MAAO,SAAoBlB,GAEzB,GAAI+0G,IAAgB,CAChB54G,MAAK6D,QAAQo4E,UAAYp4E,EAAQo4E,UACnC28B,GAAgB,GAIlB54G,KAAK6D,QAAUA,EACf7D,KAAKK,GAAKL,KAAK6D,QAAQxD,GACvBL,KAAKoV,KAAOpV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQsR,IAGvCnV,KAAK64G,mBACL74G,KAAKmwG,UAGDyI,KAAkB,IACpB54G,KAAK01G,IAAI12E,YAAai9C,QAASj8E,KAAK6D,QAAQo4E,UAC5Cj8E,KAAK24G,yBAIThvG,IAAK,UACL5E,MAAO,WACL/E,KAAKoV,KAAOpV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKm/C,KAAKu7C,MAAM16F,KAAK6D,QAAQsR,IACrB5O,SAAdvG,KAAKoV,MAAkC7O,SAAZvG,KAAKmV,IAAoBnV,KAAK6D,QAAQo4E,WAAY,EAC/Ej8E,KAAK01G,IAAI12E,YAAai9C,SAAS,IAG3Bj8E,KAAKoV,KAAK/U,KAAOL,KAAKmV,GAAG9U,GAC3BL,KAAK01G,IAAI12E,YAAai9C,SAAS,IAE/Bj8E,KAAK01G,IAAI12E,YAAai9C,SAAS,OAUrCtyE,IAAK,UACL5E,MAAO,WAEL,MADA/E,MAAKm/C,KAAKE,QAAQ9f,IAAI,yBAA0Bv/B,KAAK04G,gBACpCnyG,SAAbvG,KAAK01G,WACA11G,MAAKm/C,KAAKu7C,MAAM16F,KAAK01G,IAAIr1G,IAChCL,KAAK01G,IAAMnvG,QACJ,IAEF,KAWToD,IAAK,mBACL5E,MAAO,WACL,GAAiBwB,SAAbvG,KAAK01G,IAAmB,CAC1B,GAAIjX,GAAS,UAAYz+F,KAAKK,GAC1Bu7B,EAAO57B,KAAKm/C,KAAKq8C,UAAUC,YAC7Bp7F,GAAIo+F,EACJ4E,MAAO,SACPpnB,SAAS,EACTlf,QAAQ,GAEV/8D,MAAKm/C,KAAKu7C,MAAM+D,GAAU7iE,EAC1B57B,KAAK01G,IAAM95E,EACX57B,KAAK01G,IAAIoD,aAAe94G,KAAKK,GAC7BL,KAAK24G,yBAIThvG,IAAK,qBACL5E,MAAO,WACYwB,SAAbvG,KAAK01G,KAAmCnvG,SAAdvG,KAAKoV,MAAkC7O,SAAZvG,KAAKmV,IAC5DnV,KAAK01G,IAAI93E,EAAI,IAAO59B,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAC1C59B,KAAK01G,IAAIz0F,EAAI,IAAOjhB,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IACpB1a,SAAbvG,KAAK01G,MACd11G,KAAK01G,IAAI93E,EAAI,EACb59B,KAAK01G,IAAIz0F,EAAI,MAUjBtX,IAAK,QACL5E,MAAO,SAAeusC,EAAKigE,GAEzBjgE,EAAIa,YACJb,EAAIc,OAAOpyC,KAAK0xG,UAAU9zE,EAAG59B,KAAK0xG,UAAUzwF,GAE1B1a,SAAdgrG,EAAQ3zE,EACV0T,EAAIe,OAAOryC,KAAK2xG,QAAQ/zE,EAAG59B,KAAK2xG,QAAQ1wF,GAExCqwB,EAAIynE,iBAAiBxH,EAAQ3zE,EAAG2zE,EAAQtwF,EAAGjhB,KAAK2xG,QAAQ/zE,EAAG59B,KAAK2xG,QAAQ1wF,GAG1EjhB,KAAKmrG,aAAa75D,GAClBA,EAAI5J,SACJ1nC,KAAKorG,cAAc95D,MAGrB3nC,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAK01G,OAWd/rG,IAAK,WACL5E,MAAO,SAAkBkuG,GACvB,GAAI1B,GAAUlrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK01G,IAAMrvG,UAAU,GAErFsJ,EAAIsjG,EACJr1E,EAAI34B,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK0xG,UAAU9zE,EAAI,EAAIjuB,GAAK,EAAIA,GAAK4hG,EAAQ3zE,EAAI34B,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK2xG,QAAQ/zE,EACxG3c,EAAIhc,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK0xG,UAAUzwF,EAAI,EAAItR,GAAK,EAAIA,GAAK4hG,EAAQtwF,EAAIhc,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK2xG,QAAQ1wF,CAE5G,QAAS2c,EAAGA,EAAG3c,EAAGA,MAGpBtX,IAAK,sBACL5E,MAAO,SAA6BmvG,EAAU5iE,GAC5C,MAAOtxC,MAAKm0G,0BAA0BD,EAAU5iE,EAAKtxC,KAAK01G,QAG5D/rG,IAAK,qBACL5E,MAAO,SAA4B8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GAErD,MAAOr0G,MAAKw0G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIr0G,KAAK01G,SAI/D+C,GACND,EAAqB,WAExB54G,GAAQ,WAAa64G,EACrB54G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaiJ,EAAKC,EAAK4F,GAAqC,IAA9B,GAAI1O,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+uG,EAAK3rD,EAAW4rD,EAAK7I,EAAWyO,CAAK1O,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAAhW,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4nG,GAAM5nG,EAAQ6nG,EAAM5rD,EAAUwxD,EAAMzO,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQ3cgyG,EAAsBr4G,EAAoB,IAE1Cs4G,EAAuB5hC,EAAuB2hC,GAE9CU,EAAmB,SAAWlE,GAGhC,QAASkE,GAAiBp1G,EAASs7C,EAAM6nD,GACvCjwB,EAAgB/2E,KAAMi5G,GAEtB/O,EAAK9iG,OAAOsjG,eAAeuO,EAAiBhmG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAsOzG,MA3OA6C,GAAUoP,EAAkBlE,GAc5B59B,EAAa8hC,IACXtvG,IAAK,QACL5E,MAAO,SAAeusC,EAAKigE,GAEzBjgE,EAAIa,YACJb,EAAIc,OAAOpyC,KAAK0xG,UAAU9zE,EAAG59B,KAAK0xG,UAAUzwF,GAG1B1a,SAAdgrG,EAAQ3zE,EACV0T,EAAIe,OAAOryC,KAAK2xG,QAAQ/zE,EAAG59B,KAAK2xG,QAAQ1wF,GAExCqwB,EAAIynE,iBAAiBxH,EAAQ3zE,EAAG2zE,EAAQtwF,EAAGjhB,KAAK2xG,QAAQ/zE,EAAG59B,KAAK2xG,QAAQ1wF,GAG1EjhB,KAAKmrG,aAAa75D,GAClBA,EAAI5J,SACJ1nC,KAAKorG,cAAc95D,MAGrB3nC,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKi0G,wBASdtqG,IAAK,qBACL5E,MAAO,WACL,GAAIm0G,GAAO3yG,OACP4yG,EAAO5yG,OACP87C,EAASriD,KAAK6D,QAAQwrG,OAAOE,UAC7B3nG,EAAO5H,KAAK6D,QAAQwrG,OAAOznG,KAC3BiiC,EAAK5kC,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GACpCkM,EAAK7kC,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EACxC,IAAa,aAATrZ,GAAgC,kBAATA,EACrB3C,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAAM34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAClEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,GACrB9pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,GAEvB9pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,GACrB9pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,IAGrB,aAATliC,IACFsxG,EAAY72D,EAASvY,EAAdD,EAAmB7pC,KAAKoV,KAAKwoB,EAAIs7E,IAEjCj0G,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAAK34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,KACxEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY,EAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,GACrB7pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY,EAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,GAEvB7pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY,EAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,GACrB7pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY,EAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,IAGrB,aAATjiC,IACFuxG,EAAY92D,EAASxY,EAAdC,EAAmB9pC,KAAKoV,KAAK6L,EAAIk4F,QAGvC,IAAa,kBAATvxG,EACL3C,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAAM34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAEtEi4F,EAAOl5G,KAAKoV,KAAKwoB,EAEfu7E,EADEn5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EACjBjhB,KAAKmV,GAAG8L,GAAK,EAAIohC,GAAUvY,EAE3B9pC,KAAKmV,GAAG8L,GAAK,EAAIohC,GAAUvY,GAE3B7kC,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAAK34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,KAG1Ei4F,EADEl5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EACjB59B,KAAKmV,GAAGyoB,GAAK,EAAIykB,GAAUxY,EAE3B7pC,KAAKmV,GAAGyoB,GAAK,EAAIykB,GAAUxY,EAEpCsvE,EAAOn5G,KAAKoV,KAAK6L,OAEd,IAAa,eAATrZ,EAEPsxG,EADEl5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EACjB59B,KAAKmV,GAAGyoB,GAAK,EAAIykB,GAAUxY,EAE3B7pC,KAAKmV,GAAGyoB,GAAK,EAAIykB,GAAUxY,EAEpCsvE,EAAOn5G,KAAKoV,KAAK6L,MACZ,IAAa,aAATrZ,EACTsxG,EAAOl5G,KAAKoV,KAAKwoB,EAEfu7E,EADEn5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EACjBjhB,KAAKmV,GAAG8L,GAAK,EAAIohC,GAAUvY,EAE3B9pC,KAAKmV,GAAG8L,GAAK,EAAIohC,GAAUvY,MAE/B,IAAa,aAATliC,EAAqB,CAC9BiiC,EAAK7pC,KAAKmV,GAAGyoB,EAAI59B,KAAKoV,KAAKwoB,EAC3BkM,EAAK9pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,CAC3B,IAAI20B,GAAS3wC,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAClCsvE,EAAKn0G,KAAK6wC,GAEVujE,EAAgBp0G,KAAKsnD,MAAMziB,EAAID,GAC/ByvE,GAAWD,GAA0B,GAATh3D,EAAe,IAAO+2D,IAAO,EAAIA,EAEjEF,GAAOl5G,KAAKoV,KAAKwoB,GAAc,GAATykB,EAAe,IAAOzM,EAAS3wC,KAAKokC,IAAIiwE,GAC9DH,EAAOn5G,KAAKoV,KAAK6L,GAAc,GAATohC,EAAe,IAAOzM,EAAS3wC,KAAKukC,IAAI8vE,OACzD,IAAa,cAAT1xG,EAAsB,CAC/BiiC,EAAK7pC,KAAKmV,GAAGyoB,EAAI59B,KAAKoV,KAAKwoB,EAC3BkM,EAAK9pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,CAC3B,IAAI20B,GAAS3wC,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAClCsvE,EAAKn0G,KAAK6wC,GAEVujE,EAAgBp0G,KAAKsnD,MAAMziB,EAAID,GAC/ByvE,GAAWD,GAA2B,IAATh3D,EAAe,IAAO+2D,IAAO,EAAIA,EAElEF,GAAOl5G,KAAKoV,KAAKwoB,GAAc,GAATykB,EAAe,IAAOzM,EAAS3wC,KAAKokC,IAAIiwE,GAC9DH,EAAOn5G,KAAKoV,KAAK6L,GAAc,GAATohC,EAAe,IAAOzM,EAAS3wC,KAAKukC,IAAI8vE,OAG1Dr0G,MAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAAM34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,GAClEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,EAC9BovE,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,GAC7Bl5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,EAC9BovE,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,GAE/Bl5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,EAC9BovE,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,GAC7Bl5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASvY,EAC9BqvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASvY,EAC9BovE,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,EAAOl5G,KAAKmV,GAAGyoB,EAAIs7E,IAGjCj0G,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAAK34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,KACxEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY,EAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,EAC9BsvE,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,GAC7Bn5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY,EAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,EAC9BsvE,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,GAE/Bn5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY;AAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,EAC9BsvE,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,GAC7Bn5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bs7E,EAAOl5G,KAAKoV,KAAKwoB,EAAIykB,EAASxY,EAC9BsvE,EAAOn5G,KAAKoV,KAAK6L,EAAIohC,EAASxY,EAC9BsvE,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,EAAOn5G,KAAKmV,GAAG8L,EAAIk4F,IAK9C,QAASv7E,EAAGs7E,EAAMj4F,EAAGk4F,MAGvBxvG,IAAK,sBACL5E,MAAO,SAA6BmvG,EAAU5iE,GAC5C,GAAIztC,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnF,OAAOrG,MAAKm0G,0BAA0BD,EAAU5iE,EAAKztC,EAAQ6xG,QAG/D/rG,IAAK,qBACL5E,MAAO,SAA4B8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAI9C,GAAUlrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKi0G,qBAAuB5tG,UAAU,EAE1G,OAAOrG,MAAKw0G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAI9C,MAW/D5nG,IAAK,WACL5E,MAAO,SAAkBkuG,GACvB,GAAI1B,GAAUlrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKi0G,qBAAuB5tG,UAAU,GAEtGsJ,EAAIsjG,EACJr1E,EAAI34B,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK0xG,UAAU9zE,EAAI,EAAIjuB,GAAK,EAAIA,GAAK4hG,EAAQ3zE,EAAI34B,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK2xG,QAAQ/zE,EACxG3c,EAAIhc,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK0xG,UAAUzwF,EAAI,EAAItR,GAAK,EAAIA,GAAK4hG,EAAQtwF,EAAIhc,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK2xG,QAAQ1wF,CAE5G,QAAS2c,EAAGA,EAAG3c,EAAGA,OAIfg4F,GACNT,EAAqB,WAExB54G,GAAQ,WAAaq5G,EACrBp5G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcgzG,EAAgBr5G,EAAoB,IAEpCs5G,EAAiB5iC,EAAuB2iC,GAExCE,EAAe,SAAWlE,GAG5B,QAASkE,GAAa51G,EAASs7C,EAAM6nD,GACnCjwB,EAAgB/2E,KAAMy5G,GAEtBvP,EAAK9iG,OAAOsjG,eAAe+O,EAAaxmG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAM6nD,GAyErG,MA9EA6C,GAAU4P,EAAclE,GAcxBp+B,EAAasiC,IACX9vG,IAAK,QACL5E,MAAO,SAAeusC,GAEpBA,EAAIa,YACJb,EAAIc,OAAOpyC,KAAK0xG,UAAU9zE,EAAG59B,KAAK0xG,UAAUzwF,GAC5CqwB,EAAIe,OAAOryC,KAAK2xG,QAAQ/zE,EAAG59B,KAAK2xG,QAAQ1wF,GAExCjhB,KAAKmrG,aAAa75D,GAClBA,EAAI5J,SACJ1nC,KAAKorG,cAAc95D,MAGrB3nC,IAAK,aACL5E,MAAO,eAYP4E,IAAK,WACL5E,MAAO,SAAkBkuG,GACvB,OACEr1E,GAAI,EAAIq1E,GAAcjzG,KAAK0xG,UAAU9zE,EAAIq1E,EAAajzG,KAAK2xG,QAAQ/zE,EACnE3c,GAAI,EAAIgyF,GAAcjzG,KAAK0xG,UAAUzwF,EAAIgyF,EAAajzG,KAAK2xG,QAAQ1wF,MAIvEtX,IAAK,sBACL5E,MAAO,SAA6BmvG,EAAU5iE,GAC5C,GAAI4gE,GAAQlyG,KAAKmV,GACbg9F,EAAQnyG,KAAKoV,IACb8+F,GAAS7zG,KAAOL,KAAKoV,KAAK/U,KAC5B6xG,EAAQlyG,KAAKoV,KACb+8F,EAAQnyG,KAAKmV,GAGf,IAAIs1C,GAAQxlD,KAAKsnD,MAAM2lD,EAAMjxF,EAAIkxF,EAAMlxF,EAAGixF,EAAMt0E,EAAIu0E,EAAMv0E,GACtDiM,EAAKqoE,EAAMt0E,EAAIu0E,EAAMv0E,EACrBkM,EAAKooE,EAAMjxF,EAAIkxF,EAAMlxF,EACrBy4F,EAAoBz0G,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAC7C6vE,EAAezF,EAAS7M,iBAAiB/1D,EAAKmZ,GAC9CmvD,GAAiBF,EAAoBC,GAAgBD,EAErDG,IAIJ,OAHAA,GAAUj8E,GAAK,EAAIg8E,GAAiBzH,EAAMv0E,EAAIg8E,EAAgB1H,EAAMt0E,EACpEi8E,EAAU54F,GAAK,EAAI24F,GAAiBzH,EAAMlxF,EAAI24F,EAAgB1H,EAAMjxF,EAE7D44F,KAGTlwG,IAAK,qBACL5E,MAAO,SAA4B8uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GAErD,MAAOr0G,MAAKm1G,mBAAmBtB,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,OAIhDoF,GACND,EAAe,WAElB55G,GAAQ,WAAa65G,EACrB55G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB6iC,EAAoC55G,EAAoB,IAExD65G,EAAqCnjC,EAAuBkjC,GAE5DE,EAAoC95G,EAAoB,IAExD+5G,EAAqCrjC,EAAuBojC,GAE5DE,EAAgDh6G,EAAoB,IAEpEi6G,EAAiDvjC,EAAuBsjC,GAExEE,EAAiCl6G,EAAoB,IAErDm6G,EAAkCzjC,EAAuBwjC,GAEzDE,EAA6Cp6G,EAAoB,IAEjEq6G,EAA8C3jC,EAAuB0jC,GAErEE,EAAyCt6G,EAAoB,IAE7Du6G,EAA0C7jC,EAAuB4jC,GAEjEE,EAA4Cx6G,EAAoB,IAEhEy6G,EAA6C/jC,EAAuB8jC,GAEpEE,EAAiD16G,EAAoB,IAErE26G,EAAkDjkC,EAAuBgkC,GAEzEj6G,EAAOT,EAAoB,GAE3B46G,EAAgB,WAClB,QAASA,GAAc37D,GACrB43B,EAAgB/2E,KAAM86G,GAEtB96G,KAAKm/C,KAAOA,EACZn/C,KAAK+6G,aAAgBC,sBAAwBC,sBAAwBC,UAAYC,eAEjFn7G,KAAKo7G,gBAAiB,EACtBp7G,KAAKq7G,mBAAqB,IAAO,GACjCr7G,KAAKs7G,iBAAkB,EACvBt7G,KAAKu7G,kBACLv7G,KAAKw7G,kBACLx7G,KAAKy7G,eACLz7G,KAAK07G,YAAcn1G,OAGnBvG,KAAK27G,kBAAmB,EACxB37G,KAAK47G,yBAA0B,EAC/B57G,KAAK67G,gBAAkB,EACvB77G,KAAK87G,iBAAmB,EAExB97G,KAAK+7G,YAAa,EAClB/7G,KAAKg8G,sBAAuB,EAC5Bh8G,KAAKi8G,wBAA0B,EAC/Bj8G,KAAKk8G,OAAQ,EAGbl8G,KAAK6D,WACL7D,KAAK2+C,gBACH9tC,SAAS,EACTsrG,WACEC,MAAO,GACPC,sBAAuB,KACvBC,eAAgB,GAChBC,aAAc,GACdC,eAAgB,IAChBC,QAAS,IACTC,aAAc,GAEhBC,kBACEP,MAAO,GACPC,sBAAuB,IACvBC,eAAgB,IAChBE,eAAgB,IAChBD,aAAc,IACdE,QAAS,GACTC,aAAc,GAEhBE,WACEN,eAAgB,GAChBC,aAAc,IACdC,eAAgB,IAChBK,aAAc,IACdJ,QAAS,IACTC,aAAc,GAEhBI,uBACER,eAAgB,EAChBC,aAAc,IACdC,eAAgB,IAChBK,aAAc,IACdJ,QAAS,KAEXM,YAAa,GACbC,YAAa,IACb9gC,OAAQ,YACR+gC,eACEpsG,SAAS,EACTqsG,WAAY,IACZC,eAAgB,GAChBC,kBAAkB,EAClBt8D,KAAK,GAEPu8D,SAAU,GACV1B,kBAAkB,GAEpBh7G,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAC/B3+C,KAAKq9G,SAAW,GAChBr9G,KAAKs9G,cAAe,EAEpBt9G,KAAK47F,qBA2pBP,MAxpBAzkB,GAAa2jC,IACXnxG,IAAK,qBACL5E,MAAO,WACL,GAAIk9C,GAAQjiD,IAEZA,MAAKm/C,KAAKE,QAAQjgB,GAAG,cAAe,WAClC6iB,EAAMs7D,gBAERv9G,KAAKm/C,KAAKE,QAAQjgB,GAAG,gBAAiB,WACpC6iB,EAAMq7D,cAAe,IAEvBt9G,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnC6iB,EAAM4+C,iBAAiB5+C,EAAMi6D,OAAQ,IAEvCl8G,KAAKm/C,KAAKE,QAAQjgB,GAAG,iBAAkB,WACrC6iB,EAAMm5D,gBAAiB,EAAMn5D,EAAM4+C,mBAErC7gG,KAAKm/C,KAAKE,QAAQjgB,GAAG,iBAAkB,WACrC6iB,EAAMjjB,WAAWijB,EAAMp+C,SACnBo+C,EAAMi6D,SAAU,GAClBj6D,EAAM2+C,oBAGV5gG,KAAKm/C,KAAKE,QAAQjgB,GAAG,kBAAmB,WAClC6iB,EAAMi6D,SAAU,GAClBj6D,EAAM2+C,oBAGV5gG,KAAKm/C,KAAKE,QAAQjgB,GAAG,iBAAkB,WACrC6iB,EAAM4+C,mBAER7gG,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9B6iB,EAAM4+C,gBAAe,GACrB5+C,EAAM9C,KAAKE,QAAQ9f,QAGrBv/B,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WAEnC6iB,EAAMu7D,yBAYV7zG,IAAK,aACL5E,MAAO,SAAoBlB,GACT0C,SAAZ1C,IACEA,KAAY,GACd7D,KAAK6D,QAAQgN,SAAU,EACvB7Q,KAAKo7G,gBAAiB,EACtBp7G,KAAK6gG,mBAEL7gG,KAAKo7G,gBAAiB,EACtBz6G,EAAK2G,wBAAwB,iBAAkBtH,KAAK6D,QAASA,GAC7DlD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,iBAEjB0C,SAApB1C,EAAQgN,UACV7Q,KAAK6D,QAAQgN,SAAU,GAGrB7Q,KAAK6D,QAAQgN,WAAY,IAC3B7Q,KAAKo7G,gBAAiB,EACtBp7G,KAAK6gG,kBAIP7gG,KAAKq9G,SAAWr9G,KAAK6D,QAAQw5G,WAGjCr9G,KAAKyoD,UAOP9+C,IAAK,OACL5E,MAAO,WACL,GAAIlB,EACwB,sBAAxB7D,KAAK6D,QAAQq4E,QACfr4E,EAAU7D,KAAK6D,QAAQ84G,iBACvB38G,KAAKy9G,YAAc,GAAI9C,GAA2C,WAAW36G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAC1G7D,KAAK09G,YAAc,GAAIrD,GAAgC,WAAWr6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAC/F7D,KAAK29G,cAAgB,GAAI9C,GAAgD,WAAW76G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,IAChF,cAAxB7D,KAAK6D,QAAQq4E,QACtBr4E,EAAU7D,KAAK6D,QAAQ+4G,UACvB58G,KAAKy9G,YAAc,GAAIxD,GAAmC,WAAWj6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAClG7D,KAAK09G,YAAc,GAAIrD,GAAgC,WAAWr6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAC/F7D,KAAK29G,cAAgB,GAAIlD,GAAwC,WAAWz6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,IACxE,0BAAxB7D,KAAK6D,QAAQq4E,QACtBr4E,EAAU7D,KAAK6D,QAAQi5G,sBACvB98G,KAAKy9G,YAAc,GAAItD,GAA+C,WAAWn6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAC9G7D,KAAK09G,YAAc,GAAInD,GAA4C,WAAWv6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAC3G7D,KAAK29G,cAAgB,GAAIlD,GAAwC,WAAWz6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,KAGzGA,EAAU7D,KAAK6D,QAAQs4G,UACvBn8G,KAAKy9G,YAAc,GAAI1D,GAAmC,WAAW/5G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAClG7D,KAAK09G,YAAc,GAAIrD,GAAgC,WAAWr6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,GAC/F7D,KAAK29G,cAAgB,GAAIlD,GAAwC,WAAWz6G,KAAKm/C,KAAMn/C,KAAK+6G,YAAal3G,IAG3G7D,KAAK49G,aAAe/5G,KAOtB8F,IAAK,cACL5E,MAAO,WACD/E,KAAKo7G,kBAAmB,GAAQp7G,KAAK6D,QAAQgN,WAAY,EACvD7Q,KAAK6D,QAAQo5G,cAAcpsG,WAAY,EACzC7Q,KAAK8gG,aAEL9gG,KAAK+7G,YAAa,EAClB/7G,KAAKk8G,OAAQ,EACbl8G,KAAKm/C,KAAKE,QAAQzH,KAAK,SAAW53C,KAAKs9G,cACvCt9G,KAAK4gG,oBAGP5gG,KAAKk8G,OAAQ,EACbl8G,KAAKm/C,KAAKE,QAAQzH,KAAK,WAQ3BjuC,IAAK,kBACL5E,MAAO,WACD/E,KAAKo7G,kBAAmB,GAAQp7G,KAAK6D,QAAQgN,WAAY,GAC3D7Q,KAAK+7G,YAAa,EAGlB/7G,KAAK27G,kBAAmB,EAGxB37G,KAAKm/C,KAAKE,QAAQzH,KAAK,gBACGrxC,SAAtBvG,KAAK69G,eACP79G,KAAK69G,aAAe79G,KAAK89G,eAAex+D,KAAKt/C,MAC7CA,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAK69G,cACxC79G,KAAKm/C,KAAKE,QAAQzH,KAAK,qBAGzB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,cAQ3BjuC,IAAK,iBACL5E,MAAO,WACL,GAAI6yC,GAAOvxC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAElFrG,MAAK+7G,YAAa,EACdnkE,KAAS,GACX53C,KAAK+9G,kBAEmBx3G,SAAtBvG,KAAK69G,eACP79G,KAAKm/C,KAAKE,QAAQ9f,IAAI,aAAcv/B,KAAK69G,cACzC79G,KAAK69G,aAAet3G,OAChBqxC,KAAS,GACX53C,KAAKm/C,KAAKE,QAAQzH,KAAK,sBAU7BjuC,IAAK,iBACL5E,MAAO,WAEL,GAAIi5G,GAAY34G,KAAK4d,KACrBjjB,MAAKi+G,aACL,IAAIC,GAAc74G,KAAK4d,MAAQ+6F,GAG1BE,EAAc,GAAMl+G,KAAKq7G,oBAAsBr7G,KAAKm+G,kBAAmB,IAASn+G,KAAK+7G,cAAe,IACvG/7G,KAAKi+G,cAGLj+G,KAAKm+G,gBAAiB,GAGpBn+G,KAAK+7G,cAAe,GACtB/7G,KAAK6gG,oBASTl3F,IAAK,kBACL5E,MAAO,WACL,GAAI00E,GAASz5E,KAETo+G,EAAqB/3G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKi8G,wBAA0B51G,UAAU,IAEpHrG,KAAKi8G,wBAA0B,GAAKj8G,KAAKg8G,wBAAyB,IACpE9xG,WAAW,WACTuvE,EAAOt6B,KAAKE,QAAQzH,KAAK,cAAgBslE,WAAYkB,IACrD3kC,EAAOuiC,sBAAuB,EAC9BviC,EAAOwiC,wBAA0B,GAChC,MAUPtyG,IAAK,cACL5E,MAAO,WAOL,GALI/E,KAAKg8G,wBAAyB,IAChCh8G,KAAKm/C,KAAKE,QAAQzH,KAAK,oBACvB53C,KAAKg8G,sBAAuB,GAG1Bh8G,KAAK+7G,cAAe,EAAO,CAE7B,GAAI/7G,KAAK27G,oBAAqB,GAAQ37G,KAAK47G,2BAA4B,EAAM,CAE3E,GAAIv5D,GAAS,GAGTriD,MAAK67G,gBAAkB77G,KAAK87G,mBAAqB,GAGnD97G,KAAKq9G,SAAW,EAAIr9G,KAAKq9G,SACzBr9G,KAAKq+G,kBACLr+G,KAAKs+G,YACLt+G,KAAKu+G,SAGLv+G,KAAKq9G,SAAW,GAAMr9G,KAAKq9G,SAG3Br9G,KAAKq+G,kBACLr+G,KAAKs+G,YACLt+G,KAAKq+G,kBACLr+G,KAAKs+G,YAGDt+G,KAAKw+G,0BAA2B,EAClCx+G,KAAKq9G,SAAWh7D,EAASriD,KAAKq9G,SAK1Br9G,KAAKq9G,SAAWh7D,EAASriD,KAAK6D,QAAQw5G,SACxCr9G,KAAKq9G,SAAWr9G,KAAK6D,QAAQw5G,UAI7Br9G,KAAK67G,gBAAkB,GACvB77G,KAAKq9G,SAAWp4G,KAAKJ,IAAI7E,KAAK6D,QAAQw5G,SAAUr9G,KAAKq9G,SAAWh7D,MAKpEriD,KAAKq+G,kBACLr+G,KAAKs+G,aAIPt+G,KAAK67G,iBAAmB,MAGxB77G,MAAKq9G,SAAWr9G,KAAK6D,QAAQw5G,SAC7Br9G,KAAKq+G,kBACLr+G,KAAKs+G,WAIHt+G,MAAK+7G,cAAe,GACtB/7G,KAAKu+G,SAGPv+G,KAAKi8G,8BAUTtyG,IAAK,oBACL5E,MAAO,WACL/E,KAAK+6G,YAAYG,UACjBl7G,KAAK+6G,YAAYC,sBACjBh7G,KAAK+6G,YAAYE,qBACjB,IAAIvgB,GAAQ16F,KAAKm/C,KAAKu7C,MAClBE,EAAQ56F,KAAKm/C,KAAKy7C,KAGtB,KAAK,GAAI6D,KAAU/D,GACbA,EAAM10F,eAAey4F,IACnB/D,EAAM+D,GAAQ56F,QAAQo4E,WAAY,GACpCj8E,KAAK+6G,YAAYC,mBAAmBxzG,KAAKkzF,EAAM+D,GAAQp+F,GAM7D,KAAK,GAAIq+F,KAAU9D,GACbA,EAAM50F,eAAe04F,IACnB9D,EAAM8D,GAAQ76F,QAAQo4E,WAAY,GACpCj8E,KAAK+6G,YAAYE,mBAAmBzzG,KAAKozF,EAAM8D,GAAQr+F,GAM7D,KAAK,GAAIoG,GAAI,EAAGA,EAAIzG,KAAK+6G,YAAYC,mBAAmB10G,OAAQG,IAAK,CACnE,GAAIg4F,GAASz+F,KAAK+6G,YAAYC,mBAAmBv0G,EACjDzG,MAAK+6G,YAAYG,OAAOzc,IAAY7gE,EAAG,EAAG3c,EAAG,GAGD1a,SAAxCvG,KAAK+6G,YAAYI,WAAW1c,KAC9Bz+F,KAAK+6G,YAAYI,WAAW1c,IAAY7gE,EAAG,EAAG3c,EAAG,IAKrD,IAAK,GAAIw9E,KAAUz+F,MAAK+6G,YAAYI,WACZ50G,SAAlBm0F,EAAM+D,UACDz+F,MAAK+6G,YAAYI,WAAW1c,MASzC90F,IAAK,SACL5E,MAAO,WACL,GAAI05G,GAAUr3G,OAAO6H,KAAKjP,KAAKu7G,gBAC3B7gB,EAAQ16F,KAAKm/C,KAAKu7C,MAClBygB,EAAan7G,KAAK+6G,YAAYI,UAClCn7G,MAAKw7G,iBAEL,KAAK,GAAI/0G,GAAI,EAAGA,EAAIg4G,EAAQn4G,OAAQG,IAAK,CACvC,GAAIg4F,GAASggB,EAAQh4G,EACCF,UAAlBm0F,EAAM+D,GACJ/D,EAAM+D,GAAQ56F,QAAQo4E,WAAY,IACpCj8E,KAAKw7G,eAAe/c,IAClBigB,WAAa9gF,EAAG88D,EAAM+D,GAAQ7gE,EAAG3c,EAAGy5E,EAAM+D,GAAQx9E,IAEpDk6F,EAAW1c,GAAQ7gE,EAAI59B,KAAKu7G,eAAe9c,GAAQkgB,GACnDxD,EAAW1c,GAAQx9E,EAAIjhB,KAAKu7G,eAAe9c,GAAQmgB,GACnDlkB,EAAM+D,GAAQ7gE,EAAI59B,KAAKu7G,eAAe9c,GAAQ7gE,EAC9C88D,EAAM+D,GAAQx9E,EAAIjhB,KAAKu7G,eAAe9c,GAAQx9E,SAGzCjhB,MAAKu7G,eAAe9c,OASjC90F,IAAK,uBACL5E,MAAO,WACL,GAAI8kC,GAAKtjC,OACLujC,EAAKvjC,OACLs4G,EAAOt4G,OACPm0F,EAAQ16F,KAAKm/C,KAAKu7C,MAClBokB,EAAY9+G,KAAKw7G,eACjBllD,EAAe,EAEnB,KAAK,GAAImoC,KAAUz+F,MAAKw7G,eACtB,GAAIx7G,KAAKw7G,eAAex1G,eAAey4F,IAA6Bl4F,SAAlBm0F,EAAM+D,KACtD50D,EAAK6wD,EAAM+D,GAAQ7gE,EAAIkhF,EAAUrgB,GAAQigB,UAAU9gF,EACnDkM,EAAK4wD,EAAM+D,GAAQx9E,EAAI69F,EAAUrgB,GAAQigB,UAAUz9F,EAEnD49F,EAAO55G,KAAKu0C,KAAKv0C,KAAK8U,IAAI8vB,EAAI,GAAK5kC,KAAK8U,IAAI+vB,EAAI,IAE5C+0E,EAAOvoD,GACT,OAAO,CAIb,QAAO,KAQT3sD,IAAK,YACL5E,MAAO,WASL,IAAK,GARD41F,GAAc36F,KAAK+6G,YAAYC,mBAC/B+B,EAAc/8G,KAAK6D,QAAQk5G,YAAc/8G,KAAK6D,QAAQk5G,YAAc,IACpEgC,EAAkB,EAClBC,EAAsB,EAGtBC,EAA4B,EAEvBx4G,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IAAK,CAC3C,GAAIg4F,GAAS9D,EAAYl0F,GACrBy4G,EAAel/G,KAAKm/G,aAAa1gB,EAAQse,EAE7CgC,GAAkB95G,KAAKJ,IAAIk6G,EAAiBG,GAC5CF,GAAuBE,EAIzBl/G,KAAK47G,wBAA0BoD,EAAsBrkB,EAAYr0F,OAAS24G,EAC1Ej/G,KAAK+7G,WAAagD,EAAkB/+G,KAAK6D,QAAQm5G,eAYnDrzG,IAAK,eACL5E,MAAO,SAAsB05F,EAAQse,GACnC,GAAInhF,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,GACvB4e,EAAWr9G,KAAKq9G,SAChBnC,EAASl7G,KAAK+6G,YAAYG,OAC1BC,EAAan7G,KAAK+6G,YAAYI,UAKlC,IAFAn7G,KAAKu7G,eAAe9c,IAAY7gE,EAAGhC,EAAKgC,EAAG3c,EAAG2a,EAAK3a,EAAG09F,GAAIxD,EAAW1c,GAAQ7gE,EAAGghF,GAAIzD,EAAW1c,GAAQx9E,GAEnG2a,EAAK/3B,QAAQ4+F,MAAM7kE,KAAM,EAAO,CAClC,GAAIiM,GAAK7pC,KAAK49G,aAAanB,QAAUtB,EAAW1c,GAAQ7gE,EACpDiL,GAAMqyE,EAAOzc,GAAQ7gE,EAAIiM,GAAMjO,EAAK/3B,QAAQk/F,IAChDoY,GAAW1c,GAAQ7gE,GAAKiL,EAAKw0E,EAC7BlC,EAAW1c,GAAQ7gE,EAAI34B,KAAK8R,IAAIokG,EAAW1c,GAAQ7gE,GAAKm/E,EAAc5B,EAAW1c,GAAQ7gE,EAAI,EAAIm/E,GAAeA,EAAc5B,EAAW1c,GAAQ7gE,EACjJhC,EAAKgC,GAAKu9E,EAAW1c,GAAQ7gE,EAAIy/E,MAE/BnC,GAAOzc,GAAQ7gE,EAAI,EACnBu9E,EAAW1c,GAAQ7gE,EAAI,CAG3B,IAAIhC,EAAK/3B,QAAQ4+F,MAAMxhF,KAAM,EAAO,CAClC,GAAI6oB,GAAK9pC,KAAK49G,aAAanB,QAAUtB,EAAW1c,GAAQx9E,EACpD6nB,GAAMoyE,EAAOzc,GAAQx9E,EAAI6oB,GAAMlO,EAAK/3B,QAAQk/F,IAChDoY,GAAW1c,GAAQx9E,GAAK6nB,EAAKu0E,EAC7BlC,EAAW1c,GAAQx9E,EAAIhc,KAAK8R,IAAIokG,EAAW1c,GAAQx9E,GAAK87F,EAAc5B,EAAW1c,GAAQx9E,EAAI,EAAI87F,GAAeA,EAAc5B,EAAW1c,GAAQx9E,EACjJ2a,EAAK3a,GAAKk6F,EAAW1c,GAAQx9E,EAAIo8F,MAE/BnC,GAAOzc,GAAQx9E,EAAI,EACnBk6F,EAAW1c,GAAQx9E,EAAI,CAG3B,IAAIm+F,GAAgBn6G,KAAKu0C,KAAKv0C,KAAK8U,IAAIohG,EAAW1c,GAAQ7gE,EAAG,GAAK34B,KAAK8U,IAAIohG,EAAW1c,GAAQx9E,EAAG,GACjG,OAAOm+F,MAOTz1G,IAAK,kBACL5E,MAAO,WACL/E,KAAK29G,cAAc0B,QACnBr/G,KAAKy9G,YAAY4B,QACjBr/G,KAAK09G,YAAY2B,WAUnB11G,IAAK,eACL5E,MAAO,WACL,GAAI21F,GAAQ16F,KAAKm/C,KAAKu7C,KACtB,KAAK,GAAIr6F,KAAMq6F,GACTA,EAAM10F,eAAe3F,IACnBq6F,EAAMr6F,GAAIu9B,GAAK88D,EAAMr6F,GAAI4gB,IAC3BjhB,KAAKy7G,YAAYp7G,IAAQu9B,EAAG88D,EAAMr6F,GAAIwD,QAAQ4+F,MAAM7kE,EAAG3c,EAAGy5E,EAAMr6F,GAAIwD,QAAQ4+F,MAAMxhF,GAClFy5E,EAAMr6F,GAAIwD,QAAQ4+F,MAAM7kE,GAAI,EAC5B88D,EAAMr6F,GAAIwD,QAAQ4+F,MAAMxhF,GAAI,MAYpCtX,IAAK,sBACL5E,MAAO,WACL,GAAI21F,GAAQ16F,KAAKm/C,KAAKu7C,KACtB,KAAK,GAAIr6F,KAAMq6F,GACTA,EAAM10F,eAAe3F,IACMkG,SAAzBvG,KAAKy7G,YAAYp7G,KACnBq6F,EAAMr6F,GAAIwD,QAAQ4+F,MAAM7kE,EAAI59B,KAAKy7G,YAAYp7G,GAAIu9B,EACjD88D,EAAMr6F,GAAIwD,QAAQ4+F,MAAMxhF,EAAIjhB,KAAKy7G,YAAYp7G,GAAI4gB,EAIvDjhB,MAAKy7G,kBAOP9xG,IAAK,YACL5E,MAAO,WACL,GAAIw1E,GAASv6E,KAETk9G,EAAa72G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQo5G,cAAcC,WAAa72G,UAAU,EAOzH,OAL0B,gBAAf62G,KACTv9F,QAAQu+B,IAAI,oFAAqFl+C,KAAK6D,QAAQo5G,cAAcC,YAC5HA,EAAal9G,KAAK6D,QAAQo5G,cAAcC,YAGS,IAA/Cl9G,KAAK+6G,YAAYC,mBAAmB10G,YACtCtG,KAAKk8G,OAAQ,IAKfl8G,KAAK27G,iBAA2B37G,KAAK6D,QAAQ83G,iBAG7C37G,KAAKm/C,KAAKE,QAAQzH,KAAK,gBAGvB53C,KAAK6gG,iBAGL7gG,KAAK+7G,YAAa,EAGlB/7G,KAAKm/C,KAAKE,QAAQzH,KAAK,gBACvB53C,KAAKs/G,iBAAmBpC,EAGpBl9G,KAAK6D,QAAQo5G,cAAcG,oBAAqB,GAClDp9G,KAAKu/G,eAEPv/G,KAAKi8G,wBAA0B,MAE/B/xG,YAAW,WACT,MAAOqwE,GAAOilC,uBACb,OAQL71G,IAAK,sBACL5E,MAAO,WAED/E,KAAKg8G,wBAAyB,IAChCh8G,KAAKm/C,KAAKE,QAAQzH,KAAK,oBACvB53C,KAAKg8G,sBAAuB,EAI9B,KADA,GAAI/pF,GAAQ,EACLjyB,KAAK+7G,cAAe,GAAS9pF,EAAQjyB,KAAK6D,QAAQo5G,cAAcE,gBAAkBn9G,KAAKi8G,wBAA0Bj8G,KAAKs/G,kBAC3Ht/G,KAAKi+G,cACLhsF,GAGEjyB,MAAK+7G,cAAe,GAAS/7G,KAAKi8G,wBAA0Bj8G,KAAKs/G,kBACnEt/G,KAAKm/C,KAAKE,QAAQzH,KAAK,yBAA2BslE,WAAYl9G,KAAKi8G,wBAAyBn3G,MAAO9E,KAAKs/G,mBACxGp1G,WAAWlK,KAAKw/G,oBAAoBlgE,KAAKt/C,MAAO,IAEhDA,KAAKy/G,4BAST91G,IAAK,yBACL5E,MAAO,WACL/E,KAAKm/C,KAAKE,QAAQzH,KAAK,gBACnB53C,KAAK6D,QAAQo5G,cAAcn8D,OAAQ,GACrC9gD,KAAKm/C,KAAKE,QAAQzH,KAAK,OAGrB53C,KAAK6D,QAAQo5G,cAAcG,oBAAqB,GAClDp9G,KAAK0/G,sBAGP1/G,KAAKm/C,KAAKE,QAAQzH,KAAK,+BACvB53C,KAAKm/C,KAAKE,QAAQzH,KAAK,kBAEnB53C,KAAK+7G,cAAe,EACtB/7G,KAAK+9G,kBAEL/9G,KAAK4gG,kBAGP5gG,KAAKk8G,OAAQ,KAGfvyG,IAAK,cACL5E,MAAO,SAAqBusC,GAC1B,IAAK,GAAI7qC,GAAI,EAAGA,EAAIzG,KAAK+6G,YAAYC,mBAAmB10G,OAAQG,IAAK,CACnE,GAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAM16F,KAAK+6G,YAAYC,mBAAmBv0G,IAC3D6wD,EAAQt3D,KAAK+6G,YAAYG,OAAOl7G,KAAK+6G,YAAYC,mBAAmBv0G,IACpE47C,EAAS,GACTs9D,EAAc,IACdC,EAAY36G,KAAKu0C,KAAKv0C,KAAK8U,IAAIu9C,EAAM15B,EAAG,GAAK34B,KAAK8U,IAAIu9C,EAAM15B,EAAG,IAE/DK,EAAOh5B,KAAKL,IAAIK,KAAKJ,IAAI,EAAG+6G,GAAY,IACxCC,EAAY,EAAI5hF,EAEhBxxB,EAAQ9L,EAAKoN,UAAU,IAA0D,IAApD9I,KAAKL,IAAI,EAAGK,KAAKJ,IAAI,EAAG86G,EAAcC,KAAqB,IAAK,EAAG,EAEpGtuE,GAAIO,UAAY5T,EAChBqT,EAAIY,YAAczlC,EAClB6kC,EAAIa,YACJb,EAAIc,OAAOxW,EAAKgC,EAAGhC,EAAK3a,GACxBqwB,EAAIe,OAAOzW,EAAKgC,EAAIykB,EAASiV,EAAM15B,EAAGhC,EAAK3a,EAAIohC,EAASiV,EAAMr2C,GAC9DqwB,EAAI5J,QAEJ,IAAI+iB,GAAQxlD,KAAKsnD,MAAM+K,EAAMr2C,EAAGq2C,EAAM15B,EACtC0T,GAAIiB,UAAY9lC,EAChB6kC,EAAIgnE,MAAM18E,EAAKgC,EAAIykB,EAASiV,EAAM15B,EAAI34B,KAAKukC,IAAIihB,GAASo1D,EAAWjkF,EAAK3a,EAAIohC,EAASiV,EAAMr2C,EAAIhc,KAAKokC,IAAIohB,GAASo1D,EAAWp1D,EAAOo1D,GACnIvuE,EAAI7J,YAKHqzE,IAGTl7G,GAAQ,WAAak7G,EACrBj7G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB6oC,EAAkB,WACpB,QAASA,GAAgB3gE,EAAM47D,EAAal3G,GAC1CkzE,EAAgB/2E,KAAM8/G,GAEtB9/G,KAAKm/C,KAAOA,EACZn/C,KAAK+6G,YAAcA,EACnB/6G,KAAK+/G,cACL//G,KAAKg/B,WAAWn7B,GAChB7D,KAAKggH,WAAa,EA0dpB,MApdA7oC,GAAa2oC,IACXn2G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,EACf7D,KAAKigH,cAAgB,EAAIjgH,KAAK6D,QAAQu4G,MACtCp8G,KAAKkgH,uBAAyB,EAAIj7G,KAAKJ,IAAI,EAAGI,KAAKL,IAAI,EAAG5E,KAAK6D,QAAQ64G,kBAGzE/yG,IAAK,eACL5E,MAAO,WACL,GAAI64B,GAAkC,IAA9B34B,KAAKokC,IAAIrpC,KAAKggH,aACtB,OAAOpiF,GAAI34B,KAAKuK,MAAMouB,MAUxBj0B,IAAK,QACL5E,MAAO,WACL,GAA2C,IAAvC/E,KAAK6D,QAAQw4G,uBAA+Br8G,KAAK+6G,YAAYC,mBAAmB10G,OAAS,EAAG,CAC9F,GAAIs1B,GAAOr1B,OACPm0F,EAAQ16F,KAAKm/C,KAAKu7C,MAClBC,EAAc36F,KAAK+6G,YAAYC,mBAC/BmF,EAAYxlB,EAAYr0F,OAGxBy5G,EAAgB//G,KAAKogH,mBAAmB1lB,EAAOC,EAGnD36F,MAAK+/G,cAAgBA,CAGrB,KAAK,GAAIt5G,GAAI,EAAO05G,EAAJ15G,EAAeA,IAC7Bm1B,EAAO8+D,EAAMC,EAAYl0F,IACrBm1B,EAAK/3B,QAAQk/F,KAAO,IAEtB/iG,KAAKqgH,sBAAsBN,EAAcrgH,KAAK66B,SAAS+lF,GAAI1kF,GAC3D57B,KAAKqgH,sBAAsBN,EAAcrgH,KAAK66B,SAASgmF,GAAI3kF,GAC3D57B,KAAKqgH,sBAAsBN,EAAcrgH,KAAK66B,SAASimF,GAAI5kF,GAC3D57B,KAAKqgH,sBAAsBN,EAAcrgH,KAAK66B,SAASkmF,GAAI7kF,QAenEjyB,IAAK,wBACL5E,MAAO,SAA+B27G,EAAc9kF,GAElD,GAAI8kF,EAAaC,cAAgB,EAAG,CAClC,GAAI92E,GAAKtjC,OACLujC,EAAKvjC,OACL4pC,EAAW5pC,MAGfsjC,GAAK62E,EAAaE,aAAahjF,EAAIhC,EAAKgC,EACxCkM,EAAK42E,EAAaE,aAAa3/F,EAAI2a,EAAK3a,EACxCkvB,EAAWlrC,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAKhCqG,EAAWuwE,EAAaG,SAAW7gH,KAAKigH,cAC1CjgH,KAAK8gH,iBAAiB3wE,EAAUtG,EAAIC,EAAIlO,EAAM8kF,GAGX,IAA/BA,EAAaC,eACf3gH,KAAKqgH,sBAAsBK,EAAanmF,SAAS+lF,GAAI1kF,GACrD57B,KAAKqgH,sBAAsBK,EAAanmF,SAASgmF,GAAI3kF,GACrD57B,KAAKqgH,sBAAsBK,EAAanmF,SAASimF,GAAI5kF,GACrD57B,KAAKqgH,sBAAsBK,EAAanmF,SAASkmF,GAAI7kF,IAGjD8kF,EAAanmF,SAASviB,KAAK3X,IAAMu7B,EAAKv7B,IAExCL,KAAK8gH,iBAAiB3wE,EAAUtG,EAAIC,EAAIlO,EAAM8kF,OAkBxD/2G,IAAK,mBACL5E,MAAO,SAA0BorC,EAAUtG,EAAIC,EAAIlO,EAAM8kF,GACtC,IAAbvwE,IACFA,EAAW,GACXtG,EAAKsG,GAGHnwC,KAAKkgH,uBAAyB,IAChC/vE,EAAWlrC,KAAKJ,IAAI,GAAM7E,KAAKkgH,uBAAyBtkF,EAAKynE,MAAMztD,OAAQzF,EAAWvU,EAAKynE,MAAMztD,QAKnG,IAAImrE,GAAe/gH,KAAK6D,QAAQw4G,sBAAwBqE,EAAa3d,KAAOnnE,EAAK/3B,QAAQk/F,KAAO99F,KAAK8U,IAAIo2B,EAAU,GAC/G6wE,EAAKn3E,EAAKk3E,EACVE,EAAKn3E,EAAKi3E,CAEd/gH,MAAK+6G,YAAYG,OAAOt/E,EAAKv7B,IAAIu9B,GAAKojF,EACtChhH,KAAK+6G,YAAYG,OAAOt/E,EAAKv7B,IAAI4gB,GAAKggG,KAWxCt3G,IAAK,qBACL5E,MAAO,SAA4B21F,EAAOC,GAUxC,IAAK,GATD/+D,GAAOr1B,OACP45G,EAAYxlB,EAAYr0F,OAExB46G,EAAOxmB,EAAMC,EAAY,IAAI/8D,EAC7BujF,EAAOzmB,EAAMC,EAAY,IAAI15E,EAC7BmgG,EAAO1mB,EAAMC,EAAY,IAAI/8D,EAC7ByjF,EAAO3mB,EAAMC,EAAY,IAAI15E,EAGxBxa,EAAI,EAAO05G,EAAJ15G,EAAeA,IAAK,CAClC,GAAIm3B,GAAI88D,EAAMC,EAAYl0F,IAAIm3B,EAC1B3c,EAAIy5E,EAAMC,EAAYl0F,IAAIwa,CAC1By5E,GAAMC,EAAYl0F,IAAI5C,QAAQk/F,KAAO,IAC/Bme,EAAJtjF,IACFsjF,EAAOtjF,GAELA,EAAIwjF,IACNA,EAAOxjF,GAEDujF,EAAJlgG,IACFkgG,EAAOlgG,GAELA,EAAIogG,IACNA,EAAOpgG,IAKb,GAAIqmF,GAAWriG,KAAK8R,IAAIqqG,EAAOF,GAAQj8G,KAAK8R,IAAIsqG,EAAOF,EACnD7Z,GAAW,GACb6Z,GAAQ,GAAM7Z,EACd+Z,GAAQ,GAAM/Z,IAGZ4Z,GAAQ,GAAM5Z,EACd8Z,GAAQ,GAAM9Z,EAGlB,IAAIga,GAAkB,KAClBC,EAAWt8G,KAAKJ,IAAIy8G,EAAiBr8G,KAAK8R,IAAIqqG,EAAOF,IACrDM,EAAe,GAAMD,EACrBl4B,EAAU,IAAO63B,EAAOE,GACxBh4B,EAAU,IAAO+3B,EAAOE,GAGxBtB,GACFrgH,MACEkhH,cAAgBhjF,EAAG,EAAG3c,EAAG,GACzB8hF,KAAM,EACN7iD,OACEghE,KAAM73B,EAAUm4B,EAAcJ,KAAM/3B,EAAUm4B,EAC9CL,KAAM/3B,EAAUo4B,EAAcH,KAAMj4B,EAAUo4B,GAEhDvjF,KAAMsjF,EACNV,SAAU,EAAIU,EACdhnF,UAAYviB,KAAM,MAClB44D,SAAU,EACVkyB,MAAO,EACP6d,cAAe,GAGnB3gH,MAAKyhH,aAAa1B,EAAcrgH,KAGhC,KAAK,GAAI+G,GAAI,EAAO05G,EAAJ15G,EAAeA,IAC7Bm1B,EAAO8+D,EAAMC,EAAYl0F,IACrBm1B,EAAK/3B,QAAQk/F,KAAO,GACtB/iG,KAAK0hH,aAAa3B,EAAcrgH,KAAMk8B,EAK1C,OAAOmkF,MAWTp2G,IAAK,oBACL5E,MAAO,SAA2B27G,EAAc9kF,GAC9C,GAAI+lF,GAAYjB,EAAa3d,KAAOnnE,EAAK/3B,QAAQk/F,KAC7C6e,EAAe,EAAID,CAEvBjB,GAAaE,aAAahjF,EAAI8iF,EAAaE,aAAahjF,EAAI8iF,EAAa3d,KAAOnnE,EAAKgC,EAAIhC,EAAK/3B,QAAQk/F,KACtG2d,EAAaE,aAAahjF,GAAKgkF,EAE/BlB,EAAaE,aAAa3/F,EAAIy/F,EAAaE,aAAa3/F,EAAIy/F,EAAa3d,KAAOnnE,EAAK3a,EAAI2a,EAAK/3B,QAAQk/F,KACtG2d,EAAaE,aAAa3/F,GAAK2gG,EAE/BlB,EAAa3d,KAAO4e,CACpB,IAAIE,GAAc58G,KAAKJ,IAAII,KAAKJ,IAAI+2B,EAAK6C,OAAQ7C,EAAKga,QAASha,EAAK4C,MACpEkiF,GAAa9vC,SAAW8vC,EAAa9vC,SAAWixC,EAAcA,EAAcnB,EAAa9vC,YAY3FjnE,IAAK,eACL5E,MAAO,SAAsB27G,EAAc9kF,EAAMkmF,IACzB,GAAlBA,GAA6Cv7G,SAAnBu7G,IAE5B9hH,KAAK+hH,kBAAkBrB,EAAc9kF,GAGnC8kF,EAAanmF,SAAS+lF,GAAGpgE,MAAMkhE,KAAOxlF,EAAKgC,EAEzC8iF,EAAanmF,SAAS+lF,GAAGpgE,MAAMmhE,KAAOzlF,EAAK3a,EAE7CjhB,KAAKgiH,eAAetB,EAAc9kF,EAAM,MAGxC57B,KAAKgiH,eAAetB,EAAc9kF,EAAM,MAItC8kF,EAAanmF,SAAS+lF,GAAGpgE,MAAMmhE,KAAOzlF,EAAK3a,EAE7CjhB,KAAKgiH,eAAetB,EAAc9kF,EAAM,MAGxC57B,KAAKgiH,eAAetB,EAAc9kF,EAAM,SAc9CjyB,IAAK,iBACL5E,MAAO,SAAwB27G,EAAc9kF,EAAMqmF,GACjD,OAAQvB,EAAanmF,SAAS0nF,GAAQtB,eACpC,IAAK,GAEHD,EAAanmF,SAAS0nF,GAAQ1nF,SAASviB,KAAO4jB,EAC9C8kF,EAAanmF,SAAS0nF,GAAQtB,cAAgB,EAC9C3gH,KAAK+hH,kBAAkBrB,EAAanmF,SAAS0nF,GAASrmF,EACtD,MACF,KAAK,GAIC8kF,EAAanmF,SAAS0nF,GAAQ1nF,SAASviB,KAAK4lB,IAAMhC,EAAKgC,GAAK8iF,EAAanmF,SAAS0nF,GAAQ1nF,SAASviB,KAAKiJ,IAAM2a,EAAK3a,GACrH2a,EAAKgC,GAAK59B,KAAKkiH,eACftmF,EAAK3a,GAAKjhB,KAAKkiH,iBAEfliH,KAAKyhH,aAAaf,EAAanmF,SAAS0nF,IACxCjiH,KAAK0hH,aAAahB,EAAanmF,SAAS0nF,GAASrmF,GAEnD,MACF,KAAK,GAEH57B,KAAK0hH,aAAahB,EAAanmF,SAAS0nF,GAASrmF,OAavDjyB,IAAK,eACL5E,MAAO,SAAsB27G,GAE3B,GAAIyB,GAAgB,IACe,KAA/BzB,EAAaC,gBACfwB,EAAgBzB,EAAanmF,SAASviB,KACtC0oG,EAAa3d,KAAO,EACpB2d,EAAaE,aAAahjF,EAAI,EAC9B8iF,EAAaE,aAAa3/F,EAAI,GAEhCy/F,EAAaC,cAAgB,EAC7BD,EAAanmF,SAASviB,KAAO,KAC7BhY,KAAKoiH,cAAc1B,EAAc,MACjC1gH,KAAKoiH,cAAc1B,EAAc,MACjC1gH,KAAKoiH,cAAc1B,EAAc,MACjC1gH,KAAKoiH,cAAc1B,EAAc,MAEZ,MAAjByB,GACFniH,KAAK0hH,aAAahB,EAAcyB,MAepCx4G,IAAK,gBACL5E,MAAO,SAAuB27G,EAAcuB,GAC1C,GAAIf,GAAO36G,OACP66G,EAAO76G,OACP46G,EAAO56G,OACP86G,EAAO96G,OACP87G,EAAY,GAAM3B,EAAaziF,IACnC,QAAQgkF,GACN,IAAK,KACHf,EAAOR,EAAaxgE,MAAMghE,KAC1BE,EAAOV,EAAaxgE,MAAMghE,KAAOmB,EACjClB,EAAOT,EAAaxgE,MAAMihE,KAC1BE,EAAOX,EAAaxgE,MAAMihE,KAAOkB,CACjC,MACF,KAAK,KACHnB,EAAOR,EAAaxgE,MAAMghE,KAAOmB,EACjCjB,EAAOV,EAAaxgE,MAAMkhE,KAC1BD,EAAOT,EAAaxgE,MAAMihE,KAC1BE,EAAOX,EAAaxgE,MAAMihE,KAAOkB,CACjC,MACF,KAAK,KACHnB,EAAOR,EAAaxgE,MAAMghE,KAC1BE,EAAOV,EAAaxgE,MAAMghE,KAAOmB,EACjClB,EAAOT,EAAaxgE,MAAMihE,KAAOkB,EACjChB,EAAOX,EAAaxgE,MAAMmhE,IAC1B,MACF,KAAK,KACHH,EAAOR,EAAaxgE,MAAMghE,KAAOmB,EACjCjB,EAAOV,EAAaxgE,MAAMkhE,KAC1BD,EAAOT,EAAaxgE,MAAMihE,KAAOkB,EACjChB,EAAOX,EAAaxgE,MAAMmhE,KAI9BX,EAAanmF,SAAS0nF,IACpBrB,cAAgBhjF,EAAG,EAAG3c,EAAG,GACzB8hF,KAAM,EACN7iD,OAASghE,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,GACnDpjF,KAAM,GAAMyiF,EAAaziF,KACzB4iF,SAAU,EAAIH,EAAaG,SAC3BtmF,UAAYviB,KAAM,MAClB44D,SAAU,EACVkyB,MAAO4d,EAAa5d,MAAQ,EAC5B6d,cAAe,MAcnBh3G,IAAK,SACL5E,MAAO,SAAgBusC,EAAK7kC,GACClG,SAAvBvG,KAAK+/G,gBAEPzuE,EAAIO,UAAY,EAEhB7xC,KAAKsiH,YAAYtiH,KAAK+/G,cAAcrgH,KAAM4xC,EAAK7kC,OAanD9C,IAAK,cACL5E,MAAO,SAAqBw9G,EAAQjxE,EAAK7kC,GACzBlG,SAAVkG,IACFA,EAAQ,WAGmB,IAAzB81G,EAAO5B,gBACT3gH,KAAKsiH,YAAYC,EAAOhoF,SAAS+lF,GAAIhvE,GACrCtxC,KAAKsiH,YAAYC,EAAOhoF,SAASgmF,GAAIjvE,GACrCtxC,KAAKsiH,YAAYC,EAAOhoF,SAASkmF,GAAInvE,GACrCtxC,KAAKsiH,YAAYC,EAAOhoF,SAASimF,GAAIlvE,IAEvCA,EAAIY,YAAczlC,EAClB6kC,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMihE,MAC3C7vE,EAAIe,OAAOkwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMihE,MAC3C7vE,EAAI5J,SAEJ4J,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMihE,MAC3C7vE,EAAIe,OAAOkwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMmhE,MAC3C/vE,EAAI5J,SAEJ4J,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMmhE,MAC3C/vE,EAAIe,OAAOkwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMmhE,MAC3C/vE,EAAI5J,SAEJ4J,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMmhE,MAC3C/vE,EAAIe,OAAOkwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMihE,MAC3C7vE,EAAI5J,aAWDo4E,IAGTlgH,GAAQ,WAAakgH,EACrBjgH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBurC,EAAkB,WACpB,QAASA,GAAgBrjE,EAAM47D,EAAal3G,GAC1CkzE,EAAgB/2E,KAAMwiH,GAEtBxiH,KAAKm/C,KAAOA,EACZn/C,KAAK+6G,YAAcA,EACnB/6G,KAAKg/B,WAAWn7B,GAqElB,MAlEAszE,GAAaqrC,IACX74G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAUjB8F,IAAK,QACL5E,MAAO,WAgBL,IAAK,GAfD8kC,GAAIC,EAAIqG,EAAU6wE,EAAIC,EAAIwB,EAAgBvQ,EAAOC,EAEjDzX,EAAQ16F,KAAKm/C,KAAKu7C,MAClBC,EAAc36F,KAAK+6G,YAAYC,mBAC/BE,EAASl7G,KAAK+6G,YAAYG,OAG1B2B,EAAe78G,KAAK6D,QAAQg5G,aAG5B32G,EAAI,GAAK,EAAI22G,EACb12G,EAAI,EAAI,EAIHM,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAS,EAAGG,IAAK,CAC/CyrG,EAAQxX,EAAMC,EAAYl0F,GAC1B,KAAK,GAAIgK,GAAIhK,EAAI,EAAGgK,EAAIkqF,EAAYr0F,OAAQmK,IAC1C0hG,EAAQzX,EAAMC,EAAYlqF,IAE1Bo5B,EAAKsoE,EAAMv0E,EAAIs0E,EAAMt0E,EACrBkM,EAAKqoE,EAAMlxF,EAAIixF,EAAMjxF,EACrBkvB,EAAWlrC,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAGnB,IAAbqG,IACFA,EAAW,GAAMlrC,KAAK+2B,SACtB6N,EAAKsG,GAGQ,EAAI0sE,EAAf1sE,IAEAsyE,EADa,GAAM5F,EAAjB1sE,EACe,EAEAjqC,EAAIiqC,EAAWhqC,EAElCs8G,GAAkCtyE,EAElC6wE,EAAKn3E,EAAK44E,EACVxB,EAAKn3E,EAAK24E,EAEVvH,EAAOhJ,EAAM7xG,IAAIu9B,GAAKojF,EACtB9F,EAAOhJ,EAAM7xG,IAAI4gB,GAAKggG,EACtB/F,EAAO/I,EAAM9xG,IAAIu9B,GAAKojF,EACtB9F,EAAO/I,EAAM9xG,IAAI4gB,GAAKggG,QAOzBuB,IAGT5iH,GAAQ,WAAa4iH,EACrB3iH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hByrC,EAA8B,WAChC,QAASA,GAA4BvjE,EAAM47D,EAAal3G,GACtDkzE,EAAgB/2E,KAAM0iH,GAEtB1iH,KAAKm/C,KAAOA,EACZn/C,KAAK+6G,YAAcA,EACnB/6G,KAAKg/B,WAAWn7B,GAiElB,MA9DAszE,GAAaurC,IACX/4G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAUjB8F,IAAK,QACL5E,MAAO,WACL,GAAI8kC,GAAIC,EAAIqG,EAAU6wE,EAAIC,EAAIwB,EAAgBvQ,EAAOC,EAAO1rG,EAAGgK,EAE3DiqF,EAAQ16F,KAAKm/C,KAAKu7C,MAClBC,EAAc36F,KAAK+6G,YAAYC,mBAC/BE,EAASl7G,KAAK+6G,YAAYG,OAG1B2B,EAAe78G,KAAK6D,QAAQg5G,YAIhC,KAAKp2G,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAS,EAAGG,IAEtC,IADAyrG,EAAQxX,EAAMC,EAAYl0F,IACrBgK,EAAIhK,EAAI,EAAGgK,EAAIkqF,EAAYr0F,OAAQmK,IAItC,GAHA0hG,EAAQzX,EAAMC,EAAYlqF,IAGtByhG,EAAMpP,QAAUqP,EAAMrP,MAAO,CAC/Bj5D,EAAKsoE,EAAMv0E,EAAIs0E,EAAMt0E,EACrBkM,EAAKqoE,EAAMlxF,EAAIixF,EAAMjxF,EACrBkvB,EAAWlrC,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,EAEpC,IAAI64E,GAAY,GAEdF,GADa5F,EAAX1sE,GACgBlrC,KAAK8U,IAAI4oG,EAAYxyE,EAAU,GAAKlrC,KAAK8U,IAAI4oG,EAAY9F,EAAc,GAExE,EAGF,IAAb1sE,EACFA,EAAW,IAEXsyE,GAAkCtyE,EAEpC6wE,EAAKn3E,EAAK44E,EACVxB,EAAKn3E,EAAK24E,EAEVvH,EAAOhJ,EAAM7xG,IAAIu9B,GAAKojF,EACtB9F,EAAOhJ,EAAM7xG,IAAI4gB,GAAKggG,EACtB/F,EAAO/I,EAAM9xG,IAAIu9B,GAAKojF,EACtB9F,EAAO/I,EAAM9xG,IAAI4gB,GAAKggG,OAOzByB,IAGT9iH,GAAQ,WAAa8iH,EACrB7iH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB2rC,EAAe,WACjB,QAASA,GAAazjE,EAAM47D,EAAal3G,GACvCkzE,EAAgB/2E,KAAM4iH,GAEtB5iH,KAAKm/C,KAAOA,EACZn/C,KAAK+6G,YAAcA,EACnB/6G,KAAKg/B,WAAWn7B,GAoFlB,MAjFAszE,GAAayrC,IACXj5G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KASjB8F,IAAK,QACL5E,MAAO,WAUL,IAAK,GATD89G,GAAat8G,OACb46F,EAAO56F,OACPs0F,EAAc76F,KAAK+6G,YAAYE,mBAC/BrgB,EAAQ56F,KAAKm/C,KAAKy7C,MAClBsX,EAAQ3rG,OACR4rG,EAAQ5rG,OACRu8G,EAAQv8G,OAGHE,EAAI,EAAGA,EAAIo0F,EAAYv0F,OAAQG,IACtC06F,EAAOvG,EAAMC,EAAYp0F,IACrB06F,EAAK8P,aAAc,GAAQ9P,EAAKuD,OAASvD,EAAKwD,QAEbp+F,SAA/BvG,KAAKm/C,KAAKu7C,MAAMyG,EAAKuD,OAAwDn+F,SAAjCvG,KAAKm/C,KAAKu7C,MAAMyG,EAAKwD,UACzCp+F,SAAtB46F,EAAKkP,SAASqF,KAChBmN,EAAqCt8G,SAAxB46F,EAAKt9F,QAAQyC,OAAuBtG,KAAK6D,QAAQ04G,aAAepb,EAAKt9F,QAAQyC,OAC1F4rG,EAAQ/Q,EAAKhsF,GACbg9F,EAAQhR,EAAKkP,SAASqF,IACtBoN,EAAQ3hB,EAAK/rF,KAEbpV,KAAK+iH,sBAAsB7Q,EAAOC,EAAO,GAAM0Q,GAC/C7iH,KAAK+iH,sBAAsB5Q,EAAO2Q,EAAO,GAAMD,KAI/CA,EAAqCt8G,SAAxB46F,EAAKt9F,QAAQyC,OAAmD,IAA5BtG,KAAK6D,QAAQ04G,aAAqBpb,EAAKt9F,QAAQyC,OAChGtG,KAAK+iH,sBAAsB5hB,EAAK/rF,KAAM+rF,EAAKhsF,GAAI0tG,QAgBzDl5G,IAAK,wBACL5E,MAAO,SAA+BmtG,EAAOC,EAAO0Q,GAClD,GAAIh5E,GAAKqoE,EAAMt0E,EAAIu0E,EAAMv0E,EACrBkM,EAAKooE,EAAMjxF,EAAIkxF,EAAMlxF,EACrBkvB,EAAWlrC,KAAKJ,IAAII,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAAK,KAGlDk5E,EAAchjH,KAAK6D,QAAQ24G,gBAAkBqG,EAAa1yE,GAAYA,EAEtE6wE,EAAKn3E,EAAKm5E,EACV/B,EAAKn3E,EAAKk5E,CAG4Bz8G,UAAtCvG,KAAK+6G,YAAYG,OAAOhJ,EAAM7xG,MAChCL,KAAK+6G,YAAYG,OAAOhJ,EAAM7xG,IAAIu9B,GAAKojF,EACvChhH,KAAK+6G,YAAYG,OAAOhJ,EAAM7xG,IAAI4gB,GAAKggG,GAGC16G,SAAtCvG,KAAK+6G,YAAYG,OAAO/I,EAAM9xG,MAChCL,KAAK+6G,YAAYG,OAAO/I,EAAM9xG,IAAIu9B,GAAKojF,EACvChhH,KAAK+6G,YAAYG,OAAO/I,EAAM9xG,IAAI4gB,GAAKggG,OAKtC2B,IAGThjH,GAAQ,WAAagjH,EACrB/iH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBgsC,EAA2B,WAC7B,QAASA,GAAyB9jE,EAAM47D,EAAal3G,GACnDkzE,EAAgB/2E,KAAMijH,GAEtBjjH,KAAKm/C,KAAOA,EACZn/C,KAAK+6G,YAAcA,EACnB/6G,KAAKg/B,WAAWn7B,GAuGlB,MApGAszE,GAAa8rC,IACXt5G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KASjB8F,IAAK,QACL5E,MAAO,WAWL,IAAK,GAVD89G,GAAY1hB,EACZt3D,EAAIC,EAAIk3E,EAAIC,EAAI+B,EAAa7yE,EAC7ByqD,EAAQ56F,KAAKm/C,KAAKy7C,MAClBv4C,EAAS,GAETw4C,EAAc76F,KAAK+6G,YAAYE,mBAC/BtgB,EAAc36F,KAAK+6G,YAAYC,mBAC/BE,EAASl7G,KAAK+6G,YAAYG,OAGrBz0G,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IAAK,CAC3C,GAAIg4F,GAAS9D,EAAYl0F,EACzBy0G,GAAOzc,GAAQykB,SAAW,EAC1BhI,EAAOzc,GAAQ0kB,SAAW,EAI5B,IAAK,GAAI18G,GAAI,EAAGA,EAAIo0F,EAAYv0F,OAAQG,IACtC06F,EAAOvG,EAAMC,EAAYp0F,IACrB06F,EAAK8P,aAAc,IACrB4R,EAAqCt8G,SAAxB46F,EAAKt9F,QAAQyC,OAAuBtG,KAAK6D,QAAQ04G,aAAepb,EAAKt9F,QAAQyC,OAE1FujC,EAAKs3D,EAAK/rF,KAAKwoB,EAAIujE,EAAKhsF,GAAGyoB,EAC3BkM,EAAKq3D,EAAK/rF,KAAK6L,EAAIkgF,EAAKhsF,GAAG8L,EAC3BkvB,EAAWlrC,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GACpCqG,EAAwB,IAAbA,EAAiB,IAAOA,EAGnC6yE,EAAchjH,KAAK6D,QAAQ24G,gBAAkBqG,EAAa1yE,GAAYA,EAEtE6wE,EAAKn3E,EAAKm5E,EACV/B,EAAKn3E,EAAKk5E,EAEN7hB,EAAKhsF,GAAG2tF,OAAS3B,EAAK/rF,KAAK0tF,OACHv8F,SAAtB20G,EAAO/Z,EAAKuD,QACdwW,EAAO/Z,EAAKuD,MAAMwe,UAAYlC,EAC9B9F,EAAO/Z,EAAKuD,MAAMye,UAAYlC,GAEJ16G,SAAxB20G,EAAO/Z,EAAKwD,UACduW,EAAO/Z,EAAKwD,QAAQue,UAAYlC,EAChC9F,EAAO/Z,EAAKwD,QAAQwe,UAAYlC,KAGR16G,SAAtB20G,EAAO/Z,EAAKuD,QACdwW,EAAO/Z,EAAKuD,MAAM9mE,GAAKykB,EAAS2+D,EAChC9F,EAAO/Z,EAAKuD,MAAMzjF,GAAKohC,EAAS4+D,GAEN16G,SAAxB20G,EAAO/Z,EAAKwD,UACduW,EAAO/Z,EAAKwD,QAAQ/mE,GAAKykB,EAAS2+D,EAClC9F,EAAO/Z,EAAKwD,QAAQ1jF,GAAKohC,EAAS4+D,IAS1C,KAAK,GADDiC,GAAUC,EADVH,EAAc,EAETv8G,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IAAK,CAC3C,GAAIg4F,GAAS9D,EAAYl0F,EACzBy8G,GAAWj+G,KAAKL,IAAIo+G,EAAa/9G,KAAKJ,KAAKm+G,EAAa9H,EAAOzc,GAAQykB,WACvEC,EAAWl+G,KAAKL,IAAIo+G,EAAa/9G,KAAKJ,KAAKm+G,EAAa9H,EAAOzc,GAAQ0kB,WAEvEjI,EAAOzc,GAAQ7gE,GAAKslF,EACpBhI,EAAOzc,GAAQx9E,GAAKkiG,EAMtB,IAAK,GAFDC,GAAU,EACVC,EAAU,EACL58G,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IAAK,CAC3C,GAAIg4F,GAAS9D,EAAYl0F,EACzB28G,IAAWlI,EAAOzc,GAAQ7gE,EAC1BylF,GAAWnI,EAAOzc,GAAQx9E,EAK5B,IAAK,GAHDqiG,GAAeF,EAAUzoB,EAAYr0F,OACrCi9G,EAAeF,EAAU1oB,EAAYr0F,OAEhCG,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IAAK,CAC3C,GAAIg4F,GAAS9D,EAAYl0F,EACzBy0G,GAAOzc,GAAQ7gE,GAAK0lF,EACpBpI,EAAOzc,GAAQx9E,GAAKsiG,OAKnBN,IAGTrjH,GAAQ,WAAaqjH,EACrBpjH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBusC,EAAuB,WACzB,QAASA,GAAqBrkE,EAAM47D,EAAal3G,GAC/CkzE,EAAgB/2E,KAAMwjH,GAEtBxjH,KAAKm/C,KAAOA,EACZn/C,KAAK+6G,YAAcA,EACnB/6G,KAAKg/B,WAAWn7B,GA2ClB,MAxCAszE,GAAaqsC,IACX75G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAGjB8F,IAAK,QACL5E,MAAO,WASL,IAAK,GARD8kC,GAAKtjC,OACLujC,EAAKvjC,OACL4pC,EAAW5pC,OACXq1B,EAAOr1B,OACPm0F,EAAQ16F,KAAKm/C,KAAKu7C,MAClBC,EAAc36F,KAAK+6G,YAAYC,mBAC/BE,EAASl7G,KAAK+6G,YAAYG,OAErBz0G,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IAAK,CAC3C,GAAIg4F,GAAS9D,EAAYl0F,EACzBm1B,GAAO8+D,EAAM+D,GACb50D,GAAMjO,EAAKgC,EACXkM,GAAMlO,EAAK3a,EACXkvB,EAAWlrC,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAEpC9pC,KAAK8gH,iBAAiB3wE,EAAUtG,EAAIC,EAAIoxE,EAAQt/E,OASpDjyB,IAAK,mBACL5E,MAAO,SAA0BorC,EAAUtG,EAAIC,EAAIoxE,EAAQt/E,GACzD,GAAImlF,GAA4B,IAAb5wE,EAAiB,EAAInwC,KAAK6D,QAAQy4G,eAAiBnsE,CACtE+qE,GAAOt/E,EAAKv7B,IAAIu9B,EAAIiM,EAAKk3E,EACzB7F,EAAOt/E,EAAKv7B,IAAI4gB,EAAI6oB,EAAKi3E,MAItByC,IAGT5jH,GAAQ,WAAa4jH,EACrB3jH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxck9G,EAAoBvjH,EAAoB,IAExCwjH,EAAoB9sC,EAAuB6sC,GAE3CE,EAAkC,SAAWC,GAG/C,QAASD,GAAgCxkE,EAAM47D,EAAal3G,GAC1DkzE,EAAgB/2E,KAAM2jH,GAEtBzZ,EAAK9iG,OAAOsjG,eAAeiZ,EAAgC1wG,WAAY,cAAejT,MAAMO,KAAKP,KAAMm/C,EAAM47D,EAAal3G,GAsC5H,MA3CAgmG,GAAU8Z,EAAiCC,GAmB3CzsC,EAAawsC,IACXh6G,IAAK,mBACL5E,MAAO,SAA0BorC,EAAUtG,EAAIC,EAAIlO,EAAM8kF,GACtC,IAAbvwE,IACFA,EAAW,GAAMlrC,KAAK+2B,SACtB6N,EAAKsG,GAGHnwC,KAAKkgH,uBAAyB,IAChC/vE,EAAWlrC,KAAKJ,IAAI,GAAM7E,KAAKkgH,uBAAyBtkF,EAAKynE,MAAMztD,OAAQzF,EAAWvU,EAAKynE,MAAMztD,QAGnG,IAAIiuE,GAASjoF,EAAKg/D,MAAMt0F,OAAS,EAG7By6G,EAAe/gH,KAAK6D,QAAQw4G,sBAAwBqE,EAAa3d,KAAOnnE,EAAK/3B,QAAQk/F,KAAO8gB,EAAS5+G,KAAK8U,IAAIo2B,EAAU,GACxH6wE,EAAKn3E,EAAKk3E,EACVE,EAAKn3E,EAAKi3E,CAEd/gH,MAAK+6G,YAAYG,OAAOt/E,EAAKv7B,IAAIu9B,GAAKojF,EACtChhH,KAAK+6G,YAAYG,OAAOt/E,EAAKv7B,IAAI4gB,GAAKggG,MAInC0C,GACND,EAAkB,WAErB9jH,GAAQ,WAAa+jH,EACrB9jH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxcu9G,EAAyB5jH,EAAoB,IAE7C6jH,EAAyBntC,EAAuBktC,GAEhDE,EAAuC,SAAWC,GAGpD,QAASD,GAAqC7kE,EAAM47D,EAAal3G,GAC/DkzE,EAAgB/2E,KAAMgkH,GAEtB9Z,EAAK9iG,OAAOsjG,eAAesZ,EAAqC/wG,WAAY,cAAejT,MAAMO,KAAKP,KAAMm/C,EAAM47D,EAAal3G,GAoBjI,MAzBAgmG,GAAUma,EAAsCC,GAahD9sC,EAAa6sC,IACXr6G,IAAK,mBACL5E,MAAO,SAA0BorC,EAAUtG,EAAIC,EAAIoxE,EAAQt/E,GACzD,GAAIuU,EAAW,EAAG,CAChB,GAAI0zE,GAASjoF,EAAKg/D,MAAMt0F,OAAS,EAC7By6G,EAAe/gH,KAAK6D,QAAQy4G,eAAiBuH,EAASjoF,EAAK/3B,QAAQk/F,IACvEmY,GAAOt/E,EAAKv7B,IAAIu9B,EAAIiM,EAAKk3E,EACzB7F,EAAOt/E,EAAKv7B,IAAI4gB,EAAI6oB,EAAKi3E,OAKxBiD,GACND,EAAuB,WAE1BnkH,GAAQ,WAAaokH,EACrBnkH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBitC,EAAehkH,EAAoB,IAEnCikH,EAAgBvtC,EAAuBstC,GAEvCE,EAA0BlkH,EAAoB,KAE9CmkH,EAA2BztC,EAAuBwtC,GAElDzjH,EAAOT,EAAoB,GAE3BokH,EAAgB,WAClB,QAASA,GAAcnlE,GACrB,GAAI8C,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAMskH,GAEtBtkH,KAAKm/C,KAAOA,EACZn/C,KAAKukH,kBACLvkH,KAAKwkH,kBAELxkH,KAAK6D,WACL7D,KAAK2+C,kBACLh+C,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAc,WACjC6iB,EAAMsiE,kBAAoBtiE,EAAMuiE,oBAqyBpC,MAjyBArtC,GAAamtC,IACX36G,IAAK,aACL5E,MAAO,SAAoBlB,OAU3B8F,IAAK,mBACL5E,MAAO,SAA0B0/G,EAAS5gH,GACxB0C,SAAZk+G,EACFA,EAAUzkH,KAAK0kH,cACa,gBAAZD,KAChB5gH,EAAU7D,KAAK2kH,cAAcF,GAC7BA,EAAUzkH,KAAK0kH,cAIjB,KAAK,GADDE,MACKn+G,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,GAC7Cm1B,GAAKg/D,MAAMt0F,QAAUm+G,GACvBG,EAAep9G,KAAKo0B,EAAKv7B,IAI7B,IAAK,GAAIoG,GAAI,EAAGA,EAAIm+G,EAAet+G,OAAQG,IACzCzG,KAAKy/F,oBAAoBmlB,EAAen+G,GAAI5C,GAAS,EAGvD7D,MAAKm/C,KAAKE,QAAQzH,KAAK,mBASzBjuC,IAAK,UACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAC/Ew+G,EAAcx+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzF,IAA8BE,SAA1B1C,EAAQihH,cACV,KAAM,IAAI99G,OAAM,iFAIlBnD,GAAU7D,KAAK2kH,cAAc9gH,EAM7B,KAAK,GAJDkhH,MACAC,KAGKv+G,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIg4F,GAASz+F,KAAKm/C,KAAKw7C,YAAYl0F,GAC/Bm1B,EAAO57B,KAAKm/C,KAAKu7C,MAAM+D,GACvBwmB,EAAgBd,EAAc,WAAWe,aAAatpF,EAC1D,IAAI/3B,EAAQihH,cAAcG,MAAmB,EAAM,CACjDF,EAActmB,GAAUz+F,KAAKm/C,KAAKu7C,MAAM+D,EAGxC,KAAK,GAAIlpF,GAAK,EAAGA,EAAKqmB,EAAKg/D,MAAMt0F,OAAQiP,IAAM,CAC7C,GAAI4rF,GAAOvlE,EAAKg/D,MAAMrlF,EACehP,UAAjCvG,KAAKwkH,eAAerjB,EAAK9gG,MAC3B2kH,EAAc7jB,EAAK9gG,IAAM8gG,KAMjCnhG,KAAKmlH,SAASJ,EAAeC,EAAenhH,EAASghH,MAUvDl7G,IAAK,qBACL5E,MAAO,SAA4BqgH,EAAWvhH;AAC5C,GAAIghH,GAAcx+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFxC,GAAU7D,KAAK2kH,cAAc9gH,EAS7B,KAAK,GARDwhH,MACAC,KACAnkB,EAAO56F,OACPq0F,EAAQr0F,OACRq1B,EAAOr1B,OACPk4F,EAASl4F,OACTg/G,EAAoBh/G,OAEfE,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIs+G,MACAC,IAIJ,IAHAvmB,EAASz+F,KAAKm/C,KAAKw7C,YAAYl0F,GAGLF,SAAtB++G,EAAU7mB,GAAuB,CACnC8mB,EAAoB,EACpB3pF,EAAO57B,KAAKm/C,KAAKu7C,MAAM+D,GACvB7D,IACA,KAAK,GAAInqF,GAAI,EAAGA,EAAImrB,EAAKg/D,MAAMt0F,OAAQmK,IACrC0wF,EAAOvlE,EAAKg/D,MAAMnqF,GACmBlK,SAAjCvG,KAAKwkH,eAAerjB,EAAK9gG,MACvB8gG,EAAKuD,OAASvD,EAAKwD,QACrB4gB,IAEF3qB,EAAMpzF,KAAK25F,GAKf,IAAIokB,IAAsBH,EAAW,CAEnC,IAAK,GADDI,IAAsB,EACjB/0G,EAAI,EAAGA,EAAImqF,EAAMt0F,OAAQmK,IAAK,CACrC0wF,EAAOvG,EAAMnqF,EACb,IAAIg1G,GAAczlH,KAAK0lH,gBAAgBvkB,EAAM1C,EAE7C,IAA8Bl4F,SAA1B1C,EAAQihH,cACVE,EAAc7jB,EAAK9gG,IAAM8gG,EACzB4jB,EAActmB,GAAUz+F,KAAKm/C,KAAKu7C,MAAM+D,GACxCsmB,EAAcU,GAAezlH,KAAKm/C,KAAKu7C,MAAM+qB,GAC7CH,EAAU7mB,IAAU,MACf,CACL,GAAIwmB,GAAgBd,EAAc,WAAWe,aAAallH,KAAKm/C,KAAKu7C,MAAM+D,GAC1E,IAAI56F,EAAQihH,cAAcG,MAAmB,EAItC,CAELO,GAAsB,CACtB,OANAR,EAAc7jB,EAAK9gG,IAAM8gG,EACzB4jB,EAActmB,GAAUz+F,KAAKm/C,KAAKu7C,MAAM+D,GACxC6mB,EAAU7mB,IAAU,GAUtBr3F,OAAO6H,KAAK81G,GAAez+G,OAAS,GAAKc,OAAO6H,KAAK+1G,GAAe1+G,OAAS,GAAKk/G,KAAwB,GAC5GH,EAAS79G,MAAOkzF,MAAOqqB,EAAenqB,MAAOoqB,MAMrD,IAAK,GAAIv+G,GAAI,EAAGA,EAAI4+G,EAAS/+G,OAAQG,IACnCzG,KAAKmlH,SAASE,EAAS5+G,GAAGi0F,MAAO2qB,EAAS5+G,GAAGm0F,MAAO/2F,GAAS,EAG3DghH,MAAgB,GAClB7kH,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAU3BjuC,IAAK,kBACL5E,MAAO,SAAyBlB,GAC9B,GAAIghH,GAAcx+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFrG,MAAK2lH,mBAAmB,EAAG9hH,EAASghH,MAStCl7G,IAAK,iBACL5E,MAAO,SAAwBlB,GAC7B,GAAIghH,GAAcx+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFrG,MAAK2lH,mBAAmB,EAAG9hH,EAASghH,MAUtCl7G,IAAK,sBACL5E,MAAO,SAA6B05F,EAAQ56F,GAC1C,GAAIghH,GAAcx+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,IAAeE,SAAXk4F,EACF,KAAM,IAAIz3F,OAAM,6CAElB,IAAgCT,SAA5BvG,KAAKm/C,KAAKu7C,MAAM+D,GAClB,KAAM,IAAIz3F,OAAM,0DAGlB,IAAI40B,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,EAC3B56F,GAAU7D,KAAK2kH,cAAc9gH,EAAS+3B,GACEr1B,SAApC1C,EAAQ+hH,sBAAsBhoF,IAChC/5B,EAAQ+hH,sBAAsBhoF,EAAIhC,EAAKgC,GAEDr3B,SAApC1C,EAAQ+hH,sBAAsB3kG,IAChCpd,EAAQ+hH,sBAAsB3kG,EAAI2a,EAAK3a,GAEG1a,SAAxC1C,EAAQ+hH,sBAAsBnjB,QAChC5+F,EAAQ+hH,sBAAsBnjB,SAC9B5+F,EAAQ+hH,sBAAsBnjB,MAAM7kE,EAAIhC,EAAK/3B,QAAQ4+F,MAAM7kE,EAC3D/5B,EAAQ+hH,sBAAsBnjB,MAAMxhF,EAAI2a,EAAK/3B,QAAQ4+F,MAAMxhF,EAG7D,IAAI8jG,MACAC,KACAa,EAAejqF,EAAKv7B,GACpBylH,EAAsB3B,EAAc,WAAWe,aAAatpF,EAChEmpF,GAAcc,GAAgBjqF,CAG9B,KAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKg/D,MAAMt0F,OAAQG,IAAK,CAC1C,GAAI06F,GAAOvlE,EAAKg/D,MAAMn0F,EACtB,IAAqCF,SAAjCvG,KAAKwkH,eAAerjB,EAAK9gG,IAAmB,CAC9C,GAAIolH,GAAczlH,KAAK0lH,gBAAgBvkB,EAAM0kB,EAG7C,IAAyCt/G,SAArCvG,KAAKukH,eAAekB,GACtB,GAAIA,IAAgBI,EAClB,GAA8Bt/G,SAA1B1C,EAAQihH,cACVE,EAAc7jB,EAAK9gG,IAAM8gG,EACzB4jB,EAAcU,GAAezlH,KAAKm/C,KAAKu7C,MAAM+qB,OACxC,CAEL,GAAIM,GAAqB5B,EAAc,WAAWe,aAAallH,KAAKm/C,KAAKu7C,MAAM+qB,GAC3E5hH,GAAQihH,cAAcgB,EAAqBC,MAAwB,IACrEf,EAAc7jB,EAAK9gG,IAAM8gG,EACzB4jB,EAAcU,GAAezlH,KAAKm/C,KAAKu7C,MAAM+qB,QAKjDT,GAAc7jB,EAAK9gG,IAAM8gG,GAMjCnhG,KAAKmlH,SAASJ,EAAeC,EAAenhH,EAASghH,MAcvDl7G,IAAK,sBACL5E,MAAO,SAA6BggH,EAAeC,EAAeY,EAAuBI,GAYvF,IAAK,GAXD7kB,GAAO56F,OACPk/G,EAAcl/G,OACd0/G,EAAY1/G,OACZm+F,EAAOn+F,OACPo+F,EAASp+F,OACT2/G,EAAc3/G,OAId4/G,EAAY/+G,OAAO6H,KAAK81G,GACxBqB,KACK3/G,EAAI,EAAGA,EAAI0/G,EAAU7/G,OAAQG,IAAK,CACzCg/G,EAAcU,EAAU1/G,GACxBw/G,EAAYlB,EAAcU,EAG1B,KAAK,GAAIh1G,GAAI,EAAGA,EAAIw1G,EAAUrrB,MAAMt0F,OAAQmK,IAC1C0wF,EAAO8kB,EAAUrrB,MAAMnqF,GAEclK,SAAjCvG,KAAKwkH,eAAerjB,EAAK9gG,MAEvB8gG,EAAKuD,MAAQvD,EAAKwD,OACpBqgB,EAAc7jB,EAAK9gG,IAAM8gG,EAGrBA,EAAKuD,MAAQ+gB,GAEf/gB,EAAOkhB,EAAsBvlH,GAC7BskG,EAASxD,EAAKwD,OACduhB,EAAcvhB,IAEdD,EAAOvD,EAAKuD,KACZC,EAASihB,EAAsBvlH,GAC/B6lH,EAAcxhB,GAKiBn+F,SAA/Bw+G,EAAcmB,IAChBE,EAAY5+G,MAAO25F,KAAMA,EAAMwD,OAAQA,EAAQD,KAAMA,KAQ7D,IAAK,GAAIj0F,GAAI,EAAGA,EAAI21G,EAAY9/G,OAAQmK,IAAK,CAC3C,GAAI41G,GAAQD,EAAY31G,GAAG0wF,KAEvB8jB,EAAgBd,EAAc,WAAWe,aAAamB,EAAO,OAEjE1lH,GAAK0G,WAAW49G,EAAee,GAG/Bf,EAAc7vG,KAAOgxG,EAAY31G,GAAGk0F,OACpCsgB,EAAc9vG,GAAKixG,EAAY31G,GAAGi0F,KAClCugB,EAAc5kH,GAAK,eAAiBM,EAAKgF,YAIzC,IAAI2gH,GAAUtmH,KAAKm/C,KAAKq8C,UAAUE,WAAWupB,EAC7CqB,GAAQC,0BAA4BF,EAAMhmH,GAG1CL,KAAKm/C,KAAKy7C,MAAM0rB,EAAQjmH,IAAMimH,EAC9BA,EAAQnW,UAGRnwG,KAAKwmH,mBAAmBH,GACxBA,EAAMrnF,YAAai9C,SAAS,EAAOlf,QAAQ,QAY/CpzD,IAAK,gBACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EASnF,OAPsCE,UAAlC1C,EAAQmiH,wBACVniH,EAAQmiH,0BAE4Bz/G,SAAlC1C,EAAQ+hH,wBACV/hH,EAAQ+hH,0BAGH/hH,KAYT8F,IAAK,WACL5E,MAAO,SAAkBggH,EAAeC,EAAenhH,GACrD,GAAIghH,GAAcx+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,MAAIe,OAAO6H,KAAK81G,GAAez+G,OAAS,GAAxC,CAKA,IAAK,GAAIm4F,KAAUsmB,GACjB,GAAIA,EAAc/+G,eAAey4F,IACKl4F,SAAhCvG,KAAKukH,eAAe9lB,GACtB,MAKN,IAAImnB,GAAwBjlH,EAAK0G,cAAexD,EAAQ+hH,sBAGxD,IAAkCr/G,SAA9B1C,EAAQ4iH,kBAAiC,CAE3C,GAAIC,KACJ,KAAK,GAAIjoB,KAAUsmB,GACjB,GAAIA,EAAc/+G,eAAey4F,GAAS,CACxC,GAAIwmB,GAAgBd,EAAc,WAAWe,aAAaH,EAActmB,GACxEioB,GAAkBl/G,KAAKy9G,GAK3B,GAAI0B,KACJ,KAAK,GAAIjoB,KAAUsmB,GACjB,GAAIA,EAAch/G,eAAe04F,IAEF,iBAAzBA,EAAO9xF,OAAO,EAAG,IAAwB,CAC3C,GAAIq4G,GAAgBd,EAAc,WAAWe,aAAaF,EAActmB,GAAS,OACjFioB,GAAkBn/G,KAAKy9G,GAM7B,GADAW,EAAwB/hH,EAAQ4iH,kBAAkBb,EAAuBc,EAAmBC,IACvFf,EACH,KAAM,IAAI5+G,OAAM,8DAKaT,SAA7Bq/G,EAAsBvlH,KACxBulH,EAAsBvlH,GAAK,WAAaM,EAAKgF,aAE/C,IAAIihH,GAAYhB,EAAsBvlH,EAEFkG,UAAhCq/G,EAAsB1nF,QACxB0nF,EAAsB1nF,MAAQ,UAIhC,IAAI3H,GAAMhwB,MACsBA,UAA5Bq/G,EAAsBhoF,IACxBrH,EAAMv2B,KAAK6mH,oBAAoB9B,GAC/Ba,EAAsBhoF,EAAIrH,EAAIqH,GAEAr3B,SAA5Bq/G,EAAsB3kG,IACZ1a,SAARgwB,IACFA,EAAMv2B,KAAK6mH,oBAAoB9B,IAEjCa,EAAsB3kG,EAAIsV,EAAItV,GAIhC2kG,EAAsBvlH,GAAKumH,CAG3B,IAAIE,GAAc9mH,KAAKm/C,KAAKq8C,UAAUC,WAAWmqB,EAAuBvB,EAAyB,WACjGyC,GAAYznB,WAAY,EACxBynB,EAAYC,eAAiBhC,EAC7B+B,EAAYE,eAAiBhC,EAE7B8B,EAAYd,sBAAwBniH,EAAQmiH,sBAG5ChmH,KAAKm/C,KAAKu7C,MAAMkrB,EAAsBvlH,IAAMymH,EAG5C9mH,KAAKinH,oBAAoBlC,EAAeC,EAAeY,EAAuB/hH,EAAQmiH,sBAGtF,KAAK,GAAItnB,KAAUsmB,GACjB,GAAIA,EAAch/G,eAAe04F,IACCn4F,SAA5BvG,KAAKm/C,KAAKy7C,MAAM8D,GAAuB,CACzC,GAAIyC,GAAOnhG,KAAKm/C,KAAKy7C,MAAM8D,EAE3B1+F,MAAKwmH,mBAAmBrlB,GAExBA,EAAKniE,YAAai9C,SAAS,EAAOlf,QAAQ,IAMhD,IAAK,GAAI0hC,KAAUsmB,GACbA,EAAc/+G,eAAey4F,KAC/Bz+F,KAAKukH,eAAe9lB,IAAYmoB,UAAWhB,EAAsBvlH,GAAIu7B,KAAM57B,KAAKm/C,KAAKu7C,MAAM+D,IAC3Fz+F,KAAKm/C,KAAKu7C,MAAM+D,GAAQz/D,YAAa+9B,QAAQ,EAAMkf,SAAS,IAKhE2pC,GAAsBvlH,GAAKkG,OAGvBs+G,KAAgB,GAClB7kH,KAAKm/C,KAAKE,QAAQzH,KAAK,oBAI3BjuC,IAAK,qBACL5E,MAAO,SAA4Bo8F,GACI56F,SAAjCvG,KAAKwkH,eAAerjB,EAAK9gG,MAC3BL,KAAKwkH,eAAerjB,EAAK9gG,KAAQ47E,QAASklB,EAAKt9F,QAAQo4E,QAASlf,OAAQokC,EAAKt9F,QAAQk5D,YAIzFpzD,IAAK,eACL5E,MAAO,SAAsBo8F,GAC3B,GAAI+lB,GAAkBlnH,KAAKwkH,eAAerjB,EAAK9gG,GACvBkG,UAApB2gH,IACF/lB,EAAKniE,YAAai9C,QAASirC,EAAgBjrC,QAASlf,OAAQmqD,EAAgBnqD,eACrE/8D,MAAKwkH,eAAerjB,EAAK9gG,QAUpCsJ,IAAK,YACL5E,MAAO,SAAmB05F,GACxB,MAAgCl4F,UAA5BvG,KAAKm/C,KAAKu7C,MAAM+D,GACXz+F,KAAKm/C,KAAKu7C,MAAM+D,GAAQY,aAAc,GAE7C1/E,QAAQu+B,IAAI,yBACL,MAWXv0C,IAAK,sBACL5E,MAAO,SAA6BggH,GAOlC,IAAK,GANDoB,GAAY/+G,OAAO6H,KAAK81G,GACxB7D,EAAO6D,EAAcoB,EAAU,IAAIvoF,EACnCwjF,EAAO2D,EAAcoB,EAAU,IAAIvoF,EACnCujF,EAAO4D,EAAcoB,EAAU,IAAIllG,EACnCogG,EAAO0D,EAAcoB,EAAU,IAAIllG,EACnC2a,EAAOr1B,OACFE,EAAI,EAAGA,EAAI0/G,EAAU7/G,OAAQG,IACpCm1B,EAAOmpF,EAAcoB,EAAU1/G,IAC/By6G,EAAOtlF,EAAKgC,EAAIsjF,EAAOtlF,EAAKgC,EAAIsjF,EAChCE,EAAOxlF,EAAKgC,EAAIwjF,EAAOxlF,EAAKgC,EAAIwjF,EAChCD,EAAOvlF,EAAK3a,EAAIkgG,EAAOvlF,EAAK3a,EAAIkgG,EAChCE,EAAOzlF,EAAK3a,EAAIogG,EAAOzlF,EAAK3a,EAAIogG,CAGlC,QAASzjF,EAAG,IAAOsjF,EAAOE,GAAOngG,EAAG,IAAOkgG,EAAOE,OASpD13G,IAAK,cACL5E,MAAO,SAAqBoiH,EAAetjH,GACzC,GAAIghH,GAAcx+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,IAAsBE,SAAlB4gH,EACF,KAAM,IAAIngH,OAAM,4CAElB,IAAuCT,SAAnCvG,KAAKm/C,KAAKu7C,MAAMysB,GAClB,KAAM,IAAIngH,OAAM,4DAElB,IAAsDT,SAAlDvG,KAAKm/C,KAAKu7C,MAAMysB,GAAeJ,eAEjC,WADApnG,SAAQu+B,IAAI,YAAcipE,EAAgB,qBAG5C,IAAIL,GAAc9mH,KAAKm/C,KAAKu7C,MAAMysB,GAC9BJ,EAAiBD,EAAYC,eAC7BC,EAAiBF,EAAYE,cAGjC,IAAgBzgH,SAAZ1C,GAAqD0C,SAA5B1C,EAAQujH,iBAAoE,kBAA5BvjH,GAAQujH,gBAAgC,CACnH,GAAI1I,MACA2I,GAAoBzpF,EAAGkpF,EAAYlpF,EAAG3c,EAAG6lG,EAAY7lG,EACzD,KAAK,GAAIw9E,KAAUsoB,GACjB,GAAIA,EAAe/gH,eAAey4F,GAAS,CACzC,GAAI0jB,GAAgBniH,KAAKm/C,KAAKu7C,MAAM+D,EACpCigB,GAAUjgB,IAAY7gE,EAAGukF,EAAcvkF,EAAG3c,EAAGkhG,EAAclhG,GAG/D,GAAIqmG,GAAezjH,EAAQujH,gBAAgBC,EAAiB3I,EAE5D,KAAK,GAAIjgB,KAAUsoB,GACjB,GAAIA,EAAe/gH,eAAey4F,GAAS,CACzC,GAAI0jB,GAAgBniH,KAAKm/C,KAAKu7C,MAAM+D,EACPl4F,UAAzB+gH,EAAa7oB,KACf0jB,EAAcvkF,EAA+Br3B,SAA3B+gH,EAAa7oB,GAAQ7gE,EAAkBkpF,EAAYlpF,EAAI0pF,EAAa7oB,GAAQ7gE,EAC9FukF,EAAclhG,EAA+B1a,SAA3B+gH,EAAa7oB,GAAQx9E,EAAkB6lG,EAAY7lG,EAAIqmG,EAAa7oB,GAAQx9E,QAMpG,KAAK,GAAIw9E,KAAUsoB,GACjB,GAAIA,EAAe/gH,eAAey4F,GAAS,CACzC,GAAI0jB,GAAgBniH,KAAKm/C,KAAKu7C,MAAM+D,EACpC0jB,GAAgB4E,EAAetoB,GAE3B0jB,EAAct+G,QAAQ4+F,MAAM7kE,KAAM,IACpCukF,EAAcvkF,EAAIkpF,EAAYlpF,GAE5BukF,EAAct+G,QAAQ4+F,MAAMxhF,KAAM,IACpCkhG,EAAclhG,EAAI6lG,EAAY7lG,GAOtC,IAAK,GAAIw9E,KAAUsoB,GACjB,GAAIA,EAAe/gH,eAAey4F,GAAS,CACzC,GAAI0jB,GAAgBniH,KAAKm/C,KAAKu7C,MAAM+D,EAGpC0jB,GAAcxD,GAAKmI,EAAYnI,GAC/BwD,EAAcvD,GAAKkI,EAAYlI,GAG/BuD,EAAcnjF,YAAa+9B,QAAQ,EAAOkf,SAAS,UAE5Cj8E,MAAKukH,eAAe9lB,GAM/B,IAAK,GADD8oB,MACK9gH,EAAI,EAAGA,EAAIqgH,EAAYlsB,MAAMt0F,OAAQG,IAC5C8gH,EAAiB//G,KAAKs/G,EAAYlsB,MAAMn0F,GAI1C,KAAK,GAAIA,GAAI,EAAGA,EAAI8gH,EAAiBjhH,OAAQG,IAAK,CAChD,GAAI06F,GAAOomB,EAAiB9gH,GAExBy/G,EAAclmH,KAAK0lH,gBAAgBvkB,EAAMgmB,EAE7C,IAAyC5gH,SAArCvG,KAAKukH,eAAe2B,GAA4B,CAElD,GAAIsB,GAAexnH,KAAKm/C,KAAKu7C,MAAM16F,KAAKukH,eAAe2B,GAAaU,WAChEa,EAAeznH,KAAKm/C,KAAKy7C,MAAMuG,EAAKolB,0BACxC,IAAqBhgH,SAAjBkhH,EAA4B,CAC9BD,EAAaR,eAAeS,EAAapnH,IAAMonH,QAGxCT,GAAeS,EAAapnH,GAInC,IAAIskG,GAAS8iB,EAAa9iB,OACtBD,EAAO+iB,EAAa/iB,IACpB+iB,GAAa/iB,MAAQwhB,EACvBxhB,EAAO1kG,KAAKukH,eAAe2B,GAAaU,UAExCjiB,EAAS3kG,KAAKukH,eAAe2B,GAAaU,SAI5C,IAAI3B,GAAgBd,EAAc,WAAWe,aAAauC,EAAc,OACxE9mH,GAAK0G,WAAW49G,EAAeuC,EAAaxB,sBAG5C,IAAI3lH,GAAK,eAAiBM,EAAKgF,YAC/BhF,GAAK0G,WAAW49G,GAAiB7vG,KAAMuvF,EAAQxvF,GAAIuvF,EAAM3nC,QAAQ,EAAOkf,SAAS,EAAM57E,GAAIA,GAG3F,IAAIimH,GAAUtmH,KAAKm/C,KAAKq8C,UAAUE,WAAWupB,EAC7CqB,GAAQC,0BAA4BkB,EAAapnH,GACjDL,KAAKm/C,KAAKy7C,MAAMv6F,GAAMimH,EACtBtmH,KAAKm/C,KAAKy7C,MAAMv6F,GAAI8vG,eAEjB,CACL,GAAIuX,GAAe1nH,KAAKm/C,KAAKy7C,MAAMuG,EAAKolB,0BACnBhgH,UAAjBmhH,GACF1nH,KAAK2nH,aAAaD,GAGtBvmB,EAAKiP,UAELjP,EAAK8O,mBACEjwG,MAAKm/C,KAAKy7C,MAAMuG,EAAK9gG,IAI9B,IAAK,GAAIq+F,KAAUsoB,GACbA,EAAehhH,eAAe04F,IAChC1+F,KAAK2nH,aAAaX,EAAetoB,UAK9B1+F,MAAKm/C,KAAKu7C,MAAMysB,GAEnBtC,KAAgB,GAClB7kH,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAI3BjuC,IAAK,oBACL5E,MAAO,SAA2B6hH,GAChC,GAAIgB,KACJ,IAAI5nH,KAAKq/F,UAAUunB,MAAe,EAAM,CACtC,GAAIG,GAAiB/mH,KAAKm/C,KAAKu7C,MAAMksB,GAAWG,cAChD,KAAK,GAAItoB,KAAUsoB,GACbA,EAAe/gH,eAAey4F,IAChCmpB,EAAWpgH,KAAKxH,KAAKm/C,KAAKu7C,MAAM+D,GAAQp+F,IAK9C,MAAOunH,MASTj+G,IAAK,WACL5E,MAAO,SAAkB05F,GAKvB,IAJA,GAAI38F,MACA+C,EAAM,IACNinC,EAAU,EAEyBvlC,SAAhCvG,KAAKukH,eAAe9lB,IAAmC55F,EAAVinC,GAClDhqC,EAAM0F,KAAKxH,KAAKm/C,KAAKu7C,MAAM+D,GAAQp+F,IACnCo+F,EAASz+F,KAAKukH,eAAe9lB,GAAQmoB,UACrC96E,GAKF,OAHAhqC,GAAM0F,KAAKxH,KAAKm/C,KAAKu7C,MAAM+D,GAAQp+F,IACnCyB,EAAM+lH,UAEC/lH,KAWT6H,IAAK,kBACL5E,MAAO,SAAyBo8F,EAAM1C,GACpC,MAAI0C,GAAKuD,MAAQjG,EACR0C,EAAKuD,KACHvD,EAAKwD,QAAUlG,EACjB0C,EAAKwD,OAELxD,EAAKwD,UAWhBh7F,IAAK,cACL5E,MAAO,WAML,IAAK,GALD+iH,GAAU,EACVC,EAAiB,EACjBC,EAAa,EACbC,EAAa,EAERxhH,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,GAC7Cm1B,GAAKg/D,MAAMt0F,OAAS2hH,IACtBA,EAAarsF,EAAKg/D,MAAMt0F,QAE1BwhH,GAAWlsF,EAAKg/D,MAAMt0F,OACtByhH,GAAkB9iH,KAAK8U,IAAI6hB,EAAKg/D,MAAMt0F,OAAQ,GAC9C0hH,GAAc,EAEhBF,GAAoBE,EACpBD,GAAkCC,CAElC,IAAIE,GAAWH,EAAiB9iH,KAAK8U,IAAI+tG,EAAS,GAC9CK,EAAoBljH,KAAKu0C,KAAK0uE,GAE9BE,EAAenjH,KAAKuK,MAAMs4G,EAAU,EAAIK,EAO5C,OAJIC,GAAeH,IACjBG,EAAeH,GAGVG,MAIJ9D,IAGT1kH,GAAQ,WAAa0kH,EACrBzkH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBt2E,EAAOT,EAAoB,GAE3BmoH,EAAc,WAChB,QAASA,KACPtxC,EAAgB/2E,KAAMqoH,GA+GxB,MAxGAlxC,GAAakxC,EAAa,OACxB1+G,IAAK,WACL5E,MAAO,SAAkBujH,GACvB,GAMI1sF,GANA2sF,EAAgBliH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF86G,EAAO,IACPE,EAAO,KACPH,EAAO,IACPE,EAAO,IAEX,IAAImH,EAAcjiH,OAAS,EACzB,IAAK,GAAIG,GAAI,EAAGA,EAAI8hH,EAAcjiH,OAAQG,IACxCm1B,EAAO0sF,EAASC,EAAc9hH,IAC1By6G,EAAOtlF,EAAKynE,MAAMkB,YAAY57F,OAChCu4G,EAAOtlF,EAAKynE,MAAMkB,YAAY57F,MAE5By4G,EAAOxlF,EAAKynE,MAAMkB,YAAY3yD,QAChCwvE,EAAOxlF,EAAKynE,MAAMkB,YAAY3yD,OAE5BuvE,EAAOvlF,EAAKynE,MAAMkB,YAAY17F,MAChCs4G,EAAOvlF,EAAKynE,MAAMkB,YAAY17F,KAE5Bw4G,EAAOzlF,EAAKynE,MAAMkB,YAAYl2D,SAChCgzE,EAAOzlF,EAAKynE,MAAMkB,YAAYl2D,OAQpC,OAHa,OAAT6yE,GAAyB,OAATE,GAA0B,MAATD,GAAyB,OAATE,IACnDF,EAAO,EAAGE,EAAO,EAAGH,EAAO,EAAGE,EAAO,IAE9BF,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,MAOrD13G,IAAK,eACL5E,MAAO,SAAsBujH,GAC3B,GAMI1sF,GANA2sF,EAAgBliH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF86G,EAAO,IACPE,EAAO,KACPH,EAAO,IACPE,EAAO,IAEX,IAAImH,EAAcjiH,OAAS,EACzB,IAAK,GAAIG,GAAI,EAAGA,EAAI8hH,EAAcjiH,OAAQG,IACxCm1B,EAAO0sF,EAASC,EAAc9hH,IAC1By6G,EAAOtlF,EAAKgC,IACdsjF,EAAOtlF,EAAKgC,GAEVwjF,EAAOxlF,EAAKgC,IACdwjF,EAAOxlF,EAAKgC,GAEVujF,EAAOvlF,EAAK3a,IACdkgG,EAAOvlF,EAAK3a,GAEVogG,EAAOzlF,EAAK3a,IACdogG,EAAOzlF,EAAK3a,EAQlB,OAHa,OAATigG,GAAyB,OAATE,GAA0B,MAATD,GAAyB,OAATE,IACnDF,EAAO,EAAGE,EAAO,EAAGH,EAAO,EAAGE,EAAO,IAE9BF,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,MAQrD13G,IAAK,aACL5E,MAAO,SAAoBm7C,GACzB,OAAStiB,EAAG,IAAOsiB,EAAMkhE,KAAOlhE,EAAMghE,MACpCjgG,EAAG,IAAOi/B,EAAMmhE,KAAOnhE,EAAMihE,UAUjCx3G,IAAK,eACL5E,MAAO,SAAsByM,EAAM5J,GACjC,GAAIq9G,KASJ,OARa1+G,UAATqB,GAA+B,SAATA,GACxBjH,EAAK0G,WAAW49G,EAAezzG,EAAK3N,SAAS,GAC7CohH,EAAcrnF,EAAIpsB,EAAKosB,EACvBqnF,EAAchkG,EAAIzP,EAAKyP,EACvBgkG,EAAcuD,oBAAsBh3G,EAAKopF,MAAMt0F,QAE/C3F,EAAK0G,WAAW49G,EAAezzG,EAAK3N,SAAS,GAExCohH,MAIJoD,IAGTzoH,GAAQ,WAAayoH,EACrBxoH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAEhH,QAAS2iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI7iG,WAAU,iEAAoE6iG,GAAeD,GAAS72F,UAAY7L,OAAOgJ,OAAO25F,GAAcA,EAAW92F,WAAa9L,aAAepC,MAAO+kG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY3iG,OAAO4iG,eAAiB5iG,OAAO4iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAVje3iG,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAImlG,GAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAIlmG,GAAS+lG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXlmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIu3F,GAAOpjG,OAAOqjG,yBAAyBrmG,EAAQojD,EAAW,IAAajhD,SAATikG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAKzlG,KAAgB,IAAIyoB,GAASg9E,EAAKxzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKgqG,GAA/V,GAAIh/F,GAASnE,OAAOsjG,eAAetmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B4+F,GAAK5+F,EAAQ6+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOj/F,EAAShF,SAQxckiH,EAASvoH,EAAoB,IAE7BwoH,EAAS9xC,EAAuB6xC,GAMhCE,EAAU,SAAWC,GAGvB,QAASD,GAAQ9kH,EAASs7C,EAAMynD,EAAWzY,EAAWv9E,GACpDmmE,EAAgB/2E,KAAM2oH,GAEtBze,EAAK9iG,OAAOsjG,eAAeie,EAAQ11G,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASs7C,EAAMynD,EAAWzY,EAAWv9E,GAEpH5Q,KAAKq/F,WAAY,EACjBr/F,KAAK+mH,kBACL/mH,KAAKgnH,kBAGP,MAZAnd,GAAU8e,EAASC,GAYZD,GACND,EAAO,WAEV9oH,GAAQ,WAAa+oH,EACrB9oH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,KAI3gB,oBAAXlsE,UACTA,OAAO89G,sBAAwB99G,OAAO89G,uBAAyB99G,OAAO+9G,0BAA4B/9G,OAAOg+G,6BAA+Bh+G,OAAOi+G,wBAGjJ,IAAIroH,GAAOT,EAAoB,GAE3B+oH,EAAiB,WACnB,QAASA,GAAe9pE,EAAM3U,GAC5BusC,EAAgB/2E,KAAMipH,GAEtBjpH,KAAKm/C,KAAOA,EACZn/C,KAAKwqC,OAASA,EAEdxqC,KAAKkpH,iBAAkB,EACvBlpH,KAAK07G,YAAcn1G,OACnBvG,KAAKs7G,iBAAkB,EACvBt7G,KAAKmpH,iBAAkB,EACvBnpH,KAAKopH,eAAiB,EACtBppH,KAAK+3E,WAAaxxE,OAClBvG,KAAKqpH,aAAc,EAEnBrpH,KAAK25D,UAAW,EAChB35D,KAAK6D,WACL7D,KAAK2+C,gBACH2qE,iBAAiB,EACjBC,iBAAiB,GAEnB5oH,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAKwpH,0BACLxpH,KAAK47F,qBA8TP,MA3TAzkB,GAAa8xC,IACXt/G,IAAK,qBACL5E,MAAO,WACL,GAAIk9C,GAAQjiD,IAEZA,MAAKm/C,KAAKE,QAAQjgB,GAAG,YAAa,WAChC6iB,EAAM0X,UAAW,IAEnB35D,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9B,MAAO6iB,GAAM0X,UAAW,IAE1B35D,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnC,MAAO6iB,GAAMwnE,iBAEfzpH,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC1B6iB,EAAMknE,mBAAoB,GAC5BlnE,EAAMhB,YAGVjhD,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnC6iB,EAAMonE,aAAc,IAEtBrpH,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnC6iB,EAAMonE,aAAc,EAAKpnE,EAAMinE,iBAAkB,IAEnDlpH,KAAKm/C,KAAKE,QAAQjgB,GAAG,iBAAkBp/B,KAAK0pH,eAAepqE,KAAKt/C,OAChEA,KAAKm/C,KAAKE,QAAQjgB,GAAG,kBAAmB,WACtC6iB,EAAMmnE,gBAAkB,EACxBnnE,EAAMknE,iBAAkB,EACxBlnE,EAAM0nE,oBAER3pH,KAAKm/C,KAAKE,QAAQjgB,GAAG,iBAAkB,WACrC6iB,EAAMmnE,gBAAkB,EACxBnnE,EAAMknE,gBAAkBlnE,EAAMmnE,eAAiB,EAC/CnnE,EAAMy5D,YAAcn1G,SAEtBvG,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9B6iB,EAAMmnE,eAAiB,EACvBnnE,EAAMonE,aAAc,EACpBpnE,EAAMknE,iBAAkB,EACpBlnE,EAAMq5D,mBAAoB,EAC5Bh4E,aAAa2e,EAAMy5D,aAEnBkO,qBAAqB3nE,EAAMy5D,aAE7Bz5D,EAAM9C,KAAKE,QAAQ9f,WAIvB51B,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,kBAAmB,kBACjCtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,OAInD8F,IAAK,kBACL5E,MAAO,WACD/E,KAAKmpH,mBAAoB,GACF5iH,SAArBvG,KAAK07G,cACH17G,KAAKs7G,mBAAoB,EAC3Bt7G,KAAK07G,YAAc3wG,OAAOb,WAAWlK,KAAK6pH,YAAYvqE,KAAKt/C,MAAOA,KAAKq7G,oBAErEr7G,KAAK07G,YAAc3wG,OAAO89G,sBAAsB7oH,KAAK6pH,YAAYvqE,KAAKt/C,WAMhF2J,IAAK,cACL5E,MAAO,WACD/E,KAAKmpH,mBAAoB,IAE3BnpH,KAAK07G,YAAcn1G,OAEfvG,KAAKs7G,mBAAoB,GAE3Bt7G,KAAK2pH,kBAGP3pH,KAAKihD,UAEDjhD,KAAKs7G,mBAAoB,GAE3Bt7G,KAAK2pH,sBAUXhgH,IAAK,SACL5E,MAAO,WACL/E,KAAKm/C,KAAKE,QAAQzH,KAAK,WACvB53C,KAAKihD,aASPt3C,IAAK,iBACL5E,MAAO,WACL,GAAI00E,GAASz5E,IAETA,MAAKkpH,mBAAoB,GAAQlpH,KAAKmpH,mBAAoB,GAASnpH,KAAKqpH,eAAgB,IAC1FrpH,KAAKkpH,iBAAkB,EACnBlpH,KAAKs7G,mBAAoB,EAC3BvwG,OAAOb,WAAW,WAChBuvE,EAAOx4B,SAAQ,IACd,GAEHl2C,OAAO89G,sBAAsB,WAC3BpvC,EAAOx4B,SAAQ,SAMvBt3C,IAAK,UACL5E,MAAO,WACL,GAAIg4D,GAAS12D,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAErF,IAAIrG,KAAKqpH,eAAgB,EAAM,CAC7BrpH,KAAKm/C,KAAKE,QAAQzH,KAAK,cAEvB53C,KAAKkpH,iBAAkB,CACvB,IAAI53E,GAAMtxC,KAAKwqC,OAAOD,MAAMC,OAAO+G,WAAW,OAGP,IAAnCvxC,KAAKwqC,OAAOD,MAAMC,OAAOhM,OAAmD,IAApCx+B,KAAKwqC,OAAOD,MAAMC,OAAO/L,SACnEz+B,KAAKwqC,OAAO+E,UAGdvvC,KAAK+3E,YAAchtE,OAAOk8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAEtNh2C,EAAIi2C,aAAavnF,KAAK+3E,WAAY,EAAG,EAAG/3E,KAAK+3E,WAAY,EAAG,EAG5D,IAAIj0D,GAAI9jB,KAAKwqC,OAAOD,MAAMC,OAAOC,YAC7B/8B,EAAI1N,KAAKwqC,OAAOD,MAAMC,OAAOiF,YAIjC,IAHA6B,EAAIE,UAAU,EAAG,EAAG1tB,EAAGpW,GAGe,IAAlC1N,KAAKwqC,OAAOD,MAAME,YACpB,MAIF6G,GAAI+5D,OACJ/5D,EAAI+gE,UAAUryG,KAAKm/C,KAAKw8C,KAAKjzD,YAAY9K,EAAG59B,KAAKm/C,KAAKw8C,KAAKjzD,YAAYznB,GACvEqwB,EAAItsC,MAAMhF,KAAKm/C,KAAKw8C,KAAK32F,MAAOhF,KAAKm/C,KAAKw8C,KAAK32F,OAE/CssC,EAAIa,YACJnyC,KAAKm/C,KAAKE,QAAQzH,KAAK,gBAAiBtG,GACxCA,EAAIkB,YAEAuqB,KAAW,IACT/8D,KAAK25D,YAAa,GAAS35D,KAAK25D,YAAa,GAAQ35D,KAAK6D,QAAQylH,mBAAoB,IACxFtpH,KAAK8pH,WAAWx4E,IAIhBtxC,KAAK25D,YAAa,GAAS35D,KAAK25D,YAAa,GAAQ35D,KAAK6D,QAAQ0lH,mBAAoB,IACxFvpH,KAAK+pH,WAAWz4E,EAAKyrB,GAGvBzrB,EAAIa,YACJnyC,KAAKm/C,KAAKE,QAAQzH,KAAK,eAAgBtG,GACvCA,EAAIkB,YAGJlB,EAAIk6D,UACAzuC,KAAW,GACbzrB,EAAIE,UAAU,EAAG,EAAG1tB,EAAGpW,OAa7B/D,IAAK,eACL5E,MAAO,WACL,GAAIusC,GAAMtxC,KAAKwqC,OAAOD,MAAMC,OAAO+G,WAAW,KACtBhrC,UAApBvG,KAAK+3E,aACP/3E,KAAK+3E,YAAchtE,OAAOk8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,IAExNh2C,EAAIi2C,aAAavnF,KAAK+3E,WAAY,EAAG,EAAG/3E,KAAK+3E,WAAY,EAAG,GAC5DzmC,EAAI+5D,OACJ/5D,EAAI+gE,UAAUryG,KAAKm/C,KAAKw8C,KAAKjzD,YAAY9K,EAAG59B,KAAKm/C,KAAKw8C,KAAKjzD,YAAYznB,GACvEqwB,EAAItsC,MAAMhF,KAAKm/C,KAAKw8C,KAAK32F,MAAOhF,KAAKm/C,KAAKw8C,KAAK32F,MAE/C,IAAI01F,GAAQ16F,KAAKm/C,KAAKu7C,MAClB9+D,EAAOr1B,MAGX,KAAK,GAAIk4F,KAAU/D,GACbA,EAAM10F,eAAey4F,KACvB7iE,EAAO8+D,EAAM+D,GACb7iE,EAAK6rE,OAAOn2D,GACZ1V,EAAK4rE,kBAAkBl2D,EAAK1V,EAAK0rC,UAKrCh2B,GAAIk6D,aAWN7hG,IAAK,aACL5E,MAAO,SAAoBusC,GAgBzB,IAAK,GAfD04E,GAAa3jH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAErFq0F,EAAQ16F,KAAKm/C,KAAKu7C,MAClBC,EAAc36F,KAAKm/C,KAAKw7C,YACxB/+D,EAAOr1B,OACP+gE,KACA/iC,EAAS,GACT0lF,EAAUjqH,KAAKwqC,OAAO20D,aAAcvhE,GAAI2G,EAAQtjB,GAAIsjB,IACpD2lF,EAAclqH,KAAKwqC,OAAO20D,aAC5BvhE,EAAG59B,KAAKwqC,OAAOD,MAAMC,OAAOC,YAAclG,EAC1CtjB,EAAGjhB,KAAKwqC,OAAOD,MAAMC,OAAOiF,aAAelL,IAEzC4lF,GAAiBthH,IAAKohH,EAAQhpG,EAAGtY,KAAMshH,EAAQrsF,EAAGyQ,OAAQ67E,EAAYjpG,EAAG2wB,MAAOs4E,EAAYtsF,GAGvFn3B,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IACtCm1B,EAAO8+D,EAAMC,EAAYl0F,IAErBm1B,EAAKwuF,aACP9iD,EAAS9/D,KAAKmzF,EAAYl0F,IAEtBujH,KAAe,EACjBpuF,EAAKogD,KAAK1qC,GACD1V,EAAKyuF,6BAA6BF,MAAkB,EAC7DvuF,EAAKogD,KAAK1qC,GAEV1V,EAAK4rE,kBAAkBl2D,EAAK1V,EAAK0rC,SAMvC,KAAK,GAAI7gE,GAAI,EAAGA,EAAI6gE,EAAShhE,OAAQG,IACnCm1B,EAAO8+D,EAAMpzB,EAAS7gE,IACtBm1B,EAAKogD,KAAK1qC,MAWd3nC,IAAK,aACL5E,MAAO,SAAoBusC,GAKzB,IAAK,GAJDspD,GAAQ56F,KAAKm/C,KAAKy7C,MAClBC,EAAc76F,KAAKm/C,KAAK07C,YACxBsG,EAAO56F,OAEFE,EAAI,EAAGA,EAAIo0F,EAAYv0F,OAAQG,IACtC06F,EAAOvG,EAAMC,EAAYp0F,IACrB06F,EAAK8P,aAAc,GACrB9P,EAAKnlB,KAAK1qC,MAWhB3nC,IAAK,0BACL5E,MAAO,WACL,GAAsB,mBAAXgG,QAAwB,CACjC,GAAIu/G,GAAc9/G,UAAUC,UAAU0M,aACtCnX,MAAKs7G,iBAAkB,EACgB,IAAnCgP,EAAY/iH,QAAQ,YAEtBvH,KAAKs7G,iBAAkB,EACmB,IAAjCgP,EAAY/iH,QAAQ,WAEzB+iH,EAAY/iH,QAAQ,WAAa,KACnCvH,KAAKs7G,iBAAkB,OAI3Bt7G,MAAKs7G,iBAAkB,MAKtB2N,IAGTrpH,GAAQ,WAAaqpH,EACrBppH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBjzE,EAAS9D,EAAoB,IAC7Bm+D,EAAan+D,EAAoB,IAEjCS,EAAOT,EAAoB,GAU3BqqH,EAAS,WACX,QAASA,GAAOprE,GACd43B,EAAgB/2E,KAAMuqH,GAEtBvqH,KAAKm/C,KAAOA,EACZn/C,KAAK+3E,WAAa,EAClB/3E,KAAKwqH,YAAcjkH,OACnBvG,KAAKyqH,eAAiBzqH,KAAK+hE,UAAUziB,KAAKt/C,MAC1CA,KAAK0qH,eAEL1qH,KAAK6D,WACL7D,KAAK2+C,gBACHC,YAAY,EACZngB,OAAQ,OACRD,MAAO,QAET79B,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAK47F,qBA2YP,MAxYAzkB,GAAaozC,IACX5gH,IAAK,qBACL5E,MAAO,WACL,GAAIk9C,GAAQjiD,IAGZA,MAAKm/C,KAAKE,QAAQ7E,KAAK,SAAU,SAAU10C,GACvB,IAAdA,EAAI04B,QACNyjB,EAAM9C,KAAKw8C,KAAKjzD,YAAY9K,EAAgB,GAAZ93B,EAAI04B,OAEnB,IAAf14B,EAAI24B,SACNwjB,EAAM9C,KAAKw8C,KAAKjzD,YAAYznB,EAAiB,GAAbnb,EAAI24B,UAGxCz+B,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAWp/B,KAAKuvC,QAAQ+P,KAAKt/C,OAClDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9B6iB,EAAM0oE,YAAYxrF,UAClB8iB,EAAMkC,OAAOhlB,UACb8iB,EAAM2oE,gBAIVjhH,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAI41E,GAASz5E,IAEb,IAAgBuG,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,QAAS,SAAU,aACjCtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAG7C7D,KAAK6D,QAAQ+6C,cAAe,IAE9B5+C,KAAK4qH,WACL5qH,KAAKwqH,YAAcroD,YAAY,WAC7B,GAAIxU,GAAU8rB,EAAOlqC,SACjBoe,MAAY,GACd8rB,EAAOt6B,KAAKE,QAAQzH,KAAK,mBAE1B,KACH53C,KAAKyqH,eAAiBzqH,KAAK+hE,UAAUziB,KAAKt/C,MAC1CW,EAAKwJ,iBAAiBY,OAAQ,SAAU/K,KAAKyqH,oBAIjD9gH,IAAK,WACL5E,MAAO,WAEoBwB,SAArBvG,KAAKwqH,aACPxtE,cAAch9C,KAAKwqH,aAErB7pH,EAAKgK,oBAAoBI,OAAQ,SAAU/K,KAAKyqH,gBAChDzqH,KAAKyqH,eAAiBlkH,UAGxBoD,IAAK,YACL5E,MAAO,WACL/E,KAAKuvC,UACLvvC,KAAKm/C,KAAKE,QAAQzH,KAAK,cAQzBjuC,IAAK,kBACL5E,MAAO,WACL,GAAIgzE,GAAa1xE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK+3E,WAAa1xE,UAAU,EAEnGrG,MAAK0qH,YAAYG,cAAgB7qH,KAAKuqC,MAAMC,OAAOhM,MAAQu5C,EAC3D/3E,KAAK0qH,YAAYI,eAAiB9qH,KAAKuqC,MAAMC,OAAO/L,OAASs5C,EAC7D/3E,KAAK0qH,YAAY1lH,MAAQhF,KAAKm/C,KAAKw8C,KAAK32F,MACxChF,KAAK0qH,YAAYj8E,SAAWzuC,KAAKm/F,aAAcvhE,EAAG,GAAM59B,KAAKuqC,MAAMC,OAAOhM,MAAQu5C,EAAY92D,EAAG,GAAMjhB,KAAKuqC,MAAMC,OAAO/L,OAASs5C,OAQpIpuE,IAAK,kBACL5E,MAAO,WACL,GAA+BwB,SAA3BvG,KAAK0qH,YAAY1lH,OAAyD,IAAlChF,KAAKuqC,MAAMC,OAAOC,aAAwD,IAAnCzqC,KAAKuqC,MAAMC,OAAOiF,cAA0C,IAApBzvC,KAAK+3E,YAAoB/3E,KAAK0qH,YAAYG,cAAgB,EAAG,CAEtL,GAAIE,GAAa/qH,KAAKuqC,MAAMC,OAAOhM,MAAQx+B,KAAK+3E,WAAa/3E,KAAK0qH,YAAYG,cAC1EG,EAAchrH,KAAKuqC,MAAMC,OAAO/L,OAASz+B,KAAK+3E,WAAa/3E,KAAK0qH,YAAYI,eAC5EG,EAAWjrH,KAAK0qH,YAAY1lH,KAEd,IAAd+lH,GAAkC,GAAfC,EACrBC,EAAoC,GAAzBjrH,KAAK0qH,YAAY1lH,OAAe+lH,EAAaC,GACjC,GAAdD,EACTE,EAAWjrH,KAAK0qH,YAAY1lH,MAAQ+lH,EACZ,GAAfC,IACTC,EAAWjrH,KAAK0qH,YAAY1lH,MAAQgmH,GAGtChrH,KAAKm/C,KAAKw8C,KAAK32F,MAAQimH,CAEvB,IAAIC,GAAoBlrH,KAAKm/F,aAC3BvhE,EAAG,GAAM59B,KAAKuqC,MAAMC,OAAOC,YAC3BxpB,EAAG,GAAMjhB,KAAKuqC,MAAMC,OAAOiF,eAGzB07E,GACFvtF,EAAGstF,EAAkBttF,EAAI59B,KAAK0qH,YAAYj8E,SAAS7Q,EACnD3c,EAAGiqG,EAAkBjqG,EAAIjhB,KAAK0qH,YAAYj8E,SAASxtB,EAErDjhB,MAAKm/C,KAAKw8C,KAAKjzD,YAAY9K,GAAKutF,EAAmBvtF,EAAI59B,KAAKm/C,KAAKw8C,KAAK32F,MACtEhF,KAAKm/C,KAAKw8C,KAAKjzD,YAAYznB,GAAKkqG,EAAmBlqG,EAAIjhB,KAAKm/C,KAAKw8C,KAAK32F,UAI1E2E,IAAK,gBACL5E,MAAO,SAAuBA,GAC5B,GAAqB,gBAAVA,GACT,MAAOA,GAAQ,IACV,IAAqB,gBAAVA,GAAoB,CACpC,GAA2B,KAAvBA,EAAMwC,QAAQ,MAAuC,KAAxBxC,EAAMwC,QAAQ,MAC7C,MAAOxC,EACF,IAA2B,KAAvBA,EAAMwC,QAAQ,KACvB,MAAOxC,GAAQ,KAGnB,KAAM,IAAIiC,OAAM,wDAA0DjC,MAO5E4E,IAAK,UACL5E,MAAO,WAEL,KAAO/E,KAAKm/C,KAAK/a,UAAU5/B,iBACzBxE,KAAKm/C,KAAK/a,UAAU1/B,YAAY1E,KAAKm/C,KAAK/a,UAAU3/B,WAetD,IAZAzE,KAAKuqC,MAAQnN,SAASM,cAAc,OACpC19B,KAAKuqC,MAAMxhC,UAAY,cACvB/I,KAAKuqC,MAAMz7B,MAAM2/B,SAAW,WAC5BzuC,KAAKuqC,MAAMz7B,MAAMgF,SAAW,SAC5B9T,KAAKuqC,MAAM6gF,SAAW,IAItBprH,KAAKuqC,MAAMC,OAASpN,SAASM,cAAc,UAC3C19B,KAAKuqC,MAAMC,OAAO17B,MAAM2/B,SAAW,WACnCzuC,KAAKuqC,MAAMjN,YAAYt9B,KAAKuqC,MAAMC,QAE7BxqC,KAAKuqC,MAAMC,OAAO+G,WAOhB,CACL,GAAID,GAAMtxC,KAAKuqC,MAAMC,OAAO+G,WAAW,KACvCvxC,MAAK+3E,YAAchtE,OAAOk8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAEtNtnF,KAAKuqC,MAAMC,OAAO+G,WAAW,MAAMg2C,aAAavnF,KAAK+3E,WAAY,EAAG,EAAG/3E,KAAK+3E,WAAY,EAAG,OAX1D,CACjC,GAAIrpC,GAAWtR,SAASM,cAAc,MACtCgR,GAAS5/B,MAAMrC,MAAQ,MACvBiiC,EAAS5/B,MAAM6/B,WAAa,OAC5BD,EAAS5/B,MAAM8/B,QAAU,OACzBF,EAASG,UAAY,mDACrB7uC,KAAKuqC,MAAMC,OAAOlN,YAAYoR,GAShC1uC,KAAKm/C,KAAK/a,UAAU9G,YAAYt9B,KAAKuqC,OAErCvqC,KAAKm/C,KAAKw8C,KAAK32F,MAAQ,EACvBhF,KAAKm/C,KAAKw8C,KAAKjzD,aAAgB9K,EAAG,GAAM59B,KAAKuqC,MAAMC,OAAOC,YAAaxpB,EAAG,GAAMjhB,KAAKuqC,MAAMC,OAAOiF,cAElGzvC,KAAKq9E,iBAQP1zE,IAAK,cACL5E,MAAO,WACL,GAAIw1E,GAASv6E,IAEOuG,UAAhBvG,KAAKmkD,QACPnkD,KAAKmkD,OAAOhlB,UAEdn/B,KAAKu2E,QACLv2E,KAAK6oF,SAGL7oF,KAAKmkD,OAAS,GAAIngD,GAAOhE,KAAKuqC,MAAMC,QACpCxqC,KAAKmkD,OAAOntB,IAAI,SAAS5e,KAAMowC,QAAQ,IAEvCxoD,KAAKmkD,OAAOntB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KAEtD2zC,EAAW3C,QAAQ17D,KAAKmkD,OAAQ,SAAUr5C,GACxCyvE,EAAOp7B,KAAK27C,eAAep/B,QAAQ5wD,KAErC9K,KAAKmkD,OAAO/kB,GAAG,MAAO,SAAUt0B,GAC9ByvE,EAAOp7B,KAAK27C,eAAeC,MAAMjwF,KAEnC9K,KAAKmkD,OAAO/kB,GAAG,YAAa,SAAUt0B,GACpCyvE,EAAOp7B,KAAK27C,eAAeE,YAAYlwF,KAEzC9K,KAAKmkD,OAAO/kB,GAAG,QAAS,SAAUt0B,GAChCyvE,EAAOp7B,KAAK27C,eAAeG,OAAOnwF,KAEpC9K,KAAKmkD,OAAO/kB,GAAG,WAAY,SAAUt0B,GACnCyvE,EAAOp7B,KAAK27C,eAAeI,YAAYpwF,KAEzC9K,KAAKmkD,OAAO/kB,GAAG,UAAW,SAAUt0B,GAClCyvE,EAAOp7B,KAAK27C,eAAeK,OAAOrwF,KAEpC9K,KAAKmkD,OAAO/kB,GAAG,SAAU,SAAUt0B,GACjCyvE,EAAOp7B,KAAK27C,eAAeM,UAAUtwF,KAEvC9K,KAAKmkD,OAAO/kB,GAAG,QAAS,SAAUt0B,GAChCyvE,EAAOp7B,KAAK27C,eAAeO,QAAQvwF,KAIrC9K,KAAKuqC,MAAMC,OAAOrgC,iBAAiB,aAAc,SAAUW,GACzDyvE,EAAOp7B,KAAK27C,eAAev8B,aAAazzD,KAE1C9K,KAAKuqC,MAAMC,OAAOrgC,iBAAiB,iBAAkB,SAAUW,GAC7DyvE,EAAOp7B,KAAK27C,eAAev8B,aAAazzD,KAG1C9K,KAAKuqC,MAAMC,OAAOrgC,iBAAiB,YAAa,SAAUW,GACxDyvE,EAAOp7B,KAAK27C,eAAeQ,YAAYxwF,KAEzC9K,KAAKuqC,MAAMC,OAAOrgC,iBAAiB,cAAe,SAAUW,GAC1DyvE,EAAOp7B,KAAK27C,eAAeS,UAAUzwF,KAGvC9K,KAAK2qH,YAAc,GAAI3mH,GAAOhE,KAAKuqC,OACnC8zB,EAAW1C,UAAU37D,KAAK2qH,YAAa,SAAU7/G,GAC/CyvE,EAAOp7B,KAAK27C,eAAen/B,UAAU7wD,QAYzCnB,IAAK,UACL5E,MAAO,WACL,GAAIy5B,GAAQn4B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQ26B,MAAQn4B,UAAU,GAC7Fo4B,EAASp4B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQ46B,OAASp4B,UAAU,EAEnGm4B,GAAQx+B,KAAKqrH,cAAc7sF,GAC3BC,EAASz+B,KAAKqrH,cAAc5sF,EAE5B,IAAI6sF,IAAY,EACZC,EAAWvrH,KAAKuqC,MAAMC,OAAOhM,MAC7BgtF,EAAYxrH,KAAKuqC,MAAMC,OAAO/L,OAG9B6S,EAAMtxC,KAAKuqC,MAAMC,OAAO+G,WAAW,MACnCk6E,EAAgBzrH,KAAK+3E,UAkDzB,OAjDA/3E,MAAK+3E,YAAchtE,OAAOk8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAElN9oD,GAASx+B,KAAK6D,QAAQ26B,OAASC,GAAUz+B,KAAK6D,QAAQ46B,QAAUz+B,KAAKuqC,MAAMz7B,MAAM0vB,OAASA,GAASx+B,KAAKuqC,MAAMz7B,MAAM2vB,QAAUA,GAChIz+B,KAAK0rH,gBAAgBD,GAErBzrH,KAAKuqC,MAAMz7B,MAAM0vB,MAAQA,EACzBx+B,KAAKuqC,MAAMz7B,MAAM2vB,OAASA,EAE1Bz+B,KAAKuqC,MAAMC,OAAO17B,MAAM0vB,MAAQ,OAChCx+B,KAAKuqC,MAAMC,OAAO17B,MAAM2vB,OAAS,OAEjCz+B,KAAKuqC,MAAMC,OAAOhM,MAAQv5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOC,YAAczqC,KAAK+3E,YAC1E/3E,KAAKuqC,MAAMC,OAAO/L,OAASx5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOiF,aAAezvC,KAAK+3E,YAE5E/3E,KAAK6D,QAAQ26B,MAAQA,EACrBx+B,KAAK6D,QAAQ46B,OAASA,EAEtB6sF,GAAY,KAMRtrH,KAAKuqC,MAAMC,OAAOhM,OAASv5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOC,YAAczqC,KAAK+3E,aAAe/3E,KAAKuqC,MAAMC,OAAO/L,QAAUx5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOiF,aAAezvC,KAAK+3E,cACzK/3E,KAAK0rH,gBAAgBD,GAGnBzrH,KAAKuqC,MAAMC,OAAOhM,OAASv5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOC,YAAczqC,KAAK+3E,cAC7E/3E,KAAKuqC,MAAMC,OAAOhM,MAAQv5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOC,YAAczqC,KAAK+3E,YAC1EuzC,GAAY,GAEVtrH,KAAKuqC,MAAMC,OAAO/L,QAAUx5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOiF,aAAezvC,KAAK+3E,cAC/E/3E,KAAKuqC,MAAMC,OAAO/L,OAASx5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOiF,aAAezvC,KAAK+3E,YAC5EuzC,GAAY,IAIZA,KAAc,IAChBtrH,KAAKm/C,KAAKE,QAAQzH,KAAK,UACrBpZ,MAAOv5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAOhM,MAAQx+B,KAAK+3E,YACjDt5C,OAAQx5B,KAAKsjB,MAAMvoB,KAAKuqC,MAAMC,OAAO/L,OAASz+B,KAAK+3E,YACnDwzC,SAAUtmH,KAAKsjB,MAAMgjG,EAAWvrH,KAAK+3E,YACrCyzC,UAAWvmH,KAAKsjB,MAAMijG,EAAYxrH,KAAK+3E,cAIzC/3E,KAAK2rH,mBAGAL,KAGT3hH,IAAK,uBASL5E,MAAO,SAA8B64B,GACnC,OAAQA,EAAI59B,KAAKm/C,KAAKw8C,KAAKjzD,YAAY9K,GAAK59B,KAAKm/C,KAAKw8C,KAAK32F,SAW7D2E,IAAK,uBACL5E,MAAO,SAA8B64B,GACnC,MAAOA,GAAI59B,KAAKm/C,KAAKw8C,KAAK32F,MAAQhF,KAAKm/C,KAAKw8C,KAAKjzD,YAAY9K,KAW/Dj0B,IAAK,uBACL5E,MAAO,SAA8Bkc,GACnC,OAAQA,EAAIjhB,KAAKm/C,KAAKw8C,KAAKjzD,YAAYznB,GAAKjhB,KAAKm/C,KAAKw8C,KAAK32F,SAW7D2E,IAAK,uBACL5E,MAAO,SAA8Bkc,GACnC,MAAOA,GAAIjhB,KAAKm/C,KAAKw8C,KAAK32F,MAAQhF,KAAKm/C,KAAKw8C,KAAKjzD,YAAYznB,KAU/DtX,IAAK,cACL5E,MAAO,SAAqBwxB,GAC1B,OAASqH,EAAG59B,KAAK4rH,qBAAqBr1F,EAAIqH,GAAI3c,EAAGjhB,KAAK6rH,qBAAqBt1F,EAAItV,OAUjFtX,IAAK,cACL5E,MAAO,SAAqBwxB,GAC1B,OAASqH,EAAG59B,KAAK8rH,qBAAqBv1F,EAAIqH,GAAI3c,EAAGjhB,KAAK+rH,qBAAqBx1F,EAAItV,QAI5EspG,IAGT3qH,GAAQ,WAAa2qH,EACrB1qH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBitC,EAAehkH,EAAoB,IAEnCikH,EAAgBvtC,EAAuBstC,GAEvCvjH,EAAOT,EAAoB,GAE3B8rH,EAAO,WACT,QAASA,GAAK7sE,EAAM3U,GAClB,GAAIyX,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAMgsH,GAEtBhsH,KAAKm/C,KAAOA,EACZn/C,KAAKwqC,OAASA,EAEdxqC,KAAKisH,eAAiB,EAAIjsH,KAAKksH,kBAC/BlsH,KAAKmsH,wBAA0B,iBAC/BnsH,KAAKosH,WAAa,EAClBpsH,KAAKqsH,YAAc,EACnBrsH,KAAKssH,YAAc,EACnBtsH,KAAKusH,kBAAoB,EACzBvsH,KAAKwsH,kBAAoB,EACzBxsH,KAAKysH,eAAiBlmH,OACtBvG,KAAK0sH,mBAAqBnmH,OAC1BvG,KAAK2sH,UAAY,EAEjB3sH,KAAK69G,aAAet3G,OAEpBvG,KAAKm/C,KAAKE,QAAQjgB,GAAG,MAAOp/B,KAAK8gD,IAAIxB,KAAKt/C,OAC1CA,KAAKm/C,KAAKE,QAAQjgB,GAAG,oBAAqB,WACxC6iB,EAAM9C,KAAKE,QAAQzH,KAAK,oBAE1B53C,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAKuhG,YAAYjiD,KAAKt/C,OAmS3D,MAhSAm3E,GAAa60C,IACXriH,IAAK,aACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnFrG,MAAK6D,QAAUA,KASjB8F,IAAK,MACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAqBq0F,UAAcr0F,UAAU,GAC1FumH,EAAcvmH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEtF65C,EAAQ35C,OACRsmH,EAAYtmH,MAKhB,KAJsBA,SAAlB1C,EAAQ62F,OAAgD,IAAzB72F,EAAQ62F,MAAMp0F,UAC/CzC,EAAQ62F,MAAQ16F,KAAKm/C,KAAKw7C,aAGxBiyB,KAAgB,EAAM,CAExB,GAAIE,GAAkB,CACtB,KAAK,GAAIruB,KAAUz+F,MAAKm/C,KAAKu7C,MAC3B,GAAI16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,GAAS,CAC1C,GAAI7iE,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,EACvB7iE,GAAKmrE,sBAAuB,IAC9B+lB,GAAmB,GAIzB,GAAIA,EAAkB,GAAM9sH,KAAKm/C,KAAKw7C,YAAYr0F,OAEhD,WADAtG,MAAK8gD,IAAIj9C,GAAS,EAIpBq8C,GAAQikE,EAAc,WAAWjqD,SAASl6D,KAAKm/C,KAAKu7C,MAAO72F,EAAQ62F,MAEnE,IAAIqyB,GAAgB/sH,KAAKm/C,KAAKw7C,YAAYr0F,MAC1CumH,GAAY,QAAUE,EAAgB,QAAU,QAGhD,IAAI1qE,GAASp9C,KAAKL,IAAI5E,KAAKwqC,OAAOD,MAAMC,OAAOC,YAAc,IAAKzqC,KAAKwqC,OAAOD,MAAMC,OAAOiF,aAAe,IAC1Go9E,IAAaxqE,MACR,CACLriD,KAAKm/C,KAAKE,QAAQzH,KAAK,gBACvBsI,EAAQikE,EAAc,WAAWjqD,SAASl6D,KAAKm/C,KAAKu7C,MAAO72F,EAAQ62F,MAEnE,IAAI5K,GAAgD,IAApC7qF,KAAK8R,IAAImpC,EAAMkhE,KAAOlhE,EAAMghE,MACxC8L,EAAgD,IAApC/nH,KAAK8R,IAAImpC,EAAMmhE,KAAOnhE,EAAMihE,MAExC8L,EAAajtH,KAAKwqC,OAAOD,MAAMC,OAAOC,YAAcqlD,EACpDo9B,EAAaltH,KAAKwqC,OAAOD,MAAMC,OAAOiF,aAAeu9E,CAEzDH,GAA0BK,GAAdD,EAA2BA,EAAaC,EAGlDL,EAAY,EACdA,EAAY,EACW,IAAdA,IACTA,EAAY,EAGd,IAAIz2E,GAAS+tE,EAAc,WAAWgJ,WAAWjtE,GAC7CktE,GAAqB3+E,SAAU2H,EAAQpxC,MAAO6nH,EAAWhsE,UAAWh9C,EAAQg9C,UAChF7gD,MAAKoyC,OAAOg7E,MAYdzjH,IAAK,QACL5E,MAAO,SAAe05F,GACpB,GAAI56F,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnF,IAAgCE,SAA5BvG,KAAKm/C,KAAKu7C,MAAM+D,GAAuB,CACzC,GAAI4uB,IAAiBzvF,EAAG59B,KAAKm/C,KAAKu7C,MAAM+D,GAAQ7gE,EAAG3c,EAAGjhB,KAAKm/C,KAAKu7C,MAAM+D,GAAQx9E,EAC9Epd,GAAQ4qC,SAAW4+E,EACnBxpH,EAAQypH,aAAe7uB,EAEvBz+F,KAAKoyC,OAAOvuC,OAEZ8b,SAAQu+B,IAAI,SAAWugD,EAAS,wBAYpC90F,IAAK,SACL5E,MAAO,SAAgBlB,GACrB,MAAgB0C,UAAZ1C,OACFA,OAGqB0C,SAAnB1C,EAAQ2jB,SACV3jB,EAAQ2jB,QAAWoW,EAAG,EAAG3c,EAAG,IAEL1a,SAArB1C,EAAQ2jB,OAAOoW,IACjB/5B,EAAQ2jB,OAAOoW,EAAI,GAEIr3B,SAArB1C,EAAQ2jB,OAAOvG,IACjBpd,EAAQ2jB,OAAOvG,EAAI,GAEC1a,SAAlB1C,EAAQmB,QACVnB,EAAQmB,MAAQhF,KAAKm/C,KAAKw8C,KAAK32F,OAERuB,SAArB1C,EAAQ4qC,WACV5qC,EAAQ4qC,SAAWzuC,KAAKshG,mBAEA/6F,SAAtB1C,EAAQg9C,YACVh9C,EAAQg9C,WAAcp6B,SAAU,IAE9B5iB,EAAQg9C,aAAc,IACxBh9C,EAAQg9C,WAAcp6B,SAAU,IAE9B5iB,EAAQg9C,aAAc,IACxBh9C,EAAQg9C,cAEyBt6C,SAA/B1C,EAAQg9C,UAAUp6B,WACpB5iB,EAAQg9C,UAAUp6B,SAAW,KAEUlgB,SAArC1C,EAAQg9C,UAAU2Y,iBACpB31D,EAAQg9C,UAAU2Y,eAAiB,qBAGrCx5D,MAAKutH,YAAY1pH,OAenB8F,IAAK,cACL5E,MAAO,SAAqBlB,GAC1B,GAAgB0C,SAAZ1C,EAAJ,CAGA7D,KAAKmsH,wBAA0BtoH,EAAQg9C,UAAU2Y,eAEjDx5D,KAAKuhG,cACD19F,EAAQ2pH,UAAW,IACrBxtH,KAAKysH,eAAiB5oH,EAAQypH,aAC9BttH,KAAK0sH,mBAAqB7oH,EAAQ2jB,QAIb,GAAnBxnB,KAAKosH,YACPpsH,KAAKytH,mBAAkB,GAGzBztH,KAAKqsH,YAAcrsH,KAAKm/C,KAAKw8C,KAAK32F,MAClChF,KAAKusH,kBAAoBvsH,KAAKm/C,KAAKw8C,KAAKjzD,YACxC1oC,KAAKssH,YAAczoH,EAAQmB,MAI3BhF,KAAKm/C,KAAKw8C,KAAK32F,MAAQhF,KAAKssH,WAC5B,IAAIoB,GAAa1tH,KAAKwqC,OAAO20D,aAAcvhE,EAAG,GAAM59B,KAAKwqC,OAAOD,MAAMC,OAAOC,YAAaxpB,EAAG,GAAMjhB,KAAKwqC,OAAOD,MAAMC,OAAOiF,eAExH07E,GACFvtF,EAAG8vF,EAAW9vF,EAAI/5B,EAAQ4qC,SAAS7Q,EACnC3c,EAAGysG,EAAWzsG,EAAIpd,EAAQ4qC,SAASxtB,EAErCjhB,MAAKwsH,mBACH5uF,EAAG59B,KAAKusH,kBAAkB3uF,EAAIutF,EAAmBvtF,EAAI59B,KAAKssH,YAAczoH,EAAQ2jB,OAAOoW,EACvF3c,EAAGjhB,KAAKusH,kBAAkBtrG,EAAIkqG,EAAmBlqG,EAAIjhB,KAAKssH,YAAczoH,EAAQ2jB,OAAOvG,GAItD,IAA/Bpd,EAAQg9C,UAAUp6B,SACOlgB,QAAvBvG,KAAKysH,gBACPzsH,KAAK69G,aAAe79G,KAAK2tH,cAAcruE,KAAKt/C,MAC5CA,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAK69G,gBAExC79G,KAAKm/C,KAAKw8C,KAAK32F,MAAQhF,KAAKssH,YAC5BtsH,KAAKm/C,KAAKw8C,KAAKjzD,YAAc1oC,KAAKwsH,kBAClCxsH,KAAKm/C,KAAKE,QAAQzH,KAAK,oBAGzB53C,KAAKisH,eAAiB,GAAK,GAAKpoH,EAAQg9C,UAAUp6B,SAAW,OAAU,EAAI,GAC3EzmB,KAAKmsH,wBAA0BtoH,EAAQg9C,UAAU2Y,eAEjDx5D,KAAK69G,aAAe79G,KAAKytH,kBAAkBnuE,KAAKt/C,MAChDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAK69G,cACxC79G,KAAKm/C,KAAKE,QAAQzH,KAAK,wBAS3BjuC,IAAK,gBACL5E,MAAO,WACL,GAAIsoH,IAAiBzvF,EAAG59B,KAAKm/C,KAAKu7C,MAAM16F,KAAKysH,gBAAgB7uF,EAAG3c,EAAGjhB,KAAKm/C,KAAKu7C,MAAM16F,KAAKysH,gBAAgBxrG,GACpGysG,EAAa1tH,KAAKwqC,OAAO20D,aAAcvhE,EAAG,GAAM59B,KAAKwqC,OAAOD,MAAMC,OAAOC,YAAaxpB,EAAG,GAAMjhB,KAAKwqC,OAAOD,MAAMC,OAAOiF,eACxH07E,GACFvtF,EAAG8vF,EAAW9vF,EAAIyvF,EAAazvF,EAC/B3c,EAAGysG,EAAWzsG,EAAIosG,EAAapsG,GAE7BsrG,EAAoBvsH,KAAKm/C,KAAKw8C,KAAKjzD,YACnC8jF,GACF5uF,EAAG2uF,EAAkB3uF,EAAIutF,EAAmBvtF,EAAI59B,KAAKm/C,KAAKw8C,KAAK32F,MAAQhF,KAAK0sH,mBAAmB9uF,EAC/F3c,EAAGsrG,EAAkBtrG,EAAIkqG,EAAmBlqG,EAAIjhB,KAAKm/C,KAAKw8C,KAAK32F,MAAQhF,KAAK0sH,mBAAmBzrG,EAGjGjhB,MAAKm/C,KAAKw8C,KAAKjzD,YAAc8jF,KAG/B7iH,IAAK,cACL5E,MAAO,WACuBwB,SAAxBvG,KAAKysH,gBAAsDlmH,SAAtBvG,KAAK69G,eAC5C79G,KAAKm/C,KAAKE,QAAQ9f,IAAI,aAAcv/B,KAAK69G,cACzC79G,KAAKysH,eAAiBlmH,OACtBvG,KAAK0sH,mBAAqBnmH,WAU9BoD,IAAK,oBACL5E,MAAO,WACL,GAAI6oH,GAAWvnH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAEvFrG,MAAKosH,YAAcpsH,KAAKisH,eACxBjsH,KAAKosH,WAAawB,KAAa,EAAO,EAAM5tH,KAAKosH,UAEjD,IAAIlwE,GAAWv7C,EAAKmR,gBAAgB9R,KAAKmsH,yBAAyBnsH,KAAKosH,WAEvEpsH,MAAKm/C,KAAKw8C,KAAK32F,MAAQhF,KAAKqsH,aAAersH,KAAKssH,YAActsH,KAAKqsH,aAAenwE,EAClFl8C,KAAKm/C,KAAKw8C,KAAKjzD,aACb9K,EAAG59B,KAAKusH,kBAAkB3uF,GAAK59B,KAAKwsH,kBAAkB5uF,EAAI59B,KAAKusH,kBAAkB3uF,GAAKse,EACtFj7B,EAAGjhB,KAAKusH,kBAAkBtrG,GAAKjhB,KAAKwsH,kBAAkBvrG,EAAIjhB,KAAKusH,kBAAkBtrG,GAAKi7B,GAIpFl8C,KAAKosH,YAAc,IACrBpsH,KAAKm/C,KAAKE,QAAQ9f,IAAI,aAAcv/B,KAAK69G,cACzC79G,KAAKosH,WAAa,EACS7lH,QAAvBvG,KAAKysH,iBACPzsH,KAAK69G,aAAe79G,KAAK2tH,cAAcruE,KAAKt/C,MAC5CA,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAK69G,eAE1C79G,KAAKm/C,KAAKE,QAAQzH,KAAK,yBAI3BjuC,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAKm/C,KAAKw8C,KAAK32F,SAGxB2E,IAAK,kBACL5E,MAAO,WACL,MAAO/E,MAAKwqC,OAAO20D,aAAcvhE,EAAG,GAAM59B,KAAKwqC,OAAOD,MAAMC,OAAOC,YAAaxpB,EAAG,GAAMjhB,KAAKwqC,OAAOD,MAAMC,OAAOiF,mBAI/Gu8E,IAGTpsH,GAAQ,WAAaosH,EACrBnsH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCARhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE;AAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB42C,EAA+B3tH,EAAoB,KAEnD4tH,EAAgCl3C,EAAuBi3C,GAEvDE,EAAmB7tH,EAAoB,KAEvC8tH,EAAoBp3C,EAAuBm3C,GAE3CptH,EAAOT,EAAoB,GAE3B+tH,EAAqB,WACvB,QAASA,GAAmB9uE,EAAM3U,EAAQwxD,GACxCjlB,EAAgB/2E,KAAMiuH,GAEtBjuH,KAAKm/C,KAAOA,EACZn/C,KAAKwqC,OAASA,EACdxqC,KAAKg8F,iBAAmBA,EACxBh8F,KAAKkuH,kBAAoB,GAAIJ,GAA8B,WAAW3uE,EAAM3U,GAG5ExqC,KAAKm/C,KAAK27C,eAAeC,MAAQ/6F,KAAK+6F,MAAMz7C,KAAKt/C,MACjDA,KAAKm/C,KAAK27C,eAAep/B,QAAU17D,KAAK07D,QAAQpc,KAAKt/C,MACrDA,KAAKm/C,KAAK27C,eAAeE,YAAch7F,KAAKg7F,YAAY17C,KAAKt/C,MAC7DA,KAAKm/C,KAAK27C,eAAeG,OAASj7F,KAAKi7F,OAAO37C,KAAKt/C,MACnDA,KAAKm/C,KAAK27C,eAAeI,YAAcl7F,KAAKk7F,YAAY57C,KAAKt/C,MAC7DA,KAAKm/C,KAAK27C,eAAeK,OAASn7F,KAAKm7F,OAAO77C,KAAKt/C,MACnDA,KAAKm/C,KAAK27C,eAAeM,UAAYp7F,KAAKo7F,UAAU97C,KAAKt/C,MACzDA,KAAKm/C,KAAK27C,eAAev8B,aAAev+D,KAAKu+D,aAAajf,KAAKt/C,MAC/DA,KAAKm/C,KAAK27C,eAAeO,QAAUr7F,KAAKq7F,QAAQ/7C,KAAKt/C,MACrDA,KAAKm/C,KAAK27C,eAAeQ,YAAct7F,KAAKs7F,YAAYh8C,KAAKt/C,MAC7DA,KAAKm/C,KAAK27C,eAAen/B,UAAY37D,KAAK27D,UAAUrc,KAAKt/C,MACzDA,KAAKm/C,KAAK27C,eAAeS,UAAYv7F,KAAKu7F,UAAUj8C,KAAKt/C,MAEzDA,KAAK2sH,UAAY,EACjB3sH,KAAKu2E,QACLv2E,KAAK6oF,SACL7oF,KAAKmuH,MAAQ5nH,OACbvG,KAAKouH,SAAW7nH,OAChBvG,KAAKquH,WAAa9nH,OAElBvG,KAAKm/C,KAAKq8C,UAAUxiC,WAAah5D,KAAKg5D,WAAW1Z,KAAKt/C,MAEtDA,KAAK6D,WACL7D,KAAK2+C,gBACH2vE,WAAW,EACXC,UAAU,EACVngH,OAAO,EACPogH,UACE39G,SAAS,EACT49G,OAAS7wF,EAAG,GAAI3c,EAAG,GAAIk6C,KAAM,KAC7BuzD,cAAc,GAEhBC,mBAAmB,EACnBC,aAAc,IACdC,UAAU,GAEZluH,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAK47F,qBAorBP,MAjrBAzkB,GAAa82C,IACXtkH,IAAK,qBACL5E,MAAO,WACL,GAAIk9C,GAAQjiD,IAEZA,MAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9BkE,aAAa2e,EAAMosE,kBACZpsE,GAAM9C,KAAKq8C,UAAUxiC,gBAIhCrvD,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAEzB,GAAIoM,IAAU,kBAAmB,kBAAmB,WAAY,cAAe,aAAc,uBAC7FtP,GAAK2G,uBAAuB2I,EAAQjQ,KAAK6D,QAASA,GAGlDlD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,YAErCA,EAAQ8sC,UACVhwC,EAAKgG,OAAO3G,KAAK6D,QAAQ8sC,QAAS9sC,EAAQ8sC,SACtC9sC,EAAQ8sC,QAAQlkC,QAClBzM,KAAK6D,QAAQ8sC,QAAQlkC,MAAQ9L,EAAKwM,WAAWtJ,EAAQ8sC,QAAQlkC,SAKnEzM,KAAKkuH,kBAAkBlvF,WAAWh/B,KAAK6D,YAUzC8F,IAAK,aACL5E,MAAO,SAAoBqpD,GACzB,OACExwB,EAAGwwB,EAAMxwB,EAAIj9B,EAAK6H,gBAAgBxI,KAAKwqC,OAAOD,MAAMC,QACpDvpB,EAAGmtC,EAAMntC,EAAItgB,EAAKiI,eAAe5I,KAAKwqC,OAAOD,MAAMC,YAUvD7gC,IAAK,UACL5E,MAAO,SAAiB+F,IAClB,GAAIzF,OAAOyC,UAAY9H,KAAK2sH,UAAY,KAC1C3sH,KAAKu2E,KAAKvb,QAAUh7D,KAAKg5D,WAAWluD,EAAMsrC,QAC1Cp2C,KAAKu2E,KAAKu4C,SAAU,EACpB9uH,KAAK6oF,MAAM7jF,MAAQhF,KAAKm/C,KAAKw8C,KAAK32F,MAElChF,KAAK2sH,WAAY,GAAItnH,OAAOyC,cAShC6B,IAAK,QACL5E,MAAO,SAAe+F,GACpB,GAAIkwD,GAAUh7D,KAAKg5D,WAAWluD,EAAMsrC,QAChC4sB,EAAchjE,KAAKg8F,iBAAiBn4F,QAAQm/D,cAAgBl4D,EAAM0+C,gBAAgB,GAAGqf,SAAW/9D,EAAM0+C,gBAAgB,GAAGsf,QAE7H9oE,MAAK+uH,sBAAsB/zD,EAASlwD,EAAOk4D,GAC3ChjE,KAAKg8F,iBAAiBgzB,oBAAoB,QAASlkH,EAAOkwD,MAQ5DrxD,IAAK,cACL5E,MAAO,SAAqB+F,GAC1B,GAAIkwD,GAAUh7D,KAAKg5D,WAAWluD,EAAMsrC,OACpCp2C,MAAKg8F,iBAAiBgzB,oBAAoB,cAAelkH,EAAOkwD,MAQlErxD,IAAK,SACL5E,MAAO,SAAgB+F,GACrB,GAAIkwD,GAAUh7D,KAAKg5D,WAAWluD,EAAMsrC,QAChC4sB,EAAchjE,KAAKg8F,iBAAiBn4F,QAAQm/D,WAEhDhjE,MAAK+uH,sBAAsB/zD,EAASlwD,EAAOk4D,GAE3ChjE,KAAKg8F,iBAAiBgzB,oBAAoB,QAASlkH,EAAOkwD,GAC1Dh7D,KAAKg8F,iBAAiBgzB,oBAAoB,OAAQlkH,EAAOkwD,MAS3DrxD,IAAK,YACL5E,MAAO,SAAmB+F,GACxB,IAAI,GAAIzF,OAAOyC,UAAY9H,KAAK2sH,UAAY,GAAI,CAC9C,GAAI3xD,GAAUh7D,KAAKg5D,WAAWluD,EAAMsrC,OACpCp2C,MAAKg8F,iBAAiBgzB,oBAAoB,UAAWlkH,EAAOkwD,GAE5Dh7D,KAAK2sH,WAAY,GAAItnH,OAAOyC,cAIhC6B,IAAK,YACL5E,MAAO,SAAmB+F,GACxB,GAAIkwD,GAAUh7D,KAAKg5D,YAAap7B,EAAG9yB,EAAM+8B,QAAS5mB,EAAGnW,EAAMk9B,SAC3DhoC,MAAKg8F,iBAAiBgzB,oBAAoB,YAAalkH,EAAOkwD,MAShErxD,IAAK,wBACL5E,MAAO,SAA+Bi2D,EAASlwD,GAC7C,GAAImb,GAAM5f,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAE9E4oH,EAA8BjvH,KAAKg8F,iBAAiBkzB,wBACpDC,EAA8BnvH,KAAKg8F,iBAAiBozB,wBACpDC,EAAoBrvH,KAAKg8F,iBAAiBp6C,eAC1C0lB,EAAW/gE,MAEb+gE,GADErhD,KAAQ,EACCjmB,KAAKg8F,iBAAiBszB,wBAAwBt0D,GAE9Ch7D,KAAKg8F,iBAAiBuzB,cAAcv0D,EAEjD,IAAIw0D,GAAqBxvH,KAAKg8F,iBAAiBkzB,wBAC3CO,EAAqBzvH,KAAKg8F,iBAAiBozB,wBAC3CM,EAAmB1vH,KAAKg8F,iBAAiBp6C,eAEzC+tE,EAAyB3vH,KAAK4vH,sBAAsBP,EAAmBK,GAEvEG,EAAeF,EAAuBE,aACtCC,EAAeH,EAAuBG,aAEtCC,GAAe,CAEfN,GAAqBN,EAA8B,GAErDnvH,KAAKg8F,iBAAiBgzB,oBAAoB,aAAclkH,EAAOkwD,GAC/DsM,GAAW,EACXyoD,GAAe,GAC6C,EAAnDN,EAAqBN,GAE9BnvH,KAAKg8F,iBAAiBgzB,oBAAoB,eAAgBlkH,EAAOkwD,EAASq0D,GAC1E/nD,GAAW,GACFmoD,IAAuBN,GAA+BU,KAAiB,IAChF7vH,KAAKg8F,iBAAiBgzB,oBAAoB,eAAgBlkH,EAAOkwD,EAASq0D,GAC1ErvH,KAAKg8F,iBAAiBgzB,oBAAoB,aAAclkH,EAAOkwD,GAC/D+0D,GAAe,EACfzoD,GAAW,GAITkoD,EAAqBP,EAA8B,GAAKc,KAAiB,GAE3E/vH,KAAKg8F,iBAAiBgzB,oBAAoB,aAAclkH,EAAOkwD,GAC/DsM,GAAW,GACiD,EAAnDkoD,EAAqBP,GAE9BjvH,KAAKg8F,iBAAiBgzB,oBAAoB,eAAgBlkH,EAAOkwD,EAASq0D,GAC1E/nD,GAAW,GACFkoD,IAAuBP,GAA+Ba,KAAiB,IAChF9vH,KAAKg8F,iBAAiBgzB,oBAAoB,eAAgBlkH,EAAOkwD,EAASq0D,GAC1ErvH,KAAKg8F,iBAAiBgzB,oBAAoB,aAAclkH,EAAOkwD,GAC/DsM,GAAW,GAITA,KAAa,GAEftnE,KAAKg8F,iBAAiBgzB,oBAAoB,SAAUlkH,EAAOkwD,MAY/DrxD,IAAK,wBACL5E,MAAO,SAA+BsqH,EAAmBK,GAIvD,IAAK,GAHDG,IAAe,EACfC,GAAe,EAEVrpH,EAAI,EAAGA,EAAI4oH,EAAkB30B,MAAMp0F,OAAQG,IACiB,KAA/DipH,EAAiBh1B,MAAMnzF,QAAQ8nH,EAAkB30B,MAAMj0F,MACzDopH,GAAe,EAGnB,KAAK,GAAIppH,GAAI,EAAGA,EAAIipH,EAAiBh1B,MAAMp0F,OAAQG,IACmB,KAAhE4oH,EAAkB30B,MAAMnzF,QAAQ8nH,EAAkB30B,MAAMj0F,MAC1DopH,GAAe,EAGnB,KAAK,GAAIppH,GAAI,EAAGA,EAAI4oH,EAAkBz0B,MAAMt0F,OAAQG,IACiB,KAA/DipH,EAAiB90B,MAAMrzF,QAAQ8nH,EAAkBz0B,MAAMn0F,MACzDqpH,GAAe,EAGnB,KAAK,GAAIrpH,GAAI,EAAGA,EAAIipH,EAAiB90B,MAAMt0F,OAAQG,IACmB,KAAhE4oH,EAAkBz0B,MAAMrzF,QAAQ8nH,EAAkBz0B,MAAMn0F,MAC1DqpH,GAAe,EAInB,QAASD,aAAcA,EAAcC,aAAcA,MAUrDnmH,IAAK,cACL5E,MAAO,SAAqB+F,GAEAvE,SAAtBvG,KAAKu2E,KAAKvb,SACZh7D,KAAK07D,QAAQ5wD,EAIf,IAAI8wB,GAAO57B,KAAKg8F,iBAAiBiF,UAAUjhG,KAAKu2E,KAAKvb,QAOrD,IALAh7D,KAAKu2E,KAAK5c,UAAW,EACrB35D,KAAKu2E,KAAK50B,aACV3hD,KAAKu2E,KAAK7tC,YAAc/nC,EAAKgG,UAAW3G,KAAKm/C,KAAKw8C,KAAKjzD,aACvD1oC,KAAKu2E,KAAKkoB,OAASl4F,OAENA,SAATq1B,GAAsB57B,KAAK6D,QAAQyqH,aAAc,EAAM,CACzDtuH,KAAKu2E,KAAKkoB,OAAS7iE,EAAKv7B,GAEpBu7B,EAAKwuF,gBAAiB,IACxBpqH,KAAKg8F,iBAAiB4C,cACtB5+F,KAAKg8F,iBAAiBg0B,aAAap0F,IAIrC57B,KAAKg8F,iBAAiBgzB,oBAAoB,YAAalkH,EAAO9K,KAAKu2E,KAAKvb,QAExE,IAAIrZ,GAAY3hD,KAAKg8F,iBAAiBi0B,aAAav1B,KAEnD,KAAK,GAAI+D,KAAU98C,GACjB,GAAIA,EAAU37C,eAAey4F,GAAS,CACpC,GAAIr6F,GAASu9C,EAAU88C,GACnB9wF,GACFtN,GAAI+D,EAAO/D,GACXu7B,KAAMx3B,EAGNw5B,EAAGx5B,EAAOw5B,EACV3c,EAAG7c,EAAO6c,EACVivG,OAAQ9rH,EAAOP,QAAQ4+F,MAAM7kE,EAC7BuyF,OAAQ/rH,EAAOP,QAAQ4+F,MAAMxhF,EAG/B7c,GAAOP,QAAQ4+F,MAAM7kE,GAAI,EACzBx5B,EAAOP,QAAQ4+F,MAAMxhF,GAAI,EAEzBjhB,KAAKu2E,KAAK50B,UAAUn6C,KAAKmG,QAK7B3N,MAAKg8F,iBAAiBgzB,oBAAoB,YAAalkH,EAAO9K,KAAKu2E,KAAKvb,QAASz0D,QAAW,MAShGoD,IAAK,SACL5E,MAAO,SAAgB+F,GACrB,GAAI2uE,GAASz5E,IAEb,IAAIA,KAAKu2E,KAAKu4C,WAAY,EAA1B,CAKA9uH,KAAKm/C,KAAKE,QAAQzH,KAAK,aAEvB,IAAIojB,GAAUh7D,KAAKg5D,WAAWluD,EAAMsrC,QAEhCuL,EAAY3hD,KAAKu2E,KAAK50B,SAC1B,IAAIA,GAAaA,EAAUr7C,QAAUtG,KAAK6D,QAAQyqH,aAAc,GAC9D,WACE70C,EAAOuiB,iBAAiBgzB,oBAAoB,WAAYlkH,EAAOkwD,EAG/D,IAAIjQ,GAASiQ,EAAQp9B,EAAI67C,EAAOlD,KAAKvb,QAAQp9B,EACzCotB,EAASgQ,EAAQ/5C,EAAIw4D,EAAOlD,KAAKvb,QAAQ/5C,CAG7C0gC,GAAUr4C,QAAQ,SAAUq4C,GAC1B,GAAI/lB,GAAO+lB,EAAU/lB,IAEjB+lB,GAAUuuE,UAAW,IACvBt0F,EAAKgC,EAAI67C,EAAOjvC,OAAOshF,qBAAqBryC,EAAOjvC,OAAOohF,qBAAqBjqE,EAAU/jB,GAAKmtB,IAG5FpJ,EAAUwuE,UAAW,IACvBv0F,EAAK3a,EAAIw4D,EAAOjvC,OAAOuhF,qBAAqBtyC,EAAOjvC,OAAOqhF,qBAAqBlqE,EAAU1gC,GAAK+pC,MAKlGyuB,EAAOt6B,KAAKE,QAAQzH,KAAK,0BAI3B,IAAI53C,KAAK6D,QAAQ0qH,YAAa,EAAM,CAIlC,GAHAvuH,KAAKg8F,iBAAiBgzB,oBAAoB,WAAYlkH,EAAOkwD,EAASz0D,QAAW,GAGvDA,SAAtBvG,KAAKu2E,KAAKvb,QAEZ,WADAh7D,MAAKk7F,YAAYpwF,EAGnB,IAAIusC,GAAQ2jB,EAAQp9B,EAAI59B,KAAKu2E,KAAKvb,QAAQp9B,EACtC0Z,EAAQ0jB,EAAQ/5C,EAAIjhB,KAAKu2E,KAAKvb,QAAQ/5C,CAE1CjhB,MAAKm/C,KAAKw8C,KAAKjzD,aAAgB9K,EAAG59B,KAAKu2E,KAAK7tC,YAAY9K,EAAIyZ,EAAOp2B,EAAGjhB,KAAKu2E,KAAK7tC,YAAYznB,EAAIq2B,GAChGt3C,KAAKm/C,KAAKE,QAAQzH,KAAK,gBAU7BjuC,IAAK,YACL5E,MAAO,SAAmB+F,GACxB9K,KAAKu2E,KAAK5c,UAAW,CACrB,IAAIhY,GAAY3hD,KAAKu2E,KAAK50B,SACtBA,IAAaA,EAAUr7C,QACzBq7C,EAAUr4C,QAAQ,SAAUqE,GAE1BA,EAAEiuB,KAAK/3B,QAAQ4+F,MAAM7kE,EAAIjwB,EAAEuiH,OAC3BviH,EAAEiuB,KAAK/3B,QAAQ4+F,MAAMxhF,EAAItT,EAAEwiH,SAE7BnwH,KAAKg8F,iBAAiBgzB,oBAAoB,UAAWlkH,EAAO9K,KAAKg5D,WAAWluD,EAAMsrC,SAClFp2C,KAAKm/C,KAAKE,QAAQzH,KAAK,qBAEvB53C,KAAKg8F,iBAAiBgzB,oBAAoB,UAAWlkH,EAAO9K,KAAKg5D,WAAWluD,EAAMsrC,QAAS7vC,QAAW,GACtGvG,KAAKm/C,KAAKE,QAAQzH,KAAK,sBAU3BjuC,IAAK,UACL5E,MAAO,SAAiB+F,GACtB,GAAIkwD,GAAUh7D,KAAKg5D,WAAWluD,EAAMsrC,OAEpCp2C,MAAKu2E,KAAKu4C,SAAU,EACQvoH,SAAxBvG,KAAK6oF,MAAa,QACpB7oF,KAAK6oF,MAAM7jF,MAAQ,EAIrB,IAAIA,GAAQhF,KAAK6oF,MAAM7jF,MAAQ8F,EAAM9F,KACrChF,MAAKm7D,KAAKn2D,EAAOg2D,MAWnBrxD,IAAK,OACL5E,MAAO,SAAcC,EAAOg2D,GAC1B,GAAIh7D,KAAK6D,QAAQgrH,YAAa,EAAM,CAClC,GAAIuB,GAAWpwH,KAAKm/C,KAAKw8C,KAAK32F,KAClB,MAARA,IACFA,EAAQ,MAENA,EAAQ,KACVA,EAAQ,GAGV,IAAIqrH,GAAsB9pH,MACRA,UAAdvG,KAAKu2E,MACHv2E,KAAKu2E,KAAK5c,YAAa,IACzB02D,EAAsBrwH,KAAKwqC,OAAO20D,YAAYn/F,KAAKu2E,KAAKvb,SAI5D,IAAItyB,GAAc1oC,KAAKm/C,KAAKw8C,KAAKjzD,YAE7B4nF,EAAYtrH,EAAQorH,EACpBG,GAAM,EAAID,GAAat1D,EAAQp9B,EAAI8K,EAAY9K,EAAI0yF,EACnDE,GAAM,EAAIF,GAAat1D,EAAQ/5C,EAAIynB,EAAYznB,EAAIqvG,CAKvD,IAHAtwH,KAAKm/C,KAAKw8C,KAAK32F,MAAQA,EACvBhF,KAAKm/C,KAAKw8C,KAAKjzD,aAAgB9K,EAAG2yF,EAAItvG,EAAGuvG,GAEdjqH,QAAvB8pH,EAAkC,CACpC,GAAII,GAAuBzwH,KAAKwqC,OAAO00D,YAAYmxB,EACnDrwH,MAAKu2E,KAAKvb,QAAQp9B,EAAI6yF,EAAqB7yF,EAC3C59B,KAAKu2E,KAAKvb,QAAQ/5C,EAAIwvG,EAAqBxvG,EAG7CjhB,KAAKm/C,KAAKE,QAAQzH,KAAK,kBAER5yC,EAAXorH,EACFpwH,KAAKm/C,KAAKE,QAAQzH,KAAK,QAAUltB,UAAW,IAAK1lB,MAAOhF,KAAKm/C,KAAKw8C,KAAK32F,QAEvEhF,KAAKm/C,KAAKE,QAAQzH,KAAK,QAAUltB,UAAW,IAAK1lB,MAAOhF,KAAKm/C,KAAKw8C,KAAK32F,YAa7E2E,IAAK,eACL5E,MAAO,SAAsB+F,GAC3B,GAAI9K,KAAK6D,QAAQgrH,YAAa,EAAM,CAElC,GAAI9iG,GAAQ,CAcZ,IAbIjhB,EAAM2tC,WAER1sB,EAAQjhB,EAAM2tC,WAAa,IAClB3tC,EAAM4tC,SAIf3sB,GAASjhB,EAAM4tC,OAAS,GAMZ,IAAV3sB,EAAa,CAGf,GAAI/mB,GAAQhF,KAAKm/C,KAAKw8C,KAAK32F,MACvBm2D,EAAOpvC,EAAQ,EACP,GAARA,IACFovC,GAAe,EAAIA,GAErBn2D,GAAS,EAAIm2D,CAGb,IAAIH,GAAUh7D,KAAKg5D,YAAap7B,EAAG9yB,EAAM+8B,QAAS5mB,EAAGnW,EAAMk9B,SAG3DhoC,MAAKm7D,KAAKn2D,EAAOg2D,GAInBlwD,EAAMD,qBAUVlB,IAAK,cACL5E,MAAO,SAAqB+F,GAC1B,GAAIyvE,GAASv6E,KAETg7D,EAAUh7D,KAAKg5D,YAAap7B,EAAG9yB,EAAM+8B,QAAS5mB,EAAGnW,EAAMk9B,UACvD0oF,GAAe,CAqCnB,IAlCmBnqH,SAAfvG,KAAKmuH,QACHnuH,KAAKmuH,MAAMpxD,UAAW,GACxB/8D,KAAK2wH,gBAAgB31D,GAInBh7D,KAAKmuH,MAAMpxD,UAAW,IACxB2zD,GAAe,EACf1wH,KAAKmuH,MAAMyC,YAAY51D,EAAQp9B,EAAI,EAAGo9B,EAAQ/5C,EAAI,GAClDjhB,KAAKmuH,MAAMzrE,SAKX1iD,KAAK6D,QAAQ2qH,SAASE,gBAAiB,GAAS1uH,KAAK6D,QAAQ2qH,SAAS39G,WAAY,GACpF7Q,KAAKwqC,OAAOD,MAAMwX,QAIhB2uE,KAAiB,IACKnqH,SAApBvG,KAAKquH,aACPrxE,cAAch9C,KAAKquH,YACnBruH,KAAKquH,WAAa9nH,QAEfvG,KAAKu2E,KAAK5c,WACb35D,KAAKquH,WAAankH,WAAW,WAC3B,MAAOqwE,GAAOs2C,gBAAgB71D,IAC7Bh7D,KAAK6D,QAAQ+qH,gBAOhB5uH,KAAK6D,QAAQuK,SAAU,EAAM,CAE/B,GAAItI,GAAM9F,KAAKg8F,iBAAiBiF,UAAUjmC,EAC9Bz0D,UAART,IACFA,EAAM9F,KAAKg8F,iBAAiBkF,UAAUlmC,IAExCh7D,KAAKg8F,iBAAiB80B,YAAYhrH,OAatC6D,IAAK,kBACL5E,MAAO,SAAyBi2D,GAC9B,GAAIp9B,GAAI59B,KAAKwqC,OAAOshF,qBAAqB9wD,EAAQp9B,GAC7C3c,EAAIjhB,KAAKwqC,OAAOuhF,qBAAqB/wD,EAAQ/5C,GAC7C8vG,GACFpoH,KAAMi1B,EACN/0B,IAAKoY,EACL2wB,MAAOhU,EACPyQ,OAAQptB,GAGN+vG,EAAuCzqH,SAAlBvG,KAAKouH,SAAyB7nH,OAAYvG,KAAKouH,SAAS/tH,GAC7E4wH,GAAkB,EAClBC,EAAY,MAGhB,IAAsB3qH,SAAlBvG,KAAKouH,SAAwB,CAM/B,IAAK,GAJDzzB,GAAc36F,KAAKm/C,KAAKw7C,YACxBD,EAAQ16F,KAAKm/C,KAAKu7C,MAClB9+D,EAAOr1B,OACP4qH,KACK1qH,EAAI,EAAGA,EAAIk0F,EAAYr0F,OAAQG,IACtCm1B,EAAO8+D,EAAMC,EAAYl0F,IACrBm1B,EAAKw1F,kBAAkBL,MAAgB,GACjBxqH,SAApBq1B,EAAKy1F,YACPF,EAAiB3pH,KAAKmzF,EAAYl0F,GAKpC0qH,GAAiB7qH,OAAS,IAE5BtG,KAAKouH,SAAW1zB,EAAMy2B,EAAiBA,EAAiB7qH,OAAS,IAEjE2qH,GAAkB,GAItB,GAAsB1qH,SAAlBvG,KAAKouH,UAA0B6C,KAAoB,EAAO,CAM5D,IAAK,GAJDp2B,GAAc76F,KAAKm/C,KAAK07C,YACxBD,EAAQ56F,KAAKm/C,KAAKy7C,MAClBuG,EAAO56F,OACP+qH,KACK7qH,EAAI,EAAGA,EAAIo0F,EAAYv0F,OAAQG,IACtC06F,EAAOvG,EAAMC,EAAYp0F,IACrB06F,EAAKiwB,kBAAkBL,MAAgB,GACrC5vB,EAAK8P,aAAc,GAA4B1qG,SAApB46F,EAAKkwB,YAClCC,EAAiB9pH,KAAKqzF,EAAYp0F,GAKpC6qH,GAAiBhrH,OAAS,IAC5BtG,KAAKouH,SAAWxzB,EAAM02B,EAAiBA,EAAiBhrH,OAAS,IACjE4qH,EAAY,QAIM3qH,SAAlBvG,KAAKouH,SAEHpuH,KAAKouH,SAAS/tH,KAAO2wH,IACJzqH,SAAfvG,KAAKmuH,QACPnuH,KAAKmuH,MAAQ,GAAIH,GAAkB,WAAWhuH,KAAKwqC,OAAOD,QAG5DvqC,KAAKmuH,MAAMoD,gBAAkBL,EAC7BlxH,KAAKmuH,MAAMqD,cAAgBxxH,KAAKouH,SAAS/tH,GAKzCL,KAAKmuH,MAAMyC,YAAY51D,EAAQp9B,EAAI,EAAGo9B,EAAQ/5C,EAAI,GAClDjhB,KAAKmuH,MAAMsD,QAAQzxH,KAAKouH,SAASiD,YACjCrxH,KAAKmuH,MAAMzrE,OACX1iD,KAAKm/C,KAAKE,QAAQzH,KAAK,YAAa53C,KAAKouH,SAAS/tH,KAGjCkG,SAAfvG,KAAKmuH,QACPnuH,KAAKmuH,MAAMzoD,OACX1lE,KAAKm/C,KAAKE,QAAQzH,KAAK,iBAY7BjuC,IAAK,kBACL5E,MAAO,SAAyBi2D,GAC9B,GAAI+1D,GAAa/wH,KAAKg8F,iBAAiB01B,yBAAyB12D,GAE5D22D,GAAa,CACjB,IAAmC,SAA/B3xH,KAAKmuH,MAAMoD,iBACb,GAAkDhrH,SAA9CvG,KAAKm/C,KAAKu7C,MAAM16F,KAAKmuH,MAAMqD,iBAC7BG,EAAa3xH,KAAKm/C,KAAKu7C,MAAM16F,KAAKmuH,MAAMqD,eAAeJ,kBAAkBL,GAIrEY,KAAe,GAAM,CACvB,GAAIC,GAAW5xH,KAAKg8F,iBAAiBiF,UAAUjmC,EAC/C22D,GAAaC,EAASvxH,KAAOL,KAAKmuH,MAAMqD,mBAIKjrH,UAA7CvG,KAAKg8F,iBAAiBiF,UAAUjmC,IACgBz0D,SAA9CvG,KAAKm/C,KAAKy7C,MAAM56F,KAAKmuH,MAAMqD,iBAC7BG,EAAa3xH,KAAKm/C,KAAKy7C,MAAM56F,KAAKmuH,MAAMqD,eAAeJ,kBAAkBL,GAK3EY,MAAe,IACjB3xH,KAAKouH,SAAW7nH,OAChBvG,KAAKmuH,MAAMzoD,OACX1lE,KAAKm/C,KAAKE,QAAQzH,KAAK,kBAKtBq2E,IAGTruH,GAAQ,WAAaquH,EACrBpuH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAK7hBjzE,GADO9D,EAAoB,GAClBA,EAAoB,KAC7Bm+D,EAAan+D,EAAoB,IACjC+D,EAAW/D,EAAoB,IAE/B2xH,EAAoB,WACtB,QAASA,GAAkB1yE,EAAM3U,GAC/B,GAAIyX,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAM6xH,GAEtB7xH,KAAKm/C,KAAOA,EACZn/C,KAAKwqC,OAASA,EAEdxqC,KAAK8xH,cAAe,EACpB9xH,KAAK+xH,qBACL/xH,KAAKgyH,kBACLhyH,KAAK2sH,UAAY,EACjB3sH,KAAKiyH,WAAY,EAEjBjyH,KAAKm/C,KAAKE,QAAQjgB,GAAG,WAAY,WAC/B6iB,EAAMgwE,WAAY,EAAKhwE,EAAMiwE,8BAE/BlyH,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAc,WACjC6iB,EAAMgwE,WAAY,EAAMhwE,EAAMiwE,8BAEhClyH,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WACP74B,SAAnB07C,EAAMh+C,UACRg+C,EAAMh+C,SAASk7B,YAInBn/B,KAAK6D,WAkRP,MA/QAszE,GAAa06C,IACXloH,IAAK,aACL5E,MAAO,SAAoBlB,GACT0C,SAAZ1C,IACF7D,KAAK6D,QAAUA,EACf7D,KAAKoQ,aAITzG,IAAK,SACL5E,MAAO,WACD/E,KAAK6D,QAAQ8qH,qBAAsB,EACjC3uH,KAAK8xH,gBAAiB,GACxB9xH,KAAKmyH,yBAEEnyH,KAAK8xH,gBAAiB,GAC/B9xH,KAAKoyH,kBAGPpyH,KAAKkyH,+BAGPvoH,IAAK,kBACL5E,MAAO,WAEL,GAAqC,GAAjC/E,KAAK+xH,kBAAkBzrH,OAAa,CACtC,IAAK,GAAIG,GAAI,EAAGA,EAAIzG,KAAK+xH,kBAAkBzrH,OAAQG,IACjDzG,KAAK+xH,kBAAkBtrH,GAAG04B,SAE5Bn/B,MAAK+xH,qBAIH/xH,KAAKqyH,eAAiBryH,KAAKqyH,cAAuB,SAAKryH,KAAKqyH,cAAuB,QAAEhnH,YACvFrL,KAAKqyH,cAAuB,QAAEhnH,WAAW3G,YAAY1E,KAAKqyH,cAAuB,SAGnFryH,KAAK8xH,cAAe,KAYtBnoH,IAAK,yBACL5E,MAAO,WACL,GAAI00E,GAASz5E,IAEbA,MAAKoyH,kBAELpyH,KAAKqyH,gBACL,IAAIC,IAAkB,KAAM,OAAQ,OAAQ,QAAS,SAAU,UAAW,eACtEC,GAAwB,UAAW,YAAa,YAAa,aAAc,UAAW,WAAY,OAEtGvyH,MAAKqyH,cAAuB,QAAIj1F,SAASM,cAAc,OACvD19B,KAAKqyH,cAAuB,QAAEtpH,UAAY,iBAC1C/I,KAAKwqC,OAAOD,MAAMjN,YAAYt9B,KAAKqyH,cAAuB,QAE1D,KAAK,GAAI5rH,GAAI,EAAGA,EAAI6rH,EAAehsH,OAAQG,IAAK,CAC9CzG,KAAKqyH,cAAcC,EAAe7rH,IAAM22B,SAASM,cAAc,OAC/D19B,KAAKqyH,cAAcC,EAAe7rH,IAAIsC,UAAY,kBAAoBupH,EAAe7rH,GACrFzG,KAAKqyH,cAAuB,QAAE/0F,YAAYt9B,KAAKqyH,cAAcC,EAAe7rH,IAE5E,IAAI09C,GAAS,GAAIngD,GAAOhE,KAAKqyH,cAAcC,EAAe7rH,IAC1B,UAA5B8rH,EAAqB9rH,GACvB43D,EAAW3C,QAAQvX,EAAQnkD,KAAKwyH,KAAKlzE,KAAKt/C,OAE1Cq+D,EAAW3C,QAAQvX,EAAQnkD,KAAKyyH,aAAanzE,KAAKt/C,KAAMuyH,EAAqB9rH,KAG/EzG,KAAK+xH,kBAAkBvqH,KAAK28C,GAK9B,GAAIwmE,GAAc,GAAI3mH,GAAOhE,KAAKwqC,OAAOD,MACzC8zB,GAAW1C,UAAUgvD,EAAa,WAChClxC,EAAOi5C,kBAET1yH,KAAK+xH,kBAAkBvqH,KAAKmjH,GAE5B3qH,KAAK8xH,cAAe,KAGtBnoH,IAAK,eACL5E,MAAO,SAAsBsF,GACS9D,SAAhCvG,KAAKgyH,eAAe3nH,KACtBrK,KAAKgyH,eAAe3nH,GAAUrK,KAAKqK,GAAQi1C,KAAKt/C,MAChDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAKgyH,eAAe3nH,IACvDrK,KAAKm/C,KAAKE,QAAQzH,KAAK,uBAI3BjuC,IAAK,mBACL5E,MAAO,SAA0BsF,GACK9D,SAAhCvG,KAAKgyH,eAAe3nH,KACtBrK,KAAKm/C,KAAKE,QAAQ9f,IAAI,aAAcv/B,KAAKgyH,eAAe3nH,IACxDrK,KAAKm/C,KAAKE,QAAQzH,KAAK,wBAChB53C,MAAKgyH,eAAe3nH,OAU/BV,IAAK,OACL5E,MAAO,YACD,GAAIM,OAAOyC,UAAY9H,KAAK2sH,UAAY,MAE1C3sH,KAAKm/C,KAAKE,QAAQzH,KAAK,OAASnxB,SAAU,MAC1CzmB,KAAK2sH,WAAY,GAAItnH,OAAOyC,cAUhC6B,IAAK,gBACL5E,MAAO,WACL,IAAK,GAAI4tH,KAAe3yH,MAAKgyH,eACvBhyH,KAAKgyH,eAAehsH,eAAe2sH,KACrC3yH,KAAKm/C,KAAKE,QAAQ9f,IAAI,aAAcv/B,KAAKgyH,eAAeW,IACxD3yH,KAAKm/C,KAAKE,QAAQzH,KAAK,kBAG3B53C,MAAKgyH,qBAGProH,IAAK,UACL5E,MAAO,WACL/E,KAAKm/C,KAAKw8C,KAAKjzD,YAAYznB,GAAKjhB,KAAK6D,QAAQ2qH,SAASC,MAAMxtG,KAG9DtX,IAAK,YACL5E,MAAO,WACL/E,KAAKm/C,KAAKw8C,KAAKjzD,YAAYznB,GAAKjhB,KAAK6D,QAAQ2qH,SAASC,MAAMxtG,KAG9DtX,IAAK,YACL5E,MAAO,WACL/E,KAAKm/C,KAAKw8C,KAAKjzD,YAAY9K,GAAK59B,KAAK6D,QAAQ2qH,SAASC,MAAM7wF,KAG9Dj0B,IAAK,aACL5E,MAAO,WACL/E,KAAKm/C,KAAKw8C,KAAKjzD,YAAY9K,GAAK59B,KAAK6D,QAAQ2qH,SAASC,MAAM7wF,KAG9Dj0B,IAAK,UACL5E,MAAO,WACL/E,KAAKm/C,KAAKw8C,KAAK32F,OAAS,EAAIhF,KAAK6D,QAAQ2qH,SAASC,MAAMtzD,KACxDn7D,KAAKm/C,KAAKE,QAAQzH,KAAK,QAAUltB,UAAW,IAAK1lB,MAAOhF,KAAKm/C,KAAKw8C,KAAK32F,WAGzE2E,IAAK,WACL5E,MAAO,WACL/E,KAAKm/C,KAAKw8C,KAAK32F,OAAS,EAAIhF,KAAK6D,QAAQ2qH,SAASC,MAAMtzD,KACxDn7D,KAAKm/C,KAAKE,QAAQzH,KAAK,QAAUltB,UAAW,IAAK1lB,MAAOhF,KAAKm/C,KAAKw8C,KAAK32F,WAOzE2E,IAAK,4BACL5E,MAAO,WACL,GAAIw1E,GAASv6E,IAESuG,UAAlBvG,KAAKiE,UACPjE,KAAKiE,SAASk7B,UAGZn/B,KAAK6D,QAAQ2qH,SAAS39G,WAAY,IAChC7Q,KAAK6D,QAAQ2qH,SAASE,gBAAiB,EACzC1uH,KAAKiE,SAAWA,GAAWmgC,UAAWr5B,OAAQF,gBAAgB,IAE9D7K,KAAKiE,SAAWA,GAAWmgC,UAAWpkC,KAAKwqC,OAAOD,MAAO1/B,gBAAgB,IAG3E7K,KAAKiE,SAAS0xD,QAEV31D,KAAKiyH,aAAc,IACrBjyH,KAAKiE,SAASq7C,KAAK,KAAM,WACvBi7B,EAAOk4C,aAAa,YACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,cACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,cACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,QAAS,WAC1Bi7B,EAAOk4C,aAAa,eACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,YACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,YACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,aACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,aACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,aACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,YACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,SAAU,WAC3Bi7B,EAAOk4C,aAAa,YACnB,WACHzyH,KAAKiE,SAASq7C,KAAK,WAAY,WAC7Bi7B,EAAOk4C,aAAa,aACnB,WAEHzyH,KAAKiE,SAASq7C,KAAK,KAAM,WACvBi7B,EAAOq4C,iBAAiB,YACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,cACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,cACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,QAAS,WAC1Bi7B,EAAOq4C,iBAAiB,eACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,YACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,YACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,aACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,aACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,aACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,YACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,SAAU,WAC3Bi7B,EAAOq4C,iBAAiB,YACvB,SACH5yH,KAAKiE,SAASq7C,KAAK,WAAY,WAC7Bi7B,EAAOq4C,iBAAiB,aACvB,eAMJf,IAGTjyH,GAAQ,WAAaiyH,EACrBhyH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAmBrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB47C,EAAQ,WACV,QAASA,GAAMzuF,GACb2yC,EAAgB/2E,KAAM6yH,GAEtB7yH,KAAKokC,UAAYA,EAEjBpkC,KAAK49B,EAAI,EACT59B,KAAKihB,EAAI,EACTjhB,KAAK4uC,QAAU,EACf5uC,KAAK+8D,QAAS,EAGd/8D,KAAKuqC,MAAQnN,SAASM,cAAc,OACpC19B,KAAKuqC,MAAMxhC,UAAY,sBACvB/I,KAAKokC,UAAU9G,YAAYt9B,KAAKuqC,OAmFlC,MA3EA4sC,GAAa07C,IACXlpH,IAAK,cACL5E,MAAO,SAAqB64B,EAAG3c,GAC7BjhB,KAAK49B,EAAIrxB,SAASqxB,GAClB59B,KAAKihB,EAAI1U,SAAS0U,MAQpBtX,IAAK,UACL5E,MAAO,SAAiBs5B,GAClBA,YAAmBsvC,UACrB3tE,KAAKuqC,MAAMsE,UAAY,GACvB7uC,KAAKuqC,MAAMjN,YAAYe,IAEvBr+B,KAAKuqC,MAAMsE,UAAYxQ,KAS3B10B,IAAK,OACL5E,MAAO,SAAc+tH,GAKnB,GAJevsH,SAAXusH,IACFA,GAAS,GAGPA,KAAW,EAAM,CACnB,GAAIr0F,GAASz+B,KAAKuqC,MAAMkF,aACpBjR,EAAQx+B,KAAKuqC,MAAME,YACnBuU,EAAYh/C,KAAKuqC,MAAMl/B,WAAWokC,aAClCmhC,EAAW5wE,KAAKuqC,MAAMl/B,WAAWo/B,YAEjC5hC,EAAM7I,KAAKihB,EAAIwd,CACf51B,GAAM41B,EAASz+B,KAAK4uC,QAAUoQ,IAChCn2C,EAAMm2C,EAAYvgB,EAASz+B,KAAK4uC,SAE9B/lC,EAAM7I,KAAK4uC,UACb/lC,EAAM7I,KAAK4uC,QAGb,IAAIjmC,GAAO3I,KAAK49B,CACZj1B,GAAO61B,EAAQx+B,KAAK4uC,QAAUgiC,IAChCjoE,EAAOioE,EAAWpyC,EAAQx+B,KAAK4uC,SAE7BjmC,EAAO3I,KAAK4uC,UACdjmC,EAAO3I,KAAK4uC,SAGd5uC,KAAKuqC,MAAMz7B,MAAMnG,KAAOA,EAAO,KAC/B3I,KAAKuqC,MAAMz7B,MAAMjG,IAAMA,EAAM,KAC7B7I,KAAKuqC,MAAMz7B,MAAM2yD,WAAa,UAC9BzhE,KAAK+8D,QAAS,MAEd/8D,MAAK0lE,UAQT/7D,IAAK,OACL5E,MAAO,WACL/E,KAAK+8D,QAAS,EACd/8D,KAAKuqC,MAAMz7B,MAAM2yD,WAAa,aAI3BoxD,IAGTjzH,GAAQ,WAAaizH,EACrBhzH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB0vB,EAAOzmG,EAAoB,IAC3B6wG,EAAO7wG,EAAoB,IAC3BS,EAAOT,EAAoB,GAE3B6yH,EAAmB,WACrB,QAASA,GAAiB5zE,EAAM3U,GAC9B,GAAIyX,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAM+yH,GAEtB/yH,KAAKm/C,KAAOA,EACZn/C,KAAKwqC,OAASA,EACdxqC,KAAKiwH,cAAiBv1B,SAAWE,UACjC56F,KAAKgzH,UAAat4B,SAAWE,UAE7B56F,KAAK6D,WACL7D,KAAK2+C,gBACHqkB,aAAa,EACbD,YAAY,EACZkwD,sBAAsB,EACtBC,qBAAqB,GAEvBvyH,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnC6iB,EAAMkxE,oBAusBV,MAnsBAh8C,GAAa47C,IACXppH,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,cAAe,sBAAuB,aAAc,uBAClEtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,OAWnD8F,IAAK,gBACL5E,MAAO,SAAuBi2D,GAC5B,GAAIsM,IAAW,CACf,IAAItnE,KAAK6D,QAAQk/D,cAAe,EAAM,CACpC,GAAIj9D,GAAM9F,KAAKihG,UAAUjmC,IAAYh7D,KAAKkhG,UAAUlmC,EAGpDh7D,MAAK4+F,cAEOr4F,SAART,IACFwhE,EAAWtnE,KAAKgwH,aAAalqH,IAE/B9F,KAAKm/C,KAAKE,QAAQzH,KAAK,kBAEzB,MAAO0vB,MAGT39D,IAAK,0BACL5E,MAAO,SAAiCi2D,GACtC,GAAIo4D,IAAmB,CACvB,IAAIpzH,KAAK6D,QAAQk/D,cAAe,EAAM,CACpC,GAAIj9D,GAAM9F,KAAKihG,UAAUjmC,IAAYh7D,KAAKkhG,UAAUlmC,EAExCz0D,UAART,IACFstH,GAAmB,EACfttH,EAAIskH,gBAAiB,EACvBpqH,KAAKqzH,eAAevtH,GAEpB9F,KAAKgwH,aAAalqH,GAGpB9F,KAAKm/C,KAAKE,QAAQzH,KAAK,mBAG3B,MAAOw7E,MAGTzpH,IAAK,sBACL5E,MAAO,SAA6BsgD,EAAWv6C,EAAOkwD,EAAS6P,GAC7D,GAAIyoD,GAAiBjtH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEzF8/C,EAAa5/C,MAEf4/C,GADEmtE,KAAmB,GACN54B,SAAWE,UAEb56F,KAAK4hD,eAEpBuE,EAAoB,SAClBotE,KAAO31F,EAAGo9B,EAAQp9B,EAAG3c,EAAG+5C,EAAQ/5C,GAChCupB,OAAQxqC,KAAKwqC,OAAO20D,YAAYnkC,IAElC7U,EAAkB,MAAIr7C,EAEDvE,SAAjBskE,IACF1kB,EAA8B,kBAAI0kB,GAEpC7qE,KAAKm/C,KAAKE,QAAQzH,KAAKyN,EAAWc,MAGpCx8C,IAAK,eACL5E,MAAO,SAAsBe,GAC3B,GAAI0tH,GAAiBntH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQovH,qBAAuB5sH,UAAU,EAEzH,OAAYE,UAART,GACEA,YAAe6gG,IACb6sB,KAAmB,GACrBxzH,KAAKyzH,sBAAsB3tH,GAG/BA,EAAI8/D,SACJ5lE,KAAK0zH,gBAAgB5tH,IACd,IAEF,KAGT6D,IAAK,iBACL5E,MAAO,SAAwBe,GACzBA,EAAIskH,gBAAiB,IACvBtkH,EAAIwhE,UAAW,EACftnE,KAAK2zH,qBAAqB7tH,OAW9B6D,IAAK,8BACL5E,MAAO,SAAqCX,GAG1C,IAAK,GAFD+sH,MACAz2B,EAAQ16F,KAAKm/C,KAAKu7C,MACbj0F,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIg4F,GAASz+F,KAAKm/C,KAAKw7C,YAAYl0F,EAC/Bi0F,GAAM+D,GAAQ2yB,kBAAkBhtH,IAClC+sH,EAAiB3pH,KAAKi3F,GAG1B,MAAO0yB,MAWTxnH,IAAK,2BACL5E,MAAO,SAAkCi2D,GACvC,GAAI44D,GAAY5zH,KAAKwqC,OAAO20D,YAAYnkC,EACxC,QACEryD,KAAMirH,EAAUh2F,EAAI,EACpB/0B,IAAK+qH,EAAU3yG,EAAI,EACnB2wB,MAAOgiF,EAAUh2F,EAAI,EACrByQ,OAAQulF,EAAU3yG,EAAI,MAW1BtX,IAAK,YACL5E,MAAO,SAAmBi2D,GACxB,GAAI64D,GAAaxtH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,GAGpFytH,EAAiB9zH,KAAK0xH,yBAAyB12D,GAC/Cm2D,EAAmBnxH,KAAK+zH,4BAA4BD,EAGxD,OAAI3C,GAAiB7qH,OAAS,EACxButH,KAAe,EACV7zH,KAAKm/C,KAAKu7C,MAAMy2B,EAAiBA,EAAiB7qH,OAAS,IAE3D6qH,EAAiBA,EAAiB7qH,OAAS,GAGpD,UAWJqD,IAAK,2BACL5E,MAAO,SAAkCX,EAAQktH,GAE/C,IAAK,GADD12B,GAAQ56F,KAAKm/C,KAAKy7C,MACbn0F,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAK07C,YAAYv0F,OAAQG,IAAK,CACrD,GAAIi4F,GAAS1+F,KAAKm/C,KAAK07C,YAAYp0F,EAC/Bm0F,GAAM8D,GAAQ0yB,kBAAkBhtH,IAClCktH,EAAiB9pH,KAAKk3F,OAY5B/0F,IAAK,8BACL5E,MAAO,SAAqCX,GAC1C,GAAIktH,KAEJ,OADAtxH,MAAKg0H,yBAAyB5vH,EAAQktH,GAC/BA,KAWT3nH,IAAK,YACL5E,MAAO,SAAmBi2D,GACxB,GAAIi5D,GAAa5tH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,GAEpFytH,EAAiB9zH,KAAK0xH,yBAAyB12D,GAC/Cs2D,EAAmBtxH,KAAKk0H,4BAA4BJ,EAExD,OAAIxC,GAAiBhrH,OAAS,EACxB2tH,KAAe,EACVj0H,KAAKm/C,KAAKy7C,MAAM02B,EAAiBA,EAAiBhrH,OAAS,IAE3DgrH,EAAiBA,EAAiBhrH,OAAS,GAGpD,UAWJqD,IAAK,kBACL5E,MAAO,SAAyBe,GAC1BA,YAAe6gG,GACjB3mG,KAAKiwH,aAAav1B,MAAM50F,EAAIzF,IAAMyF,EAElC9F,KAAKiwH,aAAar1B,MAAM90F,EAAIzF,IAAMyF,KAWtC6D,IAAK,cACL5E,MAAO,SAAqBe,GACtBA,YAAe6gG,GACjB3mG,KAAKgzH,SAASt4B,MAAM50F,EAAIzF,IAAMyF,EAE9B9F,KAAKgzH,SAASp4B,MAAM90F,EAAIzF,IAAMyF,KAWlC6D,IAAK,uBACL5E,MAAO,SAA8Be,GAC/BA,YAAe6gG,UACV3mG,MAAKiwH,aAAav1B,MAAM50F,EAAIzF,IACnCL,KAAKm0H,wBAAwBruH,UAEtB9F,MAAKiwH,aAAar1B,MAAM90F,EAAIzF,OAQvCsJ,IAAK,cACL5E,MAAO,WACL,IAAK,GAAI05F,KAAUz+F,MAAKiwH,aAAav1B,MAC/B16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,IACzCz+F,KAAKiwH,aAAav1B,MAAM+D,GAAQ94B,UAGpC,KAAK,GAAI+4B,KAAU1+F,MAAKiwH,aAAar1B,MAC/B56F,KAAKiwH,aAAar1B,MAAM50F,eAAe04F,IACzC1+F,KAAKiwH,aAAar1B,MAAM8D,GAAQ/4B,UAIpC3lE,MAAKiwH,cAAiBv1B,SAAWE,aAUnCjxF,IAAK,wBACL5E,MAAO,WACL,GAAIktB,GAAQ,CACZ,KAAK,GAAIwsE,KAAUz+F,MAAKiwH,aAAav1B,MAC/B16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,KACzCxsE,GAAS,EAGb,OAAOA,MAUTtoB,IAAK,mBACL5E,MAAO,WACL,IAAK,GAAI05F,KAAUz+F,MAAKiwH,aAAav1B,MACnC,GAAI16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,GACzC,MAAOz+F,MAAKiwH,aAAav1B,MAAM+D,MAarC90F,IAAK,mBACL5E,MAAO,WACL,IAAK,GAAI25F,KAAU1+F,MAAKiwH,aAAar1B,MACnC,GAAI56F,KAAKiwH,aAAar1B,MAAM50F,eAAe04F,GACzC,MAAO1+F,MAAKiwH,aAAar1B,MAAM8D,MAarC/0F,IAAK,wBACL5E,MAAO,WACL,GAAIktB,GAAQ,CACZ,KAAK,GAAIysE,KAAU1+F,MAAKiwH,aAAar1B,MAC/B56F,KAAKiwH,aAAar1B,MAAM50F,eAAe04F,KACzCzsE,GAAS,EAGb,OAAOA,MAUTtoB,IAAK,0BACL5E,MAAO,WACL,GAAIktB,GAAQ,CACZ,KAAK,GAAIwsE,KAAUz+F,MAAKiwH,aAAav1B,MAC/B16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,KACzCxsE,GAAS,EAGb,KAAK,GAAIysE,KAAU1+F,MAAKiwH,aAAar1B,MAC/B56F,KAAKiwH,aAAar1B,MAAM50F,eAAe04F,KACzCzsE,GAAS,EAGb,OAAOA,MAUTtoB,IAAK,oBACL5E,MAAO,WACL,IAAK,GAAI05F,KAAUz+F,MAAKiwH,aAAav1B,MACnC,GAAI16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,GACzC,OAAO,CAGX,KAAK,GAAIC,KAAU1+F,MAAKiwH,aAAar1B,MACnC,GAAI56F,KAAKiwH,aAAar1B,MAAM50F,eAAe04F,GACzC,OAAO,CAGX,QAAO,KAUT/0F,IAAK,sBACL5E,MAAO,WACL,IAAK,GAAI05F,KAAUz+F,MAAKiwH,aAAav1B,MACnC,GAAI16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,IACrCz+F,KAAKiwH,aAAav1B,MAAM+D,GAAQ21B,YAAc,EAChD,OAAO,CAIb,QAAO,KAUTzqH,IAAK,wBACL5E,MAAO,SAA+B62B,GACpC,IAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKg/D,MAAMt0F,OAAQG,IAAK,CAC1C,GAAI06F,GAAOvlE,EAAKg/D,MAAMn0F,EACtB06F,GAAKv7B,SACL5lE,KAAK0zH,gBAAgBvyB,OAWzBx3F,IAAK,uBACL5E,MAAO,SAA8B62B,GACnC,IAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKg/D,MAAMt0F,OAAQG,IAAK,CAC1C,GAAI06F,GAAOvlE,EAAKg/D,MAAMn0F,EACtB06F,GAAK/yF,OAAQ,EACbpO,KAAKq0H,YAAYlzB,OAWrBx3F,IAAK,0BACL5E,MAAO,SAAiC62B,GACtC,IAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKg/D,MAAMt0F,OAAQG,IAAK,CAC1C,GAAI06F,GAAOvlE,EAAKg/D,MAAMn0F,EACtB06F,GAAKx7B,WACL3lE,KAAK2zH,qBAAqBxyB,OAY9Bx3F,IAAK,aACL5E,MAAO,SAAoBX,GACrBA,EAAOgK,SAAU,IACnBhK,EAAOgK,OAAQ,EACXhK,YAAkBuiG,GACpB3mG,KAAKm/C,KAAKE,QAAQzH,KAAK,YAAchc,KAAMx3B,EAAO/D,KAElDL,KAAKm/C,KAAKE,QAAQzH,KAAK,YAAcupD,KAAM/8F,EAAO/D,SAaxDsJ,IAAK,cACL5E,MAAO,SAAqBX,GAC1B,GAAIkwH,IAAe,CAEnB,KAAK,GAAI71B,KAAUz+F,MAAKgzH,SAASt4B,MAC3B16F,KAAKgzH,SAASt4B,MAAM10F,eAAey4F,KACtBl4F,SAAXnC,GAAwBA,YAAkBuiG,IAAQviG,EAAO/D,IAAMo+F,GAAUr6F,YAAkB2sG,MAC7F/wG,KAAKu0H,WAAWv0H,KAAKgzH,SAASt4B,MAAM+D,UAC7Bz+F,MAAKgzH,SAASt4B,MAAM+D,GAC3B61B,GAAe,EAMrB,KAAK,GAAI51B,KAAU1+F,MAAKgzH,SAASp4B,MAC3B56F,KAAKgzH,SAASp4B,MAAM50F,eAAe04F,KAGjC41B,KAAiB,GACnBt0H,KAAKgzH,SAASp4B,MAAM8D,GAAQtwF,OAAQ,QAC7BpO,MAAKgzH,SAASp4B,MAAM8D,IAGTn4F,SAAXnC,IACLpE,KAAKu0H,WAAWv0H,KAAKgzH,SAASp4B,MAAM8D,UAC7B1+F,MAAKgzH,SAASp4B,MAAM8D,GAC3B41B,GAAe,GAKR/tH,UAAXnC,IACEA,EAAOgK,SAAU,IACnBhK,EAAOgK,OAAQ,EACfpO,KAAKq0H,YAAYjwH,GACjBkwH,GAAe,EACXlwH,YAAkBuiG,GACpB3mG,KAAKm/C,KAAKE,QAAQzH,KAAK,aAAehc,KAAMx3B,EAAO/D,KAEnDL,KAAKm/C,KAAKE,QAAQzH,KAAK,aAAeupD,KAAM/8F,EAAO/D,MAGnD+D,YAAkBuiG,IAAQ3mG,KAAK6D,QAAQqvH,uBAAwB,GACjElzH,KAAKw0H,qBAAqBpwH,IAI1BkwH,KAAiB,GACnBt0H,KAAKm/C,KAAKE,QAAQzH,KAAK,qBAU3BjuC,IAAK,eACL5E,MAAO,WACL,GAAI05G,GAAUz+G,KAAK+gG,mBACf0zB,EAAUz0H,KAAKghG,kBACnB,QAAStG,MAAO+jB,EAAS7jB,MAAO65B,MAUlC9qH,IAAK,mBACL5E,MAAO,WACL,GAAI2vH,KACJ,IAAI10H,KAAK6D,QAAQk/D,cAAe,EAC9B,IAAK,GAAI07B,KAAUz+F,MAAKiwH,aAAav1B,MAC/B16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,IACzCi2B,EAAQltH,KAAKxH,KAAKiwH,aAAav1B,MAAM+D,GAAQp+F,GAInD,OAAOq0H,MAUT/qH,IAAK,mBACL5E,MAAO,WACL,GAAI2vH,KACJ,IAAI10H,KAAK6D,QAAQk/D,cAAe,EAC9B,IAAK,GAAI27B,KAAU1+F,MAAKiwH,aAAar1B,MAC/B56F,KAAKiwH,aAAar1B,MAAM50F,eAAe04F,IACzCg2B,EAAQltH,KAAKxH,KAAKiwH,aAAar1B,MAAM8D,GAAQr+F,GAInD,OAAOq0H,MAST/qH,IAAK,eACL5E,MAAO,SAAsB48C,GAC3B,GAAI99C,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAE/EI,EAAIF,OACJlG,EAAKkG,MAET,KAAKo7C,IAAcA,EAAU+4C,QAAU/4C,EAAUi5C,MAAO,KAAM,gEAK9D,KAHI/2F,EAAQ+6F,aAAuCr4F,SAAxB1C,EAAQ+6F,cACjC5+F,KAAK4+F,cAEHj9C,EAAU+4C,MACZ,IAAKj0F,EAAI,EAAGA,EAAIk7C,EAAU+4C,MAAMp0F,OAAQG,IAAK,CAC3CpG,EAAKshD,EAAU+4C,MAAMj0F,EAErB,IAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAMr6F,EAC3B,KAAKu7B,EACH,KAAM,IAAI+4F,YAAW,iBAAmBt0H,EAAK,cAG/CL,MAAKgwH,aAAap0F,EAAM/3B,EAAQ2vH,gBAIpC,GAAI7xE,EAAUi5C,MACZ,IAAKn0F,EAAI,EAAGA,EAAIk7C,EAAUi5C,MAAMt0F,OAAQG,IAAK,CAC3CpG,EAAKshD,EAAUi5C,MAAMn0F,EAErB,IAAI06F,GAAOnhG,KAAKm/C,KAAKy7C,MAAMv6F,EAC3B,KAAK8gG,EACH,KAAM,IAAIwzB,YAAW,iBAAmBt0H,EAAK,cAE/CL,MAAKgwH,aAAa7uB,GAGtBnhG,KAAKm/C,KAAKE,QAAQzH,KAAK,qBAUzBjuC,IAAK,cACL5E,MAAO,SAAqB48C,GAC1B,GAAI6xE,GAAiBntH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAE5F,KAAKs7C,GAAkCp7C,SAArBo7C,EAAUr7C,OAAsB,KAAM,qCAExDtG,MAAK6hD,cAAe64C,MAAO/4C,IAAe6xE,eAAgBA,OAS5D7pH,IAAK,cACL5E,MAAO,SAAqB48C,GAC1B,IAAKA,GAAkCp7C,SAArBo7C,EAAUr7C,OAAsB,KAAM,qCAExDtG,MAAK6hD,cAAe+4C,MAAOj5C,OAQ7Bh4C,IAAK,kBACL5E,MAAO,WACL,IAAK,GAAI05F,KAAUz+F,MAAKiwH,aAAav1B,MAC/B16F,KAAKiwH,aAAav1B,MAAM10F,eAAey4F,KACpCz+F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,UAC3Bz+F,MAAKiwH,aAAav1B,MAAM+D,GAIrC,KAAK,GAAIC,KAAU1+F,MAAKiwH,aAAar1B,MAC/B56F,KAAKiwH,aAAar1B,MAAM50F,eAAe04F,KACpC1+F,KAAKm/C,KAAKy7C,MAAM50F,eAAe04F,UAC3B1+F,MAAKiwH,aAAar1B,MAAM8D,QAOlCq0B,IAGTnzH,GAAQ,WAAamzH,EACrBlzH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAVhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI8iG,GAAiB,WAAe,QAASC,GAAc1/F,EAAK3B,GAAK,GAAIshG,MAAeC,GAAK,EAAUtzF,GAAK,EAAWuzF,EAAK1hG,MAAW,KAAM,IAAK,GAAiC2hG,GAA7B3yF,EAAKnN,EAAI+/F,OAAOriD,cAAmBkiD,GAAME,EAAK3yF,EAAG+B,QAAQuiD,QAAoBkuC,EAAKvgG,KAAK0gG,EAAGnjG,QAAY0B,GAAKshG,EAAKzhG,SAAWG,GAA3DuhG,GAAK,IAAoE,MAAO9tB,GAAOxlE,GAAK,EAAMuzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAMzyF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMuzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU3/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAI+/F,OAAOriD,WAAY1+C,QAAOgB,GAAQ,MAAO0/F,GAAc1/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBiwE,EAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBitC,EAAehkH,EAAoB,IAEnCikH,EAAgBvtC,EAAuBstC,GAEvCvjH,EAAOT,EAAoB,GAE3B00H,EAAe,WACjB,QAASA,GAAaz1E,GACpB43B,EAAgB/2E,KAAM40H,GAEtB50H,KAAKm/C,KAAOA,EAEZn/C,KAAK60H,kBAAoB5vH,KAAKsjB,MAAsB,IAAhBtjB,KAAK+2B,UACzCh8B,KAAKggH,WAAahgH,KAAK60H,kBACvB70H,KAAK80H,YAAa,EAClB90H,KAAK6D,WACL7D,KAAK+0H,eAAkB94C,YAEvBj8E,KAAK2+C,gBACHqhE,WAAYz5G,OACZyuH,gBAAgB,EAChBC,cACEpkH,SAAS,EACTqkH,gBAAiB,IACjBC,YAAa,IACbC,YAAa,IACbC,eAAe,EACfC,kBAAkB,EAClB5qG,UAAW,KACX6qG,WAAY,YAGhB50H,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAC/B3+C,KAAK47F,qBAq2CP,MAl2CAzkB,GAAay9C,IACXjrH,IAAK,qBACL5E,MAAO,WACL,GAAIk9C,GAAQjiD,IAEZA,MAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgB,WACnC6iB,EAAMuzE,4BAERx1H,KAAKm/C,KAAKE,QAAQjgB,GAAG,cAAe,WAClC6iB,EAAMwzE,kBAERz1H,KAAKm/C,KAAKE,QAAQjgB,GAAG,2BAA4B,WAC/C6iB,EAAMuzE,+BAIV7rH,IAAK,aACL5E,MAAO,SAAoBlB,EAASL,GAClC,GAAgB+C,SAAZ1C,EAAuB,CACzB,GAAI6xH,GAAwB11H,KAAK6D,QAAQoxH,aAAapkH,OAOtD,IANAlQ,EAAKsG,qBAAqB,aAAc,kBAAmBjH,KAAK6D,QAASA,GACzElD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,gBACd0C,SAAvB1C,EAAQm8G,aACVhgH,KAAK60H,kBAAoBhxH,EAAQm8G,YAG/BhgH,KAAK6D,QAAQoxH,aAAapkH,WAAY,EAmBxC,MAlBI6kH,MAA0B,GAE5B11H,KAAKm/C,KAAKE,QAAQzH,KAAK,WAAW,GAIQ,OAAxC53C,KAAK6D,QAAQoxH,aAAavqG,WAA8D,OAAxC1qB,KAAK6D,QAAQoxH,aAAavqG,UACxE1qB,KAAK6D,QAAQoxH,aAAaC,gBAAkB,IAC9Cl1H,KAAK6D,QAAQoxH,aAAaC,iBAAmB,IAG3Cl1H,KAAK6D,QAAQoxH,aAAaC,gBAAkB,IAC9Cl1H,KAAK6D,QAAQoxH,aAAaC,iBAAmB,IAIjDl1H,KAAKm/C,KAAKE,QAAQzH,KAAK,4BAEhB53C,KAAK21H,qCAAqCnyH,EAEjD,IAAIkyH,KAA0B,EAG5B,MADA11H,MAAKm/C,KAAKE,QAAQzH,KAAK,WAChBj3C,EAAK0G,WAAW7D,EAAYxD,KAAK+0H,eAI9C,MAAOvxH,MAGTmG,IAAK,uCACL5E,MAAO,SAA8CvB,GACnD,GAAIxD,KAAK6D,QAAQoxH,aAAapkH,WAAY,EAAM,CAEnBtK,SAAvB/C,EAAWy4E,SAAyBz4E,EAAWy4E,WAAY,GAC7Dz4E,EAAWy4E,SACTprE,QAAgDtK,SAAvCvG,KAAK+0H,cAAc94C,QAAQprE,SAAwB,EAAO7Q,KAAK+0H,cAAc94C,QAAQprE,QAC9FqrE,OAAQ,yBAEVl8E,KAAK+0H,cAAc94C,QAAQprE,QAAiDtK,SAAvCvG,KAAK+0H,cAAc94C,QAAQprE,SAAwB,EAAO7Q,KAAK+0H,cAAc94C,QAAQprE,QAC1H7Q,KAAK+0H,cAAc94C,QAAQC,OAASl8E,KAAK+0H,cAAc94C,QAAQC,QAAU,aAClC,gBAAvB14E,GAAWy4E,SAC3Bj8E,KAAK+0H,cAAc94C,QAAQprE,QAAyCtK,SAA/B/C,EAAWy4E,QAAQprE,SAAwB,EAAOrN,EAAWy4E,QAAQprE,QAC1G7Q,KAAK+0H,cAAc94C,QAAQC,OAAS14E,EAAWy4E,QAAQC,QAAU,YACjE14E,EAAWy4E,QAAQC,OAAS,yBACnB14E,EAAWy4E,WAAY,IAChCj8E,KAAK+0H,cAAc94C,QAAQC,OAAS,YACpC14E,EAAWy4E,SAAYC,OAAQ,yBAIjC,IAAIt0E,GAAO,cACiC,OAAxC5H,KAAK6D,QAAQoxH,aAAavqG,WAA8D,OAAxC1qB,KAAK6D,QAAQoxH,aAAavqG,aAC5E9iB,EAAO,YAIgBrB,SAArB/C,EAAWo3F,OACb56F,KAAK+0H,cAAcn6B,OAAUyU,QAAUx+F,SAAS,EAAMjJ,KAAM,YAC5DpE,EAAWo3F,OAAUyU,QAAQ,IACQ9oG,SAA5B/C,EAAWo3F,MAAMyU,QAC1BrvG,KAAK+0H,cAAcn6B,OAAUyU,QAAUx+F,SAAS,EAAMjJ,KAAM,YAC5DpE,EAAWo3F,MAAMyU,QAAS,GAEa,iBAA5B7rG,GAAWo3F,MAAMyU,QAC1BrvG,KAAK+0H,cAAcn6B,OAAUyU,OAAQ7rG,EAAWo3F,MAAMyU,QACtD7rG,EAAWo3F,MAAMyU,QAAWx+F,QAASrN,EAAWo3F,MAAMyU,OAAQznG,KAAMA,KAG/BrB,SAAjC/C,EAAWo3F,MAAMyU,OAAOznG,MAAuD,YAAjCpE,EAAWo3F,MAAMyU,OAAOznG,OACxEA,EAAOpE,EAAWo3F,MAAMyU,OAAOznG,MAGjC5H,KAAK+0H,cAAcn6B,OACjByU,OAA4C9oG,SAApC/C,EAAWo3F,MAAMyU,OAAOx+F,SAAwB,EAAOrN,EAAWo3F,MAAMyU,OAAOx+F,QACvFjJ,KAAuCrB,SAAjC/C,EAAWo3F,MAAMyU,OAAOznG,KAAqB,UAAYpE,EAAWo3F,MAAMyU,OAAOznG,KACvF2nG,UAAiDhpG,SAAtC/C,EAAWo3F,MAAMyU,OAAOE,UAA0B,GAAM/rG,EAAWo3F,MAAMyU,OAAOE,UAC3FD,eAA2D/oG,SAA3C/C,EAAWo3F,MAAMyU,OAAOC,gBAA+B,EAAQ9rG,EAAWo3F,MAAMyU,OAAOC,gBAEzG9rG,EAAWo3F,MAAMyU,QACfx+F,QAA6CtK,SAApC/C,EAAWo3F,MAAMyU,OAAOx+F,SAAwB,EAAOrN,EAAWo3F,MAAMyU,OAAOx+F,QACxFjJ,KAAMA,EACN2nG,UAAiDhpG,SAAtC/C,EAAWo3F,MAAMyU,OAAOE,UAA0B,GAAM/rG,EAAWo3F,MAAMyU,OAAOE,UAC3FD,eAA2D/oG,SAA3C/C,EAAWo3F,MAAMyU,OAAOC,gBAA+B,EAAQ9rG,EAAWo3F,MAAMyU,OAAOC,iBAM7GtvG,KAAKm/C,KAAKE,QAAQzH,KAAK,6BAA8BhwC,GAGvD,MAAOpE,MAGTmG,IAAK,eACL5E,MAAO,WACL,GAAI64B,GAAkC,IAA9B34B,KAAKokC,IAAIrpC,KAAKggH,aACtB,OAAOpiF,GAAI34B,KAAKuK,MAAMouB,MAGxBj0B,IAAK,oBACL5E,MAAO,SAA2B6iH,GAChC,GAAI5nH,KAAK6D,QAAQoxH,aAAapkH,WAAY,EAAM,CAC9C7Q,KAAKggH,WAAahgH,KAAK60H,iBACvB,KAAK,GAAIpuH,GAAI,EAAGA,EAAImhH,EAAWthH,OAAQG,IAAK,CAC1C,GAAIm1B,GAAOgsF,EAAWnhH,GAClBmvC,EAAS,EAAWgyE,EAAWthH,OAAS,GACxCmkD,EAAQ,EAAIxlD,KAAK6wC,GAAK91C,KAAKkiH,cAChB37G,UAAXq1B,EAAKgC,IACPhC,EAAKgC,EAAIgY,EAAS3wC,KAAKukC,IAAIihB,IAEdlkD,SAAXq1B,EAAK3a,IACP2a,EAAK3a,EAAI20B,EAAS3wC,KAAKokC,IAAIohB;MAWnC9gD,IAAK,gBACL5E,MAAO,WACL,GAAI/E,KAAK6D,QAAQoxH,aAAapkH,WAAY,GAAQ7Q,KAAK6D,QAAQmxH,kBAAmB,EAAM,CAItF,IAAK,GADDlI,GAAkB,EACbrmH,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,GAC7Cm1B,GAAKmrE,sBAAuB,IAC9B+lB,GAAmB,GAKvB,GAAIA,EAAkB,GAAM9sH,KAAKm/C,KAAKw7C,YAAYr0F,OAAQ,CACxD,GAAIsvH,GAAa,GACb9yB,EAAQ,EACR+yB,EAAmB,GAEvB,IAAI71H,KAAKm/C,KAAKw7C,YAAYr0F,OAASuvH,EAAkB,CAEnD,IADA,GAAIC,GAAc91H,KAAKm/C,KAAKw7C,YAAYr0F,OACjCtG,KAAKm/C,KAAKw7C,YAAYr0F,OAASuvH,GAAkB,CAEtD/yB,GAAS,CACT,IAAIizB,GAAS/1H,KAAKm/C,KAAKw7C,YAAYr0F,MAE/Bw8F,GAAQ,IAAM,EAChB9iG,KAAKm/C,KAAKl/C,QAAQy8F,WAAWs5B,iBAE7Bh2H,KAAKm/C,KAAKl/C,QAAQy8F,WAAWiD,iBAE/B,IAAIs2B,GAAQj2H,KAAKm/C,KAAKw7C,YAAYr0F,MAClC,IAAIyvH,GAAUE,GAASnzB,EAAQ,IAAM,GAAKA,EAAQ8yB,EAIhD,MAHA51H,MAAKk2H,gBACLl2H,KAAKm/C,KAAKE,QAAQzH,KAAK,qBACvBj4B,SAAQw2G,KAAK,gJAOjBn2H,KAAKm/C,KAAKl/C,QAAQm2H,YAAYp3F,YAAau9E,aAAct3G,KAAKJ,IAAI,IAAK,EAAIixH,KAI7E91H,KAAKm/C,KAAKl/C,QAAQm2H,YAAY/W,MAAMr/G,KAAKm/C,KAAKw7C,YAAa36F,KAAKm/C,KAAK07C,aAAa,GAGlF76F,KAAKq2H,gBAIL,KAAK,GADD7uG,GAAS,GACJ/gB,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAChDzG,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,IAAIm3B,IAAM,GAAM59B,KAAKkiH,gBAAkB16F,EAC7ExnB,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,IAAIwa,IAAM,GAAMjhB,KAAKkiH,gBAAkB16F,CAI/ExnB,MAAKk2H,gBAGLl2H,KAAKm/C,KAAKE,QAAQzH,KAAK,+BAU7BjuC,IAAK,iBACL5E,MAAO,WAGL,IAAK,GAFDm7C,GAAQikE,EAAc,WAAWmS,aAAat2H,KAAKm/C,KAAKu7C,MAAO16F,KAAKm/C,KAAKw7C,aACzEvkD,EAAS+tE,EAAc,WAAWgJ,WAAWjtE,GACxCz5C,EAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAChDzG,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,IAAIm3B,GAAKwY,EAAOxY,EACtD59B,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,IAAIwa,GAAKm1B,EAAOn1B,KAI1DtX,IAAK,gBACL5E,MAAO,WAEL,IADA,GAAIwxH,IAAkB,EACfA,KAAoB,GAAM,CAC/BA,GAAkB,CAClB,KAAK,GAAI9vH,GAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAC5CzG,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,IAAI44F,aAAc,IAC1Dk3B,GAAkB,EAClBv2H,KAAKm/C,KAAKl/C,QAAQy8F,WAAW4C,YAAYt/F,KAAKm/C,KAAKw7C,YAAYl0F,OAAQ,GAGvE8vH,MAAoB,GACtBv2H,KAAKm/C,KAAKE,QAAQzH,KAAK,oBAK7BjuC,IAAK,UACL5E,MAAO,WACL,MAAO/E,MAAK60H,qBAUdlrH,IAAK,0BACL5E,MAAO,WACL,GAAI/E,KAAK6D,QAAQoxH,aAAapkH,WAAY,GAAQ7Q,KAAKm/C,KAAKw7C,YAAYr0F,OAAS,EAAG,CAElF,GAAIs1B,GAAOr1B,OACPk4F,EAASl4F,OACTiwH,GAAe,EACfC,GAAmB,EACnBC,GAAiB,CACrB12H,MAAK22H,sBACL32H,KAAK42H,mBACL52H,KAAK62H,uBACL72H,KAAK82H,wBACL92H,KAAK+2H,qBACL/2H,KAAKg3H,UAAY,GAEjBh3H,KAAKi3H,wBACLj3H,KAAKk3H,qBACLl3H,KAAKm3H,+BAEL,KAAK14B,IAAUz+F,MAAKm/C,KAAKu7C,MACnB16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,KACjC7iE,EAAO57B,KAAKm/C,KAAKu7C,MAAM+D,GACAl4F,SAAnBq1B,EAAK/3B,QAAQ+5B,GAAsCr3B,SAAnBq1B,EAAK/3B,QAAQod,IAC/Cw1G,GAAmB,GAEMlwH,SAAvBq1B,EAAK/3B,QAAQi/F,OACf0zB,GAAe,EACfx2H,KAAK22H,mBAAmBl4B,GAAU7iE,EAAK/3B,QAAQi/F,OAE/C4zB,GAAiB,EAMvB,IAAIA,KAAmB,GAAQF,KAAiB,EAC9C,KAAM,IAAIxvH,OAAM,wHAIZ0vH,MAAmB,IACwB,YAAzC12H,KAAK6D,QAAQoxH,aAAaM,WAC5Bv1H,KAAKo3H,4BAC6C,aAAzCp3H,KAAK6D,QAAQoxH,aAAaM,WACnCv1H,KAAKq3H,2BAC6C,WAAzCr3H,KAAK6D,QAAQoxH,aAAaM,YACnCv1H,KAAKs3H,iCAKT,KAAK,GAAIz7F,KAAW77B,MAAKm/C,KAAKu7C,MACxB16F,KAAKm/C,KAAKu7C,MAAM10F,eAAe61B,IACQt1B,SAArCvG,KAAK22H,mBAAmB96F,KAC1B77B,KAAK22H,mBAAmB96F,GAAW,EAKzC,IAAI07F,GAAev3H,KAAKw3H,kBAGxBx3H,MAAKy3H,eAGLz3H,KAAK03H,uBAAuBH,GAG5Bv3H,KAAK23H,qBAGL33H,KAAKq2H,qBASX1sH,IAAK,qBACL5E,MAAO,WACL,GAAI00E,GAASz5E,KAGT43H,GAAgB,EAChBC,KAGAC,EAAa,WAEf,IAAK,GADDC,GAAYC,IACPvxH,EAAI,EAAGA,EAAIsxH,EAAUzxH,OAAS,EAAGG,IAAK,CAC7C,GAAIyhB,GAAO6vG,EAAUtxH,GAAG5B,IAAMkzH,EAAUtxH,EAAI,GAAG7B,GAC3CsjB,KAASuxD,EAAO51E,QAAQoxH,aAAaG,aACvC6C,EAAUxxH,EAAI,EAAGyhB,EAAOuxD,EAAO51E,QAAQoxH,aAAaG,eAMtD6C,EAAY,SAAmB7uH,EAAOoe,GACxC,IAAK,GAAIi3E,KAAUhlB,GAAOs9C,kBACpBt9C,EAAOs9C,kBAAkB/wH,eAAey4F,IACtChlB,EAAOs9C,kBAAkBt4B,KAAYr1F,GACvCqwE,EAAOy+C,yBAAyBz+C,EAAOt6B,KAAKu7C,MAAM+D,GAASj3E,EAAQjhB,QAAW,IAOlF4xH,EAAc,SAAqB/uH,GACrC,GAAIxE,GAAM,IACNC,EAAM,IACV,KAAK,GAAI45F,KAAUhlB,GAAOs9C,kBACxB,GAAIt9C,EAAOs9C,kBAAkB/wH,eAAey4F,IACtChlB,EAAOs9C,kBAAkBt4B,KAAYr1F,EAAO,CAC9C,GAAImtB,GAAMkjD,EAAO2+C,yBAAyB3+C,EAAOt6B,KAAKu7C,MAAM+D,GAC5D75F,GAAMK,KAAKL,IAAI2xB,EAAK3xB,GACpBC,EAAMI,KAAKJ,IAAI0xB,EAAK1xB,GAI1B,OAASD,IAAKA,EAAKC,IAAKA,IAItBmzH,EAAe,WAEjB,IAAK,GADDK,MACK5xH,EAAI,EAAGA,EAAIgzE,EAAOu9C,UAAWvwH,IACpC4xH,EAAW7wH,KAAK2wH,EAAY1xH,GAE9B,OAAO4xH,IAILC,EAAiB,QAASA,GAAezmG,EAAQxkB,GAEnD,GADAA,EAAIwkB,EAAOxxB,KAAM,EACbo5E,EAAOo9C,oBAAoBhlG,EAAOxxB,IAAK,CACzC,GAAIk6B,GAAWk/C,EAAOo9C,oBAAoBhlG,EAAOxxB,IAAIk6B,QACrD,IAAIA,EAASj0B,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAI8zB,EAASj0B,OAAQG,IACnC6xH,EAAe7+C,EAAOt6B,KAAKu7C,MAAMngE,EAAS9zB,IAAK4G,KAQnDkrH,EAAoB,SAA2BC,GACjD,GAAIC,GAAWpyH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,IAAMA,UAAU,GAEjFqyH,EAAW,IACXC,EAAW,IACX/zH,EAAM,IACNC,EAAM,IACV,KAAK,GAAI+zH,KAAcJ,GACrB,GAAIA,EAAUxyH,eAAe4yH,GAAa,CACxC,GAAIh9F,GAAO69C,EAAOt6B,KAAKu7C,MAAMk+B,GACzB91B,EAAQrpB,EAAOk9C,mBAAmB/6F,EAAKv7B,IACvCouC,EAAWgrC,EAAO2+C,yBAAyBx8F,GAI3Ci9F,EAAuBp/C,EAAOq/C,oBAAoBl9F,EAAM48F,GAExDO,EAAwBlxB,EAAegxB,EAAsB,GAE7DG,EAAeD,EAAsB,GACrCE,EAAeF,EAAsB,EAEzCL,GAAWzzH,KAAKL,IAAIo0H,EAAcN,GAClCC,EAAW1zH,KAAKL,IAAIq0H,EAAcN,GAGrBF,GAAT31B,IACFl+F,EAAMK,KAAKL,IAAI6pC,EAAU7pC,GACzBC,EAAMI,KAAKJ,IAAI4pC,EAAU5pC,IAK/B,OAAQD,EAAKC,EAAK6zH,EAAUC,IAI1BO,EAAc,QAASA,GAAYz6B,GACrC,GAAIqE,GAAQrpB,EAAOk9C,mBAAmBl4B,EACtC,IAAIhlB,EAAOo9C,oBAAoBp4B,GAAS,CACtC,GAAIlkE,GAAWk/C,EAAOo9C,oBAAoBp4B,GAAQlkE,QAClD,IAAIA,EAASj0B,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAI8zB,EAASj0B,OAAQG,IACnCq8F,EAAQ79F,KAAKJ,IAAIi+F,EAAOo2B,EAAY3+F,EAAS9zB,KAInD,MAAOq8F,IAILq2B,EAAoB,SAA2BjnB,EAAOC,GACxD,GAAIinB,GAAYF,EAAYhnB,EAAM7xG,IAC9Bg5H,EAAYH,EAAY/mB,EAAM9xG,GAClC,OAAO4E,MAAKL,IAAIw0H,EAAWC,IAIzBC,EAAgB,SAAuBpnB,EAAOC,GAChD,GAAIonB,GAAW9/C,EAAOq9C,qBAAqB5kB,EAAM7xG,IAC7Cm5H,EAAW//C,EAAOq9C,qBAAqB3kB,EAAM9xG,GACjD,IAAiBkG,SAAbgzH,GAAuChzH,SAAbizH,EAC5B,OAAO,CAETD,GAAWA,EAASE,QACpBD,EAAWA,EAASC,OACpB,KAAK,GAAIhzH,GAAI,EAAGA,EAAI8yH,EAASjzH,OAAQG,IACnC,IAAK,GAAIgK,GAAI,EAAGA,EAAI+oH,EAASlzH,OAAQmK,IACnC,GAAI8oH,EAAS9yH,IAAM+yH,EAAS/oH,GAC1B,OAAO,CAIb,QAAO,GAILipH,EAAsB,SAA6BnwH,EAAUowH,EAAQC,GACvE,IAAK,GAAInzH,GAAI,EAAGA,EAAIkzH,EAAOrzH,OAAQG,IAAK,CACtC,GAAIq8F,GAAQ62B,EAAOlzH,GACfozH,EAAapgD,EAAOw9C,qBAAqBn0B,EAC7C,IAAI+2B,EAAWvzH,OAAS,EACtB,IAAK,GAAImK,GAAI,EAAGA,EAAIopH,EAAWvzH,OAAS,EAAGmK,IACrC6oH,EAAcO,EAAWppH,GAAIopH,EAAWppH,EAAI,OAAQ,GAClDgpE,EAAOs9C,kBAAkB8C,EAAWppH,GAAGpQ,MAAQo5E,EAAOs9C,kBAAkB8C,EAAWppH,EAAI,GAAGpQ,KAC5FkJ,EAASswH,EAAWppH,GAAIopH,EAAWppH,EAAI,GAAImpH,KASnDE,EAAsB,SAA6B5nB,EAAOC,GAC5D,GAAI4nB,GAAe1zH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAGvFmwB,EAAOijD,EAAO2+C,yBAAyBlmB,GACvCz7E,EAAOgjD,EAAO2+C,yBAAyBjmB,GACvC6nB,EAAU/0H,KAAK8R,IAAI0f,EAAOD,EAE9B,IAAIwjG,EAAUvgD,EAAO51E,QAAQoxH,aAAaE,YAAa,CACrD,GAAI8E,KAAkBA,GAAa/nB,EAAM7xG,KAAM,CAC/C,IAAI65H,KAAkBA,GAAa/nB,EAAM9xG,KAAM,EAE/Ci4H,EAAepmB,EAAO+nB,GACtB3B,EAAenmB,EAAO+nB,EAGtB,IAAIzB,GAAWU,EAAkBjnB,EAAOC,GAEpCgoB,EAAqB5B,EAAkB0B,EAAcxB,GAErD2B,EAAsBvyB,EAAesyB,EAAoB,GAGzDE,GADOD,EAAoB,GACpBA,EAAoB,IAI3BE,GAHYF,EAAoB,GACpBA,EAAoB,GAEV7B,EAAkB2B,EAAczB,IAEtD8B,EAAuB1yB,EAAeyyB,EAAqB,GAE3DE,EAAOD,EAAqB,GAE5BE,GADOF,EAAqB,GAChBA,EAAqB,IAIjCG,GAHYH,EAAqB,GAGpBt1H,KAAK8R,IAAIsjH,EAAOG,GACjC,IAAIE,EAAajhD,EAAO51E,QAAQoxH,aAAaE,YAAa,CACxD,GAAI3tG,GAAS6yG,EAAOG,EAAO/gD,EAAO51E,QAAQoxH,aAAaE,WACnD3tG,IAAUizG,EAAYhhD,EAAO51E,QAAQoxH,aAAaE,cACpD3tG,GAAUizG,EAAYhhD,EAAO51E,QAAQoxH,aAAaE,aAGvC,EAAT3tG,IAEFiyD,EAAOkhD,YAAYxoB,EAAM9xG,GAAImnB,GAC7BowG,GAAgB,EAEZmC,KAAiB,GAAMtgD,EAAOmhD,cAAczoB,OAOpD0oB,EAAqB,SAA4B3d,EAAYthF,GAW/D,IAAK,GARD6iE,GAAS7iE,EAAKv7B,GACdy6H,EAAWl/F,EAAKg/D,MAChBmgC,EAAYthD,EAAOk9C,mBAAmB/6F,EAAKv7B,IAG3C26H,EAAKvhD,EAAO51E,QAAQoxH,aAAaC,gBAAkBz7C,EAAO51E,QAAQoxH,aAAaC,gBAC/E+F,KACAC,KACKz0H,EAAI,EAAGA,EAAIq0H,EAASx0H,OAAQG,IAAK,CACxC,GAAI06F,GAAO25B,EAASr0H,EACpB,IAAI06F,EAAKuD,MAAQvD,EAAKwD,OAAQ,CAC5B,GAAIw2B,GAAYh6B,EAAKuD,MAAQjG,EAAS0C,EAAK/rF,KAAO+rF,EAAKhsF,EACvD8lH,GAAeH,EAASr0H,GAAGpG,IAAM86H,EAC7B1hD,EAAOk9C,mBAAmBwE,EAAU96H,IAAM06H,GAC5CG,EAAW1zH,KAAK25F,IAMtB,GAAIi6B,GAAQ,SAAer9F,EAAO68D,GAEhC,IAAK,GADD3/C,GAAM,EACDx0C,EAAI,EAAGA,EAAIm0F,EAAMt0F,OAAQG,IAChC,GAAoCF,SAAhC00H,EAAergC,EAAMn0F,GAAGpG,IAAmB,CAC7C,GAAI6F,GAAIuzE,EAAO2+C,yBAAyB6C,EAAergC,EAAMn0F,GAAGpG,KAAO09B,CACvEkd,IAAO/0C,EAAIjB,KAAKu0C,KAAKtzC,EAAIA,EAAI80H,GAGjC,MAAO//E,IAILogF,EAAS,SAAgBt9F,EAAO68D,GAElC,IAAK,GADD3/C,GAAM,EACDx0C,EAAI,EAAGA,EAAIm0F,EAAMt0F,OAAQG,IAChC,GAAoCF,SAAhC00H,EAAergC,EAAMn0F,GAAGpG,IAAmB,CAC7C,GAAI6F,GAAIuzE,EAAO2+C,yBAAyB6C,EAAergC,EAAMn0F,GAAGpG,KAAO09B,CACvEkd,IAAO+/E,EAAK/1H,KAAK8U,IAAI7T,EAAIA,EAAI80H,EAAI,MAGrC,MAAO//E,IAGLqgF,EAAW,SAAkBpe,EAAYtiB,GAI3C,IAAK,GAHD2gC,GAAQ9hD,EAAO2+C,yBAAyBx8F,GAExC4/F,KACK/0H,EAAI,EAAOy2G,EAAJz2G,EAAgBA,IAAK,CACnC,GAAIu6G,GAAKoa,EAAMG,EAAO3gC,GAClB6gC,EAAMJ,EAAOE,EAAO3gC,GAGpB7mE,EAAQ,GACR04E,EAAQxnG,KAAKJ,KAAKkvB,EAAO9uB,KAAKL,IAAImvB,EAAO9uB,KAAKsjB,MAAMy4F,EAAKya,IAG7D,IAFAF,GAAgB9uB,EAEQlmG,SAApBi1H,EAASD,GACX,KAEFC,GAASD,GAAS90H,EAEpB,MAAO80H,IAGLG,EAAa,SAAoBH,GAEnC,GAAIlO,GAAe5zC,EAAO2+C,yBAAyBx8F,EAGnD,IAA0Br1B,SAAtBsxH,EAASj8F,EAAKv7B,IAAmB,CACnC,GAAIs7H,KACJA,GAAY//F,EAAKv7B,KAAM,EACvBi4H,EAAe18F,EAAM+/F,GACrB9D,EAASj8F,EAAKv7B,IAAMs7H,EAGtB,GAAIC,GAAsBrD,EAAkBV,EAASj8F,EAAKv7B,KAEtDw7H,EAAuBh0B,EAAe+zB,EAAqB,GAI3DE,GAFYD,EAAqB,GACrBA,EAAqB,GAChBA,EAAqB,IACtCE,EAAiBF,EAAqB,GAEtC3zG,EAAOqzG,EAAQlO,EAGf2O,EAAe,CACf9zG,GAAO,EACT8zG,EAAe/2H,KAAKL,IAAIsjB,EAAM6zG,EAAiBtiD,EAAO51E,QAAQoxH,aAAaE,aAC3D,EAAPjtG,IACT8zG,GAAgB/2H,KAAKL,KAAKsjB,EAAM4zG,EAAiBriD,EAAO51E,QAAQoxH,aAAaE,cAG3D,GAAhB6G,IAEFviD,EAAOkhD,YAAY/+F,EAAKv7B,GAAI27H,GAE5BpE,GAAgB,IAIhBr3B,EAAW,SAAkBg7B,GAC/B,GAAIlO,GAAe5zC,EAAO2+C,yBAAyBx8F,GAI/CqgG,EAAuBxiD,EAAOq/C,oBAAoBl9F,GAElDsgG,EAAwBr0B,EAAeo0B,EAAsB,GAE7DvD,EAAWwD,EAAsB,GACjCvD,EAAWuD,EAAsB,GAEjCh0G,EAAOqzG,EAAQlO,EAEf8O,EAAc9O,CACdnlG,GAAO,EACTi0G,EAAcl3H,KAAKL,IAAIyoH,GAAgBsL,EAAWl/C,EAAO51E,QAAQoxH,aAAaE,aAAcoG,GAC5E,EAAPrzG,IACTi0G,EAAcl3H,KAAKJ,IAAIwoH,GAAgBqL,EAAWj/C,EAAO51E,QAAQoxH,aAAaE,aAAcoG,IAG1FY,IAAgB9O,IAElB5zC,EAAOy+C,yBAAyBt8F,EAAMugG,EAAa51H,QAAW,GAE9DqxH,GAAgB,IAIhB2D,EAAQD,EAASpe,EAAYge,EACjCQ,GAAWH,GACXA,EAAQD,EAASpe,EAAY4d,GAC7Bv6B,EAASg7B,IAKPa,EAA6B,SAAoClf,GACnE,GAAIyc,GAASvyH,OAAO6H,KAAKwqE,EAAOw9C,qBAChC0C,GAASA,EAAO9R,SAChB,KAAK,GAAIphH,GAAI,EAAOy2G,EAAJz2G,EAAgBA,IAAK,CACnCmxH,GAAgB,CAChB,KAAK,GAAInnH,GAAI,EAAGA,EAAIkpH,EAAOrzH,OAAQmK,IAGjC,IAAK,GAFDqyF,GAAQ62B,EAAOlpH,GACfopH,EAAapgD,EAAOw9C,qBAAqBn0B,GACpCtyF,EAAI,EAAGA,EAAIqpH,EAAWvzH,OAAQkK,IACrCqqH,EAAmB,IAAMhB,EAAWrpH,GAGxC,IAAIonH,KAAkB,EAEpB,QAMFyE,EAA8B,SAAqCnf,GACrE,GAAIyc,GAASvyH,OAAO6H,KAAKwqE,EAAOw9C,qBAChC0C,GAASA,EAAO9R,SAChB,KAAK,GAAIphH,GAAI,EAAOy2G,EAAJz2G,IACdmxH,GAAgB,EAChB8B,EAAoBI,EAAqBH,GAAQ,GAC7C/B,KAAkB,GAHQnxH,OAW9B61H,EAAmB,WACrB,IAAK,GAAI79B,KAAUhlB,GAAOt6B,KAAKu7C,MACzBjhB,EAAOt6B,KAAKu7C,MAAM10F,eAAey4F,IAAShlB,EAAOmhD,cAAcnhD,EAAOt6B,KAAKu7C,MAAM+D,IAKrFz+F,MAAK6D,QAAQoxH,aAAaI,iBAAkB,IAC9CgH,EAA4B,GAC5BC,KAIEt8H,KAAK6D,QAAQoxH,aAAaK,oBAAqB,GACjD8G,EAA2B,IAG7BtE,OAYFnuH,IAAK,sBACL5E,MAAO,SAA6B62B,EAAMvuB,GACxC,GAAIkvH,IAAS,CACDh2H,UAAR8G,IACFkvH,GAAS,EAEX,IAAIz5B,GAAQ9iG,KAAK22H,mBAAmB/6F,EAAKv7B,GACzC,IAAckG,SAAVu8F,EAAqB,CACvB,GAAI15F,GAAQpJ,KAAKk3H,kBAAkBt7F,EAAKv7B,IACpCouC,EAAWzuC,KAAKo4H,yBAAyBx8F,GACzC88F,EAAW,IACXC,EAAW,GACf,IAAc,IAAVvvH,EAAa,CACf,GAAIozH,GAAWx8H,KAAKi3H,qBAAqBn0B,GAAO15F,EAAQ,EACxD,IAAImzH,KAAW,GAA6Bh2H,SAArB8G,EAAImvH,EAASn8H,KAAqBk8H,KAAW,EAAO,CACzE,GAAIE,GAAUz8H,KAAKo4H,yBAAyBoE,EAC5C9D,GAAWjqF,EAAWguF,GAI1B,GAAIrzH,GAASpJ,KAAKi3H,qBAAqBn0B,GAAOx8F,OAAS,EAAG,CACxD,GAAIo2H,GAAW18H,KAAKi3H,qBAAqBn0B,GAAO15F,EAAQ,EACxD,IAAImzH,KAAW,GAA6Bh2H,SAArB8G,EAAIqvH,EAASr8H,KAAqBk8H,KAAW,EAAO,CACzE,GAAII,GAAU38H,KAAKo4H,yBAAyBsE,EAC5C/D,GAAW1zH,KAAKL,IAAI+zH,EAAUgE,EAAUluF,IAI5C,OAAQiqF,EAAUC,GAElB,OAAQ,EAAG,MAUfhvH,IAAK,gBACL5E,MAAO,SAAuB62B,GAC5B,GAAI57B,KAAK82H,qBAAqBl7F,EAAKv7B,IAEjC,IAAK,GADDo5H,GAAUz5H,KAAK82H,qBAAqBl7F,EAAKv7B,IAAIo5H,QACxChzH,EAAI,EAAGA,EAAIgzH,EAAQnzH,OAAQG,IAAK,CACvC,GAAIm2H,GAAWnD,EAAQhzH,GACnB4E,EAAarL,KAAKm/C,KAAKu7C,MAAMkiC,EACjC,IAAI58H,KAAK62H,oBAAoB+F,GAAW,CAEtC,GAAIC,GAAS,IACTC,EAAS,KACTviG,EAAWv6B,KAAK62H,oBAAoB+F,GAAUriG,QAClD,IAAIA,EAASj0B,OAAS,EACpB,IAAK,GAAIiP,GAAK,EAAGA,EAAKglB,EAASj0B,OAAQiP,IAAM,CAC3C,GAAI0wG,GAAYjmH,KAAKm/C,KAAKu7C,MAAMngE,EAAShlB,GACzCsnH,GAAS53H,KAAKL,IAAIi4H,EAAQ78H,KAAKo4H,yBAAyBnS,IACxD6W,EAAS73H,KAAKJ,IAAIi4H,EAAQ98H,KAAKo4H,yBAAyBnS,IAI5D,GAAIx3E,GAAWzuC,KAAKo4H,yBAAyB/sH,GAEzC0xH,EAAuB/8H,KAAK84H,oBAAoBztH,GAEhD2xH,EAAwBn1B,EAAek1B,EAAsB,GAE7DrE,EAAWsE,EAAsB,GACjCrE,EAAWqE,EAAsB,GAEjCb,EAAc,IAAOU,EAASC,GAC9B50G,EAAOumB,EAAW0tF,GACX,EAAPj0G,GAAYjjB,KAAK8R,IAAImR,GAAQywG,EAAW34H,KAAK6D,QAAQoxH,aAAaE,aAAejtG,EAAO,GAAKjjB,KAAK8R,IAAImR,GAAQwwG,EAAW14H,KAAK6D,QAAQoxH,aAAaE,cACrJn1H,KAAKk4H,yBAAyB7sH,EAAY8wH,EAAa51H,QAAW,QAc5EoD,IAAK,yBACL5E,MAAO,SAAgCwyH,GACrCv3H,KAAKi9H,kBAEL,KAAK,GAAIn6B,KAASy0B,GAChB,GAAIA,EAAavxH,eAAe88F,GAAQ,CAEtC,GAAIo6B,GAAY91H,OAAO6H,KAAKsoH,EAAaz0B,GACzCo6B,GAAYl9H,KAAKm9H,mBAAmBD,GACpCl9H,KAAKo9H,eAAeF,EAEpB,KAAK,GAAIz2H,GAAI,EAAGA,EAAIy2H,EAAU52H,OAAQG,IAAK,CACzC,GAAIm1B,GAAOshG,EAAUz2H,EACiBF,UAAlCvG,KAAKi9H,gBAAgBrhG,EAAKv7B,MAC5BL,KAAKk4H,yBAAyBt8F,EAAM57B,KAAK6D,QAAQoxH,aAAaE,YAAc1uH,EAAGq8F,GAC/E9iG,KAAKi9H,gBAAgBrhG,EAAKv7B,KAAM,EAChCL,KAAKq9H,kBAAkBzhG,EAAKv7B,GAAIyiG,SAa1Cn5F,IAAK,qBACL5E,MAAO,SAA4B2vH,GAEjC,IAAK,GADDjrH,MACKhD,EAAI,EAAGA,EAAIiuH,EAAQpuH,OAAQG,IAClCgD,EAAMjC,KAAKxH,KAAKm/C,KAAKu7C,MAAMg6B,EAAQjuH,IAErC,OAAOgD,MAUTE,IAAK,mBACL5E,MAAO,WACL,GAAIwyH,MACA94B,EAASl4F,OACTq1B,EAAOr1B,MAIX,KAAKk4F,IAAUz+F,MAAKm/C,KAAKu7C,MACvB,GAAI16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,GAAS,CAC1C7iE,EAAO57B,KAAKm/C,KAAKu7C,MAAM+D,EACvB,IAAIqE,GAA4Cv8F,SAApCvG,KAAK22H,mBAAmBl4B,GAAwB,EAAIz+F,KAAK22H,mBAAmBl4B,EAC5C,QAAxCz+F,KAAK6D,QAAQoxH,aAAavqG,WAA8D,OAAxC1qB,KAAK6D,QAAQoxH,aAAavqG,WAC5EkR,EAAK3a,EAAIjhB,KAAK6D,QAAQoxH,aAAaC,gBAAkBpyB,EACrDlnE,EAAK/3B,QAAQ4+F,MAAMxhF,GAAI,IAEvB2a,EAAKgC,EAAI59B,KAAK6D,QAAQoxH,aAAaC,gBAAkBpyB,EACrDlnE,EAAK/3B,QAAQ4+F,MAAM7kE,GAAI,GAEGr3B,SAAxBgxH,EAAaz0B,KACfy0B,EAAaz0B,OAEfy0B,EAAaz0B,GAAOrE,GAAU7iE,EAGlC,MAAO27F,MAUT5tH,IAAK,cACL5E,MAAO,WACL,GAAIu4H,GAAU,CACd,KAAK,GAAI7+B,KAAUz+F,MAAKm/C,KAAKu7C,MAC3B,GAAI16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,GAAS,CAC1C,GAAI7iE,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,EACal4F,UAApCvG,KAAK22H,mBAAmBl4B,KAC1B6+B,EAAU1hG,EAAKg/D,MAAMt0F,OAASg3H,EAAUA,EAAU1hG,EAAKg/D,MAAMt0F,QAInE,MAAOg3H,MAUT3zH,IAAK,4BACL5E,MAAO,WAgBL,IAfA,GAAIw1E,GAASv6E,KAETs9H,EAAU,EAEVC,EAAkB,SAAyBC,EAAOC,GACRl3H,SAAxCg0E,EAAOo8C,mBAAmB8G,EAAMp9H,MAEUkG,SAAxCg0E,EAAOo8C,mBAAmB6G,EAAMn9H,MAClCk6E,EAAOo8C,mBAAmB6G,EAAMn9H,IAAM,GAGxCk6E,EAAOo8C,mBAAmB8G,EAAMp9H,IAAMk6E,EAAOo8C,mBAAmB6G,EAAMn9H,IAAM,IAIzEi9H,EAAU,IAEfA,EAAUt9H,KAAK0kH,cACC,IAAZ4Y,IAEJ,IAAK,GAAI7+B,KAAUz+F,MAAKm/C,KAAKu7C,MAC3B,GAAI16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,GAAS,CAC1C,GAAI7iE,GAAO57B,KAAKm/C,KAAKu7C,MAAM+D,EACvB7iE,GAAKg/D,MAAMt0F,SAAWg3H,GACxBt9H,KAAK09H,cAAcH,EAAiB9+B,OAY9C90F,IAAK,iCACL5E,MAAO,WACL,GAAI41E,GAAS36E,KAET29H,EAAW,IAGXC,EAAiB,SAAwBJ,EAAOC,EAAOt8B,KAEvD08B,EAAmB,SAA0BL,EAAOC,EAAOt8B,GAC7D,GAAI28B,GAASnjD,EAAOg8C,mBAAmB6G,EAAMn9H,GAE9BkG,UAAXu3H,IACFnjD,EAAOg8C,mBAAmB6G,EAAMn9H,IAAMs9H,EAGxC,IAAIz1G,GAAO01G,EAAezZ,EAAc,WAAWe,aAAasY,EAAO,QAASrZ,EAAc,WAAWe,aAAauY,EAAO,QAAStZ,EAAc,WAAWe,aAAa/jB,EAAM,QAElLxmB,GAAOg8C,mBAAmB8G,EAAMp9H,IAAMs6E,EAAOg8C,mBAAmB6G,EAAMn9H,IAAM6nB,EAG9EloB,MAAK09H,cAAcG,GACnB79H,KAAK+9H,wBAUPp0H,IAAK,2BACL5E,MAAO,WACL,GAAIg2E,GAAS/6E,KAET29H,EAAW,IACXE,EAAmB,SAA0BL,EAAOC,EAAOt8B,GAC7D,GAAI28B,GAAS/iD,EAAO47C,mBAAmB6G,EAAMn9H,GAE9BkG,UAAXu3H,IACF/iD,EAAO47C,mBAAmB6G,EAAMn9H,IAAMs9H,GAEpCx8B,EAAKuD,MAAQ+4B,EAAMp9H,GACrB06E,EAAO47C,mBAAmB8G,EAAMp9H,IAAM06E,EAAO47C,mBAAmB6G,EAAMn9H,IAAM,EAE5E06E,EAAO47C,mBAAmB8G,EAAMp9H,IAAM06E,EAAO47C,mBAAmB6G,EAAMn9H,IAAM,EAGhFL,MAAK09H,cAAcG,GACnB79H,KAAK+9H,wBAQPp0H,IAAK,qBACL5E,MAAO,WACL,GAAI44H,GAAW,GAEf,KAAK,GAAIl/B,KAAUz+F,MAAKm/C,KAAKu7C,MACvB16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,IACOl4F,SAApCvG,KAAK22H,mBAAmBl4B,KAC1Bk/B,EAAW14H,KAAKL,IAAI5E,KAAK22H,mBAAmBl4B,GAASk/B,GAM3D,KAAK,GAAIl/B,KAAUz+F,MAAKm/C,KAAKu7C,MACvB16F,KAAKm/C,KAAKu7C,MAAM10F,eAAey4F,IACOl4F,SAApCvG,KAAK22H,mBAAmBl4B,KAC1Bz+F,KAAK22H,mBAAmBl4B,IAAWk/B,MAW3Ch0H,IAAK,eACL5E,MAAO,WACL,GAAIm2E,GAASl7E,KAETg+H,EAAkB,SAAyB3yH,EAAY46G,GACzD,GAAI/qC,EAAOy7C,mBAAmB1Q,EAAU5lH,IAAM66E,EAAOy7C,mBAAmBtrH,EAAWhL,IAAK,CACtF,GAAIwlH,GAAex6G,EAAWhL,GAC1BolH,EAAcQ,EAAU5lH,EACqBkG,UAA7C20E,EAAO27C,oBAAoBhR,KAC7B3qC,EAAO27C,oBAAoBhR,IAAkBtrF,YAAcs9D,OAAQ,IAErE3c,EAAO27C,oBAAoBhR,GAActrF,SAAS/yB,KAAKi+G,GACNl/G,SAA7C20E,EAAO47C,qBAAqBrR,KAC9BvqC,EAAO47C,qBAAqBrR,IAAiBgU,WAAa5hC,OAAQ,IAEpE3c,EAAO47C,qBAAqBrR,GAAagU,QAAQjyH,KAAKq+G,IAI1D7lH,MAAK09H,cAAcM,MAUrBr0H,IAAK,gBACL5E,MAAO,SAAuBwE,EAAU00H,GACrB13H,SAAbgD,IAAwBA,EAAW,aAEvC,IAAI2yC,MACAgiF,EAAU,QAASA,GAAQtiG,GAC7B,GAA0Br1B,SAAtB21C,EAAStgB,EAAKv7B,IAAmB,CACnC67C,EAAStgB,EAAKv7B,KAAM,CAEpB,KAAK,GADD4lH,GAAY1/G,OACPE,EAAI,EAAGA,EAAIm1B,EAAKg/D,MAAMt0F,OAAQG,IACjCm1B,EAAKg/D,MAAMn0F,GAAGwqG,aAAc,IAE5BgV,EADErqF,EAAKg/D,MAAMn0F,GAAGi+F,OAAS9oE,EAAKv7B,GAClBu7B,EAAKg/D,MAAMn0F,GAAG2O,KAEdwmB,EAAKg/D,MAAMn0F,GAAG0O,GAGxBymB,EAAKv7B,KAAO4lH,EAAU5lH,KACxBkJ,EAASqyB,EAAMqqF,EAAWrqF,EAAKg/D,MAAMn0F,IACrCy3H,EAAQjY,MAQlB,IAAuB1/G,SAAnB03H,EACF,IAAK,GAAIx3H,GAAI,EAAGA,EAAIzG,KAAKm/C,KAAKw7C,YAAYr0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKm/C,KAAKu7C,MAAM16F,KAAKm/C,KAAKw7C,YAAYl0F,GACjDy3H,GAAQtiG,OAEL,CACL,GAAIA,GAAO57B,KAAKm/C,KAAKu7C,MAAMujC,EAC3B,IAAa13H,SAATq1B,EAEF,WADAjc,SAAQ08D,MAAM,kBAAmB4hD,EAGnCC,GAAQtiG,OAaZjyB,IAAK,oBACL5E,MAAO,SAA2B63H,EAAUuB,GAE1C,GAA2C53H,SAAvCvG,KAAK62H,oBAAoB+F,GAA7B,CAMA,IAAK,GADDjoD,MACKluE,EAAI,EAAGA,EAAIzG,KAAK62H,oBAAoB+F,GAAUriG,SAASj0B,OAAQG,IACtEkuE,EAAWntE,KAAKxH,KAAKm/C,KAAKu7C,MAAM16F,KAAK62H,oBAAoB+F,GAAUriG,SAAS9zB,IAI9EzG,MAAKo9H,eAAezoD,EAGpB,KAAK,GAAIluE,GAAI,EAAGA,EAAIkuE,EAAWruE,OAAQG,IAAK,CAC1C,GAAIw/G,GAAYtxC,EAAWluE,GACvB23H,EAAiBp+H,KAAK22H,mBAAmB1Q,EAAU5lH,GAEvD,MAAI+9H,EAAiBD,GAAsD53H,SAAvCvG,KAAKi9H,gBAAgBhX,EAAU5lH,KA6BjE,MA3BA,IAAIk2B,GAAMhwB,MAWV,IAPEgwB,EADQ,IAAN9vB,EACIzG,KAAKo4H,yBAAyBp4H,KAAKm/C,KAAKu7C,MAAMkiC,IAE9C58H,KAAKo4H,yBAAyBzjD,EAAWluE,EAAI,IAAMzG,KAAK6D,QAAQoxH,aAAaE,YAErFn1H,KAAKk4H,yBAAyBjS,EAAW1vF,EAAK6nG,GAGD73H,SAAzCvG,KAAK42H,gBAAgBwH,GAA+B,CACtD,GAAIC,GAAcr+H,KAAKo4H,yBAAyBp4H,KAAKm/C,KAAKu7C,MAAM16F,KAAK42H,gBAAgBwH,IACrF,IAAI7nG,EAAM8nG,EAAcr+H,KAAK6D,QAAQoxH,aAAaE,YAAa,CAC7D,GAAIjtG,GAAOm2G,EAAcr+H,KAAK6D,QAAQoxH,aAAaE,YAAc5+F,EAC7D+nG,EAAet+H,KAAKu+H,kBAAkBv+H,KAAK42H,gBAAgBwH,GAAiBnY,EAAU5lH,GAC1FL,MAAK26H,YAAY2D,EAAaE,UAAWt2G,IAK7CloB,KAAK42H,gBAAgBwH,GAAkBnY,EAAU5lH,GAEjDL,KAAKi9H,gBAAgBhX,EAAU5lH,KAAM,EAErCL,KAAKq9H,kBAAkBpX,EAAU5lH,GAAI+9H,GASzC,IAAK,GAFDvB,GAAS,IACTC,EAAS,KACJr2H,EAAI,EAAGA,EAAIkuE,EAAWruE,OAAQG,IAAK,CAC1C,GAAIg/G,GAAc9wC,EAAWluE,GAAGpG,EAChCw8H,GAAS53H,KAAKL,IAAIi4H,EAAQ78H,KAAKo4H,yBAAyBp4H,KAAKm/C,KAAKu7C,MAAM+qB,KACxEqX,EAAS73H,KAAKJ,IAAIi4H,EAAQ98H,KAAKo4H,yBAAyBp4H,KAAKm/C,KAAKu7C,MAAM+qB,KAE1EzlH,KAAKk4H,yBAAyBl4H,KAAKm/C,KAAKu7C,MAAMkiC,GAAW,IAAOC,EAASC,GAASqB,OAUpFx0H,IAAK,cACL5E,MAAO,SAAqB63H,EAAU10G,GAMpC,GAL4C,OAAxCloB,KAAK6D,QAAQoxH,aAAavqG,WAA8D,OAAxC1qB,KAAK6D,QAAQoxH,aAAavqG,UAC5E1qB,KAAKm/C,KAAKu7C,MAAMkiC,GAAUh/F,GAAK1V,EAE/BloB,KAAKm/C,KAAKu7C,MAAMkiC,GAAU37G,GAAKiH,EAEU3hB,SAAvCvG,KAAK62H,oBAAoB+F,GAC3B,IAAK,GAAIn2H,GAAI,EAAGA,EAAIzG,KAAK62H,oBAAoB+F,GAAUriG,SAASj0B,OAAQG,IACtEzG,KAAK26H,YAAY36H,KAAK62H,oBAAoB+F,GAAUriG,SAAS9zB,GAAIyhB,MAavEve,IAAK,oBACL5E,MAAO,SAA2B05H,EAAQC,GACxC,GAAIC,GAAS3+H,KAETy5H,KACAmF,EAAiB,QAASA,GAAenF,EAASvzE,GACpD,GAA2C3/C,SAAvCo4H,EAAO7H,qBAAqB5wE,GAC9B,IAAK,GAAIz/C,GAAI,EAAGA,EAAIk4H,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQnzH,OAAQG,IAAK,CAC1E,GAAIo4H,GAAUF,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQhzH,EACzDgzH,GAAQoF,IAAW,EACnBD,EAAenF,EAASoF,KAI1BC,EAAa,QAASA,GAAWrF,EAASvzE,GAC5C,GAA2C3/C,SAAvCo4H,EAAO7H,qBAAqB5wE,GAC9B,IAAK,GAAIz/C,GAAI,EAAGA,EAAIk4H,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQnzH,OAAQG,IAAK,CAC1E,GAAIs4H,GAAWJ,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQhzH,EAC1D,IAA0BF,SAAtBkzH,EAAQsF,GACV,OAASC,YAAaD,EAAUP,UAAWt4E,EAE7C,IAAIq8D,GAASuc,EAAWrF,EAASsF,EACjC,IAA2B,OAAvBxc,EAAOyc,YACT,MAAOzc,GAIb,OAASyc,YAAa,KAAMR,UAAWt4E,GAIzC,OADA04E,GAAenF,EAASgF,GACjBK,EAAWrF,EAASiF,MAW7B/0H,IAAK,2BACL5E,MAAO,SAAkC62B,EAAM6S,EAAUq0D,GACvD,GAAIm8B,GAAc54H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE1F,IAAI44H,KAAgB,IACuB14H,SAArCvG,KAAKi3H,qBAAqBn0B,KAC5B9iG,KAAKi3H,qBAAqBn0B,MAC1B9iG,KAAKm3H,6BAA6Br0B,OAGsBv8F,SAAtDvG,KAAKm3H,6BAA6Br0B,GAAOlnE,EAAKv7B,MAChDL,KAAKi3H,qBAAqBn0B,GAAOt7F,KAAKo0B,GACtC57B,KAAKk3H,kBAAkBt7F,EAAKv7B,IAAML,KAAKi3H,qBAAqBn0B,GAAOx8F,OAAS,GAE9EtG,KAAKm3H,6BAA6Br0B,GAAOlnE,EAAKv7B,KAAM,EAEZkG,SAApCvG,KAAK+2H,kBAAkBn7F,EAAKv7B,KAC9B,GAA2CkG,SAAvCvG,KAAK82H,qBAAqBl7F,EAAKv7B,IAAmB,CAGpD,IAAK,GAFD6+H,GAAO,EAEFz4H,EAAI,EAAGA,EAAIzG,KAAK82H,qBAAqBl7F,EAAKv7B,IAAIo5H,QAAQnzH,OAAQG,IAAK,CAC1E,GAAIm2H,GAAW58H,KAAK82H,qBAAqBl7F,EAAKv7B,IAAIo5H,QAAQhzH,EACjBF,UAArCvG,KAAK+2H,kBAAkB6F,KAEzBsC,EAAOl/H,KAAK+2H,kBAAkB6F,IAOlC58H,KAAK+2H,kBAAkBn7F,EAAKv7B,IAAM6+H,MAElCl/H,MAAK+2H,kBAAkBn7F,EAAKv7B,MAAQL,KAAKg3H,SAKH,QAAxCh3H,KAAK6D,QAAQoxH,aAAavqG,WAA8D,OAAxC1qB,KAAK6D,QAAQoxH,aAAavqG,UAC5EkR,EAAKgC,EAAI6Q,EAET7S,EAAK3a,EAAIwtB,KAWb9kC,IAAK,2BACL5E,MAAO,SAAkC62B,GACvC,MAA4C,OAAxC57B,KAAK6D,QAAQoxH,aAAavqG,WAA8D,OAAxC1qB,KAAK6D,QAAQoxH,aAAavqG,UACrEkR,EAAKgC,EAELhC,EAAK3a,KAUhBtX,IAAK,iBACL5E,MAAO,SAAwBm4H,GACzBA,EAAU52H,OAAS,IACuB,OAAxCtG,KAAK6D,QAAQoxH,aAAavqG,WAA8D,OAAxC1qB,KAAK6D,QAAQoxH,aAAavqG,UAC5EwyG,EAAUx+G,KAAK,SAAUxY,EAAGC,GAC1B,MAAOD,GAAE03B,EAAIz3B,EAAEy3B,IAGjBs/F,EAAUx+G,KAAK,SAAUxY,EAAGC,GAC1B,MAAOD,GAAE+a,EAAI9a,EAAE8a,SAOlB2zG,IAGTh1H,GAAQ,WAAag1H,EACrB/0H,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS62E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBt2E,EAAOT,EAAoB,GAC3B8D,EAAS9D,EAAoB,IAC7Bm+D,EAAan+D,EAAoB,IAQjCi/H,EAAqB,WACvB,QAASA,GAAmBhgF,EAAM3U,EAAQwxD,GACxC,GAAI/5C,GAAQjiD,IAEZ+2E,GAAgB/2E,KAAMm/H,GAEtBn/H,KAAKm/C,KAAOA,EACZn/C,KAAKwqC,OAASA,EACdxqC,KAAKg8F,iBAAmBA,EAExBh8F,KAAKo/H,UAAW,EAChBp/H,KAAKq/H,gBAAkB94H,OACvBvG,KAAKs/H,YAAc/4H,OACnBvG,KAAKu/H,SAAWh5H,OAEhBvG,KAAKw/H,uBACLx/H,KAAKy/H,wBACLz/H,KAAK0/H,2BAEL1/H,KAAK2sH,UAAY,EACjB3sH,KAAK2/H,cAAiBjlC,SAAWE,UACjC56F,KAAK4/H,YAAa,EAClB5/H,KAAK6/H,QAAS,EACd7/H,KAAK8/H,oBAAsBv5H,OAE3BvG,KAAK6D,WACL7D,KAAK2+C,gBACH9tC,SAAS,EACTkvH,iBAAiB,EACjBC,SAAS,EACTC,SAAS,EACTjgC,SAAUz5F,OACV25H,UAAU,EACVC,YAAY,EACZC,YAAY,EACZC,kBACEh9B,MAAO,MACPplE,KAAM,EACNxxB,OAASwB,WAAY,UAAWC,OAAQ,UAAWC,WAAaF,WAAY,UAAWC,OAAQ,YAC/F48B,YAAa,EACby3D,oBAAqB,IAGzB5hG,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK2+C,gBAE/B3+C,KAAKm/C,KAAKE,QAAQjgB,GAAG,UAAW,WAC9B6iB,EAAM22B,WAER54E,KAAKm/C,KAAKE,QAAQjgB,GAAG,eAAgBp/B,KAAKsgI,SAAShhF,KAAKt/C,OACxDA,KAAKm/C,KAAKE,QAAQjgB,GAAG,aAAcp/B,KAAKsgI,SAAShhF,KAAKt/C,OA8mCxD,MAtmCAm3E,GAAagoD,IACXx1H,IAAK,WACL5E,MAAO,WACD/E,KAAK6/H,UAAW,IACd7/H,KAAK6D,QAAQk8H,mBAAoB,EACnC//H,KAAK6/F,iBAEL7/F,KAAK8/F,sBAUXn2F,IAAK,aACL5E,MAAO,SAAoBlB,EAASL,EAAYoN,GAC3BrK,SAAf/C,IACwB+C,SAAtB/C,EAAW8P,OACbtT,KAAK6D,QAAQyP,OAAS9P,EAAW8P,OAEjCtT,KAAK6D,QAAQyP,OAAS1C,EAAc0C,OAEX/M,SAAvB/C,EAAWkU,QACb1X,KAAK6D,QAAQ6T,QAAUlU,EAAWkU,QAElC1X,KAAK6D,QAAQ6T,QAAU9G,EAAc8G,SAIzBnR,SAAZ1C,IACqB,iBAAZA,GACT7D,KAAK6D,QAAQgN,QAAUhN,GAEvB7D,KAAK6D,QAAQgN,SAAU,EACvBlQ,EAAK0G,WAAWrH,KAAK6D,QAASA,IAE5B7D,KAAK6D,QAAQk8H,mBAAoB,IACnC//H,KAAKo/H,UAAW,GAElBp/H,KAAKugI,aAUT52H,IAAK,iBACL5E,MAAO,WACD/E,KAAKo/H,YAAa,EACpBp/H,KAAK8/F,kBAEL9/F,KAAK6/F,oBAITl2F,IAAK,iBACL5E,MAAO,WACL/E,KAAKo/H,UAAW,EAEhBp/H,KAAK44E,SACD54E,KAAK4/H,cAAe,IACtB5/H,KAAKq/H,gBAAgBvwH,MAAMwmE,QAAU,QACrCt1E,KAAKu/H,SAASzwH,MAAMwmE,QAAU,QAC9Bt1E,KAAKs/H,YAAYxwH,MAAMwmE,QAAU,OACjCt1E,KAAKwgI,6BAIT72H,IAAK,kBACL5E,MAAO,WACL/E,KAAKo/H,UAAW,EAEhBp/H,KAAK44E,SACD54E,KAAK4/H,cAAe,IACtB5/H,KAAKq/H,gBAAgBvwH,MAAMwmE,QAAU,OACrCt1E,KAAKu/H,SAASzwH,MAAMwmE,QAAU,OAC9Bt1E,KAAKs/H,YAAYxwH,MAAMwmE,QAAU,QACjCt1E,KAAKygI,wBAUT92H,IAAK,yBACL5E,MAAO,WAQL,GANA/E,KAAK44E,SAGL54E,KAAK0gI,mBAGD1gI,KAAK4/H,cAAe,EAAM,CAE5B5/H,KAAKo/H,UAAW,EAChBp/H,KAAKq/H,gBAAgBvwH,MAAMwmE,QAAU,QACrCt1E,KAAKu/H,SAASzwH,MAAMwmE,QAAU,OAE9B,IAAIqrD,GAAoB3gI,KAAKg8F,iBAAiBozB,wBAC1CwR,EAAoB5gI,KAAKg8F,iBAAiBkzB,wBAC1C2R,EAAqBF,EAAoBC,EACzCttH,EAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAC3CwtH,GAAgB,CAEhB9gI,MAAK6D,QAAQm8H,WAAY,IAC3BhgI,KAAK+gI,qBAAqBztH,GAC1BwtH,GAAgB,GAEd9gI,KAAK6D,QAAQo8H,WAAY,IACvBa,KAAkB,EACpB9gI,KAAKghI,iBAAiB,GAEtBF,GAAgB,EAElB9gI,KAAKihI,qBAAqB3tH,IAGF,IAAtBqtH,GAA4D,kBAA1B3gI,MAAK6D,QAAQm8F,UAC7C8gC,KAAkB,EACpB9gI,KAAKghI,iBAAiB,GAEtBF,GAAgB,EAElB9gI,KAAKkhI,sBAAsB5tH,IACI,IAAtBstH,GAAiD,IAAtBD,GAA2B3gI,KAAK6D,QAAQq8H,YAAa,IACrFY,KAAkB,EACpB9gI,KAAKghI,iBAAiB,GAEtBF,GAAgB,EAElB9gI,KAAKmhI,sBAAsB7tH,IAIF,IAAvButH,IACEF,EAAoB,GAAK3gI,KAAK6D,QAAQs8H,cAAe,GACnDW,KAAkB,GACpB9gI,KAAKghI,iBAAiB,GAExBhhI,KAAKohI,oBAAoB9tH,IACM,IAAtBqtH,GAA2B3gI,KAAK6D,QAAQu8H,cAAe,IAC5DU,KAAkB,GACpB9gI,KAAKghI,iBAAiB,GAExBhhI,KAAKohI,oBAAoB9tH,KAK7BtT,KAAKqhI,iBAAiBrhI,KAAKu/H,SAAUv/H,KAAKshI,eAAehiF,KAAKt/C,OAG9DA,KAAKuhI,oBAAoB,SAAUvhI,KAAKwgI,uBAAuBlhF,KAAKt/C,OAItEA,KAAKm/C,KAAKE,QAAQzH,KAAK,cAOzBjuC,IAAK,cACL5E,MAAO,WAUL,GARI/E,KAAKo/H,YAAa,GACpBp/H,KAAK6/F,iBAIP7/F,KAAK44E,SAEL54E,KAAK6/H,OAAS,UACV7/H,KAAK4/H,cAAe,EAAM,CAC5B,GAAItsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC/CtT,MAAK0gI,mBACL1gI,KAAKwhI,kBAAkBluH,GACvBtT,KAAKghI,mBACLhhI,KAAKyhI,mBAAmBnuH,EAAuB,gBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAkB,gBAG/F1X,KAAKqhI,iBAAiBrhI,KAAKu/H,SAAUv/H,KAAKshI,eAAehiF,KAAKt/C,OAGhEA,KAAKuhI,oBAAoB,QAASvhI,KAAK0hI,gBAAgBpiF,KAAKt/C,UAO9D2J,IAAK,WACL5E,MAAO,WACL,GAAI00E,GAASz5E,IAGTA,MAAKo/H,YAAa,GACpBp/H,KAAK6/F,iBAIP7/F,KAAK44E,QACL,IAAIh9C,GAAO57B,KAAKg8F,iBAAiB2lC,kBACjC,IAAap7H,SAATq1B,EAAoB,CAEtB,GADA57B,KAAK6/H,OAAS,WACuB,kBAA1B7/H,MAAK6D,QAAQm8F,SAqBtB,KAAM,IAAIh5F,OAAM,kEApBhB,IAAI40B,EAAKyjE,aAAc,EAAM,CAC3B,GAAIrnF,GAAOrX,EAAK0G,cAAeu0B,EAAK/3B,SAAS,EAI7C,IAHAmU,EAAK4lB,EAAIhC,EAAKgC,EACd5lB,EAAKiJ,EAAI2a,EAAK3a,EAEuB,IAAjCjhB,KAAK6D,QAAQm8F,SAAS15F,OASxB,KAAM,IAAIU,OAAM,wEARhBhH,MAAK6D,QAAQm8F,SAAShoF,EAAM,SAAU4pH,GACd,OAAlBA,GAA4Cr7H,SAAlBq7H,GAAiD,aAAlBnoD,EAAOomD,QAElEpmD,EAAOt6B,KAAKnnC,KAAK0iF,MAAMr5D,aAAanB,OAAO0hG,GAE7CnoD,EAAO+mD,+BAMX55C,OAAM5mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAA0B,kBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAoB,sBAMxH1X,MAAKwgI,4BAQT72H,IAAK,cACL5E,MAAO,WAUL,GARI/E,KAAKo/H,YAAa,GACpBp/H,KAAK6/F,iBAIP7/F,KAAK44E,SAEL54E,KAAK6/H,OAAS,UACV7/H,KAAK4/H,cAAe,EAAM,CAC5B,GAAItsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC/CtT,MAAK0gI,mBACL1gI,KAAKwhI,kBAAkBluH,GACvBtT,KAAKghI,mBACLhhI,KAAKyhI,mBAAmBnuH,EAAwB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,iBAGjG1X,KAAKqhI,iBAAiBrhI,KAAKu/H,SAAUv/H,KAAKshI,eAAehiF,KAAKt/C,OAIhEA,KAAK6hI,iBAAiB,UAAW7hI,KAAK8hI,eAAexiF,KAAKt/C,OAC1DA,KAAK6hI,iBAAiB,YAAa7hI,KAAK+hI,eAAeziF,KAAKt/C,OAC5DA,KAAK6hI,iBAAiB,SAAU7hI,KAAKgiI,iBAAiB1iF,KAAKt/C,OAC3DA,KAAK6hI,iBAAiB,YAAa7hI,KAAK+hI,eAAeziF,KAAKt/C,OAE5DA,KAAK6hI,iBAAiB,cAAe,cACrC7hI,KAAK6hI,iBAAiB,SAAU,iBAOlCl4H,IAAK,eACL5E,MAAO,WACL,GAAIw1E,GAASv6E,IAWb,IARIA,KAAKo/H,YAAa,GACpBp/H,KAAK6/F,iBAIP7/F,KAAK44E,SAEL54E,KAAK6/H,OAAS,WACV7/H,KAAK4/H,cAAe,EAAM,CAC5B,GAAItsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC/CtT,MAAK0gI,mBACL1gI,KAAKwhI,kBAAkBluH,GACvBtT,KAAKghI,mBACLhhI,KAAKyhI,mBAAmBnuH,EAA4B,qBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAuB,qBAGzG1X,KAAKqhI,iBAAiBrhI,KAAKu/H,SAAUv/H,KAAKshI,eAAehiF,KAAKt/C,OAGhEA,KAAKiiI,kBAAoBjiI,KAAKg8F,iBAAiBgF,mBAAmB,GACnCz6F,SAA3BvG,KAAKiiI,mBACP,WACE,GAAI9gC,GAAO5mB,EAAOp7B,KAAKy7C,MAAMrgB,EAAO0nD,mBAGhCC,EAAkB3nD,EAAO4nD,kBAAkBhhC,EAAK/rF,KAAKwoB,EAAGujE,EAAK/rF,KAAK6L,GAClEmhH,EAAgB7nD,EAAO4nD,kBAAkBhhC,EAAKhsF,GAAGyoB,EAAGujE,EAAKhsF,GAAG8L,EAEhEs5D,GAAOolD,aAAajlC,MAAMlzF,KAAK06H,EAAgB7hI,IAC/Ck6E,EAAOolD,aAAajlC,MAAMlzF,KAAK46H,EAAc/hI,IAE7Ck6E,EAAOp7B,KAAKu7C,MAAMwnC,EAAgB7hI,IAAM6hI,EACxC3nD,EAAOp7B,KAAKw7C,YAAYnzF,KAAK06H,EAAgB7hI,IAC7Ck6E,EAAOp7B,KAAKu7C,MAAM0nC,EAAc/hI,IAAM+hI,EACtC7nD,EAAOp7B,KAAKw7C,YAAYnzF,KAAK46H,EAAc/hI,IAG3Ck6E,EAAOsnD,iBAAiB,UAAWtnD,EAAO8nD,kBAAkB/iF,KAAKi7B,IACjEA,EAAOsnD,iBAAiB,QAAS,cACjCtnD,EAAOsnD,iBAAiB,SAAU,cAClCtnD,EAAOsnD,iBAAiB,cAAetnD,EAAO+nD,sBAAsBhjF,KAAKi7B,IACzEA,EAAOsnD,iBAAiB,SAAUtnD,EAAOgoD,iBAAiBjjF,KAAKi7B,IAC/DA,EAAOsnD,iBAAiB,YAAatnD,EAAOioD,oBAAoBljF,KAAKi7B,IACrEA,EAAOsnD,iBAAiB,cAAe,cAIvCtnD,EAAOgnD,oBAAoB,gBAAiB,SAAUjwF,GACpD,GAAIotE,GAAYvd,EAAKkP,SAASoyB,oBAAoBnxF,EAC9C4wF,GAAgB56D,YAAa,IAC/B46D,EAAgBtkG,EAAI8gF,EAAUtpG,KAAKwoB,EACnCskG,EAAgBjhH,EAAIy9F,EAAUtpG,KAAK6L,GAEjCmhH,EAAc96D,YAAa,IAC7B86D,EAAcxkG,EAAI8gF,EAAUvpG,GAAGyoB,EAC/BwkG,EAAcnhH,EAAIy9F,EAAUvpG,GAAG8L,KAInCs5D,EAAOp7B,KAAKE,QAAQzH,KAAK,cAG3B53C,KAAKwgI,4BAQT72H,IAAK,iBACL5E,MAAO,WACL,GAAI41E,GAAS36E,IAGTA,MAAKo/H,YAAa,GACpBp/H,KAAK6/F,iBAIP7/F,KAAK44E,SAEL54E,KAAK6/H,OAAS,QACd,IAAI6C,GAAgB1iI,KAAKg8F,iBAAiB+E,mBACtC4hC,EAAgB3iI,KAAKg8F,iBAAiBgF,mBACtC4hC,EAAiBr8H,MACrB,IAAIm8H,EAAcp8H,OAAS,EAAG,CAC5B,IAAK,GAAIG,GAAI,EAAGA,EAAIi8H,EAAcp8H,OAAQG,IACxC,GAAIzG,KAAKm/C,KAAKu7C,MAAMgoC,EAAcj8H,IAAI44F,aAAc,EAElD,WADAzY,OAAM5mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAA4B,oBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAsB,mBAKrF,mBAA5B1X,MAAK6D,QAAQs8H,aACtByC,EAAiB5iI,KAAK6D,QAAQs8H,gBAEvBwC,GAAcr8H,OAAS,GACO,kBAA5BtG,MAAK6D,QAAQu8H,aACtBwC,EAAiB5iI,KAAK6D,QAAQu8H,WAIlC,IAA8B,kBAAnBwC,GAA+B,CACxC,GAAI5qH,IAAS0iF,MAAOgoC,EAAe9nC,MAAO+nC,EAC1C,IAA8B,IAA1BC,EAAet8H,OAcjB,KAAM,IAAIU,OAAM,0EAbhB47H,GAAe5qH,EAAM,SAAU4pH,GACP,OAAlBA,GAA4Cr7H,SAAlBq7H,GAAiD,WAAlBjnD,EAAOklD,QAElEllD,EAAOx7B,KAAKnnC,KAAK4iF,MAAMv5D,aAAaM,OAAOigG,EAAchnC,OACzDjgB,EAAOx7B,KAAKnnC,KAAK0iF,MAAMr5D,aAAaM,OAAOigG,EAAclnC,OACzD/f,EAAOx7B,KAAKE,QAAQzH,KAAK,mBACzB+iC,EAAO6lD,2BAEP7lD,EAAOx7B,KAAKE,QAAQzH,KAAK,mBACzB+iC,EAAO6lD,gCAObxgI,MAAKm/C,KAAKnnC,KAAK4iF,MAAMv5D,aAAaM,OAAOghG,GACzC3iI,KAAKm/C,KAAKnnC,KAAK0iF,MAAMr5D,aAAaM,OAAO+gG,GACzC1iI,KAAKm/C,KAAKE,QAAQzH,KAAK,mBACvB53C,KAAKwgI,4BAWT72H,IAAK,SACL5E,MAAO,WACD/E,KAAK6D,QAAQgN,WAAY,GAE3B7Q,KAAK4/H,YAAa,EAElB5/H,KAAK6iI,kBACD7iI,KAAKo/H,YAAa,EACpBp/H,KAAKygI,oBAELzgI,KAAKwgI,2BAGPxgI,KAAK8iI,yBAGL9iI,KAAK4/H,YAAa,MAStBj2H,IAAK,kBACL5E,MAAO,WAEwBwB,SAAzBvG,KAAKq/H,kBACPr/H,KAAKq/H,gBAAkBjiG,SAASM,cAAc,OAC9C19B,KAAKq/H,gBAAgBt2H,UAAY,mBAC7B/I,KAAKo/H,YAAa,EACpBp/H,KAAKq/H,gBAAgBvwH,MAAMwmE,QAAU,QAErCt1E,KAAKq/H,gBAAgBvwH,MAAMwmE,QAAU,OAEvCt1E,KAAKwqC,OAAOD,MAAMjN,YAAYt9B,KAAKq/H,kBAIZ94H,SAArBvG,KAAKs/H,cACPt/H,KAAKs/H,YAAcliG,SAASM,cAAc,OAC1C19B,KAAKs/H,YAAYv2H,UAAY,gBACzB/I,KAAKo/H,YAAa,EACpBp/H,KAAKs/H,YAAYxwH,MAAMwmE,QAAU,OAEjCt1E,KAAKs/H,YAAYxwH,MAAMwmE,QAAU,QAEnCt1E,KAAKwqC,OAAOD,MAAMjN,YAAYt9B,KAAKs/H,cAIf/4H,SAAlBvG,KAAKu/H,WACPv/H,KAAKu/H,SAAWniG,SAASM,cAAc,OACvC19B,KAAKu/H,SAASx2H,UAAY,YAC1B/I,KAAKu/H,SAASzwH,MAAMwmE,QAAUt1E,KAAKq/H,gBAAgBvwH,MAAMwmE,QACzDt1E,KAAKwqC,OAAOD,MAAMjN,YAAYt9B,KAAKu/H,cAYvC51H,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnC,GAAIo/G,GAAmB1/H,EAAK0G,cAAerH,KAAK6D,QAAQw8H,iBAExDA,GAAiBhgI,GAAK,aAAeM,EAAKgF,aAC1C06H,EAAiBtjE,QAAS,EAC1BsjE,EAAiBpkD,SAAU,EAC3BokD,EAAiBziG,EAAIA,EACrByiG,EAAiBp/G,EAAIA,CAGrB,IAAI2a,GAAO57B,KAAKm/C,KAAKq8C,UAAUC,WAAW4kC,EAG1C,OAFAzkG,GAAKynE,MAAMkB,aAAgB57F,KAAMi1B,EAAGgU,MAAOhU,EAAG/0B,IAAKoY,EAAGotB,OAAQptB,GAEvD2a,KAOTjyB,IAAK,oBACL5E,MAAO,WAEL/E,KAAK44E,SAGL54E,KAAK0gI,mBAGL//H,EAAK2D,mBAAmBtE,KAAKs/H,YAG7B,IAAIhsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAC3CojC,EAAS12C,KAAK+iI,cAAc,WAAY,oCAAqCzvH,EAAa,MAAKtT,KAAK6D,QAAQ6T,QAAY,GAAQ,KACpI1X,MAAKs/H,YAAYhiG,YAAYoZ,GAG7B12C,KAAKqhI,iBAAiB3qF,EAAQ12C,KAAKshI,eAAehiF,KAAKt/C,UAQzD2J,IAAK,SACL5E,MAAO,WAEL/E,KAAK6/H,QAAS,EAGV7/H,KAAK4/H,cAAe,IACtBj/H,EAAK2D,mBAAmBtE,KAAKs/H,aAC7B3+H,EAAK2D,mBAAmBtE,KAAKq/H,iBAG7Br/H,KAAKgjI,4BAIPhjI,KAAKijI,iCAGLjjI,KAAKkjI,sBAGLljI,KAAKmjI,yBAGLnjI,KAAKm/C,KAAKE,QAAQzH,KAAK,qBAQzBjuC,IAAK,2BACL5E,MAAO,WAEL,GAAuC,GAAnC/E,KAAKw/H,oBAAoBl5H,OAAa,CACxC,IAAK,GAAIG,GAAI,EAAGA,EAAIzG,KAAKw/H,oBAAoBl5H,OAAQG,IACnDzG,KAAKw/H,oBAAoB/4H,GAAG04B,SAE9Bn/B,MAAKw/H,2BAST71H,IAAK,yBACL5E,MAAO,WAEL/E,KAAK44E,SAGLj4E,EAAK2D,mBAAmBtE,KAAKq/H,iBAC7B1+H,EAAK2D,mBAAmBtE,KAAKs/H,aAC7B3+H,EAAK2D,mBAAmBtE,KAAKu/H,UAGzBv/H,KAAKq/H,iBACPr/H,KAAKwqC,OAAOD,MAAM7lC,YAAY1E,KAAKq/H,iBAEjCr/H,KAAKs/H,aACPt/H,KAAKwqC,OAAOD,MAAM7lC,YAAY1E,KAAKs/H,aAEjCt/H,KAAKu/H,UACPv/H,KAAKwqC,OAAOD,MAAM7lC,YAAY1E,KAAKu/H,UAIrCv/H,KAAKq/H,gBAAkB94H,OACvBvG,KAAKs/H,YAAc/4H,OACnBvG,KAAKu/H,SAAWh5H,UASlBoD,IAAK,mBACL5E,MAAO,WACL,GAAIqE,GAAQ/C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAEhFrG,MAAK0gI,gBAAgB,mBAAqBt3H,GAASg0B,SAASM,cAAc,OAC1E19B,KAAK0gI,gBAAgB,mBAAqBt3H,GAAOL,UAAY,qBAC7D/I,KAAKq/H,gBAAgB/hG,YAAYt9B,KAAK0gI,gBAAgB,mBAAqBt3H,OAM7EO,IAAK,uBACL5E,MAAO,SAA8BuO,GACnC,GAAIojC,GAAS12C,KAAK+iI,cAAc,UAAW,qBAAsBzvH,EAAgB,SAAKtT,KAAK6D,QAAQ6T,QAAY,GAAW,QAC1H1X,MAAKq/H,gBAAgB/hG,YAAYoZ,GACjC12C,KAAKqhI,iBAAiB3qF,EAAQ12C,KAAK+/F,YAAYzgD,KAAKt/C,UAGtD2J,IAAK,uBACL5E,MAAO,SAA8BuO,GACnC,GAAIojC,GAAS12C,KAAK+iI,cAAc,UAAW,yBAA0BzvH,EAAgB,SAAKtT,KAAK6D,QAAQ6T,QAAY,GAAW,QAC9H1X,MAAKq/H,gBAAgB/hG,YAAYoZ,GACjC12C,KAAKqhI,iBAAiB3qF,EAAQ12C,KAAKkgG,YAAY5gD,KAAKt/C,UAGtD2J,IAAK,wBACL5E,MAAO,SAA+BuO,GACpC,GAAIojC,GAAS12C,KAAK+iI,cAAc,WAAY,sBAAuBzvH,EAAiB,UAAKtT,KAAK6D,QAAQ6T,QAAY,GAAY,SAC9H1X,MAAKq/H,gBAAgB/hG,YAAYoZ,GACjC12C,KAAKqhI,iBAAiB3qF,EAAQ12C,KAAKggG,SAAS1gD,KAAKt/C,UAGnD2J,IAAK,wBACL5E,MAAO,SAA+BuO,GACpC,GAAIojC,GAAS12C,KAAK+iI,cAAc,WAAY,sBAAuBzvH,EAAiB,UAAKtT,KAAK6D,QAAQ6T,QAAY,GAAY,SAC9H1X,MAAKq/H,gBAAgB/hG,YAAYoZ,GACjC12C,KAAKqhI,iBAAiB3qF,EAAQ12C,KAAKmgG,aAAa7gD,KAAKt/C,UAGvD2J,IAAK,sBACL5E,MAAO,SAA6BuO,GAClC,GAAIojC,GAAS12C,KAAK+iI,cAAc,SAAU,wBAAyBzvH,EAAY,KAAKtT,KAAK6D,QAAQ6T,QAAY,GAAO,IACpH1X,MAAKq/H,gBAAgB/hG,YAAYoZ,GACjC12C,KAAKqhI,iBAAiB3qF,EAAQ12C,KAAKogG,eAAe9gD,KAAKt/C,UAGzD2J,IAAK,oBACL5E,MAAO,SAA2BuO,GAChC,GAAIojC,GAAS12C,KAAK+iI,cAAc,OAAQ,sBAAuBzvH,EAAa,MAAKtT,KAAK6D,QAAQ6T,QAAY,GAAQ,KAClH1X,MAAKq/H,gBAAgB/hG,YAAYoZ,GACjC12C,KAAKqhI,iBAAiB3qF,EAAQ12C,KAAKwgI,uBAAuBlhF,KAAKt/C,UAGjE2J,IAAK,gBACL5E,MAAO,SAAuB1E,EAAI0I,EAAWm1B,GAC3C,GAAIklG,GAAiB/8H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,YAAcA,UAAU,EAQnG,OANArG,MAAK0gI,gBAAgBrgI,EAAK,OAAS+8B,SAASM,cAAc,OAC1D19B,KAAK0gI,gBAAgBrgI,EAAK,OAAO0I,UAAYA,EAC7C/I,KAAK0gI,gBAAgBrgI,EAAK,SAAW+8B,SAASM,cAAc,OAC5D19B,KAAK0gI,gBAAgBrgI,EAAK,SAAS0I,UAAYq6H,EAC/CpjI,KAAK0gI,gBAAgBrgI,EAAK,SAASwuC,UAAY3Q,EAC/Cl+B,KAAK0gI,gBAAgBrgI,EAAK,OAAOi9B,YAAYt9B,KAAK0gI,gBAAgBrgI,EAAK,UAChEL,KAAK0gI,gBAAgBrgI,EAAK,UAGnCsJ,IAAK,qBACL5E,MAAO,SAA4Bm5B,GACjCl+B,KAAKq/H,gBAAgB/hG,YAAYt9B,KAAK+iI,cAAc,cAAe,sBAAuB7kG,OAY5Fv0B,IAAK,sBACL5E,MAAO,SAA6B+F,EAAOu4H,GACzCrjI,KAAK0/H,wBAAwBl4H,MAAOsD,MAAOA,EAAOw4H,cAAeD,IACjErjI,KAAKm/C,KAAKE,QAAQjgB,GAAGt0B,EAAOu4H,MAU9B15H,IAAK,mBACL5E,MAAO,SAA0Bw+H,EAAgBF,GAC/C,GAAiD98H,SAA7CvG,KAAKm/C,KAAK27C,eAAeyoC,GAI3B,KAAM,IAAIv8H,OAAM,qDAAuDu8H,EAAiB,kBAAoB9gG,KAAKC,UAAUt7B,OAAO6H,KAAKjP,KAAKm/C,KAAK27C,iBAHjJ96F,MAAKy/H,qBAAqB8D,GAAkBvjI,KAAKm/C,KAAK27C,eAAeyoC,GACrEvjI,KAAKm/C,KAAK27C,eAAeyoC,GAAkBF,KAY/C15H,IAAK,sBACL5E,MAAO,WACL,IAAK,GAAIy+H,KAAgBxjI,MAAKy/H,qBACxBz/H,KAAKy/H,qBAAqBz5H,eAAew9H,KAC3CxjI,KAAKm/C,KAAK27C,eAAe0oC,GAAgBxjI,KAAKy/H,qBAAqB+D,SAC5DxjI,MAAKy/H,qBAAqB+D,GAGrCxjI,MAAKy/H,2BAQP91H,IAAK,yBACL5E,MAAO,WACL,IAAK,GAAI0B,GAAI,EAAGA,EAAIzG,KAAK0/H,wBAAwBp5H,OAAQG,IAAK,CAC5D,GAAIg9H,GAAYzjI,KAAK0/H,wBAAwBj5H,GAAGqE,MAC5Cw4H,EAAgBtjI,KAAK0/H,wBAAwBj5H,GAAG68H,aACpDtjI,MAAKm/C,KAAKE,QAAQ9f,IAAIkkG,EAAWH,GAEnCtjI,KAAK0/H,8BASP/1H,IAAK,mBACL5E,MAAO,SAA0B2+H,EAAYJ,GAC3C,GAAIn/E,GAAS,GAAIngD,GAAO0/H,KACxBrlE,GAAW3C,QAAQvX,EAAQm/E,GAC3BtjI,KAAKw/H,oBAAoBh4H,KAAK28C,MAQhCx6C,IAAK,iCACL5E,MAAO,WAEL,IAAK,GAAI0B,GAAI,EAAGA,EAAIzG,KAAK2/H,aAAa/kC,MAAMt0F,OAAQG,IAAK,CACvDzG,KAAKm/C,KAAKy7C,MAAM56F,KAAK2/H,aAAa/kC,MAAMn0F,IAAIwpG,mBACrCjwG,MAAKm/C,KAAKy7C,MAAM56F,KAAK2/H,aAAa/kC,MAAMn0F,GAC/C,IAAIk9H,GAAgB3jI,KAAKm/C,KAAK07C,YAAYtzF,QAAQvH,KAAK2/H,aAAa/kC,MAAMn0F,GACpD,MAAlBk9H,GACF3jI,KAAKm/C,KAAK07C,YAAYxxF,OAAOs6H,EAAe,GAKhD,IAAK,GAAIl9H,GAAI,EAAGA,EAAIzG,KAAK2/H,aAAajlC,MAAMp0F,OAAQG,IAAK,OAChDzG,MAAKm/C,KAAKu7C,MAAM16F,KAAK2/H,aAAajlC,MAAMj0F,GAC/C,IAAIm9H,GAAgB5jI,KAAKm/C,KAAKw7C,YAAYpzF,QAAQvH,KAAK2/H,aAAajlC,MAAMj0F,GACpD,MAAlBm9H,GACF5jI,KAAKm/C,KAAKw7C,YAAYtxF,OAAOu6H,EAAe,GAIhD5jI,KAAK2/H,cAAiBjlC,SAAWE,aAWnCjxF,IAAK,oBACL5E,MAAO,SAA2B+F,GAChC9K,KAAKg8F,iBAAiB4C,cACtB5+F,KAAK6jI,UAAY7jI,KAAKm/C,KAAKq8C,UAAUxiC,WAAWluD,EAAMsrC,QACtDp2C,KAAK6jI,UAAUn7F,YAAc/nC,EAAKgG,UAAW3G,KAAKm/C,KAAKw8C,KAAKjzD,gBAS9D/+B,IAAK,wBACL5E,MAAO,SAA+B+F,GACpC,GAAIkwD,GAAUh7D,KAAK6jI,UACf9S,EAAa/wH,KAAKg8F,iBAAiB01B,yBAAyB12D,GAC5D5lD,EAAOpV,KAAKm/C,KAAKu7C,MAAM16F,KAAK2/H,aAAajlC,MAAM,IAC/CvlF,EAAKnV,KAAKm/C,KAAKu7C,MAAM16F,KAAK2/H,aAAajlC,MAAM,IAC7CyG,EAAOnhG,KAAKm/C,KAAKy7C,MAAM56F,KAAKiiI,kBAChCjiI,MAAK8/H,oBAAsBv5H,MAE3B,IAAIu9H,GAAa1uH,EAAKg8G,kBAAkBL,GACpCgT,EAAW5uH,EAAGi8G,kBAAkBL,EAEhC+S,MAAe,GACjB9jI,KAAK8/H,oBAAsB1qH,EAC3B+rF,EAAKkP,SAASj7F,KAAOA,GACZ2uH,KAAa,IACtB/jI,KAAK8/H,oBAAsB3qH,EAC3BgsF,EAAKkP,SAASl7F,GAAKA,GAGrBnV,KAAKm/C,KAAKE,QAAQzH,KAAK,cASzBjuC,IAAK,mBACL5E,MAAO,SAA0B+F,GAC/B9K,KAAKm/C,KAAKE,QAAQzH,KAAK,iBACvB,IAAIojB,GAAUh7D,KAAKm/C,KAAKq8C,UAAUxiC,WAAWluD,EAAMsrC,QAC/C7f,EAAMv2B,KAAKwqC,OAAO20D,YAAYnkC,EAElC,IAAiCz0D,SAA7BvG,KAAK8/H,oBACP9/H,KAAK8/H,oBAAoBliG,EAAIrH,EAAIqH;AACjC59B,KAAK8/H,oBAAoB7+G,EAAIsV,EAAItV,MAC5B,CAEL,GAAIo2B,GAAQ2jB,EAAQp9B,EAAI59B,KAAK6jI,UAAUjmG,EACnC0Z,EAAQ0jB,EAAQ/5C,EAAIjhB,KAAK6jI,UAAU5iH,CACvCjhB,MAAKm/C,KAAKw8C,KAAKjzD,aAAgB9K,EAAG59B,KAAK6jI,UAAUn7F,YAAY9K,EAAIyZ,EAAOp2B,EAAGjhB,KAAK6jI,UAAUn7F,YAAYznB,EAAIq2B,GAE5Gt3C,KAAKm/C,KAAKE,QAAQzH,KAAK,cASzBjuC,IAAK,sBACL5E,MAAO,SAA6B+F,GAClC,GAAIkwD,GAAUh7D,KAAKm/C,KAAKq8C,UAAUxiC,WAAWluD,EAAMsrC,QAC/C26E,EAAa/wH,KAAKg8F,iBAAiB01B,yBAAyB12D,GAC5DmmC,EAAOnhG,KAAKm/C,KAAKy7C,MAAM56F,KAAKiiI,kBAGhC,IAAiC17H,SAA7BvG,KAAK8/H,oBAAT,CAMA,IAAK,GAFDkE,GAAqBhkI,KAAKg8F,iBAAiB+3B,4BAA4BhD,GACvEn1F,EAAOr1B,OACFE,EAAIu9H,EAAmB19H,OAAS,EAAGG,GAAK,EAAGA,IAClD,GAAIu9H,EAAmBv9H,KAAOzG,KAAK8/H,oBAAoBz/H,GAAI,CACzDu7B,EAAO57B,KAAKm/C,KAAKu7C,MAAMspC,EAAmBv9H,GAC1C,OAKJ,GAAaF,SAATq1B,GAAmDr1B,SAA7BvG,KAAK8/H,oBAC7B,GAAIlkG,EAAKyjE,aAAc,EACrBzY,MAAM5mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAAyB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,qBAC7G,CACL,GAAItC,GAAOpV,KAAKm/C,KAAKu7C,MAAM16F,KAAK2/H,aAAajlC,MAAM,GAC/C16F,MAAK8/H,oBAAoBz/H,KAAO+U,EAAK/U,GACvCL,KAAKikI,iBAAiBroG,EAAKv7B,GAAI8gG,EAAKhsF,GAAG9U,IAEvCL,KAAKikI,iBAAiB9iC,EAAK/rF,KAAK/U,GAAIu7B,EAAKv7B,QAI7C8gG,GAAK0O,iBACL7vG,KAAKm/C,KAAKE,QAAQzH,KAAK,iBAEzB53C,MAAKm/C,KAAKE,QAAQzH,KAAK,eAazBjuC,IAAK,iBACL5E,MAAO,SAAwB+F,GAE7B,IAAI,GAAIzF,OAAOyC,UAAY9H,KAAK2sH,UAAY,IAAK,CAC/C3sH,KAAK6jI,UAAY7jI,KAAKm/C,KAAKq8C,UAAUxiC,WAAWluD,EAAMsrC,QACtDp2C,KAAK6jI,UAAUn7F,YAAc/nC,EAAKgG,UAAW3G,KAAKm/C,KAAKw8C,KAAKjzD,YAE5D,IAAIsyB,GAAUh7D,KAAK6jI,UACfjoG,EAAO57B,KAAKg8F,iBAAiBiF,UAAUjmC,EAE3C,IAAaz0D,SAATq1B,EACF,GAAIA,EAAKyjE,aAAc,EACrBzY,MAAM5mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAAyB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,qBAC7G,CAEL,GAAIwsH,GAAalkI,KAAKmiI,kBAAkBvmG,EAAKgC,EAAGhC,EAAK3a,EACrDjhB,MAAKm/C,KAAKu7C,MAAMwpC,EAAW7jI,IAAM6jI,EACjClkI,KAAKm/C,KAAKw7C,YAAYnzF,KAAK08H,EAAW7jI,GAGtC,IAAI8jI,GAAiBnkI,KAAKm/C,KAAKq8C,UAAUE,YACvCr7F,GAAI,iBAAmBM,EAAKgF,aAC5ByP,KAAMwmB,EAAKv7B,GACX8U,GAAI+uH,EAAW7jI,GACf47E,SAAS,EACTozB,QACEx+F,SAAS,EACTjJ,KAAM,aACN2nG,UAAW,KAGfvvG,MAAKm/C,KAAKy7C,MAAMupC,EAAe9jI,IAAM8jI,EACrCnkI,KAAKm/C,KAAK07C,YAAYrzF,KAAK28H,EAAe9jI,IAE1CL,KAAK2/H,aAAajlC,MAAMlzF,KAAK08H,EAAW7jI,IACxCL,KAAK2/H,aAAa/kC,MAAMpzF,KAAK28H,EAAe9jI,IAGhDL,KAAK2sH,WAAY,GAAItnH,OAAOyC,cAIhC6B,IAAK,mBACL5E,MAAO,SAA0B+F,GAC/B,GAAIkwD,GAAUh7D,KAAKm/C,KAAKq8C,UAAUxiC,WAAWluD,EAAMsrC,OACnD,IAAmC7vC,SAA/BvG,KAAK2/H,aAAajlC,MAAM,GAAkB,CAC5C,GAAIwpC,GAAalkI,KAAKm/C,KAAKu7C,MAAM16F,KAAK2/H,aAAajlC,MAAM,GACzDwpC,GAAWtmG,EAAI59B,KAAKwqC,OAAOshF,qBAAqB9wD,EAAQp9B,GACxDsmG,EAAWjjH,EAAIjhB,KAAKwqC,OAAOuhF,qBAAqB/wD,EAAQ/5C,GACxDjhB,KAAKm/C,KAAKE,QAAQzH,KAAK,eAClB,CACL,GAAIP,GAAQ2jB,EAAQp9B,EAAI59B,KAAK6jI,UAAUjmG,EACnC0Z,EAAQ0jB,EAAQ/5C,EAAIjhB,KAAK6jI,UAAU5iH,CACvCjhB,MAAKm/C,KAAKw8C,KAAKjzD,aAAgB9K,EAAG59B,KAAK6jI,UAAUn7F,YAAY9K,EAAIyZ,EAAOp2B,EAAGjhB,KAAK6jI,UAAUn7F,YAAYznB,EAAIq2B,OAU9G3tC,IAAK,iBACL5E,MAAO,SAAwB+F,GAC7B,GAAIkwD,GAAUh7D,KAAKm/C,KAAKq8C,UAAUxiC,WAAWluD,EAAMsrC,QAC/C26E,EAAa/wH,KAAKg8F,iBAAiB01B,yBAAyB12D,GAG5DopE,EAAgB79H,MACeA,UAA/BvG,KAAK2/H,aAAa/kC,MAAM,KAC1BwpC,EAAgBpkI,KAAKm/C,KAAKy7C,MAAM56F,KAAK2/H,aAAa/kC,MAAM,IAAI+J,OAM9D,KAAK,GAFDq/B,GAAqBhkI,KAAKg8F,iBAAiB+3B,4BAA4BhD,GACvEn1F,EAAOr1B,OACFE,EAAIu9H,EAAmB19H,OAAS,EAAGG,GAAK,EAAGA,IAElD,GAA+D,KAA3DzG,KAAK2/H,aAAajlC,MAAMnzF,QAAQy8H,EAAmBv9H,IAAY,CACjEm1B,EAAO57B,KAAKm/C,KAAKu7C,MAAMspC,EAAmBv9H,GAC1C,OAKJzG,KAAKijI,iCAGQ18H,SAATq1B,IACEA,EAAKyjE,aAAc,EACrBzY,MAAM5mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAAyB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,iBAE3EnR,SAAnCvG,KAAKm/C,KAAKu7C,MAAM0pC,IAA6D79H,SAA7BvG,KAAKm/C,KAAKu7C,MAAM9+D,EAAKv7B,KACvEL,KAAKqkI,gBAAgBD,EAAexoG,EAAKv7B,KAI/CL,KAAKm/C,KAAKE,QAAQzH,KAAK,cAWzBjuC,IAAK,kBACL5E,MAAO,SAAyBu/H,GAC9B,GAAIvpD,GAAS/6E,KAETukI,GACFlkI,GAAIM,EAAKgF,aACTi4B,EAAG0mG,EAAUtpE,QAAQxwB,OAAO5M,EAC5B3c,EAAGqjH,EAAUtpE,QAAQxwB,OAAOvpB,EAC5Bid,MAAO,MAGT,IAAoC,kBAAzBl+B,MAAK6D,QAAQm8H,QAAwB,CAC9C,GAAoC,IAAhChgI,KAAK6D,QAAQm8H,QAAQ15H,OASvB,KAAM,IAAIU,OAAM,sEARhBhH,MAAK6D,QAAQm8H,QAAQuE,EAAa,SAAU3C,GACpB,OAAlBA,GAA4Cr7H,SAAlBq7H,GAAiD,YAAlB7mD,EAAO8kD,SAElE9kD,EAAO57B,KAAKnnC,KAAK0iF,MAAMr5D,aAAapb,IAAI27G,GACxC7mD,EAAOylD,gCAQbxgI,MAAKm/C,KAAKnnC,KAAK0iF,MAAMr5D,aAAapb,IAAIs+G,GACtCvkI,KAAKwgI,4BAUT72H,IAAK,kBACL5E,MAAO,SAAyBy/H,EAAcC,GAC5C,GAAIvpD,GAASl7E,KAETukI,GAAgBnvH,KAAMovH,EAAcrvH,GAAIsvH,EAC5C,IAAoC,kBAAzBzkI,MAAK6D,QAAQo8H,QAAwB,CAC9C,GAAoC,IAAhCjgI,KAAK6D,QAAQo8H,QAAQ35H,OAUvB,KAAM,IAAIU,OAAM,0EAThBhH,MAAK6D,QAAQo8H,QAAQsE,EAAa,SAAU3C,GACpB,OAAlBA,GAA4Cr7H,SAAlBq7H,GAAiD,YAAlB1mD,EAAO2kD,SAElE3kD,EAAO/7B,KAAKnnC,KAAK4iF,MAAMv5D,aAAapb,IAAI27G,GACxC1mD,EAAO8gB,iBAAiB4C,cACxB1jB,EAAOslD,gCAObxgI,MAAKm/C,KAAKnnC,KAAK4iF,MAAMv5D,aAAapb,IAAIs+G,GACtCvkI,KAAKg8F,iBAAiB4C,cACtB5+F,KAAKwgI,4BAUT72H,IAAK,mBACL5E,MAAO,SAA0By/H,EAAcC,GAC7C,GAAI9F,GAAS3+H,KAETukI,GAAgBlkI,GAAIL,KAAKiiI,kBAAmB7sH,KAAMovH,EAAcrvH,GAAIsvH,EACxE,IAAqC,kBAA1BzkI,MAAK6D,QAAQq8H,SAAyB,CAC/C,GAAqC,IAAjClgI,KAAK6D,QAAQq8H,SAAS55H,OAaxB,KAAM,IAAIU,OAAM,wEAZhBhH,MAAK6D,QAAQq8H,SAASqE,EAAa,SAAU3C,GACrB,OAAlBA,GAA4Cr7H,SAAlBq7H,GAAiD,aAAlBjD,EAAOkB,QAElElB,EAAOx/E,KAAKy7C,MAAM2pC,EAAYlkI,IAAIwvG,iBAClC8uB,EAAOx/E,KAAKE,QAAQzH,KAAK,aAEzB+mF,EAAOx/E,KAAKnnC,KAAK4iF,MAAMv5D,aAAanB,OAAO0hG,GAC3CjD,EAAO3iC,iBAAiB4C,cACxB+/B,EAAO6B,gCAObxgI,MAAKm/C,KAAKnnC,KAAK4iF,MAAMv5D,aAAanB,OAAOqkG,GACzCvkI,KAAKg8F,iBAAiB4C,cACtB5+F,KAAKwgI,6BAKJrB,IAGTv/H,GAAQ,WAAau/H,EACrBt/H,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAWrBwH,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAET,IAAIub,GAAS,SACT4qE,EAAU,UACV90E,EAAS,SACT3M,EAAQ,QACRrF,EAAS,SACTu1C,EAAM,MACNwxC,EAAM,MAEN3nF,GACFw8D,WACEnvD,SAAWq6E,UAASA,GACpB1rD,QAAU0rD,UAASA,EAAS5qE,OAAQA,EAAQ7W,MAAOA,EAAO2hF,WAAY,YACtEhnD,WAAauV,IAAKA,GAClBy+B,YAAc8S,UAASA,GACvBrB,UAAYzlF,OAAQA,EAAQ8mF,UAASA,EAAS5qE,OAAQA,EAAQ7W,MAAOA,EAAO2hF,WAAY,aAE1FwP,OACEmU,QACE55F,IAAMtE,SAAWq6E,UAASA,GAAW8jB,aAAe54F,OAAQA,GAAUyzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAC3G35E,QAAUV,SAAWq6E,UAASA,GAAW8jB,aAAe54F,OAAQA,GAAUyzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAC/G91E,MAAQvE,SAAWq6E,UAASA,GAAW8jB,aAAe54F,OAAQA,GAAUyzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAC7GrB,UAAYvpE,QAAS,OAAQ,KAAM,UAAWlc,OAAQA,IAExD6qG,oBAAsB/jB,UAASA,GAC/Bz+E,OACEA,OAAS6T,OAAQA,GACjBnS,WAAamS,OAAQA,GACrBlS,OAASkS,OAAQA,GACjB2lC,SAAW3lC,QAAS,OAAQ,KAAM,QAAS4qE,UAASA,GACpDx+E,SAAW0J,OAAQA,GACnByzE,UAAYzlF,OAAQA,EAAQkc,OAAQA,IAEtCyrF,QAAU7gB,UAASA,EAASzhF,MAAOA,GACnCqoC,MACErlC,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBssF,MAAQpiF,OAAQA,GAChBrS,YAAcqS,OAAQA,GACtBqnB,aAAevxB,OAAQA,GACvBusF,aAAeriF,OAAQA,GACvBmiD,OAASniD,QAAS,aAAc,MAAO,SAAU,WACjDupE,UAAYzlF,OAAQA,EAAQkc,OAAQA,IAEtCy8C,QAAUmuB,UAASA,GACnBgkB,YAAc9jB,WAAY,WAAYh1E,OAAQA,GAC9C8nB,OAAS5d,OAAQA,EAAQ/Z,UAAa,aACtCs8F,oBAAsB3X,UAASA,GAC/B5kF,QAAU8P,OAAQA,EAAQ7P,UAAa,aACvC01E,SAAWiP,UAASA,GACpB8X,SACEp+F,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf8nB,OACErtB,SAAWq6E,UAASA,GACpBtmF,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf6sF,YAAc7sF,OAAQA,GACtB8sF,eAAiB9sF,OAAQA,GACzByzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCiY,uBAAyB/X,WAAY,YACrCvB,UAAYzlF,OAAQA,IAEtB+qG,gBAAkB/jB,WAAY,WAAYh1E,OAAQA,GAClDg5F,mBAAqBh5F,OAAQA,GAC7BgtF,QACEvyF,SAAWq6E,UAASA,GACpBz+E,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBwnB,GAAKxnB,OAAQA,GACb6K,GAAK7K,OAAQA,GACbyzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCmkB,QACEx+F,SAAWq6E,UAASA,GACpBtjF,MAAQ0Y,QAAS,UAAW,aAAc,WAAY,gBAAiB,gBAAiB,aAAc,WAAY,WAAY,YAAa,gBAC3IivF,WAAan5F,OAAQA,GACrBk5F,gBAAkBhvF,QAAS,aAAc,WAAY,QAAS4qE,UAASA,GACvErB,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCzqB,OAASngD,OAAQA,EAAQ/Z,UAAa,aACtCi4B,OAASpoB,OAAQA,GACjBrR,OAASqR,OAAQA,EAAQ7P,UAAa,aACtCsjF,UAAYzlF,OAAQA,IAEtBq6C,QACEojD,kBAAoB3W,UAASA,GAC7BvB,QAAS,4CACTE,UAAYzlF,OAAQA,IAEtBk6F,aACEgwB,WAAapjC,UAASA,GACtBqjC,UAAYrjC,UAASA,GACrBo+B,iBAAmBp+B,UAASA,GAC5Bq+B,iBAAmBr+B,UAASA,GAC5B98E,OAAS88E,UAASA,GAClBsjC,UACE39G,SAAWq6E,UAASA,GACpBujC,OAAS7wF,GAAKxnB,OAAQA,GAAU6K,GAAK7K,OAAQA,GAAU+kD,MAAQ/kD,OAAQA,GAAUyzE,UAAYzlF,OAAQA,IACrGsqH,cAAgBxjC,UAASA,GACzBrB,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCloB,aAAekoB,UAASA,GACxByjC,mBAAqBzjC,UAASA,GAC9BnoB,YAAcmoB,UAASA,GACvB+nC,sBAAwB/nC,UAASA,GACjCgoC,qBAAuBhoC,UAASA,GAChC0jC,cAAgBx4G,OAAQA,GACxBy4G,UAAY3jC,UAASA,GACrBrB,UAAYzlF,OAAQA,IAEtBi6F,QACE2hB,YAAcz5G,UAAa,YAAa6P,OAAQA,GAChD4+G,gBAAkB9pC,UAASA,GAC3B+pC,cACEpkH,SAAWq6E,UAASA,GACpBgqC,iBAAmB9+G,OAAQA,GAC3B++G,aAAe/+G,OAAQA,GACvBg/G,aAAeh/G,OAAQA,GACvBi/G,eAAiBnqC,UAASA,GAC1BoqC,kBAAoBpqC,UAASA,GAC7BxgE,WAAapK,QAAS,KAAM,KAAM,KAAM,OACxCi1G,YAAcj1G,QAAS,UAAW,aAClCupE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCrB,UAAYzlF,OAAQA,IAEtBw4F,cACE/rF,SAAWq6E,UAASA,GACpB60C,iBAAmB70C,UAASA,GAC5B80C,SAAW90C,UAASA,EAASE,WAAY,YACzC60C,SAAW/0C,UAASA,EAASE,WAAY,YACzC4U,UAAY5U,WAAY,YACxB80C,UAAYh1C,UAASA,EAASE,WAAY,YAC1C+0C,YAAcj1C,UAASA,EAASE,WAAY,YAC5Cg1C,YAAcl1C,UAASA,EAASE,WAAY,YAC5Ci1C,iBAAkB,4CAClBx2C,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCwP,OACE5vD,aAAe10B,OAAQA,GACvBmsF,qBAAuBnsF,OAAQA,EAAQ7P,UAAa,aACpDi8F,aAAeliF,OAAQA,EAAQ/Z,UAAa,aAC5CkG,OACEyB,QAAUoS,OAAQA,GAClBrS,YAAcqS,OAAQA,GACtBnS,WACED,QAAUoS,OAAQA,GAClBrS,YAAcqS,OAAQA,GACtBupE,UAAYzlF,OAAQA,EAAQkc,OAAQA,IAEtClS,OACEF,QAAUoS,OAAQA,GAClBrS,YAAcqS,OAAQA,GACtBupE,UAAYzlF,OAAQA,EAAQkc,OAAQA,IAEtCupE,UAAYzlF,OAAQA,EAAQkc,OAAQA,IAEtCmiF,OACE7kE,GAAKstD,UAASA,GACdjqE,GAAKiqE,UAASA,GACdrB,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCp5C,MACErlC,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBssF,MAAQpiF,OAAQA,GAChBrS,YAAcqS,OAAQA,GACtBqnB,aAAevxB,OAAQA,GACvBusF,aAAeriF,OAAQA,GACvBupE,UAAYzlF,OAAQA,EAAQkc,OAAQA,IAEtC2iC,OAAS3iC,OAAQA,EAAQlK,OAAQA,EAAQ7P,UAAa,aACtDw2D,QAAUmuB,UAASA,GACnB0L,MACE8L,MAAQpiF,OAAQA,GAChBzI,MAAQyI,OAAQA,GAChB2d,MAAQ7nB,OAAQA,GAChB3J,OAAS6T,OAAQA,GACjBupE,UAAYzlF,OAAQA,IAEtB/D,IAAMigB,OAAQA,EAAQlK,OAAQA,GAC9BwsF,OAAStiF,OAAQA,EAAQ/Z,UAAa,aACtC23B,OAAS5d,OAAQA,EAAQ/Z,UAAa,aACtCs8F,oBAAsB3X,UAASA,GAC/B4X,OAAS1sF,OAAQA,EAAQ7P,UAAa,aACtCw8F,MAAQ3sF,OAAQA,GAChB6lE,SAAWiP,UAASA,GACpB8X,SACEp+F,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf8nB,OACErtB,SAAWq6E,UAASA,GACpBtmF,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf6sF,YAAc7sF,OAAQA,GACtB8sF,eAAiB9sF,OAAQA,GACzByzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCiY,uBAAyB/X,WAAY,YACrCvB,UAAYzlF,OAAQA,IAEtBg/F,QACEvyF,SAAWq6E,UAASA,GACpBz+E,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBwnB,GAAKxnB,OAAQA,GACb6K,GAAK7K,OAAQA,GACbyzE,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCmY,OAAS/iF,QAAS,UAAW,SAAU,WAAY,MAAO,OAAQ,QAAS,gBAAiB,UAAW,MAAO,OAAQ,WAAY,eAAgB,SAAU,SAC5JgjF,iBACEC,cAAgBrY,UAASA,EAASzhF,MAAOA,GACzCmwC,cAAgBxjC,OAAQA,GACxBotF,cAAgBtY,UAASA,GACzBuY,oBAAsBvY,UAASA,GAC/BrB,UAAYzlF,OAAQA,IAEtB65B,MAAQ7nB,OAAQA,GAChBqqD,OAASngD,OAAQA,EAAQ/Z,UAAa,aACtCxB,OAASqR,OAAQA,EAAQ7P,UAAa,aACtCq3B,GAAKxnB,OAAQA,GACb6K,GAAK7K,OAAQA,GACbyzE,UAAYzlF,OAAQA,IAEtB63E,SACEprE,SAAWq6E,UAASA,GACpBixB,WACEE,uBAAyBjmG,OAAQA,GACjCkmG,gBAAkBlmG,OAAQA,GAC1BmmG,cAAgBnmG,OAAQA,GACxBomG,gBAAkBpmG,OAAQA,GAC1BqmG,SAAWrmG,OAAQA,GACnBsmG,cAAgBtmG,OAAQA,GACxByzE,UAAYzlF,OAAQA,IAEtBu4G,kBACEN,uBAAyBjmG,OAAQA,GACjCkmG,gBAAkBlmG,OAAQA,GAC1BmmG,cAAgBnmG,OAAQA,GACxBomG,gBAAkBpmG,OAAQA,GAC1BqmG,SAAWrmG,OAAQA,GACnBsmG,cAAgBtmG,OAAQA,GACxByzE,UAAYzlF,OAAQA,IAEtBw4G,WACEN,gBAAkBlmG,OAAQA,GAC1BmmG,cAAgBnmG,OAAQA,GACxBomG,gBAAkBpmG,OAAQA,GAC1BymG,cAAgBzmG,OAAQA,GACxBqmG,SAAWrmG,OAAQA,GACnByzE,UAAYzlF,OAAQA,IAEtB04G,uBACER,gBAAkBlmG,OAAQA,GAC1BmmG,cAAgBnmG,OAAQA,GACxBomG,gBAAkBpmG,OAAQA,GAC1BymG,cAAgBzmG,OAAQA,GACxBqmG,SAAWrmG,OAAQA,GACnByzE,UAAYzlF,OAAQA,IAEtB24G,aAAe3mG,OAAQA,GACvB4mG,aAAe5mG,OAAQA,GACvB8lE,QAAU57D,QAAS,YAAa,YAAa,wBAAyB,qBACtE28F,eACEpsG,SAAWq6E,UAASA,GACpBgyB,YAAc9mG,OAAQA,GACtB+mG,gBAAkB/mG,OAAQA,GAC1BgnG,kBAAoBlyB,UAASA,GAC7BpqC,KAAOoqC,UAASA,GAChBrB,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAEvCmyB,UAAYjnG,OAAQA,GACpBulG,kBAAoBzwB,UAASA,GAC7BrB,UAAYzlF,OAAQA,EAAQ8mF,UAASA,IAIvCtsC,YAAcssC,UAASA,GACvBvrB,YAAcurB,UAASA,GACvB53E,QAAUgN,OAAQA,GAClB5I,SACEiyE,SAAWwB,IAAKA,GAChBtB,UAAYzlF,OAAQA,IAEtBq6B,QAAUne,OAAQA,GAClBke,OAASle,OAAQA,GACjBupE,UAAYzlF,OAAQA,GAGtBZ,GAAWi7C,OAAOkrC,QAAUnmF,EAAWk3F,MACvCl3F,EAAWo5F,aAAayjC,iBAAmB78H,EAAWk3F,KAEtD,IAAIr5C,IACFq5C,OACE5vD,aAAc,EAAG,EAAG,GAAI,GACxBy3D,qBAAsB,EAAG,EAAG,GAAI,GAChC91F,OACEyB,QAAS,QAAS,WAClBD,YAAa,QAAS,WACtBE,WACED,QAAS,QAAS,WAClBD,YAAa,QAAS,YAExBG,OACEF,QAAS,QAAS,WAClBD,YAAa,QAAS,aAG1Bw0F,OACE7kE,GAAG,EACH3c,GAAG,GAEL6wB,MACErlC,OAAQ,QAAS,WACjBwxB,MAAO,GAAI,EAAG,IAAK,GACnBykE,MAAO,QAAS,UAAW,UAC3Bz0F,YAAa,QAAS,QACtB05B,aAAc,EAAG,EAAG,GAAI,GACxBg7D,aAAc,QAAS,YAGzB5lC,QAAQ,EACR8lC,oBAAoB,EAQpB5mB,SAAS,EACT+mB,SACEp+F,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBq5B,OACErtB,SAAS,EACTjM,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBo+F,YAAa,GAAI,EAAG,IAAK,GACzBC,eAAgB,EAAG,EAAG,GAAI,KAG9BE,QACEvyF,SAAS,EACTpE,MAAO,kBACPwxB,MAAO,GAAI,EAAG,GAAI,GAClBL,GAAI,EAAG,IAAK,GAAI,GAChB3c,GAAI,EAAG,IAAK,GAAI,IAElBoiF,OAAQ,UAAW,MAAO,SAAU,WAAY,UAAW,MAAO,SAAU,OAAQ,OAAQ,WAAY,gBACxGC,iBACEC,cAAc,EACd3pD,cAAe,EAAG,EAAG,GAAI,GACzB4pD,cAAc,GAEhBvlE,MAAO,GAAI,EAAG,IAAK,IAErB28D,OACEmU,QACE55F,IAAMtE,SAAS,EAAOm+F,aAAc,EAAG,EAAG,EAAG,MAC7Cz9F,QAAUV,SAAS,EAAOm+F,aAAc,EAAG,EAAG,EAAG,MACjD55F,MAAQvE,SAAS,EAAOm+F,aAAc,EAAG,EAAG,EAAG,OAEjDC,oBAAoB,EACpBxiG,OACEA,OAAQ,QAAS,WACjB0B,WAAY,QAAS,WACrBC,OAAQ,QAAS,WACjB63C,SAAU,OAAQ,KAAM,QAAQ,GAAM,GACtCv5C,SAAU,EAAG,EAAG,EAAG,MAErBq/F,QAAQ,EACRj6D,MACErlC,OAAQ,QAAS,WACjBwxB,MAAO,GAAI,EAAG,IAAK,GACnBykE,MAAO,QAAS,UAAW,UAC3Bz0F,YAAa,QAAS,QACtB05B,aAAc,EAAG,EAAG,GAAI,GACxBg7D,aAAc,QAAS,WACvBlgC,OAAQ,aAAc,MAAO,SAAU,WAEzC1F,QAAQ,EACRmyC,YAAa,IAAK,EAAG,EAAG,IACxBrM,oBAAoB,EACpB5mB,SAAS,EACT+mB,SACEp+F,KAAM,EAAG,EAAG,IAAK,GACjBC,KAAM,GAAI,EAAG,IAAK,GAClBq5B,OACErtB,SAAS,EACTjM,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBo+F,YAAa,GAAI,EAAG,IAAK,GACzBC,eAAgB,EAAG,EAAG,GAAI,KAG9BiM,gBAAiB,IAAK,EAAG,EAAG,IAC5BC,mBAAoB,GAAI,EAAG,IAAK,GAChChM,QACEvyF,SAAS,EACTpE,MAAO,kBACPwxB,MAAO,GAAI,EAAG,GAAI,GAClBL,GAAI,EAAG,IAAK,GAAI,GAChB3c,GAAI,EAAG,IAAK,GAAI,IAElBouF,QACEx+F,SAAS,EACTjJ,MAAO,UAAW,aAAc,WAAY,gBAAiB,gBAAiB,aAAc,WAAY,WAAY,YAAa,eACjI0nG,gBAAiB,aAAc,WAAY,QAC3CC,WAAY,GAAK,EAAG,EAAG,MAEzB/wE,OAAQ,EAAG,EAAG,GAAI,IAEpB6/D,QAGE42B,cACEpkH,SAAS,EACTqkH,iBAAkB,IAAK,GAAI,IAAK,GAChCC,aAAc,IAAK,GAAI,IAAK,GAC5BC,aAAc,IAAK,GAAI,IAAK,GAC5BC,eAAe,EACfC,kBAAkB,EAClB5qG,WAAY,KAAM,KAAM,KAAM,MAC9B6qG,YAAa,UAAW,cAG5Bj3B,aACEgwB,WAAW,EACXC,UAAU,EACVjF,iBAAiB,EACjBC,iBAAiB,EACjBn7G,OAAO,EACPogH,UACE39G,SAAS,EACT49G,OAAS7wF,GAAI,GAAI,EAAG,GAAI,GAAI3c,GAAI,GAAI,EAAG,GAAI,GAAIk6C,MAAO,IAAM,EAAG,GAAK,OACpEuzD,cAAc,GAEhB1rD,aAAa,EACb2rD,mBAAmB,EACnB5rD,YAAY,EACZkwD,sBAAsB,EACtBC,qBAAqB,EACrBtE,cAAe,IAAK,EAAG,IAAM,IAC7BC,UAAU,GAEZjyB,cACE/rF,SAAS,EACTkvH,iBAAiB,GAEnB9jD,SACEprE,SAAS,EACTsrG,WAEEE,uBAAwB,KAAO,KAAQ,EAAG,IAC1CC,gBAAiB,GAAK,EAAG,GAAI,KAC7BC,cAAe,GAAI,EAAG,IAAK,GAC3BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BC,SAAU,IAAM,EAAG,EAAG,KACtBC,cAAe,EAAG,EAAG,EAAG,MAE1BC,kBAEEN,uBAAwB,IAAK,KAAM,EAAG,GACtCC,gBAAiB,IAAM,EAAG,EAAG,MAC7BC,cAAe,GAAI,EAAG,IAAK,GAC3BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BC,SAAU,GAAK,EAAG,EAAG,KACrBC,cAAe,EAAG,EAAG,EAAG,MAE1BE,WACEN,gBAAiB,GAAK,EAAG,GAAI,KAC7BC,cAAe,IAAK,EAAG,IAAK,GAC5BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BK,cAAe,IAAK,EAAG,IAAK,GAC5BJ,SAAU,IAAM,EAAG,EAAG,MAExBK,uBACER,gBAAiB,GAAK,EAAG,GAAI,KAC7BC,cAAe,IAAK,EAAG,IAAK,GAC5BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BK,cAAe,IAAK,EAAG,IAAK,GAC5BJ,SAAU,IAAM,EAAG,EAAG,MAExBM,aAAc,GAAI,EAAG,IAAK,GAC1BC,aAAc,GAAK,IAAM,GAAK,KAC9B9gC,QAAS,YAAa,mBAAoB,YAAa,yBACvDmhC,UAAW,GAAK,IAAM,EAAG,MAG3BzqG,QACEU,QAAS,KAAM,OAInB1T,GAAQ4D,WAAaA,EACrB5D,EAAQyhD,iBAAmBA,GAIvB,SAASxhD,EAAQD,EAASM,GAa9B,QAAS02E,GAAuB9wE,GAAO,MAAOA,IAAOA,EAAI+wE,WAAa/wE,GAAQgxE,UAAWhxE,GAEzF,QAASixE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCAVhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI8iG,GAAiB,WAAe,QAASC,GAAc1/F,EAAK3B,GAAK,GAAIshG,MAAeC,GAAK,EAAUtzF,GAAK,EAAWuzF,EAAK1hG,MAAW,KAAM,IAAK,GAAiC2hG,GAA7B3yF,EAAKnN,EAAI+/F,OAAOriD,cAAmBkiD,GAAME,EAAK3yF,EAAG+B,QAAQuiD,QAAoBkuC,EAAKvgG,KAAK0gG,EAAGnjG,QAAY0B,GAAKshG,EAAKzhG,SAAWG,GAA3DuhG,GAAK,IAAoE,MAAO9tB,GAAOxlE,GAAK,EAAMuzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAMzyF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMuzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU3/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAI+/F,OAAOriD,WAAY1+C,QAAOgB,GAAQ,MAAO0/F,GAAc1/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBiwE,EAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBytD,EAAuCxkI,EAAoB,KAE3DykI,EAAwC/tD,EAAuB8tD,GAW/DE,EAAc,WAChB,QAASA,GAAYzlF,EAAM0jE,EAAYgiB,GACrC9tD,EAAgB/2E,KAAM4kI,GAEtB5kI,KAAKm/C,KAAOA,EACZn/C,KAAKu8G,aAAesG,EACpB7iH,KAAKw8G,eAAiBqoB,EACtB7kI,KAAK8kI,eAAiB,GAAIH,GAAsC,WAgPlE,MAxOAxtD,GAAaytD,IACXj7H,IAAK,aACL5E,MAAO,SAAoBlB,GACrBA,IACEA,EAAQ04G,eACVv8G,KAAKu8G,aAAe14G,EAAQ04G,cAE1B14G,EAAQ24G,iBACVx8G,KAAKw8G,eAAiB34G,EAAQ24G,oBAWpC7yG,IAAK,QACL5E,MAAO,SAAe6iH,EAAYmd,GAChC,GAAIC,GAAiB3+H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAGzF4+H,EAAWjlI,KAAK8kI,eAAeI,aAAallI,KAAKm/C,KAAMyoE,EAAYmd,EAGvE/kI,MAAKmlI,gBAAgBF,GAGrBjlI,KAAKolI,gBAAgBH,EAgBrB,KAbA,GAAInxG,GAAY,IACZuxG,EAAiB,EACjBnoB,EAAa,EACb/rG,EAAgBlM,KAAKJ,IAAI,IAAMI,KAAKL,IAAI,GAAK5E,KAAKm/C,KAAKw7C,YAAYr0F,OAAQ,MAC3Eg/H,EAAqB,EAErBC,EAAY,IACZC,EAAe,EACfC,EAAQ,EACRC,EAAQ,EACRC,EAAU,EACVC,EAAgB,EAEbL,EAAYzxG,GAA0B3iB,EAAb+rG,GAA4B,CAC1DA,GAAc,CAEd,IAAI2oB,GAAyB7lI,KAAK8lI,sBAAsBd,GAEpDe,EAA0Bl+B,EAAeg+B,EAAwB,EASrE,KAPAL,EAAeO,EAAwB,GACvCR,EAAYQ,EAAwB,GACpCN,EAAQM,EAAwB,GAChCL,EAAQK,EAAwB,GAEhCJ,EAAUJ,EACVK,EAAgB,EACTD,EAAUN,GAAkCC,EAAhBM,GAAoC,CACrEA,GAAiB,EACjB5lI,KAAKgmI,UAAUR,EAAcC,EAAOC,EAEpC,IAAIO,GAAcjmI,KAAKkmI,WAAWV,GAE9BW,EAAet+B,EAAeo+B,EAAa,EAE/CN,GAAUQ,EAAa,GACvBV,EAAQU,EAAa,GACrBT,EAAQS,EAAa,QAW3Bx8H,IAAK,wBACL5E,MAAO,SAA+BigI,GAQpC,IAAK,GAPDpd,GAAa5nH,KAAKm/C,KAAKw7C,YACvBD,EAAQ16F,KAAKm/C,KAAKu7C,MAClB6qC,EAAY,EACZa,EAAkBxe,EAAW,GAC7Bye,EAAY,EACZC,EAAY,EAEPC,EAAU,EAAGA,EAAU3e,EAAWthH,OAAQigI,IAAW,CAC5D,GAAI/lI,GAAIonH,EAAW2e,EAEnB,IAAI7rC,EAAMl6F,GAAGumG,sBAAuB,GAASrM,EAAMl6F,GAAG6+F,aAAc,GAAQ2lC,KAAmB,GAAQtqC,EAAMl6F,GAAGqD,QAAQ4+F,MAAM7kE,KAAM,GAAQ88D,EAAMl6F,GAAGqD,QAAQ4+F,MAAMxhF,KAAM,EAAM,CAC7K,GAAIulH,GAAcxmI,KAAKkmI,WAAW1lI,GAE9BimI,EAAe5+B,EAAe2+B,EAAa,GAE3Cb,EAAUc,EAAa,GACvBhB,EAAQgB,EAAa,GACrBf,EAAQe,EAAa,EAETd,GAAZJ,IACFA,EAAYI,EACZS,EAAkB5lI,EAClB6lI,EAAYZ,EACZa,EAAYZ,IAKlB,OAAQU,EAAiBb,EAAWc,EAAWC,MAUjD38H,IAAK,aACL5E,MAAO,SAAoBvE,GAQzB,IAAK,GAPDonH,GAAa5nH,KAAKm/C,KAAKw7C,YACvBD,EAAQ16F,KAAKm/C,KAAKu7C,MAElBgsC,EAAMhsC,EAAMl6F,GAAGo9B,EACf+oG,EAAMjsC,EAAMl6F,GAAGygB,EACfwkH,EAAQ,EACRC,EAAQ,EACHkB,EAAO,EAAGA,EAAOhf,EAAWthH,OAAQsgI,IAAQ,CACnD,GAAIngI,GAAImhH,EAAWgf,EACnB,IAAIngI,IAAMjG,EAAG,CACX,GAAIqmI,GAAMnsC,EAAMj0F,GAAGm3B,EACfkpG,EAAMpsC,EAAMj0F,GAAGwa,EACf8lH,EAAc,EAAM9hI,KAAKu0C,KAAKv0C,KAAK8U,IAAI2sH,EAAMG,EAAK,GAAK5hI,KAAK8U,IAAI4sH,EAAMG,EAAK,GAC/ErB,IAASzlI,KAAKgnI,SAASxmI,GAAGiG,IAAMigI,EAAMG,EAAM7mI,KAAKinI,SAASzmI,GAAGiG,IAAMigI,EAAMG,GAAOE,GAChFrB,GAAS1lI,KAAKgnI,SAASxmI,GAAGiG,IAAMkgI,EAAMG,EAAM9mI,KAAKinI,SAASzmI,GAAGiG,IAAMkgI,EAAMG,GAAOC,IAIpF,GAAIpB,GAAU1gI,KAAKu0C,KAAKv0C,KAAK8U,IAAI0rH,EAAO,GAAKxgI,KAAK8U,IAAI2rH,EAAO,GAC7D,QAAQC,EAASF,EAAOC,MAY1B/7H,IAAK,YACL5E,MAAO,SAAmBvE,EAAGilI,EAAOC,GASlC,IAAK,GARD9d,GAAa5nH,KAAKm/C,KAAKw7C,YACvBD,EAAQ16F,KAAKm/C,KAAKu7C,MAClBwsC,EAAU,EACVC,EAAW,EACXC,EAAU,EAEVV,EAAMhsC,EAAMl6F,GAAGo9B,EACf+oG,EAAMjsC,EAAMl6F,GAAGygB,EACV2lH,EAAO,EAAGA,EAAOhf,EAAWthH,OAAQsgI,IAAQ,CACnD,GAAIngI,GAAImhH,EAAWgf,EACnB,IAAIngI,IAAMjG,EAAG,CACX,GAAIqmI,GAAMnsC,EAAMj0F,GAAGm3B,EACfkpG,EAAMpsC,EAAMj0F,GAAGwa,EACf8lH,EAAc,EAAM9hI,KAAK8U,IAAI9U,KAAK8U,IAAI2sH,EAAMG,EAAK,GAAK5hI,KAAK8U,IAAI4sH,EAAMG,EAAK,GAAI,IAClFI,IAAWlnI,KAAKgnI,SAASxmI,GAAGiG,IAAM,EAAIzG,KAAKinI,SAASzmI,GAAGiG,GAAKxB,KAAK8U,IAAI4sH,EAAMG,EAAK,GAAKC,GACrFI,GAAYnnI,KAAKgnI,SAASxmI,GAAGiG,IAAMzG,KAAKinI,SAASzmI,GAAGiG,IAAMigI,EAAMG,IAAQF,EAAMG,GAAOC,GACrFK,GAAWpnI,KAAKgnI,SAASxmI,GAAGiG,IAAM,EAAIzG,KAAKinI,SAASzmI,GAAGiG,GAAKxB,KAAK8U,IAAI2sH,EAAMG,EAAK,GAAKE,IAIzF,GAAIrtC,GAAIwtC,EACJvyF,EAAIwyF,EACJvyF,EAAI6wF,EACJrxG,EAAIgzG,EACJhjH,EAAIshH,EAGJ57F,GAAM8K,EAAI8kD,EAAIt1E,EAAIuwB,IAAMA,EAAI+kD,EAAItlE,EAAIugB,GACpC9K,IAAO8K,EAAI7K,EAAK8K,GAAK8kD,CAGzBgB,GAAMl6F,GAAGo9B,GAAKiM,EACd6wD,EAAMl6F,GAAGygB,GAAK6oB,KAShBngC,IAAK,kBACL5E,MAAO,SAAyBkgI,GAC9B,GAAIrd,GAAa5nH,KAAKm/C,KAAKw7C,YACvBkoB,EAAa7iH,KAAKu8G,YAEtBv8G,MAAKinI,WACL,KAAK,GAAIxgI,GAAI,EAAGA,EAAImhH,EAAWthH,OAAQG,IAAK,CAC1CzG,KAAKinI,SAASrf,EAAWnhH,MACzB,KAAK,GAAIgK,GAAI,EAAGA,EAAIm3G,EAAWthH,OAAQmK,IACrCzQ,KAAKinI,SAASrf,EAAWnhH,IAAImhH,EAAWn3G,IAAMoyG,EAAaoiB,EAASrd,EAAWnhH,IAAImhH,EAAWn3G,QAWpG9G,IAAK,kBACL5E,MAAO,SAAyBkgI,GAC9B,GAAIrd,GAAa5nH,KAAKm/C,KAAKw7C,YACvBkqC,EAAe7kI,KAAKw8G,cAExBx8G,MAAKgnI,WACL,KAAK,GAAIvgI,GAAI,EAAGA,EAAImhH,EAAWthH,OAAQG,IAAK,CAC1CzG,KAAKgnI,SAASpf,EAAWnhH,MACzB,KAAK,GAAIgK,GAAI,EAAGA,EAAIm3G,EAAWthH,OAAQmK,IACrCzQ,KAAKgnI,SAASpf,EAAWnhH,IAAImhH,EAAWn3G,IAAMo0H,EAAe5/H,KAAK8U,IAAIkrH,EAASrd,EAAWnhH,IAAImhH,EAAWn3G,IAAK,SAM/Gm0H,IAGThlI,GAAQ,WAAaglI,EACrB/kI,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAcrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBowD,EAAgB,WAClB,QAASA,KACPtwD,EAAgB/2E,KAAMqnI,GA6CxB,MA1CAlwD,GAAakwD,IACX19H,IAAK,eACL5E,MAAO,SAAsBo6C,EAAMyoE,EAAYmd,GAK7C,IAAK,GAJDE,MACArqC,EAAQz7C,EAAKy7C,MAGRn0F,EAAI,EAAGA,EAAImhH,EAAWthH,OAAQG,IAAK,CAC1Cw+H,EAASrd,EAAWnhH,OACpBw+H,EAASrd,EAAWnhH,MACpB,KAAK,GAAIgK,GAAI,EAAGA,EAAIm3G,EAAWthH,OAAQmK,IACrCw0H,EAASrd,EAAWnhH,IAAImhH,EAAWn3G,IAAMhK,GAAKgK,EAAI,EAAI,IACtDw0H,EAASrd,EAAWnhH,IAAImhH,EAAWn3G,IAAMhK,GAAKgK,EAAI,EAAI,IAK1D,IAAK,GAAIhK,GAAI,EAAGA,EAAIs+H,EAAWz+H,OAAQG,IAAK,CAC1C,GAAI06F,GAAOvG,EAAMmqC,EAAWt+H,GAExB06F,GAAK8P,aAAc,GAAkC1qG,SAA1B0+H,EAAS9jC,EAAKwD,SAAiDp+F,SAAxB0+H,EAAS9jC,EAAKuD,QAClFugC,EAAS9jC,EAAKwD,QAAQxD,EAAKuD,MAAQ,EACnCugC,EAAS9jC,EAAKuD,MAAMvD,EAAKwD,QAAU,GAOvC,IAAK,GAHDwb,GAAYyH,EAAWthH,OAGlBkK,EAAI,EAAO2vG,EAAJ3vG,EAAeA,IAC7B,IAAK,GAAI/J,GAAI,EAAO05G,EAAY,EAAhB15G,EAAmBA,IACjC,IAAK,GAAIgK,GAAIhK,EAAI,EAAO05G,EAAJ1vG,EAAeA,IACjCw0H,EAASrd,EAAWnhH,IAAImhH,EAAWn3G,IAAMxL,KAAKL,IAAIqgI,EAASrd,EAAWnhH,IAAImhH,EAAWn3G,IAAKw0H,EAASrd,EAAWnhH,IAAImhH,EAAWp3G,IAAMy0H,EAASrd,EAAWp3G,IAAIo3G,EAAWn3G,KACtKw0H,EAASrd,EAAWn3G,IAAIm3G,EAAWnhH,IAAMw+H,EAASrd,EAAWnhH,IAAImhH,EAAWn3G,GAKlF,OAAOw0H,OAIJoC,IAGTznI,GAAQ,WAAaynI,EACrBxnI,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAOmB,mBAA7B0nI,4BAKTA,yBAAyBr0H,UAAUw0E,OAAS,SAAU7pD,EAAG3c,EAAG7U,GAC1DpM,KAAKmyC,YACLnyC,KAAK61C,IAAIjY,EAAG3c,EAAG7U,EAAG,EAAG,EAAInH,KAAK6wC,IAAI,GAClC91C,KAAKwyC,aASP80F,yBAAyBr0H,UAAUs0H,OAAS,SAAU3pG,EAAG3c,EAAG7U,GAC1DpM,KAAKmyC,YACLnyC,KAAK0+B,KAAKd,EAAIxxB,EAAG6U,EAAI7U,EAAO,EAAJA,EAAW,EAAJA,GAC/BpM,KAAKwyC,aASP80F,yBAAyBr0H,UAAU6lC,SAAW,SAAUlb,EAAG3c,EAAG7U,GAE5DpM,KAAKmyC,YAGL/lC,GAAK,KACL6U,GAAK,KAAQ7U,CAEb,IAAIuB,GAAQ,EAAJvB,EACJo7H,EAAK75H,EAAI,EACT85H,EAAKxiI,KAAKu0C,KAAK,GAAK,EAAI7rC,EACxBD,EAAIzI,KAAKu0C,KAAK7rC,EAAIA,EAAI65H,EAAKA,EAE/BxnI,MAAKoyC,OAAOxU,EAAG3c,GAAKvT,EAAI+5H,IACxBznI,KAAKqyC,OAAOzU,EAAI4pG,EAAIvmH,EAAIwmH,GACxBznI,KAAKqyC,OAAOzU,EAAI4pG,EAAIvmH,EAAIwmH,GACxBznI,KAAKqyC,OAAOzU,EAAG3c,GAAKvT,EAAI+5H,IACxBznI,KAAKwyC,aASP80F,yBAAyBr0H,UAAUy0H,aAAe,SAAU9pG,EAAG3c,EAAG7U,GAEhEpM,KAAKmyC,YAGL/lC,GAAK,KACL6U,GAAK,KAAQ7U,CAEb,IAAIuB,GAAQ,EAAJvB,EACJo7H,EAAK75H,EAAI,EACT85H,EAAKxiI,KAAKu0C,KAAK,GAAK,EAAI7rC,EACxBD,EAAIzI,KAAKu0C,KAAK7rC,EAAIA,EAAI65H,EAAKA,EAE/BxnI,MAAKoyC,OAAOxU,EAAG3c,GAAKvT,EAAI+5H,IACxBznI,KAAKqyC,OAAOzU,EAAI4pG,EAAIvmH,EAAIwmH,GACxBznI,KAAKqyC,OAAOzU,EAAI4pG,EAAIvmH,EAAIwmH,GACxBznI,KAAKqyC,OAAOzU,EAAG3c,GAAKvT,EAAI+5H,IACxBznI,KAAKwyC,aASP80F,yBAAyBr0H,UAAU00H,KAAO,SAAU/pG,EAAG3c,EAAG7U,GAExDpM,KAAKmyC,YAGL/lC,GAAK,IACL6U,GAAK,GAAM7U,CAEX,KAAK,GAAI0vB,GAAI,EAAO,GAAJA,EAAQA,IAAK,CAC3B,GAAI8Z,GAAS9Z,EAAI,IAAM,EAAQ,IAAJ1vB,EAAc,GAAJA,CACrCpM,MAAKqyC,OAAOzU,EAAIgY,EAAS3wC,KAAKokC,IAAQ,EAAJvN,EAAQ72B,KAAK6wC,GAAK,IAAK70B,EAAI20B,EAAS3wC,KAAKukC,IAAQ,EAAJ1N,EAAQ72B,KAAK6wC,GAAK,KAGnG91C,KAAKwyC,aASP80F,yBAAyBr0H,UAAU20H,QAAU,SAAUhqG,EAAG3c,EAAG7U,GAE3DpM,KAAKmyC,YAELnyC,KAAKqyC,OAAOzU,EAAG3c,EAAI7U,GACnBpM,KAAKqyC,OAAOzU,EAAIxxB,EAAG6U,GACnBjhB,KAAKqyC,OAAOzU,EAAG3c,EAAI7U,GACnBpM,KAAKqyC,OAAOzU,EAAIxxB,EAAG6U,GAEnBjhB,KAAKwyC,aAMP80F,yBAAyBr0H,UAAUi4F,UAAY,SAAUttE,EAAG3c,EAAG6C,EAAGpW,EAAGtB,GACnE,GAAIy7H,GAAM5iI,KAAK6wC,GAAK,GACJ,GAAZhyB,EAAI,EAAI1X,IACVA,EAAI0X,EAAI,GAEM,EAAZpW,EAAI,EAAItB,IACVA,EAAIsB,EAAI,GAEV1N,KAAKmyC,YACLnyC,KAAKoyC,OAAOxU,EAAIxxB,EAAG6U,GACnBjhB,KAAKqyC,OAAOzU,EAAI9Z,EAAI1X,EAAG6U,GACvBjhB,KAAK61C,IAAIjY,EAAI9Z,EAAI1X,EAAG6U,EAAI7U,EAAGA,EAAS,IAANy7H,EAAiB,IAANA,GAAW,GACpD7nI,KAAKqyC,OAAOzU,EAAI9Z,EAAG7C,EAAIvT,EAAItB,GAC3BpM,KAAK61C,IAAIjY,EAAI9Z,EAAI1X,EAAG6U,EAAIvT,EAAItB,EAAGA,EAAG,EAAS,GAANy7H,GAAU,GAC/C7nI,KAAKqyC,OAAOzU,EAAIxxB,EAAG6U,EAAIvT,GACvB1N,KAAK61C,IAAIjY,EAAIxxB,EAAG6U,EAAIvT,EAAItB,EAAGA,EAAS,GAANy7H,EAAgB,IAANA,GAAW,GACnD7nI,KAAKqyC,OAAOzU,EAAG3c,EAAI7U,GACnBpM,KAAK61C,IAAIjY,EAAIxxB,EAAG6U,EAAI7U,EAAGA,EAAS,IAANy7H,EAAiB,IAANA,GAAW,GAChD7nI,KAAKwyC,aAMP80F,yBAAyBr0H,UAAUg7F,QAAU,SAAUrwE,EAAG3c,EAAG6C,EAAGpW,GAC9D,GAAIo6H,GAAQ,SACRC,EAAKjkH,EAAI,EAAIgkH,EAEjBE,EAAKt6H,EAAI,EAAIo6H,EAEbG,EAAKrqG,EAAI9Z,EAETokH,EAAKjnH,EAAIvT,EAETy6H,EAAKvqG,EAAI9Z,EAAI,EAEbskH,EAAKnnH,EAAIvT,EAAI,CAEb1N,MAAKmyC,YACLnyC,KAAKoyC,OAAOxU,EAAGwqG,GACfpoI,KAAK4zG,cAAch2E,EAAGwqG,EAAKJ,EAAIG,EAAKJ,EAAI9mH,EAAGknH,EAAIlnH,GAC/CjhB,KAAK4zG,cAAcu0B,EAAKJ,EAAI9mH,EAAGgnH,EAAIG,EAAKJ,EAAIC,EAAIG,GAChDpoI,KAAK4zG,cAAcq0B,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACjDloI,KAAK4zG,cAAcu0B,EAAKJ,EAAIG,EAAItqG,EAAGwqG,EAAKJ,EAAIpqG,EAAGwqG,GAC/CpoI,KAAKwyC,aAMP80F,yBAAyBr0H,UAAUo6F,SAAW,SAAUzvE,EAAG3c,EAAG6C,EAAGpW,GAC/D,GAAI+B,GAAI,EAAI,EACR44H,EAAWvkH,EACXwkH,EAAW56H,EAAI+B,EAEfq4H,EAAQ,SACRC,EAAKM,EAAW,EAAIP,EAExBE,EAAKM,EAAW,EAAIR,EAEpBG,EAAKrqG,EAAIyqG,EAETH,EAAKjnH,EAAIqnH,EAETH,EAAKvqG,EAAIyqG,EAAW,EAEpBD,EAAKnnH,EAAIqnH,EAAW,EAEpBC,EAAMtnH,GAAKvT,EAAI46H,EAAW,GAE1BE,EAAMvnH,EAAIvT,CAEV1N,MAAKmyC,YACLnyC,KAAKoyC,OAAO61F,EAAIG,GAEhBpoI,KAAK4zG,cAAcq0B,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACjDloI,KAAK4zG,cAAcu0B,EAAKJ,EAAIG,EAAItqG,EAAGwqG,EAAKJ,EAAIpqG,EAAGwqG,GAE/CpoI,KAAK4zG,cAAch2E,EAAGwqG,EAAKJ,EAAIG,EAAKJ,EAAI9mH,EAAGknH,EAAIlnH,GAC/CjhB,KAAK4zG,cAAcu0B,EAAKJ,EAAI9mH,EAAGgnH,EAAIG,EAAKJ,EAAIC,EAAIG,GAEhDpoI,KAAKqyC,OAAO41F,EAAIM,GAEhBvoI,KAAK4zG,cAAcq0B,EAAIM,EAAMP,EAAIG,EAAKJ,EAAIS,EAAKL,EAAIK,GACnDxoI,KAAK4zG,cAAcu0B,EAAKJ,EAAIS,EAAK5qG,EAAG2qG,EAAMP,EAAIpqG,EAAG2qG,GAEjDvoI,KAAKqyC,OAAOzU,EAAGwqG,IAMjBd,yBAAyBr0H,UAAUqlG,MAAQ,SAAU16E,EAAG3c,EAAGwpC,EAAOnkD,GAEhE,GAAImiI,GAAK7qG,EAAIt3B,EAASrB,KAAKukC,IAAIihB,GAC3Bi+E,EAAKznH,EAAI3a,EAASrB,KAAKokC,IAAIohB,GAG3B0tD,EAAKv6E,EAAa,GAATt3B,EAAerB,KAAKukC,IAAIihB,GACjC2tD,EAAKn3F,EAAa,GAAT3a,EAAerB,KAAKokC,IAAIohB,GAGjCk+E,EAAKF,EAAKniI,EAAS,EAAIrB,KAAKukC,IAAIihB,EAAQ,GAAMxlD,KAAK6wC,IACnD8yF,EAAKF,EAAKpiI,EAAS,EAAIrB,KAAKokC,IAAIohB,EAAQ,GAAMxlD,KAAK6wC,IAGnD+yF,EAAKJ,EAAKniI,EAAS,EAAIrB,KAAKukC,IAAIihB,EAAQ,GAAMxlD,KAAK6wC,IACnDgzF,EAAKJ,EAAKpiI,EAAS,EAAIrB,KAAKokC,IAAIohB,EAAQ,GAAMxlD,KAAK6wC,GAEvD91C,MAAKmyC,YACLnyC,KAAKoyC,OAAOxU,EAAG3c,GACfjhB,KAAKqyC,OAAOs2F,EAAIC,GAChB5oI,KAAKqyC,OAAO8lE,EAAIC,GAChBp4G,KAAKqyC,OAAOw2F,EAAIC,GAChB9oI,KAAKwyC,aASP80F,yBAAyBr0H,UAAUwjG,WAAa,SAAU74E,EAAG3c,EAAG8yF,EAAIC,EAAIqC,GACtEr2G,KAAKmyC,YACLnyC,KAAKoyC,OAAOxU,EAAG3c,EAYf,KAVA,GAAI8nH,GAAgB1yB,EAAQ/vG,OACxBujC,EAAKkqE,EAAKn2E,EACVkM,EAAKkqE,EAAK/yF,EACV+nH,EAAQl/F,EAAKD,EACbo/F,EAAgBhkI,KAAKu0C,KAAK3P,EAAKA,EAAKC,EAAKA,GACzCo/F,EAAe,EACfltD,GAAO,EACPt1C,EAAQ,EACRyiG,EAAa9yB,EAAQ,GAElB4yB,GAAiB,IACtBE,EAAa9yB,EAAQ6yB,IAAiBH,GAClCI,EAAaF,IACfE,EAAaF,GAGfviG,EAAQzhC,KAAKu0C,KAAK2vF,EAAaA,GAAc,EAAIH,EAAQA,IACzDtiG,EAAa,EAALmD,GAAUnD,EAAQA,EAC1B9I,GAAK8I,EACLzlB,GAAK+nH,EAAQtiG,EAETs1C,KAAS,EACXh8E,KAAKqyC,OAAOzU,EAAG3c,GAEfjhB,KAAKoyC,OAAOxU,EAAG3c,GAGjBgoH,GAAiBE,EACjBntD,GAAQA,KAOV,SAASn8E,EAAQD,GAiBrB,QAASwpI,GAASpxH,GAEhB,MADA0hC,GAAM1hC,EACCqxH,IAkDT,QAAS35C,KACPtmF,EAAQ,EACR3I,EAAIi5C,EAAIrpB,OAAO,GAQjB,QAAS/Y,KACPlO,IACA3I,EAAIi5C,EAAIrpB,OAAOjnB,GAOjB,QAASkgI,KACP,MAAO5vF,GAAIrpB,OAAOjnB,EAAQ,GAS5B,QAASmgI,GAAe9oI,GACtB,MAAO+oI,GAAkB35H,KAAKpP,GAShC,QAASmxD,GAAM1rD,EAAGC,GAKhB,GAJKD,IACHA,MAGEC,EACF,IAAK,GAAIqR,KAAQrR,GACXA,EAAEH,eAAewR,KACnBtR,EAAEsR,GAAQrR,EAAEqR,GAIlB,OAAOtR,GAeT,QAASujI,GAAS3jI,EAAKyzE,EAAMx0E,GAG3B,IAFA,GAAIkK,GAAOsqE,EAAKtwE,MAAM,KAClB87C,EAAIj/C,EACDmJ,EAAK3I,QAAQ,CAClB,GAAIqD,GAAMsF,EAAKkuB,OACXluB,GAAK3I,QAEFy+C,EAAEp7C,KACLo7C,EAAEp7C,OAEJo7C,EAAIA,EAAEp7C,IAGNo7C,EAAEp7C,GAAO5E,GAWf,QAASi7H,GAAQvkF,EAAO7f,GAOtB,IANA,GAAIn1B,GAAGiB,EACH61D,EAAU,KAGVmsE,GAAUjuF,GACV/7C,EAAO+7C,EACJ/7C,EAAK6L,QACVm+H,EAAOliI,KAAK9H,EAAK6L,QACjB7L,EAAOA,EAAK6L,MAId,IAAI7L,EAAKg7F,MACP,IAAKj0F,EAAI,EAAGiB,EAAMhI,EAAKg7F,MAAMp0F,OAAYoB,EAAJjB,EAASA,IAC5C,GAAIm1B,EAAKv7B,KAAOX,EAAKg7F,MAAMj0F,GAAGpG,GAAI,CAChCk9D,EAAU79D,EAAKg7F,MAAMj0F,EACrB,OAiBN,IAZK82D,IAEHA,GACEl9D,GAAIu7B,EAAKv7B,IAEPo7C,EAAM7f,OAER2hC,EAAQosE,KAAO/3E,EAAM2L,EAAQosE,KAAMluF,EAAM7f,QAKxCn1B,EAAIijI,EAAOpjI,OAAS,EAAGG,GAAK,EAAGA,IAAK,CACvC,GAAI4F,GAAIq9H,EAAOjjI,EAEV4F,GAAEquF,QACLruF,EAAEquF,UAE6B,KAA7BruF,EAAEquF,MAAMnzF,QAAQg2D,IAClBlxD,EAAEquF,MAAMlzF,KAAK+1D,GAKb3hC,EAAK+tG,OACPpsE,EAAQosE,KAAO/3E,EAAM2L,EAAQosE,KAAM/tG,EAAK+tG,OAS5C,QAAS1J,GAAQxkF,EAAO0lD,GAKtB,GAJK1lD,EAAMm/C,QACTn/C,EAAMm/C,UAERn/C,EAAMm/C,MAAMpzF,KAAK25F,GACb1lD,EAAM0lD,KAAM,CACd,GAAIwoC,GAAO/3E,KAAUnW,EAAM0lD,KAC3BA,GAAKwoC,KAAO/3E,EAAM+3E,EAAMxoC,EAAKwoC,OAajC,QAASjuC,GAAWjgD,EAAOrmC,EAAMD,EAAIvN,EAAM+hI,GACzC,GAAIxoC,IACF/rF,KAAMA,EACND,GAAIA,EACJvN,KAAMA,EAQR,OALI6zC,GAAM0lD,OACRA,EAAKwoC,KAAO/3E,KAAUnW,EAAM0lD,OAE9BA,EAAKwoC,KAAO/3E,EAAMuvC,EAAKwoC,SAAYA,GAE5BxoC,EAOT,QAASyoC,KAKP,IAJAC,EAAYC,EAAUC,KACtB9vH,EAAQ,GAGK,MAANxZ,GAAmB,MAANA,GAAoB,OAANA,GAAoB,OAANA,GAE9C6W,GAGF,GAAG,CACD,GAAI0yH,IAAY,CAGhB,IAAU,MAANvpI,EAAW,CAGb,IADA,GAAIgG,GAAI2C,EAAQ,EACS,MAAlBswC,EAAIrpB,OAAO5pB,IAAgC,MAAlBizC,EAAIrpB,OAAO5pB,IACzCA,GAEF,IAAsB,OAAlBizC,EAAIrpB,OAAO5pB,IAAiC,KAAlBizC,EAAIrpB,OAAO5pB,GAAW,CAElD,KAAY,IAALhG,GAAgB,MAALA,GAChB6W,GAEF0yH,IAAY,GAGhB,GAAU,MAANvpI,GAA+B,MAAlB6oI,IAAuB,CAEtC,KAAY,IAAL7oI,GAAgB,MAALA,GAChB6W,GAEF0yH,IAAY,EAEd,GAAU,MAANvpI,GAA+B,MAAlB6oI,IAAuB,CAEtC,KAAY,IAAL7oI,GAAS,CACd,GAAU,MAANA,GAA+B,MAAlB6oI,IAAuB,CAEtChyH,IACAA,GACA,OAEAA,IAGJ0yH,GAAY,EAId,KAAa,MAANvpI,GAAmB,MAANA,GAAoB,OAANA,GAAoB,OAANA,GAE9C6W,UAEK0yH,EAGT,IAAU,KAANvpI,EAGF,YADAopI,EAAYC,EAAUG,UAKxB,IAAIC,GAAKzpI,EAAI6oI,GACb,IAAIa,EAAWD,GAKb,MAJAL,GAAYC,EAAUG,UACtBhwH,EAAQiwH,EACR5yH,QACAA,IAKF,IAAI6yH,EAAW1pI,GAIb,MAHAopI,GAAYC,EAAUG,UACtBhwH,EAAQxZ,MACR6W,IAMF,IAAIiyH,EAAe9oI,IAAY,MAANA,EAAW,CAIlC,IAHAwZ,GAASxZ,EACT6W,IAEOiyH,EAAe9oI,IACpBwZ,GAASxZ,EACT6W,GAUF,OARc,UAAV2C,EACFA,GAAQ,EACW,SAAVA,EACPA,GAAQ,EACExU,MAAMpB,OAAO4V,MACrBA,EAAQ5V,OAAO4V,SAErB4vH,EAAYC,EAAUM,YAKxB,GAAU,MAAN3pI,EAAW,CAEb,IADA6W,IACY,IAAL7W,IAAiB,KAALA,GAAkB,MAANA,GAA+B,MAAlB6oI,MAC1CrvH,GAASxZ,EACC,MAANA,GAEF6W,IAEFA,GAEF,IAAS,KAAL7W,EACF,KAAM4pI,GAAe,2BAIvB,OAFA/yH,UACAuyH,EAAYC,EAAUM,YAMxB,IADAP,EAAYC,EAAUQ,QACV,IAAL7pI,GACLwZ,GAASxZ,EACT6W,GAEF,MAAM,IAAI+sB,aAAY,yBAA2BkmG,EAAKtwH,EAAO,IAAM,KAOrE,QAASovH,KACP,GAAI5tF,KAwBJ,IAtBAi0C,IACAk6C,IAGc,WAAV3vH,IACFwhC,EAAMloC,QAAS,EACfq2H,MAIY,UAAV3vH,GAA+B,YAAVA,KACvBwhC,EAAM7zC,KAAOqS,EACb2vH,KAIEC,IAAcC,EAAUM,aAC1B3uF,EAAMp7C,GAAK4Z,EACX2vH,KAIW,KAAT3vH,EACF,KAAMowH,GAAe,2BAQvB,IANAT,IAGAY,EAAgB/uF,GAGH,KAATxhC,EACF,KAAMowH,GAAe,2BAKvB,IAHAT,IAGc,KAAV3vH,EACF,KAAMowH,GAAe,uBASvB,OAPAT,WAGOnuF,GAAM7f,WACN6f,GAAM0lD,WACN1lD,GAAMA,MAENA,EAOT,QAAS+uF,GAAgB/uF,GACvB,KAAiB,KAAVxhC,GAAyB,KAATA,GACrBwwH,EAAehvF,GACD,MAAVxhC,GACF2vH,IAWN,QAASa,GAAehvF,GAEtB,GAAIivF,GAAWC,EAAclvF,EAC7B,IAAIivF,EAIF,WAFAE,GAAUnvF,EAAOivF,EAMnB,IAAIf,GAAOkB,EAAwBpvF,EACnC,KAAIkuF,EAAJ,CAKA,GAAIE,GAAaC,EAAUM,WACzB,KAAMC,GAAe,sBAEvB,IAAIhqI,GAAK4Z,CAGT,IAFA2vH,IAEc,MAAV3vH,EAAe,CAGjB,GADA2vH,IACIC,GAAaC,EAAUM,WACzB,KAAMC,GAAe,sBAEvB5uF,GAAMp7C,GAAM4Z,EACZ2vH,QAGEkB,GAAmBrvF,EAAOp7C,IAShC,QAASsqI,GAAclvF,GACrB,GAAIivF,GAAW,IAgBf,IAbc,aAAVzwH,IACFywH,KACAA,EAAS9iI,KAAO,WAChBgiI,IAGIC,IAAcC,EAAUM,aAC1BM,EAASrqI,GAAK4Z,EACd2vH,MAKU,MAAV3vH,EAAe,CAejB,GAdA2vH,IAEKc,IACHA,MAEFA,EAASn/H,OAASkwC,EAClBivF,EAAS9uG,KAAO6f,EAAM7f,KACtB8uG,EAASvpC,KAAO1lD,EAAM0lD,KACtBupC,EAASjvF,MAAQA,EAAMA,MAGvB+uF,EAAgBE,GAGH,KAATzwH,EACF,KAAMowH,GAAe,2BAEvBT,WAGOc,GAAS9uG,WACT8uG,GAASvpC,WACTupC,GAASjvF,YACTivF,GAASn/H,OAGXkwC,EAAMsvF,YACTtvF,EAAMsvF,cAERtvF,EAAMsvF,UAAUvjI,KAAKkjI,GAGvB,MAAOA,GAYT,QAASG,GAAwBpvF,GAE/B,MAAc,SAAVxhC,GACF2vH,IAGAnuF,EAAM7f,KAAOovG,IACN,QACY,SAAV/wH,GACT2vH,IAGAnuF,EAAM0lD,KAAO6pC,IACN,QACY,UAAV/wH,GACT2vH,IAGAnuF,EAAMA,MAAQuvF,IACP,SAGF,KAQT,QAASF,GAAmBrvF,EAAOp7C,GAEjC,GAAIu7B,IACFv7B,GAAIA,GAEFspI,EAAOqB,GACPrB,KACF/tG,EAAK+tG,KAAOA,GAEd3J,EAAQvkF,EAAO7f,GAGfgvG,EAAUnvF,EAAOp7C,GAQnB,QAASuqI,GAAUnvF,EAAOrmC,GACxB,KAAiB,OAAV6E,GAA4B,OAAVA,GAAgB,CACvC,GAAI9E,GACAvN,EAAOqS,CACX2vH,IAEA,IAAIc,GAAWC,EAAclvF,EAC7B,IAAIivF,EACFv1H,EAAKu1H,MACA,CACL,GAAIb,GAAaC,EAAUM,WACzB,KAAMC,GAAe,kCAEvBl1H,GAAK8E,EACL+lH,EAAQvkF,GACNp7C,GAAI8U,IAENy0H,IAIF,GAAID,GAAOqB,IAGP7pC,EAAOzF,EAAWjgD,EAAOrmC,EAAMD,EAAIvN,EAAM+hI,EAC7C1J,GAAQxkF,EAAO0lD,GAEf/rF,EAAOD,GASX,QAAS61H,KAGP,IAFA,GAAIrB,GAAO,KAEM,MAAV1vH,GAAe,CAGpB,IAFA2vH,IACAD,KACiB,KAAV1vH,GAAyB,KAATA,GAAc,CACnC,GAAI4vH,GAAaC,EAAUM,WACzB,KAAMC,GAAe,0BAEvB,IAAI7yH,GAAOyC,CAGX,IADA2vH,IACa,KAAT3vH,EACF,KAAMowH,GAAe,wBAIvB,IAFAT,IAEIC,GAAaC,EAAUM,WACzB,KAAMC,GAAe,2BAEvB,IAAItlI,GAAQkV,CACZwvH,GAASE,EAAMnyH,EAAMzS,GAErB6kI,IACa,KAAT3vH,GACF2vH,IAIJ,GAAa,KAAT3vH,EACF,KAAMowH,GAAe,qBAEvBT,KAGF,MAAOD,GAQT,QAASU,GAAetkF,GACtB,MAAO,IAAI1hB,aAAY0hB,EAAU,UAAYwkF,EAAKtwH,EAAO,IAAM,WAAa7Q,EAAQ,KAStF,QAASmhI,GAAK32F,EAAMq3F,GAClB,MAAOr3F,GAAKttC,QAAU2kI,EAAYr3F,EAAOA,EAAKhnC,OAAO,EAAG,IAAM,MAShE,QAASs+H,GAASv0H,EAAQC,EAAQ/M,GAC5B/C,MAAMC,QAAQ4P,GAChBA,EAAOrN,QAAQ,SAAU6hI,GACnBrkI,MAAMC,QAAQ6P,GAChBA,EAAOtN,QAAQ,SAAU8hI,GACvBvhI,EAAGshI,EAAOC,KAGZvhI,EAAGshI,EAAOv0H,KAIV9P,MAAMC,QAAQ6P,GAChBA,EAAOtN,QAAQ,SAAU8hI,GACvBvhI,EAAG8M,EAAQy0H,KAGbvhI,EAAG8M,EAAQC,GAcjB,QAASy0H,GAAQjnI,EAAQm1E,EAAMx0E,GAM7B,IAAK,GALDsS,GAAQkiE,EAAKtwE,MAAM,KACnBlD,EAAOsR,EAAMo9D,MAGb3uE,EAAM1B,EACDqC,EAAI,EAAGA,EAAI4Q,EAAM/Q,OAAQG,IAAK,CACrC,GAAI+Q,GAAOH,EAAM5Q,EACX+Q,KAAQ1R,KACZA,EAAI0R,OAEN1R,EAAMA,EAAI0R,GAMZ,MAFA1R,GAAIC,GAAQhB,EAELX,EAST,QAASknI,GAAY3B,EAAM4B,GACzB,GAAI/oG,KAEJ,KAAK,GAAIz8B,KAAQ4jI,GACf,GAAIA,EAAK3jI,eAAeD,GAAO,CAC7B,GAAIylI,GAAUD,EAAQxlI,EAClBe,OAAMC,QAAQykI,GAChBA,EAAQliI,QAAQ,SAAUmiI,GACxBJ,EAAQ7oG,EAAWipG,EAAU9B,EAAK5jI,MAER,gBAAZylI,GAChBH,EAAQ7oG,EAAWgpG,EAAS7B,EAAK5jI,IAEjCslI,EAAQ7oG,EAAWz8B,EAAM4jI,EAAK5jI,IAKpC,MAAOy8B,GAST,QAAS7+B,GAAWqU,GAElB,GAAI6mF,GAAUuqC,EAASpxH,GACnB0zH,GACFhxC,SACAE,SACA/2F,WAmBF,IAfIg7F,EAAQnE,OACVmE,EAAQnE,MAAMpxF,QAAQ,SAAUqiI,GAC9B,GAAIC,IACFvrI,GAAIsrI,EAAQtrI,GACZ69B,MAAO/4B,OAAOwmI,EAAQztG,OAASytG,EAAQtrI,IAEzCuxD,GAAMg6E,EAAWN,EAAYK,EAAQhC,KAAMkC,IACvCD,EAAUhpC,QACZgpC,EAAUvoC,MAAQ,SAEpBqoC,EAAUhxC,MAAMlzF,KAAKokI,KAKrB/sC,EAAQjE,MAAO,CAMjB,GAAIkxC,GAAc,SAAqBC,GACrC,GAAIC,IACF52H,KAAM22H,EAAQ32H,KACdD,GAAI42H,EAAQ52H,GAKd,OAHAy8C,GAAMo6E,EAAWV,EAAYS,EAAQpC,KAAMsC,IAC3CD,EAAUj9B,OAA0B,OAAjBg9B,EAAQnkI,KAAgB,KAAOrB,OAE3CylI,EAGTntC,GAAQjE,MAAMtxF,QAAQ,SAAUyiI,GAC9B,GAAI32H,GAAMD,CAERC,GADE22H,EAAQ32H,eAAgBhO,QACnB2kI,EAAQ32H,KAAKslF,OAGlBr6F,GAAI0rI,EAAQ32H,MAQdD,EADE42H,EAAQ52H,aAAc/N,QACnB2kI,EAAQ52H,GAAGulF,OAGdr6F,GAAI0rI,EAAQ52H,IAIZ42H,EAAQ32H,eAAgBhO,SAAU2kI,EAAQ32H,KAAKwlF,OACjDmxC,EAAQ32H,KAAKwlF,MAAMtxF,QAAQ,SAAU4iI,GACnC,GAAIF,GAAYF,EAAYI,EAC5BR,GAAU9wC,MAAMpzF,KAAKwkI,KAIzBd,EAAS91H,EAAMD,EAAI,SAAUC,EAAMD,GACjC,GAAI+2H,GAAUxwC,EAAWgwC,EAAWt2H,EAAK/U,GAAI8U,EAAG9U,GAAI0rI,EAAQnkI,KAAMmkI,EAAQpC,MACtEqC,EAAYF,EAAYI,EAC5BR,GAAU9wC,MAAMpzF,KAAKwkI,KAGnBD,EAAQ52H,aAAc/N,SAAU2kI,EAAQ52H,GAAGylF,OAC7CmxC,EAAQ52H,GAAGylF,MAAMtxF,QAAQ,SAAU4iI,GACjC,GAAIF,GAAYF,EAAYI,EAC5BR,GAAU9wC,MAAMpzF,KAAKwkI,OAW7B,MAJIntC,GAAQ8qC,OACV+B,EAAU7nI,QAAUg7F,EAAQ8qC,MAGvB+B,EAl2BT,GAAIG,IACFM,SAAY,YACZC,UAAa,aACbC,eAAkB,aAClBC,SAAY,YACZ7/H,OAAU,eAAgB,oBAC1B8/H,UAAa,mBACb57F,QAAW,QACX67F,aAAgB,SAEdP,EAAoB7kI,OAAOgJ,OAAOy7H,EACtCI,GAAkBx/H,MAAQ,aAG1B,IAAIq9H,IACFC,KAAM,EACNE,UAAW,EACXG,WAAY,EACZE,QAAS,GAIPH,GACFsC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EAELC,MAAM,EACNC,MAAM,GAGJvzF,EAAM,GACNtwC,EAAQ,EACR3I,EAAI,GACJwZ,EAAQ,GACR4vH,EAAYC,EAAUC,KAmCtBP,EAAoB,iBA4xBxB5pI,GAAQwpI,SAAWA,EACnBxpI,EAAQ+D,WAAaA,GAIjB,SAAS9D,EAAQD,GAIrB,QAASkE,GAAWopI,EAAWxwD,GAC7B,GAAIke,MACAF,KACA72F,GACF+2F,OACEuyC,cAAc,GAEhBzyC,OACE+H,OAAO,EACPt1F,YAAY,GAIG5G,UAAfm2E,IACuBn2E,SAArBm2E,EAAW+lB,QACb5+F,EAAQ62F,MAAM+H,MAAQ/lB,EAAW+lB,OAELl8F,SAA1Bm2E,EAAWvvE,aACbtJ,EAAQ62F,MAAMvtF,WAAauvE,EAAWvvE,YAER5G,SAA5Bm2E,EAAWywD,eACbtpI,EAAQ+2F,MAAMuyC,aAAezwD,EAAWywD,cAM5C,KAAK,GAFDC,GAASF,EAAUtyC,MACnByyC,EAASH,EAAUxyC,MACdj0F,EAAI,EAAGA,EAAI2mI,EAAO9mI,OAAQG,IAAK,CACtC,GAAI06F,MACAmsC,EAAQF,EAAO3mI,EACnB06F,GAAS,GAAImsC,EAAMjtI,GACnB8gG,EAAW,KAAImsC,EAAMz7G,OACrBsvE,EAAS,GAAImsC,EAAMpiI,OACnBi2F,EAAiB,WAAImsC,EAAM77D,WAC3B0vB,EAAY,MAAImsC,EAAMpvG,MACtBijE,EAAY,MAAyB56F,SAArB+mI,EAAM77D,WAA2B67D,EAAM77D,WAAWhR,MAAQl6D,OACpD,aAAlB+mI,EAAY,OACdnsC,EAAa,OAAI,MAIfmsC,EAAM7gI,OAAS5I,EAAQspI,gBAAiB,IAC1ChsC,EAAY,MAAImsC,EAAM7gI,OAExBmuF,EAAMpzF,KAAK25F,GAGb,IAAK,GAAI16F,GAAI,EAAGA,EAAI4mI,EAAO/mI,OAAQG,IAAK,CACtC,GAAIm1B,MACA2xG,EAAQF,EAAO5mI,EACnBm1B,GAAS,GAAI2xG,EAAMltI,GACnBu7B,EAAiB,WAAI2xG,EAAM97D,WAC3B71C,EAAY,MAAI2xG,EAAM9sE,MACtB7kC,EAAQ,EAAI2xG,EAAM3vG,EAClBhC,EAAQ,EAAI2xG,EAAMtsH,EAClB2a,EAAY,MAAI2xG,EAAMrvG,MACtBtC,EAAY,MAAyBr1B,SAArBgnI,EAAM97D,WAA2B87D,EAAM97D,WAAWhR,MAAQl6D,OACtE1C,EAAQ62F,MAAMvtF,cAAe,EAC/ByuB,EAAY,MAAI2xG,EAAM9gI,MAEtBmvB,EAAY,MAAoBr1B,SAAhBgnI,EAAM9gI,OAAwBwB,WAAYs/H,EAAM9gI,MAAOyB,OAAQq/H,EAAM9gI,MAAO0B,WAAaF,WAAYs/H,EAAM9gI,MAAOyB,OAAQq/H,EAAM9gI,OAAS2B,OAASH,WAAYs/H,EAAM9gI,MAAOyB,OAAQq/H,EAAM9gI,QAAYlG,OAEvNq1B,EAAW,KAAI2xG,EAAMtvG,KACrBrC,EAAY,MAAI/3B,EAAQ62F,MAAM+H,OAAqBl8F,SAAZgnI,EAAM3vG,GAA+Br3B,SAAZgnI,EAAMtsH,EACtEy5E,EAAMlzF,KAAKo0B,GAGb,OAAS8+D,MAAOA,EAAOE,MAAOA,GAGhCh7F,EAAQkE,WAAaA,GAIjB,SAASjE,EAAQD,GAcrB,QAASm3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI/vE,WAAU,qCANhHE,OAAO8vE,eAAet3E,EAAS,cAC3BmF,OAAO,GAGX,IAAIoyE,GAAe,WAAe,QAASC,GAAiBlsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI4wE,GAAaxwE,EAAMJ,EAAI4wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMpwE,OAAO8vE,eAAehsE,EAAQmsE,EAAW1tE,IAAK0tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYhkE,UAAWwkE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB5zE,EAAS,WACT,QAASA,GAAOkG,GACZwtE,EAAgB/2E,KAAMqD,GAEtBrD,KAAK67F,UACL77F,KAAKwtI,eACLxtI,KAAKuJ,SAAWA,EAgGpB,MAxFA4tE,GAAa9zE,IACTsG,IAAK,mBACL5E,MAAO,SAA0B0oI,EAAKC,GAEP,IAAvBA,EAAalvG,QACbpB,SAAS+hB,KAAK7hB,YAAYowG,GAC1BA,EAAalvG,MAAQkvG,EAAa1zF,YAClC0zF,EAAajvG,OAASivG,EAAaxzF,aACnC9c,SAAS+hB,KAAKz6C,YAAYgpI,IAG9B1tI,KAAK67F,OAAO4xC,GAAOC,KASvB/jI,IAAK,oBACL5E,MAAO,SAA2B0oI,EAAKE,EAAWC,GAC9C,GAAI3rF,GAAQjiD,IAGAuG,UAARknI,GAAmClnI,SAAdonI,GAAsDpnI,SAA3BqnI,IAGpDA,EAAuBC,QAAU,WAC7BluH,QAAQ08D,MAAM,8BAA+BsxD,GAE7C1rF,EAAM6rF,iBAAiBL,EAAK,GAAIp/B,SAIpCu/B,EAAuBzmF,IAAMwmF,MAOjChkI,IAAK,mBACL5E,MAAO,SAA0BgpI,GACzB/tI,KAAKuJ,UACLvJ,KAAKuJ,SAASwkI,MAUtBpkI,IAAK,OACL5E,MAAO,SAAc0oI,EAAKE,EAAWttI,GACjC,GAAIo5E,GAASz5E,KAGTguI,EAAchuI,KAAK67F,OAAO4xC,EAC9B,IAAIO,EAAa,MAAOA,EAGxB,IAAIC,GAAM,GAAI5/B,MAoBd,OAjBA4/B,GAAIC,OAAS,WAETz0D,EAAOq0D,iBAAiBL,EAAKQ,GAC7Bx0D,EAAO00D,iBAAiBF,IAI5BA,EAAIJ,QAAU,WACVluH,QAAQ08D,MAAM,wBAAyBoxD,GAEvCh0D,EAAO20D,kBAAkBX,EAAKE,EAAWM,IAI7CA,EAAI9mF,IAAMsmF,EAGHQ,MAIR5qI,IAGXzD,GAAQ,WAAayD,EACrBxD,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAKrBA,EAAY,IACVyuI,KAAM,OACNC,IAAK,kBACLC,KAAM,OACNvO,QAAS,WACTC,QAAS,WACTjgC,SAAU,YACVkgC,SAAU,YACVsO,eAAgB,+CAChBC,gBAAiB,qEACjBC,oBAAqB,wEACrBC,gBAAiB,kCACjBC,mBAAoB,8BACpBC,iBAAkB,8BAEpBjvI,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACVyuI,KAAM,YACNC,IAAK,iBACLC,KAAM,SACNvO,QAAS,oBACTC,QAAS,mBACTjgC,SAAU,mBACVkgC,SAAU,kBACVsO,eAAgB,oEAChBC,gBAAiB,8FACjBC,oBAAqB,0FACrBC,gBAAiB,0DACjBC,mBAAoB,wCACpBC,iBAAkB,yCAEpBjvI,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACVyuI,KAAM,SACNC,IAAK,qBACLC,KAAM,QACNvO,QAAS,cACTC,QAAS,gBACTjgC,SAAU,cACVkgC,SAAU,gBACVsO,eAAgB,0DAChBC,gBAAiB,8EACjBC,oBAAqB;AACrBC,gBAAiB,8CACjBC,mBAAoB,iCACpBC,iBAAkB,gCAEpBjvI,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACVyuI,KAAM,WACNC,IAAK,uBACLC,KAAM,QACNvO,QAAS,iBACTC,QAAS,iBACTjgC,SAAU,gBACVkgC,SAAU,gBACVsO,eAAgB,uDAChBC,gBAAiB,6EACjBC,oBAAqB,kFACrBC,gBAAiB,wCACjBC,mBAAoB,0CACpBC,iBAAkB,0CAEpBjvI,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY","file":"vis.map"} \ No newline at end of file diff --git a/dist/vis.min.js b/dist/vis.min.js index 6512a8b9..d3274fe6 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -4,8 +4,8 @@ * * A dynamic, browser-based visualization library. * - * @version 4.12.0 - * @date 2016-01-08 + * @version 4.13.0 + * @date 2016-02-01 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -22,23 +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(27),DataStep:i(51),DateUtil:i(26),Range:i(23),stack:i(31),TimeStep:i(29),components:{items:{Item:i(33),BackgroundItem:i(37),BoxItem:i(35),PointItem:i(36),RangeItem:i(32)},BackgroundGroup:i(34),Component:i(25),CurrentTime:i(43),CustomTime:i(41),DataAxis:i(50),GraphGroup:i(52),Group:i(30),ItemSet:i(28),Legend:i(56),LineGraph:i(49),TimeAxis:i(38)}},e.Network=i(58),e.network={Images:i(116),dotparser:i(114),gephiParser:i(115),allOptions:i(110)},e.network.convertDot=function(t){return e.network.dotparser.DOTToGraph(t)},e.network.convertGephi=function(t,i){return e.network.gephiParser.parseGephi(t,i)},e.moment=i(2),e.Hammer=i(20),e.keycharm=i(40)},function(t,e,i){var o=i(2),n=i(6);e.isNumber=function(t){return t instanceof Number||"number"==typeof t},e.recursiveDOMDelete=function(t){if(t)for(;t.hasChildNodes()===!0;)e.recursiveDOMDelete(t.firstChild),t.removeChild(t.firstChild)},e.giveRange=function(t,e,i,o){if(e==t)return.5;var n=1/(e-t);return Math.max(0,(o-t)*n)},e.isString=function(t){return t instanceof String||"string"==typeof t},e.isDate=function(t){if(t instanceof Date)return!0;if(e.isString(t)){var i=s.exec(t);if(i)return!0;if(!isNaN(Date.parse(t)))return!0}return!1},e.randomUUID=function(){return n.v4()},e.assignAllKeys=function(t,e){for(var i in t)t.hasOwnProperty(i)&&"object"!=typeof t[i]&&(t[i]=e)},e.fillIfDefined=function(t,i){var o=arguments.length<=2||void 0===arguments[2]?!1:arguments[2];for(var n in t)void 0!==i[n]&&("object"!=typeof i[n]?void 0!==i[n]&&null!==i[n]||void 0===t[n]||o!==!0?t[n]=i[n]:delete t[n]:"object"==typeof t[n]&&e.fillIfDefined(t[n],i[n],o))},e.protoExtend=function(t,e){for(var i=1;ii;i++)if(t[i]!=e[i])return!1;return!0},e.convert=function(t,i){var n;if(void 0!==t){if(null===t)return null;if(!i)return t;if("string"!=typeof i&&!(i instanceof String))throw new Error("Type must be a string");switch(i){case"boolean":case"Boolean":return Boolean(t);case"number":case"Number":return Number(t.valueOf());case"string":case"String":return String(t);case"Date":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return new Date(t.valueOf());if(o.isMoment(t))return new Date(t.valueOf());if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])):o(t).toDate();throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"Moment":if(e.isNumber(t))return o(t);if(t instanceof Date)return o(t.valueOf());if(o.isMoment(t))return o(t);if(e.isString(t))return n=s.exec(t),o(n?Number(n[1]):t);throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"ISODate":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return t.toISOString();if(o.isMoment(t))return t.toDate().toISOString();if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])).toISOString():new Date(t).toISOString();throw new Error("Cannot convert object of type "+e.getType(t)+" to type ISODate");case"ASPDate":if(e.isNumber(t))return"/Date("+t+")/";if(t instanceof Date)return"/Date("+t.valueOf()+")/";if(e.isString(t)){n=s.exec(t);var r;return r=n?new Date(Number(n[1])).valueOf():new Date(t).valueOf(),"/Date("+r+")/"}throw new Error("Cannot convert object of type "+e.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+i+'"')}}};var s=/^\/?Date\((\-?\d+)/i;e.getType=function(t){var e=typeof t;return"object"==e?null===t?"null":t instanceof Boolean?"Boolean":t instanceof Number?"Number":t instanceof String?"String":Array.isArray(t)?"Array":t instanceof Date?"Date":"Object":"number"==e?"Number":"boolean"==e?"Boolean":"string"==e?"String":void 0===e?"undefined":e},e.copyAndExtendArray=function(t,e){for(var i=[],o=0;oi;i++)e(t[i],i,t);else for(i in t)t.hasOwnProperty(i)&&e(t[i],i,t)},e.toArray=function(t){var e=[];for(var i in t)t.hasOwnProperty(i)&&e.push(t[i]);return e},e.updateProperty=function(t,e,i){return t[e]!==i?(t[e]=i,!0):!1},e.throttle=function(t,e){var i=null,o=!1;return function n(){i?o=!0:(o=!1,t(),i=setTimeout(function(){i=null,o&&n()},e))}},e.addEventListener=function(t,e,i,o){t.addEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.addEventListener(e,i,o)):t.attachEvent("on"+e,i)},e.removeEventListener=function(t,e,i,o){t.removeEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.removeEventListener(e,i,o)):t.detachEvent("on"+e,i)},e.preventDefault=function(t){t||(t=window.event),t.preventDefault?t.preventDefault():t.returnValue=!1},e.getTarget=function(t){t||(t=window.event);var e;return t.target?e=t.target:t.srcElement&&(e=t.srcElement),void 0!=e.nodeType&&3==e.nodeType&&(e=e.parentNode),e},e.hasParent=function(t,e){for(var i=t;i;){if(i===e)return!0;i=i.parentNode}return!1},e.option={},e.option.asBoolean=function(t,e){return"function"==typeof t&&(t=t()),null!=t?0!=t:e||null},e.option.asNumber=function(t,e){return"function"==typeof t&&(t=t()),null!=t?Number(t)||e||null:e||null},e.option.asString=function(t,e){return"function"==typeof t&&(t=t()),null!=t?String(t):e||null},e.option.asSize=function(t,i){return"function"==typeof t&&(t=t()),e.isString(t)?t:e.isNumber(t)?t+"px":i||null},e.option.asElement=function(t,e){return"function"==typeof t&&(t=t()),t||e||null},e.hexToRGB=function(t){var e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;t=t.replace(e,function(t,e,i,o){return e+e+i+i+o+o});var i=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return i?{r:parseInt(i[1],16),g:parseInt(i[2],16),b:parseInt(i[3],16)}:null},e.overrideOpacity=function(t,i){if(-1!=t.indexOf("rgba"))return t;if(-1!=t.indexOf("rgb")){var o=t.substr(t.indexOf("(")+1).replace(")","").split(",");return"rgba("+o[0]+","+o[1]+","+o[2]+","+i+")"}var o=e.hexToRGB(t);return null==o?t:"rgba("+o.r+","+o.g+","+o.b+","+i+")"},e.RGBToHex=function(t,e,i){return"#"+((1<<24)+(t<<16)+(e<<8)+i).toString(16).slice(1)},e.parseColor=function(t){var i;if(e.isString(t)===!0){if(e.isValidRGB(t)===!0){var o=t.substr(4).substr(0,t.length-5).split(",").map(function(t){return parseInt(t)});t=e.RGBToHex(o[0],o[1],o[2])}if(e.isValidHex(t)===!0){var n=e.hexToHSV(t),s={h:n.h,s:.8*n.s,v:Math.min(1,1.02*n.v)},r={h:n.h,s:Math.min(1,1.25*n.s),v:.8*n.v},a=e.HSVToHex(r.h,r.s,r.v),h=e.HSVToHex(s.h,s.s,s.v);i={background:t,border:a,highlight:{background:h,border:a},hover:{background:h,border:a}}}else i={background:t,border:t,highlight:{background:t,border:t},hover:{background:t,border:t}}}else i={},i.background=t.background||void 0,i.border=t.border||void 0,e.isString(t.highlight)?i.highlight={border:t.highlight,background:t.highlight}:(i.highlight={},i.highlight.background=t.highlight&&t.highlight.background||void 0,i.highlight.border=t.highlight&&t.highlight.border||void 0),e.isString(t.hover)?i.hover={border:t.hover,background:t.hover}:(i.hover={},i.hover.background=t.hover&&t.hover.background||void 0,i.hover.border=t.hover&&t.hover.border||void 0);return i},e.RGBToHSV=function(t,e,i){t/=255,e/=255,i/=255;var o=Math.min(t,Math.min(e,i)),n=Math.max(t,Math.max(e,i));if(o==n)return{h:0,s:0,v:o};var s=t==o?e-i:i==o?t-e:i-t,r=t==o?3:i==o?1:5,a=60*(r-s/(n-o))/360,h=(n-o)/n,d=n;return{h:a,s:h,v:d}};var r={split:function(t){var e={};return t.split(";").forEach(function(t){if(""!=t.trim()){var i=t.split(":"),o=i[0].trim(),n=i[1].trim();e[o]=n}}),e},join:function(t){return Object.keys(t).map(function(e){return e+": "+t[e]}).join("; ")}};e.addCssText=function(t,i){var o=r.split(t.style.cssText),n=r.split(i),s=e.extend(o,n);t.style.cssText=r.join(s)},e.removeCssText=function(t,e){var i=r.split(t.style.cssText),o=r.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=r.join(i)},e.HSVToRGB=function(t,e,i){var o,n,s,r=Math.floor(6*t),a=6*t-r,h=i*(1-e),d=i*(1-a*e),l=i*(1-(1-a)*e);switch(r%6){case 0:o=i,n=l,s=h;break;case 1:o=d,n=i,s=h;break;case 2:o=h,n=i,s=l;break;case 3:o=h,n=d,s=i;break;case 4:o=l,n=h,s=i;break;case 5:o=i,n=h,s=d}return{r:Math.floor(255*o),g:Math.floor(255*n),b:Math.floor(255*s)}},e.HSVToHex=function(t,i,o){var n=e.HSVToRGB(t,i,o);return e.RGBToHex(n.r,n.g,n.b)},e.hexToHSV=function(t){var i=e.hexToRGB(t);return e.RGBToHSV(i.r,i.g,i.b)},e.isValidHex=function(t){var e=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t);return e},e.isValidRGB=function(t){t=t.replace(" ","");var e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(t);return e},e.isValidRGBA=function(t){t=t.replace(" ","");var e=/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),(.{1,3})\)/i.test(t);return e},e.selectiveBridgeObject=function(t,i){if("object"==typeof i){for(var o=Object.create(i),n=0;n0&&e(o,t[n-1])<0;n--)t[n]=t[n-1];t[n]=o}return t},e.mergeOptions=function(t,e,i){var o=(arguments.length<=3||void 0===arguments[3]?!1:arguments[3],arguments.length<=4||void 0===arguments[4]?{}:arguments[4]);if(null===e[i])t[i]=Object.create(o[i]);else if(void 0!==e[i])if("boolean"==typeof e[i])t[i].enabled=e[i];else{void 0===e[i].enabled&&(t[i].enabled=!0);for(var n in e[i])e[i].hasOwnProperty(n)&&(t[i][n]=e[i][n])}},e.binarySearchCustom=function(t,e,i,o){for(var n=1e4,s=0,r=0,a=t.length-1;a>=r&&n>s;){var h=Math.floor((r+a)/2),d=t[h],l=void 0===o?d[i]:d[i][o],u=e(l);if(0==u)return h;-1==u?r=h+1:a=h-1,s++}return-1},e.binarySearchValue=function(t,e,i,o){for(var n,s,r,a,h=1e4,d=0,l=0,u=t.length-1;u>=l&&h>d;){if(a=Math.floor(.5*(u+l)),n=t[Math.max(0,a-1)][i],s=t[a][i],r=t[Math.min(t.length-1,a+1)][i],s==e)return a;if(e>n&&s>e)return"before"==o?Math.max(0,a-1):a;if(e>s&&r>e)return"before"==o?a:Math.min(t.length-1,a+1);e>s?l=a+1:u=a-1,d++}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 Yi.apply(null,arguments)}function i(t){Yi=t}function o(t){return"[object Array]"===Object.prototype.toString.call(t)}function n(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t,e){var i,o=[];for(i=0;i0)for(i in Vi)o=Vi[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),Ui===!1&&(Ui=!0,e.updateOffset(this),Ui=!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(){}function _(t){return t?t.toLowerCase().replace("_","-"):t}function x(t){for(var e,i,o,n,s=0;s0;){if(o=k(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&b(n,i,!0)>=e-1)break;e--}s++}return null}function k(e){var i=null;if(!qi[e]&&!p(t)&&t&&t.exports)try{i=Gi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),O(i)}catch(o){}return qi[e]}function O(t,e){var i;return t&&(i=p(e)?D(t):M(t,e),i&&(Gi=i)),Gi._abbr}function M(t,e){return null!==e?(e.abbr=t,qi[t]=qi[t]||new w,qi[t].set(e),O(t),qi[t]):(delete qi[t],null)}function D(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Gi;if(!o(t)){if(e=k(t))return e;t=[t]}return x(t)}function C(t,e){var i=t.toLowerCase();Xi[i]=Xi[i+"s"]=Xi[e]=t}function T(t){return"string"==typeof t?Xi[t]||Xi[t.toLowerCase()]:void 0}function E(t){var e,i,o={};for(i in t)r(t,i)&&(e=T(i),e&&(o[e]=t[i]));return o}function S(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function P(t,i){return function(o){return null!=o?(N(this,t,o),e.updateOffset(this,i),this):I(this,t)}}function I(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function N(t,e,i){t.isValid()&&t._d["set"+(t._isUTC?"UTC":"")+e](i)}function z(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=T(t),S(this[t]))return this[t](e);return this}function L(t,e,i){var o=""+Math.abs(t),n=e-o.length,s=t>=0;return(s?i?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+o}function A(t,e,i,o){var n=o;"string"==typeof o&&(n=function(){return this[o]()}),t&&(Ji[t]=n),e&&(Ji[e[0]]=function(){return L(n.apply(this,arguments),e[1],e[2])}),i&&(Ji[i]=function(){return this.localeData().ordinal(n.apply(this,arguments),t)})}function B(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function F(t){var e,i,o=t.match(Zi);for(e=0,i=o.length;i>e;e++)Ji[o[e]]?o[e]=Ji[o[e]]:o[e]=B(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 j(t,e){return t.isValid()?(e=R(e,t.localeData()),$i[e]=$i[e]||F(e),$i[e](t)):t.localeData().invalidDate()}function R(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(Ki.lastIndex=0;o>=0&&Ki.test(t);)t=t.replace(Ki,i),Ki.lastIndex=0,o-=1;return t}function H(t,e,i){go[t]=S(e)?e:function(t){return t&&i?i:e}}function W(t,e){return r(go,t)?go[t](e._strict,e._locale):new RegExp(Y(t))}function Y(t){return t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function G(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 $(t,e){var i;return t.isValid()?"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(i=Math.min(t.date(),q(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t):t}function J(t){return null!=t?($(this,t),e.updateOffset(this,!0),this):I(this,"Month")}function Q(){return q(this.year(),this.month())}function tt(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[wo]<0||i[wo]>11?wo:i[_o]<1||i[_o]>q(i[bo],i[wo])?_o:i[xo]<0||i[xo]>24||24===i[xo]&&(0!==i[ko]||0!==i[Oo]||0!==i[Mo])?xo:i[ko]<0||i[ko]>59?ko:i[Oo]<0||i[Oo]>59?Oo:i[Mo]<0||i[Mo]>999?Mo:-1,l(t)._overflowDayOfYear&&(bo>e||e>_o)&&(e=_o),l(t)._overflowWeeks&&-1===e&&(e=Do),l(t)._overflowWeekday&&-1===e&&(e=Co),l(t).overflow=e),t}function et(t){e.suppressDeprecationWarnings===!1&&!p(console)&&console.warn&&console.warn("Deprecation warning: "+t)}function it(t,e){var i=!0;return a(function(){return i&&(et(t+"\nArguments: "+Array.prototype.slice.call(arguments).join(", ")+"\n"+(new Error).stack),i=!1),e.apply(this,arguments)},e)}function ot(t,e){Po[t]||(et(e),Po[t]=!0)}function nt(t){var e,i,o,n,s,r,a=t._i,h=Io.exec(a)||No.exec(a);if(h){for(l(t).iso=!0,e=0,i=Lo.length;i>e;e++)if(Lo[e][1].exec(h[1])){n=Lo[e][0],o=Lo[e][2]!==!1;break}if(null==n)return void(t._isValid=!1);if(h[3]){for(e=0,i=Ao.length;i>e;e++)if(Ao[e][1].exec(h[3])){s=(h[2]||" ")+Ao[e][0];break}if(null==s)return void(t._isValid=!1)}if(!o&&null!=s)return void(t._isValid=!1);if(h[4]){if(!zo.exec(h[4]))return void(t._isValid=!1);r="Z"}t._f=n+(s||"")+(r||""),bt(t)}else t._isValid=!1}function st(t){var i=Bo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(nt(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function rt(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 at(t){var e=new Date(Date.UTC.apply(null,arguments));return 100>t&&t>=0&&isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t),e}function ht(t){return dt(t)?366:365}function dt(t){return t%4===0&&t%100!==0||t%400===0}function lt(){return dt(this.year())}function ut(t,e,i){var o=7+e-i,n=(7+at(t,0,o).getUTCDay()-e)%7;return-n+o-1}function ct(t,e,i,o,n){var s,r,a=(7+i-o)%7,h=ut(t,o,n),d=1+7*(e-1)+a+h;return 0>=d?(s=t-1,r=ht(s)+d):d>ht(t)?(s=t+1,r=d-ht(t)):(s=t,r=d),{year:s,dayOfYear:r}}function pt(t,e,i){var o,n,s=ut(t.year(),e,i),r=Math.floor((t.dayOfYear()-s-1)/7)+1;return 1>r?(n=t.year()-1,o=r+ft(n,e,i)):r>ft(t.year(),e,i)?(o=r-ft(t.year(),e,i),n=t.year()+1):(n=t.year(),o=r),{week:o,year:n}}function ft(t,e,i){var o=ut(t,e,i),n=ut(t+1,e,i);return(ht(t)-o+n)/7}function mt(t,e,i){return null!=t?t:null!=e?e:i}function vt(t){var i=new Date(e.now());return t._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()]}function gt(t){var e,i,o,n,s=[];if(!t._d){for(o=vt(t),t._w&&null==t._a[_o]&&null==t._a[wo]&&yt(t),t._dayOfYear&&(n=mt(t._a[bo],o[bo]),t._dayOfYear>ht(n)&&(l(t)._overflowDayOfYear=!0),i=at(n,0,t._dayOfYear),t._a[wo]=i.getUTCMonth(),t._a[_o]=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[xo]&&0===t._a[ko]&&0===t._a[Oo]&&0===t._a[Mo]&&(t._nextDay=!0,t._a[xo]=0),t._d=(t._useUTC?at:rt).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[xo]=24)}}function yt(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=mt(e.GG,t._a[bo],pt(Ct(),1,4).year),o=mt(e.W,1),n=mt(e.E,1),(1>n||n>7)&&(h=!0)):(s=t._locale._week.dow,r=t._locale._week.doy,i=mt(e.gg,t._a[bo],pt(Ct(),s,r).year),o=mt(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>ft(i,s,r)?l(t)._overflowWeeks=!0:null!=h?l(t)._overflowWeekday=!0:(a=ct(i,o,n,s,r),t._a[bo]=a.year,t._dayOfYear=a.dayOfYear)}function bt(t){if(t._f===e.ISO_8601)return void nt(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=R(t._f,t._locale).match(Zi)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),Ji[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),U(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[xo]<=12&&t._a[xo]>0&&(l(t).bigHour=void 0),t._a[xo]=wt(t._locale,t._a[xo],t._meridiem),gt(t),tt(t)}function wt(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 _t(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 xt(t){if(!t._d){var e=E(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)}),gt(t)}}function kt(t){var e=new m(tt(Ot(t)));return e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e}function Ot(t){var e=t._i,i=t._f;return t._locale=t._locale||D(t._l),null===e||void 0===i&&""===e?c({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),v(e)?new m(tt(e)):(o(i)?_t(t):i?bt(t):n(e)?t._d=e:Mt(t),u(t)||(t._d=null),t))}function Mt(t){var i=t._i;void 0===i?t._d=new Date(e.now()):n(i)?t._d=new Date(+i):"string"==typeof i?st(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),gt(t)):"object"==typeof i?xt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Dt(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,kt(s)}function Ct(t,e,i,o){return Dt(t,e,i,o,!1)}function Tt(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Ct();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+L(~~(t/60),2)+e+L(~~t%60,2)})}function zt(t,e){var i=(e||"").match(t)||[],o=i[i.length-1]||[],n=(o+"").match(Wo)||["-",0,0],s=+(60*n[1])+y(n[2]);return"+"===n[0]?s:-s}function Lt(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(v(t)||n(t)?+t:+Ct(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Ct(t).local()}function At(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Bt(t,i){var o,n=this._offset||0;return this.isValid()?null!=t?("string"==typeof t?t=zt(fo,t):Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=At(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?Qt(this,Xt(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:At(this):null!=t?this:NaN}function Ft(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function jt(t){return this.utcOffset(0,t)}function Rt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(At(this),"m")),this}function Ht(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(zt(po,this._i)),this}function Wt(t){return this.isValid()?(t=t?Ct(t).utcOffset():0,(this.utcOffset()-t)%60===0):!1}function Yt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Gt(){if(!p(this._isDSTShifted))return this._isDSTShifted;var t={};if(f(t,this),t=Ot(t),t._a){var e=t._isUTC?h(t._a):Ct(t._a);this._isDSTShifted=this.isValid()&&b(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Vt(){return this.isValid()?!this._isUTC:!1}function Ut(){return this.isValid()?this._isUTC:!1}function qt(){return this.isValid()?this._isUTC&&0===this._offset:!1}function Xt(t,e){var i,o,n,s=t,a=null;return It(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=Yo.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:y(a[_o])*i,h:y(a[xo])*i,m:y(a[ko])*i,s:y(a[Oo])*i,ms:y(a[Mo])*i}):(a=Go.exec(t))?(i="-"===a[1]?-1:1,s={y:Zt(a[2],i),M:Zt(a[3],i),d:Zt(a[4],i),h:Zt(a[5],i),m:Zt(a[6],i),s:Zt(a[7],i),w:Zt(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=$t(Ct(s.from),Ct(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new Pt(s),It(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function Zt(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function Kt(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 $t(t,e){var i;return t.isValid()&&e.isValid()?(e=Lt(e,t),t.isBefore(e)?i=Kt(t,e):(i=Kt(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i):{milliseconds:0,months:0}}function Jt(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(ot(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=Xt(i,o),Qt(this,n,t),this}}function Qt(t,i,o,n){var s=i._milliseconds,r=i._days,a=i._months;t.isValid()&&(n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&N(t,"Date",I(t,"Date")+r*o),a&&$(t,I(t,"Month")+a*o),n&&e.updateOffset(t,r||a))}function te(t,e){var i=t||Ct(),o=Lt(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&&(S(e[s])?e[s]():e[s]);return this.format(r||this.localeData().calendar(s,this,Ct(i)))}function ee(){return new m(this)}function ie(t,e){var i=v(t)?t:Ct(t);return this.isValid()&&i.isValid()?(e=T(p(e)?"millisecond":e),"millisecond"===e?+this>+i:+i<+this.clone().startOf(e)):!1}function oe(t,e){var i=v(t)?t:Ct(t);return this.isValid()&&i.isValid()?(e=T(p(e)?"millisecond":e),"millisecond"===e?+i>+this:+this.clone().endOf(e)<+i):!1}function ne(t,e,i){return this.isAfter(t,i)&&this.isBefore(e,i)}function se(t,e){var i,o=v(t)?t:Ct(t);return this.isValid()&&o.isValid()?(e=T(e||"millisecond"),"millisecond"===e?+this===+o:(i=+o,+this.clone().startOf(e)<=i&&i<=+this.clone().endOf(e))):!1}function re(t,e){return this.isSame(t,e)||this.isAfter(t,e)}function ae(t,e){return this.isSame(t,e)||this.isBefore(t,e)}function he(t,e,i){var o,n,s,r;return this.isValid()?(o=Lt(t,this),o.isValid()?(n=6e4*(o.utcOffset()-this.utcOffset()),e=T(e),"year"===e||"month"===e||"quarter"===e?(r=de(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 de(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 le(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function ue(){var t=this.clone().utc();return 0s&&(e=s),Be.call(this,t,e,i,o,n))}function Be(t,e,i,o,n){var s=ct(t,e,i,o,n),r=at(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function Fe(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function je(t){return pt(t,this._week.dow,this._week.doy).week}function Re(){return this._week.dow}function He(){return this._week.doy}function We(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function Ye(t){var e=pt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function Ge(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function Ve(t,e){return o(this._weekdays)?this._weekdays[t.day()]:this._weekdays[this._weekdays.isFormat.test(e)?"format":"standalone"][t.day()]}function Ue(t){return this._weekdaysShort[t.day()]}function qe(t){return this._weekdaysMin[t.day()]}function Xe(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=Ct([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 Ze(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Ge(t,this.localeData()),this.add(t-e,"d")):e}function Ke(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 $e(t){return this.isValid()?null==t?this.day()||7:this.day(this.day()%7?t:t-7):null!=t?this:NaN}function Je(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 Qe(){return this.hours()%12||12}function ti(t,e){A(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function ei(t,e){return e._meridiemParse}function ii(t){return"p"===(t+"").toLowerCase().charAt(0)}function oi(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function ni(t,e){e[Mo]=y(1e3*("0."+t))}function si(){return this._isUTC?"UTC":""}function ri(){return this._isUTC?"Coordinated Universal Time":""}function ai(t){return Ct(1e3*t)}function hi(){return Ct.apply(null,arguments).parseZone()}function di(t,e,i){var o=this._calendar[t];return S(o)?o.call(e,i):o}function li(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 ui(){return this._invalidDate}function ci(t){return this._ordinal.replace("%d",t)}function pi(t){return t}function fi(t,e,i,o){var n=this._relativeTime[i];return S(n)?n(t,e,i,o):n.replace(/%d/i,t)}function mi(t,e){var i=this._relativeTime[t>0?"future":"past"];return S(i)?i(e):i.replace(/%s/i,e)}function vi(t){var e,i;for(i in t)e=t[i],S(e)?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function gi(t,e,i,o){var n=D(),s=h().set(o,e);return n[i](s,t)}function yi(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return gi(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=gi(t,s,i,n);return r}function bi(t,e){return yi(t,e,"months",12,"month")}function wi(t,e){return yi(t,e,"monthsShort",12,"month")}function _i(t,e){return yi(t,e,"weekdays",7,"day")}function xi(t,e){return yi(t,e,"weekdaysShort",7,"day")}function ki(t,e){return yi(t,e,"weekdaysMin",7,"day")}function Oi(){var t=this._data;return this._milliseconds=mn(this._milliseconds),this._days=mn(this._days),this._months=mn(this._months),t.milliseconds=mn(t.milliseconds),t.seconds=mn(t.seconds),t.minutes=mn(t.minutes),t.hours=mn(t.hours),t.months=mn(t.months),t.years=mn(t.years),this}function Mi(t,e,i,o){var n=Xt(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function Di(t,e){return Mi(this,t,e,1)}function Ci(t,e){return Mi(this,t,e,-1)}function Ti(t){return 0>t?Math.floor(t):Math.ceil(t)}function Ei(){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*Ti(Pi(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(Si(r)),a+=n,r-=Ti(Pi(n)),o=g(a/12),a%=12,h.days=r,h.months=a,h.years=o,this}function Si(t){return 4800*t/146097}function Pi(t){return 146097*t/4800}function Ii(t){var e,i,o=this._milliseconds;if(t=T(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+Si(e),"month"===t?i:i/12;switch(e=this._days+Math.round(Pi(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 Ni(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*y(this._months/12)}function zi(t){return function(){return this.as(t)}}function Li(t){return t=T(t),this[t+"s"]()}function Ai(t){return function(){return this._data[t]}}function Bi(){return g(this.days()/7)}function Fi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function ji(t,e,i){var o=Xt(t).abs(),n=Pn(o.as("s")),s=Pn(o.as("m")),r=Pn(o.as("h")),a=Pn(o.as("d")),h=Pn(o.as("M")),d=Pn(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,Fi.apply(null,l)}function Ri(t,e){return void 0===In[t]?!1:void 0===e?In[t]:(In[t]=e,!0)}function Hi(t){var e=this.localeData(),i=ji(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Wi(){var t,e,i,o=Nn(this._milliseconds)/1e3,n=Nn(this._days),s=Nn(this._months);t=g(o/60),e=g(t/60),o%=60,t%=60,i=g(s/12),s%=12;var r=i,a=s,h=n,d=e,l=t,u=o,c=this.asSeconds();return c?(0>c?"-":"")+"P"+(r?r+"Y":"")+(a?a+"M":"")+(h?h+"D":"")+(d||l||u?"T":"")+(d?d+"H":"")+(l?l+"M":"")+(u?u+"S":""):"P0D"}var Yi,Gi,Vi=e.momentProperties=[],Ui=!1,qi={},Xi={},Zi=/(\[[^\[]*\])|(\\)?([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,Ki=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,$i={},Ji={},Qi=/\d/,to=/\d\d/,eo=/\d{3}/,io=/\d{4}/,oo=/[+-]?\d{6}/,no=/\d\d?/,so=/\d\d\d\d?/,ro=/\d\d\d\d\d\d?/,ao=/\d{1,3}/,ho=/\d{1,4}/,lo=/[+-]?\d{1,6}/,uo=/\d+/,co=/[+-]?\d+/,po=/Z|[+-]\d\d:?\d\d/gi,fo=/Z|[+-]\d\d(?::?\d\d)?/gi,mo=/[+-]?\d+(\.\d{1,3})?/,vo=/[0-9]*(a[mn]\s?)?['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF\-]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,go={},yo={},bo=0,wo=1,_o=2,xo=3,ko=4,Oo=5,Mo=6,Do=7,Co=8;A("M",["MM",2],"Mo",function(){return this.month()+1}),A("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),A("MMMM",0,0,function(t){return this.localeData().months(this,t)}),C("month","M"),H("M",no),H("MM",no,to),H("MMM",vo),H("MMMM",vo),G(["M","MM"],function(t,e){e[wo]=y(t)-1}),G(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[wo]=n:l(i).invalidMonth=t});var To=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,Eo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),So="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sept_Oct_Nov_Dec".split("_"),Po={};e.suppressDeprecationWarnings=!1;var Io=/^\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)?)?/,No=/^\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)?)?/,zo=/Z|[+-]\d\d(?::?\d\d)?/,Lo=[["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}/]],Ao=[["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/]],Bo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=it("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),A(0,["YY",2],0,function(){return this.year()%100}),A(0,["YYYY",4],0,"year"),A(0,["YYYYY",5],0,"year"),A(0,["YYYYYY",6,!0],0,"year"),C("year","y"),H("Y",co),H("YY",no,to),H("YYYY",ho,io),H("YYYYY",lo,oo),H("YYYYYY",lo,oo),G(["YYYYY","YYYYYY"],bo),G("YYYY",function(t,i){i[bo]=2===t.length?e.parseTwoDigitYear(t):y(t)}),G("YY",function(t,i){i[bo]=e.parseTwoDigitYear(t)}),e.parseTwoDigitYear=function(t){return y(t)+(y(t)>68?1900:2e3)};var Fo=P("FullYear",!1);e.ISO_8601=function(){};var jo=it("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Ct.apply(null,arguments);return this.isValid()&&t.isValid()?this>t?this:t:c()}),Ro=it("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Ct.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:c()}),Ho=Date.now||function(){return+new Date};Nt("Z",":"),Nt("ZZ",""),H("Z",fo),H("ZZ",fo),G(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=zt(fo,t)});var Wo=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Yo=/(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,Go=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Xt.fn=Pt.prototype;var Vo=Jt(1,"add"),Uo=Jt(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var qo=it("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});A(0,["gg",2],0,function(){return this.weekYear()%100}),A(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Pe("gggg","weekYear"),Pe("ggggg","weekYear"),Pe("GGGG","isoWeekYear"),Pe("GGGGG","isoWeekYear"),C("weekYear","gg"),C("isoWeekYear","GG"),H("G",co),H("g",co),H("GG",no,to),H("gg",no,to),H("GGGG",ho,io),H("gggg",ho,io),H("GGGGG",lo,oo),H("ggggg",lo,oo),V(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=y(t)}),V(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),A("Q",0,"Qo","quarter"),C("quarter","Q"),H("Q",Qi),G("Q",function(t,e){e[wo]=3*(y(t)-1)}),A("w",["ww",2],"wo","week"),A("W",["WW",2],"Wo","isoWeek"),C("week","w"),C("isoWeek","W"),H("w",no),H("ww",no,to),H("W",no),H("WW",no,to),V(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=y(t)});var Xo={dow:0,doy:6};A("D",["DD",2],"Do","date"),C("date","D"),H("D",no),H("DD",no,to),H("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),G(["D","DD"],_o),G("Do",function(t,e){e[_o]=y(t.match(no)[0],10)});var Zo=P("Date",!0);A("d",0,"do","day"),A("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),A("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),A("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),A("e",0,0,"weekday"),A("E",0,0,"isoWeekday"),C("day","d"),C("weekday","e"),C("isoWeekday","E"),H("d",no),H("e",no),H("E",no),H("dd",vo),H("ddd",vo),H("dddd",vo),V(["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}),V(["d","e","E"],function(t,e,i,o){e[o]=y(t)});var Ko="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),$o="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Jo="Su_Mo_Tu_We_Th_Fr_Sa".split("_");A("DDD",["DDDD",3],"DDDo","dayOfYear"),C("dayOfYear","DDD"),H("DDD",ao),H("DDDD",eo),G(["DDD","DDDD"],function(t,e,i){i._dayOfYear=y(t)}),A("H",["HH",2],0,"hour"),A("h",["hh",2],0,Qe),A("hmm",0,0,function(){return""+Qe.apply(this)+L(this.minutes(),2)}),A("hmmss",0,0,function(){return""+Qe.apply(this)+L(this.minutes(),2)+L(this.seconds(),2)}),A("Hmm",0,0,function(){return""+this.hours()+L(this.minutes(),2)}),A("Hmmss",0,0,function(){return""+this.hours()+L(this.minutes(),2)+L(this.seconds(),2)}),ti("a",!0),ti("A",!1),C("hour","h"),H("a",ei),H("A",ei),H("H",no),H("h",no),H("HH",no,to),H("hh",no,to),H("hmm",so),H("hmmss",ro),H("Hmm",so),H("Hmmss",ro),G(["H","HH"],xo),G(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),G(["h","hh"],function(t,e,i){e[xo]=y(t),l(i).bigHour=!0}),G("hmm",function(t,e,i){var o=t.length-2;e[xo]=y(t.substr(0,o)),e[ko]=y(t.substr(o)),l(i).bigHour=!0}),G("hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[xo]=y(t.substr(0,o)),e[ko]=y(t.substr(o,2)),e[Oo]=y(t.substr(n)),l(i).bigHour=!0}),G("Hmm",function(t,e,i){var o=t.length-2;e[xo]=y(t.substr(0,o)),e[ko]=y(t.substr(o))}),G("Hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[xo]=y(t.substr(0,o)),e[ko]=y(t.substr(o,2)),e[Oo]=y(t.substr(n))});var Qo=/[ap]\.?m?\.?/i,tn=P("Hours",!0);A("m",["mm",2],0,"minute"),C("minute","m"),H("m",no),H("mm",no,to),G(["m","mm"],ko);var en=P("Minutes",!1);A("s",["ss",2],0,"second"),C("second","s"),H("s",no),H("ss",no,to),G(["s","ss"],Oo);var on=P("Seconds",!1);A("S",0,0,function(){return~~(this.millisecond()/100)}),A(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),A(0,["SSS",3],0,"millisecond"),A(0,["SSSS",4],0,function(){return 10*this.millisecond()}),A(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),A(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),A(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),A(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),A(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),C("millisecond","ms"),H("S",ao,Qi),H("SS",ao,to),H("SSS",ao,eo);var nn;for(nn="SSSS";nn.length<=9;nn+="S")H(nn,uo);for(nn="S";nn.length<=9;nn+="S")G(nn,ni);var sn=P("Milliseconds",!1);A("z",0,0,"zoneAbbr"),A("zz",0,0,"zoneName");var rn=m.prototype;rn.add=Vo,rn.calendar=te,rn.clone=ee,rn.diff=he,rn.endOf=we,rn.format=ce,rn.from=pe,rn.fromNow=fe,rn.to=me,rn.toNow=ve,rn.get=z,rn.invalidAt=Ee,rn.isAfter=ie,rn.isBefore=oe,rn.isBetween=ne,rn.isSame=se,rn.isSameOrAfter=re,rn.isSameOrBefore=ae,rn.isValid=Ce,rn.lang=qo,rn.locale=ge,rn.localeData=ye,rn.max=Ro,rn.min=jo,rn.parsingFlags=Te,rn.set=z,rn.startOf=be,rn.subtract=Uo,rn.toArray=Oe,rn.toObject=Me,rn.toDate=ke,rn.toISOString=ue,rn.toJSON=De,rn.toString=le,rn.unix=xe,rn.valueOf=_e,rn.creationData=Se,rn.year=Fo,rn.isLeapYear=lt,rn.weekYear=Ie,rn.isoWeekYear=Ne,rn.quarter=rn.quarters=Fe,rn.month=J,rn.daysInMonth=Q,rn.week=rn.weeks=We,rn.isoWeek=rn.isoWeeks=Ye,rn.weeksInYear=Le,rn.isoWeeksInYear=ze,rn.date=Zo,rn.day=rn.days=Ze,rn.weekday=Ke,rn.isoWeekday=$e,rn.dayOfYear=Je,rn.hour=rn.hours=tn,rn.minute=rn.minutes=en,rn.second=rn.seconds=on,rn.millisecond=rn.milliseconds=sn,rn.utcOffset=Bt,rn.utc=jt,rn.local=Rt,rn.parseZone=Ht,rn.hasAlignedHourOffset=Wt,rn.isDST=Yt,rn.isDSTShifted=Gt,rn.isLocal=Vt,rn.isUtcOffset=Ut,rn.isUtc=qt,rn.isUTC=qt,rn.zoneAbbr=si,rn.zoneName=ri,rn.dates=it("dates accessor is deprecated. Use date instead.",Zo),rn.months=it("months accessor is deprecated. Use month instead",J),rn.years=it("years accessor is deprecated. Use year instead",Fo),rn.zone=it("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Ft);var an=rn,hn={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},dn={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"},ln="Invalid date",un="%d",cn=/\d{1,2}/,pn={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"},fn=w.prototype;fn._calendar=hn,fn.calendar=di,fn._longDateFormat=dn,fn.longDateFormat=li,fn._invalidDate=ln,fn.invalidDate=ui,fn._ordinal=un,fn.ordinal=ci,fn._ordinalParse=cn,fn.preparse=pi,fn.postformat=pi,fn._relativeTime=pn,fn.relativeTime=fi,fn.pastFuture=mi,fn.set=vi,fn.months=X,fn._months=Eo,fn.monthsShort=Z,fn._monthsShort=So,fn.monthsParse=K,fn.week=je,fn._week=Xo,fn.firstDayOfYear=He,fn.firstDayOfWeek=Re,fn.weekdays=Ve,fn._weekdays=Ko,fn.weekdaysMin=qe,fn._weekdaysMin=Jo,fn.weekdaysShort=Ue,fn._weekdaysShort=$o,fn.weekdaysParse=Xe,fn.isPM=ii,fn._meridiemParse=Qo,fn.meridiem=oi,O("en",{monthsParse:[/^jan/i,/^feb/i,/^mar/i,/^apr/i,/^may/i,/^jun/i,/^jul/i,/^aug/i,/^sep/i,/^oct/i,/^nov/i,/^dec/i],longMonthsParse:[/^january$/i,/^february$/i,/^march$/i,/^april$/i,/^may$/i,/^june$/i,/^july$/i,/^august$/i,/^september$/i,/^october$/i,/^november$/i,/^december$/i],shortMonthsParse:[/^jan$/i,/^feb$/i,/^mar$/i,/^apr$/i,/^may$/i,/^jun$/i,/^jul$/i,/^aug/i,/^sept?$/i,/^oct$/i,/^nov$/i,/^dec$/i],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=it("moment.lang is deprecated. Use moment.locale instead.",O),e.langData=it("moment.langData is deprecated. Use moment.localeData instead.",D);var mn=Math.abs,vn=zi("ms"),gn=zi("s"),yn=zi("m"),bn=zi("h"),wn=zi("d"),_n=zi("w"),xn=zi("M"),kn=zi("y"),On=Ai("milliseconds"),Mn=Ai("seconds"),Dn=Ai("minutes"),Cn=Ai("hours"),Tn=Ai("days"),En=Ai("months"),Sn=Ai("years"),Pn=Math.round,In={s:45,m:45,h:22,d:26,M:11},Nn=Math.abs,zn=Pt.prototype;zn.abs=Oi,zn.add=Di,zn.subtract=Ci,zn.as=Ii,zn.asMilliseconds=vn,zn.asSeconds=gn,zn.asMinutes=yn,zn.asHours=bn,zn.asDays=wn,zn.asWeeks=_n,zn.asMonths=xn,zn.asYears=kn,zn.valueOf=Ni,zn._bubble=Ei,zn.get=Li,zn.milliseconds=On,zn.seconds=Mn,zn.minutes=Dn,zn.hours=Cn,zn.days=Tn,zn.weeks=Bi,zn.months=En,zn.years=Sn,zn.humanize=Hi,zn.toISOString=Wi,zn.toString=Wi,zn.toJSON=Wi,zn.locale=ge,zn.localeData=ye,zn.toIsoString=it("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Wi),zn.lang=qo,A("X",0,0,"unix"),A("x",0,0,"valueOf"),H("x",co),H("X",mo),G("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),G("x",function(t,e,i){i._d=new Date(y(t))}),e.version="2.11.0",i(Ct),e.fn=an,e.min=Et,e.max=St,e.now=Ho,e.utc=h,e.unix=ai,e.months=bi,e.isDate=n,e.locale=O,e.invalid=c,e.duration=Xt,e.isMoment=v,e.weekdays=_i,e.parseZone=hi,e.localeData=D,e.isDuration=It,e.monthsShort=wi,e.weekdaysMin=ki,e.defineLocale=M,e.weekdaysShort=xi,e.normalizeUnits=T,e.relativeTimeThreshold=Ri,e.prototype=an;var Ln=e;return Ln})}).call(e,i(4)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e){function i(t){throw new Error("Cannot find module '"+t+"'.")}i.keys=function(){return[]},i.resolve=i,t.exports=i,i.id=5},function(t,e){(function(e){function i(t,e,i){var o=e&&i||0,n=0;for(e=e||[],t.toLowerCase().replace(/[0-9a-f]{2}/g,function(t){16>n&&(e[o+n++]=u[t])});16>n;)e[o+n++]=0;return e}function o(t,e){var i=e||0,o=l;return o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]}function n(t,e,i){var n=e&&i||0,s=e||[];t=t||{};var r=void 0!==t.clockseq?t.clockseq:m,a=void 0!==t.msecs?t.msecs:(new Date).getTime(),h=void 0!==t.nsecs?t.nsecs:g+1,d=a-v+(h-g)/1e4;if(0>d&&void 0===t.clockseq&&(r=r+1&16383),(0>d||a>v)&&void 0===t.nsecs&&(h=0),h>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=a,g=h,m=r,a+=122192928e5;var l=(1e4*(268435455&a)+h)%4294967296;s[n++]=l>>>24&255,s[n++]=l>>>16&255,s[n++]=l>>>8&255,s[n++]=255&l;var u=a/4294967296*1e4&268435455;s[n++]=u>>>8&255,s[n++]=255&u,s[n++]=u>>>24&15|16,s[n++]=u>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var c=t.node||f,p=0;6>p;p++)s[n+p]=c[p];return e?e:o(s)}function s(t,e,i){var n=e&&i||0;"string"==typeof t&&(e="binary"==t?new Array(16):null,t=null),t=t||{};var s=t.random||(t.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,e)for(var a=0;16>a;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:"undefined"!=typeof e?e:null;if(a&&a.crypto&&crypto.getRandomValues){var h=new Uint8Array(16);r=function(){return crypto.getRandomValues(h),h}}if(!r){var d=new Array(16);r=function(){for(var t,e=0;16>e;e++)0===(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;256>c;c++)l[c]=(c+256).toString(16).substr(1),u[l[c]]=c;var p=r(),f=[1|p[0],p[1],p[2],p[3],p[4],p[5]],m=16383&(p[6]<<8|p[7]),v=0,g=0,y=s;y.v1=n,y.v4=s,y.parse=i,y.unparse=o,t.exports=y}).call(e,function(){return this}())},function(t,e){e.prepareElements=function(t){for(var e in t)t.hasOwnProperty(e)&&(t[e].redundant=t[e].used,t[e].used=[])},e.cleanupElements=function(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e].redundant){for(var i=0;i0?(o=e[t].redundant[0],e[t].redundant.shift()):(o=document.createElementNS("http://www.w3.org/2000/svg",t),i.appendChild(o)):(o=document.createElementNS("http://www.w3.org/2000/svg",t),e[t]={used:[],redundant:[]},i.appendChild(o)),e[t].used.push(o),o},e.getDOMElement=function(t,e,i,o){var n;return e.hasOwnProperty(t)?e[t].redundant.length>0?(n=e[t].redundant[0],e[t].redundant.shift()):(n=document.createElement(t),void 0!==o?i.insertBefore(n,o):i.appendChild(n)):(n=document.createElement(t),e[t]={used:[],redundant:[]},void 0!==o?i.insertBefore(n,o):i.appendChild(n)),e[t].used.push(n),n},e.drawPoint=function(t,i,o,n,s,r){var a;if("circle"==o.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.size),a.setAttributeNS(null,"y",i-.5*o.size),a.setAttributeNS(null,"width",o.size),a.setAttributeNS(null,"height",o.size)),void 0!==o.styles&&a.setAttributeNS(null,"style",o.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i=Object.keys(this._options.type),o=0,n=i.length;n>o;o++){var s=i[o],r=this._options.type[s];"Date"==r||"ISODate"==r||"ASPDate"==r?this._type[s]="Date":this._type[s]=r}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(1),s=i(9);o.prototype.setOptions=function(t){t&&void 0!==t.queue&&(t.queue===!1?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=s.extend(this,{replace:["add","update","remove"]})),"object"==typeof t.queue&&this._queue.setOptions(t.queue)))},o.prototype.on=function(t,e){var i=this._subscribers[t];i||(i=[],this._subscribers[t]=i),i.push({callback:e})},o.prototype.subscribe=function(){throw new Error("DataSet.subscribe is deprecated. Use DataSet.on instead.")},o.prototype.off=function(t,e){var i=this._subscribers[t];i&&(this._subscribers[t]=i.filter(function(t){return t.callback!=e}))},o.prototype.unsubscribe=function(){throw new Error("DataSet.unsubscribe is deprecated. Use DataSet.off instead.")},o.prototype._trigger=function(t,e,i){if("*"==t)throw new Error("Cannot trigger event *");var o=[];t in this._subscribers&&(o=o.concat(this._subscribers[t])),"*"in this._subscribers&&(o=o.concat(this._subscribers["*"]));for(var n=0,s=o.length;s>n;n++){var r=o[n];r.callback&&r.callback(t,e,i||null)}},o.prototype.add=function(t,e){var i,o=[],n=this;if(Array.isArray(t))for(var s=0,r=t.length;r>s;s++)i=n._addItem(t[s]),o.push(i);else{if(!(t instanceof Object))throw new Error("Unknown dataType");i=n._addItem(t),o.push(i)}return o.length&&this._trigger("add",{items:o},e),o},o.prototype.update=function(t,e){var i=[],o=[],s=[],r=[],a=this,h=a._fieldId,d=function(t){var e=t[h];if(a._data[e]){var d=n.extend({},a._data[e]);e=a._updateItem(t),o.push(e),r.push(t),s.push(d)}else e=a._addItem(t),i.push(e)};if(Array.isArray(t))for(var l=0,u=t.length;u>l;l++)t[l]instanceof Object?d(t[l]):console.warn("Ignoring input item, which is not an object at index "+l);else{if(!(t instanceof Object))throw new Error("Unknown dataType");d(t)}if(i.length&&this._trigger("add",{items:i},e),o.length){var c={items:o,oldData:s,data:r};this._trigger("update",c,e)}return i.concat(o)},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r?(e=arguments[0],o=arguments[1]):"Array"==r?(i=arguments[0],o=arguments[1]):o=arguments[0];var a;if(o&&o.returnType){var h=["Array","Object"];a=-1==h.indexOf(o.returnType)?"Array":o.returnType}else a="Array";var d,l,u,c,p,f=o&&o.type||this._options.type,m=o&&o.filter,v=[];if(void 0!=e)d=s._getItem(e,f),d&&m&&!m(d)&&(d=null);else if(void 0!=i)for(c=0,p=i.length;p>c;c++)d=s._getItem(i[c],f),(!m||m(d))&&v.push(d);else for(l=Object.keys(this._data),c=0,p=l.length;p>c;c++)u=l[c],d=s._getItem(u,f),(!m||m(d))&&v.push(d);if(o&&o.order&&void 0==e&&this._sort(v,o.order),o&&o.fields){var g=o.fields;if(void 0!=e)d=this._filterFields(d,g);else for(c=0,p=v.length;p>c;c++)v[c]=this._filterFields(v[c],g)}if("Object"==a){var y,b={};for(c=0,p=v.length;p>c;c++)y=v[c],b[y.id]=y;return b}return void 0!=e?d:v},o.prototype.getIds=function(t){var e,i,o,n,s,r=this._data,a=t&&t.filter,h=t&&t.order,d=t&&t.type||this._options.type,l=Object.keys(r),u=[];if(a)if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&s.push(n);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&u.push(n[this._fieldId]);else if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],s.push(r[o]);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=r[o],u.push(n[this._fieldId]);return u},o.prototype.getDataSet=function(){return this},o.prototype.forEach=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=this._data,d=Object.keys(h);if(e&&e.order){var l=this.get(e);for(i=0,o=l.length;o>i;i++)n=l[i],s=n[this._fieldId],t(n,s)}else for(i=0,o=d.length;o>i;i++)s=d[i],n=this._getItem(s,a),(!r||r(n))&&t(n,s)},o.prototype.map=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=[],d=this._data,l=Object.keys(d);for(i=0,o=l.length;o>i;i++)n=l[i],s=this._getItem(n,a),(!r||r(s))&&h.push(t(s,n));return e&&e.order&&this._sort(h,e.order),h},o.prototype._filterFields=function(t,e){if(!t)return t;var i,o,n={},s=Object.keys(t),r=s.length;if(Array.isArray(e))for(i=0;r>i;i++)o=s[i],-1!=e.indexOf(o)&&(n[o]=t[o]);else for(i=0;r>i;i++)o=s[i],e.hasOwnProperty(o)&&(n[e[o]]=t[o]);return n},o.prototype._sort=function(t,e){if(n.isString(e)){var i=e;t.sort(function(t,e){var o=t[i],n=e[i];return o>n?1:n>o?-1:0})}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");t.sort(e)}},o.prototype.remove=function(t,e){var i,o,n,s=[];if(Array.isArray(t))for(i=0,o=t.length;o>i;i++)n=this._remove(t[i]),null!=n&&s.push(n);else n=this._remove(t),null!=n&&s.push(n);return s.length&&this._trigger("remove",{items:s},e),s},o.prototype._remove=function(t){if(n.isNumber(t)||n.isString(t)){if(this._data[t])return delete this._data[t],this.length--,t}else if(t instanceof Object){var e=t[this._fieldId];if(void 0!==e&&this._data[e])return delete this._data[e],this.length--,e}return null},o.prototype.clear=function(t){var e=Object.keys(this._data);return this._data={},this.length=0,this._trigger("remove",{items:e},t),e},o.prototype.max=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||d>r)&&(s=h,r=d)}return s},o.prototype.min=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||r>d)&&(s=h,r=d)}return s},o.prototype.distinct=function(t){var e,i,o,s=this._data,r=Object.keys(s),a=[],h=this._options.type&&this._options.type[t]||null,d=0; -for(e=0,o=r.length;o>e;e++){var l=r[e],u=s[l],c=u[t],p=!1;for(i=0;d>i;i++)if(a[i]==c){p=!0;break}p||void 0===c||(a[d]=c,d++)}if(h)for(e=0,o=a.length;o>e;e++)a[e]=n.convert(a[e],h);return a},o.prototype._addItem=function(t){var e=t[this._fieldId];if(void 0!=e){if(this._data[e])throw new Error("Cannot add item: item with id "+e+" already exists")}else e=n.randomUUID(),t[this._fieldId]=e;var i,o,s={},r=Object.keys(t);for(i=0,o=r.length;o>i;i++){var a=r[i],h=this._type[a];s[a]=n.convert(t[a],h)}return this._data[e]=s,this.length++,e},o.prototype._getItem=function(t,e){var i,o,s,r,a=this._data[t];if(!a)return null;var h={},d=Object.keys(a);if(e)for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=n.convert(o,e[i]);else for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=o;return h},o.prototype._updateItem=function(t){var e=t[this._fieldId];if(void 0==e)throw new Error("Cannot update item: item has no id (item: "+JSON.stringify(t)+")");var i=this._data[e];if(!i)throw new Error("Cannot update item: no item with id "+e+" found");for(var o=Object.keys(t),s=0,r=o.length;r>s;s++){var a=o[s],h=this._type[a];i[a]=n.convert(t[a],h)}return e},t.exports=o},function(t,e){function i(t){this.delay=null,this.max=1/0,this._queue=[],this._timeout=null,this._extended=null,this.setOptions(t)}i.prototype.setOptions=function(t){t&&"undefined"!=typeof t.delay&&(this.delay=t.delay),t&&"undefined"!=typeof t.max&&(this.max=t.max),this._flushIfNeeded()},i.extend=function(t,e){var o=new i(e);if(void 0!==t.flush)throw new Error("Target object already has a property flush");t.flush=function(){o.flush()};var n=[{name:"flush",original:void 0}];if(e&&e.replace)for(var s=0;sthis.max&&this.flush(),clearTimeout(this._timeout),this.queue.length>0&&"number"==typeof this.delay){var t=this;this._timeout=setTimeout(function(){t.flush()},this.delay)}},i.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=i},function(t,e,i){function o(t,e){this._data=null,this._ids={},this.length=0,this._options=e||{},this._fieldId="id",this._subscribers={};var i=this;this.listener=function(){i._onEvent.apply(i,arguments)},this.setData(t)}var n=i(1),s=i(8);o.prototype.setData=function(t){var e,i,o,n;if(this._data&&(this._data.off&&this._data.off("*",this.listener),e=Object.keys(this._ids),this._ids={},this.length=0,this._trigger("remove",{items:e})),this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),o=0,n=e.length;n>o;o++)i=e[o],this._ids[i]=!0;this.length=e.length,this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},o.prototype.refresh=function(){var t,e,i,o=this._data.getIds({filter:this._options&&this._options.filter}),n=Object.keys(this._ids),s={},r=[],a=[];for(e=0,i=o.length;i>e;e++)t=o[e],s[t]=!0,this._ids[t]||(r.push(t),this._ids[t]=!0);for(e=0,i=n.length;i>e;e++)t=n[e],s[t]||(a.push(t),delete this._ids[t]);this.length+=r.length-a.length,r.length&&this._trigger("add",{items:r}),a.length&&this._trigger("remove",{items:a})},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r||"Array"==r?(e=arguments[0],i=arguments[1],o=arguments[2]):(i=arguments[0],o=arguments[1]);var a=n.extend({},this._options,i);this._options.filter&&i&&i.filter&&(a.filter=function(t){return s._options.filter(t)&&i.filter(t)});var h=[];return void 0!=e&&h.push(e),h.push(a),h.push(o),this._data&&this._data.get.apply(this._data,h)},o.prototype.getIds=function(t){var e;if(this._data){var i,o=this._options.filter;i=t&&t.filter?o?function(e){return o(e)&&t.filter(e)}:t.filter:o,e=this._data.getIds({filter:i,order:t&&t.order})}else e=[];return e},o.prototype.map=function(t,e){var i=[];if(this._data){var o,n=this._options.filter;o=e&&e.filter?n?function(t){return n(t)&&e.filter(t)}:e.filter:n,i=this._data.map(t,{filter:o,order:e&&e.order})}else i=[];return i},o.prototype.getDataSet=function(){for(var t=this;t instanceof o;)t=t._data;return t||null},o.prototype._onEvent=function(t,e,i){var o,n,s,r,a=e&&e.items,h=this._data,d=[],l=[],u=[],c=[];if(a&&h){switch(t){case"add":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r&&(this._ids[s]=!0,l.push(s));break;case"update":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r?this._ids[s]?(u.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],c.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],c.push(s))}this.length+=l.length-c.length,l.length&&this._trigger("add",{items:l},i),u.length&&this._trigger("update",{items:u,data:d},i),c.length&&this._trigger("remove",{items:c},i)}},o.prototype.on=s.prototype.on,o.prototype.off=s.prototype.off,o.prototype._trigger=s.prototype._trigger,o.prototype.subscribe=o.prototype.on,o.prototype.unsubscribe=o.prototype.off,t.exports=o},function(t,e,i){function o(t,e,i){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var n=function(t){return t};this.xValueLabel=n,this.yValueLabel=n,this.zValueLabel=n,this.filterLabel="time",this.legendLabel="value",this.style=o.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new c,this.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.axisColor="#4D4D4D",this.gridColor="#D3D3D3",this.dataColor={fill:"#7DC1FF",stroke:"#3267D2",strokeWidth:1},this.create(),this.setOptions(i),e&&this.setData(e)}function n(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function s(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(12),a=i(8),h=i(10),d=i(1),l=i(13),u=i(14),c=i(15),p=i(16),f=i(17),m=i(18);r(o.prototype),o.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==o.STYLE.DOTCOLOR&&this.style!==o.STYLE.DOTSIZE&&this.style!==o.STYLE.BARCOLOR&&this.style!==o.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},o.prototype.getNumberOfRows=function(t){return t.length},o.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},o.prototype.getDistinctValues=function(t,e){for(var i=[],o=0;ot[o][e]&&(i.min=t[o][e]),i.maxt;t++){var f=(t-c)/(p-c),v=240*f,g=this._hsv2rgb(v,1,1);u.strokeStyle=g,u.beginPath(),u.moveTo(h,r+t),u.lineTo(a,r+t),u.stroke()}u.strokeStyle=this.axisColor,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.axisColor,u.fillStyle=this.dataColor.fill,u.beginPath(),u.moveTo(h,r),u.lineTo(a,r),u.lineTo(a-i+e,d),u.lineTo(h,d),u.closePath(),u.fill(),u.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new m(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new l(_,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(v.lineWidth=1,o=void 0===this.defaultYStep,i=new m(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new l(s,i.getCurrent(),this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(v.lineWidth=1,o=void 0===this.defaultZStep,i=new m(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(s,r,i.getCurrent())),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(t.x-b,t.y),v.stroke(),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();v.lineWidth=1,t=this._convert3Dto2D(new l(s,r,this.zMin)),e=this._convert3Dto2D(new l(s,r,this.zMax)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),v.lineWidth=1,c=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),c=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),v.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke();var x=this.xLabel;x.length>0&&(u=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(w)>0?this.yMin-u:this.yMax+u,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)>0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(w)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*w)<0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*w)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(k,n.x,n.y));var O=this.zLabel;O.length>0&&(h=30,s=Math.cos(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 l(s,r,a)),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(O,n.x-h,n.y))},o.prototype._hsv2rgb=function(t,e,i){var o,n,s,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:o=r,n=h,s=0;break;case 1:o=h,n=r,s=0;break;case 2:o=0,n=r,s=h;break;case 3:o=0,n=h,s=r;break;case 4:o=h,n=0,s=r;break;case 5:o=r,n=0,s=h;break;default:o=0,n=0,s=0}return"RGB("+parseInt(255*o)+","+parseInt(255*n)+","+parseInt(255*s)+")"},o.prototype._redrawDataGrid=function(){var t,e,i,n,s,r,a,h,d,u,c,p,f=this.frame.canvas,m=f.getContext("2d");if(m.lineJoin="round",m.lineCap="round",!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(p=(t.point.z+e.point.z+i.point.z+n.point.z)/4,d=240*(1-(p-this.zMin)*this.scale.z/this.verticalRatio),u=1,this.showShadow?(c=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,u,c),h=a):(c=1,a=this._hsv2rgb(d,u,c),h=this.axisColor)):(a="gray",h=this.axisColor),m.lineWidth=this._getStrokeWidth(t),m.fillStyle=a,m.strokeStyle=h,m.beginPath(),m.moveTo(t.screen.x,t.screen.y),m.lineTo(e.screen.x,e.screen.y),m.lineTo(n.screen.x,n.screen.y),m.lineTo(i.screen.x,i.screen.y),m.closePath(),m.fill(),m.stroke()}}else for(s=0;sc&&(c=0);var p,f,m;this.style===o.STYLE.DOTCOLOR?(p=240*(1-(d.point.value-this.valueMin)*this.scale.value), -f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)):this.style===o.STYLE.DOTSIZE?(f=this.dataColor.fill,m=this.dataColor.stroke):(p=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)),i.lineWidth=this._getStrokeWidth(d),i.strokeStyle=m,i.fillStyle=f,i.beginPath(),i.arc(d.screen.x,d.screen.y,c,0,2*Math.PI,!0),i.fill(),i.stroke()}}},o.prototype._redrawDataBar=function(){var t,e,i,n,s=this.frame.canvas,r=s.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0){for(t=this.dataPoints[0],o.lineWidth=this._getStrokeWidth(t),o.lineJoin="round",o.lineCap="round",o.strokeStyle=this.dataColor.stroke,o.beginPath(),o.moveTo(t.screen.x,t.screen.y),e=1;e0?1:0>t?-1:0}var o=e[0],n=e[1],s=e[2],r=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),a=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x)),h=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},o.prototype._dataPointFromXY=function(t,e){var i,n=100,s=null,r=null,a=null,h=new u(t,e);if(this.style===o.STYLE.BAR||this.style===o.STYLE.BARCOLOR||this.style===o.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){s=this.dataPoints[i];var d=s.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var c=d[l],p=c.corners,f=[p[0].screen,p[1].screen,p[2].screen],m=[p[2].screen,p[3].screen,p[0].screen];if(this._insideTriangle(h,f)||this._insideTriangle(h,m))return s}}else for(i=0;ib)&&n>b&&(a=b,r=s)}}return r},o.prototype._showTooltip=function(t){var e,i,o;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,o=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",o=document.createElement("div"),o.style.position="absolute",o.style.height="0",o.style.width="0",o.style.border="5px solid #4d4d4d",o.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:o}}),this._hideTooltip(),this.tooltip.dataPoint=t,"function"==typeof this.showTooltip?e.innerHTML=this.showTooltip(t.point):e.innerHTML="
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(o);var n=e.offsetWidth,s=e.offsetHeight,r=i.offsetHeight,a=o.offsetWidth,h=o.offsetHeight,d=t.screen.x-n/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-n),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-s+"px",o.style.left=t.screen.x-a/2+"px",o.style.top=t.screen.y-h/2+"px"},o.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=o},function(t,e){function i(t){return t?o(t):void 0}function o(t){for(var e in i.prototype)t[e]=i.prototype[e];return t}t.exports=i,i.prototype.on=i.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},i.prototype.once=function(t,e){function i(){o.off(t,i),e.apply(this,arguments)}var o=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},i.prototype.off=i.prototype.removeListener=i.prototype.removeAllListeners=i.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var i=this._callbacks[t];if(!i)return this;if(1==arguments.length)return delete this._callbacks[t],this;for(var o,n=0;no;++o)i[o].apply(this,e)}return this},i.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},i.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e){function i(t,e,i){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0,this.z=void 0!==i?i:0}i.subtract=function(t,e){var o=new i;return o.x=t.x-e.x,o.y=t.y-e.y,o.z=t.z-e.z,o},i.add=function(t,e){var o=new i;return o.x=t.x+e.x,o.y=t.y+e.y,o.z=t.z+e.z,o},i.avg=function(t,e){return new i((t.x+e.x)/2,(t.y+e.y)/2,(t.z+e.z)/2)},i.crossProduct=function(t,e){var o=new i;return o.x=t.y*e.z-t.z*e.y,o.y=t.z*e.x-t.x*e.z,o.z=t.x*e.y-t.y*e.x,o},i.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.exports=i},function(t,e){function i(t,e){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0}t.exports=i},function(t,e,i){function o(){this.armLocation=new n,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new n,this.cameraRotation=new n(.5*Math.PI,0,0),this.calculateCameraOrientation()}var n=i(13);o.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},o.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},o.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},o.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},o.prototype.getArmLength=function(){return this.armLength},o.prototype.getCameraLocation=function(){return this.cameraLocation},o.prototype.getCameraRotation=function(){return this.cameraRotation},o.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=o},function(t,e,i){function o(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var n=i(10);o.prototype.isLoaded=function(){return this.loaded},o.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++;return Math.round(e/t*100)},o.prototype.getLabel=function(){return this.graph.filterLabel},o.prototype.getColumn=function(){return this.column},o.prototype.getSelectedValue=function(){return void 0!==this.index?this.values[this.index]:void 0},o.prototype.getValues=function(){return this.values},o.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t]},o.prototype._getDataPoints=function(t){if(void 0===t&&(t=this.index),void 0===t)return[];var e;if(this.dataPoints[t])e=this.dataPoints[t];else{var i={};i.column=this.column,i.value=this.values[t];var o=new n(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(o),this.dataPoints[t]=e}return e},o.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},o.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},o.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},o.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},o.prototype.setIndex=function(t){if(!(to&&(o=0),o>this.values.length-1&&(o=this.values.length-1),o},o.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,o=i+3;return o},o.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,o=this.leftToIndex(i);this.setIndex(o),n.preventDefault()},o.prototype._onMouseUp=function(t){this.frame.style.cursor="auto",n.removeEventListener(document,"mousemove",this.onmousemove),n.removeEventListener(document,"mouseup",this.onmouseup),n.preventDefault()},t.exports=o},function(t,e){function i(t,e,i,o){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,o)}i.prototype.setRange=function(t,e,i,o){this._start=t?t:0,this._end=e?e:0,this.setStep(i,o)},i.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this.prettyStep===!0?this._step=i.calculatePrettyStep(t):this._step=t)},i.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),o=2*Math.pow(10,Math.round(e(t/2))),n=5*Math.pow(10,Math.round(e(t/5))),s=i;return Math.abs(o-t)<=Math.abs(s-t)&&(s=o),Math.abs(n-t)<=Math.abs(s-t)&&(s=n),0>=s&&(s=1),s},i.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},i.prototype.getStep=function(){return this._step},i.prototype.start=function(){this._current=this._start-this._start%this._step},i.prototype.next=function(){this._current+=this._step},i.prototype.end=function(){return this._current>this._end},t.exports=i},function(t,e,i){function o(t,e,i,d){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof r||i instanceof a)&&i instanceof Object){var c=d;d=i,i=c}var f=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},moment:n,width:null,height:null,maxHeight:null,minHeight:null},this.options=s.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function(){return f.timeAxis.step.scale},getStep:function(){return f.timeAxis.step.step},toScreen:f._toScreen.bind(f),toGlobalScreen:f._toGlobalScreen.bind(f),toTime:f._toTime.bind(f),toGlobalTime:f._toGlobalTime.bind(f)}},this.range=new h(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new l(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new u(this.body),this.components.push(this.currentTime),this.itemSet=new p(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){f.emit("click",f.getEventProperties(t))}),this.on("doubletap",function(t){f.emit("doubleClick",f.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){f.emit("contextmenu",f.getEventProperties(t))},d&&this.setOptions(d),i&&this.setGroups(i),e?this.setItems(e):this._redraw()}var n=(i(12),i(20),i(2)),s=i(1),r=i(8),a=i(10),h=i(23),d=i(27),l=i(38),u=i(43),c=i(41),p=i(28),f=i(44),m=i(46)["default"],v=i(46).printStyle,g=i(47).allOptions,y=i(47).configureOptions;o.prototype=new d,o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},o.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},o.prototype.setOptions=function(t){var e=m.validate(t,g);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",v),d.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var i=this.itemsData;if(i){var o=this.getSelection();this.setItems(null),this.setItems(i),this.setSelection(o)}}},o.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof r||t instanceof a?t:new r(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){if(void 0==this.options.start||void 0==this.options.end)var o=this.getItemRange();var n=void 0!=this.options.start?this.options.start:o.min,s=void 0!=this.options.end?this.options.end:o.max;this.setWindow(n,s,{animation:!1})}else this.fit({animation:!1})},o.prototype.setGroups=function(t){var e;e=t?t instanceof r||t instanceof a?t:new r(t):null,this.groupsData=e,this.itemSet.setGroups(e)},o.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},o.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},o.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},o.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],o=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),n=null,s=null;if(o.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===n||n>e)&&(n=e),(null===s||i>s)&&(s=i)}),null!==n&&null!==s){var r=(n+s)/2,a=Math.max(this.range.end-this.range.start,1.1*(s-n)),h=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(r-a/2,r+a/2,h)}}},o.prototype.fit=function(t){var e=t&&void 0!==t.animation?t.animation:!0,i=this.getItemRange();this.range.setRange(i.min,i.max,e)},o.prototype.getItemRange=function(){var t=this,e=this.getDataRange(),i=null!==e.min?e.min.valueOf():null,o=null!==e.max?e.max.valueOf():null,n=null,r=null;if(null!=i&&null!=o){var a,h,d,l,u;!function(){var e=function(t){return s.convert(t.data.start,"Date").valueOf()},c=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return s.convert(e,"Date").valueOf()};a=o-i,0>=a&&(a=10),h=a/t.props.center.width,s.forEach(t.itemSet.items,function(t){t.show();var s=e(t),a=c(t),d=s-(t.getWidthLeft()+10)*h,l=a+(t.getWidthRight()+10)*h;i>d&&(i=d,n=t),l>o&&(o=l,r=t)}.bind(t)),n&&r&&(d=n.getWidthLeft()+10,l=r.getWidthRight()+10,u=t.props.center.width-d-l,u>0&&(i=e(n)-d*a/u,o=c(r)+l*a/u))}()}return{min:null!=i?new Date(i):null,max:null!=o?new Date(o):null}},o.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=s.convert(i.start,"Date").valueOf(),n=s.convert(void 0!=i.end?i.end:i.start,"Date").valueOf();(null===t||t>o)&&(t=o),(null===e||n>e)&&(e=n)}),{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=c.customTimeFromTarget(t),d=this.itemSet.options.snap||null,l=this.body.util.getScale(),u=this.body.util.getStep(),p=this._toTime(o),f=d?d(p,l,u):p,m=s.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":s.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&s.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":s.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":s.hasParent(m,this.currentTime.bar)?v="current-time":s.hasParent(m,this.dom.center)&&(v="background"),{event:t,item:r?r.id:null,group:a?a.groupId:null,what:v,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:p,snappedTime:f}},t.exports=o},function(t,e,i){if("undefined"!=typeof window){var o=i(21),n=window.Hammer||i(22);t.exports=o(n,{preventDefault:"mouse"})}else t.exports=function(){throw Error("hammer.js is only available in a browser, not in node.js.")}},function(t,e,i){var o,n,s;!function(i){n=[],o=i,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(function(){var t=null;return function e(i,o){function n(t){return t.match(/[^ ]+/g)}function s(e){if("hammer.input"!==e.type){if(e.srcEvent._handled||(e.srcEvent._handled={}),e.srcEvent._handled[e.type])return;e.srcEvent._handled[e.type]=!0}var i=!1;e.stopPropagation=function(){i=!0};var o=e.srcEvent.stopPropagation;"function"==typeof o&&(e.srcEvent.stopPropagation=function(){o(),e.stopPropagation()}),e.firstTarget=t;for(var n=t;n&&!i;){if(n.hammer)for(var s,r=0;r0?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(e,o){t=o.target,i.emit(e,o)},d.destroy=function(){var t=i.element.hammer,e=t.indexOf(d);-1!==e&&t.splice(e,1),t.length||delete i.element.hammer,d._handlers={},i.destroy()},d}})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(p(t,i),e)}function d(t,e,i){return Array.isArray(t)?(l(t,i[e],i),!0):!1}function l(t,e,i){var o;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==a)for(o=0;o\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=n.console&&(n.console.warn||n.console.log);return s&&s.call(n.console,o,i),t.apply(this,arguments)}}function c(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ut(o,i)}function p(t,e){return function(){return t.apply(e,arguments)}}function f(t,e){return typeof t==ft?t.apply(e?e[0]||a:a,e):t}function m(t,e){return t===a?e:t}function v(t,e,i){l(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=F(a,h),e.distance=B(a,h),P(i,e),e.offsetDirection=A(e.deltaX,e.deltaY);var d=L(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=d.x,e.overallVelocityY=d.y,e.overallVelocity=vt(d.x)>vt(d.y)?d.x:d.y,e.scale=r?R(r.pointers,o):1,e.rotation=r?j(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===St||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>Et||r.velocity===a)){var d=e.deltaX-r.deltaX,l=e.deltaY-r.deltaY,u=L(h,d,l);o=u.x,n=u.y,i=vt(u.x)>vt(u.y)?u.x:u.y,s=A(d,l),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}function N(t){for(var e=[],i=0;in;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:mt(i/e),y:mt(o/e)}}function L(t,e,i){return{x:e/t||0,y:i/t||0}}function A(t,e){return t===e?zt:vt(t)>=vt(e)?0>t?Lt:At:0>e?Bt:Ft}function B(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 F(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 j(t,e){return F(e[1],e[0],Yt)+F(t[1],t[0],Yt)}function R(t,e){return B(e[0],e[1],Yt)/B(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Ut,this.allow=!0,this.pressed=!1,C.apply(this,arguments)}function W(){this.evEl=Zt,this.evWin=Kt,C.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function Y(){this.evTarget=Jt,this.evWin=Qt,this.started=!1,C.apply(this,arguments)}function G(t,e){var i=x(t.touches),o=x(t.changedTouches);return e&(It|Nt)&&(i=k(i.concat(o),"identifier",!0)),[i,o]}function V(){this.evTarget=ee,this.targetIds={},C.apply(this,arguments)}function U(t,e){var i=x(t.touches),o=this.targetIds;if(e&(St|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===St)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 $t={touchstart:St,touchmove:Pt,touchend:It,touchcancel:Nt},Jt="touchstart",Qt="touchstart touchmove touchend touchcancel";c(Y,C,{handler:function(t){var e=$t[t.type];if(e===St&&(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:St,touchmove:Pt,touchend:It,touchcancel:Nt},ee="touchstart touchmove touchend touchcancel";c(V,C,{handler:function(t){var e=te[t.type],i=U.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Mt,srcEvent:t})}}),c(q,C,{handler:function(t,e,i){var o=i.pointerType==Mt,n=i.pointerType==Ct;if(o)this.mouse.allow=!1;else if(n&&!this.mouse.allow)return;e&(It|Nt)&&(this.mouse.allow=!0),this.callback(t,e,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ie=O(pt.style,"touchAction"),oe=ie!==a,ne="compute",se="auto",re="manipulation",ae="none",he="pan-x",de="pan-y";X.prototype={set:function(t){t==ne&&(t=this.compute()),oe&&this.manager.element.style&&(this.manager.element.style[ie]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return l(this.manager.recognizers,function(e){f(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),Z(t.join(" "))},preventDefaults:function(t){if(!oe){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var o=this.actions,n=b(o,ae),s=b(o,de),r=b(o,he);if(n){var a=1===t.pointers.length,h=t.distance<2,d=t.deltaTime<250;if(a&&h&&d)return}if(!r||!s)return n||s&&i&jt||r&&i&Rt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var le=1,ue=2,ce=4,pe=8,fe=pe,me=16,ve=32;K.prototype={defaults:{},set:function(t){return ut(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(d(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=Q(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return d(t,"dropRecognizeWith",this)?this:(t=Q(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(d(t,"requireFailure",this))return this;var e=this.requireFail;return t=Q(t,this),-1===_(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=Q(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+$(o)),e(i.options.event),t.additionalEvent&&e(t.additionalEvent),o>=pe&&e(i.options.event+$(o))},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=ve)},canEmit:function(){for(var t=0;ts?Lt:At,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?zt:0>r?Bt:Ft,i=r!=this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},attrTest:function(t){return tt.prototype.attrTest.call(this,t)&&(this.state&ue||!(this.state&ue)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=J(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),c(it,tt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&ue)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),c(ot,K,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[se]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancee.time;if(this._input=t,!o||!i||t.eventType&(It|Nt)&&!n)this.reset();else if(t.eventType&St)this.reset(),this._timer=h(function(){this.state=fe,this.tryEmit()},e.time,this);else if(t.eventType&It)return fe;return ve},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===fe&&(t&&t.eventType&It?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=gt(),this.manager.emit(this.options.event,this._input)))}}),c(nt,tt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&ue)}}),c(st,tt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:jt|Rt,pointers:1},getTouchAction:function(){return et.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(jt|Rt)?e=t.overallVelocity:i&jt?e=t.overallVelocityX:i&Rt&&(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=J(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),c(rt,K,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[re]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distanceu,c=r||null===n?n:h+(n-h)*i,v=r||null===s?s:l+(s-l)*i;g=a._applyRange(c,v),d.updateHiddenDates(a.options.moment,a.body,a.options.hiddenDates),m=m||g,g&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end),byUser:o}),r?m&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end),byUser:o}):a.animationTimer=setTimeout(b,20)}};return v()}var g=this._applyRange(n,s);if(d.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),g){var y={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",y),this.body.emitter.emit("rangechanged",y)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i,o=null!=t?r.convert(t,"Date").valueOf():this.start,n=null!=e?r.convert(e,"Date").valueOf():this.end,s=null!=this.options.max?r.convert(this.options.max,"Date").valueOf():null,a=null!=this.options.min?r.convert(this.options.min,"Date").valueOf():null;if(isNaN(o)||null===o)throw new Error('Invalid start "'+t+'"');if(isNaN(n)||null===n)throw new Error('Invalid end "'+e+'"');if(o>n&&(n=o),null!==a&&a>o&&(i=a-o,o+=i,n+=i,null!=s&&n>s&&(n=s)),null!==s&&n>s&&(i=n-s,o-=i,n-=i,null!=a&&a>o&&(o=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>n-o&&(this.end-this.start===h&&o>this.start&&nd&&(d=0),n-o>d&&(this.end-this.start===d&&othis.end?(o=this.start,n=this.end):(i=n-o-d,o+=i/2,n-=i/2))}var l=this.start!=o||this.end!=n;return o>=this.start&&o<=this.end||n>=this.start&&n<=this.end||this.start>=o&&this.start<=n||this.end>=o&&this.end<=n||this.body.emitter.emit("checkRangedItems"),this.start=o,this.end=n,l},o.prototype.getRange=function(){return{start:this.start,end:this.end}},o.prototype.conversion=function(t,e){return o.conversion(this.start,this.end,t,e)},o.conversion=function(t,e,i,o){return void 0===o&&(o=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-o)}:{offset:0,scale:1}},o.prototype._onDragStart=function(t){this.deltaDifference=0,this.previousDelta=0,this.options.moveable&&this._isInsideRange(t)&&this.props.touch.allowDragging&&(this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.dragging=!0,this.body.dom.root&&(this.body.dom.root.style.cursor="move"))},o.prototype._onDrag=function(t){if(this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;n(e);var i="horizontal"==e?t.deltaX:t.deltaY;i-=this.deltaDifference;var o=this.props.touch.end-this.props.touch.start,s=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);o-=s;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*o,h=this.props.touch.start+a,l=this.props.touch.end+a,u=d.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),c=d.snapAwayFromHidden(this.body.hiddenDates,l,this.previousDelta-i,!0);if(u!=h||c!=l)return this.deltaDifference+=i,this.props.touch.start=u,this.props.touch.end=c,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,l),this.body.emitter.emit("rangechange",{start:new Date(this.start),end:new Date(this.end),byUser:!0})}},o.prototype._onDragEnd=function(t){this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.dragging=!1,this.body.dom.root&&(this.body.dom.root.style.cursor="auto"),this.body.emitter.emit("rangechanged",{start:new Date(this.start),end:new Date(this.end),byUser:!0}))},o.prototype._onMouseWheel=function(t){if(this.options.zoomable&&this.options.moveable&&this._isInsideRange(t)&&(!this.options.zoomKey||t[this.options.zoomKey])){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=0>e?1-e/5:1/(1+e/5);var o=s({x:t.clientX,y:t.clientY},this.body.dom.center),n=this._pointerToDate(o);this.zoom(i,n,e)}t.preventDefault()}},o.prototype._onTouch=function(t){this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.allowDragging=!0,this.props.touch.center=null,this.scaleOffset=0,this.deltaDifference=0},o.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable){this.props.touch.allowDragging=!1,this.props.touch.center||(this.props.touch.center=s(t.center,this.body.dom.center));var e=1/(t.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,i),r=o-n,a=i-n+(this.props.touch.start-(i-n))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=0>=1-e,this.endToFront=0>=e-1;var l=d.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=d.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(l!=a||u!=h)&&(this.props.touch.start=l,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=l,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._isInsideRange=function(t){var e=t.center?t.center.x:t.clientX,i=e-r.getAbsoluteLeft(this.body.dom.centerContainer),o=this.body.util.toTime(i);return o>=this.start&&o<=this.end},o.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(n(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var o=this.body.domProps.center.height;return e=this.conversion(o),t.y/e.scale+e.offset},o.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,e),s=o-n,r=e-n+(this.start-(e-n))*t,a=e+s+(this.end-(e+s))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=d.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),l=d.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||l!=a)&&(r=h,a=l),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},o.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,o=this.end+e*t;this.start=i,this.end=o},o.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,o=this.start-i,n=this.end-i;this.setRange(o,n)},t.exports=o},function(t,e,i){i(20);e.onTouch=function(t,e){e.inputHandler=function(t){t.isFirst&&!o&&(e(t),o=!0,setTimeout(function(){o=!1},0))},t.on("hammer.input",e.inputHandler)};var o=!1;e.onRelease=function(t,e){return e.inputHandler=function(t){t.isFinal&&!n&&(e(t),n=!0,setTimeout(function(){n=!1},0))},t.on("hammer.input",e.inputHandler)};var n=!1;e.offTouch=function(t,e){t.off("hammer.input",e.inputHandler)},e.offRelease=e.offTouch},function(t,e){function i(t,e){this.options=null,this.props=null}i.prototype.setOptions=function(t){t&&util.extend(this.options,t)},i.prototype.redraw=function(){return!1},i.prototype.destroy=function(){},i.prototype._isResized=function(){var t=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;return this.props._previousWidth=this.props.width,this.props._previousHeight=this.props.height,t},t.exports=i},function(t,e){e.convertHiddenOptions=function(t,i,o){if(o&&!Array.isArray(o))return e.convertHiddenOptions(t,i,[o]);if(i.hiddenDates=[],o&&1==Array.isArray(o)){for(var n=0;n=4*a){var c=0,p=s.clone();switch(o[h].repeat){case"daily":d.day()!=l.day()&&(c=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-c,"days"),p.add(1,"weeks");break;case"weekly":var f=l.diff(d,"days"),m=d.day();d.date(n.date()),d.month(n.month()),d.year(n.year()),l=d.clone(),d.day(m),l.day(m),l.add(f,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),p.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(c=1),d.month(n.month()),d.year(n.year()),d.subtract(1,"months"),l.month(n.month()),l.year(n.year()),l.subtract(1,"months"),l.add(c,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(c=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(c,"years"),p.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}for(;p>d;)switch(i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()}),o[h].repeat){case"daily":d.add(1,"days"),l.add(1,"days");break;case"weekly":d.add(1,"weeks"),l.add(1,"weeks");break;case"monthly":d.add(1,"months"),l.add(1,"months");break;case"yearly":d.add(1,"y"),l.add(1,"y");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()})}}e.removeDuplicates(i);var v=e.isHidden(i.range.start,i.hiddenDates),g=e.isHidden(i.range.end,i.hiddenDates),y=i.range.start,b=i.range.end;1==v.hidden&&(y=1==i.range.startToFront?v.startDate-1:v.endDate+1),1==g.hidden&&(b=1==i.range.endToFront?g.startDate-1:g.endDate+1),(1==v.hidden||1==g.hidden)&&i.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],o=0;o=e[o].start&&e[n].end<=e[o].end?e[n].remove=!0:e[n].start>=e[o].start&&e[n].start<=e[o].end?(e[o].end=e[n].end,e[n].remove=!0):e[n].end>=e[o].start&&e[n].end<=e[o].end&&(e[o].start=e[n].start,e[n].remove=!0));for(var o=0;o=r&&a>n){o=!0;break}}if(1==o&&n=e&&i>r&&(o+=r-s)}return o},e.correctTimeForHidden=function(t,i,o,n){return n=t(n).toDate().valueOf(),n-=e.getHiddenDurationBefore(t,i,o,n)},e.getHiddenDurationBefore=function(t,e,i,o){var n=0;o=t(o).toDate().valueOf();for(var s=0;s=i.start&&a=a&&(n+=a-r)}return n},e.getAccumulatedHiddenDuration=function(t,e,i){for(var o=0,n=0,s=e.start,r=0;r=e.start&&h=i)break;o+=h-a}}return o},e.snapAwayFromHidden=function(t,i,o,n){var s=e.isHidden(i,t);return 1==s.hidden?0>o?1==n?s.startDate-(s.endDate-i)-1:s.startDate-1:1==n?s.endDate+(i-s.startDate)+1:s.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=o&&n>t)return{hidden:!0,startDate:o,endDate:n}}return{hidden:!1,startDate:o,endDate:n}}},function(t,e,i){function o(){}var n=i(12),s=i(20),r=i(24),a=i(1),h=(i(8),i(10),i(23),i(28),i(38)),d=i(39),l=i(26),u=i(41);n(o.prototype),o.prototype._create=function(t){function e(t){i.isActive()&&i.emit("mousewheel",t)}this.dom={},this.dom.container=t,this.dom.root=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.backgroundVertical=document.createElement("div"),this.dom.backgroundHorizontal=document.createElement("div"),this.dom.centerContainer=document.createElement("div"),this.dom.leftContainer=document.createElement("div"),this.dom.rightContainer=document.createElement("div"),this.dom.center=document.createElement("div"),this.dom.left=document.createElement("div"),this.dom.right=document.createElement("div"),this.dom.top=document.createElement("div"),this.dom.bottom=document.createElement("div"),this.dom.shadowTop=document.createElement("div"),this.dom.shadowBottom=document.createElement("div"),this.dom.shadowTopLeft=document.createElement("div"),this.dom.shadowBottomLeft=document.createElement("div"),this.dom.shadowTopRight=document.createElement("div"),this.dom.shadowBottomRight=document.createElement("div"),this.dom.root.className="vis-timeline",this.dom.background.className="vis-panel vis-background",this.dom.backgroundVertical.className="vis-panel vis-background vis-vertical", -this.dom.backgroundHorizontal.className="vis-panel vis-background vis-horizontal",this.dom.centerContainer.className="vis-panel vis-center",this.dom.leftContainer.className="vis-panel vis-left",this.dom.rightContainer.className="vis-panel vis-right",this.dom.top.className="vis-panel vis-top",this.dom.bottom.className="vis-panel vis-bottom",this.dom.left.className="vis-content",this.dom.center.className="vis-content",this.dom.right.className="vis-content",this.dom.shadowTop.className="vis-shadow vis-top",this.dom.shadowBottom.className="vis-shadow vis-bottom",this.dom.shadowTopLeft.className="vis-shadow vis-top",this.dom.shadowBottomLeft.className="vis-shadow vis-bottom",this.dom.shadowTopRight.className="vis-shadow vis-top",this.dom.shadowBottomRight.className="vis-shadow vis-bottom",this.dom.root.appendChild(this.dom.background),this.dom.root.appendChild(this.dom.backgroundVertical),this.dom.root.appendChild(this.dom.backgroundHorizontal),this.dom.root.appendChild(this.dom.centerContainer),this.dom.root.appendChild(this.dom.leftContainer),this.dom.root.appendChild(this.dom.rightContainer),this.dom.root.appendChild(this.dom.top),this.dom.root.appendChild(this.dom.bottom),this.dom.centerContainer.appendChild(this.dom.center),this.dom.leftContainer.appendChild(this.dom.left),this.dom.rightContainer.appendChild(this.dom.right),this.dom.centerContainer.appendChild(this.dom.shadowTop),this.dom.centerContainer.appendChild(this.dom.shadowBottom),this.dom.leftContainer.appendChild(this.dom.shadowTopLeft),this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft),this.dom.rightContainer.appendChild(this.dom.shadowTopRight),this.dom.rightContainer.appendChild(this.dom.shadowBottomRight),this.on("rangechange",function(){this._redraw()}.bind(this)),this.on("touch",this._onTouch.bind(this)),this.on("pan",this._onDrag.bind(this));var i=this;this.on("change",function(t){t&&1==t.queue?i._redrawTimer||(i._redrawTimer=setTimeout(function(){i._redrawTimer=null,i._redraw()},0)):i._redraw()}),this.hammer=new s(this.dom.root),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),this.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates","locale","locales","moment","throttleRedraw"];if(a.selectiveExtend(e,this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),"hiddenDates"in this.options&&l.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),"configure"in t){this.configurator||(this.configurator=this._createConfigurator()),this.configurator.setOptions(t.configure);var n=a.deepExtend({},this.options);this.components.forEach(function(t){a.deepExtend(n,t.options)}),this.configurator.setModuleOptions({global:n})}this._origRedraw||(this._origRedraw=this._redraw.bind(this)),this._redraw=a.throttle(this._origRedraw,this.options.throttleRedraw),this._redraw()},o.prototype.isActive=function(){return!this.activator||this.activator.active},o.prototype.destroy=function(){this.setItems(null),this.setGroups(null),this.off(),this._stopAutoResize(),this.dom.root.parentNode&&this.dom.root.parentNode.removeChild(this.dom.root),this.dom=null,this.activator&&(this.activator.destroy(),delete this.activator);for(var t in this.listeners)this.listeners.hasOwnProperty(t)&&delete this.listeners[t];this.listeners=null,this.hammer=null,this.components.forEach(function(t){return t.destroy()}),this.body=null},o.prototype.setCustomTime=function(t,e){var i=this.customTimes.filter(function(t){return e===t.options.id});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));i.length>0&&i[0].setCustomTime(t)},o.prototype.getCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));return e[0].getCustomTime()},o.prototype.setCustomTimeTitle=function(t,e){var i=this.customTimes.filter(function(t){return t.options.id===e});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));return i.length>0?i[0].setCustomTitle(t):void 0},o.prototype.getEventProperties=function(t){return{event:t}},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?a.convert(t,"Date").valueOf():new Date,o=this.customTimes.some(function(t){return t.options.id===e});if(o)throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var n=new u(this.body,a.extend({},this.options,{time:i,id:e}));return this.customTimes.push(n),this.components.push(n),this._redraw(),e},o.prototype.removeCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));e.forEach(function(t){this.customTimes.splice(this.customTimes.indexOf(t),1),this.components.splice(this.components.indexOf(t),1),t.destroy()}.bind(this))},o.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},o.prototype.fit=function(t){var e=this.getDataRange();if(null!==e.min||null!==e.max){var i=e.max-e.min,o=new Date(e.min.valueOf()-.01*i),n=new Date(e.max.valueOf()+.01*i),s=t&&void 0!==t.animation?t.animation:!0;this.range.setRange(o,n,s)}},o.prototype.getDataRange=function(){throw new Error("Cannot invoke abstract method getDataRange")},o.prototype.setWindow=function(t,e,i){var o;if(1==arguments.length){var n=arguments[0];o=void 0!==n.animation?n.animation:!0,this.range.setRange(n.start,n.end,o)}else o=i&&void 0!==i.animation?i.animation:!0,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=a.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(n,s,r)},o.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},o.prototype.redraw=function(){this._redraw()},o.prototype._redraw=function(){var t=!1,e=this.options,i=this.props,o=this.dom;if(o){l.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==e.orientation?(a.addClassName(o.root,"vis-top"),a.removeClassName(o.root,"vis-bottom")):(a.removeClassName(o.root,"vis-top"),a.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=a.option.asSize(e.maxHeight,""),o.root.style.minHeight=a.option.asSize(e.minHeight,""),o.root.style.width=a.option.asSize(e.width,""),i.border.left=(o.centerContainer.offsetWidth-o.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(o.centerContainer.offsetHeight-o.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var n=o.root.offsetHeight-o.root.clientHeight,s=o.root.offsetWidth-o.root.clientWidth;0===o.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===o.root.clientHeight&&(s=n),i.center.height=o.center.offsetHeight,i.left.height=o.left.offsetHeight,i.right.height=o.right.offsetHeight,i.top.height=o.top.clientHeight||-i.border.top,i.bottom.height=o.bottom.clientHeight||-i.border.bottom;var r=Math.max(i.left.height,i.center.height,i.right.height),h=i.top.height+r+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=a.option.asSize(e.height,h+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var d=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=d,i.leftContainer.height=d,i.rightContainer.height=i.leftContainer.height,i.root.width=o.root.offsetWidth,i.background.width=i.root.width-s,i.left.width=o.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=o.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var u=i.root.width-i.left.width-i.right.width-s;i.center.width=u,i.centerContainer.width=u,i.top.width=u,i.bottom.width=u,o.background.style.height=i.background.height+"px",o.backgroundVertical.style.height=i.background.height+"px",o.backgroundHorizontal.style.height=i.centerContainer.height+"px",o.centerContainer.style.height=i.centerContainer.height+"px",o.leftContainer.style.height=i.leftContainer.height+"px",o.rightContainer.style.height=i.rightContainer.height+"px",o.background.style.width=i.background.width+"px",o.backgroundVertical.style.width=i.centerContainer.width+"px",o.backgroundHorizontal.style.width=i.background.width+"px",o.centerContainer.style.width=i.center.width+"px",o.top.style.width=i.top.width+"px",o.bottom.style.width=i.bottom.width+"px",o.background.style.left="0",o.background.style.top="0",o.backgroundVertical.style.left=i.left.width+i.border.left+"px",o.backgroundVertical.style.top="0",o.backgroundHorizontal.style.left="0",o.backgroundHorizontal.style.top=i.top.height+"px",o.centerContainer.style.left=i.left.width+"px",o.centerContainer.style.top=i.top.height+"px",o.leftContainer.style.left="0",o.leftContainer.style.top=i.top.height+"px",o.rightContainer.style.left=i.left.width+i.center.width+"px",o.rightContainer.style.top=i.top.height+"px",o.top.style.left=i.left.width+"px",o.top.style.top="0",o.bottom.style.left=i.left.width+"px",o.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var c=this.props.scrollTop;"top"!=e.orientation.item&&(c+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),o.center.style.left="0",o.center.style.top=c+"px",o.left.style.left="0",o.left.style.top=c+"px",o.right.style.left="0",o.right.style.top=c+"px";var p=0==this.props.scrollTop?"hidden":"",f=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";if(o.shadowTop.style.visibility=p,o.shadowBottom.style.visibility=f,o.shadowTopLeft.style.visibility=p,o.shadowBottomLeft.style.visibility=f,o.shadowTopRight.style.visibility=p,o.shadowBottomRight.style.visibility=f,this.components.forEach(function(e){t=e.redraw()||t}),t){var m=3;this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTope;e++)o=this.selection[e],n=this.items[o],n&&n.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)o=t[e],n=this.items[o],n&&(this.selection.push(o),n.select())},o.prototype.getSelection=function(){return this.selection.concat([])},o.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),o=[];for(var n in this.groups)if(this.groups.hasOwnProperty(n))for(var s=this.groups[n],r=s.visibleItems,a=0;ae&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;o>i;i++)if(e[i]==t){e.splice(i,1);break}},o.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=s.option.asSize,o=this.options,n=o.orientation.item,r=!1,a=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top,this.props.left=this.body.domProps.left.width+this.body.domProps.border.left,a.className="vis-itemset",r=this._orderGroups()||r;var h=e.end-e.start,d=h!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;d&&(this.stackDirty=!0),this.lastVisibleInterval=h,this.props.lastWidth=this.props.width;var l=this.stackDirty,u=this._firstGroup(),c={item:t.item,axis:t.axis},p={item:t.item,axis:t.item.vertical/2},f=0,m=t.axis+t.item.vertical;return this.groups[g].redraw(e,p,l),s.forEach(this.groups,function(t){var i=t==u?c:p,o=t.redraw(e,i,l);r=o||r,f+=t.height}),f=Math.max(f,m),this.stackDirty=!1,a.style.height=i(f),this.props.width=a.offsetWidth,this.props.height=f,this.dom.axis.style.top=i("top"==n?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height),this.dom.axis.style.left="0",r=this._isResized()||r},o.prototype._firstGroup=function(){var t="top"==this.options.orientation.item?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[v];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[v];this.groups[g];if(this.groupsData){if(i){i.hide(),delete this.groups[v];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)||t.hide()}}}else if(!i){var s=null,r=null;i=new l(s,r,this),this.groups[v]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},o.prototype.getLabelSet=function(){return this.dom.labelSet},o.prototype.setItems=function(t){var e,i=this,o=this.itemsData;if(t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(o&&(s.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;s.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,n)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}},o.prototype.getItems=function(){return this.itemsData},o.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(s.forEach(this.groupListeners,function(t,e){i.groupsData.off(e,t)}),e=this.groupsData.getIds(),this.groupsData=null,this._onRemoveGroups(e)),t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.groupsData=t}else this.groupsData=null;if(this.groupsData){var o=this.id;s.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,o)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("change",{queue:!0})},o.prototype.getGroups=function(){return this.groupsData},o.prototype.removeItem=function(t){var e=this.itemsData.get(t),i=this.itemsData.getDataSet();e&&this.options.onRemove(e,function(e){e&&i.remove(t)})},o.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},o.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:v},o.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i,n=e.itemsData.get(t,e.itemOptions),s=e.items[t],r=e._getType(n),a=o.types[r];if(s&&(a&&s instanceof a?e._updateItem(s,n):(i=s.selected,e._removeItem(s),s=null)),!s){if(!a)throw"rangeoverflow"==r?new TypeError('Item type "rangeoverflow" is deprecated. Use css styling instead: .vis-item.vis-range .vis-item-content {overflow: visible;}'):new TypeError('Unknown item type "'+r+'"');s=new a(n,e.conversion,e.options),s.id=t,e._addItem(s),i&&(this.selection.push(t),s.select())}}.bind(this)),this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0})},o.prototype._onAdd=o.prototype._onUpdate,o.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var o=i.items[t];o&&(e++,i._removeItem(o))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("change",{queue:!0}))},o.prototype._order=function(){s.forEach(this.groups,function(t){t.order()})},o.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},o.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),o=e.groups[t];if(o)o.setData(i);else{if(t==v||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);s.extend(n,{height:null}),o=new l(t,i,e),e.groups[t]=o;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&o.add(a)}o.order(),o.show()}}),this.body.emitter.emit("change",{queue:!0})},o.prototype._onRemoveGroups=function(t){var e=this.groups;t.forEach(function(t){var i=e[t];i&&(i.hide(),delete e[t])}),this.markDirty(),this.body.emitter.emit("change",{queue:!0})},o.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!s.equalArray(t,this.groupIds);if(e){var i=this.groups;t.forEach(function(t){i[t].hide()}),t.forEach(function(t){i[t].show()}),this.groupIds=t}return e}return!1},o.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},o.prototype._updateItem=function(t,e){var i=t.data.group,o=t.data.subgroup;if(t.setData(e),i!=t.data.group||o!=t.data.subgroup){var n=this.groups[i];n&&n.remove(t);var s=this._getGroupId(t.data),r=this.groups[s];r&&r.add(t)}},o.prototype._removeItem=function(t){t.hide(),delete this.items[t.id];var e=this.selection.indexOf(t.id);-1!=e&&this.selection.splice(e,1),t.parent&&t.parent.remove(t)},o.prototype._constructByEndArray=function(t){for(var e=[],i=0;in+r)return; -}else{var a=e.height;if(n+a-r>o)return}}if(e&&e!=this.groupTouchParams.group){var h=this.groupsData,d=h.get(e.groupId),l=h.get(this.groupTouchParams.group.groupId);l&&d&&(this.options.groupOrderSwap(l,d,this.groupsData),this.groupsData.update(l),this.groupsData.update(d));var u=this.groupsData.getIds({order:this.options.groupOrder});if(!s.equalArray(u,this.groupTouchParams.originalOrder))for(var h=this.groupsData,c=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(c.length,u.length),m=0,v=0,g=0;f>m;){for(;f>m+v&&f>m+g&&u[m+v]==c[m+g];)m++;if(m+v>=f)break;if(u[m+v]!=p)if(c[m+g]!=p){var y=u.indexOf(c[m+g]),b=h.get(u[m+v]),w=h.get(c[m+g]);this.options.groupOrderSwap(b,w,h),h.update(b),h.update(w);var _=u[m+v];u[m+v]=c[m+g],u[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=s.extend({},o.get(i));e.options.onMoveGroup(n,function(t){if(t)t[o._fieldId]=i,o.update(t);else{var n=o.getIds({order:e.options.groupOrder});if(!s.equalArray(n,e.groupTouchParams.originalOrder))for(var r=e.groupTouchParams.originalOrder,a=Math.min(r.length,n.length),h=0;a>h;){for(;a>h&&n[h]==r[h];)h++;if(h>=a)break;var d=n.indexOf(r[h]),l=o.get(n[h]),u=o.get(r[h]);e.options.groupOrderSwap(l,u,o),groupsData.update(l),groupsData.update(u);var c=n[h];n[h]=r[h],n[d]=c,h++}}}),e.body.emitter.emit("groupDragged",{groupId:i})}},o.prototype._onSelectItem=function(t){if(this.options.selectable){var e=t.srcEvent&&(t.srcEvent.ctrlKey||t.srcEvent.metaKey),i=t.srcEvent&&t.srcEvent.shiftKey;if(e||i)return void this._onMultiSelectItem(t);var o=this.getSelection(),n=this.itemFromTarget(t),s=n?[n.id]:[];this.setSelection(s);var r=this.getSelection();(r.length>0||o.length>0)&&this.body.emitter.emit("select",{items:r,event:t})}},o.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,o=this.itemFromTarget(t);if(o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=s.getAbsoluteLeft(this.dom.frame),a=t.center.x-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),u={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(a+this.props.width/5);u.end=i?i(c,d,l):c}u[this.itemsData._fieldId]=s.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),u=this._cloneItemData(u),this.options.onAdd(u,function(t){t&&e.itemsData.getDataSet().add(t)})}}},o.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e=this.itemFromTarget(t);if(e){var i=this.options.multiselect?this.getSelection():[],n=t.srcEvent&&t.srcEvent.shiftKey||!1;if(n&&this.options.multiselect){var s=this.itemsData.get(e.id).group,r=void 0;this.options.multiselectPerGroup&&i.length>0&&(r=this.itemsData.get(i[0]).group),this.options.multiselectPerGroup&&void 0!=r&&r!=s||i.push(e.id);var a=o._getItemRange(this.itemsData.get(i,this.itemOptions));if(!this.options.multiselectPerGroup||r==s){i=[];for(var h in this.items)if(this.items.hasOwnProperty(h)){var d=this.items[h],l=d.data.start,u=void 0!==d.data.end?d.data.end:l;!(l>=a.min&&u<=a.max)||this.options.multiselectPerGroup&&r!=this.itemsData.get(d.id).group||d instanceof m||i.push(d.id)}}}else{var c=i.indexOf(e.id);-1==c?i.push(e.id):i.splice(c,1)}this.setSelection(i),this.body.emitter.emit("select",{items:this.getSelection(),event:t})}}},o._getItemRange=function(t){var e=null,i=null;return t.forEach(function(t){(null==i||t.starte)&&(e=t.end):(null==e||t.start>e)&&(e=t.start)}),{min:i,max:e}},o.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},o.prototype.groupFromTarget=function(t){for(var e=t.center?t.center.y:t.clientY,i=0;ia&&ea)return n}else if(0===i&&e0?t.step:1,this.autoScale=!1)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,o=864e5,n=36e5,s=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*o>t&&(this.scale="day",this.step=5),2*o>t&&(this.scale="day",this.step=2),o>t&&(this.scale="day",this.step=1),o/2>t&&(this.scale="weekday",this.step=1),4*n>t&&(this.scale="hour",this.step=4),n>t&&(this.scale="hour",this.step=1),15*s>t&&(this.scale="minute",this.step=15),10*s>t&&(this.scale="minute",this.step=10),5*s>t&&(this.scale="minute",this.step=5),s>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},o.snap=function(t,e,i){var o=n(t);if("year"==e){var s=o.year()+Math.round(o.month()/12);o.year(Math.round(s/i)*i),o.month(0),o.date(0),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("month"==e)o.date()>15?(o.date(1),o.add(1,"month")):o.date(1),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.hours(24*Math.round(o.hours()/24));break;default:o.hours(12*Math.round(o.hours()/12))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.hours(12*Math.round(o.hours()/12));break;default:o.hours(6*Math.round(o.hours()/6))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("hour"==e){switch(i){case 4:o.minutes(60*Math.round(o.minutes()/60));break;default:o.minutes(30*Math.round(o.minutes()/30))}o.seconds(0),o.milliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.minutes(5*Math.round(o.minutes()/5)),o.seconds(0);break;case 5:o.seconds(60*Math.round(o.seconds()/60));break;default:o.seconds(30*Math.round(o.seconds()/30))}o.milliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.seconds(5*Math.round(o.seconds()/5)),o.milliseconds(0);break;case 5:o.milliseconds(1e3*Math.round(o.milliseconds()/1e3));break;default:o.milliseconds(500*Math.round(o.milliseconds()/500))}else if("millisecond"==e){var r=i>5?i/2:1;o.milliseconds(Math.round(o.milliseconds()/r)*r)}return o},o.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}var t=this.moment(this.current);switch(this.scale){case"millisecond":return 0==t.milliseconds();case"second":return 0==t.seconds();case"minute":return 0==t.hours()&&0==t.minutes();case"hour":return 0==t.hours();case"weekday":case"day":return 1==t.date();case"month":return 0==t.month();case"year":return!1;default:return!1}},o.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/h%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(new Date,"day")?" vis-today":t.isSame(s().add(1,"day"),"day")?" vis-tomorrow":t.isSame(s().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(new Date,"week")?" vis-current-week":""}function o(t){return t.isSame(new Date,"month")?" vis-current-month":""}function n(t){return t.isSame(new Date,"year")?" vis-current-year":""}var s=this.moment,r=this.moment(this.current),a=r.locale?r.locale("en"):r.lang("en"),h=this.step;switch(this.scale){case"millisecond":return t(a.milliseconds()).trim();case"second":return t(a.seconds()).trim();case"minute":return t(a.minutes()).trim();case"hour":var d=a.hours();return 4==this.step&&(d=d+"-h"+(d+4)),"vis-h"+d+e(a)+t(a.hours());case"weekday":return"vis-"+a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),u=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+u+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var c=a.year();return"vis-year"+c+n(a)+t(c);default:return""}},t.exports=o},function(t,e,i){function o(t,e,i){this.groupId=t,this.subgroups={},this.subgroupIndex=0,this.subgroupOrderer=e&&e.subgroupOrder,this.itemSet=i,this.dom={},this.props={label:{width:0,height:0}},this.className=null,this.items={},this.visibleItems=[],this.orderedItems={byStart:[],byEnd:[]},this.checkRangedItems=!1;var o=this;this.itemSet.body.emitter.on("checkRangedItems",function(){o.checkRangedItems=!0}),this._create(),this.setData(e)}var n=i(1),s=i(31);i(32);o.prototype._create=function(){var t=document.createElement("div");this.itemSet.options.groupEditable.order?t.className="vis-label draggable":t.className="vis-label",this.dom.label=t;var e=document.createElement("div");e.className="vis-inner",t.appendChild(e),this.dom.inner=e;var i=document.createElement("div");i.className="vis-group",i["timeline-group"]=this,this.dom.foreground=i,this.dom.background=document.createElement("div"),this.dom.background.className="vis-group",this.dom.axis=document.createElement("div"),this.dom.axis.className="vis-group",this.dom.marker=document.createElement("div"),this.dom.marker.style.visibility="hidden",this.dom.marker.innerHTML="?",this.dom.background.appendChild(this.dom.marker)},o.prototype.setData=function(t){var e;if(e=this.itemSet.options&&this.itemSet.options.groupTemplate?this.itemSet.options.groupTemplate(t):t&&t.content,e instanceof Element){for(this.dom.inner.appendChild(e);this.dom.inner.firstChild;)this.dom.inner.removeChild(this.dom.inner.firstChild);this.dom.inner.appendChild(e)}else void 0!==e&&null!==e?this.dom.inner.innerHTML=e:this.dom.inner.innerHTML=this.groupId||"";this.dom.label.title=t&&t.title||"",this.dom.inner.firstChild?n.removeClassName(this.dom.inner,"vis-hidden"):n.addClassName(this.dom.inner,"vis-hidden");var i=t&&t.className||null;i!=this.className&&(this.className&&(n.removeClassName(this.dom.label,this.className),n.removeClassName(this.dom.foreground,this.className),n.removeClassName(this.dom.background,this.className),n.removeClassName(this.dom.axis,this.className)),n.addClassName(this.dom.label,i),n.addClassName(this.dom.foreground,i),n.addClassName(this.dom.background,i),n.addClassName(this.dom.axis,i),this.className=i),this.style&&(n.removeCssText(this.dom.label,this.style),this.style=null),t&&t.style&&(n.addCssText(this.dom.label,t.style),this.style=t.style)},o.prototype.getLabelWidth=function(){return this.props.label.width},o.prototype.redraw=function(t,e,i){var o=!1,r=this.dom.marker.clientHeight;if(r!=this.lastMarkerHeight&&(this.lastMarkerHeight=r,n.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()}),i=!0),this._calculateSubGroupHeights(),"function"==typeof this.itemSet.options.order){if(i){var a=this,h=!1;n.forEach(this.items,function(t){t.displayed||(t.redraw(),a.visibleItems.push(t)),t.repositionX(h)});var d=this.orderedItems.byStart.slice().sort(function(t,e){return a.itemSet.options.order(t.data,e.data)});s.stack(d,e,!0)}this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t)}else this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t),this.itemSet.options.stack?s.stack(this.visibleItems,e,i):s.nostack(this.visibleItems,e,this.subgroups);var l=this._calculateHeight(e),u=this.dom.foreground;this.top=u.offsetTop,this.left=u.offsetLeft,this.width=u.offsetWidth,o=n.updateProperty(this,"height",l)||o,o=n.updateProperty(this.props.label,"width",this.dom.inner.clientWidth)||o,o=n.updateProperty(this.props.label,"height",this.dom.inner.clientHeight)||o,this.dom.background.style.height=l+"px",this.dom.foreground.style.height=l+"px",this.dom.label.style.height=l+"px";for(var c=0,p=this.visibleItems.length;p>c;c++){var f=this.visibleItems[c];f.repositionY(e)}return o},o.prototype._calculateSubGroupHeights=function(){if(Object.keys(this.subgroups).length>0){var t=this;this.resetSubgroups(),n.forEach(this.visibleItems,function(e){void 0!==e.data.subgroup&&(t.subgroups[e.data.subgroup].height=Math.max(t.subgroups[e.data.subgroup].height,e.height),t.subgroups[e.data.subgroup].visible=!0)})}},o.prototype._calculateHeight=function(t){var e,i=this.visibleItems;if(i.length>0){var o=i[0].top,s=i[0].top+i[0].height;if(n.forEach(i,function(t){o=Math.min(o,t.top),s=Math.max(s,t.top+t.height)}),o>t.axis){var r=o-t.axis;s-=r,n.forEach(i,function(t){t.top-=r})}e=s+t.item.vertical/2}else e=0;return e=Math.max(e,this.props.label.height)},o.prototype.show=function(){this.dom.label.parentNode||this.itemSet.dom.labelSet.appendChild(this.dom.label),this.dom.foreground.parentNode||this.itemSet.dom.foreground.appendChild(this.dom.foreground),this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background),this.dom.axis.parentNode||this.itemSet.dom.axis.appendChild(this.dom.axis)},o.prototype.hide=function(){var t=this.dom.label;t.parentNode&&t.parentNode.removeChild(t);var e=this.dom.foreground;e.parentNode&&e.parentNode.removeChild(e);var i=this.dom.background;i.parentNode&&i.parentNode.removeChild(i);var o=this.dom.axis;o.parentNode&&o.parentNode.removeChild(o)},o.prototype.add=function(t){if(this.items[t.id]=t,t.setParent(this),void 0!==t.data.subgroup&&(void 0===this.subgroups[t.data.subgroup]&&(this.subgroups[t.data.subgroup]={height:0,visible:!1,index:this.subgroupIndex,items:[]},this.subgroupIndex++),this.subgroups[t.data.subgroup].items.push(t)),this.orderSubgroups(),-1==this.visibleItems.indexOf(t)){var e=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,e)}},o.prototype.orderSubgroups=function(){if(void 0!==this.subgroupOrderer){var t=[];if("string"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push({subgroup:e,sortField:this.subgroups[e].items[0].data[this.subgroupOrderer]});t.sort(function(t,e){return t.sortField-e.sortField})}else if("function"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push(this.subgroups[e].items[0].data);t.sort(this.subgroupOrderer)}if(t.length>0)for(var i=0;it?-1:l>=t?0:1};if(e.length>0)for(s=0;sl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,s=0;sl})}for(s=0;s=0&&(s=e[r],!n(s));r--)void 0===o[s.id]&&(o[s.id]=!0,i.push(s));for(r=t+1;rn;n++)t[n].top=null;for(n=0,s=t.length;s>n;n++){var r=t[n];if(r.stack&&null===r.top){r.top=i.axis;do{for(var a=null,h=0,d=t.length;d>h;h++){var l=t[h];if(null!==l.top&&l!==r&&l.stack&&e.collision(r,l,i.item)){a=l;break}}null!=a&&(r.top=a.top+a.height+i.item.vertical)}while(a)}}},e.nostack=function(t,e,i){var o,n,s;for(o=0,n=t.length;n>o;o++)if(void 0!==t[o].data.subgroup){s=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-o.vertical+ie.top}},function(t,e,i){function o(t,e,i){if(this.props={content:{width:0}},this.overflow=!1,t){if(void 0==t.start)throw new Error('Property "start" missing in item '+t.id);if(void 0==t.end)throw new Error('Property "end" missing in item '+t.id)}n.call(this,t,e,i)}var n=(i(20),i(33));o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-range",o.prototype.isVisible=function(t){return this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.options.editable.updateTime||this.options.editable.updateGroup||this.editable===!0)&&this.editable!==!1,o=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"")+(i?" vis-editable":" vis-readonly");t.box.className=this.baseClassName+o,this.overflow="hidden"!==window.getComputedStyle(t.frame).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},o.prototype.show=function(){this.displayed||this.redraw()},o.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},o.prototype.repositionX=function(t){var e,i,o=this.parent.width,n=this.conversion.toScreen(this.data.start),s=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-o>n&&(n=-o),s>2*o&&(s=2*o));var r=Math.max(s-n,1);switch(this.overflow?(this.left=n,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=n,this.width=r,i=Math.min(s-n,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=r+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(r-i,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i)/2,0)+"px";break;default:e=this.overflow?s>0?Math.max(-n,0):-i:0>n?-n:0,this.dom.content.style.left=e+"px"}},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box;"top"==t?e.style.top=this.top+"px":e.style.top=this.parent.height-this.top-this.height+"px"},o.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="vis-drag-left",t.dragLeftItem=this,this.dom.box.appendChild(t),this.dom.dragLeft=t}else!this.selected&&this.dom.dragLeft&&(this.dom.dragLeft.parentNode&&this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft),this.dom.dragLeft=null)},o.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="vis-drag-right",t.dragRightItem=this,this.dom.box.appendChild(t),this.dom.dragRight=t}else!this.selected&&this.dom.dragRight&&(this.dom.dragRight.parentNode&&this.dom.dragRight.parentNode.removeChild(this.dom.dragRight),this.dom.dragRight=null)},t.exports=o},function(t,e,i){function o(t,e,i){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null,this.editable=null,this.data&&this.data.hasOwnProperty("editable")&&"boolean"==typeof this.data.editable&&(this.editable=t.editable)}var n=i(20),s=i(1);o.prototype.stack=!0,o.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setData=function(t){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),t.hasOwnProperty("editable")&&"boolean"==typeof t.editable&&(this.editable=t.editable),this.data=t,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},o.prototype.isVisible=function(t){return!1},o.prototype.show=function(){return!1},o.prototype.hide=function(){return!1},o.prototype.redraw=function(){},o.prototype.repositionX=function(){},o.prototype.repositionY=function(){},o.prototype._repaintDeleteButton=function(t){var e=(this.options.editable.remove||this.data.editable===!0)&&this.data.editable!==!1;if(this.selected&&e&&!this.dom.deleteButton){var i=this,o=document.createElement("div");o.className="vis-delete",o.title="Delete this item",new n(o).on("tap",function(t){t.stopPropagation(),i.parent.removeFromDataSet(i)}),t.appendChild(o),this.dom.deleteButton=o}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},o.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;var o=this._contentToString(this.content)!==this._contentToString(e);if(o){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},o.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("vis-title")},o.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;in;n++){var r=this.visibleItems[n];r.repositionY(e)}return o},o.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=o},function(t,e,i){function o(t,e,i){if(this.props={dot:{width:0,height:0},line:{width:0,height:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);n.call(this,t,e,i)}var n=i(33);i(1);o.prototype=new n(null,null,null),o.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},o.prototype.show=r.prototype.show,o.prototype.hide=r.prototype.hide,o.prototype.repositionX=r.prototype.repositionX,o.prototype.repositionY=function(t){var e="top"===this.options.orientation.item;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var o=this.data.subgroup,n=this.parent.subgroups,r=n[o].index;if(1==e){i=this.parent.subgroups[o].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in n)n.hasOwnProperty(h)&&1==n[h].visible&&n[h].indexr&&(a+=l)}i=this.parent.subgroups[o].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof s?(i=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height),this.dom.box.style.top=e?"0":"",this.dom.box.style.bottom=e?"":"0"):(i=this.parent.height,this.dom.box.style.top=this.parent.top+"px",this.dom.box.style.bottom="");this.dom.box.style.height=i+"px"},t.exports=o},function(t,e,i){function o(t,e){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}},this.props={range:{start:0,end:0,minimumStep:0},lineTop:0},this.defaultOptions={orientation:{axis:"bottom"},showMinorLabels:!0,showMajorLabels:!0,maxMinorChars:7,format:r.FORMAT,moment:h,timeAxis:null},this.options=n.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n=i(1),s=i(25),r=i(29),a=i(26),h=i(2);o.prototype=new s,o.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showMinorLabels","showMajorLabels","maxMinorChars","hiddenDates","timeAxis","moment"],this.options,t),n.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"==typeof t.orientation&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof h.locale?h.locale(t.locale):h.lang(t.locale)))},o.prototype._create=function(){this.dom.foreground=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.foreground.className="vis-time-axis vis-foreground",this.dom.background.className="vis-time-axis vis-background"},o.prototype.destroy=function(){this.dom.foreground.parentNode&&this.dom.foreground.parentNode.removeChild(this.dom.foreground),this.dom.background.parentNode&&this.dom.background.parentNode.removeChild(this.dom.background),this.body=null},o.prototype.redraw=function(){var t=this.props,e=this.dom.foreground,i=this.dom.background,o="top"==this.options.orientation.axis?this.body.dom.top:this.body.dom.bottom,n=e.parentNode!==o;this._calculateCharSize();var s=this.options.showMinorLabels&&"none"!==this.options.orientation.axis,r=this.options.showMajorLabels&&"none"!==this.options.orientation.axis;t.minorLabelHeight=s?t.minorCharHeight:0,t.majorLabelHeight=r?t.majorCharHeight:0,t.height=t.minorLabelHeight+t.majorLabelHeight,t.width=e.offsetWidth,t.minorLineHeight=this.body.domProps.root.height-t.majorLabelHeight-("top"==this.options.orientation.axis?this.body.domProps.bottom.height:this.body.domProps.top.height),t.minorLineWidth=1,t.majorLineHeight=t.minorLineHeight+t.majorLabelHeight,t.majorLineWidth=1;var a=e.nextSibling,h=i.nextSibling;return e.parentNode&&e.parentNode.removeChild(e),i.parentNode&&i.parentNode.removeChild(i),e.style.height=this.props.height+"px",this._repaintLabels(),a?o.insertBefore(e,a):o.appendChild(e),h?this.body.dom.backgroundVertical.insertBefore(i,h):this.body.dom.backgroundVertical.appendChild(i),this._isResized()||n},o.prototype._repaintLabels=function(){var t=this.options.orientation.axis,e=n.convert(this.body.range.start,"Number"),i=n.convert(this.body.range.end,"Number"),o=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf(),s=o-a.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,o);s-=this.body.util.toTime(0).valueOf();var h=new r(new Date(e),new Date(i),s,this.body.hiddenDates);h.setMoment(this.options.moment),this.options.format&&h.setFormat(this.options.format),this.options.timeAxis&&h.setScale(this.options.timeAxis),this.step=h;var l=this.dom;l.redundant.lines=l.lines,l.redundant.majorTexts=l.majorTexts,l.redundant.minorTexts=l.minorTexts,l.lines=[],l.majorTexts=[],l.minorTexts=[];var u,c,p,f,m,v,g,y,b,w,_=0,x=void 0,k=0,O=1e3;for(h.start(),c=h.getCurrent(),f=this.body.util.toScreen(c);h.hasNext()&&O>k;){k++,m=h.isMajor(),w=h.getClassName(),b=h.getLabelMinor(),u=c,p=f,h.next(),c=h.getCurrent(),v=h.isMajor(),f=this.body.util.toScreen(c),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,h.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||d||(console.warn("Something is wrong with the Timeline scale. Limited drawing of grid lines to "+O+" lines."),d=!0),this.options.showMajorLabels){var C=this.body.util.toTime(0),T=h.getLabelMajor(C),E=T.length*(this.props.majorCharWidth||10)+10;(void 0==x||x>E)&&this._repaintMajorText(0,T,t,w)}n.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._repaintMinorText=function(t,e,i,o){var n=this.dom.redundant.minorTexts.shift();if(!n){var s=document.createTextNode("");n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.minorTexts.push(n),n.childNodes[0].nodeValue=e,n.style.top="top"==i?this.props.majorLabelHeight+"px":"0",n.style.left=t+"px",n.className="vis-text vis-minor "+o,n},o.prototype._repaintMajorText=function(t,e,i,o){var n=this.dom.redundant.majorTexts.shift();if(!n){var s=document.createTextNode(e);n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.majorTexts.push(n),n.childNodes[0].nodeValue=e,n.className="vis-text vis-major "+o,n.style.top="top"==i?"0":this.props.minorLabelHeight+"px",n.style.left=t+"px",n},o.prototype._repaintMinorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top=s.majorLabelHeight+"px":n.style.top=this.body.domProps.top.height+"px",n.style.height=s.minorLineHeight+"px",n.style.left=t-s.minorLineWidth/2+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-minor "+o,n},o.prototype._repaintMajorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top="0":n.style.top=this.body.domProps.top.height+"px",n.style.left=t-s.majorLineWidth/2+"px",n.style.height=s.majorLineHeight+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-major "+o,n},o.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="vis-text vis-minor vis-measure",this.dom.measureCharMinor.style.position="absolute",this.dom.measureCharMinor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMinor)),this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight,this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth,this.dom.measureCharMajor||(this.dom.measureCharMajor=document.createElement("DIV"),this.dom.measureCharMajor.className="vis-text vis-major vis-measure",this.dom.measureCharMajor.style.position="absolute",this.dom.measureCharMajor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMajor)),this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight,this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var d=!1;t.exports=o},function(t,e,i){function o(t){this.active=!1,this.dom={container:t},this.dom.overlay=document.createElement("div"),this.dom.overlay.className="vis-overlay",this.dom.container.appendChild(this.dom.overlay),this.hammer=a(this.dom.overlay),this.hammer.on("tap",this._onTapOverlay.bind(this));var e=this,i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];i.forEach(function(t){e.hammer.on(t,function(t){t.stopPropagation()})}),document&&document.body&&(this.onClick=function(i){n(i.target,t)||e.deactivate()},document.body.addEventListener("click",this.onClick)),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=s(),this.escListener=this.deactivate.bind(this)}function n(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}var s=i(40),r=i(12),a=i(20),h=i(1);r(o.prototype),o.current=null,o.prototype.destroy=function(){this.deactivate(),this.dom.overlay.parentNode.removeChild(this.dom.overlay),this.onClick&&document.body.removeEventListener("click",this.onClick),this.hammer.destroy(),this.hammer=null},o.prototype.activate=function(){o.current&&o.current.deactivate(),o.current=this,this.active=!0,this.dom.overlay.style.display="none",h.addClassName(this.dom.container,"vis-active"),this.emit("change"),this.emit("activate"),this.keycharm.bind("esc",this.escListener)},o.prototype.deactivate=function(){this.active=!1,this.dom.overlay.style.display="",h.removeClassName(this.dom.container,"vis-active"),this.keycharm.unbind("esc",this.escListener),this.emit("change"),this.emit("deactivate")},o.prototype._onTapOverlay=function(t){this.activate(),t.stopPropagation()},t.exports=o},function(t,e,i){var o,n,s;!function(i,r){n=[],o=r,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={keydown:{},keyup:{}},r={};for(e=97;122>=e;e++)r[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)r[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)r["num"+e]={code:96+e,shift:!1};r["num*"]={code:106,shift:!1},r["num+"]={code:107,shift:!1},r["num-"]={code:109,shift:!1},r["num/"]={code:111,shift:!1},r["num."]={code:110,shift:!1},r.left={code:37,shift:!1},r.up={code:38,shift:!1},r.right={code:39,shift:!1},r.down={code:40,shift:!1},r.space={code:32,shift:!1},r.enter={code:13,shift:!1},r.shift={code:16,shift:void 0},r.esc={code:27,shift:!1},r.backspace={code:8,shift:!1},r.tab={code:9,shift:!1},r.ctrl={code:17,shift:!1},r.alt={code:18,shift:!1},r["delete"]={code:46,shift:!1},r.pageup={code:33,shift:!1},r.pagedown={code:34,shift:!1},r["="]={code:187,shift:!1},r["-"]={code:189,shift:!1},r["]"]={code:221,shift:!1},r["["]={code:219,shift:!1};var a=function(t){d(t,"keydown")},h=function(t){d(t,"keyup")},d=function(t,e){if(void 0!==s[e][t.keyCode]){for(var o=s[e][t.keyCode],n=0;no&&(o=30),o>1e3&&(o=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,o)}var e=this;t()},o.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},o.prototype.setCurrentTime=function(t){var e=n.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=o},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);this.options.showButton===!0&&!function(){var e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerHTML="generate options",e.onclick=function(){t._printOptions()},e.onmouseover=function(){e.className="vis-configuration vis-config-button hover"},e.onmouseout=function(){e.className="vis-configuration vis-config-button"},t.optionsContainer=document.createElement("div"),t.optionsContainer.className="vis-configuration vis-config-option-container",t.domElements.push(t.optionsContainer),t.domElements.push(e)}(),this._push()}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?o-1:0),s=1;o>s;s++)n[s-1]=e[s];return n.forEach(function(t){r.appendChild(t)}),i.domElements.push(r),{v:i.domElements.length}}();if("object"==typeof r)return r.v}return 0}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-configuration vis-config-header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-configuration vis-config-label vis-config-s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-configuration vis-config-select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>e*u?(a.min=Math.ceil(e*u),l=a.min,d="range increased"):n>e/u&&(a.min=Math.ceil(e/u),l=a.min,d="range increased"),e*u>s&&1!==s&&(a.max=Math.ceil(e*u),l=a.max,d="range increased"),a.value=e}else a.value=o;var c=document.createElement("input");c.className="vis-configuration vis-config-rangeinput",c.value=a.value;var p=this;a.onchange=function(){c.value=this.value,p._update(Number(this.value),i)},a.oninput=function(){c.value=this.value};var f=this._makeLabel(i[i.length-1],i),m=this._makeItem(i,f,a,c);""!==d&&this.popupHistory[m]!==l&&(this.popupHistory[m]=l,this._setupPopup(d,m))}},{key:"_setupPopup",value:function(t,e){var i=this;if(this.initialized===!0&&this.allowCreation===!0&&this.popupCountervar options = "+JSON.stringify(t,null,2)+""}},{key:"getOptions",value:function(){for(var t={},e=0;es;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h),r=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length<=3||void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=arguments.length<=2||void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=c.customTimeFromTarget(t),h=s.getTarget(t),d=null;s.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&s.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":s.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":s.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":s.hasParent(h,this.currentTime.bar)?d="current-time":s.hasParent(h,this.dom.center)&&(d="background");var l=[],u=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return u.hidden||l.push(u.screenToValue(n)),p.hidden||l.push(p.screenToValue(n)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:r,value:l}},o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},t.exports=o},function(t,e,i){function o(t,e){this.id=n.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,stack:!1,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,sideBySide:!1,align:"center"},interpolation:{enabled:!0,parametrization:"centripetal",alpha:.5},drawPoints:{enabled:!0,size:6,style:"square"},dataAxis:{showMinorLabels:!0,showMajorLabels:!0,icons:!1,width:"40px",visible:!0,alignZeros:!0,left:{range:{min:void 0,max:void 0},format:function(t){return t},title:{text:void 0,style:void 0}},right:{range:{min:void 0,max:void 0},format:function(t){return t},title:{text:void 0,style:void 0}}},legend:{enabled:!1,icons:!0,left:{visible:!0,position:"top-left"},right:{visible:!0,position:"top-right"}},groups:{visibility:{}}},this.options=n.extend({},this.defaultOptions),this.dom={},this.props={},this.hammer=null,this.groups={},this.abortedGraphUpdate=!1,this.updateSVGheight=!1,this.updateSVGheightOnResize=!1;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.COUNTER=0,this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=n.option.asSize(-i.props.width),i.redraw.call(i,!0)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups},this.body.emitter.emit("change")}var n=i(1),s=i(7),r=i(8),a=i(10),h=i(25),d=i(50),l=i(52),u=i(56),c=i(53),p=i(55),f=i(54),m="__ungrouped__";o.prototype=new h,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-line-graph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation, -this.legendLeft=new u(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new u(this.body,this.options.legend,"right",this.options.groups),this.show()},o.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","stack","height","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height&&void 0!==this.body.domProps.centerContainer.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))i?-1:1});for(var o=new Array(t.length),s=0;s0){var h={};for(this._getRelevantData(a,h,n,r),this._applySampling(a,h),e=0;ed&&console.log("WARNING: there may be an infinite loop in the _updateGraph emitter cycle."),this.COUNTER=0,this.abortedGraphUpdate=!1;var l=void 0;for(e=0;e0)switch(t.options.style){case"line":u.hasOwnProperty(a[e])||(u[a[e]]=p.calcPath(h[a[e]],t)),p.draw(u[a[e]],t,this.framework);case"point":case"points":("point"==t.options.style||"points"==t.options.style||1==t.options.drawPoints.enabled)&&f.draw(h[a[e]],t,this.framework);break;case"bar":}}}return s.cleanupElements(this.svgElements),!1},o.prototype._stack=function(t,e){var i,o,n,s,r;i=0;for(var a=0;at[a].x){r=e[h],s=0==h?r:e[h-1],i=h;break}}void 0===r&&(s=e[e.length-1],r=e[e.length-1]),o=r.x-s.x,n=r.y-s.y,0==o?t[a].y=t[a].orginalY+r.y:t[a].y=t[a].orginalY+n/o*(t[a].x-s.x)+s.y}},o.prototype._getRelevantData=function(t,e,i,o){var s,r,a,h;if(t.length>0)for(r=0;r=u&&(u=d.length);var c=new Array(u-l);for(a=l;u>a;a++)h=s.itemsData[a],c[a-l]=h;e[t[r]]=c}else e[t[r]]=s.itemsData}},o.prototype._applySampling=function(t,e){var i;if(t.length>0)for(var o=0;o0){var s=1,r=n.length,a=this.body.util.toGlobalScreen(n[n.length-1].x)-this.body.util.toGlobalScreen(n[0].x),h=r/a;s=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=new Array(r),l=0;r>l;l+=s){var u=Math.round(l/s);d[u]=n[l]}e[t[o]]=d.splice(0,Math.round(r/s))}}},o.prototype._getYRanges=function(t,e,i){var o,n,s,r,a=[],h=[];if(t.length>0){for(s=0;s0&&(n=this.groups[t[s]],r.stack===!0&&"bar"===r.style?"left"===r.yAxisOrientation?a=a.concat(n.getItems()):h=h.concat(n.getItems()):i[t[s]]=n.getYRange(o,t[s]));c.getStackedYRange(a,i,t,"__barStackLeft","left"),c.getStackedYRange(h,i,t,"__barStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i,o,n=!1,s=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var u=0;ui?i:a,d=o>d?o:d):(r=!0,h=h>i?i:h,l=o>l?o:l));1==s&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}n=this._toggleAxisVisiblity(s,this.yAxisLeft)||n,n=this._toggleAxisVisiblity(r,this.yAxisRight)||n,1==r&&1==s?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!s,0==this.yAxisRight.master?(1==r?this.yAxisLeft.lineOffset=this.yAxisRight.width:this.yAxisLeft.lineOffset=0,n=this.yAxisLeft.redraw()||n,this.yAxisRight.stepPixels=this.yAxisLeft.stepPixels,this.yAxisRight.zeroCrossing=this.yAxisLeft.zeroCrossing,this.yAxisRight.amountOfSteps=this.yAxisLeft.amountOfSteps,n=this.yAxisRight.redraw()||n):n=this.yAxisRight.redraw()||n;for(var p=["__barStackLeft","__barStackRight","__lineStackLeft","__lineStackRight"],u=0;ut?-1:1});for(var a=0;a0&&(t=0),this.range.start=t,this.range.end=e},o.prototype.redraw=function(){var t=!1,e=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+"px";for(var i in this.groups)this.groups.hasOwnProperty(i)&&(this.groups[i].visible!==!0||void 0!==this.linegraphOptions.visibility[i]&&this.linegraphOptions.visibility[i]!==!0||e++);if(0===this.amountOfGroups||0===e)this.hide();else{this.show(),this.height=Number(this.linegraphSVG.style.height.replace("px","")),this.dom.lineContainer.style.height=this.height+"px",this.width=this.options.visible===!0?Number((""+this.options.width).replace("px","")):0;var o=this.props,n=this.dom.frame;n.className="vis-data-axis",this._calculateCharSize();var s=this.options.orientation,r=this.options.showMinorLabels,a=this.options.showMajorLabels;o.minorLabelHeight=r?o.minorCharHeight:0,o.majorLabelHeight=a?o.majorCharHeight:0,o.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset,o.minorLineHeight=1,o.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset,o.majorLineHeight=1,"left"===s?(n.style.top="0",n.style.left="0",n.style.bottom="",n.style.width=this.width+"px",n.style.height=this.height+"px",this.props.width=this.body.domProps.left.width,this.props.height=this.body.domProps.left.height):(n.style.top="",n.style.bottom="0",n.style.left="0",n.style.width=this.width+"px",n.style.height=this.height+"px",this.props.width=this.body.domProps.right.width,this.props.height=this.body.domProps.right.height),t=this._redrawLabels(),t=this._isResized()||t,this.options.icons===!0?this._redrawGroupIcons():this._cleanupIcons(),this._redrawTitle(s)}return t},o.prototype._redrawLabels=function(){var t=!1;s.prepareElements(this.DOMelements.lines),s.prepareElements(this.DOMelements.labels);var e,i=this.options.orientation;if(this.master===!1){var o,n,r,h;-1!==this.zeroCrossing&&this.options.alignZeros===!0?this.range.end>0?(o=this.range.end/this.zeroCrossing,n=this.range.end-this.amountOfSteps*o,r=this.range.end):(o=-1*this.range.start/(this.amountOfSteps-this.zeroCrossing),n=this.range.start,r=this.range.start+o*this.amountOfSteps):(n=this.range.start,r=this.range.end),h=this.stepPixels}else h=this.props.majorCharHeight,n=this.range.start,r=this.range.end;if(this.step=e=new a(n,r,h,this.dom.frame.offsetHeight,this.options[this.options.orientation].range,this.options[this.options.orientation].format,this.master===!1&&this.options.alignZeros),this.master===!0)this.stepPixels=this.dom.frame.offsetHeight/e.marginRange*e.step,this.amountOfSteps=Math.ceil(this.dom.frame.offsetHeight/this.stepPixels);else if(this.options.alignZeros===!0&&-1!==this.zeroCrossing){var d=(e.current-this.zeroCrossing*e.step)/e.step;this.step.shift(d)}this.valueAtBottom=e.marginEnd,this.maxLabelSize=0;for(var l=0,u=0,c=!1;u0&&u!==this.amountOfSteps&&((this.options.showMinorLabels&&c===!1||this.master===!1&&this.options.showMinorLabels===!0)&&this._redrawLabel(l-2,e.getCurrent(),i,"vis-y-axis vis-minor",this.props.minorCharHeight),c&&this.options.showMajorLabels&&this.master===!0||this.options.showMinorLabels===!1&&this.master===!1&&c===!0?(l>=0&&this._redrawLabel(l-2,e.getCurrent(),i,"vis-y-axis vis-major",this.props.majorCharHeight),this._redrawLine(l,i,"vis-grid vis-horizontal vis-major",this.options.majorLinesOffset,this.props.majorLineWidth)):this._redrawLine(l,i,"vis-grid vis-horizontal vis-minor",this.options.minorLinesOffset,this.props.minorLineWidth)),this.master===!0&&0===e.current&&(this.zeroCrossing=u),e.next(),u+=1;this.master===!0&&0===e.current&&(this.zeroCrossing=u),this.conversionFactor=this.stepPixels/e.step;var p=0;void 0!==this.options[i].title&&void 0!==this.options[i].title.text&&(p=this.props.titleCharHeight);var f=this.options.icons===!0?Math.max(this.options.iconWidth,p)+this.options.labelOffsetX+15:p+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-f&&this.options.visible===!0?(this.width=this.maxLabelSize+f,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+f),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),t=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),t=!1),t},o.prototype.convertValue=function(t){var e=this.valueAtBottom-t,i=e*this.conversionFactor;return i},o.prototype.screenToValue=function(t){return this.valueAtBottom-t/this.conversionFactor},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.maxLabelSizes&&(h=s);for(var d=!1,l=h;Math.abs(l)<=Math.abs(s);l++){a=Math.pow(10,l);for(var u=0;u=n){d=!0,r=u;break}}if(d===!0)break}this.stepIndex=r,this.scale=a,this.step=a*this.minorSteps[r]},i.prototype.setFirst=function(t){void 0===t&&(t={});var e=void 0===t.min?this._start-2*this.scale*this.minorSteps[this.stepIndex]:t.min,i=void 0===t.max?this._end+this.scale*this.minorSteps[this.stepIndex]:t.max;this.marginEnd=void 0===t.max?this.roundToMinor(i):t.max,this.marginStart=void 0===t.min?this.roundToMinor(e):t.min,this.alignZeros===!0&&(this.marginEnd-this.marginStart)%this.step!=0&&(this.marginEnd+=this.marginEnd%this.step),this.deadSpace=this.roundToMinor(i)-i+this.roundToMinor(e)-e,this.marginRange=this.marginEnd-this.marginStart,this.current=this.marginEnd},i.prototype.roundToMinor=function(t){var e=t-t%(this.scale*this.minorSteps[this.stepIndex]);return t%(this.scale*this.minorSteps[this.stepIndex])>.5*(this.scale*this.minorSteps[this.stepIndex])?e+this.scale*this.minorSteps[this.stepIndex]:e},i.prototype.hasNext=function(){return this.current>=this.marginStart},i.prototype.next=function(){var t=this.current;this.current-=this.step,this.current===t&&(this.current=this._end)},i.prototype.previous=function(){this.current+=this.step,this.marginEnd+=this.step,this.marginRange=this.marginEnd-this.marginStart},i.prototype.getCurrent=function(){var t=Math.abs(this.current)t)for(var e=0;-t>e;e++)this.previous();else if(t>0)for(var e=0;t>e;e++)this.next()},t.exports=i},function(t,e,i){function o(t,e,i,o){this.id=e;var s=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation","zIndex"];this.options=n.selectiveBridgeObject(s,i),this.usingDefaultStyle=void 0===t.className,this.groupsUsingDefaultStyles=o,this.zeroPosition=0,this.update(t),1==this.usingDefaultStyle&&(this.groupsUsingDefaultStyles[0]+=1),this.itemsData=[],this.visible=void 0===t.visible?!0:t.visible}var n=i(1),s=(i(7),i(53)),r=i(55),a=i(54);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&n.insertSort(this.itemsData,function(t,e){return t.x>e.x?1:-1})):this.itemsData=[]},o.prototype.getItems=function(){return this.itemsData},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart","excludeFromLegend","excludeFromStacking","zIndex"];n.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.getLegend=function(t,e,i,o,n){if(void 0==i||null==i){var h=document.createElementNS("http://www.w3.org/2000/svg","svg");i={svg:h,svgElements:{},options:this.options,groups:[this]}}switch((void 0==o||null==o)&&(o=0),(void 0==n||null==n)&&(n=.5*e),this.options.style){case"line":r.drawIcon(this,o,n,t,e,i);break;case"points":case"point":a.drawIcon(this,o,n,t,e,i);break;case"bar":s.drawIcon(this,o,n,t,e,i)}return{icon:i.svg,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,o=0;ot[o].y?t[o].y:e,i=i0&&(r=Math.min(r,Math.abs(c[l-1].screen_x-a))),h=o._getSafeDrawData(r,d,m);else{var g=l+(p[a].amount-p[a].resolved),y=l-(p[a].resolved+1);g0&&(r=Math.min(r,Math.abs(c[y].screen_x-a))),h=o._getSafeDrawData(r,d,m),p[a].resolved+=1,d.options.stack===!0?c[l].screen_y0&&(i=Math.min(i,Math.abs(e[o-1].screen_x-e[o].screen_x))),0===i&&(void 0===t[e[o].screen_x]&&(t[e[o].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].screen_x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0, -"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.screen_x===e.screen_x?t.groupIde[s].screen_y?e[s].screen_y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0){var i=[];return i=1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t)}},o.drawIcon=function(t,e,i,o,s,r){var a,h,d=.5*s,l=n.getSVGElement("rect",r.svgElements,r.svg);if(l.setAttributeNS(null,"x",e),l.setAttributeNS(null,"y",i-d),l.setAttributeNS(null,"width",o),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),a=n.getSVGElement("path",r.svgElements,r.svg),a.setAttributeNS(null,"class",t.className),void 0!==t.style&&a.setAttributeNS(null,"style",t.style),a.setAttributeNS(null,"d","M"+e+","+i+" L"+(e+o)+","+i),1==t.options.shaded.enabled&&(h=n.getSVGElement("path",r.svgElements,r.svg),"top"==t.options.shaded.orientation?h.setAttributeNS(null,"d","M"+e+", "+(i-d)+"L"+e+","+i+" L"+(e+o)+","+i+" L"+(e+o)+","+(i-d)):h.setAttributeNS(null,"d","M"+e+","+i+" L"+e+","+(i+d)+" L"+(e+o)+","+(i+d)+"L"+(e+o)+","+i),h.setAttributeNS(null,"class",t.className+" vis-icon-fill"),void 0!==t.options.shaded.style&&""!==t.options.shaded.style&&h.setAttributeNS(null,"style",t.options.shaded.style)),1==t.options.drawPoints.enabled){var u={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,className:t.className};n.drawPoint(e+.5*o,i,u,r.svgElements,r.svg)}},o.drawShading=function(t,e,i,o){if(1==e.options.shaded.enabled){var s=Number(o.svg.style.height.replace("px","")),r=n.getSVGElement("path",o.svgElements,o.svg),a="L";1==e.options.interpolation.enabled&&(a="C");var h,d=0;d="top"==e.options.shaded.orientation?0:"bottom"==e.options.shaded.orientation?s:Math.min(Math.max(0,e.zeroPosition),s),h="group"==e.options.shaded.orientation&&null!=i&&void 0!=i?"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" L"+i[i.length-1][0]+","+i[i.length-1][1]+" "+this.serializePath(i,a,!0)+i[0][0]+","+i[0][1]+" Z":"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" V"+d+" H"+t[0][0]+" Z",r.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&r.setAttributeNS(null,"style",e.options.shaded.style),r.setAttributeNS(null,"d",h)}},o.draw=function(t,e,i){if(null!=t&&void 0!=t){var o=n.getSVGElement("path",i.svgElements,i.svg);o.setAttributeNS(null,"class",e.className),void 0!==e.style&&o.setAttributeNS(null,"style",e.style);var s="L";1==e.options.interpolation.enabled&&(s="C"),o.setAttributeNS(null,"d","M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,s,!1))}},o.serializePath=function(t,e,i){if(t.length<2)return"";var o=e;if(i)for(var n=t.length-2;n>0;n--)o+=t[n][0]+","+t[n][1]+" ";else for(var n=1;nl;l++)e=0==l?t[0]:t[l-1],i=t[l],o=t[l+1],n=d>l+2?t[l+2]:o,s={screen_x:(-e.screen_x+6*i.screen_x+o.screen_x)*h,screen_y:(-e.screen_y+6*i.screen_y+o.screen_y)*h},r={screen_x:(i.screen_x+6*o.screen_x-n.screen_x)*h,screen_y:(i.screen_y+6*o.screen_y-n.screen_y)*h},a.push([s.screen_x,s.screen_y]),a.push([r.screen_x,r.screen_y]),a.push([o.screen_x,o.screen_y]);return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,w,_,x=[];x.push([Math.round(t[0].screen_x),Math.round(t[0].screen_y)]);for(var k=t.length,O=0;k-1>O;O++)o=0==O?t[0]:t[O-1],n=t[O],s=t[O+1],r=k>O+2?t[O+2]:s,d=Math.sqrt(Math.pow(o.screen_x-n.screen_x,2)+Math.pow(o.screen_y-n.screen_y,2)),l=Math.sqrt(Math.pow(n.screen_x-s.screen_x,2)+Math.pow(n.screen_y-s.screen_y,2)),u=Math.sqrt(Math.pow(s.screen_x-r.screen_x,2)+Math.pow(s.screen_y-r.screen_y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),_=Math.pow(d,i),w=Math.pow(d,2*i),c=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+c*n.screen_x+w*s.screen_x)*f,screen_y:(-b*o.screen_y+c*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 i=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["color","font","fixed","shadow"];if(B.selectiveNotDeepExtend(n,t,e,i),B.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var s=B.parseColor(e.color);B.fillIfDefined(t.color,s)}else i===!0&&null===e.color&&(t.color=B.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=B.bridgeObject(o.font)),void 0!==e.scaling&&B.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)}}]),t}();e["default"]=F,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;i=this.nodeOptions.scaling.label.maxVisible&&(r=Number(this.nodeOptions.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+r+"px "+this.fontOptions.face,t.fillStyle=u,t.textAlign="center",this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.fontOptions.align&&this.pointToSelf===!1){e=0,i=0;var n=2;"top"===this.fontOptions.align?(t.textBaseline="alphabetic",i-=2*n):"bottom"===this.fontOptions.align?(t.textBaseline="hanging",i+=2*n):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.fontOptions.color||"#000000",i=this.fontOptions.strokeColor||"#ffffff";if(t<=this.nodeOptions.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.nodeOptions.scaling.label.drawThreshold-t)));e=r.overrideOpacity(e,o),i=r.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i={width:this._processLabel(t,e),height:this.fontOptions.size*this.lineCount,lineCount:this.lineCount};return i}},{key:"calculateLabelSize",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?0:arguments[2],o=arguments.length<=3||void 0===arguments[3]?0:arguments[3],n=arguments.length<=4||void 0===arguments[4]?"middle":arguments[4];this.labelDirty===!0&&(this.size.width=this._processLabel(t,e)),this.size.height=this.fontOptions.size*this.lineCount,this.size.left=i-.5*this.size.width,this.size.top=o-.5*this.size.height,this.size.yLine=o+.5*(1-this.lineCount)*this.fontOptions.size,"hanging"===n&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4),this.labelDirty=!1}},{key:"_processLabel",value:function(t,e){var i=0,o=[""],n=0;if(void 0!==this.nodeOptions.label){o=String(this.nodeOptions.label).split("\n"),n=o.length,t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+this.fontOptions.size+"px "+this.fontOptions.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;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;t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.lineWidth=o?a:r,t.lineWidth*=this.networkScaleInv,t.lineWidth=Math.min(this.width,t.lineWidth),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(),this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t),t.restore()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0){var i=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+i)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}},{key:"cleanup",value:function(){return this.edgeType.cleanup()}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["id","from","hidden","hoverWidth","label","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","to","title","value","width"];if(v.selectiveDeepExtend(n,t,e,i),v.mergeOptions(t,e,"smooth",i,o),v.mergeOptions(t,e,"shadow",i,o),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=Object.create(o.dashes)),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),v.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)):i===!0&&null===e.scaling&&(t.scaling=Object.create(o.scaling)),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var s=e.arrows.toLowerCase();-1!=s.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=s.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=s.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));v.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"from",i,o.arrows)}else i===!0&&null===e.arrows&&(t.arrows=Object.create(o.arrows));if(void 0!==e.color&&null!==e.color)if(t.color=v.deepExtend({},t.color,!0),v.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var r=!1;void 0!==e.color.color&&(t.color.color=e.color.color,r=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,r=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,r=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&r===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=v.bridgeObject(o.color));void 0!==e.font&&null!==e.font?a["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=v.bridgeObject(o.font))}}]),t}();e["default"]=g,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=function(){function t(t,e){for(var i=0;iMath.abs(e)||this.options.smooth.forceDirection===!0||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(o=this.from.y,s=this.to.y,i=this.from.x-r*t,n=this.to.x+r*t):(o=this.from.y-r*e,s=this.to.y+r*e,i=this.from.x,n=this.to.x),[{x:i,y:o},{x:n,y:s}]}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var a=arguments.length<=6||void 0===arguments[6]?this._getViaCoordinates():arguments[6],h=r(a,2),d=h[0],l=h[1];return this._getDistanceToBezierEdge(t,e,i,o,n,s,d,l)}},{key:"getPoint",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?this._getViaCoordinates():arguments[1],i=r(e,2),o=i[0],n=i[1],s=t,a=[];a[0]=Math.pow(1-s,3),a[1]=3*s*Math.pow(1-s,2),a[2]=3*Math.pow(s,2)*(1-s),a[3]=Math.pow(s,3);var h=a[0]*this.from.x+a[1]*o.x+a[2]*n.x+a[3]*this.to.x,d=a[0]*this.from.y+a[1]*o.y+a[2]*n.y+a[3]*this.to.y;return{x:h,y:d}}}]),e}(l["default"]);e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;il;l++)u=.1*l,v[0]=Math.pow(1-u,3),v[1]=3*u*Math.pow(1-u,2),v[2]=3*Math.pow(u,2)*(1-u),v[3]=Math.pow(u,3),c=v[0]*t+v[1]*r.x+v[2]*a.x+v[3]*i,p=v[0]*e+v[1]*r.y+v[2]*a.y+v[3]*o,l>0&&(d=this._getDistanceToLine(f,m,c,p,n,s),h=h>d?d:h),f=c,m=p;return h}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=1e9,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0,p=t,f=e;for(d=1;10>d;d++)l=.1*d,u=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,c=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,u,c,n,s),a=a>h?h:a),p=u,f=c;return a}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"drawArrowHead",value:function(t,e,i,o,s){t.strokeStyle=this.getColor(t,o,s),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(o,s);var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0;if("from"===e?(d=this.from,l=this.to,u=.1,c=this.options.arrows.from.scaleFactor):"to"===e?(d=this.to,l=this.from,u=-.1,c=this.options.arrows.to.scaleFactor):(d=this.to,l=this.from,c=this.options.arrows.middle.scaleFactor),d!=l){if("middle"!==e)if(this.options.smooth.enabled===!0){h=this.findBorderPosition(d,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,h.t+u)),i);r=Math.atan2(h.y-p.y,h.x-p.x)}else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.findBorderPosition(d,t);else r=Math.atan2(d.y-l.y,d.x-l.x),h=this.getPoint(.6,i);a=(10+5*this.options.width)*c,t.arrow(h.x,h.y,r,a),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}else{var f=void 0,m=void 0,v=this._getCircleData(t),g=n(v,3),y=g[0],b=g[1],w=g[2];"from"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.25,high:.6,direction:-1}),f=-2*m.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(m=this.findBorderPosition(this.from,t,{x:y,y:b,low:.6,high:1,direction:1}),f=-2*m.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(m=this._pointOnCircle(y,b,w,.175),f=3.9269908169872414);var _=(10+5*this.options.width)*c;t.arrow(m.x,m.y,f,_),this.enableShadow(t),t.fill(),this.disableShadow(t),t.stroke()}}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor=this.options.shadow.color,t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)Math.abs(this.from.x-this.to.x)<=Math.abs(this.from.y-this.to.y)?(t=this.from.x,e=this.from.yMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1||this.startedStabilization===!0)&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:e}),t.startedStabilization=!1,t.stabilizationIterations=0},0)}},{key:"physicsTick",value:function(){if(this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0),this.stabilized===!1){if(this.adaptiveTimestep===!0&&this.adaptiveTimestepEnabled===!0){var t=1.2;this.adaptiveCounter%this.adaptiveInterval===0?(this.timestep=2*this.timestep,this.calculateForces(),this.moveNodes(),this.revert(),this.timestep=.5*this.timestep,this.calculateForces(),this.moveNodes(),this.calculateForces(),this.moveNodes(),this._evaluateStepQuality()===!0?this.timestep=t*this.timestep:this.timestep/ts))return!1;return!0}},{key:"moveNodes",value:function(){for(var t=this.physicsBody.physicsNodeIndices,e=this.options.maxVelocity?this.options.maxVelocity:1e9,i=0,o=0,n=5,s=0;se?s[t].x>0?e:-e:s[t].x,i.x+=s[t].x*o}else n[t].x=0,s[t].x=0;if(i.options.fixed.y===!1){var h=this.modelOptions.damping*s[t].y,d=(n[t].y-h)/i.options.mass;s[t].y+=d*o,s[t].y=Math.abs(s[t].y)>e?s[t].y>0?e:-e:s[t].y,i.y+=s[t].y*o}else n[t].y=0,s[t].y=0;var l=Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2));return l}},{key:"calculateForces",value:function(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve()}},{key:"_freezeNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].x&&t[e].y&&(this.freezeCache[e]={x:t[e].options.fixed.x,y:t[e].options.fixed.y},t[e].options.fixed.x=!0,t[e].options.fixed.y=!0)}},{key:"_restoreFrozenNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&void 0!==this.freezeCache[e]&&(t[e].options.fixed.x=this.freezeCache[e].x,t[e].options.fixed.y=this.freezeCache[e].y);this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?this.options.stabilization.iterations:arguments[0];return"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),0===this.physicsBody.physicsNodeIndices.length?void(this.ready=!0):(this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,void setTimeout(function(){return t._stabilizationBatch()},0))}},{key:"_stabilizationBatch",value:function(){this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0);for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):4===t.childrenCount?(this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")}},{key:"_placeInRegion",value:function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x===e.x&&t.children[i].children.data.y===e.y?(e.x+=this.seededRandom(),e.y+=this.seededRandom()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}}},{key:"_splitBranch",value:function(t){var e=null;1===t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)}},{key:"_insertRegion",value:function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=.5*t.size;switch(e){case"NW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY,s=t.range.minY+r;break;case"NE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY,s=t.range.minY+r;break;case"SW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY+r,s=t.range.maxY;break;case"SE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY+r,s=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:o,minY:n,maxY:s},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}}},{key:"_debug",value:function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))}},{key:"_drawBranch",value:function(t,e,i){void 0===i&&(i="#FF0000"),4===t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii&&(s=.5*u>i?1:c*i+p,s/=i,o=t*s,n=e*s,l[r.id].x-=o,l[r.id].y-=n,l[a.id].x+=o,l[a.id].y+=n)}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii?-Math.pow(f*i,2)+Math.pow(f*p,2):0,0===i?i=.01:s/=i,o=t*s,n=e*s,c[r.id].x-=o,c[r.id].y-=n,c[a.id].x+=o,c[a.id].y+=n}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;i0){var s=n.edges.length+1,r=this.options.centralGravity*s*n.options.mass;o[n.id].x=e*r,o[n.id].y=i*r}}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var o=0;o0&&Object.keys(p).length>0&&m===!0&&o.push({nodes:c,edges:p})}}}for(var u=0;uo?r.x:o,n=r.ys?r.y:s;return{x:.5*(i+o),y:.5*(n+s)}}},{key:"openCluster",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!0:arguments[2];if(void 0===t)throw new Error("No clusterNodeId supplied to openCluster.");if(void 0===this.body.nodes[t])throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(void 0===this.body.nodes[t].containedNodes)return void console.log("The node:"+t+" is not a cluster.");var o=this.body.nodes[t],n=o.containedNodes,s=o.containedEdges;if(void 0!==e&&void 0!==e.releaseFunction&&"function"==typeof e.releaseFunction){var r={},h={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];r[d]={x:u.x,y:u.y}}var c=e.releaseFunction(h,r);for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];void 0!==c[d]&&(u.x=void 0===c[d].x?o.x:c[d].x,u.y=void 0===c[d].y?o.y:c[d].y)}}else for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u=n[d],u.options.fixed.x===!1&&(u.x=o.x),u.options.fixed.y===!1&&(u.y=o.y)}for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u.vx=o.vx,u.vy=o.vy,u.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[d]}for(var p=[],f=0;fo;)e.push(this.body.nodes[t].id),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t].id),e.reverse(),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0)for(var a=0;ae.shape.boundingBox.left&&(s=e.shape.boundingBox.left),re.shape.boundingBox.top&&(o=e.shape.boundingBox.top),n0)for(var a=0;ae.x&&(s=e.x),re.y&&(o=e.y),n0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.allowRedraw=!1,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;if(e.clearRect(0,0,i,o),0===this.canvas.frame.clientWidth)return;e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t,i.selected));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0){var t=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,e=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,i=this.cameraState.scale;1!=t&&1!=e?i=.5*this.cameraState.scale*(t+e):1!=t?i=this.cameraState.scale*t:1!=e&&(i=this.cameraState.scale*e),this.body.view.scale=i;var o=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),n={x:o.x-this.cameraState.position.x,y:o.y-this.cameraState.position.y};this.body.view.translation.x+=n.x*this.body.view.scale,this.body.view.translation.y+=n.y*this.body.view.scale}}},{key:"_prepareValue",value:function(t){if("number"==typeof t)return t+"px";if("string"==typeof t){if(-1!==t.indexOf("%")||-1!==t.indexOf("px"))return t;if(-1===t.indexOf("%"))return t+"px"}throw new Error("Could not use the value supplied for width or height:"+t)}},{key:"_create",value:function(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}},{key:"_bindHammer",value:function(){var t=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new s(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),r.onTouch(this.hammer,function(e){t.body.eventListeners.onTouch(e)}),this.hammer.on("tap",function(e){t.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",function(e){t.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",function(e){t.body.eventListeners.onHold(e)}),this.hammer.on("panstart",function(e){t.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",function(e){t.body.eventListeners.onDrag(e)}),this.hammer.on("panend",function(e){t.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",function(e){t.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("mousewheel",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("DOMMouseScroll",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",function(e){t.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",function(e){t.body.eventListeners.onContext(e)}),this.hammerFrame=new s(this.frame),r.onRelease(this.hammerFrame,function(e){t.body.eventListeners.onRelease(e)})}},{key:"setSize",value:function(){var t=arguments.length<=0||void 0===arguments[0]?this.options.width:arguments[0],e=arguments.length<=1||void 0===arguments[1]?this.options.height:arguments[1];t=this._prepareValue(t),e=this._prepareValue(e);var i=!1,o=this.frame.canvas.width,n=this.frame.canvas.height,s=this.frame.canvas.getContext("2d"),r=this.pixelRatio;return this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),t!=this.options.width||e!=this.options.height||this.frame.style.width!=t||this.frame.style.height!=e?(this._getCameraState(r),this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=t,this.options.height=e,i=!0):((this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)||this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio))&&this._getCameraState(r),this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&(this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),i=!0),this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio)&&(this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),i=!0)),i===!0&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(o/this.pixelRatio),oldHeight:Math.round(n/this.pixelRatio)}),this._setCameraState()),i}},{key:"_XconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}}},{key:"DOMtoCanvas",value:function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i.5*this.body.nodeIndices.length)return void this.fit(t,!1);i=a["default"].getRange(this.body.nodes,t.nodes);var h=this.body.nodeIndices.length;o=12.662/(h+7.4147)+.0964822;var d=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);o*=d}else{this.body.emitter.emit("_resizeNodes"),i=a["default"].getRange(this.body.nodes,t.nodes);var l=1.1*Math.abs(i.maxX-i.minX),u=1.1*Math.abs(i.maxY-i.minY),c=this.canvas.frame.canvas.clientWidth/l,p=this.canvas.frame.canvas.clientHeight/u;o=p>=c?c:p}o>1?o=1:0===o&&(o=1);var f=a["default"].findCenter(i),m={position:f,scale:o,animation:t.animation};this.moveTo(m)}},{key:"focus",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=h.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey); -this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0),a-o>0&&p===!1?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0&&(this.keycharm.bind("up",function(){t.bindToRedraw("_moveUp")},"keydown"),this.keycharm.bind("down",function(){t.bindToRedraw("_moveDown")},"keydown"),this.keycharm.bind("left",function(){t.bindToRedraw("_moveLeft")},"keydown"),this.keycharm.bind("right",function(){t.bindToRedraw("_moveRight")},"keydown"),this.keycharm.bind("=",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num+",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("[",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("]",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pageup",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pagedown",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("up",function(){t.unbindFromRedraw("_moveUp")},"keyup"),this.keycharm.bind("down",function(){t.unbindFromRedraw("_moveDown")},"keyup"),this.keycharm.bind("left",function(){t.unbindFromRedraw("_moveLeft")},"keyup"),this.keycharm.bind("right",function(){t.unbindFromRedraw("_moveRight")},"keyup"),this.keycharm.bind("=",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num+",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("[",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("]",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pageup",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pagedown",function(){t.unbindFromRedraw("_zoomOut")},"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;io&&(s=o-e-this.padding),sn&&(r=n-i-this.padding),r0?e===!0?this.body.nodes[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(t,e){for(var i=this.body.edges,o=0;o0?e===!0?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof s?(delete this.selectionObj.nodes[t.id],this._unselectConnectedEdges(t)):delete this.selectionObj.edges[t.id]}},{key:"unselectAll",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].unselect();for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&this.selectionObj.edges[e].unselect();this.selectionObj={nodes:{},edges:{}}}},{key:"_getSelectedNodeCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedNode",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t]}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t]}},{key:"_getSelectedEdgeCount",value:function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedObjectCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&(t+=1);return t}},{key:"_selectionIsEmpty",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return!1;for(var e in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(e))return!1;return!0}},{key:"_clusterInSelection",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1}},{key:"_selectConnectedEdges",value:function(t){for(var e=0;e0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(e);if(i===!0)return this.body.emitter.emit("refresh"),h.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={solver:"hierarchicalRepulsion"},this.optionsBackup.physics={solver:"barnesHut"}):"object"==typeof t.physics?(this.optionsBackup.physics={solver:"barnesHut"},void 0!==t.physics.solver&&(this.optionsBackup.physics={solver:t.physics.solver}),t.physics.solver="hierarchicalRepulsion"):t.physics!==!1&&(this.optionsBackup.physics={solver:"barnesHut"},t.physics.solver="hierarchicalRepulsion");var e="horizontal";("RL"===this.options.hierarchical.direction||"LR"===this.options.hierarchical.direction)&&(e="vertical"),void 0===t.edges?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges={smooth:!1}):void 0===t.edges.smooth?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges.smooth=!1):"boolean"==typeof t.edges.smooth?(this.optionsBackup.edges={smooth:t.edges.smooth},t.edges.smooth={enabled:t.edges.smooth,type:e}):(void 0!==t.edges.smooth.type&&"dynamic"!==t.edges.smooth.type&&(e=t.edges.smooth.type),this.optionsBackup.edges={smooth:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:void 0===t.edges.smooth.type?"dynamic":t.edges.smooth.type,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection}),this.body.emitter.emit("_forceDisableDynamicCurves",e)}return t}},{key:"seededRandom",value:function(){var t=1e4*Math.sin(this.randomSeed++);return t-Math.floor(t)}},{key:"positionInitially",value:function(t){if(this.options.hierarchical.enabled!==!0){this.randomSeed=this.initialRandomSeed;for(var e=0;es){for(var r=this.body.nodeIndices.length;this.body.nodeIndices.length>s;){n+=1;var a=this.body.nodeIndices.length;n%3===0?this.body.modules.clustering.clusterBridges():this.body.modules.clustering.clusterOutliers();var h=this.body.nodeIndices.length;if(a==h&&n%3!==0||n>o)return this._declusterAll(),this.body.emitter.emit("_layoutFailed"),void console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.")}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*r)})}this.body.modules.kamadaKawai.solve(this.body.nodeIndices,this.body.edgeIndices,!0),this._shiftToCenter();for(var d=70,e=0;e0){var t=void 0,e=void 0,i=!1,o=!1;this.hierarchicalLevels={},this.nodeSpacing=100;for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):o=!0);if(o===!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.");o===!0&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():"directed"===this.options.hierarchical.sortMethod?this._determineLevelsDirected():"custom"===this.options.hierarchical.sortMethod&&this._determineLevelsCustomCallback());var n=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(n),this._condenseHierarchy(n),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(t){}},{key:"_placeNodesByHierarchy",value:function(t){this.positionedNodes={};for(var e in t)if(t.hasOwnProperty(e)){var i=Object.keys(t[e]);i=this._indexArrayToNodes(i),this._sortNodeArray(i);for(var o=0;o0&&(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 h=i(a["default"].cloneOptions(o,"node"),a["default"].cloneOptions(n,"node"),a["default"].cloneOptions(s,"edge"));t.hierarchicalLevels[n.id]=t.hierarchicalLevels[o.id]+h};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)&&(t=Math.min(this.hierarchicalLevels[e],t));for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(this.hierarchicalLevels[e]-=t)}},{key:"_generateMap",value:function(){var t=this,e=function(e,i){if(t.hierarchicalLevels[i.id]>t.hierarchicalLevels[e.id]){var o=e.id,n=i.id;void 0===t.hierarchicalParents[o]&&(t.hierarchicalParents[o]={children:[],amount:0}),t.hierarchicalParents[o].children.push(n),void 0===t.hierarchicalChildren[n]&&(t.hierarchicalChildren[n]={parents:[],amount:0}),t.hierarchicalChildren[n].parents.push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(t,e){void 0===t&&(t=function(){});var i={},o=function r(e){if(void 0===i[e.id]){i[e.id]=!0;for(var o=void 0,n=0;ne&&void 0===this.positionedNodes[n.id]))return;var r=void 0;if(r=0===o?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[o-1])+this.nodeSpacing,this._setPositionForHierarchy(n,r),void 0!==this.lastNodeOnLevel[s]){var a=this._getPositionForHierarchy(this.body.nodes[this.lastNodeOnLevel[s]]);if(r-a1&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.sort(function(t,e){return t.x-e.x}):t.sort(function(t,e){return t.y-e.y}))}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0&&this.options.deleteNode!==!1?(n===!0&&this._createSeperator(4),this._createDeleteButton(o)):0===t&&this.options.deleteEdge!==!1&&(n===!0&&this._createSeperator(4),this._createDeleteButton(o))),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this)),this._temporaryBindEvent("select",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.addDescription||this.options.locales.en.addDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent("click",this._performAddNode.bind(this))}},{key:"editNode",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean();var e=this.selectionHandler._getSelectedNode();if(void 0!==e){if(this.inMode="editNode","function"!=typeof this.options.editNode)throw new Error("No function has been configured to handle the editing of nodes.");if(e.isCluster!==!0){var i=s.deepExtend({},e.options,!0);if(i.x=e.x,i.y=e.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(i,function(e){null!==e&&void 0!==e&&"editNode"===t.inMode&&t.body.data.nodes.getDataSet().update(e),t.showManipulatorToolbar()})}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.edgeDescription||this.options.locales.en.edgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI("onTouch",this._handleConnect.bind(this)),this._temporaryBindUI("onDragEnd",this._finishConnect.bind(this)),this._temporaryBindUI("onDrag",this._dragControlNode.bind(this)),this._temporaryBindUI("onRelease",this._finishConnect.bind(this)),this._temporaryBindUI("onDragStart",function(){}),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){var t=this;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",this.guiEnabled===!0){var e=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(e),this._createSeperator(),this._createDescription(e.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0!==this.edgeBeingEditedId?!function(){var e=t.body.edges[t.edgeBeingEditedId],i=t._getNewTargetNode(e.from.x,e.from.y),o=t._getNewTargetNode(e.to.x,e.to.y);t.temporaryIds.nodes.push(i.id),t.temporaryIds.nodes.push(o.id),t.body.nodes[i.id]=i,t.body.nodeIndices.push(i.id),t.body.nodes[o.id]=o,t.body.nodeIndices.push(o.id),t._temporaryBindUI("onTouch",t._controlNodeTouch.bind(t)),t._temporaryBindUI("onTap",function(){}),t._temporaryBindUI("onHold",function(){}),t._temporaryBindUI("onDragStart",t._controlNodeDragStart.bind(t)),t._temporaryBindUI("onDrag",t._controlNodeDrag.bind(t)),t._temporaryBindUI("onDragEnd",t._controlNodeDragEnd.bind(t)),t._temporaryBindUI("onMouseMove",function(){}),t._temporaryBindEvent("beforeDrawing",function(t){var n=e.edgeType.findBorderPositions(t);i.selected===!1&&(i.x=n.from.x,i.y=n.from.y),o.selected===!1&&(o.x=n.to.x,o.y=n.to.y)}),t.body.emitter.emit("_redraw")}():this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";var e=this.selectionHandler.getSelectedNodes(),i=this.selectionHandler.getSelectedEdges(),o=void 0;if(e.length>0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode?(t.body.data.edges.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){void 0===this.manipulationDiv&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),void 0===this.editModeDiv&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),void 0===this.closeDiv&&(this.closeDiv=document.createElement("div"),this.closeDiv.className="vis-close",this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(t,e){var i=s.deepExtend({},this.options.controlNodeStyle);i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e;var o=this.body.functions.createNode(i);return o.shape.boundingBox={left:t,right:t,top:e,bottom:e},o}},{key:"_createEditButton",value:function(){this._clean(),this.manipulationDOM={},s.recursiveDOMDelete(this.editModeDiv);var t=this.options.locales[this.options.locale],e=this._createButton("editMode","vis-button vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(e),this._bindHammerToDiv(e,this.toggleEditMode.bind(this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(s.recursiveDOMDelete(this.editModeDiv),s.recursiveDOMDelete(this.manipulationDiv),this._cleanManipulatorHammers()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanManipulatorHammers",value:function(){if(0!=this.manipulationHammers.length){for(var t=0;t=0;r--)if(n[r]!==this.selectedControlNode.id){s=this.body.nodes[n[r]];break}if(void 0!==s&&void 0!==this.selectedControlNode)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,o.to.id):this._performEditEdge(o.from.id,s.id)}else o.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(t){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(t.center),this.lastTouch.translation=s.extend({},this.body.view.translation);var e=this.lastTouch,i=this.selectionHandler.getNodeAt(e);if(void 0!==i)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var o=this._getNewTargetNode(i.x,i.y);this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id);var n=this.body.functions.createEdge({id:"connectionEdge"+s.randomUUID(),from:i.id,to:o.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[n.id]=n,this.body.edgeIndices.push(n.id),this.temporaryIds.nodes.push(o.id),this.temporaryIds.edges.push(n.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(t){var e=this.body.functions.getPointer(t.center);if(void 0!==this.temporaryIds.nodes[0]){var i=this.body.nodes[this.temporaryIds.nodes[0]];i.x=this.canvas._XconvertDOMtoCanvas(e.x),i.y=this.canvas._YconvertDOMtoCanvas(e.y),this.body.emitter.emit("_redraw")}else{var o=e.x-this.lastTouch.x,n=e.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+o,y:this.lastTouch.translation.y+n}}}},{key:"_finishConnect",value:function(t){var e=this.body.functions.getPointer(t.center),i=this.selectionHandler._pointerToPositionObject(e),o=void 0;void 0!==this.temporaryIds.edges[0]&&(o=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var n=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,r=n.length-1;r>=0;r--)if(-1===this.temporaryIds.nodes.indexOf(n[r])){s=this.body.nodes[n[r]];break}this._cleanupTemporaryNodesAndEdges(),void 0!==s&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="object",a="dom",h="any",d={configure:{enabled:{"boolean":o},filter:{"boolean":o,string:i,array:s,"function":"function"},container:{dom:a},showButton:{"boolean":o},__type__:{object:r,"boolean":o,string:i,array:s,"function":"function"}},edges:{arrows:{to:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},middle:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},from:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},__type__:{string:["from","to","middle"],object:r}},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},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:r,"boolean":o}},__type__:{object:r}},manipulation:{enabled:{"boolean":o},initiallyActive:{"boolean":o},addNode:{"boolean":o,"function":"function"},addEdge:{"boolean":o,"function":"function"},editNode:{"function":"function"},editEdge:{"boolean":o,"function":"function"},deleteNode:{"boolean":o,"function":"function"},deleteEdge:{"boolean":o,"function":"function"},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:r,"boolean":o}},nodes:{borderWidth:{number:n},borderWidthSelected:{number:n,undefined:"undefined"},brokenImage:{string:i,undefined:"undefined"},color:{border:{string:i},background:{string:i},highlight:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},__type__:{object:r,string:i}},fixed:{x:{"boolean":o},y:{"boolean":o},__type__:{object:r,"boolean":o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:r,string:i}},group:{string:i,number:n,undefined:"undefined"},hidden:{"boolean":o},icon:{face:{string:i},code:{string:i},size:{number:n},color:{string:i},__type__:{object:r}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},shadow:{enabled:{"boolean":o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},shapeProperties:{borderDashes:{"boolean":o,array:s},borderRadius:{number:n},useImageSize:{"boolean":o},useBorderWithImage:{"boolean":o},__type__:{object:r}},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:r}},physics:{enabled:{"boolean":o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},forceAtlas2Based:{gravitationalConstant:{number:n -},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},maxVelocity:{number:n},minVelocity:{number:n},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":o},iterations:{number:n},updateInterval:{number:n},onlyDynamicEdges:{"boolean":o},fit:{"boolean":o},__type__:{object:r,"boolean":o}},timestep:{number:n},adaptiveTimestep:{"boolean":o},__type__:{object:r,"boolean":o}},autoResize:{"boolean":o},clickToUse:{"boolean":o},locale:{string:i},locales:{__any__:{any:h},__type__:{object:r}},height:{string:i},width:{string:i},__type__:{object:r}};d.groups.__any__=d.nodes,d.manipulation.controlNodeStyle=d.nodes;var l={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},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,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],direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01]},global:{locale:["en","nl"]}};e.allOptions=d,e.configureOptions=l},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=function(){function t(t,e){for(var i=0;in&&h>a;){a+=1;var v=this._getHighestEnergyNode(i),g=s(v,4);for(u=g[0],l=g[1],c=g[2],p=g[3],f=l,m=0;f>r&&d>m;){m+=1,this._moveNode(u,c,p);var y=this._getEnergy(u),b=s(y,3);f=b[0],c=b[1],p=b[2]}}}},{key:"_getHighestEnergyNode",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=0,n=e[0],r=0,a=0,h=0;ho&&(o=c,n=d,r=p,a=f)}}return[n,o,r,a]}},{key:"_getEnergy",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=i[t].x,n=i[t].y,s=0,r=0,a=0;ad;d++)for(var s=0;h-1>s;s++)for(var r=s+1;h>r;r++)o[e[s]][e[r]]=Math.min(o[e[s]][e[r]],o[e[s]][e[d]]+o[e[d]][e[r]]),o[e[r]][e[s]]=o[e[s]][e[r]];return o}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.circle=function(t,e,i){this.beginPath(),this.arc(t,e,i,0,2*Math.PI,!1),this.closePath()},CanvasRenderingContext2D.prototype.square=function(t,e,i){this.beginPath(),this.rect(t-i,e-i,2*i,2*i),this.closePath()},CanvasRenderingContext2D.prototype.triangle=function(t,e,i){this.beginPath(),i*=1.15,e+=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e-(r-s)),this.lineTo(t+n,e+s),this.lineTo(t-n,e+s),this.lineTo(t,e-(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.triangleDown=function(t,e,i){this.beginPath(),i*=1.15,e-=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e+(r-s)),this.lineTo(t+n,e-s),this.lineTo(t-n,e-s),this.lineTo(t,e+(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.star=function(t,e,i){this.beginPath(),i*=.82,e+=.1*i;for(var o=0;10>o;o++){var n=o%2===0?1.3*i:.5*i;this.lineTo(t+n*Math.sin(2*o*Math.PI/10),e-n*Math.cos(2*o*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.diamond=function(t,e,i){this.beginPath(),this.lineTo(t,e+i),this.lineTo(t+i,e),this.lineTo(t,e-i),this.lineTo(t-i,e),this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,o,n){var s=Math.PI/180;0>i-2*n&&(n=i/2),0>o-2*n&&(n=o/2),this.beginPath(),this.moveTo(t+n,e),this.lineTo(t+i-n,e),this.arc(t+i-n,e+n,n,270*s,360*s,!1),this.lineTo(t+i,e+o-n),this.arc(t+i-n,e+o-n,n,0,90*s,!1),this.lineTo(t+n,e+o),this.arc(t+n,e+o-n,n,90*s,180*s,!1),this.lineTo(t,e+n),this.arc(t+n,e+n,n,180*s,270*s,!1),this.closePath()},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,o){var n=.5522848,s=i/2*n,r=o/2*n,a=t+i,h=e+o,d=t+i/2,l=e+o/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-s,e,d,e),this.bezierCurveTo(d+s,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+s,h,d,h),this.bezierCurveTo(d-s,h,t,l+r,t,l),this.closePath()},CanvasRenderingContext2D.prototype.database=function(t,e,i,o){var n=1/3,s=i,r=o*n,a=.5522848,h=s/2*a,d=r/2*a,l=t+s,u=e+r,c=t+s/2,p=e+r/2,f=e+(o-r/2),m=e+o;this.beginPath(),this.moveTo(l,p),this.bezierCurveTo(l,p+d,c+h,u,c,u),this.bezierCurveTo(c-h,u,t,p+d,t,p),this.bezierCurveTo(t,p-d,c-h,e,c,e),this.bezierCurveTo(c+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,c+h,m,c,m),this.bezierCurveTo(c-h,m,t,f+d,t,f),this.lineTo(t,p)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,o){var n=t-o*Math.cos(i),s=e-o*Math.sin(i),r=t-.9*o*Math.cos(i),a=e-.9*o*Math.sin(i),h=n+o/3*Math.cos(i+.5*Math.PI),d=s+o/3*Math.sin(i+.5*Math.PI),l=n+o/3*Math.cos(i-.5*Math.PI),u=s+o/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,u),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,o,n){this.beginPath(),this.moveTo(t,e);for(var s=n.length,r=i-t,a=o-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,u=!0,c=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=0>r?-c:c,t+=c,e+=h*c,u===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e){function i(t){return P=t,p()}function o(){I=0,N=P.charAt(0)}function n(){I++,N=P.charAt(I)}function s(){return P.charAt(I+1)}function r(t){return A.test(t)}function a(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function h(t,e,i){for(var o=e.split("."),n=t;o.length;){var s=o.shift();o.length?(n[s]||(n[s]={}),n=n[s]):n[s]=i}}function d(t,e){for(var i,o,n=null,s=[t],r=t;r.parent;)s.push(r.parent),r=r.parent;if(r.nodes)for(i=0,o=r.nodes.length;o>i;i++)if(e.id===r.nodes[i].id){n=r.nodes[i];break}for(n||(n={id:e.id},t.node&&(n.attr=a(n.attr,t.node))),i=s.length-1;i>=0;i--){var h=s[i];h.nodes||(h.nodes=[]),-1===h.nodes.indexOf(n)&&h.nodes.push(n)}e.attr&&(n.attr=a(n.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function u(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=a({},t.edge)),s.attr=a(s.attr||{},n),s}function c(){for(L=E.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=E.DELIMITER);var i=N+s();if(S[i])return L=E.DELIMITER,z=i,n(),void n();if(S[N])return L=E.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=E.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=E.IDENTIFIER)}for(L=E.UNKNOWN;""!=N;)z+=N,n();throw new SyntaxError('Syntax error in part "'+x(z,30)+'"')}function p(){var t={};if(o(),c(),"strict"===z&&(t.strict=!0,c()),("graph"===z||"digraph"===z)&&(t.type=z,c()),L===E.IDENTIFIER&&(t.id=z,c()),"{"!=z)throw _("Angle bracket { expected");if(c(),f(t),"}"!=z)throw _("Angle bracket } expected");if(c(),""!==z)throw _("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&c()}function m(t){var e=v(t);if(e)return void b(t,e);var i=g(t);if(!i){if(L!=E.IDENTIFIER)throw _("Identifier expected");var o=z;if(c(),"="===z){if(c(),L!=E.IDENTIFIER)throw _("Identifier expected");t[o]=z,c()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph",c(),L===E.IDENTIFIER&&(e.id=z,c())),"{"===z){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=z)throw _("Angle bracket } expected");c(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function g(t){return"node"===z?(c(),t.node=w(),"node"):"edge"===z?(c(),t.edge=w(),"edge"):"graph"===z?(c(),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;c();var n=v(t);if(n)i=n;else{if(L!=E.IDENTIFIER)throw _("Identifier or subgraph expected");i=z,d(t,{id:i}),c()}var s=w(),r=u(t,e,i,o,s);l(t,r),e=i}}function w(){for(var t=null;"["===z;){for(c(),t={};""!==z&&"]"!=z;){if(L!=E.IDENTIFIER)throw _("Attribute name expected");var e=z;if(c(),"="!=z)throw _("Equal sign = expected");if(c(),L!=E.IDENTIFIER)throw _("Attribute value expected");var i=z;h(t,e,i),c(),","==z&&c()}if("]"!=z)throw _("Bracket ] expected");c()}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=E.NULL,A=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=D},function(t,e){function i(t,e){var i=[],o=[],n={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};void 0!==e&&(void 0!==e.fixed&&(n.nodes.fixed=e.fixed),void 0!==e.parseColor&&(n.nodes.parseColor=e.parseColor),void 0!==e.inheritColor&&(n.edges.inheritColor=e.inheritColor));for(var s=t.edges,r=t.nodes,a=0;ai;i++)if(t[i]!=e[i])return!1;return!0},e.convert=function(t,i){var n;if(void 0!==t){if(null===t)return null;if(!i)return t;if("string"!=typeof i&&!(i instanceof String))throw new Error("Type must be a string");switch(i){case"boolean":case"Boolean":return Boolean(t);case"number":case"Number":return Number(t.valueOf());case"string":case"String":return String(t);case"Date":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return new Date(t.valueOf());if(o.isMoment(t))return new Date(t.valueOf());if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])):o(t).toDate();throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"Moment":if(e.isNumber(t))return o(t);if(t instanceof Date)return o(t.valueOf());if(o.isMoment(t))return o(t);if(e.isString(t))return n=s.exec(t),o(n?Number(n[1]):t);throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"ISODate":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return t.toISOString();if(o.isMoment(t))return t.toDate().toISOString();if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])).toISOString():new Date(t).toISOString();throw new Error("Cannot convert object of type "+e.getType(t)+" to type ISODate");case"ASPDate":if(e.isNumber(t))return"/Date("+t+")/";if(t instanceof Date)return"/Date("+t.valueOf()+")/";if(e.isString(t)){n=s.exec(t);var r;return r=n?new Date(Number(n[1])).valueOf():new Date(t).valueOf(),"/Date("+r+")/"}throw new Error("Cannot convert object of type "+e.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+i+'"')}}};var s=/^\/?Date\((\-?\d+)/i;e.getType=function(t){var e=typeof t;return"object"==e?null===t?"null":t instanceof Boolean?"Boolean":t instanceof Number?"Number":t instanceof String?"String":Array.isArray(t)?"Array":t instanceof Date?"Date":"Object":"number"==e?"Number":"boolean"==e?"Boolean":"string"==e?"String":void 0===e?"undefined":e},e.copyAndExtendArray=function(t,e){for(var i=[],o=0;oi;i++)e(t[i],i,t);else for(i in t)t.hasOwnProperty(i)&&e(t[i],i,t)},e.toArray=function(t){var e=[];for(var i in t)t.hasOwnProperty(i)&&e.push(t[i]);return e},e.updateProperty=function(t,e,i){return t[e]!==i?(t[e]=i,!0):!1},e.throttle=function(t,e){var i=null,o=!1;return function n(){i?o=!0:(o=!1,t(),i=setTimeout(function(){i=null,o&&n()},e))}},e.addEventListener=function(t,e,i,o){t.addEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.addEventListener(e,i,o)):t.attachEvent("on"+e,i)},e.removeEventListener=function(t,e,i,o){t.removeEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.removeEventListener(e,i,o)):t.detachEvent("on"+e,i)},e.preventDefault=function(t){t||(t=window.event),t.preventDefault?t.preventDefault():t.returnValue=!1},e.getTarget=function(t){t||(t=window.event);var e;return t.target?e=t.target:t.srcElement&&(e=t.srcElement),void 0!=e.nodeType&&3==e.nodeType&&(e=e.parentNode),e},e.hasParent=function(t,e){for(var i=t;i;){if(i===e)return!0;i=i.parentNode}return!1},e.option={},e.option.asBoolean=function(t,e){return"function"==typeof t&&(t=t()),null!=t?0!=t:e||null},e.option.asNumber=function(t,e){return"function"==typeof t&&(t=t()),null!=t?Number(t)||e||null:e||null},e.option.asString=function(t,e){return"function"==typeof t&&(t=t()),null!=t?String(t):e||null},e.option.asSize=function(t,i){return"function"==typeof t&&(t=t()),e.isString(t)?t:e.isNumber(t)?t+"px":i||null},e.option.asElement=function(t,e){return"function"==typeof t&&(t=t()),t||e||null},e.hexToRGB=function(t){var e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;t=t.replace(e,function(t,e,i,o){return e+e+i+i+o+o});var i=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return i?{r:parseInt(i[1],16),g:parseInt(i[2],16),b:parseInt(i[3],16)}:null},e.overrideOpacity=function(t,i){if(-1!=t.indexOf("rgba"))return t;if(-1!=t.indexOf("rgb")){var o=t.substr(t.indexOf("(")+1).replace(")","").split(",");return"rgba("+o[0]+","+o[1]+","+o[2]+","+i+")"}var o=e.hexToRGB(t);return null==o?t:"rgba("+o.r+","+o.g+","+o.b+","+i+")"},e.RGBToHex=function(t,e,i){return"#"+((1<<24)+(t<<16)+(e<<8)+i).toString(16).slice(1)},e.parseColor=function(t){var i;if(e.isString(t)===!0){if(e.isValidRGB(t)===!0){var o=t.substr(4).substr(0,t.length-5).split(",").map(function(t){return parseInt(t)});t=e.RGBToHex(o[0],o[1],o[2])}if(e.isValidHex(t)===!0){var n=e.hexToHSV(t),s={h:n.h,s:.8*n.s,v:Math.min(1,1.02*n.v)},r={h:n.h,s:Math.min(1,1.25*n.s),v:.8*n.v},a=e.HSVToHex(r.h,r.s,r.v),h=e.HSVToHex(s.h,s.s,s.v);i={background:t,border:a,highlight:{background:h,border:a},hover:{background:h,border:a}}}else i={background:t,border:t,highlight:{background:t,border:t},hover:{background:t,border:t}}}else i={},i.background=t.background||void 0,i.border=t.border||void 0,e.isString(t.highlight)?i.highlight={border:t.highlight,background:t.highlight}:(i.highlight={},i.highlight.background=t.highlight&&t.highlight.background||void 0,i.highlight.border=t.highlight&&t.highlight.border||void 0),e.isString(t.hover)?i.hover={border:t.hover,background:t.hover}:(i.hover={},i.hover.background=t.hover&&t.hover.background||void 0,i.hover.border=t.hover&&t.hover.border||void 0);return i},e.RGBToHSV=function(t,e,i){t/=255,e/=255,i/=255;var o=Math.min(t,Math.min(e,i)),n=Math.max(t,Math.max(e,i));if(o==n)return{h:0,s:0,v:o};var s=t==o?e-i:i==o?t-e:i-t,r=t==o?3:i==o?1:5,a=60*(r-s/(n-o))/360,h=(n-o)/n,d=n;return{h:a,s:h,v:d}};var r={split:function(t){var e={};return t.split(";").forEach(function(t){if(""!=t.trim()){var i=t.split(":"),o=i[0].trim(),n=i[1].trim();e[o]=n}}),e},join:function(t){return Object.keys(t).map(function(e){return e+": "+t[e]}).join("; ")}};e.addCssText=function(t,i){var o=r.split(t.style.cssText),n=r.split(i),s=e.extend(o,n);t.style.cssText=r.join(s)},e.removeCssText=function(t,e){var i=r.split(t.style.cssText),o=r.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=r.join(i)},e.HSVToRGB=function(t,e,i){var o,n,s,r=Math.floor(6*t),a=6*t-r,h=i*(1-e),d=i*(1-a*e),l=i*(1-(1-a)*e);switch(r%6){case 0:o=i,n=l,s=h;break;case 1:o=d,n=i,s=h;break;case 2:o=h,n=i,s=l;break;case 3:o=h,n=d,s=i;break;case 4:o=l,n=h,s=i;break;case 5:o=i,n=h,s=d}return{r:Math.floor(255*o),g:Math.floor(255*n),b:Math.floor(255*s)}},e.HSVToHex=function(t,i,o){var n=e.HSVToRGB(t,i,o);return e.RGBToHex(n.r,n.g,n.b)},e.hexToHSV=function(t){var i=e.hexToRGB(t);return e.RGBToHSV(i.r,i.g,i.b)},e.isValidHex=function(t){var e=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t);return e},e.isValidRGB=function(t){t=t.replace(" ","");var e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(t);return e},e.isValidRGBA=function(t){t=t.replace(" ","");var e=/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),(.{1,3})\)/i.test(t);return e},e.selectiveBridgeObject=function(t,i){if("object"==typeof i){for(var o=Object.create(i),n=0;n0&&e(o,t[n-1])<0;n--)t[n]=t[n-1];t[n]=o}return t},e.mergeOptions=function(t,e,i){var o=(arguments.length<=3||void 0===arguments[3]?!1:arguments[3],arguments.length<=4||void 0===arguments[4]?{}:arguments[4]);if(null===e[i])t[i]=Object.create(o[i]);else if(void 0!==e[i])if("boolean"==typeof e[i])t[i].enabled=e[i];else{void 0===e[i].enabled&&(t[i].enabled=!0);for(var n in e[i])e[i].hasOwnProperty(n)&&(t[i][n]=e[i][n])}},e.binarySearchCustom=function(t,e,i,o){for(var n=1e4,s=0,r=0,a=t.length-1;a>=r&&n>s;){var h=Math.floor((r+a)/2),d=t[h],l=void 0===o?d[i]:d[i][o],u=e(l);if(0==u)return h;-1==u?r=h+1:a=h-1,s++}return-1},e.binarySearchValue=function(t,e,i,o,n){for(var s,r,a,h,d=1e4,l=0,u=0,c=t.length-1,n=void 0!=n?n:function(t,e){return t==e?0:e>t?-1:1};c>=u&&d>l;){if(h=Math.floor(.5*(c+u)),s=t[Math.max(0,h-1)][i],r=t[h][i],a=t[Math.min(t.length-1,h+1)][i],0==n(r,e))return h;if(n(s,e)<0&&n(r,e)>0)return"before"==o?Math.max(0,h-1):h;if(n(r,e)<0&&n(a,e)>0)return"before"==o?h:Math.min(t.length-1,h+1);n(r,e)<0?u=h+1:c=h-1,l++}return-1},e.easingFunctions={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return t*(2-t)},easeInOutQuad:function(t){return.5>t?2*t*t:-1+(4-2*t)*t},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return--t*t*t+1},easeInOutCubic:function(t){return.5>t?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return 1- --t*t*t*t},easeInOutQuart:function(t){return.5>t?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return 1+--t*t*t*t*t},easeInOutQuint:function(t){return.5>t?16*t*t*t*t*t:1+16*--t*t*t*t*t}}},function(t,e,i){t.exports="undefined"!=typeof window&&window.moment||i(3)},function(t,e,i){(function(t){!function(e,i){t.exports=i()}(this,function(){function e(){return qi.apply(null,arguments)}function i(t){qi=t}function o(t){return"[object Array]"===Object.prototype.toString.call(t)}function n(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t,e){var i,o=[];for(i=0;i0)for(i in Zi)o=Zi[i],n=e[o],p(n)||(t[o]=n);return t}function m(t){f(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),Ki===!1&&(Ki=!0,e.updateOffset(this),Ki=!1)}function v(t){return t instanceof m||null!=t&&null!=t._isAMomentObject}function g(t){return 0>t?Math.ceil(t):Math.floor(t)}function y(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=g(e)),i}function b(t,e,i){var o,n=Math.min(t.length,e.length),s=Math.abs(t.length-e.length),r=0;for(o=0;n>o;o++)(i&&t[o]!==e[o]||!i&&y(t[o])!==y(e[o]))&&r++;return r+s}function _(){}function w(t){return t?t.toLowerCase().replace("_","-"):t}function x(t){for(var e,i,o,n,s=0;s0;){if(o=k(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&b(n,i,!0)>=e-1)break;e--}s++}return null}function k(e){var i=null;if(!Ji[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=Xi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),O(i)}catch(o){}return Ji[e]}function O(t,e){var i;return t&&(i=p(e)?D(t):M(t,e),i&&(Xi=i)),Xi._abbr}function M(t,e){return null!==e?(e.abbr=t,Ji[t]=Ji[t]||new _,Ji[t].set(e),O(t),Ji[t]):(delete Ji[t],null)}function D(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Xi;if(!o(t)){if(e=k(t))return e;t=[t]}return x(t)}function C(t,e){var i=t.toLowerCase();Qi[i]=Qi[i+"s"]=Qi[e]=t}function S(t){return"string"==typeof t?Qi[t]||Qi[t.toLowerCase()]:void 0}function T(t){var e,i,o={};for(i in t)r(t,i)&&(e=S(i),e&&(o[e]=t[i]));return o}function E(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function P(t,i){return function(o){return null!=o?(N(this,t,o),e.updateOffset(this,i),this):I(this,t)}}function I(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function N(t,e,i){t.isValid()&&t._d["set"+(t._isUTC?"UTC":"")+e](i)}function z(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=S(t),E(this[t]))return this[t](e);return this}function L(t,e,i){var o=""+Math.abs(t),n=e-o.length,s=t>=0;return(s?i?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+o}function A(t,e,i,o){var n=o;"string"==typeof o&&(n=function(){return this[o]()}),t&&(io[t]=n),e&&(io[e[0]]=function(){return L(n.apply(this,arguments),e[1],e[2])}),i&&(io[i]=function(){return this.localeData().ordinal(n.apply(this,arguments),t)})}function F(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function B(t){var e,i,o=t.match($i);for(e=0,i=o.length;i>e;e++)io[o[e]]?o[e]=io[o[e]]:o[e]=F(o[e]);return function(n){var s="";for(e=0;i>e;e++)s+=o[e]instanceof Function?o[e].call(n,t):o[e];return s}}function R(t,e){return t.isValid()?(e=j(e,t.localeData()),eo[e]=eo[e]||B(e),eo[e](t)):t.localeData().invalidDate()}function j(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(to.lastIndex=0;o>=0&&to.test(t);)t=t.replace(to,i),to.lastIndex=0,o-=1;return t}function H(t,e,i){wo[t]=E(e)?e:function(t,o){return t&&i?i:e}}function W(t,e){return r(wo,t)?wo[t](e._strict,e._locale):new RegExp(Y(t))}function Y(t){return G(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}))}function G(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function V(t,e){var i,o=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(o=function(t,i){i[e]=y(t)}),i=0;io;o++){if(n=h([2e3,o]),i&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),i||this._monthsParse[o]||(s="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[o]=new RegExp(s.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[o].test(t))return o;if(i&&"MMM"===e&&this._shortMonthsParse[o].test(t))return o;if(!i&&this._monthsParse[o].test(t))return o}}function Q(t,e){var i;return t.isValid()?"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(i=Math.min(t.date(),X(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t):t}function $(t){return null!=t?(Q(this,t),e.updateOffset(this,!0),this):I(this,"Month")}function tt(){return X(this.year(),this.month())}function et(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ot.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex}function it(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ot.call(this),t?this._monthsStrictRegex:this._monthsRegex):this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex}function ot(){function t(t,e){return e.length-t.length}var e,i,o=[],n=[],s=[];for(e=0;12>e;e++)i=h([2e3,e]),o.push(this.monthsShort(i,"")),n.push(this.months(i,"")),s.push(this.months(i,"")),s.push(this.monthsShort(i,""));for(o.sort(t),n.sort(t),s.sort(t),e=0;12>e;e++)o[e]=G(o[e]),n[e]=G(n[e]),s[e]=G(s[e]);this._monthsRegex=new RegExp("^("+s.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+n.join("|")+")$","i"),this._monthsShortStrictRegex=new RegExp("^("+o.join("|")+")$","i")}function nt(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[Oo]<0||i[Oo]>11?Oo:i[Mo]<1||i[Mo]>X(i[ko],i[Oo])?Mo:i[Do]<0||i[Do]>24||24===i[Do]&&(0!==i[Co]||0!==i[So]||0!==i[To])?Do:i[Co]<0||i[Co]>59?Co:i[So]<0||i[So]>59?So:i[To]<0||i[To]>999?To:-1,l(t)._overflowDayOfYear&&(ko>e||e>Mo)&&(e=Mo),l(t)._overflowWeeks&&-1===e&&(e=Eo),l(t)._overflowWeekday&&-1===e&&(e=Po),l(t).overflow=e),t}function st(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function rt(t,e){var i=!0;return a(function(){return i&&(st(t+"\nArguments: "+Array.prototype.slice.call(arguments).join(", ")+"\n"+(new Error).stack),i=!1),e.apply(this,arguments)},e)}function at(t,e){Fo[t]||(st(e),Fo[t]=!0)}function ht(t){var e,i,o,n,s,r,a=t._i,h=Bo.exec(a)||Ro.exec(a);if(h){for(l(t).iso=!0,e=0,i=Ho.length;i>e;e++)if(Ho[e][1].exec(h[1])){n=Ho[e][0],o=Ho[e][2]!==!1;break}if(null==n)return void(t._isValid=!1);if(h[3]){for(e=0,i=Wo.length;i>e;e++)if(Wo[e][1].exec(h[3])){s=(h[2]||" ")+Wo[e][0];break}if(null==s)return void(t._isValid=!1)}if(!o&&null!=s)return void(t._isValid=!1);if(h[4]){if(!jo.exec(h[4]))return void(t._isValid=!1);r="Z"}t._f=n+(s||"")+(r||""),kt(t)}else t._isValid=!1}function dt(t){var i=Yo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(ht(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function lt(t,e,i,o,n,s,r){var a=new Date(t,e,i,o,n,s,r);return 100>t&&t>=0&&isFinite(a.getFullYear())&&a.setFullYear(t),a}function ut(t){var e=new Date(Date.UTC.apply(null,arguments));return 100>t&&t>=0&&isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t),e}function ct(t){return pt(t)?366:365}function pt(t){return t%4===0&&t%100!==0||t%400===0}function ft(){return pt(this.year())}function mt(t,e,i){var o=7+e-i,n=(7+ut(t,0,o).getUTCDay()-e)%7;return-n+o-1}function vt(t,e,i,o,n){var s,r,a=(7+i-o)%7,h=mt(t,o,n),d=1+7*(e-1)+a+h;return 0>=d?(s=t-1,r=ct(s)+d):d>ct(t)?(s=t+1,r=d-ct(t)):(s=t,r=d),{year:s,dayOfYear:r}}function gt(t,e,i){var o,n,s=mt(t.year(),e,i),r=Math.floor((t.dayOfYear()-s-1)/7)+1;return 1>r?(n=t.year()-1,o=r+yt(n,e,i)):r>yt(t.year(),e,i)?(o=r-yt(t.year(),e,i),n=t.year()+1):(n=t.year(),o=r),{week:o,year:n}}function yt(t,e,i){var o=mt(t,e,i),n=mt(t+1,e,i);return(ct(t)-o+n)/7}function bt(t,e,i){return null!=t?t:null!=e?e:i}function _t(t){var i=new Date(e.now());return t._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()]}function wt(t){var e,i,o,n,s=[];if(!t._d){for(o=_t(t),t._w&&null==t._a[Mo]&&null==t._a[Oo]&&xt(t),t._dayOfYear&&(n=bt(t._a[ko],o[ko]),t._dayOfYear>ct(n)&&(l(t)._overflowDayOfYear=!0),i=ut(n,0,t._dayOfYear),t._a[Oo]=i.getUTCMonth(),t._a[Mo]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=s[e]=o[e];for(;7>e;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[Do]&&0===t._a[Co]&&0===t._a[So]&&0===t._a[To]&&(t._nextDay=!0,t._a[Do]=0),t._d=(t._useUTC?ut:lt).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Do]=24)}}function xt(t){var e,i,o,n,s,r,a,h;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(s=1,r=4,i=bt(e.GG,t._a[ko],gt(Pt(),1,4).year),o=bt(e.W,1),n=bt(e.E,1),(1>n||n>7)&&(h=!0)):(s=t._locale._week.dow,r=t._locale._week.doy,i=bt(e.gg,t._a[ko],gt(Pt(),s,r).year),o=bt(e.w,1),null!=e.d?(n=e.d,(0>n||n>6)&&(h=!0)):null!=e.e?(n=e.e+s,(e.e<0||e.e>6)&&(h=!0)):n=s),1>o||o>yt(i,s,r)?l(t)._overflowWeeks=!0:null!=h?l(t)._overflowWeekday=!0:(a=vt(i,o,n,s,r),t._a[ko]=a.year,t._dayOfYear=a.dayOfYear)}function kt(t){if(t._f===e.ISO_8601)return void ht(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=j(t._f,t._locale).match($i)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),io[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),q(s,o,t)):t._strict&&!o&&l(t).unusedTokens.push(s);l(t).charsLeftOver=h-d,a.length>0&&l(t).unusedInput.push(a),l(t).bigHour===!0&&t._a[Do]<=12&&t._a[Do]>0&&(l(t).bigHour=void 0),t._a[Do]=Ot(t._locale,t._a[Do],t._meridiem),wt(t),nt(t)}function Ot(t,e,i){var o;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(o=t.isPM(i),o&&12>e&&(e+=12),o||12!==e||(e=0),e):e}function Mt(t){var e,i,o,n,s;if(0===t._f.length)return l(t).invalidFormat=!0,void(t._d=new Date(NaN));for(n=0;ns)&&(o=s,i=e));a(t,i||e)}function Dt(t){if(!t._d){var e=T(t._i);t._a=s([e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],function(t){return t&&parseInt(t,10)}),wt(t)}}function Ct(t){var e=new m(nt(St(t)));return e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e}function St(t){var e=t._i,i=t._f;return t._locale=t._locale||D(t._l),null===e||void 0===i&&""===e?c({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),v(e)?new m(nt(e)):(o(i)?Mt(t):i?kt(t):n(e)?t._d=e:Tt(t),u(t)||(t._d=null),t))}function Tt(t){var i=t._i;void 0===i?t._d=new Date(e.now()):n(i)?t._d=new Date(+i):"string"==typeof i?dt(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),wt(t)):"object"==typeof i?Dt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Et(t,e,i,o,n){var s={};return"boolean"==typeof i&&(o=i,i=void 0),s._isAMomentObject=!0,s._useUTC=s._isUTC=n,s._l=i,s._i=t,s._f=e,s._strict=o,Ct(s)}function Pt(t,e,i,o){return Et(t,e,i,o,!1)}function It(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Pt();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+L(~~(t/60),2)+e+L(~~t%60,2)})}function Bt(t,e){var i=(e||"").match(t)||[],o=i[i.length-1]||[],n=(o+"").match(Xo)||["-",0,0],s=+(60*n[1])+y(n[2]);return"+"===n[0]?s:-s}function Rt(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(v(t)||n(t)?+t:+Pt(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Pt(t).local()}function jt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Ht(t,i){var o,n=this._offset||0;return this.isValid()?null!=t?("string"==typeof t?t=Bt(yo,t):Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=jt(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?oe(this,Qt(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:jt(this):null!=t?this:NaN}function Wt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Yt(t){return this.utcOffset(0,t)}function Gt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(jt(this),"m")),this}function Vt(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Bt(go,this._i)),this}function Ut(t){return this.isValid()?(t=t?Pt(t).utcOffset():0,(this.utcOffset()-t)%60===0):!1}function qt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Xt(){if(!p(this._isDSTShifted))return this._isDSTShifted;var t={};if(f(t,this),t=St(t),t._a){var e=t._isUTC?h(t._a):Pt(t._a);this._isDSTShifted=this.isValid()&&b(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Zt(){return this.isValid()?!this._isUTC:!1}function Kt(){return this.isValid()?this._isUTC:!1}function Jt(){return this.isValid()?this._isUTC&&0===this._offset:!1}function Qt(t,e){var i,o,n,s=t,a=null;return At(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=Zo.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:y(a[Mo])*i,h:y(a[Do])*i,m:y(a[Co])*i,s:y(a[So])*i,ms:y(a[To])*i}):(a=Ko.exec(t))?(i="-"===a[1]?-1:1,s={y:$t(a[2],i),M:$t(a[3],i),d:$t(a[4],i),h:$t(a[5],i),m:$t(a[6],i),s:$t(a[7],i),w:$t(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=ee(Pt(s.from),Pt(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new Lt(s),At(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function $t(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function te(t,e){var i={milliseconds:0,months:0};return i.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(i.months,"M").isAfter(e)&&--i.months,i.milliseconds=+e-+t.clone().add(i.months,"M"),i}function ee(t,e){var i;return t.isValid()&&e.isValid()?(e=Rt(e,t),t.isBefore(e)?i=te(t,e):(i=te(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i):{milliseconds:0,months:0}}function ie(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(at(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),s=i,i=o,o=s),i="string"==typeof i?+i:i,n=Qt(i,o),oe(this,n,t),this}}function oe(t,i,o,n){var s=i._milliseconds,r=i._days,a=i._months;t.isValid()&&(n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&N(t,"Date",I(t,"Date")+r*o),a&&Q(t,I(t,"Month")+a*o),n&&e.updateOffset(t,r||a))}function ne(t,e){var i=t||Pt(),o=Rt(i,this).startOf("day"),n=this.diff(o,"days",!0),s=-6>n?"sameElse":-1>n?"lastWeek":0>n?"lastDay":1>n?"sameDay":2>n?"nextDay":7>n?"nextWeek":"sameElse",r=e&&(E(e[s])?e[s]():e[s]);return this.format(r||this.localeData().calendar(s,this,Pt(i)))}function se(){return new m(this)}function re(t,e){var i=v(t)?t:Pt(t);return this.isValid()&&i.isValid()?(e=S(p(e)?"millisecond":e),"millisecond"===e?+this>+i:+i<+this.clone().startOf(e)):!1}function ae(t,e){var i=v(t)?t:Pt(t);return this.isValid()&&i.isValid()?(e=S(p(e)?"millisecond":e),"millisecond"===e?+i>+this:+this.clone().endOf(e)<+i):!1}function he(t,e,i){return this.isAfter(t,i)&&this.isBefore(e,i)}function de(t,e){var i,o=v(t)?t:Pt(t);return this.isValid()&&o.isValid()?(e=S(e||"millisecond"),"millisecond"===e?+this===+o:(i=+o,+this.clone().startOf(e)<=i&&i<=+this.clone().endOf(e))):!1}function le(t,e){return this.isSame(t,e)||this.isAfter(t,e)} +function ue(t,e){return this.isSame(t,e)||this.isBefore(t,e)}function ce(t,e,i){var o,n,s,r;return this.isValid()?(o=Rt(t,this),o.isValid()?(n=6e4*(o.utcOffset()-this.utcOffset()),e=S(e),"year"===e||"month"===e||"quarter"===e?(r=pe(this,o),"quarter"===e?r/=3:"year"===e&&(r/=12)):(s=this-o,r="second"===e?s/1e3:"minute"===e?s/6e4:"hour"===e?s/36e5:"day"===e?(s-n)/864e5:"week"===e?(s-n)/6048e5:s),i?r:g(r)):NaN):NaN}function pe(t,e){var i,o,n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,"months");return 0>e-s?(i=t.clone().add(n-1,"months"),o=(e-s)/(s-i)):(i=t.clone().add(n+1,"months"),o=(e-s)/(i-s)),-(n+o)}function fe(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function me(){var t=this.clone().utc();return 0s&&(e=s),He.call(this,t,e,i,o,n))}function He(t,e,i,o,n){var s=vt(t,e,i,o,n),r=ut(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function We(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function Ye(t){return gt(t,this._week.dow,this._week.doy).week}function Ge(){return this._week.dow}function Ve(){return this._week.doy}function Ue(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function qe(t){var e=gt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function Xe(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function Ze(t,e){return o(this._weekdays)?this._weekdays[t.day()]:this._weekdays[this._weekdays.isFormat.test(e)?"format":"standalone"][t.day()]}function Ke(t){return this._weekdaysShort[t.day()]}function Je(t){return this._weekdaysMin[t.day()]}function Qe(t,e,i){var o,n,s;for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),o=0;7>o;o++){if(n=Pt([2e3,1]).day(o),i&&!this._fullWeekdaysParse[o]&&(this._fullWeekdaysParse[o]=new RegExp("^"+this.weekdays(n,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[o]=new RegExp("^"+this.weekdaysShort(n,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[o]=new RegExp("^"+this.weekdaysMin(n,"").replace(".",".?")+"$","i")),this._weekdaysParse[o]||(s="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[o]=new RegExp(s.replace(".",""),"i")),i&&"dddd"===e&&this._fullWeekdaysParse[o].test(t))return o;if(i&&"ddd"===e&&this._shortWeekdaysParse[o].test(t))return o;if(i&&"dd"===e&&this._minWeekdaysParse[o].test(t))return o;if(!i&&this._weekdaysParse[o].test(t))return o}}function $e(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Xe(t,this.localeData()),this.add(t-e,"d")):e}function ti(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function ei(t){return this.isValid()?null==t?this.day()||7:this.day(this.day()%7?t:t-7):null!=t?this:NaN}function ii(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function oi(){return this.hours()%12||12}function ni(t,e){A(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function si(t,e){return e._meridiemParse}function ri(t){return"p"===(t+"").toLowerCase().charAt(0)}function ai(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function hi(t,e){e[To]=y(1e3*("0."+t))}function di(){return this._isUTC?"UTC":""}function li(){return this._isUTC?"Coordinated Universal Time":""}function ui(t){return Pt(1e3*t)}function ci(){return Pt.apply(null,arguments).parseZone()}function pi(t,e,i){var o=this._calendar[t];return E(o)?o.call(e,i):o}function fi(t){var e=this._longDateFormat[t],i=this._longDateFormat[t.toUpperCase()];return e||!i?e:(this._longDateFormat[t]=i.replace(/MMMM|MM|DD|dddd/g,function(t){return t.slice(1)}),this._longDateFormat[t])}function mi(){return this._invalidDate}function vi(t){return this._ordinal.replace("%d",t)}function gi(t){return t}function yi(t,e,i,o){var n=this._relativeTime[i];return E(n)?n(t,e,i,o):n.replace(/%d/i,t)}function bi(t,e){var i=this._relativeTime[t>0?"future":"past"];return E(i)?i(e):i.replace(/%s/i,e)}function _i(t){var e,i;for(i in t)e=t[i],E(e)?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function wi(t,e,i,o){var n=D(),s=h().set(o,e);return n[i](s,t)}function xi(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return wi(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=wi(t,s,i,n);return r}function ki(t,e){return xi(t,e,"months",12,"month")}function Oi(t,e){return xi(t,e,"monthsShort",12,"month")}function Mi(t,e){return xi(t,e,"weekdays",7,"day")}function Di(t,e){return xi(t,e,"weekdaysShort",7,"day")}function Ci(t,e){return xi(t,e,"weekdaysMin",7,"day")}function Si(){var t=this._data;return this._milliseconds=wn(this._milliseconds),this._days=wn(this._days),this._months=wn(this._months),t.milliseconds=wn(t.milliseconds),t.seconds=wn(t.seconds),t.minutes=wn(t.minutes),t.hours=wn(t.hours),t.months=wn(t.months),t.years=wn(t.years),this}function Ti(t,e,i,o){var n=Qt(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function Ei(t,e){return Ti(this,t,e,1)}function Pi(t,e){return Ti(this,t,e,-1)}function Ii(t){return 0>t?Math.floor(t):Math.ceil(t)}function Ni(){var t,e,i,o,n,s=this._milliseconds,r=this._days,a=this._months,h=this._data;return s>=0&&r>=0&&a>=0||0>=s&&0>=r&&0>=a||(s+=864e5*Ii(Li(a)+r),r=0,a=0),h.milliseconds=s%1e3,t=g(s/1e3),h.seconds=t%60,e=g(t/60),h.minutes=e%60,i=g(e/60),h.hours=i%24,r+=g(i/24),n=g(zi(r)),a+=n,r-=Ii(Li(n)),o=g(a/12),a%=12,h.days=r,h.months=a,h.years=o,this}function zi(t){return 4800*t/146097}function Li(t){return 146097*t/4800}function Ai(t){var e,i,o=this._milliseconds;if(t=S(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+zi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(Li(this._months)),t){case"week":return e/7+o/6048e5;case"day":return e+o/864e5;case"hour":return 24*e+o/36e5;case"minute":return 1440*e+o/6e4;case"second":return 86400*e+o/1e3;case"millisecond":return Math.floor(864e5*e)+o;default:throw new Error("Unknown unit "+t)}}function Fi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*y(this._months/12)}function Bi(t){return function(){return this.as(t)}}function Ri(t){return t=S(t),this[t+"s"]()}function ji(t){return function(){return this._data[t]}}function Hi(){return g(this.days()/7)}function Wi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Yi(t,e,i){var o=Qt(t).abs(),n=Fn(o.as("s")),s=Fn(o.as("m")),r=Fn(o.as("h")),a=Fn(o.as("d")),h=Fn(o.as("M")),d=Fn(o.as("y")),l=n=s&&["m"]||s=r&&["h"]||r=a&&["d"]||a=h&&["M"]||h=d&&["y"]||["yy",d];return l[2]=e,l[3]=+t>0,l[4]=i,Wi.apply(null,l)}function Gi(t,e){return void 0===Bn[t]?!1:void 0===e?Bn[t]:(Bn[t]=e,!0)}function Vi(t){var e=this.localeData(),i=Yi(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ui(){var t,e,i,o=Rn(this._milliseconds)/1e3,n=Rn(this._days),s=Rn(this._months);t=g(o/60),e=g(t/60),o%=60,t%=60,i=g(s/12),s%=12;var r=i,a=s,h=n,d=e,l=t,u=o,c=this.asSeconds();return c?(0>c?"-":"")+"P"+(r?r+"Y":"")+(a?a+"M":"")+(h?h+"D":"")+(d||l||u?"T":"")+(d?d+"H":"")+(l?l+"M":"")+(u?u+"S":""):"P0D"}var qi,Xi,Zi=e.momentProperties=[],Ki=!1,Ji={},Qi={},$i=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,to=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,eo={},io={},oo=/\d/,no=/\d\d/,so=/\d{3}/,ro=/\d{4}/,ao=/[+-]?\d{6}/,ho=/\d\d?/,lo=/\d\d\d\d?/,uo=/\d\d\d\d\d\d?/,co=/\d{1,3}/,po=/\d{1,4}/,fo=/[+-]?\d{1,6}/,mo=/\d+/,vo=/[+-]?\d+/,go=/Z|[+-]\d\d:?\d\d/gi,yo=/Z|[+-]\d\d(?::?\d\d)?/gi,bo=/[+-]?\d+(\.\d{1,3})?/,_o=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,wo={},xo={},ko=0,Oo=1,Mo=2,Do=3,Co=4,So=5,To=6,Eo=7,Po=8;A("M",["MM",2],"Mo",function(){return this.month()+1}),A("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),A("MMMM",0,0,function(t){return this.localeData().months(this,t)}),C("month","M"),H("M",ho),H("MM",ho,no),H("MMM",function(t,e){return e.monthsShortRegex(t)}),H("MMMM",function(t,e){return e.monthsRegex(t)}),V(["M","MM"],function(t,e){e[Oo]=y(t)-1}),V(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[Oo]=n:l(i).invalidMonth=t});var Io=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,No="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),zo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Lo=_o,Ao=_o,Fo={};e.suppressDeprecationWarnings=!1;var Bo=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,Ro=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,jo=/Z|[+-]\d\d(?::?\d\d)?/,Ho=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Wo=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Yo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=rt("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),A("Y",0,0,function(){var t=this.year();return 9999>=t?""+t:"+"+t}),A(0,["YY",2],0,function(){return this.year()%100}),A(0,["YYYY",4],0,"year"),A(0,["YYYYY",5],0,"year"),A(0,["YYYYYY",6,!0],0,"year"),C("year","y"),H("Y",vo),H("YY",ho,no),H("YYYY",po,ro),H("YYYYY",fo,ao),H("YYYYYY",fo,ao),V(["YYYYY","YYYYYY"],ko),V("YYYY",function(t,i){i[ko]=2===t.length?e.parseTwoDigitYear(t):y(t)}),V("YY",function(t,i){i[ko]=e.parseTwoDigitYear(t)}),V("Y",function(t,e){e[ko]=parseInt(t,10)}),e.parseTwoDigitYear=function(t){return y(t)+(y(t)>68?1900:2e3)};var Go=P("FullYear",!1);e.ISO_8601=function(){};var Vo=rt("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Pt.apply(null,arguments);return this.isValid()&&t.isValid()?this>t?this:t:c()}),Uo=rt("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Pt.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:c()}),qo=function(){return Date.now?Date.now():+new Date};Ft("Z",":"),Ft("ZZ",""),H("Z",yo),H("ZZ",yo),V(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Bt(yo,t)});var Xo=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Zo=/(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,Ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Qt.fn=Lt.prototype;var Jo=ie(1,"add"),Qo=ie(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var $o=rt("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});A(0,["gg",2],0,function(){return this.weekYear()%100}),A(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Le("gggg","weekYear"),Le("ggggg","weekYear"),Le("GGGG","isoWeekYear"),Le("GGGGG","isoWeekYear"),C("weekYear","gg"),C("isoWeekYear","GG"),H("G",vo),H("g",vo),H("GG",ho,no),H("gg",ho,no),H("GGGG",po,ro),H("gggg",po,ro),H("GGGGG",fo,ao),H("ggggg",fo,ao),U(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=y(t)}),U(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),A("Q",0,"Qo","quarter"),C("quarter","Q"),H("Q",oo),V("Q",function(t,e){e[Oo]=3*(y(t)-1)}),A("w",["ww",2],"wo","week"),A("W",["WW",2],"Wo","isoWeek"),C("week","w"),C("isoWeek","W"),H("w",ho),H("ww",ho,no),H("W",ho),H("WW",ho,no),U(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=y(t)});var tn={dow:0,doy:6};A("D",["DD",2],"Do","date"),C("date","D"),H("D",ho),H("DD",ho,no),H("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),V(["D","DD"],Mo),V("Do",function(t,e){e[Mo]=y(t.match(ho)[0],10)});var en=P("Date",!0);A("d",0,"do","day"),A("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),A("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),A("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),A("e",0,0,"weekday"),A("E",0,0,"isoWeekday"),C("day","d"),C("weekday","e"),C("isoWeekday","E"),H("d",ho),H("e",ho),H("E",ho),H("dd",_o),H("ddd",_o),H("dddd",_o),U(["dd","ddd","dddd"],function(t,e,i,o){var n=i._locale.weekdaysParse(t,o,i._strict);null!=n?e.d=n:l(i).invalidWeekday=t}),U(["d","e","E"],function(t,e,i,o){e[o]=y(t)});var on="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),nn="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),sn="Su_Mo_Tu_We_Th_Fr_Sa".split("_");A("DDD",["DDDD",3],"DDDo","dayOfYear"),C("dayOfYear","DDD"),H("DDD",co),H("DDDD",so),V(["DDD","DDDD"],function(t,e,i){i._dayOfYear=y(t)}),A("H",["HH",2],0,"hour"),A("h",["hh",2],0,oi),A("hmm",0,0,function(){return""+oi.apply(this)+L(this.minutes(),2)}),A("hmmss",0,0,function(){return""+oi.apply(this)+L(this.minutes(),2)+L(this.seconds(),2)}),A("Hmm",0,0,function(){return""+this.hours()+L(this.minutes(),2)}),A("Hmmss",0,0,function(){return""+this.hours()+L(this.minutes(),2)+L(this.seconds(),2)}),ni("a",!0),ni("A",!1),C("hour","h"),H("a",si),H("A",si),H("H",ho),H("h",ho),H("HH",ho,no),H("hh",ho,no),H("hmm",lo),H("hmmss",uo),H("Hmm",lo),H("Hmmss",uo),V(["H","HH"],Do),V(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),V(["h","hh"],function(t,e,i){e[Do]=y(t),l(i).bigHour=!0}),V("hmm",function(t,e,i){var o=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o)),l(i).bigHour=!0}),V("hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o,2)),e[So]=y(t.substr(n)),l(i).bigHour=!0}),V("Hmm",function(t,e,i){var o=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o))}),V("Hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o,2)),e[So]=y(t.substr(n))});var rn=/[ap]\.?m?\.?/i,an=P("Hours",!0);A("m",["mm",2],0,"minute"),C("minute","m"),H("m",ho),H("mm",ho,no),V(["m","mm"],Co);var hn=P("Minutes",!1);A("s",["ss",2],0,"second"),C("second","s"),H("s",ho),H("ss",ho,no),V(["s","ss"],So);var dn=P("Seconds",!1);A("S",0,0,function(){return~~(this.millisecond()/100)}),A(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),A(0,["SSS",3],0,"millisecond"),A(0,["SSSS",4],0,function(){return 10*this.millisecond()}),A(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),A(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),A(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),A(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),A(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),C("millisecond","ms"),H("S",co,oo),H("SS",co,no),H("SSS",co,so);var ln;for(ln="SSSS";ln.length<=9;ln+="S")H(ln,mo);for(ln="S";ln.length<=9;ln+="S")V(ln,hi);var un=P("Milliseconds",!1);A("z",0,0,"zoneAbbr"),A("zz",0,0,"zoneName");var cn=m.prototype;cn.add=Jo,cn.calendar=ne,cn.clone=se,cn.diff=ce,cn.endOf=Oe,cn.format=ve,cn.from=ge,cn.fromNow=ye,cn.to=be,cn.toNow=_e,cn.get=z,cn.invalidAt=Ne,cn.isAfter=re,cn.isBefore=ae,cn.isBetween=he,cn.isSame=de,cn.isSameOrAfter=le,cn.isSameOrBefore=ue,cn.isValid=Pe,cn.lang=$o,cn.locale=we,cn.localeData=xe,cn.max=Uo,cn.min=Vo,cn.parsingFlags=Ie,cn.set=z,cn.startOf=ke,cn.subtract=Qo,cn.toArray=Se,cn.toObject=Te,cn.toDate=Ce,cn.toISOString=me,cn.toJSON=Ee,cn.toString=fe,cn.unix=De,cn.valueOf=Me,cn.creationData=ze,cn.year=Go,cn.isLeapYear=ft,cn.weekYear=Ae,cn.isoWeekYear=Fe,cn.quarter=cn.quarters=We,cn.month=$,cn.daysInMonth=tt,cn.week=cn.weeks=Ue,cn.isoWeek=cn.isoWeeks=qe,cn.weeksInYear=Re,cn.isoWeeksInYear=Be,cn.date=en,cn.day=cn.days=$e,cn.weekday=ti,cn.isoWeekday=ei,cn.dayOfYear=ii,cn.hour=cn.hours=an,cn.minute=cn.minutes=hn,cn.second=cn.seconds=dn,cn.millisecond=cn.milliseconds=un,cn.utcOffset=Ht,cn.utc=Yt,cn.local=Gt,cn.parseZone=Vt,cn.hasAlignedHourOffset=Ut,cn.isDST=qt,cn.isDSTShifted=Xt,cn.isLocal=Zt,cn.isUtcOffset=Kt,cn.isUtc=Jt,cn.isUTC=Jt,cn.zoneAbbr=di,cn.zoneName=li,cn.dates=rt("dates accessor is deprecated. Use date instead.",en),cn.months=rt("months accessor is deprecated. Use month instead",$),cn.years=rt("years accessor is deprecated. Use year instead",Go),cn.zone=rt("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Wt);var pn=cn,fn={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},mn={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},vn="Invalid date",gn="%d",yn=/\d{1,2}/,bn={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},_n=_.prototype;_n._calendar=fn,_n.calendar=pi,_n._longDateFormat=mn,_n.longDateFormat=fi,_n._invalidDate=vn,_n.invalidDate=mi,_n._ordinal=gn,_n.ordinal=vi,_n._ordinalParse=yn,_n.preparse=gi,_n.postformat=gi,_n._relativeTime=bn,_n.relativeTime=yi,_n.pastFuture=bi,_n.set=_i,_n.months=Z,_n._months=No,_n.monthsShort=K,_n._monthsShort=zo,_n.monthsParse=J,_n._monthsRegex=Ao,_n.monthsRegex=it,_n._monthsShortRegex=Lo,_n.monthsShortRegex=et,_n.week=Ye,_n._week=tn,_n.firstDayOfYear=Ve,_n.firstDayOfWeek=Ge,_n.weekdays=Ze,_n._weekdays=on,_n.weekdaysMin=Je,_n._weekdaysMin=sn,_n.weekdaysShort=Ke,_n._weekdaysShort=nn,_n.weekdaysParse=Qe,_n.isPM=ri,_n._meridiemParse=rn,_n.meridiem=ai,O("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===y(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),e.lang=rt("moment.lang is deprecated. Use moment.locale instead.",O),e.langData=rt("moment.langData is deprecated. Use moment.localeData instead.",D);var wn=Math.abs,xn=Bi("ms"),kn=Bi("s"),On=Bi("m"),Mn=Bi("h"),Dn=Bi("d"),Cn=Bi("w"),Sn=Bi("M"),Tn=Bi("y"),En=ji("milliseconds"),Pn=ji("seconds"),In=ji("minutes"),Nn=ji("hours"),zn=ji("days"),Ln=ji("months"),An=ji("years"),Fn=Math.round,Bn={s:45,m:45,h:22,d:26,M:11},Rn=Math.abs,jn=Lt.prototype;jn.abs=Si,jn.add=Ei,jn.subtract=Pi,jn.as=Ai,jn.asMilliseconds=xn,jn.asSeconds=kn,jn.asMinutes=On,jn.asHours=Mn,jn.asDays=Dn,jn.asWeeks=Cn,jn.asMonths=Sn,jn.asYears=Tn,jn.valueOf=Fi,jn._bubble=Ni,jn.get=Ri,jn.milliseconds=En,jn.seconds=Pn,jn.minutes=In,jn.hours=Nn,jn.days=zn,jn.weeks=Hi,jn.months=Ln,jn.years=An,jn.humanize=Vi,jn.toISOString=Ui,jn.toString=Ui,jn.toJSON=Ui,jn.locale=we,jn.localeData=xe,jn.toIsoString=rt("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ui),jn.lang=$o,A("X",0,0,"unix"),A("x",0,0,"valueOf"),H("x",vo),H("X",bo),V("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),V("x",function(t,e,i){i._d=new Date(y(t))}),e.version="2.11.1",i(Pt),e.fn=pn,e.min=Nt,e.max=zt,e.now=qo,e.utc=h,e.unix=ui,e.months=ki,e.isDate=n,e.locale=O,e.invalid=c,e.duration=Qt,e.isMoment=v,e.weekdays=Mi,e.parseZone=ci,e.localeData=D,e.isDuration=At,e.monthsShort=Oi,e.weekdaysMin=Ci,e.defineLocale=M,e.weekdaysShort=Di,e.normalizeUnits=S,e.relativeTimeThreshold=Gi,e.prototype=pn;var Hn=e;return Hn})}).call(e,i(4)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e){function i(t){throw new Error("Cannot find module '"+t+"'.")}i.keys=function(){return[]},i.resolve=i,t.exports=i,i.id=5},function(t,e){(function(e){function i(t,e,i){var o=e&&i||0,n=0;for(e=e||[],t.toLowerCase().replace(/[0-9a-f]{2}/g,function(t){16>n&&(e[o+n++]=u[t])});16>n;)e[o+n++]=0;return e}function o(t,e){var i=e||0,o=l;return o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]}function n(t,e,i){var n=e&&i||0,s=e||[];t=t||{};var r=void 0!==t.clockseq?t.clockseq:m,a=void 0!==t.msecs?t.msecs:(new Date).getTime(),h=void 0!==t.nsecs?t.nsecs:g+1,d=a-v+(h-g)/1e4;if(0>d&&void 0===t.clockseq&&(r=r+1&16383),(0>d||a>v)&&void 0===t.nsecs&&(h=0),h>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=a,g=h,m=r,a+=122192928e5;var l=(1e4*(268435455&a)+h)%4294967296;s[n++]=l>>>24&255,s[n++]=l>>>16&255,s[n++]=l>>>8&255,s[n++]=255&l;var u=a/4294967296*1e4&268435455;s[n++]=u>>>8&255,s[n++]=255&u,s[n++]=u>>>24&15|16,s[n++]=u>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var c=t.node||f,p=0;6>p;p++)s[n+p]=c[p];return e?e:o(s)}function s(t,e,i){var n=e&&i||0;"string"==typeof t&&(e="binary"==t?new Array(16):null,t=null),t=t||{};var s=t.random||(t.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,e)for(var a=0;16>a;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:"undefined"!=typeof e?e:null;if(a&&a.crypto&&crypto.getRandomValues){var h=new Uint8Array(16);r=function(){return crypto.getRandomValues(h),h}}if(!r){var d=new Array(16);r=function(){for(var t,e=0;16>e;e++)0===(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;256>c;c++)l[c]=(c+256).toString(16).substr(1),u[l[c]]=c;var p=r(),f=[1|p[0],p[1],p[2],p[3],p[4],p[5]],m=16383&(p[6]<<8|p[7]),v=0,g=0,y=s;y.v1=n,y.v4=s,y.parse=i,y.unparse=o,t.exports=y}).call(e,function(){return this}())},function(t,e){e.prepareElements=function(t){for(var e in t)t.hasOwnProperty(e)&&(t[e].redundant=t[e].used,t[e].used=[])},e.cleanupElements=function(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e].redundant){for(var i=0;i0?(o=e[t].redundant[0],e[t].redundant.shift()):(o=document.createElementNS("http://www.w3.org/2000/svg",t),i.appendChild(o)):(o=document.createElementNS("http://www.w3.org/2000/svg",t),e[t]={used:[],redundant:[]},i.appendChild(o)),e[t].used.push(o),o},e.getDOMElement=function(t,e,i,o){var n;return e.hasOwnProperty(t)?e[t].redundant.length>0?(n=e[t].redundant[0],e[t].redundant.shift()):(n=document.createElement(t),void 0!==o?i.insertBefore(n,o):i.appendChild(n)):(n=document.createElement(t),e[t]={used:[],redundant:[]},void 0!==o?i.insertBefore(n,o):i.appendChild(n)),e[t].used.push(n),n},e.drawPoint=function(t,i,o,n,s,r){var a;if("circle"==o.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.size),a.setAttributeNS(null,"y",i-.5*o.size),a.setAttributeNS(null,"width",o.size),a.setAttributeNS(null,"height",o.size)),void 0!==o.styles&&a.setAttributeNS(null,"style",o.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i=Object.keys(this._options.type),o=0,n=i.length;n>o;o++){var s=i[o],r=this._options.type[s];"Date"==r||"ISODate"==r||"ASPDate"==r?this._type[s]="Date":this._type[s]=r}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(1),s=i(9);o.prototype.setOptions=function(t){t&&void 0!==t.queue&&(t.queue===!1?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=s.extend(this,{replace:["add","update","remove"]})),"object"==typeof t.queue&&this._queue.setOptions(t.queue)))},o.prototype.on=function(t,e){var i=this._subscribers[t];i||(i=[],this._subscribers[t]=i),i.push({callback:e})},o.prototype.subscribe=function(){throw new Error("DataSet.subscribe is deprecated. Use DataSet.on instead.")},o.prototype.off=function(t,e){var i=this._subscribers[t];i&&(this._subscribers[t]=i.filter(function(t){return t.callback!=e}))},o.prototype.unsubscribe=function(){throw new Error("DataSet.unsubscribe is deprecated. Use DataSet.off instead.")},o.prototype._trigger=function(t,e,i){if("*"==t)throw new Error("Cannot trigger event *");var o=[];t in this._subscribers&&(o=o.concat(this._subscribers[t])),"*"in this._subscribers&&(o=o.concat(this._subscribers["*"]));for(var n=0,s=o.length;s>n;n++){var r=o[n];r.callback&&r.callback(t,e,i||null)}},o.prototype.add=function(t,e){var i,o=[],n=this;if(Array.isArray(t))for(var s=0,r=t.length;r>s;s++)i=n._addItem(t[s]),o.push(i);else{if(!(t instanceof Object))throw new Error("Unknown dataType");i=n._addItem(t),o.push(i)}return o.length&&this._trigger("add",{items:o},e),o},o.prototype.update=function(t,e){var i=[],o=[],s=[],r=[],a=this,h=a._fieldId,d=function(t){var e=t[h];if(a._data[e]){var d=n.extend({},a._data[e]);e=a._updateItem(t),o.push(e),r.push(t),s.push(d)}else e=a._addItem(t),i.push(e)};if(Array.isArray(t))for(var l=0,u=t.length;u>l;l++)t[l]instanceof Object?d(t[l]):console.warn("Ignoring input item, which is not an object at index "+l);else{if(!(t instanceof Object))throw new Error("Unknown dataType");d(t)}if(i.length&&this._trigger("add",{items:i},e),o.length){var c={items:o,oldData:s,data:r};this._trigger("update",c,e)}return i.concat(o)},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r?(e=arguments[0],o=arguments[1]):"Array"==r?(i=arguments[0],o=arguments[1]):o=arguments[0];var a;if(o&&o.returnType){var h=["Array","Object"];a=-1==h.indexOf(o.returnType)?"Array":o.returnType}else a="Array";var d,l,u,c,p,f=o&&o.type||this._options.type,m=o&&o.filter,v=[];if(void 0!=e)d=s._getItem(e,f),d&&m&&!m(d)&&(d=null);else if(void 0!=i)for(c=0,p=i.length;p>c;c++)d=s._getItem(i[c],f),(!m||m(d))&&v.push(d);else for(l=Object.keys(this._data),c=0,p=l.length;p>c;c++)u=l[c],d=s._getItem(u,f),(!m||m(d))&&v.push(d);if(o&&o.order&&void 0==e&&this._sort(v,o.order),o&&o.fields){var g=o.fields;if(void 0!=e)d=this._filterFields(d,g);else for(c=0,p=v.length;p>c;c++)v[c]=this._filterFields(v[c],g)}if("Object"==a){var y,b={};for(c=0,p=v.length;p>c;c++)y=v[c],b[y.id]=y;return b}return void 0!=e?d:v},o.prototype.getIds=function(t){var e,i,o,n,s,r=this._data,a=t&&t.filter,h=t&&t.order,d=t&&t.type||this._options.type,l=Object.keys(r),u=[];if(a)if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&s.push(n);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&u.push(n[this._fieldId]);else if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],s.push(r[o]);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=r[o],u.push(n[this._fieldId]);return u},o.prototype.getDataSet=function(){return this},o.prototype.forEach=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=this._data,d=Object.keys(h);if(e&&e.order){var l=this.get(e);for(i=0,o=l.length;o>i;i++)n=l[i],s=n[this._fieldId],t(n,s)}else for(i=0,o=d.length;o>i;i++)s=d[i],n=this._getItem(s,a),(!r||r(n))&&t(n,s)},o.prototype.map=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=[],d=this._data,l=Object.keys(d);for(i=0,o=l.length;o>i;i++)n=l[i],s=this._getItem(n,a),(!r||r(s))&&h.push(t(s,n));return e&&e.order&&this._sort(h,e.order),h},o.prototype._filterFields=function(t,e){if(!t)return t;var i,o,n={},s=Object.keys(t),r=s.length;if(Array.isArray(e))for(i=0;r>i;i++)o=s[i],-1!=e.indexOf(o)&&(n[o]=t[o]);else for(i=0;r>i;i++)o=s[i],e.hasOwnProperty(o)&&(n[e[o]]=t[o]);return n},o.prototype._sort=function(t,e){if(n.isString(e)){var i=e;t.sort(function(t,e){var o=t[i],n=e[i];return o>n?1:n>o?-1:0})}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");t.sort(e)}},o.prototype.remove=function(t,e){var i,o,n,s=[];if(Array.isArray(t))for(i=0,o=t.length;o>i;i++)n=this._remove(t[i]), +null!=n&&s.push(n);else n=this._remove(t),null!=n&&s.push(n);return s.length&&this._trigger("remove",{items:s},e),s},o.prototype._remove=function(t){if(n.isNumber(t)||n.isString(t)){if(this._data[t])return delete this._data[t],this.length--,t}else if(t instanceof Object){var e=t[this._fieldId];if(void 0!==e&&this._data[e])return delete this._data[e],this.length--,e}return null},o.prototype.clear=function(t){var e=Object.keys(this._data);return this._data={},this.length=0,this._trigger("remove",{items:e},t),e},o.prototype.max=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||d>r)&&(s=h,r=d)}return s},o.prototype.min=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||r>d)&&(s=h,r=d)}return s},o.prototype.distinct=function(t){var e,i,o,s=this._data,r=Object.keys(s),a=[],h=this._options.type&&this._options.type[t]||null,d=0;for(e=0,o=r.length;o>e;e++){var l=r[e],u=s[l],c=u[t],p=!1;for(i=0;d>i;i++)if(a[i]==c){p=!0;break}p||void 0===c||(a[d]=c,d++)}if(h)for(e=0,o=a.length;o>e;e++)a[e]=n.convert(a[e],h);return a},o.prototype._addItem=function(t){var e=t[this._fieldId];if(void 0!=e){if(this._data[e])throw new Error("Cannot add item: item with id "+e+" already exists")}else e=n.randomUUID(),t[this._fieldId]=e;var i,o,s={},r=Object.keys(t);for(i=0,o=r.length;o>i;i++){var a=r[i],h=this._type[a];s[a]=n.convert(t[a],h)}return this._data[e]=s,this.length++,e},o.prototype._getItem=function(t,e){var i,o,s,r,a=this._data[t];if(!a)return null;var h={},d=Object.keys(a);if(e)for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=n.convert(o,e[i]);else for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=o;return h},o.prototype._updateItem=function(t){var e=t[this._fieldId];if(void 0==e)throw new Error("Cannot update item: item has no id (item: "+JSON.stringify(t)+")");var i=this._data[e];if(!i)throw new Error("Cannot update item: no item with id "+e+" found");for(var o=Object.keys(t),s=0,r=o.length;r>s;s++){var a=o[s],h=this._type[a];i[a]=n.convert(t[a],h)}return e},t.exports=o},function(t,e){function i(t){this.delay=null,this.max=1/0,this._queue=[],this._timeout=null,this._extended=null,this.setOptions(t)}i.prototype.setOptions=function(t){t&&"undefined"!=typeof t.delay&&(this.delay=t.delay),t&&"undefined"!=typeof t.max&&(this.max=t.max),this._flushIfNeeded()},i.extend=function(t,e){var o=new i(e);if(void 0!==t.flush)throw new Error("Target object already has a property flush");t.flush=function(){o.flush()};var n=[{name:"flush",original:void 0}];if(e&&e.replace)for(var s=0;sthis.max&&this.flush(),clearTimeout(this._timeout),this.queue.length>0&&"number"==typeof this.delay){var t=this;this._timeout=setTimeout(function(){t.flush()},this.delay)}},i.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=i},function(t,e,i){function o(t,e){this._data=null,this._ids={},this.length=0,this._options=e||{},this._fieldId="id",this._subscribers={};var i=this;this.listener=function(){i._onEvent.apply(i,arguments)},this.setData(t)}var n=i(1),s=i(8);o.prototype.setData=function(t){var e,i,o,n;if(this._data&&(this._data.off&&this._data.off("*",this.listener),e=Object.keys(this._ids),this._ids={},this.length=0,this._trigger("remove",{items:e})),this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),o=0,n=e.length;n>o;o++)i=e[o],this._ids[i]=!0;this.length=e.length,this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},o.prototype.refresh=function(){var t,e,i,o=this._data.getIds({filter:this._options&&this._options.filter}),n=Object.keys(this._ids),s={},r=[],a=[];for(e=0,i=o.length;i>e;e++)t=o[e],s[t]=!0,this._ids[t]||(r.push(t),this._ids[t]=!0);for(e=0,i=n.length;i>e;e++)t=n[e],s[t]||(a.push(t),delete this._ids[t]);this.length+=r.length-a.length,r.length&&this._trigger("add",{items:r}),a.length&&this._trigger("remove",{items:a})},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r||"Array"==r?(e=arguments[0],i=arguments[1],o=arguments[2]):(i=arguments[0],o=arguments[1]);var a=n.extend({},this._options,i);this._options.filter&&i&&i.filter&&(a.filter=function(t){return s._options.filter(t)&&i.filter(t)});var h=[];return void 0!=e&&h.push(e),h.push(a),h.push(o),this._data&&this._data.get.apply(this._data,h)},o.prototype.getIds=function(t){var e;if(this._data){var i,o=this._options.filter;i=t&&t.filter?o?function(e){return o(e)&&t.filter(e)}:t.filter:o,e=this._data.getIds({filter:i,order:t&&t.order})}else e=[];return e},o.prototype.map=function(t,e){var i=[];if(this._data){var o,n=this._options.filter;o=e&&e.filter?n?function(t){return n(t)&&e.filter(t)}:e.filter:n,i=this._data.map(t,{filter:o,order:e&&e.order})}else i=[];return i},o.prototype.getDataSet=function(){for(var t=this;t instanceof o;)t=t._data;return t||null},o.prototype._onEvent=function(t,e,i){var o,n,s,r,a=e&&e.items,h=this._data,d=[],l=[],u=[],c=[];if(a&&h){switch(t){case"add":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r&&(this._ids[s]=!0,l.push(s));break;case"update":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r?this._ids[s]?(u.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],c.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],c.push(s))}this.length+=l.length-c.length,l.length&&this._trigger("add",{items:l},i),u.length&&this._trigger("update",{items:u,data:d},i),c.length&&this._trigger("remove",{items:c},i)}},o.prototype.on=s.prototype.on,o.prototype.off=s.prototype.off,o.prototype._trigger=s.prototype._trigger,o.prototype.subscribe=o.prototype.on,o.prototype.unsubscribe=o.prototype.off,t.exports=o},function(t,e,i){function o(t,e,i){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var n=function(t){return t};this.xValueLabel=n,this.yValueLabel=n,this.zValueLabel=n,this.filterLabel="time",this.legendLabel="value",this.style=o.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new c,this.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.axisColor="#4D4D4D",this.gridColor="#D3D3D3",this.dataColor={fill:"#7DC1FF",stroke:"#3267D2",strokeWidth:1},this.create(),this.setOptions(i),e&&this.setData(e)}function n(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function s(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(12),a=i(8),h=i(10),d=i(1),l=i(13),u=i(14),c=i(15),p=i(16),f=i(17),m=i(18);r(o.prototype),o.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==o.STYLE.DOTCOLOR&&this.style!==o.STYLE.DOTSIZE&&this.style!==o.STYLE.BARCOLOR&&this.style!==o.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},o.prototype.getNumberOfRows=function(t){return t.length},o.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},o.prototype.getDistinctValues=function(t,e){for(var i=[],o=0;ot[o][e]&&(i.min=t[o][e]),i.maxt;t++){var f=(t-c)/(p-c),v=240*f,g=this._hsv2rgb(v,1,1);u.strokeStyle=g,u.beginPath(),u.moveTo(h,r+t),u.lineTo(a,r+t),u.stroke()}u.strokeStyle=this.axisColor,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.axisColor,u.fillStyle=this.dataColor.fill,u.beginPath(),u.moveTo(h,r),u.lineTo(a,r),u.lineTo(a-i+e,d),u.lineTo(h,d),u.closePath(),u.fill(),u.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new m(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new l(w,r,this.zMin)),Math.cos(2*_)>0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*_)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(v.lineWidth=1,o=void 0===this.defaultYStep,i=new m(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new l(s,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*_)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(v.lineWidth=1,o=void 0===this.defaultZStep,i=new m(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(s,r,i.getCurrent())),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(t.x-b,t.y),v.stroke(),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();v.lineWidth=1,t=this._convert3Dto2D(new l(s,r,this.zMin)),e=this._convert3Dto2D(new l(s,r,this.zMax)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),v.lineWidth=1,c=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),c=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),v.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke();var x=this.xLabel;x.length>0&&(u=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-u:this.yMax+u,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*_)>0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*_)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(_)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*_)<0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*_)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(k,n.x,n.y));var O=this.zLabel;O.length>0&&(h=30,s=Math.cos(_)>0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new l(s,r,a)),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(O,n.x-h,n.y))},o.prototype._hsv2rgb=function(t,e,i){var o,n,s,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:o=r,n=h,s=0;break;case 1:o=h,n=r,s=0;break;case 2:o=0,n=r,s=h;break;case 3:o=0,n=h,s=r;break;case 4:o=h,n=0,s=r;break;case 5:o=r,n=0,s=h;break;default:o=0,n=0,s=0}return"RGB("+parseInt(255*o)+","+parseInt(255*n)+","+parseInt(255*s)+")"},o.prototype._redrawDataGrid=function(){var t,e,i,n,s,r,a,h,d,u,c,p,f=this.frame.canvas,m=f.getContext("2d");if(m.lineJoin="round",m.lineCap="round",!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(p=(t.point.z+e.point.z+i.point.z+n.point.z)/4,d=240*(1-(p-this.zMin)*this.scale.z/this.verticalRatio),u=1,this.showShadow?(c=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,u,c),h=a):(c=1,a=this._hsv2rgb(d,u,c),h=this.axisColor)):(a="gray",h=this.axisColor),m.lineWidth=this._getStrokeWidth(t),m.fillStyle=a,m.strokeStyle=h,m.beginPath(),m.moveTo(t.screen.x,t.screen.y),m.lineTo(e.screen.x,e.screen.y),m.lineTo(n.screen.x,n.screen.y),m.lineTo(i.screen.x,i.screen.y),m.closePath(),m.fill(),m.stroke()}}else for(s=0;sc&&(c=0);var p,f,m;this.style===o.STYLE.DOTCOLOR?(p=240*(1-(d.point.value-this.valueMin)*this.scale.value),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)):this.style===o.STYLE.DOTSIZE?(f=this.dataColor.fill,m=this.dataColor.stroke):(p=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)),i.lineWidth=this._getStrokeWidth(d),i.strokeStyle=m,i.fillStyle=f,i.beginPath(),i.arc(d.screen.x,d.screen.y,c,0,2*Math.PI,!0),i.fill(),i.stroke()}}},o.prototype._redrawDataBar=function(){var t,e,i,n,s=this.frame.canvas,r=s.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0){for(t=this.dataPoints[0],o.lineWidth=this._getStrokeWidth(t),o.lineJoin="round",o.lineCap="round",o.strokeStyle=this.dataColor.stroke,o.beginPath(),o.moveTo(t.screen.x,t.screen.y),e=1;e0?1:0>t?-1:0}var o=e[0],n=e[1],s=e[2],r=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),a=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x)),h=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},o.prototype._dataPointFromXY=function(t,e){var i,n=100,s=null,r=null,a=null,h=new u(t,e);if(this.style===o.STYLE.BAR||this.style===o.STYLE.BARCOLOR||this.style===o.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){s=this.dataPoints[i];var d=s.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var c=d[l],p=c.corners,f=[p[0].screen,p[1].screen,p[2].screen],m=[p[2].screen,p[3].screen,p[0].screen];if(this._insideTriangle(h,f)||this._insideTriangle(h,m))return s}}else for(i=0;ib)&&n>b&&(a=b,r=s)}}return r},o.prototype._showTooltip=function(t){var e,i,o;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,o=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",o=document.createElement("div"),o.style.position="absolute",o.style.height="0",o.style.width="0",o.style.border="5px solid #4d4d4d",o.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:o}}),this._hideTooltip(),this.tooltip.dataPoint=t,"function"==typeof this.showTooltip?e.innerHTML=this.showTooltip(t.point):e.innerHTML="
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(o);var n=e.offsetWidth,s=e.offsetHeight,r=i.offsetHeight,a=o.offsetWidth,h=o.offsetHeight,d=t.screen.x-n/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-n),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-s+"px",o.style.left=t.screen.x-a/2+"px",o.style.top=t.screen.y-h/2+"px"},o.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=o},function(t,e){function i(t){return t?o(t):void 0}function o(t){for(var e in i.prototype)t[e]=i.prototype[e];return t}t.exports=i,i.prototype.on=i.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},i.prototype.once=function(t,e){function i(){o.off(t,i),e.apply(this,arguments)}var o=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},i.prototype.off=i.prototype.removeListener=i.prototype.removeAllListeners=i.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var i=this._callbacks[t];if(!i)return this;if(1==arguments.length)return delete this._callbacks[t],this;for(var o,n=0;no;++o)i[o].apply(this,e)}return this},i.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},i.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e){function i(t,e,i){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0,this.z=void 0!==i?i:0}i.subtract=function(t,e){var o=new i;return o.x=t.x-e.x,o.y=t.y-e.y,o.z=t.z-e.z,o},i.add=function(t,e){var o=new i;return o.x=t.x+e.x,o.y=t.y+e.y,o.z=t.z+e.z,o},i.avg=function(t,e){return new i((t.x+e.x)/2,(t.y+e.y)/2,(t.z+e.z)/2)},i.crossProduct=function(t,e){var o=new i;return o.x=t.y*e.z-t.z*e.y,o.y=t.z*e.x-t.x*e.z,o.z=t.x*e.y-t.y*e.x,o},i.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.exports=i},function(t,e){function i(t,e){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0}t.exports=i},function(t,e,i){function o(){this.armLocation=new n,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new n,this.cameraRotation=new n(.5*Math.PI,0,0),this.calculateCameraOrientation()}var n=i(13);o.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},o.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},o.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},o.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},o.prototype.getArmLength=function(){return this.armLength},o.prototype.getCameraLocation=function(){return this.cameraLocation},o.prototype.getCameraRotation=function(){return this.cameraRotation},o.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=o},function(t,e,i){function o(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var n=i(10);o.prototype.isLoaded=function(){return this.loaded},o.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++;return Math.round(e/t*100)},o.prototype.getLabel=function(){return this.graph.filterLabel},o.prototype.getColumn=function(){return this.column},o.prototype.getSelectedValue=function(){return void 0!==this.index?this.values[this.index]:void 0},o.prototype.getValues=function(){return this.values},o.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t]},o.prototype._getDataPoints=function(t){if(void 0===t&&(t=this.index),void 0===t)return[];var e;if(this.dataPoints[t])e=this.dataPoints[t];else{var i={};i.column=this.column,i.value=this.values[t];var o=new n(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(o),this.dataPoints[t]=e}return e},o.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},o.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},o.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},o.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},o.prototype.setIndex=function(t){if(!(to&&(o=0),o>this.values.length-1&&(o=this.values.length-1),o},o.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,o=i+3;return o},o.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,o=this.leftToIndex(i);this.setIndex(o),n.preventDefault()},o.prototype._onMouseUp=function(t){this.frame.style.cursor="auto",n.removeEventListener(document,"mousemove",this.onmousemove),n.removeEventListener(document,"mouseup",this.onmouseup),n.preventDefault()},t.exports=o},function(t,e){function i(t,e,i,o){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,o)}i.prototype.setRange=function(t,e,i,o){this._start=t?t:0,this._end=e?e:0,this.setStep(i,o)},i.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this.prettyStep===!0?this._step=i.calculatePrettyStep(t):this._step=t)},i.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),o=2*Math.pow(10,Math.round(e(t/2))),n=5*Math.pow(10,Math.round(e(t/5))),s=i;return Math.abs(o-t)<=Math.abs(s-t)&&(s=o),Math.abs(n-t)<=Math.abs(s-t)&&(s=n),0>=s&&(s=1),s},i.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},i.prototype.getStep=function(){return this._step},i.prototype.start=function(){this._current=this._start-this._start%this._step},i.prototype.next=function(){this._current+=this._step},i.prototype.end=function(){return this._current>this._end},t.exports=i},function(t,e,i){function o(t,e,i,d){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof r||i instanceof a)&&i instanceof Object){var c=d;d=i,i=c}var f=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},moment:n,width:null,height:null,maxHeight:null,minHeight:null},this.options=s.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function(){return f.timeAxis.step.scale},getStep:function(){return f.timeAxis.step.step},toScreen:f._toScreen.bind(f),toGlobalScreen:f._toGlobalScreen.bind(f),toTime:f._toTime.bind(f),toGlobalTime:f._toGlobalTime.bind(f)}},this.range=new h(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new l(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new u(this.body),this.components.push(this.currentTime),this.itemSet=new p(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){f.emit("click",f.getEventProperties(t))}),this.on("doubletap",function(t){f.emit("doubleClick",f.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){f.emit("contextmenu",f.getEventProperties(t))},this.fitDone=!1,this.on("changed",function(){if(null!=this.itemsData&&!f.fitDone)if(f.fitDone=!0,void 0!=f.options.start||void 0!=f.options.end){if(void 0==f.options.start||void 0==f.options.end)var t=f.getItemRange();var e=void 0!=f.options.start?f.options.start:t.min,i=void 0!=f.options.end?f.options.end:t.max;f.setWindow(e,i,{animation:!1})}else f.fit({animation:!1})}),d&&this.setOptions(d),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var n=(i(12),i(20),i(2)),s=i(1),r=i(8),a=i(10),h=i(23),d=i(27),l=i(38),u=i(43),c=i(41),p=i(28),f=i(44),m=i(46)["default"],v=i(46).printStyle,g=i(47).allOptions,y=i(47).configureOptions;o.prototype=new d,o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},o.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},o.prototype.setOptions=function(t){var e=m.validate(t,g);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",v),d.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var i=this.itemsData;if(i){var o=this.getSelection();this.setItems(null),this.setItems(i),this.setSelection(o)}}},o.prototype.setItems=function(t){var e;e=t?t instanceof r||t instanceof a?t:new r(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e)},o.prototype.setGroups=function(t){var e;e=t?t instanceof r||t instanceof a?t:new r(t):null,this.groupsData=e,this.itemSet.setGroups(e)},o.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},o.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},o.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},o.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],o=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),n=null,s=null;if(o.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===n||n>e)&&(n=e),(null===s||i>s)&&(s=i)}),null!==n&&null!==s){var r=(n+s)/2,a=Math.max(this.range.end-this.range.start,1.1*(s-n)),h=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(r-a/2,r+a/2,h)}}},o.prototype.fit=function(t){var e=t&&void 0!==t.animation?t.animation:!0,i=this.getItemRange();this.range.setRange(i.min,i.max,e)},o.prototype.getItemRange=function(){var t=this,e=this.getDataRange(),i=null!==e.min?e.min.valueOf():null,o=null!==e.max?e.max.valueOf():null,n=null,r=null;if(null!=i&&null!=o){var a,h,d,l,u;!function(){var e=function(t){return s.convert(t.data.start,"Date").valueOf()},c=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return s.convert(e,"Date").valueOf()};a=o-i,0>=a&&(a=10),h=a/t.props.center.width,s.forEach(t.itemSet.items,function(t){t.show(),t.repositionX();var s=e(t),a=c(t),d=s-(t.getWidthLeft()+10)*h,l=a+(t.getWidthRight()+10)*h;i>d&&(i=d,n=t),l>o&&(o=l,r=t)}.bind(t)),n&&r&&(d=n.getWidthLeft()+10,l=r.getWidthRight()+10,u=t.props.center.width-d-l,u>0&&(i=e(n)-d*a/u,o=c(r)+l*a/u))}()}return{min:null!=i?new Date(i):null,max:null!=o?new Date(o):null}},o.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=s.convert(i.start,"Date").valueOf(),n=s.convert(void 0!=i.end?i.end:i.start,"Date").valueOf();(null===t||t>o)&&(t=o),(null===e||n>e)&&(e=n)}),{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=c.customTimeFromTarget(t),d=this.itemSet.options.snap||null,l=this.body.util.getScale(),u=this.body.util.getStep(),p=this._toTime(o),f=d?d(p,l,u):p,m=s.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":s.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&s.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":s.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":s.hasParent(m,this.currentTime.bar)?v="current-time":s.hasParent(m,this.dom.center)&&(v="background"),{event:t,item:r?r.id:null,group:a?a.groupId:null,what:v,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:p,snappedTime:f}},t.exports=o},function(t,e,i){if("undefined"!=typeof window){var o=i(21),n=window.Hammer||i(22);t.exports=o(n,{preventDefault:"mouse"})}else t.exports=function(){throw Error("hammer.js is only available in a browser, not in node.js.")}},function(t,e,i){var o,n,s;!function(i){n=[],o=i,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(function(){var t=null;return function e(i,o){function n(t){return t.match(/[^ ]+/g)}function s(e){if("hammer.input"!==e.type){if(e.srcEvent._handled||(e.srcEvent._handled={}),e.srcEvent._handled[e.type])return;e.srcEvent._handled[e.type]=!0}var i=!1;e.stopPropagation=function(){i=!0};var o=e.srcEvent.stopPropagation;"function"==typeof o&&(e.srcEvent.stopPropagation=function(){o(),e.stopPropagation()}),e.firstTarget=t;for(var n=t;n&&!i;){var s=n.hammer;if(s)for(var r,a=0;a0?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(e,o){t=o.target,i.emit(e,o)},d.destroy=function(){var t=i.element.hammer,e=t.indexOf(d);-1!==e&&t.splice(e,1),t.length||delete i.element.hammer,d._handlers={},i.destroy()},d}})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(p(t,i),e)}function d(t,e,i){return Array.isArray(t)?(l(t,i[e],i),!0):!1}function l(t,e,i){var o;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==a)for(o=0;o\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=n.console&&(n.console.warn||n.console.log);return s&&s.call(n.console,o,i),t.apply(this,arguments)}}function c(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ut(o,i)}function p(t,e){return function(){return t.apply(e,arguments)}}function f(t,e){return typeof t==ft?t.apply(e?e[0]||a:a,e):t}function m(t,e){return t===a?e:t}function v(t,e,i){l(_(e),function(e){t.addEventListener(e,i,!1)})}function g(t,e,i){l(_(e),function(e){t.removeEventListener(e,i,!1)})}function y(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return t.indexOf(e)>-1}function _(t){return t.trim().split(/\s+/g)}function w(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var o=0;oi[e]}):o.sort()),o}function O(t,e){for(var i,o,n=e[0].toUpperCase()+e.slice(1),s=0;s1&&!i.firstMultiple?i.firstMultiple=N(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=z(o);e.timeStamp=gt(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=B(a,h),e.distance=F(a,h),P(i,e),e.offsetDirection=A(e.deltaX,e.deltaY);var d=L(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=d.x,e.overallVelocityY=d.y,e.overallVelocity=vt(d.x)>vt(d.y)?d.x:d.y,e.scale=r?j(r.pointers,o):1,e.rotation=r?R(r.pointers,o):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,I(i,e);var l=t.element;y(e.srcEvent.target,l)&&(l=e.srcEvent.target),e.target=l}function P(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};(e.eventType===Et||s.eventType===It)&&(n=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},o=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=n.x+(i.x-o.x),e.deltaY=n.y+(i.y-o.y)}function I(t,e){var i,o,n,s,r=t.lastInterval||e,h=e.timeStamp-r.timeStamp;if(e.eventType!=Nt&&(h>Tt||r.velocity===a)){var d=e.deltaX-r.deltaX,l=e.deltaY-r.deltaY,u=L(h,d,l);o=u.x,n=u.y,i=vt(u.x)>vt(u.y)?u.x:u.y,s=A(d,l),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}function N(t){for(var e=[],i=0;in;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:mt(i/e),y:mt(o/e)}}function L(t,e,i){return{x:e/t||0,y:i/t||0}}function A(t,e){return t===e?zt:vt(t)>=vt(e)?0>t?Lt:At:0>e?Ft:Bt}function F(t,e,i){i||(i=Wt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function B(t,e,i){i||(i=Wt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function R(t,e){return B(e[1],e[0],Yt)+B(t[1],t[0],Yt)}function j(t,e){return F(e[0],e[1],Yt)/F(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Ut,this.allow=!0,this.pressed=!1,C.apply(this,arguments)}function W(){this.evEl=Zt,this.evWin=Kt,C.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function Y(){this.evTarget=Qt,this.evWin=$t,this.started=!1,C.apply(this,arguments)}function G(t,e){var i=x(t.touches),o=x(t.changedTouches);return e&(It|Nt)&&(i=k(i.concat(o),"identifier",!0)),[i,o]}function V(){this.evTarget=ee,this.targetIds={},C.apply(this,arguments)}function U(t,e){var i=x(t.touches),o=this.targetIds;if(e&(Et|Pt)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=x(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return y(t.target,h)}),e===Et)for(n=0;na&&(e.push(t),a=e.length-1):n&(It|Nt)&&(i=!0),0>a||(e[a]=t,this.callback(this.manager,n,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var Jt={touchstart:Et,touchmove:Pt,touchend:It,touchcancel:Nt},Qt="touchstart",$t="touchstart touchmove touchend touchcancel";c(Y,C,{handler:function(t){var e=Jt[t.type];if(e===Et&&(this.started=!0),this.started){var i=G.call(this,t,e);e&(It|Nt)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Mt,srcEvent:t})}}});var te={touchstart:Et,touchmove:Pt,touchend:It,touchcancel:Nt},ee="touchstart touchmove touchend touchcancel";c(V,C,{handler:function(t){var e=te[t.type],i=U.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Mt,srcEvent:t})}}),c(q,C,{handler:function(t,e,i){var o=i.pointerType==Mt,n=i.pointerType==Ct;if(o)this.mouse.allow=!1;else if(n&&!this.mouse.allow)return;e&(It|Nt)&&(this.mouse.allow=!0),this.callback(t,e,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ie=O(pt.style,"touchAction"),oe=ie!==a,ne="compute",se="auto",re="manipulation",ae="none",he="pan-x",de="pan-y";X.prototype={set:function(t){t==ne&&(t=this.compute()),oe&&this.manager.element.style&&(this.manager.element.style[ie]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return l(this.manager.recognizers,function(e){f(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),Z(t.join(" "))},preventDefaults:function(t){if(!oe){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var o=this.actions,n=b(o,ae),s=b(o,de),r=b(o,he);if(n){var a=1===t.pointers.length,h=t.distance<2,d=t.deltaTime<250;if(a&&h&&d)return}if(!r||!s)return n||s&&i&Rt||r&&i&jt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var le=1,ue=2,ce=4,pe=8,fe=pe,me=16,ve=32;K.prototype={defaults:{},set:function(t){return ut(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(d(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=$(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return d(t,"dropRecognizeWith",this)?this:(t=$(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(d(t,"requireFailure",this))return this;var e=this.requireFail;return t=$(t,this),-1===w(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=$(t,this);var e=w(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){i.manager.emit(e,t)}var i=this,o=this.state;pe>o&&e(i.options.event+J(o)),e(i.options.event),t.additionalEvent&&e(t.additionalEvent),o>=pe&&e(i.options.event+J(o))},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=ve)},canEmit:function(){for(var t=0;ts?Lt:At,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?zt:0>r?Ft:Bt,i=r!=this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},attrTest:function(t){return tt.prototype.attrTest.call(this,t)&&(this.state&ue||!(this.state&ue)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Q(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),c(it,tt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&ue)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),c(ot,K,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[se]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancee.time;if(this._input=t,!o||!i||t.eventType&(It|Nt)&&!n)this.reset();else if(t.eventType&Et)this.reset(),this._timer=h(function(){this.state=fe,this.tryEmit()},e.time,this);else if(t.eventType&It)return fe;return ve},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===fe&&(t&&t.eventType&It?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=gt(),this.manager.emit(this.options.event,this._input)))}}),c(nt,tt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&ue)}}),c(st,tt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:Rt|jt,pointers:1},getTouchAction:function(){return et.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Rt|jt)?e=t.overallVelocity:i&Rt?e=t.overallVelocityX:i&jt&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&vt(e)>this.options.velocity&&t.eventType&It},emit:function(t){var e=Q(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),c(rt,K,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[re]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distanceu,c=r||null===n?n:h+(n-h)*i,v=r||null===s?s:l+(s-l)*i;g=a._applyRange(c,v),d.updateHiddenDates(a.options.moment,a.body,a.options.hiddenDates),m=m||g,g&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end),byUser:o}),r?m&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end),byUser:o}):a.animationTimer=setTimeout(b,20)}};return v()}var g=this._applyRange(n,s);if(d.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),g){var y={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",y),this.body.emitter.emit("rangechanged",y)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i,o=null!=t?r.convert(t,"Date").valueOf():this.start,n=null!=e?r.convert(e,"Date").valueOf():this.end,s=null!=this.options.max?r.convert(this.options.max,"Date").valueOf():null,a=null!=this.options.min?r.convert(this.options.min,"Date").valueOf():null;if(isNaN(o)||null===o)throw new Error('Invalid start "'+t+'"');if(isNaN(n)||null===n)throw new Error('Invalid end "'+e+'"');if(o>n&&(n=o),null!==a&&a>o&&(i=a-o,o+=i,n+=i,null!=s&&n>s&&(n=s)),null!==s&&n>s&&(i=n-s,o-=i,n-=i,null!=a&&a>o&&(o=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>n-o&&(this.end-this.start===h&&o>this.start&&nd&&(d=0),n-o>d&&(this.end-this.start===d&&othis.end?(o=this.start,n=this.end):(i=n-o-d,o+=i/2,n-=i/2))}var l=this.start!=o||this.end!=n;return o>=this.start&&o<=this.end||n>=this.start&&n<=this.end||this.start>=o&&this.start<=n||this.end>=o&&this.end<=n||this.body.emitter.emit("checkRangedItems"),this.start=o,this.end=n,l},o.prototype.getRange=function(){return{start:this.start,end:this.end}},o.prototype.conversion=function(t,e){return o.conversion(this.start,this.end,t,e)},o.conversion=function(t,e,i,o){return void 0===o&&(o=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-o)}:{offset:0,scale:1}},o.prototype._onDragStart=function(t){this.deltaDifference=0,this.previousDelta=0,this.options.moveable&&this._isInsideRange(t)&&this.props.touch.allowDragging&&(this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.dragging=!0,this.body.dom.root&&(this.body.dom.root.style.cursor="move"))},o.prototype._onDrag=function(t){if(this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;n(e);var i="horizontal"==e?t.deltaX:t.deltaY;i-=this.deltaDifference;var o=this.props.touch.end-this.props.touch.start,s=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);o-=s;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*o,h=this.props.touch.start+a,l=this.props.touch.end+a,u=d.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),c=d.snapAwayFromHidden(this.body.hiddenDates,l,this.previousDelta-i,!0);if(u!=h||c!=l)return this.deltaDifference+=i,this.props.touch.start=u,this.props.touch.end=c,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,l);var p=new Date(this.start),f=new Date(this.end);this.body.emitter.emit("rangechange",{start:p,end:f,byUser:!0})}},o.prototype._onDragEnd=function(t){this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.dragging=!1,this.body.dom.root&&(this.body.dom.root.style.cursor="auto"),this.body.emitter.emit("rangechanged",{start:new Date(this.start),end:new Date(this.end),byUser:!0}))},o.prototype._onMouseWheel=function(t){if(this.options.zoomable&&this.options.moveable&&this._isInsideRange(t)&&(!this.options.zoomKey||t[this.options.zoomKey])){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=0>e?1-e/5:1/(1+e/5);var o=s({x:t.clientX,y:t.clientY},this.body.dom.center),n=this._pointerToDate(o);this.zoom(i,n,e)}t.preventDefault()}},o.prototype._onTouch=function(t){this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.allowDragging=!0,this.props.touch.center=null,this.scaleOffset=0,this.deltaDifference=0},o.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable){this.props.touch.allowDragging=!1,this.props.touch.center||(this.props.touch.center=s(t.center,this.body.dom.center));var e=1/(t.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,i),r=o-n,a=i-n+(this.props.touch.start-(i-n))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=0>=1-e,this.endToFront=0>=e-1;var l=d.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=d.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(l!=a||u!=h)&&(this.props.touch.start=l,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=l,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._isInsideRange=function(t){var e=t.center?t.center.x:t.clientX,i=e-r.getAbsoluteLeft(this.body.dom.centerContainer),o=this.body.util.toTime(i);return o>=this.start&&o<=this.end},o.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(n(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var o=this.body.domProps.center.height;return e=this.conversion(o),t.y/e.scale+e.offset},o.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,e),s=o-n,r=e-n+(this.start-(e-n))*t,a=e+s+(this.end-(e+s))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=d.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),l=d.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||l!=a)&&(r=h,a=l),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},o.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,o=this.end+e*t;this.start=i,this.end=o},o.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,o=this.start-i,n=this.end-i;this.setRange(o,n)},t.exports=o},function(t,e,i){i(20);e.onTouch=function(t,e){e.inputHandler=function(t){t.isFirst&&e(t)},t.on("hammer.input",e.inputHandler)},e.onRelease=function(t,e){return e.inputHandler=function(t){t.isFinal&&e(t)},t.on("hammer.input",e.inputHandler)},e.offTouch=function(t,e){t.off("hammer.input",e.inputHandler)},e.offRelease=e.offTouch},function(t,e){function i(t,e){this.options=null,this.props=null}i.prototype.setOptions=function(t){t&&util.extend(this.options,t)},i.prototype.redraw=function(){return!1},i.prototype.destroy=function(){},i.prototype._isResized=function(){var t=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;return this.props._previousWidth=this.props.width,this.props._previousHeight=this.props.height,t},t.exports=i},function(t,e){e.convertHiddenOptions=function(t,i,o){if(o&&!Array.isArray(o))return e.convertHiddenOptions(t,i,[o]);if(i.hiddenDates=[],o&&1==Array.isArray(o)){for(var n=0;n=4*a){var c=0,p=s.clone();switch(o[h].repeat){case"daily":d.day()!=l.day()&&(c=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-c,"days"),p.add(1,"weeks");break;case"weekly":var f=l.diff(d,"days"),m=d.day();d.date(n.date()),d.month(n.month()),d.year(n.year()),l=d.clone(),d.day(m),l.day(m),l.add(f,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),p.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(c=1),d.month(n.month()),d.year(n.year()),d.subtract(1,"months"),l.month(n.month()),l.year(n.year()),l.subtract(1,"months"),l.add(c,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(c=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(c,"years"),p.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}for(;p>d;)switch(i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()}),o[h].repeat){case"daily":d.add(1,"days"),l.add(1,"days");break;case"weekly":d.add(1,"weeks"),l.add(1,"weeks");break;case"monthly":d.add(1,"months"),l.add(1,"months");break;case"yearly":d.add(1,"y"),l.add(1,"y");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()})}}e.removeDuplicates(i);var v=e.isHidden(i.range.start,i.hiddenDates),g=e.isHidden(i.range.end,i.hiddenDates),y=i.range.start,b=i.range.end;1==v.hidden&&(y=1==i.range.startToFront?v.startDate-1:v.endDate+1),1==g.hidden&&(b=1==i.range.endToFront?g.startDate-1:g.endDate+1),(1==v.hidden||1==g.hidden)&&i.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],o=0;o=e[o].start&&e[n].end<=e[o].end?e[n].remove=!0:e[n].start>=e[o].start&&e[n].start<=e[o].end?(e[o].end=e[n].end,e[n].remove=!0):e[n].end>=e[o].start&&e[n].end<=e[o].end&&(e[o].start=e[n].start,e[n].remove=!0));for(var o=0;o=r&&a>n){o=!0;break}}if(1==o&&n=e&&i>r&&(o+=r-s)}return o},e.correctTimeForHidden=function(t,i,o,n){return n=t(n).toDate().valueOf(),n-=e.getHiddenDurationBefore(t,i,o,n)},e.getHiddenDurationBefore=function(t,e,i,o){var n=0;o=t(o).toDate().valueOf();for(var s=0;s=i.start&&a=a&&(n+=a-r)}return n},e.getAccumulatedHiddenDuration=function(t,e,i){for(var o=0,n=0,s=e.start,r=0;r=e.start&&h=i)break;o+=h-a}}return o},e.snapAwayFromHidden=function(t,i,o,n){var s=e.isHidden(i,t);return 1==s.hidden?0>o?1==n?s.startDate-(s.endDate-i)-1:s.startDate-1:1==n?s.endDate+(i-s.startDate)+1:s.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=o&&n>t)return{hidden:!0,startDate:o,endDate:n}}return{hidden:!1,startDate:o,endDate:n}}},function(t,e,i){function o(){}var n=i(12),s=i(20),r=i(24),a=i(1),h=(i(8),i(10),i(23),i(28),i(38)),d=i(39),l=i(26),u=i(41);n(o.prototype),o.prototype._create=function(t){function e(t){i.isActive()&&i.emit("mousewheel",t)}this.dom={},this.options={},this.dom.container=t,this.dom.root=document.createElement("div"),this.dom.background=document.createElement("div"), +this.dom.backgroundVertical=document.createElement("div"),this.dom.backgroundHorizontal=document.createElement("div"),this.dom.centerContainer=document.createElement("div"),this.dom.leftContainer=document.createElement("div"),this.dom.rightContainer=document.createElement("div"),this.dom.center=document.createElement("div"),this.dom.left=document.createElement("div"),this.dom.right=document.createElement("div"),this.dom.top=document.createElement("div"),this.dom.bottom=document.createElement("div"),this.dom.shadowTop=document.createElement("div"),this.dom.shadowBottom=document.createElement("div"),this.dom.shadowTopLeft=document.createElement("div"),this.dom.shadowBottomLeft=document.createElement("div"),this.dom.shadowTopRight=document.createElement("div"),this.dom.shadowBottomRight=document.createElement("div"),this.dom.root.className="vis-timeline",this.dom.background.className="vis-panel vis-background",this.dom.backgroundVertical.className="vis-panel vis-background vis-vertical",this.dom.backgroundHorizontal.className="vis-panel vis-background vis-horizontal",this.dom.centerContainer.className="vis-panel vis-center",this.dom.leftContainer.className="vis-panel vis-left",this.dom.rightContainer.className="vis-panel vis-right",this.dom.top.className="vis-panel vis-top",this.dom.bottom.className="vis-panel vis-bottom",this.dom.left.className="vis-content",this.dom.center.className="vis-content",this.dom.right.className="vis-content",this.dom.shadowTop.className="vis-shadow vis-top",this.dom.shadowBottom.className="vis-shadow vis-bottom",this.dom.shadowTopLeft.className="vis-shadow vis-top",this.dom.shadowBottomLeft.className="vis-shadow vis-bottom",this.dom.shadowTopRight.className="vis-shadow vis-top",this.dom.shadowBottomRight.className="vis-shadow vis-bottom",this.dom.root.appendChild(this.dom.background),this.dom.root.appendChild(this.dom.backgroundVertical),this.dom.root.appendChild(this.dom.backgroundHorizontal),this.dom.root.appendChild(this.dom.centerContainer),this.dom.root.appendChild(this.dom.leftContainer),this.dom.root.appendChild(this.dom.rightContainer),this.dom.root.appendChild(this.dom.top),this.dom.root.appendChild(this.dom.bottom),this.dom.centerContainer.appendChild(this.dom.center),this.dom.leftContainer.appendChild(this.dom.left),this.dom.rightContainer.appendChild(this.dom.right),this.dom.centerContainer.appendChild(this.dom.shadowTop),this.dom.centerContainer.appendChild(this.dom.shadowBottom),this.dom.leftContainer.appendChild(this.dom.shadowTopLeft),this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft),this.dom.rightContainer.appendChild(this.dom.shadowTopRight),this.dom.rightContainer.appendChild(this.dom.shadowBottomRight),this.on("rangechange",function(){this.initialDrawDone===!0&&this._redraw()}.bind(this)),this.on("touch",this._onTouch.bind(this)),this.on("pan",this._onDrag.bind(this));var i=this;this.on("_change",function(t){t&&1==t.queue?i._redrawTimer||(i._redrawTimer=setTimeout(function(){i._redrawTimer=null,i._redraw()},0)):i._redraw()}),this.hammer=new s(this.dom.root),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),this.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,this.initialDrawDone=!1,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates","locale","locales","moment","throttleRedraw"];if(a.selectiveExtend(e,this.options,t),this.options.orientation={item:void 0,axis:void 0},"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),"hiddenDates"in this.options&&l.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),"configure"in t){this.configurator||(this.configurator=this._createConfigurator()),this.configurator.setOptions(t.configure);var n=a.deepExtend({},this.options);this.components.forEach(function(t){a.deepExtend(n,t.options)}),this.configurator.setModuleOptions({global:n})}this._origRedraw?this._redraw():(this._origRedraw=this._redraw.bind(this),this._redraw=a.throttle(this._origRedraw,this.options.throttleRedraw))},o.prototype.isActive=function(){return!this.activator||this.activator.active},o.prototype.destroy=function(){this.setItems(null),this.setGroups(null),this.off(),this._stopAutoResize(),this.dom.root.parentNode&&this.dom.root.parentNode.removeChild(this.dom.root),this.dom=null,this.activator&&(this.activator.destroy(),delete this.activator);for(var t in this.listeners)this.listeners.hasOwnProperty(t)&&delete this.listeners[t];this.listeners=null,this.hammer=null,this.components.forEach(function(t){return t.destroy()}),this.body=null},o.prototype.setCustomTime=function(t,e){var i=this.customTimes.filter(function(t){return e===t.options.id});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));i.length>0&&i[0].setCustomTime(t)},o.prototype.getCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));return e[0].getCustomTime()},o.prototype.setCustomTimeTitle=function(t,e){var i=this.customTimes.filter(function(t){return t.options.id===e});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));return i.length>0?i[0].setCustomTitle(t):void 0},o.prototype.getEventProperties=function(t){return{event:t}},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?a.convert(t,"Date").valueOf():new Date,o=this.customTimes.some(function(t){return t.options.id===e});if(o)throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var n=new u(this.body,a.extend({},this.options,{time:i,id:e}));return this.customTimes.push(n),this.components.push(n),this._redraw(),e},o.prototype.removeCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));e.forEach(function(t){this.customTimes.splice(this.customTimes.indexOf(t),1),this.components.splice(this.components.indexOf(t),1),t.destroy()}.bind(this))},o.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},o.prototype.fit=function(t){var e=this.getDataRange();if(null!==e.min||null!==e.max){var i=e.max-e.min,o=new Date(e.min.valueOf()-.01*i),n=new Date(e.max.valueOf()+.01*i),s=t&&void 0!==t.animation?t.animation:!0;this.range.setRange(o,n,s)}},o.prototype.getDataRange=function(){throw new Error("Cannot invoke abstract method getDataRange")},o.prototype.setWindow=function(t,e,i){var o;if(1==arguments.length){var n=arguments[0];o=void 0!==n.animation?n.animation:!0,this.range.setRange(n.start,n.end,o)}else o=i&&void 0!==i.animation?i.animation:!0,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=a.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(n,s,r)},o.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},o.prototype.redraw=function(){this._redraw()},o.prototype._redraw=function(){this.redrawCount++;var t=!1,e=this.options,i=this.props,o=this.dom;if(o&&o.container&&0!=o.container.clientWidth){l.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==e.orientation?(a.addClassName(o.root,"vis-top"),a.removeClassName(o.root,"vis-bottom")):(a.removeClassName(o.root,"vis-top"),a.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=a.option.asSize(e.maxHeight,""),o.root.style.minHeight=a.option.asSize(e.minHeight,""),o.root.style.width=a.option.asSize(e.width,""),i.border.left=(o.centerContainer.offsetWidth-o.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(o.centerContainer.offsetHeight-o.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var n=o.root.offsetHeight-o.root.clientHeight,s=o.root.offsetWidth-o.root.clientWidth;0===o.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===o.root.clientHeight&&(s=n),i.center.height=o.center.offsetHeight,i.left.height=o.left.offsetHeight,i.right.height=o.right.offsetHeight,i.top.height=o.top.clientHeight||-i.border.top,i.bottom.height=o.bottom.clientHeight||-i.border.bottom;var r=Math.max(i.left.height,i.center.height,i.right.height),h=i.top.height+r+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=a.option.asSize(e.height,h+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var d=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=d,i.leftContainer.height=d,i.rightContainer.height=i.leftContainer.height,i.root.width=o.root.offsetWidth,i.background.width=i.root.width-s,i.left.width=o.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=o.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var u=i.root.width-i.left.width-i.right.width-s;i.center.width=u,i.centerContainer.width=u,i.top.width=u,i.bottom.width=u,o.background.style.height=i.background.height+"px",o.backgroundVertical.style.height=i.background.height+"px",o.backgroundHorizontal.style.height=i.centerContainer.height+"px",o.centerContainer.style.height=i.centerContainer.height+"px",o.leftContainer.style.height=i.leftContainer.height+"px",o.rightContainer.style.height=i.rightContainer.height+"px",o.background.style.width=i.background.width+"px",o.backgroundVertical.style.width=i.centerContainer.width+"px",o.backgroundHorizontal.style.width=i.background.width+"px",o.centerContainer.style.width=i.center.width+"px",o.top.style.width=i.top.width+"px",o.bottom.style.width=i.bottom.width+"px",o.background.style.left="0",o.background.style.top="0",o.backgroundVertical.style.left=i.left.width+i.border.left+"px",o.backgroundVertical.style.top="0",o.backgroundHorizontal.style.left="0",o.backgroundHorizontal.style.top=i.top.height+"px",o.centerContainer.style.left=i.left.width+"px",o.centerContainer.style.top=i.top.height+"px",o.leftContainer.style.left="0",o.leftContainer.style.top=i.top.height+"px",o.rightContainer.style.left=i.left.width+i.center.width+"px",o.rightContainer.style.top=i.top.height+"px",o.top.style.left=i.left.width+"px",o.top.style.top="0",o.bottom.style.left=i.left.width+"px",o.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var c=this.props.scrollTop;"top"!=e.orientation.item&&(c+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),o.center.style.left="0",o.center.style.top=c+"px",o.left.style.left="0",o.left.style.top=c+"px",o.right.style.left="0",o.right.style.top=c+"px";var p=0==this.props.scrollTop?"hidden":"",f=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";o.shadowTop.style.visibility=p,o.shadowBottom.style.visibility=f,o.shadowTopLeft.style.visibility=p,o.shadowBottomLeft.style.visibility=f,o.shadowTopRight.style.visibility=p,o.shadowBottomRight.style.visibility=f,this.components.forEach(function(e){t=e.redraw()||t});var m=5;if(t){if(this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTope;e++)o=this.selection[e],n=this.items[o],n&&n.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)o=t[e],n=this.items[o],n&&(this.selection.push(o),n.select())},o.prototype.getSelection=function(){return this.selection.concat([])},o.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),o=[];for(var n in this.groups)if(this.groups.hasOwnProperty(n))for(var s=this.groups[n],r=s.visibleItems,a=0;ae&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;o>i;i++)if(e[i]==t){e.splice(i,1);break}},o.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=s.option.asSize,o=this.options,n=o.orientation.item,r=!1,a=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top,this.props.left=this.body.domProps.left.width+this.body.domProps.border.left,a.className="vis-itemset",r=this._orderGroups()||r;var h=e.end-e.start,d=h!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;d&&(this.stackDirty=!0),this.lastVisibleInterval=h,this.props.lastWidth=this.props.width;var l=this.stackDirty,u=this._firstGroup(),c={item:t.item,axis:t.axis},p={item:t.item,axis:t.item.vertical/2},f=0,m=t.axis+t.item.vertical;return this.groups[g].redraw(e,p,l),s.forEach(this.groups,function(t){var i=t==u?c:p,o=t.redraw(e,i,l);r=o||r,f+=t.height}),f=Math.max(f,m),this.stackDirty=!1,a.style.height=i(f),this.props.width=a.offsetWidth,this.props.height=f,this.dom.axis.style.top=i("top"==n?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height),this.dom.axis.style.left="0",r=this._isResized()||r},o.prototype._firstGroup=function(){var t="top"==this.options.orientation.item?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[v];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[v];this.groups[g];if(this.groupsData){if(i){i.hide(),delete this.groups[v];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)||t.hide()}}}else if(!i){var s=null,r=null;i=new l(s,r,this),this.groups[v]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},o.prototype.getLabelSet=function(){return this.dom.labelSet},o.prototype.setItems=function(t){var e,i=this,o=this.itemsData;if(t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(o&&(s.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;s.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,n)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}this.body.emitter.emit("_change",{queue:!0})},o.prototype.getItems=function(){return this.itemsData},o.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(s.forEach(this.groupListeners,function(t,e){i.groupsData.off(e,t)}),e=this.groupsData.getIds(),this.groupsData=null,this._onRemoveGroups(e)),t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.groupsData=t}else this.groupsData=null;if(this.groupsData){var o=this.id;s.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,o)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("_change",{queue:!0})},o.prototype.getGroups=function(){return this.groupsData},o.prototype.removeItem=function(t){var e=this.itemsData.get(t),i=this.itemsData.getDataSet();e&&this.options.onRemove(e,function(e){e&&i.remove(t)})},o.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},o.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:v},o.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i,n=e.itemsData.get(t,e.itemOptions),s=e.items[t],r=e._getType(n),a=o.types[r];if(s&&(a&&s instanceof a?e._updateItem(s,n):(i=s.selected,e._removeItem(s),s=null)),!s){if(!a)throw"rangeoverflow"==r?new TypeError('Item type "rangeoverflow" is deprecated. Use css styling instead: .vis-item.vis-range .vis-item-content {overflow: visible;}'):new TypeError('Unknown item type "'+r+'"');s=new a(n,e.conversion,e.options),s.id=t,e._addItem(s),i&&(this.selection.push(t),s.select())}}.bind(this)),this._order(),this.stackDirty=!0,this.body.emitter.emit("_change",{queue:!0})},o.prototype._onAdd=o.prototype._onUpdate,o.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var o=i.items[t];o&&(e++,i._removeItem(o))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("_change",{queue:!0}))},o.prototype._order=function(){s.forEach(this.groups,function(t){t.order()})},o.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},o.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),o=e.groups[t];if(o)o.setData(i);else{if(t==v||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);s.extend(n,{height:null}),o=new l(t,i,e),e.groups[t]=o;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&o.add(a)}o.order(),o.show()}}),this.body.emitter.emit("_change",{queue:!0})},o.prototype._onRemoveGroups=function(t){var e=this.groups;t.forEach(function(t){var i=e[t];i&&(i.hide(),delete e[t])}),this.markDirty(),this.body.emitter.emit("_change",{queue:!0})},o.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!s.equalArray(t,this.groupIds);if(e){var i=this.groups;t.forEach(function(t){i[t].hide()}),t.forEach(function(t){i[t].show()}),this.groupIds=t}return e}return!1},o.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},o.prototype._updateItem=function(t,e){var i=t.data.group,o=t.data.subgroup;if(t.setData(e),i!=t.data.group||o!=t.data.subgroup){var n=this.groups[i];n&&n.remove(t);var s=this._getGroupId(t.data),r=this.groups[s];r&&r.add(t)}},o.prototype._removeItem=function(t){t.hide(),delete this.items[t.id];var e=this.selection.indexOf(t.id);-1!=e&&this.selection.splice(e,1),t.parent&&t.parent.remove(t)},o.prototype._constructByEndArray=function(t){for(var e=[],i=0;in+r)return}else{var a=e.height;if(n+a-r>o)return}}if(e&&e!=this.groupTouchParams.group){var h=this.groupsData,d=h.get(e.groupId),l=h.get(this.groupTouchParams.group.groupId);l&&d&&(this.options.groupOrderSwap(l,d,this.groupsData),this.groupsData.update(l),this.groupsData.update(d));var u=this.groupsData.getIds({order:this.options.groupOrder});if(!s.equalArray(u,this.groupTouchParams.originalOrder))for(var h=this.groupsData,c=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(c.length,u.length),m=0,v=0,g=0;f>m;){for(;f>m+v&&f>m+g&&u[m+v]==c[m+g];)m++;if(m+v>=f)break;if(u[m+v]!=p)if(c[m+g]!=p){var y=u.indexOf(c[m+g]),b=h.get(u[m+v]),_=h.get(c[m+g]);this.options.groupOrderSwap(b,_,h),h.update(b),h.update(_);var w=u[m+v];u[m+v]=c[m+g],u[y]=w,m++}else g=1;else v=1}}}},o.prototype._onGroupDragEnd=function(t){if(this.options.groupEditable.order&&this.groupTouchParams.group){t.stopPropagation();var e=this,i=e.groupTouchParams.group.groupId,o=e.groupsData.getDataSet(),n=s.extend({},o.get(i));e.options.onMoveGroup(n,function(t){if(t)t[o._fieldId]=i,o.update(t);else{var n=o.getIds({order:e.options.groupOrder});if(!s.equalArray(n,e.groupTouchParams.originalOrder))for(var r=e.groupTouchParams.originalOrder,a=Math.min(r.length,n.length),h=0;a>h;){for(;a>h&&n[h]==r[h];)h++;if(h>=a)break;var d=n.indexOf(r[h]),l=o.get(n[h]),u=o.get(r[h]);e.options.groupOrderSwap(l,u,o),groupsData.update(l),groupsData.update(u);var c=n[h];n[h]=r[h],n[d]=c,h++}}}),e.body.emitter.emit("groupDragged",{groupId:i})}},o.prototype._onSelectItem=function(t){if(this.options.selectable){var e=t.srcEvent&&(t.srcEvent.ctrlKey||t.srcEvent.metaKey),i=t.srcEvent&&t.srcEvent.shiftKey;if(e||i)return void this._onMultiSelectItem(t);var o=this.getSelection(),n=this.itemFromTarget(t),s=n?[n.id]:[];this.setSelection(s);var r=this.getSelection();(r.length>0||o.length>0)&&this.body.emitter.emit("select",{items:r,event:t})}},o.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,o=this.itemFromTarget(t);if(o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=s.getAbsoluteLeft(this.dom.frame),a=t.center.x-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),u={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(a+this.props.width/5);u.end=i?i(c,d,l):c}u[this.itemsData._fieldId]=s.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),u=this._cloneItemData(u),this.options.onAdd(u,function(t){t&&e.itemsData.getDataSet().add(t)})}}},o.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e=this.itemFromTarget(t);if(e){var i=this.options.multiselect?this.getSelection():[],n=t.srcEvent&&t.srcEvent.shiftKey||!1;if(n&&this.options.multiselect){var s=this.itemsData.get(e.id).group,r=void 0;this.options.multiselectPerGroup&&i.length>0&&(r=this.itemsData.get(i[0]).group),this.options.multiselectPerGroup&&void 0!=r&&r!=s||i.push(e.id);var a=o._getItemRange(this.itemsData.get(i,this.itemOptions));if(!this.options.multiselectPerGroup||r==s){i=[];for(var h in this.items)if(this.items.hasOwnProperty(h)){var d=this.items[h],l=d.data.start,u=void 0!==d.data.end?d.data.end:l;!(l>=a.min&&u<=a.max)||this.options.multiselectPerGroup&&r!=this.itemsData.get(d.id).group||d instanceof m||i.push(d.id)}}}else{var c=i.indexOf(e.id);-1==c?i.push(e.id):i.splice(c,1)}this.setSelection(i),this.body.emitter.emit("select",{items:this.getSelection(),event:t})}}},o._getItemRange=function(t){var e=null,i=null;return t.forEach(function(t){(null==i||t.starte)&&(e=t.end):(null==e||t.start>e)&&(e=t.start)}),{min:i,max:e}},o.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},o.prototype.groupFromTarget=function(t){for(var e=t.center?t.center.y:t.clientY,i=0;ia&&ea)return n}else if(0===i&&e0?t.step:1,this.autoScale=!1)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,o=864e5,n=36e5,s=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*o>t&&(this.scale="day",this.step=5),2*o>t&&(this.scale="day",this.step=2),o>t&&(this.scale="day",this.step=1),o/2>t&&(this.scale="weekday",this.step=1),4*n>t&&(this.scale="hour",this.step=4),n>t&&(this.scale="hour",this.step=1),15*s>t&&(this.scale="minute",this.step=15),10*s>t&&(this.scale="minute",this.step=10),5*s>t&&(this.scale="minute",this.step=5),s>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},o.snap=function(t,e,i){var o=n(t);if("year"==e){var s=o.year()+Math.round(o.month()/12);o.year(Math.round(s/i)*i),o.month(0),o.date(0),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("month"==e)o.date()>15?(o.date(1),o.add(1,"month")):o.date(1),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.hours(24*Math.round(o.hours()/24));break;default:o.hours(12*Math.round(o.hours()/12))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.hours(12*Math.round(o.hours()/12));break;default:o.hours(6*Math.round(o.hours()/6))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("hour"==e){switch(i){case 4:o.minutes(60*Math.round(o.minutes()/60));break;default:o.minutes(30*Math.round(o.minutes()/30))}o.seconds(0),o.milliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.minutes(5*Math.round(o.minutes()/5)),o.seconds(0);break;case 5:o.seconds(60*Math.round(o.seconds()/60));break;default:o.seconds(30*Math.round(o.seconds()/30))}o.milliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.seconds(5*Math.round(o.seconds()/5)),o.milliseconds(0);break;case 5:o.milliseconds(1e3*Math.round(o.milliseconds()/1e3));break;default:o.milliseconds(500*Math.round(o.milliseconds()/500))}else if("millisecond"==e){var r=i>5?i/2:1;o.milliseconds(Math.round(o.milliseconds()/r)*r)}return o},o.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}var t=this.moment(this.current);switch(this.scale){case"millisecond":return 0==t.milliseconds();case"second":return 0==t.seconds();case"minute":return 0==t.hours()&&0==t.minutes();case"hour":return 0==t.hours();case"weekday":case"day":return 1==t.date();case"month":return 0==t.month();case"year":return!1;default:return!1}},o.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/h%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(new Date,"day")?" vis-today":t.isSame(s().add(1,"day"),"day")?" vis-tomorrow":t.isSame(s().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(new Date,"week")?" vis-current-week":""}function o(t){return t.isSame(new Date,"month")?" vis-current-month":""}function n(t){return t.isSame(new Date,"year")?" vis-current-year":""}var s=this.moment,r=this.moment(this.current),a=r.locale?r.locale("en"):r.lang("en"),h=this.step;switch(this.scale){case"millisecond":return t(a.milliseconds()).trim();case"second":return t(a.seconds()).trim();case"minute":return t(a.minutes()).trim();case"hour":var d=a.hours();return 4==this.step&&(d=d+"-h"+(d+4)),"vis-h"+d+e(a)+t(a.hours());case"weekday":return"vis-"+a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),u=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+u+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var c=a.year();return"vis-year"+c+n(a)+t(c);default:return""}},t.exports=o},function(t,e,i){function o(t,e,i){this.groupId=t,this.subgroups={},this.subgroupIndex=0,this.subgroupOrderer=e&&e.subgroupOrder,this.itemSet=i,this.dom={},this.props={label:{width:0,height:0}},this.className=null,this.items={},this.visibleItems=[],this.orderedItems={byStart:[],byEnd:[]},this.checkRangedItems=!1;var o=this;this.itemSet.body.emitter.on("checkRangedItems",function(){o.checkRangedItems=!0}),this._create(),this.setData(e)}var n=i(1),s=i(31);i(32);o.prototype._create=function(){var t=document.createElement("div");this.itemSet.options.groupEditable.order?t.className="vis-label draggable":t.className="vis-label",this.dom.label=t;var e=document.createElement("div");e.className="vis-inner",t.appendChild(e),this.dom.inner=e;var i=document.createElement("div");i.className="vis-group",i["timeline-group"]=this,this.dom.foreground=i,this.dom.background=document.createElement("div"),this.dom.background.className="vis-group",this.dom.axis=document.createElement("div"),this.dom.axis.className="vis-group",this.dom.marker=document.createElement("div"),this.dom.marker.style.visibility="hidden",this.dom.marker.innerHTML="?",this.dom.background.appendChild(this.dom.marker)},o.prototype.setData=function(t){var e;if(e=this.itemSet.options&&this.itemSet.options.groupTemplate?this.itemSet.options.groupTemplate(t):t&&t.content,e instanceof Element){for(this.dom.inner.appendChild(e);this.dom.inner.firstChild;)this.dom.inner.removeChild(this.dom.inner.firstChild);this.dom.inner.appendChild(e)}else void 0!==e&&null!==e?this.dom.inner.innerHTML=e:this.dom.inner.innerHTML=this.groupId||"";this.dom.label.title=t&&t.title||"",this.dom.inner.firstChild?n.removeClassName(this.dom.inner,"vis-hidden"):n.addClassName(this.dom.inner,"vis-hidden");var i=t&&t.className||null;i!=this.className&&(this.className&&(n.removeClassName(this.dom.label,this.className),n.removeClassName(this.dom.foreground,this.className),n.removeClassName(this.dom.background,this.className),n.removeClassName(this.dom.axis,this.className)),n.addClassName(this.dom.label,i),n.addClassName(this.dom.foreground,i),n.addClassName(this.dom.background,i),n.addClassName(this.dom.axis,i),this.className=i),this.style&&(n.removeCssText(this.dom.label,this.style),this.style=null),t&&t.style&&(n.addCssText(this.dom.label,t.style),this.style=t.style)},o.prototype.getLabelWidth=function(){return this.props.label.width},o.prototype.redraw=function(t,e,i){var o=!1,r=this.dom.marker.clientHeight;if(r!=this.lastMarkerHeight&&(this.lastMarkerHeight=r,n.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()}),i=!0),this._calculateSubGroupHeights(),"function"==typeof this.itemSet.options.order){if(i){var a=this,h=!1;n.forEach(this.items,function(t){t.displayed||(t.redraw(),a.visibleItems.push(t)),t.repositionX(h)});var d=this.orderedItems.byStart.slice().sort(function(t,e){return a.itemSet.options.order(t.data,e.data)});s.stack(d,e,!0)}this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t)}else this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t),this.itemSet.options.stack?s.stack(this.visibleItems,e,i):s.nostack(this.visibleItems,e,this.subgroups);var l=this._calculateHeight(e),u=this.dom.foreground;this.top=u.offsetTop,this.left=u.offsetLeft,this.width=u.offsetWidth,o=n.updateProperty(this,"height",l)||o,o=n.updateProperty(this.props.label,"width",this.dom.inner.clientWidth)||o,o=n.updateProperty(this.props.label,"height",this.dom.inner.clientHeight)||o,this.dom.background.style.height=l+"px",this.dom.foreground.style.height=l+"px",this.dom.label.style.height=l+"px";for(var c=0,p=this.visibleItems.length;p>c;c++){var f=this.visibleItems[c];f.repositionY(e)}return o},o.prototype._calculateSubGroupHeights=function(){if(Object.keys(this.subgroups).length>0){var t=this;this.resetSubgroups(),n.forEach(this.visibleItems,function(e){void 0!==e.data.subgroup&&(t.subgroups[e.data.subgroup].height=Math.max(t.subgroups[e.data.subgroup].height,e.height),t.subgroups[e.data.subgroup].visible=!0)})}},o.prototype._calculateHeight=function(t){var e,i=this.visibleItems;if(i.length>0){var o=i[0].top,s=i[0].top+i[0].height;if(n.forEach(i,function(t){o=Math.min(o,t.top),s=Math.max(s,t.top+t.height)}),o>t.axis){var r=o-t.axis;s-=r,n.forEach(i,function(t){t.top-=r})}e=s+t.item.vertical/2}else e=0;return e=Math.max(e,this.props.label.height)},o.prototype.show=function(){this.dom.label.parentNode||this.itemSet.dom.labelSet.appendChild(this.dom.label),this.dom.foreground.parentNode||this.itemSet.dom.foreground.appendChild(this.dom.foreground),this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background),this.dom.axis.parentNode||this.itemSet.dom.axis.appendChild(this.dom.axis)},o.prototype.hide=function(){var t=this.dom.label;t.parentNode&&t.parentNode.removeChild(t);var e=this.dom.foreground;e.parentNode&&e.parentNode.removeChild(e);var i=this.dom.background;i.parentNode&&i.parentNode.removeChild(i);var o=this.dom.axis;o.parentNode&&o.parentNode.removeChild(o)},o.prototype.add=function(t){if(this.items[t.id]=t,t.setParent(this),void 0!==t.data.subgroup&&(void 0===this.subgroups[t.data.subgroup]&&(this.subgroups[t.data.subgroup]={height:0,visible:!1,index:this.subgroupIndex,items:[]},this.subgroupIndex++),this.subgroups[t.data.subgroup].items.push(t)),this.orderSubgroups(),-1==this.visibleItems.indexOf(t)){var e=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,e)}},o.prototype.orderSubgroups=function(){if(void 0!==this.subgroupOrderer){var t=[];if("string"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push({subgroup:e,sortField:this.subgroups[e].items[0].data[this.subgroupOrderer]});t.sort(function(t,e){return t.sortField-e.sortField})}else if("function"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push(this.subgroups[e].items[0].data);t.sort(this.subgroupOrderer)}if(t.length>0)for(var i=0;it?-1:l>=t?0:1};if(e.length>0)for(s=0;sl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,s=0;sl})}for(s=0;s=0&&(s=e[r],!n(s));r--)void 0===o[s.id]&&(o[s.id]=!0,i.push(s));for(r=t+1;rn;n++)t[n].top=null;for(n=0,s=t.length;s>n;n++){var r=t[n];if(r.stack&&null===r.top){r.top=i.axis;do{for(var a=null,h=0,d=t.length;d>h;h++){var l=t[h];if(null!==l.top&&l!==r&&l.stack&&e.collision(r,l,i.item)){a=l;break}}null!=a&&(r.top=a.top+a.height+i.item.vertical)}while(a)}}},e.nostack=function(t,e,i){var o,n,s;for(o=0,n=t.length;n>o;o++)if(void 0!==t[o].data.subgroup){s=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-o.vertical+ie.top}},function(t,e,i){function o(t,e,i){if(this.props={content:{width:0}},this.overflow=!1,t){if(void 0==t.start)throw new Error('Property "start" missing in item '+t.id);if(void 0==t.end)throw new Error('Property "end" missing in item '+t.id)}n.call(this,t,e,i)}var n=(i(20),i(33));o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-range",o.prototype.isVisible=function(t){return this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.options.editable.updateTime||this.options.editable.updateGroup||this.editable===!0)&&this.editable!==!1,o=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"")+(i?" vis-editable":" vis-readonly");t.box.className=this.baseClassName+o,this.overflow="hidden"!==window.getComputedStyle(t.frame).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},o.prototype.show=function(){this.displayed||this.redraw()},o.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},o.prototype.repositionX=function(t){var e,i,o=this.parent.width,n=this.conversion.toScreen(this.data.start),s=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-o>n&&(n=-o),s>2*o&&(s=2*o));var r=Math.max(s-n,1);switch(this.overflow?(this.left=n,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=n,this.width=r,i=Math.min(s-n,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=r+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(r-i,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i)/2,0)+"px";break;default:e=this.overflow?s>0?Math.max(-n,0):-i:0>n?-n:0,this.dom.content.style.left=e+"px"}},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box;"top"==t?e.style.top=this.top+"px":e.style.top=this.parent.height-this.top-this.height+"px"},o.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="vis-drag-left",t.dragLeftItem=this,this.dom.box.appendChild(t),this.dom.dragLeft=t}else!this.selected&&this.dom.dragLeft&&(this.dom.dragLeft.parentNode&&this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft),this.dom.dragLeft=null)},o.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="vis-drag-right",t.dragRightItem=this,this.dom.box.appendChild(t),this.dom.dragRight=t}else!this.selected&&this.dom.dragRight&&(this.dom.dragRight.parentNode&&this.dom.dragRight.parentNode.removeChild(this.dom.dragRight),this.dom.dragRight=null)},t.exports=o},function(t,e,i){function o(t,e,i){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null,this.editable=null,this.data&&this.data.hasOwnProperty("editable")&&"boolean"==typeof this.data.editable&&(this.editable=t.editable)}var n=i(20),s=i(1);o.prototype.stack=!0,o.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setData=function(t){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),t.hasOwnProperty("editable")&&"boolean"==typeof t.editable&&(this.editable=t.editable),this.data=t,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},o.prototype.isVisible=function(t){return!1},o.prototype.show=function(){return!1},o.prototype.hide=function(){return!1},o.prototype.redraw=function(){},o.prototype.repositionX=function(){},o.prototype.repositionY=function(){},o.prototype._repaintDeleteButton=function(t){var e=(this.options.editable.remove||this.data.editable===!0)&&this.data.editable!==!1;if(this.selected&&e&&!this.dom.deleteButton){var i=this,o=document.createElement("div");o.className="vis-delete",o.title="Delete this item",new n(o).on("tap",function(t){t.stopPropagation(),i.parent.removeFromDataSet(i)}),t.appendChild(o),this.dom.deleteButton=o}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},o.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;var o=this._contentToString(this.content)!==this._contentToString(e);if(o){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},o.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("vis-title")},o.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;in;n++){var r=this.visibleItems[n];r.repositionY(e)}return o},o.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=o},function(t,e,i){ +function o(t,e,i){if(this.props={dot:{width:0,height:0},line:{width:0,height:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);n.call(this,t,e,i)}var n=i(33);i(1);o.prototype=new n(null,null,null),o.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},o.prototype.show=r.prototype.show,o.prototype.hide=r.prototype.hide,o.prototype.repositionX=r.prototype.repositionX,o.prototype.repositionY=function(t){var e="top"===this.options.orientation.item;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var o=this.data.subgroup,n=this.parent.subgroups,r=n[o].index;if(1==e){i=this.parent.subgroups[o].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in n)n.hasOwnProperty(h)&&1==n[h].visible&&n[h].indexr&&(a+=l)}i=this.parent.subgroups[o].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof s?(i=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height),this.dom.box.style.top=e?"0":"",this.dom.box.style.bottom=e?"":"0"):(i=this.parent.height,this.dom.box.style.top=this.parent.top+"px",this.dom.box.style.bottom="");this.dom.box.style.height=i+"px"},t.exports=o},function(t,e,i){function o(t,e){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}},this.props={range:{start:0,end:0,minimumStep:0},lineTop:0},this.defaultOptions={orientation:{axis:"bottom"},showMinorLabels:!0,showMajorLabels:!0,maxMinorChars:7,format:r.FORMAT,moment:h,timeAxis:null},this.options=n.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n=i(1),s=i(25),r=i(29),a=i(26),h=i(2);o.prototype=new s,o.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showMinorLabels","showMajorLabels","maxMinorChars","hiddenDates","timeAxis","moment"],this.options,t),n.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"==typeof t.orientation&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof h.locale?h.locale(t.locale):h.lang(t.locale)))},o.prototype._create=function(){this.dom.foreground=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.foreground.className="vis-time-axis vis-foreground",this.dom.background.className="vis-time-axis vis-background"},o.prototype.destroy=function(){this.dom.foreground.parentNode&&this.dom.foreground.parentNode.removeChild(this.dom.foreground),this.dom.background.parentNode&&this.dom.background.parentNode.removeChild(this.dom.background),this.body=null},o.prototype.redraw=function(){var t=this.props,e=this.dom.foreground,i=this.dom.background,o="top"==this.options.orientation.axis?this.body.dom.top:this.body.dom.bottom,n=e.parentNode!==o;this._calculateCharSize();var s=this.options.showMinorLabels&&"none"!==this.options.orientation.axis,r=this.options.showMajorLabels&&"none"!==this.options.orientation.axis;t.minorLabelHeight=s?t.minorCharHeight:0,t.majorLabelHeight=r?t.majorCharHeight:0,t.height=t.minorLabelHeight+t.majorLabelHeight,t.width=e.offsetWidth,t.minorLineHeight=this.body.domProps.root.height-t.majorLabelHeight-("top"==this.options.orientation.axis?this.body.domProps.bottom.height:this.body.domProps.top.height),t.minorLineWidth=1,t.majorLineHeight=t.minorLineHeight+t.majorLabelHeight,t.majorLineWidth=1;var a=e.nextSibling,h=i.nextSibling;return e.parentNode&&e.parentNode.removeChild(e),i.parentNode&&i.parentNode.removeChild(i),e.style.height=this.props.height+"px",this._repaintLabels(),a?o.insertBefore(e,a):o.appendChild(e),h?this.body.dom.backgroundVertical.insertBefore(i,h):this.body.dom.backgroundVertical.appendChild(i),this._isResized()||n},o.prototype._repaintLabels=function(){var t=this.options.orientation.axis,e=n.convert(this.body.range.start,"Number"),i=n.convert(this.body.range.end,"Number"),o=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf(),s=o-a.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,o);s-=this.body.util.toTime(0).valueOf();var h=new r(new Date(e),new Date(i),s,this.body.hiddenDates);h.setMoment(this.options.moment),this.options.format&&h.setFormat(this.options.format),this.options.timeAxis&&h.setScale(this.options.timeAxis),this.step=h;var l=this.dom;l.redundant.lines=l.lines,l.redundant.majorTexts=l.majorTexts,l.redundant.minorTexts=l.minorTexts,l.lines=[],l.majorTexts=[],l.minorTexts=[];var u,c,p,f,m,v,g,y,b,_,w=0,x=void 0,k=0,O=1e3;for(h.start(),c=h.getCurrent(),f=this.body.util.toScreen(c);h.hasNext()&&O>k;){k++,m=h.isMajor(),_=h.getClassName(),b=h.getLabelMinor(),u=c,p=f,h.next(),c=h.getCurrent(),v=h.isMajor(),f=this.body.util.toScreen(c),g=w,w=f-p;var M=w>=.4*g;if(this.options.showMinorLabels&&M){var D=this._repaintMinorText(p,b,t,_);D.style.width=w+"px"}m&&this.options.showMajorLabels?(p>0&&(void 0==x&&(x=p),D=this._repaintMajorText(p,h.getLabelMajor(),t,_)),y=this._repaintMajorLine(p,w,t,_)):M?y=this._repaintMinorLine(p,w,t,_):y&&(y.style.width=parseInt(y.style.width)+w+"px")}if(k!==O||d||(console.warn("Something is wrong with the Timeline scale. Limited drawing of grid lines to "+O+" lines."),d=!0),this.options.showMajorLabels){var C=this.body.util.toTime(0),S=h.getLabelMajor(C),T=S.length*(this.props.majorCharWidth||10)+10;(void 0==x||x>T)&&this._repaintMajorText(0,S,t,_)}n.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._repaintMinorText=function(t,e,i,o){var n=this.dom.redundant.minorTexts.shift();if(!n){var s=document.createTextNode("");n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.minorTexts.push(n),n.childNodes[0].nodeValue=e,n.style.top="top"==i?this.props.majorLabelHeight+"px":"0",n.style.left=t+"px",n.className="vis-text vis-minor "+o,n},o.prototype._repaintMajorText=function(t,e,i,o){var n=this.dom.redundant.majorTexts.shift();if(!n){var s=document.createTextNode(e);n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.majorTexts.push(n),n.childNodes[0].nodeValue=e,n.className="vis-text vis-major "+o,n.style.top="top"==i?"0":this.props.minorLabelHeight+"px",n.style.left=t+"px",n},o.prototype._repaintMinorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top=s.majorLabelHeight+"px":n.style.top=this.body.domProps.top.height+"px",n.style.height=s.minorLineHeight+"px",n.style.left=t-s.minorLineWidth/2+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-minor "+o,n},o.prototype._repaintMajorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top="0":n.style.top=this.body.domProps.top.height+"px",n.style.left=t-s.majorLineWidth/2+"px",n.style.height=s.majorLineHeight+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-major "+o,n},o.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="vis-text vis-minor vis-measure",this.dom.measureCharMinor.style.position="absolute",this.dom.measureCharMinor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMinor)),this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight,this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth,this.dom.measureCharMajor||(this.dom.measureCharMajor=document.createElement("DIV"),this.dom.measureCharMajor.className="vis-text vis-major vis-measure",this.dom.measureCharMajor.style.position="absolute",this.dom.measureCharMajor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMajor)),this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight,this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var d=!1;t.exports=o},function(t,e,i){function o(t){this.active=!1,this.dom={container:t},this.dom.overlay=document.createElement("div"),this.dom.overlay.className="vis-overlay",this.dom.container.appendChild(this.dom.overlay),this.hammer=a(this.dom.overlay),this.hammer.on("tap",this._onTapOverlay.bind(this));var e=this,i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];i.forEach(function(t){e.hammer.on(t,function(t){t.stopPropagation()})}),document&&document.body&&(this.onClick=function(i){n(i.target,t)||e.deactivate()},document.body.addEventListener("click",this.onClick)),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=s(),this.escListener=this.deactivate.bind(this)}function n(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}var s=i(40),r=i(12),a=i(20),h=i(1);r(o.prototype),o.current=null,o.prototype.destroy=function(){this.deactivate(),this.dom.overlay.parentNode.removeChild(this.dom.overlay),this.onClick&&document.body.removeEventListener("click",this.onClick),this.hammer.destroy(),this.hammer=null},o.prototype.activate=function(){o.current&&o.current.deactivate(),o.current=this,this.active=!0,this.dom.overlay.style.display="none",h.addClassName(this.dom.container,"vis-active"),this.emit("change"),this.emit("activate"),this.keycharm.bind("esc",this.escListener)},o.prototype.deactivate=function(){this.active=!1,this.dom.overlay.style.display="",h.removeClassName(this.dom.container,"vis-active"),this.keycharm.unbind("esc",this.escListener),this.emit("change"),this.emit("deactivate")},o.prototype._onTapOverlay=function(t){this.activate(),t.stopPropagation()},t.exports=o},function(t,e,i){var o,n,s;!function(i,r){n=[],o=r,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={keydown:{},keyup:{}},r={};for(e=97;122>=e;e++)r[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)r[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)r["num"+e]={code:96+e,shift:!1};r["num*"]={code:106,shift:!1},r["num+"]={code:107,shift:!1},r["num-"]={code:109,shift:!1},r["num/"]={code:111,shift:!1},r["num."]={code:110,shift:!1},r.left={code:37,shift:!1},r.up={code:38,shift:!1},r.right={code:39,shift:!1},r.down={code:40,shift:!1},r.space={code:32,shift:!1},r.enter={code:13,shift:!1},r.shift={code:16,shift:void 0},r.esc={code:27,shift:!1},r.backspace={code:8,shift:!1},r.tab={code:9,shift:!1},r.ctrl={code:17,shift:!1},r.alt={code:18,shift:!1},r["delete"]={code:46,shift:!1},r.pageup={code:33,shift:!1},r.pagedown={code:34,shift:!1},r["="]={code:187,shift:!1},r["-"]={code:189,shift:!1},r["]"]={code:221,shift:!1},r["["]={code:219,shift:!1};var a=function(t){d(t,"keydown")},h=function(t){d(t,"keyup")},d=function(t,e){if(void 0!==s[e][t.keyCode]){for(var o=s[e][t.keyCode],n=0;no&&(o=30),o>1e3&&(o=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,o)}var e=this;t()},o.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},o.prototype.setCurrentTime=function(t){var e=n.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=o},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);this.options.showButton===!0&&!function(){var e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerHTML="generate options",e.onclick=function(){t._printOptions()},e.onmouseover=function(){e.className="vis-configuration vis-config-button hover"},e.onmouseout=function(){e.className="vis-configuration vis-config-button"},t.optionsContainer=document.createElement("div"),t.optionsContainer.className="vis-configuration vis-config-option-container",t.domElements.push(t.optionsContainer),t.domElements.push(e)}(),this._push()}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?o-1:0),s=1;o>s;s++)n[s-1]=e[s];return n.forEach(function(t){r.appendChild(t)}),i.domElements.push(r),{v:i.domElements.length}}();if("object"==typeof r)return r.v}return 0}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-configuration vis-config-header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-configuration vis-config-label vis-config-s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-configuration vis-config-select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>e*u?(a.min=Math.ceil(e*u),l=a.min,d="range increased"):n>e/u&&(a.min=Math.ceil(e/u),l=a.min,d="range increased"),e*u>s&&1!==s&&(a.max=Math.ceil(e*u),l=a.max,d="range increased"),a.value=e}else a.value=o;var c=document.createElement("input");c.className="vis-configuration vis-config-rangeinput",c.value=a.value;var p=this;a.onchange=function(){c.value=this.value,p._update(Number(this.value),i)},a.oninput=function(){c.value=this.value};var f=this._makeLabel(i[i.length-1],i),m=this._makeItem(i,f,a,c);""!==d&&this.popupHistory[m]!==l&&(this.popupHistory[m]=l,this._setupPopup(d,m))}},{key:"_setupPopup",value:function(t,e){var i=this;if(this.initialized===!0&&this.allowCreation===!0&&this.popupCountervar options = "+JSON.stringify(t,null,2)+""}},{key:"getOptions",value:function(){for(var t={},e=0;es;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h),r=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length<=3||void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=arguments.length<=2||void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=c.customTimeFromTarget(t),h=s.getTarget(t),d=null;s.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&s.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":s.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":s.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":s.hasParent(h,this.currentTime.bar)?d="current-time":s.hasParent(h,this.dom.center)&&(d="background");var l=[],u=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return u.hidden||l.push(u.screenToValue(n)),p.hidden||l.push(p.screenToValue(n)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:r,value:l}},o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},t.exports=o},function(t,e,i){function o(t,e){this.id=n.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,stack:!1,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,sideBySide:!1,align:"center"},interpolation:{enabled:!0,parametrization:"centripetal",alpha:.5},drawPoints:{enabled:!0,size:6,style:"square"},dataAxis:{},legend:{},groups:{visibility:{}}},this.options=n.extend({},this.defaultOptions),this.dom={},this.props={},this.hammer=null,this.groups={},this.abortedGraphUpdate=!1,this.updateSVGheight=!1,this.updateSVGheightOnResize=!1,this.forceGraphUpdate=!0;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e,o){i._onAdd(e.items)},update:function(t,e,o){i._onUpdate(e.items)},remove:function(t,e,o){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,o){i._onAddGroups(e.items)},update:function(t,e,o){i._onUpdateGroups(e.items)},remove:function(t,e,o){i._onRemoveGroups(e.items)}},this.items={},this.selection=[],this.lastStart=this.body.range.start, +this.touchParams={},this.svgElements={},this.setOptions(e),this.groupsUsingDefaultStyles=[0],this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=n.option.asSize(-i.props.width),i.forceGraphUpdate=!0,i.redraw.call(i)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups}}var n=i(1),s=i(7),r=i(8),a=i(10),h=i(25),d=i(50),l=i(52),u=i(56),c=i(53),p=i(55),f=i(54),m="__ungrouped__";o.prototype=new h,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-line-graph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation,this.legendLeft=new u(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new u(this.body,this.options.legend,"right",this.options.groups),this.show()},o.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","stack","height","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))i?-1:1});for(var o=new Array(t.length),s=0;s0){var h={};for(this._getRelevantData(a,h,n,r),this._applySampling(a,h),e=0;e0)switch(t.options.style){case"line":l.hasOwnProperty(a[e])||(l[a[e]]=p.calcPath(h[a[e]],t)),p.draw(l[a[e]],t,this.framework);case"point":case"points":("point"==t.options.style||"points"==t.options.style||1==t.options.drawPoints.enabled)&&f.draw(h[a[e]],t,this.framework);break;case"bar":}}}return s.cleanupElements(this.svgElements),!1},o.prototype._stack=function(t,e){var i,o,n,s,r;i=0;for(var a=0;at[a].x){r=e[h],s=0==h?r:e[h-1],i=h;break}}void 0===r&&(s=e[e.length-1],r=e[e.length-1]),o=r.x-s.x,n=r.y-s.y,0==o?t[a].y=t[a].orginalY+r.y:t[a].y=t[a].orginalY+n/o*(t[a].x-s.x)+s.y}},o.prototype._getRelevantData=function(t,e,i,o){var s,r,a,h;if(t.length>0)for(r=0;rt?-1:1},u=Math.max(0,n.binarySearchValue(d,i,"x","before",l)),c=Math.min(d.length,n.binarySearchValue(d,o,"x","after",l)+1);0>=c&&(c=d.length);var p=new Array(c-u);for(a=u;c>a;a++)h=s.itemsData[a],p[a-u]=h;e[t[r]]=p}else e[t[r]]=s.itemsData}},o.prototype._applySampling=function(t,e){var i;if(t.length>0)for(var o=0;o0){var s=1,r=n.length,a=this.body.util.toGlobalScreen(n[n.length-1].x)-this.body.util.toGlobalScreen(n[0].x),h=r/a;s=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=new Array(r),l=0;r>l;l+=s){var u=Math.round(l/s);d[u]=n[l]}e[t[o]]=d.splice(0,Math.round(r/s))}}},o.prototype._getYRanges=function(t,e,i){var o,n,s,r,a=[],h=[];if(t.length>0){for(s=0;s0&&(n=this.groups[t[s]],r.stack===!0&&"bar"===r.style?"left"===r.yAxisOrientation?a=a.concat(n.getItems()):h=h.concat(n.getItems()):i[t[s]]=n.getYRange(o,t[s]));c.getStackedYRange(a,i,t,"__barStackLeft","left"),c.getStackedYRange(h,i,t,"__barStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i,o,n=!1,s=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var u=0;ui?i:a,d=o>d?o:d):(r=!0,h=h>i?i:h,l=o>l?o:l));1==s&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}n=this._toggleAxisVisiblity(s,this.yAxisLeft)||n,n=this._toggleAxisVisiblity(r,this.yAxisRight)||n,1==r&&1==s?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!s,this.yAxisRight.masterAxis=this.yAxisLeft,0==this.yAxisRight.master?(1==r?this.yAxisLeft.lineOffset=this.yAxisRight.width:this.yAxisLeft.lineOffset=0,n=this.yAxisLeft.redraw()||n,n=this.yAxisRight.redraw()||n):n=this.yAxisRight.redraw()||n;for(var p=["__barStackLeft","__barStackRight","__lineStackLeft","__lineStackRight"],u=0;ut?-1:1});for(var a=0;a=0&&t._redrawLabel(o-2,e.val,i,"vis-y-axis vis-major",t.props.majorCharHeight),t.master===!0&&(n?t._redrawLine(o,i,"vis-grid vis-horizontal vis-major",t.options.majorLinesOffset,t.props.majorLineWidth):t._redrawLine(o,i,"vis-grid vis-horizontal vis-minor",t.options.minorLinesOffset,t.props.minorLineWidth))});var d=0;void 0!==this.options[i].title&&void 0!==this.options[i].title.text&&(d=this.props.titleCharHeight);var l=this.options.icons===!0?Math.max(this.options.iconWidth,d)+this.options.labelOffsetX+15:d+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-l&&this.options.visible===!0?(this.width=this.maxLabelSize+l,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+l),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),e=!1),e},o.prototype.convertValue=function(t){return this.scale.convertValue(t)},o.prototype.screenToValue=function(t){return this.scale.screenToValue(t)},o.prototype._redrawLabel=function(t,e,i,o,n){var r=s.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=o,r.innerHTML=e,"left"===i?(r.style.left="-"+this.options.labelOffsetX+"px",r.style.textAlign="right"):(r.style.right="-"+this.options.labelOffsetX+"px",r.style.textAlign="left"),r.style.top=t-.5*n+this.options.labelOffsetY+"px",e+="";var a=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);this.maxLabelSize.5*(h.magnitudefactor*h.minorSteps[h.minorStepIdx])?e+h.magnitudefactor*h.minorSteps[h.minorStepIdx]:e};i&&(this._start-=2*this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._start=d(this._start)),o&&(this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._end=d(this._end)),this.determineScale()}}i.prototype.setCharHeight=function(t){this.majorCharHeight=t},i.prototype.setHeight=function(t){this.containerHeight=t},i.prototype.determineScale=function(){var t=this._end-this._start;this.scale=this.containerHeight/t;var e=this.majorCharHeight/this.scale,i=Math.round(Math.log(t)/Math.LN10);this.minorStepIdx=-1,this.magnitudefactor=Math.pow(10,i);var o=0;0>i&&(o=i);for(var n=!1,s=o;Math.abs(s)<=Math.abs(i);s++){this.magnitudefactor=Math.pow(10,s);for(var r=0;r=e){n=!0,this.minorStepIdx=r;break}}if(n===!0)break}},i.prototype.is_major=function(t){return t%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])===0},i.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]},i.prototype.getFirstMajor=function(){var t=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(t-this._start%t)%t)},i.prototype.formatValue=function(t){var e=t.toPrecision(5);return"function"==typeof this.formattingFunction&&(e=this.formattingFunction(t)),"number"==typeof e?""+e:"string"==typeof e?e:t.toPrecision(5)},i.prototype.getLines=function(){for(var t=[],e=this.getStep(),i=(e-this._start%e)%e,o=this._start+i;this._end-o>1e-5;o+=e)o!=this._start&&t.push({major:this.is_major(o),y:this.convertValue(o),val:this.formatValue(o)});return t},i.prototype.followScale=function(t){var e=this.minorStepIdx,i=this._start,o=this._end,n=this,s=function(){n.magnitudefactor*=2},r=function(){n.magnitudefactor/=2};t.minorStepIdx<=1&&this.minorStepIdx<=1||t.minorStepIdx>1&&this.minorStepIdx>1||(t.minorStepIdxo+1e-5)r(),d=!1;else{if(!this.autoScaleStart&&this._start=0)){r(),d=!1;continue}console.warn("Can't adhere to given 'min' range, due to zeroalign")}this.autoScaleStart&&this.autoScaleEnd&&o-i>u?(s(),d=!1):d=!0}}},i.prototype.convertValue=function(t){return this.containerHeight-(t-this._start)*this.scale},i.prototype.screenToValue=function(t){return(this.containerHeight-t)/this.scale+this._start},t.exports=i},function(t,e,i){function o(t,e,i,o){this.id=e;var s=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation","zIndex","excludeFromStacking","excludeFromLegend"];this.options=n.selectiveBridgeObject(s,i),this.usingDefaultStyle=void 0===t.className,this.groupsUsingDefaultStyles=o,this.zeroPosition=0,this.update(t),1==this.usingDefaultStyle&&(this.groupsUsingDefaultStyles[0]+=1),this.itemsData=[],this.visible=void 0===t.visible?!0:t.visible}var n=i(1),s=(i(7),i(53)),r=i(55),a=i(54);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&n.insertSort(this.itemsData,function(t,e){return t.x>e.x?1:-1})):this.itemsData=[]},o.prototype.getItems=function(){return this.itemsData},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart","zIndex","excludeFromStacking","excludeFromLegend"];n.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.getLegend=function(t,e,i,o,n){if(void 0==i||null==i){var h=document.createElementNS("http://www.w3.org/2000/svg","svg");i={svg:h,svgElements:{},options:this.options,groups:[this]}}switch((void 0==o||null==o)&&(o=0),(void 0==n||null==n)&&(n=.5*e),this.options.style){case"line":r.drawIcon(this,o,n,t,e,i);break;case"points":case"point":a.drawIcon(this,o,n,t,e,i);break;case"bar":s.drawIcon(this,o,n,t,e,i)}return{icon:i.svg,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,o=0;ot[o].y?t[o].y:e,i=i0&&(i=Math.min(i,Math.abs(e[o-1].screen_x-e[o].screen_x))),0===i&&(void 0===t[e[o].screen_x]&&(t[e[o].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].screen_x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0,"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.screen_x===e.screen_x?t.groupIde[s].screen_y?e[s].screen_y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0){var i=[];return i=1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t)}},o.drawIcon=function(t,e,i,o,s,r){var a,h,d=.5*s,l=n.getSVGElement("rect",r.svgElements,r.svg);if(l.setAttributeNS(null,"x",e),l.setAttributeNS(null,"y",i-d),l.setAttributeNS(null,"width",o),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),a=n.getSVGElement("path",r.svgElements,r.svg),a.setAttributeNS(null,"class",t.className),void 0!==t.style&&a.setAttributeNS(null,"style",t.style),a.setAttributeNS(null,"d","M"+e+","+i+" L"+(e+o)+","+i),1==t.options.shaded.enabled&&(h=n.getSVGElement("path",r.svgElements,r.svg),"top"==t.options.shaded.orientation?h.setAttributeNS(null,"d","M"+e+", "+(i-d)+"L"+e+","+i+" L"+(e+o)+","+i+" L"+(e+o)+","+(i-d)):h.setAttributeNS(null,"d","M"+e+","+i+" L"+e+","+(i+d)+" L"+(e+o)+","+(i+d)+"L"+(e+o)+","+i),h.setAttributeNS(null,"class",t.className+" vis-icon-fill"),void 0!==t.options.shaded.style&&""!==t.options.shaded.style&&h.setAttributeNS(null,"style",t.options.shaded.style)),1==t.options.drawPoints.enabled){var u={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,className:t.className};n.drawPoint(e+.5*o,i,u,r.svgElements,r.svg)}},o.drawShading=function(t,e,i,o){if(1==e.options.shaded.enabled){var s=Number(o.svg.style.height.replace("px","")),r=n.getSVGElement("path",o.svgElements,o.svg),a="L";1==e.options.interpolation.enabled&&(a="C");var h,d=0;d="top"==e.options.shaded.orientation?0:"bottom"==e.options.shaded.orientation?s:Math.min(Math.max(0,e.zeroPosition),s),h="group"==e.options.shaded.orientation&&null!=i&&void 0!=i?"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" L"+i[i.length-1][0]+","+i[i.length-1][1]+" "+this.serializePath(i,a,!0)+i[0][0]+","+i[0][1]+" Z":"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" V"+d+" H"+t[0][0]+" Z",r.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&r.setAttributeNS(null,"style",e.options.shaded.style),r.setAttributeNS(null,"d",h)}},o.draw=function(t,e,i){if(null!=t&&void 0!=t){var o=n.getSVGElement("path",i.svgElements,i.svg);o.setAttributeNS(null,"class",e.className),void 0!==e.style&&o.setAttributeNS(null,"style",e.style);var s="L";1==e.options.interpolation.enabled&&(s="C"),o.setAttributeNS(null,"d","M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,s,!1))}},o.serializePath=function(t,e,i){if(t.length<2)return"";var o=e;if(i)for(var n=t.length-2;n>0;n--)o+=t[n][0]+","+t[n][1]+" ";else for(var n=1;nl;l++)e=0==l?t[0]:t[l-1],i=t[l],o=t[l+1],n=d>l+2?t[l+2]:o,s={screen_x:(-e.screen_x+6*i.screen_x+o.screen_x)*h,screen_y:(-e.screen_y+6*i.screen_y+o.screen_y)*h},r={screen_x:(i.screen_x+6*o.screen_x-n.screen_x)*h,screen_y:(i.screen_y+6*o.screen_y-n.screen_y)*h},a.push([s.screen_x,s.screen_y]),a.push([r.screen_x,r.screen_y]),a.push([o.screen_x,o.screen_y]);return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,_,w,x=[];x.push([Math.round(t[0].screen_x),Math.round(t[0].screen_y)]);for(var k=t.length,O=0;k-1>O;O++)o=0==O?t[0]:t[O-1],n=t[O],s=t[O+1],r=k>O+2?t[O+2]:s,d=Math.sqrt(Math.pow(o.screen_x-n.screen_x,2)+Math.pow(o.screen_y-n.screen_y,2)),l=Math.sqrt(Math.pow(n.screen_x-s.screen_x,2)+Math.pow(n.screen_y-s.screen_y,2)),u=Math.sqrt(Math.pow(s.screen_x-r.screen_x,2)+Math.pow(s.screen_y-r.screen_y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),w=Math.pow(d,i),_=Math.pow(d,2*i),c=2*_+3*w*g+b,p=2*y+3*v*g+b,f=3*w*(w+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={screen_x:(-b*o.screen_x+c*n.screen_x+_*s.screen_x)*f,screen_y:(-b*o.screen_y+c*n.screen_y+_*s.screen_y)*f},h={screen_x:(y*n.screen_x+p*s.screen_x-b*r.screen_x)*m,screen_y:(y*n.screen_y+p*s.screen_y-b*r.screen_y)*m},0==a.screen_x&&0==a.screen_y&&(a=n),0==h.screen_x&&0==h.screen_y&&(h=s),x.push([a.screen_x,a.screen_y]),x.push([h.screen_x,h.screen_y]),x.push([s.screen_x,s.screen_y]);return x},o._linear=function(t){for(var e=[],i=0;it?-1:1});for(var i=0;i")}this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},o.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var t=Object.keys(this.groups);t.sort(function(t,e){return e>t?-1:1}),s.resetElements(this.svgElements);var e=window.getComputedStyle(this.dom.frame).paddingTop,i=Number(e.replace("px","")),o=i,n=this.options.iconSize,r=.75*this.options.iconSize,a=i+.5*r+3;this.svg.style.width=n+5+i+"px";for(var h=0;h0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{var i=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["color","font","fixed","shadow"];if(F.selectiveNotDeepExtend(n,t,e,i),F.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var s=F.parseColor(e.color);F.fillIfDefined(t.color,s)}else i===!0&&null===e.color&&(t.color=F.bridgeObject(o.color));void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),void 0!==e.font&&null!==e.font?a["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=F.bridgeObject(o.font)),void 0!==e.scaling&&F.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)}}]),t}();e["default"]=B,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;i=this.nodeOptions.scaling.label.maxVisible&&(r=Number(this.nodeOptions.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+r+"px "+this.fontOptions.face,t.fillStyle=u,t.textAlign="center",this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.fontOptions.align&&this.pointToSelf===!1){e=0,i=0;var n=2;"top"===this.fontOptions.align?(t.textBaseline="alphabetic",i-=2*n):"bottom"===this.fontOptions.align?(t.textBaseline="hanging",i+=2*n):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.fontOptions.color||"#000000",i=this.fontOptions.strokeColor||"#ffffff";if(t<=this.nodeOptions.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.nodeOptions.scaling.label.drawThreshold-t)));e=r.overrideOpacity(e,o),i=r.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i={width:this._processLabel(t,e),height:this.fontOptions.size*this.lineCount,lineCount:this.lineCount};return i}},{key:"calculateLabelSize",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?0:arguments[2],o=arguments.length<=3||void 0===arguments[3]?0:arguments[3],n=arguments.length<=4||void 0===arguments[4]?"middle":arguments[4];this.labelDirty===!0&&(this.size.width=this._processLabel(t,e)),this.size.height=this.fontOptions.size*this.lineCount,this.size.left=i-.5*this.size.width,this.size.top=o-.5*this.size.height,this.size.yLine=o+.5*(1-this.lineCount)*this.fontOptions.size,"hanging"===n&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4),this.labelDirty=!1}},{key:"_processLabel",value:function(t,e){var i=0,o=[""],n=0;if(void 0!==this.nodeOptions.label){o=String(this.nodeOptions.label).split("\n"),n=o.length,t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+this.fontOptions.size+"px "+this.fontOptions.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height;var n=this.options.shapeProperties.borderRadius;this.boundingBox.left=this.left-n,this.boundingBox.top=this.top-n,this.boundingBox.bottom=this.top+this.height+n,this.boundingBox.right=this.left+this.width+n}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+i}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ithis.imageObj.height?(o=this.imageObj.width/this.imageObj.height,e=2*this.options.size*o||this.imageObj.width,i=2*this.options.size||this.imageObj.height):(o=this.imageObj.width&&this.imageObj.height?this.imageObj.height/this.imageObj.width:1,e=2*this.options.size,i=2*this.options.size*o):(e=this.imageObj.width,i=this.imageObj.height),this.width=e,this.height=i,this.radius=.5*this.width}}},{key:"_drawRawCircle",value:function(t,e,i,o,n,s){var r=this.options.borderWidth,a=this.options.borderWidthSelected||2*this.options.borderWidth,h=(o?a:r)/this.body.view.scale;t.lineWidth=Math.min(this.width,h),t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.fillStyle=o?this.options.color.highlight.background:n?this.options.color.hover.background:this.options.color.background,t.circle(e,i,s),this.enableShadow(t),t.fill(),this.disableShadow(t),t.save(),h>0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),void 0!==this.options.label){var l=n+.5*this.height+3;this.labelModule.draw(t,o,l,s,"hanging")}this.updateBoundingBox(o,n)}},{key:"updateBoundingBox",value:function(t,e){this.boundingBox.top=e-this.options.size,this.boundingBox.left=t-this.options.size,this.boundingBox.right=t+this.options.size,this.boundingBox.bottom=e+this.options.size,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=.5*this.width,o=.5*this.height,n=Math.sin(e)*i,s=Math.cos(e)*o;return i*o/Math.sqrt(n*n+s*s)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0){var i=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+i)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),t.closePath()}this._drawImageAtPosition(t),this._drawImageLabel(t,e,i,o||n),this.updateBoundingBox(e,i)}},{key:"updateBoundingBox",value:function(t,e){this.resize(),this.left=t-this.width/2,this.top=e-this.height/2,this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}},{key:"cleanup",value:function(){return this.edgeType.cleanup()}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["arrowStrikethrough","id","from","hidden","hoverWidth","label","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","to","title","value","width"];if(v.selectiveDeepExtend(n,t,e,i),v.mergeOptions(t,e,"smooth",i,o),v.mergeOptions(t,e,"shadow",i,o),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=Object.create(o.dashes)),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),v.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)):i===!0&&null===e.scaling&&(t.scaling=Object.create(o.scaling)),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var s=e.arrows.toLowerCase();-1!=s.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=s.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=s.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));v.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"from",i,o.arrows)}else i===!0&&null===e.arrows&&(t.arrows=Object.create(o.arrows));if(void 0!==e.color&&null!==e.color)if(t.color=v.deepExtend({},t.color,!0),v.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var r=!1;void 0!==e.color.color&&(t.color.color=e.color.color,r=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,r=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,r=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&r===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=v.bridgeObject(o.color));void 0!==e.font&&null!==e.font?a["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=v.bridgeObject(o.font))}}]),t}();e["default"]=g,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=function(){function t(t,e){for(var i=0;iMath.abs(e)||this.options.smooth.forceDirection===!0||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(o=this.from.y,s=this.to.y,i=this.from.x-r*t,n=this.to.x+r*t):(o=this.from.y-r*e,s=this.to.y+r*e,i=this.from.x,n=this.to.x),[{x:i,y:o},{x:n,y:s}]}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var a=arguments.length<=6||void 0===arguments[6]?this._getViaCoordinates():arguments[6],h=r(a,2),d=h[0],l=h[1];return this._getDistanceToBezierEdge(t,e,i,o,n,s,d,l)}},{key:"getPoint",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?this._getViaCoordinates():arguments[1],i=r(e,2),o=i[0],n=i[1],s=t,a=[];a[0]=Math.pow(1-s,3),a[1]=3*s*Math.pow(1-s,2),a[2]=3*Math.pow(s,2)*(1-s),a[3]=Math.pow(s,3);var h=a[0]*this.fromPoint.x+a[1]*o.x+a[2]*n.x+a[3]*this.toPoint.x,d=a[0]*this.fromPoint.y+a[1]*o.y+a[2]*n.y+a[3]*this.toPoint.y;return{x:h,y:d}}}]),e}(l["default"]);e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;il;l++)u=.1*l,v[0]=Math.pow(1-u,3),v[1]=3*u*Math.pow(1-u,2),v[2]=3*Math.pow(u,2)*(1-u),v[3]=Math.pow(u,3),c=v[0]*t+v[1]*r.x+v[2]*a.x+v[3]*i,p=v[0]*e+v[1]*r.y+v[2]*a.y+v[3]*o,l>0&&(d=this._getDistanceToLine(f,m,c,p,n,s),h=h>d?d:h),f=c,m=p;return h}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=1e9,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0,p=t,f=e;for(d=1;10>d;d++)l=.1*d,u=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,c=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,u,c,n,s),a=a>h?h:a),p=u,f=c;return a}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"getArrowData",value:function(t,e,i,o,s){var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=this.getLineWidth(o,s);if("from"===e?(h=this.from,d=this.to,l=.1,u=this.options.arrows.from.scaleFactor):"to"===e?(h=this.to,d=this.from,l=-.1,u=this.options.arrows.to.scaleFactor):(h=this.to,d=this.from,u=this.options.arrows.middle.scaleFactor),h!=d)if("middle"!==e)if(this.options.smooth.enabled===!0){a=this.findBorderPosition(h,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,a.t+l)),i);r=Math.atan2(a.y-p.y,a.x-p.x)}else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.findBorderPosition(h,t);else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.getPoint(.5,i);else{var f=this._getCircleData(t),m=n(f,3),v=m[0],g=m[1],y=m[2];"from"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:g,low:.25,high:.6,direction:-1}),r=-2*a.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:g,low:.6,high:1,direction:1}),r=-2*a.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(a=this._pointOnCircle(v,g,y,.175),r=3.9269908169872414)}var b=15*u+3*c,_=a.x-.9*b*Math.cos(r),w=a.y-.9*b*Math.sin(r),x={x:_,y:w};return{point:a,core:x,angle:r,length:b}}},{key:"drawArrowHead",value:function(t,e,i,o){t.strokeStyle=this.getColor(t,e,i),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(e,i),t.arrow(o.point.x,o.point.y,o.angle,o.length),this.enableShadow(t),t.fill(),this.disableShadow(t)}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor=this.options.shadow.color,t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)Math.abs(this.from.x-this.to.x)<=Math.abs(this.from.y-this.to.y)?(t=this.from.x,e=this.from.yMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1||this.startedStabilization===!0)&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:e}),t.startedStabilization=!1,t.stabilizationIterations=0},0)}},{key:"physicsTick",value:function(){if(this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0),this.stabilized===!1){if(this.adaptiveTimestep===!0&&this.adaptiveTimestepEnabled===!0){var t=1.2;this.adaptiveCounter%this.adaptiveInterval===0?(this.timestep=2*this.timestep,this.calculateForces(),this.moveNodes(),this.revert(),this.timestep=.5*this.timestep,this.calculateForces(),this.moveNodes(),this.calculateForces(),this.moveNodes(),this._evaluateStepQuality()===!0?this.timestep=t*this.timestep:this.timestep/ts))return!1;return!0}},{key:"moveNodes",value:function(){for(var t=this.physicsBody.physicsNodeIndices,e=this.options.maxVelocity?this.options.maxVelocity:1e9,i=0,o=0,n=5,s=0;se?s[t].x>0?e:-e:s[t].x,i.x+=s[t].x*o}else n[t].x=0,s[t].x=0;if(i.options.fixed.y===!1){var h=this.modelOptions.damping*s[t].y,d=(n[t].y-h)/i.options.mass;s[t].y+=d*o,s[t].y=Math.abs(s[t].y)>e?s[t].y>0?e:-e:s[t].y,i.y+=s[t].y*o}else n[t].y=0,s[t].y=0;var l=Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2));return l}},{key:"calculateForces",value:function(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve()}},{key:"_freezeNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].x&&t[e].y&&(this.freezeCache[e]={x:t[e].options.fixed.x,y:t[e].options.fixed.y},t[e].options.fixed.x=!0,t[e].options.fixed.y=!0)}},{key:"_restoreFrozenNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&void 0!==this.freezeCache[e]&&(t[e].options.fixed.x=this.freezeCache[e].x,t[e].options.fixed.y=this.freezeCache[e].y);this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?this.options.stabilization.iterations:arguments[0];return"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),0===this.physicsBody.physicsNodeIndices.length?void(this.ready=!0):(this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,void setTimeout(function(){return t._stabilizationBatch()},0))}},{key:"_stabilizationBatch",value:function(){this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0);for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):4===t.childrenCount?(this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")}},{key:"_placeInRegion",value:function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x===e.x&&t.children[i].children.data.y===e.y?(e.x+=this.seededRandom(),e.y+=this.seededRandom()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}}},{key:"_splitBranch",value:function(t){var e=null;1===t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)}},{key:"_insertRegion",value:function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=.5*t.size;switch(e){case"NW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY,s=t.range.minY+r;break;case"NE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY,s=t.range.minY+r;break;case"SW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY+r,s=t.range.maxY;break;case"SE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY+r,s=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:o,minY:n,maxY:s},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}}},{key:"_debug",value:function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))}},{key:"_drawBranch",value:function(t,e,i){void 0===i&&(i="#FF0000"),4===t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii&&(s=.5*u>i?1:c*i+p,s/=i,o=t*s,n=e*s,l[r.id].x-=o,l[r.id].y-=n,l[a.id].x+=o,l[a.id].y+=n)}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii?-Math.pow(f*i,2)+Math.pow(f*p,2):0,0===i?i=.01:s/=i,o=t*s,n=e*s,c[r.id].x-=o,c[r.id].y-=n,c[a.id].x+=o,c[a.id].y+=n}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;i0){var s=n.edges.length+1,r=this.options.centralGravity*s*n.options.mass;o[n.id].x=e*r,o[n.id].y=i*r}}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var o=0;o0&&Object.keys(p).length>0&&m===!0&&o.push({nodes:c,edges:p})}}}for(var u=0;uo?r.x:o,n=r.ys?r.y:s;return{x:.5*(i+o),y:.5*(n+s)}}},{key:"openCluster",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!0:arguments[2];if(void 0===t)throw new Error("No clusterNodeId supplied to openCluster.");if(void 0===this.body.nodes[t])throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(void 0===this.body.nodes[t].containedNodes)return void console.log("The node:"+t+" is not a cluster.");var o=this.body.nodes[t],n=o.containedNodes,s=o.containedEdges;if(void 0!==e&&void 0!==e.releaseFunction&&"function"==typeof e.releaseFunction){var r={},h={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];r[d]={x:u.x,y:u.y}}var c=e.releaseFunction(h,r);for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];void 0!==c[d]&&(u.x=void 0===c[d].x?o.x:c[d].x,u.y=void 0===c[d].y?o.y:c[d].y)}}else for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u=n[d],u.options.fixed.x===!1&&(u.x=o.x),u.options.fixed.y===!1&&(u.y=o.y)}for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u.vx=o.vx,u.vy=o.vy,u.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[d]}for(var p=[],f=0;fo;)e.push(this.body.nodes[t].id),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t].id),e.reverse(),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0)for(var a=0;ae.shape.boundingBox.left&&(s=e.shape.boundingBox.left),re.shape.boundingBox.top&&(o=e.shape.boundingBox.top),n0)for(var a=0;ae.x&&(s=e.x),re.y&&(o=e.y),n0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.allowRedraw=!1,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;if(e.clearRect(0,0,i,o),0===this.canvas.frame.clientWidth)return;e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t,i.selected));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0){var t=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,e=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,i=this.cameraState.scale;1!=t&&1!=e?i=.5*this.cameraState.scale*(t+e):1!=t?i=this.cameraState.scale*t:1!=e&&(i=this.cameraState.scale*e),this.body.view.scale=i;var o=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),n={x:o.x-this.cameraState.position.x,y:o.y-this.cameraState.position.y};this.body.view.translation.x+=n.x*this.body.view.scale,this.body.view.translation.y+=n.y*this.body.view.scale}}},{key:"_prepareValue",value:function(t){if("number"==typeof t)return t+"px";if("string"==typeof t){if(-1!==t.indexOf("%")||-1!==t.indexOf("px"))return t;if(-1===t.indexOf("%"))return t+"px"}throw new Error("Could not use the value supplied for width or height:"+t)}},{key:"_create",value:function(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}},{key:"_bindHammer",value:function(){var t=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new s(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),r.onTouch(this.hammer,function(e){t.body.eventListeners.onTouch(e)}),this.hammer.on("tap",function(e){t.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",function(e){t.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",function(e){t.body.eventListeners.onHold(e)}),this.hammer.on("panstart",function(e){t.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",function(e){t.body.eventListeners.onDrag(e)}),this.hammer.on("panend",function(e){t.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",function(e){t.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("mousewheel",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("DOMMouseScroll",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",function(e){t.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",function(e){t.body.eventListeners.onContext(e)}),this.hammerFrame=new s(this.frame),r.onRelease(this.hammerFrame,function(e){t.body.eventListeners.onRelease(e)})}},{key:"setSize",value:function(){var t=arguments.length<=0||void 0===arguments[0]?this.options.width:arguments[0],e=arguments.length<=1||void 0===arguments[1]?this.options.height:arguments[1];t=this._prepareValue(t),e=this._prepareValue(e);var i=!1,o=this.frame.canvas.width,n=this.frame.canvas.height,s=this.frame.canvas.getContext("2d"),r=this.pixelRatio;return this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),t!=this.options.width||e!=this.options.height||this.frame.style.width!=t||this.frame.style.height!=e?(this._getCameraState(r),this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=t,this.options.height=e,i=!0):((this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)||this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio))&&this._getCameraState(r),this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&(this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),i=!0),this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio)&&(this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),i=!0)),i===!0&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(o/this.pixelRatio),oldHeight:Math.round(n/this.pixelRatio)}),this._setCameraState()),i}},{key:"_XconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}}},{key:"DOMtoCanvas",value:function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i.5*this.body.nodeIndices.length)return void this.fit(t,!1);i=a["default"].getRange(this.body.nodes,t.nodes);var h=this.body.nodeIndices.length;o=12.662/(h+7.4147)+.0964822;var d=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);o*=d}else{this.body.emitter.emit("_resizeNodes"),i=a["default"].getRange(this.body.nodes,t.nodes);var l=1.1*Math.abs(i.maxX-i.minX),u=1.1*Math.abs(i.maxY-i.minY),c=this.canvas.frame.canvas.clientWidth/l,p=this.canvas.frame.canvas.clientHeight/u;o=p>=c?c:p}o>1?o=1:0===o&&(o=1);var f=a["default"].findCenter(i),m={position:f,scale:o,animation:t.animation};this.moveTo(m)}},{key:"focus",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=h.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey);this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0),a-o>0&&p===!1?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){if(this.options.zoomView===!0){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0&&(this.keycharm.bind("up",function(){t.bindToRedraw("_moveUp")},"keydown"),this.keycharm.bind("down",function(){t.bindToRedraw("_moveDown")},"keydown"),this.keycharm.bind("left",function(){t.bindToRedraw("_moveLeft")},"keydown"),this.keycharm.bind("right",function(){t.bindToRedraw("_moveRight")},"keydown"),this.keycharm.bind("=",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num+",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("[",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("]",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pageup",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pagedown",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("up",function(){t.unbindFromRedraw("_moveUp")},"keyup"),this.keycharm.bind("down",function(){t.unbindFromRedraw("_moveDown")},"keyup"),this.keycharm.bind("left",function(){t.unbindFromRedraw("_moveLeft")},"keyup"),this.keycharm.bind("right",function(){t.unbindFromRedraw("_moveRight")},"keyup"),this.keycharm.bind("=",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num+",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("[",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("]",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pageup",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pagedown",function(){t.unbindFromRedraw("_zoomOut")},"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;io&&(s=o-e-this.padding),sn&&(r=n-i-this.padding),r0?e===!0?this.body.nodes[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(t,e){for(var i=this.body.edges,o=0;o0?e===!0?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof s?(delete this.selectionObj.nodes[t.id],this._unselectConnectedEdges(t)):delete this.selectionObj.edges[t.id]}},{key:"unselectAll",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].unselect();for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&this.selectionObj.edges[e].unselect();this.selectionObj={nodes:{},edges:{}}}},{key:"_getSelectedNodeCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedNode",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t]}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t]}},{key:"_getSelectedEdgeCount",value:function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedObjectCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&(t+=1);return t}},{key:"_selectionIsEmpty",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return!1;for(var e in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(e))return!1;return!0}},{key:"_clusterInSelection",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1}},{key:"_selectConnectedEdges",value:function(t){for(var e=0;e0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(e);if(i===!0)return this.body.emitter.emit("refresh"),d.deepExtend(e,this.optionsBackup)}return e}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(t){if(this.options.hierarchical.enabled===!0){void 0===t.physics||t.physics===!0?(t.physics={enabled:void 0===this.optionsBackup.physics.enabled?!0:this.optionsBackup.physics.enabled,solver:"hierarchicalRepulsion"},this.optionsBackup.physics.enabled=void 0===this.optionsBackup.physics.enabled?!0:this.optionsBackup.physics.enabled,this.optionsBackup.physics.solver=this.optionsBackup.physics.solver||"barnesHut"):"object"==typeof t.physics?(this.optionsBackup.physics.enabled=void 0===t.physics.enabled?!0:t.physics.enabled,this.optionsBackup.physics.solver=t.physics.solver||"barnesHut",t.physics.solver="hierarchicalRepulsion"):t.physics!==!1&&(this.optionsBackup.physics.solver="barnesHut",t.physics={solver:"hierarchicalRepulsion"});var e="horizontal";("RL"===this.options.hierarchical.direction||"LR"===this.options.hierarchical.direction)&&(e="vertical"),void 0===t.edges?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges={smooth:!1}):void 0===t.edges.smooth?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges.smooth=!1):"boolean"==typeof t.edges.smooth?(this.optionsBackup.edges={smooth:t.edges.smooth},t.edges.smooth={enabled:t.edges.smooth,type:e}):(void 0!==t.edges.smooth.type&&"dynamic"!==t.edges.smooth.type&&(e=t.edges.smooth.type),this.optionsBackup.edges={smooth:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:void 0===t.edges.smooth.type?"dynamic":t.edges.smooth.type,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection}),this.body.emitter.emit("_forceDisableDynamicCurves",e)}return t}},{key:"seededRandom",value:function(){var t=1e4*Math.sin(this.randomSeed++);return t-Math.floor(t)}},{key:"positionInitially",value:function(t){if(this.options.hierarchical.enabled!==!0){this.randomSeed=this.initialRandomSeed;for(var e=0;es){for(var r=this.body.nodeIndices.length;this.body.nodeIndices.length>s;){n+=1;var a=this.body.nodeIndices.length;n%3===0?this.body.modules.clustering.clusterBridges():this.body.modules.clustering.clusterOutliers();var h=this.body.nodeIndices.length;if(a==h&&n%3!==0||n>o)return this._declusterAll(),this.body.emitter.emit("_layoutFailed"),void console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.")}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*r)})}this.body.modules.kamadaKawai.solve(this.body.nodeIndices,this.body.edgeIndices,!0),this._shiftToCenter();for(var d=70,e=0;e0){var t=void 0,e=void 0,i=!1,o=!0,n=!1;this.hierarchicalLevels={},this.lastNodeOnLevel={},this.hierarchicalParents={},this.hierarchicalChildren={},this.hierarchicalTrees={},this.treeIndex=-1,this.distributionOrdering={},this.distributionIndex={},this.distributionOrderingPresence={};for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0===t.options.x&&void 0===t.options.y&&(o=!1),void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):n=!0);if(n===!0&&i===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");n===!0&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():"directed"===this.options.hierarchical.sortMethod?this._determineLevelsDirected():"custom"===this.options.hierarchical.sortMethod&&this._determineLevelsCustomCallback());for(var s in this.body.nodes)this.body.nodes.hasOwnProperty(s)&&void 0===this.hierarchicalLevels[s]&&(this.hierarchicalLevels[s]=0);var r=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(r),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var t=this,e=!1,i={},o=function(){for(var e=a(),i=0;i0)for(var n=0;n=l&&(r=Math.min(u,r),a=Math.max(u,a))}return[r,a,o,n]},l=function _(e){var i=t.hierarchicalLevels[e];if(t.hierarchicalParents[e]){var o=t.hierarchicalParents[e].children;if(o.length>0)for(var n=0;n1)for(var a=0;at.options.hierarchical.nodeSpacing){var c={};c[i.id]=!0;var p={};p[o.id]=!0,h(i,c),h(o,p);var f=u(i,o),m=d(c,f),v=s(m,4),g=(v[0],v[1]),y=(v[2],v[3],d(p,f)),b=s(y,4),_=b[0],w=(b[1],b[2]),x=(b[3],Math.abs(g-_));if(x>t.options.hierarchical.nodeSpacing){var k=g-_+t.options.hierarchical.nodeSpacing;k<-w+t.options.hierarchical.nodeSpacing&&(k=-w+t.options.hierarchical.nodeSpacing),0>k&&(t._shiftBlock(o.id,k),e=!0,n===!0&&t._centerParent(o))}}},m=function(o,n){for(var r=n.id,a=n.edges,l=t.hierarchicalLevels[n.id],u=t.options.hierarchical.levelSeparation*t.options.hierarchical.levelSeparation,c={},p=[],f=0;fr;r++){var a=g(o,i),h=y(o,i),d=40,l=Math.max(-d,Math.min(d,Math.round(a/h)));if(o-=l,void 0!==s[o])break;s[o]=r}return o},_=function(o){var r=t._getPositionForHierarchy(n);if(void 0===i[n.id]){var a={};a[n.id]=!0,h(n,a),i[n.id]=a}var l=d(i[n.id]),u=s(l,4),c=(u[0],u[1],u[2]),p=u[3],f=o-r,m=0;f>0?m=Math.min(f,p-t.options.hierarchical.nodeSpacing):0>f&&(m=-Math.min(-f,c-t.options.hierarchical.nodeSpacing)),0!=m&&(t._shiftBlock(n.id,m),e=!0)},w=function(i){var o=t._getPositionForHierarchy(n),r=t._getSpaceAroundNode(n),a=s(r,2),h=a[0],d=a[1],l=i-o,u=o;l>0?u=Math.min(o+(d-t.options.hierarchical.nodeSpacing),i):0>l&&(u=Math.max(o-(h-t.options.hierarchical.nodeSpacing),i)),u!==o&&(t._setPositionForHierarchy(n,u,void 0,!0),e=!0)},x=b(o,p);_(x),x=b(o,a),w(x)},v=function(i){var o=Object.keys(t.distributionOrdering);o=o.reverse();for(var n=0;i>n;n++){e=!1;for(var s=0;sn&&(e=!1,p(f,o,!0),e===!0);n++);},y=function(){for(var e in t.body.nodes)t.body.nodes.hasOwnProperty(e)&&t._centerParent(t.body.nodes[e])};this.options.hierarchical.blockShifting===!0&&(g(5),y()),this.options.hierarchical.edgeMinimization===!0&&v(20),o()}},{key:"_getSpaceAroundNode",value:function(t,e){var i=!0;void 0===e&&(i=!1);var o=this.hierarchicalLevels[t.id];if(void 0!==o){var n=this.distributionIndex[t.id],s=this._getPositionForHierarchy(t),r=1e9,a=1e9;if(0!==n){var h=this.distributionOrdering[o][n-1];if(i===!0&&void 0===e[h.id]||i===!1){var d=this._getPositionForHierarchy(h);r=s-d}}if(n!=this.distributionOrdering[o].length-1){var l=this.distributionOrdering[o][n+1];if(i===!0&&void 0===e[l.id]||i===!1){var u=this._getPositionForHierarchy(l);a=Math.min(a,u-s)}}return[r,a]}return[0,0]}},{key:"_centerParent",value:function(t){if(this.hierarchicalChildren[t.id])for(var e=this.hierarchicalChildren[t.id].parents,i=0;i0)for(var d=0;dg&&Math.abs(g)0&&Math.abs(g)0&&(e=this._getHubSize(),0!==e);)for(var o in this.body.nodes)if(this.body.nodes.hasOwnProperty(o)){var n=this.body.nodes[o];n.edges.length===e&&this._crawlNetwork(i,o)}}},{key:"_determineLevelsCustomCallback",value:function(){var t=this,e=1e5,i=function(t,e,i){},o=function(o,n,s){var r=t.hierarchicalLevels[o.id];void 0===r&&(t.hierarchicalLevels[o.id]=e);var a=i(h["default"].cloneOptions(o,"node"),h["default"].cloneOptions(n,"node"),h["default"].cloneOptions(s,"edge"));t.hierarchicalLevels[n.id]=t.hierarchicalLevels[o.id]+a};this._crawlNetwork(o),this._setMinLevelToZero()}},{key:"_determineLevelsDirected",value:function(){var t=this,e=1e4,i=function(i,o,n){var s=t.hierarchicalLevels[i.id];void 0===s&&(t.hierarchicalLevels[i.id]=e),n.toId==o.id?t.hierarchicalLevels[o.id]=t.hierarchicalLevels[i.id]+1:t.hierarchicalLevels[o.id]=t.hierarchicalLevels[i.id]-1};this._crawlNetwork(i),this._setMinLevelToZero()}},{key:"_setMinLevelToZero",value:function(){var t=1e9;for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(t=Math.min(this.hierarchicalLevels[e],t));for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(this.hierarchicalLevels[e]-=t)}},{key:"_generateMap",value:function(){var t=this,e=function(e,i){if(t.hierarchicalLevels[i.id]>t.hierarchicalLevels[e.id]){var o=e.id,n=i.id;void 0===t.hierarchicalParents[o]&&(t.hierarchicalParents[o]={children:[],amount:0}),t.hierarchicalParents[o].children.push(n),void 0===t.hierarchicalChildren[n]&&(t.hierarchicalChildren[n]={parents:[],amount:0}),t.hierarchicalChildren[n].parents.push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(t,e){void 0===t&&(t=function(){});var i={},o=function r(e){if(void 0===i[e.id]){i[e.id]=!0;for(var o=void 0,n=0;ne&&void 0===this.positionedNodes[n.id]))return;var r=void 0;if(r=0===o?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[o-1])+this.options.hierarchical.nodeSpacing,this._setPositionForHierarchy(n,r,s),void 0!==this.lastNodeOnLevel[s]){var a=this._getPositionForHierarchy(this.body.nodes[this.lastNodeOnLevel[s]]);if(r-a1&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.sort(function(t,e){return t.x-e.x}):t.sort(function(t,e){return t.y-e.y}))}}]),t}();e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0&&this.options.deleteNode!==!1?(n===!0&&this._createSeperator(4),this._createDeleteButton(o)):0===t&&this.options.deleteEdge!==!1&&(n===!0&&this._createSeperator(4),this._createDeleteButton(o))),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this)),this._temporaryBindEvent("select",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.addDescription||this.options.locales.en.addDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent("click",this._performAddNode.bind(this))}},{key:"editNode",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean();var e=this.selectionHandler._getSelectedNode();if(void 0!==e){if(this.inMode="editNode","function"!=typeof this.options.editNode)throw new Error("No function has been configured to handle the editing of nodes.");if(e.isCluster!==!0){var i=s.deepExtend({},e.options,!0);if(i.x=e.x,i.y=e.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(i,function(e){null!==e&&void 0!==e&&"editNode"===t.inMode&&t.body.data.nodes.getDataSet().update(e),t.showManipulatorToolbar()})}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.edgeDescription||this.options.locales.en.edgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI("onTouch",this._handleConnect.bind(this)),this._temporaryBindUI("onDragEnd",this._finishConnect.bind(this)),this._temporaryBindUI("onDrag",this._dragControlNode.bind(this)),this._temporaryBindUI("onRelease",this._finishConnect.bind(this)),this._temporaryBindUI("onDragStart",function(){}),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){var t=this;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",this.guiEnabled===!0){var e=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(e),this._createSeperator(),this._createDescription(e.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0!==this.edgeBeingEditedId?!function(){var e=t.body.edges[t.edgeBeingEditedId],i=t._getNewTargetNode(e.from.x,e.from.y),o=t._getNewTargetNode(e.to.x,e.to.y);t.temporaryIds.nodes.push(i.id),t.temporaryIds.nodes.push(o.id),t.body.nodes[i.id]=i,t.body.nodeIndices.push(i.id),t.body.nodes[o.id]=o,t.body.nodeIndices.push(o.id),t._temporaryBindUI("onTouch",t._controlNodeTouch.bind(t)),t._temporaryBindUI("onTap",function(){}),t._temporaryBindUI("onHold",function(){}),t._temporaryBindUI("onDragStart",t._controlNodeDragStart.bind(t)),t._temporaryBindUI("onDrag",t._controlNodeDrag.bind(t)),t._temporaryBindUI("onDragEnd",t._controlNodeDragEnd.bind(t)),t._temporaryBindUI("onMouseMove",function(){}),t._temporaryBindEvent("beforeDrawing",function(t){var n=e.edgeType.findBorderPositions(t);i.selected===!1&&(i.x=n.from.x,i.y=n.from.y),o.selected===!1&&(o.x=n.to.x,o.y=n.to.y)}),t.body.emitter.emit("_redraw")}():this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";var e=this.selectionHandler.getSelectedNodes(),i=this.selectionHandler.getSelectedEdges(),o=void 0;if(e.length>0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode?(t.body.data.edges.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){void 0===this.manipulationDiv&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),void 0===this.editModeDiv&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),void 0===this.closeDiv&&(this.closeDiv=document.createElement("div"),this.closeDiv.className="vis-close",this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(t,e){var i=s.deepExtend({},this.options.controlNodeStyle);i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e;var o=this.body.functions.createNode(i);return o.shape.boundingBox={left:t,right:t,top:e,bottom:e},o}},{key:"_createEditButton",value:function(){this._clean(),this.manipulationDOM={},s.recursiveDOMDelete(this.editModeDiv);var t=this.options.locales[this.options.locale],e=this._createButton("editMode","vis-button vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(e),this._bindHammerToDiv(e,this.toggleEditMode.bind(this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(s.recursiveDOMDelete(this.editModeDiv),s.recursiveDOMDelete(this.manipulationDiv),this._cleanManipulatorHammers()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanManipulatorHammers",value:function(){if(0!=this.manipulationHammers.length){for(var t=0;t=0;r--)if(n[r]!==this.selectedControlNode.id){s=this.body.nodes[n[r]];break}if(void 0!==s&&void 0!==this.selectedControlNode)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,o.to.id):this._performEditEdge(o.from.id,s.id)}else o.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(t){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(t.center),this.lastTouch.translation=s.extend({},this.body.view.translation);var e=this.lastTouch,i=this.selectionHandler.getNodeAt(e);if(void 0!==i)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var o=this._getNewTargetNode(i.x,i.y);this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id);var n=this.body.functions.createEdge({id:"connectionEdge"+s.randomUUID(),from:i.id,to:o.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[n.id]=n,this.body.edgeIndices.push(n.id),this.temporaryIds.nodes.push(o.id),this.temporaryIds.edges.push(n.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(t){var e=this.body.functions.getPointer(t.center);if(void 0!==this.temporaryIds.nodes[0]){var i=this.body.nodes[this.temporaryIds.nodes[0]];i.x=this.canvas._XconvertDOMtoCanvas(e.x),i.y=this.canvas._YconvertDOMtoCanvas(e.y),this.body.emitter.emit("_redraw")}else{var o=e.x-this.lastTouch.x,n=e.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+o,y:this.lastTouch.translation.y+n}}}},{key:"_finishConnect",value:function(t){var e=this.body.functions.getPointer(t.center),i=this.selectionHandler._pointerToPositionObject(e),o=void 0;void 0!==this.temporaryIds.edges[0]&&(o=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var n=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,r=n.length-1;r>=0;r--)if(-1===this.temporaryIds.nodes.indexOf(n[r])){s=this.body.nodes[n[r]];break}this._cleanupTemporaryNodesAndEdges(),void 0!==s&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="object",a="dom",h="any",d={configure:{enabled:{"boolean":o},filter:{"boolean":o,string:i,array:s,"function":"function"},container:{dom:a},showButton:{"boolean":o},__type__:{object:r,"boolean":o,string:i,array:s,"function":"function"}},edges:{arrows:{to:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},middle:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},from:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},__type__:{string:["from","to","middle"],object:r}},arrowStrikethrough:{"boolean":o},color:{color:{string:i},highlight:{string:i},hover:{string:i},inherit:{string:["from","to","both"],"boolean":o},opacity:{number:n},__type__:{object:r,string:i}},dashes:{"boolean":o,array:s},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},align:{string:["horizontal","top","middle","bottom"]},__type__:{object:r,string:i}},hidden:{"boolean":o},hoverWidth:{"function":"function",number:n},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},length:{number:n,undefined:"undefined"},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},selectionWidth:{"function":"function",number:n},selfReferenceSize:{number:n},shadow:{enabled:{"boolean":o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},smooth:{enabled:{"boolean":o},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:n},forceDirection:{string:["horizontal","vertical","none"],"boolean":o},__type__:{object:r,"boolean":o}},title:{string:i,undefined:"undefined"},width:{number:n},value:{number:n,undefined:"undefined"},__type__:{object:r}},groups:{useDefaultGroups:{"boolean":o},__any__:"get from nodes, will be overwritten below",__type__:{object:r}},interaction:{dragNodes:{"boolean":o},dragView:{"boolean":o},hideEdgesOnDrag:{"boolean":o},hideNodesOnDrag:{"boolean":o},hover:{"boolean":o},keyboard:{enabled:{"boolean":o},speed:{x:{number:n},y:{number:n},zoom:{number:n},__type__:{object:r}},bindToWindow:{"boolean":o},__type__:{object:r,"boolean":o}},multiselect:{"boolean":o},navigationButtons:{"boolean":o},selectable:{"boolean":o},selectConnectedEdges:{"boolean":o},hoverConnectedEdges:{"boolean":o},tooltipDelay:{number:n},zoomView:{"boolean":o},__type__:{object:r}},layout:{randomSeed:{undefined:"undefined",number:n},improvedLayout:{"boolean":o},hierarchical:{enabled:{"boolean":o},levelSeparation:{number:n},nodeSpacing:{number:n},treeSpacing:{number:n},blockShifting:{"boolean":o},edgeMinimization:{"boolean":o},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:r,"boolean":o}},__type__:{object:r}},manipulation:{enabled:{"boolean":o},initiallyActive:{"boolean":o},addNode:{"boolean":o,"function":"function"},addEdge:{"boolean":o,"function":"function"},editNode:{"function":"function"},editEdge:{"boolean":o,"function":"function"},deleteNode:{"boolean":o,"function":"function"},deleteEdge:{"boolean":o,"function":"function"},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:r,"boolean":o}},nodes:{borderWidth:{number:n},borderWidthSelected:{number:n,undefined:"undefined"},brokenImage:{string:i,undefined:"undefined"},color:{border:{string:i},background:{string:i},highlight:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},__type__:{object:r,string:i}},fixed:{x:{"boolean":o},y:{"boolean":o},__type__:{object:r,"boolean":o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:r,string:i}},group:{string:i,number:n,undefined:"undefined"},hidden:{"boolean":o},icon:{face:{string:i},code:{string:i},size:{number:n},color:{string:i},__type__:{object:r}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},shadow:{enabled:{"boolean":o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},shapeProperties:{borderDashes:{"boolean":o,array:s},borderRadius:{number:n},useImageSize:{"boolean":o},useBorderWithImage:{"boolean":o},__type__:{object:r}},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:r}},physics:{enabled:{"boolean":o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},forceAtlas2Based:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},maxVelocity:{number:n},minVelocity:{number:n},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":o},iterations:{number:n},updateInterval:{number:n},onlyDynamicEdges:{"boolean":o},fit:{"boolean":o},__type__:{object:r,"boolean":o}},timestep:{number:n},adaptiveTimestep:{"boolean":o},__type__:{object:r,"boolean":o}},autoResize:{"boolean":o},clickToUse:{"boolean":o},locale:{string:i},locales:{__any__:{any:h},__type__:{object:r}},height:{string:i},width:{string:i},__type__:{object:r}};d.groups.__any__=d.nodes,d.manipulation.controlNodeStyle=d.nodes;var l={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01]},global:{locale:["en","nl"]}};e.allOptions=d,e.configureOptions=l},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=function(){function t(t,e){for(var i=0;in&&h>a;){a+=1;var v=this._getHighestEnergyNode(i),g=s(v,4);for(u=g[0],l=g[1],c=g[2],p=g[3],f=l,m=0;f>r&&d>m;){m+=1,this._moveNode(u,c,p);var y=this._getEnergy(u),b=s(y,3);f=b[0],c=b[1],p=b[2]}}}},{key:"_getHighestEnergyNode",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=0,n=e[0],r=0,a=0,h=0;ho&&(o=c,n=d,r=p,a=f)}}return[n,o,r,a]}},{key:"_getEnergy",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=i[t].x,n=i[t].y,s=0,r=0,a=0;ad;d++)for(var s=0;h-1>s;s++)for(var r=s+1;h>r;r++)o[e[s]][e[r]]=Math.min(o[e[s]][e[r]],o[e[s]][e[d]]+o[e[d]][e[r]]),o[e[r]][e[s]]=o[e[s]][e[r]];return o}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.circle=function(t,e,i){this.beginPath(),this.arc(t,e,i,0,2*Math.PI,!1),this.closePath()},CanvasRenderingContext2D.prototype.square=function(t,e,i){this.beginPath(),this.rect(t-i,e-i,2*i,2*i),this.closePath()},CanvasRenderingContext2D.prototype.triangle=function(t,e,i){this.beginPath(),i*=1.15,e+=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e-(r-s)),this.lineTo(t+n,e+s),this.lineTo(t-n,e+s),this.lineTo(t,e-(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.triangleDown=function(t,e,i){this.beginPath(),i*=1.15,e-=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e+(r-s)),this.lineTo(t+n,e-s),this.lineTo(t-n,e-s),this.lineTo(t,e+(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.star=function(t,e,i){this.beginPath(),i*=.82,e+=.1*i;for(var o=0;10>o;o++){var n=o%2===0?1.3*i:.5*i;this.lineTo(t+n*Math.sin(2*o*Math.PI/10),e-n*Math.cos(2*o*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.diamond=function(t,e,i){this.beginPath(),this.lineTo(t,e+i),this.lineTo(t+i,e),this.lineTo(t,e-i),this.lineTo(t-i,e),this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,o,n){var s=Math.PI/180;0>i-2*n&&(n=i/2),0>o-2*n&&(n=o/2),this.beginPath(),this.moveTo(t+n,e),this.lineTo(t+i-n,e),this.arc(t+i-n,e+n,n,270*s,360*s,!1),this.lineTo(t+i,e+o-n),this.arc(t+i-n,e+o-n,n,0,90*s,!1),this.lineTo(t+n,e+o),this.arc(t+n,e+o-n,n,90*s,180*s,!1),this.lineTo(t,e+n),this.arc(t+n,e+n,n,180*s,270*s,!1),this.closePath()},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,o){var n=.5522848,s=i/2*n,r=o/2*n,a=t+i,h=e+o,d=t+i/2,l=e+o/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-s,e,d,e),this.bezierCurveTo(d+s,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+s,h,d,h),this.bezierCurveTo(d-s,h,t,l+r,t,l),this.closePath()},CanvasRenderingContext2D.prototype.database=function(t,e,i,o){var n=1/3,s=i,r=o*n,a=.5522848,h=s/2*a,d=r/2*a,l=t+s,u=e+r,c=t+s/2,p=e+r/2,f=e+(o-r/2),m=e+o;this.beginPath(),this.moveTo(l,p),this.bezierCurveTo(l,p+d,c+h,u,c,u),this.bezierCurveTo(c-h,u,t,p+d,t,p),this.bezierCurveTo(t,p-d,c-h,e,c,e),this.bezierCurveTo(c+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,c+h,m,c,m),this.bezierCurveTo(c-h,m,t,f+d,t,f),this.lineTo(t,p)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,o){var n=t-o*Math.cos(i),s=e-o*Math.sin(i),r=t-.9*o*Math.cos(i),a=e-.9*o*Math.sin(i),h=n+o/3*Math.cos(i+.5*Math.PI),d=s+o/3*Math.sin(i+.5*Math.PI),l=n+o/3*Math.cos(i-.5*Math.PI),u=s+o/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,u),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,o,n){this.beginPath(),this.moveTo(t,e);for(var s=n.length,r=i-t,a=o-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,u=!0,c=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=0>r?-c:c,t+=c,e+=h*c,u===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e){function i(t){return P=t,p()}function o(){I=0,N=P.charAt(0)}function n(){I++,N=P.charAt(I)}function s(){return P.charAt(I+1)}function r(t){return A.test(t)}function a(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function h(t,e,i){for(var o=e.split("."),n=t;o.length;){var s=o.shift();o.length?(n[s]||(n[s]={}),n=n[s]):n[s]=i}}function d(t,e){for(var i,o,n=null,s=[t],r=t;r.parent;)s.push(r.parent),r=r.parent;if(r.nodes)for(i=0,o=r.nodes.length;o>i;i++)if(e.id===r.nodes[i].id){n=r.nodes[i];break}for(n||(n={id:e.id},t.node&&(n.attr=a(n.attr,t.node))),i=s.length-1;i>=0;i--){var h=s[i];h.nodes||(h.nodes=[]),-1===h.nodes.indexOf(n)&&h.nodes.push(n)}e.attr&&(n.attr=a(n.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function u(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=a({},t.edge)),s.attr=a(s.attr||{},n),s}function c(){for(L=T.NULL,z="";" "===N||" "===N||"\n"===N||"\r"===N;)n();do{var t=!1;if("#"===N){for(var e=I-1;" "===P.charAt(e)||" "===P.charAt(e);)e--;if("\n"===P.charAt(e)||""===P.charAt(e)){for(;""!=N&&"\n"!=N;)n();t=!0}}if("/"===N&&"/"===s()){for(;""!=N&&"\n"!=N;)n();t=!0}if("/"===N&&"*"===s()){for(;""!=N;){if("*"===N&&"/"===s()){n(),n();break}n()}t=!0}for(;" "===N||" "===N||"\n"===N||"\r"===N;)n()}while(t);if(""===N)return void(L=T.DELIMITER);var i=N+s();if(E[i])return L=T.DELIMITER,z=i,n(),void n();if(E[N])return L=T.DELIMITER,z=N,void n();if(r(N)||"-"===N){for(z+=N,n();r(N);)z+=N,n();return"false"===z?z=!1:"true"===z?z=!0:isNaN(Number(z))||(z=Number(z)),void(L=T.IDENTIFIER)}if('"'===N){for(n();""!=N&&('"'!=N||'"'===N&&'"'===s());)z+=N,'"'===N&&n(),n();if('"'!=N)throw w('End of string " expected');return n(),void(L=T.IDENTIFIER)}for(L=T.UNKNOWN;""!=N;)z+=N,n();throw new SyntaxError('Syntax error in part "'+x(z,30)+'"')}function p(){var t={};if(o(),c(),"strict"===z&&(t.strict=!0,c()),("graph"===z||"digraph"===z)&&(t.type=z,c()),L===T.IDENTIFIER&&(t.id=z,c()),"{"!=z)throw w("Angle bracket { expected");if(c(),f(t),"}"!=z)throw w("Angle bracket } expected");if(c(),""!==z)throw w("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&c()}function m(t){var e=v(t);if(e)return void b(t,e);var i=g(t);if(!i){if(L!=T.IDENTIFIER)throw w("Identifier expected");var o=z;if(c(),"="===z){if(c(),L!=T.IDENTIFIER)throw w("Identifier expected");t[o]=z,c()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph",c(),L===T.IDENTIFIER&&(e.id=z,c())),"{"===z){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=z)throw w("Angle bracket } expected");c(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function g(t){return"node"===z?(c(),t.node=_(),"node"):"edge"===z?(c(),t.edge=_(),"edge"):"graph"===z?(c(),t.graph=_(),"graph"):null}function y(t,e){var i={id:e},o=_();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===z||"--"===z;){var i,o=z;c();var n=v(t);if(n)i=n;else{if(L!=T.IDENTIFIER)throw w("Identifier or subgraph expected");i=z,d(t,{id:i}),c()}var s=_(),r=u(t,e,i,o,s);l(t,r),e=i}}function _(){for(var t=null;"["===z;){for(c(),t={};""!==z&&"]"!=z;){if(L!=T.IDENTIFIER)throw w("Attribute name expected");var e=z;if(c(),"="!=z)throw w("Equal sign = expected");if(c(),L!=T.IDENTIFIER)throw w("Attribute value expected");var i=z;h(t,e,i),c(),","==z&&c()}if("]"!=z)throw w("Bracket ] expected");c()}return t}function w(t){return new SyntaxError(t+', got "'+x(z,30)+'" (char '+I+")")}function x(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function k(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function O(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},P="",I=0,N="",z="",L=T.NULL,A=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=D},function(t,e){function i(t,e){var i=[],o=[],n={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};void 0!==e&&(void 0!==e.fixed&&(n.nodes.fixed=e.fixed),void 0!==e.parseColor&&(n.nodes.parseColor=e.parseColor),void 0!==e.inheritColor&&(n.edges.inheritColor=e.inheritColor));for(var s=t.edges,r=t.nodes,a=0;a. + * @param {function} comparator an optional comparator, returning -1,0,1 for <,==,>. * @returns {number} * @private */ diff --git a/package.json b/package.json index 76fc4325..1554acf8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vis", - "version": "4.12.1-SNAPSHOT", + "version": "4.13.0", "description": "A dynamic, browser-based visualization library.", "homepage": "http://visjs.org/", "license": "(Apache-2.0 OR MIT)",