@pie-lib/config-ui 11.30.3-next.163 → 11.30.4-next.0

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.
Files changed (59) hide show
  1. package/CHANGELOG.md +0 -23
  2. package/lib/__tests__/alert-dialog.test.js +262 -0
  3. package/lib/__tests__/checkbox.test.js +227 -0
  4. package/lib/__tests__/choice-utils.test.js +14 -0
  5. package/lib/__tests__/form-section.test.js +252 -0
  6. package/lib/__tests__/help.test.js +270 -0
  7. package/lib/__tests__/input.test.js +268 -0
  8. package/lib/__tests__/langs.test.js +541 -0
  9. package/lib/__tests__/number-text-field-custom.test.js +362 -0
  10. package/lib/__tests__/number-text-field.test.js +421 -0
  11. package/lib/__tests__/radio-with-label.test.js +233 -0
  12. package/lib/__tests__/settings-panel.test.js +184 -0
  13. package/lib/__tests__/settings.test.js +653 -0
  14. package/lib/__tests__/tabs.test.js +211 -0
  15. package/lib/__tests__/two-choice.test.js +124 -0
  16. package/lib/__tests__/with-stateful-model.test.js +221 -0
  17. package/lib/alert-dialog.js +1 -1
  18. package/lib/checkbox.js +1 -1
  19. package/lib/choice-configuration/__tests__/feedback-menu.test.js +287 -0
  20. package/lib/choice-configuration/__tests__/index.test.js +253 -0
  21. package/lib/choice-configuration/feedback-menu.js +1 -1
  22. package/lib/choice-configuration/index.js +1 -1
  23. package/lib/choice-utils.js +1 -1
  24. package/lib/feedback-config/__tests__/feedback-config.test.js +201 -0
  25. package/lib/feedback-config/__tests__/feedback-selector.test.js +177 -0
  26. package/lib/feedback-config/feedback-selector.js +1 -1
  27. package/lib/feedback-config/group.js +1 -1
  28. package/lib/feedback-config/index.js +1 -1
  29. package/lib/form-section.js +1 -1
  30. package/lib/help.js +1 -1
  31. package/lib/index.js +1 -1
  32. package/lib/input.js +1 -1
  33. package/lib/inputs.js +1 -1
  34. package/lib/langs.js +1 -1
  35. package/lib/layout/__tests__/config.layout.test.js +70 -0
  36. package/lib/layout/__tests__/layout-content.test.js +6 -0
  37. package/lib/layout/config-layout.js +1 -1
  38. package/lib/layout/index.js +1 -1
  39. package/lib/layout/layout-contents.js +1 -1
  40. package/lib/layout/settings-box.js +1 -1
  41. package/lib/mui-box/index.js +1 -1
  42. package/lib/number-text-field-custom.js +1 -1
  43. package/lib/number-text-field.js +1 -1
  44. package/lib/radio-with-label.js +1 -1
  45. package/lib/settings/display-size.js +1 -1
  46. package/lib/settings/index.js +1 -1
  47. package/lib/settings/panel.js +1 -1
  48. package/lib/settings/settings-radio-label.js +1 -1
  49. package/lib/settings/toggle.js +1 -1
  50. package/lib/tabs/index.js +1 -1
  51. package/lib/tags-input/__tests__/index.test.js +183 -0
  52. package/lib/tags-input/index.js +1 -1
  53. package/lib/two-choice.js +1 -1
  54. package/lib/with-stateful-model.js +1 -1
  55. package/package.json +5 -5
  56. package/esm/index.css +0 -847
  57. package/esm/index.js +0 -142375
  58. package/esm/index.js.map +0 -1
  59. package/esm/package.json +0 -3
