@kando-env/kando-ui 1.2.234 → 1.2.236

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 (79) hide show
  1. package/lib/Widgets/Map/Map.js +100 -23
  2. package/lib/Widgets/Map/Map.scss +67 -0
  3. package/lib/Widgets/Map/MapUtils.js +27 -12
  4. package/lib/Widgets/Map/areas/AreaPolygons.js +3 -3
  5. package/lib/Widgets/Map/edges/Edge.js +2 -2
  6. package/lib/Widgets/Map/edges/Edge.scss +7 -2
  7. package/lib/Widgets/Map/edges/Edges.js +14 -2
  8. package/lib/Widgets/Map/events/EventIndicator.js +2 -2
  9. package/lib/Widgets/Map/events/EventPath.js +1 -1
  10. package/lib/Widgets/Map/events/EventUtils.js +23 -17
  11. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +6 -2
  12. package/lib/Widgets/Map/events/PointOfEvent.js +10 -7
  13. package/lib/Widgets/Map/points/PointIcon.js +44 -0
  14. package/lib/Widgets/Map/points/PointIcon.scss +230 -0
  15. package/lib/Widgets/Map/points/PointMarker.js +22 -19
  16. package/lib/Widgets/Map/points/PointMarkers.js +62 -13
  17. package/lib/Widgets/Map/points/PointUtils.js +83 -33
  18. package/lib/Widgets/MostPolluting/MostPolluting.js +19 -2
  19. package/lib/assets/icons/pin/pin-matash-white.svg +8 -42
  20. package/lib/assets/icons/plus_v.svg +13 -0
  21. package/lib/assets/icons/water_reuse.svg +27 -0
  22. package/lib/assets/map/pin-matash-clicked.svg +12 -0
  23. package/lib/assets/map/pin-matash-white.svg +8 -28
  24. package/lib/assets/map/pin-plant-clicked.svg +10 -0
  25. package/lib/assets/map/pin-plant-white.svg +6 -28
  26. package/lib/assets/map/pin-suction-clicked.svg +10 -0
  27. package/lib/assets/map/pin-suction.svg +6 -23
  28. package/lib/assets/map/pin-water-clicked.svg +11 -0
  29. package/lib/assets/map/pin-water.svg +7 -17
  30. package/lib/assets/point_icons/WWTP-icon.svg +8 -21
  31. package/lib/assets/point_icons/factory-icon.svg +6 -21
  32. package/lib/assets/point_icons/pump-station-icon.svg +6 -16
  33. package/lib/components/CustomInputs/Select/Select.js +22 -4
  34. package/lib/components/Header/InfoBar/InfoBar.js +7 -1
  35. package/lib/components/SevereEvent/Eta/Eta.js +7 -2
  36. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +4 -3
  37. package/lib/hooks/useMap.js +4 -14
  38. package/lib/i18n/en.json +41 -12
  39. package/lib/i18n/en_uk.json +26 -3
  40. package/lib/i18n/fr.json +25 -2
  41. package/lib/i18n/he.json +34 -3
  42. package/lib/i18n/it.json +25 -2
  43. package/lib/index.js +9 -1
  44. package/lib/macros/getVersion.js +1 -1
  45. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +19 -2
  46. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +4 -3
  47. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +20 -4
  48. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +4 -4
  49. package/lib/pages/EventsPage/events/event_info/EventInfo.js +3 -2
  50. package/lib/pages/EventsPage/events/events_list/EventsList.js +17 -10
  51. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +5 -1
  52. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +13 -7
  53. package/lib/pages/ProfilePage/Container.js +2 -2
  54. package/lib/pages/ProfilePage/ProfilePage.js +154 -48
  55. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +12 -6
  56. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +7 -6
  57. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +4 -2
  58. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +4 -2
  59. package/lib/pages/WbeDashboard/ExpandableComponent.js +6 -4
  60. package/lib/pages/WbeDashboard/GraphWrapper.js +5 -4
  61. package/lib/pages/WbeDashboard/SummaryGraph.js +45 -34
  62. package/lib/pages/WbeDashboard/Tabs.js +2 -1
  63. package/lib/pages/WbeDashboard/WbeDashboardPage.js +48 -55
  64. package/lib/pages/WbeDashboard/WbeSummaryBar.js +14 -10
  65. package/lib/store/events/actions.js +3 -3
  66. package/lib/store/global/models/IGlobalState.js +1 -1
  67. package/lib/store/permissions/permissionsSlice.js +3 -1
  68. package/lib/store/points/models/IGroup.js +1 -1
  69. package/lib/store/points/models/IPoint.js +1 -1
  70. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +17 -4
  71. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +9 -2
  72. package/lib/ui-kit/KandoTable/KandoTable.js +3 -1
  73. package/lib/utilities/Analytics.js +2 -1
  74. package/lib/utilities/Enum.js +12 -1
  75. package/lib/utilities/edgesMath.js +5 -3
  76. package/lib/utilities/map/icons.js +19 -7
  77. package/lib/utilities/polylinedecorator.js +383 -0
  78. package/lib/utilities/urls.js +3 -3
  79. package/package.json +9 -4
