@kando-env/kando-ui 1.2.418 → 1.2.420-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Widgets/Map/Map.js +73 -39
- package/lib/Widgets/Map/MapUtils.js +38 -4
- package/lib/Widgets/Map/events/EventIndicator.js +2 -2
- package/lib/Widgets/Map/events/EventPath.js +3 -3
- package/lib/Widgets/Map/events/EventUtils.js +20 -12
- package/lib/Widgets/Map/events/PointOfEvent.js +74 -42
- package/lib/Widgets/Map/events/PointsForSpecificEvent.js +18 -5
- package/lib/Widgets/Map/points/PointIcon.js +13 -4
- package/lib/Widgets/Map/points/PointMarkers.js +1 -6
- package/lib/Widgets/Map/points/PointUtils.js +17 -25
- package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +2 -1
- package/lib/Widgets/PotentialImpactSummary/Icon.js +2 -1
- package/lib/assets/icons/kandoStepper/index.js +8 -1
- package/lib/assets/map/sampler.svg +9 -0
- package/lib/components/DamageType/DamageType.js +3 -3
- package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -3
- package/lib/components/Graph/Graph.js +18 -1
- package/lib/components/TrendGraphNVL/TrendGraphNVL.js +2 -1
- package/lib/hooks/useMap.js +2 -2
- package/lib/i18n/en.json +23 -5
- package/lib/i18n/en_uk.json +1 -1
- package/lib/macros/getVersion.js +2 -2
- package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +2 -1
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDrop.module.scss +2 -1
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +62 -48
- package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +11 -3
- package/lib/pages/EventsPage/events/event_info/EventSection.test.js +21 -22
- package/lib/pages/EventsPage/events/event_info/Header/Header.js +1 -1
- package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +1 -1
- package/lib/pages/EventsPage/events/event_info/Header/index.js +1 -1
- package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +1 -1
- package/lib/pages/EventsPage/events/event_info/Timelines/index.js +1 -1
- package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +54 -6
- package/lib/pages/ImportGisPage/importGisUtils.js +62 -31
- package/lib/pages/ImportSiteProcess/index.js +2 -2
- package/lib/pages/OperationsPage/Map/useMap.js +3 -3
- package/lib/pages/OperationsPage/OperationsFilePage.js +4 -1
- package/lib/pages/PollutionRiskAssessment/useMap.js +2 -2
- package/lib/store/permissions/permissionsSlice.js +3 -1
- package/lib/store/points/models/IPoint.js +1 -1
- package/lib/test/mocks/browser.js +1 -1
- package/lib/test/test-utils.js +1 -1
- package/lib/ui-kit/KandoTable/KandoTable.test.js +1 -1
- package/lib/utilities/Enum.js +4 -4
- package/lib/utilities/map/icons.js +12 -4
- package/lib/utilities/scoreToData.test.js +1 -1
- package/package.json +1 -1
|
@@ -153,11 +153,6 @@ var PointMarkers = function PointMarkers(props) {
|
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
155
|
}, [rerender, globalData]);
|
|
156
|
-
|
|
157
|
-
// useEffect(() => {
|
|
158
|
-
// makeSureThereAreNoDuplicates();
|
|
159
|
-
// }, [eventsData.focusedEvent, eventsData.isFetching, rerender]);
|
|
160
|
-
|
|
161
156
|
return /*#__PURE__*/_react.default.createElement("div", null, points.length !== 0 && filteredPoints().map(function (point) {
|
|
162
157
|
return /*#__PURE__*/_react.default.createElement(_PointMarker.default, {
|
|
163
158
|
map: map,
|
|
@@ -170,4 +165,4 @@ var PointMarkers = function PointMarkers(props) {
|
|
|
170
165
|
}));
|
|
171
166
|
};
|
|
172
167
|
exports.PointMarkers = PointMarkers;
|
|
173
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfUG9pbnRNYXJrZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1BvaW50VXRpbHMiLCJfcmVhY3RSZWR1eCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiUG9pbnRNYXJrZXJzIiwicHJvcHMiLCJwb2ludHMiLCJtYXAiLCJmYWN0b3JpZXNHcm91cCIsInd3dHBzR3JvdXAiLCJjb2xsZWN0b3JzR3JvdXAiLCJyZXJlbmRlciIsIl9wcm9wcyRmb3JFdmVudHNWaWV3IiwiZm9yRXZlbnRzVmlldyIsImlzUG9pbnRCZWxvbmdUb0dyb3VwVHlwZXMiLCJwb2ludCIsInBvaW50SXNXV1RQIiwicG9pbnRJc0ZhY3RvcnkiLCJncm91cCIsInR5cGUiLCJoYXNfZGV2aWNlIiwicG9pbnRIYXNDb29yZGluYXRlcyIsImxhdCIsImxhdGl0dWRlIiwibG5nIiwibG9uZ2l0dWRlIiwiaXNWYWxpZCIsImlzTmFOIiwiY29uc29sZSIsIndhcm4iLCJjb25jYXQiLCJpZCIsImZpbHRlclN0YXRlbWVudCIsImZpbHRlcmVkUG9pbnRzIiwiZmlsdGVyIiwiZ2xvYmFsRGF0YSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJnbG9iYWxfZGF0YSIsInVzZXJJbmZvIiwicGVybWlzc2lvbnMiLCJ1c2VyX2luZm8iLCJ1c2VFZmZlY3QiLCJhZGRMYXllckdyb3VwIiwicmVtb3ZlTGF5ZXJHcm91cCIsImNyZWF0ZUVsZW1lbnQiLCJsZW5ndGgiLCJsYXllckdyb3VwIiwiZmxvd1JhdGVVbml0IiwiZmxvd19yYXRlX3VuaXQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL3BvaW50cy9Qb2ludE1hcmtlcnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IFBvaW50TWFya2VyIGZyb20gJy4vUG9pbnRNYXJrZXInO1xuaW1wb3J0IHtcbiAgYWRkTGF5ZXJHcm91cCxcbiAgcmVtb3ZlTGF5ZXJHcm91cCxcbiAgcG9pbnRJc0ZhY3RvcnksXG4gIHBvaW50SXNXV1RQLFxufSBmcm9tICcuL1BvaW50VXRpbHMnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcblxudHlwZSBQcm9wcyA9IHtcbiAgbWFwOiBhbnk7XG4gIHBvaW50czogYW55O1xuICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM6IGJvb2xlYW47XG4gIHJlcmVuZGVyOiBzdHJpbmc7XG4gIGZhY3Rvcmllc0dyb3VwOiBhbnk7XG4gIHd3dHBzR3JvdXA6IGFueTtcbiAgY29sbGVjdG9yc0dyb3VwOiBhbnk7XG4gIGZvckV2ZW50c1ZpZXc6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgY29uc3QgUG9pbnRNYXJrZXJzOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIHBvaW50cyxcbiAgICBtYXAsXG4gICAgZmFjdG9yaWVzR3JvdXAsXG4gICAgd3d0cHNHcm91cCxcbiAgICBjb2xsZWN0b3JzR3JvdXAsXG4gICAgcmVyZW5kZXIsXG4gICAgZm9yRXZlbnRzVmlldyA9IGZhbHNlLFxuICB9ID0gcHJvcHM7XG5cbiAgLy8gVGhpcyBmdW5jdGlvbiBpcyB1c2VkIHRvIGRldGVybWluZSBpZiBhIHBvaW50IHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGUgbWFwLlxuICBjb25zdCBpc1BvaW50QmVsb25nVG9Hcm91cFR5cGVzID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgcG9pbnRJc1dXVFAocG9pbnQpIHx8XG4gICAgICBwb2ludElzRmFjdG9yeShwb2ludCkgfHxcbiAgICAgIChwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpDb2xsZWN0b3JzJyAmJiBwb2ludC5oYXNfZGV2aWNlKSB8fFxuICAgICAgcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6UHVtcFN0YXRpb24nXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBwb2ludEhhc0Nvb3JkaW5hdGVzID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgICBjb25zdCBsYXQgPSBwb2ludC5sYXRpdHVkZTtcbiAgICBjb25zdCBsbmcgPSBwb2ludC5sb25naXR1ZGU7XG4gICAgY29uc3QgaXNWYWxpZCA9XG4gICAgICB0eXBlb2YgbGF0ID09PSAnbnVtYmVyJyAmJlxuICAgICAgdHlwZW9mIGxuZyA9PT0gJ251bWJlcicgJiZcbiAgICAgICFpc05hTihsYXQpICYmXG4gICAgICAhaXNOYU4obG5nKTtcbiAgICBpZiAoIWlzVmFsaWQpIHtcbiAgICAgIGNvbnNvbGUud2FybihgUG9pbnQgJHtwb2ludC5pZH0gaGFzIGludmFsaWQgY29vcmRpbmF0ZXM6ICR7bGF0fSwgJHtsbmd9YCk7XG4gICAgfVxuICAgIHJldHVybiBpc1ZhbGlkO1xuICB9O1xuXG4gIGNvbnN0IGZpbHRlclN0YXRlbWVudCA9IChwb2ludCkgPT4ge1xuICAgIHJldHVybiBpc1BvaW50QmVsb25nVG9Hcm91cFR5cGVzKHBvaW50KSAmJiBwb2ludEhhc0Nvb3JkaW5hdGVzKHBvaW50KTtcbiAgfTtcblxuICBjb25zdCBmaWx0ZXJlZFBvaW50cyA9ICgpID0+IHtcbiAgICByZXR1cm4gcG9pbnRzLmZpbHRlcigocG9pbnQ6IElQb2ludCkgPT4gZmlsdGVyU3RhdGVtZW50KHBvaW50KSk7XG4gIH07XG5cbiAgY29uc3QgZ2xvYmFsRGF0YSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLmdsb2JhbF9kYXRhLFxuICApO1xuXG4gIGNvbnN0IHVzZXJJbmZvID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZS5wZXJtaXNzaW9ucy51c2VyX2luZm8pO1xuXG4gIC8vIGNvbnN0IFtsYXllcnNUb1JlbW92ZSwgc2V0TGF5ZXJzVG9SZW1vdmVdID0gdXNlU3RhdGU8YW55W10+KFtdKTtcblxuICAvLyBjb25zdCByZW1vdmVFdmVudFBvaW50c0Zyb21DbHVzdGVyID0gKHVuaXFlSWRzLCBsb2NhbExheWVyc1RvUmVtb3ZlKSA9PiB7XG4gIC8vICAgaWYgKCFmYWN0b3JpZXNHcm91cCB8fCAhbWFwKSB7XG4gIC8vICAgICBjb25zb2xlLndhcm4oJ0VpdGhlciBmYWN0b3JpZXNHcm91cCBvciBtYXAgaXMgdW5kZWZpbmVkLicpO1xuICAvLyAgICAgcmV0dXJuO1xuICAvLyAgIH1cblxuICAvLyAgIC8vIFJlZnJlc2ggY2x1c3RlcnMgdG8gdXBkYXRlIGludGVybmFsIHN0cnVjdHVyZXMuXG4gIC8vICAgZmFjdG9yaWVzR3JvdXAucmVmcmVzaENsdXN0ZXJzKCk7XG5cbiAgLy8gICB1bmlxZUlkcy5mb3JFYWNoKChpZCkgPT4ge1xuICAvLyAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXAuX2xheWVycykge1xuICAvLyAgICAgICBjb25zdCBsYXllciA9IG1hcC5fbGF5ZXJzW3Byb3BlcnR5XTtcbiAgLy8gICAgICAgLy8gQ2hlY2sgdGhhdCB0aGUgbGF5ZXIgZXhpc3RzLCBpcyBvZiB0eXBlICdQb2ludCcsIGhhcyB0aGUgZXhwZWN0ZWQgaWQsXG4gIC8vICAgICAgIC8vIGFuZCB0aGF0IGl0IGltcGxlbWVudHMgZ2V0TGF0TG5nLlxuICAvLyAgICAgICBpZiAoXG4gIC8vICAgICAgICAgbGF5ZXIgJiZcbiAgLy8gICAgICAgICBsYXllci5rYW5kb19vYmplY3QgPT09ICdQb2ludCcgJiZcbiAgLy8gICAgICAgICBsYXllci5rYW5kb19vYmplY3RfaWQgPT09IGlkICYmXG4gIC8vICAgICAgICAgdHlwZW9mIGxheWVyLmdldExhdExuZyA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAvLyAgICAgICAgIHR5cGVvZiBsYXllci5fem9vbSA9PT0gJ251bWJlcidcbiAgLy8gICAgICAgKSB7XG4gIC8vICAgICAgICAgbG9jYWxMYXllcnNUb1JlbW92ZS5wdXNoKGxheWVyKTtcbiAgLy8gICAgICAgfVxuICAvLyAgICAgfVxuICAvLyAgIH0pO1xuXG4gIC8vICAgLy8gRmlsdGVyIG91dCBkdXBsaWNhdGVzIGFuZCBhbnkgdW5kZWZpbmVkIGxheWVycy5cbiAgLy8gICBjb25zdCB1bmlxdWVMYXllcnMgPSBsb2NhbExheWVyc1RvUmVtb3ZlLmZpbHRlcihcbiAgLy8gICAgIChsYXllciwgaW5kZXgsIHNlbGYpID0+XG4gIC8vICAgICAgIGxheWVyICYmXG4gIC8vICAgICAgIHR5cGVvZiBsYXllci5nZXRMYXRMbmcgPT09ICdmdW5jdGlvbicgJiZcbiAgLy8gICAgICAgaW5kZXggPT09XG4gIC8vICAgICAgICAgc2VsZi5maW5kSW5kZXgoKGwpID0+IGwua2FuZG9fb2JqZWN0X2lkID09PSBsYXllci5rYW5kb19vYmplY3RfaWQpLFxuICAvLyAgICk7XG5cbiAgLy8gICBzZXRMYXllcnNUb1JlbW92ZSh1bmlxdWVMYXllcnMpO1xuICAvLyAgIGZhY3Rvcmllc0dyb3VwLnJlbW92ZUxheWVycyh1bmlxdWVMYXllcnMpO1xuICAvLyB9O1xuXG4gIC8vIGNvbnN0IGFkZEV2ZW50UG9pbnRzVG9DbHVzdGVyID0gKCkgPT4ge1xuICAvLyAgIGxldCBsYXllcnNUb0RyYXcgPSBbXTtcbiAgLy8gICBsZXQgbGF5ZXJzSWRzID0gbGF5ZXJzVG9SZW1vdmUubWFwKChsYXllcikgPT4gbGF5ZXIua2FuZG9fb2JqZWN0X2lkKTtcbiAgLy8gICBsZXQgdW5pcWVJZHMgPSBbLi4ubmV3IFNldChsYXllcnNJZHMpXTtcbiAgLy8gICB1bmlxZUlkcy5mb3JFYWNoKChpZCkgPT4ge1xuICAvLyAgICAgbGF5ZXJzVG9EcmF3LnB1c2goXG4gIC8vICAgICAgIGxheWVyc1RvUmVtb3ZlLmZpbmQoKGxheWVyKSA9PiBsYXllci5rYW5kb19vYmplY3RfaWQgPT09IGlkKSxcbiAgLy8gICAgICk7XG4gIC8vICAgfSk7XG5cbiAgLy8gICBsYXllcnNUb0RyYXcuZm9yRWFjaCgobGF5ZXIpID0+IHtcbiAgLy8gICAgIGxldCBwb2ludCA9IHBvaW50cy5maW5kKChwb2ludCkgPT4gcG9pbnQuaWQgPT09IGxheWVyLmthbmRvX29iamVjdF9pZCk7XG4gIC8vICAgICBwb2ludCAmJiBiaW5kUG9wdXBUb01hcmtlcihwb2ludCwgbGF5ZXIsIHVzZXJJbmZvLmZsb3dfcmF0ZV91bml0KTtcbiAgLy8gICB9KTtcbiAgLy8gICBmYWN0b3JpZXNHcm91cC5hZGRMYXllcnMobGF5ZXJzVG9EcmF3KTtcbiAgLy8gfTtcblxuICAvLyBjb25zdCBtYWtlU3VyZVRoZXJlQXJlTm9EdXBsaWNhdGVzID0gKCkgPT4ge1xuICAvLyAgIGxldCBsb2NhbExheWVyc1RvUmVtb3ZlID0gW107XG5cbiAgLy8gICBpZiAoZXZlbnRzRGF0YS5mb2N1c2VkRXZlbnQpIHtcbiAgLy8gICAgIGxldCBvYnNJZHMgPSBldmVudHNEYXRhLmZvY3VzZWRFdmVudC5vYnNlcnZhdGlvbnMubWFwKFxuICAvLyAgICAgICAob2JzKSA9PiBvYnMucG9pbnRfaWQsXG4gIC8vICAgICApO1xuICAvLyAgICAgbGV0IHVuaXFlSWRzID0gWy4uLm5ldyBTZXQob2JzSWRzKV07XG4gIC8vICAgICByZW1vdmVFdmVudFBvaW50c0Zyb21DbHVzdGVyKHVuaXFlSWRzLCBsb2NhbExheWVyc1RvUmVtb3ZlKTtcbiAgLy8gICB9IGVsc2Uge1xuICAvLyAgICAgYWRkRXZlbnRQb2ludHNUb0NsdXN0ZXIoKTtcbiAgLy8gICB9XG4gIC8vIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobWFwKSB7XG4gICAgICBpZiAoZm9yRXZlbnRzVmlldykge1xuICAgICAgICAvLyBJbiBldmVudHMgdmlldywgYWx3YXlzIHNob3cgYWxsIGxheWVyc1xuICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgZmFjdG9yaWVzR3JvdXApO1xuICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgIGFkZExheWVyR3JvdXAobWFwLCBjb2xsZWN0b3JzR3JvdXApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3dpdGNoIChyZXJlbmRlcikge1xuICAgICAgICAgIGNhc2UgJ1hMYXJnZSc6XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgICAgICAvLyBmYWN0b3JpZXMgZ3JvdXAgaGFzIGEgcGFyZW50IGxheWVyIGluIG1hcC50c3hcbiAgICAgICAgICAgIC8vIHNvIHdlIGRvbid0IG5lZWQgdG8gcmVtb3ZlIGl0IGhlcmVcbiAgICAgICAgICAgIC8vIHJlbW92ZUxheWVyR3JvdXAobWFwLCBmYWN0b3JpZXNHcm91cCk7XG4gICAgICAgICAgICByZW1vdmVMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ0xhcmdlJzpcbiAgICAgICAgICBjYXNlICdNTGFyZ2UnOlxuICAgICAgICAgIGNhc2UgJ01lZGl1bSc6XG4gICAgICAgICAgY2FzZSAnU21hbGwnOlxuICAgICAgICAgICAgLy8gd2UgYXJlIGhhbmRsaW5nIGZhY3Rvcmllc1BhcmVudEdyb3VwIGluIG1hcC50c3hcbiAgICAgICAgICAgIC8vIGFkZExheWVyR3JvdXAobWFwLCBmYWN0b3JpZXNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSwgW3JlcmVuZGVyLCBnbG9iYWxEYXRhXSk7XG5cbiAgLy8gdXNlRWZmZWN0KCgpID0+IHtcbiAgLy8gICBtYWtlU3VyZVRoZXJlQXJlTm9EdXBsaWNhdGVzKCk7XG4gIC8vIH0sIFtldmVudHNEYXRhLmZvY3VzZWRFdmVudCwgZXZlbnRzRGF0YS5pc0ZldGNoaW5nLCByZXJlbmRlcl0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIHtwb2ludHMubGVuZ3RoICE9PSAwICYmXG4gICAgICAgIGZpbHRlcmVkUG9pbnRzKCkubWFwKChwb2ludDogSVBvaW50KSA9PiAoXG4gICAgICAgICAgPFBvaW50TWFya2VyXG4gICAgICAgICAgICBtYXA9e21hcH1cbiAgICAgICAgICAgIHBvaW50PXtwb2ludH1cbiAgICAgICAgICAgIGtleT17cG9pbnQuaWR9XG4gICAgICAgICAgICByZXJlbmRlcj17cmVyZW5kZXJ9XG4gICAgICAgICAgICBsYXllckdyb3VwPXtcbiAgICAgICAgICAgICAgcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6RmFjdG9yeSdcbiAgICAgICAgICAgICAgICA/IGZhY3Rvcmllc0dyb3VwXG4gICAgICAgICAgICAgICAgOiBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnXG4gICAgICAgICAgICAgICAgPyB3d3Rwc0dyb3VwXG4gICAgICAgICAgICAgICAgOiBjb2xsZWN0b3JzR3JvdXBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGZsb3dSYXRlVW5pdD17dXNlckluZm8uZmxvd19yYXRlX3VuaXR9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQU1BLElBQUFJLFdBQUEsR0FBQUosT0FBQTtBQUEwQyxTQUFBSyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQVAsd0JBQUFXLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFB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
|
|
168
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfUG9pbnRNYXJrZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1BvaW50VXRpbHMiLCJfcmVhY3RSZWR1eCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiUG9pbnRNYXJrZXJzIiwicHJvcHMiLCJwb2ludHMiLCJtYXAiLCJmYWN0b3JpZXNHcm91cCIsInd3dHBzR3JvdXAiLCJjb2xsZWN0b3JzR3JvdXAiLCJyZXJlbmRlciIsIl9wcm9wcyRmb3JFdmVudHNWaWV3IiwiZm9yRXZlbnRzVmlldyIsImlzUG9pbnRCZWxvbmdUb0dyb3VwVHlwZXMiLCJwb2ludCIsInBvaW50SXNXV1RQIiwicG9pbnRJc0ZhY3RvcnkiLCJncm91cCIsInR5cGUiLCJoYXNfZGV2aWNlIiwicG9pbnRIYXNDb29yZGluYXRlcyIsImxhdCIsImxhdGl0dWRlIiwibG5nIiwibG9uZ2l0dWRlIiwiaXNWYWxpZCIsImlzTmFOIiwiY29uc29sZSIsIndhcm4iLCJjb25jYXQiLCJpZCIsImZpbHRlclN0YXRlbWVudCIsImZpbHRlcmVkUG9pbnRzIiwiZmlsdGVyIiwiZ2xvYmFsRGF0YSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJnbG9iYWxfZGF0YSIsInVzZXJJbmZvIiwicGVybWlzc2lvbnMiLCJ1c2VyX2luZm8iLCJ1c2VFZmZlY3QiLCJhZGRMYXllckdyb3VwIiwicmVtb3ZlTGF5ZXJHcm91cCIsImNyZWF0ZUVsZW1lbnQiLCJsZW5ndGgiLCJsYXllckdyb3VwIiwiZmxvd1JhdGVVbml0IiwiZmxvd19yYXRlX3VuaXQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL3BvaW50cy9Qb2ludE1hcmtlcnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IFBvaW50TWFya2VyIGZyb20gJy4vUG9pbnRNYXJrZXInO1xuaW1wb3J0IHtcbiAgYWRkTGF5ZXJHcm91cCxcbiAgcmVtb3ZlTGF5ZXJHcm91cCxcbiAgcG9pbnRJc0ZhY3RvcnksXG4gIHBvaW50SXNXV1RQLFxufSBmcm9tICcuL1BvaW50VXRpbHMnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnc3JjL3N0b3JlL3Jvb3RSZWR1Y2VyJztcblxudHlwZSBQcm9wcyA9IHtcbiAgbWFwOiBhbnk7XG4gIHBvaW50czogYW55O1xuICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM6IGJvb2xlYW47XG4gIHJlcmVuZGVyOiBzdHJpbmc7XG4gIGZhY3Rvcmllc0dyb3VwOiBhbnk7XG4gIHd3dHBzR3JvdXA6IGFueTtcbiAgY29sbGVjdG9yc0dyb3VwOiBhbnk7XG4gIGZvckV2ZW50c1ZpZXc6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgY29uc3QgUG9pbnRNYXJrZXJzOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIHBvaW50cyxcbiAgICBtYXAsXG4gICAgZmFjdG9yaWVzR3JvdXAsXG4gICAgd3d0cHNHcm91cCxcbiAgICBjb2xsZWN0b3JzR3JvdXAsXG4gICAgcmVyZW5kZXIsXG4gICAgZm9yRXZlbnRzVmlldyA9IGZhbHNlLFxuICB9ID0gcHJvcHM7XG5cbiAgLy8gVGhpcyBmdW5jdGlvbiBpcyB1c2VkIHRvIGRldGVybWluZSBpZiBhIHBvaW50IHNob3VsZCBiZSBpbmNsdWRlZCBpbiB0aGUgbWFwLlxuICBjb25zdCBpc1BvaW50QmVsb25nVG9Hcm91cFR5cGVzID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgcG9pbnRJc1dXVFAocG9pbnQpIHx8XG4gICAgICBwb2ludElzRmFjdG9yeShwb2ludCkgfHxcbiAgICAgIChwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpDb2xsZWN0b3JzJyAmJiBwb2ludC5oYXNfZGV2aWNlKSB8fFxuICAgICAgcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6UHVtcFN0YXRpb24nXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBwb2ludEhhc0Nvb3JkaW5hdGVzID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgICBjb25zdCBsYXQgPSBwb2ludC5sYXRpdHVkZTtcbiAgICBjb25zdCBsbmcgPSBwb2ludC5sb25naXR1ZGU7XG4gICAgY29uc3QgaXNWYWxpZCA9XG4gICAgICB0eXBlb2YgbGF0ID09PSAnbnVtYmVyJyAmJlxuICAgICAgdHlwZW9mIGxuZyA9PT0gJ251bWJlcicgJiZcbiAgICAgICFpc05hTihsYXQpICYmXG4gICAgICAhaXNOYU4obG5nKTtcbiAgICBpZiAoIWlzVmFsaWQpIHtcbiAgICAgIGNvbnNvbGUud2FybihgUG9pbnQgJHtwb2ludC5pZH0gaGFzIGludmFsaWQgY29vcmRpbmF0ZXM6ICR7bGF0fSwgJHtsbmd9YCk7XG4gICAgfVxuICAgIHJldHVybiBpc1ZhbGlkO1xuICB9O1xuXG4gIGNvbnN0IGZpbHRlclN0YXRlbWVudCA9IChwb2ludCkgPT4ge1xuICAgIHJldHVybiBpc1BvaW50QmVsb25nVG9Hcm91cFR5cGVzKHBvaW50KSAmJiBwb2ludEhhc0Nvb3JkaW5hdGVzKHBvaW50KTtcbiAgfTtcblxuICBjb25zdCBmaWx0ZXJlZFBvaW50cyA9ICgpID0+IHtcbiAgICByZXR1cm4gcG9pbnRzLmZpbHRlcigocG9pbnQ6IElQb2ludCkgPT4gZmlsdGVyU3RhdGVtZW50KHBvaW50KSk7XG4gIH07XG5cbiAgY29uc3QgZ2xvYmFsRGF0YSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLmdsb2JhbF9kYXRhLFxuICApO1xuXG4gIGNvbnN0IHVzZXJJbmZvID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZS5wZXJtaXNzaW9ucy51c2VyX2luZm8pO1xuXG4gIC8vIGNvbnN0IFtsYXllcnNUb1JlbW92ZSwgc2V0TGF5ZXJzVG9SZW1vdmVdID0gdXNlU3RhdGU8YW55W10+KFtdKTtcblxuICAvLyBjb25zdCByZW1vdmVFdmVudFBvaW50c0Zyb21DbHVzdGVyID0gKHVuaXFlSWRzLCBsb2NhbExheWVyc1RvUmVtb3ZlKSA9PiB7XG4gIC8vICAgaWYgKCFmYWN0b3JpZXNHcm91cCB8fCAhbWFwKSB7XG4gIC8vICAgICBjb25zb2xlLndhcm4oJ0VpdGhlciBmYWN0b3JpZXNHcm91cCBvciBtYXAgaXMgdW5kZWZpbmVkLicpO1xuICAvLyAgICAgcmV0dXJuO1xuICAvLyAgIH1cblxuICAvLyAgIC8vIFJlZnJlc2ggY2x1c3RlcnMgdG8gdXBkYXRlIGludGVybmFsIHN0cnVjdHVyZXMuXG4gIC8vICAgZmFjdG9yaWVzR3JvdXAucmVmcmVzaENsdXN0ZXJzKCk7XG5cbiAgLy8gICB1bmlxZUlkcy5mb3JFYWNoKChpZCkgPT4ge1xuICAvLyAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXAuX2xheWVycykge1xuICAvLyAgICAgICBjb25zdCBsYXllciA9IG1hcC5fbGF5ZXJzW3Byb3BlcnR5XTtcbiAgLy8gICAgICAgLy8gQ2hlY2sgdGhhdCB0aGUgbGF5ZXIgZXhpc3RzLCBpcyBvZiB0eXBlICdQb2ludCcsIGhhcyB0aGUgZXhwZWN0ZWQgaWQsXG4gIC8vICAgICAgIC8vIGFuZCB0aGF0IGl0IGltcGxlbWVudHMgZ2V0TGF0TG5nLlxuICAvLyAgICAgICBpZiAoXG4gIC8vICAgICAgICAgbGF5ZXIgJiZcbiAgLy8gICAgICAgICBsYXllci5rYW5kb19vYmplY3QgPT09ICdQb2ludCcgJiZcbiAgLy8gICAgICAgICBsYXllci5rYW5kb19vYmplY3RfaWQgPT09IGlkICYmXG4gIC8vICAgICAgICAgdHlwZW9mIGxheWVyLmdldExhdExuZyA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAvLyAgICAgICAgIHR5cGVvZiBsYXllci5fem9vbSA9PT0gJ251bWJlcidcbiAgLy8gICAgICAgKSB7XG4gIC8vICAgICAgICAgbG9jYWxMYXllcnNUb1JlbW92ZS5wdXNoKGxheWVyKTtcbiAgLy8gICAgICAgfVxuICAvLyAgICAgfVxuICAvLyAgIH0pO1xuXG4gIC8vICAgLy8gRmlsdGVyIG91dCBkdXBsaWNhdGVzIGFuZCBhbnkgdW5kZWZpbmVkIGxheWVycy5cbiAgLy8gICBjb25zdCB1bmlxdWVMYXllcnMgPSBsb2NhbExheWVyc1RvUmVtb3ZlLmZpbHRlcihcbiAgLy8gICAgIChsYXllciwgaW5kZXgsIHNlbGYpID0+XG4gIC8vICAgICAgIGxheWVyICYmXG4gIC8vICAgICAgIHR5cGVvZiBsYXllci5nZXRMYXRMbmcgPT09ICdmdW5jdGlvbicgJiZcbiAgLy8gICAgICAgaW5kZXggPT09XG4gIC8vICAgICAgICAgc2VsZi5maW5kSW5kZXgoKGwpID0+IGwua2FuZG9fb2JqZWN0X2lkID09PSBsYXllci5rYW5kb19vYmplY3RfaWQpLFxuICAvLyAgICk7XG5cbiAgLy8gICBzZXRMYXllcnNUb1JlbW92ZSh1bmlxdWVMYXllcnMpO1xuICAvLyAgIGZhY3Rvcmllc0dyb3VwLnJlbW92ZUxheWVycyh1bmlxdWVMYXllcnMpO1xuICAvLyB9O1xuXG4gIC8vIGNvbnN0IGFkZEV2ZW50UG9pbnRzVG9DbHVzdGVyID0gKCkgPT4ge1xuICAvLyAgIGxldCBsYXllcnNUb0RyYXcgPSBbXTtcbiAgLy8gICBsZXQgbGF5ZXJzSWRzID0gbGF5ZXJzVG9SZW1vdmUubWFwKChsYXllcikgPT4gbGF5ZXIua2FuZG9fb2JqZWN0X2lkKTtcbiAgLy8gICBsZXQgdW5pcWVJZHMgPSBbLi4ubmV3IFNldChsYXllcnNJZHMpXTtcbiAgLy8gICB1bmlxZUlkcy5mb3JFYWNoKChpZCkgPT4ge1xuICAvLyAgICAgbGF5ZXJzVG9EcmF3LnB1c2goXG4gIC8vICAgICAgIGxheWVyc1RvUmVtb3ZlLmZpbmQoKGxheWVyKSA9PiBsYXllci5rYW5kb19vYmplY3RfaWQgPT09IGlkKSxcbiAgLy8gICAgICk7XG4gIC8vICAgfSk7XG5cbiAgLy8gICBsYXllcnNUb0RyYXcuZm9yRWFjaCgobGF5ZXIpID0+IHtcbiAgLy8gICAgIGxldCBwb2ludCA9IHBvaW50cy5maW5kKChwb2ludCkgPT4gcG9pbnQuaWQgPT09IGxheWVyLmthbmRvX29iamVjdF9pZCk7XG4gIC8vICAgICBwb2ludCAmJiBiaW5kUG9wdXBUb01hcmtlcihwb2ludCwgbGF5ZXIsIHVzZXJJbmZvLmZsb3dfcmF0ZV91bml0KTtcbiAgLy8gICB9KTtcbiAgLy8gICBmYWN0b3JpZXNHcm91cC5hZGRMYXllcnMobGF5ZXJzVG9EcmF3KTtcbiAgLy8gfTtcblxuICAvLyBjb25zdCBtYWtlU3VyZVRoZXJlQXJlTm9EdXBsaWNhdGVzID0gKCkgPT4ge1xuICAvLyAgIGxldCBsb2NhbExheWVyc1RvUmVtb3ZlID0gW107XG5cbiAgLy8gICBpZiAoZXZlbnRzRGF0YS5mb2N1c2VkRXZlbnQpIHtcbiAgLy8gICAgIGxldCBvYnNJZHMgPSBldmVudHNEYXRhLmZvY3VzZWRFdmVudC5vYnNlcnZhdGlvbnMubWFwKFxuICAvLyAgICAgICAob2JzKSA9PiBvYnMucG9pbnRfaWQsXG4gIC8vICAgICApO1xuICAvLyAgICAgbGV0IHVuaXFlSWRzID0gWy4uLm5ldyBTZXQob2JzSWRzKV07XG4gIC8vICAgICByZW1vdmVFdmVudFBvaW50c0Zyb21DbHVzdGVyKHVuaXFlSWRzLCBsb2NhbExheWVyc1RvUmVtb3ZlKTtcbiAgLy8gICB9IGVsc2Uge1xuICAvLyAgICAgYWRkRXZlbnRQb2ludHNUb0NsdXN0ZXIoKTtcbiAgLy8gICB9XG4gIC8vIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobWFwKSB7XG4gICAgICBpZiAoZm9yRXZlbnRzVmlldykge1xuICAgICAgICAvLyBJbiBldmVudHMgdmlldywgYWx3YXlzIHNob3cgYWxsIGxheWVyc1xuICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgZmFjdG9yaWVzR3JvdXApO1xuICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgIGFkZExheWVyR3JvdXAobWFwLCBjb2xsZWN0b3JzR3JvdXApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3dpdGNoIChyZXJlbmRlcikge1xuICAgICAgICAgIGNhc2UgJ1hMYXJnZSc6XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgICAgICAvLyBmYWN0b3JpZXMgZ3JvdXAgaGFzIGEgcGFyZW50IGxheWVyIGluIG1hcC50c3hcbiAgICAgICAgICAgIC8vIHNvIHdlIGRvbid0IG5lZWQgdG8gcmVtb3ZlIGl0IGhlcmVcbiAgICAgICAgICAgIC8vIHJlbW92ZUxheWVyR3JvdXAobWFwLCBmYWN0b3JpZXNHcm91cCk7XG4gICAgICAgICAgICByZW1vdmVMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ0xhcmdlJzpcbiAgICAgICAgICBjYXNlICdNTGFyZ2UnOlxuICAgICAgICAgIGNhc2UgJ01lZGl1bSc6XG4gICAgICAgICAgY2FzZSAnU21hbGwnOlxuICAgICAgICAgICAgLy8gd2UgYXJlIGhhbmRsaW5nIGZhY3Rvcmllc1BhcmVudEdyb3VwIGluIG1hcC50c3hcbiAgICAgICAgICAgIC8vIGFkZExheWVyR3JvdXAobWFwLCBmYWN0b3JpZXNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSwgW3JlcmVuZGVyLCBnbG9iYWxEYXRhXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2PlxuICAgICAge3BvaW50cy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgZmlsdGVyZWRQb2ludHMoKS5tYXAoKHBvaW50OiBJUG9pbnQpID0+IChcbiAgICAgICAgICA8UG9pbnRNYXJrZXJcbiAgICAgICAgICAgIG1hcD17bWFwfVxuICAgICAgICAgICAgcG9pbnQ9e3BvaW50fVxuICAgICAgICAgICAga2V5PXtwb2ludC5pZH1cbiAgICAgICAgICAgIHJlcmVuZGVyPXtyZXJlbmRlcn1cbiAgICAgICAgICAgIGxheWVyR3JvdXA9e1xuICAgICAgICAgICAgICBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpGYWN0b3J5J1xuICAgICAgICAgICAgICAgID8gZmFjdG9yaWVzR3JvdXBcbiAgICAgICAgICAgICAgICA6IHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6Oldhc3Rld2F0ZXJUcmVhdG1lbnRQbGFudCdcbiAgICAgICAgICAgICAgICA/IHd3dHBzR3JvdXBcbiAgICAgICAgICAgICAgICA6IGNvbGxlY3RvcnNHcm91cFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmxvd1JhdGVVbml0PXt1c2VySW5mby5mbG93X3JhdGVfdW5pdH1cbiAgICAgICAgICAvPlxuICAgICAgICApKX1cbiAgICA8L2Rpdj5cbiAgKTtc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
|
|
@@ -24,7 +24,6 @@ var _brightBlueCircle = _interopRequireDefault(require("../../../assets/point_ic
|
|
|
24
24
|
var _WWTPIcon = _interopRequireDefault(require("../../../assets/point_icons/WWTP-icon.svg"));
|
|
25
25
|
var _waterNoBackground = _interopRequireDefault(require("../../../assets/point_icons/water-no-background.svg"));
|
|
26
26
|
var _whitePoint = _interopRequireDefault(require("../../../assets/white-point.png"));
|
|
27
|
-
var _MapUtils = require("../MapUtils");
|
|
28
27
|
var _PointIcon = require("./PointIcon");
|
|
29
28
|
var _water_reuse = _interopRequireDefault(require("../../../assets/icons/water_reuse.svg"));
|
|
30
29
|
var _utils = require("pages/DashboardMap/utils");
|
|
@@ -50,24 +49,28 @@ var bubbleForWWTP = function bubbleForWWTP(args) {
|
|
|
50
49
|
});
|
|
51
50
|
pointCustomIcon['kando_object_id'] = args.wwtpPoint.id;
|
|
52
51
|
pointCustomIcon['kando_object'] = 'Point';
|
|
52
|
+
pointCustomIcon['kando_has_device'] = args.wwtpPoint.has_device;
|
|
53
|
+
pointCustomIcon['kando_has_sampler'] = args.wwtpPoint.has_sampler;
|
|
53
54
|
return pointCustomIcon;
|
|
54
55
|
};
|
|
55
56
|
exports.bubbleForWWTP = bubbleForWWTP;
|
|
56
57
|
var createBubblePoint = function createBubblePoint(markerLocation, point, map, hovered, layerGroup) {
|
|
57
58
|
var flow_rate_unit = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'gd_us';
|
|
58
59
|
var handleClick = arguments.length > 6 ? arguments[6] : undefined;
|
|
59
|
-
var subtitle = pointIsFactory(point) ? point.group.sector_name : '';
|
|
60
60
|
var markerOnMap = layerGroup.getLayers().find(function (layer) {
|
|
61
61
|
return layer.kando_object_id === point.id;
|
|
62
62
|
});
|
|
63
|
-
var pointCustomIcon = markerOnMap ? markerOnMap : _leaflet.default.marker(markerLocation, {
|
|
64
|
-
icon: getIcon(point, false, subtitle),
|
|
65
|
-
riseOnHover: true
|
|
66
|
-
});
|
|
67
63
|
if (!markerOnMap) {
|
|
64
|
+
var subtitle = pointIsFactory(point) ? point.group.sector_name : '';
|
|
65
|
+
var type = point.has_device || pointIsWWTP(point) ? point.group.type : 'Groups::default';
|
|
66
|
+
var pointCustomIcon = _leaflet.default.marker(markerLocation, {
|
|
67
|
+
icon: (0, _PointIcon.getPointIconByType)(type, point.name, subtitle, false, true, false, point.has_sampler),
|
|
68
|
+
riseOnHover: true
|
|
69
|
+
});
|
|
68
70
|
pointCustomIcon['kando_object_id'] = point.id;
|
|
69
71
|
pointCustomIcon['kando_object'] = 'Point';
|
|
70
72
|
pointCustomIcon['kando_has_device'] = point.has_device;
|
|
73
|
+
pointCustomIcon['kando_has_sampler'] = point.has_sampler;
|
|
71
74
|
if (hovered) pointCustomIcon['kando_object'] = 'PointHovered';
|
|
72
75
|
layerGroup.addLayer(pointCustomIcon);
|
|
73
76
|
if (pointIsFactory(point)) {
|
|
@@ -75,22 +78,6 @@ var createBubblePoint = function createBubblePoint(markerLocation, point, map, h
|
|
|
75
78
|
}
|
|
76
79
|
handleMarkerEvents(map, point, pointCustomIcon, handleClick);
|
|
77
80
|
}
|
|
78
|
-
|
|
79
|
-
// Consider removing this, it's not functional and notused anywhere
|
|
80
|
-
if (point.relatedEventsAmount) {
|
|
81
|
-
var _pointCustomIcon = _leaflet.default.marker(markerLocation, {
|
|
82
|
-
icon: _leaflet.default.divIcon({
|
|
83
|
-
className: "\n ".concat(point.relatedEventsAmount >= 100 ? 'circle-events-amount circle-events-amount--tridigit' : 'circle-events-amount', " \n ").concat(point.relatedEventsAmount > 2 ? 'alert-color' : '', "\n "),
|
|
84
|
-
html: "<p>".concat(point.relatedEventsAmount, "</p>"),
|
|
85
|
-
iconAnchor: (0, _MapUtils.eventsCountIcon)(map._zoom).iconAnchor
|
|
86
|
-
}),
|
|
87
|
-
riseOnHover: false,
|
|
88
|
-
opacity: hovered ? 1 : 0
|
|
89
|
-
});
|
|
90
|
-
_pointCustomIcon['kando_object_id'] = point.id;
|
|
91
|
-
_pointCustomIcon['kando_object'] = 'IconNumber';
|
|
92
|
-
if (hovered) _pointCustomIcon['kando_object'] = 'IconNumberHovered';
|
|
93
|
-
}
|
|
94
81
|
};
|
|
95
82
|
exports.createBubblePoint = createBubblePoint;
|
|
96
83
|
var createManholePoint = function createManholePoint(markerLocation, point, map, hovered, layerGroup) {
|
|
@@ -107,9 +94,13 @@ var createManholePoint = function createManholePoint(markerLocation, point, map,
|
|
|
107
94
|
manholeIcon['kando_object_id'] = point.id;
|
|
108
95
|
manholeIcon['kando_object'] = 'Point';
|
|
109
96
|
manholeIcon['kando_point_type'] = 'Manhole';
|
|
97
|
+
manholeIcon['kando_has_device'] = point.has_device;
|
|
98
|
+
manholeIcon['kando_has_sampler'] = point.has_sampler;
|
|
110
99
|
if (hovered) manholeIcon['kando_object'] = 'PointHovered';
|
|
111
100
|
layerGroup.addLayer(manholeIcon);
|
|
112
101
|
};
|
|
102
|
+
|
|
103
|
+
// ***Consider removing this function it is not used for more than two years***
|
|
113
104
|
exports.createManholePoint = createManholePoint;
|
|
114
105
|
var matchIconToPoint = function matchIconToPoint(point, event) {
|
|
115
106
|
switch (point.group.type) {
|
|
@@ -356,9 +347,10 @@ var getIcon = function getIcon(point, clicked, subtitle) {
|
|
|
356
347
|
if (isWWTP && !point.has_device) {
|
|
357
348
|
subtitleText += " (".concat(_i18n.default.t('dashboard_v2.utility_dashboard.topbar.quality-summary.unmonitored'), ")");
|
|
358
349
|
}
|
|
359
|
-
return (0, _PointIcon.getPointIconByType)(type, point.name, subtitleText, clicked, !clicked);
|
|
350
|
+
return (0, _PointIcon.getPointIconByType)(type, point.name, subtitleText, clicked, !clicked, false, point.has_sampler);
|
|
360
351
|
};
|
|
361
|
-
var setIcon = function setIcon(element, clicked, point
|
|
352
|
+
var setIcon = function setIcon(element, clicked, point) {
|
|
353
|
+
var subtitle = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
|
|
362
354
|
element.setIcon(getIcon(point, clicked, subtitle));
|
|
363
355
|
};
|
|
364
356
|
|
|
@@ -490,4 +482,4 @@ var isFactoryType = function isFactoryType(type) {
|
|
|
490
482
|
return type === 'Groups::Factory';
|
|
491
483
|
};
|
|
492
484
|
exports.isFactoryType = isFactoryType;
|
|
493
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2kxOG4iLCJfYmx1ZUNpcmNsZSIsIl9zYW1wbGluZ0ljb24iLCJfcGlua0NpcmNsZSIsIl9vYnNlcnZhdGlvbkljb24iLCJfcmVkUGluUmVkU2hhZG93IiwiX3doaXRlUGluUmVkU2hhZG93IiwiX3doaXRlUGluQmxhY2tTaGFkb3ciLCJfeWVsbG93Q2lyY2xlIiwiX2ZhY3RvcnlJY29uIiwiX2dyZWVuQ2lyY2xlIiwiX3B1bXBTdGF0aW9uSWNvbiIsIl9waW5XYXRlciIsIl9icmlnaHRCbHVlQ2lyY2xlIiwiX1dXVFBJY29uIiwiX3dhdGVyTm9CYWNrZ3JvdW5kIiwiX3doaXRlUG9pbnQiLCJfTWFwVXRpbHMiLCJfUG9pbnRJY29uIiwiX3dhdGVyX3JldXNlIiwiX3V0aWxzIiwiaXNDb2xsZWN0b3JGb2N1c2VkIiwicG9pbnQiLCJldmVudCIsIl9ldmVudCRvYnNlcnZhdGlvbnMiLCJvYnNlcnZhdGlvbnMiLCJsZW5ndGgiLCJpZCIsInBvaW50X2lkIiwiZXhwb3J0cyIsImJ1aWxkTWFuaG9sZVRvb2x0aXBTdHJpbmciLCJzdHJpbmciLCJjb25jYXQiLCJncm91cCIsIm5hbWUiLCJwb2ludElzRmFjdG9yeSIsInNlY3Rvcl9uYW1lIiwid2F0ZXJfZGlzY2hhcmdlIiwiYnViYmxlRm9yV1dUUCIsImFyZ3MiLCJwb2ludEN1c3RvbUljb24iLCJMIiwibWFya2VyIiwibWFya2VyTG9jYXRpb24iLCJpY29uIiwiZ2V0SWNvbiIsInd3dHBQb2ludCIsInJpc2VPbkhvdmVyIiwiY3JlYXRlQnViYmxlUG9pbnQiLCJtYXAiLCJob3ZlcmVkIiwibGF5ZXJHcm91cCIsImZsb3dfcmF0ZV91bml0IiwiYXJndW1lbnRzIiwidW5kZWZpbmVkIiwiaGFuZGxlQ2xpY2siLCJzdWJ0aXRsZSIsIm1hcmtlck9uTWFwIiwiZ2V0TGF5ZXJzIiwiZmluZCIsImxheWVyIiwia2FuZG9fb2JqZWN0X2lkIiwiaGFzX2RldmljZSIsImFkZExheWVyIiwiYmluZFBvcHVwVG9NYXJrZXIiLCJoYW5kbGVNYXJrZXJFdmVudHMiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZGl2SWNvbiIsImNsYXNzTmFtZSIsImh0bWwiLCJpY29uQW5jaG9yIiwiZXZlbnRzQ291bnRJY29uIiwiX3pvb20iLCJvcGFjaXR5IiwiY3JlYXRlTWFuaG9sZVBvaW50IiwicG9pbnRJY29uIiwiSWNvbiIsImljb25VcmwiLCJ3aGl0ZVBvaW50IiwiaWNvblNpemUiLCJtYW5ob2xlSWNvbiIsIk1hcmtlciIsImJpbmRUb29sdGlwIiwibWF0Y2hJY29uVG9Qb2ludCIsInR5cGUiLCJjb21iaW5lZEZhY3RvcnlJY29uIiwibWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UiLCJ1bnNoaWZ0Iiwic2VsZWN0ZWRCYWNrZ3JvdW5kIiwibWFya2VyQmVsb25nc1RvU291cmNlIiwiYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCIsInN0YW5kYXJkQmFja2dyb3VuZCIsImNvbWJpbmVkUHVtcFN0YXRpb25JY29uIiwiY29tYmluZWRXV1RQSWNvbiIsInJlZFBpblJlZFNoYWRvdyIsIndhdGVySWNvbk5vQmFja2dyb3VuZCIsInBvcHVwQW5jaG9yIiwiY29tYmluZWRDb2xsZWN0b3JzSWNvbiIsInNlY29uZGFyeSIsInRoaXJkIiwid2hpdGVQaW5CbGFja1NoYWRvdyIsInllbGxvd0NpcmNsZVVSTCIsInBsYW50SWNvblVSTCIsImdyZWVuQ2lyY2xlVVJMIiwicHVtcFN0YXRpb25JY29uVVJMIiwiY29sbGVjdG9ySWNvbiIsImJyaWdodEJsdWVDaXJjbGVVUkwiLCJXV1RQSWNvblVSTCIsIndoaXRlUGluUmVkU2hhZG93Iiwic291cmNlIiwic291cmNlcyIsImZpbHRlciIsInNlbGVjdGVkX3NvdXJjZSIsImNyZWF0ZVNhbXBsaW5nSWNvblBvaW50Iiwic2Vjb25kYXJ5SWNvbiIsInNhbXBsaW5nSWNvbiIsImJsdWVDaXJjbGVVUkwiLCJzYW1wbGluZ0ljb25VUkwiLCJ0aGlyZEljb24iLCJmb3JFYWNoIiwiaW5kZXgiLCJjcmVhdGVPYnNlcnZhdGlvbkljb25Qb2ludCIsIm9ic2VydmF0aW9uSWNvbiIsInBpbmtDaXJjbGVVUkwiLCJvYnNlcnZhdGlvbkljb25VUkwiLCJjcmVhdGVTYW1wbGluZ0ljb25zIiwic2FtcGxlZFBvaW50SWRzIiwic2FtcGxpbmdzIiwicyIsImluY2x1ZGVzIiwicG9wdXBDb250ZW50Iiwib2JzIiwiR3JhcGhJY29uIiwiaTE4biIsInQiLCJzZXZlcml0eSIsImNsaWNrZWQiLCJpc1dXVFAiLCJzdWJ0aXRsZVRleHQiLCJnZXRQb2ludEljb25CeVR5cGUiLCJzZXRJY29uIiwiZWxlbWVudCIsImNhbGN1bGF0ZVdhdGVyQ29uc3VtcHRpb24iLCJ3YXRlckNvbnN1bXB0aW9uIiwicm91bmRfdG9fbmVhcmVzdF9rIiwiY2FsY3VsYXRlZCIsInRvRml4ZWQiLCJyb3VuZFRvTmVhcmVzdFRob3VzYW5kIiwicGFyc2VGbG9hdCIsInRvTG9jYWxlU3RyaW5nIiwiTWF0aCIsInJvdW5kIiwibnVtYmVyIiwicm91bmRlZFRob3VzYW5kcyIsInJvdW5kZWRWYWx1ZSIsInRyYW5zbGF0ZUZsb3dSYXRlIiwidG9vbHRpcFZpc2libGUiLCJvbiIsImNsb3NlUG9wdXAiLCJpc1BvcHVwT3BlbiIsInNlbmRBbmFseXRpY3NFdmVudCIsInBvaW50X25hbWUiLCJjb250ZW50Iiwid2F0ZXJSZXVzZUljb24iLCJnZXRGbG93UmF0ZSIsImJpbmRQb3B1cCIsIm1pbldpZHRoIiwibWF4V2lkdGgiLCJjbG9zZUJ1dHRvbiIsImZsb3dSYXRlVW5pdCIsImlzUm91bmQiLCJyZW1vdmVMYXllckdyb3VwIiwiaGFzTGF5ZXIiLCJyZW1vdmVMYXllciIsImFkZExheWVyR3JvdXAiLCJwb2ludElzV1dUUCIsImlzRmFjdG9yeVR5cGUiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvV2lkZ2V0cy9NYXAvcG9pbnRzL1BvaW50VXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEdyYXBoSWNvbiBmcm9tICcuLi8uLi8uLi9hc3NldHMvbGluZS1jaGFydC5zdmcnO1xuaW1wb3J0IEwsIHsgTGF0TG5nVHVwbGUgfSBmcm9tICdsZWFmbGV0JztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uLy4uL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBibHVlQ2lyY2xlVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9ibHVlLWNpcmNsZS5zdmcnO1xuaW1wb3J0IHNhbXBsaW5nSWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvc2FtcGxpbmctaWNvbi5zdmcnO1xuaW1wb3J0IHBpbmtDaXJjbGVVUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3BpbmstY2lyY2xlLnN2Zyc7XG5pbXBvcnQgb2JzZXJ2YXRpb25JY29uVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9vYnNlcnZhdGlvbi1pY29uLnN2Zyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgcmVkUGluUmVkU2hhZG93IGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9yZWQtcGluLXJlZC1zaGFkb3cucG5nJztcbmltcG9ydCB3aGl0ZVBpblJlZFNoYWRvdyBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvd2hpdGUtcGluLXJlZC1zaGFkb3cucG5nJztcbmltcG9ydCB3aGl0ZVBpbkJsYWNrU2hhZG93IGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy93aGl0ZS1waW4tYmxhY2stc2hhZG93LnBuZyc7XG5pbXBvcnQgeWVsbG93Q2lyY2xlVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy95ZWxsb3ctY2lyY2xlLnN2Zyc7XG5pbXBvcnQgcGxhbnRJY29uVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9mYWN0b3J5LWljb24uc3ZnJztcbmltcG9ydCBncmVlbkNpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvZ3JlZW4tY2lyY2xlLnN2Zyc7XG5pbXBvcnQgcHVtcFN0YXRpb25JY29uVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9wdW1wLXN0YXRpb24taWNvbi5zdmcnO1xuaW1wb3J0IGNvbGxlY3Rvckljb24gZnJvbSAnLi4vLi4vLi4vYXNzZXRzL21hcC9waW4td2F0ZXIuc3ZnJztcbmltcG9ydCBicmlnaHRCbHVlQ2lyY2xlVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9icmlnaHQtYmx1ZS1jaXJjbGUuc3ZnJztcbmltcG9ydCBXV1RQSWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvV1dUUC1pY29uLnN2Zyc7XG5pbXBvcnQgd2F0ZXJJY29uTm9CYWNrZ3JvdW5kIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy93YXRlci1uby1iYWNrZ3JvdW5kLnN2Zyc7XG5pbXBvcnQgd2hpdGVQb2ludCBmcm9tICcuLi8uLi8uLi9hc3NldHMvd2hpdGUtcG9pbnQucG5nJztcbmltcG9ydCB7IGV2ZW50c0NvdW50SWNvbiB9IGZyb20gJy4uL01hcFV0aWxzJztcbmltcG9ydCB7IGdldFBvaW50SWNvbkJ5VHlwZSB9IGZyb20gJy4vUG9pbnRJY29uJztcbmltcG9ydCB3YXRlclJldXNlSWNvbiBmcm9tICcuLi8uLi8uLi9hc3NldHMvaWNvbnMvd2F0ZXJfcmV1c2Uuc3ZnJztcbmltcG9ydCB7IHNlbmRBbmFseXRpY3NFdmVudCB9IGZyb20gJ3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgaXNDb2xsZWN0b3JGb2N1c2VkID0gKHBvaW50OiBJUG9pbnQsIGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgcmV0dXJuIChcbiAgICBldmVudD8ub2JzZXJ2YXRpb25zPy5sZW5ndGggPT09IDEgJiZcbiAgICBwb2ludC5pZCA9PT0gZXZlbnQub2JzZXJ2YXRpb25zWzBdLnBvaW50X2lkXG4gICk7XG59O1xuXG5jb25zdCBidWlsZE1hbmhvbGVUb29sdGlwU3RyaW5nID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgbGV0IHN0cmluZyA9IGAke3BvaW50Lmdyb3VwLm5hbWV9IGA7XG5cbiAgaWYgKHBvaW50SXNGYWN0b3J5KHBvaW50KSkge1xuICAgIHN0cmluZyArPSBgPGJyLz5TZWN0b3I6ICR7cG9pbnQuZ3JvdXAuc2VjdG9yX25hbWV9YDtcbiAgICBzdHJpbmcgKz0gYDxici8+V2F0ZXIgQ29uc3VtcHRpb246ICR7cG9pbnQuZ3JvdXAud2F0ZXJfZGlzY2hhcmdlfWA7XG4gIH0gZWxzZSB7XG4gICAgc3RyaW5nID0gYCR7cG9pbnQubmFtZX1gO1xuICB9XG5cbiAgcmV0dXJuIHN0cmluZztcbn07XG5cbmV4cG9ydCBjb25zdCBidWJibGVGb3JXV1RQID0gKGFyZ3MpID0+IHtcbiAgY29uc3QgcG9pbnRDdXN0b21JY29uOiBMLk1hcmtlciA9IEwubWFya2VyKGFyZ3MubWFya2VyTG9jYXRpb24sIHtcbiAgICBpY29uOiBnZXRJY29uKGFyZ3Mud3d0cFBvaW50LCBmYWxzZSksXG4gICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gIH0pO1xuICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gYXJncy53d3RwUG9pbnQuaWQ7XG4gIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnQnO1xuXG4gIHJldHVybiBwb2ludEN1c3RvbUljb247XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlQnViYmxlUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgcG9pbnQ6IElQb2ludCxcbiAgbWFwLFxuICBob3ZlcmVkPyxcbiAgbGF5ZXJHcm91cD8sXG4gIGZsb3dfcmF0ZV91bml0ID0gJ2dkX3VzJyxcbiAgaGFuZGxlQ2xpY2s/LFxuKSA9PiB7XG4gIGNvbnN0IHN1YnRpdGxlID0gcG9pbnRJc0ZhY3RvcnkocG9pbnQpID8gcG9pbnQuZ3JvdXAuc2VjdG9yX25hbWUgOiAnJztcbiAgY29uc3QgbWFya2VyT25NYXAgPSBsYXllckdyb3VwXG4gICAgLmdldExheWVycygpXG4gICAgLmZpbmQoKGxheWVyKSA9PiBsYXllci5rYW5kb19vYmplY3RfaWQgPT09IHBvaW50LmlkKTtcblxuICBsZXQgcG9pbnRDdXN0b21JY29uOiBMLk1hcmtlciA9IG1hcmtlck9uTWFwXG4gICAgPyBtYXJrZXJPbk1hcFxuICAgIDogTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgICAgaWNvbjogZ2V0SWNvbihwb2ludCwgZmFsc2UsIHN1YnRpdGxlKSxcbiAgICAgICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gICAgICB9KTtcblxuICBpZiAoIW1hcmtlck9uTWFwKSB7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnQnO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9faGFzX2RldmljZSddID0gcG9pbnQuaGFzX2RldmljZTtcbiAgICBpZiAoaG92ZXJlZCkgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdQb2ludEhvdmVyZWQnO1xuXG4gICAgbGF5ZXJHcm91cC5hZGRMYXllcihwb2ludEN1c3RvbUljb24pO1xuICAgIGlmIChwb2ludElzRmFjdG9yeShwb2ludCkpIHtcbiAgICAgIGJpbmRQb3B1cFRvTWFya2VyKHBvaW50LCBwb2ludEN1c3RvbUljb24sIGZsb3dfcmF0ZV91bml0KTtcbiAgICB9XG5cbiAgICBoYW5kbGVNYXJrZXJFdmVudHMobWFwLCBwb2ludCwgcG9pbnRDdXN0b21JY29uLCBoYW5kbGVDbGljayk7XG4gIH1cblxuICAvLyBDb25zaWRlciByZW1vdmluZyB0aGlzLCBpdCdzIG5vdCBmdW5jdGlvbmFsIGFuZCBub3R1c2VkIGFueXdoZXJlXG4gIGlmIChwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50KSB7XG4gICAgbGV0IHBvaW50Q3VzdG9tSWNvbiA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICBpY29uOiBMLmRpdkljb24oe1xuICAgICAgICBjbGFzc05hbWU6IGBcbiAgICAgICAgICAke1xuICAgICAgICAgICAgcG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA+PSAxMDBcbiAgICAgICAgICAgICAgPyAnY2lyY2xlLWV2ZW50cy1hbW91bnQgY2lyY2xlLWV2ZW50cy1hbW91bnQtLXRyaWRpZ2l0J1xuICAgICAgICAgICAgICA6ICdjaXJjbGUtZXZlbnRzLWFtb3VudCdcbiAgICAgICAgICB9IFxuICAgICAgICAgICR7cG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA+IDIgPyAnYWxlcnQtY29sb3InIDogJyd9XG4gICAgICAgICAgICBgLFxuICAgICAgICBodG1sOiBgPHA+JHtwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50fTwvcD5gLFxuICAgICAgICBpY29uQW5jaG9yOiBldmVudHNDb3VudEljb24obWFwLl96b29tKS5pY29uQW5jaG9yLFxuICAgICAgfSksXG4gICAgICByaXNlT25Ib3ZlcjogZmFsc2UsXG4gICAgICBvcGFjaXR5OiBob3ZlcmVkID8gMSA6IDAsXG4gICAgfSk7XG5cbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdJY29uTnVtYmVyJztcbiAgICBpZiAoaG92ZXJlZCkgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdJY29uTnVtYmVySG92ZXJlZCc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVNYW5ob2xlUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgcG9pbnQ6IElQb2ludCxcbiAgbWFwLFxuICBob3ZlcmVkPyxcbiAgbGF5ZXJHcm91cD8sXG4pID0+IHtcbiAgbGV0IHBvaW50SWNvbiA9IG5ldyBMLkljb24oe1xuICAgIGljb25Vcmw6IHdoaXRlUG9pbnQsXG4gICAgaWNvblNpemU6IFs5LCA5XSxcbiAgICBpY29uQW5jaG9yOiBbNC41LCA0LjVdLFxuICB9KTtcbiAgbGV0IG1hbmhvbGVJY29uOiBhbnkgPSBuZXcgTC5NYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICBpY29uOiBwb2ludEljb24sXG4gICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gIH0pO1xuICBtYW5ob2xlSWNvbi5iaW5kVG9vbHRpcChidWlsZE1hbmhvbGVUb29sdGlwU3RyaW5nKHBvaW50KSk7XG4gIG1hbmhvbGVJY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnQnO1xuICBtYW5ob2xlSWNvblsna2FuZG9fcG9pbnRfdHlwZSddID0gJ01hbmhvbGUnO1xuICBpZiAoaG92ZXJlZCkgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50SG92ZXJlZCc7XG4gIGxheWVyR3JvdXAuYWRkTGF5ZXIobWFuaG9sZUljb24pO1xufTtcblxuZXhwb3J0IGNvbnN0IG1hdGNoSWNvblRvUG9pbnQgPSAocG9pbnQ6IElQb2ludCwgZXZlbnQ6IElFdmVudCkgPT4ge1xuICBzd2l0Y2ggKHBvaW50Lmdyb3VwLnR5cGUpIHtcbiAgICBjYXNlICdHcm91cHM6OkZhY3RvcnknOlxuICAgICAgaWYgKGNvbWJpbmVkRmFjdG9yeUljb24ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRGYWN0b3J5SWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkRmFjdG9yeUljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbWJpbmVkRmFjdG9yeUljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbWJpbmVkRmFjdG9yeUljb247XG4gICAgY2FzZSAnR3JvdXBzOjpQdW1wU3RhdGlvbic6XG4gICAgICBpZiAoY29tYmluZWRQdW1wU3RhdGlvbkljb24ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRQdW1wU3RhdGlvbkljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgICAgIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29tYmluZWRQdW1wU3RhdGlvbkljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbWJpbmVkUHVtcFN0YXRpb25JY29uO1xuICAgIGNhc2UgJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50JzpcbiAgICAgIGlmIChjb21iaW5lZFdXVFBJY29uLmxlbmd0aCA9PT0gMikge1xuICAgICAgICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgICAgIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZFdXVFBJY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb21iaW5lZFdXVFBJY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjb21iaW5lZFdXVFBJY29uO1xuXG4gICAgY2FzZSAnR3JvdXBzOjpDb2xsZWN0b3JzJzpcbiAgICAgIGlmIChpc0NvbGxlY3RvckZvY3VzZWQocG9pbnQsIGV2ZW50KSkge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgIEwuaWNvbih7XG4gICAgICAgICAgICBpY29uVXJsOiByZWRQaW5SZWRTaGFkb3csXG4gICAgICAgICAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgICAgICAgICAgaWNvbkFuY2hvcjogWzMwLCA1Ml0sXG4gICAgICAgICAgfSksXG5cbiAgICAgICAgICBMLmljb24oe1xuICAgICAgICAgICAgaWNvblVybDogd2F0ZXJJY29uTm9CYWNrZ3JvdW5kLFxuICAgICAgICAgICAgaWNvblNpemU6IFswLCAwXSxcblxuICAgICAgICAgICAgaWNvbkFuY2hvcjogWzIyLCA0NF0sXG4gICAgICAgICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgICAgICAgfSksXG4gICAgICAgIF07XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjb21iaW5lZENvbGxlY3RvcnNJY29uO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBudWxsO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3Qgc3RhbmRhcmRCYWNrZ3JvdW5kID0gKFxuICBzZWNvbmRhcnk6IGJvb2xlYW4gPSBmYWxzZSxcbiAgdGhpcmQ6IGJvb2xlYW4gPSBmYWxzZSxcbikgPT4ge1xuICByZXR1cm4gTC5pY29uKHtcbiAgICBpY29uVXJsOiB3aGl0ZVBpbkJsYWNrU2hhZG93LFxuICAgIGljb25TaXplOiBzZWNvbmRhcnkgPyBbMCwgMF0gOiBbMCwgMF0sXG4gICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5ICYmIHRoaXJkID8gWy0yLCAxOV0gOiBzZWNvbmRhcnkgPyBbLTIsIDQ0XSA6IFsyMCwgNDJdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY29tYmluZWRGYWN0b3J5SWNvbiA9IFtcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiB5ZWxsb3dDaXJjbGVVUkwsXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbMTAuNywgMzMuN10sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBwbGFudEljb25VUkwsXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbNSwgMzBdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG5dO1xuXG5leHBvcnQgY29uc3QgY29tYmluZWRQdW1wU3RhdGlvbkljb24gPSBbXG4gIEwuaWNvbih7XG4gICAgaWNvblVybDogZ3JlZW5DaXJjbGVVUkwsXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbMTAuNywgMzMuN10sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBwdW1wU3RhdGlvbkljb25VUkwsXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbNywgMzJdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG5dO1xuXG5leHBvcnQgY29uc3QgY29tYmluZWRDb2xsZWN0b3JzSWNvbiA9IFtcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBjb2xsZWN0b3JJY29uLFxuICAgIGljb25TaXplOiBbMCwgMF0sXG5cbiAgICBpY29uQW5jaG9yOiBbMjUsIDUwXSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuXTtcblxuZXhwb3J0IGNvbnN0IGNvbWJpbmVkV1dUUEljb24gPSBbXG4gIEwuaWNvbih7XG4gICAgaWNvblVybDogYnJpZ2h0Qmx1ZUNpcmNsZVVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuICBMLmljb24oe1xuICAgIGljb25Vcmw6IFdXVFBJY29uVVJMLFxuICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgaWNvbkFuY2hvcjogWzgsIDMxXSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuXTtcblxuZXhwb3J0IGNvbnN0IHNlbGVjdGVkQmFja2dyb3VuZCA9ICgpID0+IHtcbiAgcmV0dXJuIEwuaWNvbih7XG4gICAgaWNvblVybDogcmVkUGluUmVkU2hhZG93LFxuICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgaWNvbkFuY2hvcjogWzMyLCA1NF0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kID0gKCkgPT4ge1xuICByZXR1cm4gTC5pY29uKHtcbiAgICBpY29uVXJsOiB3aGl0ZVBpblJlZFNoYWRvdyxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFszMiwgNTRdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgbWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UgPSAoZXZlbnQ6IElFdmVudCwgcG9pbnQ6IElQb2ludCkgPT4ge1xuICBsZXQgc291cmNlO1xuXG4gIGlmIChldmVudCAhPT0gbnVsbCAmJiBldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgc291cmNlID0gZXZlbnQuc291cmNlcy5maWx0ZXIoKHNvdXJjZSkgPT4gc291cmNlLnBvaW50X2lkID09PSBwb2ludC5pZClbMF07XG4gIH1cblxuICByZXR1cm4gZXZlbnQgIT09IG51bGwgJiYgc291cmNlICYmIGV2ZW50LnNlbGVjdGVkX3NvdXJjZSA9PT0gc291cmNlLnBvaW50X2lkO1xufTtcblxuZXhwb3J0IGNvbnN0IG1hcmtlckJlbG9uZ3NUb1NvdXJjZSA9IChldmVudDogSUV2ZW50LCBwb2ludDogSVBvaW50KSA9PiB7XG4gIGlmIChldmVudCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIHJldHVybiAoXG4gICAgZXZlbnQgIT09IG51bGwgJiZcbiAgICBldmVudC5zb3VyY2VzLmZpbHRlcigoc291cmNlKSA9PiBzb3VyY2UucG9pbnRfaWQgPT09IHBvaW50LmlkKVswXVxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVNhbXBsaW5nSWNvblBvaW50ID0gKFxuICBtYXJrZXJMb2NhdGlvbjogTGF0TG5nVHVwbGUsXG4gIHNlY29uZGFyeUljb246IGJvb2xlYW4sXG4gIG1hcCxcbiAgcG9pbnQ6IElQb2ludCxcbiAgZXZlbnQ6IElFdmVudCxcbiAgaG92ZXJlZD8sXG4gIGxheWVyR3JvdXA/LFxuKSA9PiB7XG4gIC8vIGljb25TaXplOiBbd2lkdGgsIGhlaWdodF0sXG4gIC8vIEljb24gQW5jaG9yOiBbKC1yaWdodCkoK2xlZnQpLCAoLWRvd24pKCt1cCldXG4gIGxldCBzYW1wbGluZ0ljb24gPSBbXG4gICAgTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IGJsdWVDaXJjbGVVUkwsXG4gICAgICBpY29uU2l6ZTogc2Vjb25kYXJ5SWNvbiA/IFswLCAwXSA6IFswLCAwXSxcbiAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTcsIDE1XSA6IFsxMC43LCAzMy43XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogc2FtcGxpbmdJY29uVVJMLFxuICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbMCwgMF0gOiBbMCwgMF0sXG4gICAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnlJY29uID8gWy04LCAxM10gOiBbNSwgMzBdLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICBdO1xuXG4gIGxldCB0aGlyZEljb24gPSBmYWxzZTtcbiAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICBzYW1wbGluZ0ljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKGV2ZW50LCBwb2ludCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICBzYW1wbGluZ0ljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICB9IGVsc2Uge1xuICAgIHRoaXJkSWNvbiA9IHRydWU7XG4gICAgc2FtcGxpbmdJY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKHNlY29uZGFyeUljb24sIHRoaXJkSWNvbikpO1xuICB9XG5cbiAgc2FtcGxpbmdJY29uLmZvckVhY2goKGljb24sIGluZGV4KSA9PiB7XG4gICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgIGljb246IGljb24sXG4gICAgICByaXNlT25Ib3ZlcjogZmFsc2UsXG4gICAgfSk7XG4gICAgcG9pbnRDdXN0b21JY29uLmJpbmRUb29sdGlwKGJ1aWxkTWFuaG9sZVRvb2x0aXBTdHJpbmcocG9pbnQpKTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2luZGV4X29iamVjdCddID0gaW5kZXg7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19mZXdfbGF5ZXJfaWNvbiddID0gdHJ1ZTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX3NlY29uZGFyeSddID0gdGhpcmRJY29uID8gZmFsc2UgOiBzZWNvbmRhcnlJY29uO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fdGhpcmQnXSA9IHRoaXJkSWNvbjtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdTYW1wbGluZyc7XG4gICAgaWYgKGhvdmVyZWQpIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnU2FtcGxpbmdIb3ZlcmVkJztcbiAgICBsYXllckdyb3VwLmFkZExheWVyKHBvaW50Q3VzdG9tSWNvbik7XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZU9ic2VydmF0aW9uSWNvblBvaW50ID0gKFxuICBtYXJrZXJMb2NhdGlvbjogTGF0TG5nVHVwbGUsXG4gIHNlY29uZGFyeUljb246IGJvb2xlYW4sXG4gIG1hcCxcbiAgcG9pbnQ6IElQb2ludCxcbiAgZXZlbnQ6IElFdmVudCxcbiAgaG92ZXJlZD8sXG4gIGxheWVyR3JvdXA/LFxuKSA9PiB7XG4gIC8vIGljb25TaXplOiBbd2lkdGgsIGhlaWdodF0sXG4gIC8vIEljb24gQW5jaG9yOiBbKC1yaWdodCkoK2xlZnQpLCAoLWRvd24pKCt1cCldXG4gIGxldCBvYnNlcnZhdGlvbkljb24gPSBbXG4gICAgTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IHBpbmtDaXJjbGVVUkwsXG4gICAgICBpY29uU2l6ZTogc2Vjb25kYXJ5SWNvbiA/IFswLCAwXSA6IFswLCAwXSxcbiAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTcsIDQwXSA6IFsxMC43LCAzMy43XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogb2JzZXJ2YXRpb25JY29uVVJMLFxuICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbMCwgMF0gOiBbMCwgMF0sXG4gICAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnlJY29uID8gWy04LCAzOF0gOiBbNSwgMzBdLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICBdO1xuXG4gIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZShldmVudCwgcG9pbnQpICYmICFzZWNvbmRhcnlJY29uKSB7XG4gICAgb2JzZXJ2YXRpb25JY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZShldmVudCwgcG9pbnQpICYmICFzZWNvbmRhcnlJY29uKSB7XG4gICAgb2JzZXJ2YXRpb25JY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgfSBlbHNlIHtcbiAgICBvYnNlcnZhdGlvbkljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoc2Vjb25kYXJ5SWNvbikpO1xuICB9XG5cbiAgb2JzZXJ2YXRpb25JY29uLmZvckVhY2goKGljb24sIGluZGV4KSA9PiB7XG4gICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgIGljb246IGljb24sXG4gICAgICByaXNlT25Ib3ZlcjogZmFsc2UsXG4gICAgfSk7XG4gICAgcG9pbnRDdXN0b21JY29uLmJpbmRUb29sdGlwKGJ1aWxkTWFuaG9sZVRvb2x0aXBTdHJpbmcocG9pbnQpKTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2luZGV4X29iamVjdCddID0gaW5kZXg7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19mZXdfbGF5ZXJfaWNvbiddID0gdHJ1ZTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX3NlY29uZGFyeSddID0gc2Vjb25kYXJ5SWNvbjtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX3RoaXJkJ10gPSBmYWxzZTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdPYnNlcnZhdGlvbic7XG4gICAgaWYgKGhvdmVyZWQpIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnT2JzZXJ2YXRpb25Ib3ZlcmVkJztcbiAgICBsYXllckdyb3VwLmFkZExheWVyKHBvaW50Q3VzdG9tSWNvbik7XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVNhbXBsaW5nSWNvbnMgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgZXZlbnQ6IElFdmVudCxcbiAgcG9pbnQ6IElQb2ludCxcbiAgbWFwLFxuICBob3ZlcmVkLFxuICBsYXllckdyb3VwPyxcbikgPT4ge1xuICBsZXQgc2FtcGxlZFBvaW50SWRzID0gZXZlbnQuc2FtcGxpbmdzLm1hcCgocykgPT4gcy5wb2ludF9pZCk7XG4gIGlmIChcbiAgICBldmVudCAhPT0gbnVsbCAmJlxuICAgIGV2ZW50LnNhbXBsaW5ncy5sZW5ndGggIT09IDAgJiZcbiAgICBzYW1wbGVkUG9pbnRJZHMuaW5jbHVkZXMocG9pbnQuaWQpXG4gICkge1xuICAgIGNyZWF0ZVNhbXBsaW5nSWNvblBvaW50KFxuICAgICAgbWFya2VyTG9jYXRpb24sXG4gICAgICBtYXRjaEljb25Ub1BvaW50KHBvaW50LCBldmVudCkgIT09IG51bGwsXG4gICAgICBtYXAsXG4gICAgICBwb2ludCxcbiAgICAgIGV2ZW50LFxuICAgICAgaG92ZXJlZCxcbiAgICAgIGxheWVyR3JvdXAsXG4gICAgKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVwQ29udGVudCA9IChvYnM6IGFueSwgcG9pbnQ6IElQb2ludCkgPT4ge1xuICBpZiAob2JzID09PSBudWxsKSB7XG4gICAgcmV0dXJuIGBcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldmVudC1wb3B1cFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1ncmFwaC1pY29uIHBvcHVwLWdyYXBoLWljb24tJHtwb2ludC5pZH1cIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCIke0dyYXBoSWNvbn1cIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwicG9wdXAtY29udGVudF9fc2l0ZS1uYW1lXCI+PGI+JHtwb2ludC5ncm91cC5uYW1lfTwvYj48L2g1PlxuICAgICAgICAgICAgICAgICAgICA8aHIvPlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInNlY3RvclwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBgO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBgXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnQtcG9wdXBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtZ3JhcGgtaWNvbiBwb3B1cC1ncmFwaC1pY29uLSR7b2JzLmlkfVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIiR7R3JhcGhJY29ufVwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zaXRlLW5hbWVcIj48Yj4ke1xuICAgICAgICAgICAgICAgICAgICAgIHBvaW50Lmdyb3VwLm5hbWVcbiAgICAgICAgICAgICAgICAgICAgfTwvYj48L2g1PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktcFwiPiR7aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXR5YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCIke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAncG9wdXAtY29udGVudF9fc2V2ZXJpdHktLScgKyBvYnMuc2V2ZXJpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YiBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NldmVyaXR5LWJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGV2ZW50c19vdmVydmlldy5zZXZlcml0aWVzLiR7b2JzLnNldmVyaXR5fWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9iPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIDxociBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX2hyXCIgLz5cblxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudF9fZGlzY2hhcmdlLXRpbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LmZpcnN0X3NlZW5gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9OjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48YiBpZD1cImZpcnN0LXNlZW4tcG9wdXBcIj48L2I+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktcFwiPiR7aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGV2ZW50c19vdmVydmlldy5sYXN0X3NlZW5gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9OjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48YiBpZD1cImxhc3Qtc2Vlbi1wb3B1cFwiPjwvYj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgYDtcbiAgfVxufTtcblxuY29uc3QgZ2V0SWNvbiA9IChwb2ludDogSVBvaW50LCBjbGlja2VkOiBib29sZWFuLCBzdWJ0aXRsZT86IHN0cmluZykgPT4ge1xuICBjb25zdCBpc1dXVFAgPSBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnO1xuICBjb25zdCB0eXBlID1cbiAgICBwb2ludC5oYXNfZGV2aWNlIHx8IGlzV1dUUCA/IHBvaW50Lmdyb3VwLnR5cGUgOiAnR3JvdXBzOjpkZWZhdWx0JztcbiAgbGV0IHN1YnRpdGxlVGV4dCA9IHN1YnRpdGxlID8gc3VidGl0bGUgOiBwb2ludC5ncm91cC5zZWN0b3JfbmFtZTtcbiAgaWYgKGlzV1dUUCAmJiAhcG9pbnQuaGFzX2RldmljZSkge1xuICAgIHN1YnRpdGxlVGV4dCArPSBgICgke2kxOG4udChcbiAgICAgICdkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQudG9wYmFyLnF1YWxpdHktc3VtbWFyeS51bm1vbml0b3JlZCcsXG4gICAgKX0pYDtcbiAgfVxuICByZXR1cm4gZ2V0UG9pbnRJY29uQnlUeXBlKHR5cGUsIHBvaW50Lm5hbWUsIHN1YnRpdGxlVGV4dCwgY2xpY2tlZCwgIWNsaWNrZWQpO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldEljb24gPSAoZWxlbWVudCwgY2xpY2tlZCwgcG9pbnQsIHN1YnRpdGxlKSA9PiB7XG4gIGVsZW1lbnQuc2V0SWNvbihnZXRJY29uKHBvaW50LCBjbGlja2VkLCBzdWJ0aXRsZSkpO1xufTtcblxuLy8gcm91bmQgdG8gbmVhcmVzdCB0aG91c2FuZCBpcyB1c2VkIHdoZW4geW91IHdhbnQgdG8gcm91bmQgdGhlIHdhdGVyIGNvbnN1bXB0aW9uIHRvIHRoZSBuZWFyZXN0IHRob3VzYW5kXG4vLyBmb3IgZXhhbXBsZTogMjM0LDU2NyAtPiAyMzUsMDAwXG5leHBvcnQgY29uc3QgY2FsY3VsYXRlV2F0ZXJDb25zdW1wdGlvbiA9IChcbiAgZmxvd19yYXRlX3VuaXQ6IHN0cmluZyxcbiAgd2F0ZXJDb25zdW1wdGlvbjogbnVtYmVyLFxuICByb3VuZF90b19uZWFyZXN0X2s6IGJvb2xlYW4gPSBmYWxzZSxcbikgPT4ge1xuICBsZXQgY2FsY3VsYXRlZCA9ICcwJztcblxuICBpZiAod2F0ZXJDb25zdW1wdGlvbiA+IDApIHtcbiAgICBzd2l0Y2ggKGZsb3dfcmF0ZV91bml0KSB7XG4gICAgICBjYXNlICdtM2QnOlxuICAgICAgICBjYWxjdWxhdGVkID0gd2F0ZXJDb25zdW1wdGlvbi50b0ZpeGVkKDIpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2dkX3VzJzpcbiAgICAgICAgY2FsY3VsYXRlZCA9ICh3YXRlckNvbnN1bXB0aW9uICogMjY0LjE3MikudG9GaXhlZCgyKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdnZF91ayc6XG4gICAgICAgIGNhbGN1bGF0ZWQgPSAod2F0ZXJDb25zdW1wdGlvbiAqIDIxOS45NjkpLnRvRml4ZWQoMik7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuICBpZiAocm91bmRfdG9fbmVhcmVzdF9rKSB7XG4gICAgcmV0dXJuIHJvdW5kVG9OZWFyZXN0VGhvdXNhbmQocGFyc2VGbG9hdChjYWxjdWxhdGVkKSkudG9Mb2NhbGVTdHJpbmcoKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZChwYXJzZUZsb2F0KGNhbGN1bGF0ZWQpKS50b0xvY2FsZVN0cmluZygpO1xuICB9XG59O1xuXG5jb25zdCByb3VuZFRvTmVhcmVzdFRob3VzYW5kID0gKG51bWJlcikgPT4ge1xuICAvLyBpZihpc0FscmVhZHlSb3VuZGVkKG51bWJlcikpIHtcbiAgLy8gICByZXR1cm4gbnVtYmVyO1xuICAvLyB9XG5cbiAgaWYgKG51bWJlciA8IDEwMDApIHtcbiAgICByZXR1cm4gTWF0aC5yb3VuZChudW1iZXIpO1xuICB9XG5cbiAgY29uc3Qgcm91bmRlZFRob3VzYW5kcyA9IE1hdGgucm91bmQobnVtYmVyIC8gMTAwMCk7XG4gIGNvbnN0IHJvdW5kZWRWYWx1ZSA9IHJvdW5kZWRUaG91c2FuZHMgKiAxMDAwO1xuXG4gIHJldHVybiByb3VuZGVkVmFsdWU7XG59O1xuXG4vLyBjb25zdCBpc0FscmVhZHlSb3VuZGVkID0gKG51bWJlcikgPT4ge1xuLy8gICByZXR1cm4gbnVtYmVyID09PSBNYXRoLnJvdW5kKG51bWJlcik7XG4vLyB9XG5cbmV4cG9ydCBjb25zdCB0cmFuc2xhdGVGbG93UmF0ZSA9IChmbG93X3JhdGVfdW5pdCkgPT4ge1xuICByZXR1cm4gaTE4bi50KFxuICAgIGBkYXNoYm9hcmRfdjIucHJvZmlsZS5mbG93X3JhdGVfdW5pdF9vcHRpb25zLiR7XG4gICAgICBmbG93X3JhdGVfdW5pdC5pbmNsdWRlcygnZ2QnKSA/ICdnZCcgOiBmbG93X3JhdGVfdW5pdFxuICAgIH1gLFxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZU1hcmtlckV2ZW50cyA9IChcbiAgbWFwLFxuICBwb2ludCxcbiAgcG9pbnRDdXN0b21JY29uLFxuICBoYW5kbGVDbGljayxcbikgPT4ge1xuICBsZXQgdG9vbHRpcFZpc2libGUgPSBmYWxzZTtcblxuICBtYXAub24oJ3pvb21zdGFydCcsIGZ1bmN0aW9uICgpIHtcbiAgICBtYXAuY2xvc2VQb3B1cCgpO1xuICB9KTtcblxuICBwb2ludEN1c3RvbUljb24ub24oJ3BvcHVwY2xvc2UnLCAoKSA9PiB7XG4gICAgLy8gc2V0SWNvbihwb2ludEN1c3RvbUljb24sIGZhbHNlLCBwb2ludCk7XG4gICAgdG9vbHRpcFZpc2libGUgPSBmYWxzZTtcbiAgfSk7XG5cbiAgcG9pbnRDdXN0b21JY29uLm9uKCdwb3B1cG9wZW4nLCAoKSA9PiB7XG4gICAgLy8gc2V0SWNvbihwb2ludEN1c3RvbUljb24sIHRydWUsIHBvaW50KTtcbiAgICB0b29sdGlwVmlzaWJsZSA9IHRydWU7XG4gIH0pO1xuXG4gIHBvaW50Q3VzdG9tSWNvbi5vbignbW91c2VvdmVyJywgKCkgPT4ge1xuICAgIGlmICh0b29sdGlwVmlzaWJsZSkgcmV0dXJuO1xuXG4gICAgc2V0SWNvbihwb2ludEN1c3RvbUljb24sIHRydWUsIHBvaW50KTtcbiAgICB0b29sdGlwVmlzaWJsZSA9IHRydWU7XG4gIH0pO1xuXG4gIHBvaW50Q3VzdG9tSWNvbi5vbignbW91c2VvdXQnLCAoKSA9PiB7XG4gICAgaWYgKHBvaW50Q3VzdG9tSWNvbi5pc1BvcHVwT3BlbigpKSByZXR1cm47XG5cbiAgICBzZXRJY29uKHBvaW50Q3VzdG9tSWNvbiwgZmFsc2UsIHBvaW50KTtcbiAgICB0b29sdGlwVmlzaWJsZSA9IGZhbHNlO1xuICB9KTtcblxuICBpZiAodHlwZW9mIGhhbmRsZUNsaWNrID09PSAnZnVuY3Rpb24nKSB7XG4gICAgcG9pbnRDdXN0b21JY29uLm9uKCdjbGljaycsICgpID0+IHtcbiAgICAgIGhhbmRsZUNsaWNrKHBvaW50Q3VzdG9tSWNvbi5rYW5kb19vYmplY3RfaWQpO1xuXG4gICAgICBpZiAocG9pbnRJc0ZhY3RvcnkocG9pbnQpKSB7XG4gICAgICAgIHNlbmRBbmFseXRpY3NFdmVudCgnTWFwIFZpZXcgLSBGYWN0b3J5IGNsaWNrZWQnLCAnbWFwJywge1xuICAgICAgICAgIHBvaW50X2lkOiBwb2ludC5pZCxcbiAgICAgICAgICBwb2ludF9uYW1lOiBwb2ludC5uYW1lLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGJpbmRQb3B1cFRvTWFya2VyID0gKHBvaW50LCBsYXllckdyb3VwLCBmbG93X3JhdGVfdW5pdCkgPT4ge1xuICBsZXQgY29udGVudCA9IGBcbiAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnQnPlxuICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2hlYWRlcic+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi1jb250ZW50X19oZWFkZXJfX3RpdGxlc1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J21haW4tY29udGVudF9faGVhZGVyX190aXRsZXNfX3RpdGxlJz4ke1xuICAgICAgICAgICAgICAgICAgcG9pbnQubmFtZVxuICAgICAgICAgICAgICAgIH08L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2hlYWRlcl9fdGl0bGVzX19zdWJ0aXRsZSc+JHtcbiAgICAgICAgICAgICAgICAgIHBvaW50Lmdyb3VwLnNlY3Rvcl9uYW1lXG4gICAgICAgICAgICAgICAgfTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2JvZHknPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz0nbWFpbi1jb250ZW50X19ib2R5X19pdGVtJz5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2JvZHlfX2l0ZW1fX2ljb24nPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz0nJHt3YXRlclJldXNlSWNvbn0nIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nbWFpbi1jb250ZW50X19ib2R5X19pdGVtX190aXRsZXMnPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nbWFpbi1jb250ZW50X19ib2R5X19pdGVtX190aXRsZXNfX3RpdGxlJz5cbiAgICAgICAgICAgICAgICAgICAgJHtnZXRGbG93UmF0ZShwb2ludC5ncm91cC53YXRlcl9kaXNjaGFyZ2UsIGZsb3dfcmF0ZV91bml0KX1cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nbWFpbi1jb250ZW50X19ib2R5X19pdGVtX190aXRsZXNfX3N1YnRpdGxlJz4ke2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgJ3dhdGVyX2Rpc2NoYXJnZScsXG4gICAgICAgICAgICAgICAgICApfTwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIGA7XG5cbiAgbGF5ZXJHcm91cC5iaW5kUG9wdXAoY29udGVudCwge1xuICAgIGNsYXNzTmFtZTogJ3BvaW50LW1hcmtlci1wb3B1cCcsXG4gICAgbWluV2lkdGg6ICcyMTRweCcsXG4gICAgbWF4V2lkdGg6ICcyMTRweCcsXG4gICAgY2xvc2VCdXR0b246IHRydWUsXG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEZsb3dSYXRlID0gKFxuICB3YXRlckNvbnN1bXB0aW9uOiBudW1iZXIsXG4gIGZsb3dSYXRlVW5pdDogc3RyaW5nLFxuICBpc1JvdW5kOiBib29sZWFuID0gZmFsc2UsXG4pID0+IHtcbiAgaWYgKHdhdGVyQ29uc3VtcHRpb24gPiAwKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIGNhbGN1bGF0ZVdhdGVyQ29uc3VtcHRpb24oZmxvd1JhdGVVbml0LCB3YXRlckNvbnN1bXB0aW9uLCBpc1JvdW5kKSArXG4gICAgICAnICcgK1xuICAgICAgdHJhbnNsYXRlRmxvd1JhdGUoZmxvd1JhdGVVbml0KVxuICAgICk7XG4gIH1cbiAgcmV0dXJuIGkxOG4udCgnZXZlbnRzX292ZXJ2aWV3LnNldmVyaXRpZXMudW5rbm93bicpO1xufTtcblxuZXhwb3J0IGNvbnN0IHJlbW92ZUxheWVyR3JvdXAgPSAobWFwLCBsYXllckdyb3VwKSA9PiB7XG4gIGlmIChtYXAuaGFzTGF5ZXIobGF5ZXJHcm91cCkpIHtcbiAgICBtYXAucmVtb3ZlTGF5ZXIobGF5ZXJHcm91cCk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBhZGRMYXllckdyb3VwID0gKG1hcCwgbGF5ZXJHcm91cCkgPT4ge1xuICBpZiAoIW1hcC5oYXNMYXllcihsYXllckdyb3VwKSkge1xuICAgIG1hcC5hZGRMYXllcihsYXllckdyb3VwKTtcbiAgfSBlbHNlIHtcbiAgICByZW1vdmVMYXllckdyb3VwKG1hcCwgbGF5ZXJHcm91cCk7XG4gICAgYWRkTGF5ZXJHcm91cChtYXAsIGxheWVyR3JvdXApO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgcG9pbnRJc1dXVFAgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICByZXR1cm4gcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50Jztcbn07XG5cbmV4cG9ydCBjb25zdCBwb2ludElzRmFjdG9yeSA9IChwb2ludDogSVBvaW50KSA9PiB7XG4gIHJldHVybiBpc0ZhY3RvcnlUeXBlKHBvaW50Lmdyb3VwLnR5cGUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzRmFjdG9yeVR5cGUgPSAodHlwZTogc3RyaW5nKSA9PiB7XG4gIHJldHVybiB0eXBlID09PSAnR3JvdXBzOjpGYWN0b3J5Jztcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQ0EsSUFBQUEsUUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQTJDLElBQUFFLFdBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUFBLElBQUFHLGFBQUEsR0FBQUosc0JBQUEsQ0FBQUMsT0FBQTtBQUFBLElBQUFJLFdBQUEsR0FBQUwsc0JBQUEsQ0FBQUMsT0FBQTtBQUFBLElBQUFLLGdCQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFPM0MsSUFBQU0sZ0JBQUEsR0FBQVAsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFPLGtCQUFBLEdBQUFSLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUSxvQkFBQSxHQUFBVCxzQkFBQSxDQUFBQyxPQUFBO0FBQXlGLElBQUFTLGFBQUEsR0FBQVYsc0JBQUEsQ0FBQUMsT0FBQTtBQUFBLElBQUFVLFlBQUEsR0FBQVgsc0JBQUEsQ0FBQUMsT0FBQTtBQUFBLElBQUFXLFlBQUEsR0FBQVosc0JBQUEsQ0FBQUMsT0FBQTtBQUFBLElBQUFZLGdCQUFBLEdBQUFiLHNCQUFBLENBQUFDLE9BQUE7QUFBQSxJQUFBYSxTQUFBLEdBQUFkLHNCQUFBLENBQUFDLE9BQUE7QUFBQSxJQUFBYyxpQkFBQSxHQUFBZixzQkFBQSxDQUFBQyxPQUFBO0FBQUEsSUFB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
|
|
485
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2kxOG4iLCJfYmx1ZUNpcmNsZSIsIl9zYW1wbGluZ0ljb24iLCJfcGlua0NpcmNsZSIsIl9vYnNlcnZhdGlvbkljb24iLCJfcmVkUGluUmVkU2hhZG93IiwiX3doaXRlUGluUmVkU2hhZG93IiwiX3doaXRlUGluQmxhY2tTaGFkb3ciLCJfeWVsbG93Q2lyY2xlIiwiX2ZhY3RvcnlJY29uIiwiX2dyZWVuQ2lyY2xlIiwiX3B1bXBTdGF0aW9uSWNvbiIsIl9waW5XYXRlciIsIl9icmlnaHRCbHVlQ2lyY2xlIiwiX1dXVFBJY29uIiwiX3dhdGVyTm9CYWNrZ3JvdW5kIiwiX3doaXRlUG9pbnQiLCJfUG9pbnRJY29uIiwiX3dhdGVyX3JldXNlIiwiX3V0aWxzIiwiaXNDb2xsZWN0b3JGb2N1c2VkIiwicG9pbnQiLCJldmVudCIsIl9ldmVudCRvYnNlcnZhdGlvbnMiLCJvYnNlcnZhdGlvbnMiLCJsZW5ndGgiLCJpZCIsInBvaW50X2lkIiwiZXhwb3J0cyIsImJ1aWxkTWFuaG9sZVRvb2x0aXBTdHJpbmciLCJzdHJpbmciLCJjb25jYXQiLCJncm91cCIsIm5hbWUiLCJwb2ludElzRmFjdG9yeSIsInNlY3Rvcl9uYW1lIiwid2F0ZXJfZGlzY2hhcmdlIiwiYnViYmxlRm9yV1dUUCIsImFyZ3MiLCJwb2ludEN1c3RvbUljb24iLCJMIiwibWFya2VyIiwibWFya2VyTG9jYXRpb24iLCJpY29uIiwiZ2V0SWNvbiIsInd3dHBQb2ludCIsInJpc2VPbkhvdmVyIiwiaGFzX2RldmljZSIsImhhc19zYW1wbGVyIiwiY3JlYXRlQnViYmxlUG9pbnQiLCJtYXAiLCJob3ZlcmVkIiwibGF5ZXJHcm91cCIsImZsb3dfcmF0ZV91bml0IiwiYXJndW1lbnRzIiwidW5kZWZpbmVkIiwiaGFuZGxlQ2xpY2siLCJtYXJrZXJPbk1hcCIsImdldExheWVycyIsImZpbmQiLCJsYXllciIsImthbmRvX29iamVjdF9pZCIsInN1YnRpdGxlIiwidHlwZSIsInBvaW50SXNXV1RQIiwiZ2V0UG9pbnRJY29uQnlUeXBlIiwiYWRkTGF5ZXIiLCJiaW5kUG9wdXBUb01hcmtlciIsImhhbmRsZU1hcmtlckV2ZW50cyIsImNyZWF0ZU1hbmhvbGVQb2ludCIsInBvaW50SWNvbiIsIkljb24iLCJpY29uVXJsIiwid2hpdGVQb2ludCIsImljb25TaXplIiwiaWNvbkFuY2hvciIsIm1hbmhvbGVJY29uIiwiTWFya2VyIiwiYmluZFRvb2x0aXAiLCJtYXRjaEljb25Ub1BvaW50IiwiY29tYmluZWRGYWN0b3J5SWNvbiIsIm1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlIiwidW5zaGlmdCIsInNlbGVjdGVkQmFja2dyb3VuZCIsIm1hcmtlckJlbG9uZ3NUb1NvdXJjZSIsImJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQiLCJzdGFuZGFyZEJhY2tncm91bmQiLCJjb21iaW5lZFB1bXBTdGF0aW9uSWNvbiIsImNvbWJpbmVkV1dUUEljb24iLCJyZWRQaW5SZWRTaGFkb3ciLCJ3YXRlckljb25Ob0JhY2tncm91bmQiLCJwb3B1cEFuY2hvciIsImNvbWJpbmVkQ29sbGVjdG9yc0ljb24iLCJzZWNvbmRhcnkiLCJ0aGlyZCIsIndoaXRlUGluQmxhY2tTaGFkb3ciLCJ5ZWxsb3dDaXJjbGVVUkwiLCJwbGFudEljb25VUkwiLCJncmVlbkNpcmNsZVVSTCIsInB1bXBTdGF0aW9uSWNvblVSTCIsImNvbGxlY3Rvckljb24iLCJicmlnaHRCbHVlQ2lyY2xlVVJMIiwiV1dUUEljb25VUkwiLCJ3aGl0ZVBpblJlZFNoYWRvdyIsInNvdXJjZSIsInNvdXJjZXMiLCJmaWx0ZXIiLCJzZWxlY3RlZF9zb3VyY2UiLCJjcmVhdGVTYW1wbGluZ0ljb25Qb2ludCIsInNlY29uZGFyeUljb24iLCJzYW1wbGluZ0ljb24iLCJibHVlQ2lyY2xlVVJMIiwic2FtcGxpbmdJY29uVVJMIiwidGhpcmRJY29uIiwiZm9yRWFjaCIsImluZGV4IiwiY3JlYXRlT2JzZXJ2YXRpb25JY29uUG9pbnQiLCJvYnNlcnZhdGlvbkljb24iLCJwaW5rQ2lyY2xlVVJMIiwib2JzZXJ2YXRpb25JY29uVVJMIiwiY3JlYXRlU2FtcGxpbmdJY29ucyIsInNhbXBsZWRQb2ludElkcyIsInNhbXBsaW5ncyIsInMiLCJpbmNsdWRlcyIsInBvcHVwQ29udGVudCIsIm9icyIsIkdyYXBoSWNvbiIsImkxOG4iLCJ0Iiwic2V2ZXJpdHkiLCJjbGlja2VkIiwiaXNXV1RQIiwic3VidGl0bGVUZXh0Iiwic2V0SWNvbiIsImVsZW1lbnQiLCJjYWxjdWxhdGVXYXRlckNvbnN1bXB0aW9uIiwid2F0ZXJDb25zdW1wdGlvbiIsInJvdW5kX3RvX25lYXJlc3RfayIsImNhbGN1bGF0ZWQiLCJ0b0ZpeGVkIiwicm91bmRUb05lYXJlc3RUaG91c2FuZCIsInBhcnNlRmxvYXQiLCJ0b0xvY2FsZVN0cmluZyIsIk1hdGgiLCJyb3VuZCIsIm51bWJlciIsInJvdW5kZWRUaG91c2FuZHMiLCJyb3VuZGVkVmFsdWUiLCJ0cmFuc2xhdGVGbG93UmF0ZSIsInRvb2x0aXBWaXNpYmxlIiwib24iLCJjbG9zZVBvcHVwIiwiaXNQb3B1cE9wZW4iLCJzZW5kQW5hbHl0aWNzRXZlbnQiLCJwb2ludF9uYW1lIiwiY29udGVudCIsIndhdGVyUmV1c2VJY29uIiwiZ2V0Rmxvd1JhdGUiLCJiaW5kUG9wdXAiLCJjbGFzc05hbWUiLCJtaW5XaWR0aCIsIm1heFdpZHRoIiwiY2xvc2VCdXR0b24iLCJmbG93UmF0ZVVuaXQiLCJpc1JvdW5kIiwicmVtb3ZlTGF5ZXJHcm91cCIsImhhc0xheWVyIiwicmVtb3ZlTGF5ZXIiLCJhZGRMYXllckdyb3VwIiwiaXNGYWN0b3J5VHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9wb2ludHMvUG9pbnRVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgR3JhcGhJY29uIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9saW5lLWNoYXJ0LnN2Zyc7XG5pbXBvcnQgTCwgeyBMYXRMbmdUdXBsZSB9IGZyb20gJ2xlYWZsZXQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnLi4vLi4vLi4vdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IGJsdWVDaXJjbGVVUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL2JsdWUtY2lyY2xlLnN2Zyc7XG5pbXBvcnQgc2FtcGxpbmdJY29uVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9zYW1wbGluZy1pY29uLnN2Zyc7XG5pbXBvcnQgcGlua0NpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvcGluay1jaXJjbGUuc3ZnJztcbmltcG9ydCBvYnNlcnZhdGlvbkljb25VUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL29ic2VydmF0aW9uLWljb24uc3ZnJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCByZWRQaW5SZWRTaGFkb3cgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3JlZC1waW4tcmVkLXNoYWRvdy5wbmcnO1xuaW1wb3J0IHdoaXRlUGluUmVkU2hhZG93IGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy93aGl0ZS1waW4tcmVkLXNoYWRvdy5wbmcnO1xuaW1wb3J0IHdoaXRlUGluQmxhY2tTaGFkb3cgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3doaXRlLXBpbi1ibGFjay1zaGFkb3cucG5nJztcbmltcG9ydCB5ZWxsb3dDaXJjbGVVUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3llbGxvdy1jaXJjbGUuc3ZnJztcbmltcG9ydCBwbGFudEljb25VUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL2ZhY3RvcnktaWNvbi5zdmcnO1xuaW1wb3J0IGdyZWVuQ2lyY2xlVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9ncmVlbi1jaXJjbGUuc3ZnJztcbmltcG9ydCBwdW1wU3RhdGlvbkljb25VUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3B1bXAtc3RhdGlvbi1pY29uLnN2Zyc7XG5pbXBvcnQgY29sbGVjdG9ySWNvbiBmcm9tICcuLi8uLi8uLi9hc3NldHMvbWFwL3Bpbi13YXRlci5zdmcnO1xuaW1wb3J0IGJyaWdodEJsdWVDaXJjbGVVUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL2JyaWdodC1ibHVlLWNpcmNsZS5zdmcnO1xuaW1wb3J0IFdXVFBJY29uVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9XV1RQLWljb24uc3ZnJztcbmltcG9ydCB3YXRlckljb25Ob0JhY2tncm91bmQgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3dhdGVyLW5vLWJhY2tncm91bmQuc3ZnJztcbmltcG9ydCB3aGl0ZVBvaW50IGZyb20gJy4uLy4uLy4uL2Fzc2V0cy93aGl0ZS1wb2ludC5wbmcnO1xuaW1wb3J0IHsgZ2V0UG9pbnRJY29uQnlUeXBlIH0gZnJvbSAnLi9Qb2ludEljb24nO1xuaW1wb3J0IHdhdGVyUmV1c2VJY29uIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9pY29ucy93YXRlcl9yZXVzZS5zdmcnO1xuaW1wb3J0IHsgc2VuZEFuYWx5dGljc0V2ZW50IH0gZnJvbSAnc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC91dGlscyc7XG5cbmV4cG9ydCBjb25zdCBpc0NvbGxlY3RvckZvY3VzZWQgPSAocG9pbnQ6IElQb2ludCwgZXZlbnQ6IElFdmVudCkgPT4ge1xuICByZXR1cm4gKFxuICAgIGV2ZW50Py5vYnNlcnZhdGlvbnM/Lmxlbmd0aCA9PT0gMSAmJlxuICAgIHBvaW50LmlkID09PSBldmVudC5vYnNlcnZhdGlvbnNbMF0ucG9pbnRfaWRcbiAgKTtcbn07XG5cbmNvbnN0IGJ1aWxkTWFuaG9sZVRvb2x0aXBTdHJpbmcgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICBsZXQgc3RyaW5nID0gYCR7cG9pbnQuZ3JvdXAubmFtZX0gYDtcblxuICBpZiAocG9pbnRJc0ZhY3RvcnkocG9pbnQpKSB7XG4gICAgc3RyaW5nICs9IGA8YnIvPlNlY3RvcjogJHtwb2ludC5ncm91cC5zZWN0b3JfbmFtZX1gO1xuICAgIHN0cmluZyArPSBgPGJyLz5XYXRlciBDb25zdW1wdGlvbjogJHtwb2ludC5ncm91cC53YXRlcl9kaXNjaGFyZ2V9YDtcbiAgfSBlbHNlIHtcbiAgICBzdHJpbmcgPSBgJHtwb2ludC5uYW1lfWA7XG4gIH1cblxuICByZXR1cm4gc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1YmJsZUZvcldXVFAgPSAoYXJncykgPT4ge1xuICBjb25zdCBwb2ludEN1c3RvbUljb246IEwuTWFya2VyID0gTC5tYXJrZXIoYXJncy5tYXJrZXJMb2NhdGlvbiwge1xuICAgIGljb246IGdldEljb24oYXJncy53d3RwUG9pbnQsIGZhbHNlKSxcbiAgICByaXNlT25Ib3ZlcjogdHJ1ZSxcbiAgfSk7XG4gIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBhcmdzLnd3dHBQb2ludC5pZDtcbiAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdQb2ludCc7XG4gIHBvaW50Q3VzdG9tSWNvblsna2FuZG9faGFzX2RldmljZSddID0gYXJncy53d3RwUG9pbnQuaGFzX2RldmljZTtcbiAgcG9pbnRDdXN0b21JY29uWydrYW5kb19oYXNfc2FtcGxlciddID0gYXJncy53d3RwUG9pbnQuaGFzX3NhbXBsZXI7XG5cbiAgcmV0dXJuIHBvaW50Q3VzdG9tSWNvbjtcbn07XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVCdWJibGVQb2ludCA9IChcbiAgbWFya2VyTG9jYXRpb246IExhdExuZ1R1cGxlLFxuICBwb2ludDogSVBvaW50LFxuICBtYXAsXG4gIGhvdmVyZWQ/LFxuICBsYXllckdyb3VwPyxcbiAgZmxvd19yYXRlX3VuaXQgPSAnZ2RfdXMnLFxuICBoYW5kbGVDbGljaz8sXG4pID0+IHtcbiAgY29uc3QgbWFya2VyT25NYXAgPSBsYXllckdyb3VwXG4gICAgLmdldExheWVycygpXG4gICAgLmZpbmQoKGxheWVyKSA9PiBsYXllci5rYW5kb19vYmplY3RfaWQgPT09IHBvaW50LmlkKTtcblxuICBpZiAoIW1hcmtlck9uTWFwKSB7XG4gICAgY29uc3Qgc3VidGl0bGUgPSBwb2ludElzRmFjdG9yeShwb2ludCkgPyBwb2ludC5ncm91cC5zZWN0b3JfbmFtZSA6ICcnO1xuICAgIGNvbnN0IHR5cGUgPVxuICAgICAgcG9pbnQuaGFzX2RldmljZSB8fCBwb2ludElzV1dUUChwb2ludClcbiAgICAgICAgPyBwb2ludC5ncm91cC50eXBlXG4gICAgICAgIDogJ0dyb3Vwczo6ZGVmYXVsdCc7XG4gICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogTC5NYXJrZXIgPSBMLm1hcmtlcihtYXJrZXJMb2NhdGlvbiwge1xuICAgICAgaWNvbjogZ2V0UG9pbnRJY29uQnlUeXBlKFxuICAgICAgICB0eXBlLFxuICAgICAgICBwb2ludC5uYW1lLFxuICAgICAgICBzdWJ0aXRsZSxcbiAgICAgICAgZmFsc2UsXG4gICAgICAgIHRydWUsXG4gICAgICAgIGZhbHNlLFxuICAgICAgICBwb2ludC5oYXNfc2FtcGxlcixcbiAgICAgICksXG4gICAgICByaXNlT25Ib3ZlcjogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50JztcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2hhc19kZXZpY2UnXSA9IHBvaW50Lmhhc19kZXZpY2U7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19oYXNfc2FtcGxlciddID0gcG9pbnQuaGFzX3NhbXBsZXI7XG4gICAgaWYgKGhvdmVyZWQpIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnRIb3ZlcmVkJztcblxuICAgIGxheWVyR3JvdXAuYWRkTGF5ZXIocG9pbnRDdXN0b21JY29uKTtcbiAgICBpZiAocG9pbnRJc0ZhY3RvcnkocG9pbnQpKSB7XG4gICAgICBiaW5kUG9wdXBUb01hcmtlcihwb2ludCwgcG9pbnRDdXN0b21JY29uLCBmbG93X3JhdGVfdW5pdCk7XG4gICAgfVxuXG4gICAgaGFuZGxlTWFya2VyRXZlbnRzKG1hcCwgcG9pbnQsIHBvaW50Q3VzdG9tSWNvbiwgaGFuZGxlQ2xpY2spO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWFuaG9sZVBvaW50ID0gKFxuICBtYXJrZXJMb2NhdGlvbjogTGF0TG5nVHVwbGUsXG4gIHBvaW50OiBJUG9pbnQsXG4gIG1hcCxcbiAgaG92ZXJlZD8sXG4gIGxheWVyR3JvdXA/LFxuKSA9PiB7XG4gIGxldCBwb2ludEljb24gPSBuZXcgTC5JY29uKHtcbiAgICBpY29uVXJsOiB3aGl0ZVBvaW50LFxuICAgIGljb25TaXplOiBbOSwgOV0sXG4gICAgaWNvbkFuY2hvcjogWzQuNSwgNC41XSxcbiAgfSk7XG4gIGxldCBtYW5ob2xlSWNvbjogYW55ID0gbmV3IEwuTWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgaWNvbjogcG9pbnRJY29uLFxuICAgIHJpc2VPbkhvdmVyOiB0cnVlLFxuICB9KTtcbiAgbWFuaG9sZUljb24uYmluZFRvb2x0aXAoYnVpbGRNYW5ob2xlVG9vbHRpcFN0cmluZyhwb2ludCkpO1xuICBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50JztcbiAgbWFuaG9sZUljb25bJ2thbmRvX3BvaW50X3R5cGUnXSA9ICdNYW5ob2xlJztcbiAgbWFuaG9sZUljb25bJ2thbmRvX2hhc19kZXZpY2UnXSA9IHBvaW50Lmhhc19kZXZpY2U7XG4gIG1hbmhvbGVJY29uWydrYW5kb19oYXNfc2FtcGxlciddID0gcG9pbnQuaGFzX3NhbXBsZXI7XG4gIGlmIChob3ZlcmVkKSBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnRIb3ZlcmVkJztcbiAgbGF5ZXJHcm91cC5hZGRMYXllcihtYW5ob2xlSWNvbik7XG59O1xuXG4vLyAqKipDb25zaWRlciByZW1vdmluZyB0aGlzIGZ1bmN0aW9uIGl0IGlzIG5vdCB1c2VkIGZvciBtb3JlIHRoYW4gdHdvIHllYXJzKioqXG5leHBvcnQgY29uc3QgbWF0Y2hJY29uVG9Qb2ludCA9IChwb2ludDogSVBvaW50LCBldmVudDogSUV2ZW50KSA9PiB7XG4gIHN3aXRjaCAocG9pbnQuZ3JvdXAudHlwZSkge1xuICAgIGNhc2UgJ0dyb3Vwczo6RmFjdG9yeSc6XG4gICAgICBpZiAoY29tYmluZWRGYWN0b3J5SWNvbi5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZEZhY3RvcnlJY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRGYWN0b3J5SWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29tYmluZWRGYWN0b3J5SWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gY29tYmluZWRGYWN0b3J5SWNvbjtcbiAgICBjYXNlICdHcm91cHM6OlB1bXBTdGF0aW9uJzpcbiAgICAgIGlmIChjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkUHVtcFN0YXRpb25JY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gY29tYmluZWRQdW1wU3RhdGlvbkljb247XG4gICAgY2FzZSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnOlxuICAgICAgaWYgKGNvbWJpbmVkV1dUUEljb24ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRXV1RQSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbWJpbmVkV1dUUEljb247XG5cbiAgICBjYXNlICdHcm91cHM6OkNvbGxlY3RvcnMnOlxuICAgICAgaWYgKGlzQ29sbGVjdG9yRm9jdXNlZChwb2ludCwgZXZlbnQpKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgTC5pY29uKHtcbiAgICAgICAgICAgIGljb25Vcmw6IHJlZFBpblJlZFNoYWRvdyxcbiAgICAgICAgICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgICAgICAgICBpY29uQW5jaG9yOiBbMzAsIDUyXSxcbiAgICAgICAgICB9KSxcblxuICAgICAgICAgIEwuaWNvbih7XG4gICAgICAgICAgICBpY29uVXJsOiB3YXRlckljb25Ob0JhY2tncm91bmQsXG4gICAgICAgICAgICBpY29uU2l6ZTogWzAsIDBdLFxuXG4gICAgICAgICAgICBpY29uQW5jaG9yOiBbMjIsIDQ0XSxcbiAgICAgICAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbWJpbmVkQ29sbGVjdG9yc0ljb247XG5cbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIG51bGw7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBzdGFuZGFyZEJhY2tncm91bmQgPSAoXG4gIHNlY29uZGFyeTogYm9vbGVhbiA9IGZhbHNlLFxuICB0aGlyZDogYm9vbGVhbiA9IGZhbHNlLFxuKSA9PiB7XG4gIHJldHVybiBMLmljb24oe1xuICAgIGljb25Vcmw6IHdoaXRlUGluQmxhY2tTaGFkb3csXG4gICAgaWNvblNpemU6IHNlY29uZGFyeSA/IFswLCAwXSA6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnkgJiYgdGhpcmQgPyBbLTIsIDE5XSA6IHNlY29uZGFyeSA/IFstMiwgNDRdIDogWzIwLCA0Ml0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZEZhY3RvcnlJY29uID0gW1xuICBMLmljb24oe1xuICAgIGljb25Vcmw6IHllbGxvd0NpcmNsZVVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuICBMLmljb24oe1xuICAgIGljb25Vcmw6IHBsYW50SWNvblVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFs1LCAzMF0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbl07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbiA9IFtcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBncmVlbkNpcmNsZVVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuICBMLmljb24oe1xuICAgIGljb25Vcmw6IHB1bXBTdGF0aW9uSWNvblVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFs3LCAzMl0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbl07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZENvbGxlY3RvcnNJY29uID0gW1xuICBMLmljb24oe1xuICAgIGljb25Vcmw6IGNvbGxlY3Rvckljb24sXG4gICAgaWNvblNpemU6IFswLCAwXSxcblxuICAgIGljb25BbmNob3I6IFsyNSwgNTBdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG5dO1xuXG5leHBvcnQgY29uc3QgY29tYmluZWRXV1RQSWNvbiA9IFtcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBicmlnaHRCbHVlQ2lyY2xlVVJMLFxuICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgaWNvbkFuY2hvcjogWzEwLjcsIDMzLjddLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG4gIEwuaWNvbih7XG4gICAgaWNvblVybDogV1dUUEljb25VUkwsXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbOCwgMzFdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG5dO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0ZWRCYWNrZ3JvdW5kID0gKCkgPT4ge1xuICByZXR1cm4gTC5pY29uKHtcbiAgICBpY29uVXJsOiByZWRQaW5SZWRTaGFkb3csXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbMzIsIDU0XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQgPSAoKSA9PiB7XG4gIHJldHVybiBMLmljb24oe1xuICAgIGljb25Vcmw6IHdoaXRlUGluUmVkU2hhZG93LFxuICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgaWNvbkFuY2hvcjogWzMyLCA1NF0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSA9IChldmVudDogSUV2ZW50LCBwb2ludDogSVBvaW50KSA9PiB7XG4gIGxldCBzb3VyY2U7XG5cbiAgaWYgKGV2ZW50ICE9PSBudWxsICYmIGV2ZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICBzb3VyY2UgPSBldmVudC5zb3VyY2VzLmZpbHRlcigoc291cmNlKSA9PiBzb3VyY2UucG9pbnRfaWQgPT09IHBvaW50LmlkKVswXTtcbiAgfVxuXG4gIHJldHVybiBldmVudCAhPT0gbnVsbCAmJiBzb3VyY2UgJiYgZXZlbnQuc2VsZWN0ZWRfc291cmNlID09PSBzb3VyY2UucG9pbnRfaWQ7XG59O1xuXG5leHBvcnQgY29uc3QgbWFya2VyQmVsb25nc1RvU291cmNlID0gKGV2ZW50OiBJRXZlbnQsIHBvaW50OiBJUG9pbnQpID0+IHtcbiAgaWYgKGV2ZW50ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgcmV0dXJuIChcbiAgICBldmVudCAhPT0gbnVsbCAmJlxuICAgIGV2ZW50LnNvdXJjZXMuZmlsdGVyKChzb3VyY2UpID0+IHNvdXJjZS5wb2ludF9pZCA9PT0gcG9pbnQuaWQpWzBdXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlU2FtcGxpbmdJY29uUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgc2Vjb25kYXJ5SWNvbjogYm9vbGVhbixcbiAgbWFwLFxuICBwb2ludDogSVBvaW50LFxuICBldmVudDogSUV2ZW50LFxuICBob3ZlcmVkPyxcbiAgbGF5ZXJHcm91cD8sXG4pID0+IHtcbiAgLy8gaWNvblNpemU6IFt3aWR0aCwgaGVpZ2h0XSxcbiAgLy8gSWNvbiBBbmNob3I6IFsoLXJpZ2h0KSgrbGVmdCksICgtZG93bikoK3VwKV1cbiAgbGV0IHNhbXBsaW5nSWNvbiA9IFtcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogYmx1ZUNpcmNsZVVSTCxcbiAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzAsIDBdIDogWzAsIDBdLFxuICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstNywgMTVdIDogWzEwLjcsIDMzLjddLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBzYW1wbGluZ0ljb25VUkwsXG4gICAgICBpY29uU2l6ZTogc2Vjb25kYXJ5SWNvbiA/IFswLCAwXSA6IFswLCAwXSxcbiAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTgsIDEzXSA6IFs1LCAzMF0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gIF07XG5cbiAgbGV0IHRoaXJkSWNvbiA9IGZhbHNlO1xuICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoZXZlbnQsIHBvaW50KSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgIHNhbXBsaW5nSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgIHNhbXBsaW5nSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gIH0gZWxzZSB7XG4gICAgdGhpcmRJY29uID0gdHJ1ZTtcbiAgICBzYW1wbGluZ0ljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoc2Vjb25kYXJ5SWNvbiwgdGhpcmRJY29uKSk7XG4gIH1cblxuICBzYW1wbGluZ0ljb24uZm9yRWFjaCgoaWNvbiwgaW5kZXgpID0+IHtcbiAgICBsZXQgcG9pbnRDdXN0b21JY29uOiBhbnkgPSBMLm1hcmtlcihtYXJrZXJMb2NhdGlvbiwge1xuICAgICAgaWNvbjogaWNvbixcbiAgICAgIHJpc2VPbkhvdmVyOiBmYWxzZSxcbiAgICB9KTtcbiAgICBwb2ludEN1c3RvbUljb24uYmluZFRvb2x0aXAoYnVpbGRNYW5ob2xlVG9vbHRpcFN0cmluZyhwb2ludCkpO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9faW5kZXhfb2JqZWN0J10gPSBpbmRleDtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2Zld19sYXllcl9pY29uJ10gPSB0cnVlO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fc2Vjb25kYXJ5J10gPSB0aGlyZEljb24gPyBmYWxzZSA6IHNlY29uZGFyeUljb247XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb190aGlyZCddID0gdGhpcmRJY29uO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ1NhbXBsaW5nJztcbiAgICBpZiAoaG92ZXJlZCkgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdTYW1wbGluZ0hvdmVyZWQnO1xuICAgIGxheWVyR3JvdXAuYWRkTGF5ZXIocG9pbnRDdXN0b21JY29uKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlT2JzZXJ2YXRpb25JY29uUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgc2Vjb25kYXJ5SWNvbjogYm9vbGVhbixcbiAgbWFwLFxuICBwb2ludDogSVBvaW50LFxuICBldmVudDogSUV2ZW50LFxuICBob3ZlcmVkPyxcbiAgbGF5ZXJHcm91cD8sXG4pID0+IHtcbiAgLy8gaWNvblNpemU6IFt3aWR0aCwgaGVpZ2h0XSxcbiAgLy8gSWNvbiBBbmNob3I6IFsoLXJpZ2h0KSgrbGVmdCksICgtZG93bikoK3VwKV1cbiAgbGV0IG9ic2VydmF0aW9uSWNvbiA9IFtcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogcGlua0NpcmNsZVVSTCxcbiAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzAsIDBdIDogWzAsIDBdLFxuICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstNywgNDBdIDogWzEwLjcsIDMzLjddLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBvYnNlcnZhdGlvbkljb25VUkwsXG4gICAgICBpY29uU2l6ZTogc2Vjb25kYXJ5SWNvbiA/IFswLCAwXSA6IFswLCAwXSxcbiAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTgsIDM4XSA6IFs1LCAzMF0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gIF07XG5cbiAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICBvYnNlcnZhdGlvbkljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKGV2ZW50LCBwb2ludCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICBvYnNlcnZhdGlvbkljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICB9IGVsc2Uge1xuICAgIG9ic2VydmF0aW9uSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZChzZWNvbmRhcnlJY29uKSk7XG4gIH1cblxuICBvYnNlcnZhdGlvbkljb24uZm9yRWFjaCgoaWNvbiwgaW5kZXgpID0+IHtcbiAgICBsZXQgcG9pbnRDdXN0b21JY29uOiBhbnkgPSBMLm1hcmtlcihtYXJrZXJMb2NhdGlvbiwge1xuICAgICAgaWNvbjogaWNvbixcbiAgICAgIHJpc2VPbkhvdmVyOiBmYWxzZSxcbiAgICB9KTtcbiAgICBwb2ludEN1c3RvbUljb24uYmluZFRvb2x0aXAoYnVpbGRNYW5ob2xlVG9vbHRpcFN0cmluZyhwb2ludCkpO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9faW5kZXhfb2JqZWN0J10gPSBpbmRleDtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2Zld19sYXllcl9pY29uJ10gPSB0cnVlO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fc2Vjb25kYXJ5J10gPSBzZWNvbmRhcnlJY29uO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fdGhpcmQnXSA9IGZhbHNlO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ09ic2VydmF0aW9uJztcbiAgICBpZiAoaG92ZXJlZCkgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdPYnNlcnZhdGlvbkhvdmVyZWQnO1xuICAgIGxheWVyR3JvdXAuYWRkTGF5ZXIocG9pbnRDdXN0b21JY29uKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlU2FtcGxpbmdJY29ucyA9IChcbiAgbWFya2VyTG9jYXRpb246IExhdExuZ1R1cGxlLFxuICBldmVudDogSUV2ZW50LFxuICBwb2ludDogSVBvaW50LFxuICBtYXAsXG4gIGhvdmVyZWQsXG4gIGxheWVyR3JvdXA/LFxuKSA9PiB7XG4gIGxldCBzYW1wbGVkUG9pbnRJZHMgPSBldmVudC5zYW1wbGluZ3MubWFwKChzKSA9PiBzLnBvaW50X2lkKTtcbiAgaWYgKFxuICAgIGV2ZW50ICE9PSBudWxsICYmXG4gICAgZXZlbnQuc2FtcGxpbmdzLmxlbmd0aCAhPT0gMCAmJlxuICAgIHNhbXBsZWRQb2ludElkcy5pbmNsdWRlcyhwb2ludC5pZClcbiAgKSB7XG4gICAgY3JlYXRlU2FtcGxpbmdJY29uUG9pbnQoXG4gICAgICBtYXJrZXJMb2NhdGlvbixcbiAgICAgIG1hdGNoSWNvblRvUG9pbnQocG9pbnQsIGV2ZW50KSAhPT0gbnVsbCxcbiAgICAgIG1hcCxcbiAgICAgIHBvaW50LFxuICAgICAgZXZlbnQsXG4gICAgICBob3ZlcmVkLFxuICAgICAgbGF5ZXJHcm91cCxcbiAgICApO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgcG9wdXBDb250ZW50ID0gKG9iczogYW55LCBwb2ludDogSVBvaW50KSA9PiB7XG4gIGlmIChvYnMgPT09IG51bGwpIHtcbiAgICByZXR1cm4gYFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50LXBvcHVwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLWdyYXBoLWljb24gcG9wdXAtZ3JhcGgtaWNvbi0ke3BvaW50LmlkfVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIiR7R3JhcGhJY29ufVwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zaXRlLW5hbWVcIj48Yj4ke3BvaW50Lmdyb3VwLm5hbWV9PC9iPjwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxoci8+XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic2VjdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIGA7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGBcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldmVudC1wb3B1cFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1ncmFwaC1pY29uIHBvcHVwLWdyYXBoLWljb24tJHtvYnMuaWR9XCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiJHtHcmFwaEljb259XCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NpdGUtbmFtZVwiPjxiPiR7XG4gICAgICAgICAgICAgICAgICAgICAgcG9pbnQuZ3JvdXAubmFtZVxuICAgICAgICAgICAgICAgICAgICB9PC9iPjwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGBldmVudHNfb3ZlcnZpZXcuc2V2ZXJpdHlgLFxuICAgICAgICAgICAgICAgICAgICAgICAgKX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICdwb3B1cC1jb250ZW50X19zZXZlcml0eS0tJyArIG9icy5zZXZlcml0eVxuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktYlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXRpZXMuJHtvYnMuc2V2ZXJpdHl9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGhyIGNsYXNzPVwicG9wdXAtY29udGVudF9faHJcIiAvPlxuXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50X19kaXNjaGFyZ2UtdGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NldmVyaXR5LXBcIj4ke2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBldmVudHNfb3ZlcnZpZXcuZmlyc3Rfc2VlbmAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX06PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxiIGlkPVwiZmlyc3Qtc2Vlbi1wb3B1cFwiPjwvYj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3Lmxhc3Rfc2VlbmAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX06PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxiIGlkPVwibGFzdC1zZWVuLXBvcHVwXCI+PC9iPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBgO1xuICB9XG59O1xuXG5jb25zdCBnZXRJY29uID0gKHBvaW50OiBJUG9pbnQsIGNsaWNrZWQ6IGJvb2xlYW4sIHN1YnRpdGxlPzogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IGlzV1dUUCA9IHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6Oldhc3Rld2F0ZXJUcmVhdG1lbnRQbGFudCc7XG4gIGNvbnN0IHR5cGUgPVxuICAgIHBvaW50Lmhhc19kZXZpY2UgfHwgaXNXV1RQID8gcG9pbnQuZ3JvdXAudHlwZSA6ICdHcm91cHM6OmRlZmF1bHQnO1xuICBsZXQgc3VidGl0bGVUZXh0ID0gc3VidGl0bGUgPyBzdWJ0aXRsZSA6IHBvaW50Lmdyb3VwLnNlY3Rvcl9uYW1lO1xuICBpZiAoaXNXV1RQICYmICFwb2ludC5oYXNfZGV2aWNlKSB7XG4gICAgc3VidGl0bGVUZXh0ICs9IGAgKCR7aTE4bi50KFxuICAgICAgJ2Rhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC50b3BiYXIucXVhbGl0eS1zdW1tYXJ5LnVubW9uaXRvcmVkJyxcbiAgICApfSlgO1xuICB9XG4gIHJldHVybiBnZXRQb2ludEljb25CeVR5cGUoXG4gICAgdHlwZSxcbiAgICBwb2ludC5uYW1lLFxuICAgIHN1YnRpdGxlVGV4dCxcbiAgICBjbGlja2VkLFxuICAgICFjbGlja2VkLFxuICAgIGZhbHNlLFxuICAgIHBvaW50Lmhhc19zYW1wbGVyLFxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHNldEljb24gPSAoZWxlbWVudCwgY2xpY2tlZCwgcG9pbnQsIHN1YnRpdGxlID0gJycpID0+IHtcbiAgZWxlbWVudC5zZXRJY29uKGdldEljb24ocG9pbnQsIGNsaWNrZWQsIHN1YnRpdGxlKSk7XG59O1xuXG4vLyByb3VuZCB0byBuZWFyZXN0IHRob3VzYW5kIGlzIHVzZWQgd2hlbiB5b3Ugd2FudCB0byByb3VuZCB0aGUgd2F0ZXIgY29uc3VtcHRpb24gdG8gdGhlIG5lYXJlc3QgdGhvdXNhbmRcbi8vIGZvciBleGFtcGxlOiAyMzQsNTY3IC0+IDIzNSwwMDBcbmV4cG9ydCBjb25zdCBjYWxjdWxhdGVXYXRlckNvbnN1bXB0aW9uID0gKFxuICBmbG93X3JhdGVfdW5pdDogc3RyaW5nLFxuICB3YXRlckNvbnN1bXB0aW9uOiBudW1iZXIsXG4gIHJvdW5kX3RvX25lYXJlc3RfazogYm9vbGVhbiA9IGZhbHNlLFxuKSA9PiB7XG4gIGxldCBjYWxjdWxhdGVkID0gJzAnO1xuXG4gIGlmICh3YXRlckNvbnN1bXB0aW9uID4gMCkge1xuICAgIHN3aXRjaCAoZmxvd19yYXRlX3VuaXQpIHtcbiAgICAgIGNhc2UgJ20zZCc6XG4gICAgICAgIGNhbGN1bGF0ZWQgPSB3YXRlckNvbnN1bXB0aW9uLnRvRml4ZWQoMik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZ2RfdXMnOlxuICAgICAgICBjYWxjdWxhdGVkID0gKHdhdGVyQ29uc3VtcHRpb24gKiAyNjQuMTcyKS50b0ZpeGVkKDIpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2dkX3VrJzpcbiAgICAgICAgY2FsY3VsYXRlZCA9ICh3YXRlckNvbnN1bXB0aW9uICogMjE5Ljk2OSkudG9GaXhlZCgyKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIGlmIChyb3VuZF90b19uZWFyZXN0X2spIHtcbiAgICByZXR1cm4gcm91bmRUb05lYXJlc3RUaG91c2FuZChwYXJzZUZsb2F0KGNhbGN1bGF0ZWQpKS50b0xvY2FsZVN0cmluZygpO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBNYXRoLnJvdW5kKHBhcnNlRmxvYXQoY2FsY3VsYXRlZCkpLnRvTG9jYWxlU3RyaW5nKCk7XG4gIH1cbn07XG5cbmNvbnN0IHJvdW5kVG9OZWFyZXN0VGhvdXNhbmQgPSAobnVtYmVyKSA9PiB7XG4gIC8vIGlmKGlzQWxyZWFkeVJvdW5kZWQobnVtYmVyKSkge1xuICAvLyAgIHJldHVybiBudW1iZXI7XG4gIC8vIH1cblxuICBpZiAobnVtYmVyIDwgMTAwMCkge1xuICAgIHJldHVybiBNYXRoLnJvdW5kKG51bWJlcik7XG4gIH1cblxuICBjb25zdCByb3VuZGVkVGhvdXNhbmRzID0gTWF0aC5yb3VuZChudW1iZXIgLyAxMDAwKTtcbiAgY29uc3Qgcm91bmRlZFZhbHVlID0gcm91bmRlZFRob3VzYW5kcyAqIDEwMDA7XG5cbiAgcmV0dXJuIHJvdW5kZWRWYWx1ZTtcbn07XG5cbi8vIGNvbnN0IGlzQWxyZWFkeVJvdW5kZWQgPSAobnVtYmVyKSA9PiB7XG4vLyAgIHJldHVybiBudW1iZXIgPT09IE1hdGgucm91bmQobnVtYmVyKTtcbi8vIH1cblxuZXhwb3J0IGNvbnN0IHRyYW5zbGF0ZUZsb3dSYXRlID0gKGZsb3dfcmF0ZV91bml0KSA9PiB7XG4gIHJldHVybiBpMThuLnQoXG4gICAgYGRhc2hib2FyZF92Mi5wcm9maWxlLmZsb3dfcmF0ZV91bml0X29wdGlvbnMuJHtcbiAgICAgIGZsb3dfcmF0ZV91bml0LmluY2x1ZGVzKCdnZCcpID8gJ2dkJyA6IGZsb3dfcmF0ZV91bml0XG4gICAgfWAsXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgaGFuZGxlTWFya2VyRXZlbnRzID0gKFxuICBtYXAsXG4gIHBvaW50LFxuICBwb2ludEN1c3RvbUljb24sXG4gIGhhbmRsZUNsaWNrLFxuKSA9PiB7XG4gIGxldCB0b29sdGlwVmlzaWJsZSA9IGZhbHNlO1xuXG4gIG1hcC5vbignem9vbXN0YXJ0JywgZnVuY3Rpb24gKCkge1xuICAgIG1hcC5jbG9zZVBvcHVwKCk7XG4gIH0pO1xuXG4gIHBvaW50Q3VzdG9tSWNvbi5vbigncG9wdXBjbG9zZScsICgpID0+IHtcbiAgICAvLyBzZXRJY29uKHBvaW50Q3VzdG9tSWNvbiwgZmFsc2UsIHBvaW50KTtcbiAgICB0b29sdGlwVmlzaWJsZSA9IGZhbHNlO1xuICB9KTtcblxuICBwb2ludEN1c3RvbUljb24ub24oJ3BvcHVwb3BlbicsICgpID0+IHtcbiAgICAvLyBzZXRJY29uKHBvaW50Q3VzdG9tSWNvbiwgdHJ1ZSwgcG9pbnQpO1xuICAgIHRvb2x0aXBWaXNpYmxlID0gdHJ1ZTtcbiAgfSk7XG5cbiAgcG9pbnRDdXN0b21JY29uLm9uKCdtb3VzZW92ZXInLCAoKSA9PiB7XG4gICAgaWYgKHRvb2x0aXBWaXNpYmxlKSByZXR1cm47XG5cbiAgICBzZXRJY29uKHBvaW50Q3VzdG9tSWNvbiwgdHJ1ZSwgcG9pbnQpO1xuICAgIHRvb2x0aXBWaXNpYmxlID0gdHJ1ZTtcbiAgfSk7XG5cbiAgcG9pbnRDdXN0b21JY29uLm9uKCdtb3VzZW91dCcsICgpID0+IHtcbiAgICBpZiAocG9pbnRDdXN0b21JY29uLmlzUG9wdXBPcGVuKCkpIHJldHVybjtcblxuICAgIHNldEljb24ocG9pbnRDdXN0b21JY29uLCBmYWxzZSwgcG9pbnQpO1xuICAgIHRvb2x0aXBWaXNpYmxlID0gZmFsc2U7XG4gIH0pO1xuXG4gIGlmICh0eXBlb2YgaGFuZGxlQ2xpY2sgPT09ICdmdW5jdGlvbicpIHtcbiAgICBwb2ludEN1c3RvbUljb24ub24oJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgaGFuZGxlQ2xpY2socG9pbnRDdXN0b21JY29uLmthbmRvX29iamVjdF9pZCk7XG5cbiAgICAgIGlmIChwb2ludElzRmFjdG9yeShwb2ludCkpIHtcbiAgICAgICAgc2VuZEFuYWx5dGljc0V2ZW50KCdNYXAgVmlldyAtIEZhY3RvcnkgY2xpY2tlZCcsICdtYXAnLCB7XG4gICAgICAgICAgcG9pbnRfaWQ6IHBvaW50LmlkLFxuICAgICAgICAgIHBvaW50X25hbWU6IHBvaW50Lm5hbWUsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgYmluZFBvcHVwVG9NYXJrZXIgPSAocG9pbnQsIGxheWVyR3JvdXAsIGZsb3dfcmF0ZV91bml0KSA9PiB7XG4gIGxldCBjb250ZW50ID0gYFxuICAgIDxkaXYgY2xhc3M9J21haW4tY29udGVudCc+XG4gICAgICAgIDxkaXYgY2xhc3M9J21haW4tY29udGVudF9faGVhZGVyJz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRfX2hlYWRlcl9fdGl0bGVzXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nbWFpbi1jb250ZW50X19oZWFkZXJfX3RpdGxlc19fdGl0bGUnPiR7XG4gICAgICAgICAgICAgICAgICBwb2ludC5uYW1lXG4gICAgICAgICAgICAgICAgfTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J21haW4tY29udGVudF9faGVhZGVyX190aXRsZXNfX3N1YnRpdGxlJz4ke1xuICAgICAgICAgICAgICAgICAgcG9pbnQuZ3JvdXAuc2VjdG9yX25hbWVcbiAgICAgICAgICAgICAgICB9PC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgXG4gICAgICAgIDxkaXYgY2xhc3M9J21haW4tY29udGVudF9fYm9keSc+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2JvZHlfX2l0ZW0nPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9J21haW4tY29udGVudF9fYm9keV9faXRlbV9faWNvbic+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPScke3dhdGVyUmV1c2VJY29ufScgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2JvZHlfX2l0ZW1fX3RpdGxlcyc+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2JvZHlfX2l0ZW1fX3RpdGxlc19fdGl0bGUnPlxuICAgICAgICAgICAgICAgICAgICAke2dldEZsb3dSYXRlKHBvaW50Lmdyb3VwLndhdGVyX2Rpc2NoYXJnZSwgZmxvd19yYXRlX3VuaXQpfVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYWluLWNvbnRlbnRfX2JvZHlfX2l0ZW1fX3RpdGxlc19fc3VidGl0bGUnPiR7aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAnd2F0ZXJfZGlzY2hhcmdlJyxcbiAgICAgICAgICAgICAgICAgICl9PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgYDtcblxuICBsYXllckdyb3VwLmJpbmRQb3B1cChjb250ZW50LCB7XG4gICAgY2xhc3NOYW1lOiAncG9pbnQtbWFya2VyLXBvcHVwJyxcbiAgICBtaW5XaWR0aDogJzIxNHB4JyxcbiAgICBtYXhXaWR0aDogJzIxNHB4JyxcbiAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0Rmxvd1JhdGUgPSAoXG4gIHdhdGVyQ29uc3VtcHRpb246IG51bWJlcixcbiAgZmxvd1JhdGVVbml0OiBzdHJpbmcsXG4gIGlzUm91bmQ6IGJvb2xlYW4gPSBmYWxzZSxcbikgPT4ge1xuICBpZiAod2F0ZXJDb25zdW1wdGlvbiA+IDApIHtcbiAgICByZXR1cm4gKFxuICAgICAgY2FsY3VsYXRlV2F0ZXJDb25zdW1wdGlvbihmbG93UmF0ZVVuaXQsIHdhdGVyQ29uc3VtcHRpb24sIGlzUm91bmQpICtcbiAgICAgICcgJyArXG4gICAgICB0cmFuc2xhdGVGbG93UmF0ZShmbG93UmF0ZVVuaXQpXG4gICAgKTtcbiAgfVxuICByZXR1cm4gaTE4bi50KCdldmVudHNfb3ZlcnZpZXcuc2V2ZXJpdGllcy51bmtub3duJyk7XG59O1xuXG5leHBvcnQgY29uc3QgcmVtb3ZlTGF5ZXJHcm91cCA9IChtYXAsIGxheWVyR3JvdXApID0+IHtcbiAgaWYgKG1hcC5oYXNMYXllcihsYXllckdyb3VwKSkge1xuICAgIG1hcC5yZW1vdmVMYXllcihsYXllckdyb3VwKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGFkZExheWVyR3JvdXAgPSAobWFwLCBsYXllckdyb3VwKSA9PiB7XG4gIGlmICghbWFwLmhhc0xheWVyKGxheWVyR3JvdXApKSB7XG4gICAgbWFwLmFkZExheWVyKGxheWVyR3JvdXApO1xuICB9IGVsc2Uge1xuICAgIHJlbW92ZUxheWVyR3JvdXAobWFwLCBsYXllckdyb3VwKTtcbiAgICBhZGRMYXllckdyb3VwKG1hcCwgbGF5ZXJHcm91cCk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBwb2ludElzV1dUUCA9IChwb2ludDogSVBvaW50KSA9PiB7XG4gIHJldHVybiBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnO1xufTtcblxuZXhwb3J0IGNvbnN0IHBvaW50SXNGYWN0b3J5ID0gKHBvaW50OiBJUG9pbnQpID0+IHtcbiAgcmV0dXJuIGlzRmFjdG9yeVR5cGUocG9pbnQuZ3JvdXAudHlwZSk7XG59O1xuXG5leHBvcnQgY29uc3QgaXNGYWN0b3J5VHlwZSA9ICh0eXBlOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIHR5cGUgPT09ICdHcm91cHM6OkZhY3RvcnknO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFD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
|
|
@@ -12,6 +12,7 @@ var _i18n = _interopRequireDefault(require("utilities/i18n"));
|
|
|
12
12
|
// "water_reuse": "Water Reuse",
|
|
13
13
|
// "shorten_collection_lifetime": "Shorten Collection System Lifetime",
|
|
14
14
|
// "pipes_pumps_blockage": "Pipes & Pumps Blockage"
|
|
15
|
+
|
|
15
16
|
var useCases = [{
|
|
16
17
|
name: 'water_reuse',
|
|
17
18
|
value: 6,
|
|
@@ -109,4 +110,4 @@ describe('PoltentialImpact', function () {
|
|
|
109
110
|
expect(queryAllByText('Show Less')).toHaveLength(1);
|
|
110
111
|
});
|
|
111
112
|
});
|
|
112
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfUG90ZW50aWFsSW1wYWN0IiwiX3JlYWN0UmVkdXgiLCJfcmVkdXgiLCJfaTE4biIsInVzZUNhc2VzIiwibmFtZSIsInZhbHVlIiwicGVyY2VudGFnZSIsImluaXRpYWxTdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJuYXZDb250ZXh0IiwibG9jYWxlIiwicmVkdWNlciIsInN0YXRlIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiYWN0aW9uIiwidHlwZSIsInN0b3JlIiwiY3JlYXRlU3RvcmUiLCJhZnRlckVhY2giLCJjbGVhbnVwIiwiZGVzY3JpYmUiLCJ0ZXN0IiwiX3JlbmRlciIsInJlbmRlciIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJQb3RlbnRpYWxJbXBhY3QiLCJ1c2VfY2FzZXMiLCJzaG93X3N0YXRlIiwidG9nZ2xlU2hvdyIsInF1ZXJ5QWxsQnlUZXh0IiwiZXhwZWN0IiwidG9IYXZlTGVuZ3RoIiwiX3JlbmRlcjIiLCJzbGljZSIsImkxOG4iLCJ0IiwiY29uY2F0IiwiX3JlbmRlcjMiLCJlbGVtZW50cyIsInRvQmVUcnV0aHkiLCJfcmVuZGVyNCIsInRvQmUiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvV2lkZ2V0cy9Nb3N0UG9sbHV0aW5nL2NvbXBvbmVudHMvUG90ZW50aWFsSW1wYWN0LnRlc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyByZW5kZXIsIGNsZWFudXAgfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcbmltcG9ydCB7IFBvdGVudGlhbEltcGFjdCB9IGZyb20gJy4vUG90ZW50aWFsSW1wYWN0JztcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgY3JlYXRlU3RvcmUgfSBmcm9tICdyZWR1eCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuXG4vLyBcInd3dHBfY29zdFwiOiBcIldXVFAgUHJvY2VzcyBDb3N0XCIsXG4vLyBcInNsdWRnZV90cmVhdG1lbnRcIjogXCJTbHVkZ2UgVHJlYXRtZW50XCIsXG4vLyBcIndhdGVyX3JldXNlXCI6IFwiV2F0ZXIgUmV1c2VcIixcbi8vIFwic2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lXCI6IFwiU2hvcnRlbiBDb2xsZWN0aW9uIFN5c3RlbSBMaWZldGltZVwiLFxuLy8gXCJwaXBlc19wdW1wc19ibG9ja2FnZVwiOiBcIlBpcGVzICYgUHVtcHMgQmxvY2thZ2VcIlxuXG5jb25zdCB1c2VDYXNlcyA9IFtcbiAge1xuICAgIG5hbWU6ICd3YXRlcl9yZXVzZScsXG4gICAgdmFsdWU6IDYsXG4gICAgcGVyY2VudGFnZTogJzEwJScsXG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnc2x1ZGdlX3RyZWF0bWVudCcsXG4gICAgdmFsdWU6IDMsXG4gICAgcGVyY2VudGFnZTogJzIwJScsXG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnd3d0cF9jb3N0JyxcbiAgICB2YWx1ZTogNixcbiAgICBwZXJjZW50YWdlOiAnMzAlJyxcbiAgfSxcbiAge1xuICAgIG5hbWU6ICdzaG9ydGVuX2NvbGxlY3Rpb25fbGlmZXRpbWUnLFxuICAgIHZhbHVlOiAzLFxuICAgIHBlcmNlbnRhZ2U6ICczMCUnLFxuICB9LFxuICB7XG4gICAgbmFtZTogJ3BpcGVzX3B1bXBzX2Jsb2NrYWdlJyxcbiAgICB2YWx1ZTogNixcbiAgICBwZXJjZW50YWdlOiAnMTAlJyxcbiAgfSxcbl07XG5cbmNvbnN0IGluaXRpYWxTdGF0ZSA9IHtcbiAgbmF2X2NvbnRleHRfZGF0YToge1xuICAgIG5hdkNvbnRleHQ6IHtcbiAgICAgIGxvY2FsZTogJ2VuLVVTJywgLy8gUmVwbGFjZSB3aXRoIHRoZSBkZXNpcmVkIGxvY2FsZSB2YWx1ZSBmb3IgeW91ciB0ZXN0XG4gICAgfSxcbiAgfSxcbn07XG5cbmNvbnN0IHJlZHVjZXIgPSAoc3RhdGUgPSB7fSwgYWN0aW9uKSA9PiB7XG4gIC8vIEhhbmRsZSBkaWZmZXJlbnQgYWN0aW9uIHR5cGVzIGFuZCB1cGRhdGUgdGhlIHN0YXRlIGFjY29yZGluZ2x5XG4gIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHN0YXRlO1xuICB9XG59O1xuXG5jb25zdCBzdG9yZSA9IGNyZWF0ZVN0b3JlKHJlZHVjZXIsIGluaXRpYWxTdGF0ZSk7XG5cbmFmdGVyRWFjaCgoKSA9PiB7XG4gIGNsZWFudXAoKTtcbn0pO1xuXG5kZXNjcmliZSgnUG9sdGVudGlhbEltcGFjdCcsICgpID0+IHtcbiAgdGVzdCgnRW1wdHkgdXNlIGNhc2VzIGFycmF5JywgKCkgPT4ge1xuICAgIGNvbnN0IHsgcXVlcnlBbGxCeVRleHQgfSA9IHJlbmRlcihcbiAgICAgIDxQcm92aWRlciBzdG9yZT17c3RvcmV9PlxuICAgICAgICA8UG90ZW50aWFsSW1wYWN0XG4gICAgICAgICAgdXNlX2Nhc2VzPXtbXX1cbiAgICAgICAgICBzaG93X3N0YXRlPXtmYWxzZX1cbiAgICAgICAgICB0b2dnbGVTaG93PXsoKSA9PiB7fX1cbiAgICAgICAgLz5cbiAgICAgIDwvUHJvdmlkZXI+LFxuICAgICk7XG5cbiAgICBleHBlY3QocXVlcnlBbGxCeVRleHQoJ1BvdGVudGlhbCBJbXBhY3QnKSkudG9IYXZlTGVuZ3RoKDApO1xuICB9KTtcblxuICB0ZXN0KCdEbyBub3QgU2hvdyBBbGwgd2l0aCBvbmUgdXNlIGNhc2UnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBxdWVyeUFsbEJ5VGV4dCB9ID0gcmVuZGVyKFxuICAgICAgPFByb3ZpZGVyIHN0b3JlPXtzdG9yZX0+XG4gICAgICAgIDxQb3RlbnRpYWxJbXBhY3RcbiAgICAgICAgICB1c2VfY2FzZXM9e3VzZUNhc2VzLnNsaWNlKDAsIDEpfVxuICAgICAgICAgIHNob3dfc3RhdGU9e2ZhbHNlfVxuICAgICAgICAgIHRvZ2dsZVNob3c9eygpID0+IHt9fVxuICAgICAgICAvPlxuICAgICAgPC9Qcm92aWRlcj4sXG4gICAgKTtcblxuICAgIGV4cGVjdChcbiAgICAgIHF1ZXJ5QWxsQnlUZXh0KFxuICAgICAgICBpMThuLnQoYGRhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC51c2VfY2FzZXMuJHt1c2VDYXNlc1swXS5uYW1lfWApLFxuICAgICAgKSxcbiAgICApLnRvSGF2ZUxlbmd0aCgxKTtcbiAgICBleHBlY3QocXVlcnlBbGxCeVRleHQoJ1Nob3cgQWxsJykpLnRvSGF2ZUxlbmd0aCgwKTtcbiAgfSk7XG5cbiAgdGVzdCgnU2hvdyB0aGUgMXN0IHVzZSBjYXNlIGFuZCBcIlNob3cgQWxsICNcIiB3aGVuIG1vcmUgdGhlbiBvbmUgdXNlIGNhc2UnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBxdWVyeUFsbEJ5VGV4dCB9ID0gcmVuZGVyKFxuICAgICAgPFByb3ZpZGVyIHN0b3JlPXtzdG9yZX0+XG4gICAgICAgIDxQb3RlbnRpYWxJbXBhY3RcbiAgICAgICAgICB1c2VfY2FzZXM9e3VzZUNhc2VzLnNsaWNlKDEsIDMpfVxuICAgICAgICAgIHNob3dfc3RhdGU9e2ZhbHNlfVxuICAgICAgICAgIHRvZ2dsZVNob3c9eygpID0+IHt9fVxuICAgICAgICAvPlxuICAgICAgPC9Qcm92aWRlcj4sXG4gICAgKTtcblxuICAgIGxldCBlbGVtZW50cyA9IHF1ZXJ5QWxsQnlUZXh0KFxuICAgICAgaTE4bi50KGBkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQudXNlX2Nhc2VzLiR7dXNlQ2FzZXNbMV0ubmFtZX1gKSxcbiAgICApO1xuICAgIGV4cGVjdChlbGVtZW50cykudG9CZVRydXRoeSgpO1xuICAgIGVsZW1lbnRzID0gcXVlcnlBbGxCeVRleHQoXG4gICAgICBpMThuLnQoYGRhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC51c2VfY2FzZXMuJHt1c2VDYXNlc1syXS5uYW1lfWApLFxuICAgICk7XG4gICAgZXhwZWN0KGVsZW1lbnRzKS50b0JlVHJ1dGh5KCk7XG4gICAgZXhwZWN0KHF1ZXJ5QWxsQnlUZXh0KCdTaG93IEFsbCAyJykpLnRvSGF2ZUxlbmd0aCgxKTtcbiAgfSk7XG5cbiAgdGVzdCgnU2hvdyB0aGUgbGlzdCBvZiB1c2UgY2FzZXMgYW5kIFwiU2hvdyBMZXNzXCIgd2hlbiBtb3JlIHRoZW4gb25lIHVzZSBjYXNlJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgcXVlcnlBbGxCeVRleHQgfSA9IHJlbmRlcihcbiAgICAgIDxQcm92aWRlciBzdG9yZT17c3RvcmV9PlxuICAgICAgICA8UG90ZW50aWFsSW1wYWN0XG4gICAgICAgICAgdXNlX2Nhc2VzPXt1c2VDYXNlc31cbiAgICAgICAgICBzaG93X3N0YXRlPXt0cnVlfVxuICAgICAgICAgIHRvZ2dsZVNob3c9eygpID0+IHt9fVxuICAgICAgICAvPlxuICAgICAgPC9Qcm92aWRlcj4sXG4gICAgKTtcblxuICAgIGxldCBlbGVtZW50cyA9IHF1ZXJ5QWxsQnlUZXh0KFxuICAgICAgaTE4bi50KGBkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQudXNlX2Nhc2VzLiR7dXNlQ2FzZXNbMF0ubmFtZX1gKSxcbiAgICApO1xuICAgIGV4cGVjdChlbGVtZW50cy5sZW5ndGgpLnRvQmUoMSk7XG4gICAgZWxlbWVudHMgPSBxdWVyeUFsbEJ5VGV4dChcbiAgICAgIGkxOG4udChgZGFzaGJvYXJkX3YyLnV0aWxpdHlfZGFzaGJvYXJkLnVzZV9jYXNlcy4ke3VzZUNhc2VzWzFdLm5hbWV9YCksXG4gICAgKTtcbiAgICBleHBlY3QoZWxlbWVudHMubGVuZ3RoKS50b0JlKDEpO1xuICAgIGV4cGVjdChxdWVyeUFsbEJ5VGV4dCgnU2hvdyBMZXNzJykpLnRvSGF2ZUxlbmd0aCgxKTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFB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
|
|
113
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdDIiLCJfUG90ZW50aWFsSW1wYWN0IiwiX3JlYWN0UmVkdXgiLCJfcmVkdXgiLCJfaTE4biIsInVzZUNhc2VzIiwibmFtZSIsInZhbHVlIiwicGVyY2VudGFnZSIsImluaXRpYWxTdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJuYXZDb250ZXh0IiwibG9jYWxlIiwicmVkdWNlciIsInN0YXRlIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwidW5kZWZpbmVkIiwiYWN0aW9uIiwidHlwZSIsInN0b3JlIiwiY3JlYXRlU3RvcmUiLCJhZnRlckVhY2giLCJjbGVhbnVwIiwiZGVzY3JpYmUiLCJ0ZXN0IiwiX3JlbmRlciIsInJlbmRlciIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJQb3RlbnRpYWxJbXBhY3QiLCJ1c2VfY2FzZXMiLCJzaG93X3N0YXRlIiwidG9nZ2xlU2hvdyIsInF1ZXJ5QWxsQnlUZXh0IiwiZXhwZWN0IiwidG9IYXZlTGVuZ3RoIiwiX3JlbmRlcjIiLCJzbGljZSIsImkxOG4iLCJ0IiwiY29uY2F0IiwiX3JlbmRlcjMiLCJlbGVtZW50cyIsInRvQmVUcnV0aHkiLCJfcmVuZGVyNCIsInRvQmUiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvV2lkZ2V0cy9Nb3N0UG9sbHV0aW5nL2NvbXBvbmVudHMvUG90ZW50aWFsSW1wYWN0LnRlc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyByZW5kZXIsIGNsZWFudXAgfSBmcm9tICdAdGVzdGluZy1saWJyYXJ5L3JlYWN0JztcbmltcG9ydCB7IFBvdGVudGlhbEltcGFjdCB9IGZyb20gJy4vUG90ZW50aWFsSW1wYWN0JztcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgY3JlYXRlU3RvcmUgfSBmcm9tICdyZWR1eCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuXG4vLyBcInd3dHBfY29zdFwiOiBcIldXVFAgUHJvY2VzcyBDb3N0XCIsXG4vLyBcInNsdWRnZV90cmVhdG1lbnRcIjogXCJTbHVkZ2UgVHJlYXRtZW50XCIsXG4vLyBcIndhdGVyX3JldXNlXCI6IFwiV2F0ZXIgUmV1c2VcIixcbi8vIFwic2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lXCI6IFwiU2hvcnRlbiBDb2xsZWN0aW9uIFN5c3RlbSBMaWZldGltZVwiLFxuLy8gXCJwaXBlc19wdW1wc19ibG9ja2FnZVwiOiBcIlBpcGVzICYgUHVtcHMgQmxvY2thZ2VcIlxuXG5jb25zdCB1c2VDYXNlcyA9IFtcbiAge1xuICAgIG5hbWU6ICd3YXRlcl9yZXVzZScsXG4gICAgdmFsdWU6IDYsXG4gICAgcGVyY2VudGFnZTogJzEwJScsXG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnc2x1ZGdlX3RyZWF0bWVudCcsXG4gICAgdmFsdWU6IDMsXG4gICAgcGVyY2VudGFnZTogJzIwJScsXG4gIH0sXG4gIHtcbiAgICBuYW1lOiAnd3d0cF9jb3N0JyxcbiAgICB2YWx1ZTogNixcbiAgICBwZXJjZW50YWdlOiAnMzAlJyxcbiAgfSxcbiAge1xuICAgIG5hbWU6ICdzaG9ydGVuX2NvbGxlY3Rpb25fbGlmZXRpbWUnLFxuICAgIHZhbHVlOiAzLFxuICAgIHBlcmNlbnRhZ2U6ICczMCUnLFxuICB9LFxuICB7XG4gICAgbmFtZTogJ3BpcGVzX3B1bXBzX2Jsb2NrYWdlJyxcbiAgICB2YWx1ZTogNixcbiAgICBwZXJjZW50YWdlOiAnMTAlJyxcbiAgfSxcbl07XG5cbmNvbnN0IGluaXRpYWxTdGF0ZSA9IHtcbiAgbmF2X2NvbnRleHRfZGF0YToge1xuICAgIG5hdkNvbnRleHQ6IHtcbiAgICAgIGxvY2FsZTogJ2VuLVVTJywgLy8gUmVwbGFjZSB3aXRoIHRoZSBkZXNpcmVkIGxvY2FsZSB2YWx1ZSBmb3IgeW91ciB0ZXN0XG4gICAgfSxcbiAgfSxcbn07XG5cbmNvbnN0IHJlZHVjZXIgPSAoc3RhdGUgPSB7fSwgYWN0aW9uKSA9PiB7XG4gIC8vIEhhbmRsZSBkaWZmZXJlbnQgYWN0aW9uIHR5cGVzIGFuZCB1cGRhdGUgdGhlIHN0YXRlIGFjY29yZGluZ2x5XG4gIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIHN0YXRlO1xuICB9XG59O1xuXG5jb25zdCBzdG9yZSA9IGNyZWF0ZVN0b3JlKHJlZHVjZXIsIGluaXRpYWxTdGF0ZSk7XG5cbmFmdGVyRWFjaCgoKSA9PiB7XG4gIGNsZWFudXAoKTtcbn0pO1xuXG5kZXNjcmliZSgnUG9sdGVudGlhbEltcGFjdCcsICgpID0+IHtcbiAgdGVzdCgnRW1wdHkgdXNlIGNhc2VzIGFycmF5JywgKCkgPT4ge1xuICAgIGNvbnN0IHsgcXVlcnlBbGxCeVRleHQgfSA9IHJlbmRlcihcbiAgICAgIDxQcm92aWRlciBzdG9yZT17c3RvcmV9PlxuICAgICAgICA8UG90ZW50aWFsSW1wYWN0XG4gICAgICAgICAgdXNlX2Nhc2VzPXtbXX1cbiAgICAgICAgICBzaG93X3N0YXRlPXtmYWxzZX1cbiAgICAgICAgICB0b2dnbGVTaG93PXsoKSA9PiB7fX1cbiAgICAgICAgLz5cbiAgICAgIDwvUHJvdmlkZXI+LFxuICAgICk7XG5cbiAgICBleHBlY3QocXVlcnlBbGxCeVRleHQoJ1BvdGVudGlhbCBJbXBhY3QnKSkudG9IYXZlTGVuZ3RoKDApO1xuICB9KTtcblxuICB0ZXN0KCdEbyBub3QgU2hvdyBBbGwgd2l0aCBvbmUgdXNlIGNhc2UnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBxdWVyeUFsbEJ5VGV4dCB9ID0gcmVuZGVyKFxuICAgICAgPFByb3ZpZGVyIHN0b3JlPXtzdG9yZX0+XG4gICAgICAgIDxQb3RlbnRpYWxJbXBhY3RcbiAgICAgICAgICB1c2VfY2FzZXM9e3VzZUNhc2VzLnNsaWNlKDAsIDEpfVxuICAgICAgICAgIHNob3dfc3RhdGU9e2ZhbHNlfVxuICAgICAgICAgIHRvZ2dsZVNob3c9eygpID0+IHt9fVxuICAgICAgICAvPlxuICAgICAgPC9Qcm92aWRlcj4sXG4gICAgKTtcblxuICAgIGV4cGVjdChcbiAgICAgIHF1ZXJ5QWxsQnlUZXh0KFxuICAgICAgICBpMThuLnQoYGRhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC51c2VfY2FzZXMuJHt1c2VDYXNlc1swXS5uYW1lfWApLFxuICAgICAgKSxcbiAgICApLnRvSGF2ZUxlbmd0aCgxKTtcbiAgICBleHBlY3QocXVlcnlBbGxCeVRleHQoJ1Nob3cgQWxsJykpLnRvSGF2ZUxlbmd0aCgwKTtcbiAgfSk7XG5cbiAgdGVzdCgnU2hvdyB0aGUgMXN0IHVzZSBjYXNlIGFuZCBcIlNob3cgQWxsICNcIiB3aGVuIG1vcmUgdGhlbiBvbmUgdXNlIGNhc2UnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBxdWVyeUFsbEJ5VGV4dCB9ID0gcmVuZGVyKFxuICAgICAgPFByb3ZpZGVyIHN0b3JlPXtzdG9yZX0+XG4gICAgICAgIDxQb3RlbnRpYWxJbXBhY3RcbiAgICAgICAgICB1c2VfY2FzZXM9e3VzZUNhc2VzLnNsaWNlKDEsIDMpfVxuICAgICAgICAgIHNob3dfc3RhdGU9e2ZhbHNlfVxuICAgICAgICAgIHRvZ2dsZVNob3c9eygpID0+IHt9fVxuICAgICAgICAvPlxuICAgICAgPC9Qcm92aWRlcj4sXG4gICAgKTtcblxuICAgIGxldCBlbGVtZW50cyA9IHF1ZXJ5QWxsQnlUZXh0KFxuICAgICAgaTE4bi50KGBkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQudXNlX2Nhc2VzLiR7dXNlQ2FzZXNbMV0ubmFtZX1gKSxcbiAgICApO1xuICAgIGV4cGVjdChlbGVtZW50cykudG9CZVRydXRoeSgpO1xuICAgIGVsZW1lbnRzID0gcXVlcnlBbGxCeVRleHQoXG4gICAgICBpMThuLnQoYGRhc2hib2FyZF92Mi51dGlsaXR5X2Rhc2hib2FyZC51c2VfY2FzZXMuJHt1c2VDYXNlc1syXS5uYW1lfWApLFxuICAgICk7XG4gICAgZXhwZWN0KGVsZW1lbnRzKS50b0JlVHJ1dGh5KCk7XG4gICAgZXhwZWN0KHF1ZXJ5QWxsQnlUZXh0KCdTaG93IEFsbCAyJykpLnRvSGF2ZUxlbmd0aCgxKTtcbiAgfSk7XG5cbiAgdGVzdCgnU2hvdyB0aGUgbGlzdCBvZiB1c2UgY2FzZXMgYW5kIFwiU2hvdyBMZXNzXCIgd2hlbiBtb3JlIHRoZW4gb25lIHVzZSBjYXNlJywgKCkgPT4ge1xuICAgIGNvbnN0IHsgcXVlcnlBbGxCeVRleHQgfSA9IHJlbmRlcihcbiAgICAgIDxQcm92aWRlciBzdG9yZT17c3RvcmV9PlxuICAgICAgICA8UG90ZW50aWFsSW1wYWN0XG4gICAgICAgICAgdXNlX2Nhc2VzPXt1c2VDYXNlc31cbiAgICAgICAgICBzaG93X3N0YXRlPXt0cnVlfVxuICAgICAgICAgIHRvZ2dsZVNob3c9eygpID0+IHt9fVxuICAgICAgICAvPlxuICAgICAgPC9Qcm92aWRlcj4sXG4gICAgKTtcblxuICAgIGxldCBlbGVtZW50cyA9IHF1ZXJ5QWxsQnlUZXh0KFxuICAgICAgaTE4bi50KGBkYXNoYm9hcmRfdjIudXRpbGl0eV9kYXNoYm9hcmQudXNlX2Nhc2VzLiR7dXNlQ2FzZXNbMF0ubmFtZX1gKSxcbiAgICApO1xuICAgIGV4cGVjdChlbGVtZW50cy5sZW5ndGgpLnRvQmUoMSk7XG4gICAgZWxlbWVudHMgPSBxdWVyeUFsbEJ5VGV4dChcbiAgICAgIGkxOG4udChgZGFzaGJvYXJkX3YyLnV0aWxpdHlfZGFzaGJvYXJkLnVzZV9jYXNlcy4ke3VzZUNhc2VzWzFdLm5hbWV9YCksXG4gICAgKTtcbiAgICBleHBlY3QoZWxlbWVudHMubGVuZ3RoKS50b0JlKDEpO1xuICAgIGV4cGVjdChxdWVyeUFsbEJ5VGV4dCgnU2hvdyBMZXNzJykpLnRvSGF2ZUxlbmd0aCgxKTtcbiAgfSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsZ0JBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLEtBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUEsSUFBTU0sUUFBUSxHQUFHLENBQ2Y7RUFDRUMsSUFBSSxFQUFFLGFBQWE7RUFDbkJDLEtBQUssRUFBRSxDQUFDO0VBQ1JDLFVBQVUsRUFBRTtBQUNkLENBQUMsRUFDRDtFQUNFRixJQUFJLEVBQUUsa0JBQWtCO0VBQ3hCQyxLQUFLLEVBQUUsQ0FBQztFQUNSQyxVQUFVLEVBQUU7QUFDZCxDQUFDLEVBQ0Q7RUFDRUYsSUFBSSxFQUFFLFdBQVc7RUFDakJDLEtBQUssRUFBRSxDQUFDO0VBQ1JDLFVBQVUsRUFBRTtBQUNkLENBQUMsRUFDRDtFQUNFRixJQUFJLEVBQUUsNkJBQTZCO0VBQ25DQyxLQUFLLEVBQUUsQ0FBQztFQUNSQyxVQUFVLEVBQUU7QUFDZCxDQUFDLEVBQ0Q7RUFDRUYsSUFBSSxFQUFFLHNCQUFzQjtFQUM1QkMsS0FBSyxFQUFFLENBQUM7RUFDUkMsVUFBVSxFQUFFO0FBQ2QsQ0FBQyxDQUNGO0FBRUQsSUFBTUMsWUFBWSxHQUFHO0VBQ25CQyxnQkFBZ0IsRUFBRTtJQUNoQkMsVUFBVSxFQUFFO01BQ1ZDLE1BQU0sRUFBRSxPQUFPLENBQUU7SUFDbkI7RUFDRjtBQUNGLENBQUM7O0FBRUQsSUFBTUMsT0FBTyxHQUFHLFNBQVZBLE9BQU9BLENBQUEsRUFBMkI7RUFBQSxJQUF2QkMsS0FBSyxHQUFBQyxTQUFBLENBQUFDLE1BQUEsUUFBQUQsU0FBQSxRQUFBRSxTQUFBLEdBQUFGLFNBQUEsTUFBRyxDQUFDLENBQUM7RUFBQSxJQUFFRyxNQUFNLEdBQUFILFNBQUEsQ0FBQUMsTUFBQSxPQUFBRCxTQUFBLE1BQUFFLFNBQUE7RUFDakM7RUFDQSxRQUFRQyxNQUFNLENBQUNDLElBQUk7SUFDakI7TUFDRSxPQUFPTCxLQUFLO0VBQ2hCO0FBQ0YsQ0FBQztBQUVELElBQU1NLEtBQUssR0FBRyxJQUFBQyxrQkFBVyxFQUFDUixPQUFPLEVBQUVKLFlBQVksQ0FBQztBQUVoRGEsU0FBUyxDQUFDLFlBQU07RUFDZCxJQUFBQyxlQUFPLEVBQUMsQ0FBQztBQUNYLENBQUMsQ0FBQztBQUVGQyxRQUFRLENBQUMsa0JBQWtCLEVBQUUsWUFBTTtFQUNqQ0MsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFlBQU07SUFDbEMsSUFBQUMsT0FBQSxHQUEyQixJQUFBQyxjQUFNLGdCQUMvQjlCLE1BQUEsQ0FBQStCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDM0IsV0FBQSxDQUFBNEIsUUFBUTtRQUFDVixLQUFLLEVBQUVBO01BQU0sZ0JBQ3JCdkIsTUFBQSxDQUFBK0IsT0FBQSxDQUFBQyxhQUFBLENBQUM1QixnQkFBQSxDQUFBOEIsZUFBZTtRQUNkQyxTQUFTLEVBQUUsRUFBRztRQUNkQyxVQUFVLEVBQUUsS0FBTTtRQUNsQkMsVUFBVSxFQUFFLFNBQUFBLFdBQUEsRUFBTSxDQUFDO01BQUUsQ0FDdEIsQ0FDTyxDQUNaLENBQUM7TUFST0MsY0FBYyxHQUFBVCxPQUFBLENBQWRTLGNBQWM7SUFVdEJDLE1BQU0sQ0FBQ0QsY0FBYyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQ0UsWUFBWSxDQUFDLENBQUMsQ0FBQztFQUM1RCxDQUFDLENBQUM7RUFFRlosSUFBSSxDQUFDLG1DQUFtQyxFQUFFLFlBQU07SUFDOUMsSUFBQWEsUUFBQSxHQUEyQixJQUFBWCxjQUFNLGdCQUMvQjlCLE1BQUEsQ0FBQStCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDM0IsV0FBQSxDQUFBNEIsUUFBUTtRQUFDVixLQUFLLEVBQUVBO01BQU0sZ0JBQ3JCdkIsTUFBQSxDQUFBK0IsT0FBQSxDQUFBQyxhQUFBLENBQUM1QixnQkFBQSxDQUFBOEIsZUFBZTtRQUNkQyxTQUFTLEVBQUUzQixRQUFRLENBQUNrQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBRTtRQUNoQ04sVUFBVSxFQUFFLEtBQU07UUFDbEJDLFVBQVUsRUFBRSxTQUFBQSxXQUFBLEVBQU0sQ0FBQztNQUFFLENBQ3RCLENBQ08sQ0FDWixDQUFDO01BUk9DLGNBQWMsR0FBQUcsUUFBQSxDQUFkSCxjQUFjO0lBVXRCQyxNQUFNLENBQ0pELGNBQWMsQ0FDWkssYUFBSSxDQUFDQyxDQUFDLDZDQUFBQyxNQUFBLENBQTZDckMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDQyxJQUFJLENBQUUsQ0FDdkUsQ0FDRixDQUFDLENBQUMrQixZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ2pCRCxNQUFNLENBQUNELGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0VBQ3BELENBQUMsQ0FBQztFQUVGWixJQUFJLENBQUMsb0VBQW9FLEVBQUUsWUFBTTtJQUMvRSxJQUFBa0IsUUFBQSxHQUEyQixJQUFBaEIsY0FBTSxnQkFDL0I5QixNQUFBLENBQUErQixPQUFBLENBQUFDLGFBQUEsQ0FBQzNCLFdBQUEsQ0FBQTRCLFFBQVE7UUFBQ1YsS0FBSyxFQUFFQTtNQUFNLGdCQUNyQnZCLE1BQUEsQ0FBQStCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDNUIsZ0JBQUEsQ0FBQThCLGVBQWU7UUFDZEMsU0FBUyxFQUFFM0IsUUFBUSxDQUFDa0MsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUU7UUFDaENOLFVBQVUsRUFBRSxLQUFNO1FBQ2xCQyxVQUFVLEVBQUUsU0FBQUEsV0FBQSxFQUFNLENBQUM7TUFBRSxDQUN0QixDQUNPLENBQ1osQ0FBQztNQVJPQyxjQUFjLEdBQUFRLFFBQUEsQ0FBZFIsY0FBYztJQVV0QixJQUFJUyxRQUFRLEdBQUdULGNBQWMsQ0FDM0JLLGFBQUksQ0FBQ0MsQ0FBQyw2Q0FBQUMsTUFBQSxDQUE2Q3JDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFFLENBQ3ZFLENBQUM7SUFDRDhCLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDLENBQUNDLFVBQVUsQ0FBQyxDQUFDO0lBQzdCRCxRQUFRLEdBQUdULGNBQWMsQ0FDdkJLLGFBQUksQ0FBQ0MsQ0FBQyw2Q0FBQUMsTUFBQSxDQUE2Q3JDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFFLENBQ3ZFLENBQUM7SUFDRDhCLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDLENBQUNDLFVBQVUsQ0FBQyxDQUFDO0lBQzdCVCxNQUFNLENBQUNELGNBQWMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0VBQ3RELENBQUMsQ0FBQztFQUVGWixJQUFJLENBQUMsd0VBQXdFLEVBQUUsWUFBTTtJQUNuRixJQUFBcUIsUUFBQSxHQUEyQixJQUFBbkIsY0FBTSxnQkFDL0I5QixNQUFBLENBQUErQixPQUFBLENBQUFDLGFBQUEsQ0FBQzNCLFdBQUEsQ0FBQTRCLFFBQVE7UUFBQ1YsS0FBSyxFQUFFQTtNQUFNLGdCQUNyQnZCLE1BQUEsQ0FBQStCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDNUIsZ0JBQUEsQ0FBQThCLGVBQWU7UUFDZEMsU0FBUyxFQUFFM0IsUUFBUztRQUNwQjRCLFVBQVUsRUFBRSxJQUFLO1FBQ2pCQyxVQUFVLEVBQUUsU0FBQUEsV0FBQSxFQUFNLENBQUM7TUFBRSxDQUN0QixDQUNPLENBQ1osQ0FBQztNQVJPQyxjQUFjLEdBQUFXLFFBQUEsQ0FBZFgsY0FBYztJQVV0QixJQUFJUyxRQUFRLEdBQUdULGNBQWMsQ0FDM0JLLGFBQUksQ0FBQ0MsQ0FBQyw2Q0FBQUMsTUFBQSxDQUE2Q3JDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFFLENBQ3ZFLENBQUM7SUFDRDhCLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDNUIsTUFBTSxDQUFDLENBQUMrQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9CSCxRQUFRLEdBQUdULGNBQWMsQ0FDdkJLLGFBQUksQ0FBQ0MsQ0FBQyw2Q0FBQUMsTUFBQSxDQUE2Q3JDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFFLENBQ3ZFLENBQUM7SUFDRDhCLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDNUIsTUFBTSxDQUFDLENBQUMrQixJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQy9CWCxNQUFNLENBQUNELGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0VBQ3JELENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyJ9
|
|
@@ -17,6 +17,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
17
17
|
// svg path {
|
|
18
18
|
// fill: white !important; /* Force white fill */
|
|
19
19
|
// }
|
|
20
|
+
|
|
20
21
|
var iconComponents = {
|
|
21
22
|
wwtp_cost: /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
22
23
|
return /*#__PURE__*/_react.default.createElement(_wwtp_cost.ReactComponent, Object.assign({}, props, {
|
|
@@ -66,4 +67,4 @@ var Icon = function Icon(_ref) {
|
|
|
66
67
|
}) : null;
|
|
67
68
|
};
|
|
68
69
|
exports.Icon = Icon;
|
|
69
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfd3d0cF9jb3N0IiwiX3dhdGVyX3JldXNlIiwiX3NsdWRnZV90cmVhdG1lbnQiLCJfc2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lIiwiX3BpcGVzX3B1bXBzX2Jsb2NrYWdlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJpY29uQ29tcG9uZW50cyIsInd3dHBfY29zdCIsImZvcndhcmRSZWYiLCJwcm9wcyIsInJlZiIsImNyZWF0ZUVsZW1lbnQiLCJSZWFjdENvbXBvbmVudCIsImFzc2lnbiIsIndhdGVyX3JldXNlIiwic2x1ZGdlX3RyZWF0bWVudCIsInNob3J0ZW5fY29sbGVjdGlvbl9saWZldGltZSIsInBpcGVzX3B1bXBzX2Jsb2NrYWdlIiwiSWNvbiIsIl9yZWYiLCJ1c2VfY2FzZSIsImNsYXNzTmFtZSIsInJlcGxhY2VDb2xvciIsIkljb25Db21wb25lbnQiLCJpY29uUmVmIiwidXNlUmVmIiwidXNlRWZmZWN0IiwiY3VycmVudCIsInBhdGhzIiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJwYXRoIiwiZ2V0QXR0cmlidXRlIiwiZnJvbSIsInNldEF0dHJpYnV0ZSIsInRvIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL1BvdGVudGlhbEltcGFjdFN1bW1hcnkvSWNvbi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIFNWR1Byb3BzLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFd3dHBDb3N0SWNvbiB9IGZyb20gJy4vYXNzZXRzL3d3dHBfY29zdC5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgV2F0ZXJSZXVzZUljb24gfSBmcm9tICcuL2Fzc2V0cy93YXRlcl9yZXVzZS5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgU2x1ZGdlVHJlYXRtZW50SWNvbiB9IGZyb20gJy4vYXNzZXRzL3NsdWRnZV90cmVhdG1lbnQuc3ZnJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFNob3J0ZW5Db2xsZWN0aW9uTGlmZXRpbWVJY29uIH0gZnJvbSAnLi9hc3NldHMvc2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lLnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBQaXBlc1B1bXBzQmxvY2thZ2VJY29uIH0gZnJvbSAnLi9hc3NldHMvcGlwZXNfcHVtcHNfYmxvY2thZ2Uuc3ZnJztcblxuLy8gaW4gb3JkZXIgdG8gbWFrZSBhbGwgaWNvbnMgd2hpdGUgYWRkIHRoZSBmb2xsb3dpbmcgY3NzIHRvIHRoZSBwYXJlbnQgY29tcG9uZW50XG4vLyBzdmcgcGF0aCB7XG4vLyAgZmlsbDogd2hpdGUgIWltcG9ydGFudDsgLyogRm9yY2Ugd2hpdGUgZmlsbCAqL1xuLy8gfVxuXG5pbnRlcmZhY2UgSWNvblByb3BzIHtcbiAgdXNlX2Nhc2U6IHN0cmluZztcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICByZXBsYWNlQ29sb3I/OiB7IGZyb206IHN0cmluZzsgdG86IHN0cmluZyB9O1xufVxuXG5jb25zdCBpY29uQ29tcG9uZW50cyA9IHtcbiAgd3d0cF9jb3N0OiBmb3J3YXJkUmVmPFNWR1NWR0VsZW1lbnQsIFNWR1Byb3BzPFNWR1NWR0VsZW1lbnQ+PihcbiAgICAocHJvcHMsIHJlZikgPT4gPFd3dHBDb3N0SWNvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPixcbiAgKSxcbiAgd2F0ZXJfcmV1c2U6IGZvcndhcmRSZWY8U1ZHU1ZHRWxlbWVudCwgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD4+KFxuICAgIChwcm9wcywgcmVmKSA9PiA8V2F0ZXJSZXVzZUljb24gey4uLnByb3BzfSByZWY9e3JlZn0gLz4sXG4gICksXG4gIHNsdWRnZV90cmVhdG1lbnQ6IGZvcndhcmRSZWY8U1ZHU1ZHRWxlbWVudCwgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD4+KFxuICAgIChwcm9wcywgcmVmKSA9PiA8U2x1ZGdlVHJlYXRtZW50SWNvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPixcbiAgKSxcbiAgc2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lOiBmb3J3YXJkUmVmPFxuICAgIFNWR1NWR0VsZW1lbnQsXG4gICAgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD5cbiAgPigocHJvcHMsIHJlZikgPT4gPFNob3J0ZW5Db2xsZWN0aW9uTGlmZXRpbWVJY29uIHsuLi5wcm9wc30gcmVmPXtyZWZ9IC8+KSxcbiAgcGlwZXNfcHVtcHNfYmxvY2thZ2U6IGZvcndhcmRSZWY8U1ZHU1ZHRWxlbWVudCwgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD4+KFxuICAgIChwcm9wcywgcmVmKSA9PiA8UGlwZXNQdW1wc0Jsb2NrYWdlSWNvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPixcbiAgKSxcbn07XG5cbmV4cG9ydCBjb25zdCBJY29uOiBSZWFjdC5GQzxJY29uUHJvcHM+ID0gKHtcbiAgdXNlX2Nhc2UsXG4gIGNsYXNzTmFtZSxcbiAgcmVwbGFjZUNvbG9yLFxufSkgPT4ge1xuICBjb25zdCBJY29uQ29tcG9uZW50ID0gaWNvbkNvbXBvbmVudHNbdXNlX2Nhc2VdO1xuICBjb25zdCBpY29uUmVmID0gdXNlUmVmPFNWR1NWR0VsZW1lbnQ+KG51bGwpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHJlcGxhY2VDb2xvciAmJiBpY29uUmVmLmN1cnJlbnQpIHtcbiAgICAgIGNvbnN0IHBhdGhzID0gaWNvblJlZi5jdXJyZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3BhdGgnKTtcblxuICAgICAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBpZiAocGF0aC5nZXRBdHRyaWJ1dGUoJ2ZpbGwnKSA9PT0gcmVwbGFjZUNvbG9yLmZyb20pIHtcbiAgICAgICAgICBwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbCcsIHJlcGxhY2VDb2xvci50byk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW3JlcGxhY2VDb2xvcl0pO1xuXG4gIHJldHVybiBJY29uQ29tcG9uZW50ID8gKFxuICAgIDxJY29uQ29tcG9uZW50IGNsYXNzTmFtZT17Y2xhc3NOYW1lfSByZWY9e2ljb25SZWZ9IC8+
|
|
70
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfd3d0cF9jb3N0IiwiX3dhdGVyX3JldXNlIiwiX3NsdWRnZV90cmVhdG1lbnQiLCJfc2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lIiwiX3BpcGVzX3B1bXBzX2Jsb2NrYWdlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJpY29uQ29tcG9uZW50cyIsInd3dHBfY29zdCIsImZvcndhcmRSZWYiLCJwcm9wcyIsInJlZiIsImNyZWF0ZUVsZW1lbnQiLCJSZWFjdENvbXBvbmVudCIsImFzc2lnbiIsIndhdGVyX3JldXNlIiwic2x1ZGdlX3RyZWF0bWVudCIsInNob3J0ZW5fY29sbGVjdGlvbl9saWZldGltZSIsInBpcGVzX3B1bXBzX2Jsb2NrYWdlIiwiSWNvbiIsIl9yZWYiLCJ1c2VfY2FzZSIsImNsYXNzTmFtZSIsInJlcGxhY2VDb2xvciIsIkljb25Db21wb25lbnQiLCJpY29uUmVmIiwidXNlUmVmIiwidXNlRWZmZWN0IiwiY3VycmVudCIsInBhdGhzIiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJwYXRoIiwiZ2V0QXR0cmlidXRlIiwiZnJvbSIsInNldEF0dHJpYnV0ZSIsInRvIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL1BvdGVudGlhbEltcGFjdFN1bW1hcnkvSWNvbi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIFNWR1Byb3BzLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFd3dHBDb3N0SWNvbiB9IGZyb20gJy4vYXNzZXRzL3d3dHBfY29zdC5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgV2F0ZXJSZXVzZUljb24gfSBmcm9tICcuL2Fzc2V0cy93YXRlcl9yZXVzZS5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgU2x1ZGdlVHJlYXRtZW50SWNvbiB9IGZyb20gJy4vYXNzZXRzL3NsdWRnZV90cmVhdG1lbnQuc3ZnJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFNob3J0ZW5Db2xsZWN0aW9uTGlmZXRpbWVJY29uIH0gZnJvbSAnLi9hc3NldHMvc2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lLnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBQaXBlc1B1bXBzQmxvY2thZ2VJY29uIH0gZnJvbSAnLi9hc3NldHMvcGlwZXNfcHVtcHNfYmxvY2thZ2Uuc3ZnJztcblxuLy8gaW4gb3JkZXIgdG8gbWFrZSBhbGwgaWNvbnMgd2hpdGUgYWRkIHRoZSBmb2xsb3dpbmcgY3NzIHRvIHRoZSBwYXJlbnQgY29tcG9uZW50XG4vLyBzdmcgcGF0aCB7XG4vLyAgZmlsbDogd2hpdGUgIWltcG9ydGFudDsgLyogRm9yY2Ugd2hpdGUgZmlsbCAqL1xuLy8gfVxuXG5pbnRlcmZhY2UgSWNvblByb3BzIHtcbiAgdXNlX2Nhc2U6IHN0cmluZztcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICByZXBsYWNlQ29sb3I/OiB7IGZyb206IHN0cmluZzsgdG86IHN0cmluZyB9O1xufVxuXG5jb25zdCBpY29uQ29tcG9uZW50cyA9IHtcbiAgd3d0cF9jb3N0OiBmb3J3YXJkUmVmPFNWR1NWR0VsZW1lbnQsIFNWR1Byb3BzPFNWR1NWR0VsZW1lbnQ+PihcbiAgICAocHJvcHMsIHJlZikgPT4gPFd3dHBDb3N0SWNvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPixcbiAgKSxcbiAgd2F0ZXJfcmV1c2U6IGZvcndhcmRSZWY8U1ZHU1ZHRWxlbWVudCwgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD4+KFxuICAgIChwcm9wcywgcmVmKSA9PiA8V2F0ZXJSZXVzZUljb24gey4uLnByb3BzfSByZWY9e3JlZn0gLz4sXG4gICksXG4gIHNsdWRnZV90cmVhdG1lbnQ6IGZvcndhcmRSZWY8U1ZHU1ZHRWxlbWVudCwgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD4+KFxuICAgIChwcm9wcywgcmVmKSA9PiA8U2x1ZGdlVHJlYXRtZW50SWNvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPixcbiAgKSxcbiAgc2hvcnRlbl9jb2xsZWN0aW9uX2xpZmV0aW1lOiBmb3J3YXJkUmVmPFxuICAgIFNWR1NWR0VsZW1lbnQsXG4gICAgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD5cbiAgPigocHJvcHMsIHJlZikgPT4gPFNob3J0ZW5Db2xsZWN0aW9uTGlmZXRpbWVJY29uIHsuLi5wcm9wc30gcmVmPXtyZWZ9IC8+KSxcbiAgcGlwZXNfcHVtcHNfYmxvY2thZ2U6IGZvcndhcmRSZWY8U1ZHU1ZHRWxlbWVudCwgU1ZHUHJvcHM8U1ZHU1ZHRWxlbWVudD4+KFxuICAgIChwcm9wcywgcmVmKSA9PiA8UGlwZXNQdW1wc0Jsb2NrYWdlSWNvbiB7Li4ucHJvcHN9IHJlZj17cmVmfSAvPixcbiAgKSxcbn07XG5cbmV4cG9ydCBjb25zdCBJY29uOiBSZWFjdC5GQzxJY29uUHJvcHM+ID0gKHtcbiAgdXNlX2Nhc2UsXG4gIGNsYXNzTmFtZSxcbiAgcmVwbGFjZUNvbG9yLFxufSkgPT4ge1xuICBjb25zdCBJY29uQ29tcG9uZW50ID0gaWNvbkNvbXBvbmVudHNbdXNlX2Nhc2VdO1xuICBjb25zdCBpY29uUmVmID0gdXNlUmVmPFNWR1NWR0VsZW1lbnQ+KG51bGwpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHJlcGxhY2VDb2xvciAmJiBpY29uUmVmLmN1cnJlbnQpIHtcbiAgICAgIGNvbnN0IHBhdGhzID0gaWNvblJlZi5jdXJyZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3BhdGgnKTtcblxuICAgICAgcGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBpZiAocGF0aC5nZXRBdHRyaWJ1dGUoJ2ZpbGwnKSA9PT0gcmVwbGFjZUNvbG9yLmZyb20pIHtcbiAgICAgICAgICBwYXRoLnNldEF0dHJpYnV0ZSgnZmlsbCcsIHJlcGxhY2VDb2xvci50byk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW3JlcGxhY2VDb2xvcl0pO1xuXG4gIHJldHVybiBJY29uQ29tcG9uZW50ID8gKFxuICAgIDxJY29uQ29tcG9uZW50IGNsYXNzTmFtZT17Y2xhc3NOYW1lfSByZWY9e2ljb25SZWZ9IC8+XG4gICkgOiBudWxsO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUF1RSxJQUFBQyxVQUFBLEdBQUFELE9BQUE7QUFBQSxJQUFBRSxZQUFBLEdBQUFGLE9BQUE7QUFBQSxJQUFBRyxpQkFBQSxHQUFBSCxPQUFBO0FBQUEsSUFBQUksNEJBQUEsR0FBQUosT0FBQTtBQUFBLElBQUFLLHFCQUFBLEdBQUFMLE9BQUE7QUFBQSxTQUFBTSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQVIsd0JBQUFZLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxh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
|
|
@@ -9,6 +9,12 @@ Object.defineProperty(exports, "CompletedSvg", {
|
|
|
9
9
|
return _completed.ReactComponent;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "DownloadSvg", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function get() {
|
|
15
|
+
return _download.ReactComponent;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
12
18
|
Object.defineProperty(exports, "ErrorIconSvg", {
|
|
13
19
|
enumerable: true,
|
|
14
20
|
get: function get() {
|
|
@@ -34,8 +40,9 @@ Object.defineProperty(exports, "UploadSvg", {
|
|
|
34
40
|
}
|
|
35
41
|
});
|
|
36
42
|
var _upload = require("@svgr/webpack?&svgo=false&ref!assets/icons/upload.svg");
|
|
43
|
+
var _download = require("@svgr/webpack?&svgo=false&ref!assets/icons/download.svg");
|
|
37
44
|
var _completed = require("@svgr/webpack?&svgo=false&ref!assets/icons/kandoStepper/completed.svg");
|
|
38
45
|
var _errorIcon = require("@svgr/webpack?&svgo=false&ref!assets/icons/errorIcon.svg");
|
|
39
46
|
var _successIcon = require("@svgr/webpack?&svgo=false&ref!assets/icons/successIcon.svg");
|
|
40
47
|
var _i_Icon = require("@svgr/webpack?&svgo=false&ref!assets/icons/informationTooltip/i_Icon.svg");
|
|
41
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Fzc2V0cy9pY29ucy9rYW5kb1N0ZXBwZXIvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFVwbG9hZFN2ZyB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvdXBsb2FkLnN2Zyc7XG5leHBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBEb3dubG9hZFN2ZyB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvZG93bmxvYWQuc3ZnJztcbmV4cG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIENvbXBsZXRlZFN2ZyB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMva2FuZG9TdGVwcGVyL2NvbXBsZXRlZC5zdmcnO1xuZXhwb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRXJyb3JJY29uU3ZnIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9lcnJvckljb24uc3ZnJztcbmV4cG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIFN1Y2Nlc3NJY29uU3ZnIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9zdWNjZXNzSWNvbi5zdmcnO1xuZXhwb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgSW5Qcm9ncmVzc0ljb25TdmcgfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2luZm9ybWF0aW9uVG9vbHRpcC9pX0ljb24uc3ZnJztcbiJdLCJtYXBwaW5ncyI6IiJ9
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8" ?>
|
|
2
|
+
<svg baseProfile="full" height="15" width="15" version="1.1" viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
3
|
+
<defs />
|
|
4
|
+
<circle cx="50" cy="50" fill="#7E57C2" r="50" />
|
|
5
|
+
<rect fill="white" height="10" rx="2" ry="2" width="30" x="35" y="20" />
|
|
6
|
+
<rect fill="white" height="10" width="14" x="43" y="30" />
|
|
7
|
+
<rect fill="white" height="35" rx="6" ry="6" width="40" x="30" y="40" />
|
|
8
|
+
<rect fill="#7E57C2" height="18" width="32" x="34" y="50" />
|
|
9
|
+
</svg>
|