@@ -0,0 +1,253 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
5
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _react2 = require("@testing-library/react");
9
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
10
+ var _index = require("../index");
11
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
12
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
+ jest.mock('@pie-lib/editable-html', function () {
14
+ return {
15
+ __esModule: true,
16
+ "default": function _default(_ref) {
17
+ var markup = _ref.markup,
18
+ _onChange = _ref.onChange,
19
+ disabled = _ref.disabled;
20
+ return /*#__PURE__*/_react["default"].createElement("textarea", {
21
+ "data-testid": "editable-html",
22
+ defaultValue: markup || '',
23
+ onChange: function onChange(e) {
24
+ return _onChange(e.target.value);
25
+ },
26
+ disabled: disabled
27
+ });
28
+ }
29
+ };
30
+ });
31
+ var defaultFeedback = {
32
+ correct: 'Correct',
33
+ incorrect: 'Incorrect'
34
+ };
35
+ var data = {
36
+ correct: true,
37
+ value: 'foo',
38
+ label: 'Foo',
39
+ feedback: {
40
+ type: 'custom'
41
+ }
42
+ };
43
+ var classes = {
44
+ choiceConfiguration: 'choiceConfiguration'
45
+ };
46
+ describe('ChoiceConfiguration', function () {
47
+ var onChange = jest.fn();
48
+ beforeEach(function () {
49
+ onChange.mockClear();
50
+ });
51
+ describe('rendering', function () {
52
+ it('renders correctly with default props', function () {
53
+ var _render = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
54
+ classes: classes,
55
+ defaultFeedback: defaultFeedback,
56
+ data: data,
57
+ onChange: onChange
58
+ })),
59
+ container = _render.container;
60
+ expect(container.firstChild).toBeInTheDocument();
61
+ });
62
+ it('renders with checked state', function () {
63
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
64
+ classes: classes,
65
+ defaultFeedback: defaultFeedback,
66
+ data: data,
67
+ onChange: onChange,
68
+ mode: "checkbox"
69
+ }));
70
+ var checkbox = _react2.screen.getByRole('checkbox');
71
+ expect(checkbox).toBeChecked();
72
+ });
73
+ it('renders without feedback when allowFeedBack is false', function () {
74
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
75
+ allowFeedBack: false,
76
+ classes: classes,
77
+ defaultFeedback: defaultFeedback,
78
+ data: data,
79
+ onChange: onChange
80
+ }));
81
+ expect(_react2.screen.queryByRole('button', {
82
+ name: /feedback/i
83
+ })).not.toBeInTheDocument();
84
+ });
85
+ it('renders without delete button when allowDelete is false', function () {
86
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
87
+ allowDelete: false,
88
+ classes: classes,
89
+ defaultFeedback: defaultFeedback,
90
+ data: data,
91
+ onChange: onChange
92
+ }));
93
+ expect(_react2.screen.queryByRole('button', {
94
+ name: /delete/i
95
+ })).not.toBeInTheDocument();
96
+ });
97
+ });
98
+ describe('user interactions', function () {
99
+ it('calls onChange when label is edited', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
100
+ var user, editableHtmlElements, editableHtml;
101
+ return _regenerator["default"].wrap(function (_context) {
102
+ while (1) switch (_context.prev = _context.next) {
103
+ case 0:
104
+ user = _userEvent["default"].setup();
105
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
106
+ classes: classes,
107
+ defaultFeedback: defaultFeedback,
108
+ data: data,
109
+ onChange: onChange
110
+ }));
111
+ editableHtmlElements = _react2.screen.getAllByTestId('editable-html');
112
+ editableHtml = editableHtmlElements[0];
113
+ _context.next = 1;
114
+ return user.clear(editableHtml);
115
+ case 1:
116
+ _context.next = 2;
117
+ return user.type(editableHtml, 'new label');
118
+ case 2:
119
+ expect(onChange).toHaveBeenCalled();
120
+ expect(onChange).toHaveBeenCalledWith(expect.objectContaining({
121
+ label: expect.stringContaining('new label')
122
+ }));
123
+ case 3:
124
+ case "end":
125
+ return _context.stop();
126
+ }
127
+ }, _callee);
128
+ })));
129
+ it('calls onChange when checkbox is toggled', /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2() {
130
+ var user, checkbox;
131
+ return _regenerator["default"].wrap(function (_context2) {
132
+ while (1) switch (_context2.prev = _context2.next) {
133
+ case 0:
134
+ user = _userEvent["default"].setup();
135
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
136
+ classes: classes,
137
+ defaultFeedback: defaultFeedback,
138
+ data: _objectSpread(_objectSpread({}, data), {}, {
139
+ correct: false
140
+ }),
141
+ onChange: onChange,
142
+ mode: "checkbox"
143
+ }));
144
+ checkbox = _react2.screen.getByRole('checkbox');
145
+ _context2.next = 1;
146
+ return user.click(checkbox);
147
+ case 1:
148
+ expect(onChange).toHaveBeenCalledWith(expect.objectContaining({
149
+ correct: true
150
+ }));
151
+ case 2:
152
+ case "end":
153
+ return _context2.stop();
154
+ }
155
+ }, _callee2);
156
+ })));
157
+ });
158
+ describe('prop variations', function () {
159
+ it('renders with radio mode instead of checkbox', function () {
160
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
161
+ classes: classes,
162
+ defaultFeedback: defaultFeedback,
163
+ data: data,
164
+ onChange: onChange,
165
+ mode: "radio"
166
+ }));
167
+ var radio = _react2.screen.getByRole('radio');
168
+ expect(radio).toBeInTheDocument();
169
+ });
170
+ it('renders with disabled state', function () {
171
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
172
+ classes: classes,
173
+ defaultFeedback: defaultFeedback,
174
+ data: data,
175
+ onChange: onChange,
176
+ disabled: true,
177
+ mode: "checkbox"
178
+ }));
179
+ var checkbox = _react2.screen.getByRole('checkbox');
180
+ expect(checkbox).toBeInTheDocument();
181
+ });
182
+ it('renders with custom feedback type', function () {
183
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
184
+ classes: classes,
185
+ defaultFeedback: defaultFeedback,
186
+ data: _objectSpread(_objectSpread({}, data), {}, {
187
+ feedback: {
188
+ type: 'custom'
189
+ }
190
+ }),
191
+ onChange: onChange,
192
+ mode: "checkbox"
193
+ }));
194
+ var editableElements = _react2.screen.getAllByTestId('editable-html');
195
+ expect(editableElements.length).toBeGreaterThan(0);
196
+ });
197
+ it('renders with incorrect answer', function () {
198
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
199
+ classes: classes,
200
+ defaultFeedback: defaultFeedback,
201
+ data: _objectSpread(_objectSpread({}, data), {}, {
202
+ correct: false
203
+ }),
204
+ onChange: onChange,
205
+ mode: "checkbox"
206
+ }));
207
+ var checkbox = _react2.screen.getByRole('checkbox');
208
+ expect(checkbox).not.toBeChecked();
209
+ });
210
+ });
211
+ describe('edge cases', function () {
212
+ it('handles data with empty label', function () {
213
+ (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
214
+ classes: classes,
215
+ defaultFeedback: defaultFeedback,
216
+ data: _objectSpread(_objectSpread({}, data), {}, {
217
+ label: ''
218
+ }),
219
+ onChange: onChange
220
+ }));
221
+ var editableElements = _react2.screen.getAllByTestId('editable-html');
222
+ expect(editableElements.length).toBeGreaterThan(0);
223
+ });
224
+ it('handles multiple feedback types', function () {
225
+ var _render2 = (0, _react2.render)(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
226
+ classes: classes,
227
+ defaultFeedback: defaultFeedback,
228
+ data: _objectSpread(_objectSpread({}, data), {}, {
229
+ feedback: {
230
+ type: 'default'
231
+ }
232
+ }),
233
+ onChange: onChange
234
+ })),
235
+ rerender = _render2.rerender;
236
+ var editableElements = _react2.screen.getAllByTestId('editable-html');
237
+ expect(editableElements.length).toBeGreaterThan(0);
238
+ rerender(/*#__PURE__*/_react["default"].createElement(_index.ChoiceConfiguration, {
239
+ classes: classes,
240
+ defaultFeedback: defaultFeedback,
241
+ data: _objectSpread(_objectSpread({}, data), {}, {
242
+ feedback: {
243
+ type: 'custom'
244
+ }
245
+ }),
246
+ onChange: onChange
247
+ }));
248
+ editableElements = _react2.screen.getAllByTestId('editable-html');
249
+ expect(editableElements.length).toBeGreaterThan(0);
250
+ });
251
+ });
252
+ });
253
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfdXNlckV2ZW50IiwiX2luZGV4Iiwib3duS2V5cyIsImUiLCJyIiwidCIsIk9iamVjdCIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJvIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJhcHBseSIsIl9vYmplY3RTcHJlYWQiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJmb3JFYWNoIiwiX2RlZmluZVByb3BlcnR5MiIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwiZGVmaW5lUHJvcGVydHkiLCJqZXN0IiwibW9jayIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiX3JlZiIsIm1hcmt1cCIsIm9uQ2hhbmdlIiwiZGlzYWJsZWQiLCJjcmVhdGVFbGVtZW50IiwiZGVmYXVsdFZhbHVlIiwidGFyZ2V0IiwidmFsdWUiLCJkZWZhdWx0RmVlZGJhY2siLCJjb3JyZWN0IiwiaW5jb3JyZWN0IiwiZGF0YSIsImxhYmVsIiwiZmVlZGJhY2siLCJ0eXBlIiwiY2xhc3NlcyIsImNob2ljZUNvbmZpZ3VyYXRpb24iLCJkZXNjcmliZSIsImZuIiwiYmVmb3JlRWFjaCIsIm1vY2tDbGVhciIsIml0IiwiX3JlbmRlciIsInJlbmRlciIsIkNob2ljZUNvbmZpZ3VyYXRpb24iLCJjb250YWluZXIiLCJleHBlY3QiLCJmaXJzdENoaWxkIiwidG9CZUluVGhlRG9jdW1lbnQiLCJtb2RlIiwiY2hlY2tib3giLCJzY3JlZW4iLCJnZXRCeVJvbGUiLCJ0b0JlQ2hlY2tlZCIsImFsbG93RmVlZEJhY2siLCJxdWVyeUJ5Um9sZSIsIm5hbWUiLCJub3QiLCJhbGxvd0RlbGV0ZSIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwidXNlciIsImVkaXRhYmxlSHRtbEVsZW1lbnRzIiwiZWRpdGFibGVIdG1sIiwid3JhcCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJ1c2VyRXZlbnQiLCJzZXR1cCIsImdldEFsbEJ5VGVzdElkIiwiY2xlYXIiLCJ0b0hhdmVCZWVuQ2FsbGVkIiwidG9IYXZlQmVlbkNhbGxlZFdpdGgiLCJvYmplY3RDb250YWluaW5nIiwic3RyaW5nQ29udGFpbmluZyIsInN0b3AiLCJfY2FsbGVlMiIsIl9jb250ZXh0MiIsImNsaWNrIiwicmFkaW8iLCJlZGl0YWJsZUVsZW1lbnRzIiwidG9CZUdyZWF0ZXJUaGFuIiwiX3JlbmRlcjIiLCJyZXJlbmRlciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jaG9pY2UtY29uZmlndXJhdGlvbi9fX3Rlc3RzX18vaW5kZXgudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHJlbmRlciwgc2NyZWVuIH0gZnJvbSAnQHRlc3RpbmctbGlicmFyeS9yZWFjdCc7XG5pbXBvcnQgdXNlckV2ZW50IGZyb20gJ0B0ZXN0aW5nLWxpYnJhcnkvdXNlci1ldmVudCc7XG5pbXBvcnQgeyBDaG9pY2VDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vaW5kZXgnO1xuXG5qZXN0Lm1vY2soJ0BwaWUtbGliL2VkaXRhYmxlLWh0bWwnLCAoKSA9PiAoe1xuICBfX2VzTW9kdWxlOiB0cnVlLFxuICBkZWZhdWx0OiAoeyBtYXJrdXAsIG9uQ2hhbmdlLCBkaXNhYmxlZCB9KSA9PiAoXG4gICAgPHRleHRhcmVhXG4gICAgICBkYXRhLXRlc3RpZD1cImVkaXRhYmxlLWh0bWxcIlxuICAgICAgZGVmYXVsdFZhbHVlPXttYXJrdXAgfHwgJyd9XG4gICAgICBvbkNoYW5nZT17KGUpID0+IG9uQ2hhbmdlKGUudGFyZ2V0LnZhbHVlKX1cbiAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAvPlxuICApLFxufSkpO1xuXG5jb25zdCBkZWZhdWx0RmVlZGJhY2sgPSB7XG4gIGNvcnJlY3Q6ICdDb3JyZWN0JyxcbiAgaW5jb3JyZWN0OiAnSW5jb3JyZWN0Jyxcbn07XG5cbmNvbnN0IGRhdGEgPSB7XG4gIGNvcnJlY3Q6IHRydWUsXG4gIHZhbHVlOiAnZm9vJyxcbiAgbGFiZWw6ICdGb28nLFxuICBmZWVkYmFjazoge1xuICAgIHR5cGU6ICdjdXN0b20nLFxuICB9LFxufTtcblxuY29uc3QgY2xhc3NlcyA9IHtcbiAgY2hvaWNlQ29uZmlndXJhdGlvbjogJ2Nob2ljZUNvbmZpZ3VyYXRpb24nLFxufTtcblxuZGVzY3JpYmUoJ0Nob2ljZUNvbmZpZ3VyYXRpb24nLCAoKSA9PiB7XG4gIGNvbnN0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIG9uQ2hhbmdlLm1vY2tDbGVhcigpO1xuICB9KTtcblxuICBkZXNjcmliZSgncmVuZGVyaW5nJywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzIGNvcnJlY3RseSB3aXRoIGRlZmF1bHQgcHJvcHMnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyKFxuICAgICAgICA8Q2hvaWNlQ29uZmlndXJhdGlvbiBjbGFzc2VzPXtjbGFzc2VzfSBkZWZhdWx0RmVlZGJhY2s9e2RlZmF1bHRGZWVkYmFja30gZGF0YT17ZGF0YX0gb25DaGFuZ2U9e29uQ2hhbmdlfSAvPixcbiAgICAgICk7XG4gICAgICBleHBlY3QoY29udGFpbmVyLmZpcnN0Q2hpbGQpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyB3aXRoIGNoZWNrZWQgc3RhdGUnLCAoKSA9PiB7XG4gICAgICByZW5kZXIoXG4gICAgICAgIDxDaG9pY2VDb25maWd1cmF0aW9uXG4gICAgICAgICAgY2xhc3Nlcz17Y2xhc3Nlc31cbiAgICAgICAgICBkZWZhdWx0RmVlZGJhY2s9e2RlZmF1bHRGZWVkYmFja31cbiAgICAgICAgICBkYXRhPXtkYXRhfVxuICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICBtb2RlPVwiY2hlY2tib3hcIlxuICAgICAgICAvPixcbiAgICAgICk7XG4gICAgICBjb25zdCBjaGVja2JveCA9IHNjcmVlbi5nZXRCeVJvbGUoJ2NoZWNrYm94Jyk7XG4gICAgICBleHBlY3QoY2hlY2tib3gpLnRvQmVDaGVja2VkKCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGZlZWRiYWNrIHdoZW4gYWxsb3dGZWVkQmFjayBpcyBmYWxzZScsICgpID0+IHtcbiAgICAgIHJlbmRlcihcbiAgICAgICAgPENob2ljZUNvbmZpZ3VyYXRpb25cbiAgICAgICAgICBhbGxvd0ZlZWRCYWNrPXtmYWxzZX1cbiAgICAgICAgICBjbGFzc2VzPXtjbGFzc2VzfVxuICAgICAgICAgIGRlZmF1bHRGZWVkYmFjaz17ZGVmYXVsdEZlZWRiYWNrfVxuICAgICAgICAgIGRhdGE9e2RhdGF9XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAvPixcbiAgICAgICk7XG4gICAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6IC9mZWVkYmFjay9pIH0pKS5ub3QudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZW5kZXJzIHdpdGhvdXQgZGVsZXRlIGJ1dHRvbiB3aGVuIGFsbG93RGVsZXRlIGlzIGZhbHNlJywgKCkgPT4ge1xuICAgICAgcmVuZGVyKFxuICAgICAgICA8Q2hvaWNlQ29uZmlndXJhdGlvblxuICAgICAgICAgIGFsbG93RGVsZXRlPXtmYWxzZX1cbiAgICAgICAgICBjbGFzc2VzPXtjbGFzc2VzfVxuICAgICAgICAgIGRlZmF1bHRGZWVkYmFjaz17ZGVmYXVsdEZlZWRiYWNrfVxuICAgICAgICAgIGRhdGE9e2RhdGF9XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAvPixcbiAgICAgICk7XG4gICAgICBleHBlY3Qoc2NyZWVuLnF1ZXJ5QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6IC9kZWxldGUvaSB9KSkubm90LnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCd1c2VyIGludGVyYWN0aW9ucycsICgpID0+IHtcbiAgICBpdCgnY2FsbHMgb25DaGFuZ2Ugd2hlbiBsYWJlbCBpcyBlZGl0ZWQnLCBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCB1c2VyID0gdXNlckV2ZW50LnNldHVwKCk7XG4gICAgICByZW5kZXIoXG4gICAgICAgIDxDaG9pY2VDb25maWd1cmF0aW9uIGNsYXNzZXM9e2NsYXNzZXN9IGRlZmF1bHRGZWVkYmFjaz17ZGVmYXVsdEZlZWRiYWNrfSBkYXRhPXtkYXRhfSBvbkNoYW5nZT17b25DaGFuZ2V9IC8+LFxuICAgICAgKTtcblxuICAgICAgY29uc3QgZWRpdGFibGVIdG1sRWxlbWVudHMgPSBzY3JlZW4uZ2V0QWxsQnlUZXN0SWQoJ2VkaXRhYmxlLWh0bWwnKTtcbiAgICAgIGNvbnN0IGVkaXRhYmxlSHRtbCA9IGVkaXRhYmxlSHRtbEVsZW1lbnRzWzBdO1xuICAgICAgYXdhaXQgdXNlci5jbGVhcihlZGl0YWJsZUh0bWwpO1xuICAgICAgYXdhaXQgdXNlci50eXBlKGVkaXRhYmxlSHRtbCwgJ25ldyBsYWJlbCcpO1xuXG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWQoKTtcbiAgICAgIGV4cGVjdChvbkNoYW5nZSkudG9IYXZlQmVlbkNhbGxlZFdpdGgoXG4gICAgICAgIGV4cGVjdC5vYmplY3RDb250YWluaW5nKHtcbiAgICAgICAgICBsYWJlbDogZXhwZWN0LnN0cmluZ0NvbnRhaW5pbmcoJ25ldyBsYWJlbCcpLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICBpdCgnY2FsbHMgb25DaGFuZ2Ugd2hlbiBjaGVja2JveCBpcyB0b2dnbGVkJywgYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgdXNlciA9IHVzZXJFdmVudC5zZXR1cCgpO1xuICAgICAgcmVuZGVyKFxuICAgICAgICA8Q2hvaWNlQ29uZmlndXJhdGlvblxuICAgICAgICAgIGNsYXNzZXM9e2NsYXNzZXN9XG4gICAgICAgICAgZGVmYXVsdEZlZWRiYWNrPXtkZWZhdWx0RmVlZGJhY2t9XG4gICAgICAgICAgZGF0YT17eyAuLi5kYXRhLCBjb3JyZWN0OiBmYWxzZSB9fVxuICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICBtb2RlPVwiY2hlY2tib3hcIlxuICAgICAgICAvPixcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IGNoZWNrYm94ID0gc2NyZWVuLmdldEJ5Um9sZSgnY2hlY2tib3gnKTtcbiAgICAgIGF3YWl0IHVzZXIuY2xpY2soY2hlY2tib3gpO1xuXG4gICAgICBleHBlY3Qob25DaGFuZ2UpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKFxuICAgICAgICBleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7XG4gICAgICAgICAgY29ycmVjdDogdHJ1ZSxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgncHJvcCB2YXJpYXRpb25zJywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzIHdpdGggcmFkaW8gbW9kZSBpbnN0ZWFkIG9mIGNoZWNrYm94JywgKCkgPT4ge1xuICAgICAgcmVuZGVyKFxuICAgICAgICA8Q2hvaWNlQ29uZmlndXJhdGlvblxuICAgICAgICAgIGNsYXNzZXM9e2NsYXNzZXN9XG4gICAgICAgICAgZGVmYXVsdEZlZWRiYWNrPXtkZWZhdWx0RmVlZGJhY2t9XG4gICAgICAgICAgZGF0YT17ZGF0YX1cbiAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgbW9kZT1cInJhZGlvXCJcbiAgICAgICAgLz4sXG4gICAgICApO1xuICAgICAgY29uc3QgcmFkaW8gPSBzY3JlZW4uZ2V0QnlSb2xlKCdyYWRpbycpO1xuICAgICAgZXhwZWN0KHJhZGlvKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgd2l0aCBkaXNhYmxlZCBzdGF0ZScsICgpID0+IHtcbiAgICAgIHJlbmRlcihcbiAgICAgICAgPENob2ljZUNvbmZpZ3VyYXRpb25cbiAgICAgICAgICBjbGFzc2VzPXtjbGFzc2VzfVxuICAgICAgICAgIGRlZmF1bHRGZWVkYmFjaz17ZGVmYXVsdEZlZWRiYWNrfVxuICAgICAgICAgIGRhdGE9e2RhdGF9XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgIGRpc2FibGVkPXt0cnVlfVxuICAgICAgICAgIG1vZGU9XCJjaGVja2JveFwiXG4gICAgICAgIC8+LFxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoZWNrYm94ID0gc2NyZWVuLmdldEJ5Um9sZSgnY2hlY2tib3gnKTtcbiAgICAgIGV4cGVjdChjaGVja2JveCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZW5kZXJzIHdpdGggY3VzdG9tIGZlZWRiYWNrIHR5cGUnLCAoKSA9PiB7XG4gICAgICByZW5kZXIoXG4gICAgICAgIDxDaG9pY2VDb25maWd1cmF0aW9uXG4gICAgICAgICAgY2xhc3Nlcz17Y2xhc3Nlc31cbiAgICAgICAgICBkZWZhdWx0RmVlZGJhY2s9e2RlZmF1bHRGZWVkYmFja31cbiAgICAgICAgICBkYXRhPXt7IC4uLmRhdGEsIGZlZWRiYWNrOiB7IHR5cGU6ICdjdXN0b20nIH0gfX1cbiAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgICAgbW9kZT1cImNoZWNrYm94XCJcbiAgICAgICAgLz4sXG4gICAgICApO1xuICAgICAgY29uc3QgZWRpdGFibGVFbGVtZW50cyA9IHNjcmVlbi5nZXRBbGxCeVRlc3RJZCgnZWRpdGFibGUtaHRtbCcpO1xuICAgICAgZXhwZWN0KGVkaXRhYmxlRWxlbWVudHMubGVuZ3RoKS50b0JlR3JlYXRlclRoYW4oMCk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVuZGVycyB3aXRoIGluY29ycmVjdCBhbnN3ZXInLCAoKSA9PiB7XG4gICAgICByZW5kZXIoXG4gICAgICAgIDxDaG9pY2VDb25maWd1cmF0aW9uXG4gICAgICAgICAgY2xhc3Nlcz17Y2xhc3Nlc31cbiAgICAgICAgICBkZWZhdWx0RmVlZGJhY2s9e2RlZmF1bHRGZWVkYmFja31cbiAgICAgICAgICBkYXRhPXt7IC4uLmRhdGEsIGNvcnJlY3Q6IGZhbHNlIH19XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgIG1vZGU9XCJjaGVja2JveFwiXG4gICAgICAgIC8+LFxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNoZWNrYm94ID0gc2NyZWVuLmdldEJ5Um9sZSgnY2hlY2tib3gnKTtcbiAgICAgIGV4cGVjdChjaGVja2JveCkubm90LnRvQmVDaGVja2VkKCk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdlZGdlIGNhc2VzJywgKCkgPT4ge1xuICAgIGl0KCdoYW5kbGVzIGRhdGEgd2l0aCBlbXB0eSBsYWJlbCcsICgpID0+IHtcbiAgICAgIHJlbmRlcihcbiAgICAgICAgPENob2ljZUNvbmZpZ3VyYXRpb25cbiAgICAgICAgICBjbGFzc2VzPXtjbGFzc2VzfVxuICAgICAgICAgIGRlZmF1bHRGZWVkYmFjaz17ZGVmYXVsdEZlZWRiYWNrfVxuICAgICAgICAgIGRhdGE9e3sgLi4uZGF0YSwgbGFiZWw6ICcnIH19XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAvPixcbiAgICAgICk7XG4gICAgICBjb25zdCBlZGl0YWJsZUVsZW1lbnRzID0gc2NyZWVuLmdldEFsbEJ5VGVzdElkKCdlZGl0YWJsZS1odG1sJyk7XG4gICAgICBleHBlY3QoZWRpdGFibGVFbGVtZW50cy5sZW5ndGgpLnRvQmVHcmVhdGVyVGhhbigwKTtcbiAgICB9KTtcblxuICAgIGl0KCdoYW5kbGVzIG11bHRpcGxlIGZlZWRiYWNrIHR5cGVzJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyByZXJlbmRlciB9ID0gcmVuZGVyKFxuICAgICAgICA8Q2hvaWNlQ29uZmlndXJhdGlvblxuICAgICAgICAgIGNsYXNzZXM9e2NsYXNzZXN9XG4gICAgICAgICAgZGVmYXVsdEZlZWRiYWNrPXtkZWZhdWx0RmVlZGJhY2t9XG4gICAgICAgICAgZGF0YT17eyAuLi5kYXRhLCBmZWVkYmFjazogeyB0eXBlOiAnZGVmYXVsdCcgfSB9fVxuICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgLz4sXG4gICAgICApO1xuXG4gICAgICBsZXQgZWRpdGFibGVFbGVtZW50cyA9IHNjcmVlbi5nZXRBbGxCeVRlc3RJZCgnZWRpdGFibGUtaHRtbCcpO1xuICAgICAgZXhwZWN0KGVkaXRhYmxlRWxlbWVudHMubGVuZ3RoKS50b0JlR3JlYXRlclRoYW4oMCk7XG5cbiAgICAgIHJlcmVuZGVyKFxuICAgICAgICA8Q2hvaWNlQ29uZmlndXJhdGlvblxuICAgICAgICAgIGNsYXNzZXM9e2NsYXNzZXN9XG4gICAgICAgICAgZGVmYXVsdEZlZWRiYWNrPXtkZWZhdWx0RmVlZGJhY2t9XG4gICAgICAgICAgZGF0YT17eyAuLi5kYXRhLCBmZWVkYmFjazogeyB0eXBlOiAnY3VzdG9tJyB9IH19XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAvPixcbiAgICAgICk7XG5cbiAgICAgIGVkaXRhYmxlRWxlbWVudHMgPSBzY3JlZW4uZ2V0QWxsQnlUZXN0SWQoJ2VkaXRhYmxlLWh0bWwnKTtcbiAgICAgIGV4cGVjdChlZGl0YWJsZUVsZW1lbnRzLmxlbmd0aCkudG9CZUdyZWF0ZXJUaGFuKDApO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxPQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxVQUFBLEdBQUFILHNCQUFBLENBQUFDLE9B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
@@ -126,4 +126,4 @@ var FeedbackMenu = exports["default"] = /*#__PURE__*/function (_React$Component2
126
126
  (0, _defineProperty2["default"])(FeedbackMenu, "defaultProps", {
127
127
  classes: {}
128
128
  });
129
- //# sourceMappingURL=feedback-menu.js.map
129
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfTWVudSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX01lbnVJdGVtIiwiX0ZlZWRiYWNrIiwiX0ljb25CdXR0b24iLCJfcHJvcFR5cGVzIiwiX3JlYWN0IiwiX2NhbGxTdXBlciIsInQiLCJvIiwiZSIsIl9nZXRQcm90b3R5cGVPZjIiLCJfcG9zc2libGVDb25zdHJ1Y3RvclJldHVybjIiLCJfaXNOYXRpdmVSZWZsZWN0Q29uc3RydWN0IiwiUmVmbGVjdCIsImNvbnN0cnVjdCIsImNvbnN0cnVjdG9yIiwiYXBwbHkiLCJCb29sZWFuIiwicHJvdG90eXBlIiwidmFsdWVPZiIsImNhbGwiLCJJY29uTWVudSIsImV4cG9ydHMiLCJfUmVhY3QkQ29tcG9uZW50IiwicHJvcHMiLCJfdGhpcyIsIl9jbGFzc0NhbGxDaGVjazIiLCJfZGVmaW5lUHJvcGVydHkyIiwiZXZlbnQiLCJzZXRTdGF0ZSIsIm9wZW4iLCJhbmNob3JFbCIsImN1cnJlbnRUYXJnZXQiLCJzdGF0ZSIsInVuZGVmaW5lZCIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwia2V5IiwidmFsdWUiLCJyZW5kZXIiLCJfdGhpczIiLCJfdGhpcyRwcm9wcyIsIm9wdHMiLCJvbkNsaWNrIiwia2V5cyIsIk9iamVjdCIsImhhbmRsZU1lbnVDbGljayIsImhhbmRsZVJlcXVlc3RDbG9zZSIsImNyZWF0ZUVsZW1lbnQiLCJoYW5kbGVDbGljayIsImljb25CdXR0b25FbGVtZW50IiwiaWQiLCJvbkNsb3NlIiwidHJhbnNpdGlvbkR1cmF0aW9uIiwiZW50ZXIiLCJleGl0IiwibWFwIiwiayIsImluZGV4IiwiUmVhY3QiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJvYmplY3QiLCJmdW5jIiwiaXNSZXF1aXJlZCIsImFueSIsIkZlZWRiYWNrTWVudSIsIl9SZWFjdCRDb21wb25lbnQyIiwiYXJndW1lbnRzIiwiX3RoaXMkcHJvcHMyIiwib25DaGFuZ2UiLCJjbGFzc2VzIiwidHlwZSIsImljb25Db2xvciIsInRvb2x0aXAiLCJpY29uIiwiY2xhc3NOYW1lIiwic2l6ZSIsImNvbG9yIiwibm9uZSIsImN1c3RvbSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jaG9pY2UtY29uZmlndXJhdGlvbi9mZWVkYmFjay1tZW51LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTWVudSBmcm9tICdAbXVpL21hdGVyaWFsL01lbnUnO1xuaW1wb3J0IE1lbnVJdGVtIGZyb20gJ0BtdWkvbWF0ZXJpYWwvTWVudUl0ZW0nO1xuaW1wb3J0IEFjdGlvbkZlZWRiYWNrIGZyb20gJ0BtdWkvaWNvbnMtbWF0ZXJpYWwvRmVlZGJhY2snO1xuaW1wb3J0IEljb25CdXR0b24gZnJvbSAnQG11aS9tYXRlcmlhbC9JY29uQnV0dG9uJztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgY2xhc3MgSWNvbk1lbnUgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIG9wdHM6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgb25DbGljazogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBpY29uQnV0dG9uRWxlbWVudDogUHJvcFR5cGVzLmFueSxcbiAgfTtcblxuICBjb25zdHJ1Y3Rvcihwcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgICB0aGlzLnN0YXRlID0ge1xuICAgICAgYW5jaG9yRWw6IHVuZGVmaW5lZCxcbiAgICAgIG9wZW46IGZhbHNlLFxuICAgIH07XG4gIH1cblxuICBoYW5kbGVDbGljayA9IChldmVudCkgPT4ge1xuICAgIHRoaXMuc2V0U3RhdGUoeyBvcGVuOiB0cnVlLCBhbmNob3JFbDogZXZlbnQuY3VycmVudFRhcmdldCB9KTtcbiAgfTtcblxuICBoYW5kbGVSZXF1ZXN0Q2xvc2UgPSAoKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7IG9wZW46IGZhbHNlIH0pO1xuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IG9wdHMsIG9uQ2xpY2sgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9wdHMpO1xuXG4gICAgY29uc3QgaGFuZGxlTWVudUNsaWNrID0gKGtleSkgPT4gKCkgPT4ge1xuICAgICAgb25DbGljayhrZXkpO1xuICAgICAgdGhpcy5oYW5kbGVSZXF1ZXN0Q2xvc2UoKTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXY+XG4gICAgICAgIDxkaXYgb25DbGljaz17dGhpcy5oYW5kbGVDbGlja30+e3RoaXMucHJvcHMuaWNvbkJ1dHRvbkVsZW1lbnR9PC9kaXY+XG4gICAgICAgIDxNZW51IGlkPVwic2ltcGxlLW1lbnVcIiBhbmNob3JFbD17dGhpcy5zdGF0ZS5hbmNob3JFbH0gb3Blbj17dGhpcy5zdGF0ZS5vcGVufSBvbkNsb3NlPXt0aGlzLmhhbmRsZVJlcXVlc3RDbG9zZX0gdHJhbnNpdGlvbkR1cmF0aW9uPXt7IGVudGVyOiAyMjUsIGV4aXQ6IDE5NSB9fT5cbiAgICAgICAgICB7a2V5cy5tYXAoKGssIGluZGV4KSA9PiAoXG4gICAgICAgICAgICA8TWVudUl0ZW0ga2V5PXtpbmRleH0gb25DbGljaz17aGFuZGxlTWVudUNsaWNrKGspfT5cbiAgICAgICAgICAgICAge29wdHNba119XG4gICAgICAgICAgICA8L01lbnVJdGVtPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L01lbnU+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZlZWRiYWNrTWVudSBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgdmFsdWU6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICB9O1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgY2xhc3Nlczoge30sXG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgdmFsdWUsIG9uQ2hhbmdlLCBjbGFzc2VzIH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHQgPSB2YWx1ZSAmJiB2YWx1ZS50eXBlO1xuICAgIGNvbnN0IGljb25Db2xvciA9IHQgPT09ICdjdXN0b20nIHx8IHQgPT09ICdkZWZhdWx0JyA/ICdwcmltYXJ5JyA6ICdkaXNhYmxlZCc7XG4gICAgY29uc3QgdG9vbHRpcCA9IHQgPT09ICdjdXN0b20nID8gJ0N1c3RvbSBGZWVkYmFjaycgOiB0ID09PSAnZGVmYXVsdCcgPyAnRGVmYXVsdCBGZWVkYmFjaycgOiAnRmVlZGJhY2sgZGlzYWJsZWQnO1xuXG4gICAgY29uc3QgaWNvbiA9IChcbiAgICAgIDxJY29uQnV0dG9uIGNsYXNzTmFtZT17Y2xhc3Nlcy5pY29ufSBhcmlhLWxhYmVsPXt0b29sdGlwfSBzaXplPVwibGFyZ2VcIj5cbiAgICAgICAgPEFjdGlvbkZlZWRiYWNrIGNvbG9yPXtpY29uQ29sb3J9IC8+XG4gICAgICA8L0ljb25CdXR0b24+XG4gICAgKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8SWNvbk1lbnVcbiAgICAgICAgaWNvbkJ1dHRvbkVsZW1lbnQ9e2ljb259XG4gICAgICAgIG9uQ2xpY2s9eyhrZXkpID0+IG9uQ2hhbmdlKGtleSl9XG4gICAgICAgIG9wdHM9e3tcbiAgICAgICAgICBub25lOiAnTm8gRmVlZGJhY2snLFxuICAgICAgICAgIGRlZmF1bHQ6ICdEZWZhdWx0JyxcbiAgICAgICAgICBjdXN0b206ICdDdXN0b20nLFxuICAgICAgICB9fVxuICAgICAgLz5cbiAgICApO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxLQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxTQUFB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
@@ -382,4 +382,4 @@ var ChoiceConfiguration = exports.ChoiceConfiguration = /*#__PURE__*/function (_
382
382
  allowDelete: true
383
383
  });
