@1money/component-ui 0.0.99 → 0.0.100
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.
- package/es/business/Dialog/VerificationDialog/VerificationDialog.js +38 -39
- package/es/business/Dialog/variants/LoadingDialog.js +17 -17
- package/es/business/Filter/DateRange/DateRange.js +14 -14
- package/es/business/Select/Country/CountrySelect.js +71 -40
- package/es/business/Select/Country/interface.d.ts +31 -15
- package/es/business/Select/Country/style/CountrySelect.css +33 -0
- package/es/business/Select/Country/style/css.js +2 -0
- package/es/business/Select/Country/style/index.d.ts +1 -0
- package/es/business/Select/Country/style/index.js +2 -0
- package/es/business/shared/formCore/useSubmitAction.js +19 -19
- package/es/components/Icons/Illustrations.js +15 -15
- package/es/components/Notification/NotificationStatic.js +27 -32
- package/es/components/ProForm/ProForm.js +47 -51
- package/es/components/ProForm/Submitter.js +8 -8
- package/es/components/ProForm/core/hooks/useForm.js +77 -88
- package/es/components/ProForm/core/runRules.js +56 -61
- package/es/components/ProForm/hooks/useFieldRequest.js +19 -19
- package/es/components/ProForm/layouts/useOverlayForm.js +9 -11
- package/es/components/ProTable/ProTable.js +8 -8
- package/es/components/ProTable/useFetchData.js +23 -23
- package/es/components/Select/SelectOptionContent.js +8 -1
- package/es/components/Select/interface.d.ts +9 -0
- package/es/components/Select/interface.js +1 -1
- package/es/components/Select/style/Select.css +7 -0
- package/es/components/Spinner/Spinner.js +11 -11
- package/es/components/Table/internal/kernel/Table.js +8 -8
- package/es/index.css +1 -1
- package/lib/business/Dialog/BaseDialog/BaseDialog.js +2 -3
- package/lib/business/Dialog/Descriptions/Descriptions.js +2 -3
- package/lib/business/Dialog/DetailsDialog/DetailsDialog.js +2 -3
- package/lib/business/Dialog/FormDialog/FormDialog.js +2 -3
- package/lib/business/Dialog/VerificationDialog/VerificationDialog.js +39 -41
- package/lib/business/Dialog/variants/LoadingDialog.js +18 -19
- package/lib/business/FieldList/index.js +2 -3
- package/lib/business/Filter/DateRange/DateRange.js +14 -14
- package/lib/business/Select/Country/CountrySelect.js +71 -40
- package/lib/business/Select/Country/interface.d.ts +31 -15
- package/lib/business/Select/Country/style/CountrySelect.css +33 -0
- package/lib/business/Select/Country/style/css.js +4 -0
- package/lib/business/Select/Country/style/index.d.ts +1 -0
- package/lib/business/Select/Country/style/index.js +4 -0
- package/lib/business/shared/formCore/useSubmitAction.js +19 -19
- package/lib/components/Accordion/Accordion.js +2 -3
- package/lib/components/Accordion/index.js +2 -3
- package/lib/components/ActionBar/ActionBar.js +2 -3
- package/lib/components/Alert/Alert.js +2 -3
- package/lib/components/Alert/index.js +2 -3
- package/lib/components/Button/Button.js +2 -3
- package/lib/components/Button/index.js +2 -3
- package/lib/components/Calendar/Calendar.js +2 -3
- package/lib/components/Calendar/index.js +2 -3
- package/lib/components/Carousel/Carousel.js +2 -3
- package/lib/components/Carousel/index.js +2 -3
- package/lib/components/Cell/Cell.js +2 -3
- package/lib/components/Cell/index.js +2 -3
- package/lib/components/Checkbox/BaseCheckbox.js +2 -3
- package/lib/components/Checkbox/Checkbox.js +2 -3
- package/lib/components/Checkbox/CheckboxGroup.js +2 -3
- package/lib/components/Checkbox/index.js +2 -3
- package/lib/components/CoachMark/CoachMark.js +2 -3
- package/lib/components/CoachMark/index.js +2 -3
- package/lib/components/Copy/Clipboard.js +2 -3
- package/lib/components/Copy/Copy.js +2 -3
- package/lib/components/Copy/index.js +2 -3
- package/lib/components/Dialog/index.js +2 -3
- package/lib/components/Divider/Divider.js +2 -3
- package/lib/components/Drawer/Drawer.js +2 -3
- package/lib/components/Empty/Empty.js +2 -3
- package/lib/components/Empty/index.js +2 -3
- package/lib/components/Flex/Flex.js +2 -3
- package/lib/components/FormLayout/FormLayout.js +2 -3
- package/lib/components/Grid/Col.js +2 -3
- package/lib/components/Grid/Row.js +2 -3
- package/lib/components/Icons/Illustrations.js +15 -15
- package/lib/components/Icons/Logo.js +2 -3
- package/lib/components/Icons/Wrapper.js +2 -3
- package/lib/components/Icons/index.js +2 -3
- package/lib/components/Input/Amount/Amount.js +2 -3
- package/lib/components/Input/Amount/index.js +2 -3
- package/lib/components/Input/FieldShell/FieldShell.js +2 -3
- package/lib/components/Input/FieldShell/index.js +2 -3
- package/lib/components/Input/Input/Input.js +2 -3
- package/lib/components/Input/Input/index.js +2 -3
- package/lib/components/Input/Mask/Mask.js +2 -3
- package/lib/components/Input/Mask/index.js +2 -3
- package/lib/components/Input/OTP/index.js +2 -3
- package/lib/components/Input/Password/Password.js +2 -3
- package/lib/components/Input/Password/index.js +2 -3
- package/lib/components/Input/Search/Search.js +2 -3
- package/lib/components/Input/Search/index.js +2 -3
- package/lib/components/Input/TextArea/TextArea.js +2 -3
- package/lib/components/Input/TextArea/index.js +2 -3
- package/lib/components/Input/Trade/Trade.js +2 -3
- package/lib/components/Input/Trade/index.js +2 -3
- package/lib/components/Input/index.js +2 -3
- package/lib/components/Link/Link.js +2 -3
- package/lib/components/Link/index.js +2 -3
- package/lib/components/Navigation/Nav.js +2 -3
- package/lib/components/Navigation/Navigation.js +2 -3
- package/lib/components/Navigation/NavigationStepper.js +2 -3
- package/lib/components/Navigation/index.js +2 -3
- package/lib/components/Notification/Notification.js +2 -3
- package/lib/components/Notification/NotificationStatic.js +28 -34
- package/lib/components/Notification/index.js +2 -3
- package/lib/components/Pagination/Pagination.js +2 -3
- package/lib/components/Pagination/index.js +2 -3
- package/lib/components/PanelLayout/PanelLayout.js +2 -3
- package/lib/components/Popconfirm/Popconfirm.js +2 -3
- package/lib/components/Popconfirm/index.js +2 -3
- package/lib/components/Portal/index.js +2 -3
- package/lib/components/ProForm/ProForm.js +48 -53
- package/lib/components/ProForm/ProFormDependency.js +2 -3
- package/lib/components/ProForm/ProFormItem.js +2 -3
- package/lib/components/ProForm/Submitter.js +8 -8
- package/lib/components/ProForm/core/devWarning.js +2 -3
- package/lib/components/ProForm/core/hooks/useForm.js +78 -90
- package/lib/components/ProForm/core/runRules.js +56 -61
- package/lib/components/ProForm/core/useFormItem.js +2 -3
- package/lib/components/ProForm/fields/ProFormFieldSet.js +2 -3
- package/lib/components/ProForm/hooks/useFieldRequest.js +19 -19
- package/lib/components/ProForm/layouts/QueryFilter.js +2 -3
- package/lib/components/ProForm/layouts/useOverlayForm.js +10 -13
- package/lib/components/ProTable/ProTable.js +8 -8
- package/lib/components/ProTable/index.js +2 -3
- package/lib/components/ProTable/useFetchData.js +23 -23
- package/lib/components/Progress/Progress.js +2 -3
- package/lib/components/Progress/index.js +2 -3
- package/lib/components/Radio/Radio.js +2 -3
- package/lib/components/Radio/RadioGroup.js +2 -3
- package/lib/components/Radio/index.js +2 -3
- package/lib/components/ResizeObserver/Collection.js +2 -3
- package/lib/components/ResizeObserver/ResizeObserver.js +2 -3
- package/lib/components/ResizeObserver/SingleObserver/index.js +2 -3
- package/lib/components/ResizeObserver/useResizeObserver.js +2 -3
- package/lib/components/ResizeObserver/utils/reactUtil.js +2 -3
- package/lib/components/Segment/Segment.js +2 -3
- package/lib/components/Segment/index.js +2 -3
- package/lib/components/Select/Select.js +2 -3
- package/lib/components/Select/SelectCustom.js +2 -3
- package/lib/components/Select/SelectOptionContent.js +8 -1
- package/lib/components/Select/interface.d.ts +9 -0
- package/lib/components/Select/interface.js +1 -1
- package/lib/components/Select/style/Select.css +7 -0
- package/lib/components/Skeleton/Skeleton.js +2 -3
- package/lib/components/Skeleton/index.js +2 -3
- package/lib/components/Slider/Slider.js +2 -3
- package/lib/components/Slider/index.js +2 -3
- package/lib/components/Space/Space.js +2 -3
- package/lib/components/Spinner/Spinner.js +12 -13
- package/lib/components/Spinner/index.js +2 -3
- package/lib/components/Step/Step.js +2 -3
- package/lib/components/Step/index.js +2 -3
- package/lib/components/Switch/Switch.js +2 -3
- package/lib/components/Switch/index.js +2 -3
- package/lib/components/Table/core/useTableSetup.js +2 -3
- package/lib/components/Table/internal/index.js +2 -3
- package/lib/components/Table/internal/kernel/Body/BodyRow.js +2 -3
- package/lib/components/Table/internal/kernel/Body/ExpandedRow.js +2 -3
- package/lib/components/Table/internal/kernel/Body/MeasureCell.js +2 -3
- package/lib/components/Table/internal/kernel/Body/MeasureRow.js +2 -3
- package/lib/components/Table/internal/kernel/Body/index.js +2 -3
- package/lib/components/Table/internal/kernel/Cell/index.js +2 -3
- package/lib/components/Table/internal/kernel/Cell/useCellRender.js +2 -3
- package/lib/components/Table/internal/kernel/ColGroup.js +2 -3
- package/lib/components/Table/internal/kernel/FixedHolder/index.js +2 -3
- package/lib/components/Table/internal/kernel/Footer/Cell.js +2 -3
- package/lib/components/Table/internal/kernel/Footer/Row.js +2 -3
- package/lib/components/Table/internal/kernel/Footer/SummaryContext.js +2 -3
- package/lib/components/Table/internal/kernel/Footer/index.js +2 -3
- package/lib/components/Table/internal/kernel/Header/Header.js +2 -3
- package/lib/components/Table/internal/kernel/Header/HeaderRow.js +2 -3
- package/lib/components/Table/internal/kernel/Panel/index.js +2 -3
- package/lib/components/Table/internal/kernel/Table.js +9 -10
- package/lib/components/Table/internal/kernel/VirtualTable/BodyGrid.js +2 -3
- package/lib/components/Table/internal/kernel/VirtualTable/BodyLine.js +2 -3
- package/lib/components/Table/internal/kernel/VirtualTable/VirtualCell.js +2 -3
- package/lib/components/Table/internal/kernel/VirtualTable/index.js +2 -3
- package/lib/components/Table/internal/kernel/context/PerfContext.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useColumns/index.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useExpand.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useFixedInfo.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useFlattenRecords.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useHover.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useRenderTimes.js +2 -3
- package/lib/components/Table/internal/kernel/hooks/useSticky.js +2 -3
- package/lib/components/Table/internal/kernel/index.js +2 -3
- package/lib/components/Table/internal/kernel/selector-context/Immutable.js +2 -3
- package/lib/components/Table/internal/kernel/selector-context/context.js +2 -3
- package/lib/components/Table/internal/kernel/stickyScrollBar.js +2 -3
- package/lib/components/Table/internal/kernel/utils/expandUtil.js +2 -3
- package/lib/components/Table/internal/kernel/utils/useMemo.js +2 -3
- package/lib/components/Tabs/Tabs.js +2 -3
- package/lib/components/Tabs/index.js +2 -3
- package/lib/components/Tag/Tag.js +2 -3
- package/lib/components/Tag/index.js +2 -3
- package/lib/components/Tooltip/Tooltip.js +2 -3
- package/lib/components/Tooltip/index.js +2 -3
- package/lib/components/Tour/index.js +2 -3
- package/lib/components/Trigger/Trigger.js +2 -3
- package/lib/components/Typography/index.js +2 -3
- package/lib/components/Typography/utils.js +2 -3
- package/lib/components/Upload/Upload.js +2 -3
- package/lib/components/Upload/UploadFileBar.js +2 -3
- package/lib/components/Upload/index.js +2 -3
- package/lib/components/VirtualList/Filler.js +2 -3
- package/lib/components/VirtualList/Item.js +2 -3
- package/lib/components/VirtualList/ScrollBar.js +2 -3
- package/lib/components/VirtualList/VirtualList.js +2 -3
- package/lib/components/VirtualList/hooks/useChildren.js +2 -3
- package/lib/components/VirtualList/hooks/useDiffItem.js +2 -3
- package/lib/components/VirtualList/hooks/useGetSize.js +2 -3
- package/lib/components/VirtualList/hooks/useHeights.js +2 -3
- package/lib/components/VirtualList/hooks/useScrollDrag.js +2 -3
- package/lib/components/VirtualList/hooks/useScrollTo.js +2 -3
- package/lib/index.css +1 -1
- package/lib/stories/docs/ComponentDocsPage.js +2 -3
- package/package.json +23 -17
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
2
|
-
|
|
2
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
3
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
3
4
|
var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
|
|
4
5
|
function adopt(value) {
|
|
5
6
|
return value instanceof P ? value : new P(function (resolve) {
|
|
@@ -113,17 +114,17 @@ export function useFetchData(options) {
|
|
|
113
114
|
// The single network entry point: abort the previous request, then apply data
|
|
114
115
|
// while guarding against stale / aborted responses.
|
|
115
116
|
var runRequest = useMemoizedFn(function (merged, st, ft) {
|
|
116
|
-
return __awaiter(_this, void 0, void 0, /*#__PURE__*/
|
|
117
|
+
return __awaiter(_this, void 0, void 0, /*#__PURE__*/_regenerator().m(function _callee() {
|
|
117
118
|
var _a, _b, _c, _d, _e, _f, req, silent, abort, requestId, result, raw, next, _t;
|
|
118
|
-
return
|
|
119
|
-
while (1) switch (_context.
|
|
119
|
+
return _regenerator().w(function (_context) {
|
|
120
|
+
while (1) switch (_context.p = _context.n) {
|
|
120
121
|
case 0:
|
|
121
122
|
req = reqRef.current;
|
|
122
123
|
if (req) {
|
|
123
|
-
_context.
|
|
124
|
+
_context.n = 1;
|
|
124
125
|
break;
|
|
125
126
|
}
|
|
126
|
-
return _context.
|
|
127
|
+
return _context.a(2);
|
|
127
128
|
case 1:
|
|
128
129
|
// A polling refetch refreshes silently — no loading overlay flash.
|
|
129
130
|
silent = silentRef.current;
|
|
@@ -133,24 +134,24 @@ export function useFetchData(options) {
|
|
|
133
134
|
abortRef.current = abort;
|
|
134
135
|
requestId = ++requestIdRef.current;
|
|
135
136
|
if (!silent) setLoading(true);
|
|
136
|
-
_context.
|
|
137
|
-
_context.
|
|
137
|
+
_context.p = 2;
|
|
138
|
+
_context.n = 3;
|
|
138
139
|
return req(merged, st, ft, {
|
|
139
140
|
signal: abort.signal
|
|
140
141
|
});
|
|
141
142
|
case 3:
|
|
142
|
-
result = _context.
|
|
143
|
+
result = _context.v;
|
|
143
144
|
if (!(abort.signal.aborted || requestId !== requestIdRef.current)) {
|
|
144
|
-
_context.
|
|
145
|
+
_context.n = 4;
|
|
145
146
|
break;
|
|
146
147
|
}
|
|
147
|
-
return _context.
|
|
148
|
+
return _context.a(2);
|
|
148
149
|
case 4:
|
|
149
150
|
if (!(result.success === false)) {
|
|
150
|
-
_context.
|
|
151
|
+
_context.n = 5;
|
|
151
152
|
break;
|
|
152
153
|
}
|
|
153
|
-
return _context.
|
|
154
|
+
return _context.a(2);
|
|
154
155
|
case 5:
|
|
155
156
|
raw = (_b = result.data) !== null && _b !== void 0 ? _b : [];
|
|
156
157
|
next = callbacks.current.postData ? callbacks.current.postData(raw) : raw;
|
|
@@ -162,25 +163,24 @@ export function useFetchData(options) {
|
|
|
162
163
|
});
|
|
163
164
|
});
|
|
164
165
|
(_d = (_c = callbacks.current).onLoad) === null || _d === void 0 ? void 0 : _d.call(_c, next);
|
|
165
|
-
_context.
|
|
166
|
+
_context.n = 8;
|
|
166
167
|
break;
|
|
167
168
|
case 6:
|
|
168
|
-
_context.
|
|
169
|
-
_t = _context
|
|
169
|
+
_context.p = 6;
|
|
170
|
+
_t = _context.v;
|
|
170
171
|
if (!(abort.signal.aborted || requestId !== requestIdRef.current)) {
|
|
171
|
-
_context.
|
|
172
|
+
_context.n = 7;
|
|
172
173
|
break;
|
|
173
174
|
}
|
|
174
|
-
return _context.
|
|
175
|
+
return _context.a(2);
|
|
175
176
|
case 7:
|
|
176
177
|
(_f = (_e = callbacks.current).onRequestError) === null || _f === void 0 ? void 0 : _f.call(_e, _t);
|
|
177
178
|
case 8:
|
|
178
|
-
_context.
|
|
179
|
+
_context.p = 8;
|
|
179
180
|
if (!silent && requestId === requestIdRef.current) setLoading(false);
|
|
180
|
-
return _context.
|
|
181
|
+
return _context.f(8);
|
|
181
182
|
case 9:
|
|
182
|
-
|
|
183
|
-
return _context.stop();
|
|
183
|
+
return _context.a(2);
|
|
184
184
|
}
|
|
185
185
|
}, _callee, null, [[2, 6, 8, 9]]);
|
|
186
186
|
}));
|
|
@@ -269,4 +269,4 @@ export function useFetchData(options) {
|
|
|
269
269
|
reset: reset
|
|
270
270
|
};
|
|
271
271
|
}
|
|
272
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvVGFibGUvdXNlRmV0Y2hEYXRhLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Qcm9UYWJsZS91c2VGZXRjaERhdGEudHMiXSwibmFtZXMiOlsiX19hd2FpdGVyIiwidGhpc0FyZyIsIl9hcmd1bWVudHMiLCJQIiwiZ2VuZXJhdG9yIiwiYWRvcHQiLCJ2YWx1ZSIsInJlc29sdmUiLCJQcm9taXNlIiwicmVqZWN0IiwiZnVsZmlsbGVkIiwic3RlcCIsIm5leHQiLCJlIiwicmVqZWN0ZWQiLCJyZXN1bHQiLCJkb25lIiwidGhlbiIsImFwcGx5IiwidXNlRWZmZWN0IiwidXNlUmVmIiwidXNlTGF0ZXN0IiwidXNlTWVtb2l6ZWRGbiIsInVzZVNhZmVTdGF0ZSIsInVzZUF3YWl0YWJsZVJlbG9hZCIsInVzZUZldGNoRGF0YSIsIm9wdGlvbnMiLCJfdGhpcyIsInJlcXVlc3QiLCJtYW51YWwiLCJtYW51YWxSZXF1ZXN0IiwiZGVib3VuY2VUaW1lIiwicG9zdERhdGEiLCJwb2xsaW5nIiwicGFyYW1zIiwiZGVmYXVsdERhdGEiLCJwYWdpbmF0ZWQiLCJkZWZhdWx0Q3VycmVudCIsImRlZmF1bHRQYWdlU2l6ZSIsInNlYXJjaFBhcmFtcyIsInNvcnQiLCJmaWx0ZXIiLCJvbkxvYWQiLCJvbkxvYWRpbmdDaGFuZ2UiLCJvblJlcXVlc3RFcnJvciIsIl91c2VTYWZlU3RhdGUiLCJfdXNlU2FmZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5IiwiZGF0YVNvdXJjZSIsInNldERhdGFTb3VyY2UiLCJfdXNlU2FmZVN0YXRlMyIsIl91c2VTYWZlU3RhdGU0IiwibG9hZGluZyIsInNldExvYWRpbmdTdGF0ZSIsIl91c2VTYWZlU3RhdGU1IiwiY3VycmVudCIsInBhZ2VTaXplIiwidG90YWwiLCJfdXNlU2FmZVN0YXRlNiIsInBhZ2VJbmZvIiwic2V0UGFnZUluZm9TdGF0ZSIsInJlbG9hZFNpZ25hbCIsInJlcVJlZiIsImNhbGxiYWNrcyIsImxvYWRpbmdSZWYiLCJyZXF1ZXN0SWRSZWYiLCJhYm9ydFJlZiIsInNraXBGaXJzdFJlZiIsInByZXZQYXJhbXNSZWYiLCJ1bmRlZmluZWQiLCJkZWJvdW5jZVRpbWVyUmVmIiwic2lsZW50UmVmIiwic2V0TG9hZGluZyIsIl9hIiwiX2IiLCJjYWxsIiwic2V0UGFnZUluZm8iLCJpbmZvIiwicHJldiIsIm1lcmdlZCIsIk9iamVjdCIsImFzc2lnbiIsInJ1blJlcXVlc3QiLCJzdCIsImZ0IiwiX3JlZ2VuZXJhdG9yUnVudGltZSIsIm1hcmsiLCJfY2FsbGVlIiwiX2MiLCJfZCIsIl9lIiwiX2YiLCJyZXEiLCJzaWxlbnQiLCJhYm9ydCIsInJlcXVlc3RJZCIsInJhdyIsIl90Iiwid3JhcCIsIl9jb250ZXh0IiwiYWJydXB0IiwiQWJvcnRDb250cm9sbGVyIiwic2lnbmFsIiwic2VudCIsImFib3J0ZWQiLCJzdWNjZXNzIiwiZGF0YSIsImxlbmd0aCIsImZpbmlzaCIsInN0b3AiLCJidWlsZE1lcmdlZCIsInBhcmFtc0tleSIsIkpTT04iLCJzdHJpbmdpZnkiLCJzZXR0bGUiLCJmaXJlIiwiY2xlYXJUaW1lb3V0Iiwic2V0VGltZW91dCIsInRva2VuIiwicmVsb2FkIiwicmVzZXQiLCJwb2xsaW5nTXMiLCJpZCIsInNldEludGVydmFsIiwiY2xlYXJJbnRlcnZhbCJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxJQUFJQSxTQUFTLEdBQUksSUFBSSxJQUFJLElBQUksQ0FBQ0EsU0FBUyxJQUFLLFVBQVVDLE9BQU8sRUFBRUMsVUFBVSxFQUFFQyxDQUFDLEVBQUVDLFNBQVMsRUFBRTtFQUNyRixTQUFTQyxLQUFLQSxDQUFDQyxLQUFLLEVBQUU7SUFBRSxPQUFPQSxLQUFLLFlBQVlILENBQUMsR0FBR0csS0FBSyxHQUFHLElBQUlILENBQUMsQ0FBQyxVQUFVSSxPQUFPLEVBQUU7TUFBRUEsT0FBTyxDQUFDRCxLQUFLLENBQUM7SUFBRSxDQUFDLENBQUM7RUFBRTtFQUMzRyxPQUFPLEtBQUtILENBQUMsS0FBS0EsQ0FB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Q0FBQyxFQUFFO0lBQzVDLElBQU1DLEVBQUUsR0FBR0MsV0FBVyxDQUFDLFlBQUs7TUFDMUIsSUFBSTNELFVBQVUsQ0FBQ1QsT0FBTyxFQUFFO01BQ3hCZ0IsU0FBUyxDQUFDaEIsT0FBTyxHQUFHLElBQUk7TUFDeEIsS0FBS00sWUFBWSxDQUFDakMsT0FBTyxDQUFBLENBQUU7SUFDN0IsQ0FBQyxFQUFFNkYsU0FBUyxDQUFDO0lBQ2IsT0FBTztNQUFBLE9BQU1HLGFBQWEsQ0FBQ0YsRUFBRSxDQUFDO0lBQUE7RUFDaEMsQ0FBQyxFQUFFLENBQUNELFNBQVMsRUFBRTVGLE1BQU0sQ0FBQyxDQUFDO0VBRXZCO0VBQ0FWLFNBQVMsQ0FBQztJQUFBLE9BQU0sWUFBSztNQUFBLElBQUFzRCxFQUFBO01BQUMsT0FBQSxDQUFBQSxFQUFBLEdBQUFQLFFBQVEsQ0FBQ1gsT0FBTyxNQUFBLElBQUEsSUFBQWtCLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFcUIsS0FBSyxDQUFBLENBQUU7SUFBQSxDQUFBO0VBQUEsR0FBRSxFQUFFLENBQUM7RUFFcEQsT0FBTztJQUFFOUMsVUFBVSxFQUFWQSxVQUFVO0lBQUVJLE9BQU8sRUFBUEEsT0FBTztJQUFFTyxRQUFRLEVBQVJBLFFBQVE7SUFBRWlCLFdBQVcsRUFBWEEsV0FBVztJQUFFMkMsTUFBTSxFQUFOQSxNQUFNO0lBQUVDLEtBQUssRUFBTEE7RUFBSyxDQUFFO0FBQ3RFIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvVGFibGUvdXNlRmV0Y2hEYXRhLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fYXdhaXRlciA9ICh0aGlzICYmIHRoaXMuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB1c2VMYXRlc3QgZnJvbSAnQDFtb25leS9ob29rcy91c2VMYXRlc3QnO1xuaW1wb3J0IHVzZU1lbW9pemVkRm4gZnJvbSAnQDFtb25leS9ob29rcy91c2VNZW1vaXplZEZuJztcbmltcG9ydCB1c2VTYWZlU3RhdGUgZnJvbSAnQDFtb25leS9ob29rcy91c2VTYWZlU3RhdGUnO1xuaW1wb3J0IHsgdXNlQXdhaXRhYmxlUmVsb2FkIH0gZnJvbSAnLi9jb3JlL3VzZUF3YWl0YWJsZVJlbG9hZCc7XG4vKipcbiAqIE93bnMgdGhlIHJlcXVlc3QgbGlmZWN5Y2xlIGZvciBQcm9UYWJsZTogZGF0YSwgbG9hZGluZywgYW5kIHBhZ2luYXRpb24uXG4gKlxuICogT25lIGVmZmVjdCBpcyB0aGUgc2luZ2xlIGZldGNoIHBhdGguIEl0IHJlYWRzIGl0cyBxdWVyeSBpbnB1dHMgZnJvbSB0aGVcbiAqICoqcmVuZGVyIGNsb3N1cmUqKiAobmV2ZXIgYSBsYWdnaW5nIHJlZiksIHNvIGV2ZXJ5IHN0YXRlIGNoYW5nZSDigJQgc2VhcmNoLFxuICogc29ydCwgZmlsdGVyLCBwYXJhbXMsIHBhZ2Ug4oCUIHJlZmV0Y2hlcyB3aXRoIGNvcnJlY3QgdmFsdWVzLiBBbiBhd2FpdGFibGVcbiAqIHJlbG9hZCBzaWduYWwgbGV0cyBpbXBlcmF0aXZlIGNhbGxlcnMgZm9yY2UgdGhlIHNhbWUgZWZmZWN0IGFuZCBgYXdhaXRgIGl0LlxuICpcbiAqIGBydW5SZXF1ZXN0YCBhYm9ydHMgdGhlIHByZXZpb3VzIGluLWZsaWdodCByZXF1ZXN0IChgQWJvcnRDb250cm9sbGVyYCwgZXhwb3NlZFxuICogdG8gYHJlcXVlc3RgIGFzIGB7IHNpZ25hbCB9YCksIHRhZ3MgaXRzZWxmIHdpdGggYSByZXF1ZXN0IGlkLCBhbmQgZHJvcHMgc3RhbGVcbiAqIG9yIGFib3J0ZWQgcmVzcG9uc2VzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlRmV0Y2hEYXRhKG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHJlcXVlc3QsIG1hbnVhbCwgbWFudWFsUmVxdWVzdCwgZGVib3VuY2VUaW1lLCBwb3N0RGF0YSwgcG9sbGluZywgcGFyYW1zLCBkZWZhdWx0RGF0YSwgcGFnaW5hdGVkLCBkZWZhdWx0Q3VycmVudCwgZGVmYXVsdFBhZ2VTaXplLCBzZWFyY2hQYXJhbXMsIHNvcnQsIGZpbHRlciwgb25Mb2FkLCBvbkxvYWRpbmdDaGFuZ2UsIG9uUmVxdWVzdEVycm9yLCB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBbZGF0YVNvdXJjZSwgc2V0RGF0YVNvdXJjZV0gPSB1c2VTYWZlU3RhdGUoZGVmYXVsdERhdGEgIT09IG51bGwgJiYgZGVmYXVsdERhdGEgIT09IHZvaWQgMCA/IGRlZmF1bHREYXRhIDogW10pO1xuICAgIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nU3RhdGVdID0gdXNlU2FmZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbcGFnZUluZm8sIHNldFBhZ2VJbmZvU3RhdGVdID0gdXNlU2FmZVN0YXRlKHtcbiAgICAgICAgY3VycmVudDogZGVmYXVsdEN1cnJlbnQsXG4gICAgICAgIHBhZ2VTaXplOiBkZWZhdWx0UGFnZVNpemUsXG4gICAgICAgIHRvdGFsOiAwLFxuICAgIH0pO1xuICAgIGNvbnN0IHJlbG9hZFNpZ25hbCA9IHVzZUF3YWl0YWJsZVJlbG9hZCgpO1xuICAgIGNvbnN0IHJlcVJlZiA9IHVzZUxhdGVzdChyZXF1ZXN0KTtcbiAgICBjb25zdCBjYWxsYmFja3MgPSB1c2VMYXRlc3QoeyBvbkxvYWQsIG9uTG9hZGluZ0NoYW5nZSwgb25SZXF1ZXN0RXJyb3IsIHBvc3REYXRhIH0pO1xuICAgIGNvbnN0IGxvYWRpbmdSZWYgPSB1c2VMYXRlc3QobG9hZGluZyk7XG4gICAgY29uc3QgcmVxdWVzdElkUmVmID0gdXNlUmVmKDApO1xuICAgIGNvbnN0IGFib3J0UmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHNraXBGaXJzdFJlZiA9IHVzZVJlZihtYW51YWxSZXF1ZXN0ID09PSB0cnVlKTtcbiAgICBjb25zdCBwcmV2UGFyYW1zUmVmID0gdXNlUmVmKHVuZGVmaW5lZCk7XG4gICAgY29uc3QgZGVib3VuY2VUaW1lclJlZiA9IHVzZVJlZih1bmRlZmluZWQpO1xuICAgIC8vIFNldCByaWdodCBiZWZvcmUgYSBwb2xsaW5nLXRyaWdnZXJlZCByZWZldGNoIHNvIGl0IGNhbiByZWZyZXNoIHNpbGVudGx5XG4gICAgLy8gKHdpdGhvdXQgZmxhc2hpbmcgdGhlIG1haW4gbG9hZGluZyBvdmVybGF5KS4gQ29uc3VtZWQgYXQgdGhlIHN0YXJ0IG9mIHJ1blJlcXVlc3QuXG4gICAgY29uc3Qgc2lsZW50UmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgICBjb25zdCBzZXRMb2FkaW5nID0gdXNlTWVtb2l6ZWRGbigobmV4dCkgPT4ge1xuICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICBzZXRMb2FkaW5nU3RhdGUobmV4dCk7XG4gICAgICAgIChfYiA9IChfYSA9IGNhbGxiYWNrcy5jdXJyZW50KS5vbkxvYWRpbmdDaGFuZ2UpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCBuZXh0KTtcbiAgICB9KTtcbiAgICBjb25zdCBzZXRQYWdlSW5mbyA9IHVzZU1lbW9pemVkRm4oKGluZm8pID0+IHtcbiAgICAgICAgc2V0UGFnZUluZm9TdGF0ZSgocHJldikgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgaW5mbyk7XG4gICAgICAgICAgICBpZiAobWVyZ2VkLmN1cnJlbnQgPT09IHByZXYuY3VycmVudCAmJiBtZXJnZWQucGFnZVNpemUgPT09IHByZXYucGFnZVNpemUgJiYgbWVyZ2VkLnRvdGFsID09PSBwcmV2LnRvdGFsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHByZXY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbWVyZ2VkO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgICAvLyBUaGUgc2luZ2xlIG5ldHdvcmsgZW50cnkgcG9pbnQ6IGFib3J0IHRoZSBwcmV2aW91cyByZXF1ZXN0LCB0aGVuIGFwcGx5IGRhdGFcbiAgICAvLyB3aGlsZSBndWFyZGluZyBhZ2FpbnN0IHN0YWxlIC8gYWJvcnRlZCByZXNwb25zZXMuXG4gICAgY29uc3QgcnVuUmVxdWVzdCA9IHVzZU1lbW9pemVkRm4oKG1lcmdlZCwgc3QsIGZ0KSA9PiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mO1xuICAgICAgICBjb25zdCByZXEgPSByZXFSZWYuY3VycmVudDtcbiAgICAgICAgaWYgKCFyZXEpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIC8vIEEgcG9sbGluZyByZWZldGNoIHJlZnJlc2hlcyBzaWxlbnRseSDigJQgbm8gbG9hZGluZyBvdmVybGF5IGZsYXNoLlxuICAgICAgICBjb25zdCBzaWxlbnQgPSBzaWxlbnRSZWYuY3VycmVudDtcbiAgICAgICAgc2lsZW50UmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgKF9hID0gYWJvcnRSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmFib3J0KCk7XG4gICAgICAgIGNvbnN0IGFib3J0ID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgICAgICBhYm9ydFJlZi5jdXJyZW50ID0gYWJvcnQ7XG4gICAgICAgIGNvbnN0IHJlcXVlc3RJZCA9ICsrcmVxdWVzdElkUmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmICghc2lsZW50KVxuICAgICAgICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHJlcShtZXJnZWQsIHN0LCBmdCwgeyBzaWduYWw6IGFib3J0LnNpZ25hbCB9KTtcbiAgICAgICAgICAgIGlmIChhYm9ydC5zaWduYWwuYWJvcnRlZCB8fCByZXF1ZXN0SWQgIT09IHJlcXVlc3RJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmIChyZXN1bHQuc3VjY2VzcyA9PT0gZmFsc2UpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgcmF3ID0gKF9iID0gcmVzdWx0LmRhdGEpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFtdO1xuICAgICAgICAgICAgY29uc3QgbmV4dCA9IGNhbGxiYWNrcy5jdXJyZW50LnBvc3REYXRhID8gY2FsbGJhY2tzLmN1cnJlbnQucG9zdERhdGEocmF3KSA6IHJhdztcbiAgICAgICAgICAgIHNldERhdGFTb3VyY2UobmV4dCk7XG4gICAgICAgICAgICBzZXRQYWdlSW5mb1N0YXRlKChwcmV2KSA9PiB7IHZhciBfYTsgcmV0dXJuIChPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHByZXYpLCB7IHRvdGFsOiAoX2EgPSByZXN1bHQudG90YWwpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IG5leHQubGVuZ3RoIH0pKTsgfSk7XG4gICAgICAgICAgICAoX2QgPSAoX2MgPSBjYWxsYmFja3MuY3VycmVudCkub25Mb2FkKSA9PT0gbnVsbCB8fCBfZCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2QuY2FsbChfYywgbmV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBpZiAoYWJvcnQuc2lnbmFsLmFib3J0ZWQgfHwgcmVxdWVzdElkICE9PSByZXF1ZXN0SWRSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAoX2YgPSAoX2UgPSBjYWxsYmFja3MuY3VycmVudCkub25SZXF1ZXN0RXJyb3IpID09PSBudWxsIHx8IF9mID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZi5jYWxsKF9lLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICBpZiAoIXNpbGVudCAmJiByZXF1ZXN0SWQgPT09IHJlcXVlc3RJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfSkpO1xuICAgIC8vIEJ1aWxkIHRoZSByZXF1ZXN0IHBhcmFtcyBmcm9tIHRoZSBjdXJyZW50IHJlbmRlciBjbG9zdXJlLlxuICAgIGNvbnN0IGJ1aWxkTWVyZ2VkID0gKCkgPT4gKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCAocGFyYW1zICE9PSBudWxsICYmIHBhcmFtcyAhPT0gdm9pZCAwID8gcGFyYW1zIDoge30pKSwgc2VhcmNoUGFyYW1zKSwgKHBhZ2luYXRlZCA/IHsgY3VycmVudDogcGFnZUluZm8uY3VycmVudCwgcGFnZVNpemU6IHBhZ2VJbmZvLnBhZ2VTaXplIH0gOiB7fSkpKTtcbiAgICAvLyBPbmx5IGBwYXJhbXNgIChhIGNvbnN1bWVyLW93bmVkIHByb3AsIG9mdGVuIGFuIGlubGluZSBvYmplY3QpIG5lZWRzIHZhbHVlXG4gICAgLy8gY29tcGFyaXNvbjsgdGhlIHJlc3QgYXJlIHN0YWJsZSBpbnRlcm5hbCBzdGF0ZSBhbmQgY29tcGFyZSBieSByZWZlcmVuY2UuXG4gICAgY29uc3QgcGFyYW1zS2V5ID0gSlNPTi5zdHJpbmdpZnkocGFyYW1zICE9PSBudWxsICYmIHBhcmFtcyAhPT0gdm9pZCAwID8gcGFyYW1zIDogbnVsbCk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKG1hbnVhbCkge1xuICAgICAgICAgICAgcmVsb2FkU2lnbmFsLnNldHRsZSgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIG1hbnVhbFJlcXVlc3Q6IHN3YWxsb3cgb25seSB0aGUgZmlyc3QgKG1vdW50KSB0cmlnZ2VyLlxuICAgICAgICBpZiAoc2tpcEZpcnN0UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHNraXBGaXJzdFJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgICAgICBwcmV2UGFyYW1zUmVmLmN1cnJlbnQgPSBwYXJhbXNLZXk7XG4gICAgICAgICAgICByZWxvYWRTaWduYWwuc2V0dGxlKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgLy8gQSBgcGFyYW1zYCBjaGFuZ2UgcmVzZXRzIHRvIHBhZ2UgMSBmaXJzdDsgdGhlIHBhZ2UgY2hhbmdlIHJlLXJ1bnMgdGhpc1xuICAgICAgICAvLyBlZmZlY3QsIHdoZXJlIHRoZSBhY3R1YWwgZmV0Y2ggaGFwcGVucyAoc28gaXQgbmV2ZXIgZG91YmxlLWZldGNoZXMpLlxuICAgICAgICBpZiAocHJldlBhcmFtc1JlZi5jdXJyZW50ICE9PSBwYXJhbXNLZXkgJiYgcGFnZUluZm8uY3VycmVudCAhPT0gZGVmYXVsdEN1cnJlbnQpIHtcbiAgICAgICAgICAgIHByZXZQYXJhbXNSZWYuY3VycmVudCA9IHBhcmFtc0tleTtcbiAgICAgICAgICAgIHNldFBhZ2VJbmZvKHsgY3VycmVudDogZGVmYXVsdEN1cnJlbnQgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcHJldlBhcmFtc1JlZi5jdXJyZW50ID0gcGFyYW1zS2V5O1xuICAgICAgICBjb25zdCBmaXJlID0gKCkgPT4gcnVuUmVxdWVzdChidWlsZE1lcmdlZCgpLCBzb3J0LCBmaWx0ZXIpLmZpbmFsbHkocmVsb2FkU2lnbmFsLnNldHRsZSk7XG4gICAgICAgIGlmIChkZWJvdW5jZVRpbWUgJiYgZGVib3VuY2VUaW1lID4gMCkge1xuICAgICAgICAgICAgaWYgKGRlYm91bmNlVGltZXJSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQoZGVib3VuY2VUaW1lclJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIGRlYm91bmNlVGltZXJSZWYuY3VycmVudCA9IHNldFRpbWVvdXQoZmlyZSwgZGVib3VuY2VUaW1lKTtcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGRlYm91bmNlVGltZXJSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXJSZWYuY3VycmVudCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHZvaWQgZmlyZSgpO1xuICAgIH0sIFtwYXJhbXNLZXksIHNlYXJjaFBhcmFtcywgc29ydCwgZmlsdGVyLCBwYWdlSW5mby5jdXJyZW50LCBwYWdlSW5mby5wYWdlU2l6ZSwgcmVsb2FkU2lnbmFsLnRva2VuLCBtYW51YWxdKTtcbiAgICBjb25zdCByZWxvYWQgPSB1c2VNZW1vaXplZEZuKCgpID0+IChtYW51YWwgPyBQcm9taXNlLnJlc29sdmUoKSA6IHJlbG9hZFNpZ25hbC5yZXF1ZXN0KCkpKTtcbiAgICBjb25zdCByZXNldCA9IHVzZU1lbW9pemVkRm4oKCkgPT4ge1xuICAgICAgICBzZXRQYWdlSW5mb1N0YXRlKChwcmV2KSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgeyBjdXJyZW50OiBkZWZhdWx0Q3VycmVudCwgcGFnZVNpemU6IGRlZmF1bHRQYWdlU2l6ZSB9KSkpO1xuICAgIH0pO1xuICAgIC8vIFBvbGxpbmc6IHJlLXRyaWdnZXIgb24gYW4gaW50ZXJ2YWwsIHNraXBwaW5nIHRpY2tzIHdoaWxlIGEgcmVxdWVzdCBpcyBpbiBmbGlnaHQuXG4gICAgY29uc3QgcG9sbGluZ01zID0gdHlwZW9mIHBvbGxpbmcgPT09ICdmdW5jdGlvbicgPyBwb2xsaW5nKGRhdGFTb3VyY2UpIDogcG9sbGluZztcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAobWFudWFsIHx8ICFwb2xsaW5nTXMgfHwgcG9sbGluZ01zIDw9IDApXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IGlkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGxvYWRpbmdSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBzaWxlbnRSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgICAgICB2b2lkIHJlbG9hZFNpZ25hbC5yZXF1ZXN0KCk7XG4gICAgICAgIH0sIHBvbGxpbmdNcyk7XG4gICAgICAgIHJldHVybiAoKSA9PiBjbGVhckludGVydmFsKGlkKTtcbiAgICB9LCBbcG9sbGluZ01zLCBtYW51YWxdKTtcbiAgICAvLyBBYm9ydCBhbnkgaW4tZmxpZ2h0IHJlcXVlc3Qgb24gdW5tb3VudC5cbiAgICB1c2VFZmZlY3QoKCkgPT4gKCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBhYm9ydFJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuYWJvcnQoKTsgfSwgW10pO1xuICAgIHJldHVybiB7IGRhdGFTb3VyY2UsIGxvYWRpbmcsIHBhZ2VJbmZvLCBzZXRQYWdlSW5mbywgcmVsb2FkLCByZXNldCB9O1xufSIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
272
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvVGFibGUvdXNlRmV0Y2hEYXRhLmpzIiwiY29tcG9uZW50cy9zcmMvY29tcG9uZW50cy9Qcm9UYWJsZS91c2VGZXRjaERhdGEudHMiXSwibmFtZXMiOlsiZSIsInQiLCJyIiwiU3ltYm9sIiwibiIsIml0ZXJhdG9yIiwibyIsInRvU3RyaW5nVGFnIiwiaSIsImMiLCJwcm90b3R5cGUiLCJHZW5lcmF0b3IiLCJ1IiwiT2JqZWN0IiwiY3JlYXRlIiwiX3JlZ2VuZXJhdG9yRGVmaW5lMiIsImYiLCJwIiwieSIsIkciLCJ2IiwiYSIsImQiLCJiaW5kIiwibGVuZ3RoIiwibCIsIlR5cGVFcnJvciIsImNhbGwiLCJkb25lIiwidmFsdWUiLCJHZW5lcmF0b3JGdW5jdGlvbiIsIkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlIiwiZ2V0UHJvdG90eXBlT2YiLCJzZXRQcm90b3R5cGVPZiIsIl9fcHJvdG9fXyIsImRpc3BsYXlOYW1lIiwiX3JlZ2VuZXJhdG9yIiwidyIsIm0iLCJkZWZpbmVQcm9wZXJ0eSIsIl9yZWdlbmVyYXRvckRlZmluZSIsIl9pbnZva2UiLCJlbnVtZXJhYmxlIiwiY29uZmlndXJhYmxlIiwid3JpdGFibGUiLCJfX2F3YWl0ZXIiLCJ0aGlzQXJnIiwiX2FyZ3VtZW50cyIsIlAiLCJnZW5lcmF0b3IiLCJhZG9wdCIsInJlc29sdmUiLCJQcm9taXNlIiwicmVqZWN0IiwiZnVsZmlsbGVkIiwic3RlcCIsIm5leHQiLCJyZWplY3RlZCIsInJlc3VsdCIsInRoZW4iLCJhcHBseSIsInVzZUVmZmVjdCIsInVzZVJlZiIsInVzZUxhdGVzdCIsInVzZU1lbW9pemVkRm4iLCJ1c2VTYWZlU3RhdGUiLCJ1c2VBd2FpdGFibGVSZWxvYWQiLCJ1c2VGZXRjaERhdGEiLCJvcHRpb25zIiwiX3RoaXMiLCJyZXF1ZXN0IiwibWFudWFsIiwibWFudWFsUmVxdWVzdCIsImRlYm91bmNlVGltZSIsInBvc3REYXRhIiwicG9sbGluZyIsInBhcmFtcyIsImRlZmF1bHREYXRhIiwicGFnaW5hdGVkIiwiZGVmYXVsdEN1cnJlbnQiLCJkZWZhdWx0UGFnZVNpemUiLCJzZWFyY2hQYXJhbXMiLCJzb3J0IiwiZmlsdGVyIiwib25Mb2FkIiwib25Mb2FkaW5nQ2hhbmdlIiwib25SZXF1ZXN0RXJyb3IiLCJfdXNlU2FmZVN0YXRlIiwiX3VzZVNhZmVTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsImRhdGFTb3VyY2UiLCJzZXREYXRhU291cmNlIiwiX3VzZVNhZmVTdGF0ZTMiLCJfdXNlU2FmZVN0YXRlNCIsImxvYWRpbmciLCJzZXRMb2FkaW5nU3RhdGUiLCJfdXNlU2FmZVN0YXRlNSIsImN1cnJlbnQiLCJwYWdlU2l6ZSIsInRvdGFsIiwiX3VzZVNhZmVTdGF0ZTYiLCJwYWdlSW5mbyIsInNldFBhZ2VJbmZvU3RhdGUiLCJyZWxvYWRTaWduYWwiLCJyZXFSZWYiLCJjYWxsYmFja3MiLCJsb2FkaW5nUmVmIiwicmVxdWVzdElkUmVmIiwiYWJvcnRSZWYiLCJza2lwRmlyc3RSZWYiLCJwcmV2UGFyYW1zUmVmIiwidW5kZWZpbmVkIiwiZGVib3VuY2VUaW1lclJlZiIsInNpbGVudFJlZiIsInNldExvYWRpbmciLCJfYSIsIl9iIiwic2V0UGFnZUluZm8iLCJpbmZvIiwicHJldiIsIm1lcmdlZCIsImFzc2lnbiIsInJ1blJlcXVlc3QiLCJzdCIsImZ0IiwiX2NhbGxlZSIsIl9jIiwiX2QiLCJfZSIsIl9mIiwicmVxIiwic2lsZW50IiwiYWJvcnQiLCJyZXF1ZXN0SWQiLCJyYXciLCJfdCIsIl9jb250ZXh0IiwiQWJvcnRDb250cm9sbGVyIiwic2lnbmFsIiwiYWJvcnRlZCIsInN1Y2Nlc3MiLCJkYXRhIiwiYnVpbGRNZXJnZWQiLCJwYXJhbXNLZXkiLCJKU09OIiwic3RyaW5naWZ5Iiwic2V0dGxlIiwiZmlyZSIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJ0b2tlbiIsInJlbG9hZCIsInJlc2V0IiwicG9sbGluZ01zIiwiaWQiLCJzZXRJbnRlcnZhbCIsImNsZWFySW50ZXJ2YWwiXSwibWFwcGluZ3MiOiI7MEJBQ0EsdUtBQUFBLENBQUEsRUFBQUMsQ0FBQSxFQUFBQyxDQUFBLHdCQUFBQyxNQUFBLEdBQUFBLE1BQUEsT0FBQUMsQ0FBQSxHQUFBRixDQUFBLENBQUFHLFFBQUEsa0JBQUFDLENBQUEsR0FBQUosQ0FBQSxDQUFBSyxXQUFBLDhCQUFBQyxFQUFBTixDQUFBLEVBQUFFLENBQUEsRUFBQUUsQ0FBQSxFQUFBRSxDQUFBLFFBQUFDLENBQUEsR0FBQUwsQ0FBQSxJQUFBQSxDQUFBLENBQUFNLFNBQUEsWUFBQUMsU0FBQSxHQUFBUCxDQUFBLEdBQUFPLFNBQUEsRUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLE1BQUEsQ0FBQUwsQ0FBQSxDQUFBQyxTQUFBLFVBQUFLLG1CQUFBLENBQUFILENBQUEsdUJBQUFWLENBQUEsRUFBQUUsQ0FBQSxFQUFBRSxDQUFBLFFBQUFFLENBQUEsRUFBQUMsQ0FBQSxFQUFBRyxDQUFBLEVBQUFJLENBQUEsTUFBQUMsQ0FBQSxHQUFBWCxDQUFBLFFBQUFZLENBQUEsT0FBQUMsQ0FBQSxLQUFBRixDQUFBLEtBQUFiLENBQUEsS0FBQWdCLENBQUEsRUFBQXBCLENBQUEsRUFBQXFCLENBQUEsRUFBQUMsQ0FBQSxFQUFBTixDQUFBLEVBQUFNLENBQUEsQ0FBQUMsSUFBQSxDQUFBdkIsQ0FBQSxNQUFBc0IsQ0FBQSxXQUFBQSxFQUFBckIsQ0FBQSxFQUFBQyxDQUFBLFdBQUFNLENBQUEsR0FBQVAsQ0FBQSxFQUFBUSxDQUFBLE1BQUFHLENBQUEsR0FBQVosQ0FBQSxFQUFBbUIsQ0FBQSxDQUFBZixDQUFBLEdBQUFGLENBQUEsRUFBQW1CLENBQUEsZ0JBQUFDLEVBQUFwQixDQUFBLEVBQUFFLENBQUEsU0FBQUssQ0FBQSxHQUFBUCxDQUFBLEVBQUFVLENBQUEsR0FBQVIsQ0FBQSxFQUFBSCxDQUFBLE9BQUFpQixDQUFBLElBQUFGLENBQUEsS0FBQVYsQ0FBQSxJQUFBTCxDQUFBLEdBQUFnQixDQUFBLENBQUFPLE1BQUEsRUFBQXZCLENBQUEsVUFBQUssQ0FBQSxFQUFBRSxDQUFBLEdBQUFTLENBQUEsQ0FBQWhCLENBQUEsR0FBQXFCLENBQUEsR0FBQUgsQ0FBQSxDQUFBRixDQUFBLEVBQUFRLENBQUEsR0FBQWpCLENBQUEsS0FBQU4sQ0FBQSxRQUFBSSxDQUFBLEdBQUFtQixDQUFBLEtBQUFyQixDQUFBLE1BQUFRLENBQUEsR0FBQUosQ0FBQSxFQUFBQyxDQUFBLEdBQUFELENBQUEsWUFBQUMsQ0FBQSxXQUFBRCxDQUFBLE1BQUFBLENBQUEsTUFBQVIsQ0FBQSxJQUFBUSxDQUFBLE9BQUFjLENBQUEsTUFBQWhCLENBQUEsR0FBQUosQ0FBQSxRQUFBb0IsQ0FBQSxHQUFBZCxDQUFBLFFBQUFDLENBQUEsTUFBQVUsQ0FBQSxDQUFBQyxDQUFBLEdBQUFoQixDQUFBLEVBQUFlLENBQUEsQ0FBQWYsQ0FBQSxHQUFBSSxDQUFBLE9BQUFjLENBQUEsR0FBQUcsQ0FBQSxLQUFBbkIsQ0FBQSxHQUFBSixDQUFBLFFBQUFNLENBQUEsTUFBQUosQ0FBQSxJQUFBQSxDQUFBLEdBQUFxQixDQUFBLE1BQUFqQixDQUFBLE1BQUFOLENBQUEsRUFBQU0sQ0FBQSxNQUFBSixDQUFBLEVBQUFlLENBQUEsQ0FBQWYsQ0FBQSxHQUFBcUIsQ0FBQSxFQUFBaEIsQ0FBQSxjQUFBSCxDQUFBLElBQUFKLENBQUEsYUFBQW1CLENBQUEsUUFBQUgsQ0FBQSxPQUFBZCxDQUFBLHFCQUFBRSxDQUFBLEVBQUFXLENBQUEsRUFBQVEsQ0FBQSxRQUFBVCxDQUFBLFlBQUFVLFNBQUEsdUNBQUFSLENBQUEsVUFBQUQsQ0FBQSxJQUFBSyxDQUFBLENBQUFMLENBQUEsRUFBQVEsQ0FBQSxHQUFBaEIsQ0FBQSxHQUFBUSxDQUFBLEVBQUFMLENBQUEsR0FBQWEsQ0FBQSxHQUFBeEIsQ0FBQSxHQUFBUSxDQUFBLE9BQUFULENBQUEsR0FBQVksQ0FBQSxNQUFBTSxDQUFBLEtBQUFWLENBQUEsS0FBQUMsQ0FBQSxHQUFBQSxDQUFBLFFBQUFBLENBQUEsU0FBQVUsQ0FBQSxDQUFBZixDQUFBLFFBQUFrQixDQUFBLENBQUFiLENBQUEsRUFBQUcsQ0FBQSxLQUFBTyxDQUFBLENBQUFmLENBQUEsR0FBQVEsQ0FBQSxHQUFBTyxDQUFBLENBQUFDLENBQUEsR0FBQVIsQ0FBQSxhQUFBSSxDQUFBLE1BQUFSLENBQUEsUUFBQUMsQ0FBQSxLQUFBSCxDQUFBLFlBQUFMLENBQUEsR0FBQU8sQ0FBQSxDQUFBRixDQUFBLFdBQUFMLENBQUEsR0FBQUEsQ0FBQSxDQUFBMEIsSUFBQSxDQUFBbkIsQ0FBQSxFQUFBSSxDQUFBLFVBQUFjLFNBQUEsMkNBQUF6QixDQUFBLENBQUEyQixJQUFBLFNBQUEzQixDQUFBLEVBQUFXLENBQUEsR0FBQVgsQ0FBQSxDQUFBNEIsS0FBQSxFQUFBcEIsQ0FBQSxTQUFBQSxDQUFBLG9CQUFBQSxDQUFBLEtBQUFSLENBQUEsR0FBQU8sQ0FBQSxlQUFBUCxDQUFBLENBQUEwQixJQUFBLENBQUFuQixDQUFBLEdBQUFDLENBQUEsU0FBQUcsQ0FBQSxHQUFBYyxTQUFBLHVDQUFBcEIsQ0FBQSxnQkFBQUcsQ0FBQSxPQUFBRCxDQUFBLEdBQUFSLENBQUEsY0FBQUMsQ0FBQSxJQUFBaUIsQ0FBQSxHQUFBQyxDQUFBLENBQUFmLENBQUEsUUFBQVEsQ0FBQSxHQUFBVixDQUFBLENBQUF5QixJQUFBLENBQUF2QixDQUFBLEVBQUFlLENBQUEsT0FBQUUsQ0FBQSxrQkFBQXBCLENBQUEsSUFBQU8sQ0FBQSxHQUFBUixDQUFBLEVBQUFTLENBQUEsTUFBQUcsQ0FBQSxHQUFBWCxDQUFBLGNBQUFlLENBQUEsbUJBQUFhLEtBQUEsRUFBQTVCLENBQUEsRUFBQTJCLElBQUEsRUFBQVYsQ0FBQSxTQUFBaEIsQ0FBQSxFQUFBSSxDQUFBLEVBQUFFLENBQUEsUUFBQUksQ0FBQSxRQUFBUyxDQUFBLGdCQUFBVixVQUFBLGNBQUFtQixrQkFBQSxjQUFBQywyQkFBQSxLQUFBOUIsQ0FBQSxHQUFBWSxNQUFBLENBQUFtQixjQUFBLE1BQUF2QixDQUFBLE1BQUFMLENBQUEsSUFBQUgsQ0FBQSxDQUFBQSxDQUFBLElBQUFHLENBQUEsU0FBQVcsbUJBQUEsQ0FBQWQsQ0FBQSxPQUFBRyxDQUFBLGlDQUFBSCxDQUFBLEdBQUFXLENBQUEsR0FBQW1CLDBCQUFBLENBQUFyQixTQUFBLEdBQUFDLFNBQUEsQ0FBQUQsU0FBQSxHQUFBRyxNQUFBLENBQUFDLE1BQUEsQ0FBQUwsQ0FBQSxZQUFBTyxFQUFBaEIsQ0FBQSxXQUFBYSxNQUFBLENBQUFvQixjQUFBLEdBQUFwQixNQUFBLENBQUFvQixjQUFBLENBQUFqQyxDQUFBLEVBQUErQiwwQkFBQSxLQUFBL0IsQ0FBQSxDQUFBa0MsU0FBQSxHQUFBSCwwQkFBQSxFQUFBaEIsbUJBQUEsQ0FBQWYsQ0FBQSxFQUFBTSxDQUFBLHlCQUFBTixDQUFBLENBQUFVLFNBQUEsR0FBQUcsTUFBQSxDQUFBQyxNQUFBLENBQUFGLENBQUEsR0FBQVosQ0FBQSxXQUFBOEIsaUJBQUEsQ0FBQXBCLFNBQUEsR0FBQXFCLDBCQUFBLEVBQUFoQixtQkFBQSxDQUFBSCxDQUFBLGlCQUFBbUIsMEJBQUEsR0FBQWhCLG1CQUFBLENBQUFnQiwwQkFBQSxpQkFBQUQsaUJBQUEsR0FBQUEsaUJBQUEsQ0FBQUssV0FBQSx3QkFBQXBCLG1CQUFBLENBQUFnQiwwQkFBQSxFQUFBekIsQ0FBQSx3QkFBQVMsbUJBQUEsQ0FBQUgsQ0FBQSxHQUFBRyxtQkFBQSxDQUFBSCxDQUFBLEVBQUFOLENBQUEsZ0JBQUFTLG1CQUFBLENBQUFILENBQUEsRUFBQVIsQ0FBQSxpQ0FBQVcsbUJBQUEsQ0FBQUgsQ0FBQSw4REFBQXdCLFlBQUEsWUFBQUEsYUFBQSxhQUFBQyxDQUFBLEVBQUE3QixDQUFBLEVBQUE4QixDQUFBLEVBQUF0QixDQUFBO0FBQUEsU0FBQUQsb0JBQUFmLENBQUEsRUFBQUUsQ0FBQSxFQUFBRSxDQUFBLEVBQUFILENBQUEsUUFBQU8sQ0FBQSxHQUFBSyxNQUFBLENBQUEwQixjQUFBLFFBQUEvQixDQUFBLHVCQUFBUixDQUFBLElBQUFRLENBQUEsUUFBQU8sbUJBQUEsWUFBQXlCLG1CQUFBeEMsQ0FBQSxFQUFBRSxDQUFBLEVBQUFFLENBQUEsRUFBQUgsQ0FBQSxhQUFBSyxFQUFBSixDQUFBLEVBQUFFLENBQUEsSUFBQVcsbUJBQUEsQ0FBQWYsQ0FBQSxFQUFBRSxDQUFBLFlBQUFGLENBQUEsZ0JBQUF5QyxPQUFBLENBQUF2QyxDQUFBLEVBQUFFLENBQUEsRUFBQUosQ0FBQSxTQUFBRSxDQUFBLEdBQUFNLENBQUEsR0FBQUEsQ0FBQSxDQUFBUixDQUFBLEVBQUFFLENBQUEsSUFBQTJCLEtBQUEsRUFBQXpCLENBQUEsRUFBQXNDLFVBQUEsR0FBQXpDLENBQUEsRUFBQTBDLFlBQUEsR0FBQTFDLENBQUEsRUFBQTJDLFFBQUEsR0FBQTNDLENBQUEsTUFBQUQsQ0FBQSxDQUFBRSxDQUFBLElBQUFFLENBQUEsSUFBQUUsQ0FBQSxhQUFBQSxDQUFBLGNBQUFBLENBQUEsbUJBQUFTLG1CQUFBLENBQUFmLENBQUEsRUFBQUUsQ0FBQSxFQUFBRSxDQUFBLEVBQUFILENBQUE7QUFEQSxJQUFJNEMsU0FBUyxHQUFJLElBQUksSUFBSSxJQUFJLENBQUNBLFNBQVMsSUFBSyxVQUFVQyxPQUFPLEVBQUVDLFVBQVUsRUFBRUMsQ0FBQyxFQUFFQyxTQUFTLEVBQUU7RUFDckYsU0FBU0MsS0FBS0EsQ0FBQ3JCLEtBQUssRUFBRTtJQUFFLE9BQU9BLEtBQUssWUFBWW1CLENBQUMsR0FBR25CLEtBQUssR0FBRyxJQUFJbUIsQ0FBQyxDQUFDLFVBQVVHLE9BQU8sRUFBRTtNQUFFQSxPQUFPLENBQUN0QixLQUFLLENBQUM7SUFBRSxDQUFDLENBQUM7RUFBRTtFQUMzRyxPQUFPLEtBQUttQixDQUFDLEtBQUtBLENBQUMsR0FBR0ksT0FBTyxDQUFDLEVBQUUsVUFBVUQsT0FBTyxFQUFFRSxNQUFNLEVBQUU7SUFDdkQsU0FBU0MsU0FBU0EsQ0FBQ3pCLEtBQUssRUFBRTtNQUFFLElBQUk7UUFBRTBCLElBQUksQ0FBQ04sU0FBUyxDQUFDTyxJQUFJLENBQUMzQixLQUFLLENBQUMsQ0FBQztNQUFFLENBQUMsQ0FBQyxPQUFPN0IsQ0FBQyxFQUFFO1FBQUVxRCxNQUFNLENBQUNyRCxDQUFDLENBQUM7TUFBRTtJQUFFO0lBQzFGLFNBQVN5RCxRQUFRQSxDQUFDNUIsS0FBSyxFQUFFO01BQUUsSUFBSTtRQUFFMEIsSUFBSSxDQUFDTixTQUFTLENBQUMsT0FBTyxDQUFDLENBQUNwQixLQUFLLENBQUMsQ0FBQztNQUFFLENBQUMsQ0FBQyxPQUFPN0IsQ0FBQyxFQUFFO1FBQUVxRCxNQUFNLENBQUNyRCxDQUFDLENBQUM7TUFBRTtJQUFFO0lBQzdGLFNBQVN1RCxJQUFJQSxDQUFDRyxNQUFNLEVBQUU7TUFBRUEsTUFBTSxDQUFDOUIsSUFBSSxHQUFHdUIsT0FBTyxDQUFDTyxNQUFNLENBQUM3QixLQUFLLENBQUMsR0FBR3FCLEtBQUssQ0FBQ1EsTUFBTSxDQUFDN0IsS0FBSyxDQUFDLENBQUM4QixJQUFJLENBQUNMLFNBQVMsRUFBRUcsUUFBUSxDQUFDO0lBQUU7SUFDN0dGLElBQUksQ0FBQyxDQUFDTixTQUFTLEdBQUdBLFNBQVMsQ0FBQ1csS0FBSyxDQUFDZCxPQUFPLEVBQUVDLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFBRVMsSUFBSSxDQUFDLENBQUMsQ0FBQztFQUN6RSxDQUFDLENBQUM7QUFDTixDQUFDO0FDUkQsU0FBU0ssU0FBUyxFQUFFQyxNQUFNLFFBQVEsT0FBTztBQUN6QyxPQUFPQyxTQUFTLE1BQU0seUJBQXlCO0FBQy9DLE9BQU9DLGFBQWEsTUFBTSw2QkFBNkI7QUFDdkQsT0FBT0MsWUFBWSxNQUFNLDRCQUE0QjtBQUVyRCxTQUFTQyxrQkFBa0IsUUFBUSwyQkFBMkI7QUE4QzlEO0FEcENBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUNzQ0EsT0FBTSxTQUFVQyxZQUFZQSxDQUMxQkMsT0FBdUMsRUFBQTtFQUFBLElBQUFDLEtBQUE7RUFFdkMsSUFDRUMsT0FBTyxHQWlCTEYsT0FBTyxDQWpCVEUsT0FBTztJQUNQQyxNQUFNLEdBZ0JKSCxPQUFPLENBaEJURyxNQUFNO0lBQ05DLGFBQWEsR0FlWEosT0FBTyxDQWZUSSxhQUFhO0lBQ2JDLFlBQVksR0FjVkwsT0FBTyxDQWRUSyxZQUFZO0lBQ1pDLFFBQVEsR0FhTk4sT0FBTyxDQWJUTSxRQUFRO0lBQ1JDLE9BQU8sR0FZTFAsT0FBTyxDQVpUTyxPQUFPO0lBQ1BDLE1BQU0sR0FXSlIsT0FBTyxDQVhUUSxNQUFNO0lBQ05DLFdBQVcsR0FVVFQsT0FBTyxDQVZUUyxXQUFXO0lBQ1hDLFNBQVMsR0FTUFYsT0FBTyxDQVRUVSxTQUFTO0lBQ1RDLGNBQWMsR0FRWlgsT0FBTyxDQVJUVyxjQUFjO0lBQ2RDLGVBQWUsR0FPYlosT0FBTyxDQVBUWSxlQUFlO0lBQ2ZDLFlBQVksR0FNVmIsT0FBTyxDQU5UYSxZQUFZO0lBQ1pDLElBQUksR0FLRmQsT0FBTyxDQUxUYyxJQUFJO0lBQ0pDLE1BQU0sR0FJSmYsT0FBTyxDQUpUZSxNQUFNO0lBQ05DLE1BQU0sR0FHSmhCLE9BQU8sQ0FIVGdCLE1BQU07SUFDTkMsZUFBZSxHQUViakIsT0FBTyxDQUZUaUIsZUFBZTtJQUNmQyxjQUFjLEdBQ1psQixPQUFPLENBRFRrQixjQUFjO0VBR2hCLElBQUFDLGFBQUEsR0FBb0N0QixZQUFZLENBQU1ZLFdBQVcsS0FBQSxJQUFBLElBQVhBLFdBQVcsS0FBQSxLQUFBLENBQUEsR0FBWEEsV0FBVyxHQUFJLEVBQUUsQ0FBQztJQUFBVyxjQUFBLEdBQUFDLGNBQUEsQ0FBQUYsYUFBQTtJQUFqRUcsVUFBVSxHQUFBRixjQUFBO0lBQUVHLGFBQWEsR0FBQUgsY0FBQTtFQUNoQyxJQUFBSSxjQUFBLEdBQW1DM0IsWUFBWSxDQUFDLEtBQUssQ0FBQztJQUFBNEIsY0FBQSxHQUFBSixjQUFBLENBQUFHLGNBQUE7SUFBL0NFLE9BQU8sR0FBQUQsY0FBQTtJQUFFRSxlQUFlLEdBQUFGLGNBQUE7RUFDL0IsSUFBQUcsY0FBQSxHQUFxQy9CLFlBQVksQ0FBVztNQUMxRGdDLE9BQU8sRUFBRWxCLGNBQWM7TUFDdkJtQixRQUFRLEVBQUVsQixlQUFlO01BQ3pCbUIsS0FBSyxFQUFFO0lEekRQLENDMERELENBQUM7SUFBQUMsY0FBQSxHQUFBWCxjQUFBLENBQUFPLGNBQUE7SUFKS0ssUUFBUSxHQUFBRCxjQUFBO0lBQUVFLGdCQUFnQixHQUFBRixjQUFBO0VBTWpDLElBQU1HLFlBQVksR0FBR3JDLGtCQUFrQixDQUFBLENBQUU7RUFFekMsSUFBTXNDLE1BQU0sR0FBR3pDLFNBQVMsQ0FBQ08sT0FBTyxDQUFDO0VBQ2pDLElBQU1tQyxTQUFTLEdBQUcxQyxTQUFTLENBQUM7SUFBRXFCLE1BQU0sRUFBTkEsTUFBTTtJQUFFQyxlQUFlLEVBQWZBLGVBQWU7SUFBRUMsY0FBYyxFQUFkQSxjQUFjO0lBQUVaLFFBQVEsRUFBUkE7RUFBUSxDQUFFLENBQUM7RUFDbEYsSUFBTWdDLFVBQVUsR0FBRzNDLFNBQVMsQ0FBQytCLE9BQU8sQ0FBQztFQUVyQyxJQUFNYSxZQUFZLEdBQUc3QyxNQUFNLENBQUMsQ0FBQyxDQUFDO0VBQzlCLElBQU04QyxRQUFRLEdBQUc5QyxNQUFNLENBQXlCLElBQUksQ0FBQztFQUNyRCxJQUFNK0MsWUFBWSxHQUFHL0MsTUFBTSxDQUFVVSxhQUFhLEtBQUssSUFBSSxDQUFDO0VBQzVELElBQU1zQyxhQUFhLEdBQUdoRCxNQUFNLENBQXFCaUQsU0FBUyxDQUFDO0VBQzNELElBQU1DLGdCQUFnQixHQUFHbEQsTUFBTSxDQUE0Q2lELFNBQVMsQ0FBQztFQUNyRjtFQUNBO0VBQ0EsSUFBTUUsU0FBUyxHQUFHbkQsTUFBTSxDQUFDLEtBQUssQ0FBQztFQUUvQixJQUFNb0QsVUFBVSxHQUFHbEQsYUFBYSxDQUFDLFVBQUNSLElBQWEsRUFBSTtJRDdEN0MsSUFBSTJELEVBQUUsRUFBRUMsRUFBRTtJQzhEZHJCLGVBQWUsQ0FBQ3ZDLElBQUksQ0FBQztJQUNyQixDQUFBNEQsRUFBQSxHQUFBLENBQUFELEVBQUEsR0FBQVYsU0FBUyxDQUFDUixPQUFPLEVBQUNaLGVBQWUsTUFBQSxJQUFBLElBQUErQixFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsQ0FBQXpGLElBQUEsQ0FBQXdGLEVBQUEsRUFBRzNELElBQUksQ0FBQztFQUMzQyxDQUFDLENBQUM7RUFFRixJQUFNNkQsV0FBVyxHQUFHckQsYUFBYSxDQUFDLFVBQUNzRCxJQUF1QixFQUFJO0lBQzVEaEIsZ0JBQWdCLENBQUMsVUFBQ2lCLElBQUksRUFBSTtNQUN4QixJQUFNQyxNQUFNLEdBQUEzRyxNQUFBLENBQUE0RyxNQUFBLENBQUE1RyxNQUFBLENBQUE0RyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQVFGLElBQUksQ0FBQSxFQUFLRCxJQUFJLENBQUU7TUFDbkMsSUFBSUUsTUFBTSxDQUFDdkIsT0FBTyxLQUFLc0IsSUFBSSxDQUFDdEIsT0FBTyxJQUFJdUIsTUFBTSxDQUFDdEIsUUFBUSxLQUFLcUIsSUFBSSxDQUFDckIsUUFBUSxJQUFJc0IsTUFBTSxDQUFDckIsS0FBSyxLQUFLb0IsSUFBSSxDQUFDcEIsS0FBSyxFQUFFO1FBQ3ZHLE9BQU9vQixJQUFJO01BQ2I7TUFDQSxPQUFPQyxNQUFNO0lBQ2YsQ0FBQyxDQUFDO0VBQ0osQ0FBQyxDQUFDO0VBRUY7RUFDQTtFQUNBLElBQU1FLFVBQVUsR0FBRzFELGFBQWEsQ0FDOUIsVUFBT3dELE1BQTRCLEVBQUVHLEVBQXFCLEVBQUVDLEVBQXVCO0lBQUEsT0FBSS9FLFNBQUEsQ0FBQXdCLEtBQUEsRUFBQSxLQUFBLENBQUEsRUFBQSxLQUFBLENBQUEsZUFBQWpDLFlBQUEsR0FBQUUsQ0FBQSxDQUFBLFNBQUF1RixRQUFBO01BQUEsSUFBQVYsRUFBQSxFQUFBQyxFQUFBLEVBQUFVLEVBQUEsRUFBQUMsRUFBQSxFQUFBQyxFQUFBLEVBQUFDLEVBQUEsRUFBQUMsR0FBQSxFQUFBQyxNQUFBLEVBQUFDLEtBQUEsRUFBQUMsU0FBQSxFQUFBM0UsTUFBQSxFQUFBNEUsR0FBQSxFQUFBOUUsSUFBQSxFQUFBK0UsRUFBQTtNQUFBLE9BQUFuRyxZQUFBLEdBQUFDLENBQUEsV0FBQW1HLFFBQUE7UUFBQSxrQkFBQUEsUUFBQSxDQUFBdkgsQ0FBQSxHQUFBdUgsUUFBQSxDQUFBcEksQ0FBQTtVQUFBO1lBQy9FOEgsR0FBRyxHQUFHMUIsTUFBTSxDQUFDUCxPQUFPO1lBQUEsSUFDckJpQyxHQUFHO2NBQUFNLFFBQUEsQ0FBQXBJLENBQUE7Y0FBQTtZQUFBO1lBQUEsT0FBQW9JLFFBQUEsQ0FBQW5ILENBQUE7VUFBQTtZQUVSO1lBQ004RyxNQUFNLEdBQUdsQixTQUFTLENBQUNoQixPQUFPO1lBQ2hDZ0IsU0FBUyxDQUFDaEIsT0FBTyxHQUFHLEtBQUs7WUFFekIsQ0FBQWtCLEVBQUEsR0FBQVAsUUFBUSxDQUFDWCxPQUFPLE1BQUEsSUFBQSxJQUFBa0IsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLENBQUVpQixLQUFLLENBQUEsQ0FBRTtZQUNuQkEsS0FBSyxHQUFHLElBQUlLLGVBQWUsQ0FBQSxDQUFFO1lBQ25DN0IsUUFBUSxDQUFDWCxPQUFPLEdBQUdtQyxLQUFLO1lBQ2xCQyxTQUFTLEdBQUcsRUFBRTFCLFlBQVksQ0FBQ1YsT0FBTztZQUV4QyxJQUFJLENBQUNrQyxNQUFNLEVBQUVqQixVQUFVLENBQUMsSUFBSSxDQUFDO1lBQUNzQixRQUFBLENBQUF2SCxDQUFBO1lBQUF1SCxRQUFBLENBQUFwSSxDQUFBO1lBRWIsT0FBTThILEdBQUcsQ0FBQ1YsTUFBTSxFQUFFRyxFQUFFLEVBQUVDLEVBQUUsRUFBRTtjQUFFYyxNQUFNLEVBQUVOLEtBQUssQ0FBQ007WUFBTSxDQUFFLENBQUM7VUFBQTtZQUE1RGhGLE1BQU0sR0FBQThFLFFBQUEsQ0FBQXBILENBQUE7WUFBQSxNQUNSZ0gsS0FBSyxDQUFDTSxNQUFNLENBQUNDLE9BQU8sSUFBSU4sU0FBUyxLQUFLMUIsWUFBWSxDQUFDVixPQUFPO2NBQUF1QyxRQUFBLENBQUFwSSxDQUFBO2NBQUE7WUFBQTtZQUFBLE9BQUFvSSxRQUFBLENBQUFuSCxDQUFBO1VBQUE7WUFBQSxNQUMxRHFDLE1BQU0sQ0FBQ2tGLE9BQU8sS0FBSyxLQUFLO2NBQUFKLFFBQUEsQ0FBQXBJLENBQUE7Y0FBQTtZQUFBO1lBQUEsT0FBQW9JLFFBQUEsQ0FBQW5ILENBQUE7VUFBQTtZQUV0QmlILEdBQUcsR0FBRyxDQUFBbEIsRUFBQSxHQUFBMUQsTUFBTSxDQUFDbUYsSUFBSSxNQUFBLElBQUEsSUFBQXpCLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxHQUFJLEVBQUU7WUFDdkI1RCxJQUFJLEdBQUdpRCxTQUFTLENBQUNSLE9BQU8sQ0FBQ3ZCLFFBQVEsR0FBRytCLFNBQVMsQ0FBQ1IsT0FBTyxDQUFDdkIsUUFBUSxDQUFDNEQsR0FBRyxDQUFDLEdBQUdBLEdBQUc7WUFDL0UzQyxhQUFhLENBQUNuQyxJQUFJLENBQUM7WUFDbkI4QyxnQkFBZ0IsQ0FBQyxVQUFDaUIsSUFBSSxFQUFJO2NBQUEsSUFBQUosRUFBQTtjQUFDLE9BQUF0RyxNQUFBLENBQUE0RyxNQUFBLENBQUE1RyxNQUFBLENBQUE0RyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQU1GLElBQUksQ0FBQSxFQUFBO2dCQUFFcEIsS0FBSyxFQUFFLENBQUFnQixFQUFBLEdBQUF6RCxNQUFNLENBQUN5QyxLQUFLLE1BQUEsSUFBQSxJQUFBZ0IsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLEdBQUkzRCxJQUFJLENBQUNoQztjQUFNLENBQUEsQ0FBQTtZQUFHLENBQUEsQ0FBQztZQUM3RSxDQUFBdUcsRUFBQSxHQUFBLENBQUFELEVBQUEsR0FBQXJCLFNBQVMsQ0FBQ1IsT0FBTyxFQUFDYixNQUFNLE1BQUEsSUFBQSxJQUFBMkMsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLENBQUFwRyxJQUFBLENBQUFtRyxFQUFBLEVBQUd0RSxJQUFJLENBQUM7WUFBQ2dGLFFBQUEsQ0FBQXBJLENBQUE7WUFBQTtVQUFBO1lBQUFvSSxRQUFBLENBQUF2SCxDQUFBO1lBQUFzSCxFQUFBLEdBQUFDLFFBQUEsQ0FBQXBILENBQUE7WUFBQSxNQUU3QmdILEtBQUssQ0FBQ00sTUFBTSxDQUFDQyxPQUFPLElBQUlOLFNBQVMsS0FBSzFCLFlBQVksQ0FBQ1YsT0FBTztjQUFBdUMsUUFBQSxDQUFBcEksQ0FBQTtjQUFBO1lBQUE7WUFBQSxPQUFBb0ksUUFBQSxDQUFBbkgsQ0FBQTtVQUFBO1lBQzlELENBQUE0RyxFQUFBLEdBQUEsQ0FBQUQsRUFBQSxHQUFBdkIsU0FBUyxDQUFDUixPQUFPLEVBQUNYLGNBQWMsTUFBQSxJQUFBLElBQUEyQyxFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsQ0FBQXRHLElBQUEsQ0FBQXFHLEVBQUEsRUFBQU8sRUFBaUIsQ0FBQztVQUFDO1lBQUFDLFFBQUEsQ0FBQXZILENBQUE7WUFFbkQsSUFBSSxDQUFDa0gsTUFBTSxJQUFJRSxTQUFTLEtBQUsxQixZQUFZLENBQUNWLE9BQU8sRUFBRWlCLFVBQVUsQ0FBQyxLQUFLLENBQUM7WUFBQyxPQUFBc0IsUUFBQSxDQUFBeEgsQ0FBQTtVQUFBO1lBQUEsT0FBQXdILFFBQUEsQ0FBQW5ILENBQUE7UUFBQTtNQUFBLEdBQUF3RyxPQUFBO0lBQUEsQ0FFeEUsRUFBQTtFQUFBLEVBQ0Y7RUFFRDtFQUNBLElBQU1pQixXQUFXLEdBQUcsU0FBZEEsV0FBV0EsQ0FBQTtJQUFBLE9BQ2ZqSSxNQUFBLENBQUE0RyxNQUFBLENBQUE1RyxNQUFBLENBQUE0RyxNQUFBLENBQUE1RyxNQUFBLENBQUE0RyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQ003QyxNQUFNLEtBQUEsSUFBQSxJQUFOQSxNQUFNLEtBQUEsS0FBQSxDQUFBLEdBQU5BLE1BQU0sR0FBSSxDQUFBLENBQUcsQ0FBQSxFQUNkSyxZQUFZLENBQUEsRUFDWEgsU0FBUyxHQUFHO01BQUVtQixPQUFPLEVBQUVJLFFBQVEsQ0FBQ0osT0FBTztNQUFFQyxRQUFRLEVBQUVHLFFBQVEsQ0FBQ0g7SUFBUSxDQUFFLEdBQUcsQ0FBQSxDQUFHLENBQUE7RUFBQSxDQUN4RDtFQUU1QjtFQUNBO0VBQ0EsSUFBTTZDLFNBQVMsR0FBR0MsSUFBSSxDQUFDQyxTQUFTLENBQUNyRSxNQUFNLEtBQUEsSUFBQSxJQUFOQSxNQUFNLEtBQUEsS0FBQSxDQUFBLEdBQU5BLE1BQU0sR0FBSSxJQUFJLENBQUM7RUFFaERmLFNBQVMsQ0FBQyxZQUFLO0lBQ2IsSUFBSVUsTUFBTSxFQUFFO01BQ1ZnQyxZQUFZLENBQUMyQyxNQUFNLENBQUEsQ0FBRTtNQUNyQjtJQUNGO0lBRUE7SUFDQSxJQUFJckMsWUFBWSxDQUFDWixPQUFPLEVBQUU7TUFDeEJZLFlBQVksQ0FBQ1osT0FBTyxHQUFHLEtBQUs7TUFDNUJhLGFBQWEsQ0FBQ2IsT0FBTyxHQUFHOEMsU0FBUztNQUNqQ3hDLFlBQVksQ0FBQzJDLE1BQU0sQ0FBQSxDQUFFO01BQ3JCO0lBQ0Y7SUFFQTtJQUNBO0lBQ0EsSUFBSXBDLGFBQWEsQ0FBQ2IsT0FBTyxLQUFLOEMsU0FBUyxJQUFJMUMsUUFBUSxDQUFDSixPQUFPLEtBQUtsQixjQUFjLEVBQUU7TUFDOUUrQixhQUFhLENBQUNiLE9BQU8sR0FBRzhDLFNBQVM7TUFDakMxQixXQUFXLENBQUM7UUFBRXBCLE9BQU8sRUFBRWxCO01BQWMsQ0FBRSxDQUFDO01BQ3hDO0lBQ0Y7SUFDQStCLGFBQWEsQ0FBQ2IsT0FBTyxHQUFHOEMsU0FBUztJQUVqQyxJQUFNSSxJQUFJLEdBQUcsU0FBUEEsSUFBSUEsQ0FBQTtNQUFBLE9BQVN6QixVQUFVLENBQUNvQixXQUFXLENBQUEsQ0FBRSxFQUFFNUQsSUFBSSxFQUFFQyxNQUFNLENBQUMsV0FBUSxDQUFDb0IsWUFBWSxDQUFDMkMsTUFBTSxDQUFDO0lBQUE7SUFDdkYsSUFBSXpFLFlBQVksSUFBSUEsWUFBWSxHQUFHLENBQUMsRUFBRTtNQUNwQyxJQUFJdUMsZ0JBQWdCLENBQUNmLE9BQU8sRUFBRW1ELFlBQVksQ0FBQ3BDLGdCQUFnQixDQUFDZixPQUFPLENBQUM7TUFDcEVlLGdCQUFnQixDQUFDZixPQUFPLEdBQUdvRCxVQUFVLENBQUNGLElBQUksRUFBRTFFLFlBQVksQ0FBQztNQUN6RCxPQUFPLFlBQUs7UUFDVixJQUFJdUMsZ0JBQWdCLENBQUNmLE9BQU8sRUFBRW1ELFlBQVksQ0FBQ3BDLGdCQUFnQixDQUFDZixPQUFPLENBQUM7TUFDdEUsQ0FBQztJQUNIO0lBQ0EsS0FBS2tELElBQUksQ0FBQSxDQUFFO0VBQ2IsQ0FBQyxFQUFFLENBQUNKLFNBQVMsRUFBRTlELFlBQVksRUFBRUMsSUFBSSxFQUFFQyxNQUFNLEVBQUVrQixRQUFRLENBQUNKLE9BQU8sRUFBRUksUUFBUSxDQUFDSCxRQUFRLEVBQUVLLFlBQVksQ0FBQytDLEtBQUssRUFBRS9FLE1BQU0sQ0FBQyxDQUFDO0VBRTVHLElBQU1nRixNQUFNLEdBQUd2RixhQUFhLENBQUM7SUFBQSxPQUFzQk8sTUFBTSxHQUFHbkIsT0FBTyxDQUFDRCxPQUFPLENBQUEsQ0FBRSxHQUFHb0QsWUFBWSxDQUFDakMsT0FBTyxDQUFBLENBQUU7RUFBQSxDQUFDLENBQUM7RUFFeEcsSUFBTWtGLEtBQUssR0FBR3hGLGFBQWEsQ0FBQyxZQUFLO0lBQy9Cc0MsZ0JBQWdCLENBQUMsVUFBQ2lCLElBQUk7TUFBQSxPQUFLMUcsTUFBQSxDQUFBNEcsTUFBQSxDQUFBNUcsTUFBQSxDQUFBNEcsTUFBQSxDQUFBLENBQUEsQ0FBQSxFQUFNRixJQUFJLENBQUEsRUFBQTtRQUFFdEIsT0FBTyxFQUFFbEIsY0FBYztRQUFFbUIsUUFBUSxFQUFFbEI7TUFBZSxDQUFBLENBQUE7SUFBQSxDQUFHLENBQUM7RUFDL0YsQ0FBQyxDQUFDO0VBRUY7RUFDQSxJQUFNeUUsU0FBUyxHQUFHLE9BQU85RSxPQUFPLEtBQUssVUFBVSxHQUFHQSxPQUFPLENBQUNlLFVBQVUsQ0FBQyxHQUFHZixPQUFPO0VBQy9FZCxTQUFTLENBQUMsWUFBSztJQUNiLElBQUlVLE1BQU0sSUFBSSxDQUFDa0YsU0FBUyxJQUFJQSxTQUFTLElBQUksQ0FBQyxFQUFFO0lBQzVDLElBQU1DLEVBQUUsR0FBR0MsV0FBVyxDQUFDLFlBQUs7TUFDMUIsSUFBSWpELFVBQVUsQ0FBQ1QsT0FBTyxFQUFFO01BQ3hCZ0IsU0FBUyxDQUFDaEIsT0FBTyxHQUFHLElBQUk7TUFDeEIsS0FBS00sWUFBWSxDQUFDakMsT0FBTyxDQUFBLENBQUU7SUFDN0IsQ0FBQyxFQUFFbUYsU0FBUyxDQUFDO0lBQ2IsT0FBTztNQUFBLE9BQU1HLGFBQWEsQ0FBQ0YsRUFBRSxDQUFDO0lBQUE7RUFDaEMsQ0FBQyxFQUFFLENBQUNELFNBQVMsRUFBRWxGLE1BQU0sQ0FBQyxDQUFDO0VBRXZCO0VBQ0FWLFNBQVMsQ0FBQztJQUFBLE9BQU0sWUFBSztNQUFBLElBQUFzRCxFQUFBO01BQUMsT0FBQSxDQUFBQSxFQUFBLEdBQUFQLFFBQVEsQ0FBQ1gsT0FBTyxNQUFBLElBQUEsSUFBQWtCLEVBQUEsS0FBQSxLQUFBLENBQUEsR0FBQSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFaUIsS0FBSyxDQUFBLENBQUU7SUFBQSxDQUFBO0VBQUEsR0FBRSxFQUFFLENBQUM7RUFFcEQsT0FBTztJQUFFMUMsVUFBVSxFQUFWQSxVQUFVO0lBQUVJLE9BQU8sRUFBUEEsT0FBTztJQUFFTyxRQUFRLEVBQVJBLFFBQVE7SUFBRWdCLFdBQVcsRUFBWEEsV0FBVztJQUFFa0MsTUFBTSxFQUFOQSxNQUFNO0lBQUVDLEtBQUssRUFBTEE7RUFBSyxDQUFFO0FBQ3RFIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvVGFibGUvdXNlRmV0Y2hEYXRhLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fYXdhaXRlciA9ICh0aGlzICYmIHRoaXMuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB1c2VMYXRlc3QgZnJvbSAnQDFtb25leS9ob29rcy91c2VMYXRlc3QnO1xuaW1wb3J0IHVzZU1lbW9pemVkRm4gZnJvbSAnQDFtb25leS9ob29rcy91c2VNZW1vaXplZEZuJztcbmltcG9ydCB1c2VTYWZlU3RhdGUgZnJvbSAnQDFtb25leS9ob29rcy91c2VTYWZlU3RhdGUnO1xuaW1wb3J0IHsgdXNlQXdhaXRhYmxlUmVsb2FkIH0gZnJvbSAnLi9jb3JlL3VzZUF3YWl0YWJsZVJlbG9hZCc7XG4vKipcbiAqIE93bnMgdGhlIHJlcXVlc3QgbGlmZWN5Y2xlIGZvciBQcm9UYWJsZTogZGF0YSwgbG9hZGluZywgYW5kIHBhZ2luYXRpb24uXG4gKlxuICogT25lIGVmZmVjdCBpcyB0aGUgc2luZ2xlIGZldGNoIHBhdGguIEl0IHJlYWRzIGl0cyBxdWVyeSBpbnB1dHMgZnJvbSB0aGVcbiAqICoqcmVuZGVyIGNsb3N1cmUqKiAobmV2ZXIgYSBsYWdnaW5nIHJlZiksIHNvIGV2ZXJ5IHN0YXRlIGNoYW5nZSDigJQgc2VhcmNoLFxuICogc29ydCwgZmlsdGVyLCBwYXJhbXMsIHBhZ2Ug4oCUIHJlZmV0Y2hlcyB3aXRoIGNvcnJlY3QgdmFsdWVzLiBBbiBhd2FpdGFibGVcbiAqIHJlbG9hZCBzaWduYWwgbGV0cyBpbXBlcmF0aXZlIGNhbGxlcnMgZm9yY2UgdGhlIHNhbWUgZWZmZWN0IGFuZCBgYXdhaXRgIGl0LlxuICpcbiAqIGBydW5SZXF1ZXN0YCBhYm9ydHMgdGhlIHByZXZpb3VzIGluLWZsaWdodCByZXF1ZXN0IChgQWJvcnRDb250cm9sbGVyYCwgZXhwb3NlZFxuICogdG8gYHJlcXVlc3RgIGFzIGB7IHNpZ25hbCB9YCksIHRhZ3MgaXRzZWxmIHdpdGggYSByZXF1ZXN0IGlkLCBhbmQgZHJvcHMgc3RhbGVcbiAqIG9yIGFib3J0ZWQgcmVzcG9uc2VzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdXNlRmV0Y2hEYXRhKG9wdGlvbnMpIHtcbiAgICBjb25zdCB7IHJlcXVlc3QsIG1hbnVhbCwgbWFudWFsUmVxdWVzdCwgZGVib3VuY2VUaW1lLCBwb3N0RGF0YSwgcG9sbGluZywgcGFyYW1zLCBkZWZhdWx0RGF0YSwgcGFnaW5hdGVkLCBkZWZhdWx0Q3VycmVudCwgZGVmYXVsdFBhZ2VTaXplLCBzZWFyY2hQYXJhbXMsIHNvcnQsIGZpbHRlciwgb25Mb2FkLCBvbkxvYWRpbmdDaGFuZ2UsIG9uUmVxdWVzdEVycm9yLCB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBbZGF0YVNvdXJjZSwgc2V0RGF0YVNvdXJjZV0gPSB1c2VTYWZlU3RhdGUoZGVmYXVsdERhdGEgIT09IG51bGwgJiYgZGVmYXVsdERhdGEgIT09IHZvaWQgMCA/IGRlZmF1bHREYXRhIDogW10pO1xuICAgIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nU3RhdGVdID0gdXNlU2FmZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbcGFnZUluZm8sIHNldFBhZ2VJbmZvU3RhdGVdID0gdXNlU2FmZVN0YXRlKHtcbiAgICAgICAgY3VycmVudDogZGVmYXVsdEN1cnJlbnQsXG4gICAgICAgIHBhZ2VTaXplOiBkZWZhdWx0UGFnZVNpemUsXG4gICAgICAgIHRvdGFsOiAwLFxuICAgIH0pO1xuICAgIGNvbnN0IHJlbG9hZFNpZ25hbCA9IHVzZUF3YWl0YWJsZVJlbG9hZCgpO1xuICAgIGNvbnN0IHJlcVJlZiA9IHVzZUxhdGVzdChyZXF1ZXN0KTtcbiAgICBjb25zdCBjYWxsYmFja3MgPSB1c2VMYXRlc3QoeyBvbkxvYWQsIG9uTG9hZGluZ0NoYW5nZSwgb25SZXF1ZXN0RXJyb3IsIHBvc3REYXRhIH0pO1xuICAgIGNvbnN0IGxvYWRpbmdSZWYgPSB1c2VMYXRlc3QobG9hZGluZyk7XG4gICAgY29uc3QgcmVxdWVzdElkUmVmID0gdXNlUmVmKDApO1xuICAgIGNvbnN0IGFib3J0UmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHNraXBGaXJzdFJlZiA9IHVzZVJlZihtYW51YWxSZXF1ZXN0ID09PSB0cnVlKTtcbiAgICBjb25zdCBwcmV2UGFyYW1zUmVmID0gdXNlUmVmKHVuZGVmaW5lZCk7XG4gICAgY29uc3QgZGVib3VuY2VUaW1lclJlZiA9IHVzZVJlZih1bmRlZmluZWQpO1xuICAgIC8vIFNldCByaWdodCBiZWZvcmUgYSBwb2xsaW5nLXRyaWdnZXJlZCByZWZldGNoIHNvIGl0IGNhbiByZWZyZXNoIHNpbGVudGx5XG4gICAgLy8gKHdpdGhvdXQgZmxhc2hpbmcgdGhlIG1haW4gbG9hZGluZyBvdmVybGF5KS4gQ29uc3VtZWQgYXQgdGhlIHN0YXJ0IG9mIHJ1blJlcXVlc3QuXG4gICAgY29uc3Qgc2lsZW50UmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgICBjb25zdCBzZXRMb2FkaW5nID0gdXNlTWVtb2l6ZWRGbigobmV4dCkgPT4ge1xuICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICBzZXRMb2FkaW5nU3RhdGUobmV4dCk7XG4gICAgICAgIChfYiA9IChfYSA9IGNhbGxiYWNrcy5jdXJyZW50KS5vbkxvYWRpbmdDaGFuZ2UpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hLCBuZXh0KTtcbiAgICB9KTtcbiAgICBjb25zdCBzZXRQYWdlSW5mbyA9IHVzZU1lbW9pemVkRm4oKGluZm8pID0+IHtcbiAgICAgICAgc2V0UGFnZUluZm9TdGF0ZSgocHJldikgPT4ge1xuICAgICAgICAgICAgY29uc3QgbWVyZ2VkID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgaW5mbyk7XG4gICAgICAgICAgICBpZiAobWVyZ2VkLmN1cnJlbnQgPT09IHByZXYuY3VycmVudCAmJiBtZXJnZWQucGFnZVNpemUgPT09IHByZXYucGFnZVNpemUgJiYgbWVyZ2VkLnRvdGFsID09PSBwcmV2LnRvdGFsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHByZXY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbWVyZ2VkO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgICAvLyBUaGUgc2luZ2xlIG5ldHdvcmsgZW50cnkgcG9pbnQ6IGFib3J0IHRoZSBwcmV2aW91cyByZXF1ZXN0LCB0aGVuIGFwcGx5IGRhdGFcbiAgICAvLyB3aGlsZSBndWFyZGluZyBhZ2FpbnN0IHN0YWxlIC8gYWJvcnRlZCByZXNwb25zZXMuXG4gICAgY29uc3QgcnVuUmVxdWVzdCA9IHVzZU1lbW9pemVkRm4oKG1lcmdlZCwgc3QsIGZ0KSA9PiBfX2F3YWl0ZXIodGhpcywgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mO1xuICAgICAgICBjb25zdCByZXEgPSByZXFSZWYuY3VycmVudDtcbiAgICAgICAgaWYgKCFyZXEpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIC8vIEEgcG9sbGluZyByZWZldGNoIHJlZnJlc2hlcyBzaWxlbnRseSDigJQgbm8gbG9hZGluZyBvdmVybGF5IGZsYXNoLlxuICAgICAgICBjb25zdCBzaWxlbnQgPSBzaWxlbnRSZWYuY3VycmVudDtcbiAgICAgICAgc2lsZW50UmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgKF9hID0gYWJvcnRSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmFib3J0KCk7XG4gICAgICAgIGNvbnN0IGFib3J0ID0gbmV3IEFib3J0Q29udHJvbGxlcigpO1xuICAgICAgICBhYm9ydFJlZi5jdXJyZW50ID0gYWJvcnQ7XG4gICAgICAgIGNvbnN0IHJlcXVlc3RJZCA9ICsrcmVxdWVzdElkUmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmICghc2lsZW50KVxuICAgICAgICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHJlcShtZXJnZWQsIHN0LCBmdCwgeyBzaWduYWw6IGFib3J0LnNpZ25hbCB9KTtcbiAgICAgICAgICAgIGlmIChhYm9ydC5zaWduYWwuYWJvcnRlZCB8fCByZXF1ZXN0SWQgIT09IHJlcXVlc3RJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmIChyZXN1bHQuc3VjY2VzcyA9PT0gZmFsc2UpXG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgY29uc3QgcmF3ID0gKF9iID0gcmVzdWx0LmRhdGEpICE9PSBudWxsICYmIF9iICE9PSB2b2lkIDAgPyBfYiA6IFtdO1xuICAgICAgICAgICAgY29uc3QgbmV4dCA9IGNhbGxiYWNrcy5jdXJyZW50LnBvc3REYXRhID8gY2FsbGJhY2tzLmN1cnJlbnQucG9zdERhdGEocmF3KSA6IHJhdztcbiAgICAgICAgICAgIHNldERhdGFTb3VyY2UobmV4dCk7XG4gICAgICAgICAgICBzZXRQYWdlSW5mb1N0YXRlKChwcmV2KSA9PiB7IHZhciBfYTsgcmV0dXJuIChPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHByZXYpLCB7IHRvdGFsOiAoX2EgPSByZXN1bHQudG90YWwpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IG5leHQubGVuZ3RoIH0pKTsgfSk7XG4gICAgICAgICAgICAoX2QgPSAoX2MgPSBjYWxsYmFja3MuY3VycmVudCkub25Mb2FkKSA9PT0gbnVsbCB8fCBfZCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2QuY2FsbChfYywgbmV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBpZiAoYWJvcnQuc2lnbmFsLmFib3J0ZWQgfHwgcmVxdWVzdElkICE9PSByZXF1ZXN0SWRSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAoX2YgPSAoX2UgPSBjYWxsYmFja3MuY3VycmVudCkub25SZXF1ZXN0RXJyb3IpID09PSBudWxsIHx8IF9mID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZi5jYWxsKF9lLCBlcnJvcik7XG4gICAgICAgIH1cbiAgICAgICAgZmluYWxseSB7XG4gICAgICAgICAgICBpZiAoIXNpbGVudCAmJiByZXF1ZXN0SWQgPT09IHJlcXVlc3RJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfSkpO1xuICAgIC8vIEJ1aWxkIHRoZSByZXF1ZXN0IHBhcmFtcyBmcm9tIHRoZSBjdXJyZW50IHJlbmRlciBjbG9zdXJlLlxuICAgIGNvbnN0IGJ1aWxkTWVyZ2VkID0gKCkgPT4gKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCAocGFyYW1zICE9PSBudWxsICYmIHBhcmFtcyAhPT0gdm9pZCAwID8gcGFyYW1zIDoge30pKSwgc2VhcmNoUGFyYW1zKSwgKHBhZ2luYXRlZCA/IHsgY3VycmVudDogcGFnZUluZm8uY3VycmVudCwgcGFnZVNpemU6IHBhZ2VJbmZvLnBhZ2VTaXplIH0gOiB7fSkpKTtcbiAgICAvLyBPbmx5IGBwYXJhbXNgIChhIGNvbnN1bWVyLW93bmVkIHByb3AsIG9mdGVuIGFuIGlubGluZSBvYmplY3QpIG5lZWRzIHZhbHVlXG4gICAgLy8gY29tcGFyaXNvbjsgdGhlIHJlc3QgYXJlIHN0YWJsZSBpbnRlcm5hbCBzdGF0ZSBhbmQgY29tcGFyZSBieSByZWZlcmVuY2UuXG4gICAgY29uc3QgcGFyYW1zS2V5ID0gSlNPTi5zdHJpbmdpZnkocGFyYW1zICE9PSBudWxsICYmIHBhcmFtcyAhPT0gdm9pZCAwID8gcGFyYW1zIDogbnVsbCk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKG1hbnVhbCkge1xuICAgICAgICAgICAgcmVsb2FkU2lnbmFsLnNldHRsZSgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIG1hbnVhbFJlcXVlc3Q6IHN3YWxsb3cgb25seSB0aGUgZmlyc3QgKG1vdW50KSB0cmlnZ2VyLlxuICAgICAgICBpZiAoc2tpcEZpcnN0UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHNraXBGaXJzdFJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgICAgICBwcmV2UGFyYW1zUmVmLmN1cnJlbnQgPSBwYXJhbXNLZXk7XG4gICAgICAgICAgICByZWxvYWRTaWduYWwuc2V0dGxlKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgLy8gQSBgcGFyYW1zYCBjaGFuZ2UgcmVzZXRzIHRvIHBhZ2UgMSBmaXJzdDsgdGhlIHBhZ2UgY2hhbmdlIHJlLXJ1bnMgdGhpc1xuICAgICAgICAvLyBlZmZlY3QsIHdoZXJlIHRoZSBhY3R1YWwgZmV0Y2ggaGFwcGVucyAoc28gaXQgbmV2ZXIgZG91YmxlLWZldGNoZXMpLlxuICAgICAgICBpZiAocHJldlBhcmFtc1JlZi5jdXJyZW50ICE9PSBwYXJhbXNLZXkgJiYgcGFnZUluZm8uY3VycmVudCAhPT0gZGVmYXVsdEN1cnJlbnQpIHtcbiAgICAgICAgICAgIHByZXZQYXJhbXNSZWYuY3VycmVudCA9IHBhcmFtc0tleTtcbiAgICAgICAgICAgIHNldFBhZ2VJbmZvKHsgY3VycmVudDogZGVmYXVsdEN1cnJlbnQgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgcHJldlBhcmFtc1JlZi5jdXJyZW50ID0gcGFyYW1zS2V5O1xuICAgICAgICBjb25zdCBmaXJlID0gKCkgPT4gcnVuUmVxdWVzdChidWlsZE1lcmdlZCgpLCBzb3J0LCBmaWx0ZXIpLmZpbmFsbHkocmVsb2FkU2lnbmFsLnNldHRsZSk7XG4gICAgICAgIGlmIChkZWJvdW5jZVRpbWUgJiYgZGVib3VuY2VUaW1lID4gMCkge1xuICAgICAgICAgICAgaWYgKGRlYm91bmNlVGltZXJSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICBjbGVhclRpbWVvdXQoZGVib3VuY2VUaW1lclJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIGRlYm91bmNlVGltZXJSZWYuY3VycmVudCA9IHNldFRpbWVvdXQoZmlyZSwgZGVib3VuY2VUaW1lKTtcbiAgICAgICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGRlYm91bmNlVGltZXJSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KGRlYm91bmNlVGltZXJSZWYuY3VycmVudCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHZvaWQgZmlyZSgpO1xuICAgIH0sIFtwYXJhbXNLZXksIHNlYXJjaFBhcmFtcywgc29ydCwgZmlsdGVyLCBwYWdlSW5mby5jdXJyZW50LCBwYWdlSW5mby5wYWdlU2l6ZSwgcmVsb2FkU2lnbmFsLnRva2VuLCBtYW51YWxdKTtcbiAgICBjb25zdCByZWxvYWQgPSB1c2VNZW1vaXplZEZuKCgpID0+IChtYW51YWwgPyBQcm9taXNlLnJlc29sdmUoKSA6IHJlbG9hZFNpZ25hbC5yZXF1ZXN0KCkpKTtcbiAgICBjb25zdCByZXNldCA9IHVzZU1lbW9pemVkRm4oKCkgPT4ge1xuICAgICAgICBzZXRQYWdlSW5mb1N0YXRlKChwcmV2KSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgeyBjdXJyZW50OiBkZWZhdWx0Q3VycmVudCwgcGFnZVNpemU6IGRlZmF1bHRQYWdlU2l6ZSB9KSkpO1xuICAgIH0pO1xuICAgIC8vIFBvbGxpbmc6IHJlLXRyaWdnZXIgb24gYW4gaW50ZXJ2YWwsIHNraXBwaW5nIHRpY2tzIHdoaWxlIGEgcmVxdWVzdCBpcyBpbiBmbGlnaHQuXG4gICAgY29uc3QgcG9sbGluZ01zID0gdHlwZW9mIHBvbGxpbmcgPT09ICdmdW5jdGlvbicgPyBwb2xsaW5nKGRhdGFTb3VyY2UpIDogcG9sbGluZztcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAobWFudWFsIHx8ICFwb2xsaW5nTXMgfHwgcG9sbGluZ01zIDw9IDApXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IGlkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGxvYWRpbmdSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBzaWxlbnRSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgICAgICB2b2lkIHJlbG9hZFNpZ25hbC5yZXF1ZXN0KCk7XG4gICAgICAgIH0sIHBvbGxpbmdNcyk7XG4gICAgICAgIHJldHVybiAoKSA9PiBjbGVhckludGVydmFsKGlkKTtcbiAgICB9LCBbcG9sbGluZ01zLCBtYW51YWxdKTtcbiAgICAvLyBBYm9ydCBhbnkgaW4tZmxpZ2h0IHJlcXVlc3Qgb24gdW5tb3VudC5cbiAgICB1c2VFZmZlY3QoKCkgPT4gKCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBhYm9ydFJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuYWJvcnQoKTsgfSwgW10pO1xuICAgIHJldHVybiB7IGRhdGFTb3VyY2UsIGxvYWRpbmcsIHBhZ2VJbmZvLCBzZXRQYWdlSW5mbywgcmVsb2FkLCByZXNldCB9O1xufSIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { memo } from 'react';
|
|
3
3
|
import { Icons } from '../Icons';
|
|
4
|
+
import { Tag } from '../Tag';
|
|
4
5
|
import { TypographyBody } from '../Typography';
|
|
5
6
|
import { SELECT_TYPOGRAPHY } from './constants';
|
|
6
7
|
import { getFontSize } from './utils';
|
|
@@ -22,6 +23,7 @@ var SelectOptionContentBase = function SelectOptionContentBase(_ref2) {
|
|
|
22
23
|
selected = _ref2.selected,
|
|
23
24
|
size = _ref2.size,
|
|
24
25
|
content = _ref2.content;
|
|
26
|
+
var _a;
|
|
25
27
|
return _jsxs(_Fragment, {
|
|
26
28
|
children: [content !== undefined ? content : _jsxs("span", {
|
|
27
29
|
className: classes('option-content'),
|
|
@@ -36,6 +38,11 @@ var SelectOptionContentBase = function SelectOptionContentBase(_ref2) {
|
|
|
36
38
|
color: SELECT_TYPOGRAPHY.option.description.color,
|
|
37
39
|
children: option.description
|
|
38
40
|
})]
|
|
41
|
+
}), option.badge && _jsx(Tag, {
|
|
42
|
+
className: classes('option-badge'),
|
|
43
|
+
color: (_a = option.badge.color) !== null && _a !== void 0 ? _a : 'neutral',
|
|
44
|
+
size: 'small',
|
|
45
|
+
label: option.badge.label
|
|
39
46
|
}), _jsx(SelectOptionCheck, {
|
|
40
47
|
classes: classes,
|
|
41
48
|
selected: selected
|
|
@@ -44,4 +51,4 @@ var SelectOptionContentBase = function SelectOptionContentBase(_ref2) {
|
|
|
44
51
|
};
|
|
45
52
|
export var SelectOptionContent = /*#__PURE__*/memo(SelectOptionContentBase);
|
|
46
53
|
export default SelectOptionContent;
|
|
47
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvU2VsZWN0L1NlbGVjdE9wdGlvbkNvbnRlbnQuanMiLCJjb21wb25lbnRzL3NyYy9jb21wb25lbnRzL1NlbGVjdC9TZWxlY3RPcHRpb25Db250ZW50LnRzeCJdLCJuYW1lcyI6WyJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJtZW1vIiwiSWNvbnMiLCJUYWciLCJUeXBvZ3JhcGh5Qm9keSIsIlNFTEVDVF9UWVBPR1JBUEhZIiwiZ2V0Rm9udFNpemUiLCJTZWxlY3RPcHRpb25DaGVjayIsIl9yZWYiLCJjbGFzc2VzIiwic2VsZWN0ZWQiLCJjbGFzc05hbWUiLCJjaGlsZHJlbiIsIm5hbWUiLCJzaXplIiwiY29sb3IiLCJTZWxlY3RPcHRpb25Db250ZW50QmFzZSIsIl9yZWYyIiwib3B0aW9uIiwiY29udGVudCIsIl9hIiwidW5kZWZpbmVkIiwic3Ryb25nIiwibGFiZWwiLCJkZXNjcmlwdGlvbiIsImJhZGdlIiwiU2VsZWN0T3B0aW9uQ29udGVudCJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsR0FBRyxJQUFJQyxJQUFJLEVBQUVDLElBQUksSUFBSUMsS0FBSyxFQUFFQyxRQUFRLElBQUlDLFNBQVMsUUFBUSxtQkFBbUI7QUNBckYsU0FBU0MsSUFBSSxRQUFRLE9BQU87QUFDNUIsU0FBU0MsS0FBSyxRQUFRLFVBQVU7QUFDaEMsU0FBU0MsR0FBRyxRQUFRLFFBQVE7QUFDNUIsU0FBU0MsY0FBYyxRQUFRLGVBQWU7QUFJOUMsU0FBU0MsaUJBQWlCLFFBQVEsYUFBYTtBQUMvQyxTQUFTQyxXQUFXLFFBQVEsU0FBUztBQU9yQyxPQUFPLElBQU1DLGlCQUFpQixHQUErQixTQUFoREEsaUJBQWlCQSxDQUFBQyxJQUFBO0VBQUEsSUFBa0NDLE9BQU8sR0FBQUQsSUFBQSxDQUFQQyxPQUFPO0lBQUVDLFFBQVEsR0FBQUYsSUFBQSxDQUFSRSxRQUFRO0VBQUEsT0FDL0VkLElBQUEsQ0FBQSxNQUFBLEVBQUE7SUFBTWUsU0FBUyxFQUFFRixPQUFPLENBQUMsY0FBYyxDQUFDO0lBQUFHLFFBQUEsRUFDckNGLFFBQVEsSUFBSWQsSUFBQSxDQUFDTSxLQUFLLEVBQUE7TUFBQ1csSUFBSSxFQUFDLE9BQU87TUFBQ0MsSUFBSSxFQUFFLEVBQUU7TUFBRUMsS0FBSyxFQUFDO0lBQWMsQ0FBQTtFQUFHLENBQUEsQ0FDN0Q7QUFBQSxDQUNSO0FBV0QsSUFBTUMsdUJBQXVCLEdBQWlDLFNBQXhEQSx1QkFBdUJBLENBQUFDLEtBQUEsRUFNeEI7RUFBQSxJQUxIUixPQUFPLEdBQUFRLEtBQUEsQ0FBUFIsT0FBTztJQUNQUyxNQUFNLEdBQUFELEtBQUEsQ0FBTkMsTUFBTTtJQUNOUixRQUFRLEdBQUFPLEtBQUEsQ0FBUlAsUUFBUTtJQUNSSSxJQUFJLEdBQUFHLEtBQUEsQ0FBSkgsSUFBSTtJQUNKSyxPQUFPLEdBQUFGLEtBQUEsQ0FBUEUsT0FBTztFRDFCTCxJQUFJQyxFQUFFO0VDMkJKLE9BQ0p0QixLQUFBLENBQUFFLFNBQUEsRUFBQTtJQUFBWSxRQUFBLEVBQUEsQ0FDR08sT0FBTyxLQUFLRSxTQUFTLEdBQ3BCRixPQUFPLEdBRVByQixLQUFBLENBQUEsTUFBQSxFQUFBO01BQU1hLFNBQVMsRUFBRUYsT0FBTyxDQUFDLGdCQUFnQixDQUFDO01BQUFHLFFBQUEsRUFBQSxDQUN4Q2hCLElBQUEsQ0FBQ1EsY0FBYyxFQUFBO1FBQUNPLFNBQVMsRUFBRUYsT0FBTyxDQUFDLGNBQWMsQ0FBQztRQUFFSyxJQUFJLEVBQUVSLFdBQVcsQ0FBQ1EsSUFBSSxDQUFDO1FBQUVRLE1BQU0sRUFBQSxJQUFBO1FBQUFWLFFBQUEsRUFBRU0sTUFBTSxDQUFDSztNQUFLLENBQUEsQ0FBa0IsRUFDbEhMLE1BQU0sQ0FBQ00sV0FBVyxJQUNqQjVCLElBQUEsQ0FBQ1EsY0FBYyxFQUFBO1FBQUNPLFNBQVMsRUFBRUYsT0FBTyxDQUFDLG9CQUFvQixDQUFDO1FBQUVLLElBQUksRUFBRVQsaUJBQWlCLENBQUNhLE1BQU0sQ0FBQ00sV0FBVyxDQUFDVixJQUFJO1FBQUVDLEtBQUssRUFBRVYsaUJBQWlCLENBQUNhLE1BQU0sQ0FBQ00sV0FBVyxDQUFDVCxLQUFLO1FBQUFILFFBQUEsRUFBR00sTUFBTSxDQUFDTTtNQUFXLENBQUEsQ0FDbEw7SUFBQSxDQUFBLENBRUosRUFDQU4sTUFBTSxDQUFDTyxLQUFLLElBQ1g3QixJQUFBLENBQUNPLEdBQUcsRUFBQTtNQUNGUSxTQUFTLEVBQUVGLE9BQU8sQ0FBQyxjQUFjLENBQUM7TUFDbENNLEtBQUssRUFBRSxDQUFBSyxFQUFBLEdBQUFGLE1BQU0sQ0FBQ08sS0FBSyxDQUFDVixLQUFLLE1BQUEsSUFBQSxJQUFBSyxFQUFBLEtBQUEsS0FBQSxDQUFBLEdBQUFBLEVBQUEsR0FBSSxTQUFTO01BQ3RDTixJQUFJLEVBQUMsT0FBTztNQUNaUyxLQUFLLEVBQUVMLE1BQU0sQ0FBQ08sS0FBSyxDQUFDRjtJQUFLLENBQUEsQ0FFNUIsRUFDRDNCLElBQUEsQ0FBQ1csaUJBQWlCLEVBQUE7TUFBQ0UsT0FBTyxFQUFFQSxPQUFPO01BQUVDLFFBQVEsRUFBRUE7SUFBUSxDQUFBLENBQUk7RUFBQSxDQUFBLENBQzFEO0FEOUNMLENDK0NDO0FBRUQsT0FBTyxJQUFNZ0IsbUJBQW1CLGdCQUFHekIsSUFBSSxDQUFDZSx1QkFBdUIsQ0FBQztBQUVoRSxlQUFlVSxtQkFBbUIiLCJmaWxlIjoiY29tcG9uZW50cy9TZWxlY3QvU2VsZWN0T3B0aW9uQ29udGVudC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBqc3hzIGFzIF9qc3hzLCBGcmFnbWVudCBhcyBfRnJhZ21lbnQgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJY29ucyB9IGZyb20gJy4uL0ljb25zJztcbmltcG9ydCB7IFRhZyB9IGZyb20gJy4uL1RhZyc7XG5pbXBvcnQgeyBUeXBvZ3JhcGh5Qm9keSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IHsgU0VMRUNUX1RZUE9HUkFQSFkgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBnZXRGb250U2l6ZSB9IGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0IGNvbnN0IFNlbGVjdE9wdGlvbkNoZWNrID0gKHsgY2xhc3Nlcywgc2VsZWN0ZWQgfSkgPT4gKF9qc3goXCJzcGFuXCIsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKCdvcHRpb24tY2hlY2snKSwgY2hpbGRyZW46IHNlbGVjdGVkICYmIF9qc3goSWNvbnMsIHsgbmFtZTogXCJjaGVja1wiLCBzaXplOiAxNiwgY29sb3I6IFwiY3VycmVudENvbG9yXCIgfSkgfSkpO1xuY29uc3QgU2VsZWN0T3B0aW9uQ29udGVudEJhc2UgPSAoeyBjbGFzc2VzLCBvcHRpb24sIHNlbGVjdGVkLCBzaXplLCBjb250ZW50LCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbY29udGVudCAhPT0gdW5kZWZpbmVkID8gKGNvbnRlbnQpIDogKF9qc3hzKFwic3BhblwiLCB7IGNsYXNzTmFtZTogY2xhc3Nlcygnb3B0aW9uLWNvbnRlbnQnKSwgY2hpbGRyZW46IFtfanN4KFR5cG9ncmFwaHlCb2R5LCB7IGNsYXNzTmFtZTogY2xhc3Nlcygnb3B0aW9uLWxhYmVsJyksIHNpemU6IGdldEZvbnRTaXplKHNpemUpLCBzdHJvbmc6IHRydWUsIGNoaWxkcmVuOiBvcHRpb24ubGFiZWwgfSksIG9wdGlvbi5kZXNjcmlwdGlvbiAmJiAoX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ29wdGlvbi1kZXNjcmlwdGlvbicpLCBzaXplOiBTRUxFQ1RfVFlQT0dSQVBIWS5vcHRpb24uZGVzY3JpcHRpb24uc2l6ZSwgY29sb3I6IFNFTEVDVF9UWVBPR1JBUEhZLm9wdGlvbi5kZXNjcmlwdGlvbi5jb2xvciwgY2hpbGRyZW46IG9wdGlvbi5kZXNjcmlwdGlvbiB9KSldIH0pKSwgb3B0aW9uLmJhZGdlICYmIChfanN4KFRhZywgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ29wdGlvbi1iYWRnZScpLCBjb2xvcjogKF9hID0gb3B0aW9uLmJhZGdlLmNvbG9yKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiAnbmV1dHJhbCcsIHNpemU6ICdzbWFsbCcsIGxhYmVsOiBvcHRpb24uYmFkZ2UubGFiZWwgfSkpLCBfanN4KFNlbGVjdE9wdGlvbkNoZWNrLCB7IGNsYXNzZXM6IGNsYXNzZXMsIHNlbGVjdGVkOiBzZWxlY3RlZCB9KV0gfSkpO1xufTtcbmV4cG9ydCBjb25zdCBTZWxlY3RPcHRpb25Db250ZW50ID0gbWVtbyhTZWxlY3RPcHRpb25Db250ZW50QmFzZSk7XG5leHBvcnQgZGVmYXVsdCBTZWxlY3RPcHRpb25Db250ZW50OyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Placement, UseRoleProps } from '@floating-ui/react';
|
|
2
2
|
import type { CSSProperties, FocusEvent, HTMLAttributes, ReactNode, RefObject } from 'react';
|
|
3
3
|
import type { FloatingAnimation } from "../../hooks/useFloatingAnimation";
|
|
4
|
+
import type { TagColor } from "../Tag";
|
|
4
5
|
import type { TypographyBodySize } from "../Typography";
|
|
5
6
|
export type SelectOffset = number | {
|
|
6
7
|
mainAxis?: number;
|
|
@@ -33,12 +34,20 @@ export type SelectOptionValue = string | number;
|
|
|
33
34
|
export type SelectSingleValue = SelectOptionValue | null | undefined;
|
|
34
35
|
export type SelectMultipleValue = SelectOptionValue[];
|
|
35
36
|
export type SelectValue = SelectSingleValue | SelectMultipleValue;
|
|
37
|
+
/** Trailing badge on an option — e.g. why a disabled option cannot be picked. */
|
|
38
|
+
export interface SelectOptionBadge {
|
|
39
|
+
label: string;
|
|
40
|
+
/** @default 'neutral' */
|
|
41
|
+
color?: TagColor;
|
|
42
|
+
}
|
|
36
43
|
export interface SelectOption {
|
|
37
44
|
label: ReactNode;
|
|
38
45
|
value: SelectOptionValue;
|
|
39
46
|
disabled?: boolean;
|
|
40
47
|
description?: ReactNode;
|
|
41
48
|
searchText?: string;
|
|
49
|
+
/** Rendered at the option's trailing edge, before the selected check. */
|
|
50
|
+
badge?: SelectOptionBadge;
|
|
42
51
|
/**
|
|
43
52
|
* Allow consumers to attach arbitrary per-option metadata (icon, badges, etc.)
|
|
44
53
|
* accessible inside `renderOption` / `renderOptionContent` / `renderValue`.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export var SELECT_SIZES = ['large', 'small', 'extra-small'];
|
|
2
2
|
export var SELECT_STATUSES = ['default', 'error', 'warning', 'success'];
|
|
3
3
|
export var SELECT_VARIANTS = ['fill', 'stroke', 'frameless'];
|
|
4
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU2VsZWN0L2ludGVyZmFjZS50cyJdLCJuYW1lcyI6WyJTRUxFQ1RfU0laRVMiLCJTRUxFQ1RfU1RBVFVTRVMiLCJTRUxFQ1RfVkFSSUFOVFMiXSwibWFwcGluZ3MiOiJBQTZCQSxPQUFPLElBQU1BLFlBQVksR0FBRyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFVO0FBQ3RFLE9BQU8sSUFBTUMsZUFBZSxHQUFHLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFVO0FBQ2xGLE9BQU8sSUFBTUMsZUFBZSxHQUFHLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxXQUFXLENBQVUiLCJmaWxlIjoiY29tcG9uZW50cy9TZWxlY3QvaW50ZXJmYWNlLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
|
|
@@ -450,6 +450,13 @@
|
|
|
450
450
|
gap: var(--om-spacing-050, 2px);
|
|
451
451
|
min-width: 0;
|
|
452
452
|
}
|
|
453
|
+
.om-component-ui-select-option-badge {
|
|
454
|
+
flex-shrink: 0;
|
|
455
|
+
margin-left: auto;
|
|
456
|
+
}
|
|
457
|
+
.om-component-ui-select-option-disabled .om-component-ui-select-option-check {
|
|
458
|
+
display: none;
|
|
459
|
+
}
|
|
453
460
|
.om-component-ui-select-option-label {
|
|
454
461
|
min-width: 0;
|
|
455
462
|
overflow: hidden;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
4
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
4
5
|
var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {
|
|
5
6
|
function adopt(value) {
|
|
6
7
|
return value instanceof P ? value : new P(function (resolve) {
|
|
@@ -107,20 +108,20 @@ export var Spinner = function Spinner(props) {
|
|
|
107
108
|
var instance = null;
|
|
108
109
|
var destroyed = false;
|
|
109
110
|
(function () {
|
|
110
|
-
return __awaiter(void 0, void 0, void 0, /*#__PURE__*/
|
|
111
|
+
return __awaiter(void 0, void 0, void 0, /*#__PURE__*/_regenerator().m(function _callee() {
|
|
111
112
|
var lottie;
|
|
112
|
-
return
|
|
113
|
-
while (1) switch (_context.
|
|
113
|
+
return _regenerator().w(function (_context) {
|
|
114
|
+
while (1) switch (_context.n) {
|
|
114
115
|
case 0:
|
|
115
|
-
_context.
|
|
116
|
+
_context.n = 1;
|
|
116
117
|
return import('lottie-web');
|
|
117
118
|
case 1:
|
|
118
|
-
lottie = _context.
|
|
119
|
+
lottie = _context.v["default"];
|
|
119
120
|
if (!(destroyed || !lottieRef.current)) {
|
|
120
|
-
_context.
|
|
121
|
+
_context.n = 2;
|
|
121
122
|
break;
|
|
122
123
|
}
|
|
123
|
-
return _context.
|
|
124
|
+
return _context.a(2);
|
|
124
125
|
case 2:
|
|
125
126
|
instance = lottie.loadAnimation({
|
|
126
127
|
container: lottieRef.current,
|
|
@@ -130,8 +131,7 @@ export var Spinner = function Spinner(props) {
|
|
|
130
131
|
animationData: lottiePureJson
|
|
131
132
|
});
|
|
132
133
|
case 3:
|
|
133
|
-
|
|
134
|
-
return _context.stop();
|
|
134
|
+
return _context.a(2);
|
|
135
135
|
}
|
|
136
136
|
}, _callee);
|
|
137
137
|
}));
|
|
@@ -216,4 +216,4 @@ export var Spinner = function Spinner(props) {
|
|
|
216
216
|
}));
|
|
217
217
|
};
|
|
218
218
|
export default /*#__PURE__*/memo(Spinner);
|
|
219
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLnRzeCIsImNvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLmpzIl0sIm5hbWVzIjpbIl9yZWdlbmVyYXRvclJ1bnRpbWUiLCJfX2F3YWl0ZXIiLCJ0aGlzQXJnIiwiX2FyZ3VtZW50cyIsIlAiLCJnZW5lcmF0b3IiLCJhZG9wdCIsInZhbHVlIiwicmVzb2x2ZSIsIlByb21pc2UiLCJyZWplY3QiLCJmdWxmaWxsZWQiLCJzdGVwIiwibmV4dCIsImUiLCJyZWplY3RlZCIsInJlc3VsdCIsImRvbmUiLCJ0aGVuIiwiYXBwbHkiLCJfX3Jlc3QiLCJzIiwidCIsInAiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiaSIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwianN4IiwiX2pzeCIsImpzeHMiLCJfanN4cyIsIm1lbW8iLCJ1c2VFZmZlY3QiLCJ1c2VJZCIsInVzZVJlZiIsIlR5cG9ncmFwaHkiLCJjbGFzc25hbWVzIiwiam9pbkNscyIsImxvdHRpZVB1cmVKc29uIiwiREVGQVVMVF9TSVpFIiwiQkdfTE9HT19SQVRJTyIsIkJyYW5kQmdDaXJjbGUiLCJfcmVmIiwic2l6ZSIsImNsYXNzTmFtZSIsInJhd0lkIiwiZ3JhZElkIiwiY29uY2F0IiwicmVwbGFjZSIsIndpZHRoIiwiaGVpZ2h0Iiwidmlld0JveCIsImNoaWxkcmVuIiwiY3giLCJjeSIsInIiLCJmaWxsIiwiaWQiLCJncmFkaWVudFVuaXRzIiwiZ3JhZGllbnRUcmFuc2Zvcm0iLCJzdG9wQ29sb3IiLCJvZmZzZXQiLCJTcGlubmVyIiwicHJvcHMiLCJzdHlsZSIsIl9wcm9wcyRwcmVmaXhDbHMiLCJwcmVmaXhDbHMiLCJfcHJvcHMkdHlwZSIsInR5cGUiLCJfcHJvcHMkc2l6ZSIsIl9wcm9wcyRzdHJva2VXaWR0aCIsInN0cm9rZVdpZHRoIiwiY29sb3IiLCJ0aXRsZSIsImJvZHkiLCJyZXN0IiwiY2xhc3NlcyIsImxvdHRpZVJlZiIsImlzQnJhbmQiLCJjdXJyZW50IiwiaW5zdGFuY2UiLCJkZXN0cm95ZWQiLCJtYXJrIiwiX2NhbGxlZSIsImxvdHRpZSIsIndyYXAiLCJfY29udGV4dCIsInByZXYiLCJzZW50IiwiYWJydXB0IiwibG9hZEFuaW1hdGlvbiIsImNvbnRhaW5lciIsInJlbmRlcmVyIiwibG9vcCIsImF1dG9wbGF5IiwiYW5pbWF0aW9uRGF0YSIsInN0b3AiLCJkZXN0cm95IiwiaGFzQmciLCJsb3R0aWVTaXplIiwibG90dGllU3R5bGUiLCJhc3NpZ24iLCJyZWYiLCJIZWFkbGluZSIsIkJvZHkiLCJyb2xlIl0sIm1hcHBpbmdzIjoiQUFBQSxZQUFZOztBQUFDLE9BQUFBLG1CQUFBO0FDQ2IsSUFBSUMsU0FBUyxHQUFJLElBQUksSUFBSSxJQUFJLENBQUNBLFNBQVMsSUFBSyxVQUFVQyxPQUFPLEVBQUVDLFVBQVUsRUFBRUMsQ0FBQyxFQUFFQyxTQUFTLEVBQUU7RUFDckYsU0FBU0MsS0FBS0EsQ0FBQ0MsS0FBSyxFQUFFO0lBQUUsT0FBT0EsS0FBSyxZQUFZSCxDQUFDLEdBQUdHLEtBQUssR0FBRyxJQUFJSCxDQUFDLENBQUMsVUFBVUksT0FBTyxFQUFFO01BQUVBLE9BQU8sQ0FBQ0QsS0FBSyxDQUFDO0lBQUUsQ0FBQyxDQUFDO0VBQUU7RUFDM0csT0FBTyxLQUFLSCxDQUFDLEtBQUtBLENBQUMsR0FBR0ssT0FBTyxDQUFDLEVBQUUsVUFBVUQsT0FBTyxFQUFFRSxNQUFNLEVBQUU7SUFDdkQsU0FBU0MsU0FBU0EsQ0FBQ0osS0FBSyxFQUFFO01BQUUsSUFBSTtRQUFFSyxJQUFJLENBQUNQLFNBQVMsQ0FBQ1EsSUFBSSxDQUFDTixLQUFLLENBQUMsQ0FBQztNQUFFLENBQUMsQ0FBQyxPQUFPTyxDQUFDLEVBQUU7UUFBRUosTUFBTSxDQUFDSSxDQUFDLENBQUM7TUFBRTtJQUFFO0lBQzFGLFNBQVNDLFFB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aEMsU0FBUyxDQUFDO0lBQ3JDb0IsS0FBSyxFQUFBOUMsTUFBQSxDQUFBbUYsTUFBQSxDQUFBbkYsTUFBQSxDQUFBbUYsTUFBQSxDQUFBO01BQUlwRCxLQUFLLEVBQUVOLElBQUk7TUFBRU8sTUFBTSxFQUFFUDtJQUFJLENBQUEsRUFBS3FCLEtBQUssQ0FBQSxFQUFNUSxLQUFLLEdBQUc7TUFBRUEsS0FBSyxFQUFMQTtJQUFLLENBQUUsR0FBRyxJQUFLLENBQUE7SUFBQXBCLFFBQUEsRUFFM0V4QixJQUFBLENBQUEsS0FBQSxFQUFBO01BQUtnQixTQUFTLEVBQUVnQyxPQUFPLENBQUMsUUFBUSxDQUFDO01BQUV6QixPQUFPLEVBQUMsV0FBVztNQUFBQyxRQUFBLEVBQ3BEeEIsSUFBQSxDQUFBLFFBQUEsRUFBQTtRQUNFZ0IsU0FBUyxFQUFFZ0MsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUMxQnZCLEVBQUUsRUFBQyxJQUFJO1FBQ1BDLEVBQUUsRUFBQyxJQUFJO1FBQ1BDLENBQUMsRUFBQyxJQUFJO1FBQ05DLElBQUksRUFBQyxNQUFNO1FBQ1hlLFdBQVcsRUFBRUE7TUFBVyxDQUFBO0lBQ3hCLENBQUE7RUFDRSxDQUFBLENBQUEsQ0FDRjtBQUVWLENBQUM7QUFFRCw0QkFBZXhDLElBQUksQ0FBQytCLE9BQU8sQ0FBQyIsImZpbGUiOiJjb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lci5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiJ3VzZSBjbGllbnQnO1xudmFyIF9fYXdhaXRlciA9ICh0aGlzICYmIHRoaXMuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG52YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbywgdXNlRWZmZWN0LCB1c2VJZCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IGNsYXNzbmFtZXMsIHsgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IGxvdHRpZVB1cmVKc29uIGZyb20gJy4vbG90dGllLXB1cmUuanNvbic7XG5pbXBvcnQgJy4vc3R5bGUnO1xuY29uc3QgREVGQVVMVF9TSVpFID0gMzI7XG5jb25zdCBCR19MT0dPX1JBVElPID0gMiAvIDM7XG5jb25zdCBCcmFuZEJnQ2lyY2xlID0gKHsgc2l6ZSwgY2xhc3NOYW1lIH0pID0+IHtcbiAgICBjb25zdCByYXdJZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZ3JhZElkID0gYHNwaW5uZXItYmctJHtyYXdJZC5yZXBsYWNlKC9bXmEtekEtWjAtOV0vZywgJycpfWA7XG4gICAgcmV0dXJuIChfanN4cyhcInN2Z1wiLCB7IHdpZHRoOiBzaXplLCBoZWlnaHQ6IHNpemUsIHZpZXdCb3g6IFwiMCAwIDU2IDU3XCIsIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBcImFyaWEtaGlkZGVuXCI6IFwidHJ1ZVwiLCBjaGlsZHJlbjogW19qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIyOFwiLCBjeTogXCIyOC43NVwiLCByOiBcIjI4XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZElkfSlgIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4cyhcInJhZGlhbEdyYWRpZW50XCIsIHsgaWQ6IGdyYWRJZCwgY3g6IFwiMFwiLCBjeTogXCIwXCIsIHI6IFwiMVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGdyYWRpZW50VHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtMzQuOTA4NSA5Mi42Njc4KSByb3RhdGUoLTQ1LjY1OTQpIHNjYWxlKDEwOC44NTMgMTAzLjY5OClcIiwgY2hpbGRyZW46IFtfanN4KFwic3RvcFwiLCB7IHN0b3BDb2xvcjogXCIjMDczMzg3XCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjAuMjE2ODUyXCIsIHN0b3BDb2xvcjogXCIjOTBBOENGXCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjAuNTY3MTAzXCIsIHN0b3BDb2xvcjogXCIjQ0JENkU4XCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjFcIiwgc3RvcENvbG9yOiBcIiNGOUY5RjlcIiB9KV0gfSkgfSldIH0pKTtcbn07XG5leHBvcnQgY29uc3QgU3Bpbm5lciA9IHByb3BzID0+IHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9ICdzcGlubmVyJywgdHlwZSA9ICdkZWZhdWx0Jywgc2l6ZSA9IERFRkFVTFRfU0laRSwgc3Ryb2tlV2lkdGggPSA0LCBjb2xvciwgdGl0bGUsIGJvZHkgfSA9IHByb3BzLCByZXN0ID0gX19yZXN0KHByb3BzLCBbXCJjbGFzc05hbWVcIiwgXCJzdHlsZVwiLCBcInByZWZpeENsc1wiLCBcInR5cGVcIiwgXCJzaXplXCIsIFwic3Ryb2tlV2lkdGhcIiwgXCJjb2xvclwiLCBcInRpdGxlXCIsIFwiYm9keVwiXSk7XG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICBjb25zdCBsb3R0aWVSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgaXNCcmFuZCA9IHR5cGUgPT09ICdicmFuZCcgfHwgdHlwZSA9PT0gJ2JyYW5kLWJnJztcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIWlzQnJhbmQgfHwgIWxvdHRpZVJlZi5jdXJyZW50KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBsZXQgaW5zdGFuY2UgPSBudWxsO1xuICAgICAgICBsZXQgZGVzdHJveWVkID0gZmFsc2U7XG4gICAgICAgICgoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IGxvdHRpZSA9ICh5aWVsZCBpbXBvcnQoJ2xvdHRpZS13ZWInKSkuZGVmYXVsdDtcbiAgICAgICAgICAgIGlmIChkZXN0cm95ZWQgfHwgIWxvdHRpZVJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGluc3RhbmNlID0gbG90dGllLmxvYWRBbmltYXRpb24oe1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lcjogbG90dGllUmVmLmN1cnJlbnQsXG4gICAgICAgICAgICAgICAgcmVuZGVyZXI6ICdzdmcnLFxuICAgICAgICAgICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgICAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uRGF0YTogbG90dGllUHVyZUpzb24sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSkpKCk7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBkZXN0cm95ZWQgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKGluc3RhbmNlKSB7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGVzdHJveSgpO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9LCBbaXNCcmFuZF0pO1xuICAgIGlmIChpc0JyYW5kKSB7XG4gICAgICAgIGNvbnN0IGhhc0JnID0gdHlwZSA9PT0gJ2JyYW5kLWJnJztcbiAgICAgICAgY29uc3QgbG90dGllU2l6ZSA9IGhhc0JnID8gc2l6ZSAqIEJHX0xPR09fUkFUSU8gOiBzaXplO1xuICAgICAgICBjb25zdCBsb3R0aWVTdHlsZSA9IHsgd2lkdGg6IGxvdHRpZVNpemUsIGhlaWdodDogbG90dGllU2l6ZSB9O1xuICAgICAgICByZXR1cm4gKF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKHZvaWQgMCwgam9pbkNscyhjbGFzc2VzKCdicmFuZCcpLCBoYXNCZyAmJiBjbGFzc2VzKCdicmFuZC1iZycpLCBjbGFzc05hbWUpKSwgY2hpbGRyZW46IFtoYXNCZyA/IChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnaWNvbi13cmFwJyksIHN0eWxlOiB7IHdpZHRoOiBzaXplLCBoZWlnaHQ6IHNpemUgfSwgY2hpbGRyZW46IFtfanN4KEJyYW5kQmdDaXJjbGUsIHsgc2l6ZTogc2l6ZSwgY2xhc3NOYW1lOiBjbGFzc2VzKCdiZycpIH0pLCBfanN4KFwiZGl2XCIsIHsgcmVmOiBsb3R0aWVSZWYsIGNsYXNzTmFtZTogY2xhc3NlcygnbG90dGllJyksIHN0eWxlOiBsb3R0aWVTdHlsZSB9KV0gfSkpIDogKF9qc3goXCJkaXZcIiwgeyByZWY6IGxvdHRpZVJlZiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdsb3R0aWUnKSwgc3R5bGU6IGxvdHRpZVN0eWxlIH0pKSwgKHRpdGxlIHx8IGJvZHkpICYmIChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnY29udGVudCcpLCBjaGlsZHJlbjogW3RpdGxlICYmIChoYXNCZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gX2pzeChUeXBvZ3JhcGh5LkhlYWRsaW5lLCB7IHNpemU6IFwic21cIiwgY29sb3I6IFwiZGVmYXVsdFwiLCBjbGFzc05hbWU6IGNsYXNzZXMoJ3RpdGxlJyksIGNoaWxkcmVuOiB0aXRsZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogXCJtZFwiLCBjb2xvcjogXCJkZWZhdWx0LXRlcnRpYXJ5XCIsIGNsYXNzTmFtZTogY2xhc3NlcygndGl0bGUnKSwgY2hpbGRyZW46IHRpdGxlIH0pKSwgYm9keSAmJiAoX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogXCJtZFwiLCBjb2xvcjogXCJkZWZhdWx0LXRlcnRpYXJ5XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnYm9keScpLCBjaGlsZHJlbjogYm9keSB9KSldIH0pKV0gfSkpKTtcbiAgICB9XG4gICAgcmV0dXJuIChfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgcm9sZTogXCJwcm9ncmVzc2JhclwiLCBjbGFzc05hbWU6IGNsYXNzZXModm9pZCAwLCBjbGFzc05hbWUpLCBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSB9LCBzdHlsZSksIChjb2xvciA/IHsgY29sb3IgfSA6IG51bGwpKSwgY2hpbGRyZW46IF9qc3goXCJzdmdcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2NpcmNsZScpLCB2aWV3Qm94OiBcIjAgMCA1MCA1MFwiLCBjaGlsZHJlbjogX2pzeChcImNpcmNsZVwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncGF0aCcpLCBjeDogXCIyNVwiLCBjeTogXCIyNVwiLCByOiBcIjIwXCIsIGZpbGw6IFwibm9uZVwiLCBzdHJva2VXaWR0aDogc3Ryb2tlV2lkdGggfSkgfSkgfSkpKTtcbn07XG5leHBvcnQgZGVmYXVsdCBtZW1vKFNwaW5uZXIpOyJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
219
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLnRzeCIsImNvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyLmpzIl0sIm5hbWVzIjpbIl9yZWdlbmVyYXRvciIsImUiLCJ0IiwiciIsIlN5bWJvbCIsIm4iLCJpdGVyYXRvciIsIm8iLCJ0b1N0cmluZ1RhZyIsImkiLCJjIiwicHJvdG90eXBlIiwiR2VuZXJhdG9yIiwidSIsIk9iamVjdCIsImNyZWF0ZSIsIl9yZWdlbmVyYXRvckRlZmluZTIiLCJmIiwicCIsInkiLCJHIiwidiIsImEiLCJkIiwiYmluZCIsImxlbmd0aCIsImwiLCJUeXBlRXJyb3IiLCJjYWxsIiwiZG9uZSIsInZhbHVlIiwiR2VuZXJhdG9yRnVuY3Rpb24iLCJHZW5lcmF0b3JGdW5jdGlvblByb3RvdHlwZSIsImdldFByb3RvdHlwZU9mIiwic2V0UHJvdG90eXBlT2YiLCJfX3Byb3RvX18iLCJkaXNwbGF5TmFtZSIsInciLCJtIiwiZGVmaW5lUHJvcGVydHkiLCJfcmVnZW5lcmF0b3JEZWZpbmUiLCJfaW52b2tlIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiX19hd2FpdGVyIiwidGhpc0FyZyIsIl9hcmd1bWVudHMiLCJQIiwiZ2VuZXJhdG9yIiwiYWRvcHQiLCJyZXNvbHZlIiwiUHJvbWlzZSIsInJlamVjdCIsImZ1bGZpbGxlZCIsInN0ZXAiLCJuZXh0IiwicmVqZWN0ZWQiLCJyZXN1bHQiLCJ0aGVuIiwiYXBwbHkiLCJfX3Jlc3QiLCJzIiwiaGFzT3duUHJvcGVydHkiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJqc3giLCJfanN4IiwianN4cyIsIl9qc3hzIiwibWVtbyIsInVzZUVmZmVjdCIsInVzZUlkIiwidXNlUmVmIiwiVHlwb2dyYXBoeSIsImNsYXNzbmFtZXMiLCJqb2luQ2xzIiwibG90dGllUHVyZUpzb24iLCJERUZBVUxUX1NJWkUiLCJCR19MT0dPX1JBVElPIiwiQnJhbmRCZ0NpcmNsZSIsIl9yZWYiLCJzaXplIiwiY2xhc3NOYW1lIiwicmF3SWQiLCJncmFkSWQiLCJjb25jYXQiLCJyZXBsYWNlIiwid2lkdGgiLCJoZWlnaHQiLCJ2aWV3Qm94IiwiY2hpbGRyZW4iLCJjeCIsImN5IiwiZmlsbCIsImlkIiwiZ3JhZGllbnRVbml0cyIsImdyYWRpZW50VHJhbnNmb3JtIiwic3RvcENvbG9yIiwib2Zmc2V0IiwiU3Bpbm5lciIsInByb3BzIiwic3R5bGUiLCJfcHJvcHMkcHJlZml4Q2xzIiwicHJlZml4Q2xzIiwiX3Byb3BzJHR5cGUiLCJ0eXBlIiwiX3Byb3BzJHNpemUiLCJfcHJvcHMkc3Ryb2tlV2lkdGgiLCJzdHJva2VXaWR0aCIsImNvbG9yIiwidGl0bGUiLCJib2R5IiwicmVzdCIsImNsYXNzZXMiLCJsb3R0aWVSZWYiLCJpc0JyYW5kIiwiY3VycmVudCIsImluc3RhbmNlIiwiZGVzdHJveWVkIiwiX2NhbGxlZSIsImxvdHRpZSIsIl9jb250ZXh0IiwibG9hZEFuaW1hdGlvbiIsImNvbnRhaW5lciIsInJlbmRlcmVyIiwibG9vcCIsImF1dG9wbGF5IiwiYW5pbWF0aW9uRGF0YSIsImRlc3Ryb3kiLCJoYXNCZyIsImxvdHRpZVNpemUiLCJsb3R0aWVTdHlsZSIsImFzc2lnbiIsInJlZiIsIkhlYWRsaW5lIiwiQm9keSIsInJvbGUiXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7O0FBQUMsU0FBQUEsYUFBQSxJQ0NiLHVLQUFBQyxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSx3QkFBQUMsTUFBQSxHQUFBQSxNQUFBLE9BQUFDLENBQUEsR0FBQUYsQ0FBQSxDQUFBRyxRQUFBLGtCQUFBQyxDQUFBLEdBQUFKLENBQUEsQ0FBQUssV0FBQSw4QkFBQUMsRUFBQU4sQ0FBQSxFQUFBRSxDQUFBLEVBQUFFLENBQUEsRUFBQUUsQ0FBQSxRQUFBQyxDQUFBLEdBQUFMLENBQUEsSUFBQUEsQ0FBQSxDQUFBTSxTQUFBLFlB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LEtBQUssRUFBTEE7SUFBSyxDQUFFLEdBQUcsSUFBSyxDQUFBO0lBQUFuQixRQUFBLEVBRTNFeEIsSUFBQSxDQUFBLEtBQUEsRUFBQTtNQUFLZ0IsU0FBUyxFQUFFK0IsT0FBTyxDQUFDLFFBQVEsQ0FBQztNQUFFeEIsT0FBTyxFQUFDLFdBQVc7TUFBQUMsUUFBQSxFQUNwRHhCLElBQUEsQ0FBQSxRQUFBLEVBQUE7UUFDRWdCLFNBQVMsRUFBRStCLE9BQU8sQ0FBQyxNQUFNLENBQUM7UUFDMUJ0QixFQUFFLEVBQUMsSUFBSTtRQUNQQyxFQUFFLEVBQUMsSUFBSTtRQUNQM0YsQ0FBQyxFQUFDLElBQUk7UUFDTjRGLElBQUksRUFBQyxNQUFNO1FBQ1hlLFdBQVcsRUFBRUE7TUFBVyxDQUFBO0lBQ3hCLENBQUE7RUFDRSxDQUFBLENBQUEsQ0FDRjtBQUVWLENBQUM7QUFFRCw0QkFBZXZDLElBQUksQ0FBQzhCLE9BQU8sQ0FBQyIsImZpbGUiOiJjb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lci5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiJ3VzZSBjbGllbnQnO1xudmFyIF9fYXdhaXRlciA9ICh0aGlzICYmIHRoaXMuX19hd2FpdGVyKSB8fCBmdW5jdGlvbiAodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XG4gICAgZnVuY3Rpb24gYWRvcHQodmFsdWUpIHsgcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgUCA/IHZhbHVlIDogbmV3IFAoZnVuY3Rpb24gKHJlc29sdmUpIHsgcmVzb2x2ZSh2YWx1ZSk7IH0pOyB9XG4gICAgcmV0dXJuIG5ldyAoUCB8fCAoUCA9IFByb21pc2UpKShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7XG4gICAgICAgIGZ1bmN0aW9uIGZ1bGZpbGxlZCh2YWx1ZSkgeyB0cnkgeyBzdGVwKGdlbmVyYXRvci5uZXh0KHZhbHVlKSk7IH0gY2F0Y2ggKGUpIHsgcmVqZWN0KGUpOyB9IH1cbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XG4gICAgICAgIGZ1bmN0aW9uIHN0ZXAocmVzdWx0KSB7IHJlc3VsdC5kb25lID8gcmVzb2x2ZShyZXN1bHQudmFsdWUpIDogYWRvcHQocmVzdWx0LnZhbHVlKS50aGVuKGZ1bGZpbGxlZCwgcmVqZWN0ZWQpOyB9XG4gICAgICAgIHN0ZXAoKGdlbmVyYXRvciA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSkubmV4dCgpKTtcbiAgICB9KTtcbn07XG52YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgbWVtbywgdXNlRWZmZWN0LCB1c2VJZCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IGNsYXNzbmFtZXMsIHsgam9pbkNscyB9IGZyb20gJy4uLy4uL3V0aWxzL2NsYXNzbmFtZXMnO1xuaW1wb3J0IGxvdHRpZVB1cmVKc29uIGZyb20gJy4vbG90dGllLXB1cmUuanNvbic7XG5pbXBvcnQgJy4vc3R5bGUnO1xuY29uc3QgREVGQVVMVF9TSVpFID0gMzI7XG5jb25zdCBCR19MT0dPX1JBVElPID0gMiAvIDM7XG5jb25zdCBCcmFuZEJnQ2lyY2xlID0gKHsgc2l6ZSwgY2xhc3NOYW1lIH0pID0+IHtcbiAgICBjb25zdCByYXdJZCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZ3JhZElkID0gYHNwaW5uZXItYmctJHtyYXdJZC5yZXBsYWNlKC9bXmEtekEtWjAtOV0vZywgJycpfWA7XG4gICAgcmV0dXJuIChfanN4cyhcInN2Z1wiLCB7IHdpZHRoOiBzaXplLCBoZWlnaHQ6IHNpemUsIHZpZXdCb3g6IFwiMCAwIDU2IDU3XCIsIGNsYXNzTmFtZTogY2xhc3NOYW1lLCBcImFyaWEtaGlkZGVuXCI6IFwidHJ1ZVwiLCBjaGlsZHJlbjogW19qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIyOFwiLCBjeTogXCIyOC43NVwiLCByOiBcIjI4XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZElkfSlgIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4cyhcInJhZGlhbEdyYWRpZW50XCIsIHsgaWQ6IGdyYWRJZCwgY3g6IFwiMFwiLCBjeTogXCIwXCIsIHI6IFwiMVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGdyYWRpZW50VHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtMzQuOTA4NSA5Mi42Njc4KSByb3RhdGUoLTQ1LjY1OTQpIHNjYWxlKDEwOC44NTMgMTAzLjY5OClcIiwgY2hpbGRyZW46IFtfanN4KFwic3RvcFwiLCB7IHN0b3BDb2xvcjogXCIjMDczMzg3XCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjAuMjE2ODUyXCIsIHN0b3BDb2xvcjogXCIjOTBBOENGXCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjAuNTY3MTAzXCIsIHN0b3BDb2xvcjogXCIjQ0JENkU4XCIgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjFcIiwgc3RvcENvbG9yOiBcIiNGOUY5RjlcIiB9KV0gfSkgfSldIH0pKTtcbn07XG5leHBvcnQgY29uc3QgU3Bpbm5lciA9IHByb3BzID0+IHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9ICdzcGlubmVyJywgdHlwZSA9ICdkZWZhdWx0Jywgc2l6ZSA9IERFRkFVTFRfU0laRSwgc3Ryb2tlV2lkdGggPSA0LCBjb2xvciwgdGl0bGUsIGJvZHkgfSA9IHByb3BzLCByZXN0ID0gX19yZXN0KHByb3BzLCBbXCJjbGFzc05hbWVcIiwgXCJzdHlsZVwiLCBcInByZWZpeENsc1wiLCBcInR5cGVcIiwgXCJzaXplXCIsIFwic3Ryb2tlV2lkdGhcIiwgXCJjb2xvclwiLCBcInRpdGxlXCIsIFwiYm9keVwiXSk7XG4gICAgY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMocHJlZml4Q2xzKTtcbiAgICBjb25zdCBsb3R0aWVSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgY29uc3QgaXNCcmFuZCA9IHR5cGUgPT09ICdicmFuZCcgfHwgdHlwZSA9PT0gJ2JyYW5kLWJnJztcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIWlzQnJhbmQgfHwgIWxvdHRpZVJlZi5jdXJyZW50KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBsZXQgaW5zdGFuY2UgPSBudWxsO1xuICAgICAgICBsZXQgZGVzdHJveWVkID0gZmFsc2U7XG4gICAgICAgICgoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IGxvdHRpZSA9ICh5aWVsZCBpbXBvcnQoJ2xvdHRpZS13ZWInKSkuZGVmYXVsdDtcbiAgICAgICAgICAgIGlmIChkZXN0cm95ZWQgfHwgIWxvdHRpZVJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGluc3RhbmNlID0gbG90dGllLmxvYWRBbmltYXRpb24oe1xuICAgICAgICAgICAgICAgIGNvbnRhaW5lcjogbG90dGllUmVmLmN1cnJlbnQsXG4gICAgICAgICAgICAgICAgcmVuZGVyZXI6ICdzdmcnLFxuICAgICAgICAgICAgICAgIGxvb3A6IHRydWUsXG4gICAgICAgICAgICAgICAgYXV0b3BsYXk6IHRydWUsXG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uRGF0YTogbG90dGllUHVyZUpzb24sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSkpKCk7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBkZXN0cm95ZWQgPSB0cnVlO1xuICAgICAgICAgICAgaWYgKGluc3RhbmNlKSB7XG4gICAgICAgICAgICAgICAgaW5zdGFuY2UuZGVzdHJveSgpO1xuICAgICAgICAgICAgICAgIGluc3RhbmNlID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9LCBbaXNCcmFuZF0pO1xuICAgIGlmIChpc0JyYW5kKSB7XG4gICAgICAgIGNvbnN0IGhhc0JnID0gdHlwZSA9PT0gJ2JyYW5kLWJnJztcbiAgICAgICAgY29uc3QgbG90dGllU2l6ZSA9IGhhc0JnID8gc2l6ZSAqIEJHX0xPR09fUkFUSU8gOiBzaXplO1xuICAgICAgICBjb25zdCBsb3R0aWVTdHlsZSA9IHsgd2lkdGg6IGxvdHRpZVNpemUsIGhlaWdodDogbG90dGllU2l6ZSB9O1xuICAgICAgICByZXR1cm4gKF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgY2xhc3NOYW1lOiBjbGFzc2VzKHZvaWQgMCwgam9pbkNscyhjbGFzc2VzKCdicmFuZCcpLCBoYXNCZyAmJiBjbGFzc2VzKCdicmFuZC1iZycpLCBjbGFzc05hbWUpKSwgY2hpbGRyZW46IFtoYXNCZyA/IChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnaWNvbi13cmFwJyksIHN0eWxlOiB7IHdpZHRoOiBzaXplLCBoZWlnaHQ6IHNpemUgfSwgY2hpbGRyZW46IFtfanN4KEJyYW5kQmdDaXJjbGUsIHsgc2l6ZTogc2l6ZSwgY2xhc3NOYW1lOiBjbGFzc2VzKCdiZycpIH0pLCBfanN4KFwiZGl2XCIsIHsgcmVmOiBsb3R0aWVSZWYsIGNsYXNzTmFtZTogY2xhc3NlcygnbG90dGllJyksIHN0eWxlOiBsb3R0aWVTdHlsZSB9KV0gfSkpIDogKF9qc3goXCJkaXZcIiwgeyByZWY6IGxvdHRpZVJlZiwgY2xhc3NOYW1lOiBjbGFzc2VzKCdsb3R0aWUnKSwgc3R5bGU6IGxvdHRpZVN0eWxlIH0pKSwgKHRpdGxlIHx8IGJvZHkpICYmIChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygnY29udGVudCcpLCBjaGlsZHJlbjogW3RpdGxlICYmIChoYXNCZ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gX2pzeChUeXBvZ3JhcGh5LkhlYWRsaW5lLCB7IHNpemU6IFwic21cIiwgY29sb3I6IFwiZGVmYXVsdFwiLCBjbGFzc05hbWU6IGNsYXNzZXMoJ3RpdGxlJyksIGNoaWxkcmVuOiB0aXRsZSB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogXCJtZFwiLCBjb2xvcjogXCJkZWZhdWx0LXRlcnRpYXJ5XCIsIGNsYXNzTmFtZTogY2xhc3NlcygndGl0bGUnKSwgY2hpbGRyZW46IHRpdGxlIH0pKSwgYm9keSAmJiAoX2pzeChUeXBvZ3JhcGh5LkJvZHksIHsgc2l6ZTogXCJtZFwiLCBjb2xvcjogXCJkZWZhdWx0LXRlcnRpYXJ5XCIsIGNsYXNzTmFtZTogY2xhc3NlcygnYm9keScpLCBjaGlsZHJlbjogYm9keSB9KSldIH0pKV0gfSkpKTtcbiAgICB9XG4gICAgcmV0dXJuIChfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgcm9sZTogXCJwcm9ncmVzc2JhclwiLCBjbGFzc05hbWU6IGNsYXNzZXModm9pZCAwLCBjbGFzc05hbWUpLCBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHsgd2lkdGg6IHNpemUsIGhlaWdodDogc2l6ZSB9LCBzdHlsZSksIChjb2xvciA/IHsgY29sb3IgfSA6IG51bGwpKSwgY2hpbGRyZW46IF9qc3goXCJzdmdcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoJ2NpcmNsZScpLCB2aWV3Qm94OiBcIjAgMCA1MCA1MFwiLCBjaGlsZHJlbjogX2pzeChcImNpcmNsZVwiLCB7IGNsYXNzTmFtZTogY2xhc3NlcygncGF0aCcpLCBjeDogXCIyNVwiLCBjeTogXCIyNVwiLCByOiBcIjIwXCIsIGZpbGw6IFwibm9uZVwiLCBzdHJva2VXaWR0aDogc3Ryb2tlV2lkdGggfSkgfSkgfSkpKTtcbn07XG5leHBvcnQgZGVmYXVsdCBtZW1vKFNwaW5uZXIpOyJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|