@trilogy-ds/react 4.16.1 → 4.16.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,11 +4,11 @@ import { Text, TextLevels } from '../../../components/text';
4
4
  import { useTrilogyContext } from '../../../context';
5
5
  import { hashClass } from '../../../helpers';
6
6
  import { TypographyAlign, TypographyBold } from '../../../objects';
7
- import { getColorStyle, TrilogyColor } from '../../../objects/facets/Color';
7
+ import { is } from '../../../services';
8
8
  import clsx from 'clsx';
9
9
  import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
10
10
  var CIRCLE_SIZE = 172;
11
- var CIRCLE_THICKNESS = 24;
11
+ var CIRCLE_THICKNESS = 27;
12
12
  var CURSOR_SIZE = 30;
13
13
  var HOUR_DOT_SIZE = 8;
14
14
  var HOUR_DOTS_COUNT = 24;
@@ -34,9 +34,14 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
34
34
  };
35
35
  };
36
36
  var _e = parseTime(value), initialHours = _e.hours, initialMinutes = _e.minutes;
37
+ var progressContainerClasses = hashClass(styled, clsx('timepicker-circular_progress-container'));
38
+ var progressClasses = hashClass(styled, clsx('timepicker-circular_progress'));
39
+ var dotClasses = hashClass(styled, clsx('timepicker-circular_dot-hour'));
40
+ var dotFilledClasses = hashClass(styled, clsx(is('filled')));
37
41
  var _f = __read(useState(initialHours), 2), currentHours = _f[0], setCurrentHours = _f[1];
38
42
  var _g = __read(useState(initialMinutes), 2), currentMinutes = _g[0], setCurrentMinutes = _g[1];
39
43
  var _h = __read(useState(false), 2), isDragging = _h[0], setIsDragging = _h[1];
44
+ var _j = __read(useState(0), 2), blurKey = _j[0], setBlurKey = _j[1];
40
45
  var refsSegment = useRef([]);
41
46
  var containerRef = useRef(null);
42
47
  var lastAngle = useRef(null);
@@ -46,9 +51,6 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
46
51
  setCurrentHours(hours);
47
52
  setCurrentMinutes(minutes);
48
53
  }, [value]);
49
- var mainColor = getColorStyle(TrilogyColor.MAIN);
50
- var mainFadeColor = getColorStyle(TrilogyColor.MAIN_FADE);
51
- var dotColor = getColorStyle(TrilogyColor.NEUTRAL);
52
54
  var radius = (CIRCLE_SIZE - CIRCLE_THICKNESS) / 2;
53
55
  var centerX = CIRCLE_SIZE / 2;
54
56
  var centerY = CIRCLE_SIZE / 2;
@@ -107,7 +109,7 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
107
109
  var dx = x - cursorCenterX;
108
110
  var dy = y - cursorCenterY;
109
111
  var distance = Math.sqrt(dx * dx + dy * dy);
110
- return distance <= CURSOR_SIZE * 2;
112
+ return distance <= CURSOR_SIZE / 2 + 4;
111
113
  };