384
384
  var _default = exports["default"] = ChoiceConfiguration;
385
- //# sourceMappingURL=index.js.map
385
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJfc3R5bGVzIiwiX1RleHRGaWVsZCIsIl9EZWxldGUiLCJfU3ViZGlyZWN0b3J5QXJyb3dSaWdodCIsIl9JY29uQnV0dG9uIiwiX3JlbmRlclVpIiwiX2lucHV0cyIsIl9mZWVkYmFja01lbnUiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIl9jYWxsU3VwZXIiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsIkJvb2xlYW4iLCJwcm90b3R5cGUiLCJ2YWx1ZU9mIiwiY2FsbCIsIkVkaXRhYmxlSHRtbCIsIndpbmRvdyIsIlN0eWxlZEVkaXRvckhvbGRlciIsInN0eWxlZCIsIl9yZWYiLCJ0aGVtZSIsIm1hcmdpblRvcCIsInNwYWNpbmciLCJFZGl0YWJsZUh0bWxDb250YWluZXIiLCJfcmVmMiIsImxhYmVsIiwib25DaGFuZ2UiLCJ2YWx1ZSIsImNsYXNzTmFtZSIsImltYWdlU3VwcG9ydCIsImRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnMiLCJkaXNhYmxlZCIsInNwZWxsQ2hlY2siLCJub25FbXB0eSIsInBsdWdpbk9wdHMiLCJ0b29sYmFyT3B0cyIsImVycm9yIiwibWF4SW1hZ2VXaWR0aCIsIm1heEltYWdlSGVpZ2h0IiwidXBsb2FkU291bmRTdXBwb3J0IiwiX3JlZjIkbWF0aE1sT3B0aW9ucyIsIm1hdGhNbE9wdGlvbnMiLCJjcmVhdGVFbGVtZW50IiwiSW5wdXRDb250YWluZXIiLCJtYXJrdXAiLCJwbHVnaW5Qcm9wcyIsImxhbmd1YWdlQ2hhcmFjdGVyc1Byb3BzIiwibGFuZ3VhZ2UiLCJTdHlsZWRGZWVkYmFja0NvbnRhaW5lciIsInBvc2l0aW9uIiwiU3R5bGVkQXJyb3dJY29uIiwiQXJyb3dSaWdodCIsIl9yZWYzIiwiZmlsbCIsInBhbGV0dGUiLCJncmV5IiwibGVmdCIsInRvcCIsIlN0eWxlZFRleHRGaWVsZCIsIlRleHRGaWVsZCIsIl9yZWY0Iiwid2lkdGgiLCJTdHlsZWRFZGl0YWJsZUh0bWxDb250YWluZXIiLCJfcmVmNSIsIkZlZWRiYWNrIiwiX3JlZjYiLCJ0eXBlIiwiY29ycmVjdCIsImRlZmF1bHRzIiwiX3JlZjYkbWF0aE1sT3B0aW9ucyIsImluY29ycmVjdCIsInZhcmlhbnQiLCJTdHlsZWRJbmRleCIsIl9yZWY3IiwicGFkZGluZ1JpZ2h0IiwicGFkZGluZ1RvcCIsIlN0eWxlZFRvcFJvdyIsImRpc3BsYXkiLCJhbGlnbkl0ZW1zIiwiU3R5bGVkVG9nZ2xlIiwiX3JlZjgiLCJmbGV4IiwicGFkZGluZ0JvdHRvbSIsIm1hcmdpblJpZ2h0IiwibWFyZ2luTGVmdCIsIlN0eWxlZEZlZWRiYWNrIiwiX3JlZjkiLCJwYWRkaW5nTGVmdCIsIlN0eWxlZEZlZWRiYWNrSWNvbiIsIm1hcmdpbiIsIlN0eWxlZERlbGV0ZUljb24iLCJTdHlsZWREZWxldGUiLCJfcmVmMCIsIlN0eWxlZE1pZGRsZUNvbHVtbiIsIl9yZWYxIiwiZmxleERpcmVjdGlvbiIsIlN0eWxlZEVycm9yVGV4dCIsIl9yZWYxMCIsImZvbnRTaXplIiwidHlwb2dyYXBoeSIsImNvbG9yIiwibWFpbiIsIkNob2ljZUNvbmZpZ3VyYXRpb24iLCJleHBvcnRzIiwiX1JlYWN0JENvbXBvbmVudCIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsIl9sZW4iLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY29uY2F0Iiwia2V5IiwidXBkYXRlIiwiX3RoaXMkcHJvcHMiLCJwcm9wcyIsImRhdGEiLCJfY2hhbmdlRm4iLCJldmVudCIsInRhcmdldCIsImNoZWNrZWQiLCJfdGhpcyRwcm9wczIiLCJ2IiwiX3RoaXMkcHJvcHMzIiwiZmVlZGJhY2siLCJmYiIsIl90aGlzJHByb3BzNCIsInVuZGVmaW5lZCIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwicmVuZGVyIiwiX3RoaXMkcHJvcHM1IiwibW9kZSIsIm9uRGVsZXRlIiwiZGVmYXVsdEZlZWRiYWNrIiwiaW5kZXgiLCJub0xhYmVscyIsInVzZUxldHRlck9yZGVyaW5nIiwiYWxsb3dGZWVkQmFjayIsImFsbG93RGVsZXRlIiwibm9Db3JyZWN0QW5zd2VyRXJyb3IiLCJfdGhpcyRwcm9wczUkbWF0aE1sT3AiLCJJbnB1dFRvZ2dsZSIsIklucHV0Q2hlY2tib3giLCJJbnB1dFJhZGlvIiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwidG9VcHBlckNhc2UiLCJvbkNoZWNrZWRDaGFuZ2UiLCJvbkxhYmVsQ2hhbmdlIiwiX2V4dGVuZHMyIiwib25GZWVkYmFja1ZhbHVlQ2hhbmdlIiwib25GZWVkYmFja1R5cGVDaGFuZ2UiLCJvbkNsaWNrIiwic2l6ZSIsIlJlYWN0IiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwiYm9vbCIsInN0cmluZyIsIm9uZU9mIiwib2JqZWN0IiwiaXNSZXF1aXJlZCIsInNoYXBlIiwiZnVuYyIsIm51bWJlciIsImFkZCIsIl9kZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Nob2ljZS1jb25maWd1cmF0aW9uL2luZGV4LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwvc3R5bGVzJztcbmltcG9ydCBUZXh0RmllbGQgZnJvbSAnQG11aS9tYXRlcmlhbC9UZXh0RmllbGQnO1xuaW1wb3J0IEFjdGlvbkRlbGV0ZSBmcm9tICdAbXVpL2ljb25zLW1hdGVyaWFsL0RlbGV0ZSc7XG5pbXBvcnQgQXJyb3dSaWdodCBmcm9tICdAbXVpL2ljb25zLW1hdGVyaWFsL1N1YmRpcmVjdG9yeUFycm93UmlnaHQnO1xuaW1wb3J0IEljb25CdXR0b24gZnJvbSAnQG11aS9tYXRlcmlhbC9JY29uQnV0dG9uJztcbmltcG9ydCB7IElucHV0Q29udGFpbmVyIH0gZnJvbSAnQHBpZS1saWIvcmVuZGVyLXVpJztcbi8vIGltcG9ydCBFZGl0YWJsZUh0bWwgZnJvbSAnQHBpZS1saWIvZWRpdGFibGUtaHRtbCc7XG5pbXBvcnQgeyBJbnB1dENoZWNrYm94LCBJbnB1dFJhZGlvIH0gZnJvbSAnLi4vaW5wdXRzJztcbmltcG9ydCBGZWVkYmFja01lbnUgZnJvbSAnLi9mZWVkYmFjay1tZW51JztcblxuLy8gLSBtYXRocXVpbGwgZXJyb3Igd2luZG93IG5vdCBkZWZpbmVkXG5sZXQgRWRpdGFibGVIdG1sO1xuaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gIEVkaXRhYmxlSHRtbCA9IHJlcXVpcmUoJ0BwaWUtbGliL2VkaXRhYmxlLWh0bWwnKVsnZGVmYXVsdCddO1xufVxuXG5jb25zdCBTdHlsZWRFZGl0b3JIb2xkZXIgPSBzdHlsZWQoJ2RpdicpKCh7IHRoZW1lIH0pID0+ICh7XG4gIG1hcmdpblRvcDogdGhlbWUuc3BhY2luZygyKSxcbn0pKTtcblxuY29uc3QgRWRpdGFibGVIdG1sQ29udGFpbmVyID0gKHtcbiAgbGFiZWwsXG4gIG9uQ2hhbmdlLFxuICB2YWx1ZSxcbiAgY2xhc3NOYW1lLFxuICBpbWFnZVN1cHBvcnQsXG4gIGRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnMsXG4gIGRpc2FibGVkLFxuICBzcGVsbENoZWNrLFxuICBub25FbXB0eSxcbiAgcGx1Z2luT3B0cyxcbiAgdG9vbGJhck9wdHMsXG4gIGVycm9yLFxuICBtYXhJbWFnZVdpZHRoLFxuICBtYXhJbWFnZUhlaWdodCxcbiAgdXBsb2FkU291bmRTdXBwb3J0LFxuICBtYXRoTWxPcHRpb25zID0ge30sXG59KSA9PiB7XG5cbiAgcmV0dXJuIChcbiAgICA8SW5wdXRDb250YWluZXIgbGFiZWw9e2xhYmVsfSBjbGFzc05hbWU9e2NsYXNzTmFtZX0+XG4gICAgICA8U3R5bGVkRWRpdG9ySG9sZGVyPlxuICAgICAgICA8RWRpdGFibGVIdG1sXG4gICAgICAgICAgbWFya3VwPXt2YWx1ZSB8fCAnJ31cbiAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgc3BlbGxDaGVjaz17c3BlbGxDaGVja31cbiAgICAgICAgICBub25FbXB0eT17bm9uRW1wdHl9XG4gICAgICAgICAgb25DaGFuZ2U9e29uQ2hhbmdlfVxuICAgICAgICAgIGltYWdlU3VwcG9ydD17aW1hZ2VTdXBwb3J0fVxuICAgICAgICAgIGRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnM9e2Rpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnN9XG4gICAgICAgICAgcGx1Z2luUHJvcHM9e3BsdWdpbk9wdHMgfHwge319XG4gICAgICAgICAgdG9vbGJhck9wdHM9e3Rvb2xiYXJPcHRzfVxuICAgICAgICAgIGVycm9yPXtlcnJvcn1cbiAgICAgICAgICBtYXhJbWFnZVdpZHRoPXttYXhJbWFnZVdpZHRofVxuICAgICAgICAgIG1heEltYWdlSGVpZ2h0PXttYXhJbWFnZUhlaWdodH1cbiAgICAgICAgICB1cGxvYWRTb3VuZFN1cHBvcnQ9e3VwbG9hZFNvdW5kU3VwcG9ydH1cbiAgICAgICAgICBsYW5ndWFnZUNoYXJhY3RlcnNQcm9wcz17W3sgbGFuZ3VhZ2U6ICdzcGFuaXNoJyB9LCB7IGxhbmd1YWdlOiAnc3BlY2lhbCcgfV19XG4gICAgICAgICAgbWF0aE1sT3B0aW9ucz17bWF0aE1sT3B0aW9uc31cbiAgICAgICAgLz5cbiAgICAgIDwvU3R5bGVkRWRpdG9ySG9sZGVyPlxuICAgIDwvSW5wdXRDb250YWluZXI+XG4gICk7XG59O1xuXG5jb25zdCBTdHlsZWRGZWVkYmFja0NvbnRhaW5lciA9IHN0eWxlZCgnZGl2JykoKCkgPT4gKHtcbiAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG59KSk7XG5cbmNvbnN0IFN0eWxlZEFycm93SWNvbiA9IHN0eWxlZChBcnJvd1JpZ2h0KSgoeyB0aGVtZSB9KSA9PiAoe1xuICBmaWxsOiB0aGVtZS5wYWxldHRlLmdyZXlbNDAwXSxcbiAgbGVmdDogLTU2LFxuICBwb3NpdGlvbjogJ2Fic29sdXRlJyxcbiAgdG9wOiA0MCxcbn0pKTtcblxuY29uc3QgU3R5bGVkVGV4dEZpZWxkID0gc3R5bGVkKFRleHRGaWVsZCkoKHsgdGhlbWUgfSkgPT4gKHtcbiAgd2lkdGg6ICcxMDAlJyxcbiAgbWFyZ2luVG9wOiB0aGVtZS5zcGFjaW5nKDIpLFxufSkpO1xuXG5jb25zdCBTdHlsZWRFZGl0YWJsZUh0bWxDb250YWluZXIgPSBzdHlsZWQoRWRpdGFibGVIdG1sQ29udGFpbmVyKSgoeyB0aGVtZSB9KSA9PiAoe1xuICB3aWR0aDogJzEwMCUnLFxuICBtYXJnaW5Ub3A6IHRoZW1lLnNwYWNpbmcoMiksXG59KSk7XG5cbmNvbnN0IEZlZWRiYWNrID0gKHsgdmFsdWUsIG9uQ2hhbmdlLCB0eXBlLCBjb3JyZWN0LCBkZWZhdWx0cywgdG9vbGJhck9wdHMsIG1hdGhNbE9wdGlvbnMgPSB7fSB9KSA9PiB7XG4gIGlmICghdHlwZSB8fCB0eXBlID09PSAnbm9uZScpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfSBlbHNlIGlmICh0eXBlID09PSAnZGVmYXVsdCcpIHtcbiAgICByZXR1cm4gKFxuICAgICAgPFN0eWxlZEZlZWRiYWNrQ29udGFpbmVyPlxuICAgICAgICA8U3R5bGVkQXJyb3dJY29uIC8+XG4gICAgICAgIDxTdHlsZWRUZXh0RmllbGRcbiAgICAgICAgICBsYWJlbD1cIkZlZWRiYWNrIFRleHRcIlxuICAgICAgICAgIHZhbHVlPXtjb3JyZWN0ID8gZGVmYXVsdHMuY29ycmVjdCA6IGRlZmF1bHRzLmluY29ycmVjdH1cbiAgICAgICAgICB2YXJpYW50PVwic3RhbmRhcmRcIlxuICAgICAgICAvPlxuICAgICAgPC9TdHlsZWRGZWVkYmFja0NvbnRhaW5lcj5cbiAgICApO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkRmVlZGJhY2tDb250YWluZXI+XG4gICAgICAgIDxTdHlsZWRBcnJvd0ljb24gLz5cbiAgICAgICAgPFN0eWxlZEVkaXRhYmxlSHRtbENvbnRhaW5lclxuICAgICAgICAgIGxhYmVsPVwiRmVlZGJhY2sgVGV4dFwiXG4gICAgICAgICAgdmFsdWU9e3ZhbHVlfVxuICAgICAgICAgIG9uQ2hhbmdlPXtvbkNoYW5nZX1cbiAgICAgICAgICB0b29sYmFyT3B0cz17dG9vbGJhck9wdHN9XG4gICAgICAgICAgbWF0aE1sT3B0aW9ucz17bWF0aE1sT3B0aW9uc31cbiAgICAgICAgLz5cbiAgICAgIDwvU3R5bGVkRmVlZGJhY2tDb250YWluZXI+XG4gICAgKTtcbiAgfVxufTtcblxuY29uc3QgU3R5bGVkSW5kZXggPSBzdHlsZWQoJ3NwYW4nKSgoeyB0aGVtZSB9KSA9PiAoe1xuICBwYWRkaW5nUmlnaHQ6IHRoZW1lLnNwYWNpbmcoMSksXG4gIHBhZGRpbmdUb3A6IHRoZW1lLnNwYWNpbmcoMyksXG59KSk7XG5cbmNvbnN0IFN0eWxlZFRvcFJvdyA9IHN0eWxlZCgnZGl2JykoKCkgPT4gKHtcbiAgZGlzcGxheTogJ2ZsZXgnLFxuICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbn0pKTtcblxuY29uc3QgU3R5bGVkVG9nZ2xlID0gc3R5bGVkKCdkaXYnKSgoeyB0aGVtZSB9KSA9PiAoe1xuICBmbGV4OiAnMCAxIGF1dG8nLFxuICBwYWRkaW5nVG9wOiB0aGVtZS5zcGFjaW5nKDAuNSksXG4gIHBhZGRpbmdCb3R0b206IDAsXG4gIG1hcmdpblJpZ2h0OiAwLFxuICBtYXJnaW5MZWZ0OiB0aGVtZS5zcGFjaW5nKDEpLFxufSkpO1xuXG5jb25zdCBTdHlsZWRGZWVkYmFjayA9IHN0eWxlZCgnZGl2JykoKHsgdGhlbWUgfSkgPT4gKHtcbiAgZmxleDogJzAgMSBhdXRvJyxcbiAgcGFkZGluZ1RvcDogdGhlbWUuc3BhY2luZygyKSxcbiAgcGFkZGluZ0xlZnQ6IDAsXG4gIG1hcmdpbkxlZnQ6IDAsXG4gIG1hcmdpblJpZ2h0OiB0aGVtZS5zcGFjaW5nKDEpLFxufSkpO1xuXG5jb25zdCBTdHlsZWRGZWVkYmFja0ljb24gPSBzdHlsZWQoJ2RpdicpKCgpID0+ICh7XG4gIG1hcmdpbjogMCxcbiAgd2lkdGg6ICdpbmhlcml0Jyxcbn0pKTtcblxuY29uc3QgU3R5bGVkRGVsZXRlSWNvbiA9IHN0eWxlZCgnZGl2JykoKCkgPT4gKHtcbiAgbWFyZ2luOiAwLFxuICB3aWR0aDogJ2luaGVyaXQnLFxufSkpO1xuXG5jb25zdCBTdHlsZWREZWxldGUgPSBzdHlsZWQoJ2RpdicpKCh7IHRoZW1lIH0pID0+ICh7XG4gIGZsZXg6ICcwIDEgYXV0bycsXG4gIHBhZGRpbmdUb3A6IHRoZW1lLnNwYWNpbmcoMiksXG4gIHBhZGRpbmdMZWZ0OiAwLFxuICBtYXJnaW5MZWZ0OiAwLFxufSkpO1xuXG5jb25zdCBTdHlsZWRNaWRkbGVDb2x1bW4gPSBzdHlsZWQoJ2RpdicpKCh7IHRoZW1lIH0pID0+ICh7XG4gIGRpc3BsYXk6ICdmbGV4JyxcbiAgZmxleDogMSxcbiAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gIG1hcmdpblJpZ2h0OiB0aGVtZS5zcGFjaW5nKDEpLFxufSkpO1xuXG5jb25zdCBTdHlsZWRFcnJvclRleHQgPSBzdHlsZWQoJ2RpdicpKCh7IHRoZW1lIH0pID0+ICh7XG4gIGZvbnRTaXplOiB0aGVtZS50eXBvZ3JhcGh5LmZvbnRTaXplIC0gMixcbiAgY29sb3I6IHRoZW1lLnBhbGV0dGUuZXJyb3IubWFpbixcbn0pKTtcblxuZXhwb3J0IGNsYXNzIENob2ljZUNvbmZpZ3VyYXRpb24gZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIG5vTGFiZWxzOiBQcm9wVHlwZXMuYm9vbCxcbiAgICB1c2VMZXR0ZXJPcmRlcmluZzogUHJvcFR5cGVzLmJvb2wsXG4gICAgY2xhc3NOYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGVycm9yOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIG1vZGU6IFByb3BUeXBlcy5vbmVPZihbJ2NoZWNrYm94JywgJ3JhZGlvJ10pLFxuICAgIGRlZmF1bHRGZWVkYmFjazogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBub25FbXB0eTogUHJvcFR5cGVzLmJvb2wsXG4gICAgZGF0YTogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICAgIGxhYmVsOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgICB2YWx1ZTogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgY29ycmVjdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBmZWVkYmFjazogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICAgICAgdHlwZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgdmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICB9KSxcbiAgICB9KSxcbiAgICBvbkRlbGV0ZTogUHJvcFR5cGVzLmZ1bmMsXG4gICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICAgIGluZGV4OiBQcm9wVHlwZXMubnVtYmVyLFxuICAgIGltYWdlU3VwcG9ydDogUHJvcFR5cGVzLnNoYXBlKHtcbiAgICAgIGFkZDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGRlbGV0ZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9KSxcbiAgICBkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBhbGxvd0ZlZWRCYWNrOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBhbGxvd0RlbGV0ZTogUHJvcFR5cGVzLmJvb2wsXG4gICAgbm9Db3JyZWN0QW5zd2VyRXJyb3I6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgc3BlbGxDaGVjazogUHJvcFR5cGVzLmJvb2wsXG4gICAgcGx1Z2luT3B0czogUHJvcFR5cGVzLm9iamVjdCxcbiAgICB0b29sYmFyT3B0czogUHJvcFR5cGVzLm9iamVjdCxcbiAgICB1cGxvYWRTb3VuZFN1cHBvcnQ6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgbWF4SW1hZ2VXaWR0aDogUHJvcFR5cGVzLm51bWJlcixcbiAgICBtYXhJbWFnZUhlaWdodDogUHJvcFR5cGVzLm51bWJlcixcbiAgfTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGluZGV4OiAtMSxcbiAgICBub0xhYmVsczogZmFsc2UsXG4gICAgdXNlTGV0dGVyT3JkZXJpbmc6IGZhbHNlLFxuICAgIGFsbG93RmVlZEJhY2s6IHRydWUsXG4gICAgYWxsb3dEZWxldGU6IHRydWUsXG4gIH07XG5cbiAgX2NoYW5nZUZuID0gKGtleSkgPT4gKHVwZGF0ZSkgPT4ge1xuICAgIGNvbnN0IHsgZGF0YSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBpZiAob25DaGFuZ2UpIHtcbiAgICAgIG9uQ2hhbmdlKHsgLi4uZGF0YSwgW2tleV06IHVwZGF0ZSB9KTtcbiAgICB9XG4gIH07XG5cbiAgb25MYWJlbENoYW5nZSA9IHRoaXMuX2NoYW5nZUZuKCdsYWJlbCcpO1xuXG4gIG9uQ2hlY2tlZENoYW5nZSA9IChldmVudCkgPT4ge1xuICAgIGNvbnN0IGNvcnJlY3QgPSBldmVudC50YXJnZXQuY2hlY2tlZDtcbiAgICBjb25zdCB7IGRhdGEsIG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgaWYgKG9uQ2hhbmdlKSB7XG4gICAgICBvbkNoYW5nZSh7IC4uLmRhdGEsIGNvcnJlY3QgfSk7XG4gICAgfVxuICB9O1xuXG4gIG9uRmVlZGJhY2tWYWx1ZUNoYW5nZSA9ICh2KSA9PiB7XG4gICAgY29uc3QgeyBkYXRhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcblxuICAgIGlmIChkYXRhLmZlZWRiYWNrLnR5cGUgIT09ICdjdXN0b20nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZmIgPSB7IC4uLmRhdGEuZmVlZGJhY2ssIHZhbHVlOiB2IH07XG5cbiAgICBpZiAob25DaGFuZ2UpIG9uQ2hhbmdlKHsgLi4uZGF0YSwgZmVlZGJhY2s6IGZiIH0pO1xuICB9O1xuXG4gIG9uRmVlZGJhY2tUeXBlQ2hhbmdlID0gKHQpID0+IHtcbiAgICBjb25zdCB7IGRhdGEsIG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IGZiID0geyAuLi5kYXRhLmZlZWRiYWNrLCB0eXBlOiB0IH07XG5cbiAgICBpZiAoZmIudHlwZSAhPT0gJ2N1c3RvbScpIHtcbiAgICAgIGZiLnZhbHVlID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGlmIChvbkNoYW5nZSkgb25DaGFuZ2UoeyAuLi5kYXRhLCBmZWVkYmFjazogZmIgfSk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIGRhdGEsXG4gICAgICBtb2RlLFxuICAgICAgb25EZWxldGUsXG4gICAgICBkZWZhdWx0RmVlZGJhY2ssXG4gICAgICBpbmRleCxcbiAgICAgIGNsYXNzTmFtZSxcbiAgICAgIG5vTGFiZWxzLFxuICAgICAgdXNlTGV0dGVyT3JkZXJpbmcsXG4gICAgICBpbWFnZVN1cHBvcnQsXG4gICAgICBkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zLFxuICAgICAgZGlzYWJsZWQsXG4gICAgICBzcGVsbENoZWNrLFxuICAgICAgbm9uRW1wdHksXG4gICAgICBhbGxvd0ZlZWRCYWNrLFxuICAgICAgYWxsb3dEZWxldGUsXG4gICAgICBwbHVnaW5PcHRzLFxuICAgICAgdG9vbGJhck9wdHMsXG4gICAgICBlcnJvcixcbiAgICAgIG5vQ29ycmVjdEFuc3dlckVycm9yLFxuICAgICAgdXBsb2FkU291bmRTdXBwb3J0LFxuICAgICAgbWF4SW1hZ2VXaWR0aCxcbiAgICAgIG1heEltYWdlSGVpZ2h0LFxuICAgICAgbWF0aE1sT3B0aW9ucyA9IHt9LFxuICAgIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgY29uc3QgSW5wdXRUb2dnbGUgPSBtb2RlID09PSAnY2hlY2tib3gnID8gSW5wdXRDaGVja2JveCA6IElucHV0UmFkaW87XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkVG9wUm93PlxuICAgICAgICAgIHtpbmRleCA+IDAgJiYgKFxuICAgICAgICAgICAgPFN0eWxlZEluZGV4IHR5cGU9XCJ0aXRsZVwiPlxuICAgICAgICAgICAgICB7dXNlTGV0dGVyT3JkZXJpbmcgPyBTdHJpbmcuZnJvbUNoYXJDb2RlKDk2ICsgaW5kZXgpLnRvVXBwZXJDYXNlKCkgOiBpbmRleH1cbiAgICAgICAgICAgIDwvU3R5bGVkSW5kZXg+XG4gICAgICAgICAgKX1cblxuICAgICAgICAgIDxTdHlsZWRUb2dnbGU+XG4gICAgICAgICAgICA8SW5wdXRUb2dnbGVcbiAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25DaGVja2VkQ2hhbmdlfVxuICAgICAgICAgICAgICBsYWJlbD17IW5vTGFiZWxzID8gJ0NvcnJlY3QnIDogJyd9XG4gICAgICAgICAgICAgIGNoZWNrZWQ9eyEhZGF0YS5jb3JyZWN0fVxuICAgICAgICAgICAgICBlcnJvcj17bm9Db3JyZWN0QW5zd2VyRXJyb3J9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvU3R5bGVkVG9nZ2xlPlxuXG4gICAgICAgICAgPFN0eWxlZE1pZGRsZUNvbHVtbj5cbiAgICAgICAgICAgICAgPEVkaXRhYmxlSHRtbENvbnRhaW5lclxuICAgICAgICAgICAgICAgIGxhYmVsPXshbm9MYWJlbHMgPyAnTGFiZWwnIDogJyd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e2RhdGEubGFiZWx9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25MYWJlbENoYW5nZX1cbiAgICAgICAgICAgICAgICBpbWFnZVN1cHBvcnQ9e2ltYWdlU3VwcG9ydH1cbiAgICAgICAgICAgICAgICBkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zPXtkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zfVxuICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICBzcGVsbENoZWNrPXtzcGVsbENoZWNrfVxuICAgICAgICAgICAgICAgIG5vbkVtcHR5PXtub25FbXB0eX1cbiAgICAgICAgICAgICAgICBwbHVnaW5PcHRzPXtwbHVnaW5PcHRzfVxuICAgICAgICAgICAgICAgIHRvb2xiYXJPcHRzPXt0b29sYmFyT3B0c31cbiAgICAgICAgICAgICAgICBlcnJvcj17ZXJyb3J9XG4gICAgICAgICAgICAgICAgdXBsb2FkU291bmRTdXBwb3J0PXt1cGxvYWRTb3VuZFN1cHBvcnR9XG4gICAgICAgICAgICAgICAgbWF0aE1sT3B0aW9ucz17bWF0aE1sT3B0aW9uc31cbiAgICAgICAgICAgICAgICBtYXhJbWFnZVdpZHRoPXttYXhJbWFnZVdpZHRofVxuICAgICAgICAgICAgICAgIG1heEltYWdlSGVpZ2h0PXttYXhJbWFnZUhlaWdodH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIHtlcnJvciAmJiA8U3R5bGVkRXJyb3JUZXh0PntlcnJvcn08L1N0eWxlZEVycm9yVGV4dD59XG5cbiAgICAgICAgICAgIHthbGxvd0ZlZWRCYWNrICYmIChcbiAgICAgICAgICAgICAgPEZlZWRiYWNrXG4gICAgICAgICAgICAgICAgey4uLmRhdGEuZmVlZGJhY2t9XG4gICAgICAgICAgICAgICAgY29ycmVjdD17ZGF0YS5jb3JyZWN0fVxuICAgICAgICAgICAgICAgIGRlZmF1bHRzPXtkZWZhdWx0RmVlZGJhY2t9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMub25GZWVkYmFja1ZhbHVlQ2hhbmdlfVxuICAgICAgICAgICAgICAgIHRvb2xiYXJPcHRzPXt0b29sYmFyT3B0c31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9TdHlsZWRNaWRkbGVDb2x1bW4+XG5cbiAgICAgICAgICB7YWxsb3dGZWVkQmFjayAmJiAoXG4gICAgICAgICAgICA8U3R5bGVkRmVlZGJhY2s+XG4gICAgICAgICAgICAgIDxJbnB1dENvbnRhaW5lciBsYWJlbD17IW5vTGFiZWxzID8gJ0ZlZWRiYWNrJyA6ICcnfT5cbiAgICAgICAgICAgICAgICA8U3R5bGVkRmVlZGJhY2tJY29uPlxuICAgICAgICAgICAgICAgICAgPEZlZWRiYWNrTWVudVxuICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5vbkZlZWRiYWNrVHlwZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9e2RhdGEuZmVlZGJhY2t9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvU3R5bGVkRmVlZGJhY2tJY29uPlxuICAgICAgICAgICAgICA8L0lucHV0Q29udGFpbmVyPlxuICAgICAgICAgICAgPC9TdHlsZWRGZWVkYmFjaz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2FsbG93RGVsZXRlICYmIChcbiAgICAgICAgICAgIDxTdHlsZWREZWxldGU+XG4gICAgICAgICAgICAgIDxJbnB1dENvbnRhaW5lciBsYWJlbD17IW5vTGFiZWxzID8gJ0RlbGV0ZScgOiAnJ30+XG4gICAgICAgICAgICAgICAgPFN0eWxlZERlbGV0ZUljb24+XG4gICAgICAgICAgICAgICAgICA8SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiZGVsZXRlXCJcbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17b25EZWxldGV9XG4gICAgICAgICAgICAgICAgICAgIHNpemU9XCJsYXJnZVwiPlxuICAgICAgICAgICAgICAgICAgICA8QWN0aW9uRGVsZXRlIC8+XG4gICAgICAgICAgICAgICAgICA8L0ljb25CdXR0b24+XG4gICAgICAgICAgICAgICAgPC9TdHlsZWREZWxldGVJY29uPlxuICAgICAgICAgICAgICA8L0lucHV0Q29udGFpbmVyPlxuICAgICAgICAgICAgPC9TdHlsZWREZWxldGU+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9TdHlsZWRUb3BSb3c+XG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBDaG9pY2VDb25maWd1cmF0aW9uO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLE9BQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFVBQUEsR0FBQUosc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFLLHVCQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTSxXQUFBLEdBQUFQLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTyxTQUFBLEdBQUFQLE9BQUE7QUFFQSxJQUFBUSxPQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxhQUFBLEdBQUFWLHNCQUFBLENBQUFDLE9BQUE7QUFBMkMsU0FBQVUsUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEs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
@@ -39,4 +39,4 @@ var _firstAvailableIndex = exports.firstAvailableIndex = function firstAvailable
39
39
  return "".concat(index);
