@projectcor/maia-components 2.11.25 → 2.11.26-1

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.
@@ -3,16 +3,17 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
4
4
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
5
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
- /* eslint-disable @typescript-eslint/no-explicit-any */
7
6
  import { useState, useEffect, useRef, useCallback } from 'react';
7
+ import { Alert } from '@projectcor/icons/lib/components/Alert';
8
8
  import { CheckCircle } from '@projectcor/icons/lib/components/CheckCircle';
9
9
  import { CrossCircle } from '@projectcor/icons/lib/components/CrossCircle';
10
+ import { Tooltip } from '@projectcor/tooltipv2/lib/components/Tooltip';
10
11
  import { useTranslation } from 'react-i18next';
11
- import { SCApprovalBox, SCABHeader, SCABTitle, SCABDescription, SCABActionsList, SCABActionItem, SCABActionName, SCABButtonsContainer, SCABButton, SCABStatusBadge } from './ApprovalBox.styles';
12
+ import { SCApprovalBox, SCABHeader, SCABTitle, SCABDescription, SCABActionsList, SCABActionItem, SCABActionName, SCABActionDescription, SCABButtonsContainer, SCABButton, SCABStatusBadge, SCABStatusWarningIcon } from './ApprovalBox.styles';
12
13
  import { SECTIONS } from '../../../constants/config';
13
14
  import { useGlobalContext } from '../../../context/global-context';
14
15
  import { EVENTS, useEvent } from '../../../hooks/useEvent';
15
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
16
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
16
17
  /** Alineado con TOOL_PERMISSION_MAP / TOOL_DISPLAY_NAMES en maia (snake_case). */
