@kando-env/kando-ui 1.2.412-alpha.18 → 1.2.412-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Router.js +3 -12
- package/lib/Widgets/EventsRow/EventsRow.js +3 -3
- package/lib/Widgets/Map/Map.js +97 -107
- package/lib/Widgets/Map/MapUtils.js +21 -9
- package/lib/Widgets/Map/areas/AreaPolygon.js +2 -2
- package/lib/Widgets/Map/edges/Edge.js +7 -7
- package/lib/Widgets/Map/events/Event.js +6 -2
- package/lib/Widgets/Map/events/EventIndicator.js +7 -7
- package/lib/Widgets/Map/events/EventPath.js +3 -3
- package/lib/Widgets/Map/events/EventUtils.js +5 -5
- package/lib/Widgets/Map/points/PointIcon.scss +1 -2
- package/lib/Widgets/Map/points/PointMarker.js +3 -10
- package/lib/Widgets/Map/points/PointMarkers.js +25 -15
- package/lib/Widgets/Map/points/PointUtils.js +15 -26
- package/lib/components/Map/Map.js +5 -6
- package/lib/components/SevereEvent/SevereEvent.js +2 -3
- package/lib/i18n/en.json +2 -17
- package/lib/i18n/en_uk.json +2 -5
- package/lib/macros/getVersion.js +2 -2
- package/lib/pages/DashboardMap/FactoryCard.js +5 -2
- package/lib/pages/DashboardMap/List.js +3 -4
- package/lib/pages/DashboardMap/SeverityBadge.js +3 -7
- package/lib/pages/DashboardMap/WWTPMap.js +14 -7
- package/lib/pages/EventsPage/Body/Body.js +17 -2
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +3 -2
- package/lib/pages/EventsPage/EventsPage.js +3 -10
- package/lib/pages/EventsPage/events/Sidebar.js +11 -12
- package/lib/pages/EventsPage/events/events_list/EventsList.js +3 -3
- package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +1 -20
- package/lib/pages/ImportGisPage/importGisUtils.js +1 -20
- package/lib/pages/OperationsPage/LeftPanel.js +19 -6
- package/lib/pages/OperationsPage/OperationsPage.js +143 -0
- package/lib/pages/OperationsPage/RightPanel.js +3 -11
- package/lib/pages/OperationsPage/index.js +5 -15
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +5 -7
- package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +2 -2
- package/lib/pages/UtilityDashboardPage/TopBar/constants.js +9 -11
- package/lib/store/areas/actions.js +1 -8
- package/lib/store/permissions/permissionsSlice.js +1 -3
- package/lib/store/points/actions.js +2 -3
- package/lib/utilities/scoreToData.js +3 -7
- package/lib/utilities/urls.js +1 -17
- package/package.json +1 -1
- package/lib/pages/ImportSiteProcess/index.js +0 -55
- package/lib/pages/OperationsPage/OperationsContainerPage.js +0 -151
- package/lib/pages/OperationsPage/OperationsFilePage.js +0 -29
- package/lib/pages/OperationsPage/OperationsUtilityPage.js +0 -33
|
@@ -91,7 +91,7 @@ var EventsList = function EventsList(_ref) {
|
|
|
91
91
|
return query.get('eventId');
|
|
92
92
|
};
|
|
93
93
|
var loader = function loader() {
|
|
94
|
-
if (isFetching && items.length === 0 || areas_data.
|
|
94
|
+
if (isFetching && items.length === 0 || areas_data.newAreas.length === 0 || points_data.isFetching || edges_data.isFetching) {
|
|
95
95
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
96
96
|
className: 'loader'
|
|
97
97
|
});
|
|
@@ -128,7 +128,7 @@ var EventsList = function EventsList(_ref) {
|
|
|
128
128
|
if (index === -1) {
|
|
129
129
|
setExceptionAlert({
|
|
130
130
|
messages: [].concat((0, _toConsumableArray2.default)(exceptionAlert.messages), [{
|
|
131
|
-
message: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("
|
|
131
|
+
message: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("p", null, _i18n.default.t('events_overview.event_data_missing'))),
|
|
132
132
|
event_id: event.id
|
|
133
133
|
}]),
|
|
134
134
|
event_ids: [].concat((0, _toConsumableArray2.default)(exceptionAlert.event_ids), [event.id])
|
|
@@ -372,4 +372,4 @@ var EventsList = function EventsList(_ref) {
|
|
|
372
372
|
var connector = (0, _reactRedux.connect)(mapStateToProps);
|
|
373
373
|
var _default = connector(EventsList);
|
|
374
374
|
exports.default = _default;
|
|
375
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX2Fycm93TGVmdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZnVubmVsIiwiX25vX2V2ZW50cyIsIl9TZXZlcmVFdmVudCIsIl9VcmxIaXN0b3J5IiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfaTE4biIsIl9rcWwiLCJfRXZlbnRJbmZvIiwiX01vcmVJbmZvIiwiX0ZpbHRlckNvbnRhaW5lciIsIl9Tb3J0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJfcmVmIiwic2lkZW5hdkV4cGFuZGVkIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwiaG92ZXJlZEVkZ2VQYXRocyIsIndhdGVyQXV0aG9yaXR5SWQiLCJtYXAiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJmaWx0ZXJQb3B1cE9wZW4iLCJzZXRGaWx0ZXJQb3B1cE9wZW4iLCJfdXNlU3RhdGUzIiwibWVzc2FnZXMiLCJtZXNzYWdlIiwiZXZlbnRfaWQiLCJldmVudF9pZHMiLCJfdXNlU3RhdGU0IiwiZXhjZXB0aW9uQWxlcnQiLCJzZXRFeGNlcHRpb25BbGVydCIsImxhc3RWaXNpdGVkIiwidXNlTGFzdFZpc2l0ZWQiLCJ1c2VRdWVyeSIsIlVSTFNlYXJjaFBhcmFtcyIsInVzZUxvY2F0aW9uIiwic2VhcmNoIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJxdWVyeSIsImdldEtRTFZhbHVlc0Zyb21VUkwiLCJnZXRFdmVudElkRnJvbVVSTCIsImxvYWRlciIsImxlbmd0aCIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJoYW5kbGVFeHBhbnNpb25Ub2dnbGUiLCJzaWRlTmF2RXhwYW5kZWQiLCJhcHBseURlZmF1bHRGaWx0ZXIiLCJwdXNoIiwiY29uY2F0IiwibmF2Q29udGV4dCIsIm5hbWUiLCJsb2NhbGUiLCJzZXRFdmVudEZpbHRlclBhcmFtIiwidmFsaWRhdGVFdmVudCIsImV2ZW50IiwiaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzIiwib2JzZXJ2YXRpb25zIiwiZm9yRWFjaCIsIm9ic2VydmF0aW9uIiwicG9pbnRfaXNfcm9vdCIsImVkZ2UiLCJmaW5kIiwic291cmNlX3BvaW50X2lkIiwicG9pbnRfaWQiLCJ1bmRlZmluZWQiLCJwb2ludF9uYW1lIiwiaW5kZXgiLCJmaW5kSW5kZXgiLCJtc2ciLCJpZCIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJGcmFnbWVudCIsImkxOG4iLCJ0IiwiaW52YWxpZFBhdGhNZXNzYWdlcyIsInBhdGgiLCJlZGdlX2lkIiwiY29uc29sZSIsImVycm9yIiwibGFzdF9vYnNlcnZhdGlvbl9pZCIsImxhc3RPYnNlcnZhdGlvblBvaW50IiwiaGFuZGxlRXZlbnRJdGVtQ2xpY2siLCJyZWYiLCJvbk1vdXNlTGVhdmVFdmVudCIsInNldEZvY3VzZWRFdmVudCIsInNldFRpbWVvdXQiLCJldmVudEZpbHRlclBhcmFtIiwib25Nb3VzZUVudGVyRXZlbnQiLCJzZXRIb3ZlcmVkRXZlbnQiLCJyZW1vdmVMYXllciIsImxheWVycyIsIl9sYXllcnMiLCJwcm9wZXJ0eSIsImthbmRvX29iamVjdCIsImluY2x1ZGVzIiwic2V0SG92ZXJlZEV2ZW50UGF0aHMiLCJzZXRIb3ZlcmVkRWRnZVBhdGhzIiwiaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCIsInNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyIsImUiLCJwYXJzZUludCIsInZhbGlkRXZlbnQiLCJ1c2VNZW1vIiwidG9TdHJpbmciLCJ0cmlnZ2VyU29ydCIsInNvcnQiLCJhY3RpdmVGaWx0ZXIiLCJLUUwiLCJVUkwiLCJidWlsZEtRTFF1ZXJ5IiwiY2FsY0V2ZW50c1JlYWxBbW91bnQiLCJldmVudHNDb3VudCIsImV2ZW50c19jb3VudCIsInVzZUVmZmVjdCIsImZldGNoRXZlbnRzIiwibmV3QXJlYXMiLCJtb3JlSW5mbyIsImFjdGl2ZSIsInJlT3BlbkZpbHRlciIsIm9uQ2xpY2siLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFDYXJldExlZnQiLCJmYUNhcmV0UmlnaHQiLCJocmVmIiwiZmFBcnJvd0xlZnQiLCJMaW5rIiwidG8iLCJzcmMiLCJMZWZ0QXJyb3dJY29uIiwiaGVpZ2h0Iiwid2lkdGgiLCJhbHQiLCJldmVudHMiLCJldmVudHNGZXRjaGluZyIsIlJlYWN0Q29tcG9uZW50IiwiZmlsbCIsImZldGNoVHlwZSIsIk5vRXZlbnRzSW1hZ2UiLCJTZXZlcmVFdmVudCIsImhhbmRsZUNsaWNrIiwiY29ubmVjdG9yIiwiY29ubmVjdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudHNMaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBldGMvbm8tY29tbWVudGVkLW91dC1jb2RlICovXG5pbXBvcnQge1xuICBmYUFycm93TGVmdCxcbiAgZmFDYXJldExlZnQsXG4gIGZhQ2FyZXRSaWdodCxcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgUmVhY3QsIHsgUmVmT2JqZWN0LCB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgTGluaywgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBMZWZ0QXJyb3dJY29uIGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvYXJyb3ctbGVmdC5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRmlsdGVySWNvbiB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvZnVubmVsLnN2Zyc7XG5pbXBvcnQgTm9FdmVudHNJbWFnZSBmcm9tICdzcmMvYXNzZXRzL25vX2V2ZW50cy5zdmcnO1xuaW1wb3J0IHsgU2V2ZXJlRXZlbnQgfSBmcm9tICdzcmMvY29tcG9uZW50cy9TZXZlcmVFdmVudC9TZXZlcmVFdmVudCc7XG5pbXBvcnQgeyBJQXBwU3RhdGUgfSBmcm9tICdzcmMvbW9kZWxzL0lBcHBTdGF0ZSc7XG5pbXBvcnQgeyB1c2VMYXN0VmlzaXRlZCB9IGZyb20gJ3NyYy9wcm92aWRlcnMvVXJsSGlzdG9yeSc7XG5pbXBvcnQge1xuICBmZXRjaEV2ZW50cyxcbiAgc2V0Rm9jdXNlZEV2ZW50LFxuICBzZXRIb3ZlcmVkRWRnZVBhdGhzLFxuICBzZXRIb3ZlcmVkRXZlbnQsXG4gIHNldEhvdmVyZWRFdmVudFBhdGhzLFxufSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IHNldEV2ZW50RmlsdGVyUGFyYW0sIHNpZGVOYXZFeHBhbmRlZCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgYnVpbGRLUUxRdWVyeSB9IGZyb20gJ3NyYy91dGlsaXRpZXMva3FsJztcbmltcG9ydCAnLi4vRXZlbnRzU3R5bGUuc2Nzcyc7XG5pbXBvcnQgRXZlbnRJbmZvIGZyb20gJy4uL2V2ZW50X2luZm8vRXZlbnRJbmZvJztcbmltcG9ydCBNb3JlSW5mbyBmcm9tICcuLi9Nb3JlSW5mbyc7XG5pbXBvcnQgRmlsdGVyQ29udGFpbmVyIGZyb20gJy4vRmlsdGVyL0ZpbHRlckNvbnRhaW5lcic7XG5pbXBvcnQgU29ydCBmcm9tICcuL1NvcnQnO1xuXG5mdW5jdGlvbiBtYXBTdGF0ZVRvUHJvcHMoc3RhdGU6IElBcHBTdGF0ZSkge1xuICBjb25zdCB7XG4gICAgZXZlbnRzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgZWRnZXNfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgICBhcmVhc19kYXRhLFxuICAgIG5hdl9jb250ZXh0X2RhdGEsXG4gIH0gPSBzdGF0ZTtcblxuICByZXR1cm4ge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9O1xufVxuXG50eXBlIElQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBzaWRlbmF2RXhwYW5kZWQ6IGJvb2xlYW47XG59O1xuXG5jb25zdCBFdmVudHNMaXN0OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHtcbiAgYXJlYXNfZGF0YSxcbiAgcG9pbnRzX2RhdGEsXG4gIGVkZ2VzX2RhdGEsXG4gIGdsb2JhbF9kYXRhLFxuICBzaWRlbmF2RXhwYW5kZWQsXG4gIGV2ZW50c19kYXRhLFxuICBuYXZfY29udGV4dF9kYXRhLFxufSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHtcbiAgICBpdGVtcyxcbiAgICBpc0ZldGNoaW5nLFxuICAgIGZvY3VzZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnQsXG4gICAgaG92ZXJlZEV2ZW50UGF0aHMsXG4gICAgaG92ZXJlZEVkZ2VQYXRocyxcbiAgfSA9IGV2ZW50c19kYXRhO1xuICBjb25zdCB7IHdhdGVyQXV0aG9yaXR5SWQsIG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IFtmaWx0ZXJQb3B1cE9wZW4sIHNldEZpbHRlclBvcHVwT3Blbl0gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgW2V4Y2VwdGlvbkFsZXJ0LCBzZXRFeGNlcHRpb25BbGVydF0gPSB1c2VTdGF0ZTx7XG4gICAgbWVzc2FnZXM6IHsgbWVzc2FnZTogYW55OyBldmVudF9pZDogbnVtYmVyIH1bXTtcbiAgICBldmVudF9pZHM6IG51bWJlcltdO1xuICB9Pih7IG1lc3NhZ2VzOiBbeyBtZXNzYWdlOiAnJywgZXZlbnRfaWQ6IDAgfV0sIGV2ZW50X2lkczogW10gfSk7XG4gIGNvbnN0IGxhc3RWaXNpdGVkID0gdXNlTGFzdFZpc2l0ZWQoKTtcblxuICBjb25zdCB1c2VRdWVyeSA9ICgpID0+IHtcbiAgICByZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcyh1c2VMb2NhdGlvbigpLnNlYXJjaCk7XG4gIH07XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnkoKTtcbiAgY29uc3QgZ2V0S1FMVmFsdWVzRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCd2YWx1ZXNGcm9tS1FMJyk7XG4gIH07XG4gIGNvbnN0IGdldEV2ZW50SWRGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ2V2ZW50SWQnKTtcbiAgfTtcblxuICBjb25zdCBsb2FkZXIgPSAoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgKGlzRmV0Y2hpbmcgJiYgaXRlbXMubGVuZ3RoID09PSAwKSB8fFxuICAgICAgYXJlYXNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J2xvYWRlcid9PjwvZGl2PjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV4cGFuc2lvblRvZ2dsZSA9ICgpID0+IHtcbiAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQoIXNpZGVuYXZFeHBhbmRlZCkpO1xuICB9O1xuXG4gIGNvbnN0IGFwcGx5RGVmYXVsdEZpbHRlciA9ICgpID0+IHtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9YCxcbiAgICApO1xuICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oJycpKTtcbiAgfTtcblxuICBjb25zdCB2YWxpZGF0ZUV2ZW50ID0gKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICAvLyBjaGVjayB0aGF0IGFsbCBvYnNlcnZhdGlvbnMnIGVkZ2VzIGV4aXN0cy4gSWYgdGhleSBhcmUgbm90IGV4aXN0cyBpdCdzIGluZGljYXRlcyB0aGF0IHRoZWlyIHBvaW50cyBhcmVcbiAgICAvLyBub3QgaW4gdGhlIGhpZXJhcmNoeSBvciBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnMuZm9yRWFjaCgob2JzZXJ2YXRpb246IGFueSkgPT4ge1xuICAgICAgLy8gaWYgb2JzZXJ2YXRpb24gaXMgcm9vdCAoZXguIFdXVFApIHRoZXJlIGlzIG5vIGVkZ2UgdGhhdCBpdHMgYSBzb3VyY2UuIHNvIHdlIGNhbiBza2lwIHRoaXMgY2hlY2tcbiAgICAgIGlmICghb2JzZXJ2YXRpb24ucG9pbnRfaXNfcm9vdCkge1xuICAgICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgICAoZWRnZSkgPT4gZWRnZS5zb3VyY2VfcG9pbnRfaWQgPT09IG9ic2VydmF0aW9uLnBvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLnB1c2goXG4gICAgICAgICAgICBgJHtvYnNlcnZhdGlvbi5wb2ludF9uYW1lfSAoJHtvYnNlcnZhdGlvbi5wb2ludF9pZH0pIGAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcy5sZW5ndGggIT09IDApIHtcbiAgICAgIGxldCBpbmRleCA9IGV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLmZpbmRJbmRleChcbiAgICAgICAgKG1zZykgPT4gbXNnLmV2ZW50X2lkID09PSBldmVudC5pZCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgc2V0RXhjZXB0aW9uQWxlcnQoe1xuICAgICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAuLi5leGNlcHRpb25BbGVydC5tZXNzYWdlcyxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfZGF0YV9taXNzaW5nJyl9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIHNhbWUgY2hlY2sgYXMgYWJvdmUgYnV0IHRoaXMgdGltZSBmb3IgdGhlIGV2ZW50IHBhdGguIElmIGVkZ2UgZG9lc24ndCBleGlzdCwgaXQncyBpbmRpY2F0ZXMgdGhhdCBvbmUgb2YgdGhlXG4gICAgLy8gcG9pbnRzIGRvd25zdHJlYW0gZG9lc24ndCBoYXZlIGxhdC9sbmcuXG4gICAgbGV0IGludmFsaWRQYXRoTWVzc2FnZXM6IGFueSA9IFtdO1xuICAgIGV2ZW50LnBhdGguZm9yRWFjaCgocGF0aDogYW55KSA9PiB7XG4gICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gcGF0aC5lZGdlX2lkKTtcbiAgICAgIGlmIChlZGdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgZWRnZSAke3BhdGguZWRnZV9pZH0gY2FuIG5vdCBiZSBmb3VuZGApO1xuICAgICAgICBsZXQgb2JzZXJ2YXRpb24gPSBldmVudC5vYnNlcnZhdGlvbnMuZmluZChcbiAgICAgICAgICAob2JzZXJ2YXRpb24pID0+IG9ic2VydmF0aW9uLmlkID09PSBwYXRoLmxhc3Rfb2JzZXJ2YXRpb25faWQsXG4gICAgICAgICk7XG4gICAgICAgIGxldCBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9ICdOb3QgZm91bmQnO1xuICAgICAgICBpZiAob2JzZXJ2YXRpb24pIHtcbiAgICAgICAgICBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9IG9ic2VydmF0aW9uLnBvaW50X25hbWU7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignbGFzdE9ic2VydmF0aW9uUG9pbnQnLCBsYXN0T2JzZXJ2YXRpb25Qb2ludCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpbnZhbGlkUGF0aE1lc3NhZ2VzLnB1c2goYCR7bGFzdE9ic2VydmF0aW9uUG9pbnR9IGApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRQYXRoTWVzc2FnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBzZXRFeGNlcHRpb25BbGVydCh7XG4gICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgLi4uZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMsXG4gICAgICAgICAge1xuICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldmVudF92ZXJpZnlfY29vcmRpbmF0ZXMnKX08L3A+XG4gICAgICAgICAgICAgICAgPHNwYW4+e2ludmFsaWRQYXRoTWVzc2FnZXN9PC9zcGFuPlxuICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVFdmVudEl0ZW1DbGljayA9IChcbiAgICBldmVudDogSUV2ZW50LFxuICAgIHJlZjogUmVmT2JqZWN0PEhUTUxFbGVtZW50PiB8IG51bGwsXG4gICkgPT4ge1xuICAgIGlmIChyZWYgIT09IG51bGwpIG9uTW91c2VMZWF2ZUV2ZW50KCk7XG4gICAgLy8gaWYgKGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgIC8vICAgICBob3ZlcmVkRXZlbnRQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgLy8gICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgLy8gICAgIH0pO1xuICAgIC8vIH1cbiAgICAvLyBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhbXSkpO1xuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyRXZlbnRJbmRpY2F0b3IobnVsbCkpO1xuICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudChldmVudCkpO1xuICAgIHNldEZpbHRlclBvcHVwT3BlbihmYWxzZSk7XG4gICAgaWYgKGdldEV2ZW50SWRGcm9tVVJMKCkgPT09IG51bGwgfHwgZ2V0RXZlbnRJZEZyb21VUkwoKSA9PT0gJ251bGwnKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgaGlzdG9yeS5wdXNoKFxuICAgICAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZldmVudElkPSR7XG4gICAgICAgICAgICBldmVudC5pZFxuICAgICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke1xuICAgICAgICAgICAgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbVxuICAgICAgICAgIH0mdmFsaWRFdmVudD0ke3ZhbGlkYXRlRXZlbnQoZXZlbnQpfWAsXG4gICAgICAgICk7XG4gICAgICB9LCA1MDApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlRW50ZXJFdmVudCA9IChldmVudCkgPT4ge1xuICAgIGlmICghZm9jdXNlZEV2ZW50ICYmICFob3ZlcmVkRXZlbnQgJiYgdmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChldmVudCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlTGVhdmVFdmVudCA9ICgpID0+IHtcbiAgICBpZiAoaG92ZXJlZEV2ZW50ICYmIGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICB9KTtcblxuICAgICAgaWYgKGhvdmVyZWRFZGdlUGF0aHMpIHtcbiAgICAgICAgaG92ZXJlZEVkZ2VQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICAgICAgY29uc3Qga2FuZG9fb2JqZWN0ID0gbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3Q7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBrYW5kb19vYmplY3Q/LmluY2x1ZGVzKCdFdmVudEJvZHknKSB8fFxuICAgICAgICAgIFtcbiAgICAgICAgICAgICdFdmVudFRhaWwnLFxuICAgICAgICAgICAgJ1NhbXBsaW5nUG9pbnQnLFxuICAgICAgICAgICAgJ0RlY29yYXRvcicsXG4gICAgICAgICAgICAnSG92ZXJlZEVkZ2UnLFxuICAgICAgICAgICAgJ0hvdmVyZWRFZGdlRnJvbnQnLFxuICAgICAgICAgICAgJ0ZvY3VzZWRFZGdlJyxcbiAgICAgICAgICAgICdGb2N1c2VkRWRnZUZyb250JyxcbiAgICAgICAgICBdLmluY2x1ZGVzKGthbmRvX29iamVjdClcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKGxheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChudWxsKSk7XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtdKSk7XG4gIH07XG5cbiAgY29uc3QgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKGdldEV2ZW50SWRGcm9tVVJMKCkgPT09ICdudWxsJyB8fCBnZXRFdmVudElkRnJvbVVSTCgpID09PSBudWxsKSAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09IG51bGwgJiZcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09ICdudWxsJyAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICkge1xuICAgICAgbGV0IGV2ZW50ID0gZXZlbnRzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgKGU6IElFdmVudCkgPT4gZS5pZCA9PT0gcGFyc2VJbnQoZ2V0RXZlbnRJZEZyb21VUkwoKSEpLFxuICAgICAgKTtcbiAgICAgIGlmIChldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV2ZW50SXRlbUNsaWNrKGV2ZW50LCBudWxsKTtcbiAgICAgICAgfSwgNTAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdmFsaWRFdmVudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGxldCBldmVudCA9IGV2ZW50c19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAoZSkgPT4gZS5pZC50b1N0cmluZygpID09PSBnZXRFdmVudElkRnJvbVVSTCgpLFxuICAgICk7XG5cbiAgICBpZiAoZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHZhbGlkYXRlRXZlbnQoZXZlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0sIFtcbiAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgYXJlYXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGV2ZW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gIF0pO1xuXG4gIGNvbnN0IHRyaWdnZXJTb3J0ID0gKHNvcnQ6IG51bWJlcikgPT4ge1xuICAgIGlmIChcbiAgICAgIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCAmJlxuICAgICAgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCgpXG4gICAgKSB7XG4gICAgICBsZXQgS1FMO1xuICAgICAgbGV0IFVSTDtcbiAgICAgIHN3aXRjaCAoc29ydCkge1xuICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICduZXdlc3QnKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lXG4gICAgICAgICAgfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRcbiAgICAgICAgICB9JmV2ZW50SWQ9JHtnZXRFdmVudElkRnJvbVVSTCgpfSZsb2NhbGU9JHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGVcbiAgICAgICAgICB9JnZhbHVlc0Zyb21LUUw9JHtLUUx9JnZhbGlkRXZlbnQ9JHt2YWxpZEV2ZW50fWA7XG4gICAgICAgICAgaGlzdG9yeS5wdXNoKFVSTCk7XG4gICAgICAgICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbShLUUwpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAyOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnb2xkZXN0Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZVxuICAgICAgICAgIH0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZldmVudElkPSR7Z2V0RXZlbnRJZEZyb21VUkwoKX0mbG9jYWxlPSR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlXG4gICAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7S1FMfSZ2YWxpZEV2ZW50PSR7dmFsaWRFdmVudH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMzpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ3NldmVyaXR5Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZVxuICAgICAgICAgIH0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZldmVudElkPSR7Z2V0RXZlbnRJZEZyb21VUkwoKX0mbG9jYWxlPSR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlXG4gICAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7S1FMfSZ2YWxpZEV2ZW50PSR7dmFsaWRFdmVudH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGNhbGNFdmVudHNSZWFsQW1vdW50ID0gKCkgPT4ge1xuICAgIGxldCBldmVudHNDb3VudDogbnVtYmVyIHwgc3RyaW5nID0gMDtcbiAgICBldmVudHNDb3VudCA9IGV2ZW50c19kYXRhLmV2ZW50c19jb3VudDtcbiAgICBpZiAoZXZlbnRzQ291bnQgPiA1MClcbiAgICAgIGV2ZW50c0NvdW50ID0gYCR7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcubW9yZV90aGFuJyl9IDUwYDtcblxuICAgIHJldHVybiBldmVudHNDb3VudDtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpc3BhdGNoKFxuICAgICAgZmV0Y2hFdmVudHMoXG4gICAgICAgIHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgIGdldEtRTFZhbHVlc0Zyb21VUkwoKSB8fCAnREVGQVVMVCcsXG4gICAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCksXG4gICAgICApLFxuICAgICk7XG4gIH0sIFtcbiAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLFxuICAgIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW0sXG4gICAgZm9jdXNlZEV2ZW50LFxuICBdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgICFldmVudHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWFyZWFzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcy5sZW5ndGggIT09IDAgJiZcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgZmlsdGVyUG9wdXBPcGVuXG4gICAgKSB7XG4gICAgICBzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMoKTtcbiAgICB9XG4gIH0sIFtcbiAgICBldmVudHNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGVkZ2VzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIHBvaW50c19kYXRhLml0ZW1zLmxlbmd0aCxcbiAgICBhcmVhc19kYXRhLml0ZW1zLmxlbmd0aCxcbiAgICBhcmVhc19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbSxcbiAgICBmaWx0ZXJQb3B1cE9wZW4sXG4gIF0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydzaWRlbmF2ICcgKyAoc2lkZW5hdkV4cGFuZGVkID8gJycgOiAnc2lkZW5hdi0tY29sbGFwc2VkJyl9PlxuICAgICAge2dsb2JhbF9kYXRhLm1vcmVJbmZvICE9PSB1bmRlZmluZWQgJiYgZ2xvYmFsX2RhdGEubW9yZUluZm8uYWN0aXZlICYmIChcbiAgICAgICAgPE1vcmVJbmZvIC8+XG4gICAgICApfVxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17XG4gICAgICAgICAgJ2V2ZW50LWluZm8gJyArXG4gICAgICAgICAgKCFob3ZlcmVkRXZlbnQgJiYgZm9jdXNlZEV2ZW50ICE9PSBudWxsXG4gICAgICAgICAgICA/ICcnXG4gICAgICAgICAgICA6ICdldmVudC1pbmZvLS1jb2xsYXBzZWQnKVxuICAgICAgICB9XG4gICAgICA+XG4gICAgICAgIHshaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgPEV2ZW50SW5mb1xuICAgICAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudH1cbiAgICAgICAgICAgIHJlT3BlbkZpbHRlcj17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKHRydWUpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPVwidG9nZ2xlLWV4cGFuc2lvbi1idXR0b25cIlxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlRXhwYW5zaW9uVG9nZ2xlKCk7XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibmF2LWV4cGFuc2lvbi1pY29uXCI+XG4gICAgICAgICAgPEZvbnRBd2Vzb21lSWNvblxuICAgICAgICAgICAgaWNvbj17c2lkZW5hdkV4cGFuZGVkID8gZmFDYXJldExlZnQgOiBmYUNhcmV0UmlnaHR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXsndG9nZ2xlLWV4cGFuc2lvbi1idXR0b24tbW9iaWxlJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8YSBocmVmPVwiI1wiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFBcnJvd0xlZnR9IC8+XG4gICAgICAgICAgPHNwYW4+IHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5iYWNrX3RvX2RldGFpbHMnKX08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtaGVhZGVyXCI+XG4gICAgICAgIHtsYXN0VmlzaXRlZCAmJiAhaXNGZXRjaGluZyAmJiAoXG4gICAgICAgICAgPExpbmsgY2xhc3NOYW1lPVwiYmFja1wiIHRvPXtsYXN0VmlzaXRlZH0+XG4gICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICBzcmM9e0xlZnRBcnJvd0ljb259XG4gICAgICAgICAgICAgIGhlaWdodD1cIjEwcHhcIlxuICAgICAgICAgICAgICB3aWR0aD1cIjEycHhcIlxuICAgICAgICAgICAgICBhbHQ9XCJiYWNrXCJcbiAgICAgICAgICAgIC8+eycgJ31cbiAgICAgICAgICAgIHtpMThuLnQoJ2FyZWFfc2NyZWVuLmJhY2snKX1cbiAgICAgICAgICA8L0xpbms+XG4gICAgICAgICl9XG4gICAgICAgIDxoND5cbiAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRzX2xpc3QnKX1cbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydldmVudHMtaGVhZGVyX19ldmVudHNfYW1vdW50J30+XG4gICAgICAgICAgICAoe2NhbGNFdmVudHNSZWFsQW1vdW50KCl9KVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9oND5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXJpbmdcIj5cbiAgICAgICAgICB7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmIChcbiAgICAgICAgICAgIDxTb3J0XG4gICAgICAgICAgICAgIHRyaWdnZXJTb3J0PXt0cmlnZ2VyU29ydH1cbiAgICAgICAgICAgICAgZXZlbnRzPXtldmVudHNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgZXZlbnRzRmV0Y2hpbmc9e2V2ZW50c19kYXRhLmlzRmV0Y2hpbmd9XG4gICAgICAgICAgICAgIGFjdGl2ZUZpbHRlcj17Z2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaWNvbnNcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZmlsdGVyXCJcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKCFmaWx0ZXJQb3B1cE9wZW4pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmlsdGVySWNvbiB3aWR0aD1cIjE3cHhcIiBoZWlnaHQ9XCIxN3B4XCIgZmlsbD1cIiNmNjAwNGZcIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIHtwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgIWZvY3VzZWRFdmVudCAmJiAoXG4gICAgICAgICAgPEZpbHRlckNvbnRhaW5lclxuICAgICAgICAgICAgZmlsdGVyUG9wdXBPcGVuPXtmaWx0ZXJQb3B1cE9wZW59XG4gICAgICAgICAgICBmZXRjaFR5cGU9eydFdmVudEZpbHRlcid9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtY29udGFpbmVyIHNjcm9sbGJhciBcIj5cbiAgICAgICAge2xvYWRlcigpfVxuICAgICAgICB7IWlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICBpdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydldmVudHNfX2JsYW5rc2xhdGUnfT5cbiAgICAgICAgICAgICAgPGltZyBzcmM9e05vRXZlbnRzSW1hZ2V9IGFsdD1cIk5vRXZlbnRzSWNvblwiIC8+XG4gICAgICAgICAgICAgIDxoMj57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuaGVhZGVyJyl9PC9oMj5cbiAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmJvZHknKX08L3A+XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYXBwbHlfZGVmYXVsdF9maWx0ZXJfYnV0dG9uJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBhcHBseURlZmF1bHRGaWx0ZXIoKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5idXR0b24nKX1cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAge2l0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImV2ZW50cyBcIj5cbiAgICAgICAgICAgICAge2l0ZW1zLm1hcCgoZXZlbnQ6IGFueSkgPT4gKFxuICAgICAgICAgICAgICAgIDxsaSBrZXk9e2V2ZW50LmlkfSBjbGFzc05hbWU9XCJldmVudFwiIGRhdGEtZXZlbnQtaWQ9e2V2ZW50LmlkfT5cbiAgICAgICAgICAgICAgICAgIDxTZXZlcmVFdmVudFxuICAgICAgICAgICAgICAgICAgICBldmVudD17ZXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZUNsaWNrPXtoYW5kbGVFdmVudEl0ZW1DbGlja31cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUVudGVyRXZlbnQ9e29uTW91c2VFbnRlckV2ZW50fVxuICAgICAgICAgICAgICAgICAgICBvbk1vdXNlTGVhdmVFdmVudD17b25Nb3VzZUxlYXZlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlRXZlbnQ9e3ZhbGlkYXRlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbkFsZXJ0PXtleGNlcHRpb25BbGVydH1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFdmVudHNMaXN0KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUNBLElBQUFBLGtCQUFBLEdBQUFDLE9BQUE7QUFLQSxJQUFBQyxpQkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBQyx1QkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUks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
|
|
375
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX2Fycm93TGVmdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZnVubmVsIiwiX25vX2V2ZW50cyIsIl9TZXZlcmVFdmVudCIsIl9VcmxIaXN0b3J5IiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfaTE4biIsIl9rcWwiLCJfRXZlbnRJbmZvIiwiX01vcmVJbmZvIiwiX0ZpbHRlckNvbnRhaW5lciIsIl9Tb3J0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJfcmVmIiwic2lkZW5hdkV4cGFuZGVkIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwiaG92ZXJlZEVkZ2VQYXRocyIsIndhdGVyQXV0aG9yaXR5SWQiLCJtYXAiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJmaWx0ZXJQb3B1cE9wZW4iLCJzZXRGaWx0ZXJQb3B1cE9wZW4iLCJfdXNlU3RhdGUzIiwibWVzc2FnZXMiLCJtZXNzYWdlIiwiZXZlbnRfaWQiLCJldmVudF9pZHMiLCJfdXNlU3RhdGU0IiwiZXhjZXB0aW9uQWxlcnQiLCJzZXRFeGNlcHRpb25BbGVydCIsImxhc3RWaXNpdGVkIiwidXNlTGFzdFZpc2l0ZWQiLCJ1c2VRdWVyeSIsIlVSTFNlYXJjaFBhcmFtcyIsInVzZUxvY2F0aW9uIiwic2VhcmNoIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJxdWVyeSIsImdldEtRTFZhbHVlc0Zyb21VUkwiLCJnZXRFdmVudElkRnJvbVVSTCIsImxvYWRlciIsImxlbmd0aCIsIm5ld0FyZWFzIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImhhbmRsZUV4cGFuc2lvblRvZ2dsZSIsInNpZGVOYXZFeHBhbmRlZCIsImFwcGx5RGVmYXVsdEZpbHRlciIsInB1c2giLCJjb25jYXQiLCJuYXZDb250ZXh0IiwibmFtZSIsImxvY2FsZSIsInNldEV2ZW50RmlsdGVyUGFyYW0iLCJ2YWxpZGF0ZUV2ZW50IiwiZXZlbnQiLCJpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMiLCJvYnNlcnZhdGlvbnMiLCJmb3JFYWNoIiwib2JzZXJ2YXRpb24iLCJwb2ludF9pc19yb290IiwiZWRnZSIsImZpbmQiLCJzb3VyY2VfcG9pbnRfaWQiLCJwb2ludF9pZCIsInVuZGVmaW5lZCIsInBvaW50X25hbWUiLCJpbmRleCIsImZpbmRJbmRleCIsIm1zZyIsImlkIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsIkZyYWdtZW50IiwiaTE4biIsInQiLCJpbnZhbGlkUGF0aE1lc3NhZ2VzIiwicGF0aCIsImVkZ2VfaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJsYXN0X29ic2VydmF0aW9uX2lkIiwibGFzdE9ic2VydmF0aW9uUG9pbnQiLCJoYW5kbGVFdmVudEl0ZW1DbGljayIsInJlZiIsIm9uTW91c2VMZWF2ZUV2ZW50Iiwic2V0Rm9jdXNlZEV2ZW50Iiwic2V0VGltZW91dCIsImV2ZW50RmlsdGVyUGFyYW0iLCJvbk1vdXNlRW50ZXJFdmVudCIsInNldEhvdmVyZWRFdmVudCIsInJlbW92ZUxheWVyIiwibGF5ZXJzIiwiX2xheWVycyIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0IiwiaW5jbHVkZXMiLCJzZXRIb3ZlcmVkRXZlbnRQYXRocyIsInNldEhvdmVyZWRFZGdlUGF0aHMiLCJpc0RhdGFGZXRjaGVkQW5kRXZlbnROb3RGb2N1c2VkIiwic2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zIiwiZSIsInBhcnNlSW50IiwidmFsaWRFdmVudCIsInVzZU1lbW8iLCJ0b1N0cmluZyIsInRyaWdnZXJTb3J0Iiwic29ydCIsImFjdGl2ZUZpbHRlciIsIktRTCIsIlVSTCIsImJ1aWxkS1FMUXVlcnkiLCJjYWxjRXZlbnRzUmVhbEFtb3VudCIsImV2ZW50c0NvdW50IiwiZXZlbnRzX2NvdW50IiwidXNlRWZmZWN0IiwiZmV0Y2hFdmVudHMiLCJtb3JlSW5mbyIsImFjdGl2ZSIsInJlT3BlbkZpbHRlciIsIm9uQ2xpY2siLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFDYXJldExlZnQiLCJmYUNhcmV0UmlnaHQiLCJocmVmIiwiZmFBcnJvd0xlZnQiLCJMaW5rIiwidG8iLCJzcmMiLCJMZWZ0QXJyb3dJY29uIiwiaGVpZ2h0Iiwid2lkdGgiLCJhbHQiLCJldmVudHMiLCJldmVudHNGZXRjaGluZyIsIlJlYWN0Q29tcG9uZW50IiwiZmlsbCIsImZldGNoVHlwZSIsIk5vRXZlbnRzSW1hZ2UiLCJTZXZlcmVFdmVudCIsImhhbmRsZUNsaWNrIiwiY29ubmVjdG9yIiwiY29ubmVjdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudHNMaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBldGMvbm8tY29tbWVudGVkLW91dC1jb2RlICovXG5pbXBvcnQge1xuICBmYUFycm93TGVmdCxcbiAgZmFDYXJldExlZnQsXG4gIGZhQ2FyZXRSaWdodCxcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgUmVhY3QsIHsgUmVmT2JqZWN0LCB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgTGluaywgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBMZWZ0QXJyb3dJY29uIGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvYXJyb3ctbGVmdC5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRmlsdGVySWNvbiB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvZnVubmVsLnN2Zyc7XG5pbXBvcnQgTm9FdmVudHNJbWFnZSBmcm9tICdzcmMvYXNzZXRzL25vX2V2ZW50cy5zdmcnO1xuaW1wb3J0IHsgU2V2ZXJlRXZlbnQgfSBmcm9tICdzcmMvY29tcG9uZW50cy9TZXZlcmVFdmVudC9TZXZlcmVFdmVudCc7XG5pbXBvcnQgeyBJQXBwU3RhdGUgfSBmcm9tICdzcmMvbW9kZWxzL0lBcHBTdGF0ZSc7XG5pbXBvcnQgeyB1c2VMYXN0VmlzaXRlZCB9IGZyb20gJ3NyYy9wcm92aWRlcnMvVXJsSGlzdG9yeSc7XG5pbXBvcnQge1xuICBmZXRjaEV2ZW50cyxcbiAgc2V0Rm9jdXNlZEV2ZW50LFxuICBzZXRIb3ZlcmVkRWRnZVBhdGhzLFxuICBzZXRIb3ZlcmVkRXZlbnQsXG4gIHNldEhvdmVyZWRFdmVudFBhdGhzLFxufSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IHNldEV2ZW50RmlsdGVyUGFyYW0sIHNpZGVOYXZFeHBhbmRlZCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgYnVpbGRLUUxRdWVyeSB9IGZyb20gJ3NyYy91dGlsaXRpZXMva3FsJztcbmltcG9ydCAnLi4vRXZlbnRzU3R5bGUuc2Nzcyc7XG5pbXBvcnQgRXZlbnRJbmZvIGZyb20gJy4uL2V2ZW50X2luZm8vRXZlbnRJbmZvJztcbmltcG9ydCBNb3JlSW5mbyBmcm9tICcuLi9Nb3JlSW5mbyc7XG5pbXBvcnQgRmlsdGVyQ29udGFpbmVyIGZyb20gJy4vRmlsdGVyL0ZpbHRlckNvbnRhaW5lcic7XG5pbXBvcnQgU29ydCBmcm9tICcuL1NvcnQnO1xuXG5mdW5jdGlvbiBtYXBTdGF0ZVRvUHJvcHMoc3RhdGU6IElBcHBTdGF0ZSkge1xuICBjb25zdCB7XG4gICAgZXZlbnRzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgZWRnZXNfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgICBhcmVhc19kYXRhLFxuICAgIG5hdl9jb250ZXh0X2RhdGEsXG4gIH0gPSBzdGF0ZTtcblxuICByZXR1cm4ge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9O1xufVxuXG50eXBlIElQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBzaWRlbmF2RXhwYW5kZWQ6IGJvb2xlYW47XG59O1xuXG5jb25zdCBFdmVudHNMaXN0OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHtcbiAgYXJlYXNfZGF0YSxcbiAgcG9pbnRzX2RhdGEsXG4gIGVkZ2VzX2RhdGEsXG4gIGdsb2JhbF9kYXRhLFxuICBzaWRlbmF2RXhwYW5kZWQsXG4gIGV2ZW50c19kYXRhLFxuICBuYXZfY29udGV4dF9kYXRhLFxufSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHtcbiAgICBpdGVtcyxcbiAgICBpc0ZldGNoaW5nLFxuICAgIGZvY3VzZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnQsXG4gICAgaG92ZXJlZEV2ZW50UGF0aHMsXG4gICAgaG92ZXJlZEVkZ2VQYXRocyxcbiAgfSA9IGV2ZW50c19kYXRhO1xuICBjb25zdCB7IHdhdGVyQXV0aG9yaXR5SWQsIG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IFtmaWx0ZXJQb3B1cE9wZW4sIHNldEZpbHRlclBvcHVwT3Blbl0gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgW2V4Y2VwdGlvbkFsZXJ0LCBzZXRFeGNlcHRpb25BbGVydF0gPSB1c2VTdGF0ZTx7XG4gICAgbWVzc2FnZXM6IHsgbWVzc2FnZTogYW55OyBldmVudF9pZDogbnVtYmVyIH1bXTtcbiAgICBldmVudF9pZHM6IG51bWJlcltdO1xuICB9Pih7IG1lc3NhZ2VzOiBbeyBtZXNzYWdlOiAnJywgZXZlbnRfaWQ6IDAgfV0sIGV2ZW50X2lkczogW10gfSk7XG4gIGNvbnN0IGxhc3RWaXNpdGVkID0gdXNlTGFzdFZpc2l0ZWQoKTtcblxuICBjb25zdCB1c2VRdWVyeSA9ICgpID0+IHtcbiAgICByZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcyh1c2VMb2NhdGlvbigpLnNlYXJjaCk7XG4gIH07XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnkoKTtcbiAgY29uc3QgZ2V0S1FMVmFsdWVzRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCd2YWx1ZXNGcm9tS1FMJyk7XG4gIH07XG4gIGNvbnN0IGdldEV2ZW50SWRGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ2V2ZW50SWQnKTtcbiAgfTtcblxuICBjb25zdCBsb2FkZXIgPSAoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgKGlzRmV0Y2hpbmcgJiYgaXRlbXMubGVuZ3RoID09PSAwKSB8fFxuICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcy5sZW5ndGggPT09IDAgfHxcbiAgICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcgfHxcbiAgICAgIGVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICkge1xuICAgICAgcmV0dXJuIDxkaXYgY2xhc3NOYW1lPXsnbG9hZGVyJ30+PC9kaXY+O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXhwYW5zaW9uVG9nZ2xlID0gKCkgPT4ge1xuICAgIGRpc3BhdGNoKHNpZGVOYXZFeHBhbmRlZCghc2lkZW5hdkV4cGFuZGVkKSk7XG4gIH07XG5cbiAgY29uc3QgYXBwbHlEZWZhdWx0RmlsdGVyID0gKCkgPT4ge1xuICAgIGhpc3RvcnkucHVzaChcbiAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mdmFsdWVzRnJvbUtRTD1gLFxuICAgICk7XG4gICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbSgnJykpO1xuICB9O1xuXG4gIGNvbnN0IHZhbGlkYXRlRXZlbnQgPSAoZXZlbnQ6IElFdmVudCkgPT4ge1xuICAgIC8vIGNoZWNrIHRoYXQgYWxsIG9ic2VydmF0aW9ucycgZWRnZXMgZXhpc3RzLiBJZiB0aGV5IGFyZSBub3QgZXhpc3RzIGl0J3MgaW5kaWNhdGVzIHRoYXQgdGhlaXIgcG9pbnRzIGFyZVxuICAgIC8vIG5vdCBpbiB0aGUgaGllcmFyY2h5IG9yIGRvZXNuJ3QgaGF2ZSBsYXQvbG5nLlxuICAgIGxldCBpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXM6IGFueSA9IFtdO1xuICAgIGV2ZW50Lm9ic2VydmF0aW9ucy5mb3JFYWNoKChvYnNlcnZhdGlvbjogYW55KSA9PiB7XG4gICAgICAvLyBpZiBvYnNlcnZhdGlvbiBpcyByb290IChleC4gV1dUUCkgdGhlcmUgaXMgbm8gZWRnZSB0aGF0IGl0cyBhIHNvdXJjZS4gc28gd2UgY2FuIHNraXAgdGhpcyBjaGVja1xuICAgICAgaWYgKCFvYnNlcnZhdGlvbi5wb2ludF9pc19yb290KSB7XG4gICAgICAgIGxldCBlZGdlID0gZWRnZXNfZGF0YS5pdGVtcy5maW5kKFxuICAgICAgICAgIChlZGdlKSA9PiBlZGdlLnNvdXJjZV9wb2ludF9pZCA9PT0gb2JzZXJ2YXRpb24ucG9pbnRfaWQsXG4gICAgICAgICk7XG4gICAgICAgIGlmIChlZGdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMucHVzaChcbiAgICAgICAgICAgIGAke29ic2VydmF0aW9uLnBvaW50X25hbWV9ICgke29ic2VydmF0aW9uLnBvaW50X2lkfSkgYCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbGV0IGluZGV4ID0gZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMuZmluZEluZGV4KFxuICAgICAgICAobXNnKSA9PiBtc2cuZXZlbnRfaWQgPT09IGV2ZW50LmlkLFxuICAgICAgKTtcblxuICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICBzZXRFeGNlcHRpb25BbGVydCh7XG4gICAgICAgICAgbWVzc2FnZXM6IFtcbiAgICAgICAgICAgIC4uLmV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBtZXNzYWdlOiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldmVudF9kYXRhX21pc3NpbmcnKX08L3A+XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGV2ZW50X2lkOiBldmVudC5pZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBldmVudF9pZHM6IFsuLi5leGNlcHRpb25BbGVydC5ldmVudF9pZHMsIGV2ZW50LmlkXSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gc2FtZSBjaGVjayBhcyBhYm92ZSBidXQgdGhpcyB0aW1lIGZvciB0aGUgZXZlbnQgcGF0aC4gSWYgZWRnZSBkb2Vzbid0IGV4aXN0LCBpdCdzIGluZGljYXRlcyB0aGF0IG9uZSBvZiB0aGVcbiAgICAvLyBwb2ludHMgZG93bnN0cmVhbSBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZFBhdGhNZXNzYWdlczogYW55ID0gW107XG4gICAgZXZlbnQucGF0aC5mb3JFYWNoKChwYXRoOiBhbnkpID0+IHtcbiAgICAgIGxldCBlZGdlID0gZWRnZXNfZGF0YS5pdGVtcy5maW5kKChlZGdlKSA9PiBlZGdlLmlkID09PSBwYXRoLmVkZ2VfaWQpO1xuICAgICAgaWYgKGVkZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBlZGdlICR7cGF0aC5lZGdlX2lkfSBjYW4gbm90IGJlIGZvdW5kYCk7XG4gICAgICAgIGxldCBvYnNlcnZhdGlvbiA9IGV2ZW50Lm9ic2VydmF0aW9ucy5maW5kKFxuICAgICAgICAgIChvYnNlcnZhdGlvbikgPT4gb2JzZXJ2YXRpb24uaWQgPT09IHBhdGgubGFzdF9vYnNlcnZhdGlvbl9pZCxcbiAgICAgICAgKTtcbiAgICAgICAgbGV0IGxhc3RPYnNlcnZhdGlvblBvaW50ID0gJ05vdCBmb3VuZCc7XG4gICAgICAgIGlmIChvYnNlcnZhdGlvbikge1xuICAgICAgICAgIGxhc3RPYnNlcnZhdGlvblBvaW50ID0gb2JzZXJ2YXRpb24ucG9pbnRfbmFtZTtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdsYXN0T2JzZXJ2YXRpb25Qb2ludCcsIGxhc3RPYnNlcnZhdGlvblBvaW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGludmFsaWRQYXRoTWVzc2FnZXMucHVzaChgJHtsYXN0T2JzZXJ2YXRpb25Qb2ludH0gYCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW52YWxpZFBhdGhNZXNzYWdlcy5sZW5ndGggIT09IDApIHtcbiAgICAgIHNldEV4Y2VwdGlvbkFsZXJ0KHtcbiAgICAgICAgbWVzc2FnZXM6IFtcbiAgICAgICAgICAuLi5leGNlcHRpb25BbGVydC5tZXNzYWdlcyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBtZXNzYWdlOiAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50X3ZlcmlmeV9jb29yZGluYXRlcycpfTwvcD5cbiAgICAgICAgICAgICAgICA8c3Bhbj57aW52YWxpZFBhdGhNZXNzYWdlc308L3NwYW4+XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGV2ZW50X2lkOiBldmVudC5pZCxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBldmVudF9pZHM6IFsuLi5leGNlcHRpb25BbGVydC5ldmVudF9pZHMsIGV2ZW50LmlkXSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV2ZW50SXRlbUNsaWNrID0gKFxuICAgIGV2ZW50OiBJRXZlbnQsXG4gICAgcmVmOiBSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+IHwgbnVsbCxcbiAgKSA9PiB7XG4gICAgaWYgKHJlZiAhPT0gbnVsbCkgb25Nb3VzZUxlYXZlRXZlbnQoKTtcbiAgICAvLyBpZiAoaG92ZXJlZEV2ZW50UGF0aHMgJiYgbWFwKSB7XG4gICAgLy8gICAgIGhvdmVyZWRFdmVudFBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAvLyAgICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAvLyAgICAgfSk7XG4gICAgLy8gfVxuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudFBhdGhzKFtdKSk7XG4gICAgLy8gZGlzcGF0Y2goc2V0SG92ZXJFdmVudEluZGljYXRvcihudWxsKSk7XG4gICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEV2ZW50KGV2ZW50KSk7XG4gICAgc2V0RmlsdGVyUG9wdXBPcGVuKGZhbHNlKTtcbiAgICBpZiAoZ2V0RXZlbnRJZEZyb21VUkwoKSA9PT0gbnVsbCB8fCBnZXRFdmVudElkRnJvbVVSTCgpID09PSAnbnVsbCcpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBoaXN0b3J5LnB1c2goXG4gICAgICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRcbiAgICAgICAgICB9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JmV2ZW50SWQ9JHtcbiAgICAgICAgICAgIGV2ZW50LmlkXG4gICAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXG4gICAgICAgICAgfSZ2YWxpZEV2ZW50PSR7dmFsaWRhdGVFdmVudChldmVudCl9YCxcbiAgICAgICAgKTtcbiAgICAgIH0sIDUwMCk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9uTW91c2VFbnRlckV2ZW50ID0gKGV2ZW50KSA9PiB7XG4gICAgaWYgKCFmb2N1c2VkRXZlbnQgJiYgIWhvdmVyZWRFdmVudCAmJiB2YWxpZGF0ZUV2ZW50KGV2ZW50KSkge1xuICAgICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50KGV2ZW50KSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9uTW91c2VMZWF2ZUV2ZW50ID0gKCkgPT4ge1xuICAgIGlmIChob3ZlcmVkRXZlbnQgJiYgaG92ZXJlZEV2ZW50UGF0aHMgJiYgbWFwKSB7XG4gICAgICBob3ZlcmVkRXZlbnRQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoaG92ZXJlZEVkZ2VQYXRocykge1xuICAgICAgICBob3ZlcmVkRWRnZVBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG4gICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgICAgICBjb25zdCBrYW5kb19vYmplY3QgPSBsYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdDtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGthbmRvX29iamVjdD8uaW5jbHVkZXMoJ0V2ZW50Qm9keScpIHx8XG4gICAgICAgICAgW1xuICAgICAgICAgICAgJ0V2ZW50VGFpbCcsXG4gICAgICAgICAgICAnU2FtcGxpbmdQb2ludCcsXG4gICAgICAgICAgICAnRGVjb3JhdG9yJyxcbiAgICAgICAgICAgICdIb3ZlcmVkRWRnZScsXG4gICAgICAgICAgICAnSG92ZXJlZEVkZ2VGcm9udCcsXG4gICAgICAgICAgICAnRm9jdXNlZEVkZ2UnLFxuICAgICAgICAgICAgJ0ZvY3VzZWRFZGdlRnJvbnQnLFxuICAgICAgICAgIF0uaW5jbHVkZXMoa2FuZG9fb2JqZWN0KVxuICAgICAgICApIHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIobGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50KG51bGwpKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhbXSkpO1xuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW10pKTtcbiAgfTtcblxuICBjb25zdCBpc0RhdGFGZXRjaGVkQW5kRXZlbnROb3RGb2N1c2VkID0gKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICAoZ2V0RXZlbnRJZEZyb21VUkwoKSA9PT0gJ251bGwnIHx8IGdldEV2ZW50SWRGcm9tVVJMKCkgPT09IG51bGwpICYmXG4gICAgICBmb2N1c2VkRXZlbnQgPT09IG51bGwgJiZcbiAgICAgIGl0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgIWlzRmV0Y2hpbmcgJiZcbiAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMgPSAoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgZ2V0RXZlbnRJZEZyb21VUkwoKSAhPT0gbnVsbCAmJlxuICAgICAgZ2V0RXZlbnRJZEZyb21VUkwoKSAhPT0gJ251bGwnICYmXG4gICAgICBmb2N1c2VkRXZlbnQgPT09IG51bGwgJiZcbiAgICAgIGl0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgIWlzRmV0Y2hpbmcgJiZcbiAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nXG4gICAgKSB7XG4gICAgICBsZXQgZXZlbnQgPSBldmVudHNfZGF0YS5pdGVtcy5maW5kKFxuICAgICAgICAoZTogSUV2ZW50KSA9PiBlLmlkID09PSBwYXJzZUludChnZXRFdmVudElkRnJvbVVSTCgpISksXG4gICAgICApO1xuICAgICAgaWYgKGV2ZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlRXZlbnRJdGVtQ2xpY2soZXZlbnQsIG51bGwpO1xuICAgICAgICB9LCA1MDApO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCB2YWxpZEV2ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgbGV0IGV2ZW50ID0gZXZlbnRzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgIChlKSA9PiBlLmlkLnRvU3RyaW5nKCkgPT09IGdldEV2ZW50SWRGcm9tVVJMKCksXG4gICAgKTtcblxuICAgIGlmIChldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdmFsaWRhdGVFdmVudChldmVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSwgW1xuICAgIGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCxcbiAgICBhcmVhc19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgcG9pbnRzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZXZlbnRzX2RhdGEuaXNGZXRjaGluZyxcbiAgXSk7XG5cbiAgY29uc3QgdHJpZ2dlclNvcnQgPSAoc29ydDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKFxuICAgICAgZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyICE9PSBudWxsICYmXG4gICAgICBpc0RhdGFGZXRjaGVkQW5kRXZlbnROb3RGb2N1c2VkKClcbiAgICApIHtcbiAgICAgIGxldCBLUUw7XG4gICAgICBsZXQgVVJMO1xuICAgICAgc3dpdGNoIChzb3J0KSB7XG4gICAgICAgIGNhc2UgMTpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ25ld2VzdCcpfWA7XG4gICAgICAgICAgVVJMID0gYC8ke1xuICAgICAgICAgICAgbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWVcbiAgICAgICAgICB9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke1xuICAgICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZFxuICAgICAgICAgIH0mZXZlbnRJZD0ke2dldEV2ZW50SWRGcm9tVVJMKCl9JmxvY2FsZT0ke1xuICAgICAgICAgICAgbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZVxuICAgICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke0tRTH0mdmFsaWRFdmVudD0ke3ZhbGlkRXZlbnR9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICdvbGRlc3QnKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lXG4gICAgICAgICAgfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRcbiAgICAgICAgICB9JmV2ZW50SWQ9JHtnZXRFdmVudElkRnJvbVVSTCgpfSZsb2NhbGU9JHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGVcbiAgICAgICAgICB9JnZhbHVlc0Zyb21LUUw9JHtLUUx9JnZhbGlkRXZlbnQ9JHt2YWxpZEV2ZW50fWA7XG4gICAgICAgICAgaGlzdG9yeS5wdXNoKFVSTCk7XG4gICAgICAgICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbShLUUwpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAzOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnc2V2ZXJpdHknKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lXG4gICAgICAgICAgfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRcbiAgICAgICAgICB9JmV2ZW50SWQ9JHtnZXRFdmVudElkRnJvbVVSTCgpfSZsb2NhbGU9JHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGVcbiAgICAgICAgICB9JnZhbHVlc0Zyb21LUUw9JHtLUUx9JnZhbGlkRXZlbnQ9JHt2YWxpZEV2ZW50fWA7XG4gICAgICAgICAgaGlzdG9yeS5wdXNoKFVSTCk7XG4gICAgICAgICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbShLUUwpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgY2FsY0V2ZW50c1JlYWxBbW91bnQgPSAoKSA9PiB7XG4gICAgbGV0IGV2ZW50c0NvdW50OiBudW1iZXIgfCBzdHJpbmcgPSAwO1xuICAgIGV2ZW50c0NvdW50ID0gZXZlbnRzX2RhdGEuZXZlbnRzX2NvdW50O1xuICAgIGlmIChldmVudHNDb3VudCA+IDUwKVxuICAgICAgZXZlbnRzQ291bnQgPSBgJHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5tb3JlX3RoYW4nKX0gNTBgO1xuXG4gICAgcmV0dXJuIGV2ZW50c0NvdW50O1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZGlzcGF0Y2goXG4gICAgICBmZXRjaEV2ZW50cyhcbiAgICAgICAgd2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgICAgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIHx8ICdERUZBVUxUJyxcbiAgICAgICAgZ2V0RXZlbnRJZEZyb21VUkwoKSxcbiAgICAgICksXG4gICAgKTtcbiAgfSwgW1xuICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsXG4gICAgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbSxcbiAgICBmb2N1c2VkRXZlbnQsXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgIWV2ZW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICBhcmVhc19kYXRhLm5ld0FyZWFzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgcG9pbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICBmaWx0ZXJQb3B1cE9wZW5cbiAgICApIHtcbiAgICAgIHNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcygpO1xuICAgIH1cbiAgfSwgW1xuICAgIGV2ZW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgcG9pbnRzX2RhdGEuaXRlbXMubGVuZ3RoLFxuICAgIGFyZWFzX2RhdGEuaXRlbXMubGVuZ3RoLFxuICAgIGFyZWFzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtLFxuICAgIGZpbHRlclBvcHVwT3BlbixcbiAgXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17J3NpZGVuYXYgJyArIChzaWRlbmF2RXhwYW5kZWQgPyAnJyA6ICdzaWRlbmF2LS1jb2xsYXBzZWQnKX0+XG4gICAgICB7Z2xvYmFsX2RhdGEubW9yZUluZm8gIT09IHVuZGVmaW5lZCAmJiBnbG9iYWxfZGF0YS5tb3JlSW5mby5hY3RpdmUgJiYgKFxuICAgICAgICA8TW9yZUluZm8gLz5cbiAgICAgICl9XG5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXtcbiAgICAgICAgICAnZXZlbnQtaW5mbyAnICtcbiAgICAgICAgICAoIWhvdmVyZWRFdmVudCAmJiBmb2N1c2VkRXZlbnQgIT09IG51bGxcbiAgICAgICAgICAgID8gJydcbiAgICAgICAgICAgIDogJ2V2ZW50LWluZm8tLWNvbGxhcHNlZCcpXG4gICAgICAgIH1cbiAgICAgID5cbiAgICAgICAgeyFob3ZlcmVkRXZlbnQgJiYgZm9jdXNlZEV2ZW50ICE9PSBudWxsICYmIChcbiAgICAgICAgICA8RXZlbnRJbmZvXG4gICAgICAgICAgICBldmVudD17Zm9jdXNlZEV2ZW50fVxuICAgICAgICAgICAgcmVPcGVuRmlsdGVyPXsoKSA9PiBzZXRGaWx0ZXJQb3B1cE9wZW4odHJ1ZSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9XCJ0b2dnbGUtZXhwYW5zaW9uLWJ1dHRvblwiXG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICBoYW5kbGVFeHBhbnNpb25Ub2dnbGUoKTtcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJuYXYtZXhwYW5zaW9uLWljb25cIj5cbiAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgICBpY29uPXtzaWRlbmF2RXhwYW5kZWQgPyBmYUNhcmV0TGVmdCA6IGZhQ2FyZXRSaWdodH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9eyd0b2dnbGUtZXhwYW5zaW9uLWJ1dHRvbi1tb2JpbGUnfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlRXhwYW5zaW9uVG9nZ2xlKCk7XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxhIGhyZWY9XCIjXCI+XG4gICAgICAgICAgPEZvbnRBd2Vzb21lSWNvbiBpY29uPXtmYUFycm93TGVmdH0gLz5cbiAgICAgICAgICA8c3Bhbj4ge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmJhY2tfdG9fZGV0YWlscycpfTwvc3Bhbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImV2ZW50cy1oZWFkZXJcIj5cbiAgICAgICAge2xhc3RWaXNpdGVkICYmICFpc0ZldGNoaW5nICYmIChcbiAgICAgICAgICA8TGluayBjbGFzc05hbWU9XCJiYWNrXCIgdG89e2xhc3RWaXNpdGVkfT5cbiAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgIHNyYz17TGVmdEFycm93SWNvbn1cbiAgICAgICAgICAgICAgaGVpZ2h0PVwiMTBweFwiXG4gICAgICAgICAgICAgIHdpZHRoPVwiMTJweFwiXG4gICAgICAgICAgICAgIGFsdD1cImJhY2tcIlxuICAgICAgICAgICAgLz57JyAnfVxuICAgICAgICAgICAge2kxOG4udCgnYXJlYV9zY3JlZW4uYmFjaycpfVxuICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgKX1cbiAgICAgICAgPGg0PlxuICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldmVudHNfbGlzdCcpfVxuICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J2V2ZW50cy1oZWFkZXJfX2V2ZW50c19hbW91bnQnfT5cbiAgICAgICAgICAgICh7Y2FsY0V2ZW50c1JlYWxBbW91bnQoKX0pXG4gICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2g0PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpbHRlcmluZ1wiPlxuICAgICAgICAgIHtldmVudHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgKFxuICAgICAgICAgICAgPFNvcnRcbiAgICAgICAgICAgICAgdHJpZ2dlclNvcnQ9e3RyaWdnZXJTb3J0fVxuICAgICAgICAgICAgICBldmVudHM9e2V2ZW50c19kYXRhLml0ZW1zfVxuICAgICAgICAgICAgICBldmVudHNGZXRjaGluZz17ZXZlbnRzX2RhdGEuaXNGZXRjaGluZ31cbiAgICAgICAgICAgICAgYWN0aXZlRmlsdGVyPXtnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXJ9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJpY29uc1wiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJmaWx0ZXJcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRGaWx0ZXJQb3B1cE9wZW4oIWZpbHRlclBvcHVwT3Blbil9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxGaWx0ZXJJY29uIHdpZHRoPVwiMTdweFwiIGhlaWdodD1cIjE3cHhcIiBmaWxsPVwiI2Y2MDA0ZlwiIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAge3BvaW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCAmJiAhZm9jdXNlZEV2ZW50ICYmIChcbiAgICAgICAgICA8RmlsdGVyQ29udGFpbmVyXG4gICAgICAgICAgICBmaWx0ZXJQb3B1cE9wZW49e2ZpbHRlclBvcHVwT3Blbn1cbiAgICAgICAgICAgIGZldGNoVHlwZT17J0V2ZW50RmlsdGVyJ31cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImV2ZW50cy1jb250YWluZXIgc2Nyb2xsYmFyIFwiPlxuICAgICAgICB7bG9hZGVyKCl9XG4gICAgICAgIHshaXNGZXRjaGluZyAmJlxuICAgICAgICAgIGl0ZW1zLmxlbmd0aCA9PT0gMCAmJlxuICAgICAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZyAmJiAoXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2V2ZW50c19fYmxhbmtzbGF0ZSd9PlxuICAgICAgICAgICAgICA8aW1nIHNyYz17Tm9FdmVudHNJbWFnZX0gYWx0PVwiTm9FdmVudHNJY29uXCIgLz5cbiAgICAgICAgICAgICAgPGgyPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5oZWFkZXInKX08L2gyPlxuICAgICAgICAgICAgICA8cD57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuYm9keScpfTwvcD5cbiAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9eydhcHBseV9kZWZhdWx0X2ZpbHRlcl9idXR0b24nfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGFwcGx5RGVmYXVsdEZpbHRlcigpfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmJ1dHRvbicpfVxuICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICApfVxuICAgICAgICB7aXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAgICAgIWFyZWFzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZyAmJiAoXG4gICAgICAgICAgICA8dWwgY2xhc3NOYW1lPVwiZXZlbnRzIFwiPlxuICAgICAgICAgICAgICB7aXRlbXMubWFwKChldmVudDogYW55KSA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17ZXZlbnQuaWR9IGNsYXNzTmFtZT1cImV2ZW50XCIgZGF0YS1ldmVudC1pZD17ZXZlbnQuaWR9PlxuICAgICAgICAgICAgICAgICAgPFNldmVyZUV2ZW50XG4gICAgICAgICAgICAgICAgICAgIGV2ZW50PXtldmVudH1cbiAgICAgICAgICAgICAgICAgICAgaGFuZGxlQ2xpY2s9e2hhbmRsZUV2ZW50SXRlbUNsaWNrfVxuICAgICAgICAgICAgICAgICAgICBvbk1vdXNlRW50ZXJFdmVudD17b25Nb3VzZUVudGVyRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIG9uTW91c2VMZWF2ZUV2ZW50PXtvbk1vdXNlTGVhdmVFdmVudH1cbiAgICAgICAgICAgICAgICAgICAgdmFsaWRhdGVFdmVudD17dmFsaWRhdGVFdmVudH1cbiAgICAgICAgICAgICAgICAgICAgZXhjZXB0aW9uQWxlcnQ9e2V4Y2VwdGlvbkFsZXJ0fVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChtYXBTdGF0ZVRvUHJvcHMpO1xuZXhwb3J0IGRlZmF1bHQgY29ubmVjdG9yKEV2ZW50c0xpc3QpO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQ0EsSUFBQUEsa0JBQUEsR0FBQUMsT0FBQTtBQUtBLElBQUFDLGlCQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxNQUFBLEdBQUFDLHVCQUFBLENBQUFILE9BQUE7QUFDQSxJ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
|
|
@@ -38,21 +38,9 @@ var ImportedGisFilesPage = function ImportedGisFilesPage(_ref) {
|
|
|
38
38
|
}).importGisFile.importGisProcessPage.url;
|
|
39
39
|
history.push(url);
|
|
40
40
|
};
|
|
41
|
-
var uploadNewSitesHandler = function uploadNewSitesHandler() {
|
|
42
|
-
var url = (0, _urls.urls)({
|
|
43
|
-
waterAuthorityId: waterAuthorityId,
|
|
44
|
-
local: navContext.locale
|
|
45
|
-
}).importSiteFile.importSiteProcessPage.url;
|
|
46
|
-
history.push(url);
|
|
47
|
-
};
|
|
48
41
|
var defaultImportedGisFilesTable = [{
|
|
49
42
|
date: _i18n.default.t('datatable.no_data')
|
|
50
43
|
}];
|
|
51
|
-
var _useSelector3 = (0, _reactRedux.useSelector)(function (_ref2) {
|
|
52
|
-
var permissions = _ref2.permissions;
|
|
53
|
-
return permissions;
|
|
54
|
-
}),
|
|
55
|
-
enable_upload_sites = _useSelector3.enable_upload_sites;
|
|
56
44
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
57
45
|
className: _styleModule.default.pageLayout
|
|
58
46
|
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -66,13 +54,6 @@ var ImportedGisFilesPage = function ImportedGisFilesPage(_ref) {
|
|
|
66
54
|
className: _styleModule.default.uploadButtonIcon,
|
|
67
55
|
width: "14px",
|
|
68
56
|
height: "16px"
|
|
69
|
-
})), enable_upload_sites && /*#__PURE__*/_react.default.createElement("div", {
|
|
70
|
-
className: _styleModule.default.uploadButtonWrapper,
|
|
71
|
-
onClick: uploadNewSitesHandler
|
|
72
|
-
}, /*#__PURE__*/_react.default.createElement("span", null, _i18n.default.t('importGisPage.upload_sites')), /*#__PURE__*/_react.default.createElement(_kandoStepper.UploadSvg, {
|
|
73
|
-
className: _styleModule.default.uploadButtonIcon,
|
|
74
|
-
width: "14px",
|
|
75
|
-
height: "16px"
|
|
76
57
|
})), /*#__PURE__*/_react.default.createElement(_uiKit.KandoTable, {
|
|
77
58
|
data: importedGisFilesTable.length ? importedGisFilesTable : defaultImportedGisFilesTable,
|
|
78
59
|
columns: columns,
|
|
@@ -87,4 +68,4 @@ var ImportedGisFilesPage = function ImportedGisFilesPage(_ref) {
|
|
|
87
68
|
};
|
|
88
69
|
var _default = ImportedGisFilesPage;
|
|
89
70
|
exports.default = _default;
|
|
90
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0RGF0YVRhYmxlQ29tcG9uZW50IiwiX3N0eWxlTW9kdWxlIiwiX3VpS2l0IiwiX3JlYWN0Um91dGVyRG9tIiwiX2kxOG4iLCJfdXJscyIsIl9rYW5kb1N0ZXBwZXIiLCJJbXBvcnRlZEdpc0ZpbGVzUGFnZSIsIl9yZWYiLCJjb2x1bW5zIiwiaGFuZGxlU29ydCIsImhpc3RvcnkiLCJ1c2VIaXN0b3J5IiwiX3VzZVNlbGVjdG9yIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwid2F0ZXJBdXRob3JpdHlJZCIsIndhdGVyQXV0aG9yaXR5TmFtZSIsIm5hdkNvbnRleHQiLCJuYXZfY29udGV4dF9kYXRhIiwiX3VzZVNlbGVjdG9yMiIsImltcG9ydEdpcyIsImltcG9ydGVkR2lzRmlsZXNUYWJsZSIsImlzRmV0Y2hpbmciLCJ1cGxvYWROZXdGaWxlSGFuZGxlciIsInVybCIsInVybHMiLCJsb2NhbCIsImxvY2FsZSIsImltcG9ydEdpc0ZpbGUiLCJpbXBvcnRHaXNQcm9jZXNzUGFnZSIsInB1c2giLCJkZWZhdWx0SW1wb3J0ZWRHaXNGaWxlc1RhYmxlIiwiZGF0ZSIsImkxOG4iLCJ0IiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJzdHlsZXMiLCJwYWdlTGF5b3V0IiwiUGFnZVRpdGxlIiwidXBsb2FkQnV0dG9uV3JhcHBlciIsIm9uQ2xpY2siLCJVcGxvYWRTdmciLCJ1cGxvYWRCdXR0b25JY29uIiwid2lkdGgiLCJoZWlnaHQiLCJLYW5kb1RhYmxlIiwiZGF0YSIsImxlbmd0aCIsImV4cGFuZGFibGVSb3dzIiwidG90YWxSb3dzIiwiaXNTb3J0U2VydmVyIiwicHJvZ3Jlc3NQZW5kaW5nIiwicGFnaW5hdGlvbiIsImRpcmVjdGlvbiIsIkRpcmVjdGlvbiIsIkxUUiIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9JbXBvcnRHaXNQYWdlL0ltcG9ydGVkR2lzRmlsZXNQYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgRkMgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IERpcmVjdGlvbiwgVGFibGVDb2x1bW4gfSBmcm9tICdyZWFjdC1kYXRhLXRhYmxlLWNvbXBvbmVudCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9zdHlsZS5tb2R1bGUuc2Nzcyc7XG5pbXBvcnQgeyBLYW5kb1RhYmxlIH0gZnJvbSAnc3JjL3VpLWtpdCc7XG5pbXBvcnQgeyBJbXBvcnRlZEdpc0ZpbGVzRGF0YSB9IGZyb20gJy4vaW1wb3J0R2lzVXRpbHMnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHsgVXBsb2FkU3ZnIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9rYW5kb1N0ZXBwZXInO1xuXG5pbnRlcmZhY2UgaW1wb3J0R2lzUHJvcHMge1xuICBjb2x1bW5zOiBUYWJsZUNvbHVtbjxJbXBvcnRlZEdpc0ZpbGVzRGF0YT5bXTtcbiAgaGFuZGxlU29ydDogKFxuICAgIGNvbHVtbjogVGFibGVDb2x1bW48SW1wb3J0ZWRHaXNGaWxlc0RhdGE+LFxuICAgIHNvcnREaXJlY3Rpb246IHN0cmluZyxcbiAgKSA9PiB2b2lkO1xufVxuXG5jb25zdCBJbXBvcnRlZEdpc0ZpbGVzUGFnZTogRkM8aW1wb3J0R2lzUHJvcHM+ID0gKHsgY29sdW1ucywgaGFuZGxlU29ydCB9KSA9PiB7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG5cbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eUlkLCB3YXRlckF1dGhvcml0eU5hbWUgfSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLmdsb2JhbF9kYXRhLFxuICApO1xuXG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG5cbiAgY29uc3QgeyBpbXBvcnRlZEdpc0ZpbGVzVGFibGUsIGlzRmV0Y2hpbmcgfSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLmltcG9ydEdpcyxcbiAgKTtcblxuICBjb25zdCB1cGxvYWROZXdGaWxlSGFuZGxlciA9ICgpID0+IHtcbiAgICBjb25zdCB1cmwgPSB1cmxzKHsgd2F0ZXJBdXRob3JpdHlJZCwgbG9jYWw6IG5hdkNvbnRleHQubG9jYWxlIH0pXG4gICAgICAuaW1wb3J0R2lzRmlsZS5pbXBvcnRHaXNQcm9jZXNzUGFnZS51cmw7XG4gICAgaGlzdG9yeS5wdXNoKHVybCk7XG4gIH07XG4gIGNvbnN0IGRlZmF1bHRJbXBvcnRlZEdpc0ZpbGVzVGFibGUgPSBbXG4gICAge1xuICAgICAgZGF0ZTogaTE4bi50KCdkYXRhdGFibGUubm9fZGF0YScpLFxuICAgIH0sXG4gIF07XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLnBhZ2VMYXlvdXR9PlxuICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy5QYWdlVGl0bGV9PlxuICAgICAgICB7aTE4bi50KCdpbXBvcnRHaXNQYWdlLnBhZ2VfdGl0bGUnLCB7IHdhdGVyQXV0aG9yaXR5TmFtZSB9KX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e3N0eWxlcy51cGxvYWRCdXR0b25XcmFwcGVyfVxuICAgICAgICBvbkNsaWNrPXt1cGxvYWROZXdGaWxlSGFuZGxlcn1cbiAgICAgID5cbiAgICAgICAgPHNwYW4+e2kxOG4udCgnaW1wb3J0R2lzUGFnZS51cGxvYWRfbmV3Jyl9PC9zcGFuPlxuICAgICAgICA8VXBsb2FkU3ZnXG4gICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZXMudXBsb2FkQnV0dG9uSWNvbn1cbiAgICAgICAgICB3aWR0aD1cIjE0cHhcIlxuICAgICAgICAgIGhlaWdodD1cIjE2cHhcIlxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8S2FuZG9UYWJsZVxuICAgICAgICBkYXRhPXtcbiAgICAgICAgICBpbXBvcnRlZEdpc0ZpbGVzVGFibGUubGVuZ3RoXG4gICAgICAgICAgICA/IGltcG9ydGVkR2lzRmlsZXNUYWJsZVxuICAgICAgICAgICAgOiBkZWZhdWx0SW1wb3J0ZWRHaXNGaWxlc1RhYmxlXG4gICAgICAgIH1cbiAgICAgICAgY29sdW1ucz17Y29sdW1uc31cbiAgICAgICAgZXhwYW5kYWJsZVJvd3M9e2ZhbHNlfVxuICAgICAgICBoYW5kbGVTb3J0PXtoYW5kbGVTb3J0fVxuICAgICAgICB0b3RhbFJvd3M9e2ltcG9ydGVkR2lzRmlsZXNUYWJsZS5sZW5ndGh9XG4gICAgICAgIGlzU29ydFNlcnZlcj17ZmFsc2V9XG4gICAgICAgIHByb2dyZXNzUGVuZGluZz17aXNGZXRjaGluZ31cbiAgICAgICAgcGFnaW5hdGlvbj17ZmFsc2V9XG4gICAgICAgIGRpcmVjdGlvbj17RGlyZWN0aW9uLkxUUn1cbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBJbXBvcnRlZEdpc0ZpbGVzUGFnZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNB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
|
|
@@ -9,8 +9,6 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
9
9
|
var _i18n = _interopRequireDefault(require("utilities/i18n"));
|
|
10
10
|
var _styleModule = _interopRequireDefault(require("./style.module.scss"));
|
|
11
11
|
var _File = require("utilities/File");
|
|
12
|
-
var _reactI18next = require("react-i18next");
|
|
13
|
-
var _StyledLink = require("components/Links/StyledLink/StyledLink");
|
|
14
12
|
var fileStatus;
|
|
15
13
|
exports.fileStatus = fileStatus;
|
|
16
14
|
(function (fileStatus) {
|
|
@@ -78,25 +76,8 @@ var getColumns = function getColumns() {
|
|
|
78
76
|
}
|
|
79
77
|
}, (_row$file2 = row.file) === null || _row$file2 === void 0 ? void 0 : _row$file2.filename);
|
|
80
78
|
}
|
|
81
|
-
}, {
|
|
82
|
-
name: _i18n.default.t('importGisPage.table_cols.details'),
|
|
83
|
-
selector: function selector(row) {
|
|
84
|
-
return row.has_groups ? 'map' : '';
|
|
85
|
-
},
|
|
86
|
-
sortable: false,
|
|
87
|
-
width: '80px',
|
|
88
|
-
cell: function cell(_ref) {
|
|
89
|
-
var has_groups = _ref.has_groups,
|
|
90
|
-
id = _ref.id;
|
|
91
|
-
return has_groups && /*#__PURE__*/_react.default.createElement(_StyledLink.Link, {
|
|
92
|
-
to: "/import_sites/".concat(id),
|
|
93
|
-
className: _styleModule.default.link
|
|
94
|
-
}, /*#__PURE__*/_react.default.createElement(_reactI18next.Trans, {
|
|
95
|
-
i18nKey: "importGisPage.details"
|
|
96
|
-
}));
|
|
97
|
-
}
|
|
98
79
|
}];
|
|
99
80
|
return tableColumns;
|
|
100
81
|
};
|
|
101
82
|
exports.getColumns = getColumns;
|
|
102
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9pMThuIiwiX3N0eWxlTW9kdWxlIiwiX0ZpbGUiLCJmaWxlU3RhdHVzIiwiZXhwb3J0cyIsImdldENvbHVtbnMiLCJ0YWJsZUNvbHVtbnMiLCJuYW1lIiwiaTE4biIsInQiLCJzZWxlY3RvciIsInJvdyIsImRhdGUiLCJzb3J0YWJsZSIsInNvcnRGaWVsZCIsInVzZXIiLCJ0aXRsZSIsInN0YXR1cyIsIndpZHRoIiwiY2VsbCIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiY2xhc3NOYW1lIiwic3R5bGVzIiwiY29uY2F0IiwiX3JvdyRmaWxlIiwiZmlsZSIsImZpbGVuYW1lIiwiX3JvdyRmaWxlMiIsImxpbmsiLCJvbkNsaWNrIiwiZ2V0R2VvSnNvbkRhdGFGcm9tVXJsIiwidXJsIiwiZmlsZU5hbWUiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvSW1wb3J0R2lzUGFnZS9pbXBvcnRHaXNVdGlscy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBUYWJsZUNvbHVtbiB9IGZyb20gJ3JlYWN0LWRhdGEtdGFibGUtY29tcG9uZW50JztcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9zdHlsZS5tb2R1bGUuc2Nzcyc7XG5pbXBvcnQgeyBnZXRHZW9Kc29uRGF0YUZyb21VcmwgfSBmcm9tICdzcmMvdXRpbGl0aWVzL0ZpbGUnO1xuXG5leHBvcnQgZW51bSBmaWxlU3RhdHVzIHtcbiAgaW5fcHJvZ3Jlc3MgPSAwLFxuICBzdWNjZXNzID0gMSxcbiAgZmFpbGVkID0gMixcbn1cbmV4cG9ydCBpbnRlcmZhY2UgSW1wb3J0ZWRGaWxlIHtcbiAgZmlsZW5hbWU6IHN0cmluZztcbiAgdXJsOiBzdHJpbmc7XG59XG5leHBvcnQgaW50ZXJmYWNlIEltcG9ydGVkR2lzRmlsZXNEYXRhIHtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIGRhdGU6IHN0cmluZztcbiAgdXNlcj86IHN0cmluZztcbiAgc3RhdHVzPzogc3RyaW5nO1xuICBmaWxlPzogSW1wb3J0ZWRGaWxlO1xufVxuZXhwb3J0IGNvbnN0IGdldENvbHVtbnMgPSAoKSA9PiB7XG4gIGNvbnN0IHRhYmxlQ29sdW1uczogVGFibGVDb2x1bW48SW1wb3J0ZWRHaXNGaWxlc0RhdGE+W10gPSBbXG4gICAge1xuICAgICAgbmFtZTogaTE4bi50KCdpbXBvcnRHaXNQYWdlLnRhYmxlX2NvbHMuZGF0ZScpLFxuICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5kYXRlLFxuICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICBzb3J0RmllbGQ6ICdkYXRlJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6IGkxOG4udCgnaW1wb3J0R2lzUGFnZS50YWJsZV9jb2xzLnVzZXInKSxcbiAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cudXNlciB8fCAnJyxcbiAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgc29ydEZpZWxkOiAndXNlcicsXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiBpMThuLnQoJ2ltcG9ydEdpc1BhZ2UudGFibGVfY29scy50aXRsZScpLFxuICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy50aXRsZSB8fCAnJyxcbiAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgc29ydEZpZWxkOiAndGl0bGUnLFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogaTE4bi50KCdpbXBvcnRHaXNQYWdlLnRhYmxlX2NvbHMuc3RhdHVzJyksXG4gICAgICBzZWxlY3RvcjogKHJvdykgPT4gcm93LnN0YXR1cyB8fCAnJyxcbiAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgc29ydEZpZWxkOiAnc3RhdHVzJyxcbiAgICAgIHdpZHRoOiAnMTIwcHgnLFxuICAgICAgY2VsbDogKHJvdzogeyBzdGF0dXM/OiBzdHJpbmcgfSkgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtyb3cuc3RhdHVzID8gc3R5bGVzW3Jvdy5zdGF0dXNdIDogJyd9PlxuICAgICAgICAgICAge3Jvdy5zdGF0dXNcbiAgICAgICAgICAgICAgPyBpMThuLnQoYGltcG9ydEdpc1BhZ2UuZmlsZV9zdGF0dXMuJHtmaWxlU3RhdHVzW3Jvdy5zdGF0dXNdfWApXG4gICAgICAgICAgICAgIDogJyd9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICk7XG4gICAgICB9LFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogaTE4bi50KCdpbXBvcnRHaXNQYWdlLnRhYmxlX2NvbHMuZmlsZScpLFxuICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5maWxlPy5maWxlbmFtZSB8fCAnJyxcbiAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgc29ydEZpZWxkOiAnZmlsZW5hbWUnLFxuICAgICAgd2lkdGg6ICcyNTBweCcsXG4gICAgICBjZWxsOiAocm93OiB7IGZpbGU/OiBJbXBvcnRlZEZpbGUgfSkgPT4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxhXG4gICAgICAgICAgICBjbGFzc05hbWU9e3N0eWxlcy5saW5rfVxuICAgICAgICAgICAgdGl0bGU9e2kxOG4udCgnaW1wb3J0R2lzUGFnZS5kb3dubG9hZCcpfVxuICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICBpZiAocm93LmZpbGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZ2V0R2VvSnNvbkRhdGFGcm9tVXJsKHtcbiAgICAgICAgICAgICAgICAgIHVybDogcm93LmZpbGUudXJsLFxuICAgICAgICAgICAgICAgICAgZmlsZU5hbWU6IHJvdy5maWxlLmZpbGVuYW1lLFxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3Jvdy5maWxlPy5maWxlbmFtZX1cbiAgICAgICAgICA8L2E+XG4gICAgICAgICk7XG4gICAgICB9LFxuICAgIH0sXG4gIF07XG5cbiAgcmV0dXJuIHRhYmxlQ29sdW1ucztcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxLQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBRSxZQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxLQUFBLEdBQUFILE9BQUE7QUFBMkQsSUFFL0NJLFVBQVU7QUFBQUMsT0FBQSxDQUFBRCxVQUFBLEdBQUFBLFVBQUE7QUFBQSxXQUFWQSxVQUFVO0VBQVZBLFVBQVUsQ0FBVkEsVUFBVTtFQUFWQSxVQUFVLENBQVZBLFVBQVU7RUFBVkEsVUFBVSxDQUFWQSxVQUFVO0FBQUEsR0FBVkEsVUFBVSxLQUFBQyxPQUFBLENBQUFELFVBQUEsR0FBVkEsVUFBVTtBQWdCZixJQUFNRSxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBQSxFQUFTO0VBQzlCLElBQU1DLFlBQWlELEdBQUcsQ0FDeEQ7SUFDRUMsSUFBSSxFQUFFQyxhQUFJLENBQUNDLENBQUMsQ0FBQywrQkFBK0IsQ0FBQztJQUM3Q0MsUUFBUSxFQUFFLFNBQUFBLFNBQUNDLEdBQUc7TUFBQSxPQUFLQSxHQUFHLENBQUNDLElBQUk7SUFBQTtJQUMzQkMsUUFBUSxFQUFFLElBQUk7SUFDZEMsU0FBUyxFQUFFO0VBQ2IsQ0FBQyxFQUNEO0lBQ0VQLElBQUksRUFBRUMsYUFBSSxDQUFDQyxDQUFDLENBQUMsK0JBQStCLENBQUM7SUFDN0NDLFFBQVEsRUFBRSxTQUFBQSxTQUFDQyxHQUFHO01BQUEsT0FBS0EsR0FBRyxDQUFDSSxJQUFJLElBQUksRUFBRTtJQUFBO0lBQ2pDRixRQUFRLEVBQUUsSUFBSTtJQUNkQyxTQUFTLEVBQUU7RUFD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
|
|
@@ -18,10 +18,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
18
18
|
var LeftPanel = function LeftPanel(_ref) {
|
|
19
19
|
var points = _ref.points,
|
|
20
20
|
selectedPoint = _ref.selectedPoint,
|
|
21
|
-
setSelectedPoint = _ref.setSelectedPoint
|
|
22
|
-
_ref$onlyMonitored = _ref.onlyMonitored,
|
|
23
|
-
onlyMonitored = _ref$onlyMonitored === void 0 ? true : _ref$onlyMonitored,
|
|
24
|
-
filterOptions = _ref.filterOptions;
|
|
21
|
+
setSelectedPoint = _ref.setSelectedPoint;
|
|
25
22
|
var _useState = (0, _react.useState)([]),
|
|
26
23
|
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
27
24
|
selectedFilters = _useState2[0],
|
|
@@ -53,6 +50,22 @@ var LeftPanel = function LeftPanel(_ref) {
|
|
|
53
50
|
var sortedPoints = points.sort(function (a, b) {
|
|
54
51
|
return b.issues.length - a.issues.length;
|
|
55
52
|
});
|
|
53
|
+
var filterOptions = [{
|
|
54
|
+
value: 'installation_height',
|
|
55
|
+
label: 'Installation Height'
|
|
56
|
+
}, {
|
|
57
|
+
value: 'distance',
|
|
58
|
+
label: 'Distance'
|
|
59
|
+
}, {
|
|
60
|
+
value: 'no_parent',
|
|
61
|
+
label: 'No Parent'
|
|
62
|
+
}, {
|
|
63
|
+
value: 'diameter',
|
|
64
|
+
label: 'Diameter'
|
|
65
|
+
}, {
|
|
66
|
+
value: 'water_consumption',
|
|
67
|
+
label: 'Water Consumption'
|
|
68
|
+
}];
|
|
56
69
|
(0, _react.useEffect)(function () {
|
|
57
70
|
setFilteredPoints(sortedPoints);
|
|
58
71
|
}, [sortedPoints]);
|
|
@@ -72,7 +85,7 @@ var LeftPanel = function LeftPanel(_ref) {
|
|
|
72
85
|
}, [selectedFilters]);
|
|
73
86
|
return /*#__PURE__*/_react.default.createElement(_reactBootstrap.Container, {
|
|
74
87
|
className: "mt-4 pl-3 pr-2"
|
|
75
|
-
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Col, null, /*#__PURE__*/_react.default.createElement("h4", null, "
|
|
88
|
+
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Col, null, /*#__PURE__*/_react.default.createElement("h4", null, "Monitored Manholes(".concat(filteredPoints.length, ")")))), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Row, {
|
|
76
89
|
className: "mt-3 mb-3"
|
|
77
90
|
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Col, null, /*#__PURE__*/_react.default.createElement(_KandoFilter.default, {
|
|
78
91
|
filterOptions: filterOptions,
|
|
@@ -99,4 +112,4 @@ var LeftPanel = function LeftPanel(_ref) {
|
|
|
99
112
|
};
|
|
100
113
|
var _default = LeftPanel;
|
|
101
114
|
exports.default = _default;
|
|
102
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfcmVhY3RGb250YXdlc29tZSIsIl9mcmVlU29saWRTdmdJY29ucyIsIl9TZWN0b3IiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0thbmRvRmlsdGVyIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJMZWZ0UGFuZWwiLCJfcmVmIiwicG9pbnRzIiwic2VsZWN0ZWRQb2ludCIsInNldFNlbGVjdGVkUG9pbnQiLCJfcmVmJG9ubHlNb25pdG9yZWQiLCJvbmx5TW9uaXRvcmVkIiwiZmlsdGVyT3B0aW9ucyIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInNlbGVjdGVkRmlsdGVycyIsInNldFNlbGVjdGVkRmlsdGVycyIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwiZmlsdGVyZWRQb2ludHMiLCJzZXRGaWx0ZXJlZFBvaW50cyIsIm1heElzc3VlcyIsImlzc3Vlc0ljb25Db2xvciIsImxlbmd0aCIsInNob3dJc3N1ZXMiLCJwb2ludCIsImlzc3Vlc0xlbmd0aCIsImlzc3VlcyIsImNyZWF0ZUVsZW1lbnQiLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFFeGNsYW1hdGlvblRyaWFuZ2xlIiwiY2xhc3NOYW1lIiwic29ydGVkUG9pbnRzIiwic29ydCIsImEiLCJiIiwidXNlRWZmZWN0IiwiZmlsdGVyIiwic29tZSIsImlzc3VlIiwidHlwZSIsInZhbHVlIiwiQ29udGFpbmVyIiwiUm93IiwiQ29sIiwiY29uY2F0IiwiTGlzdEdyb3VwIiwibWFwIiwiSXRlbSIsImlkIiwib25DbGljayIsInNlY3Rvckljb25OYW1lIiwiZ3JvdXAiLCJzZWN0b3JfaWNvbl9uYW1lIiwic2VjdG9yTmFtZSIsInNlY3Rvcl9uYW1lIiwic2hvd0xhYmVsIiwid2l0aFRvb2x0aXAiLCJuYW1lIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL09wZXJhdGlvbnNQYWdlL0xlZnRQYW5lbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBDb250YWluZXIsIFJvdywgQ29sLCBMaXN0R3JvdXAgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgeyBmYUV4Y2xhbWF0aW9uVHJpYW5nbGUgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IFNlY3RvciBmcm9tICdzcmMvY29tcG9uZW50cy9TZWN0b3InO1xuaW1wb3J0IEthbmRvRmlsdGVyIGZyb20gJ3NyYy91aS1raXQvS2FuZG9GaWx0ZXIvS2FuZG9GaWx0ZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIExlZnRQYW5lbFByb3BzIHtcbiAgcG9pbnRzOiBJUG9pbnRbXTtcbiAgc2VsZWN0ZWRQb2ludDogSVBvaW50IHwgbnVsbDtcbiAgc2V0U2VsZWN0ZWRQb2ludDogKHBvaW50OiBJUG9pbnQpID0+IHZvaWQ7XG4gIGZpbHRlck9wdGlvbnM6IHsgdmFsdWU6IHN0cmluZzsgbGFiZWw6IHN0cmluZyB9W107XG4gIG9ubHlNb25pdG9yZWQ6IGJvb2xlYW47XG59XG5cbmNvbnN0IExlZnRQYW5lbDogUmVhY3QuRkM8TGVmdFBhbmVsUHJvcHM+ID0gKHtcbiAgcG9pbnRzLFxuICBzZWxlY3RlZFBvaW50LFxuICBzZXRTZWxlY3RlZFBvaW50LFxuICBvbmx5TW9uaXRvcmVkID0gdHJ1ZSxcbiAgZmlsdGVyT3B0aW9ucyxcbn0pID0+IHtcbiAgY29uc3QgW3NlbGVjdGVkRmlsdGVycywgc2V0U2VsZWN0ZWRGaWx0ZXJzXSA9IHVzZVN0YXRlKFtdKTtcbiAgY29uc3QgW2ZpbHRlcmVkUG9pbnRzLCBzZXRGaWx0ZXJlZFBvaW50c10gPSB1c2VTdGF0ZTxJUG9pbnRbXT4oW10pO1xuICBjb25zdCBtYXhJc3N1ZXMgPSAzO1xuICBjb25zdCBpc3N1ZXNJY29uQ29sb3IgPSAobGVuZ3RoKSA9PiB7XG4gICAgaWYgKGxlbmd0aCAlIG1heElzc3VlcyA9PT0gMCkge1xuICAgICAgcmV0dXJuICdpY29uLXJlZCc7XG4gICAgfSBlbHNlIGlmIChsZW5ndGggJSBtYXhJc3N1ZXMgPT09IDIpIHtcbiAgICAgIHJldHVybiAnaWNvbi1vcmFuZ2UnO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ2ljb24teWVsbG93JztcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgc2hvd0lzc3VlcyA9IChwb2ludCkgPT4ge1xuICAgIGNvbnN0IGlzc3Vlc0xlbmd0aCA9IHBvaW50Py5pc3N1ZXMubGVuZ3RoO1xuICAgIGlmIChpc3N1ZXNMZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgaWNvbj17ZmFFeGNsYW1hdGlvblRyaWFuZ2xlfVxuICAgICAgICAgIGNsYXNzTmFtZT17aXNzdWVzSWNvbkNvbG9yKGlzc3Vlc0xlbmd0aCl9XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH07XG5cbiAgY29uc3Qgc29ydGVkUG9pbnRzID0gcG9pbnRzLnNvcnQoKGEsIGIpID0+IGIuaXNzdWVzLmxlbmd0aCAtIGEuaXNzdWVzLmxlbmd0aCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRGaWx0ZXJlZFBvaW50cyhzb3J0ZWRQb2ludHMpO1xuICB9LCBbc29ydGVkUG9pbnRzXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBmaWx0ZXJlZFBvaW50cyA9IHNvcnRlZFBvaW50cy5maWx0ZXIoKHBvaW50KSA9PiB7XG4gICAgICBpZiAoc2VsZWN0ZWRGaWx0ZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gU2hvdyBhbGwgcG9pbnRzIGlmIG5vIGZpbHRlcnMgYXJlIHNlbGVjdGVkXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzZWxlY3RlZEZpbHRlcnMuc29tZSgoZmlsdGVyKSA9PlxuICAgICAgICBwb2ludC5pc3N1ZXMuc29tZSgoaXNzdWUpID0+IGlzc3VlLnR5cGUgPT09IGZpbHRlci52YWx1ZSksXG4gICAgICApO1xuICAgIH0pO1xuICAgIHNldEZpbHRlcmVkUG9pbnRzKGZpbHRlcmVkUG9pbnRzKTtcbiAgfSwgW3NlbGVjdGVkRmlsdGVyc10pO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnRhaW5lciBjbGFzc05hbWU9XCJtdC00IHBsLTMgcHItMlwiPlxuICAgICAgPFJvdz5cbiAgICAgICAgPENvbD5cbiAgICAgICAgICA8aDQ+e2Ake29ubHlNb25pdG9yZWQgPyAnTW9uaXRvcmVkICcgOiAnJ31NYW5ob2xlcygke1xuICAgICAgICAgICAgZmlsdGVyZWRQb2ludHMubGVuZ3RoXG4gICAgICAgICAgfSlgfTwvaDQ+XG4gICAgICAgIDwvQ29sPlxuICAgICAgPC9Sb3c+XG4gICAgICA8Um93IGNsYXNzTmFtZT1cIm10LTMgbWItM1wiPlxuICAgICAgICA8Q29sPlxuICAgICAgICAgIDxLYW5kb0ZpbHRlclxuICAgICAgICAgICAgZmlsdGVyT3B0aW9ucz17ZmlsdGVyT3B0aW9uc31cbiAgICAgICAgICAgIHNlbGVjdGVkRmlsdGVycz17c2VsZWN0ZWRGaWx0ZXJzfVxuICAgICAgICAgICAgc2V0U2VsZWN0ZWRGaWx0ZXJzPXtzZXRTZWxlY3RlZEZpbHRlcnN9XG4gICAgICAgICAgPjwvS2FuZG9GaWx0ZXI+XG4gICAgICAgIDwvQ29sPlxuICAgICAgPC9Sb3c+XG4gICAgICA8Um93PlxuICAgICAgICA8Q29sPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwic2Nyb2xsYWJsZS1saXN0XCI+XG4gICAgICAgICAgICA8TGlzdEdyb3VwPlxuICAgICAgICAgICAgICB7cG9pbnRzLmxlbmd0aCA+IDAgJiZcbiAgICAgICAgICAgICAgICBmaWx0ZXJlZFBvaW50cy5tYXAoKHBvaW50KSA9PiAoXG4gICAgICAgICAgICAgICAgICA8TGlzdEdyb3VwLkl0ZW1cbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtcbiAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZFBvaW50Py5pZCA9PT0gcG9pbnQuaWRcbiAgICAgICAgICAgICAgICAgICAgICAgID8gJ2xpc3QtaXRlbSBsaXN0LWl0ZW0tc2VsZWN0ZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICA6ICdsaXN0LWl0ZW0nXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAga2V5PXtwb2ludC5pZH1cbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0U2VsZWN0ZWRQb2ludChwb2ludCl9XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaXRlbS1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPFNlY3RvclxuICAgICAgICAgICAgICAgICAgICAgICAgc2VjdG9ySWNvbk5hbWU9e3BvaW50Lmdyb3VwLnNlY3Rvcl9pY29uX25hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgICBzZWN0b3JOYW1lPXtwb2ludC5ncm91cC5zZWN0b3JfbmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHNob3dMYWJlbD17ZmFsc2V9XG4gICAgICAgICAgICAgICAgICAgICAgICB3aXRoVG9vbHRpcD17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICA+PC9TZWN0b3I+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4+e3BvaW50Lm5hbWV9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAge3Nob3dJc3N1ZXMocG9pbnQpfVxuICAgICAgICAgICAgICAgICAgPC9MaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgICAgICApKX1cbiAgICAgICAgICAgIDwvTGlzdEdyb3VwPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L0NvbD5cbiAgICAgIDwvUm93PlxuICAgIDwvQ29udGFpbmVyPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgTGVmdFBhbmVsO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxlQUFBLEdBQUFELE9BQUE7QUFFQSxJQUFBRSxpQkFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsa0JBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQUQsc0JBQUEsQ0FBQUwsT0FBQTtBQUE2RCxTQUFBTyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxp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
|
|
115
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfcmVhY3RGb250YXdlc29tZSIsIl9mcmVlU29saWRTdmdJY29ucyIsIl9TZWN0b3IiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0thbmRvRmlsdGVyIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJMZWZ0UGFuZWwiLCJfcmVmIiwicG9pbnRzIiwic2VsZWN0ZWRQb2ludCIsInNldFNlbGVjdGVkUG9pbnQiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJzZWxlY3RlZEZpbHRlcnMiLCJzZXRTZWxlY3RlZEZpbHRlcnMiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImZpbHRlcmVkUG9pbnRzIiwic2V0RmlsdGVyZWRQb2ludHMiLCJtYXhJc3N1ZXMiLCJpc3N1ZXNJY29uQ29sb3IiLCJsZW5ndGgiLCJzaG93SXNzdWVzIiwicG9pbnQiLCJpc3N1ZXNMZW5ndGgiLCJpc3N1ZXMiLCJjcmVhdGVFbGVtZW50IiwiRm9udEF3ZXNvbWVJY29uIiwiaWNvbiIsImZhRXhjbGFtYXRpb25UcmlhbmdsZSIsImNsYXNzTmFtZSIsInNvcnRlZFBvaW50cyIsInNvcnQiLCJhIiwiYiIsImZpbHRlck9wdGlvbnMiLCJ2YWx1ZSIsImxhYmVsIiwidXNlRWZmZWN0IiwiZmlsdGVyIiwic29tZSIsImlzc3VlIiwidHlwZSIsIkNvbnRhaW5lciIsIlJvdyIsIkNvbCIsImNvbmNhdCIsIkxpc3RHcm91cCIsIm1hcCIsIkl0ZW0iLCJpZCIsIm9uQ2xpY2siLCJzZWN0b3JJY29uTmFtZSIsImdyb3VwIiwic2VjdG9yX2ljb25fbmFtZSIsInNlY3Rvck5hbWUiLCJzZWN0b3JfbmFtZSIsInNob3dMYWJlbCIsIndpdGhUb29sdGlwIiwibmFtZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9PcGVyYXRpb25zUGFnZS9MZWZ0UGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQ29udGFpbmVyLCBSb3csIENvbCwgTGlzdEdyb3VwIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgZmFFeGNsYW1hdGlvblRyaWFuZ2xlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCBTZWN0b3IgZnJvbSAnc3JjL2NvbXBvbmVudHMvU2VjdG9yJztcbmltcG9ydCBLYW5kb0ZpbHRlciBmcm9tICdzcmMvdWkta2l0L0thbmRvRmlsdGVyL0thbmRvRmlsdGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBMZWZ0UGFuZWxQcm9wcyB7XG4gIHBvaW50czogSVBvaW50W107XG4gIHNlbGVjdGVkUG9pbnQ6IElQb2ludCB8IG51bGw7XG4gIHNldFNlbGVjdGVkUG9pbnQ6IChwb2ludDogSVBvaW50KSA9PiB2b2lkO1xufVxuXG5jb25zdCBMZWZ0UGFuZWw6IFJlYWN0LkZDPExlZnRQYW5lbFByb3BzPiA9ICh7XG4gIHBvaW50cyxcbiAgc2VsZWN0ZWRQb2ludCxcbiAgc2V0U2VsZWN0ZWRQb2ludCxcbn0pID0+IHtcbiAgY29uc3QgW3NlbGVjdGVkRmlsdGVycywgc2V0U2VsZWN0ZWRGaWx0ZXJzXSA9IHVzZVN0YXRlKFtdKTtcbiAgY29uc3QgW2ZpbHRlcmVkUG9pbnRzLCBzZXRGaWx0ZXJlZFBvaW50c10gPSB1c2VTdGF0ZTxJUG9pbnRbXT4oW10pO1xuICBjb25zdCBtYXhJc3N1ZXMgPSAzO1xuICBjb25zdCBpc3N1ZXNJY29uQ29sb3IgPSAobGVuZ3RoKSA9PiB7XG4gICAgaWYgKGxlbmd0aCAlIG1heElzc3VlcyA9PT0gMCkge1xuICAgICAgcmV0dXJuICdpY29uLXJlZCc7XG4gICAgfSBlbHNlIGlmIChsZW5ndGggJSBtYXhJc3N1ZXMgPT09IDIpIHtcbiAgICAgIHJldHVybiAnaWNvbi1vcmFuZ2UnO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ2ljb24teWVsbG93JztcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgc2hvd0lzc3VlcyA9IChwb2ludCkgPT4ge1xuICAgIGNvbnN0IGlzc3Vlc0xlbmd0aCA9IHBvaW50Py5pc3N1ZXMubGVuZ3RoO1xuICAgIGlmIChpc3N1ZXNMZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgaWNvbj17ZmFFeGNsYW1hdGlvblRyaWFuZ2xlfVxuICAgICAgICAgIGNsYXNzTmFtZT17aXNzdWVzSWNvbkNvbG9yKGlzc3Vlc0xlbmd0aCl9XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH07XG5cbiAgY29uc3Qgc29ydGVkUG9pbnRzID0gcG9pbnRzLnNvcnQoKGEsIGIpID0+IGIuaXNzdWVzLmxlbmd0aCAtIGEuaXNzdWVzLmxlbmd0aCk7XG5cbiAgY29uc3QgZmlsdGVyT3B0aW9ucyA9IFtcbiAgICB7IHZhbHVlOiAnaW5zdGFsbGF0aW9uX2hlaWdodCcsIGxhYmVsOiAnSW5zdGFsbGF0aW9uIEhlaWdodCcgfSxcbiAgICB7IHZhbHVlOiAnZGlzdGFuY2UnLCBsYWJlbDogJ0Rpc3RhbmNlJyB9LFxuICAgIHsgdmFsdWU6ICdub19wYXJlbnQnLCBsYWJlbDogJ05vIFBhcmVudCcgfSxcbiAgICB7IHZhbHVlOiAnZGlhbWV0ZXInLCBsYWJlbDogJ0RpYW1ldGVyJyB9LFxuICAgIHsgdmFsdWU6ICd3YXRlcl9jb25zdW1wdGlvbicsIGxhYmVsOiAnV2F0ZXIgQ29uc3VtcHRpb24nIH0sXG4gIF07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRGaWx0ZXJlZFBvaW50cyhzb3J0ZWRQb2ludHMpO1xuICB9LCBbc29ydGVkUG9pbnRzXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBmaWx0ZXJlZFBvaW50cyA9IHNvcnRlZFBvaW50cy5maWx0ZXIoKHBvaW50KSA9PiB7XG4gICAgICBpZiAoc2VsZWN0ZWRGaWx0ZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gU2hvdyBhbGwgcG9pbnRzIGlmIG5vIGZpbHRlcnMgYXJlIHNlbGVjdGVkXG4gICAgICB9XG5cbiAgICAgIHJldHVybiBzZWxlY3RlZEZpbHRlcnMuc29tZSgoZmlsdGVyKSA9PlxuICAgICAgICBwb2ludC5pc3N1ZXMuc29tZSgoaXNzdWUpID0+IGlzc3VlLnR5cGUgPT09IGZpbHRlci52YWx1ZSksXG4gICAgICApO1xuICAgIH0pO1xuICAgIHNldEZpbHRlcmVkUG9pbnRzKGZpbHRlcmVkUG9pbnRzKTtcbiAgfSwgW3NlbGVjdGVkRmlsdGVyc10pO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnRhaW5lciBjbGFzc05hbWU9XCJtdC00IHBsLTMgcHItMlwiPlxuICAgICAgPFJvdz5cbiAgICAgICAgPENvbD5cbiAgICAgICAgICA8aDQ+e2BNb25pdG9yZWQgTWFuaG9sZXMoJHtmaWx0ZXJlZFBvaW50cy5sZW5ndGh9KWB9PC9oND5cbiAgICAgICAgPC9Db2w+XG4gICAgICA8L1Jvdz5cbiAgICAgIDxSb3cgY2xhc3NOYW1lPVwibXQtMyBtYi0zXCI+XG4gICAgICAgIDxDb2w+XG4gICAgICAgICAgPEthbmRvRmlsdGVyXG4gICAgICAgICAgICBmaWx0ZXJPcHRpb25zPXtmaWx0ZXJPcHRpb25zfVxuICAgICAgICAgICAgc2VsZWN0ZWRGaWx0ZXJzPXtzZWxlY3RlZEZpbHRlcnN9XG4gICAgICAgICAgICBzZXRTZWxlY3RlZEZpbHRlcnM9e3NldFNlbGVjdGVkRmlsdGVyc31cbiAgICAgICAgICA+PC9LYW5kb0ZpbHRlcj5cbiAgICAgICAgPC9Db2w+XG4gICAgICA8L1Jvdz5cbiAgICAgIDxSb3c+XG4gICAgICAgIDxDb2w+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJzY3JvbGxhYmxlLWxpc3RcIj5cbiAgICAgICAgICAgIDxMaXN0R3JvdXA+XG4gICAgICAgICAgICAgIHtwb2ludHMubGVuZ3RoID4gMCAmJlxuICAgICAgICAgICAgICAgIGZpbHRlcmVkUG9pbnRzLm1hcCgocG9pbnQpID0+IChcbiAgICAgICAgICAgICAgICAgIDxMaXN0R3JvdXAuSXRlbVxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkUG9pbnQ/LmlkID09PSBwb2ludC5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgPyAnbGlzdC1pdGVtIGxpc3QtaXRlbS1zZWxlY3RlZCdcbiAgICAgICAgICAgICAgICAgICAgICAgIDogJ2xpc3QtaXRlbSdcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBrZXk9e3BvaW50LmlkfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRTZWxlY3RlZFBvaW50KHBvaW50KX1cbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJpdGVtLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8U2VjdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICBzZWN0b3JJY29uTmFtZT17cG9pbnQuZ3JvdXAuc2VjdG9yX2ljb25fbmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHNlY3Rvck5hbWU9e3BvaW50Lmdyb3VwLnNlY3Rvcl9uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgICAgc2hvd0xhYmVsPXtmYWxzZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhUb29sdGlwPXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgID48L1NlY3Rvcj5cbiAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj57cG9pbnQubmFtZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB7c2hvd0lzc3Vlcyhwb2ludCl9XG4gICAgICAgICAgICAgICAgICA8L0xpc3RHcm91cC5JdGVtPlxuICAgICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9MaXN0R3JvdXA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvQ29sPlxuICAgICAgPC9Sb3c+XG4gICAgPC9Db250YWluZXI+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBMZWZ0UGFuZWw7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGVBQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLGlCQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxrQkFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksT0FBQSxHQUFBQyxzQkFBQSxDQUFBTCxPQUFBO0FBQ0EsSUFBQU0sWUFBQSxHQUFBRCxzQkFBQSxDQUFBTCxPQUFBO0FBQTZELFNBQUFPLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEs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
|