112
114
  var isOnHourDot = function (x, y) {
113
115
  for (var i = 0; i < HOUR_DOTS_COUNT; i++) {
@@ -173,9 +175,9 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
173
175
  return;
174
176
  event.preventDefault();
175
177
  var _b = getMousePosition(event), x = _b.x, y = _b.y;
176
- pointerIdRef.current = event.pointerId;
177
- (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.setPointerCapture(event.pointerId);
178
178
  if (isOnCursor(x, y)) {
179
+ pointerIdRef.current = event.pointerId;
180
+ (_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.setPointerCapture(event.pointerId);
179
181
  setIsDragging(true);
180
182
  lastAngle.current = null;
181
183
  var dx = x - centerX;
@@ -231,11 +233,12 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
231
233
  else {
232
234
  var newMinutes = isNaN(numValue) || value === '' ? 0 : Math.max(0, Math.min(59, numValue));
233
235
  newMinutes = Math.round(newMinutes / step) * step;
234
- if (newMinutes > 59)
235
- newMinutes = 59;
236
+ if (newMinutes >= 60)
237
+ newMinutes = 60 - step;
236
238
  setCurrentMinutes(newMinutes);
237
239
  onChange === null || onChange === void 0 ? void 0 : onChange(formatTime(currentHours, newMinutes));
238
240
  }
241
+ setBlurKey(function (k) { return k + 1; });
239
242
  }, [currentHours, currentMinutes, onChange, formatNumber, formatTime, step]);
240
243
  var handleKeyDown = useCallback(function (e) {
241
244
  var target = e.target;
@@ -277,18 +280,17 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
277
280
  alignItems: 'center',
278
281
  cursor: 'pointer',
279
282
  }, onClick: function () { return handleHourDotPress(i); } },
280
- React.createElement("div", { style: {
283
+ React.createElement("div", { className: "".concat(dotClasses, " ").concat(isFilled ? dotFilledClasses : ''), style: {
281
284
  width: HOUR_DOT_SIZE,
282
285
  height: HOUR_DOT_SIZE,
283
286
  borderRadius: '50%',
284
- backgroundColor: isFilled ? mainColor : dotColor,
285
287
  } })));
286
288
  };
287
289
  for (var i = 0; i < HOUR_DOTS_COUNT; i++) {
288
290
  _loop_1(i);
289
291
  }
290
292
  return dots;
291
- }, [currentHours, currentMinutes, mainColor, dotColor, centerX, radius, maxMinutes, handleHourDotPress]);
293
+ }, [currentHours, currentMinutes, centerX, radius, maxMinutes, handleHourDotPress]);
292
294
  var progressGauge = useMemo(function () {
293
295
  var strokeWidth = CIRCLE_THICKNESS;
294
296
  var svgRadius = (CIRCLE_SIZE - strokeWidth) / 2;
@@ -302,9 +304,9 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
302
304
  progressOffset = circumference - (actualTotalMinutes / maxMinutes) * circumference;
303
305
  }
304
306
  return (React.createElement("svg", { width: CIRCLE_SIZE, height: CIRCLE_SIZE, style: { position: 'absolute', zIndex: 1 } },
305
- React.createElement("circle", { cx: CIRCLE_SIZE / 2, cy: CIRCLE_SIZE / 2, r: svgRadius, stroke: mainFadeColor, strokeWidth: strokeWidth, fill: 'transparent' }),
306
- React.createElement("circle", { cx: CIRCLE_SIZE / 2, cy: CIRCLE_SIZE / 2, r: svgRadius, stroke: mainColor, strokeWidth: strokeWidth, fill: 'transparent', strokeDasharray: circumference, strokeDashoffset: progressOffset, strokeLinecap: 'round', transform: "rotate(-90 ".concat(CIRCLE_SIZE / 2, " ").concat(CIRCLE_SIZE / 2, ")") })));
307
- }, [currentHours, currentMinutes, mainFadeColor, mainColor, maxMinutes]);
307
+ React.createElement("circle", { cx: CIRCLE_SIZE / 2, cy: CIRCLE_SIZE / 2, r: svgRadius, strokeWidth: strokeWidth, fill: 'transparent', className: progressContainerClasses }),
308
+ React.createElement("circle", { cx: CIRCLE_SIZE / 2, cy: CIRCLE_SIZE / 2, r: svgRadius, strokeWidth: strokeWidth, fill: 'transparent', strokeDasharray: circumference, strokeDashoffset: progressOffset, strokeLinecap: 'round', transform: "rotate(-90 ".concat(CIRCLE_SIZE / 2, " ").concat(CIRCLE_SIZE / 2, ")"), className: progressClasses })));
309
+ }, [currentHours, currentMinutes, maxMinutes]);
308
310
  var styles = useMemo(function () { return ({
309
311
  circleContainer: {
310
312
  cursor: 'pointer',
@@ -330,16 +332,16 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
330
332
  React.createElement("div", { style: styles.nonDraggableZone, className: hashClass(styled, clsx('non_draggable_zone')) }),
331
333
  React.createElement("div", { className: hashClass(styled, clsx('circle_container-inputs')) },
332
334
  React.createElement("div", { className: hashClass(styled, clsx('circle_container-inputs-wrapper')) },
333
- React.createElement("span", { "aria-valuemin": 0, "aria-valuemax": 24, "aria-readonly": false, "aria-label": 'hours', role: 'spinbutton', suppressContentEditableWarning: true, autoCorrect: 'off', autoCapitalize: 'none', spellCheck: false, "aria-valuetext": formatNumber(currentHours), contentEditable: !disabled, inputMode: 'numeric', onKeyDown: handleKeyDown, onBlur: function (e) { return handleBlur('hours', e.target); }, onMouseDown: function (e) { return e.stopPropagation(); }, className: hashClass(styled, clsx('circle_container-inputs-wrapper-input')), ref: function (el) {
335
+ React.createElement("span", { key: "hours-".concat(blurKey), "aria-valuemin": 0, "aria-valuemax": 24, "aria-readonly": false, "aria-label": 'hours', role: 'spinbutton', suppressContentEditableWarning: true, autoCorrect: 'off', autoCapitalize: 'none', spellCheck: false, "aria-valuetext": formatNumber(currentHours), contentEditable: !disabled, inputMode: 'numeric', onKeyDown: handleKeyDown, onBlur: function (e) { return handleBlur('hours', e.target); }, onMouseDown: function (e) { return e.stopPropagation(); }, onPointerDown: function (e) { return e.stopPropagation(); }, className: hashClass(styled, clsx('circle_container-inputs-wrapper-input')), ref: function (el) {
334
336
  if (el)
335
337
  refsSegment.current[0] = el;
336
338
  } },
337
339
  React.createElement(Text, { typo: [TypographyAlign.TEXT_CENTERED, TypographyBold.TEXT_WEIGHT_SEMIBOLD] }, formatNumber(currentHours))),
338
340
  React.createElement(Text, { level: TextLevels.TWO, typo: [TypographyAlign.TEXT_CENTERED] }, "Heures")),
339
341
  React.createElement("div", { className: hashClass(styled, clsx('circle_container-inputs-separator')) },
340
- React.createElement(Text, null, ":")),
342
+ React.createElement(Text, { typo: [TypographyBold.TEXT_WEIGHT_BOLD] }, ":")),
341
343
  React.createElement("div", { className: hashClass(styled, clsx('circle_container-inputs-wrapper')) },
342
- React.createElement("span", { "aria-valuemin": 0, "aria-valuemax": 59, "aria-readonly": false, "aria-label": 'minutes', role: 'spinbutton', suppressContentEditableWarning: true, autoCorrect: 'off', autoCapitalize: 'none', spellCheck: false, "aria-valuetext": formatNumber(currentMinutes), contentEditable: !disabled, inputMode: 'numeric', onKeyDown: handleKeyDown, onBlur: function (e) { return handleBlur('minutes', e.target); }, onMouseDown: function (e) { return e.stopPropagation(); }, className: hashClass(styled, clsx('circle_container-inputs-wrapper-input')), ref: function (el) {
344
+ React.createElement("span", { key: "minutes-".concat(blurKey), "aria-valuemin": 0, "aria-valuemax": 59, "aria-readonly": false, "aria-label": 'minutes', role: 'spinbutton', suppressContentEditableWarning: true, autoCorrect: 'off', autoCapitalize: 'none', spellCheck: false, "aria-valuetext": formatNumber(currentMinutes), contentEditable: !disabled, inputMode: 'numeric', onKeyDown: handleKeyDown, onBlur: function (e) { return handleBlur('minutes', e.target); }, onMouseDown: function (e) { return e.stopPropagation(); }, onPointerDown: function (e) { return e.stopPropagation(); }, className: hashClass(styled, clsx('circle_container-inputs-wrapper-input')), ref: function (el) {
343
345
  if (el)
344
346
  refsSegment.current[1] = el;
345
347
  } },
@@ -348,4 +350,4 @@ var TimepickerCircular = React.forwardRef(function (_a, ref) {
348
350
  });
349
351
  export default TimepickerCircular;
350
352
  TimepickerCircular.displayName = ComponentName.TimepickerCircular;
351
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZXBpY2tlckNpcmN1bGFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29tcG9uZW50cy90aW1lcGlja2VyL2NpcmN1bGFyL1RpbWVwaWNrZXJDaXJjdWxhci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDcEUsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFBO0FBQ3ZCLE9BQU8sS0FBSyxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQTtBQUdoRixJQUFNLFdBQVcsR0FBRyxHQUFHLENBQUE7QUFDdkIsSUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUE7QUFDM0IsSUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFBO0FBQ3RCLElBQU0sYUFBYSxHQUFHLENBQUMsQ0FBQTtBQUN2QixJQUFNLGVBQWUsR0FBRyxFQUFFLENBQUE7QUFFMUI7Ozs7OztHQU1HO0FBQ0gsSUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUN6QyxVQUFDLEVBQTRFLEVBQUUsR0FBRztJQUEvRSxJQUFBLGFBQWUsRUFBZixLQUFLLG1CQUFHLE9BQU8sS0FBQSxFQUFFLFFBQVEsY0FBQSxFQUFFLGdCQUFnQixFQUFoQixRQUFRLG1CQUFHLEtBQUssS0FBQSxFQUFFLFlBQVEsRUFBUixJQUFJLG1CQUFHLENBQUMsS0FBQSxFQUFFLE1BQU0sWUFBQSxFQUFLLE1BQU0sY0FBMUUsbURBQTRFLENBQUY7SUFDakUsSUFBQSxNQUFNLEdBQUssaUJBQWlCLEVBQUUsT0FBeEIsQ0FBd0I7SUFDdEMsSUFBTSxZQUFZLEdBQUcsVUFBQyxHQUFXLElBQWEsT0FBQSxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBL0IsQ0FBK0IsQ0FBQTtJQUM3RSxJQUFNLFVBQVUsR0FBRyxVQUFDLEtBQWEsRUFBRSxPQUFlLElBQWEsT0FBQSxVQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsY0FBSSxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUUsRUFBakQsQ0FBaUQsQ0FBQTtJQUVoSCxJQUFNLFNBQVMsR0FBRyxVQUFDLFVBQWtCO1FBQzdCLElBQUEsS0FBQSxPQUF5QixVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFBLEVBQTdDLFFBQVEsUUFBQSxFQUFFLFVBQVUsUUFBeUIsQ0FBQTtRQUNwRCxJQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsUUFBUSxJQUFJLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUMzQyxJQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsVUFBVSxJQUFJLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUMvQyxPQUFPO1lBQ0wsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMxRCxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQ2pFLENBQUE7SUFDSCxDQUFDLENBQUE7SUFFSyxJQUFBLEtBQW1ELFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBMUQsWUFBWSxXQUFBLEVBQVcsY0FBYyxhQUFxQixDQUFBO0lBRW5FLElBQUEsS0FBQSxPQUFrQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUEsRUFBdkQsWUFBWSxRQUFBLEVBQUUsZUFBZSxRQUEwQixDQUFBO0lBQ3hELElBQUEsS0FBQSxPQUFzQyxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUEsRUFBN0QsY0FBYyxRQUFBLEVBQUUsaUJBQWlCLFFBQTRCLENBQUE7SUFDOUQsSUFBQSxLQUFBLE9BQThCLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBQSxFQUE1QyxVQUFVLFFBQUEsRUFBRSxhQUFhLFFBQW1CLENBQUE7SUFDbkQsSUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFvQixFQUFFLENBQUMsQ0FBQTtJQUNqRCxJQUFNLFlBQVksR0FBRyxNQUFNLENBQWlCLElBQUksQ0FBQyxDQUFBO0lBQ2pELElBQU0sU0FBUyxHQUFHLE1BQU0sQ0FBZ0IsSUFBSSxDQUFDLENBQUE7SUFDN0MsSUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFnQixJQUFJLENBQUMsQ0FBQTtJQUVoRCxTQUFTLENBQUM7UUFDRixJQUFBLEtBQXFCLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBbkMsS0FBSyxXQUFBLEVBQUUsT0FBTyxhQUFxQixDQUFBO1FBQzNDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUN0QixpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUM1QixDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBRVgsSUFBTSxTQUFTLEdBQUcsYUFBYSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNsRCxJQUFNLGFBQWEsR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQzNELElBQU0sUUFBUSxHQUFHLGFBQWEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUE7SUFFcEQsSUFBTSxNQUFNLEdBQUcsQ0FBQyxXQUFXLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDbkQsSUFBTSxPQUFPLEdBQUcsV0FBVyxHQUFHLENBQUMsQ0FBQTtJQUMvQixJQUFNLE9BQU8sR0FBRyxXQUFXLEdBQUcsQ0FBQyxDQUFBO0lBRS9CLElBQUksWUFBWSxHQUFHLFlBQVksR0FBRyxFQUFFLEdBQUcsY0FBYyxDQUFBO0lBQ3JELElBQUksWUFBWSxLQUFLLEVBQUU7UUFBRSxZQUFZLEdBQUcsQ0FBQyxDQUFBO0lBRXpDLElBQU0sVUFBVSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUE7SUFDMUIsSUFBTSxLQUFLLEdBQUcsQ0FBQyxZQUFZLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUE7SUFFckUsSUFBTSxPQUFPLEdBQUcsT0FBTyxHQUFHLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLFdBQVcsR0FBRyxDQUFDLENBQUE7SUFDcEUsSUFBTSxPQUFPLEdBQUcsT0FBTyxHQUFHLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLFdBQVcsR0FBRyxDQUFDLENBQUE7SUFFcEUsSUFBSSxhQUFhLENBQUE7SUFDakIsSUFBSSxZQUFZLEtBQUssRUFBRSxFQUFFO1FBQ3ZCLGFBQWEsR0FBRyxHQUFHLENBQUE7S0FDcEI7U0FBTTtRQUNMLElBQU0sa0JBQWtCLEdBQUcsWUFBWSxHQUFHLEVBQUUsR0FBRyxjQUFjLENBQUE7UUFDN0QsYUFBYSxHQUFHLENBQUMsa0JBQWtCLEdBQUcsVUFBVSxDQUFDLEdBQUcsR0FBRyxDQUFBO0tBQ3hEO0lBRUQsSUFBTSxtQkFBbUIsR0FBRyxXQUFXLENBQ3JDLFVBQUMsUUFBZ0I7UUFDZixJQUFJLGVBQWUsR0FBRyxRQUFRLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUE7UUFDNUMsSUFBSSxlQUFlLEdBQUcsQ0FBQztZQUFFLGVBQWUsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQTtRQUN2RCxJQUFJLGVBQWUsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUU7WUFBRSxlQUFlLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUE7UUFDbEUsSUFBTSxlQUFlLEdBQUcsQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFBO1FBQ3RFLElBQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQTtRQUNqRSxJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUMsQ0FBQTtRQUMvQyxJQUFJLFVBQVUsR0FBRyxlQUFlLEdBQUcsRUFBRSxDQUFBO1FBRXJDLElBQUksZUFBZSxJQUFJLElBQUksRUFBRTtZQUMzQixRQUFRLEdBQUcsRUFBRSxDQUFBO1lBQ2IsVUFBVSxHQUFHLENBQUMsQ0FBQTtTQUNmO1FBRUQsSUFBSSxRQUFRLEtBQUssWUFBWSxJQUFJLFVBQVUsS0FBSyxjQUFjLEVBQUU7WUFDOUQsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQ3pCLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFBO1lBQzdCLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUE7U0FDN0M7SUFDSCxDQUFDLEVBQ0QsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQzNELENBQUE7SUFFRCxJQUFNLGdCQUFnQixHQUFHLFVBQ3ZCLEtBQXFGO1FBRXJGLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTztZQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQTtRQUNoRCxJQUFNLElBQUksR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUE7UUFDekQsSUFBTSxRQUFRLEdBQUcsS0FBWSxDQUFBO1FBQzdCLElBQUksUUFBUSxDQUFDLE9BQU8sSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbkQsSUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtZQUM3QixPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7U0FDN0Q7UUFDRCxPQUFPO1lBQ0wsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUk7WUFDL0IsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEdBQUc7U0FDL0IsQ0FBQTtJQUNILENBQUMsQ0FBQTtJQUVELElBQU0sVUFBVSxHQUFHLFVBQUMsQ0FBUyxFQUFFLENBQVM7UUFDdEMsSUFBTSxhQUFhLEdBQUcsT0FBTyxHQUFHLFdBQVcsR0FBRyxDQUFDLENBQUE7UUFDL0MsSUFBTSxhQUFhLEdBQUcsT0FBTyxHQUFHLFdBQVcsR0FBRyxDQUFDLENBQUE7UUFDL0MsSUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLGFBQWEsQ0FBQTtRQUM1QixJQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsYUFBYSxDQUFBO1FBQzVCLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUE7UUFDN0MsT0FBTyxRQUFRLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQTtJQUNwQyxDQUFDLENBQUE7SUFFRCxJQUFNLFdBQVcsR0FBRyxVQUFDLENBQVMsRUFBRSxDQUFTO1FBQ3ZDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxlQUFlLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDeEMsSUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFDLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDbEUsSUFBTSxJQUFJLEdBQUcsT0FBTyxHQUFHLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQ2xELElBQU0sSUFBSSxHQUFHLE9BQU8sR0FBRyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtZQUNsRCxJQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFBO1lBQ25CLElBQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUE7WUFDbkIsSUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQTtZQUM3QyxJQUFJLFFBQVEsSUFBSSxhQUFhLEdBQUcsQ0FBQztnQkFBRSxPQUFPLENBQUMsQ0FBQTtTQUM1QztRQUNELE9BQU8sQ0FBQyxDQUFDLENBQUE7SUFDWCxDQUFDLENBQUE7SUFFRCxJQUFNLGVBQWUsR0FBRyxVQUFDLEtBQXVCO1FBQzlDLElBQUksUUFBUTtZQUFFLE9BQU07UUFDcEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBRWhCLElBQUEsS0FBVyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsRUFBaEMsQ0FBQyxPQUFBLEVBQUUsQ0FBQyxPQUE0QixDQUFBO1FBQ3hDLElBQUksVUFBVSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRTtZQUNwQixhQUFhLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDbkIsU0FBUyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7WUFFeEIsSUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQTtZQUN0QixJQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFBO1lBQ3RCLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFBO1lBQ25DLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFBO1NBQzlCO2FBQU07WUFDTCxJQUFNLFlBQVksR0FBRyxXQUFXLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ3RDLElBQUksWUFBWSxLQUFLLENBQUMsQ0FBQyxFQUFFO2dCQUN2QixrQkFBa0IsQ0FBQyxZQUFZLENBQUMsQ0FBQTthQUNqQztTQUNGO0lBQ0gsQ0FBQyxDQUFBO0lBRUQsSUFBTSxVQUFVLEdBQUcsV0FBVyxDQUM1QixVQUFDLEtBQWdDO1FBQy9CLElBQUksQ0FBQyxVQUFVLElBQUksUUFBUTtZQUFFLE9BQU07UUFDbkMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBRWhCLElBQUEsS0FBVyxnQkFBZ0IsQ0FBQyxLQUFZLENBQUMsRUFBdkMsQ0FBQyxPQUFBLEVBQUUsQ0FBQyxPQUFtQyxDQUFBO1FBQy9DLElBQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUVuQyxJQUFJLFNBQVMsQ0FBQyxPQUFPLEtBQUssSUFBSSxFQUFFO1lBQzlCLElBQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtZQUN4RCxJQUFJLFNBQVMsR0FBRyxJQUFJO2dCQUFFLE9BQU07U0FDN0I7UUFFRCxTQUFTLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQTtRQUM1QixtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUMvQixDQUFDLEVBQ0QsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsbUJBQW1CLENBQUMsQ0FDOUQsQ0FBQTtJQUVELElBQU0sYUFBYSxHQUFHLFdBQVcsQ0FBQzs7UUFDaEMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BCLFNBQVMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1FBQ3hCLElBQUksWUFBWSxDQUFDLE9BQU8sS0FBSyxJQUFJLEVBQUU7WUFDakMsTUFBQSxZQUFZLENBQUMsT0FBTywwQ0FBRSxxQkFBcUIsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUE7WUFDakUsWUFBWSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7U0FDNUI7SUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFFTixJQUFNLGlCQUFpQixHQUFHLFVBQUMsS0FBeUI7O1FBQ2xELElBQUksUUFBUTtZQUFFLE9BQU07UUFDcEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBRWhCLElBQUEsS0FBVyxnQkFBZ0IsQ0FBQyxLQUFZLENBQUMsRUFBdkMsQ0FBQyxPQUFBLEVBQUUsQ0FBQyxPQUFtQyxDQUFBO1FBQy9DLFlBQVksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQTtRQUN0QyxNQUFBLFlBQVksQ0FBQyxPQUFPLDBDQUFFLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUV4RCxJQUFJLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUU7WUFDcEIsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFBO1lBQ25CLFNBQVMsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1lBRXhCLElBQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUE7WUFDdEIsSUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQTtZQUN0QixJQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQTtZQUNuQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQTtTQUM5QjthQUFNO1lBQ0wsSUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUN0QyxJQUFJLFlBQVksS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDdkIsa0JBQWtCLENBQUMsWUFBWSxDQUFDLENBQUE7YUFDakM7U0FDRjtJQUNILENBQUMsQ0FBQTtJQUVELFNBQVMsQ0FBQztRQUNSLElBQUksVUFBVSxFQUFFO1lBQ2QsUUFBUSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQTtZQUNwRCxRQUFRLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQyxDQUFBO1lBQ3JELFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUE7WUFDbEQsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQTtZQUVuRCxPQUFPO2dCQUNMLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUE7Z0JBQ3ZELFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUE7Z0JBQ3hELFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUE7Z0JBQ3JELFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDLENBQUE7WUFDeEQsQ0FBQyxDQUFBO1NBQ0Y7SUFDSCxDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsVUFBVSxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUE7SUFFM0MsSUFBTSxrQkFBa0IsR0FBRyxXQUFXLENBQ3BDLFVBQUMsU0FBaUI7UUFDaEIsSUFBSSxRQUFRO1lBQUUsT0FBTTtRQUVwQixJQUFNLFFBQVEsR0FBRyxTQUFTLENBQUE7UUFDMUIsSUFBSSxVQUFVLEdBQUcsY0FBYyxDQUFBO1FBQy9CLElBQUksUUFBUSxLQUFLLEVBQUU7WUFBRSxVQUFVLEdBQUcsQ0FBQyxDQUFBO1FBQ25DLElBQUksUUFBUSxLQUFLLFlBQVksRUFBRTtZQUM3QixVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFBO1lBQ2pELElBQUksVUFBVSxHQUFHLEVBQUU7Z0JBQUUsVUFBVSxHQUFHLEVBQUUsQ0FBQTtTQUNyQztRQUNELGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN6QixpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUM3QixRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFBO0lBQzlDLENBQUMsRUFDRCxDQUFDLFFBQVEsRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FDekQsQ0FBQTtJQUVELElBQU0sVUFBVSxHQUFHLFdBQVcsQ0FDNUIsVUFBQyxJQUF5QixFQUFFLE9BQXdCO1FBQ2xELElBQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFBO1FBQ3ZDLElBQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFFcEMsSUFBSSxJQUFJLEtBQUssT0FBTyxFQUFFO1lBQ3BCLElBQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUE7WUFDMUYsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQ3pCLFFBQVEsYUFBUixRQUFRLHVCQUFSLFFBQVEsQ0FBRyxVQUFVLENBQUMsUUFBUSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUE7U0FDakQ7YUFBTTtZQUNMLElBQUksVUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUE7WUFDMUYsVUFBVSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQTtZQUNqRCxJQUFJLFVBQVUsR0FBRyxFQUFFO2dCQUFFLFVBQVUsR0FBRyxFQUFFLENBQUE7WUFDcEMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUE7WUFDN0IsUUFBUSxhQUFSLFFBQVEsdUJBQVIsUUFBUSxDQUFHLFVBQVUsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQTtTQUNqRDtJQUNILENBQUMsRUFDRCxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQ3pFLENBQUE7SUFFRCxJQUFNLGFBQWEsR0FBRyxXQUFXLENBQUMsVUFBQyxDQUF1QztRQUN4RSxJQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsTUFBeUIsQ0FBQTtRQUMxQyxJQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQTtRQUU1QyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssT0FBTztZQUFFLE9BQU8sQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBQ2hELElBQUksQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUFFLE9BQU07UUFDcEcsSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLENBQUMsQ0FBQyxPQUFPO1lBQUUsT0FBTTtRQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQUUsT0FBTyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUE7UUFFckQsSUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFBO1FBQ3ZDLElBQUksU0FBUyxJQUFJLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQztZQUFFLE9BQU07UUFDeEQsSUFBSSxXQUFXLENBQUMsTUFBTSxJQUFJLENBQUM7WUFBRSxPQUFPLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQTtJQUN4RCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFFTixJQUFNLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2YsSUFBTSxrQkFBa0IsR0FBRyxZQUFZLEdBQUcsRUFBRSxHQUFHLGNBQWMsQ0FBQTtRQUM3RCxJQUFNLGVBQWUsR0FBRyxZQUFZLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixHQUFHLFVBQVUsQ0FBQTtnQ0FFeEUsQ0FBQztZQUNSLElBQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFBO1lBQ2xFLElBQU0sSUFBSSxHQUFHLE9BQU8sR0FBRyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxhQUFhLEdBQUcsQ0FBQyxDQUFBO1lBQ3RFLElBQU0sSUFBSSxHQUFHLE9BQU8sR0FBRyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxhQUFhLEdBQUcsQ0FBQyxDQUFBO1lBQ3RFLElBQU0sV0FBVyxHQUFHLENBQUMsR0FBRyxlQUFlLENBQUE7WUFDdkMsSUFBTSxRQUFRLEdBQUcsV0FBVyxHQUFHLGVBQWUsSUFBSSxZQUFZLEtBQUssRUFBRSxDQUFBO1lBRXJFLElBQUksQ0FBQyxJQUFJLENBQ1AsNkJBQ0UsR0FBRyxFQUFFLENBQUMsRUFDTixLQUFLLEVBQUU7b0JBQ0wsUUFBUSxFQUFFLFVBQVU7b0JBQ3BCLElBQUksRUFBRSxJQUFJLEdBQUcsQ0FBQztvQkFDZCxHQUFHLEVBQUUsSUFBSSxHQUFHLENBQUM7b0JBQ2IsS0FBSyxFQUFFLGFBQWEsR0FBRyxFQUFFO29CQUN6QixNQUFNLEVBQUUsYUFBYSxHQUFHLEVBQUU7b0JBQzFCLFlBQVksRUFBRSxLQUFLO29CQUNuQixNQUFNLEVBQUUsRUFBRTtvQkFDVixPQUFPLEVBQUUsTUFBTTtvQkFDZixjQUFjLEVBQUUsUUFBUTtvQkFDeEIsVUFBVSxFQUFFLFFBQVE7b0JBQ3BCLE1BQU0sRUFBRSxTQUFTO2lCQUNsQixFQUNELE9BQU8sRUFBRSxjQUFNLE9BQUEsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEVBQXJCLENBQXFCO2dCQUVwQyw2QkFDRSxLQUFLLEVBQUU7d0JBQ0wsS0FBSyxFQUFFLGFBQWE7d0JBQ3BCLE1BQU0sRUFBRSxhQUFhO3dCQUNyQixZQUFZLEVBQUUsS0FBSzt3QkFDbkIsZUFBZSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRO3FCQUNqRCxHQUNELENBQ0UsQ0FDUCxDQUFBOztRQWxDSCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsZUFBZSxFQUFFLENBQUMsRUFBRTtvQkFBL0IsQ0FBQztTQW1DVDtRQUNELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUFFLGNBQWMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixDQUFDLENBQUMsQ0FBQTtJQUV4RyxJQUFNLGFBQWEsR0FBRyxPQUFPLENBQUM7UUFDNUIsSUFBTSxXQUFXLEdBQUcsZ0JBQWdCLENBQUE7UUFDcEMsSUFBTSxTQUFTLEdBQUcsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ2pELElBQU0sYUFBYSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLFNBQVMsQ0FBQTtRQUU3QyxJQUFJLGNBQXNCLENBQUE7UUFDMUIsSUFBSSxZQUFZLEtBQUssRUFBRSxFQUFFO1lBQ3ZCLGNBQWMsR0FBRyxDQUFDLENBQUE7U0FDbkI7YUFBTTtZQUNMLElBQU0sa0JBQWtCLEdBQUcsWUFBWSxHQUFHLEVBQUUsR0FBRyxjQUFjLENBQUE7WUFDN0QsY0FBYyxHQUFHLGFBQWEsR0FBRyxDQUFDLGtCQUFrQixHQUFHLFVBQVUsQ0FBQyxHQUFHLGFBQWEsQ0FBQTtTQUNuRjtRQUVELE9BQU8sQ0FDTCw2QkFBSyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFO1lBQ3RGLGdDQUNFLEVBQUUsRUFBRSxXQUFXLEdBQUcsQ0FBQyxFQUNuQixFQUFFLEVBQUUsV0FBVyxHQUFHLENBQUMsRUFDbkIsQ0FBQyxFQUFFLFNBQVMsRUFDWixNQUFNLEVBQUUsYUFBYSxFQUNyQixXQUFXLEVBQUUsV0FBVyxFQUN4QixJQUFJLEVBQUMsYUFBYSxHQUNsQjtZQUNGLGdDQUNFLEVBQUUsRUFBRSxXQUFXLEdBQUcsQ0FBQyxFQUNuQixFQUFFLEVBQUUsV0FBVyxHQUFHLENBQUMsRUFDbkIsQ0FBQyxFQUFFLFNBQVMsRUFDWixNQUFNLEVBQUUsU0FBUyxFQUNqQixXQUFXLEVBQUUsV0FBVyxFQUN4QixJQUFJLEVBQUMsYUFBYSxFQUNsQixlQUFlLEVBQUUsYUFBYSxFQUM5QixnQkFBZ0IsRUFBRSxjQUFjLEVBQ2hDLGFBQWEsRUFBQyxPQUFPLEVBQ3JCLFNBQVMsRUFBRSxxQkFBYyxXQUFXLEdBQUcsQ0FBQyxjQUFJLFdBQVcsR0FBRyxDQUFDLE1BQUcsR0FDOUQsQ0FDRSxDQUNQLENBQUE7SUFDSCxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQTtJQUV4RSxJQUFNLE1BQU0sR0FBRyxPQUFPLENBQ3BCLGNBQU0sT0FBQSxDQUFDO1FBQ0wsZUFBZSxFQUFFO1lBQ2YsTUFBTSxFQUFFLFNBQVM7WUFDakIsV0FBVyxFQUFFLE1BQU07WUFDbkIsZ0JBQWdCLEVBQUUsTUFBTTtZQUN4QixVQUFVLEVBQUUsTUFBTTtTQUNuQjtRQUNELE1BQU0sRUFBRTtZQUNOLElBQUksRUFBRSxPQUFPO1lBQ2IsR0FBRyxFQUFFLE9BQU87WUFDWixNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU07U0FDekM7UUFDRCxnQkFBZ0IsRUFBRTtZQUNoQixJQUFJLEVBQUUsT0FBTyxHQUFHLEVBQUU7WUFDbEIsR0FBRyxFQUFFLE9BQU8sR0FBRyxFQUFFO1NBQ2xCO0tBQ0YsQ0FBQyxFQWhCSSxDQWdCSixFQUNGLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUNqRCxDQUFBO0lBRUQsT0FBTyxDQUNMLHNDQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsaUJBQWUsTUFBTSxJQUFNLE1BQU07UUFDdkcsNkJBQ0UsR0FBRyxFQUFFLFlBQVksRUFDakIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxlQUFzQixFQUNwQyxTQUFTLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxFQUN0RCxXQUFXLEVBQUUsZUFBZSxFQUM1QixhQUFhLEVBQUUsaUJBQWlCO1lBRS9CLGFBQWE7WUFDZCw2QkFBSyxLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLElBQUcsUUFBUSxDQUFPO1lBQzNHLDZCQUFLLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLEdBQUk7WUFDNUYsNkJBQUssS0FBSyxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxHQUFJO1lBRWpHLDZCQUFLLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO2dCQUNoRSw2QkFBSyxTQUFTLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsaUNBQWlDLENBQUMsQ0FBQztvQkFDeEUsK0NBQ2lCLENBQUMsbUJBQ0QsRUFBRSxtQkFDRixLQUFLLGdCQUNULE9BQU8sRUFDbEIsSUFBSSxFQUFDLFlBQVksRUFDakIsOEJBQThCLFFBQzlCLFdBQVcsRUFBQyxLQUFLLEVBQ2pCLGNBQWMsRUFBQyxNQUFNLEVBQ3JCLFVBQVUsRUFBRSxLQUFLLG9CQUNELFlBQVksQ0FBQyxZQUFZLENBQUMsRUFDMUMsZUFBZSxFQUFFLENBQUMsUUFBUSxFQUMxQixTQUFTLEVBQUMsU0FBUyxFQUNuQixTQUFTLEVBQUUsYUFBYSxFQUN4QixNQUFNLEVBQUUsVUFBQyxDQUFDLElBQUssT0FBQSxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUF5QixDQUFDLEVBQWhELENBQWdELEVBQy9ELFdBQVcsRUFBRSxVQUFDLENBQUMsSUFBSyxPQUFBLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBbkIsQ0FBbUIsRUFDdkMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLHVDQUF1QyxDQUFDLENBQUMsRUFDM0UsR0FBRyxFQUFFLFVBQUMsRUFBRTs0QkFDTixJQUFJLEVBQUU7Z0NBQUUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7d0JBQ3JDLENBQUM7d0JBRUQsb0JBQUMsSUFBSSxJQUFDLElBQUksRUFBRSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQzdFLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FDdEIsQ0FDRjtvQkFDUCxvQkFBQyxJQUFJLElBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxhQUUzRCxDQUNIO2dCQUVOLDZCQUFLLFNBQVMsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO29CQUMxRSxvQkFBQyxJQUFJLFlBQVMsQ0FDVjtnQkFFTiw2QkFBSyxTQUFTLEVBQUUsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsaUNBQWlDLENBQUMsQ0FBQztvQkFDeEUsK0NBQ2lCLENBQUMsbUJBQ0QsRUFBRSxtQkFDRixLQUFLLGdCQUNULFNBQVMsRUFDcEIsSUFBSSxFQUFDLFlBQVksRUFDakIsOEJBQThCLFFBQzlCLFdBQVcsRUFBQyxLQUFLLEVBQ2pCLGNBQWMsRUFBQyxNQUFNLEVBQ3JCLFVBQVUsRUFBRSxLQUFLLG9CQUNELFlBQVksQ0FBQyxjQUFjLENBQUMsRUFDNUMsZUFBZSxFQUFFLENBQUMsUUFBUSxFQUMxQixTQUFTLEVBQUMsU0FBUyxFQUNuQixTQUFTLEVBQUUsYUFBYSxFQUN4QixNQUFNLEVBQUUsVUFBQyxDQUFDLElBQUssT0FBQSxVQUFVLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUF5QixDQUFDLEVBQWxELENBQWtELEVBQ2pFLFdBQVcsRUFBRSxVQUFDLENBQUMsSUFBSyxPQUFBLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBbkIsQ0FBbUIsRUFDdkMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLHVDQUF1QyxDQUFDLENBQUMsRUFDM0UsR0FBRyxFQUFFLFVBQUMsRUFBRTs0QkFDTixJQUFJLEVBQUU7Z0NBQUUsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUE7d0JBQ3JDLENBQUM7d0JBRUQsb0JBQUMsSUFBSSxJQUFDLElBQUksRUFBRSxDQUFDLGVBQWUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxDQUFDLG9CQUFvQixDQUFDLElBQzdFLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FDeEIsQ0FDRjtvQkFDUCxvQkFBQyxJQUFJLElBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxVQUUzRCxDQUNILENBQ0YsQ0FDRixDQUNGLENBQ1AsQ0FBQTtBQUNILENBQUMsQ0FDRixDQUFBO0FBRUQsZUFBZSxrQkFBa0IsQ0FBQTtBQUNqQyxrQkFBa0IsQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLGtCQUFrQixDQUFBIn0=
353
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZXBpY2tlckNpcmN1bGFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29tcG9uZW50cy90aW1lcGlja2VyL2NpcmN1bGFyL1RpbWVwaWNrZXJDaXJjdWxhci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQTtBQUNoRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzNELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDL0IsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFBO0FBQ3ZCLE9BQU8sS0FBSyxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLE9BQU8sQ0FBQTtBQUdoRixJQUFNLFdBQVcsR0FBRyxHQUFHLENBQUE7QUFDdkIsSUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUE7QUFDM0IsSUFBTSxXQUFXLEdBQUcsRUFBRSxDQUFBO0FBQ3RCLElBQU0sYUFBYSxHQUFHLENBQUMsQ0FBQTtBQUN2QixJQUFNLGVBQWUsR0FBRyxFQUFFLENBQUE7QUFFMUI7Ozs7OztHQU1HO0FBQ0gsSUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUN6QyxVQUFDLEVBQTRFLEVBQUUsR0FBRztJQUEvRSxJQUFBLGFBQWUsRUFBZixLQUFLLG1CQUFHLE9BQU8sS0FBQSxFQUFFLFFBQVEsY0FBQSxFQUFFLGdCQUFnQixFQUFoQixRQUFRLG1CQUFHLEtBQUssS0FBQSxFQUFFLFlBQVEs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