17
18
  function normalizeHitlToolName(toolName) {
18
19
  var n = (toolName || 'unknown').toLowerCase().trim();
@@ -26,13 +27,34 @@ function formatToolNameFallback(toolName) {
26
27
  return withSpaces.charAt(0).toUpperCase() + withSpaces.slice(1);
27
28
  }
28
29
  function getActionLabel(t, toolName, displayName) {
30
+ if (displayName !== null && displayName !== void 0 && displayName.trim()) return displayName;
29
31
  var normalizedToolName = normalizeHitlToolName(toolName || 'unknown');
30
32
  var translationKey = "approvalBox.actions.".concat(normalizedToolName);
31
33
  var translatedLabel = t(translationKey);
32
34
  if (translatedLabel !== translationKey) return translatedLabel;
33
- if (displayName !== null && displayName !== void 0 && displayName.trim()) return displayName;
34
35
  return formatToolNameFallback(normalizedToolName);
35
36
  }
37
+ function getDeliverableMode(toolArgs) {
38
+ if (!toolArgs || Array.isArray(toolArgs)) return '';
39
+ return String(toolArgs.deliverableType || toolArgs.deliverable_type || '').toLowerCase();
40
+ }
41
+ function getSpecialActionCopy(t, action) {
42
+ var normalizedToolName = normalizeHitlToolName(action.tool_name);
43
+ var deliverableMode = getDeliverableMode(action.tool_args);
44
+ if (normalizedToolName === 'create_rework') {
45
+ return {
46
+ title: t('approvalBox.special.createRework.title'),
47
+ description: t('approvalBox.special.createRework.description')
48
+ };
49
+ }
50
+ if (normalizedToolName === 'update_deliverable' && ['children', 'checkbox'].includes(deliverableMode)) {
51
+ return {
52
+ title: t('approvalBox.special.updateDeliverableChildren.title'),
53
+ description: t('approvalBox.special.updateDeliverableChildren.description')
54
+ };
55
+ }
56
+ return {};
57
+ }
36
58
  function buildHitlAnalyticsPayload(agentType, actions) {
37
59
  var actionTypes = _toConsumableArray(new Set(actions.map(function (a) {
38
60
  return normalizeHitlToolName(a.tool_name);
@@ -54,7 +76,10 @@ export var ApprovalBox = function ApprovalBox(_ref) {
54
76
  isProjectDeleted = _ref$isProjectDeleted === void 0 ? false : _ref$isProjectDeleted,
55
77
  _ref$isExpanded = _ref.isExpanded,
56
78
  isExpanded = _ref$isExpanded === void 0 ? false : _ref$isExpanded,
57
- hitlInstanceId = _ref.hitlInstanceId;
79
+ hitlInstanceId = _ref.hitlInstanceId,
80
+ warningMessage = _ref.warningMessage,
81
+ _ref$manualApprovalDe = _ref.manualApprovalDetected,
82
+ manualApprovalDetected = _ref$manualApprovalDe === void 0 ? false : _ref$manualApprovalDe;
58
83
  var _useTranslation = useTranslation([SECTIONS.chatAI]),
59
84
  t = _useTranslation.t;
60
85
  var _useState = useState(status),
@@ -73,6 +98,7 @@ export var ApprovalBox = function ApprovalBox(_ref) {
73
98
  });
74
99
  }, [status]);
75
100
  var agentType = agent === null || agent === void 0 ? void 0 : agent.type;
101
+ var isCompactManualApproval = manualApprovalDetected && localStatus === 'approved';
76
102
 
77
103
  // CA1: card de confirmación HITL visible (solo pendiente, no histórico ya resuelto)
78
104
  useEffect(function () {
@@ -106,19 +132,26 @@ export var ApprovalBox = function ApprovalBox(_ref) {
106
132
  }));
107
133
  };
108
134
  return /*#__PURE__*/_jsxs(SCApprovalBox, {
109
- children: [/*#__PURE__*/_jsx(SCABHeader, {
110
- children: /*#__PURE__*/_jsx(SCABTitle, {
111
- children: t('approvalBox.title')
112
- })
113
- }), /*#__PURE__*/_jsx(SCABDescription, {
114
- children: t('approvalBox.description')
135
+ children: [!isCompactManualApproval && /*#__PURE__*/_jsxs(_Fragment, {
136
+ children: [/*#__PURE__*/_jsx(SCABHeader, {
137
+ children: /*#__PURE__*/_jsx(SCABTitle, {
138
+ children: t('approvalBox.title')
139
+ })
140
+ }), /*#__PURE__*/_jsx(SCABDescription, {
141
+ children: t('approvalBox.description')
142
+ })]
115
143
  }), /*#__PURE__*/_jsx(SCABActionsList, {
116
144
  $expanded: isExpanded,
117
145
  children: actions.map(function (action) {
118
- return /*#__PURE__*/_jsx(SCABActionItem, {
119
- children: /*#__PURE__*/_jsx(SCABActionName, {
120
- children: getActionLabel(t, action.tool_name, action.display_name)
121
- })
146
+ var specialCopy = getSpecialActionCopy(t, action);
147
+ var actionLabel = specialCopy.title || getActionLabel(t, action.tool_name, action.display_name);
148
+ var actionDescription = specialCopy.description;
149
+ return /*#__PURE__*/_jsxs(SCABActionItem, {
150
+ children: [/*#__PURE__*/_jsx(SCABActionName, {
151
+ children: actionLabel
152
+ }), actionDescription && /*#__PURE__*/_jsx(SCABActionDescription, {
153
+ children: actionDescription
154
+ })]
122
155
  }, action.thread_id);
123
156
  })
124
157
  }), localStatus === 'pending' && !isProjectDeleted && /*#__PURE__*/_jsxs(SCABButtonsContainer, {
@@ -140,7 +173,17 @@ export var ApprovalBox = function ApprovalBox(_ref) {
140
173
  width: 22,
141
174
  height: 22,
142
175
  color: "#008400"
143
- }), t('approvalBox.status.approved')]
176
+ }), t('approvalBox.status.approved'), manualApprovalDetected && /*#__PURE__*/_jsx(Tooltip, {
177
+ title: warningMessage || t('approvalBox.manualApprovalWarning'),
178
+ placement: "right",
179
+ children: /*#__PURE__*/_jsx(SCABStatusWarningIcon, {
180
+ children: /*#__PURE__*/_jsx(Alert, {
181
+ color: "#EAA11A",
182
+ width: "14px",
183
+ height: "14px"
184
+ })
185
+ })
186
+ })]
144
187
  }) : /*#__PURE__*/_jsxs(_Fragment, {
145
188
  children: [/*#__PURE__*/_jsx(CrossCircle, {
146
189
  width: 22,
@@ -151,4 +194,4 @@ export var ApprovalBox = function ApprovalBox(_ref) {
151
194
  })]
152
195
  });
153
196
  };
154
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZUNhbGxiYWNrIiwiQ2hlY2tDaXJjbGUiLCJDcm9zc0NpcmNsZSIsInVzZVRyYW5zbGF0aW9uIiwiU0NBcHByb3ZhbEJveCIsIlNDQUJIZWFkZXIiLCJTQ0FCVGl0bGUiLCJTQ0FCRGVzY3JpcHRpb24iLCJTQ0FCQWN0aW9uc0xpc3QiLCJTQ0FCQWN0aW9uSXRlbSIsIlNDQUJBY3Rpb25OYW1lIiwiU0NBQkJ1dHRvbnNDb250YWluZXIiLCJTQ0FCQnV0dG9uIiwiU0NBQlN0YXR1c0JhZGdlIiwiU0VDVElPTlMiLCJ1c2VHbG9iYWxDb250ZXh0IiwiRVZFTlRTIiwidXNlRXZlbnQiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJub3JtYWxpemVIaXRsVG9vbE5hbWUiLCJ0b29sTmFtZSIsIm4iLCJ0b0xvd2VyQ2FzZSIsInRyaW0iLCJmb3JtYXRUb29sTmFtZUZhbGxiYWNrIiwibm9ybWFsaXplZCIsIndpdGhTcGFjZXMiLCJyZXBsYWNlIiwiY2hhckF0IiwidG9VcHBlckNhc2UiLCJzbGljZSIsImdldEFjdGlvbkxhYmVsIiwidCIsImRpc3BsYXlOYW1lIiwibm9ybWFsaXplZFRvb2xOYW1lIiwidHJhbnNsYXRpb25LZXkiLCJjb25jYXQiLCJ0cmFuc2xhdGVkTGFiZWwiLCJidWlsZEhpdGxBbmFseXRpY3NQYXlsb2FkIiwiYWdlbnRUeXBlIiwiYWN0aW9ucyIsImFjdGlvblR5cGVzIiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiU2V0IiwibWFwIiwiYSIsInRvb2xfbmFtZSIsInNvcnQiLCJhZ2VudF90eXBlIiwiYWN0aW9uX3R5cGUiLCJqb2luIiwiQXBwcm92YWxCb3giLCJfcmVmIiwib25BcHByb3ZlIiwib25SZWplY3QiLCJfcmVmJHN0YXR1cyIsInN0YXR1cyIsIl9yZWYkaXNMb2FkaW5nIiwiaXNMb2FkaW5nIiwiX3JlZiRpc1Byb2plY3REZWxldGVkIiwiaXNQcm9qZWN0RGVsZXRlZCIsIl9yZWYkaXNFeHBhbmRlZCIsImlzRXhwYW5kZWQiLCJoaXRsSW5zdGFuY2VJZCIsIl91c2VUcmFuc2xhdGlvbiIsImNoYXRBSSIsIl91c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImxvY2FsU3RhdHVzIiwic2V0TG9jYWxTdGF0dXMiLCJfdXNlR2xvYmFsQ29udGV4dCIsImFnZW50IiwiZXZlbnRBbXBsaXR1ZGUiLCJsYXN0SGl0bEltcHJlc3Npb25LZXlSZWYiLCJwcmV2IiwidHlwZSIsImxlbmd0aCIsImltcHJlc3Npb25LZXkiLCJ0aHJlYWRfaWQiLCJ0b29sX2NhbGxfaWQiLCJjdXJyZW50IiwiYWlDaGF0SGl0bCIsInRyYWNrSGl0bERlY2lzaW9uIiwiZGVjaXNpb24iLCJhaUNoYXRIaXRsT3B0aW9uIiwiX29iamVjdFNwcmVhZCIsImhhbmRsZUFwcHJvdmUiLCJoYW5kbGVSZWplY3QiLCJjaGlsZHJlbiIsIiRleHBhbmRlZCIsImFjdGlvbiIsImRpc3BsYXlfbmFtZSIsIiR2YXJpYW50Iiwib25DbGljayIsIiRkaXNhYmxlZCIsIiRzdGF0dXMiLCJ3aWR0aCIsImhlaWdodCIsImNvbG9yIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvYXRvbXMvQXBwcm92YWxCb3gvQXBwcm92YWxCb3gudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IENoZWNrQ2lyY2xlIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ2hlY2tDaXJjbGUnXG5pbXBvcnQgeyBDcm9zc0NpcmNsZSB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0Nyb3NzQ2lyY2xlJ1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0J1xuaW1wb3J0IHsgUGVuZGluZ0FjdGlvbiB9IGZyb20gJy4uLy4uLy4uL3R5cGVzL0NoYXQnXG5pbXBvcnQge1xuICBTQ0FwcHJvdmFsQm94LFxuICBTQ0FCSGVhZGVyLFxuICBTQ0FCVGl0bGUsXG4gIFNDQUJEZXNjcmlwdGlvbixcbiAgU0NBQkFjdGlvbnNMaXN0LFxuICBTQ0FCQWN0aW9uSXRlbSxcbiAgU0NBQkFjdGlvbk5hbWUsXG4gIFNDQUJCdXR0b25zQ29udGFpbmVyLFxuICBTQ0FCQnV0dG9uLFxuICBTQ0FCU3RhdHVzQmFkZ2UsXG59IGZyb20gJy4vQXBwcm92YWxCb3guc3R5bGVzJ1xuaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgdXNlR2xvYmFsQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgdHlwZSB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5cbi8qKiBBbGluZWFkbyBjb24gVE9PTF9QRVJNSVNTSU9OX01BUCAvIFRPT0xfRElTUExBWV9OQU1FUyBlbiBtYWlhIChzbmFrZV9jYXNlKS4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZUhpdGxUb29sTmFtZSh0b29sTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgbiA9ICh0b29sTmFtZSB8fCAndW5rbm93bicpLnRvTG93ZXJDYXNlKCkudHJpbSgpXG4gIGlmIChuID09PSAnYXNzaWduJykgcmV0dXJuICd0YXNrX2Fzc2lnbidcbiAgcmV0dXJuIG5cbn1cblxuZnVuY3Rpb24gZm9ybWF0VG9vbE5hbWVGYWxsYmFjayh0b29sTmFtZT86IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSBub3JtYWxpemVIaXRsVG9vbE5hbWUodG9vbE5hbWUgfHwgJ3Vua25vd24nKVxuICBjb25zdCB3aXRoU3BhY2VzID0gbm9ybWFsaXplZC5yZXBsYWNlKC9fL2csICcgJykudHJpbSgpXG4gIGlmICghd2l0aFNwYWNlcykgcmV0dXJuICdVbmtub3duJ1xuICByZXR1cm4gd2l0aFNwYWNlcy5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHdpdGhTcGFjZXMuc2xpY2UoMSlcbn1cblxuZnVuY3Rpb24gZ2V0QWN0aW9uTGFiZWwodDogKGtleTogc3RyaW5nKSA9PiBzdHJpbmcsIHRvb2xOYW1lPzogc3RyaW5nLCBkaXNwbGF5TmFtZT86IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vcm1hbGl6ZWRUb29sTmFtZSA9IG5vcm1hbGl6ZUhpdGxUb29sTmFtZSh0b29sTmFtZSB8fCAndW5rbm93bicpXG4gIGNvbnN0IHRyYW5zbGF0aW9uS2V5ID0gYGFwcHJvdmFsQm94LmFjdGlvbnMuJHtub3JtYWxpemVkVG9vbE5hbWV9YFxuICBjb25zdCB0cmFuc2xhdGVkTGFiZWwgPSB0KHRyYW5zbGF0aW9uS2V5KVxuXG4gIGlmICh0cmFuc2xhdGVkTGFiZWwgIT09IHRyYW5zbGF0aW9uS2V5KSByZXR1cm4gdHJhbnNsYXRlZExhYmVsXG4gIGlmIChkaXNwbGF5TmFtZT8udHJpbSgpKSByZXR1cm4gZGlzcGxheU5hbWVcbiAgcmV0dXJuIGZvcm1hdFRvb2xOYW1lRmFsbGJhY2sobm9ybWFsaXplZFRvb2xOYW1lKVxufVxuXG5mdW5jdGlvbiBidWlsZEhpdGxBbmFseXRpY3NQYXlsb2FkKGFnZW50VHlwZTogQWdlbnRbJ3R5cGUnXSB8IHVuZGVmaW5lZCwgYWN0aW9uczogUGVuZGluZ0FjdGlvbltdKSB7XG4gIGNvbnN0IGFjdGlvblR5cGVzID0gWy4uLm5ldyBTZXQoYWN0aW9ucy5tYXAoYSA9PiBub3JtYWxpemVIaXRsVG9vbE5hbWUoYS50b29sX25hbWUpKSldLnNvcnQoKVxuICByZXR1cm4ge1xuICAgIGFnZW50X3R5cGU6IGFnZW50VHlwZSA/PyAnY3VzdG9tJyxcbiAgICBhY3Rpb25fdHlwZTogYWN0aW9uVHlwZXMuam9pbignLCcpLFxuICB9XG59XG5cbmludGVyZmFjZSBBcHByb3ZhbEJveFByb3BzIHtcbiAgYWN0aW9uczogUGVuZGluZ0FjdGlvbltdXG4gIG9uQXBwcm92ZTogKHRocmVhZElkczogc3RyaW5nW10pID0+IHZvaWRcbiAgb25SZWplY3Q6ICh0aHJlYWRJZHM6IHN0cmluZ1tdKSA9PiB2b2lkXG4gIHN0YXR1cz86ICdwZW5kaW5nJyB8ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnXG4gIGlzTG9hZGluZz86IGJvb2xlYW5cbiAgLyoqIFNpIGVsIGNoYXQvcHJveWVjdG8gZXN0w6EgZWxpbWluYWRvLCBzZSBvY3VsdGFuIGxvcyBib3RvbmVzIGRlIGFwcm9iYXIvcmVjaGF6YXIgKi9cbiAgaXNQcm9qZWN0RGVsZXRlZD86IGJvb2xlYW5cbiAgLyoqIFNpIGVsIGNoYXQgZXN0w6EgZXhwYW5kaWRvICh0cnVlKSBvIGNvbGFwc2FkbyAoZmFsc2UpLiBBZmVjdGEgZWwgYW5jaG8gZGVsIGNvbnRlbmVkb3IuICovXG4gIGlzRXhwYW5kZWQ/OiBib29sZWFuXG4gIC8qKiBJZCBlc3RhYmxlIHBvciBsb3RlIEhJVEwgKHAuIGVqLiBvcmlnaW5hbF90aHJlYWRfaWQpIHBhcmEgZWwgZXZlbnRvIGRlIGltcHJlc2nDs24gKi9cbiAgaGl0bEluc3RhbmNlSWQ/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGNvbnN0IEFwcHJvdmFsQm94ID0gKHtcbiAgYWN0aW9ucyxcbiAgb25BcHByb3ZlLFxuICBvblJlamVjdCxcbiAgc3RhdHVzID0gJ3BlbmRpbmcnLFxuICBpc0xvYWRpbmcgPSBmYWxzZSxcbiAgaXNQcm9qZWN0RGVsZXRlZCA9IGZhbHNlLFxuICBpc0V4cGFuZGVkID0gZmFsc2UsXG4gIGhpdGxJbnN0YW5jZUlkLFxufTogQXBwcm92YWxCb3hQcm9wcykgPT4ge1xuICBjb25zdCB7IHQgfSA9IHVzZVRyYW5zbGF0aW9uKFtTRUNUSU9OUy5jaGF0QUldKVxuICBjb25zdCBbbG9jYWxTdGF0dXMsIHNldExvY2FsU3RhdHVzXSA9IHVzZVN0YXRlPCdwZW5kaW5nJyB8ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnPihzdGF0dXMpXG4gIGNvbnN0IHsgYWdlbnQgfSA9IHVzZUdsb2JhbENvbnRleHQoKVxuICBjb25zdCBldmVudEFtcGxpdHVkZSA9IHVzZUV2ZW50KClcbiAgY29uc3QgbGFzdEhpdGxJbXByZXNzaW9uS2V5UmVmID0gdXNlUmVmPHN0cmluZyB8IG51bGw+KG51bGwpXG5cbiAgLy8gU2luY3Jvbml6YXIgbG9jYWxTdGF0dXMgY29uIGVsIHByb3Agc3RhdHVzIGN1YW5kbyBjYW1iaWEgZGVzZGUgZWwgcGFkcmUgKHNvbG8gcG9yIHZhbHVlLCBldml0YSBidWNsZXMpXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0TG9jYWxTdGF0dXMocHJldiA9PiAocHJldiAhPT0gc3RhdHVzID8gc3RhdHVzIDogcHJldikpXG4gIH0sIFtzdGF0dXNdKVxuXG4gIGNvbnN0IGFnZW50VHlwZSA9IGFnZW50Py50eXBlXG5cbiAgLy8gQ0ExOiBjYXJkIGRlIGNvbmZpcm1hY2nDs24gSElUTCB2aXNpYmxlIChzb2xvIHBlbmRpZW50ZSwgbm8gaGlzdMOzcmljbyB5YSByZXN1ZWx0bylcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobG9jYWxTdGF0dXMgIT09ICdwZW5kaW5nJyB8fCAhYWN0aW9ucy5sZW5ndGgpIHJldHVyblxuICAgIGNvbnN0IGltcHJlc3Npb25LZXkgPVxuICAgICAgaGl0bEluc3RhbmNlSWQgPz9cbiAgICAgIGFjdGlvbnNcbiAgICAgICAgLm1hcChhID0+IGAke2EudGhyZWFkX2lkfToke2EudG9vbF9jYWxsX2lkfWApXG4gICAgICAgIC5zb3J0KClcbiAgICAgICAgLmpvaW4oJ3wnKVxuICAgIGlmIChsYXN0SGl0bEltcHJlc3Npb25LZXlSZWYuY3VycmVudCA9PT0gaW1wcmVzc2lvbktleSkgcmV0dXJuXG4gICAgbGFzdEhpdGxJbXByZXNzaW9uS2V5UmVmLmN1cnJlbnQgPSBpbXByZXNzaW9uS2V5XG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdEhpdGwsIGJ1aWxkSGl0bEFuYWx5dGljc1BheWxvYWQoYWdlbnRUeXBlLCBhY3Rpb25zKSlcbiAgfSwgW2FjdGlvbnMsIGFnZW50VHlwZSwgZXZlbnRBbXBsaXR1ZGUsIGxvY2FsU3RhdHVzLCBoaXRsSW5zdGFuY2VJZF0pXG5cbiAgY29uc3QgdHJhY2tIaXRsRGVjaXNpb24gPSB1c2VDYWxsYmFjayhcbiAgICAoZGVjaXNpb246ICdhY2NlcHQnIHwgJ2RlbnknKSA9PiB7XG4gICAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0SGl0bE9wdGlvbiwge1xuICAgICAgICAuLi5idWlsZEhpdGxBbmFseXRpY3NQYXlsb2FkKGFnZW50VHlwZSwgYWN0aW9ucyksXG4gICAgICAgIGRlY2lzaW9uLFxuICAgICAgfSlcbiAgICB9LFxuICAgIFthY3Rpb25zLCBhZ2VudFR5cGUsIGV2ZW50QW1wbGl0dWRlXVxuICApXG5cbiAgY29uc3QgaGFuZGxlQXBwcm92ZSA9ICgpID0+IHtcbiAgICBpZiAoaXNMb2FkaW5nIHx8IGxvY2FsU3RhdHVzICE9PSAncGVuZGluZycpIHJldHVyblxuICAgIHRyYWNrSGl0bERlY2lzaW9uKCdhY2NlcHQnKVxuICAgIHNldExvY2FsU3RhdHVzKCdhcHByb3ZlZCcpXG4gICAgb25BcHByb3ZlKGFjdGlvbnMubWFwKGEgPT4gYS50aHJlYWRfaWQpKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlUmVqZWN0ID0gKCkgPT4ge1xuICAgIGlmIChpc0xvYWRpbmcgfHwgbG9jYWxTdGF0dXMgIT09ICdwZW5kaW5nJykgcmV0dXJuXG4gICAgdHJhY2tIaXRsRGVjaXNpb24oJ2RlbnknKVxuICAgIHNldExvY2FsU3RhdHVzKCdyZWplY3RlZCcpXG4gICAgb25SZWplY3QoYWN0aW9ucy5tYXAoYSA9PiBhLnRocmVhZF9pZCkpXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxTQ0FwcHJvdmFsQm94PlxuICAgICAgPFNDQUJIZWFkZXI+XG4gICAgICAgIDxTQ0FCVGl0bGU+e3QoJ2FwcHJvdmFsQm94LnRpdGxlJyl9PC9TQ0FCVGl0bGU+XG4gICAgICA8L1NDQUJIZWFkZXI+XG5cbiAgICAgIDxTQ0FCRGVzY3JpcHRpb24+e3QoJ2FwcHJvdmFsQm94LmRlc2NyaXB0aW9uJyl9PC9TQ0FCRGVzY3JpcHRpb24+XG5cbiAgICAgIDxTQ0FCQWN0aW9uc0xpc3QgJGV4cGFuZGVkPXtpc0V4cGFuZGVkfT5cbiAgICAgICAge2FjdGlvbnMubWFwKGFjdGlvbiA9PiAoXG4gICAgICAgICAgPFNDQUJBY3Rpb25JdGVtIGtleT17YWN0aW9uLnRocmVhZF9pZH0+XG4gICAgICAgICAgICA8U0NBQkFjdGlvbk5hbWU+e2dldEFjdGlvbkxhYmVsKHQsIGFjdGlvbi50b29sX25hbWUsIChhY3Rpb24gYXMgYW55KS5kaXNwbGF5X25hbWUpfTwvU0NBQkFjdGlvbk5hbWU+XG4gICAgICAgICAgPC9TQ0FCQWN0aW9uSXRlbT5cbiAgICAgICAgKSl9XG4gICAgICA8L1NDQUJBY3Rpb25zTGlzdD5cblxuICAgICAge2xvY2FsU3RhdHVzID09PSAncGVuZGluZycgJiYgIWlzUHJvamVjdERlbGV0ZWQgJiYgKFxuICAgICAgICA8U0NBQkJ1dHRvbnNDb250YWluZXI+XG4gICAgICAgICAgPFNDQUJCdXR0b24gJHZhcmlhbnQ9XCJyZWplY3RcIiBvbkNsaWNrPXtoYW5kbGVSZWplY3R9ICRkaXNhYmxlZD17aXNMb2FkaW5nfT5cbiAgICAgICAgICAgIHt0KCdhcHByb3ZhbEJveC5kZW55Jyl9XG4gICAgICAgICAgPC9TQ0FCQnV0dG9uPlxuICAgICAgICAgIDxTQ0FCQnV0dG9uICR2YXJpYW50PVwiYXBwcm92ZVwiIG9uQ2xpY2s9e2hhbmRsZUFwcHJvdmV9ICRkaXNhYmxlZD17aXNMb2FkaW5nfT5cbiAgICAgICAgICAgIHt0KCdhcHByb3ZhbEJveC5hcHByb3ZlJyl9XG4gICAgICAgICAgPC9TQ0FCQnV0dG9uPlxuICAgICAgICA8L1NDQUJCdXR0b25zQ29udGFpbmVyPlxuICAgICAgKX1cbiAgICAgIHtsb2NhbFN0YXR1cyAhPT0gJ3BlbmRpbmcnICYmIChcbiAgICAgICAgPFNDQUJTdGF0dXNCYWRnZSAkc3RhdHVzPXtsb2NhbFN0YXR1c30+XG4gICAgICAgICAge2xvY2FsU3RhdHVzID09PSAnYXBwcm92ZWQnID8gKFxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgPENoZWNrQ2lyY2xlIHdpZHRoPXsyMn0gaGVpZ2h0PXsyMn0gY29sb3I9XCIjMDA4NDAwXCIgLz5cbiAgICAgICAgICAgICAge3QoJ2FwcHJvdmFsQm94LnN0YXR1cy5hcHByb3ZlZCcpfVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxDcm9zc0NpcmNsZSB3aWR0aD17MjJ9IGhlaWdodD17MjJ9IGNvbG9yPVwiI0M3MDUwNVwiIC8+XG4gICAgICAgICAgICAgIHt0KCdhcHByb3ZhbEJveC5zdGF0dXMuZGVuaWVkJyl9XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NDQUJTdGF0dXNCYWRnZT5cbiAgICAgICl9XG4gICAgPC9TQ0FwcHJvdmFsQm94PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUE7QUFDQSxTQUFTQSxRQUFRLEVBQUVDLFNBQVMsRUFBRUMsTUFBTSxFQUFFQyxXQUFXLFFBQVEsT0FBTztBQUNoRSxTQUFTQyxXQUFXLFFBQVEsOENBQThDO0FBQzFFLFNBQVNDLFdBQVcsUUFBUSw4Q0FBOEM7QUFDMUUsU0FBU0MsY0FBYyxRQUFRLGVBQWU7QUFFOUMsU0FDRUMsYUFBYSxFQUNiQyxVQUFVLEVBQ1ZDLFNBQVMsRUFDVEMsZUFBZSxFQUNmQyxlQUFlLEVBQ2ZDLGNBQWMsRUFDZEMsY0FBYyxFQUNkQyxv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
197
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VTdGF0ZSIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZUNhbGxiYWNrIiwiQWxlcnQiLCJDaGVja0NpcmNsZSIsIkNyb3NzQ2lyY2xlIiwiVG9vbHRpcCIsInVzZVRyYW5zbGF0aW9uIiwiU0NBcHByb3ZhbEJveCIsIlNDQUJIZWFkZXIiLCJTQ0FCVGl0bGUiLCJTQ0FCRGVzY3JpcHRpb24iLCJTQ0FCQWN0aW9uc0xpc3QiLCJTQ0FCQWN0aW9uSXRlbSIsIlNDQUJBY3Rpb25OYW1lIiwiU0NBQkFjdGlvbkRlc2NyaXB0aW9uIiwiU0NBQkJ1dHRvbnNDb250YWluZXIiLCJTQ0FCQnV0dG9uIiwiU0NBQlN0YXR1c0JhZGdlIiwiU0NBQlN0YXR1c1dhcm5pbmdJY29uIiwiU0VDVElPTlMiLCJ1c2VHbG9iYWxDb250ZXh0IiwiRVZFTlRTIiwidXNlRXZlbnQiLCJqc3giLCJfanN4IiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJqc3hzIiwiX2pzeHMiLCJub3JtYWxpemVIaXRsVG9vbE5hbWUiLCJ0b29sTmFtZSIsIm4iLCJ0b0xvd2VyQ2FzZSIsInRyaW0iLCJmb3JtYXRUb29sTmFtZUZhbGxiYWNrIiwibm9ybWFsaXplZCIsIndpdGhTcGFjZXMiLCJyZXBsYWNlIiwiY2hhckF0IiwidG9VcHBlckNhc2UiLCJzbGljZSIsImdldEFjdGlvbkxhYmVsIiwidCIsImRpc3BsYXlOYW1lIiwibm9ybWFsaXplZFRvb2xOYW1lIiwidHJhbnNsYXRpb25LZXkiLCJjb25jYXQiLCJ0cmFuc2xhdGVkTGFiZWwiLCJnZXREZWxpdmVyYWJsZU1vZGUiLCJ0b29sQXJncyIsIkFycmF5IiwiaXNBcnJheSIsIlN0cmluZyIsImRlbGl2ZXJhYmxlVHlwZSIsImRlbGl2ZXJhYmxlX3R5cGUiLCJnZXRTcGVjaWFsQWN0aW9uQ29weSIsImFjdGlvbiIsInRvb2xfbmFtZSIsImRlbGl2ZXJhYmxlTW9kZSIsInRvb2xfYXJncyIsInRpdGxlIiwiZGVzY3JpcHRpb24iLCJpbmNsdWRlcyIsImJ1aWxkSGl0bEFuYWx5dGljc1BheWxvYWQiLCJhZ2VudFR5cGUiLCJhY3Rpb25zIiwiYWN0aW9uVHlwZXMiLCJfdG9Db25zdW1hYmxlQXJyYXkiLCJTZXQiLCJtYXAiLCJhIiwic29ydCIsImFnZW50X3R5cGUiLCJhY3Rpb25fdHlwZSIsImpvaW4iLCJBcHByb3ZhbEJveCIsIl9yZWYiLCJvbkFwcHJvdmUiLCJvblJlamVjdCIsIl9yZWYkc3RhdHVzIiwic3RhdHVzIiwiX3JlZiRpc0xvYWRpbmciLCJpc0xvYWRpbmciLCJfcmVmJGlzUHJvamVjdERlbGV0ZWQiLCJpc1Byb2plY3REZWxldGVkIiwiX3JlZiRpc0V4cGFuZGVkIiwiaXNFeHBhbmRlZCIsImhpdGxJbnN0YW5jZUlkIiwid2FybmluZ01lc3NhZ2UiLCJfcmVmJG1hbnVhbEFwcHJvdmFsRGUiLCJtYW51YWxBcHByb3ZhbERldGVjdGVkIiwiX3VzZVRyYW5zbGF0aW9uIiwiY2hhdEFJIiwiX3VzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwibG9jYWxTdGF0dXMiLCJzZXRMb2NhbFN0YXR1cyIsIl91c2VHbG9iYWxDb250ZXh0IiwiYWdlbnQiLCJldmVudEFtcGxpdHVkZSIsImxhc3RIaXRsSW1wcmVzc2lvbktleVJlZiIsInByZXYiLCJ0eXBlIiwiaXNDb21wYWN0TWFudWFsQXBwcm92YWwiLCJsZW5ndGgiLCJpbXByZXNzaW9uS2V5IiwidGhyZWFkX2lkIiwidG9vbF9jYWxsX2lkIiwiY3VycmVudCIsImFpQ2hhdEhpdGwiLCJ0cmFja0hpdGxEZWNpc2lvbiIsImRlY2lzaW9uIiwiYWlDaGF0SGl0bE9wdGlvbiIsIl9vYmplY3RTcHJlYWQiLCJoYW5kbGVBcHByb3ZlIiwiaGFuZGxlUmVqZWN0IiwiY2hpbGRyZW4iLCIkZXhwYW5kZWQiLCJzcGVjaWFsQ29weSIsImFjdGlvbkxhYmVsIiwiZGlzcGxheV9uYW1lIiwiYWN0aW9uRGVzY3JpcHRpb24iLCIkdmFyaWFudCIsIm9uQ2xpY2siLCIkZGlzYWJsZWQiLCIkc3RhdHVzIiwid2lkdGgiLCJoZWlnaHQiLCJjb2xvciIsInBsYWNlbWVudCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0FwcHJvdmFsQm94L0FwcHJvdmFsQm94LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VTdGF0ZSwgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZUNhbGxiYWNrIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyBBbGVydCB9IGZyb20gJ0Bwcm9qZWN0Y29yL2ljb25zL2xpYi9jb21wb25lbnRzL0FsZXJ0J1xuaW1wb3J0IHsgQ2hlY2tDaXJjbGUgfSBmcm9tICdAcHJvamVjdGNvci9pY29ucy9saWIvY29tcG9uZW50cy9DaGVja0NpcmNsZSdcbmltcG9ydCB7IENyb3NzQ2lyY2xlIH0gZnJvbSAnQHByb2plY3Rjb3IvaWNvbnMvbGliL2NvbXBvbmVudHMvQ3Jvc3NDaXJjbGUnXG5pbXBvcnQgeyBUb29sdGlwIH0gZnJvbSAnQHByb2plY3Rjb3IvdG9vbHRpcHYyL2xpYi9jb21wb25lbnRzL1Rvb2x0aXAnXG5pbXBvcnQgeyB1c2VUcmFuc2xhdGlvbiB9IGZyb20gJ3JlYWN0LWkxOG5leHQnXG5pbXBvcnQgeyBQZW5kaW5nQWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvQ2hhdCdcbmltcG9ydCB7XG4gIFNDQXBwcm92YWxCb3gsXG4gIFNDQUJIZWFkZXIsXG4gIFNDQUJUaXRsZSxcbiAgU0NBQkRlc2NyaXB0aW9uLFxuICBTQ0FCQWN0aW9uc0xpc3QsXG4gIFNDQUJBY3Rpb25JdGVtLFxuICBTQ0FCQWN0aW9uTmFtZSxcbiAgU0NBQkFjdGlvbkRlc2NyaXB0aW9uLFxuICBTQ0FCQnV0dG9uc0NvbnRhaW5lcixcbiAgU0NBQkJ1dHRvbixcbiAgU0NBQlN0YXR1c0JhZGdlLFxuICBTQ0FCU3RhdHVzV2FybmluZ0ljb24sXG59IGZyb20gJy4vQXBwcm92YWxCb3guc3R5bGVzJ1xuaW1wb3J0IHsgU0VDVElPTlMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvY29uZmlnJ1xuaW1wb3J0IHsgdXNlR2xvYmFsQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL2NvbnRleHQvZ2xvYmFsLWNvbnRleHQnXG5pbXBvcnQgeyBFVkVOVFMsIHVzZUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vaG9va3MvdXNlRXZlbnQnXG5pbXBvcnQgdHlwZSB7IEFnZW50IH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvYWdlbnQnXG5cbi8qKiBBbGluZWFkbyBjb24gVE9PTF9QRVJNSVNTSU9OX01BUCAvIFRPT0xfRElTUExBWV9OQU1FUyBlbiBtYWlhIChzbmFrZV9jYXNlKS4gKi9cbmZ1bmN0aW9uIG5vcm1hbGl6ZUhpdGxUb29sTmFtZSh0b29sTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgbiA9ICh0b29sTmFtZSB8fCAndW5rbm93bicpLnRvTG93ZXJDYXNlKCkudHJpbSgpXG4gIGlmIChuID09PSAnYXNzaWduJykgcmV0dXJuICd0YXNrX2Fzc2lnbidcbiAgcmV0dXJuIG5cbn1cblxuZnVuY3Rpb24gZm9ybWF0VG9vbE5hbWVGYWxsYmFjayh0b29sTmFtZT86IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSBub3JtYWxpemVIaXRsVG9vbE5hbWUodG9vbE5hbWUgfHwgJ3Vua25vd24nKVxuICBjb25zdCB3aXRoU3BhY2VzID0gbm9ybWFsaXplZC5yZXBsYWNlKC9fL2csICcgJykudHJpbSgpXG4gIGlmICghd2l0aFNwYWNlcykgcmV0dXJuICdVbmtub3duJ1xuICByZXR1cm4gd2l0aFNwYWNlcy5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHdpdGhTcGFjZXMuc2xpY2UoMSlcbn1cblxuZnVuY3Rpb24gZ2V0QWN0aW9uTGFiZWwodDogKGtleTogc3RyaW5nKSA9PiBzdHJpbmcsIHRvb2xOYW1lPzogc3RyaW5nLCBkaXNwbGF5TmFtZT86IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmIChkaXNwbGF5TmFtZT8udHJpbSgpKSByZXR1cm4gZGlzcGxheU5hbWVcblxuICBjb25zdCBub3JtYWxpemVkVG9vbE5hbWUgPSBub3JtYWxpemVIaXRsVG9vbE5hbWUodG9vbE5hbWUgfHwgJ3Vua25vd24nKVxuICBjb25zdCB0cmFuc2xhdGlvbktleSA9IGBhcHByb3ZhbEJveC5hY3Rpb25zLiR7bm9ybWFsaXplZFRvb2xOYW1lfWBcbiAgY29uc3QgdHJhbnNsYXRlZExhYmVsID0gdCh0cmFuc2xhdGlvbktleSlcblxuICBpZiAodHJhbnNsYXRlZExhYmVsICE9PSB0cmFuc2xhdGlvbktleSkgcmV0dXJuIHRyYW5zbGF0ZWRMYWJlbFxuICByZXR1cm4gZm9ybWF0VG9vbE5hbWVGYWxsYmFjayhub3JtYWxpemVkVG9vbE5hbWUpXG59XG5cbmZ1bmN0aW9uIGdldERlbGl2ZXJhYmxlTW9kZSh0b29sQXJnczogUGVuZGluZ0FjdGlvblsndG9vbF9hcmdzJ10pOiBzdHJpbmcge1xuICBpZiAoIXRvb2xBcmdzIHx8IEFycmF5LmlzQXJyYXkodG9vbEFyZ3MpKSByZXR1cm4gJydcbiAgcmV0dXJuIFN0cmluZyh0b29sQXJncy5kZWxpdmVyYWJsZVR5cGUgfHwgdG9vbEFyZ3MuZGVsaXZlcmFibGVfdHlwZSB8fCAnJykudG9Mb3dlckNhc2UoKVxufVxuXG5mdW5jdGlvbiBnZXRTcGVjaWFsQWN0aW9uQ29weShcbiAgdDogKGtleTogc3RyaW5nKSA9PiBzdHJpbmcsXG4gIGFjdGlvbjogUGVuZGluZ0FjdGlvblxuKTogeyB0aXRsZT86IHN0cmluZzsgZGVzY3JpcHRpb24/OiBzdHJpbmcgfSB7XG4gIGNvbnN0IG5vcm1hbGl6ZWRUb29sTmFtZSA9IG5vcm1hbGl6ZUhpdGxUb29sTmFtZShhY3Rpb24udG9vbF9uYW1lKVxuICBjb25zdCBkZWxpdmVyYWJsZU1vZGUgPSBnZXREZWxpdmVyYWJsZU1vZGUoYWN0aW9uLnRvb2xfYXJncylcblxuICBpZiAobm9ybWFsaXplZFRvb2xOYW1lID09PSAnY3JlYXRlX3Jld29yaycpIHtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6IHQoJ2FwcHJvdmFsQm94LnNwZWNpYWwuY3JlYXRlUmV3b3JrLnRpdGxlJyksXG4gICAgICBkZXNjcmlwdGlvbjogdCgnYXBwcm92YWxCb3guc3BlY2lhbC5jcmVhdGVSZXdvcmsuZGVzY3JpcHRpb24nKSxcbiAgICB9XG4gIH1cblxuICBpZiAobm9ybWFsaXplZFRvb2xOYW1lID09PSAndXBkYXRlX2RlbGl2ZXJhYmxlJyAmJiBbJ2NoaWxkcmVuJywgJ2NoZWNrYm94J10uaW5jbHVkZXMoZGVsaXZlcmFibGVNb2RlKSkge1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogdCgnYXBwcm92YWxCb3guc3BlY2lhbC51cGRhdGVEZWxpdmVyYWJsZUNoaWxkcmVuLnRpdGxlJyksXG4gICAgICBkZXNjcmlwdGlvbjogdCgnYXBwcm92YWxCb3guc3BlY2lhbC51cGRhdGVEZWxpdmVyYWJsZUNoaWxkcmVuLmRlc2NyaXB0aW9uJyksXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHt9XG59XG5cbmZ1bmN0aW9uIGJ1aWxkSGl0bEFuYWx5dGljc1BheWxvYWQoYWdlbnRUeXBlOiBBZ2VudFsndHlwZSddIHwgdW5kZWZpbmVkLCBhY3Rpb25zOiBQZW5kaW5nQWN0aW9uW10pIHtcbiAgY29uc3QgYWN0aW9uVHlwZXMgPSBbLi4ubmV3IFNldChhY3Rpb25zLm1hcChhID0+IG5vcm1hbGl6ZUhpdGxUb29sTmFtZShhLnRvb2xfbmFtZSkpKV0uc29ydCgpXG4gIHJldHVybiB7XG4gICAgYWdlbnRfdHlwZTogYWdlbnRUeXBlID8/ICdjdXN0b20nLFxuICAgIGFjdGlvbl90eXBlOiBhY3Rpb25UeXBlcy5qb2luKCcsJyksXG4gIH1cbn1cblxuaW50ZXJmYWNlIEFwcHJvdmFsQm94UHJvcHMge1xuICBhY3Rpb25zOiBQZW5kaW5nQWN0aW9uW11cbiAgb25BcHByb3ZlOiAodGhyZWFkSWRzOiBzdHJpbmdbXSkgPT4gdm9pZFxuICBvblJlamVjdDogKHRocmVhZElkczogc3RyaW5nW10pID0+IHZvaWRcbiAgc3RhdHVzPzogJ3BlbmRpbmcnIHwgJ2FwcHJvdmVkJyB8ICdyZWplY3RlZCdcbiAgaXNMb2FkaW5nPzogYm9vbGVhblxuICAvKiogU2kgZWwgY2hhdC9wcm95ZWN0byBlc3TDoSBlbGltaW5hZG8sIHNlIG9jdWx0YW4gbG9zIGJvdG9uZXMgZGUgYXByb2Jhci9yZWNoYXphciAqL1xuICBpc1Byb2plY3REZWxldGVkPzogYm9vbGVhblxuICAvKiogU2kgZWwgY2hhdCBlc3TDoSBleHBhbmRpZG8gKHRydWUpIG8gY29sYXBzYWRvIChmYWxzZSkuIEFmZWN0YSBlbCBhbmNobyBkZWwgY29udGVuZWRvci4gKi9cbiAgaXNFeHBhbmRlZD86IGJvb2xlYW5cbiAgLyoqIElkIGVzdGFibGUgcG9yIGxvdGUgSElUTCAocC4gZWouIG9yaWdpbmFsX3RocmVhZF9pZCkgcGFyYSBlbCBldmVudG8gZGUgaW1wcmVzacOzbiAqL1xuICBoaXRsSW5zdGFuY2VJZD86IHN0cmluZ1xuICB3YXJuaW5nTWVzc2FnZT86IHN0cmluZ1xuICBtYW51YWxBcHByb3ZhbERldGVjdGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgY29uc3QgQXBwcm92YWxCb3ggPSAoe1xuICBhY3Rpb25zLFxuICBvbkFwcHJvdmUsXG4gIG9uUmVqZWN0LFxuICBzdGF0dXMgPSAncGVuZGluZycsXG4gIGlzTG9hZGluZyA9IGZhbHNlLFxuICBpc1Byb2plY3REZWxldGVkID0gZmFsc2UsXG4gIGlzRXhwYW5kZWQgPSBmYWxzZSxcbiAgaGl0bEluc3RhbmNlSWQsXG4gIHdhcm5pbmdNZXNzYWdlLFxuICBtYW51YWxBcHByb3ZhbERldGVjdGVkID0gZmFsc2UsXG59OiBBcHByb3ZhbEJveFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgdCB9ID0gdXNlVHJhbnNsYXRpb24oW1NFQ1RJT05TLmNoYXRBSV0pXG4gIGNvbnN0IFtsb2NhbFN0YXR1cywgc2V0TG9jYWxTdGF0dXNdID0gdXNlU3RhdGU8J3BlbmRpbmcnIHwgJ2FwcHJvdmVkJyB8ICdyZWplY3RlZCc+KHN0YXR1cylcbiAgY29uc3QgeyBhZ2VudCB9ID0gdXNlR2xvYmFsQ29udGV4dCgpXG4gIGNvbnN0IGV2ZW50QW1wbGl0dWRlID0gdXNlRXZlbnQoKVxuICBjb25zdCBsYXN0SGl0bEltcHJlc3Npb25LZXlSZWYgPSB1c2VSZWY8c3RyaW5nIHwgbnVsbD4obnVsbClcblxuICAvLyBTaW5jcm9uaXphciBsb2NhbFN0YXR1cyBjb24gZWwgcHJvcCBzdGF0dXMgY3VhbmRvIGNhbWJpYSBkZXNkZSBlbCBwYWRyZSAoc29sbyBwb3IgdmFsdWUsIGV2aXRhIGJ1Y2xlcylcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRMb2NhbFN0YXR1cyhwcmV2ID0+IChwcmV2ICE9PSBzdGF0dXMgPyBzdGF0dXMgOiBwcmV2KSlcbiAgfSwgW3N0YXR1c10pXG5cbiAgY29uc3QgYWdlbnRUeXBlID0gYWdlbnQ/LnR5cGVcbiAgY29uc3QgaXNDb21wYWN0TWFudWFsQXBwcm92YWwgPSBtYW51YWxBcHByb3ZhbERldGVjdGVkICYmIGxvY2FsU3RhdHVzID09PSAnYXBwcm92ZWQnXG5cbiAgLy8gQ0ExOiBjYXJkIGRlIGNvbmZpcm1hY2nDs24gSElUTCB2aXNpYmxlIChzb2xvIHBlbmRpZW50ZSwgbm8gaGlzdMOzcmljbyB5YSByZXN1ZWx0bylcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobG9jYWxTdGF0dXMgIT09ICdwZW5kaW5nJyB8fCAhYWN0aW9ucy5sZW5ndGgpIHJldHVyblxuICAgIGNvbnN0IGltcHJlc3Npb25LZXkgPVxuICAgICAgaGl0bEluc3RhbmNlSWQgPz9cbiAgICAgIGFjdGlvbnNcbiAgICAgICAgLm1hcChhID0+IGAke2EudGhyZWFkX2lkfToke2EudG9vbF9jYWxsX2lkfWApXG4gICAgICAgIC5zb3J0KClcbiAgICAgICAgLmpvaW4oJ3wnKVxuICAgIGlmIChsYXN0SGl0bEltcHJlc3Npb25LZXlSZWYuY3VycmVudCA9PT0gaW1wcmVzc2lvbktleSkgcmV0dXJuXG4gICAgbGFzdEhpdGxJbXByZXNzaW9uS2V5UmVmLmN1cnJlbnQgPSBpbXByZXNzaW9uS2V5XG4gICAgZXZlbnRBbXBsaXR1ZGUoRVZFTlRTLmFpQ2hhdEhpdGwsIGJ1aWxkSGl0bEFuYWx5dGljc1BheWxvYWQoYWdlbnRUeXBlLCBhY3Rpb25zKSlcbiAgfSwgW2FjdGlvbnMsIGFnZW50VHlwZSwgZXZlbnRBbXBsaXR1ZGUsIGxvY2FsU3RhdHVzLCBoaXRsSW5zdGFuY2VJZF0pXG5cbiAgY29uc3QgdHJhY2tIaXRsRGVjaXNpb24gPSB1c2VDYWxsYmFjayhcbiAgICAoZGVjaXNpb246ICdhY2NlcHQnIHwgJ2RlbnknKSA9PiB7XG4gICAgICBldmVudEFtcGxpdHVkZShFVkVOVFMuYWlDaGF0SGl0bE9wdGlvbiwge1xuICAgICAgICAuLi5idWlsZEhpdGxBbmFseXRpY3NQYXlsb2FkKGFnZW50VHlwZSwgYWN0aW9ucyksXG4gICAgICAgIGRlY2lzaW9uLFxuICAgICAgfSlcbiAgICB9LFxuICAgIFthY3Rpb25zLCBhZ2VudFR5cGUsIGV2ZW50QW1wbGl0dWRlXVxuICApXG5cbiAgY29uc3QgaGFuZGxlQXBwcm92ZSA9ICgpID0+IHtcbiAgICBpZiAoaXNMb2FkaW5nIHx8IGxvY2FsU3RhdHVzICE9PSAncGVuZGluZycpIHJldHVyblxuICAgIHRyYWNrSGl0bERlY2lzaW9uKCdhY2NlcHQnKVxuICAgIHNldExvY2FsU3RhdHVzKCdhcHByb3ZlZCcpXG4gICAgb25BcHByb3ZlKGFjdGlvbnMubWFwKGEgPT4gYS50aHJlYWRfaWQpKVxuICB9XG5cbiAgY29uc3QgaGFuZGxlUmVqZWN0ID0gKCkgPT4ge1xuICAgIGlmIChpc0xvYWRpbmcgfHwgbG9jYWxTdGF0dXMgIT09ICdwZW5kaW5nJykgcmV0dXJuXG4gICAgdHJhY2tIaXRsRGVjaXNpb24oJ2RlbnknKVxuICAgIHNldExvY2FsU3RhdHVzKCdyZWplY3RlZCcpXG4gICAgb25SZWplY3QoYWN0aW9ucy5tYXAoYSA9PiBhLnRocmVhZF9pZCkpXG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxTQ0FwcHJvdmFsQm94PlxuICAgICAgeyFpc0NvbXBhY3RNYW51YWxBcHByb3ZhbCAmJiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgPFNDQUJIZWFkZXI+XG4gICAgICAgICAgICA8U0NBQlRpdGxlPnt0KCdhcHByb3ZhbEJveC50aXRsZScpfTwvU0NBQlRpdGxlPlxuICAgICAgICAgIDwvU0NBQkhlYWRlcj5cblxuICAgICAgICAgIDxTQ0FCRGVzY3JpcHRpb24+e3QoJ2FwcHJvdmFsQm94LmRlc2NyaXB0aW9uJyl9PC9TQ0FCRGVzY3JpcHRpb24+XG4gICAgICAgIDwvPlxuICAgICAgKX1cblxuICAgICAgPFNDQUJBY3Rpb25zTGlzdCAkZXhwYW5kZWQ9e2lzRXhwYW5kZWR9PlxuICAgICAgICB7YWN0aW9ucy5tYXAoYWN0aW9uID0+IHtcbiAgICAgICAgICBjb25zdCBzcGVjaWFsQ29weSA9IGdldFNwZWNpYWxBY3Rpb25Db3B5KHQsIGFjdGlvbilcbiAgICAgICAgICBjb25zdCBhY3Rpb25MYWJlbCA9IHNwZWNpYWxDb3B5LnRpdGxlIHx8IGdldEFjdGlvbkxhYmVsKHQsIGFjdGlvbi50b29sX25hbWUsIGFjdGlvbi5kaXNwbGF5X25hbWUpXG4gICAgICAgICAgY29uc3QgYWN0aW9uRGVzY3JpcHRpb24gPSBzcGVjaWFsQ29weS5kZXNjcmlwdGlvblxuXG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxTQ0FCQWN0aW9uSXRlbSBrZXk9e2FjdGlvbi50aHJlYWRfaWR9PlxuICAgICAgICAgICAgICA8U0NBQkFjdGlvbk5hbWU+e2FjdGlvbkxhYmVsfTwvU0NBQkFjdGlvbk5hbWU+XG4gICAgICAgICAgICAgIHthY3Rpb25EZXNjcmlwdGlvbiAmJiA8U0NBQkFjdGlvbkRlc2NyaXB0aW9uPnthY3Rpb25EZXNjcmlwdGlvbn08L1NDQUJBY3Rpb25EZXNjcmlwdGlvbj59XG4gICAgICAgICAgICA8L1NDQUJBY3Rpb25JdGVtPlxuICAgICAgICAgIClcbiAgICAgICAgfSl9XG4gICAgICA8L1NDQUJBY3Rpb25zTGlzdD5cblxuICAgICAge2xvY2FsU3RhdHVzID09PSAncGVuZGluZycgJiYgIWlzUHJvamVjdERlbGV0ZWQgJiYgKFxuICAgICAgICA8U0NBQkJ1dHRvbnNDb250YWluZXI+XG4gICAgICAgICAgPFNDQUJCdXR0b24gJHZhcmlhbnQ9XCJyZWplY3RcIiBvbkNsaWNrPXtoYW5kbGVSZWplY3R9ICRkaXNhYmxlZD17aXNMb2FkaW5nfT5cbiAgICAgICAgICAgIHt0KCdhcHByb3ZhbEJveC5kZW55Jyl9XG4gICAgICAgICAgPC9TQ0FCQnV0dG9uPlxuICAgICAgICAgIDxTQ0FCQnV0dG9uICR2YXJpYW50PVwiYXBwcm92ZVwiIG9uQ2xpY2s9e2hhbmRsZUFwcHJvdmV9ICRkaXNhYmxlZD17aXNMb2FkaW5nfT5cbiAgICAgICAgICAgIHt0KCdhcHByb3ZhbEJveC5hcHByb3ZlJyl9XG4gICAgICAgICAgPC9TQ0FCQnV0dG9uPlxuICAgICAgICA8L1NDQUJCdXR0b25zQ29udGFpbmVyPlxuICAgICAgKX1cbiAgICAgIHtsb2NhbFN0YXR1cyAhPT0gJ3BlbmRpbmcnICYmIChcbiAgICAgICAgPFNDQUJTdGF0dXNCYWRnZSAkc3RhdHVzPXtsb2NhbFN0YXR1c30+XG4gICAgICAgICAge2xvY2FsU3RhdHVzID09PSAnYXBwcm92ZWQnID8gKFxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgPENoZWNrQ2lyY2xlIHdpZHRoPXsyMn0gaGVpZ2h0PXsyMn0gY29sb3I9XCIjMDA4NDAwXCIgLz5cbiAgICAgICAgICAgICAge3QoJ2FwcHJvdmFsQm94LnN0YXR1cy5hcHByb3ZlZCcpfVxuICAgICAgICAgICAgICB7bWFudWFsQXBwcm92YWxEZXRlY3RlZCAmJiAoXG4gICAgICAgICAgICAgICAgPFRvb2x0aXAgdGl0bGU9e3dhcm5pbmdNZXNzYWdlIHx8IHQoJ2FwcHJvdmFsQm94Lm1hbnVhbEFwcHJvdmFsV2FybmluZycpfSBwbGFjZW1lbnQ9XCJyaWdodFwiPlxuICAgICAgICAgICAgICAgICAgPFNDQUJTdGF0dXNXYXJuaW5nSWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPEFsZXJ0IGNvbG9yPVwiI0VBQTExQVwiIHdpZHRoPVwiMTRweFwiIGhlaWdodD1cIjE0cHhcIiAvPlxuICAgICAgICAgICAgICAgICAgPC9TQ0FCU3RhdHVzV2FybmluZ0ljb24+XG4gICAgICAgICAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxDcm9zc0NpcmNsZSB3aWR0aD17MjJ9IGhlaWdodD17MjJ9IGNvbG9yPVwiI0M3MDUwNVwiIC8+XG4gICAgICAgICAgICAgIHt0KCdhcHByb3ZhbEJveC5zdGF0dXMuZGVuaWVkJyl9XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NDQUJTdGF0dXNCYWRnZT5cbiAgICAgICl9XG4gICAgPC9TQ0FwcHJvdmFsQm94PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsU0FBU0EsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLE1BQU0sRUFBRUMsV0FBVyxRQUFRLE9BQU87QUFDaEUsU0FBU0MsS0FBSyxRQUFRLHdDQUF3QztBQUM5RCxTQUFTQyxXQUFXLFFBQVEsOENBQThDO0FBQzFFLFNBQVNDLFdBQVcsUUFBUSw4Q0FBOEM7QUFDMUUsU0FBU0MsT0FBTyxRQUFRLDhDQUE4QztBQUN0RSxTQUFTQyxjQUFjLFFBQVEsZUFBZTtBQUU5QyxTQUNFQyxhQUFhLEVBQ2JDLFVBQVUsRUFDVkMsU0FBUyxFQUNUQyxlQUFlLEVBQ2ZDLGVBQWUsRUFDZkMsY0FBYyxFQUNkQyxjQUFjLEVBQ2RDLHFCQUFxQixFQUNyQkMsb0JBQW9CLEVBQ3BCQyxVQUFVLEVBQ1ZDLGVBQWUsRUFDZkMscUJBQXFCLFFBQ2hCLHNCQUFzQjtBQUM3QixTQUFTQyxRQUFRLFFBQVEsMkJBQTJCO0FBQ3BELFNBQVND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
@@ -16,44 +16,52 @@ export var SCABDescription = styled.p.withConfig({
16
16
  displayName: "ApprovalBoxstyles__SCABDescription",
17
17
  componentId: "sc-1vnmjr4-3"
18
18
  })(["margin:0 0 12px 0;color:#20201f;font-family:'Work Sans',sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:1.6;letter-spacing:0px;"]);
19
+ export var SCABStatusWarningIcon = styled.span.withConfig({
20
+ displayName: "ApprovalBoxstyles__SCABStatusWarningIcon",
21
+ componentId: "sc-1vnmjr4-4"
22
+ })(["display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:4px;cursor:help;flex-shrink:0;"]);
19
23
  export var SCABActionsList = styled.div.withConfig({
20
24
  displayName: "ApprovalBoxstyles__SCABActionsList",
21
- componentId: "sc-1vnmjr4-4"
25
+ componentId: "sc-1vnmjr4-5"
22
26
  })(["background:white;border-radius:8px;padding:12px;margin-bottom:16px;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid #d5d5d5;background:#fff;max-width:100%;overflow:hidden;", ""], function (_ref) {
23
27
  var $expanded = _ref.$expanded;
24
28
  return $expanded ? "\n min-width: 480px;\n width: fit-content;\n " : "\n width: 100%;\n ";
25
29
  });
26
30
  export var SCABActionItem = styled.div.withConfig({
27
31
  displayName: "ApprovalBoxstyles__SCABActionItem",
28
- componentId: "sc-1vnmjr4-5"
32
+ componentId: "sc-1vnmjr4-6"
29
33
  })(["display:flex;flex-direction:column;gap:4px;padding:8px 0;border-bottom:1px solid #eee;min-width:0;&:last-child{border-bottom:none;padding-bottom:0;}&:first-child{padding-top:0;}"]);
30
34
  export var SCABActionName = styled.span.withConfig({
31
35
  displayName: "ApprovalBoxstyles__SCABActionName",
32
- componentId: "sc-1vnmjr4-6"
36
+ componentId: "sc-1vnmjr4-7"
33
37
  })(["color:#20201f;font-family:'Work Sans',sans-serif;font-size:16px;font-weight:500;font-style:normal;line-height:140%;letter-spacing:-0.21px;overflow-wrap:break-word;word-break:break-word;min-width:0;"]);
38
+ export var SCABActionDescription = styled.p.withConfig({
39
+ displayName: "ApprovalBoxstyles__SCABActionDescription",
40
+ componentId: "sc-1vnmjr4-8"
41
+ })(["margin:0;color:#5d5d5c;font-family:'Work Sans',sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:150%;letter-spacing:0;overflow-wrap:break-word;word-break:break-word;white-space:pre-line;min-width:0;"]);
34
42
  export var SCABActionArgs = styled.ul.withConfig({
35
43
  displayName: "ApprovalBoxstyles__SCABActionArgs",
36
- componentId: "sc-1vnmjr4-7"
44
+ componentId: "sc-1vnmjr4-9"
37
45
  })(["font-size:16px;color:#666;list-style-type:disc;list-style-position:outside;padding-left:20px;margin:0;min-width:0;"]);
38
46
  export var SCABArgItem = styled.li.withConfig({
39
47
  displayName: "ApprovalBoxstyles__SCABArgItem",
40
- componentId: "sc-1vnmjr4-8"
48
+ componentId: "sc-1vnmjr4-10"
41
49
  })(["display:list-item;margin:0;padding-left:4px;min-width:0;overflow-wrap:break-word;word-break:break-word;"]);
42
50
  export var SCABArgKey = styled.span.withConfig({
43
51
  displayName: "ApprovalBoxstyles__SCABArgKey",
44
- componentId: "sc-1vnmjr4-9"
52
+ componentId: "sc-1vnmjr4-11"
45
53
  })(["color:#999;"]);
46
54
  export var SCABArgValue = styled.span.withConfig({
47
55
  displayName: "ApprovalBoxstyles__SCABArgValue",
48
- componentId: "sc-1vnmjr4-10"
56
+ componentId: "sc-1vnmjr4-12"
49
57
  })(["color:#20201f;font-family:'Work Sans',sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:140%;letter-spacing:-0.21px;overflow-wrap:break-word;word-break:break-word;min-width:0;"]);
50
58
  export var SCABButtonsContainer = styled.div.withConfig({
51
59
  displayName: "ApprovalBoxstyles__SCABButtonsContainer",
52
- componentId: "sc-1vnmjr4-11"
60
+ componentId: "sc-1vnmjr4-13"
53
61
  })(["display:flex;align-items:flex-start;gap:18px;align-self:stretch;max-width:480px;width:100%;"]);
54
62
  export var SCABButton = styled.button.withConfig({
55
63
  displayName: "ApprovalBoxstyles__SCABButton",
56
- componentId: "sc-1vnmjr4-12"
64
+ componentId: "sc-1vnmjr4-14"
57
65
  })(["display:flex;padding:10px 12px;height:36px;justify-content:center;align-items:center;flex:1 0 0;border-radius:4px;font-family:'Work Sans',sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:14px;text-align:center;cursor:", ";transition:all 0.2s ease;opacity:", ";", ""], function (_ref2) {
58
66
  var $disabled = _ref2.$disabled;
59
67
  return $disabled ? 'not-allowed' : 'pointer';
@@ -66,7 +74,7 @@ export var SCABButton = styled.button.withConfig({
66
74
  });
67
75
  export var SCABStatusBadge = styled.div.withConfig({
68
76
  displayName: "ApprovalBoxstyles__SCABStatusBadge",
69
- componentId: "sc-1vnmjr4-13"
77
+ componentId: "sc-1vnmjr4-15"
70
78
  })(["display:inline-flex;align-items:center;gap:4px;color:#343433;font-family:'Work Sans',sans-serif;font-size:16px;font-style:normal;font-weight:600;line-height:140%;letter-spacing:-0.21px;", ""], function (_ref5) {
71
79
  var $status = _ref5.$status;
72
80
  switch ($status) {
@@ -78,4 +86,4 @@ export var SCABStatusBadge = styled.div.withConfig({
78
86
  return "\n background: ".concat(BLUE_IA_COLORS[50], ";\n color: ").concat(BLUE_IA_COLORS[500], ";\n ");
79
87
  }
80
88
  });
81
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJCTFVFX0lBX0NPTE9SUyIsIlNDQXBwcm92YWxCb3giLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNDQUJIZWFkZXIiLCJTQ0FCVGl0bGUiLCJoNCIsIlNDQUJEZXNjcmlwdGlvbiIsInAiLCJTQ0FCQWN0aW9uc0xpc3QiLCJfcmVmIiwiJGV4cGFuZGVkIiwiU0NBQkFjdGlvbkl0ZW0iLCJTQ0FCQWN0aW9uTmFtZSIsInNwYW4iLCJTQ0FCQWN0aW9uQXJncyIsInVsIiwiU0NBQkFyZ0l0ZW0iLCJsaSIsIlNDQUJBcmdLZXkiLCJTQ0FCQXJnVmFsdWUiLCJTQ0FCQnV0dG9uc0NvbnRhaW5lciIsIlNDQUJCdXR0b24iLCJidXR0b24iLCJfcmVmMiIsIiRkaXNhYmxlZCIsIl9yZWYzIiwiX3JlZjQiLCIkdmFyaWFudCIsImNvbmNhdCIsIlNDQUJTdGF0dXNCYWRnZSIsIl9yZWY1IiwiJHN0YXR1cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0FwcHJvdmFsQm94L0FwcHJvdmFsQm94LnN0eWxlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IHsgQkxVRV9JQV9DT0xPUlMgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvY29uZmlnJ1xuXG5leHBvcnQgY29uc3QgU0NBcHByb3ZhbEJveCA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDBweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCSGVhZGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCVGl0bGUgPSBzdHlsZWQuaDRgXG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBsZXR0ZXItc3BhY2luZzogMHB4O1xuYFxuXG5leHBvcnQgY29uc3QgU0NBQkRlc2NyaXB0aW9uID0gc3R5bGVkLnBgXG4gIG1hcmdpbjogMCAwIDEycHggMDtcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGxldHRlci1zcGFjaW5nOiAwcHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCQWN0aW9uc0xpc3QgPSBzdHlsZWQuZGl2PHsgJGV4cGFuZGVkPzogYm9vbGVhbiB9PmBcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDVkNWQ1O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7KHsgJGV4cGFuZGVkIH0pID0+XG4gICAgJGV4cGFuZGVkXG4gICAgICA/IGBcbiAgICBtaW4td2lkdGg6IDQ4MHB4O1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYFxuICAgICAgOiBgXG4gICAgd2lkdGg6IDEwMCU7XG4gIGB9XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCQWN0aW9uSXRlbSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogNHB4O1xuICBwYWRkaW5nOiA4cHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG4gIG1pbi13aWR0aDogMDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NBQkFjdGlvbk5hbWUgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMjFweDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgbWluLXdpZHRoOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NBQkFjdGlvbkFyZ3MgPSBzdHlsZWQudWxgXG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICM2NjY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW46IDA7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJBcmdJdGVtID0gc3R5bGVkLmxpYFxuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJBcmdLZXkgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICM5OTk7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCQXJnVmFsdWUgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMjFweDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgbWluLXdpZHRoOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NBQkJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAxOHB4O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBtYXgtd2lkdGg6IDQ4MHB4O1xuICB3aWR0aDogMTAwJTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJCdXR0b24gPSBzdHlsZWQuYnV0dG9uPHsgJHZhcmlhbnQ6ICdhcHByb3ZlJyB8ICdyZWplY3QnOyAkZGlzYWJsZWQ/OiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gIGhlaWdodDogMzZweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDEgMCAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogJHsoeyAkZGlzYWJsZWQgfSkgPT4gKCRkaXNhYmxlZCA/ICdub3QtYWxsb3dlZCcgOiAncG9pbnRlcicpfTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgb3BhY2l0eTogJHsoeyAkZGlzYWJsZWQgfSkgPT4gKCRkaXNhYmxlZCA/IDAuNiA6IDEpfTtcblxuICAkeyh7ICR2YXJpYW50IH0pID0+XG4gICAgJHZhcmlhbnQgPT09ICdhcHByb3ZlJ1xuICAgICAgPyBgXG4gICAgYmFja2dyb3VuZDogJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQ6ICR7QkxVRV9JQV9DT0xPUlNbNzAwXX07XG4gICAgfVxuICBgXG4gICAgICA6IGBcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke0JMVUVfSUFfQ09MT1JTWzUwMF19O1xuXG4gICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAke0JMVUVfSUFfQ09MT1JTWzUwXX07XG4gICAgfVxuICBgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NBQlN0YXR1c0JhZGdlID0gc3R5bGVkLmRpdjx7ICRzdGF0dXM6ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnIHwgJ3BlbmRpbmcnIH0+YFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG5cbiAgY29sb3I6ICMzNDM0MzM7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMjFweDtcblxuICAkeyh7ICRzdGF0dXMgfSkgPT4ge1xuICAgIHN3aXRjaCAoJHN0YXR1cykge1xuICAgICAgY2FzZSAnYXBwcm92ZWQnOlxuICAgICAgICByZXR1cm4gYGBcbiAgICAgIGNhc2UgJ3JlamVjdGVkJzpcbiAgICAgICAgcmV0dXJuIGBgXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gYFxuICAgICAgICAgIGJhY2tncm91bmQ6ICR7QkxVRV9JQV9DT0xPUlNbNTBdfTtcbiAgICAgICAgICBjb2xvcjogJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICAgICAgYFxuICAgIH1cbiAgfX1cbmBcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLG1CQUFtQjtBQUN0QyxTQUFTQyxjQUFjLFFBQVEsd0JBQXdCO0FBRXZELE9BQU8sSUFBTUMsYUFBYSxHQUFHRixNQUFNLENBQUNHLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwrQ0FJdEM7QUFFRCxPQUFPLElBQU1DLFVBQVUsR0FBR1AsTUFBTSxDQUFDRyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsZ0RBSW5DO0FBRUQsT0FBTyxJQUFNRSxTQUFTLEdBQUdSLE1BQU0sQ0FBQ1MsRUFBRSxDQUFBTCxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG9JQVFqQztBQUVELE9BQU8sSUFBTUksZUFBZSxHQUFHVixNQUFNLENBQUNXLENBQUMsQ0FBQVAsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwrSkFTdEM7QUFFRCxPQUFPLElBQU1NLGVBQWUsR0FBR1osTUFBTSxDQUFDRyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNk1BWXJDLFVBQUFPLElBQUE7RUFBQSxJQUFH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
89
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzdHlsZWQiLCJCTFVFX0lBX0NPTE9SUyIsIlNDQXBwcm92YWxCb3giLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNDQUJIZWFkZXIiLCJTQ0FCVGl0bGUiLCJoNCIsIlNDQUJEZXNjcmlwdGlvbiIsInAiLCJTQ0FCU3RhdHVzV2FybmluZ0ljb24iLCJzcGFuIiwiU0NBQkFjdGlvbnNMaXN0IiwiX3JlZiIsIiRleHBhbmRlZCIsIlNDQUJBY3Rpb25JdGVtIiwiU0NBQkFjdGlvbk5hbWUiLCJTQ0FCQWN0aW9uRGVzY3JpcHRpb24iLCJTQ0FCQWN0aW9uQXJncyIsInVsIiwiU0NBQkFyZ0l0ZW0iLCJsaSIsIlNDQUJBcmdLZXkiLCJTQ0FCQXJnVmFsdWUiLCJTQ0FCQnV0dG9uc0NvbnRhaW5lciIsIlNDQUJCdXR0b24iLCJidXR0b24iLCJfcmVmMiIsIiRkaXNhYmxlZCIsIl9yZWYzIiwiX3JlZjQiLCIkdmFyaWFudCIsImNvbmNhdCIsIlNDQUJTdGF0dXNCYWRnZSIsIl9yZWY1IiwiJHN0YXR1cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2F0b21zL0FwcHJvdmFsQm94L0FwcHJvdmFsQm94LnN0eWxlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJ1xuaW1wb3J0IHsgQkxVRV9JQV9DT0xPUlMgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvY29uZmlnJ1xuXG5leHBvcnQgY29uc3QgU0NBcHByb3ZhbEJveCA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDBweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCSGVhZGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCVGl0bGUgPSBzdHlsZWQuaDRgXG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBsZXR0ZXItc3BhY2luZzogMHB4O1xuYFxuXG5leHBvcnQgY29uc3QgU0NBQkRlc2NyaXB0aW9uID0gc3R5bGVkLnBgXG4gIG1hcmdpbjogMCAwIDEycHggMDtcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGxldHRlci1zcGFjaW5nOiAwcHg7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCU3RhdHVzV2FybmluZ0ljb24gPSBzdHlsZWQuc3BhbmBcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBjdXJzb3I6IGhlbHA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NBQkFjdGlvbnNMaXN0ID0gc3R5bGVkLmRpdjx7ICRleHBhbmRlZD86IGJvb2xlYW4gfT5gXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDEycHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q1ZDVkNTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAkeyh7ICRleHBhbmRlZCB9KSA9PlxuICAgICRleHBhbmRlZFxuICAgICAgPyBgXG4gICAgbWluLXdpZHRoOiA0ODBweDtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGBcbiAgICAgIDogYFxuICAgIHdpZHRoOiAxMDAlO1xuICBgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NBQkFjdGlvbkl0ZW0gPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDRweDtcbiAgcGFkZGluZzogOHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICBtaW4td2lkdGg6IDA7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJBY3Rpb25OYW1lID0gc3R5bGVkLnNwYW5gXG4gIGNvbG9yOiAjMjAyMDFmO1xuICBmb250LWZhbWlseTogJ1dvcmsgU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTQwJTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjIxcHg7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJBY3Rpb25EZXNjcmlwdGlvbiA9IHN0eWxlZC5wYFxuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjNWQ1ZDVjO1xuICBmb250LWZhbWlseTogJ1dvcmsgU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTUwJTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcbiAgbWluLXdpZHRoOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NBQkFjdGlvbkFyZ3MgPSBzdHlsZWQudWxgXG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICM2NjY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW46IDA7XG4gIG1pbi13aWR0aDogMDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJBcmdJdGVtID0gc3R5bGVkLmxpYFxuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiA0cHg7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJBcmdLZXkgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICM5OTk7XG5gXG5cbmV4cG9ydCBjb25zdCBTQ0FCQXJnVmFsdWUgPSBzdHlsZWQuc3BhbmBcbiAgY29sb3I6ICMyMDIwMWY7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMjFweDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgbWluLXdpZHRoOiAwO1xuYFxuXG5leHBvcnQgY29uc3QgU0NBQkJ1dHRvbnNDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAxOHB4O1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBtYXgtd2lkdGg6IDQ4MHB4O1xuICB3aWR0aDogMTAwJTtcbmBcblxuZXhwb3J0IGNvbnN0IFNDQUJCdXR0b24gPSBzdHlsZWQuYnV0dG9uPHsgJHZhcmlhbnQ6ICdhcHByb3ZlJyB8ICdyZWplY3QnOyAkZGlzYWJsZWQ/OiBib29sZWFuIH0+YFxuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gIGhlaWdodDogMzZweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDEgMCAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogJHsoeyAkZGlzYWJsZWQgfSkgPT4gKCRkaXNhYmxlZCA/ICdub3QtYWxsb3dlZCcgOiAncG9pbnRlcicpfTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgb3BhY2l0eTogJHsoeyAkZGlzYWJsZWQgfSkgPT4gKCRkaXNhYmxlZCA/IDAuNiA6IDEpfTtcblxuICAkeyh7ICR2YXJpYW50IH0pID0+XG4gICAgJHZhcmlhbnQgPT09ICdhcHByb3ZlJ1xuICAgICAgPyBgXG4gICAgYmFja2dyb3VuZDogJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgIGJhY2tncm91bmQ6ICR7QkxVRV9JQV9DT0xPUlNbNzAwXX07XG4gICAgfVxuICBgXG4gICAgICA6IGBcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke0JMVUVfSUFfQ09MT1JTWzUwMF19O1xuXG4gICAgJjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAke0JMVUVfSUFfQ09MT1JTWzUwXX07XG4gICAgfVxuICBgfVxuYFxuXG5leHBvcnQgY29uc3QgU0NBQlN0YXR1c0JhZGdlID0gc3R5bGVkLmRpdjx7ICRzdGF0dXM6ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnIHwgJ3BlbmRpbmcnIH0+YFxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG5cbiAgY29sb3I6ICMzNDM0MzM7XG4gIGZvbnQtZmFtaWx5OiAnV29yayBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMjFweDtcblxuICAkeyh7ICRzdGF0dXMgfSkgPT4ge1xuICAgIHN3aXRjaCAoJHN0YXR1cykge1xuICAgICAgY2FzZSAnYXBwcm92ZWQnOlxuICAgICAgICByZXR1cm4gYGBcbiAgICAgIGNhc2UgJ3JlamVjdGVkJzpcbiAgICAgICAgcmV0dXJuIGBgXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gYFxuICAgICAgICAgIGJhY2tncm91bmQ6ICR7QkxVRV9JQV9DT0xPUlNbNTBdfTtcbiAgICAgICAgICBjb2xvcjogJHtCTFVFX0lBX0NPTE9SU1s1MDBdfTtcbiAgICAgICAgYFxuICAgIH1cbiAgfX1cbmBcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLG1CQUFtQjtBQUN0QyxTQUFTQyxjQUFjLFFBQVEsd0JBQXdCO0FBRXZELE9BQU8sSUFBTUMsYUFBYSxHQUFHRixNQUFNLENBQUNHLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwrQ0FJdEM7QUFFRCxPQUFPLElBQU1DLFVBQVUsR0FBR1AsTUFBTSxDQUFDRyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsZ0RBSW5DO0FBRUQsT0FBTyxJQUFNRSxTQUFTLEdBQUdSLE1BQU0sQ0FBQ1MsRUFBRSxDQUFBTCxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLG9JQVFqQztBQUVELE9BQU8sSUFBTUksZUFBZSxHQUFHVixNQUFNLENBQUNXLENBQUMsQ0FBQVAsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSwrSkFTdEM7QUFFRCxPQUFPLElBQU1NLHFCQUFxQixHQUFHWixNQUFNLENBQUNhLElBQUksQ0FBQVQsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSx1SUFTL0M7QUFFRCxPQUFPLElBQU1RLGVBQWUsR0FBR2QsTUFBTSxDQUFDRyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNk1BWXJDLFVBQUFTLElBQUE7RUFBQSxJQUFHQyxTQUFTLEdBQUFELElBQUEsQ0FBVEMsU0FBUztFQUFBLE9BQ1pBLFNBQVMsb0ZBT1Y7QUFBQSxFQUNGO0FBRUQsT0FBTyxJQUFNQyxjQUFjLEdBQUdqQixNQUFNLENBQUNHLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSx5TEFnQnZDO0FBRUQsT0FBTyxJQUFNWSxjQUFjLEdBQUdsQixNQUFNLENBQUNhLElBQUksQ0FBQVQsVUFB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