40
40
  }
41
41
  };
42
- //# sourceMappingURL=choice-utils.js.map
42
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW5jbHVkZXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5Iiwibm9ybWFsaXplQ2hvaWNlcyIsImV4cG9ydHMiLCJtb2RlbCIsImNob2ljZXMiLCJtYXAiLCJjIiwiaW5kZXgiLCJ2YWx1ZSIsImNvbmNhdCIsImZpcnN0QXZhaWxhYmxlSW5kZXgiLCJ2YWx1ZXMiLCJpbmNsdWRlcyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jaG9pY2UtdXRpbHMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGluY2x1ZGVzIGZyb20gJ2xvZGFzaC9pbmNsdWRlcyc7XG5cbi8qKlxuICogQWRkIHZhbHVlIHRvIGV2ZXJ5IG1vZGVsLmNob2ljZXMuXG4gKiBAcGFyYW0ge09iamVjdH0gbW9kZWwgdGhlIG1vZGVsIHRvIG5vcm1hbGl6ZVxuICogQHJldHVybiB7T2JqZWN0fSB0aGUgdXBkYXRlZCBtb2RlbFxuICovXG5leHBvcnQgY29uc3Qgbm9ybWFsaXplQ2hvaWNlcyA9IChtb2RlbCkgPT4ge1xuICBjb25zdCBjaG9pY2VzID0gbW9kZWwuY2hvaWNlcy5tYXAoKGMsIGluZGV4KSA9PiB7XG4gICAgaWYgKCFjLnZhbHVlKSB7XG4gICAgICBjLnZhbHVlID0gYCR7aW5kZXh9YDtcbiAgICB9XG4gICAgcmV0dXJuIGM7XG4gIH0pO1xuICByZXR1cm4geyAuLi5tb2RlbCwgY2hvaWNlcyB9O1xufTtcblxuLyoqXG4gKiBGaW5kIHRoZSBmaXJzdCBhdmFpbGFibGUgaW5kZXguXG4gKiBAcGFyYW0ge3N0cmluZ1tdfSB2YWx1ZXNcbiAqIEBwYXJhbSB7bnVtYmVyfSBpbmRleFxuICogQHJldHVybiB7c3RyaW5nfVxuICovXG5leHBvcnQgY29uc3QgZmlyc3RBdmFpbGFibGVJbmRleCA9ICh2YWx1ZXMsIGluZGV4KSA9PiB7XG4gIGlmIChpbmNsdWRlcyh2YWx1ZXMsIGAke2luZGV4fWApKSB7XG4gICAgcmV0dXJuIGZpcnN0QXZhaWxhYmxlSW5kZXgodmFsdWVzLCBpbmRleCArIDEpO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBgJHtpbmRleH1gO1xuICB9XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLFNBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUF1QyxTQUFBQyxRQUFBQyxDQUFBLEVBQUFDLENBQUEsUUFBQUMsQ0FBQSxHQUFBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosQ0FBQSxPQUFBRyxNQUFBLENBQUFFLHFCQUFBLFFBQUFDLENBQUEsR0FBQUgsTUFBQSxDQUFBRSxxQkFBQSxDQUFBTCxDQUFBLEdBQUFDLENBQUEsS0FBQUssQ0FBQSxHQUFBQSxDQUFBLENBQUFDLE1BQUEsV0FBQU4sQ0FBQSxXQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFSLENBQUEsRUFBQUMsQ0FBQSxFQUFBUSxVQUFBLE9BQUFQLENBQUEsQ0FBQVEsSUFBQSxDQUFBQyxLQUFBLENBQUFULENBQUEsRUFBQUksQ0FBQSxZQUFBSixDQUFBO0FBQUEsU0FBQVUsY0FBQVosQ0FBQSxhQUFBQyxDQUFBLE1BQUFBLENBQUEsR0FBQVksU0FBQSxDQUFBQyxNQUFBLEVBQUFiLENBQUEsVUFBQUMsQ0FBQSxXQUFBVyxTQUFBLENBQUFaLENBQUEsSUFBQVksU0FBQSxDQUFBWixDQUFBLFFBQUFBLENBQUEsT0FBQUYsT0FBQSxDQUFBSSxNQUFBLENBQUFELENBQUEsT0FBQWEsT0FBQSxXQUFBZCxDQUFBLFFBQUFlLGdCQUFBLGFBQUFoQixDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxDQUFBRCxDQUFBLFNBQUFFLE1BQUEsQ0FBQWMseUJBQUEsR0FBQWQsTUFBQSxDQUFBZSxnQkFBQSxDQUFBbEIsQ0FBQSxFQUFBRyxNQUFBLENBQUFjLHlCQUFBLENBQUFmLENBQUEsS0FBQUgsT0FBQSxDQUFBSSxNQUFBLENBQUFELENBQUEsR0FBQWEsT0FBQSxXQUFBZCxDQUFBLElBQUFFLE1BQUEsQ0FBQWdCLGNBQUEsQ0FBQW5CLENBQUEsRUFBQUMsQ0FBQSxFQUFBRSxNQUFBLENBQUFLLHdCQUFBLENBQUFOLENBQUEsRUFBQUQsQ0FBQSxpQkFBQUQsQ0FBQTtBQUV2QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ08sSUFBTW9CLGdCQUFnQixHQUFBQyxPQUFBLENBQUFELGdCQUFBLEdBQUcsU0FBbkJBLGdCQUFnQkEsQ0FBSUUsS0FBSyxFQUFLO0VBQ3pDLElBQU1DLE9BQU8sR0FBR0QsS0FBSyxDQUFDQyxPQUFPLENBQUNDLEdBQUcsQ0FBQyxVQUFDQyxDQUFDLEVBQUVDLEtBQUssRUFBSztJQUM5QyxJQUFJLENBQUNELENBQUMsQ0FBQ0UsS0FBSyxFQUFFO01BQ1pGLENBQUMsQ0FBQ0UsS0FBSyxNQUFBQyxNQUFBLENBQU1GLEtBQUssQ0FBRTtJQUN0QjtJQUNBLE9BQU9ELENBQUM7RUFDVixDQUFDLENBQUM7RUFDRixPQUFBYixhQUFBLENBQUFBLGFBQUEsS0FBWVUsS0FBSztJQUFFQyxPQUFPLEVBQVBBO0VBQU87QUFDNUIsQ0FBQzs7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxJQUFNTSxvQkFBbUIsR0FBQVIsT0FBQSxDQUFBUSxtQkFBQSxHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUlDLE1BQU0sRUFBRUosS0FBSyxFQUFLO0VBQ3BELElBQUksSUFBQUssb0JBQVEsRUFBQ0QsTUFBTSxLQUFBRixNQUFBLENBQUtGLEtBQUssQ0FBRSxDQUFDLEVBQUU7SUFDaEMsT0FBT0csb0JBQW1CLENBQUNDLE1BQU0sRUFBRUosS0FBSyxHQUFHLENBQUMsQ0FBQztFQUMvQyxDQUFDLE1BQU07SUFDTCxVQUFBRSxNQUFBLENBQVVGLEtBQUs7RUFDakI7QUFDRixDQUFDIiwiaWdub3JlTGlzdCI6W119