@@ -84,6 +84,28 @@ var ProfilePage = function ProfilePage() {
84
84
  _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
85
85
  timezone = _useState6[0],
86
86
  setTimezone = _useState6[1];
87
+ var _useState7 = (0, _react.useState)([{
88
+ value: '',
89
+ label: ''
90
+ }]),
91
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
92
+ departments = _useState8[0],
93
+ setDepartments = _useState8[1];
94
+ var _useState9 = (0, _react.useState)([{
95
+ value: '',
96
+ label: ''
97
+ }]),
98
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
99
+ businessRoles = _useState10[0],
100
+ setBusinessRoles = _useState10[1];
101
+ var _useState11 = (0, _react.useState)(departments[0]),
102
+ _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
103
+ department = _useState12[0],
104
+ setDepartment = _useState12[1];
105
+ var _useState13 = (0, _react.useState)(businessRoles[0]),
106
+ _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
107
+ businessRole = _useState14[0],
108
+ setBusinessRole = _useState14[1];
87
109
  var initialParamsState = {
88
110
  first_name: '',
89
111
  last_name: '',
@@ -92,40 +114,44 @@ var ProfilePage = function ProfilePage() {
92
114
  time_zone: '',
93
115
  date_time_format: '',
94
116
  locale: '',
95
- telegram_name: ''
117
+ telegram_name: '',
118
+ other_business_role_name: '',
119
+ other_department_name: '',
120
+ business_role: '',
121
+ department: ''
96
122
  };
97
- var _useState7 = (0, _react.useState)(false),
98
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
99
- isTelegramOpen = _useState8[0],
100
- setIsTelegramOpen = _useState8[1];
101
- var _useState9 = (0, _react.useState)(false),
102
- _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
103
- showPasswordModal = _useState10[0],
104
- setShowPasswordModal = _useState10[1];
105
- var _useState11 = (0, _react.useState)(false),
106
- _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
107
- submitting = _useState12[0],
108
- setSubmitting = _useState12[1];
109
- var _useState13 = (0, _react.useState)(false),
110
- _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
111
- showSuccessMessage = _useState14[0],
112
- setShowSuccessMessage = _useState14[1];
113
123
  var _useState15 = (0, _react.useState)(false),
114
124
  _useState16 = (0, _slicedToArray2.default)(_useState15, 2),
115
- showErrorMessage = _useState16[0],
116
- setShowErrorMessage = _useState16[1];
117
- var _useState17 = (0, _react.useState)({
125
+ isTelegramOpen = _useState16[0],
126
+ setIsTelegramOpen = _useState16[1];
127
+ var _useState17 = (0, _react.useState)(false),
128
+ _useState18 = (0, _slicedToArray2.default)(_useState17, 2),
129
+ showPasswordModal = _useState18[0],
130
+ setShowPasswordModal = _useState18[1];
131
+ var _useState19 = (0, _react.useState)(false),
132
+ _useState20 = (0, _slicedToArray2.default)(_useState19, 2),
133
+ submitting = _useState20[0],
134
+ setSubmitting = _useState20[1];
135
+ var _useState21 = (0, _react.useState)(false),
136
+ _useState22 = (0, _slicedToArray2.default)(_useState21, 2),
137
+ showSuccessMessage = _useState22[0],
138
+ setShowSuccessMessage = _useState22[1];
139
+ var _useState23 = (0, _react.useState)(false),
140
+ _useState24 = (0, _slicedToArray2.default)(_useState23, 2),
141
+ showErrorMessage = _useState24[0],
142
+ setShowErrorMessage = _useState24[1];
143
+ var _useState25 = (0, _react.useState)({
118
144
  show: false,
119
145
  status: '',
120
146
  message: ''
121
147
  }),
122
- _useState18 = (0, _slicedToArray2.default)(_useState17, 2),
123
- showTelegramResponseMessage = _useState18[0],
124
- setShowTelegramResponseMessage = _useState18[1];
125
- var _useState19 = (0, _react.useState)(initialParamsState),
126
- _useState20 = (0, _slicedToArray2.default)(_useState19, 2),
127
- params = _useState20[0],
128
- setParams = _useState20[1];
148
+ _useState26 = (0, _slicedToArray2.default)(_useState25, 2),
149
+ showTelegramResponseMessage = _useState26[0],
150
+ setShowTelegramResponseMessage = _useState26[1];
151
+ var _useState27 = (0, _react.useState)(initialParamsState),
152
+ _useState28 = (0, _slicedToArray2.default)(_useState27, 2),
153
+ params = _useState28[0],
154
+ setParams = _useState28[1];
129
155
  var handleOnChange = function handleOnChange(e) {
130
156
  if (typeof e === 'string') {
131
157
  if (e.startsWith('9720')) {
@@ -145,11 +171,29 @@ var ProfilePage = function ProfilePage() {
145
171
  });
146
172
  }
147
173
  };
174
+ var handleBusinessRoleChange = function handleBusinessRoleChange(e) {
175
+ if (e.target !== null) {
176
+ setParams((0, _objectSpread3.default)((0, _objectSpread3.default)({}, params), {}, {
177
+ business_role: e.value,
178
+ other_business_role_name: e.target.value
179
+ }));
180
+ }
181
+ };
182
+ var handleDepartmentChange = function handleDepartmentChange(e) {
183
+ if (e.target !== null) {
184
+ setParams((0, _objectSpread3.default)((0, _objectSpread3.default)({}, params), {}, {
185
+ department: e.value,
186
+ other_department_name: e.target.value
187
+ }));
188
+ }
189
+ };
148
190
  var getParamsWithAggregatedValues = function getParamsWithAggregatedValues() {
149
191
  return (0, _objectSpread3.default)((0, _objectSpread3.default)({}, params), {}, {
150
192
  date_time_format: dateTimeFormat.value,
151
193
  locale: locale.value,
152
- time_zone: timezone.value
194
+ time_zone: timezone.value,
195
+ department_id: department === undefined ? null : department.value,
196
+ business_role_id: businessRole === undefined ? null : businessRole.value
153
197
  });
154
198
  };
155
199
  var waterAuthorityName = (0, _reactRedux.useSelector)(function (state) {
@@ -179,7 +223,7 @@ var ProfilePage = function ProfilePage() {
179
223
  _axios.default.put('/profiles', {
180
224
  user: getParamsWithAggregatedValues()
181
225
  }).then(function (resp) {
182
- if (resp.data.errors === null) {
226
+ if (resp.data.user.errors === null) {
183
227
  document.querySelectorAll('.error-message').forEach(function (p) {
184
228
  return p.innerHTML = '';
185
229
  });
@@ -208,7 +252,7 @@ var ProfilePage = function ProfilePage() {
208
252
  document.querySelectorAll('.error-message').forEach(function (p) {
209
253
  return p.innerHTML = '';
210
254
  });
211
- var errors = resp.data.errors;
255
+ var errors = resp.data.user.errors;
212
256
  for (var error in errors) {
213
257
  var findElement = document.querySelector("input[name='".concat(error, "']"));
214
258
  var parent = findElement.closest('.field');
@@ -236,20 +280,20 @@ var ProfilePage = function ProfilePage() {
236
280
  var token = document.querySelector('[name=csrf-token]').content;
237
281
  _axios.default.defaults.headers.common['X-CSRF-TOKEN'] = token;
238
282
  _axios.default.defaults.headers.common['Content-Type'] = 'application/js';
239
- _axios.default.get('/profiles/resource').then(function (resp) {
240
- setParams(resp.data);
241
- var findLocale = localeOptions.find(function (e) {
242
- return e.value === resp.data.locale;
243
- });
244
- var findDateTimeFormat = dateTimeFormatOptions.find(function (e) {
245
- return e.value === resp.data.date_time_format;
246
- });
247
- var findTimezone = timezones.find(function (e) {
248
- return e.value === resp.data.time_zone;
249
- });
250
- setLocale(findLocale);
251
- setDateTimeFormat(findDateTimeFormat);
252
- setTimezone(findTimezone);
283
+ _axios.default.get("/profiles/resource").then(function (resp) {
284
+ setParams(resp.data.user);
285
+ var findProperty = function findProperty(object, property) {
286
+ return object.find(function (e) {
287
+ return e.value === property;
288
+ });
289
+ };
290
+ setLocale(findProperty(localeOptions, resp.data.user.locale));
291
+ setDateTimeFormat(findProperty(dateTimeFormatOptions, resp.data.user.date_time_format));
292
+ setTimezone(findProperty(timezones, resp.data.user.time_zone));
293
+ setBusinessRole(findProperty(resp.data.business_roles, resp.data.user.business_role_id));
294
+ setDepartment(findProperty(resp.data.departments, resp.data.user.department_id));
295
+ setDepartments(resp.data.departments);
296
+ setBusinessRoles(resp.data.business_roles);
253
297
  }).catch(function (error) {
254
298
  return alert(error);
255
299
  });
@@ -330,7 +374,69 @@ var ProfilePage = function ProfilePage() {
330
374
  }
331
375
  }), /*#__PURE__*/_react.default.createElement("p", {
332
376
  className: 'error-message'
377
+ })), departments[0].value !== '' && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
378
+ className: "field"
379
+ }, /*#__PURE__*/_react.default.createElement("div", {
380
+ className: "label"
381
+ }, _i18n.default.t('dashboard_v2.profile.department')), /*#__PURE__*/_react.default.createElement("div", {
382
+ className: "my-input"
383
+ }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
384
+ setValue: setDepartment,
385
+ value: {
386
+ label: _i18n.default.t("dashboard_v2.profile.departments.".concat(department === null || department === void 0 ? void 0 : department.label)),
387
+ value: department === null || department === void 0 ? void 0 : department.value
388
+ },
389
+ options: departments,
390
+ cancelTextWidth: true,
391
+ translate: {
392
+ options: departments,
393
+ translation_key: 'dashboard_v2.profile.departments'
394
+ }
395
+ }))), /*#__PURE__*/_react.default.createElement("div", {
396
+ className: "field"
397
+ }, /*#__PURE__*/_react.default.createElement("div", {
398
+ className: "label"
399
+ }, _i18n.default.t('dashboard_v2.profile.business_role')), /*#__PURE__*/_react.default.createElement("div", {
400
+ className: "my-input"
401
+ }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
402
+ setValue: setBusinessRole,
403
+ value: {
404
+ label: _i18n.default.t("dashboard_v2.profile.business_roles.".concat(businessRole === null || businessRole === void 0 ? void 0 : businessRole.label)),
405
+ value: businessRole === null || businessRole === void 0 ? void 0 : businessRole.value
406
+ },
407
+ options: businessRoles,
408
+ cancelTextWidth: true,
409
+ translate: {
410
+ options: businessRoles,
411
+ translation_key: 'dashboard_v2.profile.business_roles'
412
+ }
413
+ })))), departments[0].value !== '' && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
414
+ className: "field ".concat(department && (department === null || department === void 0 ? void 0 : department.value) === departments[departments.length - 1].value ? '' : 'field--hidden')
415
+ }, /*#__PURE__*/_react.default.createElement("div", {
416
+ className: "label"
417
+ }, _i18n.default.t('dashboard_v2.profile.department_alt')), /*#__PURE__*/_react.default.createElement("input", {
418
+ readOnly: false,
419
+ type: "text",
420
+ className: "my-input",
421
+ name: 'other_department_name',
422
+ value: params.other_department_name,
423
+ onChange: function onChange(e) {
424
+ return handleDepartmentChange(e);
425
+ }
333
426
  })), /*#__PURE__*/_react.default.createElement("div", {
427
+ className: "field ".concat(businessRole && (businessRole === null || businessRole === void 0 ? void 0 : businessRole.value) === businessRoles[businessRoles.length - 1].value ? '' : 'field--hidden', " ")
428
+ }, /*#__PURE__*/_react.default.createElement("div", {
429
+ className: "label"
430
+ }, _i18n.default.t('dashboard_v2.profile.business_role_alt')), /*#__PURE__*/_react.default.createElement("input", {
431
+ readOnly: false,
432
+ type: "text",
433
+ className: "my-input",
434
+ name: 'other_business_role_name',
435
+ value: params.other_business_role_name,
436
+ onChange: function onChange(e) {
437
+ return handleBusinessRoleChange(e);
438
+ }
439
+ }))), /*#__PURE__*/_react.default.createElement("div", {
334
440
  className: "field"
335
441
  }, /*#__PURE__*/_react.default.createElement("div", {
336
442
  className: "change-password",
@@ -424,8 +530,8 @@ var ProfilePage = function ProfilePage() {
424
530
  onClick: function onClick() {
425
531
  _axios.default.get("/telegram/send_test_message.json").then(function (resp) {
426
532
  setShowTelegramResponseMessage({
427
- status: resp.data.status[0].toUpperCase() + resp.data.status.substring(1),
428
- message: resp.data.message,
533
+ status: resp.data.user.status[0].toUpperCase() + resp.data.user.status.substring(1),
534
+ message: resp.data.user.message,
429
535
  show: true
430
536
  });
431
537
  setTimeout(function () {
@@ -435,7 +541,7 @@ var ProfilePage = function ProfilePage() {
435
541
  show: false
436
542
  });
437
543
  }, 6000);
438
- showToast(resp.data);
544
+ showToast(resp.data.user);
439
545
  }).catch(function (error) {
440
546
  return alert(error);
441
547
  });
@@ -458,4 +564,4 @@ var ProfilePage = function ProfilePage() {
458
564
  }));
459
565
  };
460
566
  exports.ProfilePage = ProfilePage;
461
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfU2VsZWN0IiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1Bhc3N3b3JkTW9kYWwiLCJfcGVuIiwiX2NhbmNlbCIsIl9yZWFjdFBob25lSW5wdXQiLCJfVGVsZWdyYW1Nb2RhbCIsIl9heGlvcyIsIl9Db250YWluZXIiLCJfbW9tZW50VGltZXpvbmUiLCJfQW5hbHl0aWNzIiwiX3JlYWN0UmVkdXgiLCJfcmVhY3RUb2FzdGlmeSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiUHJvZmlsZVBhZ2UiLCJ0aW1lem9uZXNBcnJheSIsIm1vbWVudCIsInR6IiwibmFtZXMiLCJkYXRlVGltZUZvcm1hdE9wdGlvbnMiLCJ2YWx1ZSIsImxhYmVsIiwiZm9ybWF0IiwibW9udGgiLCJkYXkiLCJ5ZWFyIiwiaG91ciIsIm1pbnV0ZSIsImhvdXIxMiIsInRpbWV6b25lcyIsIm1hcCIsInQiLCJsb2NhbGVPcHRpb25zIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwibG9jYWxlIiwic2V0TG9jYWxlIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJkYXRlVGltZUZvcm1hdCIsInNldERhdGVUaW1lRm9ybWF0IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJ0aW1lem9uZSIsInNldFRpbWV6b25lIiwiaW5pdGlhbFBhcmFtc1N0YXRlIiwiZmlyc3RfbmFtZSIsImxhc3RfbmFtZSIsInBob25lIiwiZW1haWwiLCJ0aW1lX3pvbmUiLCJkYXRlX3RpbWVfZm9ybWF0IiwidGVsZWdyYW1fbmFtZSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiaXNUZWxlZ3JhbU9wZW4iLCJzZXRJc1RlbGVncmFtT3BlbiIsIl91c2VTdGF0ZTkiLCJfdXNlU3RhdGUxMCIsInNob3dQYXNzd29yZE1vZGFsIiwic2V0U2hvd1Bhc3N3b3JkTW9kYWwiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwic3VibWl0dGluZyIsInNldFN1Ym1pdHRpbmciLCJfdXNlU3RhdGUxMyIsIl91c2VTdGF0ZTE0Iiwic2hvd1N1Y2Nlc3NNZXNzYWdlIiwic2V0U2hvd1N1Y2Nlc3NNZXNzYWdlIiwiX3VzZVN0YXRlMTUiLCJfdXNlU3RhdGUxNiIsInNob3dFcnJvck1lc3NhZ2UiLCJzZXRTaG93RXJyb3JNZXNzYWdlIiwiX3VzZVN0YXRlMTciLCJzaG93Iiwic3RhdHVzIiwibWVzc2FnZSIsIl91c2VTdGF0ZTE4Iiwic2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlIiwic2V0U2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlIiwiX3VzZVN0YXRlMTkiLCJfdXNlU3RhdGUyMCIsInBhcmFtcyIsInNldFBhcmFtcyIsImhhbmRsZU9uQ2hhbmdlIiwiZSIsInN0YXJ0c1dpdGgiLCJyZXBsYWNlIiwicHJldlN0YXRlIiwiX29iamVjdFNwcmVhZDMiLCJfZSR0YXJnZXQiLCJ0YXJnZXQiLCJuYW1lIiwiX2RlZmluZVByb3BlcnR5MiIsImdldFBhcmFtc1dpdGhBZ2dyZWdhdGVkVmFsdWVzIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwic2hvd1RvYXN0IiwiZGF0YSIsInVzZXJuYW1lIiwiZXJyb3IiLCJ0b2FzdCIsInN1Y2Nlc3MiLCJpMThuIiwiY29uY2F0IiwicG9zaXRpb24iLCJoYW5kbGVTdWJtaXQiLCJwcmV2ZW50RGVmYXVsdCIsImF4aW9zIiwicHV0IiwidXNlciIsInRoZW4iLCJyZXNwIiwiZXJyb3JzIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwiZm9yRWFjaCIsInAiLCJpbm5lckhUTUwiLCJjbGFzc0xpc3QiLCJyZW1vdmUiLCJKU09OIiwicGFyc2UiLCJmaW5kTG9jYWxlIiwiZmluZCIsImZpbmREYXRlVGltZUZvcm1hdCIsImZpbmRUaW1lem9uZSIsInNldFRpbWVvdXQiLCJmaW5kRWxlbWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJwYXJlbnQiLCJjbG9zZXN0IiwiZmluZElucHV0IiwiYWRkIiwiY2F0Y2giLCJ1c2VFZmZlY3QiLCJhbmFseXRpY3NUcmFjayIsInV0aWxpdHlfbmFtZSIsInRva2VuIiwiY29udGVudCIsImRlZmF1bHRzIiwiaGVhZGVycyIsImNvbW1vbiIsImFsZXJ0IiwiY3JlYXRlRWxlbWVudCIsIkNvbnRhaW5lciIsImNsYXNzTmFtZSIsImFjdGlvbiIsIm9uU3VibWl0IiwidHlwZSIsIm9uQ2hhbmdlIiwicmVhZE9ubHkiLCJjb3VudHJ5IiwibG9jYWxpemF0aW9uIiwiaW5wdXRDbGFzcyIsImNvbnRhaW5lckNsYXNzIiwiYnV0dG9uQ2xhc3MiLCJkcm9wZG93bkNsYXNzIiwiZW5hYmxlU2VhcmNoIiwic2VhcmNoUGxhY2Vob2xkZXIiLCJjb3VudHJ5Q29kZUVkaXRhYmxlIiwiaW5wdXRQcm9wcyIsIm9uQ2xpY2siLCJSZWFjdENvbXBvbmVudCIsIndpZHRoIiwiaGVpZ2h0IiwiZmlsbCIsIlNlbGVjdCIsInNldFZhbHVlIiwib3B0aW9ucyIsImNhbmNlbFRleHRXaWR0aCIsInVuZGVmaW5lZCIsIkRhdGUiLCJ0b0xvY2FsZURhdGVTdHJpbmciLCJGcmFnbWVudCIsInRvVXBwZXJDYXNlIiwic3Vic3RyaW5nIiwiZGlzYWJsZWQiLCJQYXNzd29yZE1vZGFsIiwiY2xvc2UiLCJzYXZlIiwiVGVsZWdyYW1Nb2RhbCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvUHJvZmlsZVBhZ2UvUHJvZmlsZVBhZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgU2VsZWN0IH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvQ3VzdG9tSW5wdXRzL1NlbGVjdC9TZWxlY3QnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IFBhc3N3b3JkTW9kYWwgfSBmcm9tICcuL1Bhc3N3b3JkTW9kYWwvUGFzc3dvcmRNb2RhbCc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBQZW5TdmcgfSBmcm9tICcuL3Blbi5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQ2FuY2VsIH0gZnJvbSAnLi9jYW5jZWwuc3ZnJztcbmltcG9ydCBQaG9uZUlucHV0IGZyb20gJ3JlYWN0LXBob25lLWlucHV0LTInO1xuaW1wb3J0ICdyZWFjdC1waG9uZS1pbnB1dC0yL2xpYi9zdHlsZS5jc3MnO1xuaW1wb3J0IHsgVGVsZWdyYW1Nb2RhbCB9IGZyb20gJy4vVGVsZWdyYW1Nb2RhbC9UZWxlZ3JhbU1vZGFsJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tICcuL0NvbnRhaW5lcic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB0b2FzdCB9IGZyb20gJ3JlYWN0LXRvYXN0aWZ5JztcblxuZXhwb3J0IGNvbnN0IFByb2ZpbGVQYWdlID0gKCkgPT4ge1xuICBjb25zdCB0aW1lem9uZXNBcnJheSA9IG1vbWVudC50ei5uYW1lcygpO1xuICBjb25zdCBkYXRlVGltZUZvcm1hdE9wdGlvbnMgPSBbXG4gICAge1xuICAgICAgdmFsdWU6ICd1cycsXG4gICAgICBsYWJlbDogJ1VuaXRlZCBTdGF0ZXMnLFxuICAgICAgZm9ybWF0OiB7XG4gICAgICAgIG1vbnRoOiAnc2hvcnQnLFxuICAgICAgICBkYXk6ICdudW1lcmljJyxcbiAgICAgICAgeWVhcjogJ251bWVyaWMnLFxuICAgICAgICBob3VyOiAnbnVtZXJpYycsXG4gICAgICAgIG1pbnV0ZTogJ251bWVyaWMnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHZhbHVlOiAnZXUnLFxuICAgICAgbGFiZWw6ICdFdXJvcGUnLFxuICAgICAgZm9ybWF0OiB7XG4gICAgICAgIGRheTogJ251bWVyaWMnLFxuICAgICAgICBtb250aDogJ251bWVyaWMnLFxuICAgICAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgICAgIGhvdXI6ICdudW1lcmljJyxcbiAgICAgICAgbWludXRlOiAnbnVtZXJpYycsXG4gICAgICAgIGhvdXIxMjogZmFsc2UsXG4gICAgICB9LFxuICAgIH0sXG4gIF07XG5cbiAgY29uc3QgdGltZXpvbmVzID0gdGltZXpvbmVzQXJyYXkubWFwKCh0KSA9PiB7XG4gICAgcmV0dXJuIHsgdmFsdWU6IHQsIGxhYmVsOiB0IH07XG4gIH0pO1xuXG4gIGNvbnN0IGxvY2FsZU9wdGlvbnMgPSBbXG4gICAgeyB2YWx1ZTogJ2VuJywgbGFiZWw6ICdFbmdsaXNoJyB9LFxuICAgIHsgdmFsdWU6ICdlbl91aycsIGxhYmVsOiAnRW5nbGlzaCAoVUspJyB9LFxuICAgIHsgdmFsdWU6ICdoZScsIGxhYmVsOiAn16LXkdeo15nXqicgfSxcbiAgICB7IHZhbHVlOiAnZnInLCBsYWJlbDogJ0ZyYW7Dp2FpcycgfSxcbiAgICB7IHZhbHVlOiAnaXQnLCBsYWJlbDogJ0l0YWxpYW5vJyB9LFxuICBdO1xuXG4gIGNvbnN0IFtsb2NhbGUsIHNldExvY2FsZV0gPSB1c2VTdGF0ZTx7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICB9Pihsb2NhbGVPcHRpb25zWzBdKTtcblxuICBjb25zdCBbZGF0ZVRpbWVGb3JtYXQsIHNldERhdGVUaW1lRm9ybWF0XSA9IHVzZVN0YXRlPHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgZm9ybWF0OiBvYmplY3Q7XG4gIH0+KGRhdGVUaW1lRm9ybWF0T3B0aW9uc1swXSk7XG5cbiAgY29uc3QgW3RpbWV6b25lLCBzZXRUaW1lem9uZV0gPSB1c2VTdGF0ZTx7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICB9Pih0aW1lem9uZXNbMjBdKTtcblxuICBjb25zdCBpbml0aWFsUGFyYW1zU3RhdGUgPSB7XG4gICAgZmlyc3RfbmFtZTogJycsXG4gICAgbGFzdF9uYW1lOiAnJyxcbiAgICBwaG9uZTogJycsXG4gICAgZW1haWw6ICcnLFxuICAgIHRpbWVfem9uZTogJycsXG4gICAgZGF0ZV90aW1lX2Zvcm1hdDogJycsXG4gICAgbG9jYWxlOiAnJyxcbiAgICB0ZWxlZ3JhbV9uYW1lOiAnJyxcbiAgfTtcblxuICBjb25zdCBbaXNUZWxlZ3JhbU9wZW4sIHNldElzVGVsZWdyYW1PcGVuXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3Nob3dQYXNzd29yZE1vZGFsLCBzZXRTaG93UGFzc3dvcmRNb2RhbF0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IFtzdWJtaXR0aW5nLCBzZXRTdWJtaXR0aW5nXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3Nob3dTdWNjZXNzTWVzc2FnZSwgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3Nob3dFcnJvck1lc3NhZ2UsIHNldFNob3dFcnJvck1lc3NhZ2VdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdCBbc2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlLCBzZXRTaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2VdID1cbiAgICB1c2VTdGF0ZTx7XG4gICAgICBzaG93OiBib29sZWFuO1xuICAgICAgc3RhdHVzOiBzdHJpbmc7XG4gICAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgfT4oe1xuICAgICAgc2hvdzogZmFsc2UsXG4gICAgICBzdGF0dXM6ICcnLFxuICAgICAgbWVzc2FnZTogJycsXG4gICAgfSk7XG4gIGNvbnN0IFtwYXJhbXMsIHNldFBhcmFtc10gPSB1c2VTdGF0ZTx7XG4gICAgZmlyc3RfbmFtZTogc3RyaW5nO1xuICAgIGxhc3RfbmFtZTogc3RyaW5nO1xuICAgIHBob25lOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbiAgICB0aW1lX3pvbmU6IHN0cmluZztcbiAgICBkYXRlX3RpbWVfZm9ybWF0OiBzdHJpbmc7XG4gICAgbG9jYWxlOiBzdHJpbmc7XG4gICAgdGVsZWdyYW1fbmFtZTogc3RyaW5nO1xuICB9Pihpbml0aWFsUGFyYW1zU3RhdGUpO1xuXG4gIGNvbnN0IGhhbmRsZU9uQ2hhbmdlID0gKGUpID0+IHtcbiAgICBpZiAodHlwZW9mIGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoZS5zdGFydHNXaXRoKCc5NzIwJykpIHtcbiAgICAgICAgZSA9IGUucmVwbGFjZSgvKDk3MjApL2csICc5NzInKTtcbiAgICAgIH1cbiAgICAgIHNldFBhcmFtcygocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgIHBob25lOiBlLFxuICAgICAgfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBuYW1lIH0gPSBlLnRhcmdldDtcbiAgICAgIHNldFBhcmFtcygocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgIFtuYW1lXTogdmFsdWUsXG4gICAgICB9KSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldFBhcmFtc1dpdGhBZ2dyZWdhdGVkVmFsdWVzID0gKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBkYXRlX3RpbWVfZm9ybWF0OiBkYXRlVGltZUZvcm1hdC52YWx1ZSxcbiAgICAgIGxvY2FsZTogbG9jYWxlLnZhbHVlLFxuICAgICAgdGltZV96b25lOiB0aW1lem9uZS52YWx1ZSxcbiAgICB9O1xuICB9O1xuXG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5TmFtZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlOYW1lLFxuICApO1xuXG4gIGNvbnN0IHNob3dUb2FzdCA9IChkYXRhKSA9PiB7XG4gICAgY29uc3QgdXNlcm5hbWUgPSBkYXRhLnVzZXJuYW1lO1xuICAgIGNvbnN0IGVycm9yID0gZGF0YS5lcnJvcjtcbiAgICBpZiAoZGF0YS5zdGF0dXMgPT09ICdzdWNjZXNzJykge1xuICAgICAgdG9hc3Quc3VjY2VzcyhcbiAgICAgICAgaTE4bi50KGBteV9wcm9maWxlX3RhYi50ZWxlZ3JhbV9tZXNzYWdlcy4ke2RhdGEubWVzc2FnZX1gLCB7XG4gICAgICAgICAgdXNlcm5hbWUsXG4gICAgICAgIH0pLFxuICAgICAgICB7XG4gICAgICAgICAgcG9zaXRpb246ICd0b3AtY2VudGVyJyxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRvYXN0LmVycm9yKFxuICAgICAgICBpMThuLnQoYG15X3Byb2ZpbGVfdGFiLnRlbGVncmFtX21lc3NhZ2VzLiR7ZGF0YS5tZXNzYWdlfWAsIHtcbiAgICAgICAgICBlcnJvcjogZXJyb3IsXG4gICAgICAgICAgdXNlcm5hbWU6IHVzZXJuYW1lLFxuICAgICAgICB9KSxcbiAgICAgICAge1xuICAgICAgICAgIHBvc2l0aW9uOiAndG9wLWNlbnRlcicsXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAoZSkgPT4ge1xuICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICBzZXRTdWJtaXR0aW5nKHRydWUpO1xuICAgIGF4aW9zXG4gICAgICAucHV0KCcvcHJvZmlsZXMnLCB7IHVzZXI6IGdldFBhcmFtc1dpdGhBZ2dyZWdhdGVkVmFsdWVzKCkgfSlcbiAgICAgIC50aGVuKChyZXNwKSA9PiB7XG4gICAgICAgIGlmIChyZXNwLmRhdGEuZXJyb3JzID09PSBudWxsKSB7XG4gICAgICAgICAgZG9jdW1lbnRcbiAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKCcuZXJyb3ItbWVzc2FnZScpXG4gICAgICAgICAgICAuZm9yRWFjaCgocCkgPT4gKHAuaW5uZXJIVE1MID0gJycpKTtcblxuICAgICAgICAgIGRvY3VtZW50XG4gICAgICAgICAgICAucXVlcnlTZWxlY3RvckFsbCgnLmludmFsaWQtZmllbGQnKVxuICAgICAgICAgICAgLmZvckVhY2goKHApID0+IHAuY2xhc3NMaXN0LnJlbW92ZSgnaW52YWxpZC1maWVsZCcpKTtcbiAgICAgICAgICBsZXQgdXNlciA9IEpTT04ucGFyc2UocmVzcC5kYXRhLnVzZXIpO1xuICAgICAgICAgIGNvbnN0IGZpbmRMb2NhbGUgPSBsb2NhbGVPcHRpb25zLmZpbmQoKGUpID0+IGUudmFsdWUgPT09IHVzZXIubG9jYWxlKTtcbiAgICAgICAgICBjb25zdCBmaW5kRGF0ZVRpbWVGb3JtYXQgPSBkYXRlVGltZUZvcm1hdE9wdGlvbnMuZmluZChcbiAgICAgICAgICAgIChlKSA9PiBlLnZhbHVlID09PSB1c2VyLmRhdGVfdGltZV9mb3JtYXQsXG4gICAgICAgICAgKTtcbiAgICAgICAgICBjb25zdCBmaW5kVGltZXpvbmUgPSB0aW1lem9uZXMuZmluZChcbiAgICAgICAgICAgIChlKSA9PiBlLnZhbHVlID09PSB1c2VyLnRpbWVfem9uZSxcbiAgICAgICAgICApO1xuXG4gICAgICAgICAgc2V0UGFyYW1zKHVzZXIpO1xuICAgICAgICAgIHNldExvY2FsZShmaW5kTG9jYWxlISk7XG4gICAgICAgICAgc2V0RGF0ZVRpbWVGb3JtYXQoZmluZERhdGVUaW1lRm9ybWF0ISk7XG4gICAgICAgICAgc2V0VGltZXpvbmUoZmluZFRpbWV6b25lISk7XG4gICAgICAgICAgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlKHRydWUpO1xuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgICB9LCA2MDAwKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBkb2N1bWVudFxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoJy5lcnJvci1tZXNzYWdlJylcbiAgICAgICAgICAgIC5mb3JFYWNoKChwKSA9PiAocC5pbm5lckhUTUwgPSAnJykpO1xuICAgICAgICAgIGxldCBlcnJvcnMgPSByZXNwLmRhdGEuZXJyb3JzO1xuICAgICAgICAgIGZvciAoY29uc3QgZXJyb3IgaW4gZXJyb3JzKSB7XG4gICAgICAgICAgICBsZXQgZmluZEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBpbnB1dFtuYW1lPScke2Vycm9yfSddYCk7XG4gICAgICAgICAgICBsZXQgcGFyZW50ID0gZmluZEVsZW1lbnQhLmNsb3Nlc3QoJy5maWVsZCcpO1xuICAgICAgICAgICAgbGV0IGZpbmRJbnB1dCA9IHBhcmVudCEucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcbiAgICAgICAgICAgIGZpbmRJbnB1dCEuY2xhc3NMaXN0LmFkZCgnaW52YWxpZC1maWVsZCcpO1xuICAgICAgICAgICAgcGFyZW50IS5xdWVyeVNlbGVjdG9yKCcuZXJyb3ItbWVzc2FnZScpIS5pbm5lckhUTUwgPSBpMThuLnQoXG4gICAgICAgICAgICAgIGBkYXNoYm9hcmRfdjIucHJvZmlsZS5lcnJvcnMuJHtlcnJvcn1gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldFN1Ym1pdHRpbmcoZmFsc2UpO1xuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgc2V0U2hvd0Vycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgc2V0U3VibWl0dGluZyhmYWxzZSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHNldFNob3dFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICB9LCA2MDAwKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1ZpZXdlZCBQcm9maWxlIFBhZ2UnLCB7XG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgY29uc3QgdG9rZW4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbbmFtZT1jc3JmLXRva2VuXScpIS5jb250ZW50O1xuICAgIGF4aW9zLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uWydYLUNTUkYtVE9LRU4nXSA9IHRva2VuO1xuICAgIGF4aW9zLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uWydDb250ZW50LVR5cGUnXSA9ICdhcHBsaWNhdGlvbi9qcyc7XG4gICAgYXhpb3NcbiAgICAgIC5nZXQoJy9wcm9maWxlcy9yZXNvdXJjZScpXG4gICAgICAudGhlbigocmVzcCkgPT4ge1xuICAgICAgICBzZXRQYXJhbXMocmVzcC5kYXRhKTtcbiAgICAgICAgY29uc3QgZmluZExvY2FsZSA9IGxvY2FsZU9wdGlvbnMuZmluZChcbiAgICAgICAgICAoZSkgPT4gZS52YWx1ZSA9PT0gcmVzcC5kYXRhLmxvY2FsZSxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgZmluZERhdGVUaW1lRm9ybWF0ID0gZGF0ZVRpbWVGb3JtYXRPcHRpb25zLmZpbmQoXG4gICAgICAgICAgKGUpID0+IGUudmFsdWUgPT09IHJlc3AuZGF0YS5kYXRlX3RpbWVfZm9ybWF0LFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBmaW5kVGltZXpvbmUgPSB0aW1lem9uZXMuZmluZChcbiAgICAgICAgICAoZSkgPT4gZS52YWx1ZSA9PT0gcmVzcC5kYXRhLnRpbWVfem9uZSxcbiAgICAgICAgKTtcbiAgICAgICAgc2V0TG9jYWxlKGZpbmRMb2NhbGUhKTtcbiAgICAgICAgc2V0RGF0ZVRpbWVGb3JtYXQoZmluZERhdGVUaW1lRm9ybWF0ISk7XG4gICAgICAgIHNldFRpbWV6b25lKGZpbmRUaW1lem9uZSEpO1xuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGFsZXJ0KGVycm9yKSk7XG4gIH0sIFtdKTtcblxuICByZXR1cm4gKFxuICAgIDxDb250YWluZXI+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImhlYWRlci10aXRsZVwiPntpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnRpdGxlJyl9PC9kaXY+XG4gICAgICA8Zm9ybSBhY3Rpb249XCJcIiBvblN1Ym1pdD17KGUpID0+IGhhbmRsZVN1Ym1pdChlKX0+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29udGVudFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGl0bGVcIj5cbiAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnBlcnNvbmFsLWRldGFpbHMnKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJwZXJzb25hbFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuZmlyc3RfbmFtZScpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm15LWlucHV0XCJcbiAgICAgICAgICAgICAgICBuYW1lPXsnZmlyc3RfbmFtZSd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy5maXJzdF9uYW1lfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZSkgPT4gaGFuZGxlT25DaGFuZ2UoZSl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Vycm9yLW1lc3NhZ2UnfT48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmxhc3RfbmFtZScpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm15LWlucHV0XCJcbiAgICAgICAgICAgICAgICBuYW1lPXsnbGFzdF9uYW1lJ31cbiAgICAgICAgICAgICAgICB2YWx1ZT17cGFyYW1zLmxhc3RfbmFtZX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+IGhhbmRsZU9uQ2hhbmdlKGUpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9eydlcnJvci1tZXNzYWdlJ30+PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkIGZpZWxkLS1yZWFkb25seVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuZW1haWwnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHJlYWRPbmx5PXt0cnVlfVxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJteS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgbmFtZT17J2VtYWlsJ31cbiAgICAgICAgICAgICAgICB2YWx1ZT17cGFyYW1zLmVtYWlsfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9eydlcnJvci1tZXNzYWdlJ30+PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5waG9uZScpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPFBob25lSW5wdXRcbiAgICAgICAgICAgICAgICBjb3VudHJ5PXsnaWwnfVxuICAgICAgICAgICAgICAgIGxvY2FsaXphdGlvbj17aTE4bi50KCdjb3VudHJpZXMnKX1cbiAgICAgICAgICAgICAgICBpbnB1dENsYXNzPVwicGhvbmUtaW5wdXRcIlxuICAgICAgICAgICAgICAgIGNvbnRhaW5lckNsYXNzPVwibXktcGhvbmVcIlxuICAgICAgICAgICAgICAgIGJ1dHRvbkNsYXNzPVwiZHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIGRyb3Bkb3duQ2xhc3M9XCJwaG9uZS1kcm9wZG93blwiXG4gICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy5waG9uZX1cbiAgICAgICAgICAgICAgICBlbmFibGVTZWFyY2hcbiAgICAgICAgICAgICAgICBzZWFyY2hQbGFjZWhvbGRlcj17aTE4bi50KCdzZWFyY2gnKX1cbiAgICAgICAgICAgICAgICBjb3VudHJ5Q29kZUVkaXRhYmxlPXtmYWxzZX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17KHZhbHVlKSA9PiB7XG4gICAgICAgICAgICAgICAgICBoYW5kbGVPbkNoYW5nZSh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICBpbnB1dFByb3BzPXt7IG5hbWU6ICdwaG9uZScgfX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXsnZXJyb3ItbWVzc2FnZSd9PjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiY2hhbmdlLXBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRTaG93UGFzc3dvcmRNb2RhbCh0cnVlKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxQZW5Tdmcgd2lkdGg9XCIxMnB4XCIgaGVpZ2h0PVwiMTJweFwiIGZpbGw9XCIjZjAxMzRjXCIgLz5cbiAgICAgICAgICAgICAgICB7JyAgJ31cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5jaGFuZ2UtcGFzc3dvcmQnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPntpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnNldHRpbmdzJyl9PC9kaXY+XG4gICAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwic2V0dGluZ3NcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnRpbWUtem9uZScpfSpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXktaW5wdXRcIj5cbiAgICAgICAgICAgICAgICA8U2VsZWN0XG4gICAgICAgICAgICAgICAgICBzZXRWYWx1ZT17c2V0VGltZXpvbmV9XG4gICAgICAgICAgICAgICAgICB2YWx1ZT17dGltZXpvbmV9XG4gICAgICAgICAgICAgICAgICBvcHRpb25zPXt0aW1lem9uZXN9XG4gICAgICAgICAgICAgICAgICBjYW5jZWxUZXh0V2lkdGhcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuZGF0ZS10aW1lLWZvcm1hdCcpfSpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibXktaW5wdXRcIj5cbiAgICAgICAgICAgICAgICA8U2VsZWN0XG4gICAgICAgICAgICAgICAgICBvcHRpb25zPXtkYXRlVGltZUZvcm1hdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICB2YWx1ZT17ZGF0ZVRpbWVGb3JtYXR9XG4gICAgICAgICAgICAgICAgICBzZXRWYWx1ZT17c2V0RGF0ZVRpbWVGb3JtYXR9XG4gICAgICAgICAgICAgICAgICBjYW5jZWxUZXh0V2lkdGhcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydkYXRlLXRpbWUtZm9ybWF0J30+XG4gICAgICAgICAgICAgICAge2RhdGVUaW1lRm9ybWF0ICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgICAgICAgIG5ldyBEYXRlKCkudG9Mb2NhbGVEYXRlU3RyaW5nKCdlbi1VUycsIGRhdGVUaW1lRm9ybWF0LmZvcm1hdCl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5sYW5ndWFnZScpfSpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnbXktaW5wdXQnfT5cbiAgICAgICAgICAgICAgICA8U2VsZWN0XG4gICAgICAgICAgICAgICAgICBvcHRpb25zPXtsb2NhbGVPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2xvY2FsZX1cbiAgICAgICAgICAgICAgICAgIHNldFZhbHVlPXtzZXRMb2NhbGV9XG4gICAgICAgICAgICAgICAgICBjYW5jZWxUZXh0V2lkdGhcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZCBmaWVsZC0tYnV0dG9uc1wiPlxuICAgICAgICAgICAgICB7cGFyYW1zLnRlbGVncmFtX25hbWUgPT09ICcnICYmIChcbiAgICAgICAgICAgICAgICA8YSBjbGFzc05hbWU9XCJ0ZWxlZ3JhbVwiIG9uQ2xpY2s9eygpID0+IHNldElzVGVsZWdyYW1PcGVuKHRydWUpfT5cbiAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmNvbm5lY3QtdG8tdGVsZWdyYW0nKX1cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIHtwYXJhbXMudGVsZWdyYW1fbmFtZSAhPT0gJycgJiYgKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS50ZWxlZ3JhbV9uYW1lJyl9XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwicmlnaHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0SXNUZWxlZ3JhbU9wZW4odHJ1ZSl9XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPFBlblN2ZyB3aWR0aD1cIjEycHhcIiBoZWlnaHQ9XCIxMnB4XCIgZmlsbD1cIiNmMDEzNGNcIiAvPnsnICd9XG4gICAgICAgICAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5jaGFuZ2UtbmFtZScpfVxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eyd0ZWxlZ3JhbS1leGlzdGluZy1pbnB1dCd9PlxuICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9e3RydWV9XG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJteS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBuYW1lPXsndGVsZWdyYW1fbmFtZSd9XG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17cGFyYW1zLnRlbGVncmFtX25hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9eyd0ZWxlZ3JhbS1leGlzdGluZy1pbnB1dF9fY2FuY2VsLWJ1dHRvbid9XG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRQYXJhbXMoKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVsZWdyYW1fbmFtZTogJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgPENhbmNlbCAvPlxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXsnZXJyb3ItbWVzc2FnZSd9PjwvcD5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9eyd0ZWxlZ3JhbSBvcGVuJ31cbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBheGlvc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KGAvdGVsZWdyYW0vc2VuZF90ZXN0X21lc3NhZ2UuanNvbmApXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKChyZXNwKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1czpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzcC5kYXRhLnN0YXR1c1swXS50b1VwcGVyQ2FzZSgpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzcC5kYXRhLnN0YXR1cy5zdWJzdHJpbmcoMSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZXNwLmRhdGEubWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3c6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRTaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM6ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvdzogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9LCA2MDAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93VG9hc3QocmVzcC5kYXRhKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gYWxlcnQoZXJyb3IpKTtcbiAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgeyFzaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2Uuc2hvdyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgaTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zZW5kX3RlbGVncmFtX21lc3NhZ2UnKX1cbiAgICAgICAgICAgICAgICAgICAgICB7c2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlLnNob3cgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZS5zdGF0dXN9XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgIDxidXR0b24gdHlwZT17J3N1Ym1pdCd9IGNsYXNzTmFtZT17J3NhdmUnfSBkaXNhYmxlZD17c3VibWl0dGluZ30+XG4gICAgICAgICAgICB7IXN1Ym1pdHRpbmcgJiZcbiAgICAgICAgICAgICAgIXNob3dTdWNjZXNzTWVzc2FnZSAmJlxuICAgICAgICAgICAgICAhc2hvd0Vycm9yTWVzc2FnZSAmJlxuICAgICAgICAgICAgICBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnN1Ym1pdCcpfVxuICAgICAgICAgICAge3N1Ym1pdHRpbmcgJiZcbiAgICAgICAgICAgICAgIXNob3dTdWNjZXNzTWVzc2FnZSAmJlxuICAgICAgICAgICAgICAhc2hvd0Vycm9yTWVzc2FnZSAmJlxuICAgICAgICAgICAgICBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnN1Ym1pdHRpbmcnKX1cbiAgICAgICAgICAgIHtzaG93U3VjY2Vzc01lc3NhZ2UgJiYgaTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zdWNjZXNzJyl9XG4gICAgICAgICAgICB7c2hvd0Vycm9yTWVzc2FnZSAmJiBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmVycm9yJyl9XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9mb3JtPlxuXG4gICAgICB7c2hvd1Bhc3N3b3JkTW9kYWwgJiYgKFxuICAgICAgICA8UGFzc3dvcmRNb2RhbFxuICAgICAgICAgIGNsb3NlPXsoKSA9PiBzZXRTaG93UGFzc3dvcmRNb2RhbChmYWxzZSl9XG4gICAgICAgICAgc2F2ZT17KCkgPT4ge319XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgICAge2lzVGVsZWdyYW1PcGVuICYmIChcbiAgICAgICAgPFRlbGVncmFtTW9kYWxcbiAgICAgICAgICBjbG9zZT17KCkgPT4gc2V0SXNUZWxlZ3JhbU9wZW4oZmFsc2UpfVxuICAgICAgICAgIGhhbmRsZU9uQ2hhbmdlPXtoYW5kbGVPbkNoYW5nZX1cbiAgICAgICAgICBoYW5kbGVTdWJtaXQ9e2hhbmRsZVN1Ym1pdH1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9Db250YWluZXI+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLGNBQUEsR0FBQUosT0FBQTtBQUE4RCxJQUFBSyxJQUFBLEdBQUFMLE9BQUE7QUFBQSxJQUFBTSxPQUFBLEdBQUFOLE9BQUE7QUFHOUQsSUFBQU8sZ0JBQUEsR0FBQUosc0JBQUEsQ0FBQUgsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQVEsY0FBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsTUFBQSxHQUFBTixzQkFBQSxDQUFBSCxPQUFBO0FBQ0Es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
567
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfU2VsZWN0IiwiX2kxOG4iLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1Bhc3N3b3JkTW9kYWwiLCJfcGVuIiwiX2NhbmNlbCIsIl9yZWFjdFBob25lSW5wdXQiLCJfVGVsZWdyYW1Nb2RhbCIsIl9heGlvcyIsIl9Db250YWluZXIiLCJfbW9tZW50VGltZXpvbmUiLCJfQW5hbHl0aWNzIiwiX3JlYWN0UmVkdXgiLCJfcmVhY3RUb2FzdGlmeSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiUHJvZmlsZVBhZ2UiLCJ0aW1lem9uZXNBcnJheSIsIm1vbWVudCIsInR6IiwibmFtZXMiLCJkYXRlVGltZUZvcm1hdE9wdGlvbnMiLCJ2YWx1ZSIsImxhYmVsIiwiZm9ybWF0IiwibW9udGgiLCJkYXkiLCJ5ZWFyIiwiaG91ciIsIm1pbnV0ZSIsImhvdXIxMiIsInRpbWV6b25lcyIsIm1hcCIsInQiLCJsb2NhbGVPcHRpb25zIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwibG9jYWxlIiwic2V0TG9jYWxlIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJkYXRlVGltZUZvcm1hdCIsInNldERhdGVUaW1lRm9ybWF0IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJ0aW1lem9uZSIsInNldFRpbWV6b25lIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJkZXBhcnRtZW50cyIsInNldERlcGFydG1lbnRzIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTEwIiwiYnVzaW5lc3NSb2xlcyIsInNldEJ1c2luZXNzUm9sZXMiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwiZGVwYXJ0bWVudCIsInNldERlcGFydG1lbnQiLCJfdXNlU3RhdGUxMyIsIl91c2VTdGF0ZTE0IiwiYnVzaW5lc3NSb2xlIiwic2V0QnVzaW5lc3NSb2xlIiwiaW5pdGlhbFBhcmFtc1N0YXRlIiwiZmlyc3RfbmFtZSIsImxhc3RfbmFtZSIsInBob25lIiwiZW1haWwiLCJ0aW1lX3pvbmUiLCJkYXRlX3RpbWVfZm9ybWF0IiwidGVsZWdyYW1fbmFtZSIsIm90aGVyX2J1c2luZXNzX3JvbGVfbmFtZSIsIm90aGVyX2RlcGFydG1lbnRfbmFtZSIsImJ1c2luZXNzX3JvbGUiLCJfdXNlU3RhdGUxNSIsIl91c2VTdGF0ZTE2IiwiaXNUZWxlZ3JhbU9wZW4iLCJzZXRJc1RlbGVncmFtT3BlbiIsIl91c2VTdGF0ZTE3IiwiX3VzZVN0YXRlMTgiLCJzaG93UGFzc3dvcmRNb2RhbCIsInNldFNob3dQYXNzd29yZE1vZGFsIiwiX3VzZVN0YXRlMTkiLCJfdXNlU3RhdGUyMCIsInN1Ym1pdHRpbmciLCJzZXRTdWJtaXR0aW5nIiwiX3VzZVN0YXRlMjEiLCJfdXNlU3RhdGUyMiIsInNob3dTdWNjZXNzTWVzc2FnZSIsInNldFNob3dTdWNjZXNzTWVzc2FnZSIsIl91c2VTdGF0ZTIzIiwiX3VzZVN0YXRlMjQiLCJzaG93RXJyb3JNZXNzYWdlIiwic2V0U2hvd0Vycm9yTWVzc2FnZSIsIl91c2VTdGF0ZTI1Iiwic2hvdyIsInN0YXR1cyIsIm1lc3NhZ2UiLCJfdXNlU3RhdGUyNiIsInNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZSIsInNldFNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZSIsIl91c2VTdGF0ZTI3IiwiX3VzZVN0YXRlMjgiLCJwYXJhbXMiLCJzZXRQYXJhbXMiLCJoYW5kbGVPbkNoYW5nZSIsImUiLCJzdGFydHNXaXRoIiwicmVwbGFjZSIsInByZXZTdGF0ZSIsIl9vYmplY3RTcHJlYWQzIiwiX2UkdGFyZ2V0IiwidGFyZ2V0IiwibmFtZSIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJoYW5kbGVCdXNpbmVzc1JvbGVDaGFuZ2UiLCJoYW5kbGVEZXBhcnRtZW50Q2hhbmdlIiwiZ2V0UGFyYW1zV2l0aEFnZ3JlZ2F0ZWRWYWx1ZXMiLCJkZXBhcnRtZW50X2lkIiwidW5kZWZpbmVkIiwiYnVzaW5lc3Nfcm9sZV9pZCIsIndhdGVyQXV0aG9yaXR5TmFtZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJnbG9iYWxfZGF0YSIsInNob3dUb2FzdCIsImRhdGEiLCJ1c2VybmFtZSIsImVycm9yIiwidG9hc3QiLCJzdWNjZXNzIiwiaTE4biIsImNvbmNhdCIsInBvc2l0aW9uIiwiaGFuZGxlU3VibWl0IiwicHJldmVudERlZmF1bHQiLCJheGlvcyIsInB1dCIsInVzZXIiLCJ0aGVuIiwicmVzcCIsImVycm9ycyIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJwIiwiaW5uZXJIVE1MIiwiY2xhc3NMaXN0IiwicmVtb3ZlIiwiSlNPTiIsInBhcnNlIiwiZmluZExvY2FsZSIsImZpbmQiLCJmaW5kRGF0ZVRpbWVGb3JtYXQiLCJmaW5kVGltZXpvbmUiLCJzZXRUaW1lb3V0IiwiZmluZEVsZW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwicGFyZW50IiwiY2xvc2VzdCIsImZpbmRJbnB1dCIsImFkZCIsImNhdGNoIiwidXNlRWZmZWN0IiwiYW5hbHl0aWNzVHJhY2siLCJ1dGlsaXR5X25hbWUiLCJ0b2tlbiIsImNvbnRlbnQiLCJkZWZhdWx0cyIsImhlYWRlcnMiLCJjb21tb24iLCJmaW5kUHJvcGVydHkiLCJvYmplY3QiLCJwcm9wZXJ0eSIsImJ1c2luZXNzX3JvbGVzIiwiYWxlcnQiLCJjcmVhdGVFbGVtZW50IiwiQ29udGFpbmVyIiwiY2xhc3NOYW1lIiwiYWN0aW9uIiwib25TdWJtaXQiLCJ0eXBlIiwib25DaGFuZ2UiLCJyZWFkT25seSIsImNvdW50cnkiLCJsb2NhbGl6YXRpb24iLCJpbnB1dENsYXNzIiwiY29udGFpbmVyQ2xhc3MiLCJidXR0b25DbGFzcyIsImRyb3Bkb3duQ2xhc3MiLCJlbmFibGVTZWFyY2giLCJzZWFyY2hQbGFjZWhvbGRlciIsImNvdW50cnlDb2RlRWRpdGFibGUiLCJpbnB1dFByb3BzIiwiRnJhZ21lbnQiLCJTZWxlY3QiLCJzZXRWYWx1ZSIsIm9wdGlvbnMiLCJjYW5jZWxUZXh0V2lkdGgiLCJ0cmFuc2xhdGUiLCJ0cmFuc2xhdGlvbl9rZXkiLCJsZW5ndGgiLCJvbkNsaWNrIiwiUmVhY3RDb21wb25lbnQiLCJ3aWR0aCIsImhlaWdodCIsImZpbGwiLCJEYXRlIiwidG9Mb2NhbGVEYXRlU3RyaW5nIiwidG9VcHBlckNhc2UiLCJzdWJzdHJpbmciLCJkaXNhYmxlZCIsIlBhc3N3b3JkTW9kYWwiLCJjbG9zZSIsInNhdmUiLCJUZWxlZ3JhbU1vZGFsIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9Qcm9maWxlUGFnZS9Qcm9maWxlUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICdzcmMvY29tcG9uZW50cy9DdXN0b21JbnB1dHMvU2VsZWN0L1NlbGVjdCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgUGFzc3dvcmRNb2RhbCB9IGZyb20gJy4vUGFzc3dvcmRNb2RhbC9QYXNzd29yZE1vZGFsJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFBlblN2ZyB9IGZyb20gJy4vcGVuLnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBDYW5jZWwgfSBmcm9tICcuL2NhbmNlbC5zdmcnO1xuaW1wb3J0IFBob25lSW5wdXQgZnJvbSAncmVhY3QtcGhvbmUtaW5wdXQtMic7XG5pbXBvcnQgJ3JlYWN0LXBob25lLWlucHV0LTIvbGliL3N0eWxlLmNzcyc7XG5pbXBvcnQgeyBUZWxlZ3JhbU1vZGFsIH0gZnJvbSAnLi9UZWxlZ3JhbU1vZGFsL1RlbGVncmFtTW9kYWwnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IENvbnRhaW5lciB9IGZyb20gJy4vQ29udGFpbmVyJztcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50LXRpbWV6b25lJztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL0FuYWx5dGljcyc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHRvYXN0IH0gZnJvbSAncmVhY3QtdG9hc3RpZnknO1xuXG5leHBvcnQgY29uc3QgUHJvZmlsZVBhZ2UgPSAoKSA9PiB7XG4gIGNvbnN0IHRpbWV6b25lc0FycmF5ID0gbW9tZW50LnR6Lm5hbWVzKCk7XG4gIGNvbnN0IGRhdGVUaW1lRm9ybWF0T3B0aW9ucyA9IFtcbiAgICB7XG4gICAgICB2YWx1ZTogJ3VzJyxcbiAgICAgIGxhYmVsOiAnVW5pdGVkIFN0YXRlcycsXG4gICAgICBmb3JtYXQ6IHtcbiAgICAgICAgbW9udGg6ICdzaG9ydCcsXG4gICAgICAgIGRheTogJ251bWVyaWMnLFxuICAgICAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgICAgIGhvdXI6ICdudW1lcmljJyxcbiAgICAgICAgbWludXRlOiAnbnVtZXJpYycsXG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgdmFsdWU6ICdldScsXG4gICAgICBsYWJlbDogJ0V1cm9wZScsXG4gICAgICBmb3JtYXQ6IHtcbiAgICAgICAgZGF5OiAnbnVtZXJpYycsXG4gICAgICAgIG1vbnRoOiAnbnVtZXJpYycsXG4gICAgICAgIHllYXI6ICdudW1lcmljJyxcbiAgICAgICAgaG91cjogJ251bWVyaWMnLFxuICAgICAgICBtaW51dGU6ICdudW1lcmljJyxcbiAgICAgICAgaG91cjEyOiBmYWxzZSxcbiAgICAgIH0sXG4gICAgfSxcbiAgXTtcblxuICBjb25zdCB0aW1lem9uZXMgPSB0aW1lem9uZXNBcnJheS5tYXAoKHQpID0+IHtcbiAgICByZXR1cm4geyB2YWx1ZTogdCwgbGFiZWw6IHQgfTtcbiAgfSk7XG5cbiAgY29uc3QgbG9jYWxlT3B0aW9ucyA9IFtcbiAgICB7IHZhbHVlOiAnZW4nLCBsYWJlbDogJ0VuZ2xpc2gnIH0sXG4gICAgeyB2YWx1ZTogJ2VuX3VrJywgbGFiZWw6ICdFbmdsaXNoIChVSyknIH0sXG4gICAgeyB2YWx1ZTogJ2hlJywgbGFiZWw6ICfXoteR16jXmdeqJyB9LFxuICAgIHsgdmFsdWU6ICdmcicsIGxhYmVsOiAnRnJhbsOnYWlzJyB9LFxuICAgIHsgdmFsdWU6ICdpdCcsIGxhYmVsOiAnSXRhbGlhbm8nIH0sXG4gIF07XG5cbiAgY29uc3QgW2xvY2FsZSwgc2V0TG9jYWxlXSA9IHVzZVN0YXRlPHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH0+KGxvY2FsZU9wdGlvbnNbMF0pO1xuXG4gIGNvbnN0IFtkYXRlVGltZUZvcm1hdCwgc2V0RGF0ZVRpbWVGb3JtYXRdID0gdXNlU3RhdGU8e1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBmb3JtYXQ6IG9iamVjdDtcbiAgfT4oZGF0ZVRpbWVGb3JtYXRPcHRpb25zWzBdKTtcblxuICBjb25zdCBbdGltZXpvbmUsIHNldFRpbWV6b25lXSA9IHVzZVN0YXRlPHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH0+KHRpbWV6b25lc1syMF0pO1xuXG4gIGNvbnN0IFtkZXBhcnRtZW50cywgc2V0RGVwYXJ0bWVudHNdID0gdXNlU3RhdGU8XG4gICAge1xuICAgICAgdmFsdWU6IHN0cmluZztcbiAgICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgfVtdXG4gID4oW3sgdmFsdWU6ICcnLCBsYWJlbDogJycgfV0pO1xuXG4gIGNvbnN0IFtidXNpbmVzc1JvbGVzLCBzZXRCdXNpbmVzc1JvbGVzXSA9IHVzZVN0YXRlPFxuICAgIHtcbiAgICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgICBsYWJlbDogc3RyaW5nO1xuICAgIH1bXVxuICA+KFt7IHZhbHVlOiAnJywgbGFiZWw6ICcnIH1dKTtcblxuICBjb25zdCBbZGVwYXJ0bWVudCwgc2V0RGVwYXJ0bWVudF0gPSB1c2VTdGF0ZTxhbnk+KGRlcGFydG1lbnRzWzBdKTtcblxuICBjb25zdCBbYnVzaW5lc3NSb2xlLCBzZXRCdXNpbmVzc1JvbGVdID0gdXNlU3RhdGU8YW55PihidXNpbmVzc1JvbGVzWzBdKTtcblxuICBjb25zdCBpbml0aWFsUGFyYW1zU3RhdGUgPSB7XG4gICAgZmlyc3RfbmFtZTogJycsXG4gICAgbGFzdF9uYW1lOiAnJyxcbiAgICBwaG9uZTogJycsXG4gICAgZW1haWw6ICcnLFxuICAgIHRpbWVfem9uZTogJycsXG4gICAgZGF0ZV90aW1lX2Zvcm1hdDogJycsXG4gICAgbG9jYWxlOiAnJyxcbiAgICB0ZWxlZ3JhbV9uYW1lOiAnJyxcbiAgICBvdGhlcl9idXNpbmVzc19yb2xlX25hbWU6ICcnLFxuICAgIG90aGVyX2RlcGFydG1lbnRfbmFtZTogJycsXG4gICAgYnVzaW5lc3Nfcm9sZTogJycsXG4gICAgZGVwYXJ0bWVudDogJycsXG4gIH07XG5cbiAgY29uc3QgW2lzVGVsZWdyYW1PcGVuLCBzZXRJc1RlbGVncmFtT3Blbl0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IFtzaG93UGFzc3dvcmRNb2RhbCwgc2V0U2hvd1Bhc3N3b3JkTW9kYWxdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdCBbc3VibWl0dGluZywgc2V0U3VibWl0dGluZ10gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IFtzaG93U3VjY2Vzc01lc3NhZ2UsIHNldFNob3dTdWNjZXNzTWVzc2FnZV0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IFtzaG93RXJyb3JNZXNzYWdlLCBzZXRTaG93RXJyb3JNZXNzYWdlXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3Nob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZSwgc2V0U2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlXSA9XG4gICAgdXNlU3RhdGU8e1xuICAgICAgc2hvdzogYm9vbGVhbjtcbiAgICAgIHN0YXR1czogc3RyaW5nO1xuICAgICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIH0+KHtcbiAgICAgIHNob3c6IGZhbHNlLFxuICAgICAgc3RhdHVzOiAnJyxcbiAgICAgIG1lc3NhZ2U6ICcnLFxuICAgIH0pO1xuICBjb25zdCBbcGFyYW1zLCBzZXRQYXJhbXNdID0gdXNlU3RhdGU8e1xuICAgIGZpcnN0X25hbWU6IHN0cmluZztcbiAgICBsYXN0X25hbWU6IHN0cmluZztcbiAgICBwaG9uZTogc3RyaW5nO1xuICAgIGVtYWlsOiBzdHJpbmc7XG4gICAgdGltZV96b25lOiBzdHJpbmc7XG4gICAgZGF0ZV90aW1lX2Zvcm1hdDogc3RyaW5nO1xuICAgIGxvY2FsZTogc3RyaW5nO1xuICAgIHRlbGVncmFtX25hbWU6IHN0cmluZztcbiAgICBvdGhlcl9idXNpbmVzc19yb2xlX25hbWU6IHN0cmluZztcbiAgICBvdGhlcl9kZXBhcnRtZW50X25hbWU6IHN0cmluZztcbiAgfT4oaW5pdGlhbFBhcmFtc1N0YXRlKTtcblxuICBjb25zdCBoYW5kbGVPbkNoYW5nZSA9IChlKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBlID09PSAnc3RyaW5nJykge1xuICAgICAgaWYgKGUuc3RhcnRzV2l0aCgnOTcyMCcpKSB7XG4gICAgICAgIGUgPSBlLnJlcGxhY2UoLyg5NzIwKS9nLCAnOTcyJyk7XG4gICAgICB9XG4gICAgICBzZXRQYXJhbXMoKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICBwaG9uZTogZSxcbiAgICAgIH0pKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgeyB2YWx1ZSwgbmFtZSB9ID0gZS50YXJnZXQ7XG4gICAgICBzZXRQYXJhbXMoKHByZXZTdGF0ZSkgPT4gKHtcbiAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICBbbmFtZV06IHZhbHVlLFxuICAgICAgfSkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVCdXNpbmVzc1JvbGVDaGFuZ2UgPSAoZSkgPT4ge1xuICAgIGlmIChlLnRhcmdldCAhPT0gbnVsbCkge1xuICAgICAgc2V0UGFyYW1zKHtcbiAgICAgICAgLi4ucGFyYW1zLFxuICAgICAgICBidXNpbmVzc19yb2xlOiBlLnZhbHVlLFxuICAgICAgICBvdGhlcl9idXNpbmVzc19yb2xlX25hbWU6IGUudGFyZ2V0LnZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZURlcGFydG1lbnRDaGFuZ2UgPSAoZSkgPT4ge1xuICAgIGlmIChlLnRhcmdldCAhPT0gbnVsbCkge1xuICAgICAgc2V0UGFyYW1zKHtcbiAgICAgICAgLi4ucGFyYW1zLFxuICAgICAgICBkZXBhcnRtZW50OiBlLnZhbHVlLFxuICAgICAgICBvdGhlcl9kZXBhcnRtZW50X25hbWU6IGUudGFyZ2V0LnZhbHVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldFBhcmFtc1dpdGhBZ2dyZWdhdGVkVmFsdWVzID0gKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBkYXRlX3RpbWVfZm9ybWF0OiBkYXRlVGltZUZvcm1hdC52YWx1ZSxcbiAgICAgIGxvY2FsZTogbG9jYWxlLnZhbHVlLFxuICAgICAgdGltZV96b25lOiB0aW1lem9uZS52YWx1ZSxcbiAgICAgIGRlcGFydG1lbnRfaWQ6IGRlcGFydG1lbnQgPT09IHVuZGVmaW5lZCA/IG51bGwgOiBkZXBhcnRtZW50LnZhbHVlLFxuICAgICAgYnVzaW5lc3Nfcm9sZV9pZDogYnVzaW5lc3NSb2xlID09PSB1bmRlZmluZWQgPyBudWxsIDogYnVzaW5lc3NSb2xlLnZhbHVlLFxuICAgIH07XG4gIH07XG5cbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlOYW1lID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICk7XG5cbiAgY29uc3Qgc2hvd1RvYXN0ID0gKGRhdGEpID0+IHtcbiAgICBjb25zdCB1c2VybmFtZSA9IGRhdGEudXNlcm5hbWU7XG4gICAgY29uc3QgZXJyb3IgPSBkYXRhLmVycm9yO1xuICAgIGlmIChkYXRhLnN0YXR1cyA9PT0gJ3N1Y2Nlc3MnKSB7XG4gICAgICB0b2FzdC5zdWNjZXNzKFxuICAgICAgICBpMThuLnQoYG15X3Byb2ZpbGVfdGFiLnRlbGVncmFtX21lc3NhZ2VzLiR7ZGF0YS5tZXNzYWdlfWAsIHtcbiAgICAgICAgICB1c2VybmFtZSxcbiAgICAgICAgfSksXG4gICAgICAgIHtcbiAgICAgICAgICBwb3NpdGlvbjogJ3RvcC1jZW50ZXInLFxuICAgICAgICB9LFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdG9hc3QuZXJyb3IoXG4gICAgICAgIGkxOG4udChgbXlfcHJvZmlsZV90YWIudGVsZWdyYW1fbWVzc2FnZXMuJHtkYXRhLm1lc3NhZ2V9YCwge1xuICAgICAgICAgIGVycm9yOiBlcnJvcixcbiAgICAgICAgICB1c2VybmFtZTogdXNlcm5hbWUsXG4gICAgICAgIH0pLFxuICAgICAgICB7XG4gICAgICAgICAgcG9zaXRpb246ICd0b3AtY2VudGVyJyxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChlKSA9PiB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHNldFN1Ym1pdHRpbmcodHJ1ZSk7XG4gICAgYXhpb3NcbiAgICAgIC5wdXQoJy9wcm9maWxlcycsIHsgdXNlcjogZ2V0UGFyYW1zV2l0aEFnZ3JlZ2F0ZWRWYWx1ZXMoKSB9KVxuICAgICAgLnRoZW4oKHJlc3ApID0+IHtcbiAgICAgICAgaWYgKHJlc3AuZGF0YS51c2VyLmVycm9ycyA9PT0gbnVsbCkge1xuICAgICAgICAgIGRvY3VtZW50XG4gICAgICAgICAgICAucXVlcnlTZWxlY3RvckFsbCgnLmVycm9yLW1lc3NhZ2UnKVxuICAgICAgICAgICAgLmZvckVhY2goKHApID0+IChwLmlubmVySFRNTCA9ICcnKSk7XG5cbiAgICAgICAgICBkb2N1bWVudFxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoJy5pbnZhbGlkLWZpZWxkJylcbiAgICAgICAgICAgIC5mb3JFYWNoKChwKSA9PiBwLmNsYXNzTGlzdC5yZW1vdmUoJ2ludmFsaWQtZmllbGQnKSk7XG4gICAgICAgICAgbGV0IHVzZXIgPSBKU09OLnBhcnNlKHJlc3AuZGF0YS51c2VyKTtcbiAgICAgICAgICBjb25zdCBmaW5kTG9jYWxlID0gbG9jYWxlT3B0aW9ucy5maW5kKChlKSA9PiBlLnZhbHVlID09PSB1c2VyLmxvY2FsZSk7XG4gICAgICAgICAgY29uc3QgZmluZERhdGVUaW1lRm9ybWF0ID0gZGF0ZVRpbWVGb3JtYXRPcHRpb25zLmZpbmQoXG4gICAgICAgICAgICAoZSkgPT4gZS52YWx1ZSA9PT0gdXNlci5kYXRlX3RpbWVfZm9ybWF0LFxuICAgICAgICAgICk7XG4gICAgICAgICAgY29uc3QgZmluZFRpbWV6b25lID0gdGltZXpvbmVzLmZpbmQoXG4gICAgICAgICAgICAoZSkgPT4gZS52YWx1ZSA9PT0gdXNlci50aW1lX3pvbmUsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHNldFBhcmFtcyh1c2VyKTtcbiAgICAgICAgICBzZXRMb2NhbGUoZmluZExvY2FsZSEpO1xuICAgICAgICAgIHNldERhdGVUaW1lRm9ybWF0KGZpbmREYXRlVGltZUZvcm1hdCEpO1xuICAgICAgICAgIHNldFRpbWV6b25lKGZpbmRUaW1lem9uZSEpO1xuICAgICAgICAgIHNldFNob3dTdWNjZXNzTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHNldFNob3dTdWNjZXNzTWVzc2FnZShmYWxzZSk7XG4gICAgICAgICAgfSwgNjAwMCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZG9jdW1lbnRcbiAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKCcuZXJyb3ItbWVzc2FnZScpXG4gICAgICAgICAgICAuZm9yRWFjaCgocCkgPT4gKHAuaW5uZXJIVE1MID0gJycpKTtcbiAgICAgICAgICBsZXQgZXJyb3JzID0gcmVzcC5kYXRhLnVzZXIuZXJyb3JzO1xuICAgICAgICAgIGZvciAoY29uc3QgZXJyb3IgaW4gZXJyb3JzKSB7XG4gICAgICAgICAgICBsZXQgZmluZEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGBpbnB1dFtuYW1lPScke2Vycm9yfSddYCk7XG4gICAgICAgICAgICBsZXQgcGFyZW50ID0gZmluZEVsZW1lbnQhLmNsb3Nlc3QoJy5maWVsZCcpO1xuICAgICAgICAgICAgbGV0IGZpbmRJbnB1dCA9IHBhcmVudCEucXVlcnlTZWxlY3RvcignaW5wdXQnKTtcbiAgICAgICAgICAgIGZpbmRJbnB1dCEuY2xhc3NMaXN0LmFkZCgnaW52YWxpZC1maWVsZCcpO1xuICAgICAgICAgICAgcGFyZW50IS5xdWVyeVNlbGVjdG9yKCcuZXJyb3ItbWVzc2FnZScpIS5pbm5lckhUTUwgPSBpMThuLnQoXG4gICAgICAgICAgICAgIGBkYXNoYm9hcmRfdjIucHJvZmlsZS5lcnJvcnMuJHtlcnJvcn1gLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNldFN1Ym1pdHRpbmcoZmFsc2UpO1xuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgc2V0U2hvd0Vycm9yTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgc2V0U3VibWl0dGluZyhmYWxzZSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHNldFNob3dFcnJvck1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICB9LCA2MDAwKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1ZpZXdlZCBQcm9maWxlIFBhZ2UnLCB7XG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgY29uc3QgdG9rZW4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbbmFtZT1jc3JmLXRva2VuXScpIS5jb250ZW50O1xuICAgIGF4aW9zLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uWydYLUNTUkYtVE9LRU4nXSA9IHRva2VuO1xuICAgIGF4aW9zLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uWydDb250ZW50LVR5cGUnXSA9ICdhcHBsaWNhdGlvbi9qcyc7XG4gICAgYXhpb3NcbiAgICAgIC5nZXQoYC9wcm9maWxlcy9yZXNvdXJjZWApXG4gICAgICAudGhlbigocmVzcCkgPT4ge1xuICAgICAgICBzZXRQYXJhbXMocmVzcC5kYXRhLnVzZXIpO1xuICAgICAgICBjb25zdCBmaW5kUHJvcGVydHkgPSAob2JqZWN0LCBwcm9wZXJ0eSkgPT4ge1xuICAgICAgICAgIHJldHVybiBvYmplY3QuZmluZCgoZSkgPT4gZS52YWx1ZSA9PT0gcHJvcGVydHkpO1xuICAgICAgICB9O1xuICAgICAgICBzZXRMb2NhbGUoZmluZFByb3BlcnR5KGxvY2FsZU9wdGlvbnMsIHJlc3AuZGF0YS51c2VyLmxvY2FsZSkpO1xuICAgICAgICBzZXREYXRlVGltZUZvcm1hdChcbiAgICAgICAgICBmaW5kUHJvcGVydHkoZGF0ZVRpbWVGb3JtYXRPcHRpb25zLCByZXNwLmRhdGEudXNlci5kYXRlX3RpbWVfZm9ybWF0KSxcbiAgICAgICAgKTtcbiAgICAgICAgc2V0VGltZXpvbmUoZmluZFByb3BlcnR5KHRpbWV6b25lcywgcmVzcC5kYXRhLnVzZXIudGltZV96b25lKSk7XG4gICAgICAgIHNldEJ1c2luZXNzUm9sZShcbiAgICAgICAgICBmaW5kUHJvcGVydHkoXG4gICAgICAgICAgICByZXNwLmRhdGEuYnVzaW5lc3Nfcm9sZXMsXG4gICAgICAgICAgICByZXNwLmRhdGEudXNlci5idXNpbmVzc19yb2xlX2lkLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIHNldERlcGFydG1lbnQoXG4gICAgICAgICAgZmluZFByb3BlcnR5KHJlc3AuZGF0YS5kZXBhcnRtZW50cywgcmVzcC5kYXRhLnVzZXIuZGVwYXJ0bWVudF9pZCksXG4gICAgICAgICk7XG4gICAgICAgIHNldERlcGFydG1lbnRzKHJlc3AuZGF0YS5kZXBhcnRtZW50cyk7XG4gICAgICAgIHNldEJ1c2luZXNzUm9sZXMocmVzcC5kYXRhLmJ1c2luZXNzX3JvbGVzKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycm9yKSA9PiBhbGVydChlcnJvcikpO1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q29udGFpbmVyPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJoZWFkZXItdGl0bGVcIj57aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS50aXRsZScpfTwvZGl2PlxuICAgICAgPGZvcm0gYWN0aW9uPVwiXCIgb25TdWJtaXQ9eyhlKSA9PiBoYW5kbGVTdWJtaXQoZSl9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbnRlbnRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5wZXJzb25hbC1kZXRhaWxzJyl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwicGVyc29uYWxcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmZpcnN0X25hbWUnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJteS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgbmFtZT17J2ZpcnN0X25hbWUnfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMuZmlyc3RfbmFtZX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+IGhhbmRsZU9uQ2hhbmdlKGUpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9eydlcnJvci1tZXNzYWdlJ30+PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5sYXN0X25hbWUnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJteS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgbmFtZT17J2xhc3RfbmFtZSd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy5sYXN0X25hbWV9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBoYW5kbGVPbkNoYW5nZShlKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXsnZXJyb3ItbWVzc2FnZSd9PjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZCBmaWVsZC0tcmVhZG9ubHlcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmVtYWlsJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICByZWFkT25seT17dHJ1ZX1cbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibXktaW5wdXRcIlxuICAgICAgICAgICAgICAgIG5hbWU9eydlbWFpbCd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy5lbWFpbH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXsnZXJyb3ItbWVzc2FnZSd9PjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUucGhvbmUnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxQaG9uZUlucHV0XG4gICAgICAgICAgICAgICAgY291bnRyeT17J2lsJ31cbiAgICAgICAgICAgICAgICBsb2NhbGl6YXRpb249e2kxOG4udCgnY291bnRyaWVzJyl9XG4gICAgICAgICAgICAgICAgaW5wdXRDbGFzcz1cInBob25lLWlucHV0XCJcbiAgICAgICAgICAgICAgICBjb250YWluZXJDbGFzcz1cIm15LXBob25lXCJcbiAgICAgICAgICAgICAgICBidXR0b25DbGFzcz1cImRyb3Bkb3duXCJcbiAgICAgICAgICAgICAgICBkcm9wZG93bkNsYXNzPVwicGhvbmUtZHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMucGhvbmV9XG4gICAgICAgICAgICAgICAgZW5hYmxlU2VhcmNoXG4gICAgICAgICAgICAgICAgc2VhcmNoUGxhY2Vob2xkZXI9e2kxOG4udCgnc2VhcmNoJyl9XG4gICAgICAgICAgICAgICAgY291bnRyeUNvZGVFZGl0YWJsZT17ZmFsc2V9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9eyh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgaGFuZGxlT25DaGFuZ2UodmFsdWUpO1xuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgaW5wdXRQcm9wcz17eyBuYW1lOiAncGhvbmUnIH19XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Vycm9yLW1lc3NhZ2UnfT48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIHtkZXBhcnRtZW50c1swXS52YWx1ZSAhPT0gJycgJiYgKFxuICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuZGVwYXJ0bWVudCcpfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm15LWlucHV0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxTZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgICBzZXRWYWx1ZT17c2V0RGVwYXJ0bWVudH1cbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17e1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGkxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYGRhc2hib2FyZF92Mi5wcm9maWxlLmRlcGFydG1lbnRzLiR7ZGVwYXJ0bWVudD8ubGFiZWx9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogZGVwYXJ0bWVudD8udmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zPXtkZXBhcnRtZW50c31cbiAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxUZXh0V2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IGRlcGFydG1lbnRzLFxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNsYXRpb25fa2V5OiAnZGFzaGJvYXJkX3YyLnByb2ZpbGUuZGVwYXJ0bWVudHMnLFxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmJ1c2luZXNzX3JvbGUnKX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJteS1pbnB1dFwiPlxuICAgICAgICAgICAgICAgICAgICA8U2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICAgc2V0VmFsdWU9e3NldEJ1c2luZXNzUm9sZX1cbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17e1xuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw6IGkxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYGRhc2hib2FyZF92Mi5wcm9maWxlLmJ1c2luZXNzX3JvbGVzLiR7YnVzaW5lc3NSb2xlPy5sYWJlbH1gLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBidXNpbmVzc1JvbGU/LnZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgb3B0aW9ucz17YnVzaW5lc3NSb2xlc31cbiAgICAgICAgICAgICAgICAgICAgICBjYW5jZWxUZXh0V2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IGJ1c2luZXNzUm9sZXMsXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2xhdGlvbl9rZXk6ICdkYXNoYm9hcmRfdjIucHJvZmlsZS5idXNpbmVzc19yb2xlcycsXG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICB7ZGVwYXJ0bWVudHNbMF0udmFsdWUgIT09ICcnICYmIChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2BmaWVsZCAke1xuICAgICAgICAgICAgICAgICAgICBkZXBhcnRtZW50ICYmXG4gICAgICAgICAgICAgICAgICAgIGRlcGFydG1lbnQ/LnZhbHVlID09PVxuICAgICAgICAgICAgICAgICAgICAgIGRlcGFydG1lbnRzW2RlcGFydG1lbnRzLmxlbmd0aCAtIDFdLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2ZpZWxkLS1oaWRkZW4nXG4gICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmRlcGFydG1lbnRfYWx0Jyl9XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICByZWFkT25seT17ZmFsc2V9XG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibXktaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICBuYW1lPXsnb3RoZXJfZGVwYXJ0bWVudF9uYW1lJ31cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy5vdGhlcl9kZXBhcnRtZW50X25hbWV9XG4gICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZSkgPT4gaGFuZGxlRGVwYXJ0bWVudENoYW5nZShlKX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgZmllbGQgJHtcbiAgICAgICAgICAgICAgICAgICAgYnVzaW5lc3NSb2xlICYmXG4gICAgICAgICAgICAgICAgICAgIGJ1c2luZXNzUm9sZT8udmFsdWUgPT09XG4gICAgICAgICAgICAgICAgICAgICAgYnVzaW5lc3NSb2xlc1tidXNpbmVzc1JvbGVzLmxlbmd0aCAtIDFdLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2ZpZWxkLS1oaWRkZW4nXG4gICAgICAgICAgICAgICAgICB9IGB9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5idXNpbmVzc19yb2xlX2FsdCcpfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9e2ZhbHNlfVxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm15LWlucHV0XCJcbiAgICAgICAgICAgICAgICAgICAgbmFtZT17J290aGVyX2J1c2luZXNzX3JvbGVfbmFtZSd9XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMub3RoZXJfYnVzaW5lc3Nfcm9sZV9uYW1lfVxuICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+IGhhbmRsZUJ1c2luZXNzUm9sZUNoYW5nZShlKX1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImNoYW5nZS1wYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0U2hvd1Bhc3N3b3JkTW9kYWwodHJ1ZSl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8UGVuU3ZnIHdpZHRoPVwiMTJweFwiIGhlaWdodD1cIjEycHhcIiBmaWxsPVwiI2YwMTM0Y1wiIC8+XG4gICAgICAgICAgICAgICAgeycgICd9XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuY2hhbmdlLXBhc3N3b3JkJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGl0bGVcIj57aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zZXR0aW5ncycpfTwvZGl2PlxuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cInNldHRpbmdzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS50aW1lLXpvbmUnKX0qXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm15LWlucHV0XCI+XG4gICAgICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICAgICAgc2V0VmFsdWU9e3NldFRpbWV6b25lfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e3RpbWV6b25lfVxuICAgICAgICAgICAgICAgICAgb3B0aW9ucz17dGltZXpvbmVzfVxuICAgICAgICAgICAgICAgICAgY2FuY2VsVGV4dFdpZHRoXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmRhdGUtdGltZS1mb3JtYXQnKX0qXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm15LWlucHV0XCI+XG4gICAgICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICAgICAgb3B0aW9ucz17ZGF0ZVRpbWVGb3JtYXRPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2RhdGVUaW1lRm9ybWF0fVxuICAgICAgICAgICAgICAgICAgc2V0VmFsdWU9e3NldERhdGVUaW1lRm9ybWF0fVxuICAgICAgICAgICAgICAgICAgY2FuY2VsVGV4dFdpZHRoXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZGF0ZS10aW1lLWZvcm1hdCd9PlxuICAgICAgICAgICAgICAgIHtkYXRlVGltZUZvcm1hdCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICBuZXcgRGF0ZSgpLnRvTG9jYWxlRGF0ZVN0cmluZygnZW4tVVMnLCBkYXRlVGltZUZvcm1hdC5mb3JtYXQpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUubGFuZ3VhZ2UnKX0qXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J215LWlucHV0J30+XG4gICAgICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICAgICAgb3B0aW9ucz17bG9jYWxlT3B0aW9uc31cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtsb2NhbGV9XG4gICAgICAgICAgICAgICAgICBzZXRWYWx1ZT17c2V0TG9jYWxlfVxuICAgICAgICAgICAgICAgICAgY2FuY2VsVGV4dFdpZHRoXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGQgZmllbGQtLWJ1dHRvbnNcIj5cbiAgICAgICAgICAgICAge3BhcmFtcy50ZWxlZ3JhbV9uYW1lID09PSAnJyAmJiAoXG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwidGVsZWdyYW1cIiBvbkNsaWNrPXsoKSA9PiBzZXRJc1RlbGVncmFtT3Blbih0cnVlKX0+XG4gICAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5jb25uZWN0LXRvLXRlbGVncmFtJyl9XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB7cGFyYW1zLnRlbGVncmFtX25hbWUgIT09ICcnICYmIChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUudGVsZWdyYW1fbmFtZScpfVxuICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldElzVGVsZWdyYW1PcGVuKHRydWUpfVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxQZW5Tdmcgd2lkdGg9XCIxMnB4XCIgaGVpZ2h0PVwiMTJweFwiIGZpbGw9XCIjZjAxMzRjXCIgLz57JyAnfVxuICAgICAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuY2hhbmdlLW5hbWUnKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsndGVsZWdyYW0tZXhpc3RpbmctaW5wdXQnfT5cbiAgICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibXktaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17J3RlbGVncmFtX25hbWUnfVxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy50ZWxlZ3JhbV9uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsndGVsZWdyYW0tZXhpc3RpbmctaW5wdXRfX2NhbmNlbC1idXR0b24nfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0UGFyYW1zKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbGVncmFtX25hbWU6ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDYW5jZWwgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Vycm9yLW1lc3NhZ2UnfT48L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsndGVsZWdyYW0gb3Blbid9XG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXhpb3NcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldChgL3RlbGVncmFtL3NlbmRfdGVzdF9tZXNzYWdlLmpzb25gKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzcCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3AuZGF0YS51c2VyLnN0YXR1c1swXS50b1VwcGVyQ2FzZSgpICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzcC5kYXRhLnVzZXIuc3RhdHVzLnN1YnN0cmluZygxKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHJlc3AuZGF0YS51c2VyLm1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93OiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3c6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgNjAwMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvd1RvYXN0KHJlc3AuZGF0YS51c2VyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gYWxlcnQoZXJyb3IpKTtcbiAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgeyFzaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2Uuc2hvdyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgaTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zZW5kX3RlbGVncmFtX21lc3NhZ2UnKX1cbiAgICAgICAgICAgICAgICAgICAgICB7c2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlLnNob3cgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIHNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZS5zdGF0dXN9XG4gICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgIDxidXR0b24gdHlwZT17J3N1Ym1pdCd9IGNsYXNzTmFtZT17J3NhdmUnfSBkaXNhYmxlZD17c3VibWl0dGluZ30+XG4gICAgICAgICAgICB7IXN1Ym1pdHRpbmcgJiZcbiAgICAgICAgICAgICAgIXNob3dTdWNjZXNzTWVzc2FnZSAmJlxuICAgICAgICAgICAgICAhc2hvd0Vycm9yTWVzc2FnZSAmJlxuICAgICAgICAgICAgICBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnN1Ym1pdCcpfVxuICAgICAgICAgICAge3N1Ym1pdHRpbmcgJiZcbiAgICAgICAgICAgICAgIXNob3dTdWNjZXNzTWVzc2FnZSAmJlxuICAgICAgICAgICAgICAhc2hvd0Vycm9yTWVzc2FnZSAmJlxuICAgICAgICAgICAgICBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnN1Ym1pdHRpbmcnKX1cbiAgICAgICAgICAgIHtzaG93U3VjY2Vzc01lc3NhZ2UgJiYgaTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zdWNjZXNzJyl9XG4gICAgICAgICAgICB7c2hvd0Vycm9yTWVzc2FnZSAmJiBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmVycm9yJyl9XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9mb3JtPlxuXG4gICAgICB7c2hvd1Bhc3N3b3JkTW9kYWwgJiYgKFxuICAgICAgICA8UGFzc3dvcmRNb2RhbFxuICAgICAgICAgIGNsb3NlPXsoKSA9PiBzZXRTaG93UGFzc3dvcmRNb2RhbChmYWxzZSl9XG4gICAgICAgICAgc2F2ZT17KCkgPT4ge319XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgICAge2lzVGVsZWdyYW1PcGVuICYmIChcbiAgICAgICAgPFRlbGVncmFtTW9kYWxcbiAgICAgICAgICBjbG9zZT17KCkgPT4gc2V0SXNUZWxlZ3JhbU9wZW4oZmFsc2UpfVxuICAgICAgICAgIGhhbmRsZU9uQ2hhbmdlPXtoYW5kbGVPbkNoYW5nZX1cbiAgICAgICAgICBoYW5kbGVTdWJtaXQ9e2hhbmRsZVN1Ym1pdH1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9Db250YWluZXI+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
@@ -45,24 +45,30 @@ var SamplingActionContainer = function SamplingActionContainer(props) {
45
45
  };
46
46
  var deleteSampling = /*#__PURE__*/function () {
47
47
  var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(sampling) {
48
- var response;
48
+ var csrfToken, response;
49
49
  return _regenerator.default.wrap(function _callee$(_context) {
50
50
  while (1) {
51
51
  switch (_context.prev = _context.next) {
52
52
  case 0:
53
- _context.next = 2;
53
+ // @ts-ignore
54
+ csrfToken = document.querySelector('meta[name="csrf-token"]').getAttribute('content');
55
+ _context.next = 3;
54
56
  return _axios.default.delete((0, _urls.urls)({
55
57
  samplingId: sampling.id,
56
58
  locale: navContext.locale,
57
59
  waterAuthorityId: waterAuthorityId
58
- }).samplingProperties.deleteSampling.url);
59
- case 2:
60
+ }).samplingProperties.deleteSampling.url, {
61
+ headers: {
62
+ 'X-CSRF-TOKEN': csrfToken
63
+ }
64
+ });
65
+ case 3:
60
66
  response = _context.sent;
61
67
  if (response.status === 200) {
62
68
  // Refresh the samplings hack
63
69
  window.location.reload();
64
70
  }
65
- case 4:
71
+ case 5:
66
72
  case "end":
67
73
  return _context.stop();
68
74
  }
@@ -140,4 +146,4 @@ var SamplingActionContainer = function SamplingActionContainer(props) {
140
146
  };
141
147
  var _default = SamplingActionContainer;
142
148
  exports.default = _default;
143
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0UmVkdXgiLCJfcmVhY3RSb3V0ZXJEb20iLCJfQW5hbHl0aWNzIiwiX2FjdGlvbnNDcmVhdG9yIiwiX3VybHMiLCJfc2FtcGxpbmdzUGFnZVV0aWxzIiwiX1NhbXBsaW5nQWN0aW9ucyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiU2FtcGxpbmdBY3Rpb25Db250YWluZXIiLCJwcm9wcyIsInNhbXBsaW5nIiwid2F0ZXJBdXRob3JpdHlJZCIsInNob3dMYWJSZXN1bHQiLCJkcm9wZG93blRvZ2dsZSIsImFsbG93ZWRfYWN0aW9ucyIsIkNPTExFQ1RfU0FNUExJTkdfT1AiLCJDQU5DRUxfU0FNUExJTkdfT1AiLCJFRElUX1BST1BFUlRJRVNfT1AiLCJSRVZFUlRfQ0FOQ0VMTEFUSU9OIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwibmF2Q29udGV4dCIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJuYXZfY29udGV4dF9kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZ2xvYmFsX2RhdGEiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzaG93Q29uZmlybSIsInNldFNob3dDb25maXJtIiwiaGFuZGxlQ2xpY2siLCJhbmFseXRpY3NUcmFjayIsInV0aWxpdHlfbmFtZSIsImRlbGV0ZVNhbXBsaW5nIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwicmVzcG9uc2UiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiYXhpb3MiLCJkZWxldGUiLCJ1cmxzIiwic2FtcGxpbmdJZCIsImlkIiwibG9jYWxlIiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwidXJsIiwic2VudCIsInN0YXR1cyIsIndpbmRvdyIsImxvY2F0aW9uIiwicmVsb2FkIiwic3RvcCIsIl94IiwiYXBwbHkiLCJhcmd1bWVudHMiLCJoYW5kbGVBY3Rpb25DbGljayIsIl9yZWYyIiwiX2NhbGxlZTIiLCJpdGVtIiwidXJsUHJlZml4Iiwicm91dGUiLCJfY2FsbGVlMiQiLCJfY29udGV4dDIiLCJjb25jYXQiLCJzYW1wbGluZ19pZCIsIkRFTEVURV9TQU1QTElOR19PUCIsIkxBQl9SRVNVTFRfT1AiLCJpbmNsdWRlcyIsImFicnVwdCIsImdldFNhbXBsaW5nQnlJZCIsIm9wIiwiU1BFQ0lBTF9NRU5VX0lEX1RPX09QIiwic2FtcGxpbmdzUGFnZSIsInNhbXBsaW5nUHJvcGVydGllc1JvdXRlIiwicHVzaCIsIl94MiIsImNyZWF0ZUVsZW1lbnQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvU2FtcGxpbmdzUGFnZS9BY3Rpb25zRHJvcERvd24vU2FtcGxpbmdBY3Rpb25Db250YWluZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBGQywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgRHJvcERvd25JdGVtVHlwZSB9IGZyb20gJ3NyYy91aS1raXQvRHJvcERvd24vRHJvcERvd25JdGVtJztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyBnZXRTYW1wbGluZ0J5SWQgfSBmcm9tICdzcmMvc3RvcmUvc2FtcGxpbmdzL2FjdGlvbnNDcmVhdG9yJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuXG5pbXBvcnQge1xuICBDQU5DRUxfU0FNUExJTkdfT1AsXG4gIENPTExFQ1RfU0FNUExJTkdfT1AsXG4gIERFTEVURV9TQU1QTElOR19PUCxcbiAgRURJVF9QUk9QRVJUSUVTX09QLFxuICBSRVZFUlRfQ0FOQ0VMTEFUSU9OLFxuICBTUEVDSUFMX01FTlVfSURfVE9fT1AsXG4gIFNhbXBsaW5nRGF0YSxcbiAgTEFCX1JFU1VMVF9PUCxcbn0gZnJvbSAnLi4vc2FtcGxpbmdzUGFnZVV0aWxzJztcblxuaW1wb3J0IFNhbXBsaW5nQWN0aW9ucyBmcm9tICcuL1NhbXBsaW5nQWN0aW9ucyc7XG5cbnR5cGUgU2FtcGxpbmdBY3Rpb25Ecm9wZG93blByb3BzID0ge1xuICBzYW1wbGluZz86IFNhbXBsaW5nRGF0YTtcbiAgd2F0ZXJBdXRob3JpdHlJZDogc3RyaW5nO1xuICBzaG93TGFiUmVzdWx0OiBGdW5jdGlvbjtcbiAgZHJvcGRvd25Ub2dnbGU6IFJlYWN0LlJlYWN0Tm9kZTtcbn07XG5cbmNvbnN0IFNhbXBsaW5nQWN0aW9uQ29udGFpbmVyOiBGQzxTYW1wbGluZ0FjdGlvbkRyb3Bkb3duUHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgc2FtcGxpbmcsIHdhdGVyQXV0aG9yaXR5SWQsIHNob3dMYWJSZXN1bHQsIGRyb3Bkb3duVG9nZ2xlIH0gPSBwcm9wcztcbiAgY29uc3QgYWxsb3dlZF9hY3Rpb25zID0gW1xuICAgIENPTExFQ1RfU0FNUExJTkdfT1AsXG4gICAgQ0FOQ0VMX1NBTVBMSU5HX09QLFxuICAgIEVESVRfUFJPUEVSVElFU19PUCxcbiAgICBSRVZFUlRfQ0FOQ0VMTEFUSU9OLFxuICBdO1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5TmFtZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlOYW1lLFxuICApO1xuICBjb25zdCBbc2hvd0NvbmZpcm0sIHNldFNob3dDb25maXJtXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBoYW5kbGVDbGljayA9ICgpID0+IHtcbiAgICBhbmFseXRpY3NUcmFjayhgT3BlbiB3ZWIgYWN0aW9uYCwge1xuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgZGVsZXRlU2FtcGxpbmcgPSBhc3luYyAoc2FtcGxpbmc6IFNhbXBsaW5nRGF0YSkgPT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MuZGVsZXRlKFxuICAgICAgdXJscyh7XG4gICAgICAgIHNhbXBsaW5nSWQ6IHNhbXBsaW5nLmlkLFxuICAgICAgICBsb2NhbGU6IG5hdkNvbnRleHQubG9jYWxlLFxuICAgICAgICB3YXRlckF1dGhvcml0eUlkOiB3YXRlckF1dGhvcml0eUlkLFxuICAgICAgfSkuc2FtcGxpbmdQcm9wZXJ0aWVzLmRlbGV0ZVNhbXBsaW5nLnVybCxcbiAgICApO1xuXG4gICAgaWYgKHJlc3BvbnNlLnN0YXR1cyA9PT0gMjAwKSB7XG4gICAgICAvLyBSZWZyZXNoIHRoZSBzYW1wbGluZ3MgaGFja1xuICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVBY3Rpb25DbGljayA9XG4gICAgKHNhbXBsaW5nOiBTYW1wbGluZ0RhdGEpID0+IGFzeW5jIChpdGVtOiBEcm9wRG93bkl0ZW1UeXBlKSA9PiB7XG4gICAgICBhbmFseXRpY3NUcmFjayhgU2FtcGxpbmcgT3BlcmF0aW9uIGFjdGlvbiBtZW51IC0gQ2xpY2tlZCAke2l0ZW0uaWR9YCwge1xuICAgICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICAgICAgc2FtcGxpbmdfaWQ6IHNhbXBsaW5nLmlkLFxuICAgICAgfSk7XG4gICAgICBpZiAoaXRlbS5pZCA9PT0gREVMRVRFX1NBTVBMSU5HX09QKSB7XG4gICAgICAgIHNldFNob3dDb25maXJtKHRydWUpO1xuICAgICAgfSBlbHNlIGlmIChpdGVtLmlkID09PSBMQUJfUkVTVUxUX09QKSB7XG4gICAgICAgIHNob3dMYWJSZXN1bHQoKTtcbiAgICAgIH0gZWxzZSBpZiAoIWFsbG93ZWRfYWN0aW9ucy5pbmNsdWRlcyhpdGVtLmlkKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBkaXNwYXRjaChnZXRTYW1wbGluZ0J5SWQoc2FtcGxpbmcuaWQpKTtcbiAgICAgICAgY29uc3QgdXJsUHJlZml4ID0gdXJscyh7XG4gICAgICAgICAgaWQ6IHNhbXBsaW5nLmlkLFxuICAgICAgICAgIGxvY2FsZTogbmF2Q29udGV4dC5sb2NhbGUsXG4gICAgICAgICAgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgICAgICBvcDogU1BFQ0lBTF9NRU5VX0lEX1RPX09QW2l0ZW0uaWRdIHx8IGl0ZW0uaWQsXG4gICAgICAgIH0pLnNhbXBsaW5nc1BhZ2U7XG4gICAgICAgIGNvbnN0IHJvdXRlID0gdXJsUHJlZml4LnNhbXBsaW5nUHJvcGVydGllc1JvdXRlO1xuICAgICAgICBoaXN0b3J5LnB1c2gocm91dGUudXJsKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gIHJldHVybiAoXG4gICAgPFNhbXBsaW5nQWN0aW9uc1xuICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nfVxuICAgICAgc2hvd0NvbmZpcm09e3Nob3dDb25maXJtfVxuICAgICAgc2V0U2hvd0NvbmZpcm09e3NldFNob3dDb25maXJtfVxuICAgICAgZGVsZXRlU2FtcGxpbmc9e2RlbGV0ZVNhbXBsaW5nfVxuICAgICAgaGFuZGxlQWN0aW9uQ2xpY2s9e2hhbmRsZUFjdGlvbkNsaWNrfVxuICAgICAgaGFuZGxlQ2xpY2s9e2hhbmRsZUNsaWNrfVxuICAgICAgZHJvcGRvd25Ub2dnbGU9e2Ryb3Bkb3duVG9nZ2xlfVxuICAgIC8+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBTYW1wbGluZ0FjdGlvbkNvbnRhaW5lcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxlQUFBLEdBQUFKLE9BQUE7QUFFQSxJQUFBSyxVQUFBLEdBQUFMLE9BQUE7QUFFQSxJQUFBTSxlQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxLQUFBLEdBQUFQLE9BQUE7QUFFQSxJQUFBUSxtQkFBQSxHQUFBUixPQUFBO0FBV0EsSUFBQVMsZ0JBQUEsR0FBQVAsc0JBQUEsQ0FBQUYsT0FBQTtBQUFnRCxTQUFBVSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxP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
149
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0UmVkdXgiLCJfcmVhY3RSb3V0ZXJEb20iLCJfQW5hbHl0aWNzIiwiX2FjdGlvbnNDcmVhdG9yIiwiX3VybHMiLCJfc2FtcGxpbmdzUGFnZVV0aWxzIiwiX1NhbXBsaW5nQWN0aW9ucyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiU2FtcGxpbmdBY3Rpb25Db250YWluZXIiLCJwcm9wcyIsInNhbXBsaW5nIiwid2F0ZXJBdXRob3JpdHlJZCIsInNob3dMYWJSZXN1bHQiLCJkcm9wZG93blRvZ2dsZSIsImFsbG93ZWRfYWN0aW9ucyIsIkNPTExFQ1RfU0FNUExJTkdfT1AiLCJDQU5DRUxfU0FNUExJTkdfT1AiLCJFRElUX1BST1BFUlRJRVNfT1AiLCJSRVZFUlRfQ0FOQ0VMTEFUSU9OIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwibmF2Q29udGV4dCIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJuYXZfY29udGV4dF9kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwiZ2xvYmFsX2RhdGEiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzaG93Q29uZmlybSIsInNldFNob3dDb25maXJtIiwiaGFuZGxlQ2xpY2siLCJhbmFseXRpY3NUcmFjayIsInV0aWxpdHlfbmFtZSIsImRlbGV0ZVNhbXBsaW5nIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwiY3NyZlRva2VuIiwicmVzcG9uc2UiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiZ2V0QXR0cmlidXRlIiwiYXhpb3MiLCJkZWxldGUiLCJ1cmxzIiwic2FtcGxpbmdJZCIsImlkIiwibG9jYWxlIiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwidXJsIiwiaGVhZGVycyIsInNlbnQiLCJzdGF0dXMiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsInJlbG9hZCIsInN0b3AiLCJfeCIsImFwcGx5IiwiYXJndW1lbnRzIiwiaGFuZGxlQWN0aW9uQ2xpY2siLCJfcmVmMiIsIl9jYWxsZWUyIiwiaXRlbSIsInVybFByZWZpeCIsInJvdXRlIiwiX2NhbGxlZTIkIiwiX2NvbnRleHQyIiwiY29uY2F0Iiwic2FtcGxpbmdfaWQiLCJERUxFVEVfU0FNUExJTkdfT1AiLCJMQUJfUkVTVUxUX09QIiwiaW5jbHVkZXMiLCJhYnJ1cHQiLCJnZXRTYW1wbGluZ0J5SWQiLCJvcCIsIlNQRUNJQUxfTUVOVV9JRF9UT19PUCIsInNhbXBsaW5nc1BhZ2UiLCJzYW1wbGluZ1Byb3BlcnRpZXNSb3V0ZSIsInB1c2giLCJfeDIiLCJjcmVhdGVFbGVtZW50IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL1NhbXBsaW5nc1BhZ2UvQWN0aW9uc0Ryb3BEb3duL1NhbXBsaW5nQWN0aW9uQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgRkMsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHVzZUhpc3RvcnkgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB7IERyb3BEb3duSXRlbVR5cGUgfSBmcm9tICdzcmMvdWkta2l0L0Ryb3BEb3duL0Ryb3BEb3duSXRlbSc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJ3NyYy91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgZ2V0U2FtcGxpbmdCeUlkIH0gZnJvbSAnc3JjL3N0b3JlL3NhbXBsaW5ncy9hY3Rpb25zQ3JlYXRvcic7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcblxuaW1wb3J0IHtcbiAgQ0FOQ0VMX1NBTVBMSU5HX09QLFxuICBDT0xMRUNUX1NBTVBMSU5HX09QLFxuICBERUxFVEVfU0FNUExJTkdfT1AsXG4gIEVESVRfUFJPUEVSVElFU19PUCxcbiAgUkVWRVJUX0NBTkNFTExBVElPTixcbiAgU1BFQ0lBTF9NRU5VX0lEX1RPX09QLFxuICBTYW1wbGluZ0RhdGEsXG4gIExBQl9SRVNVTFRfT1AsXG59IGZyb20gJy4uL3NhbXBsaW5nc1BhZ2VVdGlscyc7XG5cbmltcG9ydCBTYW1wbGluZ0FjdGlvbnMgZnJvbSAnLi9TYW1wbGluZ0FjdGlvbnMnO1xuXG50eXBlIFNhbXBsaW5nQWN0aW9uRHJvcGRvd25Qcm9wcyA9IHtcbiAgc2FtcGxpbmc/OiBTYW1wbGluZ0RhdGE7XG4gIHdhdGVyQXV0aG9yaXR5SWQ6IHN0cmluZztcbiAgc2hvd0xhYlJlc3VsdDogRnVuY3Rpb247XG4gIGRyb3Bkb3duVG9nZ2xlOiBSZWFjdC5SZWFjdE5vZGU7XG59O1xuXG5jb25zdCBTYW1wbGluZ0FjdGlvbkNvbnRhaW5lcjogRkM8U2FtcGxpbmdBY3Rpb25Ecm9wZG93blByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IHNhbXBsaW5nLCB3YXRlckF1dGhvcml0eUlkLCBzaG93TGFiUmVzdWx0LCBkcm9wZG93blRvZ2dsZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGFsbG93ZWRfYWN0aW9ucyA9IFtcbiAgICBDT0xMRUNUX1NBTVBMSU5HX09QLFxuICAgIENBTkNFTF9TQU1QTElOR19PUCxcbiAgICBFRElUX1BST1BFUlRJRVNfT1AsXG4gICAgUkVWRVJUX0NBTkNFTExBVElPTixcbiAgXTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuICBjb25zdCB3YXRlckF1dGhvcml0eU5hbWUgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5TmFtZSxcbiAgKTtcbiAgY29uc3QgW3Nob3dDb25maXJtLCBzZXRTaG93Q29uZmlybV0gPSB1c2VTdGF0ZShmYWxzZSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soYE9wZW4gd2ViIGFjdGlvbmAsIHtcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGRlbGV0ZVNhbXBsaW5nID0gYXN5bmMgKHNhbXBsaW5nOiBTYW1wbGluZ0RhdGEpID0+IHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgY29uc3QgY3NyZlRva2VuID0gZG9jdW1lbnRcbiAgICAgIC5xdWVyeVNlbGVjdG9yKCdtZXRhW25hbWU9XCJjc3JmLXRva2VuXCJdJylcbiAgICAgIC5nZXRBdHRyaWJ1dGUoJ2NvbnRlbnQnKTtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLmRlbGV0ZShcbiAgICAgIHVybHMoe1xuICAgICAgICBzYW1wbGluZ0lkOiBzYW1wbGluZy5pZCxcbiAgICAgICAgbG9jYWxlOiBuYXZDb250ZXh0LmxvY2FsZSxcbiAgICAgICAgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgIH0pLnNhbXBsaW5nUHJvcGVydGllcy5kZWxldGVTYW1wbGluZy51cmwsXG4gICAgICB7IGhlYWRlcnM6IHsgJ1gtQ1NSRi1UT0tFTic6IGNzcmZUb2tlbiB9IH0sXG4gICAgKTtcblxuICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDIwMCkge1xuICAgICAgLy8gUmVmcmVzaCB0aGUgc2FtcGxpbmdzIGhhY2tcbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQWN0aW9uQ2xpY2sgPVxuICAgIChzYW1wbGluZzogU2FtcGxpbmdEYXRhKSA9PiBhc3luYyAoaXRlbTogRHJvcERvd25JdGVtVHlwZSkgPT4ge1xuICAgICAgYW5hbHl0aWNzVHJhY2soYFNhbXBsaW5nIE9wZXJhdGlvbiBhY3Rpb24gbWVudSAtIENsaWNrZWQgJHtpdGVtLmlkfWAsIHtcbiAgICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgICAgIHNhbXBsaW5nX2lkOiBzYW1wbGluZy5pZCxcbiAgICAgIH0pO1xuICAgICAgaWYgKGl0ZW0uaWQgPT09IERFTEVURV9TQU1QTElOR19PUCkge1xuICAgICAgICBzZXRTaG93Q29uZmlybSh0cnVlKTtcbiAgICAgIH0gZWxzZSBpZiAoaXRlbS5pZCA9PT0gTEFCX1JFU1VMVF9PUCkge1xuICAgICAgICBzaG93TGFiUmVzdWx0KCk7XG4gICAgICB9IGVsc2UgaWYgKCFhbGxvd2VkX2FjdGlvbnMuaW5jbHVkZXMoaXRlbS5pZCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGlzcGF0Y2goZ2V0U2FtcGxpbmdCeUlkKHNhbXBsaW5nLmlkKSk7XG4gICAgICAgIGNvbnN0IHVybFByZWZpeCA9IHVybHMoe1xuICAgICAgICAgIGlkOiBzYW1wbGluZy5pZCxcbiAgICAgICAgICBsb2NhbGU6IG5hdkNvbnRleHQubG9jYWxlLFxuICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgICAgb3A6IFNQRUNJQUxfTUVOVV9JRF9UT19PUFtpdGVtLmlkXSB8fCBpdGVtLmlkLFxuICAgICAgICB9KS5zYW1wbGluZ3NQYWdlO1xuICAgICAgICBjb25zdCByb3V0ZSA9IHVybFByZWZpeC5zYW1wbGluZ1Byb3BlcnRpZXNSb3V0ZTtcbiAgICAgICAgaGlzdG9yeS5wdXNoKHJvdXRlLnVybCk7XG4gICAgICB9XG4gICAgfTtcblxuICByZXR1cm4gKFxuICAgIDxTYW1wbGluZ0FjdGlvbnNcbiAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ31cbiAgICAgIHNob3dDb25maXJtPXtzaG93Q29uZmlybX1cbiAgICAgIHNldFNob3dDb25maXJtPXtzZXRTaG93Q29uZmlybX1cbiAgICAgIGRlbGV0ZVNhbXBsaW5nPXtkZWxldGVTYW1wbGluZ31cbiAgICAgIGhhbmRsZUFjdGlvbkNsaWNrPXtoYW5kbGVBY3Rpb25DbGlja31cbiAgICAgIGhhbmRsZUNsaWNrPXtoYW5kbGVDbGlja31cbiAgICAgIGRyb3Bkb3duVG9nZ2xlPXtkcm9wZG93blRvZ2dsZX1cbiAgICAvPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgU2FtcGxpbmdBY3Rpb25Db250YWluZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFB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