@kando-env/kando-ui 1.2.357 → 1.2.358-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.
@@ -10,6 +10,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm
10
10
  var L = _interopRequireWildcard(require("leaflet"));
11
11
  require("leaflet.markercluster");
12
12
  require("leaflet.pattern");
13
+ require("utilities/polylinedecorator");
13
14
  var _react = _interopRequireWildcard(require("react"));
14
15
  var _reactRedux = require("react-redux");
15
16
  var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
@@ -99,6 +100,10 @@ var Map = function Map(_ref) {
99
100
  var _useState9 = (0, _react.useState)(new L.FeatureGroup()),
100
101
  _useState10 = (0, _slicedToArray2.default)(_useState9, 1),
101
102
  areasLayerGroup = _useState10[0];
103
+ var _useState11 = (0, _react.useState)(false),
104
+ _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
105
+ edgesCheckbox = _useState12[0],
106
+ setEdgesCheckbox = _useState12[1];
102
107
  var memoizedPoints = (0, _react.useMemo)(function () {
103
108
  return mapRef.current !== null && points && /*#__PURE__*/_react.default.createElement(_PointMarkers.PointMarkers, {
104
109
  map: mapRef.current,
@@ -116,13 +121,20 @@ var Map = function Map(_ref) {
116
121
  // mapRef.current !== null && iconZoomControl(mapRef.current);
117
122
  // }, [mapRef.current, points, focusedEventPresent]);
118
123
 
124
+ var trackLayerbox = function trackLayerbox() {
125
+ var checkbox = document.querySelector('#edges-checkbox');
126
+ checkbox.addEventListener('change', function () {
127
+ setEdgesCheckbox(checkbox.checked);
128
+ });
129
+ };
119
130
  var zoomRulesForEventsView = function zoomRulesForEventsView() {
120
- var payload = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Edges.default, {
131
+ var payload = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, edgesCheckbox && /*#__PURE__*/_react.default.createElement(_Edges.default, {
121
132
  edges: edges,
122
133
  map: mapRef.current,
123
134
  L: L,
124
135
  points: points,
125
136
  hideEdges: hideEdges,
137
+ hideArrows: true,
126
138
  allowUnmonitoredDescendants: includeUnmonitoredDescendantsForEdges
127
139
  }), memoizedPoints);
128
140
  return payload;
@@ -147,7 +159,7 @@ var Map = function Map(_ref) {
147
159
  var memoizedZoomControl = (0, _react.useMemo)(function () {
148
160
  var payload = forEventsView ? zoomRulesForEventsView() : zoomRulesForDashaboardMaps();
149
161
  return payload;
150
- }, [mapZoomLevel, eventsData.isFetching, focusedEvent, hoveredEvent, points, mapRef.current]);
162
+ }, [mapZoomLevel, eventsData.isFetching, focusedEvent, hoveredEvent, points, mapRef.current, edgesCheckbox]);
151
163
  var memoizedEvent = (0, _react.useMemo)(function () {
152
164
  if (focusedEventPresent) {
153
165
  focusedEvent.focused = focusedEventPresent;
@@ -174,7 +186,7 @@ var Map = function Map(_ref) {
174
186
  };
175
187
  }, [focusedEvent, hoveredEvent, global_data.eventFilterParam]);
176
188
  (0, _react.useEffect)(function () {
177
- (0, _MapUtils.initializeMap)(mapZoomLevel, mapBoxStyle, _theme.leafletMap.satellite, mapRef, dispatch, _MapUtils.isValidArea, areaToCenterBy, setMapZoomLevel, forWWTPDashboard);
189
+ (0, _MapUtils.initializeMap)(mapZoomLevel, mapBoxStyle, _theme.leafletMap.satellite, mapRef, dispatch, _MapUtils.isValidArea, areaToCenterBy, setMapZoomLevel, forWWTPDashboard, forEventsView);
178
190
  return function cleanup() {
179
191
  // factoriesClusterGroup.clearLayers();
180
192
  // wwtpsLayerGroup.clearLayers();
@@ -200,6 +212,7 @@ var Map = function Map(_ref) {
200
212
  }).flat();
201
213
  }
202
214
  (0, _MapUtils.areaFocusLogic)(mapRef, _MapUtils.isValidArea, areaToCenterBy);
215
+ trackLayerbox();
203
216
  }
204
217
  }, [mapRef.current, areaToCenterBy]);
205
218
  (0, _react.useEffect)(function () {
@@ -236,4 +249,4 @@ var Map = function Map(_ref) {
236
249
  }), (0, _MapUtils.shoudLoadDependentMapObjects)(edges, areas, global_data, mapRef, points) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, memoizedEvent, memoizedZoomControl, children))));
237
250
  };
238
251
  exports.Map = Map;
239
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0UmVkdXgiLCJfRXJyb3JCb3VuZGFyeSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfQXJlYVBvbHlnb25zIiwiX0VkZ2VzIiwiX1BvaW50TWFya2VycyIsIl9FdmVudCIsIl9NYXBVdGlscyIsIl90aGVtZSIsIl9pMThuIiwiX0xpc3RDb250ZXh0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJNYXAiLCJfcmVmIiwiYXJlYXMiLCJlZGdlcyIsInBvaW50cyIsImdsb2JhbF9kYXRhIiwiYXJlYVRvQ2VudGVyQnkiLCJmb2N1c2VkRXZlbnQiLCJob3ZlcmVkRXZlbnQiLCJfcmVmJGhpZGVFZGdlcyIsImhpZGVFZGdlcyIsIl9yZWYkbWFwQm94U3R5bGUiLCJtYXBCb3hTdHlsZSIsImxlYWZsZXRNYXAiLCJtYXBEZWZhdWx0IiwiY2hpbGRyZW4iLCJfcmVmJGluY2x1ZGVVbm1vbml0b3IiLCJpbmNsdWRlVW5tb25pdG9yZWRQb2ludHMiLCJfcmVmJGluY2x1ZGVVbm1vbml0b3IyIiwiaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyIsIl9yZWYkZm9yRXZlbnRzVmlldyIsImZvckV2ZW50c1ZpZXciLCJfcmVmJHN0eWxlIiwic3R5bGUiLCJfcmVmJGZvcldXVFBEYXNoYm9hcmQiLCJmb3JXV1RQRGFzaGJvYXJkIiwibWFwIiwibWFwUmVmIiwidXNlUmVmIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsIm1hcFpvb21MZXZlbCIsInNldE1hcFpvb21MZXZlbCIsIl91c2VTZWxlY3RlZEl0ZW0iLCJ1c2VTZWxlY3RlZEl0ZW0iLCJzZWxlY3RlZEl0ZW0iLCJldmVudHNEYXRhIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiaG92ZXJlZEV2ZW50UHJlc2VudCIsInVzZU1lbW8iLCJ1bmRlZmluZWQiLCJmb2N1c2VkRXZlbnRQcmVzZW50IiwiX3VzZVN0YXRlMyIsIndpbmRvdyIsImN1c3RvbUxlYWZsZXQiLCJtYXJrZXJDbHVzdGVyR3JvdXAiLCJzcGlkZXJmeU9uTWF4Wm9vbSIsInNob3dDb3ZlcmFnZU9uSG92ZXIiLCJ6b29tVG9Cb3VuZHNPbkNsaWNrIiwiYW5pbWF0ZSIsImRpc2FibGVDbHVzdGVyaW5nQXRab29tIiwicmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHMiLCJjaHVua2VkTG9hZGluZyIsImljb25DcmVhdGVGdW5jdGlvbiIsImNsdXN0ZXIiLCJEaXZJY29uIiwiaHRtbCIsImNvbmNhdCIsIl9jaGlsZENvdW50IiwiaTE4biIsInQiLCJjbGFzc05hbWUiLCJpY29uU2l6ZSIsIlBvaW50IiwiX3VzZVN0YXRlNCIsImZhY3Rvcmllc0NsdXN0ZXJHcm91cCIsIl91c2VTdGF0ZTUiLCJsYXllckdyb3VwIiwiX3VzZVN0YXRlNiIsInd3dHBzTGF5ZXJHcm91cCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiY29sbGVjdG9yc0xheWVyR3JvdXAiLCJfdXNlU3RhdGU5IiwiRmVhdHVyZUdyb3VwIiwiX3VzZVN0YXRlMTAiLCJhcmVhc0xheWVyR3JvdXAiLCJtZW1vaXplZFBvaW50cyIsImN1cnJlbnQiLCJjcmVhdGVFbGVtZW50IiwiUG9pbnRNYXJrZXJzIiwicmVyZW5kZXIiLCJ6b29tTGV2ZWxzIiwiZmFjdG9yaWVzR3JvdXAiLCJ3d3Rwc0dyb3VwIiwiY29sbGVjdG9yc0dyb3VwIiwiem9vbVJ1bGVzRm9yRXZlbnRzVmlldyIsInBheWxvYWQiLCJGcmFnbWVudCIsImFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cyIsInpvb21SdWxlc0ZvckRhc2hhYm9hcmRNYXBzIiwibWVtb2l6ZWRab29tQ29udHJvbCIsImlzRmV0Y2hpbmciLCJtZW1vaXplZEV2ZW50IiwiZm9jdXNlZCIsImhvdmVyZWQiLCJFdmVudCIsImV2ZW50IiwiaW5jbHVkZU5ldHdvcmsiLCJldmVudEZpbHRlclBhcmFtIiwidXNlRWZmZWN0IiwiY2xlYW51cCIsIl9tYXBSZWYkY3VycmVudCIsImNsZWFyTGF5ZXJzIiwicmVtb3ZlTGF5ZXIiLCJpbml0aWFsaXplTWFwIiwic2F0ZWxsaXRlIiwiaXNWYWxpZEFyZWEiLCJyZW1vdmUiLCJ3YXRlckF1dGhvcml0eUlkIiwiZ2V0Wm9vbSIsImFyZWEiLCJzaGFwZV9kYXRhIiwiZmxhdCIsImFyZWFGb2N1c0xvZ2ljIiwiX21hcFJlZiRjdXJyZW50MiIsImNsaWNrZWQiLCJlYWNoTGF5ZXIiLCJsYXllciIsImthbmRvX29iamVjdF9pZCIsImlzUG9wdXBPcGVuIiwiTWFya2VyIiwiZmlyZSIsIlBvbHlnb24iLCJzaWRlbmF2RXhwYW5kZWQiLCJpZCIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiQXJlYVBvbHlnb25zIiwibWFwWm9vbSIsImZlYXR1cmVHcm91cCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL01hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCAnbGVhZmxldC5tYXJrZXJjbHVzdGVyJztcbmltcG9ydCAnbGVhZmxldC5wYXR0ZXJuJztcbmltcG9ydCBSZWFjdCwge1xuICBDU1NQcm9wZXJ0aWVzLFxuICB1c2VFZmZlY3QsXG4gIHVzZU1lbW8sXG4gIHVzZVJlZixcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBJRWRnZSB9IGZyb20gJ3NyYy9zdG9yZS9lZGdlcy9tb2RlbHMvSUVkZ2UnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50Jztcbi8vIGltcG9ydCB7IHN0b3JlTWFwIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCB7IElHbG9iYWxTdGF0ZSB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvbW9kZWxzL0lHbG9iYWxTdGF0ZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IEVycm9yQm91bmRhcnkgZnJvbSAnc3JjL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCB7IEFyZWFQb2x5Z29ucyB9IGZyb20gJy4vYXJlYXMvQXJlYVBvbHlnb25zJztcbmltcG9ydCBFZGdlcyBmcm9tICcuL2VkZ2VzL0VkZ2VzJztcbmltcG9ydCAnLi9NYXAuc2Nzcyc7XG5pbXBvcnQgJy4vcG9pbnRzL1BvaW50SWNvbi5zY3NzJztcbmltcG9ydCB7IFBvaW50TWFya2VycyB9IGZyb20gJy4vcG9pbnRzL1BvaW50TWFya2Vycyc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgRXZlbnQgfSBmcm9tICcuL2V2ZW50cy9FdmVudCc7XG5pbXBvcnQge1xuICBhcmVhRm9jdXNMb2dpYyxcbiAgaW5pdGlhbGl6ZU1hcCxcbiAgaXNWYWxpZEFyZWEsXG4gIHNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMsXG4gIHNob3VsZExvYWRNYXBPYmplY3RzLFxuICB6b29tTGV2ZWxzLFxufSBmcm9tICcuL01hcFV0aWxzJztcbmltcG9ydCB7IGxlYWZsZXRNYXAgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IGkxOG4gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0Q29udGV4dCc7XG5yZXF1aXJlKCdsZWFmbGV0Lm1hcmtlcmNsdXN0ZXInKTtcblxuaW50ZXJmYWNlIE1hcFByb3BzIHtcbiAgYXJlYXM6IElBcmVhW107XG4gIGVkZ2VzPzogSUVkZ2VbXTtcbiAgcG9pbnRzPzogSVBvaW50W107XG4gIGdsb2JhbF9kYXRhOiBJR2xvYmFsU3RhdGU7XG4gIGFyZWFUb0NlbnRlckJ5PzogYW55O1xuICBmb2N1c2VkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBob3ZlcmVkRXZlbnQ/OiBJRXZlbnQgfCBudWxsO1xuICBoaWRlRWRnZXM/OiBib29sZWFuO1xuICBtYXBCb3hTdHlsZT86IHN0cmluZztcbiAgY2hpbGRyZW4/OiBhbnk7XG4gIHN0eWxlPzogQ1NTUHJvcGVydGllcztcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPzogYm9vbGVhbjtcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcz86IGJvb2xlYW47XG4gIGZvckV2ZW50c1ZpZXc6IGJvb2xlYW47XG4gIGZvcldXVFBEYXNoYm9hcmQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgTWFwOiBSZWFjdC5GQzxNYXBQcm9wcz4gPSAoe1xuICBhcmVhcyxcbiAgZWRnZXMsXG4gIHBvaW50cyxcbiAgZ2xvYmFsX2RhdGEsXG4gIGFyZWFUb0NlbnRlckJ5LFxuICBmb2N1c2VkRXZlbnQsXG4gIGhvdmVyZWRFdmVudCxcbiAgaGlkZUVkZ2VzID0gZmFsc2UsXG4gIG1hcEJveFN0eWxlID0gbGVhZmxldE1hcC5tYXBEZWZhdWx0LFxuICBjaGlsZHJlbixcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzID0gdHJ1ZSxcbiAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyA9IGZhbHNlLFxuICBmb3JFdmVudHNWaWV3ID0gZmFsc2UsXG4gIHN0eWxlID0ge30sXG4gIGZvcldXVFBEYXNoYm9hcmQgPSBmYWxzZSxcbn0pID0+IHtcbiAgY29uc3QgeyBtYXAgfSA9IGdsb2JhbF9kYXRhO1xuICBjb25zdCBtYXBSZWYgPSB1c2VSZWY8TC5NYXAgfCBudWxsPihudWxsKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBbbWFwWm9vbUxldmVsLCBzZXRNYXBab29tTGV2ZWxdID0gdXNlU3RhdGUoMik7XG4gIGNvbnN0IHsgc2VsZWN0ZWRJdGVtIH0gPSB1c2VTZWxlY3RlZEl0ZW0oKTtcbiAgY29uc3QgZXZlbnRzRGF0YSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLmV2ZW50c19kYXRhLFxuICApO1xuICBjb25zdCBob3ZlcmVkRXZlbnRQcmVzZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIGhvdmVyZWRFdmVudCAhPT0gbnVsbCAmJiBob3ZlcmVkRXZlbnQgIT09IHVuZGVmaW5lZDtcbiAgfSwgW2hvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IGZvY3VzZWRFdmVudFByZXNlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gZm9jdXNlZEV2ZW50ICE9PSBudWxsICYmIGZvY3VzZWRFdmVudCAhPT0gdW5kZWZpbmVkO1xuICB9LCBbZm9jdXNlZEV2ZW50XSk7XG5cbiAgY29uc3QgW2ZhY3Rvcmllc0NsdXN0ZXJHcm91cF0gPSB1c2VTdGF0ZShcbiAgICB3aW5kb3cuY3VzdG9tTGVhZmxldC5tYXJrZXJDbHVzdGVyR3JvdXAoe1xuICAgICAgc3BpZGVyZnlPbk1heFpvb206IGZhbHNlLFxuICAgICAgc2hvd0NvdmVyYWdlT25Ib3ZlcjogZmFsc2UsXG4gICAgICB6b29tVG9Cb3VuZHNPbkNsaWNrOiB0cnVlLFxuICAgICAgYW5pbWF0ZTogdHJ1ZSxcbiAgICAgIGRpc2FibGVDbHVzdGVyaW5nQXRab29tOiAxNSxcbiAgICAgIHJlbW92ZU91dHNpZGVWaXNpYmxlQm91bmRzOiBmYWxzZSxcbiAgICAgIGNodW5rZWRMb2FkaW5nOiB0cnVlLFxuICAgICAgaWNvbkNyZWF0ZUZ1bmN0aW9uOiBmdW5jdGlvbiAoY2x1c3Rlcikge1xuICAgICAgICByZXR1cm4gbmV3IEwuRGl2SWNvbih7XG4gICAgICAgICAgaHRtbDogYDxkaXY+PHNwYW4+JHtcbiAgICAgICAgICAgIGNsdXN0ZXIuX2NoaWxkQ291bnRcbiAgICAgICAgICB9PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9J21hcmtlci1jbHVzdGVyLW5hbWUnPiR7aTE4bi50KFxuICAgICAgICAgICAgJ2luZHVzdHJpZXMnLFxuICAgICAgICAgICl9PC9kaXY+YCxcbiAgICAgICAgICBjbGFzc05hbWU6ICdtYXJrZXItY2x1c3RlcicsXG4gICAgICAgICAgaWNvblNpemU6IG5ldyBMLlBvaW50KDQwLCA0MCksXG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9KSxcbiAgKTtcblxuICBjb25zdCBbd3d0cHNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcbiAgY29uc3QgW2NvbGxlY3RvcnNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcbiAgLy9jb25zdCBbZmFjdG9yaWVzTGF5ZXJHcm91cF0gPSB1c2VTdGF0ZShMLmxheWVyR3JvdXAoKSk7XG4gIGNvbnN0IFthcmVhc0xheWVyR3JvdXBdID0gdXNlU3RhdGUobmV3IEwuRmVhdHVyZUdyb3VwKCkpO1xuXG4gIGNvbnN0IG1lbW9pemVkUG9pbnRzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgICBwb2ludHMgJiYgKFxuICAgICAgICA8UG9pbnRNYXJrZXJzXG4gICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICBwb2ludHM9e3BvaW50c31cbiAgICAgICAgICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM9e2luY2x1ZGVVbm1vbml0b3JlZFBvaW50c31cbiAgICAgICAgICByZXJlbmRlcj17em9vbUxldmVsc1ttYXBab29tTGV2ZWxdfVxuICAgICAgICAgIGZhY3Rvcmllc0dyb3VwPXtmYWN0b3JpZXNDbHVzdGVyR3JvdXB9XG4gICAgICAgICAgd3d0cHNHcm91cD17d3d0cHNMYXllckdyb3VwfVxuICAgICAgICAgIGNvbGxlY3RvcnNHcm91cD17Y29sbGVjdG9yc0xheWVyR3JvdXB9XG4gICAgICAgICAgZm9yRXZlbnRzVmlldz17ZmFsc2V9XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgKTtcbiAgfSwgW21hcFJlZi5jdXJyZW50LCBwb2ludHMsIGZvY3VzZWRFdmVudFByZXNlbnQsIG1hcFpvb21MZXZlbF0pO1xuXG4gIC8vIGNvbnN0IGFjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAvLyAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmIGljb25ab29tQ29udHJvbChtYXBSZWYuY3VycmVudCk7XG4gIC8vIH0sIFttYXBSZWYuY3VycmVudCwgcG9pbnRzLCBmb2N1c2VkRXZlbnRQcmVzZW50XSk7XG5cbiAgY29uc3Qgem9vbVJ1bGVzRm9yRXZlbnRzVmlldyA9ICgpID0+IHtcbiAgICBjb25zdCBwYXlsb2FkID0gKFxuICAgICAgPD5cbiAgICAgICAgPEVkZ2VzXG4gICAgICAgICAgZWRnZXM9e2VkZ2VzIX1cbiAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgcG9pbnRzPXtwb2ludHMhfVxuICAgICAgICAgIGhpZGVFZGdlcz17aGlkZUVkZ2VzfVxuICAgICAgICAgIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz17aW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc31cbiAgICAgICAgLz5cbiAgICAgICAge21lbW9pemVkUG9pbnRzfVxuICAgICAgPC8+XG4gICAgKTtcblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9O1xuXG4gIGNvbnN0IHpvb21SdWxlc0ZvckRhc2hhYm9hcmRNYXBzID0gKCkgPT4ge1xuICAgIGxldCBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgIHN3aXRjaCAoem9vbUxldmVsc1ttYXBab29tTGV2ZWxdKSB7XG4gICAgICBjYXNlICdTbWFsbCc6XG4gICAgICBjYXNlICdNZWRpdW0nOlxuICAgICAgICBwYXlsb2FkID0gem9vbVJ1bGVzRm9yRXZlbnRzVmlldygpO1xuICAgICAgICBicmVhaztcbiAgICAgIC8vIGNhc2UgJ01MYXJnZSc6XG4gICAgICAvLyBjYXNlICdMYXJnZSc6XG4gICAgICAvLyBjYXNlICdYTGFyZ2UnOlxuICAgICAgLy8gZGVmYXVsdDpcbiAgICAgIC8vICAgcGF5bG9hZCA9IDw+e21lbW9pemVkUG9pbnRzfTwvPjtcbiAgICAgIC8vICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH07XG5cbiAgY29uc3QgbWVtb2l6ZWRab29tQ29udHJvbCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHBheWxvYWQgPSBmb3JFdmVudHNWaWV3XG4gICAgICA/IHpvb21SdWxlc0ZvckV2ZW50c1ZpZXcoKVxuICAgICAgOiB6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcygpO1xuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH0sIFtcbiAgICBtYXBab29tTGV2ZWwsXG4gICAgZXZlbnRzRGF0YS5pc0ZldGNoaW5nLFxuICAgIGZvY3VzZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnQsXG4gICAgcG9pbnRzLFxuICAgIG1hcFJlZi5jdXJyZW50LFxuICBdKTtcblxuICBjb25zdCBtZW1vaXplZEV2ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGZvY3VzZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGZvY3VzZWRFdmVudCEuZm9jdXNlZCA9IGZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgICBmb2N1c2VkRXZlbnQhLmhvdmVyZWQgPSAhZm9jdXNlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoaG92ZXJlZEV2ZW50UHJlc2VudCkge1xuICAgICAgaG92ZXJlZEV2ZW50IS5ob3ZlcmVkID0gaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICAgIGhvdmVyZWRFdmVudCEuZm9jdXNlZCA9ICFob3ZlcmVkRXZlbnRQcmVzZW50O1xuICAgIH1cblxuICAgIGlmICghaG92ZXJlZEV2ZW50UHJlc2VudCAmJiAhZm9jdXNlZEV2ZW50UHJlc2VudCkgcmV0dXJuIDw+PC8+O1xuICAgIHJldHVybiAoXG4gICAgICA8RXZlbnRcbiAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudCEgfHwgaG92ZXJlZEV2ZW50IX1cbiAgICAgICAgbWFwPXttYXB9XG4gICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgaW5jbHVkZU5ldHdvcms9eyFob3ZlcmVkRXZlbnRQcmVzZW50fVxuICAgICAgLz5cbiAgICApO1xuICB9LCBbZm9jdXNlZEV2ZW50LCBob3ZlcmVkRXZlbnQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgY29sbGVjdG9yc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIG1hcFJlZi5jdXJyZW50Py5yZW1vdmVMYXllcihjb2xsZWN0b3JzTGF5ZXJHcm91cCk7XG4gICAgfTtcbiAgfSwgW2ZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplTWFwKFxuICAgICAgbWFwWm9vbUxldmVsLFxuICAgICAgbWFwQm94U3R5bGUsXG4gICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgIG1hcFJlZixcbiAgICAgIGRpc3BhdGNoLFxuICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICBhcmVhVG9DZW50ZXJCeSxcbiAgICAgIHNldE1hcFpvb21MZXZlbCxcbiAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgKTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgLy8gZmFjdG9yaWVzQ2x1c3Rlckdyb3VwLmNsZWFyTGF5ZXJzKCk7XG4gICAgICAvLyB3d3Rwc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIGNvbGxlY3RvcnNMYXllckdyb3VwLmNsZWFyTGF5ZXJzKCk7XG4gICAgICAvLyBhcmVhc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIG1hcFJlZi5jdXJyZW50Py5yZW1vdmVMYXllcihmYWN0b3JpZXNDbHVzdGVyR3JvdXApO1xuICAgICAgLy8gbWFwUmVmLmN1cnJlbnQ/LnJlbW92ZUxheWVyKHd3dHBzTGF5ZXJHcm91cCk7XG4gICAgICAvLyBtYXBSZWYuY3VycmVudD8ucmVtb3ZlTGF5ZXIoY29sbGVjdG9yc0xheWVyR3JvdXApO1xuICAgICAgLy8gbWFwUmVmLmN1cnJlbnQ/LnJlbW92ZUxheWVyKGFyZWFzTGF5ZXJHcm91cCk7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBtYXBSZWYuY3VycmVudC5yZW1vdmUoKTtcbiAgICAgIC8vIGRpc3BhdGNoKHN0b3JlTWFwKHVuZGVmaW5lZCkpO1xuICAgIH07XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICBpbml0aWFsaXplTWFwKFxuICAgICAgICBtYXBab29tTGV2ZWwsXG4gICAgICAgIG1hcEJveFN0eWxlLFxuICAgICAgICBsZWFmbGV0TWFwLnNhdGVsbGl0ZSxcbiAgICAgICAgbWFwUmVmLFxuICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICAgIGFyZWFUb0NlbnRlckJ5LFxuICAgICAgICBzZXRNYXBab29tTGV2ZWwsXG4gICAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICBzZXRNYXBab29tTGV2ZWwobWFwUmVmLmN1cnJlbnQuZ2V0Wm9vbSgpKTtcbiAgICAgIGlmICghYXJlYVRvQ2VudGVyQnkpIHtcbiAgICAgICAgYXJlYVRvQ2VudGVyQnkgPSBhcmVhcy5tYXAoKGFyZWEpID0+IGFyZWEuc2hhcGVfZGF0YSkuZmxhdCgpO1xuICAgICAgfVxuXG4gICAgICBhcmVhRm9jdXNMb2dpYyhtYXBSZWYsIGlzVmFsaWRBcmVhLCBhcmVhVG9DZW50ZXJCeSk7XG4gICAgfVxuICB9LCBbbWFwUmVmLmN1cnJlbnQsIGFyZWFUb0NlbnRlckJ5XSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBsZXQgY2xpY2tlZCA9IGZhbHNlO1xuXG4gICAgbWFwUmVmLmN1cnJlbnQ/LmVhY2hMYXllcigobGF5ZXIpID0+IHtcbiAgICAgIGlmIChjbGlja2VkKSByZXR1cm47XG5cbiAgICAgIGlmIChcbiAgICAgICAgbGF5ZXI/LmthbmRvX29iamVjdF9pZCA9PT0gc2VsZWN0ZWRJdGVtICYmXG4gICAgICAgIGxheWVyLmlzUG9wdXBPcGVuKCkgPT09IGZhbHNlXG4gICAgICApIHtcbiAgICAgICAgaWYgKGxheWVyIGluc3RhbmNlb2YgTC5NYXJrZXIpIHtcbiAgICAgICAgICBsYXllci5maXJlKCdjbGljaycpO1xuICAgICAgICB9IGVsc2UgaWYgKGxheWVyIGluc3RhbmNlb2YgTC5Qb2x5Z29uKSB7XG4gICAgICAgICAgbGF5ZXIuZmlyZSgnY2xpY2stZXZlbnQnKTtcbiAgICAgICAgfVxuICAgICAgICBjbGlja2VkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSwgW3NlbGVjdGVkSXRlbV0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJrZC1tYXAtY29udGFpbmVyXCIgc3R5bGU9e3N0eWxlfT5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXtgIG1hcC1jb250YWluZXIgJHtcbiAgICAgICAgICBnbG9iYWxfZGF0YS5zaWRlbmF2RXhwYW5kZWQgPyAnJyA6ICdtYXAtY29udGFpbmVyLS1zaWRlbmF2LWNvbGxhcHNlZCdcbiAgICAgICAgfWB9XG4gICAgICA+XG4gICAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICAgIDxkaXYgaWQ9XCJtYXBcIj48L2Rpdj5cbiAgICAgICAgICB7c2hvdWxkTG9hZE1hcE9iamVjdHMoZ2xvYmFsX2RhdGEsIG1hcFJlZiwgZWRnZXMsIHBvaW50cykgJiYgKFxuICAgICAgICAgICAgPEFyZWFQb2x5Z29uc1xuICAgICAgICAgICAgICBhcmVhcz17YXJlYXN9XG4gICAgICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXthcmVhVG9DZW50ZXJCeX1cbiAgICAgICAgICAgICAgbWFwWm9vbT17bWFwWm9vbUxldmVsfVxuICAgICAgICAgICAgICByZXJlbmRlcj17em9vbUxldmVsc1ttYXBab29tTGV2ZWxdfVxuICAgICAgICAgICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICAgICAgICAgIGZlYXR1cmVHcm91cD17YXJlYXNMYXllckdyb3VwfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIHtzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzKFxuICAgICAgICAgICAgZWRnZXMsXG4gICAgICAgICAgICBhcmVhcyxcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLFxuICAgICAgICAgICAgbWFwUmVmLFxuICAgICAgICAgICAgcG9pbnRzLFxuICAgICAgICAgICkgJiYgKFxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAge21lbW9pemVkRXZlbnR9XG4gICAgICAgICAgICAgIHttZW1vaXplZFpvb21Db250cm9sfVxuICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApfVxuICAgICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLElBQUFBLENBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBQSxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFGLHVCQUFBLENBQUFDLE9BQUE7QUFPQSxJQUFBRSxXQUFBLEdBQUFGLE9BQUE7QUFPQSxJQUFBRyxjQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFDQSxJQUFBSyxhQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxNQUFBLEdBQUFGLHNCQUFBLENBQUFKLE9BQUE7QUFDQUEsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQU8sYUFBQSxHQUFBUCxPQUFBO0FBRUEsSUFBQVEsTUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsU0FBQSxHQUFBVCxPQUFBO0FBUUEsSUFBQVUsTUFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsS0FBQSxHQUFBUCxzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQVksWUFBQSxHQUFBWixPQUFBO0FBQXFFLFNBQUFhLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlC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
252
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0UmVkdXgiLCJfRXJyb3JCb3VuZGFyeSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfQXJlYVBvbHlnb25zIiwiX0VkZ2VzIiwiX1BvaW50TWFya2VycyIsIl9FdmVudCIsIl9NYXBVdGlscyIsIl90aGVtZSIsIl9pMThuIiwiX0xpc3RDb250ZXh0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJNYXAiLCJfcmVmIiwiYXJlYXMiLCJlZGdlcyIsInBvaW50cyIsImdsb2JhbF9kYXRhIiwiYXJlYVRvQ2VudGVyQnkiLCJmb2N1c2VkRXZlbnQiLCJob3ZlcmVkRXZlbnQiLCJfcmVmJGhpZGVFZGdlcyIsImhpZGVFZGdlcyIsIl9yZWYkbWFwQm94U3R5bGUiLCJtYXBCb3hTdHlsZSIsImxlYWZsZXRNYXAiLCJtYXBEZWZhdWx0IiwiY2hpbGRyZW4iLCJfcmVmJGluY2x1ZGVVbm1vbml0b3IiLCJpbmNsdWRlVW5tb25pdG9yZWRQb2ludHMiLCJfcmVmJGluY2x1ZGVVbm1vbml0b3IyIiwiaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlcyIsIl9yZWYkZm9yRXZlbnRzVmlldyIsImZvckV2ZW50c1ZpZXciLCJfcmVmJHN0eWxlIiwic3R5bGUiLCJfcmVmJGZvcldXVFBEYXNoYm9hcmQiLCJmb3JXV1RQRGFzaGJvYXJkIiwibWFwIiwibWFwUmVmIiwidXNlUmVmIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsIm1hcFpvb21MZXZlbCIsInNldE1hcFpvb21MZXZlbCIsIl91c2VTZWxlY3RlZEl0ZW0iLCJ1c2VTZWxlY3RlZEl0ZW0iLCJzZWxlY3RlZEl0ZW0iLCJldmVudHNEYXRhIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiaG92ZXJlZEV2ZW50UHJlc2VudCIsInVzZU1lbW8iLCJ1bmRlZmluZWQiLCJmb2N1c2VkRXZlbnRQcmVzZW50IiwiX3VzZVN0YXRlMyIsIndpbmRvdyIsImN1c3RvbUxlYWZsZXQiLCJtYXJrZXJDbHVzdGVyR3JvdXAiLCJzcGlkZXJmeU9uTWF4Wm9vbSIsInNob3dDb3ZlcmFnZU9uSG92ZXIiLCJ6b29tVG9Cb3VuZHNPbkNsaWNrIiwiYW5pbWF0ZSIsImRpc2FibGVDbHVzdGVyaW5nQXRab29tIiwicmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHMiLCJjaHVua2VkTG9hZGluZyIsImljb25DcmVhdGVGdW5jdGlvbiIsImNsdXN0ZXIiLCJEaXZJY29uIiwiaHRtbCIsImNvbmNhdCIsIl9jaGlsZENvdW50IiwiaTE4biIsInQiLCJjbGFzc05hbWUiLCJpY29uU2l6ZSIsIlBvaW50IiwiX3VzZVN0YXRlNCIsImZhY3Rvcmllc0NsdXN0ZXJHcm91cCIsIl91c2VTdGF0ZTUiLCJsYXllckdyb3VwIiwiX3VzZVN0YXRlNiIsInd3dHBzTGF5ZXJHcm91cCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiY29sbGVjdG9yc0xheWVyR3JvdXAiLCJfdXNlU3RhdGU5IiwiRmVhdHVyZUdyb3VwIiwiX3VzZVN0YXRlMTAiLCJhcmVhc0xheWVyR3JvdXAiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwiZWRnZXNDaGVja2JveCIsInNldEVkZ2VzQ2hlY2tib3giLCJtZW1vaXplZFBvaW50cyIsImN1cnJlbnQiLCJjcmVhdGVFbGVtZW50IiwiUG9pbnRNYXJrZXJzIiwicmVyZW5kZXIiLCJ6b29tTGV2ZWxzIiwiZmFjdG9yaWVzR3JvdXAiLCJ3d3Rwc0dyb3VwIiwiY29sbGVjdG9yc0dyb3VwIiwidHJhY2tMYXllcmJveCIsImNoZWNrYm94IiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiYWRkRXZlbnRMaXN0ZW5lciIsImNoZWNrZWQiLCJ6b29tUnVsZXNGb3JFdmVudHNWaWV3IiwicGF5bG9hZCIsIkZyYWdtZW50IiwiaGlkZUFycm93cyIsImFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cyIsInpvb21SdWxlc0ZvckRhc2hhYm9hcmRNYXBzIiwibWVtb2l6ZWRab29tQ29udHJvbCIsImlzRmV0Y2hpbmciLCJtZW1vaXplZEV2ZW50IiwiZm9jdXNlZCIsImhvdmVyZWQiLCJFdmVudCIsImV2ZW50IiwiaW5jbHVkZU5ldHdvcmsiLCJldmVudEZpbHRlclBhcmFtIiwidXNlRWZmZWN0IiwiY2xlYW51cCIsIl9tYXBSZWYkY3VycmVudCIsImNsZWFyTGF5ZXJzIiwicmVtb3ZlTGF5ZXIiLCJpbml0aWFsaXplTWFwIiwic2F0ZWxsaXRlIiwiaXNWYWxpZEFyZWEiLCJyZW1vdmUiLCJ3YXRlckF1dGhvcml0eUlkIiwiZ2V0Wm9vbSIsImFyZWEiLCJzaGFwZV9kYXRhIiwiZmxhdCIsImFyZWFGb2N1c0xvZ2ljIiwiX21hcFJlZiRjdXJyZW50MiIsImNsaWNrZWQiLCJlYWNoTGF5ZXIiLCJsYXllciIsImthbmRvX29iamVjdF9pZCIsImlzUG9wdXBPcGVuIiwiTWFya2VyIiwiZmlyZSIsIlBvbHlnb24iLCJzaWRlbmF2RXhwYW5kZWQiLCJpZCIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiQXJlYVBvbHlnb25zIiwibWFwWm9vbSIsImZlYXR1cmVHcm91cCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL01hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCAnbGVhZmxldC5tYXJrZXJjbHVzdGVyJztcbmltcG9ydCAnbGVhZmxldC5wYXR0ZXJuJztcbmltcG9ydCAnc3JjL3V0aWxpdGllcy9wb2x5bGluZWRlY29yYXRvcic7XG5pbXBvcnQgUmVhY3QsIHtcbiAgQ1NTUHJvcGVydGllcyxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG4vLyBpbXBvcnQgeyBzdG9yZU1hcCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBJR2xvYmFsU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL21vZGVscy9JR2xvYmFsU3RhdGUnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgeyBBcmVhUG9seWdvbnMgfSBmcm9tICcuL2FyZWFzL0FyZWFQb2x5Z29ucyc7XG5pbXBvcnQgRWRnZXMgZnJvbSAnLi9lZGdlcy9FZGdlcyc7XG5pbXBvcnQgJy4vTWFwLnNjc3MnO1xuaW1wb3J0ICcuL3BvaW50cy9Qb2ludEljb24uc2Nzcyc7XG5pbXBvcnQgeyBQb2ludE1hcmtlcnMgfSBmcm9tICcuL3BvaW50cy9Qb2ludE1hcmtlcnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IEV2ZW50IH0gZnJvbSAnLi9ldmVudHMvRXZlbnQnO1xuaW1wb3J0IHtcbiAgYXJlYUZvY3VzTG9naWMsXG4gIGluaXRpYWxpemVNYXAsXG4gIGlzVmFsaWRBcmVhLFxuICBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzLFxuICBzaG91bGRMb2FkTWFwT2JqZWN0cyxcbiAgem9vbUxldmVscyxcbn0gZnJvbSAnLi9NYXBVdGlscyc7XG5pbXBvcnQgeyBsZWFmbGV0TWFwIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IHVzZVNlbGVjdGVkSXRlbSB9IGZyb20gJ3NyYy9wYWdlcy9EYXNoYm9hcmRNYXAvTGlzdENvbnRleHQnO1xucmVxdWlyZSgnbGVhZmxldC5tYXJrZXJjbHVzdGVyJyk7XG5cbmludGVyZmFjZSBNYXBQcm9wcyB7XG4gIGFyZWFzOiBJQXJlYVtdO1xuICBlZGdlcz86IElFZGdlW107XG4gIHBvaW50cz86IElQb2ludFtdO1xuICBnbG9iYWxfZGF0YTogSUdsb2JhbFN0YXRlO1xuICBhcmVhVG9DZW50ZXJCeT86IGFueTtcbiAgZm9jdXNlZEV2ZW50PzogSUV2ZW50IHwgbnVsbDtcbiAgaG92ZXJlZEV2ZW50PzogSUV2ZW50IHwgbnVsbDtcbiAgaGlkZUVkZ2VzPzogYm9vbGVhbjtcbiAgbWFwQm94U3R5bGU/OiBzdHJpbmc7XG4gIGNoaWxkcmVuPzogYW55O1xuICBzdHlsZT86IENTU1Byb3BlcnRpZXM7XG4gIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cz86IGJvb2xlYW47XG4gIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXM/OiBib29sZWFuO1xuICBmb3JFdmVudHNWaWV3OiBib29sZWFuO1xuICBmb3JXV1RQRGFzaGJvYXJkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IE1hcDogUmVhY3QuRkM8TWFwUHJvcHM+ID0gKHtcbiAgYXJlYXMsXG4gIGVkZ2VzLFxuICBwb2ludHMsXG4gIGdsb2JhbF9kYXRhLFxuICBhcmVhVG9DZW50ZXJCeSxcbiAgZm9jdXNlZEV2ZW50LFxuICBob3ZlcmVkRXZlbnQsXG4gIGhpZGVFZGdlcyA9IGZhbHNlLFxuICBtYXBCb3hTdHlsZSA9IGxlYWZsZXRNYXAubWFwRGVmYXVsdCxcbiAgY2hpbGRyZW4sXG4gIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyA9IHRydWUsXG4gIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMgPSBmYWxzZSxcbiAgZm9yRXZlbnRzVmlldyA9IGZhbHNlLFxuICBzdHlsZSA9IHt9LFxuICBmb3JXV1RQRGFzaGJvYXJkID0gZmFsc2UsXG59KSA9PiB7XG4gIGNvbnN0IHsgbWFwIH0gPSBnbG9iYWxfZGF0YTtcbiAgY29uc3QgbWFwUmVmID0gdXNlUmVmPEwuTWFwIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgW21hcFpvb21MZXZlbCwgc2V0TWFwWm9vbUxldmVsXSA9IHVzZVN0YXRlKDIpO1xuICBjb25zdCB7IHNlbGVjdGVkSXRlbSB9ID0gdXNlU2VsZWN0ZWRJdGVtKCk7XG4gIGNvbnN0IGV2ZW50c0RhdGEgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5ldmVudHNfZGF0YSxcbiAgKTtcbiAgY29uc3QgaG92ZXJlZEV2ZW50UHJlc2VudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBob3ZlcmVkRXZlbnQgIT09IG51bGwgJiYgaG92ZXJlZEV2ZW50ICE9PSB1bmRlZmluZWQ7XG4gIH0sIFtob3ZlcmVkRXZlbnRdKTtcblxuICBjb25zdCBmb2N1c2VkRXZlbnRQcmVzZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIGZvY3VzZWRFdmVudCAhPT0gbnVsbCAmJiBmb2N1c2VkRXZlbnQgIT09IHVuZGVmaW5lZDtcbiAgfSwgW2ZvY3VzZWRFdmVudF0pO1xuXG4gIGNvbnN0IFtmYWN0b3JpZXNDbHVzdGVyR3JvdXBdID0gdXNlU3RhdGUoXG4gICAgd2luZG93LmN1c3RvbUxlYWZsZXQubWFya2VyQ2x1c3Rlckdyb3VwKHtcbiAgICAgIHNwaWRlcmZ5T25NYXhab29tOiBmYWxzZSxcbiAgICAgIHNob3dDb3ZlcmFnZU9uSG92ZXI6IGZhbHNlLFxuICAgICAgem9vbVRvQm91bmRzT25DbGljazogdHJ1ZSxcbiAgICAgIGFuaW1hdGU6IHRydWUsXG4gICAgICBkaXNhYmxlQ2x1c3RlcmluZ0F0Wm9vbTogMTUsXG4gICAgICByZW1vdmVPdXRzaWRlVmlzaWJsZUJvdW5kczogZmFsc2UsXG4gICAgICBjaHVua2VkTG9hZGluZzogdHJ1ZSxcbiAgICAgIGljb25DcmVhdGVGdW5jdGlvbjogZnVuY3Rpb24gKGNsdXN0ZXIpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBMLkRpdkljb24oe1xuICAgICAgICAgIGh0bWw6IGA8ZGl2PjxzcGFuPiR7XG4gICAgICAgICAgICBjbHVzdGVyLl9jaGlsZENvdW50XG4gICAgICAgICAgfTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSdtYXJrZXItY2x1c3Rlci1uYW1lJz4ke2kxOG4udChcbiAgICAgICAgICAgICdpbmR1c3RyaWVzJyxcbiAgICAgICAgICApfTwvZGl2PmAsXG4gICAgICAgICAgY2xhc3NOYW1lOiAnbWFya2VyLWNsdXN0ZXInLFxuICAgICAgICAgIGljb25TaXplOiBuZXcgTC5Qb2ludCg0MCwgNDApLFxuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgfSksXG4gICk7XG5cbiAgY29uc3QgW3d3dHBzTGF5ZXJHcm91cF0gPSB1c2VTdGF0ZShMLmxheWVyR3JvdXAoKSk7XG4gIGNvbnN0IFtjb2xsZWN0b3JzTGF5ZXJHcm91cF0gPSB1c2VTdGF0ZShMLmxheWVyR3JvdXAoKSk7XG4gIC8vY29uc3QgW2ZhY3Rvcmllc0xheWVyR3JvdXBdID0gdXNlU3RhdGUoTC5sYXllckdyb3VwKCkpO1xuICBjb25zdCBbYXJlYXNMYXllckdyb3VwXSA9IHVzZVN0YXRlKG5ldyBMLkZlYXR1cmVHcm91cCgpKTtcbiAgY29uc3QgW2VkZ2VzQ2hlY2tib3gsIHNldEVkZ2VzQ2hlY2tib3hdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gIGNvbnN0IG1lbW9pemVkUG9pbnRzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgICBwb2ludHMgJiYgKFxuICAgICAgICA8UG9pbnRNYXJrZXJzXG4gICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICBwb2ludHM9e3BvaW50c31cbiAgICAgICAgICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM9e2luY2x1ZGVVbm1vbml0b3JlZFBvaW50c31cbiAgICAgICAgICByZXJlbmRlcj17em9vbUxldmVsc1ttYXBab29tTGV2ZWxdfVxuICAgICAgICAgIGZhY3Rvcmllc0dyb3VwPXtmYWN0b3JpZXNDbHVzdGVyR3JvdXB9XG4gICAgICAgICAgd3d0cHNHcm91cD17d3d0cHNMYXllckdyb3VwfVxuICAgICAgICAgIGNvbGxlY3RvcnNHcm91cD17Y29sbGVjdG9yc0xheWVyR3JvdXB9XG4gICAgICAgICAgZm9yRXZlbnRzVmlldz17ZmFsc2V9XG4gICAgICAgIC8+XG4gICAgICApXG4gICAgKTtcbiAgfSwgW21hcFJlZi5jdXJyZW50LCBwb2ludHMsIGZvY3VzZWRFdmVudFByZXNlbnQsIG1hcFpvb21MZXZlbF0pO1xuXG4gIC8vIGNvbnN0IGFjdGl2YXRlWm9vbUNvbnRyb2xGb3JJY29ucyA9IHVzZU1lbW8oKCkgPT4ge1xuICAvLyAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmIGljb25ab29tQ29udHJvbChtYXBSZWYuY3VycmVudCk7XG4gIC8vIH0sIFttYXBSZWYuY3VycmVudCwgcG9pbnRzLCBmb2N1c2VkRXZlbnRQcmVzZW50XSk7XG5cbiAgY29uc3QgdHJhY2tMYXllcmJveCA9ICgpID0+IHtcbiAgICBsZXQgY2hlY2tib3ggPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZWRnZXMtY2hlY2tib3gnKTtcbiAgICBjaGVja2JveC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCAoKSA9PiB7XG4gICAgICBzZXRFZGdlc0NoZWNrYm94KGNoZWNrYm94LmNoZWNrZWQpO1xuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHpvb21SdWxlc0ZvckV2ZW50c1ZpZXcgPSAoKSA9PiB7XG4gICAgY29uc3QgcGF5bG9hZCA9IChcbiAgICAgIDw+XG4gICAgICAgIHtlZGdlc0NoZWNrYm94ICYmIChcbiAgICAgICAgICA8RWRnZXNcbiAgICAgICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgICAgTD17TH1cbiAgICAgICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgICAgIGhpZGVFZGdlcz17aGlkZUVkZ2VzfVxuICAgICAgICAgICAgaGlkZUFycm93cz17dHJ1ZX1cbiAgICAgICAgICAgIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz17aW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc31cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICB7bWVtb2l6ZWRQb2ludHN9XG4gICAgICA8Lz5cbiAgICApO1xuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH07XG5cbiAgY29uc3Qgem9vbVJ1bGVzRm9yRGFzaGFib2FyZE1hcHMgPSAoKSA9PiB7XG4gICAgbGV0IHBheWxvYWQgPSA8PnttZW1vaXplZFBvaW50c308Lz47XG4gICAgc3dpdGNoICh6b29tTGV2ZWxzW21hcFpvb21MZXZlbF0pIHtcbiAgICAgIGNhc2UgJ1NtYWxsJzpcbiAgICAgIGNhc2UgJ01lZGl1bSc6XG4gICAgICAgIHBheWxvYWQgPSB6b29tUnVsZXNGb3JFdmVudHNWaWV3KCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgLy8gY2FzZSAnTUxhcmdlJzpcbiAgICAgIC8vIGNhc2UgJ0xhcmdlJzpcbiAgICAgIC8vIGNhc2UgJ1hMYXJnZSc6XG4gICAgICAvLyBkZWZhdWx0OlxuICAgICAgLy8gICBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgICAgLy8gICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gcGF5bG9hZDtcbiAgfTtcblxuICBjb25zdCBtZW1vaXplZFpvb21Db250cm9sID0gdXNlTWVtbygoKSA9PiB7XG4gICAgY29uc3QgcGF5bG9hZCA9IGZvckV2ZW50c1ZpZXdcbiAgICAgID8gem9vbVJ1bGVzRm9yRXZlbnRzVmlldygpXG4gICAgICA6IHpvb21SdWxlc0ZvckRhc2hhYm9hcmRNYXBzKCk7XG5cbiAgICByZXR1cm4gcGF5bG9hZDtcbiAgfSwgW1xuICAgIG1hcFpvb21MZXZlbCxcbiAgICBldmVudHNEYXRhLmlzRmV0Y2hpbmcsXG4gICAgZm9jdXNlZEV2ZW50LFxuICAgIGhvdmVyZWRFdmVudCxcbiAgICBwb2ludHMsXG4gICAgbWFwUmVmLmN1cnJlbnQsXG4gICAgZWRnZXNDaGVja2JveCxcbiAgXSk7XG5cbiAgY29uc3QgbWVtb2l6ZWRFdmVudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChmb2N1c2VkRXZlbnRQcmVzZW50KSB7XG4gICAgICBmb2N1c2VkRXZlbnQhLmZvY3VzZWQgPSBmb2N1c2VkRXZlbnRQcmVzZW50O1xuICAgICAgZm9jdXNlZEV2ZW50IS5ob3ZlcmVkID0gIWZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgfVxuXG4gICAgaWYgKGhvdmVyZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGhvdmVyZWRFdmVudCEuaG92ZXJlZCA9IGhvdmVyZWRFdmVudFByZXNlbnQ7XG4gICAgICBob3ZlcmVkRXZlbnQhLmZvY3VzZWQgPSAhaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoIWhvdmVyZWRFdmVudFByZXNlbnQgJiYgIWZvY3VzZWRFdmVudFByZXNlbnQpIHJldHVybiA8PjwvPjtcbiAgICByZXR1cm4gKFxuICAgICAgPEV2ZW50XG4gICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnQhIHx8IGhvdmVyZWRFdmVudCF9XG4gICAgICAgIG1hcD17bWFwfVxuICAgICAgICBlZGdlcz17ZWRnZXMhfVxuICAgICAgICBwb2ludHM9e3BvaW50cyF9XG4gICAgICAgIGluY2x1ZGVOZXR3b3JrPXshaG92ZXJlZEV2ZW50UHJlc2VudH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfSwgW2ZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIGNvbGxlY3RvcnNMYXllckdyb3VwLmNsZWFyTGF5ZXJzKCk7XG4gICAgICBtYXBSZWYuY3VycmVudD8ucmVtb3ZlTGF5ZXIoY29sbGVjdG9yc0xheWVyR3JvdXApO1xuICAgIH07XG4gIH0sIFtmb2N1c2VkRXZlbnQsIGhvdmVyZWRFdmVudCwgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaW5pdGlhbGl6ZU1hcChcbiAgICAgIG1hcFpvb21MZXZlbCxcbiAgICAgIG1hcEJveFN0eWxlLFxuICAgICAgbGVhZmxldE1hcC5zYXRlbGxpdGUsXG4gICAgICBtYXBSZWYsXG4gICAgICBkaXNwYXRjaCxcbiAgICAgIGlzVmFsaWRBcmVhLFxuICAgICAgYXJlYVRvQ2VudGVyQnksXG4gICAgICBzZXRNYXBab29tTGV2ZWwsXG4gICAgICBmb3JXV1RQRGFzaGJvYXJkLFxuICAgICAgZm9yRXZlbnRzVmlldyxcbiAgICApO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICAvLyBmYWN0b3JpZXNDbHVzdGVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIHd3dHBzTGF5ZXJHcm91cC5jbGVhckxheWVycygpO1xuICAgICAgLy8gY29sbGVjdG9yc0xheWVyR3JvdXAuY2xlYXJMYXllcnMoKTtcbiAgICAgIC8vIGFyZWFzTGF5ZXJHcm91cC5jbGVhckxheWVycygpO1xuICAgICAgLy8gbWFwUmVmLmN1cnJlbnQ/LnJlbW92ZUxheWVyKGZhY3Rvcmllc0NsdXN0ZXJHcm91cCk7XG4gICAgICAvLyBtYXBSZWYuY3VycmVudD8ucmVtb3ZlTGF5ZXIod3d0cHNMYXllckdyb3VwKTtcbiAgICAgIC8vIG1hcFJlZi5jdXJyZW50Py5yZW1vdmVMYXllcihjb2xsZWN0b3JzTGF5ZXJHcm91cCk7XG4gICAgICAvLyBtYXBSZWYuY3VycmVudD8ucmVtb3ZlTGF5ZXIoYXJlYXNMYXllckdyb3VwKTtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIG1hcFJlZi5jdXJyZW50LnJlbW92ZSgpO1xuICAgICAgLy8gZGlzcGF0Y2goc3RvcmVNYXAodW5kZWZpbmVkKSk7XG4gICAgfTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghbWFwUmVmLmN1cnJlbnQpIHtcbiAgICAgIGluaXRpYWxpemVNYXAoXG4gICAgICAgIG1hcFpvb21MZXZlbCxcbiAgICAgICAgbWFwQm94U3R5bGUsXG4gICAgICAgIGxlYWZsZXRNYXAuc2F0ZWxsaXRlLFxuICAgICAgICBtYXBSZWYsXG4gICAgICAgIGRpc3BhdGNoLFxuICAgICAgICBpc1ZhbGlkQXJlYSxcbiAgICAgICAgYXJlYVRvQ2VudGVyQnksXG4gICAgICAgIHNldE1hcFpvb21MZXZlbCxcbiAgICAgICAgZm9yV1dUUERhc2hib2FyZCxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldE1hcFpvb21MZXZlbChtYXBSZWYuY3VycmVudC5nZXRab29tKCkpO1xuICAgICAgaWYgKCFhcmVhVG9DZW50ZXJCeSkge1xuICAgICAgICBhcmVhVG9DZW50ZXJCeSA9IGFyZWFzLm1hcCgoYXJlYSkgPT4gYXJlYS5zaGFwZV9kYXRhKS5mbGF0KCk7XG4gICAgICB9XG5cbiAgICAgIGFyZWFGb2N1c0xvZ2ljKG1hcFJlZiwgaXNWYWxpZEFyZWEsIGFyZWFUb0NlbnRlckJ5KTtcbiAgICAgIHRyYWNrTGF5ZXJib3goKTtcbiAgICB9XG4gIH0sIFttYXBSZWYuY3VycmVudCwgYXJlYVRvQ2VudGVyQnldKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBjbGlja2VkID0gZmFsc2U7XG5cbiAgICBtYXBSZWYuY3VycmVudD8uZWFjaExheWVyKChsYXllcikgPT4ge1xuICAgICAgaWYgKGNsaWNrZWQpIHJldHVybjtcblxuICAgICAgaWYgKFxuICAgICAgICBsYXllcj8ua2FuZG9fb2JqZWN0X2lkID09PSBzZWxlY3RlZEl0ZW0gJiZcbiAgICAgICAgbGF5ZXIuaXNQb3B1cE9wZW4oKSA9PT0gZmFsc2VcbiAgICAgICkge1xuICAgICAgICBpZiAobGF5ZXIgaW5zdGFuY2VvZiBMLk1hcmtlcikge1xuICAgICAgICAgIGxheWVyLmZpcmUoJ2NsaWNrJyk7XG4gICAgICAgIH0gZWxzZSBpZiAobGF5ZXIgaW5zdGFuY2VvZiBMLlBvbHlnb24pIHtcbiAgICAgICAgICBsYXllci5maXJlKCdjbGljay1ldmVudCcpO1xuICAgICAgICB9XG4gICAgICAgIGNsaWNrZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbc2VsZWN0ZWRJdGVtXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImtkLW1hcC1jb250YWluZXJcIiBzdHlsZT17c3R5bGV9PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e2AgbWFwLWNvbnRhaW5lciAke1xuICAgICAgICAgIGdsb2JhbF9kYXRhLnNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ21hcC1jb250YWluZXItLXNpZGVuYXYtY29sbGFwc2VkJ1xuICAgICAgICB9YH1cbiAgICAgID5cbiAgICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgICAgPGRpdiBpZD1cIm1hcFwiPjwvZGl2PlxuICAgICAgICAgIHtzaG91bGRMb2FkTWFwT2JqZWN0cyhnbG9iYWxfZGF0YSwgbWFwUmVmLCBlZGdlcywgcG9pbnRzKSAmJiAoXG4gICAgICAgICAgICA8QXJlYVBvbHlnb25zXG4gICAgICAgICAgICAgIGFyZWFzPXthcmVhc31cbiAgICAgICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICAgICAgTD17TH1cbiAgICAgICAgICAgICAgYXJlYVRvQ2VudGVyQnk9e2FyZWFUb0NlbnRlckJ5fVxuICAgICAgICAgICAgICBtYXBab29tPXttYXBab29tTGV2ZWx9XG4gICAgICAgICAgICAgIHJlcmVuZGVyPXt6b29tTGV2ZWxzW21hcFpvb21MZXZlbF19XG4gICAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxfZGF0YX1cbiAgICAgICAgICAgICAgZmVhdHVyZUdyb3VwPXthcmVhc0xheWVyR3JvdXB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgICAge3Nob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMoXG4gICAgICAgICAgICBlZGdlcyxcbiAgICAgICAgICAgIGFyZWFzLFxuICAgICAgICAgICAgZ2xvYmFsX2RhdGEsXG4gICAgICAgICAgICBtYXBSZWYsXG4gICAgICAgICAgICBwb2ludHMsXG4gICAgICAgICAgKSAmJiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7bWVtb2l6ZWRFdmVudH1cbiAgICAgICAgICAgICAge21lbW9pemVkWm9vbUNvbnRyb2x9XG4gICAgICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgICAgIDwvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0EsSUFBQUEsQ0FBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0FBLE9BQUE7QUFDQUEsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRix1QkFBQSxDQUFBQyxPQUFBO0FBT0EsSUFBQUUsV0FBQSxHQUFBRixPQUFBO0FBT0EsSUFBQUcsY0FBQSxHQUFBQyxzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQUssYUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sTUFBQSxHQUFBRixzQkFBQSxDQUFBSixPQUFBO0FBQ0FBLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFPLGFBQUEsR0FBQVAsT0FBQTtBQUVBLElBQUFRLE1BQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLFNBQUEsR0FBQVQsT0FBQTtBQVFBLElBQUFVLE1BQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLEtBQUEsR0FBQVAsc0JBQUEsQ0FBQUosT0FBQTtBQUNBLElBQUFZLFlBQUEsR0FBQVosT0FBQTtBQUFxRSxTQUFBYSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWYsd0JBQUFtQixHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFI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
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.zoomLevels = exports.topIconOptions = exports.shouldLoadMapObjects = exports.shoudLoadDependentMapObjects = exports.multipleLayeredIcons = exports.middleIconOptions = exports.isValidArea = exports.initializeMap = exports.iconZoomControl = exports.findSpecificLayersFromMap = exports.eventsCounterIcons = exports.eventsCountIcon = exports.bubbleIconOptions = exports.areaFocusLogic = void 0;
7
+ exports.zoomLevels = exports.topIconOptions = exports.toggleEdgesVisibility = exports.shouldLoadMapObjects = exports.shoudLoadDependentMapObjects = exports.multipleLayeredIcons = exports.middleIconOptions = exports.isValidArea = exports.initializeMap = exports.iconZoomControl = exports.findSpecificLayersFromMap = exports.eventsCounterIcons = exports.eventsCountIcon = exports.edgesSpecificLogic = exports.customFunctionalityForMapLayers = exports.bubbleIconOptions = exports.areaFocusLogic = void 0;
8
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
9
9
  var _leaflet = _interopRequireDefault(require("leaflet"));
10
10
  var _actions = require("../../store/global/actions");
@@ -197,7 +197,74 @@ var baseMaps = function baseMaps(mapBoxStyle, mapBoxSatelliteStyle) {
197
197
  var satellite = _i18n.default.t('map.layers.satellite');
198
198
  return _ref = {}, (0, _defineProperty2.default)(_ref, defaultMap, mapStyle(mapBoxStyle)), (0, _defineProperty2.default)(_ref, satellite, mapStyle(mapBoxSatelliteStyle)), _ref;
199
199
  };
200
- var initializeMap = function initializeMap(mapZoomLevel, mapBoxStyle, mapBoxSatelliteStyle, mapRef, dispatch, isValidArea, areaToCenterBy, setMapZoomLevel, forWWTPDashboard) {
200
+ var toggleEdgesVisibility = function toggleEdgesVisibility(visible, map) {
201
+ map.eachLayer(function (layer) {
202
+ if (layer instanceof _leaflet.default.Polyline && layer.kando_object !== 'Area' || layer instanceof _leaflet.default.Symbol.arrowHead) {
203
+ layer.setStyle({
204
+ opacity: visible ? 1 : 0
205
+ });
206
+ }
207
+ });
208
+ };
209
+ exports.toggleEdgesVisibility = toggleEdgesVisibility;
210
+ var edgesSpecificLogic = function edgesSpecificLogic(defaultOn, map) {
211
+ var checkbox = document.querySelector('#edges-checkbox');
212
+ checkbox.checked = defaultOn;
213
+ checkbox.checked = defaultOn;
214
+ };
215
+ exports.edgesSpecificLogic = edgesSpecificLogic;
216
+ var customControls = function customControls(map) {
217
+ return [{
218
+ label: _i18n.default.t('map.layers.network_lines'),
219
+ id: 'edges-checkbox',
220
+ inputType: 'checkbox',
221
+ onChange: function onChange(isChecked) {
222
+ return toggleEdgesVisibility(isChecked, map);
223
+ }
224
+ }
225
+
226
+ // {
227
+ // label: 'Another custom feature',
228
+ // id: 'custom-feature-checkbox',
229
+ // inputType: 'checkbox',
230
+ // onChange: (isChecked) => console.log(`Another feature is now ${isChecked ? 'enabled' : 'disabled'}`),
231
+ // },
232
+ ];
233
+ };
234
+
235
+ var appendCustomCheckboxToLeafletsLayerBox = function appendCustomCheckboxToLeafletsLayerBox(leafletsContainer, customContainer) {
236
+ _leaflet.default.DomEvent.on(leafletsContainer, 'mouseover', function () {
237
+ customContainer.style.display = 'block';
238
+ });
239
+ _leaflet.default.DomEvent.on(leafletsContainer, 'mouseout', function () {
240
+ customContainer.style.display = 'none';
241
+ });
242
+ };
243
+ var createCustomControl = function createCustomControl(control, container) {
244
+ var controlContainer = document.createElement('div');
245
+ controlContainer.className = 'leaflet-control-layers-overlays';
246
+ controlContainer.innerHTML = "\n <label>\n <input type=\"".concat(control.inputType, "\" id=\"").concat(control.id, "\" /> ").concat(control.label, "\n </label>\n ");
247
+ controlContainer.querySelector("#".concat(control.id)).addEventListener('change', function (e) {
248
+ var isChecked = e.target.checked;
249
+ control.onChange(isChecked);
250
+ });
251
+ controlContainer.style.display = 'none';
252
+ container === null || container === void 0 ? void 0 : container.appendChild(controlContainer);
253
+ appendCustomCheckboxToLeafletsLayerBox(container, controlContainer);
254
+ };
255
+ var customFunctionalityForMapLayers = function customFunctionalityForMapLayers(map, mapTypes) {
256
+ var defaultOn = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
257
+ var controller = _leaflet.default.control.layers(mapTypes, {}, {
258
+ position: 'bottomright'
259
+ }).addTo(map);
260
+ var container = controller.getContainer();
261
+ customControls(map).forEach(function (control) {
262
+ createCustomControl(control, container);
263
+ edgesSpecificLogic(defaultOn, map);
264
+ });
265
+ };
266
+ exports.customFunctionalityForMapLayers = customFunctionalityForMapLayers;
267
+ var initializeMap = function initializeMap(mapZoomLevel, mapBoxStyle, mapBoxSatelliteStyle, mapRef, dispatch, isValidArea, areaToCenterBy, setMapZoomLevel, forWWTPDashboard, showEdgesByDefault) {
201
268
  // @ts-ignore
202
269
  mapRef.current = new _leaflet.default.Map('map', {
203
270
  center: [0, 0],
@@ -210,9 +277,7 @@ var initializeMap = function initializeMap(mapZoomLevel, mapBoxStyle, mapBoxSate
210
277
  mapRef.current.whenReady(function () {
211
278
  var map = mapRef.current;
212
279
  var mapTypes = baseMaps(mapBoxStyle, mapBoxSatelliteStyle);
213
- _leaflet.default.control.layers(mapTypes, {}, {
214
- position: 'bottomright'
215
- }).addTo(map);
280
+ customFunctionalityForMapLayers(map, mapTypes, showEdgesByDefault);
216
281
 
217
282
  // The name of the layer changes between languages so there was a need to get to the first layer
218
283
  Object.values(mapTypes)[0].addTo(map);
@@ -268,4 +333,4 @@ var zoomLevels = {
268
333
  18: 'Small'
269
334
  };
270
335
  exports.zoomLevels = zoomLevels;
271
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2FjdGlvbnMiLCJfaTE4biIsIl9XV1RQRGFzaGJvYXJkU2xpY2UiLCJhcmVhRm9jdXNMb2dpYyIsIm1hcFJlZiIsImlzVmFsaWRBcmVhIiwiYXJlYVRvQ2VudGVyQnkiLCJtYXBJbnN0YW5jZSIsImN1cnJlbnQiLCJmaXRCb3VuZHMiLCJwYWRkaW5nIiwiZ3JvdXAiLCJwcm9wZXJ0eSIsIl9sYXllcnMiLCJrYW5kb19vYmplY3QiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsIkwiLCJmZWF0dXJlR3JvdXAiLCJnZXRCb3VuZHMiLCJsZW5ndGgiLCJleHBvcnRzIiwiYXJlYSIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHMiLCJlZGdlcyIsIm1hcCIsInVuZGVmaW5lZCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJhcmVhcyIsImdsb2JhbCIsImZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAiLCJsYXllcnNUb0ZpbmQiLCJjdXJyZW50TGF5ZXIiLCJpbmNsdWRlcyIsImthbmRvX3BvaW50X3R5cGUiLCJldmVudHNDb3VudGVySWNvbnMiLCJsYXllciIsInpvb21MZXZlbCIsImljb24iLCJvcHRpb25zIiwiaWNvblNpemUiLCJldmVudHNDb3VudEljb24iLCJpY29uQW5jaG9yIiwic2V0SWNvbiIsInNldE9wYWNpdHkiLCJtdWx0aXBsZUxheWVyZWRJY29ucyIsImlzQUZld0xheWVySWNvbiIsImthbmRvX2Zld19sYXllcl9pY29uIiwibWluaUljb24iLCJwcmVzZW50Iiwia2FuZG9fc2Vjb25kYXJ5Iiwia2FuZG9fdGhpcmQiLCJzZWNvbmRhcnkiLCJ0aGlyZCIsImthbmRvX2luZGV4X29iamVjdCIsImJ1YmJsZUljb25PcHRpb25zIiwib25lTGF5ZXJJY29uT3B0aW9ucyIsIm1pZGRsZUljb25PcHRpb25zIiwidG9wSWNvbk9wdGlvbnMiLCJpY29uWm9vbUNvbnRyb2wiLCJsYXllcnMiLCJfem9vbSIsIm1hcFN0eWxlIiwibWFwQm94U3R5bGUiLCJ0aWxlTGF5ZXIiLCJjb25jYXQiLCJhdHRyaWJ1dGlvbiIsIm1heFpvb20iLCJtaW5ab29tIiwiaWQiLCJ0aWxlU2l6ZSIsInpvb21PZmZzZXQiLCJ1cGRhdGVXaGVuWm9vbWluZyIsInVwZGF0ZVdoZW5JZGxlIiwiYmFzZU1hcHMiLCJtYXBCb3hTYXRlbGxpdGVTdHlsZSIsIl9yZWYiLCJkZWZhdWx0TWFwIiwiaTE4biIsInQiLCJzYXRlbGxpdGUiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsImluaXRpYWxpemVNYXAiLCJtYXBab29tTGV2ZWwiLCJkaXNwYXRjaCIsInNldE1hcFpvb21MZXZlbCIsImZvcldXVFBEYXNoYm9hcmQiLCJNYXAiLCJjZW50ZXIiLCJ6b29tU25hcCIsInpvb20iLCJhdHRyaWJ1dGlvbkNvbnRyb2wiLCJwcmVmZXJDYW52YXMiLCJzZXRNYXAiLCJ3aGVuUmVhZHkiLCJtYXBUeXBlcyIsImNvbnRyb2wiLCJwb3NpdGlvbiIsImFkZFRvIiwidmFsdWVzIiwic2V0VGltZW91dCIsImludmFsaWRhdGVTaXplIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwic3RvcmVNYXAiLCJzaWRlTmF2RXhwYW5kZWQiLCJvbiIsImV2ZW50Iiwib3JpZ2luYWxFdmVudCIsImtleSIsImNsb3NlUG9wdXAiLCJkb2N1bWVudCIsImJvZHkiLCJmb2N1cyIsImUiLCJnZXRab29tIiwiem9vbUxldmVscyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9NYXBVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTCwgeyBQb2ludFR1cGxlIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBzaWRlTmF2RXhwYW5kZWQsIHN0b3JlTWFwIH0gZnJvbSAnLi4vLi4vc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IHNldE1hcCB9IGZyb20gJy4uLy4uL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcblxuZXhwb3J0IGNvbnN0IGFyZWFGb2N1c0xvZ2ljID0gKG1hcFJlZiwgaXNWYWxpZEFyZWEsIGFyZWFUb0NlbnRlckJ5KSA9PiB7XG4gIGxldCBtYXBJbnN0YW5jZTogYW55ID0gbWFwUmVmLmN1cnJlbnQ7XG4gIGlmIChpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICBtYXBJbnN0YW5jZS5maXRCb3VuZHMoYXJlYVRvQ2VudGVyQnksIHsgcGFkZGluZzogWzAsIDBdIH0pO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGdyb3VwOiBhbnlbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXBJbnN0YW5jZS5fbGF5ZXJzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIG1hcEluc3RhbmNlLl9sYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ0FyZWEnIHx8XG4gICAgICAgIG1hcEluc3RhbmNlLl9sYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ1BvaW50J1xuICAgICAgKSB7XG4gICAgICAgIGdyb3VwLnB1c2gobWFwSW5zdGFuY2UuX2xheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChPYmplY3Qua2V5cyhMLmZlYXR1cmVHcm91cChncm91cCkuZ2V0Qm91bmRzKCkpLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbWFwSW5zdGFuY2UuZml0Qm91bmRzKEwuZmVhdHVyZUdyb3VwKGdyb3VwKS5nZXRCb3VuZHMoKSwge1xuICAgICAgICBwYWRkaW5nOiBbMTAwLCAxMDBdLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG4gIC8vIG1hcEluc3RhbmNlLmludmFsaWRhdGVTaXplKHRydWUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRBcmVhID0gKGFyZWEpID0+IHtcbiAgcmV0dXJuIGFyZWEgJiYgYXJlYS5sZW5ndGggPiAwICYmIE9iamVjdC5rZXlzKGFyZWFbMF0pLmxlbmd0aCA+IDA7XG59O1xuXG5leHBvcnQgY29uc3Qgc2hvdWxkTG9hZE1hcE9iamVjdHMgPSAoZ2xvYmFsX2RhdGEsIG1hcFJlZiwgcG9pbnRzLCBlZGdlcykgPT4ge1xuICByZXR1cm4gKFxuICAgIGdsb2JhbF9kYXRhLm1hcCAhPT0gdW5kZWZpbmVkICYmXG4gICAgbWFwUmVmLmN1cnJlbnQgIT09IG51bGwgJiZcbiAgICBlZGdlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgcG9pbnRzICE9PSB1bmRlZmluZWRcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzID0gKFxuICBlZGdlcyxcbiAgYXJlYXMsXG4gIGdsb2JhbCxcbiAgbWFwUmVmLFxuICBwb2ludHMsXG4pID0+IHtcbiAgcmV0dXJuIChcbiAgICBnbG9iYWwubWFwICE9PSB1bmRlZmluZWQgJiZcbiAgICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJlxuICAgIC8vIGVkZ2VzLmxlbmd0aCAhPT0gMCAmJlxuICAgIC8vIGFyZWFzLmxlbmd0aCAhPT0gMCAmJlxuICAgIHBvaW50cy5sZW5ndGggIT09IDBcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwID0gKFxuICBsYXllcnNUb0ZpbmQ6IHN0cmluZ1tdLFxuICBjdXJyZW50TGF5ZXIsXG4pID0+IHtcbiAgcmV0dXJuIChcbiAgICBsYXllcnNUb0ZpbmQuaW5jbHVkZXMoY3VycmVudExheWVyLmthbmRvX29iamVjdCkgJiZcbiAgICBjdXJyZW50TGF5ZXIua2FuZG9fcG9pbnRfdHlwZSAhPT0gJ01hbmhvbGUnXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZXZlbnRzQ291bnRlckljb25zID0gKGxheWVyLCB6b29tTGV2ZWwpID0+IHtcbiAgbGV0IGljb24gPSBsYXllci5vcHRpb25zLmljb247XG4gIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IGV2ZW50c0NvdW50SWNvbih6b29tTGV2ZWwpLmljb25TaXplO1xuICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IGV2ZW50c0NvdW50SWNvbih6b29tTGV2ZWwpLmljb25BbmNob3I7XG4gIGxheWVyLnNldEljb24oaWNvbik7XG4gIGxheWVyLnNldE9wYWNpdHkoMSk7XG59O1xuXG5leHBvcnQgY29uc3QgbXVsdGlwbGVMYXllcmVkSWNvbnMgPSAobGF5ZXIsIHpvb21MZXZlbCkgPT4ge1xuICBsZXQgaWNvbiA9IGxheWVyLm9wdGlvbnMuaWNvbjtcbiAgbGV0IGlzQUZld0xheWVySWNvbiA9IGxheWVyLmthbmRvX2Zld19sYXllcl9pY29uO1xuICBsZXQgbWluaUljb24gPSB7XG4gICAgcHJlc2VudDogbGF5ZXIua2FuZG9fc2Vjb25kYXJ5IHx8IGxheWVyLmthbmRvX3RoaXJkLFxuICAgIHNlY29uZGFyeTogbGF5ZXIua2FuZG9fc2Vjb25kYXJ5LFxuICAgIHRoaXJkOiBsYXllci5rYW5kb190aGlyZCxcbiAgfTtcblxuICBpZiAobGF5ZXIua2FuZG9faW5kZXhfb2JqZWN0ID09PSAwKSB7XG4gICAgaWYgKGlzQUZld0xheWVySWNvbikge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gYnViYmxlSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IGJ1YmJsZUljb25PcHRpb25zKFxuICAgICAgICB6b29tTGV2ZWwsXG4gICAgICAgIG1pbmlJY29uLFxuICAgICAgKS5pY29uQW5jaG9yO1xuICAgIH0gZWxzZSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBvbmVMYXllckljb25PcHRpb25zKHpvb21MZXZlbCkuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IG9uZUxheWVySWNvbk9wdGlvbnMoem9vbUxldmVsKS5pY29uQW5jaG9yO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAobGF5ZXIua2FuZG9faW5kZXhfb2JqZWN0ID09PSAxKSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBtaWRkbGVJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uU2l6ZTtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uQW5jaG9yID0gbWlkZGxlSWNvbk9wdGlvbnMoXG4gICAgICAgIHpvb21MZXZlbCxcbiAgICAgICAgbWluaUljb24sXG4gICAgICApLmljb25BbmNob3I7XG4gICAgfSBlbHNlIHtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IHRvcEljb25PcHRpb25zKHpvb21MZXZlbCwgbWluaUljb24pLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSB0b3BJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uQW5jaG9yO1xuICAgIH1cbiAgfVxuXG4gIGxheWVyLnNldEljb24oaWNvbik7XG59O1xuXG5jb25zdCBvbmVMYXllckljb25PcHRpb25zID0gKHpvb21MZXZlbCkgPT4ge1xuICByZXR1cm4ge1xuICAgIGljb25TaXplOiBbem9vbUxldmVsICogMy4zLCB6b29tTGV2ZWwgKiAzLjNdIGFzIFBvaW50VHVwbGUsXG4gICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDEuNywgem9vbUxldmVsICogMy43XSBhcyBQb2ludFR1cGxlLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50SWNvbiA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDIuNSwgem9vbUxldmVsICogMi41XSBhcyBQb2ludFR1cGxlLFxuICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAwLCB6b29tTGV2ZWwgKiA0XSBhcyBQb2ludFR1cGxlLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1YmJsZUljb25PcHRpb25zID0gKHpvb21MZXZlbCwgbWluaUljb24pID0+IHtcbiAgaWYgKG1pbmlJY29uLnByZXNlbnQpIHtcbiAgICBpZiAobWluaUljb24uc2Vjb25kYXJ5KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuOTgsIHpvb21MZXZlbCAqIDIuM10gYXMgUG9pbnRUdXBsZSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDRdIGFzIFBvaW50VHVwbGUsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuOTgsIHpvb21MZXZlbCAqIDIuM10gYXMgUG9pbnRUdXBsZSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDJdIGFzIFBvaW50VHVwbGUsXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAzLjk4LCB6b29tTGV2ZWwgKiA0LjNdIGFzIFBvaW50VHVwbGUsXG4gICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogMiwgem9vbUxldmVsICogNF0gYXMgUG9pbnRUdXBsZSxcbiAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgbWlkZGxlSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS4xLCB6b29tTGV2ZWwgKiAxLjFdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNDUsIHpvb21MZXZlbCAqIDMuNV0sXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuMSwgem9vbUxldmVsICogMS4xXSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIC0wLjQ1LCB6b29tTGV2ZWwgKiAxLjVdLFxuICAgICAgfTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMi41LCB6b29tTGV2ZWwgKiAyLjVdLFxuICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDEuMjk1LCB6b29tTGV2ZWwgKiAzLjM1XSxcbiAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9wSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMC45LCB6b29tTGV2ZWwgKiAxLjhdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNSwgem9vbUxldmVsICogMy44XSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS42LCB6b29tTGV2ZWwgKiAyLjVdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuMiwgem9vbUxldmVsICogMi4xXSxcbiAgICAgIH07XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiB7XG4gICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDMuOSwgem9vbUxldmVsICogMy44XSxcbiAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAyLCB6b29tTGV2ZWwgKiAzLjhdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpY29uWm9vbUNvbnRyb2wgPSAobWFwKSA9PiB7XG4gIGxldCBsYXllcnMgPSBtYXAuX2xheWVycztcbiAgbGV0IHpvb21MZXZlbCA9IG1hcC5fem9vbTtcblxuICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgIGlmIChmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwKFsnSWNvbk51bWJlciddLCBsYXllcnNbcHJvcGVydHldKSkge1xuICAgICAgZXZlbnRzQ291bnRlckljb25zKGxheWVyc1twcm9wZXJ0eV0sIHpvb21MZXZlbCk7XG4gICAgfVxuXG4gICAgaWYgKGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydQb2ludCcsICdJY29uJ10sIGxheWVyc1twcm9wZXJ0eV0pKSB7XG4gICAgICBtdWx0aXBsZUxheWVyZWRJY29ucyhsYXllcnNbcHJvcGVydHldLCB6b29tTGV2ZWwpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydTYW1wbGluZycsICdPYnNlcnZhdGlvbiddLCBsYXllcnNbcHJvcGVydHldKVxuICAgICkge1xuICAgICAgbXVsdGlwbGVMYXllcmVkSWNvbnMobGF5ZXJzW3Byb3BlcnR5XSwgem9vbUxldmVsKTtcbiAgICB9XG4gIH1cbn07XG5cbmNvbnN0IG1hcFN0eWxlID0gKG1hcEJveFN0eWxlKSA9PiB7XG4gIHJldHVybiBMLnRpbGVMYXllcihcbiAgICBgaHR0cHM6Ly9hcGkubWFwYm94LmNvbS9zdHlsZXMvdjEvbmFkYXYta2FuZG8vJHttYXBCb3hTdHlsZX0vdGlsZXMvMjU2L3t6fS97eH0ve3l9QDJ4P2FjY2Vzc190b2tlbj1way5leUoxSWpvaWJtRmtZWFl0YTJGdVpHOGlMQ0poSWpvaVkycHZlSHByZEdSeE1IbG1kRE40YkRnMGR6SnhPWGM0ZFNKOS5KLTJvaHE3ajR5S05ibTROXy1QNnF3YCxcbiAgICB7XG4gICAgICBhdHRyaWJ1dGlvbjpcbiAgICAgICAgJ01hcCBkYXRhICZjb3B5OyA8YSBocmVmPVwiaHR0cHM6Ly93d3cub3BlbnN0cmVldG1hcC5vcmcvXCI+T3BlblN0cmVldE1hcDwvYT4gY29udHJpYnV0b3JzLCA8YSBocmVmPVwiaHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LXNhLzIuMC9cIj5DQy1CWS1TQTwvYT4sIEltYWdlcnkgwqkgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm1hcGJveC5jb20vXCI+TWFwYm94PC9hPicsXG4gICAgICBtYXhab29tOiAxOCxcbiAgICAgIG1pblpvb206IDIsXG4gICAgICBpZDogJ21hcGJveC9zdHJlZXRzLXYxMScsXG4gICAgICB0aWxlU2l6ZTogNTEyLFxuICAgICAgem9vbU9mZnNldDogLTEsXG4gICAgICB1cGRhdGVXaGVuWm9vbWluZzogZmFsc2UsXG4gICAgICB1cGRhdGVXaGVuSWRsZTogZmFsc2UsXG4gICAgfSxcbiAgKTtcbn07XG5jb25zdCBiYXNlTWFwcyA9IChtYXBCb3hTdHlsZSwgbWFwQm94U2F0ZWxsaXRlU3R5bGUpID0+IHtcbiAgbGV0IGRlZmF1bHRNYXAgPSBpMThuLnQoJ21hcC5sYXllcnMuZGVmYXVsdCcpO1xuICBsZXQgc2F0ZWxsaXRlID0gaTE4bi50KCdtYXAubGF5ZXJzLnNhdGVsbGl0ZScpO1xuICByZXR1cm4ge1xuICAgIFtkZWZhdWx0TWFwXTogbWFwU3R5bGUobWFwQm94U3R5bGUpLFxuICAgIFtzYXRlbGxpdGVdOiBtYXBTdHlsZShtYXBCb3hTYXRlbGxpdGVTdHlsZSksXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgaW5pdGlhbGl6ZU1hcCA9IChcbiAgbWFwWm9vbUxldmVsLFxuICBtYXBCb3hTdHlsZSxcbiAgbWFwQm94U2F0ZWxsaXRlU3R5bGUsXG4gIG1hcFJlZixcbiAgZGlzcGF0Y2gsXG4gIGlzVmFsaWRBcmVhLFxuICBhcmVhVG9DZW50ZXJCeSxcbiAgc2V0TWFwWm9vbUxldmVsLFxuICBmb3JXV1RQRGFzaGJvYXJkLFxuKSA9PiB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgbWFwUmVmLmN1cnJlbnQgPSBuZXcgTC5NYXAoJ21hcCcsIHtcbiAgICBjZW50ZXI6IFswLCAwXSxcbiAgICB6b29tU25hcDogMSxcbiAgICB6b29tOiBtYXBab29tTGV2ZWwsXG4gICAgYXR0cmlidXRpb25Db250cm9sOiBmYWxzZSxcbiAgICBwcmVmZXJDYW52YXM6IGZhbHNlLFxuICB9KTtcblxuICBpZiAoZm9yV1dUUERhc2hib2FyZCkgZGlzcGF0Y2goc2V0TWFwKG1hcFJlZi5jdXJyZW50KSk7XG5cbiAgbWFwUmVmLmN1cnJlbnQud2hlblJlYWR5KCgpID0+IHtcbiAgICBsZXQgbWFwID0gbWFwUmVmLmN1cnJlbnQ7XG4gICAgY29uc3QgbWFwVHlwZXMgPSBiYXNlTWFwcyhtYXBCb3hTdHlsZSwgbWFwQm94U2F0ZWxsaXRlU3R5bGUpO1xuXG4gICAgTC5jb250cm9sLmxheWVycyhtYXBUeXBlcywge30sIHsgcG9zaXRpb246ICdib3R0b21yaWdodCcgfSkuYWRkVG8obWFwKTtcblxuICAgIC8vIFRoZSBuYW1lIG9mIHRoZSBsYXllciBjaGFuZ2VzIGJldHdlZW4gbGFuZ3VhZ2VzIHNvIHRoZXJlIHdhcyBhIG5lZWQgdG8gZ2V0IHRvIHRoZSBmaXJzdCBsYXllclxuICAgIE9iamVjdC52YWx1ZXMobWFwVHlwZXMpWzBdLmFkZFRvKG1hcCk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghbWFwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0cnkge1xuICAgICAgICBtYXBSZWYuY3VycmVudC5pbnZhbGlkYXRlU2l6ZSh0cnVlKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdlcnInLCBlcnIpO1xuICAgICAgfVxuXG4gICAgICBkaXNwYXRjaChzdG9yZU1hcChtYXBSZWYuY3VycmVudCkpO1xuICAgICAgZGlzcGF0Y2goc2lkZU5hdkV4cGFuZGVkKHRydWUpKTtcblxuICAgICAgbWFwLm9uKCdrZXlkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5vcmlnaW5hbEV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICBtYXAuY2xvc2VQb3B1cCgpO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSwgMCk7XG4gICAgaWYgKG1hcFJlZi5jdXJyZW50ICYmIGlzVmFsaWRBcmVhKGFyZWFUb0NlbnRlckJ5KSkge1xuICAgICAgbWFwUmVmLmN1cnJlbnQuZml0Qm91bmRzKGFyZWFUb0NlbnRlckJ5KTtcbiAgICB9XG4gIH0pO1xuXG4gIG1hcFJlZi5jdXJyZW50Lm9uKCd6b29tZW5kJywgZnVuY3Rpb24gKGUpIHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGxldCB6b29tID0gbWFwUmVmLmN1cnJlbnQuZ2V0Wm9vbSgpO1xuICAgIHNldE1hcFpvb21MZXZlbCh6b29tKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3Qgem9vbUxldmVscyA9IHtcbiAgMTogJ1hMYXJnZScsXG4gIDI6ICdYTGFyZ2UnLFxuICAzOiAnWExhcmdlJyxcbiAgNDogJ1hMYXJnZScsXG4gIDU6ICdYTGFyZ2UnLFxuICA2OiAnWExhcmdlJyxcbiAgNzogJ0xhcmdlJyxcbiAgODogJ0xhcmdlJyxcbiAgOTogJ0xhcmdlJyxcbiAgMTA6ICdMYXJnZScsXG4gIDExOiAnTUxhcmdlJyxcbiAgMTI6ICdNTGFyZ2UnLFxuICAxMzogJ01MYXJnZScsXG4gIDE0OiAnTUxhcmdlJyxcbiAgMTU6ICdNZWRpdW0nLFxuICAxNjogJ01lZGl1bScsXG4gIDE3OiAnU21hbGwnLFxuICAxODogJ1NtYWxsJyxcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsUUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsS0FBQSxH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
336
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2FjdGlvbnMiLCJfaTE4biIsIl9XV1RQRGFzaGJvYXJkU2xpY2UiLCJhcmVhRm9jdXNMb2dpYyIsIm1hcFJlZiIsImlzVmFsaWRBcmVhIiwiYXJlYVRvQ2VudGVyQnkiLCJtYXBJbnN0YW5jZSIsImN1cnJlbnQiLCJmaXRCb3VuZHMiLCJwYWRkaW5nIiwiZ3JvdXAiLCJwcm9wZXJ0eSIsIl9sYXllcnMiLCJrYW5kb19vYmplY3QiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsIkwiLCJmZWF0dXJlR3JvdXAiLCJnZXRCb3VuZHMiLCJsZW5ndGgiLCJleHBvcnRzIiwiYXJlYSIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHMiLCJlZGdlcyIsIm1hcCIsInVuZGVmaW5lZCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJhcmVhcyIsImdsb2JhbCIsImZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAiLCJsYXllcnNUb0ZpbmQiLCJjdXJyZW50TGF5ZXIiLCJpbmNsdWRlcyIsImthbmRvX3BvaW50X3R5cGUiLCJldmVudHNDb3VudGVySWNvbnMiLCJsYXllciIsInpvb21MZXZlbCIsImljb24iLCJvcHRpb25zIiwiaWNvblNpemUiLCJldmVudHNDb3VudEljb24iLCJpY29uQW5jaG9yIiwic2V0SWNvbiIsInNldE9wYWNpdHkiLCJtdWx0aXBsZUxheWVyZWRJY29ucyIsImlzQUZld0xheWVySWNvbiIsImthbmRvX2Zld19sYXllcl9pY29uIiwibWluaUljb24iLCJwcmVzZW50Iiwia2FuZG9fc2Vjb25kYXJ5Iiwia2FuZG9fdGhpcmQiLCJzZWNvbmRhcnkiLCJ0aGlyZCIsImthbmRvX2luZGV4X29iamVjdCIsImJ1YmJsZUljb25PcHRpb25zIiwib25lTGF5ZXJJY29uT3B0aW9ucyIsIm1pZGRsZUljb25PcHRpb25zIiwidG9wSWNvbk9wdGlvbnMiLCJpY29uWm9vbUNvbnRyb2wiLCJsYXllcnMiLCJfem9vbSIsIm1hcFN0eWxlIiwibWFwQm94U3R5bGUiLCJ0aWxlTGF5ZXIiLCJjb25jYXQiLCJhdHRyaWJ1dGlvbiIsIm1heFpvb20iLCJtaW5ab29tIiwiaWQiLCJ0aWxlU2l6ZSIsInpvb21PZmZzZXQiLCJ1cGRhdGVXaGVuWm9vbWluZyIsInVwZGF0ZVdoZW5JZGxlIiwiYmFzZU1hcHMiLCJtYXBCb3hTYXRlbGxpdGVTdHlsZSIsIl9yZWYiLCJkZWZhdWx0TWFwIiwiaTE4biIsInQiLCJzYXRlbGxpdGUiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsInRvZ2dsZUVkZ2VzVmlzaWJpbGl0eSIsInZpc2libGUiLCJlYWNoTGF5ZXIiLCJQb2x5bGluZSIsIlN5bWJvbCIsImFycm93SGVhZCIsInNldFN0eWxlIiwib3BhY2l0eSIsImVkZ2VzU3BlY2lmaWNMb2dpYyIsImRlZmF1bHRPbiIsImNoZWNrYm94IiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiY2hlY2tlZCIsImN1c3RvbUNvbnRyb2xzIiwibGFiZWwiLCJpbnB1dFR5cGUiLCJvbkNoYW5nZSIsImlzQ2hlY2tlZCIsImFwcGVuZEN1c3RvbUNoZWNrYm94VG9MZWFmbGV0c0xheWVyQm94IiwibGVhZmxldHNDb250YWluZXIiLCJjdXN0b21Db250YWluZXIiLCJEb21FdmVudCIsIm9uIiwic3R5bGUiLCJkaXNwbGF5IiwiY3JlYXRlQ3VzdG9tQ29udHJvbCIsImNvbnRyb2wiLCJjb250YWluZXIiLCJjb250cm9sQ29udGFpbmVyIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImlubmVySFRNTCIsImFkZEV2ZW50TGlzdGVuZXIiLCJlIiwidGFyZ2V0IiwiYXBwZW5kQ2hpbGQiLCJjdXN0b21GdW5jdGlvbmFsaXR5Rm9yTWFwTGF5ZXJzIiwibWFwVHlwZXMiLCJhcmd1bWVudHMiLCJjb250cm9sbGVyIiwicG9zaXRpb24iLCJhZGRUbyIsImdldENvbnRhaW5lciIsImZvckVhY2giLCJpbml0aWFsaXplTWFwIiwibWFwWm9vbUxldmVsIiwiZGlzcGF0Y2giLCJzZXRNYXBab29tTGV2ZWwiLCJmb3JXV1RQRGFzaGJvYXJkIiwic2hvd0VkZ2VzQnlEZWZhdWx0IiwiTWFwIiwiY2VudGVyIiwiem9vbVNuYXAiLCJ6b29tIiwiYXR0cmlidXRpb25Db250cm9sIiwicHJlZmVyQ2FudmFzIiwic2V0TWFwIiwid2hlblJlYWR5IiwidmFsdWVzIiwic2V0VGltZW91dCIsImludmFsaWRhdGVTaXplIiwiZXJyIiwiY29uc29sZSIsImVycm9yIiwic3RvcmVNYXAiLCJzaWRlTmF2RXhwYW5kZWQiLCJldmVudCIsIm9yaWdpbmFsRXZlbnQiLCJrZXkiLCJjbG9zZVBvcHVwIiwiYm9keSIsImZvY3VzIiwiZ2V0Wm9vbSIsInpvb21MZXZlbHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvV2lkZ2V0cy9NYXAvTWFwVXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEwsIHsgUG9pbnRUdXBsZSB9IGZyb20gJ2xlYWZsZXQnO1xuaW1wb3J0IHsgc2lkZU5hdkV4cGFuZGVkLCBzdG9yZU1hcCB9IGZyb20gJy4uLy4uL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBzZXRNYXAgfSBmcm9tICcuLi8uLi9zdG9yZS9XV1RQRGFzaGJvYXJkL1dXVFBEYXNoYm9hcmRTbGljZSc7XG5cbmV4cG9ydCBjb25zdCBhcmVhRm9jdXNMb2dpYyA9IChtYXBSZWYsIGlzVmFsaWRBcmVhLCBhcmVhVG9DZW50ZXJCeSkgPT4ge1xuICBsZXQgbWFwSW5zdGFuY2U6IGFueSA9IG1hcFJlZi5jdXJyZW50O1xuICBpZiAoaXNWYWxpZEFyZWEoYXJlYVRvQ2VudGVyQnkpKSB7XG4gICAgbWFwSW5zdGFuY2UuZml0Qm91bmRzKGFyZWFUb0NlbnRlckJ5LCB7IHBhZGRpbmc6IFswLCAwXSB9KTtcbiAgfSBlbHNlIHtcbiAgICBjb25zdCBncm91cDogYW55W10gPSBbXTtcblxuICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbWFwSW5zdGFuY2UuX2xheWVycykge1xuICAgICAgaWYgKFxuICAgICAgICBtYXBJbnN0YW5jZS5fbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgPT09ICdBcmVhJyB8fFxuICAgICAgICBtYXBJbnN0YW5jZS5fbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgPT09ICdQb2ludCdcbiAgICAgICkge1xuICAgICAgICBncm91cC5wdXNoKG1hcEluc3RhbmNlLl9sYXllcnNbcHJvcGVydHldKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoT2JqZWN0LmtleXMoTC5mZWF0dXJlR3JvdXAoZ3JvdXApLmdldEJvdW5kcygpKS5sZW5ndGggIT09IDApIHtcbiAgICAgIG1hcEluc3RhbmNlLmZpdEJvdW5kcyhMLmZlYXR1cmVHcm91cChncm91cCkuZ2V0Qm91bmRzKCksIHtcbiAgICAgICAgcGFkZGluZzogWzEwMCwgMTAwXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuICAvLyBtYXBJbnN0YW5jZS5pbnZhbGlkYXRlU2l6ZSh0cnVlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBpc1ZhbGlkQXJlYSA9IChhcmVhKSA9PiB7XG4gIHJldHVybiBhcmVhICYmIGFyZWEubGVuZ3RoID4gMCAmJiBPYmplY3Qua2V5cyhhcmVhWzBdKS5sZW5ndGggPiAwO1xufTtcblxuZXhwb3J0IGNvbnN0IHNob3VsZExvYWRNYXBPYmplY3RzID0gKGdsb2JhbF9kYXRhLCBtYXBSZWYsIHBvaW50cywgZWRnZXMpID0+IHtcbiAgcmV0dXJuIChcbiAgICBnbG9iYWxfZGF0YS5tYXAgIT09IHVuZGVmaW5lZCAmJlxuICAgIG1hcFJlZi5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgZWRnZXMgIT09IHVuZGVmaW5lZCAmJlxuICAgIHBvaW50cyAhPT0gdW5kZWZpbmVkXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3Qgc2hvdWRMb2FkRGVwZW5kZW50TWFwT2JqZWN0cyA9IChcbiAgZWRnZXMsXG4gIGFyZWFzLFxuICBnbG9iYWwsXG4gIG1hcFJlZixcbiAgcG9pbnRzLFxuKSA9PiB7XG4gIHJldHVybiAoXG4gICAgZ2xvYmFsLm1hcCAhPT0gdW5kZWZpbmVkICYmXG4gICAgbWFwUmVmLmN1cnJlbnQgIT09IG51bGwgJiZcbiAgICAvLyBlZGdlcy5sZW5ndGggIT09IDAgJiZcbiAgICAvLyBhcmVhcy5sZW5ndGggIT09IDAgJiZcbiAgICBwb2ludHMubGVuZ3RoICE9PSAwXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcCA9IChcbiAgbGF5ZXJzVG9GaW5kOiBzdHJpbmdbXSxcbiAgY3VycmVudExheWVyLFxuKSA9PiB7XG4gIHJldHVybiAoXG4gICAgbGF5ZXJzVG9GaW5kLmluY2x1ZGVzKGN1cnJlbnRMYXllci5rYW5kb19vYmplY3QpICYmXG4gICAgY3VycmVudExheWVyLmthbmRvX3BvaW50X3R5cGUgIT09ICdNYW5ob2xlJ1xuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50ZXJJY29ucyA9IChsYXllciwgem9vbUxldmVsKSA9PiB7XG4gIGxldCBpY29uID0gbGF5ZXIub3B0aW9ucy5pY29uO1xuICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBldmVudHNDb3VudEljb24oem9vbUxldmVsKS5pY29uU2l6ZTtcbiAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBldmVudHNDb3VudEljb24oem9vbUxldmVsKS5pY29uQW5jaG9yO1xuICBsYXllci5zZXRJY29uKGljb24pO1xuICBsYXllci5zZXRPcGFjaXR5KDEpO1xufTtcblxuZXhwb3J0IGNvbnN0IG11bHRpcGxlTGF5ZXJlZEljb25zID0gKGxheWVyLCB6b29tTGV2ZWwpID0+IHtcbiAgbGV0IGljb24gPSBsYXllci5vcHRpb25zLmljb247XG4gIGxldCBpc0FGZXdMYXllckljb24gPSBsYXllci5rYW5kb19mZXdfbGF5ZXJfaWNvbjtcbiAgbGV0IG1pbmlJY29uID0ge1xuICAgIHByZXNlbnQ6IGxheWVyLmthbmRvX3NlY29uZGFyeSB8fCBsYXllci5rYW5kb190aGlyZCxcbiAgICBzZWNvbmRhcnk6IGxheWVyLmthbmRvX3NlY29uZGFyeSxcbiAgICB0aGlyZDogbGF5ZXIua2FuZG9fdGhpcmQsXG4gIH07XG5cbiAgaWYgKGxheWVyLmthbmRvX2luZGV4X29iamVjdCA9PT0gMCkge1xuICAgIGlmIChpc0FGZXdMYXllckljb24pIHtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IGJ1YmJsZUljb25PcHRpb25zKHpvb21MZXZlbCwgbWluaUljb24pLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBidWJibGVJY29uT3B0aW9ucyhcbiAgICAgICAgem9vbUxldmVsLFxuICAgICAgICBtaW5pSWNvbixcbiAgICAgICkuaWNvbkFuY2hvcjtcbiAgICB9IGVsc2Uge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gb25lTGF5ZXJJY29uT3B0aW9ucyh6b29tTGV2ZWwpLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSBvbmVMYXllckljb25PcHRpb25zKHpvb21MZXZlbCkuaWNvbkFuY2hvcjtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgaWYgKGxheWVyLmthbmRvX2luZGV4X29iamVjdCA9PT0gMSkge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gbWlkZGxlSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IG1pZGRsZUljb25PcHRpb25zKFxuICAgICAgICB6b29tTGV2ZWwsXG4gICAgICAgIG1pbmlJY29uLFxuICAgICAgKS5pY29uQW5jaG9yO1xuICAgIH0gZWxzZSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSB0b3BJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uU2l6ZTtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uQW5jaG9yID0gdG9wSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvbkFuY2hvcjtcbiAgICB9XG4gIH1cblxuICBsYXllci5zZXRJY29uKGljb24pO1xufTtcblxuY29uc3Qgb25lTGF5ZXJJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDMuMywgem9vbUxldmVsICogMy4zXSBhcyBQb2ludFR1cGxlLFxuICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAxLjcsIHpvb21MZXZlbCAqIDMuN10gYXMgUG9pbnRUdXBsZSxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBldmVudHNDb3VudEljb24gPSAoem9vbUxldmVsKSA9PiB7XG4gIHJldHVybiB7XG4gICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAyLjUsIHpvb21MZXZlbCAqIDIuNV0gYXMgUG9pbnRUdXBsZSxcbiAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogMCwgem9vbUxldmVsICogNF0gYXMgUG9pbnRUdXBsZSxcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBidWJibGVJY29uT3B0aW9ucyA9ICh6b29tTGV2ZWwsIG1pbmlJY29uKSA9PiB7XG4gIGlmIChtaW5pSWNvbi5wcmVzZW50KSB7XG4gICAgaWYgKG1pbmlJY29uLnNlY29uZGFyeSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAxLjk4LCB6b29tTGV2ZWwgKiAyLjNdIGFzIFBvaW50VHVwbGUsXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAwLCB6b29tTGV2ZWwgKiA0XSBhcyBQb2ludFR1cGxlLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAxLjk4LCB6b29tTGV2ZWwgKiAyLjNdIGFzIFBvaW50VHVwbGUsXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAwLCB6b29tTGV2ZWwgKiAyXSBhcyBQb2ludFR1cGxlLFxuICAgICAgfTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMy45OCwgem9vbUxldmVsICogNC4zXSBhcyBQb2ludFR1cGxlLFxuICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDIsIHpvb21MZXZlbCAqIDRdIGFzIFBvaW50VHVwbGUsXG4gICAgfTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IG1pZGRsZUljb25PcHRpb25zID0gKHpvb21MZXZlbCwgbWluaUljb24pID0+IHtcbiAgaWYgKG1pbmlJY29uLnByZXNlbnQpIHtcbiAgICBpZiAobWluaUljb24uc2Vjb25kYXJ5KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuMSwgem9vbUxldmVsICogMS4xXSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIC0wLjQ1LCB6b29tTGV2ZWwgKiAzLjVdLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAxLjEsIHpvb21MZXZlbCAqIDEuMV0sXG4gICAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAtMC40NSwgem9vbUxldmVsICogMS41XSxcbiAgICAgIH07XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiB7XG4gICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDIuNSwgem9vbUxldmVsICogMi41XSxcbiAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAxLjI5NSwgem9vbUxldmVsICogMy4zNV0sXG4gICAgfTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHRvcEljb25PcHRpb25zID0gKHpvb21MZXZlbCwgbWluaUljb24pID0+IHtcbiAgaWYgKG1pbmlJY29uLnByZXNlbnQpIHtcbiAgICBpZiAobWluaUljb24uc2Vjb25kYXJ5KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDAuOSwgem9vbUxldmVsICogMS44XSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIC0wLjUsIHpvb21MZXZlbCAqIDMuOF0sXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuNiwgem9vbUxldmVsICogMi41XSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIC0wLjIsIHpvb21MZXZlbCAqIDIuMV0sXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAzLjksIHpvb21MZXZlbCAqIDMuOF0sXG4gICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogMiwgem9vbUxldmVsICogMy44XSxcbiAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgaWNvblpvb21Db250cm9sID0gKG1hcCkgPT4ge1xuICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG4gIGxldCB6b29tTGV2ZWwgPSBtYXAuX3pvb207XG5cbiAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICBpZiAoZmluZFNwZWNpZmljTGF5ZXJzRnJvbU1hcChbJ0ljb25OdW1iZXInXSwgbGF5ZXJzW3Byb3BlcnR5XSkpIHtcbiAgICAgIGV2ZW50c0NvdW50ZXJJY29ucyhsYXllcnNbcHJvcGVydHldLCB6b29tTGV2ZWwpO1xuICAgIH1cblxuICAgIGlmIChmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwKFsnUG9pbnQnLCAnSWNvbiddLCBsYXllcnNbcHJvcGVydHldKSkge1xuICAgICAgbXVsdGlwbGVMYXllcmVkSWNvbnMobGF5ZXJzW3Byb3BlcnR5XSwgem9vbUxldmVsKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwKFsnU2FtcGxpbmcnLCAnT2JzZXJ2YXRpb24nXSwgbGF5ZXJzW3Byb3BlcnR5XSlcbiAgICApIHtcbiAgICAgIG11bHRpcGxlTGF5ZXJlZEljb25zKGxheWVyc1twcm9wZXJ0eV0sIHpvb21MZXZlbCk7XG4gICAgfVxuICB9XG59O1xuXG5jb25zdCBtYXBTdHlsZSA9IChtYXBCb3hTdHlsZSkgPT4ge1xuICByZXR1cm4gTC50aWxlTGF5ZXIoXG4gICAgYGh0dHBzOi8vYXBpLm1hcGJveC5jb20vc3R5bGVzL3YxL25hZGF2LWthbmRvLyR7bWFwQm94U3R5bGV9L3RpbGVzLzI1Ni97en0ve3h9L3t5fUAyeD9hY2Nlc3NfdG9rZW49cGsuZXlKMUlqb2libUZrWVhZdGEyRnVaRzhpTENKaElqb2lZMnB2ZUhwcmRHUnhNSGxtZERONGJEZzBkekp4T1hjNGRTSjkuSi0yb2hxN2o0eUtOYm00Tl8tUDZxd2AsXG4gICAge1xuICAgICAgYXR0cmlidXRpb246XG4gICAgICAgICdNYXAgZGF0YSAmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL1wiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycywgPGEgaHJlZj1cImh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1zYS8yLjAvXCI+Q0MtQlktU0E8L2E+LCBJbWFnZXJ5IMKpIDxhIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL1wiPk1hcGJveDwvYT4nLFxuICAgICAgbWF4Wm9vbTogMTgsXG4gICAgICBtaW5ab29tOiAyLFxuICAgICAgaWQ6ICdtYXBib3gvc3RyZWV0cy12MTEnLFxuICAgICAgdGlsZVNpemU6IDUxMixcbiAgICAgIHpvb21PZmZzZXQ6IC0xLFxuICAgICAgdXBkYXRlV2hlblpvb21pbmc6IGZhbHNlLFxuICAgICAgdXBkYXRlV2hlbklkbGU6IGZhbHNlLFxuICAgIH0sXG4gICk7XG59O1xuY29uc3QgYmFzZU1hcHMgPSAobWFwQm94U3R5bGUsIG1hcEJveFNhdGVsbGl0ZVN0eWxlKSA9PiB7XG4gIGxldCBkZWZhdWx0TWFwID0gaTE4bi50KCdtYXAubGF5ZXJzLmRlZmF1bHQnKTtcbiAgbGV0IHNhdGVsbGl0ZSA9IGkxOG4udCgnbWFwLmxheWVycy5zYXRlbGxpdGUnKTtcbiAgcmV0dXJuIHtcbiAgICBbZGVmYXVsdE1hcF06IG1hcFN0eWxlKG1hcEJveFN0eWxlKSxcbiAgICBbc2F0ZWxsaXRlXTogbWFwU3R5bGUobWFwQm94U2F0ZWxsaXRlU3R5bGUpLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHRvZ2dsZUVkZ2VzVmlzaWJpbGl0eSA9ICh2aXNpYmxlLCBtYXApID0+IHtcbiAgbWFwLmVhY2hMYXllcigobGF5ZXIpID0+IHtcbiAgICBpZiAoXG4gICAgICAobGF5ZXIgaW5zdGFuY2VvZiBMLlBvbHlsaW5lICYmIGxheWVyLmthbmRvX29iamVjdCAhPT0gJ0FyZWEnKSB8fFxuICAgICAgbGF5ZXIgaW5zdGFuY2VvZiBMLlN5bWJvbC5hcnJvd0hlYWRcbiAgICApIHtcbiAgICAgIGxheWVyLnNldFN0eWxlKHsgb3BhY2l0eTogdmlzaWJsZSA/IDEgOiAwIH0pO1xuICAgIH1cbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZWRnZXNTcGVjaWZpY0xvZ2ljID0gKGRlZmF1bHRPbiwgbWFwKSA9PiB7XG4gIGxldCBjaGVja2JveCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNlZGdlcy1jaGVja2JveCcpO1xuICBjaGVja2JveC5jaGVja2VkID0gZGVmYXVsdE9uO1xuICBjaGVja2JveC5jaGVja2VkID0gZGVmYXVsdE9uO1xufTtcblxuY29uc3QgY3VzdG9tQ29udHJvbHMgPSAobWFwKSA9PiB7XG4gIHJldHVybiBbXG4gICAge1xuICAgICAgbGFiZWw6IGkxOG4udCgnbWFwLmxheWVycy5uZXR3b3JrX2xpbmVzJyksXG4gICAgICBpZDogJ2VkZ2VzLWNoZWNrYm94JyxcbiAgICAgIGlucHV0VHlwZTogJ2NoZWNrYm94JyxcbiAgICAgIG9uQ2hhbmdlOiAoaXNDaGVja2VkKSA9PiB0b2dnbGVFZGdlc1Zpc2liaWxpdHkoaXNDaGVja2VkLCBtYXApLFxuICAgIH0sXG5cbiAgICAvLyB7XG4gICAgLy8gICBsYWJlbDogJ0Fub3RoZXIgY3VzdG9tIGZlYXR1cmUnLFxuICAgIC8vICAgaWQ6ICdjdXN0b20tZmVhdHVyZS1jaGVja2JveCcsXG4gICAgLy8gICBpbnB1dFR5cGU6ICdjaGVja2JveCcsXG4gICAgLy8gICBvbkNoYW5nZTogKGlzQ2hlY2tlZCkgPT4gY29uc29sZS5sb2coYEFub3RoZXIgZmVhdHVyZSBpcyBub3cgJHtpc0NoZWNrZWQgPyAnZW5hYmxlZCcgOiAnZGlzYWJsZWQnfWApLFxuICAgIC8vIH0sXG4gIF07XG59O1xuXG5jb25zdCBhcHBlbmRDdXN0b21DaGVja2JveFRvTGVhZmxldHNMYXllckJveCA9IChcbiAgbGVhZmxldHNDb250YWluZXIsXG4gIGN1c3RvbUNvbnRhaW5lcixcbikgPT4ge1xuICBMLkRvbUV2ZW50Lm9uKGxlYWZsZXRzQ29udGFpbmVyLCAnbW91c2VvdmVyJywgZnVuY3Rpb24gKCkge1xuICAgIGN1c3RvbUNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gJ2Jsb2NrJztcbiAgfSk7XG5cbiAgTC5Eb21FdmVudC5vbihsZWFmbGV0c0NvbnRhaW5lciwgJ21vdXNlb3V0JywgZnVuY3Rpb24gKCkge1xuICAgIGN1c3RvbUNvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICB9KTtcbn07XG5cbmNvbnN0IGNyZWF0ZUN1c3RvbUNvbnRyb2wgPSAoY29udHJvbCwgY29udGFpbmVyKSA9PiB7XG4gIGxldCBjb250cm9sQ29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gIGNvbnRyb2xDb250YWluZXIuY2xhc3NOYW1lID0gJ2xlYWZsZXQtY29udHJvbC1sYXllcnMtb3ZlcmxheXMnO1xuICBjb250cm9sQ29udGFpbmVyLmlubmVySFRNTCA9IGBcbiAgICAgIDxsYWJlbD5cbiAgICAgICAgPGlucHV0IHR5cGU9XCIke2NvbnRyb2wuaW5wdXRUeXBlfVwiIGlkPVwiJHtjb250cm9sLmlkfVwiIC8+ICR7Y29udHJvbC5sYWJlbH1cbiAgICAgIDwvbGFiZWw+XG4gICAgYDtcblxuICBjb250cm9sQ29udGFpbmVyXG4gICAgLnF1ZXJ5U2VsZWN0b3IoYCMke2NvbnRyb2wuaWR9YClcbiAgICAuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgZnVuY3Rpb24gKGUpIHtcbiAgICAgIGNvbnN0IGlzQ2hlY2tlZCA9IGUudGFyZ2V0LmNoZWNrZWQ7XG4gICAgICBjb250cm9sLm9uQ2hhbmdlKGlzQ2hlY2tlZCk7XG4gICAgfSk7XG5cbiAgY29udHJvbENvbnRhaW5lci5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICBjb250YWluZXI/LmFwcGVuZENoaWxkKGNvbnRyb2xDb250YWluZXIpO1xuXG4gIGFwcGVuZEN1c3RvbUNoZWNrYm94VG9MZWFmbGV0c0xheWVyQm94KGNvbnRhaW5lciwgY29udHJvbENvbnRhaW5lcik7XG59O1xuXG5leHBvcnQgY29uc3QgY3VzdG9tRnVuY3Rpb25hbGl0eUZvck1hcExheWVycyA9IChcbiAgbWFwLFxuICBtYXBUeXBlcyxcbiAgZGVmYXVsdE9uID0gZmFsc2UsXG4pID0+IHtcbiAgbGV0IGNvbnRyb2xsZXIgPSBMLmNvbnRyb2xcbiAgICAubGF5ZXJzKG1hcFR5cGVzLCB7fSwgeyBwb3NpdGlvbjogJ2JvdHRvbXJpZ2h0JyB9KVxuICAgIC5hZGRUbyhtYXApO1xuICBsZXQgY29udGFpbmVyID0gY29udHJvbGxlci5nZXRDb250YWluZXIoKTtcblxuICBjdXN0b21Db250cm9scyhtYXApLmZvckVhY2goKGNvbnRyb2wpID0+IHtcbiAgICBjcmVhdGVDdXN0b21Db250cm9sKGNvbnRyb2wsIGNvbnRhaW5lcik7XG4gICAgZWRnZXNTcGVjaWZpY0xvZ2ljKGRlZmF1bHRPbiwgbWFwKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgaW5pdGlhbGl6ZU1hcCA9IChcbiAgbWFwWm9vbUxldmVsLFxuICBtYXBCb3hTdHlsZSxcbiAgbWFwQm94U2F0ZWxsaXRlU3R5bGUsXG4gIG1hcFJlZixcbiAgZGlzcGF0Y2gsXG4gIGlzVmFsaWRBcmVhLFxuICBhcmVhVG9DZW50ZXJCeSxcbiAgc2V0TWFwWm9vbUxldmVsLFxuICBmb3JXV1RQRGFzaGJvYXJkLFxuICBzaG93RWRnZXNCeURlZmF1bHQsXG4pID0+IHtcbiAgLy8gQHRzLWlnbm9yZVxuICBtYXBSZWYuY3VycmVudCA9IG5ldyBMLk1hcCgnbWFwJywge1xuICAgIGNlbnRlcjogWzAsIDBdLFxuICAgIHpvb21TbmFwOiAxLFxuICAgIHpvb206IG1hcFpvb21MZXZlbCxcbiAgICBhdHRyaWJ1dGlvbkNvbnRyb2w6IGZhbHNlLFxuICAgIHByZWZlckNhbnZhczogZmFsc2UsXG4gIH0pO1xuXG4gIGlmIChmb3JXV1RQRGFzaGJvYXJkKSBkaXNwYXRjaChzZXRNYXAobWFwUmVmLmN1cnJlbnQpKTtcblxuICBtYXBSZWYuY3VycmVudC53aGVuUmVhZHkoKCkgPT4ge1xuICAgIGxldCBtYXAgPSBtYXBSZWYuY3VycmVudDtcbiAgICBjb25zdCBtYXBUeXBlcyA9IGJhc2VNYXBzKG1hcEJveFN0eWxlLCBtYXBCb3hTYXRlbGxpdGVTdHlsZSk7XG5cbiAgICBjdXN0b21GdW5jdGlvbmFsaXR5Rm9yTWFwTGF5ZXJzKG1hcCwgbWFwVHlwZXMsIHNob3dFZGdlc0J5RGVmYXVsdCk7XG5cbiAgICAvLyBUaGUgbmFtZSBvZiB0aGUgbGF5ZXIgY2hhbmdlcyBiZXR3ZWVuIGxhbmd1YWdlcyBzbyB0aGVyZSB3YXMgYSBuZWVkIHRvIGdldCB0byB0aGUgZmlyc3QgbGF5ZXJcbiAgICBPYmplY3QudmFsdWVzKG1hcFR5cGVzKVswXS5hZGRUbyhtYXApO1xuXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdHJ5IHtcbiAgICAgICAgbWFwUmVmLmN1cnJlbnQuaW52YWxpZGF0ZVNpemUodHJ1ZSk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignZXJyJywgZXJyKTtcbiAgICAgIH1cblxuICAgICAgZGlzcGF0Y2goc3RvcmVNYXAobWFwUmVmLmN1cnJlbnQpKTtcbiAgICAgIGRpc3BhdGNoKHNpZGVOYXZFeHBhbmRlZCh0cnVlKSk7XG5cbiAgICAgIG1hcC5vbigna2V5ZG93bicsIChldmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQub3JpZ2luYWxFdmVudC5rZXkgPT09ICdFc2NhcGUnKSB7XG4gICAgICAgICAgbWFwLmNsb3NlUG9wdXAoKTtcbiAgICAgICAgICBkb2N1bWVudC5ib2R5LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0sIDApO1xuICAgIGlmIChtYXBSZWYuY3VycmVudCAmJiBpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICAgIG1hcFJlZi5jdXJyZW50LmZpdEJvdW5kcyhhcmVhVG9DZW50ZXJCeSk7XG4gICAgfVxuICB9KTtcblxuICBtYXBSZWYuY3VycmVudC5vbignem9vbWVuZCcsIGZ1bmN0aW9uIChlKSB7XG4gICAgaWYgKCFtYXBSZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBsZXQgem9vbSA9IG1hcFJlZi5jdXJyZW50LmdldFpvb20oKTtcbiAgICBzZXRNYXBab29tTGV2ZWwoem9vbSk7XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IHpvb21MZXZlbHMgPSB7XG4gIDE6ICdYTGFyZ2UnLFxuICAyOiAnWExhcmdlJyxcbiAgMzogJ1hMYXJnZScsXG4gIDQ6ICdYTGFyZ2UnLFxuICA1OiAnWExhcmdlJyxcbiAgNjogJ1hMYXJnZScsXG4gIDc6ICdMYXJnZScsXG4gIDg6ICdMYXJnZScsXG4gIDk6ICdMYXJnZScsXG4gIDEwOiAnTGFyZ2UnLFxuICAxMTogJ01MYXJnZScsXG4gIDEyOiAnTUxhcmdlJyxcbiAgMTM6ICdNTGFyZ2UnLFxuICAxNDogJ01MYXJnZScsXG4gIDE1OiAnTWVkaXVtJyxcbiAgMTY6ICdNZWRpdW0nLFxuICAxNzogJ1NtYWxsJyxcbiAgMTg6ICdTbWFsbCcsXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLFFBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFFBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLEtBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLG1CQUFBLEdBQUFILE9BQUE7QUFFTyxJQUFNSSxjQUFjLEdBQUcsU0FBakJBLGNBQWNBLENBQUlDLE1BQU0sRUFBRUMsV0FBVyxFQUFFQyxjQUFjLEVBQUs7RUFDckUsSUFBSUMsV0FBZ0IsR0FBR0gsTUFBTSxDQUFDSSxPQUFPO0VBQ3JDLElBQUlILFdBQVcsQ0FBQ0MsY0FBYyxDQUFDLEVBQUU7SUFDL0JDLFdBQVcsQ0FBQ0UsU0FBUyxDQUFDSCxjQUFjLEVBQUU7TUFBRUksT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFBRSxDQUFDLENBQUM7RUFDNUQsQ0FBQyxNQUFNO0lBQ0wsSUFBTUMsS0FBWSxHQUFHLEVBQUU7SUFFdkIsS0FBSyxJQUFNQyxRQUFRLElBQUlMLFdBQVcsQ0FBQ00sT0FBTyxFQUFFO01BQzFDLElBQ0VOLFdBQVcsQ0FBQ00sT0FBTyxDQUFDRCxRQUFRLENBQUMsQ0FBQ0UsWUFBWSxLQUFLLE1BQU0sSUFDckRQLFdBQVcsQ0FBQ00sT0FBTyxDQUFDRCxRQUFRLENBQUMsQ0FBQ0UsWUFBWSxLQUFLLE9BQU8sRUFDdEQ7UUFDQUgsS0FBSyxDQUFDSSxJQUFJLENBQUNSLFdBQVcsQ0FBQ00sT0FBTyxDQUFDRCxRQUFRLENB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
@@ -44,7 +44,7 @@ var Edge = function Edge(_ref) {
44
44
  if (sourcePoint[0] === undefined || targetPoint[0] === undefined) return;
45
45
  var polylineBack = L.polyline(latlngs, {
46
46
  color: 'rgb(227,227,227)',
47
- weight: 6,
47
+ weight: hideEdges ? 0 : 6,
48
48
  opacity: hideEdges ? 0 : 1
49
49
  }).addTo(map);
50
50
  polylineBack.bindPopup("Edge ID: ".concat(edge.id, ",<br>\n Source point: ").concat(sourcePoint[0].group.name, ",<br>\n Target point: ").concat(targetPoint[0].group.name, ",\n Distance: ").concat(edge.distance));
@@ -52,13 +52,36 @@ var Edge = function Edge(_ref) {
52
52
  polylineBack['kando_object'] = 'Edge';
53
53
  polylineBack.bringToFront();
54
54
  var polylineFront = L.polyline(latlngs, {
55
- color: 'rgb(29,29,29)',
55
+ color: 'rgb(157,157,157)',
56
56
  weight: hideEdges ? 0 : 1,
57
57
  opacity: hideEdges ? 0 : 1
58
58
  }).addTo(map);
59
59
  polylineFront['kando_object_id'] = edge.id;
60
60
  polylineFront['kando_object'] = 'EdgeFront';
61
61
  polylineFront.bringToFront();
62
+ console.warn('L.Symbol', L.Symbol);
63
+ console.warn('L', L);
64
+ // let tailDash = L.polylineDecorator(polylineBack._latlngs, {
65
+ // patterns: [
66
+ // // defines a pattern of 10px-wide dashes, repeated every 20px on the line
67
+ // {
68
+ // offset: 15,
69
+ // repeat: 25,
70
+ // symbol: L.Symbol.arrowHead({
71
+ // pixelSize: 3,
72
+ // polygon: false,
73
+ // pathOptions: {
74
+ // stroke: true,
75
+ // color: 'rgb(148,148,148)',
76
+ // weight: hideEdges ? 0 : 1,
77
+ // opacity: hideEdges ? 0 : 1,
78
+ // },
79
+ // }),
80
+ // },
81
+ // ],
82
+ // }).addTo(map);
83
+ // tailDash['kando_object'] = 'Arrow';
84
+
62
85
  if (specificEvent !== undefined) {
63
86
  dispatch((0, _actions.setHoveredEdgePaths)([polylineBack, polylineFront]));
64
87
  }
@@ -69,4 +92,4 @@ var Edge = function Edge(_ref) {
69
92
  var connector = (0, _reactRedux.connect)(null);
70
93
  var _default = connector(Edge);
71
94
  exports.default = _default;
72
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJFZGdlIiwiX3JlZiIsIkwiLCJtYXAiLCJlZGdlIiwicG9pbnRzIiwiX3JlZiRoaWRlRWRnZXMiLCJoaWRlRWRnZXMiLCJfcmVmJGFsbG93VW5tb25pdG9yZWQiLCJhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHMiLCJzcGVjaWZpY0V2ZW50IiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsInNoYXBlRGF0YUV4aXN0Iiwia2V5cyIsInNoYXBlX2RhdGEiLCJsZW5ndGgiLCJmaW5kIiwiZGF0YSIsImxhdCIsImxuZyIsInVuZGVmaW5lZCIsInVzZUVmZmVjdCIsImxhdGxuZ3MiLCJmb3JFYWNoIiwicHVzaCIsInNvdXJjZVBvaW50IiwiZmlsdGVyIiwicG9pbnQiLCJpZCIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldFBvaW50IiwidGFyZ2V0X3BvaW50X2lkIiwicG9seWxpbmVCYWNrIiwicG9seWxpbmUiLCJjb2xvciIsIndlaWdodCIsIm9wYWNpdHkiLCJhZGRUbyIsImJpbmRQb3B1cCIsImNvbmNhdCIsImdyb3VwIiwibmFtZSIsImRpc3RhbmNlIiwiYnJpbmdUb0Zyb250IiwicG9seWxpbmVGcm9udCIsInNldEhvdmVyZWRFZGdlUGF0aHMiLCJjcmVhdGVFbGVtZW50IiwiY29ubmVjdG9yIiwiY29ubmVjdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9lZGdlcy9FZGdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3NyYy91dGlsaXRpZXMvcG9seWxpbmVkZWNvcmF0b3InO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzLCB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IElFZGdlIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0ICcuL0VkZ2Uuc2Nzcyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRIb3ZlcmVkRWRnZVBhdGhzIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xudHlwZSBQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBtYXA6IGFueTtcbiAgTDogYW55O1xuICBlZGdlOiBJRWRnZTtcbiAgcG9pbnRzOiBhbnk7XG4gIGhpZGVFZGdlcz86IGJvb2xlYW47XG4gIHNwZWNpZmljRXZlbnQ/OiBJRXZlbnQ7XG4gIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz86IGJvb2xlYW47XG59O1xuXG5jb25zdCBFZGdlOiBSZWFjdC5GQzxQcm9wcz4gPSAoe1xuICBMLFxuICBtYXAsXG4gIGVkZ2UsXG4gIHBvaW50cyxcbiAgaGlkZUVkZ2VzID0gZmFsc2UsXG4gIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cyA9IGZhbHNlLFxuICBzcGVjaWZpY0V2ZW50LFxufSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHNoYXBlRGF0YUV4aXN0ID0gKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBPYmplY3Qua2V5cyhlZGdlLnNoYXBlX2RhdGEpLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgZWRnZS5zaGFwZV9kYXRhLmZpbmQoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IGRhdGEubGF0ID09PSBudWxsIHx8IGRhdGEubG5nID09PSBudWxsLFxuICAgICAgKSA9PT0gdW5kZWZpbmVkXG4gICAgKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChzaGFwZURhdGFFeGlzdCgpKSB7XG4gICAgICBsZXQgbGF0bG5nczogYW55ID0gW107XG4gICAgICBlZGdlLnNoYXBlX2RhdGEuZm9yRWFjaCgoZGF0YTogYW55KSA9PiB7XG4gICAgICAgIGxhdGxuZ3MucHVzaChbZGF0YS5sYXQsIGRhdGEubG5nXSk7XG4gICAgICB9KTtcblxuICAgICAgbGV0IHNvdXJjZVBvaW50ID0gcG9pbnRzLmZpbHRlcihcbiAgICAgICAgKHBvaW50OiBJUG9pbnQpID0+IHBvaW50LmlkID09PSBlZGdlLnNvdXJjZV9wb2ludF9pZCxcbiAgICAgICk7XG4gICAgICBsZXQgdGFyZ2V0UG9pbnQgPSBwb2ludHMuZmlsdGVyKFxuICAgICAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGVkZ2UudGFyZ2V0X3BvaW50X2lkLFxuICAgICAgKTtcblxuICAgICAgaWYgKHBvaW50cy5sZW5ndGggPT09IDApIHJldHVybjtcbiAgICAgIGlmIChzb3VyY2VQb2ludFswXSA9PT0gdW5kZWZpbmVkIHx8IHRhcmdldFBvaW50WzBdID09PSB1bmRlZmluZWQpIHJldHVybjtcblxuICAgICAgbGV0IHBvbHlsaW5lQmFjazogYW55ID0gTC5wb2x5bGluZShsYXRsbmdzLCB7XG4gICAgICAgIGNvbG9yOiAncmdiKDIyNywyMjcsMjI3KScsXG4gICAgICAgIHdlaWdodDogNixcbiAgICAgICAgb3BhY2l0eTogaGlkZUVkZ2VzID8gMCA6IDEsXG4gICAgICB9KS5hZGRUbyhtYXApO1xuXG4gICAgICBwb2x5bGluZUJhY2suYmluZFBvcHVwKGBFZGdlIElEOiAke2VkZ2UuaWR9LDxicj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VyY2UgcG9pbnQ6ICR7c291cmNlUG9pbnRbMF0uZ3JvdXAubmFtZX0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRhcmdldCBwb2ludDogJHt0YXJnZXRQb2ludFswXS5ncm91cC5uYW1lfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXN0YW5jZTogJHtlZGdlLmRpc3RhbmNlfWApO1xuXG4gICAgICBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0J10gPSAnRWRnZSc7XG5cbiAgICAgIHBvbHlsaW5lQmFjay5icmluZ1RvRnJvbnQoKTtcblxuICAgICAgbGV0IHBvbHlsaW5lRnJvbnQ6IGFueSA9IEwucG9seWxpbmUobGF0bG5ncywge1xuICAgICAgICBjb2xvcjogJ3JnYigyOSwyOSwyOSknLFxuICAgICAgICB3ZWlnaHQ6IGhpZGVFZGdlcyA/IDAgOiAxLFxuICAgICAgICBvcGFjaXR5OiBoaWRlRWRnZXMgPyAwIDogMSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdCddID0gJ0VkZ2VGcm9udCc7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnQuYnJpbmdUb0Zyb250KCk7XG4gICAgICBpZiAoc3BlY2lmaWNFdmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW3BvbHlsaW5lQmFjaywgcG9seWxpbmVGcm9udF0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtlZGdlLCBzcGVjaWZpY0V2ZW50XSk7XG5cbiAgcmV0dXJuIDxkaXY+PC9kaXY+O1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChudWxsKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFZGdlKTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBR0FBLE9BQUE7QUFFQSxJQUFBSSxRQUFBLEdBQUFKLE9BQUE7QUFBb0UsU0FBQUsseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFKLHdCQUFBUSxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxT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
95
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9hY3Rpb25zIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJFZGdlIiwiX3JlZiIsIkwiLCJtYXAiLCJlZGdlIiwicG9pbnRzIiwiX3JlZiRoaWRlRWRnZXMiLCJoaWRlRWRnZXMiLCJfcmVmJGFsbG93VW5tb25pdG9yZWQiLCJhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHMiLCJzcGVjaWZpY0V2ZW50IiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsInNoYXBlRGF0YUV4aXN0Iiwia2V5cyIsInNoYXBlX2RhdGEiLCJsZW5ndGgiLCJmaW5kIiwiZGF0YSIsImxhdCIsImxuZyIsInVuZGVmaW5lZCIsInVzZUVmZmVjdCIsImxhdGxuZ3MiLCJmb3JFYWNoIiwicHVzaCIsInNvdXJjZVBvaW50IiwiZmlsdGVyIiwicG9pbnQiLCJpZCIsInNvdXJjZV9wb2ludF9pZCIsInRhcmdldFBvaW50IiwidGFyZ2V0X3BvaW50X2lkIiwicG9seWxpbmVCYWNrIiwicG9seWxpbmUiLCJjb2xvciIsIndlaWdodCIsIm9wYWNpdHkiLCJhZGRUbyIsImJpbmRQb3B1cCIsImNvbmNhdCIsImdyb3VwIiwibmFtZSIsImRpc3RhbmNlIiwiYnJpbmdUb0Zyb250IiwicG9seWxpbmVGcm9udCIsImNvbnNvbGUiLCJ3YXJuIiwiU3ltYm9sIiwic2V0SG92ZXJlZEVkZ2VQYXRocyIsImNyZWF0ZUVsZW1lbnQiLCJjb25uZWN0b3IiLCJjb25uZWN0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL2VkZ2VzL0VkZ2UudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnc3JjL3V0aWxpdGllcy9wb2x5bGluZWRlY29yYXRvcic7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgJy4vRWRnZS5zY3NzJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IHNldEhvdmVyZWRFZGdlUGF0aHMgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG50eXBlIFByb3BzID0gQ29ubmVjdGVkUHJvcHM8dHlwZW9mIGNvbm5lY3Rvcj4gJiB7XG4gIG1hcDogYW55O1xuICBMOiBhbnk7XG4gIGVkZ2U6IElFZGdlO1xuICBwb2ludHM6IGFueTtcbiAgaGlkZUVkZ2VzPzogYm9vbGVhbjtcbiAgc3BlY2lmaWNFdmVudD86IElFdmVudDtcbiAgYWxsb3dVbm1vbml0b3JlZERlc2NlbmRhbnRzPzogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEVkZ2U6IFJlYWN0LkZDPFByb3BzPiA9ICh7XG4gIEwsXG4gIG1hcCxcbiAgZWRnZSxcbiAgcG9pbnRzLFxuICBoaWRlRWRnZXMgPSBmYWxzZSxcbiAgYWxsb3dVbm1vbml0b3JlZERlc2NlbmRhbnRzID0gZmFsc2UsXG4gIHNwZWNpZmljRXZlbnQsXG59KSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3Qgc2hhcGVEYXRhRXhpc3QgPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIE9iamVjdC5rZXlzKGVkZ2Uuc2hhcGVfZGF0YSkubGVuZ3RoICE9PSAwICYmXG4gICAgICBlZGdlLnNoYXBlX2RhdGEuZmluZChcbiAgICAgICAgKGRhdGE6IGFueSkgPT4gZGF0YS5sYXQgPT09IG51bGwgfHwgZGF0YS5sbmcgPT09IG51bGwsXG4gICAgICApID09PSB1bmRlZmluZWRcbiAgICApO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHNoYXBlRGF0YUV4aXN0KCkpIHtcbiAgICAgIGxldCBsYXRsbmdzOiBhbnkgPSBbXTtcbiAgICAgIGVkZ2Uuc2hhcGVfZGF0YS5mb3JFYWNoKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgbGF0bG5ncy5wdXNoKFtkYXRhLmxhdCwgZGF0YS5sbmddKTtcbiAgICAgIH0pO1xuXG4gICAgICBsZXQgc291cmNlUG9pbnQgPSBwb2ludHMuZmlsdGVyKFxuICAgICAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaWQgPT09IGVkZ2Uuc291cmNlX3BvaW50X2lkLFxuICAgICAgKTtcbiAgICAgIGxldCB0YXJnZXRQb2ludCA9IHBvaW50cy5maWx0ZXIoXG4gICAgICAgIChwb2ludDogSVBvaW50KSA9PiBwb2ludC5pZCA9PT0gZWRnZS50YXJnZXRfcG9pbnRfaWQsXG4gICAgICApO1xuXG4gICAgICBpZiAocG9pbnRzLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xuICAgICAgaWYgKHNvdXJjZVBvaW50WzBdID09PSB1bmRlZmluZWQgfHwgdGFyZ2V0UG9pbnRbMF0gPT09IHVuZGVmaW5lZCkgcmV0dXJuO1xuXG4gICAgICBsZXQgcG9seWxpbmVCYWNrOiBhbnkgPSBMLnBvbHlsaW5lKGxhdGxuZ3MsIHtcbiAgICAgICAgY29sb3I6ICdyZ2IoMjI3LDIyNywyMjcpJyxcbiAgICAgICAgd2VpZ2h0OiBoaWRlRWRnZXMgPyAwIDogNixcbiAgICAgICAgb3BhY2l0eTogaGlkZUVkZ2VzID8gMCA6IDEsXG4gICAgICB9KS5hZGRUbyhtYXApO1xuXG4gICAgICBwb2x5bGluZUJhY2suYmluZFBvcHVwKGBFZGdlIElEOiAke2VkZ2UuaWR9LDxicj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VyY2UgcG9pbnQ6ICR7c291cmNlUG9pbnRbMF0uZ3JvdXAubmFtZX0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRhcmdldCBwb2ludDogJHt0YXJnZXRQb2ludFswXS5ncm91cC5uYW1lfSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXN0YW5jZTogJHtlZGdlLmRpc3RhbmNlfWApO1xuXG4gICAgICBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0J10gPSAnRWRnZSc7XG5cbiAgICAgIHBvbHlsaW5lQmFjay5icmluZ1RvRnJvbnQoKTtcblxuICAgICAgbGV0IHBvbHlsaW5lRnJvbnQ6IGFueSA9IEwucG9seWxpbmUobGF0bG5ncywge1xuICAgICAgICBjb2xvcjogJ3JnYigxNTcsMTU3LDE1NyknLFxuICAgICAgICB3ZWlnaHQ6IGhpZGVFZGdlcyA/IDAgOiAxLFxuICAgICAgICBvcGFjaXR5OiBoaWRlRWRnZXMgPyAwIDogMSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdCddID0gJ0VkZ2VGcm9udCc7XG4gICAgICBwb2x5bGluZUZyb250LmJyaW5nVG9Gcm9udCgpO1xuXG4gICAgICBjb25zb2xlLndhcm4oJ0wuU3ltYm9sJywgTC5TeW1ib2wpO1xuICAgICAgY29uc29sZS53YXJuKCdMJywgTCk7XG4gICAgICAvLyBsZXQgdGFpbERhc2ggPSBMLnBvbHlsaW5lRGVjb3JhdG9yKHBvbHlsaW5lQmFjay5fbGF0bG5ncywge1xuICAgICAgLy8gICBwYXR0ZXJuczogW1xuICAgICAgLy8gICAgIC8vIGRlZmluZXMgYSBwYXR0ZXJuIG9mIDEwcHgtd2lkZSBkYXNoZXMsIHJlcGVhdGVkIGV2ZXJ5IDIwcHggb24gdGhlIGxpbmVcbiAgICAgIC8vICAgICB7XG4gICAgICAvLyAgICAgICBvZmZzZXQ6IDE1LFxuICAgICAgLy8gICAgICAgcmVwZWF0OiAyNSxcbiAgICAgIC8vICAgICAgIHN5bWJvbDogTC5TeW1ib2wuYXJyb3dIZWFkKHtcbiAgICAgIC8vICAgICAgICAgcGl4ZWxTaXplOiAzLFxuICAgICAgLy8gICAgICAgICBwb2x5Z29uOiBmYWxzZSxcbiAgICAgIC8vICAgICAgICAgcGF0aE9wdGlvbnM6IHtcbiAgICAgIC8vICAgICAgICAgICBzdHJva2U6IHRydWUsXG4gICAgICAvLyAgICAgICAgICAgY29sb3I6ICdyZ2IoMTQ4LDE0OCwxNDgpJyxcbiAgICAgIC8vICAgICAgICAgICB3ZWlnaHQ6IGhpZGVFZGdlcyA/IDAgOiAxLFxuICAgICAgLy8gICAgICAgICAgIG9wYWNpdHk6IGhpZGVFZGdlcyA/IDAgOiAxLFxuICAgICAgLy8gICAgICAgICB9LFxuICAgICAgLy8gICAgICAgfSksXG4gICAgICAvLyAgICAgfSxcbiAgICAgIC8vICAgXSxcbiAgICAgIC8vIH0pLmFkZFRvKG1hcCk7XG4gICAgICAvLyB0YWlsRGFzaFsna2FuZG9fb2JqZWN0J10gPSAnQXJyb3cnO1xuXG4gICAgICBpZiAoc3BlY2lmaWNFdmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW3BvbHlsaW5lQmFjaywgcG9seWxpbmVGcm9udF0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtlZGdlLCBzcGVjaWZpY0V2ZW50XSk7XG5cbiAgcmV0dXJuIDxkaXY+PC9kaXY+O1xufTtcblxuY29uc3QgY29ubmVjdG9yID0gY29ubmVjdChudWxsKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFZGdlKTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBR0FBLE9BQUE7QUFFQSxJQUFBSSxRQUFBLEdBQUFKLE9BQUE7QUFBb0UsU0FBQUsseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFKLHdCQUFBUSxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixHQUFBLEVBQUFZLEdBQUEsU0FBQUksSUFBQSxHQUFB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
package/lib/i18n/en.json CHANGED
@@ -1261,7 +1261,8 @@
1261
1261
  "statistics": "Statistics",
1262
1262
  "layers": {
1263
1263
  "default": "Map",
1264
- "satellite": "Satellite"
1264
+ "satellite": "Satellite",
1265
+ "network_lines": "Show Network Lines"
1265
1266
  }
1266
1267
  },
1267
1268
  "control_room": {
package/lib/i18n/he.json CHANGED
@@ -2874,7 +2874,8 @@
2874
2874
  "map": {
2875
2875
  "layers": {
2876
2876
  "default": "מפה",
2877
- "satellite": "לווין"
2877
+ "satellite": "לווין",
2878
+ "network_lines": "הצג קווי רשת"
2878
2879
  }
2879
2880
  },
2880
2881
  "events_overview": {
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
 
3
- var packageJsonVersion = "1.2.357";
3
+ var packageJsonVersion = "1.2.358-alpha.0";
4
4
  if (typeof packageJsonVersion === 'string') {
5
5
  // eslint-disable-next-line no-console
6
6
  console.log("%c Kando UI %c v".concat(packageJsonVersion, " "), 'font-size: 15px; background-color: #fff; color: #e20f53;', 'font-weight: bold; font-size: 15px; background-color: #e20f53; color: #fff;', "with NODE_ENV=".concat(process.env.NODE_ENV));
7
7
  } else {
8
8
  console.error('getVersion.js got bad version from package.json, expected string.');
9
9
  }
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYWNrYWdlSnNvblZlcnNpb24iLCJjb25zb2xlIiwibG9nIiwiY29uY2F0IiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZXJyb3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbWFjcm9zL2dldFZlcnNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHByZXZhbCBmcm9tICdwcmV2YWwubWFjcm8nO1xuXG5jb25zdCBwYWNrYWdlSnNvblZlcnNpb24gPSBwcmV2YWxgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9iaW4vZ2V0VmVyc2lvbkZyb21QYWNrYWdlSnNvbi5qcycpYDtcbmlmICh0eXBlb2YgcGFja2FnZUpzb25WZXJzaW9uID09PSAnc3RyaW5nJykge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICBjb25zb2xlLmxvZyhcbiAgICBgJWMgS2FuZG8gVUkgJWMgdiR7cGFja2FnZUpzb25WZXJzaW9ufSBgLFxuICAgICdmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGNvbG9yOiAjZTIwZjUzOycsXG4gICAgJ2ZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNlMjBmNTM7IGNvbG9yOiAjZmZmOycsXG4gICAgYHdpdGggTk9ERV9FTlY9JHtwcm9jZXNzLmVudi5OT0RFX0VOVn1gLFxuICApO1xufSBlbHNlIHtcbiAgY29uc29sZS5lcnJvcihcbiAgICAnZ2V0VmVyc2lvbi5qcyBnb3QgYmFkIHZlcnNpb24gZnJvbSBwYWNrYWdlLmpzb24sIGV4cGVjdGVkIHN0cmluZy4nLFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOztBQUVBLElBQU1BLGtCQUFrQixZQUE2RTtBQUNyRyxJQUFJLE9BQU9BLGtCQUFrQixLQUFLLFFBQVEsRUFBRTtFQUMxQztFQUNBQyxPQUFPLENBQUNDLEdBQUcsb0JBQUFDLE1BQUEsQ0FDVUgsa0JBQWtCLFFBQ3JDLDBEQUEwRCxFQUMxRCw2RUFBNkUsbUJBQUFHLE1BQUEsQ0FDNURDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDQyxRQUFRLENBQ3ZDLENBQUM7QUFDSCxDQUFDLE1BQU07RUFDTEwsT0FBTyxDQUFDTSxLQUFLLENBQ1gsbUVBQ0YsQ0FBQztBQUNIIn0=
10
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYWNrYWdlSnNvblZlcnNpb24iLCJjb25zb2xlIiwibG9nIiwiY29uY2F0IiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZXJyb3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbWFjcm9zL2dldFZlcnNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHByZXZhbCBmcm9tICdwcmV2YWwubWFjcm8nO1xuXG5jb25zdCBwYWNrYWdlSnNvblZlcnNpb24gPSBwcmV2YWxgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9iaW4vZ2V0VmVyc2lvbkZyb21QYWNrYWdlSnNvbi5qcycpYDtcbmlmICh0eXBlb2YgcGFja2FnZUpzb25WZXJzaW9uID09PSAnc3RyaW5nJykge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICBjb25zb2xlLmxvZyhcbiAgICBgJWMgS2FuZG8gVUkgJWMgdiR7cGFja2FnZUpzb25WZXJzaW9ufSBgLFxuICAgICdmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGNvbG9yOiAjZTIwZjUzOycsXG4gICAgJ2ZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNlMjBmNTM7IGNvbG9yOiAjZmZmOycsXG4gICAgYHdpdGggTk9ERV9FTlY9JHtwcm9jZXNzLmVudi5OT0RFX0VOVn1gLFxuICApO1xufSBlbHNlIHtcbiAgY29uc29sZS5lcnJvcihcbiAgICAnZ2V0VmVyc2lvbi5qcyBnb3QgYmFkIHZlcnNpb24gZnJvbSBwYWNrYWdlLmpzb24sIGV4cGVjdGVkIHN0cmluZy4nLFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOztBQUVBLElBQU1BLGtCQUFrQixvQkFBNkU7QUFDckcsSUFBSSxPQUFPQSxrQkFBa0IsS0FBSyxRQUFRLEVBQUU7RUFDMUM7RUFDQUMsT0FBTyxDQUFDQyxHQUFHLG9CQUFBQyxNQUFBLENBQ1VILGtCQUFrQixRQUNyQywwREFBMEQsRUFDMUQsNkVBQTZFLG1CQUFBRyxNQUFBLENBQzVEQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxDQUN2QyxDQUFDO0FBQ0gsQ0FBQyxNQUFNO0VBQ0xMLE9BQU8sQ0FBQ00sS0FBSyxDQUNYLG1FQUNGLENBQUM7QUFDSCJ9
@@ -200,4 +200,4 @@ var ErrorMessage = _styledComponents.default.div.withConfig({
200
200
  displayName: "List__ErrorMessage",
201
201
  componentId: "sc-1f5wz2c-4"
202
202
  })(["display:flex;height:100%;font-size:20px;justify-content:center;box-shadow:-0.9px -0.5px 5px 0 rgba(0,0,0,0.06);border:solid 1px #ebebeb;padding:20px;"]);
203
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YzIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiTGlzdCIsInByb3BzIiwiX1dXVFBJbmZvJHBvaW50IiwiX1dXVFBJbmZvJHBvaW50MiIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiYXJlYXNfZGF0YSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJfdXNlU2VsZWN0ZWRJdGVtIiwidXNlU2VsZWN0ZWRJdGVtIiwic2VsZWN0ZWRJdGVtIiwiaGFuZGxlU2VsZWN0SXRlbSIsIldXVFBJbmZvIiwiX3VzZVNlbGVjdG9yIiwid3d0cF9kYXNoYm9hcmQiLCJmb2N1c2VkQXJlYSIsIm1hcCIsInNlbGVjdGVkUmVmIiwidXNlUmVmIiwic2l0ZUlEIiwicG9pbnQiLCJpZCIsImhhbmRsZUl0ZW1DbGljayIsIml0ZW0iLCJub0RhdGFNZXNzYWdlIiwiaTE4biIsInQiLCJsaXN0RGV0YWlscyIsInVzZU1lbW8iLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEiLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEyIiwiaXNfbm9fYXJlYXMiLCJmb3JXV1RQTWFwIiwidW5kZWZpbmVkIiwic3ViX2FyZWFzIiwibGVuZ3RoIiwiaGFzX2RldmljZSIsImNyZWF0ZUVsZW1lbnQiLCJMaXN0Q29udGFpbmVyIiwiRXJyb3JNZXNzYWdlIiwiU3VtbWFyeUNvbXBvbmVudCIsImVuZHBvaW50IiwiY29uY2F0IiwiY2xhc3NOYW1lIiwiTGluZUNoYXJ0Q29tcG9uZW50IiwidGl0bGUiLCJEaXNjaGFyZ2VQYXR0ZXJuIiwiTnVtYmVyIiwic29ydEFyZWFzIiwiZmlsdGVyIiwiQm9vbGVhbiIsImFyZWEiLCJBcmVhQ2FyZCIsImFyZWFfaWQiLCJvYmplY3QiLCJtYXBSZWYiLCJvbkNsaWNrIiwic2VsZWN0ZWQiLCJpdGVtUmVmIiwiZmFjdG9yaWVzIiwiZmFjdG9yeSIsIkZhY3RvcnlDYXJkIiwidXNlRWZmZWN0IiwibmV3QXJlYXMiLCJpc1N1YkFyZWFzRXF1YWwiLCJjb21wYXJlQXJyYXlzQnlJZEFuZFNjb3JlIiwiZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzIiwiX29iamVjdFNwcmVhZDIiLCJzZXRGb2N1c2VkQXJlYSIsImFycjEiLCJhcnIyIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiX3N0ZXAiLCJfbG9vcCIsIml0ZW0xIiwidmFsdWUiLCJtYXRjaGluZ0l0ZW0iLCJmaW5kIiwiaXRlbTIiLCJ2IiwiYXJlYV9zY29yZSIsInMiLCJuIiwiZG9uZSIsIl9yZXQiLCJfdHlwZW9mMiIsImVyciIsImUiLCJmIiwiX3NlbGVjdGVkUmVmJGN1cnJlbnQiLCJjdXJyZW50Iiwic2Nyb2xsSW50b1ZpZXciLCJiZWhhdmlvciIsImJsb2NrIiwiaW5saW5lIiwiZ3JvdXAiLCJ0eXBlIiwiY2xpY2tlZCIsIldXVFBEZXRhaWxzIiwic3R5bGUiLCJvdmVyZmxvdyIsIm5hbWUiLCJhcmVhX25hbWUiLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJ0aGVtZSIsIldXVFBNYXAiLCJiZyIsIlF1YWxpdHlTdW1tYXJ5IiwiTGluZUNoYXJ0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnc3JjL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgc29ydEFyZWFzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBBcmVhQ2FyZCB9IGZyb20gJy4vQXJlYUNhcmQnO1xuaW1wb3J0IHsgRmFjdG9yeUNhcmQgfSBmcm9tICcuL0ZhY3RvcnlDYXJkJztcbmltcG9ydCBPcmdhbmljQ2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9PcmdhbmljQ2FyZCc7XG5pbXBvcnQgSW1wYWN0Q2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9Qb3RlbnRpYWxTYXZpbmcnO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnLi9MaXN0Q29udGV4dCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgRGlzY2hhcmdlUGF0dGVybiB9IGZyb20gJy4uL1NpdGVQYWdlL0Rpc2NoYXJnZVBhdHRlcm4vRGlzY2hhcmdlUGF0dGVybic7XG5pbXBvcnQgeyBRdWFsaXR5U3VtbWFyeSB9IGZyb20gJ3NyYy9XaWRnZXRzL1F1YWxpdHlTdW1tYXJ5L1F1YWxpdHlTdW1tYXJ5JztcbmltcG9ydCB7IExpbmVDaGFydCB9IGZyb20gJ3NyYy9wYWdlcy9BcmVhUGFnZS9EYXNoYm9hcmQvTGluZUNoYXJ0L0xpbmVDaGFydCc7XG5pbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9XV1RQRGFzaGJvYXJkL1dXVFBEYXNoYm9hcmRTbGljZSc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBnbG9iYWxfZGF0YTogYW55O1xuICBXV1RQSW5mbzogYW55O1xuICBkaXNwYXRjaDogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IExpc3Q6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEgfSA9IFJlZHV4U3RhdGU7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgeyBzZWxlY3RlZEl0ZW0sIGhhbmRsZVNlbGVjdEl0ZW0gfSA9IHVzZVNlbGVjdGVkSXRlbSgpO1xuICBjb25zdCB7IFdXVFBJbmZvIH0gPSBwcm9wcztcbiAgY29uc3QgeyBmb2N1c2VkQXJlYSwgbWFwIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS53d3RwX2Rhc2hib2FyZCxcbiAgKTtcbiAgY29uc3Qgc2VsZWN0ZWRSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHNpdGVJRCA9IFdXVFBJbmZvLnBvaW50Py5pZDtcblxuICBjb25zdCBoYW5kbGVJdGVtQ2xpY2sgPSAoaXRlbSkgPT4ge1xuICAgIGhhbmRsZVNlbGVjdEl0ZW0oaXRlbSk7XG4gIH07XG5cbiAgY29uc3Qgbm9EYXRhTWVzc2FnZSA9IGkxOG4udCgnd3d0cFBhZ2Uubm9fZGF0YV9mb3Jfc2l0ZScpO1xuXG4gIGxldCBsaXN0RGV0YWlscyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghc2l0ZUlEICYmICFmb2N1c2VkQXJlYSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGlzX25vX2FyZWFzID1cbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYT8uZm9yV1dUUE1hcCA9PT0gdHJ1ZSAmJlxuICAgICAgc2l0ZUlEICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcz8ubGVuZ3RoID09PSAwO1xuXG4gICAgaWYgKGlzX25vX2FyZWFzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIC8vIGZvY3VzZWRBcmVhPy5jbGlja2VkID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgZm9jdXNlZEFyZWE/Lmhhc19kZXZpY2UgPT09IGZhbHNlIHx8XG4gICAgICAgICFzaXRlSURcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPEVycm9yTWVzc2FnZT57bm9EYXRhTWVzc2FnZX08L0Vycm9yTWVzc2FnZT5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPFN1bW1hcnlDb21wb25lbnRcbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvZGF0YS9ldmVudHMtY29tcG9uZW50LWRhdGEvJHtzaXRlSUR9YH1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwic3VtbWFyeS1jb21wb25lbnRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxMaW5lQ2hhcnRDb21wb25lbnRcbiAgICAgICAgICAgICAgdGl0bGU9e2kxOG4udCgnYXJlYV9kYXNoYm9hcmQudHJlbmQnKX1cbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvcG9pbnRzLyR7c2l0ZUlEfS90cmVuZC1ncmFwaGB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPERpc2NoYXJnZVBhdHRlcm4gc2l0ZUlEPXtOdW1iZXIoc2l0ZUlEKX0gLz5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGZvY3VzZWRBcmVhICYmIGZvY3VzZWRBcmVhPy5zdWJfYXJlYXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyAmJlxuICAgICAgICBzb3J0QXJlYXMoZm9jdXNlZEFyZWEuc3ViX2FyZWFzKVxuICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgICAubWFwKChhcmVhOiBJQXJlYSkgPT4gKFxuICAgICAgICAgICAgPEFyZWFDYXJkXG4gICAgICAgICAgICAgIGtleT17YXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBvYmplY3Q9e2FyZWF9XG4gICAgICAgICAgICAgIG1hcFJlZj17bWFwfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVJdGVtQ2xpY2soYXJlYS5hcmVhX2lkKX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkSXRlbSA9PT0gYXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZCA/IHNlbGVjdGVkUmVmIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChmb2N1c2VkQXJlYT8uZmFjdG9yaWVzKSB7XG4gICAgICAgIHJldHVybiBmb2N1c2VkQXJlYS5mYWN0b3JpZXNcbiAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgLm1hcCgoZmFjdG9yeSkgPT4gKFxuICAgICAgICAgICAgPEZhY3RvcnlDYXJkXG4gICAgICAgICAgICAgIGtleT17ZmFjdG9yeS5pZH1cbiAgICAgICAgICAgICAgb2JqZWN0PXtmYWN0b3J5fVxuICAgICAgICAgICAgICBtYXBSZWY9e21hcH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlSXRlbUNsaWNrKGZhY3RvcnkuaWQpfVxuICAgICAgICAgICAgICBzZWxlY3RlZD17c2VsZWN0ZWRJdGVtID09PSBmYWN0b3J5LmlkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGZhY3RvcnkuaWQgPyBzZWxlY3RlZFJlZiA6IG51bGx9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3NlbGVjdGVkSXRlbSwgc2l0ZUlELCBmb2N1c2VkQXJlYV0pO1xuXG4gIC8vIFVwZGF0ZSB0aGUgbGlzdCBvbmx5IGlmIHRoZSBzY29yZSBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIHN1Yi1hcmVhcyBoYXMgY2hhbmdlZFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcy5sZW5ndGggPiAwICYmXG4gICAgICBhcmVhc19kYXRhICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMubGVuZ3RoID09PSBhcmVhc19kYXRhLm5ld0FyZWFzLmxlbmd0aFxuICAgICkge1xuICAgICAgY29uc3QgaXNTdWJBcmVhc0VxdWFsID0gY29tcGFyZUFycmF5c0J5SWRBbmRTY29yZShcbiAgICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcyxcbiAgICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzLFxuICAgICAgKTtcbiAgICAgIGlmIChpc1N1YkFyZWFzRXF1YWwpIHJldHVybjtcblxuICAgICAgY29uc3QgZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzID0ge1xuICAgICAgICAuLi5mb2N1c2VkQXJlYSxcbiAgICAgICAgc3ViX2FyZWFzOiBhcmVhc19kYXRhLm5ld0FyZWFzLFxuICAgICAgfTtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcykpO1xuICAgIH1cbiAgfSwgW2FyZWFzX2RhdGFdKTtcblxuICBmdW5jdGlvbiBjb21wYXJlQXJyYXlzQnlJZEFuZFNjb3JlKGFycjEsIGFycjIpIHtcbiAgICAvLyBJdGVyYXRlIG92ZXIgZWFjaCBvYmplY3QgaW4gdGhlIGZpcnN0IGFycmF5XG4gICAgZm9yIChsZXQgaXRlbTEgb2YgYXJyMSkge1xuICAgICAgLy8gRmluZCB0aGUgb2JqZWN0IHdpdGggdGhlIHNhbWUgaWQgaW4gdGhlIHNlY29uZCBhcnJheVxuICAgICAgbGV0IG1hdGNoaW5nSXRlbSA9IGFycjIuZmluZCgoaXRlbTIpID0+IGl0ZW0yLmFyZWFfaWQgPT09IGl0ZW0xLmFyZWFfaWQpO1xuXG4gICAgICAvLyBJZiBubyBtYXRjaGluZyBpdGVtIGlzIGZvdW5kIGluIHRoZSBzZWNvbmQgYXJyYXksIHJldHVybiBmYWxzZVxuICAgICAgaWYgKCFtYXRjaGluZ0l0ZW0pIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgc2NvcmVzIGRvbid0IG1hdGNoLCByZXR1cm4gZmFsc2VcbiAgICAgIGlmIChpdGVtMS5hcmVhX3Njb3JlICE9PSBtYXRjaGluZ0l0ZW0uYXJlYV9zY29yZSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgYWxsIGl0ZW1zIG1hdGNoZWQgYW5kIGhhZCB0aGUgc2FtZSBzY29yZSwgcmV0dXJuIHRydWVcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2VsZWN0ZWRSZWYuY3VycmVudD8uc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgYmxvY2s6ICdjZW50ZXInLFxuICAgICAgaW5saW5lOiAnY2VudGVyJyxcbiAgICB9KTtcbiAgfSwgW3NlbGVjdGVkSXRlbV0pO1xuXG4gIGlmIChcbiAgICBmb2N1c2VkQXJlYT8uZ3JvdXAgJiZcbiAgICBmb2N1c2VkQXJlYS5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnICYmXG4gICAgZm9jdXNlZEFyZWE/LmNsaWNrZWQgPT09IHVuZGVmaW5lZFxuICApXG4gICAgcmV0dXJuIChcbiAgICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICAgIDxoMz57V1dUUEluZm8ucG9pbnQ/Lm5hbWV9PC9oMz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXktNCd9PlxuICAgICAgICAgIDxPcmdhbmljQ2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXQtMid9PlxuICAgICAgICAgIDxJbXBhY3RDYXJkIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9XV1RQRGV0YWlscz5cbiAgICApO1xuXG4gIHJldHVybiAoXG4gICAgPFdXVFBEZXRhaWxzIGNsYXNzTmFtZT1cInAtM1wiIHN0eWxlPXt7IG92ZXJmbG93OiAnc2Nyb2xsJyB9fT5cbiAgICAgIDxoMz57Zm9jdXNlZEFyZWE/LmFyZWFfbmFtZSB8fCBmb2N1c2VkQXJlYT8ubmFtZX08L2gzPlxuICAgICAgPHVsIGNsYXNzTmFtZT17J214LW4zJ30+e2xpc3REZXRhaWxzfTwvdWw+XG4gICAgPC9XV1RQRGV0YWlscz5cbiAgKTtcbn07XG5cbmNvbnN0IFdXVFBEZXRhaWxzID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDEzNHB4KTtcbiAgYmFja2dyb3VuZDogJHt0aGVtZS5XV1RQTWFwLmJnfTtcbmA7XG5cbmNvbnN0IFN1bW1hcnlDb21wb25lbnQgPSBzdHlsZWQoUXVhbGl0eVN1bW1hcnkpYFxuICBncmlkLWFyZWE6IHN1bW1hcnk7XG5cbiAgc3VtbWFyeS1jb21wb25lbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7XG4gIH1cbmA7XG5cbmNvbnN0IExpbmVDaGFydENvbXBvbmVudCA9IHN0eWxlZChMaW5lQ2hhcnQpYFxuICBncmlkLWFyZWE6IGdyYXBoO1xuYDtcblxuY29uc3QgTGlzdENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4O1xuICBnYXA6IDMwcHg7XG5gO1xuXG5jb25zdCBFcnJvck1lc3NhZ2UgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IC0wLjlweCAtMC41cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ViZWJlYjtcbiAgcGFkZGluZzogMjBweDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUYsT0FBQTtBQUVBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtB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
203
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIl91dGlscyIsIl9BcmVhQ2FyZCIsIl9GYWN0b3J5Q2FyZCIsIl9PcmdhbmljQ2FyZCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfUG90ZW50aWFsU2F2aW5nIiwiX0xpc3RDb250ZXh0IiwiX2kxOG4iLCJfRGlzY2hhcmdlUGF0dGVybiIsIl9RdWFsaXR5U3VtbWFyeSIsIl9MaW5lQ2hhcnQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YzIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiTGlzdCIsInByb3BzIiwiX1dXVFBJbmZvJHBvaW50IiwiX1dXVFBJbmZvJHBvaW50MiIsIlJlZHV4U3RhdGUiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiYXJlYXNfZGF0YSIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJfdXNlU2VsZWN0ZWRJdGVtIiwidXNlU2VsZWN0ZWRJdGVtIiwic2VsZWN0ZWRJdGVtIiwiaGFuZGxlU2VsZWN0SXRlbSIsIldXVFBJbmZvIiwiX3VzZVNlbGVjdG9yIiwid3d0cF9kYXNoYm9hcmQiLCJmb2N1c2VkQXJlYSIsIm1hcCIsInNlbGVjdGVkUmVmIiwidXNlUmVmIiwic2l0ZUlEIiwicG9pbnQiLCJpZCIsImhhbmRsZUl0ZW1DbGljayIsIml0ZW0iLCJub0RhdGFNZXNzYWdlIiwiaTE4biIsInQiLCJsaXN0RGV0YWlscyIsInVzZU1lbW8iLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEiLCJfZm9jdXNlZEFyZWEkc3ViX2FyZWEyIiwiaXNfbm9fYXJlYXMiLCJmb3JXV1RQTWFwIiwidW5kZWZpbmVkIiwic3ViX2FyZWFzIiwibGVuZ3RoIiwiaGFzX2RldmljZSIsImNyZWF0ZUVsZW1lbnQiLCJMaXN0Q29udGFpbmVyIiwiRXJyb3JNZXNzYWdlIiwiU3VtbWFyeUNvbXBvbmVudCIsImVuZHBvaW50IiwiY29uY2F0IiwiY2xhc3NOYW1lIiwiTGluZUNoYXJ0Q29tcG9uZW50IiwidGl0bGUiLCJEaXNjaGFyZ2VQYXR0ZXJuIiwiTnVtYmVyIiwic29ydEFyZWFzIiwiZmlsdGVyIiwiQm9vbGVhbiIsImFyZWEiLCJBcmVhQ2FyZCIsImFyZWFfaWQiLCJvYmplY3QiLCJtYXBSZWYiLCJvbkNsaWNrIiwic2VsZWN0ZWQiLCJpdGVtUmVmIiwiZmFjdG9yaWVzIiwiZmFjdG9yeSIsIkZhY3RvcnlDYXJkIiwidXNlRWZmZWN0IiwibmV3QXJlYXMiLCJpc1N1YkFyZWFzRXF1YWwiLCJjb21wYXJlQXJyYXlzQnlJZEFuZFNjb3JlIiwiZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzIiwiX29iamVjdFNwcmVhZDIiLCJzZXRGb2N1c2VkQXJlYSIsImFycjEiLCJhcnIyIiwiX2l0ZXJhdG9yIiwiX2NyZWF0ZUZvck9mSXRlcmF0b3JIZWxwZXIyIiwiX3N0ZXAiLCJfbG9vcCIsIml0ZW0xIiwidmFsdWUiLCJtYXRjaGluZ0l0ZW0iLCJmaW5kIiwiaXRlbTIiLCJ2IiwiYXJlYV9zY29yZSIsInMiLCJuIiwiZG9uZSIsIl9yZXQiLCJfdHlwZW9mMiIsImVyciIsImUiLCJmIiwiX3NlbGVjdGVkUmVmJGN1cnJlbnQiLCJjdXJyZW50Iiwic2Nyb2xsSW50b1ZpZXciLCJiZWhhdmlvciIsImJsb2NrIiwiaW5saW5lIiwiZ3JvdXAiLCJ0eXBlIiwiY2xpY2tlZCIsIldXVFBEZXRhaWxzIiwic3R5bGUiLCJvdmVyZmxvdyIsIm5hbWUiLCJhcmVhX25hbWUiLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJ0aGVtZSIsIldXVFBNYXAiLCJiZyIsIlF1YWxpdHlTdW1tYXJ5IiwiTGluZUNoYXJ0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL0Rhc2hib2FyZE1hcC9MaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnc3JjL3N0eWxlcy90aGVtZS90aGVtZSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgc29ydEFyZWFzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBBcmVhQ2FyZCB9IGZyb20gJy4vQXJlYUNhcmQnO1xuaW1wb3J0IHsgRmFjdG9yeUNhcmQgfSBmcm9tICcuL0ZhY3RvcnlDYXJkJztcbmltcG9ydCBPcmdhbmljQ2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9PcmdhbmljQ2FyZCc7XG5pbXBvcnQgSW1wYWN0Q2FyZCBmcm9tICcuLi9Xd3RwUGFnZS9Qb3RlbnRpYWxTYXZpbmcnO1xuaW1wb3J0IHsgdXNlU2VsZWN0ZWRJdGVtIH0gZnJvbSAnLi9MaXN0Q29udGV4dCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgRGlzY2hhcmdlUGF0dGVybiB9IGZyb20gJy4uL1NpdGVQYWdlL0Rpc2NoYXJnZVBhdHRlcm4vRGlzY2hhcmdlUGF0dGVybic7XG5pbXBvcnQgeyBRdWFsaXR5U3VtbWFyeSB9IGZyb20gJ3NyYy9XaWRnZXRzL1F1YWxpdHlTdW1tYXJ5L1F1YWxpdHlTdW1tYXJ5JztcbmltcG9ydCB7IExpbmVDaGFydCB9IGZyb20gJ3NyYy9wYWdlcy9BcmVhUGFnZS9EYXNoYm9hcmQvTGluZUNoYXJ0L0xpbmVDaGFydCc7XG5pbXBvcnQgeyBzZXRGb2N1c2VkQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9XV1RQRGFzaGJvYXJkL1dXVFBEYXNoYm9hcmRTbGljZSc7XG5cbnR5cGUgSVByb3BzID0ge1xuICBnbG9iYWxfZGF0YTogYW55O1xuICBXV1RQSW5mbzogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IExpc3Q6IFJlYWN0LkZDPElQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEgfSA9IFJlZHV4U3RhdGU7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgeyBzZWxlY3RlZEl0ZW0sIGhhbmRsZVNlbGVjdEl0ZW0gfSA9IHVzZVNlbGVjdGVkSXRlbSgpO1xuICBjb25zdCB7IFdXVFBJbmZvIH0gPSBwcm9wcztcbiAgY29uc3QgeyBmb2N1c2VkQXJlYSwgbWFwIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS53d3RwX2Rhc2hib2FyZCxcbiAgKTtcbiAgY29uc3Qgc2VsZWN0ZWRSZWYgPSB1c2VSZWYobnVsbCk7XG4gIGNvbnN0IHNpdGVJRCA9IFdXVFBJbmZvLnBvaW50Py5pZDtcblxuICBjb25zdCBoYW5kbGVJdGVtQ2xpY2sgPSAoaXRlbSkgPT4ge1xuICAgIGhhbmRsZVNlbGVjdEl0ZW0oaXRlbSk7XG4gIH07XG5cbiAgY29uc3Qgbm9EYXRhTWVzc2FnZSA9IGkxOG4udCgnd3d0cFBhZ2Uubm9fZGF0YV9mb3Jfc2l0ZScpO1xuXG4gIGxldCBsaXN0RGV0YWlscyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmICghc2l0ZUlEICYmICFmb2N1c2VkQXJlYSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGlzX25vX2FyZWFzID1cbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYT8uZm9yV1dUUE1hcCA9PT0gdHJ1ZSAmJlxuICAgICAgc2l0ZUlEICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcz8ubGVuZ3RoID09PSAwO1xuXG4gICAgaWYgKGlzX25vX2FyZWFzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIC8vIGZvY3VzZWRBcmVhPy5jbGlja2VkID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgZm9jdXNlZEFyZWE/Lmhhc19kZXZpY2UgPT09IGZhbHNlIHx8XG4gICAgICAgICFzaXRlSURcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPEVycm9yTWVzc2FnZT57bm9EYXRhTWVzc2FnZX08L0Vycm9yTWVzc2FnZT5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxMaXN0Q29udGFpbmVyPlxuICAgICAgICAgICAgPFN1bW1hcnlDb21wb25lbnRcbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvZGF0YS9ldmVudHMtY29tcG9uZW50LWRhdGEvJHtzaXRlSUR9YH1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwic3VtbWFyeS1jb21wb25lbnRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxMaW5lQ2hhcnRDb21wb25lbnRcbiAgICAgICAgICAgICAgdGl0bGU9e2kxOG4udCgnYXJlYV9kYXNoYm9hcmQudHJlbmQnKX1cbiAgICAgICAgICAgICAgZW5kcG9pbnQ9e2AvcG9pbnRzLyR7c2l0ZUlEfS90cmVuZC1ncmFwaGB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPERpc2NoYXJnZVBhdHRlcm4gc2l0ZUlEPXtOdW1iZXIoc2l0ZUlEKX0gLz5cbiAgICAgICAgICA8L0xpc3RDb250YWluZXI+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKGZvY3VzZWRBcmVhICYmIGZvY3VzZWRBcmVhPy5zdWJfYXJlYXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcyAmJlxuICAgICAgICBzb3J0QXJlYXMoZm9jdXNlZEFyZWEuc3ViX2FyZWFzKVxuICAgICAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgICAgICAubWFwKChhcmVhOiBJQXJlYSkgPT4gKFxuICAgICAgICAgICAgPEFyZWFDYXJkXG4gICAgICAgICAgICAgIGtleT17YXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBvYmplY3Q9e2FyZWF9XG4gICAgICAgICAgICAgIG1hcFJlZj17bWFwfVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBoYW5kbGVJdGVtQ2xpY2soYXJlYS5hcmVhX2lkKX1cbiAgICAgICAgICAgICAgc2VsZWN0ZWQ9e3NlbGVjdGVkSXRlbSA9PT0gYXJlYS5hcmVhX2lkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGFyZWEuYXJlYV9pZCA/IHNlbGVjdGVkUmVmIDogbnVsbH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKSlcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChmb2N1c2VkQXJlYT8uZmFjdG9yaWVzKSB7XG4gICAgICAgIHJldHVybiBmb2N1c2VkQXJlYS5mYWN0b3JpZXNcbiAgICAgICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAgICAgLm1hcCgoZmFjdG9yeSkgPT4gKFxuICAgICAgICAgICAgPEZhY3RvcnlDYXJkXG4gICAgICAgICAgICAgIGtleT17ZmFjdG9yeS5pZH1cbiAgICAgICAgICAgICAgb2JqZWN0PXtmYWN0b3J5fVxuICAgICAgICAgICAgICBtYXBSZWY9e21hcH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlSXRlbUNsaWNrKGZhY3RvcnkuaWQpfVxuICAgICAgICAgICAgICBzZWxlY3RlZD17c2VsZWN0ZWRJdGVtID09PSBmYWN0b3J5LmlkfVxuICAgICAgICAgICAgICBpdGVtUmVmPXtzZWxlY3RlZEl0ZW0gPT09IGZhY3RvcnkuaWQgPyBzZWxlY3RlZFJlZiA6IG51bGx9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW3NlbGVjdGVkSXRlbSwgc2l0ZUlELCBmb2N1c2VkQXJlYV0pO1xuXG4gIC8vIFVwZGF0ZSB0aGUgbGlzdCBvbmx5IGlmIHRoZSBzY29yZSBvZiBhdCBsZWFzdCBvbmUgb2YgdGhlIHN1Yi1hcmVhcyBoYXMgY2hhbmdlZFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGZvY3VzZWRBcmVhICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMgJiZcbiAgICAgIGZvY3VzZWRBcmVhLnN1Yl9hcmVhcy5sZW5ndGggPiAwICYmXG4gICAgICBhcmVhc19kYXRhICYmXG4gICAgICBmb2N1c2VkQXJlYS5zdWJfYXJlYXMubGVuZ3RoID09PSBhcmVhc19kYXRhLm5ld0FyZWFzLmxlbmd0aFxuICAgICkge1xuICAgICAgY29uc3QgaXNTdWJBcmVhc0VxdWFsID0gY29tcGFyZUFycmF5c0J5SWRBbmRTY29yZShcbiAgICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcyxcbiAgICAgICAgZm9jdXNlZEFyZWEuc3ViX2FyZWFzLFxuICAgICAgKTtcbiAgICAgIGlmIChpc1N1YkFyZWFzRXF1YWwpIHJldHVybjtcblxuICAgICAgY29uc3QgZm9jdXNlZEFyZWFXaXRoVXBkYXRlZFN1YkFyZWFzID0ge1xuICAgICAgICAuLi5mb2N1c2VkQXJlYSxcbiAgICAgICAgc3ViX2FyZWFzOiBhcmVhc19kYXRhLm5ld0FyZWFzLFxuICAgICAgfTtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRBcmVhKGZvY3VzZWRBcmVhV2l0aFVwZGF0ZWRTdWJBcmVhcykpO1xuICAgIH1cbiAgfSwgW2FyZWFzX2RhdGFdKTtcblxuICBmdW5jdGlvbiBjb21wYXJlQXJyYXlzQnlJZEFuZFNjb3JlKGFycjEsIGFycjIpIHtcbiAgICAvLyBJdGVyYXRlIG92ZXIgZWFjaCBvYmplY3QgaW4gdGhlIGZpcnN0IGFycmF5XG4gICAgZm9yIChsZXQgaXRlbTEgb2YgYXJyMSkge1xuICAgICAgLy8gRmluZCB0aGUgb2JqZWN0IHdpdGggdGhlIHNhbWUgaWQgaW4gdGhlIHNlY29uZCBhcnJheVxuICAgICAgbGV0IG1hdGNoaW5nSXRlbSA9IGFycjIuZmluZCgoaXRlbTIpID0+IGl0ZW0yLmFyZWFfaWQgPT09IGl0ZW0xLmFyZWFfaWQpO1xuXG4gICAgICAvLyBJZiBubyBtYXRjaGluZyBpdGVtIGlzIGZvdW5kIGluIHRoZSBzZWNvbmQgYXJyYXksIHJldHVybiBmYWxzZVxuICAgICAgaWYgKCFtYXRjaGluZ0l0ZW0pIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICAvLyBJZiB0aGUgc2NvcmVzIGRvbid0IG1hdGNoLCByZXR1cm4gZmFsc2VcbiAgICAgIGlmIChpdGVtMS5hcmVhX3Njb3JlICE9PSBtYXRjaGluZ0l0ZW0uYXJlYV9zY29yZSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgYWxsIGl0ZW1zIG1hdGNoZWQgYW5kIGhhZCB0aGUgc2FtZSBzY29yZSwgcmV0dXJuIHRydWVcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2VsZWN0ZWRSZWYuY3VycmVudD8uc2Nyb2xsSW50b1ZpZXcoe1xuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgYmxvY2s6ICdjZW50ZXInLFxuICAgICAgaW5saW5lOiAnY2VudGVyJyxcbiAgICB9KTtcbiAgfSwgW3NlbGVjdGVkSXRlbV0pO1xuXG4gIGlmIChcbiAgICBmb2N1c2VkQXJlYT8uZ3JvdXAgJiZcbiAgICBmb2N1c2VkQXJlYS5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnICYmXG4gICAgZm9jdXNlZEFyZWE/LmNsaWNrZWQgPT09IHVuZGVmaW5lZFxuICApXG4gICAgcmV0dXJuIChcbiAgICAgIDxXV1RQRGV0YWlscyBjbGFzc05hbWU9XCJwLTNcIiBzdHlsZT17eyBvdmVyZmxvdzogJ3Njcm9sbCcgfX0+XG4gICAgICAgIDxoMz57V1dUUEluZm8ucG9pbnQ/Lm5hbWV9PC9oMz5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXktNCd9PlxuICAgICAgICAgIDxPcmdhbmljQ2FyZCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoLWF1dG8gbXQtMid9PlxuICAgICAgICAgIDxJbXBhY3RDYXJkIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9XV1RQRGV0YWlscz5cbiAgICApO1xuXG4gIHJldHVybiAoXG4gICAgPFdXVFBEZXRhaWxzIGNsYXNzTmFtZT1cInAtM1wiIHN0eWxlPXt7IG92ZXJmbG93OiAnc2Nyb2xsJyB9fT5cbiAgICAgIDxoMz57Zm9jdXNlZEFyZWE/LmFyZWFfbmFtZSB8fCBmb2N1c2VkQXJlYT8ubmFtZX08L2gzPlxuICAgICAgPHVsIGNsYXNzTmFtZT17J214LW4zJ30+e2xpc3REZXRhaWxzfTwvdWw+XG4gICAgPC9XV1RQRGV0YWlscz5cbiAgKTtcbn07XG5cbmNvbnN0IFdXVFBEZXRhaWxzID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDEzNHB4KTtcbiAgYmFja2dyb3VuZDogJHt0aGVtZS5XV1RQTWFwLmJnfTtcbmA7XG5cbmNvbnN0IFN1bW1hcnlDb21wb25lbnQgPSBzdHlsZWQoUXVhbGl0eVN1bW1hcnkpYFxuICBncmlkLWFyZWE6IHN1bW1hcnk7XG5cbiAgc3VtbWFyeS1jb21wb25lbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsdWU7XG4gIH1cbmA7XG5cbmNvbnN0IExpbmVDaGFydENvbXBvbmVudCA9IHN0eWxlZChMaW5lQ2hhcnQpYFxuICBncmlkLWFyZWE6IGdyYXBoO1xuYDtcblxuY29uc3QgTGlzdENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAyMHB4O1xuICBnYXA6IDMwcHg7XG5gO1xuXG5jb25zdCBFcnJvck1lc3NhZ2UgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IC0wLjlweCAtMC41cHggNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjA2KTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2ViZWJlYjtcbiAgcGFkZGluZzogMjBweDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUNBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUYsT0FBQTtBQUVBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFlBQUEsR0FB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
@@ -128,9 +128,6 @@ var WWTPMap = function WWTPMap(props) {
128
128
  // useEffect(() => {
129
129
  // if (!ReduxState.wwtp_dashboard.focusedArea || !wwtp_dashboard.map) return;
130
130
 
131
- // //focusMap(ReduxState.wwtp_dashboard.focusedArea, wwtp_dashboard.map);
132
- // }, [ReduxState.wwtp_dashboard.focusedArea]);
133
-
134
131
  if (!isMapTab) return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
135
132
  if (!dataExists() || !points || !areas) return /*#__PURE__*/_react.default.createElement(_Loader.Loader, null);
136
133
  return /*#__PURE__*/_react.default.createElement(_ListContext.SelectedItemProvider, null, /*#__PURE__*/_react.default.createElement(Container, props, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Row, {
@@ -164,4 +161,4 @@ var Container = _styledComponents.default.div.withConfig({
164
161
  })(["width:100vw;.map-column{z-index:0;}.kd-map-container{height:calc(100vh - 134px);width:100%;@media (max-width:1250px){height:calc(100vh - 125px);}#map{height:100%;width:100%;*,*:focus,*:hover{outline:none;}.leaflet-popup-close-button{font-size:x-large;}}}"]);
165
162
  var _default = WWTPMap;
166
163
  exports.default = _default;
167
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3RSZWR1eCIsInJlcXVpcmUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9NYXAiLCJfYWN0aW9ucyIsIl9hY3Rpb25zMiIsIl9hY3Rpb25zMyIsIl9MaXN0IiwiX3V0aWxzIiwiX0xvYWRlciIsIl9yZWFjdFJvdXRlckRvbSIsIl91c2VRdWVyeVVSTCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX0xpc3RDb250ZXh0IiwiX3JlYWN0Qm9vdHN0cmFwIiwiX0NhcGFjaXR5IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJXV1RQTWFwIiwicHJvcHMiLCJfUmVkdXhTdGF0ZSR3d3RwX2Rhc2gyIiwic2VhcmNoUXVlcnkiLCJ1c2VRdWVyeVVSTCIsImlzTWFwVGFiIiwiX3VzZVBhcmFtcyIsInVzZVBhcmFtcyIsImlkIiwiYXJlYUlEIiwic2l0ZUlEIiwiUmVkdXhTdGF0ZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiYXJlYXNfZGF0YSIsImdsb2JhbF9kYXRhIiwicG9pbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwid3d0cF9kYXNoYm9hcmQiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJwb2ludHMiLCJzZXRQb2ludHMiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImFyZWFzIiwic2V0QXJlYXMiLCJfdXNlU3RhdGU1IiwicG9pbnQiLCJhcmVhIiwiX3VzZVN0YXRlNiIsIldXVFBJbmZvIiwic2V0V1dUUEluZm8iLCJkYXRhRXhpc3RzIiwibmV3QXJlYXMiLCJsZW5ndGgiLCJpdGVtcyIsInVzZUVmZmVjdCIsIndhdGVyQXV0aG9yaXR5SWQiLCJmZXRjaFBvaW50cyIsImZldGNoRWRnZXMiLCJmZXRjaEFyZWFzIiwiZGFzaGJvYXJkIiwicGVyaW9kIiwiaW5pdGlhbGl6ZVdXVFBEYXRhIiwiY2FsY3VsYXRlV1dUUEluZm8iLCJjbGVhbnVwIiwib2JqZWN0IiwiX1JlZHV4U3RhdGUkd3d0cF9kYXNoIiwidHlwZSIsImlzX3ZpcnR1YWwiLCJ2YWxpZE9iamVjdCIsInRvU3RyaW5nIiwiYXJlYV9pZCIsInBhcnNlSW50Iiwic2hvd0V4dHJhIiwiZm9jdXNlZEFyZWEiLCJmZXRjaENhcGFjaXR5IiwidGhlbiIsInJlc3BvbnNlIiwic2V0Rm9jdXNlZEl0ZW0iLCJkYXRhIiwic2V0Rm9jdXNlZEFyZWEiLCJ1dGlsaXR5RGlyZWN0cyIsInNvcnRBcmVhcyIsInVuZGVmaW5lZCIsIm1hcCIsImNyZWF0ZUVsZW1lbnQiLCJGcmFnbWVudCIsIkxvYWRlciIsIlNlbGVjdGVkSXRlbVByb3ZpZGVyIiwiQ29udGFpbmVyIiwiUm93IiwiY2xhc3NOYW1lIiwiQ29sIiwieHMiLCJzbSIsIkxpc3QiLCJNYXAiLCJlZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImZvckV2ZW50c1ZpZXciLCJmb3JXV1RQRGFzaGJvYXJkIiwiYXJlYVRvQ2VudGVyQnkiLCJzaGFwZV9kYXRhIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRGFzaGJvYXJkTWFwL1dXVFBNYXAudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgeyBmZXRjaEFyZWFzIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hFZGdlcyB9IGZyb20gJ3NyYy9zdG9yZS9lZGdlcy9hY3Rpb25zJztcbmltcG9ydCB7IGZldGNoUG9pbnRzIH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9hY3Rpb25zJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgTGlzdCB9IGZyb20gJy4vTGlzdCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBjYWxjdWxhdGVXV1RQSW5mbywgaW5pdGlhbGl6ZVdXVFBEYXRhLCBzb3J0QXJlYXMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IExvYWRlciB9IGZyb20gJy4vTG9hZGVyJztcbmltcG9ydCB7IHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJy4uLy4uL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IHNldEZvY3VzZWRBcmVhIH0gZnJvbSAnLi4vLi4vc3RvcmUvV1dUUERhc2hib2FyZC9XV1RQRGFzaGJvYXJkU2xpY2UnO1xuaW1wb3J0IHsgU2VsZWN0ZWRJdGVtUHJvdmlkZXIgfSBmcm9tICcuL0xpc3RDb250ZXh0JztcbmltcG9ydCB7IFJvdywgQ29sIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IGZldGNoQ2FwYWNpdHksIHNldEZvY3VzZWRJdGVtIH0gZnJvbSAnLi9DYXBhY2l0eSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FwYWNpdHlNYXBDb250YWluZXJQcm9wcyB7XG4gIGNsYXNzTmFtZTogc3RyaW5nO1xufVxuY29uc3QgV1dUUE1hcDogUmVhY3QuRkM8Q2FwYWNpdHlNYXBDb250YWluZXJQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qgc2VhcmNoUXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBpc01hcFRhYiA9IHNlYXJjaFF1ZXJ5LmdldCgndmlldycpID09PSAnbWFwJztcbiAgbGV0IHsgaWQsIGFyZWFJRCwgc2l0ZUlEIH0gPSB1c2VQYXJhbXMoKTtcbiAgaWQgPSBpZCB8fCBhcmVhSUQgfHwgc2l0ZUlEO1xuICBjb25zdCBSZWR1eFN0YXRlID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZSk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgeyBhcmVhc19kYXRhLCBnbG9iYWxfZGF0YSwgcG9pbnRzX2RhdGEsIGVkZ2VzX2RhdGEsIHd3dHBfZGFzaGJvYXJkIH0gPVxuICAgIFJlZHV4U3RhdGU7XG4gIGNvbnN0IFtwb2ludHMsIHNldFBvaW50c10gPSB1c2VTdGF0ZTxJUG9pbnRbXSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbYXJlYXMsIHNldEFyZWFzXSA9IHVzZVN0YXRlPElBcmVhW10gfCBudWxsPihudWxsKTtcbiAgY29uc3QgW1dXVFBJbmZvLCBzZXRXV1RQSW5mb10gPSB1c2VTdGF0ZTx7XG4gICAgcG9pbnQ6IElQb2ludCB8IG51bGw7XG4gICAgYXJlYTogSUFyZWEgfCBudWxsO1xuICB9Pih7IHBvaW50OiBudWxsLCBhcmVhOiBudWxsIH0pO1xuICBsZXQgZGF0YUV4aXN0cyA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcy5sZW5ndGggIT09IDAgfHxcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCB8fFxuICAgICAgZWRnZXNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDBcbiAgICApO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoRWRnZXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZGlzcGF0Y2goXG4gICAgICAgIGZldGNoQXJlYXMoXG4gICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgICAgICBSZWR1eFN0YXRlLmRhc2hib2FyZC5wZXJpb2QsXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgfVxuICB9LCBbUmVkdXhTdGF0ZS5kYXNoYm9hcmQucGVyaW9kXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplV1dUUERhdGEoe1xuICAgICAgYXJlYXNfZGF0YSxcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgc2V0UG9pbnRzLFxuICAgICAgc2V0QXJlYXMsXG4gICAgICBzZXRXV1RQSW5mbyxcbiAgICAgIGRhdGFFeGlzdHMsXG4gICAgICBpZCxcbiAgICB9KTtcbiAgfSwgW2FyZWFzX2RhdGFdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFdXVFBJbmZvKGNhbGN1bGF0ZVdXVFBJbmZvKHsgaWQsIHBvaW50c19kYXRhLCBhcmVhc19kYXRhIH0pKTtcbiAgfSwgW2lkXSk7XG5cbiAgLy8gdXNlRWZmZWN0KCgpID0+IHtcbiAgLy8gICBmb2N1c01hcChXV1RQSW5mby5hcmVhIHx8IFdXVFBJbmZvLnBvaW50LCB3d3RwX2Rhc2hib2FyZC5tYXApO1xuICAvLyB9LCBbV1dUUEluZm9dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gICAgICBwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgZGlzcGF0Y2goZmV0Y2hQb2ludHMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZWRnZXNfZGF0YS5pdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBhcmVhc19kYXRhLml0ZW1zLmxlbmd0aCA9PT0gMCAmJlxuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBmZXRjaEFyZWFzKFxuICAgICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgICAgICAgIFJlZHV4U3RhdGUuZGFzaGJvYXJkLnBlcmlvZCxcbiAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIHNldFBvaW50cyhudWxsKTtcbiAgICAgIHNldEFyZWFzKG51bGwpO1xuICAgICAgc2V0V1dUUEluZm8oeyBwb2ludDogbnVsbCwgYXJlYTogbnVsbCB9KTtcbiAgICB9O1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3Qgb2JqZWN0ID0gV1dUUEluZm8uYXJlYSB8fCBXV1RQSW5mby5wb2ludDtcblxuICAgIGlmIChpc01hcFRhYiAmJiBvYmplY3QpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBXV1RQSW5mby5hcmVhXG4gICAgICAgID8gb2JqZWN0LmlzX3ZpcnR1YWwgPT09IHRydWVcbiAgICAgICAgICA/ICd2YXJlYSdcbiAgICAgICAgICA6ICdhcmVhJ1xuICAgICAgICA6ICdzaXRlJztcblxuICAgICAgY29uc3QgdmFsaWRPYmplY3QgPVxuICAgICAgICB0eXBlID09PSAnc2l0ZSdcbiAgICAgICAgICA/IG9iamVjdC5pZC50b1N0cmluZygpID09PSBpZFxuICAgICAgICAgIDogb2JqZWN0LmFyZWFfaWQgPT09IHBhcnNlSW50KGlkKTtcblxuICAgICAgY29uc3Qgc2hvd0V4dHJhID0gb2JqZWN0LmlkID09PSBSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhPy5pZDtcblxuICAgICAgaWYgKHZhbGlkT2JqZWN0KSB7XG4gICAgICAgIGZldGNoQ2FwYWNpdHkodHlwZSwgaWQsIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpLnRoZW4oXG4gICAgICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkSXRlbShcbiAgICAgICAgICAgICAgb2JqZWN0LFxuICAgICAgICAgICAgICByZXNwb25zZS5kYXRhLFxuICAgICAgICAgICAgICBwb2ludHMsXG4gICAgICAgICAgICAgIGFyZWFzLFxuICAgICAgICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgICAgICAgc2V0Rm9jdXNlZEFyZWEsXG4gICAgICAgICAgICAgIHNob3dFeHRyYSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdXRpbGl0eURpcmVjdHMgPSBzb3J0QXJlYXMoYXJlYXMpO1xuXG4gICAgICBzZXRGb2N1c2VkSXRlbShcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICBudWxsLFxuICAgICAgICBwb2ludHMsXG4gICAgICAgIHV0aWxpdHlEaXJlY3RzLFxuICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgc2V0Rm9jdXNlZEFyZWEsXG4gICAgICAgIHRydWUsXG4gICAgICApO1xuICAgIH1cbiAgICAvLyBmb2N1c01hcChvYmplY3QsIHd3dHBfZGFzaGJvYXJkLm1hcCk7XG4gIH0sIFt3d3RwX2Rhc2hib2FyZC5tYXBdKTtcblxuICAvLyB1c2VFZmZlY3QoKCkgPT4ge1xuICAvLyAgIGlmICghUmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYSB8fCAhd3d0cF9kYXNoYm9hcmQubWFwKSByZXR1cm47XG5cbiAgLy8gICAvL2ZvY3VzTWFwKFJlZHV4U3RhdGUud3d0cF9kYXNoYm9hcmQuZm9jdXNlZEFyZWEsIHd3dHBfZGFzaGJvYXJkLm1hcCk7XG4gIC8vIH0sIFtSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhXSk7XG5cbiAgaWYgKCFpc01hcFRhYikgcmV0dXJuIDw+PC8+O1xuICBpZiAoIWRhdGFFeGlzdHMoKSB8fCAhcG9pbnRzIHx8ICFhcmVhcykgcmV0dXJuIDxMb2FkZXIgLz47XG5cbiAgcmV0dXJuIChcbiAgICA8U2VsZWN0ZWRJdGVtUHJvdmlkZXI+XG4gICAgICA8Q29udGFpbmVyIHsuLi5wcm9wc30+XG4gICAgICAgIDxSb3cgY2xhc3NOYW1lPVwibm8tZ3V0dGVyc1wiPlxuICAgICAgICAgIDxDb2wgeHM9XCJhdXRvXCIgc209ezR9IGNsYXNzTmFtZT1cImQtbm9uZSBkLXNtLWZsZXhcIj5cbiAgICAgICAgICAgIDxMaXN0XG4gICAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxfZGF0YX1cbiAgICAgICAgICAgICAgV1dUUEluZm89e1dXVFBJbmZvfVxuICAgICAgICAgICAgICBkaXNwYXRjaD17ZGlzcGF0Y2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgIDxDb2wgY2xhc3NOYW1lPVwibWFwLWNvbHVtblwiIHhzPXsxMn0gc209ezh9PlxuICAgICAgICAgICAgPE1hcFxuICAgICAgICAgICAgICBwb2ludHM9e3BvaW50c31cbiAgICAgICAgICAgICAgYXJlYXM9e2FyZWFzfVxuICAgICAgICAgICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICAgICAgICAgIGVkZ2VzPXtlZGdlc19kYXRhLml0ZW1zfVxuICAgICAgICAgICAgICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM9e3RydWV9XG4gICAgICAgICAgICAgIGZvckV2ZW50c1ZpZXc9e2ZhbHNlfVxuICAgICAgICAgICAgICBmb3JXV1RQRGFzaGJvYXJkPXt0cnVlfVxuICAgICAgICAgICAgICBhcmVhVG9DZW50ZXJCeT17UmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYT8uc2hhcGVfZGF0YX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9Db2w+XG4gICAgICAgIDwvUm93PlxuICAgICAgPC9Db250YWluZXI+XG4gICAgPC9TZWxlY3RlZEl0ZW1Qcm92aWRlcj5cbiAgKTtcbn07XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxMDB2dztcblxuICAubWFwLWNvbHVtbiB7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gIC5rZC1tYXAtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzRweCk7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTI1MHB4KSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMjVweCk7XG4gICAgfVxuXG4gICAgI21hcCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgKixcbiAgICAgICo6Zm9jdXMsXG4gICAgICAqOmhvdmVyIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmxlYWZsZXQtcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiB4LWxhcmdlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuYDtcblxuZXhwb3J0IGRlZmF1bHQgV1dUUE1hcDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFB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
164
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3RSZWR1eCIsInJlcXVpcmUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9NYXAiLCJfYWN0aW9ucyIsIl9hY3Rpb25zMiIsIl9hY3Rpb25zMyIsIl9MaXN0IiwiX3V0aWxzIiwiX0xvYWRlciIsIl9yZWFjdFJvdXRlckRvbSIsIl91c2VRdWVyeVVSTCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfV1dUUERhc2hib2FyZFNsaWNlIiwiX0xpc3RDb250ZXh0IiwiX3JlYWN0Qm9vdHN0cmFwIiwiX0NhcGFjaXR5IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJXV1RQTWFwIiwicHJvcHMiLCJfUmVkdXhTdGF0ZSR3d3RwX2Rhc2gyIiwic2VhcmNoUXVlcnkiLCJ1c2VRdWVyeVVSTCIsImlzTWFwVGFiIiwiX3VzZVBhcmFtcyIsInVzZVBhcmFtcyIsImlkIiwiYXJlYUlEIiwic2l0ZUlEIiwiUmVkdXhTdGF0ZSIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiYXJlYXNfZGF0YSIsImdsb2JhbF9kYXRhIiwicG9pbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwid3d0cF9kYXNoYm9hcmQiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJwb2ludHMiLCJzZXRQb2ludHMiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImFyZWFzIiwic2V0QXJlYXMiLCJfdXNlU3RhdGU1IiwicG9pbnQiLCJhcmVhIiwiX3VzZVN0YXRlNiIsIldXVFBJbmZvIiwic2V0V1dUUEluZm8iLCJkYXRhRXhpc3RzIiwibmV3QXJlYXMiLCJsZW5ndGgiLCJpdGVtcyIsInVzZUVmZmVjdCIsIndhdGVyQXV0aG9yaXR5SWQiLCJmZXRjaFBvaW50cyIsImZldGNoRWRnZXMiLCJmZXRjaEFyZWFzIiwiZGFzaGJvYXJkIiwicGVyaW9kIiwiaW5pdGlhbGl6ZVdXVFBEYXRhIiwiY2FsY3VsYXRlV1dUUEluZm8iLCJjbGVhbnVwIiwib2JqZWN0IiwiX1JlZHV4U3RhdGUkd3d0cF9kYXNoIiwidHlwZSIsImlzX3ZpcnR1YWwiLCJ2YWxpZE9iamVjdCIsInRvU3RyaW5nIiwiYXJlYV9pZCIsInBhcnNlSW50Iiwic2hvd0V4dHJhIiwiZm9jdXNlZEFyZWEiLCJmZXRjaENhcGFjaXR5IiwidGhlbiIsInJlc3BvbnNlIiwic2V0Rm9jdXNlZEl0ZW0iLCJkYXRhIiwic2V0Rm9jdXNlZEFyZWEiLCJ1dGlsaXR5RGlyZWN0cyIsInNvcnRBcmVhcyIsInVuZGVmaW5lZCIsIm1hcCIsImNyZWF0ZUVsZW1lbnQiLCJGcmFnbWVudCIsIkxvYWRlciIsIlNlbGVjdGVkSXRlbVByb3ZpZGVyIiwiQ29udGFpbmVyIiwiUm93IiwiY2xhc3NOYW1lIiwiQ29sIiwieHMiLCJzbSIsIkxpc3QiLCJNYXAiLCJlZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImZvckV2ZW50c1ZpZXciLCJmb3JXV1RQRGFzaGJvYXJkIiwiYXJlYVRvQ2VudGVyQnkiLCJzaGFwZV9kYXRhIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvRGFzaGJvYXJkTWFwL1dXVFBNYXAudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgeyBmZXRjaEFyZWFzIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hFZGdlcyB9IGZyb20gJ3NyYy9zdG9yZS9lZGdlcy9hY3Rpb25zJztcbmltcG9ydCB7IGZldGNoUG9pbnRzIH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9hY3Rpb25zJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgTGlzdCB9IGZyb20gJy4vTGlzdCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJy4uLy4uL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5pbXBvcnQgeyBjYWxjdWxhdGVXV1RQSW5mbywgaW5pdGlhbGl6ZVdXVFBEYXRhLCBzb3J0QXJlYXMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IExvYWRlciB9IGZyb20gJy4vTG9hZGVyJztcbmltcG9ydCB7IHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHVzZVF1ZXJ5VVJMIGZyb20gJy4uLy4uL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IHNldEZvY3VzZWRBcmVhIH0gZnJvbSAnLi4vLi4vc3RvcmUvV1dUUERhc2hib2FyZC9XV1RQRGFzaGJvYXJkU2xpY2UnO1xuaW1wb3J0IHsgU2VsZWN0ZWRJdGVtUHJvdmlkZXIgfSBmcm9tICcuL0xpc3RDb250ZXh0JztcbmltcG9ydCB7IFJvdywgQ29sIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IGZldGNoQ2FwYWNpdHksIHNldEZvY3VzZWRJdGVtIH0gZnJvbSAnLi9DYXBhY2l0eSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2FwYWNpdHlNYXBDb250YWluZXJQcm9wcyB7XG4gIGNsYXNzTmFtZTogc3RyaW5nO1xufVxuY29uc3QgV1dUUE1hcDogUmVhY3QuRkM8Q2FwYWNpdHlNYXBDb250YWluZXJQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qgc2VhcmNoUXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBpc01hcFRhYiA9IHNlYXJjaFF1ZXJ5LmdldCgndmlldycpID09PSAnbWFwJztcbiAgbGV0IHsgaWQsIGFyZWFJRCwgc2l0ZUlEIH0gPSB1c2VQYXJhbXMoKTtcbiAgaWQgPSBpZCB8fCBhcmVhSUQgfHwgc2l0ZUlEO1xuICBjb25zdCBSZWR1eFN0YXRlID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZSk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgeyBhcmVhc19kYXRhLCBnbG9iYWxfZGF0YSwgcG9pbnRzX2RhdGEsIGVkZ2VzX2RhdGEsIHd3dHBfZGFzaGJvYXJkIH0gPVxuICAgIFJlZHV4U3RhdGU7XG4gIGNvbnN0IFtwb2ludHMsIHNldFBvaW50c10gPSB1c2VTdGF0ZTxJUG9pbnRbXSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbYXJlYXMsIHNldEFyZWFzXSA9IHVzZVN0YXRlPElBcmVhW10gfCBudWxsPihudWxsKTtcbiAgY29uc3QgW1dXVFBJbmZvLCBzZXRXV1RQSW5mb10gPSB1c2VTdGF0ZTx7XG4gICAgcG9pbnQ6IElQb2ludCB8IG51bGw7XG4gICAgYXJlYTogSUFyZWEgfCBudWxsO1xuICB9Pih7IHBvaW50OiBudWxsLCBhcmVhOiBudWxsIH0pO1xuICBsZXQgZGF0YUV4aXN0cyA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcy5sZW5ndGggIT09IDAgfHxcbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCB8fFxuICAgICAgZWRnZXNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDBcbiAgICApO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoRWRnZXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZGlzcGF0Y2goXG4gICAgICAgIGZldGNoQXJlYXMoXG4gICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgICAgICBSZWR1eFN0YXRlLmRhc2hib2FyZC5wZXJpb2QsXG4gICAgICAgICAgdHJ1ZSxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgfVxuICB9LCBbUmVkdXhTdGF0ZS5kYXNoYm9hcmQucGVyaW9kXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpbml0aWFsaXplV1dUUERhdGEoe1xuICAgICAgYXJlYXNfZGF0YSxcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgc2V0UG9pbnRzLFxuICAgICAgc2V0QXJlYXMsXG4gICAgICBzZXRXV1RQSW5mbyxcbiAgICAgIGRhdGFFeGlzdHMsXG4gICAgICBpZCxcbiAgICB9KTtcbiAgfSwgW2FyZWFzX2RhdGFdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFdXVFBJbmZvKGNhbGN1bGF0ZVdXVFBJbmZvKHsgaWQsIHBvaW50c19kYXRhLCBhcmVhc19kYXRhIH0pKTtcbiAgfSwgW2lkXSk7XG5cbiAgLy8gdXNlRWZmZWN0KCgpID0+IHtcbiAgLy8gICBmb2N1c01hcChXV1RQSW5mby5hcmVhIHx8IFdXVFBJbmZvLnBvaW50LCB3d3RwX2Rhc2hib2FyZC5tYXApO1xuICAvLyB9LCBbV1dUUEluZm9dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gICAgICBwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgZGlzcGF0Y2goZmV0Y2hQb2ludHMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZWRnZXNfZGF0YS5pdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBhcmVhc19kYXRhLml0ZW1zLmxlbmd0aCA9PT0gMCAmJlxuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBmZXRjaEFyZWFzKFxuICAgICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgICAgICAgIFJlZHV4U3RhdGUuZGFzaGJvYXJkLnBlcmlvZCxcbiAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIHNldFBvaW50cyhudWxsKTtcbiAgICAgIHNldEFyZWFzKG51bGwpO1xuICAgICAgc2V0V1dUUEluZm8oeyBwb2ludDogbnVsbCwgYXJlYTogbnVsbCB9KTtcbiAgICB9O1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3Qgb2JqZWN0ID0gV1dUUEluZm8uYXJlYSB8fCBXV1RQSW5mby5wb2ludDtcblxuICAgIGlmIChpc01hcFRhYiAmJiBvYmplY3QpIHtcbiAgICAgIGNvbnN0IHR5cGUgPSBXV1RQSW5mby5hcmVhXG4gICAgICAgID8gb2JqZWN0LmlzX3ZpcnR1YWwgPT09IHRydWVcbiAgICAgICAgICA/ICd2YXJlYSdcbiAgICAgICAgICA6ICdhcmVhJ1xuICAgICAgICA6ICdzaXRlJztcblxuICAgICAgY29uc3QgdmFsaWRPYmplY3QgPVxuICAgICAgICB0eXBlID09PSAnc2l0ZSdcbiAgICAgICAgICA/IG9iamVjdC5pZC50b1N0cmluZygpID09PSBpZFxuICAgICAgICAgIDogb2JqZWN0LmFyZWFfaWQgPT09IHBhcnNlSW50KGlkKTtcblxuICAgICAgY29uc3Qgc2hvd0V4dHJhID0gb2JqZWN0LmlkID09PSBSZWR1eFN0YXRlLnd3dHBfZGFzaGJvYXJkLmZvY3VzZWRBcmVhPy5pZDtcblxuICAgICAgaWYgKHZhbGlkT2JqZWN0KSB7XG4gICAgICAgIGZldGNoQ2FwYWNpdHkodHlwZSwgaWQsIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpLnRoZW4oXG4gICAgICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkSXRlbShcbiAgICAgICAgICAgICAgb2JqZWN0LFxuICAgICAgICAgICAgICByZXNwb25zZS5kYXRhLFxuICAgICAgICAgICAgICBwb2ludHMsXG4gICAgICAgICAgICAgIGFyZWFzLFxuICAgICAgICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgICAgICAgc2V0Rm9jdXNlZEFyZWEsXG4gICAgICAgICAgICAgIHNob3dFeHRyYSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgdXRpbGl0eURpcmVjdHMgPSBzb3J0QXJlYXMoYXJlYXMpO1xuXG4gICAgICBzZXRGb2N1c2VkSXRlbShcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICBudWxsLFxuICAgICAgICBwb2ludHMsXG4gICAgICAgIHV0aWxpdHlEaXJlY3RzLFxuICAgICAgICBkaXNwYXRjaCxcbiAgICAgICAgc2V0Rm9jdXNlZEFyZWEsXG4gICAgICAgIHRydWUsXG4gICAgICApO1xuICAgIH1cbiAgICAvLyBmb2N1c01hcChvYmplY3QsIHd3dHBfZGFzaGJvYXJkLm1hcCk7XG4gIH0sIFt3d3RwX2Rhc2hib2FyZC5tYXBdKTtcblxuICAvLyB1c2VFZmZlY3QoKCkgPT4ge1xuICAvLyAgIGlmICghUmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYSB8fCAhd3d0cF9kYXNoYm9hcmQubWFwKSByZXR1cm47XG5cbiAgaWYgKCFpc01hcFRhYikgcmV0dXJuIDw+PC8+O1xuICBpZiAoIWRhdGFFeGlzdHMoKSB8fCAhcG9pbnRzIHx8ICFhcmVhcykgcmV0dXJuIDxMb2FkZXIgLz47XG5cbiAgcmV0dXJuIChcbiAgICA8U2VsZWN0ZWRJdGVtUHJvdmlkZXI+XG4gICAgICA8Q29udGFpbmVyIHsuLi5wcm9wc30+XG4gICAgICAgIDxSb3cgY2xhc3NOYW1lPVwibm8tZ3V0dGVyc1wiPlxuICAgICAgICAgIDxDb2wgeHM9XCJhdXRvXCIgc209ezR9IGNsYXNzTmFtZT1cImQtbm9uZSBkLXNtLWZsZXhcIj5cbiAgICAgICAgICAgIDxMaXN0XG4gICAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxfZGF0YX1cbiAgICAgICAgICAgICAgV1dUUEluZm89e1dXVFBJbmZvfVxuICAgICAgICAgICAgICBkaXNwYXRjaD17ZGlzcGF0Y2h9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvQ29sPlxuICAgICAgICAgIDxDb2wgY2xhc3NOYW1lPVwibWFwLWNvbHVtblwiIHhzPXsxMn0gc209ezh9PlxuICAgICAgICAgICAgPE1hcFxuICAgICAgICAgICAgICBwb2ludHM9e3BvaW50c31cbiAgICAgICAgICAgICAgYXJlYXM9e2FyZWFzfVxuICAgICAgICAgICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICAgICAgICAgIGVkZ2VzPXtlZGdlc19kYXRhLml0ZW1zfVxuICAgICAgICAgICAgICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM9e3RydWV9XG4gICAgICAgICAgICAgIGZvckV2ZW50c1ZpZXc9e2ZhbHNlfVxuICAgICAgICAgICAgICBmb3JXV1RQRGFzaGJvYXJkPXt0cnVlfVxuICAgICAgICAgICAgICBhcmVhVG9DZW50ZXJCeT17UmVkdXhTdGF0ZS53d3RwX2Rhc2hib2FyZC5mb2N1c2VkQXJlYT8uc2hhcGVfZGF0YX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9Db2w+XG4gICAgICAgIDwvUm93PlxuICAgICAgPC9Db250YWluZXI+XG4gICAgPC9TZWxlY3RlZEl0ZW1Qcm92aWRlcj5cbiAgKTtcbn07XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxMDB2dztcblxuICAubWFwLWNvbHVtbiB7XG4gICAgei1pbmRleDogMDtcbiAgfVxuXG4gIC5rZC1tYXAtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMzRweCk7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTI1MHB4KSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMjVweCk7XG4gICAgfVxuXG4gICAgI21hcCB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgKixcbiAgICAgICo6Zm9jdXMsXG4gICAgICAqOmhvdmVyIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmxlYWZsZXQtcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOiB4LWxhcmdlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuYDtcblxuZXhwb3J0IGRlZmF1bHQgV1dUUE1hcDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLElBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFFBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFNBQUEsR0FBQU4sT0FBQTtBQUVBLElBQUFPLEtBQUEsR0FBQVAsT0FBQTtBQUdBLElBQUFRLE1BQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLE9BQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLGVBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQVosT0FBQTtBQUNBLElBQUFhLG1CQUFBLEdBQUFiLE9BQUE7QUFDQSxJQUFBYyxZQUFBLEdBQUFkLE9BQUE7QUFDQSxJQUFBZSxlQUFBLEdBQUFmLE9BQUE7QUFDQSxJQUFBZ0IsU0FBQSxHQUFBaEIsT0FBQTtBQUEyRCxTQUFBaUIseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFoQix3QkFBQW9CLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFaLEdBQUEsQ0FBQVksR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUgsR0FBQSxNQUFBSSxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBakIsR0FBQSxFQUFBTyxNQUFBLFlBQUFBLE1BQUE7QUFLM0QsSUFBTVcsT0FBNEMsR0FBRyxTQUEvQ0EsT0FBNENBLENBQUlDLEtBQUssRUFBSztFQUFBLElBQUFDLHNCQUFBO0VBQzlELElBQU1DLFdBQVcsR0FBRyxJQUFBQyxvQkFBVyxFQUFDLENBQUM7RUFDakMsSUFBTUMsUUFBUSxHQUFHRixXQUFXLENBQUNmLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLO0VBQ2xELElBQUFrQixVQUFBLEdBQTZCLElBQUFDLHlCQUFTLEVBQUMsQ0FBQztJQUFsQ0MsRUFBRSxHQUFBRixVQUFBLENBQUZFLEVBQUU7SUFBRUMsTUFBTSxHQUFBSCxVQUFBLENBQU5HLE1BQU07SUFBRUMsTUFBTSxHQUFBSixVQUFBLENBQU5JLE1BQU07RUFDeEJGLEVBQUUsR0FBR0EsRUFBRSxJQUFJQyxNQUFNLElBQUlDLE1BQU07RUFDM0IsSUFBTUMsVUFBVSxHQUFHLElBQUFDLHVCQUFXLEVBQUMsVUFBQ0MsS0FBSztJQUFBLE9BQUtBLEtBQUs7RUFBQSxFQUFDO0VBQ2hELElBQU1DLFFBQVEsR0FBRyxJQUFBQyx1QkFBVyxFQUFDLENBQUM7RUFDOUIsSUFBUUMsVUFBVSxHQUNoQkwsVUFBVSxDQURKSyxVQUFVO0lBQUVDLFdBQVcsR0FDN0JOLFVBQVUsQ0FEUU0sV0FBVztJQUFFQyxXQUFXLEdBQzFDUCxVQUFVLENBRHFCTyxXQUFXO0lBQUVDLFVBQVUsR0FDdERSLFVBQVUsQ0FEa0NRLFVBQVU7SUFBRUMsY0FBYyxHQUN0RVQsVUFBVSxDQUQ4Q1MsY0FBYztFQUV4RSxJQUFBQyxTQUFBLEdBQTRCLElBQUFDLGVBQVEsRUFBa0IsSUFBSSxDQUFDO0lBQUFDLFVBQUEsT0FBQUMsZUFBQSxDQUFBdkMsT0FBQSxFQUFBb0MsU0FBQTtJQUFwREksTUFBTSxHQUFBRixVQUFBO0lBQUVHLFNBQVMsR0FBQUgsVUFBQTtFQUN4QixJQUFBSSxVQUFBLEdBQTBCLElBQUFMLGVBQVEsRUFBaUIsSUFBSSxDQUFDO0lBQUFNLFVBQUEsT0FBQUosZUFBQSxDQUFBdkMsT0FBQSxFQUFBMEMsVUFBQTtJQUFqREUsS0FBSyxHQUFBRCxVQUFBO0lBQUVFLFFBQVEsR0FBQUYsVUFBQTtFQUN0QixJQUFBRyxVQUFBLEdBQWdDLElBQUFULGVBQVEsRUFHckM7TUFBRVUsS0FBSyxFQUFFLElBQUk7TUFBRUMsSUFBSSxFQUFFO0lBQUssQ0FBQyxDQUFDO0lBQUFDLFVBQUEsT0FBQVYsZUFBQSxDQUFBdkMsT0FBQSxFQUFBOEMsVUFBQTtJQUh4QkksUUFBUSxHQUFBRCxVQUFBO0lBQUVFLFdBQVcsR0FBQUYsVUFBQTtFQUk1QixJQUFJRyxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBQSxFQUFTO0lBQ3JCLE9BQ0VyQixVQUFVLENBQUNzQixRQUFRLENBQUNDLE1BQU0sS0FBSyxDQUFDLElBQ2hDckIsV0FBVyxDQUFDc0IsS0FBSyxDQUFDRCxNQUFNLEtBQUssQ0FBQyxJQUM5QnBCLFVBQVUsQ0FBQ3FCLEtBQUssQ0FBQ0QsTUFBTSxLQUFLLENBQUM7RUFFakMsQ0FBQztFQUVELElBQUFFLGdCQUFTLEVBQUMsWUFBTTtJQUNkLElBQUl4QixXQUFXLENBQUN5QixnQkFBZ0IsRUFBRTtNQUNoQzVCLFFBQVEsQ0FBQyxJQUFBNkIscUJBQVcsRUFBQzFCLFdBQVcsQ0FBQ3lCLGdCQUFnQixDQUFDLENBQUM7TUFDbkQ1QixRQUFRLENBQUMsSUFBQThCLG9CQUFVLEVBQUMzQixXQUFXLENBQUN5QixnQkFBZ0IsQ0FBQyxDQUFDO01BQ2xENUIsUUFBUSxDQUNOLElBQUErQixtQkFBVSxFQUNSNUIsV0FBVyxDQUFDeUIsZ0JBQWdCLEVBQzVCL0IsVUFBVSxDQUFDbUMsU0FBUyxDQUFDQyxNQUFNLEVBQzNCLElBQ0YsQ0FDRixDQUFDO0lBQ0g7RUFDRixDQUFDLEVBQUUsQ0FBQ3BDLFVBQVUsQ0FBQ21DLFNBQVMsQ0FBQ0MsTUFBTSxDQUFDLENBQUM7RUFFakMsSUFBQU4sZ0JBQVMsRUFBQyxZQUFNO0lBQ2QsSUFBQU8seUJBQWtCLEVBQUM7TUFDakJoQyxVQUFVLEVBQVZBLFVBQVU7TUFDVkUsV0FBVyxFQUFYQSxXQUFXO01BQ1hRLFNBQVMsRUFBVEEsU0FBUztNQUNUSSxRQUFRLEVBQVJBLFFBQVE7TUFDUk0sV0FBVyxFQUFYQSxXQUFXO01BQ1hDLFVBQVUsRUFBVkEsVUFBVTtNQUNWN0IsRUFBRSxFQUFGQTtJQUNGLENBQUMsQ0FBQztFQUNKLENBQUMsRUFBRSxDQUFDUSxVQUFVLENBQUMsQ0FBQztFQUVoQixJQUFBeUIsZ0JBQVMsRUFBQyxZQUFNO0lBQ2RMLFdBQVcsQ0FBQyxJQUFBYSx3QkFBaUIsRUFBQztNQUFFekMsRUFBRSxFQUFGQSxFQUFFO01BQUVVLFdBQVcsRUFBWEEsV0FBVztNQUFFRixVQUFVLEVBQVZBO0lBQVcsQ0FBQyxDQUFDLENBQUM7RUFDakUsQ0FBQyxFQUFFLENBQUNSLEVBQUUsQ0FBQyxDQUFDOztFQUVSO0VBQ0E7RUFDQTs7RUFFQSxJQUFBaUMsZ0JBQVMsRUFBQyxZQUFNO0lBQ2QsSUFBSXhCLFdBQVcsQ0FBQ3lCLGdCQUFnQixFQUFFO01BQ2hDeEIsV0FBVyxDQUFDc0IsS0FBSyxDQUFDRCxNQUFNLEtBQUssQ0FBQyxJQUM1QnpCLFFBQVEsQ0FBQyxJQUFBNkIscUJBQVcsRUFBQzFCLFdBQVcsQ0FBQ3lCLGdCQUFnQixDQUFDLENBQUM7TUFDckR2QixVQUFVLENBQUNxQixLQUFLLENBQUNELE1BQU0sS0FBSyxDQUFDLElBQzNCekIsUUFBUSxDQUFDLElBQUE4QixvQkFBVSxFQUFDM0IsV0FBVyxDQUFDeUIsZ0JBQWdCLENBQUMsQ0FBQztNQUNwRDFCLFVBQVUsQ0FBQ3dCLEtBQUssQ0FBQ0QsTUFBTSxLQUFLLENBQUMsSUFDM0J6QixRQUFRLENBQ04sSUFBQStCLG1CQUFVLEVBQ1I1QixXQUFXLENBQUN5QixnQkFBZ0IsRUFDNUIvQixVQUFVLENBQUNtQyxTQUFTLENBQUNDLE1BQU0sRUFDM0IsSUFDRixDQUNGLENBQUM7SUFDTDtJQUVBLE9BQU8sU0FBU0csT0FBT0EsQ0FBQSxFQUFHO01BQ3hCeEIsU0FBUyxDQUFDLElBQUksQ0FBQztNQUNmSSxRQUFRLENBQUMsSUFBSSxDQUFDO01BQ2RNLFdBQVcsQ0FBQztRQUFFSixLQUFLLEVBQUUsSUFBSTtRQUFFQyxJQUFJLEVBQUU7TUFBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQztFQUNILENBQUMsRUFBRSxDQUFDaEIsV0FBVyxDQUFDeUIsZ0JBQWdCLENBQUMsQ0FBQztFQUVsQyxJQUFBRCxnQkFBUyxFQUFDLFlBQU07SUFDZCxJQUFNVSxNQUFNLEdBQUdoQixRQUFRLENBQUNGLElBQUksSUFBSUUsUUFBUSxDQUFDSCxLQUFLO0lBRTlDLElBQUkzQixRQUFRLElBQUk4QyxNQUFNLEVBQUU7TUFBQSxJQUFBQyxxQkFBQTtNQUN0QixJQUFNQyxJQUFJLEdBQUdsQixRQUFRLENBQUNGLElBQUksR0FDdEJrQixNQUFNLENBQUNHLFVBQVUsS0FBSyxJQUFJLEdBQ3hCLE9BQU8sR0FDUCxNQUFNLEdBQ1IsTUFBTTtNQUVWLElBQU1DLFdBQVcsR0FDZkYsSUFBSSxLQUFLLE1BQU0sR0FDWEYsTUFBTSxDQUFDM0MsRUFBRSxDQUFDZ0QsUUFBUSxDQUFDLENBQUMsS0FBS2hELEVBQUUsR0FDM0IyQyxNQUFNLENBQUNNLE9BQU8sS0FBS0MsUUFBUSxDQUFDbEQsRUFBRSxDQUFDO01BRXJDLElBQU1tRCxTQUFTLEdBQUdSLE1BQU0sQ0FBQzNDLEVBQUUsT0FBQTRDLHFCQUFBLEdBQUt6QyxVQUFVLENBQUNTLGNBQWMsQ0FBQ3dDLFdBQVcsY0FBQVIscUJBQUEsdUJBQXJDQSxxQkFBQSxDQUF1QzVDLEVBQUU7TUFFekUsSUFBSStDLFdBQVcsRUFBRTtRQUNmLElBQUFNLHVCQUFhLEVBQUNSLElBQUksRUFBRTdDLEVBQUUsRUFBRVMsV0FBVyxDQUFDeUIsZ0JBQWdCLENBQUMsQ0FBQ29CLElBQUksQ0FDeEQsVUFBQ0MsUUFBUSxFQUFLO1VBQ1osSUFBQUMsd0JBQWMsRUFDWmIsTUFBTSxFQUNOWSxRQUFRLENBQUNFLElBQUksRUFDYnhDLE1BQU0sRUFDTkksS0FBSyxFQUNMZixRQUFRLEVBQ1JvRCxrQ0FBYyxFQUNkUCxTQUNGLENBQUM7UUFDSCxDQUNGLENBQUM7TUFDSDtJQUNGLENBQUMsTUFBTTtNQUNMLElBQU1RLGNBQWMsR0FBRyxJQUFBQyxnQkFBUyxFQUFDdkMsS0FBSyxDQUFDO01BRXZDLElBQUFtQyx3QkFBYyxFQUNaSyxTQUFTLEVBQ1QsSUFBSSxFQUNKNUMsTUFBTSxFQUNOMEMsY0FBYyxFQUNkckQsUUFBUSxFQUNSb0Qsa0NBQWMsRUFDZCxJQUNGLENBQUM7SUFDSDtJQUNBO0VBQ0YsQ0FBQyxFQUFFLENBQUM5QyxjQUFjLENBQUNrRCxHQUFHLENBQUMsQ0FBQzs7RUFFeEI7RUFDQTs7RUFFQSxJQUFJLENBQUNqRSxRQUFRLEVBQUUsb0JBQU81QyxNQUFBLENBQUF3QixPQUFBLENBQUFzRixhQUFBLENBQUE5RyxNQUFBLENBQUF3QixPQUFBLENBQUF1RixRQUFBLE1BQUksQ0FBQztFQUMzQixJQUFJLENBQUNuQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUNaLE1BQU0sSUFBSSxDQUFDSSxLQUFLLEVBQUUsb0JBQU9wRSxNQUFBLENBQUF3QixPQUFBLENBQUFzRixhQUFBLENBQUN0RyxPQUFBLENBQUF3RyxNQUFNLE1BQUUsQ0FBQztFQUV6RCxvQkFDRWhILE1BQUEsQ0FBQXdCLE9BQUEsQ0FBQXNGLGFBQUEsQ0FBQ2pHLFlBQUEsQ0FBQW9HLG9CQUFvQixxQkFDbkJqSCxNQUFBLENBQUF3QixPQUFBLENBQUFzRixhQUFBLENBQUNJLFNBQVMsRUFBSzFFLEtBQUssZUFDbEJ4QyxNQUFBLENBQUF3QixPQUFBLENBQUFzRixhQUFBLENBQUNoRyxlQUFBLENBQUFxRyxHQUFHO0lBQUNDLFNBQVMsRUFBQztFQUFZLGdCQUN6QnBILE1BQUEsQ0FBQXdCLE9BQUEsQ0FBQXNGLGFBQUEsQ0FBQ2hHLGVBQUEsQ0FBQXVHLEdBQUc7SUFBQ0MsRUFBRSxFQUFDLE1BQU07SUFBQ0MsRUFBRSxFQUFFLENBQUU7SUFBQ0gsU0FBUyxFQUFDO0VBQWtCLGdCQUNoRHBILE1BQUEsQ0FBQXdCLE9BQUEsQ0FBQXNGLGFBQUEsQ0FBQ3hHLEtBQUEsQ0FBQWtILElBQUk7SUFDSGhFLFdBQVcsRUFBRUEsV0FBWTtJQUN6QmtCLFFBQVEsRUFBRUEsUUFBUztJQUNuQnJCLFFBQVEsRUFBRUE7RUFBUyxDQUNwQixDQUNFLENBQUMsZUFDTnJELE1BQUEsQ0FBQXdCLE9BQUEsQ0FBQXNGLGFBQUEsQ0FBQ2hHLGVBQUEsQ0FBQXVHLEdBQUc7SUFBQ0QsU0FBUyxFQUFDLFlBQVk7SUFBQ0UsRUFBRSxFQUFFLEVBQUc7SUFBQ0MsRUFBRSxFQUFFO0VBQUUsZ0JBQ3hDdkgsTUFBQSxDQUFBd0IsT0FBQSxDQUFBc0YsYUFBQSxDQUFDNUcsSUFBQSxDQUFBdUgsR0FBRztJQUNGekQsTUFBTSxFQUFFQSxNQUFPO0lBQ2ZJLEtBQUssRUFBRUEsS0FBTTtJQUNiWixXQUFXLEVBQUVBLFdBQVk7SUFDekJrRSxLQUFLLEVBQUVoRSxVQUFVLENBQUNxQixLQUFNO0lBQ3hCNEMsd0JBQXdCLEVBQUUsSUFBSztJQUMvQkMsYUFBYSxFQUFFLEtBQU07SUFDckJDLGdCQUFnQixFQUFFLElBQUs7SUFDdkJDLGNBQWMsR0FBQXJGLHNCQUFBLEdBQUVTLFVBQVUsQ0FBQ1MsY0FBYyxDQUFDd0MsV0FBVyxjQUFBMUQsc0JBQUEsdUJBQXJDQSxzQkFBQSxDQUF1Q3NGO0VBQVcsQ0FDbkUsQ0FDRSxDQUNGLENBQ0ksQ0FDUyxDQUFDO0FBRTNCLENBQUM7QUFFRCxJQUFNYixTQUFTLEdBQUdjLHlCQUFNLENBQUNDLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxzUUE4QjNCO0FBQUMsSUFBQUMsUUFBQSxHQUVhOUYsT0FBTztBQUFBK0YsT0FBQSxDQUFBOUcsT0FBQSxHQUFBNkcsUUFBQSJ9
@@ -77,7 +77,7 @@ var EventsMapContainer = function EventsMapContainer(props) {
77
77
  var mappedPoints = (0, _react.useMemo)(function () {
78
78
  return points_data.items.map(function (point) {
79
79
  var newPoint = (0, _objectSpread2.default)({}, point);
80
- if (!EventsPerSite[point.id] || (0, _EventUtils.isCollectorUnmonitored)(point)) {
80
+ if (EventsPerSite === undefined || !EventsPerSite[point.id] || (0, _EventUtils.isCollectorUnmonitored)(point)) {
81
81
  newPoint.hide = true;
82
82
  }
83
83
  if (events_data.focusedEvent) {
@@ -93,7 +93,7 @@ var EventsMapContainer = function EventsMapContainer(props) {
93
93
  newPoint.hide = false;
94
94
  }
95
95
  }
96
- newPoint.relatedEventsAmount = EventsPerSite[point.id] || 0;
96
+ newPoint.relatedEventsAmount = EventsPerSite ? EventsPerSite[point.id] : 0;
97
97
  newPoint.eventsViewHovered = true;
98
98
  return newPoint;
99
99
  });
@@ -147,4 +147,4 @@ var EventsMapContainer = function EventsMapContainer(props) {
147
147
  }));
148
148
  };
149
149
  exports.EventsMapContainer = EventsMapContainer;
150
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzIiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfYWN0aW9uczMiLCJfTWFwIiwiX0Zsb2F0aW5nR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0dyYXBoVXRpbHMiLCJfYWN0aW9uczQiLCJfRHJhZ0FuZERyb3BBcmVhIiwiX0V2ZW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkV2ZW50c01hcENvbnRhaW5lciIsInByb3BzIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nMiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsInBvaW50c19kYXRhIiwiZXZlbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwiaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQiLCJ1c2VNZW1vIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImluZGV4IiwidHlwZSIsIm1hcHBlZEFyZWFzIiwiYXJlYXNNYXBwZXIiLCJnZXRBY3RpdmVUaW1lRmlsdGVyUGVyaW9kIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpMiIsIml0ZW1zIiwiYWN0aXZlVGltZUZpbHRlciIsInNlbGVjdGVkX29wdGlvbnMiLCJFdmVudHNQZXJTaXRlIiwiQ291bnRFdmVudHNQZXJTaXRlSUQiLCJNdXN0U2VlblNpdGVzIiwiZm9jdXNlZEV2ZW50IiwiZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyIsImhvdmVyZWRFdmVudCIsIm1hcHBlZFBvaW50cyIsIm1hcCIsInBvaW50IiwibmV3UG9pbnQiLCJfb2JqZWN0U3ByZWFkMiIsImlkIiwiaXNDb2xsZWN0b3JVbm1vbml0b3JlZCIsImhpZGUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZXZlbnRzVmlld0hvdmVyZWQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyIsImFyZWFUb0NlbnRlckJ5IiwiZ2V0QXJlYXNUb0NlbnRlckJ5IiwidXNlRWZmZWN0Iiwid2F0ZXJBdXRob3JpdHlJZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiTWFwIiwiYXNzaWduIiwiYXJlYXMiLCJwb2ludHMiLCJlZGdlcyIsImV2ZW50cyIsImhpZGVFZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJmb3JFdmVudHNWaWV3IiwiZm9jdXNlZEV2ZW50UGF0aCIsImZvY3VzZWRFdmVudFBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsImlzT3BlbiIsIm9wZW4iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImNsb3NlR3JhcGhIYW5kbGVyIiwiY2xvc2VGbG9hdGluZ0dyYXBoIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiZ3JhcGhJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNNYXBDb250YWluZXIvRXZlbnRzTWFwQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbXBvcnQgeyBpc0NvbGxlY3RvclVubW9uaXRvcmVkIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzJztcbmludGVyZmFjZSBFdmVudHNNYXBDb250YWluZXJQcm9wcyB7XG4gIHNob3dTZWNvbmRNYXA6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgRXZlbnRzTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxFdmVudHNNYXBDb250YWluZXJQcm9wcz4gPSAoXG4gIHByb3BzLFxuKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIGdsb2JhbF9kYXRhLCBwb2ludHNfZGF0YSwgZXZlbnRzX2RhdGEsIGVkZ2VzX2RhdGEgfSA9XG4gICAgUmVkdXhTdGF0ZTtcblxuICBjb25zdCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZmlsdGVycy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChmaWx0ZXJzW2luZGV4XS50eXBlID09PSAnVGltZUZpbHRlckl0ZW0nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXJdKTtcblxuICBjb25zdCBtYXBwZWRBcmVhcyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYXJlYXNNYXBwZXIoYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQpLFxuICAgIFthcmVhc19kYXRhLCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IGdsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXI/LmZpbHRlcl9pdGVtcztcbiAgICBsZXQgYWN0aXZlVGltZUZpbHRlciA9ICcxbSc7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICAgIH1cblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChpdGVtc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICBhY3RpdmVUaW1lRmlsdGVyID0gaXRlbXNbaW5kZXhdLnNlbGVjdGVkX29wdGlvbnNbMF07XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gYWN0aXZlVGltZUZpbHRlcjtcbiAgfTtcblxuICBjb25zdCBFdmVudHNQZXJTaXRlID0gdXNlTWVtbyhcbiAgICAoKSA9PiBDb3VudEV2ZW50c1BlclNpdGVJRChldmVudHNfZGF0YS5pdGVtcyksXG4gICAgW2V2ZW50c19kYXRhLml0ZW1zXSxcbiAgKTtcblxuICBjb25zdCBNdXN0U2VlblNpdGVzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgcmV0dXJuIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgcmV0dXJuIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIHt9O1xuICB9LCBbRXZlbnRzUGVyU2l0ZSwgZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50LCBldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnRdKTtcblxuICBjb25zdCBtYXBwZWRQb2ludHMgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBwb2ludHNfZGF0YS5pdGVtcy5tYXAoKHBvaW50KSA9PiB7XG4gICAgICAgIGNvbnN0IG5ld1BvaW50ID0geyAuLi5wb2ludCB9O1xuXG4gICAgICAgIGlmICghRXZlbnRzUGVyU2l0ZVtwb2ludC5pZF0gfHwgaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgICAgICAgICBuZXdQb2ludC5oaWRlID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpIHtcbiAgICAgICAgICBpZiAoIU11c3RTZWVuU2l0ZXNbcG9pbnQuaWRdKSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3UG9pbnQuaGlkZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpIHtcbiAgICAgICAgICBpZiAoIU11c3RTZWVuU2l0ZXNbcG9pbnQuaWRdICYmIGlzQ29sbGVjdG9yVW5tb25pdG9yZWQocG9pbnQpKSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3UG9pbnQuaGlkZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIG5ld1BvaW50LnJlbGF0ZWRFdmVudHNBbW91bnQgPSBFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fCAwO1xuICAgICAgICBuZXdQb2ludC5ldmVudHNWaWV3SG92ZXJlZCA9IHRydWU7XG4gICAgICAgIHJldHVybiBuZXdQb2ludDtcbiAgICAgIH0pLFxuICAgIFtcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgRXZlbnRzUGVyU2l0ZSxcbiAgICAgIGV2ZW50c19kYXRhLml0ZW1zLFxuICAgICAgZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50LFxuICAgICAgZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50LFxuICAgIF0sXG4gICk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIGNvbnN0IG1hcHBlZEVkZ2VzID0gZWRnZXNfZGF0YS5pdGVtcy5maWx0ZXIoXG4gICAgKGVkZ2UpID0+XG4gICAgICAvLyAoTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS5zb3VyY2VfcG9pbnRfaWRdKSA+IDAgfHxcbiAgICAgIC8vIE51bWJlcihFdmVudHNQZXJTaXRlW2VkZ2UudGFyZ2V0X3BvaW50X2lkXSkgPiAwKVxuICAgICAgLy8gICYmXG4gICAgICBlZGdlLmRlc2NlbmRhbnRzX2hhc19kZXZpY2UgPT09IHRydWUgfHxcbiAgICAgIGVkZ2UuZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyA9PT0gdHJ1ZSxcbiAgKTtcblxuICBjb25zdCBhcmVhVG9DZW50ZXJCeSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gZ2V0QXJlYXNUb0NlbnRlckJ5KGdsb2JhbF9kYXRhLCBtYXBwZWRBcmVhcyksXG4gICAgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXIsIG1hcHBlZEFyZWFzXSxcbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gICAgICBkaXNwYXRjaChmZXRjaFBvaW50cyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEVkZ2VzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICAgIGRpc3BhdGNoKFxuICAgICAgICBmZXRjaEFyZWFzKFxuICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgICAgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCgpLFxuICAgICAgICAgIHRydWUsXG4gICAgICAgICksXG4gICAgICApO1xuICAgIH1cbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlcl0pO1xuXG4gIHJldHVybiAoXG4gICAgPE1hcFxuICAgICAgey4uLlJlZHV4U3RhdGV9XG4gICAgICBhcmVhcz17bWFwcGVkQXJlYXN9XG4gICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICBwb2ludHM9e21hcHBlZFBvaW50c31cbiAgICAgIGVkZ2VzPXttYXBwZWRFZGdlc31cbiAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICBmb2N1c2VkRXZlbnQ9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudH1cbiAgICAgIGhvdmVyZWRFdmVudD17ZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50fVxuICAgICAgYXJlYVRvQ2VudGVyQnk9e2FyZWFUb0NlbnRlckJ5fVxuICAgICAgaGlkZUVkZ2VzPXt0cnVlfVxuICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXtmYWxzZX1cbiAgICAgIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXM9e3RydWV9XG4gICAgICBmb3JFdmVudHNWaWV3PXt0cnVlfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtcbiAgICAgICAgPERyYWdBbmREcm9wQXJlYSBmb2N1c2VkRXZlbnRQYXRoPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50UGF0aHN9PlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICBmbG9hdGluZ0dyYXBoOiAoXG4gICAgICAgICAgICAgIDxGbG9hdGluZ0dyYXBoXG4gICAgICAgICAgICAgICAgaXNPcGVuPXtnbG9iYWxfZGF0YT8uZmxvYXRpbmdHcmFwaC5vcGVufVxuICAgICAgICAgICAgICAgIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnM9e2RuZEdyYXBoSW5pdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgY2xvc2VHcmFwaEhhbmRsZXI9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKGNsb3NlRmxvYXRpbmdHcmFwaCgpKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPXtnbG9iYWxfZGF0YS5mbG9hdGluZ0dyYXBofVxuICAgICAgICAgICAgICAgIGV2ZW50X2RhdGE9e2V2ZW50c19kYXRhPy5mb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICAgICAgZ3JhcGhJZD17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGg/LnBvaW50Py5pZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9EcmFnQW5kRHJvcEFyZWE+XG4gICAgICB9XG4gICAgPC9NYXA+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSwwQkFBQSxHQUFBRixPQUFBO0FBTUEsSUFBQUcsUUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksU0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssU0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sSUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sY0FBQSxHQUFBQyxzQkFBQSxDQUFBUixPQUFBO0FBQ0EsSUFBQVMsV0FBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUsU0FBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsZ0JBQUEsR0FBQUgsc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFZLFdBQUEsR0FBQVosT0FBQTtBQUEyRSxTQUFBYSx5QkFBQUMsV0FBQSxlQUFBQyxP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
150
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzIiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfYWN0aW9uczMiLCJfTWFwIiwiX0Zsb2F0aW5nR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0dyYXBoVXRpbHMiLCJfYWN0aW9uczQiLCJfRHJhZ0FuZERyb3BBcmVhIiwiX0V2ZW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkV2ZW50c01hcENvbnRhaW5lciIsInByb3BzIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nMiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsInBvaW50c19kYXRhIiwiZXZlbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwiaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQiLCJ1c2VNZW1vIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImluZGV4IiwidHlwZSIsIm1hcHBlZEFyZWFzIiwiYXJlYXNNYXBwZXIiLCJnZXRBY3RpdmVUaW1lRmlsdGVyUGVyaW9kIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpMiIsIml0ZW1zIiwiYWN0aXZlVGltZUZpbHRlciIsInNlbGVjdGVkX29wdGlvbnMiLCJFdmVudHNQZXJTaXRlIiwiQ291bnRFdmVudHNQZXJTaXRlSUQiLCJNdXN0U2VlblNpdGVzIiwiZm9jdXNlZEV2ZW50IiwiZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyIsImhvdmVyZWRFdmVudCIsIm1hcHBlZFBvaW50cyIsIm1hcCIsInBvaW50IiwibmV3UG9pbnQiLCJfb2JqZWN0U3ByZWFkMiIsInVuZGVmaW5lZCIsImlkIiwiaXNDb2xsZWN0b3JVbm1vbml0b3JlZCIsImhpZGUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZXZlbnRzVmlld0hvdmVyZWQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyIsImFyZWFUb0NlbnRlckJ5IiwiZ2V0QXJlYXNUb0NlbnRlckJ5IiwidXNlRWZmZWN0Iiwid2F0ZXJBdXRob3JpdHlJZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiTWFwIiwiYXNzaWduIiwiYXJlYXMiLCJwb2ludHMiLCJlZGdlcyIsImV2ZW50cyIsImhpZGVFZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJmb3JFdmVudHNWaWV3IiwiZm9jdXNlZEV2ZW50UGF0aCIsImZvY3VzZWRFdmVudFBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsImlzT3BlbiIsIm9wZW4iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImNsb3NlR3JhcGhIYW5kbGVyIiwiY2xvc2VGbG9hdGluZ0dyYXBoIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiZ3JhcGhJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNNYXBDb250YWluZXIvRXZlbnRzTWFwQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbXBvcnQgeyBpc0NvbGxlY3RvclVubW9uaXRvcmVkIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzJztcbmludGVyZmFjZSBFdmVudHNNYXBDb250YWluZXJQcm9wcyB7XG4gIHNob3dTZWNvbmRNYXA6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgRXZlbnRzTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxFdmVudHNNYXBDb250YWluZXJQcm9wcz4gPSAoXG4gIHByb3BzLFxuKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIGdsb2JhbF9kYXRhLCBwb2ludHNfZGF0YSwgZXZlbnRzX2RhdGEsIGVkZ2VzX2RhdGEgfSA9XG4gICAgUmVkdXhTdGF0ZTtcblxuICBjb25zdCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZmlsdGVycy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChmaWx0ZXJzW2luZGV4XS50eXBlID09PSAnVGltZUZpbHRlckl0ZW0nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXJdKTtcblxuICBjb25zdCBtYXBwZWRBcmVhcyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYXJlYXNNYXBwZXIoYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQpLFxuICAgIFthcmVhc19kYXRhLCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IGdsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXI/LmZpbHRlcl9pdGVtcztcbiAgICBsZXQgYWN0aXZlVGltZUZpbHRlciA9ICcxbSc7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICAgIH1cblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChpdGVtc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICBhY3RpdmVUaW1lRmlsdGVyID0gaXRlbXNbaW5kZXhdLnNlbGVjdGVkX29wdGlvbnNbMF07XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gYWN0aXZlVGltZUZpbHRlcjtcbiAgfTtcblxuICBjb25zdCBFdmVudHNQZXJTaXRlID0gdXNlTWVtbyhcbiAgICAoKSA9PiBDb3VudEV2ZW50c1BlclNpdGVJRChldmVudHNfZGF0YS5pdGVtcyksXG4gICAgW2V2ZW50c19kYXRhLml0ZW1zXSxcbiAgKTtcblxuICBjb25zdCBNdXN0U2VlblNpdGVzID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgcmV0dXJuIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgcmV0dXJuIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KTtcbiAgICB9XG4gICAgcmV0dXJuIHt9O1xuICB9LCBbRXZlbnRzUGVyU2l0ZSwgZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50LCBldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnRdKTtcblxuICBjb25zdCBtYXBwZWRQb2ludHMgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBwb2ludHNfZGF0YS5pdGVtcy5tYXAoKHBvaW50KSA9PiB7XG4gICAgICAgIGNvbnN0IG5ld1BvaW50ID0geyAuLi5wb2ludCB9O1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICBFdmVudHNQZXJTaXRlID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAhRXZlbnRzUGVyU2l0ZVtwb2ludC5pZF0gfHxcbiAgICAgICAgICBpc0NvbGxlY3RvclVubW9uaXRvcmVkKHBvaW50KVxuICAgICAgICApIHtcbiAgICAgICAgICBuZXdQb2ludC5oaWRlID0gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpIHtcbiAgICAgICAgICBpZiAoIU11c3RTZWVuU2l0ZXNbcG9pbnQuaWRdKSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3UG9pbnQuaGlkZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpIHtcbiAgICAgICAgICBpZiAoIU11c3RTZWVuU2l0ZXNbcG9pbnQuaWRdICYmIGlzQ29sbGVjdG9yVW5tb25pdG9yZWQocG9pbnQpKSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3UG9pbnQuaGlkZSA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIG5ld1BvaW50LnJlbGF0ZWRFdmVudHNBbW91bnQgPSBFdmVudHNQZXJTaXRlXG4gICAgICAgICAgPyBFdmVudHNQZXJTaXRlW3BvaW50LmlkXVxuICAgICAgICAgIDogMDtcbiAgICAgICAgbmV3UG9pbnQuZXZlbnRzVmlld0hvdmVyZWQgPSB0cnVlO1xuICAgICAgICByZXR1cm4gbmV3UG9pbnQ7XG4gICAgICB9KSxcbiAgICBbXG4gICAgICBwb2ludHNfZGF0YSxcbiAgICAgIEV2ZW50c1BlclNpdGUsXG4gICAgICBldmVudHNfZGF0YS5pdGVtcyxcbiAgICAgIGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCxcbiAgICAgIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCxcbiAgICBdLFxuICApO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICBjb25zdCBtYXBwZWRFZGdlcyA9IGVkZ2VzX2RhdGEuaXRlbXMuZmlsdGVyKFxuICAgIChlZGdlKSA9PlxuICAgICAgLy8gKE51bWJlcihFdmVudHNQZXJTaXRlW2VkZ2Uuc291cmNlX3BvaW50X2lkXSkgPiAwIHx8XG4gICAgICAvLyBOdW1iZXIoRXZlbnRzUGVyU2l0ZVtlZGdlLnRhcmdldF9wb2ludF9pZF0pID4gMClcbiAgICAgIC8vICAmJlxuICAgICAgZWRnZS5kZXNjZW5kYW50c19oYXNfZGV2aWNlID09PSB0cnVlIHx8XG4gICAgICBlZGdlLmRlc2NlbmRhbnRzX2hhc19ub25lX2NvbGxlY3RvcnMgPT09IHRydWUsXG4gICk7XG5cbiAgY29uc3QgYXJlYVRvQ2VudGVyQnkgPSB1c2VNZW1vKFxuICAgICgpID0+IGdldEFyZWFzVG9DZW50ZXJCeShnbG9iYWxfZGF0YSwgbWFwcGVkQXJlYXMpLFxuICAgIFtnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyLCBtYXBwZWRBcmVhc10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkge1xuICAgICAgZGlzcGF0Y2goZmV0Y2hQb2ludHMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChcbiAgICAgICAgZmV0Y2hBcmVhcyhcbiAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLFxuICAgICAgICAgIGdldEFjdGl2ZVRpbWVGaWx0ZXJQZXJpb2QoKSxcbiAgICAgICAgICB0cnVlLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICB9XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXJdKTtcblxuICByZXR1cm4gKFxuICAgIDxNYXBcbiAgICAgIHsuLi5SZWR1eFN0YXRlfVxuICAgICAgYXJlYXM9e21hcHBlZEFyZWFzfVxuICAgICAgZ2xvYmFsX2RhdGE9e2dsb2JhbF9kYXRhfVxuICAgICAgcG9pbnRzPXttYXBwZWRQb2ludHN9XG4gICAgICBlZGdlcz17bWFwcGVkRWRnZXN9XG4gICAgICBldmVudHM9e2V2ZW50c19kYXRhLml0ZW1zfVxuICAgICAgZm9jdXNlZEV2ZW50PXtldmVudHNfZGF0YS5mb2N1c2VkRXZlbnR9XG4gICAgICBob3ZlcmVkRXZlbnQ9e2V2ZW50c19kYXRhLmhvdmVyZWRFdmVudH1cbiAgICAgIGFyZWFUb0NlbnRlckJ5PXthcmVhVG9DZW50ZXJCeX1cbiAgICAgIGhpZGVFZGdlcz17dHJ1ZX1cbiAgICAgIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cz17ZmFsc2V9XG4gICAgICBpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzPXt0cnVlfVxuICAgICAgZm9yRXZlbnRzVmlldz17dHJ1ZX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICB7XG4gICAgICAgIDxEcmFnQW5kRHJvcEFyZWEgZm9jdXNlZEV2ZW50UGF0aD17ZXZlbnRzX2RhdGE/LmZvY3VzZWRFdmVudFBhdGhzfT5cbiAgICAgICAgICB7e1xuICAgICAgICAgICAgZmxvYXRpbmdHcmFwaDogKFxuICAgICAgICAgICAgICA8RmxvYXRpbmdHcmFwaFxuICAgICAgICAgICAgICAgIGlzT3Blbj17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGgub3Blbn1cbiAgICAgICAgICAgICAgICBjdXN0b21IaWdoQ2hhcnRPcHRpb25zPXtkbmRHcmFwaEluaXRPcHRpb25zfVxuICAgICAgICAgICAgICAgIGNsb3NlR3JhcGhIYW5kbGVyPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBkaXNwYXRjaChjbG9zZUZsb2F0aW5nR3JhcGgoKSk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICBnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaD17Z2xvYmFsX2RhdGEuZmxvYXRpbmdHcmFwaH1cbiAgICAgICAgICAgICAgICBldmVudF9kYXRhPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50fVxuICAgICAgICAgICAgICAgIGdyYXBoSWQ9e2dsb2JhbF9kYXRhPy5mbG9hdGluZ0dyYXBoPy5wb2ludD8uaWR9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApLFxuICAgICAgICAgIH19XG4gICAgICAgIDwvRHJhZ0FuZERyb3BBcmVhPlxuICAgICAgfVxuICAgIDwvTWFwPlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsMEJBQUEsR0FBQUYsT0FBQTtBQU1BLElBQUFHLFFBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLFNBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFNBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLElBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGNBQUEsR0FBQUMsc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFTLFdBQUEsR0FBQVQsT0FBQTtB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
@@ -67,6 +67,9 @@ var WbeDashboardPage = function WbeDashboardPage() {
67
67
  return 'city';
68
68
  };
69
69
  var query = (0, _useQueryURL.default)();
70
+ var getPathogenName = function getPathogenName(pathogen) {
71
+ return pathogen === 'Covid Hach' ? 'SARS-CoV-2' : pathogen;
72
+ };
70
73
  var getPathogen = function getPathogen() {
71
74
  return query.get('pathogen') || 'covid';
72
75
  };
@@ -342,8 +345,8 @@ var WbeDashboardPage = function WbeDashboardPage() {
342
345
  var pathogenTitle = !isFetchingPathogens && (pathogens === null || pathogens === void 0 ? void 0 : pathogens.find(function (item) {
343
346
  return item.toLowerCase() === selectedPathogen.toLowerCase();
344
347
  })) || '';
345
- var dropDownTitle = pathogenTitle || _i18n.default.t('components.wbe_dashboard.pathogen_not_found');
346
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Content, null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("h1", null, "".concat(_i18n.default.t('components.wbe_dashboard.table_name'), " (").concat(pathogenTitle || getPathogen(), ")")), !isFetchingPathogens && pathogens.length === 0 && /*#__PURE__*/_react.default.createElement("h3", null, _i18n.default.t('components.wbe_dashboard.pathogen_not_found')), /*#__PURE__*/_react.default.createElement(ActionsContainer, null, !isFetchingPathogens && pathogens.length > 1 && /*#__PURE__*/_react.default.createElement(_DropdownButton.default, {
348
+ var dropDownTitle = getPathogenName(pathogenTitle) || _i18n.default.t('components.wbe_dashboard.pathogen_not_found');
349
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(Content, null, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("h1", null, "".concat(_i18n.default.t('components.wbe_dashboard.table_name'), " (").concat(getPathogenName(pathogenTitle) || getPathogenName(getPathogen()), ")")), !isFetchingPathogens && pathogens.length === 0 && /*#__PURE__*/_react.default.createElement("h3", null, _i18n.default.t('components.wbe_dashboard.pathogen_not_found')), /*#__PURE__*/_react.default.createElement(ActionsContainer, null, !isFetchingPathogens && pathogens.length > 1 && /*#__PURE__*/_react.default.createElement(_DropdownButton.default, {
347
350
  id: "dropdown-basic-button",
348
351
  className: 'button button--sort',
349
352
  title: dropDownTitle + ' ',
@@ -358,7 +361,7 @@ var WbeDashboardPage = function WbeDashboardPage() {
358
361
  style: {
359
362
  textAlign: navContext.locale === 'he' ? 'right' : 'left'
360
363
  }
361
- }, pathogen);
364
+ }, getPathogenName(pathogen));
362
365
  })))), /*#__PURE__*/_react.default.createElement(FirstSection, null, /*#__PURE__*/_react.default.createElement(_WbeSummaryBar.WbeSummaryBar, {
363
366
  pathogen: selectedPathogen,
364
367
  waterAuthorityId: waterAuthorityId,
@@ -423,4 +426,4 @@ var Content = _styledComponents.default.div.withConfig({
423
426
  displayName: "WbeDashboardPage__Content",
424
427
  componentId: "sc-14f81cv-5"
425
428
  })(["@media (max-width:576px){padding:20px;}h1{font-weight:bold;}padding:60px 60px;"]);
426
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfaTE4biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIl9BbmFseXRpY3MiLCJfU2VhcmNoSW5wdXQiLCJfcmVhY3RGb250YXdlc29tZSIsIl9HcmFwaFdyYXBwZXIiLCJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJfYWN0aW9ucyIsIl9UaG91c2FuZHNUb0siLCJfRHJpbGxEb3duSWNvbiIsIl9CYXNlTGV2ZWwiLCJfcmVhY3REYXRhVGFibGVDb21wb25lbnQiLCJfbnZsU3RhdHVzSGVscGVyIiwiX01hcCIsIl9LYW5kb1RhYmxlIiwiX1RhYnMiLCJfdXNlS2FuZG9GZXRjaDIiLCJfdXNlUXVlcnlVUkwiLCJfRHJvcGRvd24iLCJfRHJvcGRvd25CdXR0b24iLCJfYXhpb3MiLCJfVHJ1bmNhdGUiLCJfRXhwYW5kYWJsZUNvbXBvbmVudCIsIl9TcGlubmVyIiwiX1diZVN1bW1hcnlCYXIiLCJfRXJyb3JCb3VuZGFyeSIsIl90aGVtZSIsIl91c2VLYW5kb0ZldGNoMyIsIl91cmxzIiwiX3VzZVVzZXJUaW1lWm9uZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiVEFCTEVfUk9XU19QRVJfUEFHRSIsIk1BUEJPWF9XQkVfREFTSEJPQVJEX1NUWUxFIiwiV2JlRGFzaGJvYXJkUGFnZSIsImdldFdBSWQiLCJxdWVyeSIsImZldGNoVXJsIiwiZmlyc3RQYXJhbSIsImNvbmNhdCIsInNlbGVjdGVkUGF0aG9nZW4iLCJwYXRob2dlbnNVcmwiLCJ1cmxzIiwid2F0ZXJBdXRob3JpdHlJZCIsIndiZURhc2hib2FyZCIsInBhdGhvZ2VucyIsInVybCIsIkRFRkFVTFRfVEFCUyIsImkxOG4iLCJ0IiwiY29udmVydFRhYk5hbWVUb1BhcmFtIiwidGFiX25hbWUiLCJ1c2VRdWVyeVVSTCIsImdldFBhdGhvZ2VuIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwiY3VycmVudERhdGEiLCJzZXRDdXJyZW50RGF0YSIsIl91c2VTdGF0ZTMiLCJfdXNlU3RhdGU0IiwibWFwQXJlYXMiLCJzZXRNYXBBcmVhcyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwibWFwWm9vbSIsInNldE1hcFpvb20iLCJfdXNlU3RhdGU3IiwiX3VzZVN0YXRlOCIsInJvd3MiLCJzZXRSb3dzIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTEwIiwidGFicyIsInNldFRhYnMiLCJfdXNlU3RhdGUxMSIsIl91c2VTdGF0ZTEyIiwic2VsZWN0ZWRUYWIiLCJzZXRTZWxlY3RlZFRhYiIsIl91c2VTdGF0ZTEzIiwiX3VzZVN0YXRlMTQiLCJzZXRTZWxlY3RlZFBhdGhvZ2VuIiwiX3VzZUthbmRvRmV0Y2giLCJ1c2VLYW5kb0ZldGNoIiwiZGF0YSIsImlzRmV0Y2hpbmciLCJzZXRGZXRjaGluZyIsIl9Vc2VLYW5kb0ZldGNoIiwiVXNlS2FuZG9GZXRjaCIsImlzRmV0Y2hpbmdQYXRob2dlbnMiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwibmF2Q29udGV4dCIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJuYXZfY29udGV4dF9kYXRhIiwiZ2xvYmFsRGF0YSIsImdsb2JhbF9kYXRhIiwiaXNSdGwiLCJsb2NhbGUiLCJjb2xvckZvclJvdyIsInJvdyIsInF1YWxpdHkiLCJzYW1wbGVfYWN0aXZlIiwiaXNJbmZlY3RlZCIsIm52bCIsInVzZXJGb3JtYXQiLCJ1c2VVc2VyU2VsZWN0ZWREYXRlRm9ybWF0IiwiY29sdW1ucyIsIlJlYWN0IiwidXNlTWVtbyIsIm5hbWUiLCJzZWxlY3RvciIsInNvcnRhYmxlIiwiY2VsbCIsImNyZWF0ZUVsZW1lbnQiLCJSb3dOYW1lIiwiY2xhc3NOYW1lIiwib25DbGljayIsImhhbmRsZUFyZWFDbGljayIsImhhc19jaGlsZHJlbiIsIlJlYWN0Q29tcG9uZW50IiwiY2hhcmFjdGVycyIsImluaGVyaXRUZXh0QWxpZ24iLCJudmxfY2hhbmdlIiwic3R5bGUiLCJkaXJlY3Rpb24iLCJjb2xvciIsIm1hcmdpbiIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYUNoZXZyb25VcCIsImZhQ2hldnJvbkRvd24iLCJsYXN0X3VwZGF0ZWQiLCJkYXlGb3JtYXRGcm9tVGltZSIsIkdyYXBoV3JhcHBlciIsImlkIiwid2F0ZXJfYXV0aG9yaXR5X2lkIiwicGF0aG9nZW4iLCJwb3B1bGF0aW9uIiwia0Zvcm1hdHRlciIsInBhcnNlSW50IiwiaW5pdGlhbGl6ZU1hcEFyZWFzIiwiYXJlYXMiLCJtYXBwZWRXaXRoQ29sb3IiLCJtYXAiLCJhIiwid2JlX2Rhc2hib2FyZF9uYW1lIiwic2hvd0NvbG9yT25seUluQm9yZGVycyIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJuYXR1cmFsIiwibjYwIiwiUjEwMCIsIkcxMDAiLCJ6b29tVG9BcmVhIiwiYXJlYSIsInNoYXBlX2RhdGEiLCJ1bmRlZmluZWQiLCJ6b29tQWxsQXJlYXMiLCJzaGFwZURhdGEiLCJkYXR1bSIsImxldmVsTlZMIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJkaXIiLCJEaXJlY3Rpb24iLCJSVEwiLCJMVFIiLCJmaWx0ZXJSZXN1bHRzQW5kU2V0Um93cyIsInRleHQiLCJyZXN1bHRzIiwiZmlsdGVyIiwiZWwiLCJ0b0xvd2VyQ2FzZSIsImluY2x1ZGVzIiwiaGFuZGxlT25Sb3dFeHBhbmQiLCJleHBhbmRlZCIsIndhdGVyQXV0aG9yaXR5TmFtZSIsImhhbmRsZVNlbGVjdFBhdGhvZ2VuQ2xpY2siLCJhbmFseXRpY3NUcmFjayIsInV0aWxpdHlfbmFtZSIsInB1c2giLCJmZXRjaEZvclRhYlNlbGVjdGlvbiIsInRhYiIsImF4aW9zIiwidGhlbiIsInJlc3BvbnNlIiwicmVzcG9uc2VEYXRhIiwiaGFuZGxlVGFiU2VsZWN0aW9uQ2xpY2siLCJpbml0aWFsaXplRHJpbGxlZEFyZWEiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiaW5pdGlhbGl6ZUNvbXBvbmVudCIsInVwZGF0ZU5hdkNvbnRleHQiLCJ1c2VFZmZlY3QiLCJwYXRob2dlblRpdGxlIiwiZmluZCIsIml0ZW0iLCJkcm9wRG93blRpdGxlIiwiRnJhZ21lbnQiLCJDb250ZW50IiwibGVuZ3RoIiwiQWN0aW9uc0NvbnRhaW5lciIsInRpdGxlIiwidmFyaWFudCIsIkl0ZW0iLCJocmVmIiwidGV4dEFsaWduIiwiRmlyc3RTZWN0aW9uIiwiV2JlU3VtbWFyeUJhciIsIlNlY29uZFNlY3Rpb24iLCJTZWFyY2hJbnB1dCIsIm9uQ2hhbmdlQmVoYXZpb3IiLCJUYWJzIiwiaGFuZGxlT25DbGljayIsIk1hcFRhYmxlQ29udGFpbmVyIiwiU3Bpbm5lciIsIk1hcCIsImFyZWFUb0NlbnRlckJ5IiwiZWRnZXMiLCJwb2ludHMiLCJtYXBCb3hTdHlsZSIsIkthbmRvVGFibGUiLCJvblJvd0V4cGFuZFRvZ2dsZWQiLCJleHBhbmRhYmxlUm93cyIsInBhZ2luYXRpb25QZXJQYWdlIiwicm93Q29tcG9uZW50IiwiRXhwYW5kZWRDb21wb25lbnQiLCJleHBhbmRhYmxlUm93c0NvbXBvbmVudFByb3BzIiwiZGVmYXVsdFNvcnRGaWVsZElkIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwicCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCB7IFNlYXJjaElucHV0IH0gZnJvbSAnLi9TZWFyY2hJbnB1dCc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgR3JhcGhXcmFwcGVyIH0gZnJvbSAnLi9HcmFwaFdyYXBwZXInO1xuaW1wb3J0IHsgZmFDaGV2cm9uRG93biwgZmFDaGV2cm9uVXAgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IHVwZGF0ZU5hdkNvbnRleHQgfSBmcm9tICcuLi8uLi9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IHsga0Zvcm1hdHRlciB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9UaG91c2FuZHNUb0snO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRHJpbGxEb3duSWNvbiB9IGZyb20gJy4vRHJpbGxEb3duSWNvbi5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQmFzZUxldmVsIH0gZnJvbSAnLi9CYXNlTGV2ZWwuc3ZnJztcbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ3JlYWN0LWRhdGEtdGFibGUtY29tcG9uZW50JztcbmltcG9ydCB7IGxldmVsTlZMIH0gZnJvbSAnLi4vQ292aWRQYWdlL2NvbXBvbmVudHMvbnZsU3RhdHVzSGVscGVyJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJy4uLy4uL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgeyBLYW5kb1RhYmxlIH0gZnJvbSAnc3JjL3VpLWtpdC9LYW5kb1RhYmxlL0thbmRvVGFibGUnO1xuaW1wb3J0IHsgVGFicyB9IGZyb20gJy4vVGFicyc7XG5pbXBvcnQgdXNlS2FuZG9GZXRjaCBmcm9tICcuLi8uLi9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICcuLi8uLi9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCBEcm9wZG93biBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duJztcbmltcG9ydCBEcm9wZG93bkJ1dHRvbiBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duQnV0dG9uJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgVHJ1bmNhdGUgZnJvbSAnLi4vLi4vdXRpbGl0aWVzL1RydW5jYXRlJztcbmltcG9ydCB7IEV4cGFuZGVkQ29tcG9uZW50IH0gZnJvbSAnLi9FeHBhbmRhYmxlQ29tcG9uZW50JztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyBXYmVTdW1tYXJ5QmFyIH0gZnJvbSAnLi9XYmVTdW1tYXJ5QmFyJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJy4uLy4uL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBVc2VLYW5kb0ZldGNoIGZyb20gJ3NyYy9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHtcbiAgZGF5Rm9ybWF0RnJvbVRpbWUsXG4gIHVzZVVzZXJTZWxlY3RlZERhdGVGb3JtYXQsXG59IGZyb20gJ3NyYy9ob29rcy91c2VVc2VyVGltZVpvbmUnO1xuY29uc3QgVEFCTEVfUk9XU19QRVJfUEFHRSA9IDI1O1xuY29uc3QgTUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEUgPSAnY2t6emtqc2k3MDA1ZjE0bzlpbTBtY3pzOSc7XG5cbmV4cG9ydCBjb25zdCBXYmVEYXNoYm9hcmRQYWdlID0gKCkgPT4ge1xuICBjb25zdCBnZXRXQUlkID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpO1xuICB9O1xuICBjb25zdCBmZXRjaFVybCA9IChmaXJzdFBhcmFtKSA9PiB7XG4gICAgcmV0dXJuIGAvYXBpX3VpL3diZV9kYXNoYm9hcmQvJHtzZWxlY3RlZFBhdGhvZ2VufS8ke2ZpcnN0UGFyYW19P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dldFdBSWQoKX1gO1xuICB9O1xuICBjb25zdCBwYXRob2dlbnNVcmwgPSAoKSA9PlxuICAgIHVybHMoeyB3YXRlckF1dGhvcml0eUlkOiBnZXRXQUlkKCkgfSkud2JlRGFzaGJvYXJkLnBhdGhvZ2Vucy51cmw7XG4gIGNvbnN0IERFRkFVTFRfVEFCUyA9IFtcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jaXRpZXMnKSxcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5tb25pdG9yZWRfYXJlYXMnKSxcbiAgXTtcbiAgY29uc3QgY29udmVydFRhYk5hbWVUb1BhcmFtID0gKHRhYl9uYW1lOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodGFiX25hbWUgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmNpdGllcycpKSB7XG4gICAgICByZXR1cm4gJ2NpdHknO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0YWJfbmFtZSA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJylcbiAgICApIHtcbiAgICAgIHJldHVybiAnbW9uaXRvcmVkJztcbiAgICB9XG5cbiAgICByZXR1cm4gJ2NpdHknO1xuICB9O1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IGdldFBhdGhvZ2VuID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3BhdGhvZ2VuJykgfHwgJ2NvdmlkJztcbiAgfTtcblxuICBjb25zdCBbY3VycmVudERhdGEsIHNldEN1cnJlbnREYXRhXSA9IHVzZVN0YXRlKFtdKTtcbiAgY29uc3QgW21hcEFyZWFzLCBzZXRNYXBBcmVhc10gPSB1c2VTdGF0ZTxhbnlbXT4oW10pO1xuICBjb25zdCBbbWFwWm9vbSwgc2V0TWFwWm9vbV0gPSB1c2VTdGF0ZTxhbnlbXT4oW10pO1xuICBjb25zdCBbcm93cywgc2V0Um93c10gPSB1c2VTdGF0ZTxhbnk+KFtdKTtcbiAgY29uc3QgW3RhYnMsIHNldFRhYnNdID0gdXNlU3RhdGU8c3RyaW5nW10+KERFRkFVTFRfVEFCUyk7XG4gIGNvbnN0IFtzZWxlY3RlZFRhYiwgc2V0U2VsZWN0ZWRUYWJdID0gdXNlU3RhdGU8c3RyaW5nPih0YWJzWzBdKTtcbiAgY29uc3QgW3NlbGVjdGVkUGF0aG9nZW4sIHNldFNlbGVjdGVkUGF0aG9nZW5dID0gdXNlU3RhdGU8c3RyaW5nPihcbiAgICBnZXRQYXRob2dlbigpLFxuICApO1xuICBjb25zdCB7IGRhdGEsIGlzRmV0Y2hpbmcsIHNldEZldGNoaW5nIH0gPSB1c2VLYW5kb0ZldGNoKFxuICAgIGZldGNoVXJsKGNvbnZlcnRUYWJOYW1lVG9QYXJhbShzZWxlY3RlZFRhYikpLFxuICApO1xuICBjb25zdCB7IGRhdGE6IHBhdGhvZ2VucywgaXNGZXRjaGluZzogaXNGZXRjaGluZ1BhdGhvZ2VucyB9ID0gVXNlS2FuZG9GZXRjaChcbiAgICBwYXRob2dlbnNVcmwoKSxcbiAgKTtcblxuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG4gIGNvbnN0IGdsb2JhbERhdGEgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5nbG9iYWxfZGF0YSxcbiAgKTtcbiAgY29uc3QgaXNSdGw6IGJvb2xlYW4gPSBuYXZDb250ZXh0LmxvY2FsZSA9PT0gJ2hlJyA/IHRydWUgOiBmYWxzZTtcbiAgY29uc3QgY29sb3JGb3JSb3cgPSAocm93KSA9PiB7XG4gICAgbGV0IHF1YWxpdHk7XG4gICAgaWYgKCFyb3cuc2FtcGxlX2FjdGl2ZSkge1xuICAgICAgcXVhbGl0eSA9ICdpbmFjdGl2ZS1zYW1wbGluZyc7XG4gICAgfSBlbHNlIGlmIChpc0luZmVjdGVkKHJvdy5udmwpKSB7XG4gICAgICBxdWFsaXR5ID0gJ2luZmVjdGVkJztcbiAgICB9IGVsc2Uge1xuICAgICAgcXVhbGl0eSA9ICdjbGVhbic7XG4gICAgfVxuXG4gICAgcmV0dXJuIGByb3dfbmFtZS0tJHtxdWFsaXR5fWA7XG4gIH07XG5cbiAgY29uc3QgdXNlckZvcm1hdCA9IHVzZVVzZXJTZWxlY3RlZERhdGVGb3JtYXQoKTtcbiAgY29uc3QgY29sdW1uczogYW55ID0gUmVhY3QudXNlTWVtbyhcbiAgICAoKSA9PiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLm5hbWUnKSxcbiAgICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5uYW1lLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgY2VsbDogKHJvdzogeyBuYW1lOiBzdHJpbmc7IG52bDogbnVtYmVyOyBoYXNfY2hpbGRyZW46IGJvb2xlYW4gfSkgPT4gKFxuICAgICAgICAgIDxSb3dOYW1lIGlzUnRsPXtpc1J0bH0+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIlxuICAgICAgICAgICAgICBjbGFzc05hbWU9e2Byb3dfbmFtZSAke2NvbG9yRm9yUm93KHJvdyl9YH1cbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgIGhhbmRsZUFyZWFDbGljayhyb3cpO1xuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2V4cGFuZGFibGUtaWNvbid9PlxuICAgICAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgICAge3Jvdy5oYXNfY2hpbGRyZW4gJiYgPERyaWxsRG93bkljb24gLz59XG4gICAgICAgICAgICAgICAgICB7IXJvdy5oYXNfY2hpbGRyZW4gJiYgPEJhc2VMZXZlbCAvPn1cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eyduYW1lJ30+XG4gICAgICAgICAgICAgICAgPFRydW5jYXRlIGNoYXJhY3RlcnM9ezN9IGluaGVyaXRUZXh0QWxpZ249e3RydWV9PlxuICAgICAgICAgICAgICAgICAge3Jvdy5uYW1lfVxuICAgICAgICAgICAgICAgIDwvVHJ1bmNhdGU+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvUm93TmFtZT5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLm52bF9zY29yZScpLFxuICAgICAgICBzZWxlY3RvcjogKHJvdykgPT4gcm93Lm52bCxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbnZsOiBudW1iZXIgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPntyb3cubnZsfTwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQucGVyY2VudGFnZV9mcm9tX2xhc3Rfc2FtcGxpbmcnKSxcbiAgICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5udmxfY2hhbmdlLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgY2VsbDogKHJvdzogeyBudmxfY2hhbmdlOiBudW1iZXIgfSkgPT4gKFxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIlxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgZGlyZWN0aW9uOiAnbHRyJyxcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gc3R5bGU9e3sgY29sb3I6ICcjMDAwMDAwJywgbWFyZ2luOiAnMCA2cHgnIH19PlxuICAgICAgICAgICAgICB7cm93Lm52bF9jaGFuZ2V9JVxuICAgICAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIDxGb250QXdlc29tZUljb25cbiAgICAgICAgICAgICAgICBpY29uPXtyb3cubnZsX2NoYW5nZSA+IDAgPyBmYUNoZXZyb25VcCA6IGZhQ2hldnJvbkRvd259XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5sYXN0X3NhbXBsZWQnKSxcbiAgICAgICAgc2VsZWN0b3I6ICdsYXN0X3NhbXBsZWQnLFxuICAgICAgICBzb3J0YWJsZTogKHJvdykgPT4gcm93Lmxhc3RfdXBkYXRlZCxcbiAgICAgICAgY2VsbDogKHJvdzogeyBsYXN0X3VwZGF0ZWQ6IHN0cmluZyB9KSA9PiAoXG4gICAgICAgICAgPGRpdiBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCI+XG4gICAgICAgICAgICB7cm93Lmxhc3RfdXBkYXRlZCA9PT0gbnVsbFxuICAgICAgICAgICAgICA/ICctJ1xuICAgICAgICAgICAgICA6IGRheUZvcm1hdEZyb21UaW1lKHJvdy5sYXN0X3VwZGF0ZWQsIHVzZXJGb3JtYXQpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQudHJlbmRfZ3JhcGgnKSxcbiAgICAgICAgc2VsZWN0b3I6ICd0cmVuZF9ncmFwaCcsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IGlkOiBudW1iZXIgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPlxuICAgICAgICAgICAgPEdyYXBoV3JhcHBlclxuICAgICAgICAgICAgICBrZXk9e3Jvdy5pZH1cbiAgICAgICAgICAgICAgcm93PXtyb3d9XG4gICAgICAgICAgICAgIHdhdGVyX2F1dGhvcml0eV9pZD17Z2V0V0FJZCgpfVxuICAgICAgICAgICAgICBwYXRob2dlbj17c2VsZWN0ZWRQYXRob2dlbn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wb3B1bGF0aW9uJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cucG9wdWxhdGlvbixcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgcG9wdWxhdGlvbjogc3RyaW5nIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj5cbiAgICAgICAgICAgIHtrRm9ybWF0dGVyKHBhcnNlSW50KHJvdy5wb3B1bGF0aW9uKSl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgIF0sXG4gICAgW2lzUnRsLCBzZWxlY3RlZFBhdGhvZ2VuLCB1c2VyRm9ybWF0XSxcbiAgKTtcblxuICBjb25zdCBpbml0aWFsaXplTWFwQXJlYXMgPSAoYXJlYXMpID0+IHtcbiAgICBjb25zdCBtYXBwZWRXaXRoQ29sb3IgPSBhcmVhcy5tYXAoKGE6IGFueSkgPT4ge1xuICAgICAgYS53YmVfZGFzaGJvYXJkX25hbWUgPSBhLm5hbWU7XG4gICAgICBhLnNob3dDb2xvck9ubHlJbkJvcmRlcnMgPSB0cnVlO1xuXG4gICAgICBpZiAoIWEuc2FtcGxlX2FjdGl2ZSkge1xuICAgICAgICBhLmNvbG9yID0gdGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjA7XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNJbmZlY3RlZChhLm52bCkpIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLmRhdGEuUjEwMDtcbiAgICAgICAgcmV0dXJuIGE7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBhLmNvbG9yID0gdGhlbWUuY29sb3JTY2hlbWUuZGF0YS5HMTAwO1xuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHNldE1hcEFyZWFzKG1hcHBlZFdpdGhDb2xvcik7XG4gIH07XG5cbiAgY29uc3Qgem9vbVRvQXJlYSA9IChhcmVhKSA9PiB7XG4gICAgYXJlYS5zaGFwZV9kYXRhICE9PSB1bmRlZmluZWQgJiYgc2V0TWFwWm9vbShhcmVhLnNoYXBlX2RhdGEpO1xuICB9O1xuXG4gIGNvbnN0IHpvb21BbGxBcmVhcyA9IChkYXRhKSA9PiB7XG4gICAgY29uc3Qgc2hhcGVEYXRhID0gZGF0YS5tYXAoKGRhdHVtKSA9PiB7XG4gICAgICByZXR1cm4gZGF0dW0uc2hhcGVfZGF0YTtcbiAgICB9KTtcblxuICAgIHNldE1hcFpvb20oc2hhcGVEYXRhKTtcbiAgfTtcblxuICBjb25zdCBpc0luZmVjdGVkID0gKG52bDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGxldmVsTlZMKG52bCkgPT09ICdjbGVhbicpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGV2ZWxOVkwobnZsKSA9PT0gJ2xvdycgfHxcbiAgICAgIGxldmVsTlZMKG52bCkgPT09ICdtZWRpdW0nIHx8XG4gICAgICBsZXZlbE5WTChudmwpID09PSAnaGlnaCdcbiAgICApIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIHJldHVybjtcbiAgfTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+XG4gICAgICBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLFxuICApO1xuXG4gIGNvbnN0IGRpcjogRGlyZWN0aW9uID1cbiAgICBuYXZDb250ZXh0LmxvY2FsZSA9PT0gJ2hlJyA/IERpcmVjdGlvbi5SVEwgOiBEaXJlY3Rpb24uTFRSO1xuXG4gIGNvbnN0IGZpbHRlclJlc3VsdHNBbmRTZXRSb3dzID0gKHRleHQ6IHN0cmluZykgPT4ge1xuICAgIGxldCByZXN1bHRzID0gY3VycmVudERhdGEuZmlsdGVyKGZ1bmN0aW9uIChlbDogYW55KSB7XG4gICAgICByZXR1cm4gZWwubmFtZS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRleHQudG9Mb3dlckNhc2UoKSk7XG4gICAgfSk7XG5cbiAgICBzZXRSb3dzKHJlc3VsdHMpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZU9uUm93RXhwYW5kID0gKGV4cGFuZGVkLCByb3cpID0+IHtcbiAgICBleHBhbmRlZCAmJiB6b29tVG9BcmVhKHJvdyk7XG4gICAgIWV4cGFuZGVkICYmIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgfTtcblxuICBjb25zdCB3YXRlckF1dGhvcml0eU5hbWUgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5TmFtZSxcbiAgKTtcblxuICBjb25zdCBoYW5kbGVTZWxlY3RQYXRob2dlbkNsaWNrID0gKHBhdGhvZ2VuKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1dCRSBTdGF0dXMgUmVwb3J0IC0gUGF0aG9nZW4gY2hhbmdlIGNsaWNrZWQnLCB7XG4gICAgICBwYXRob2dlbjogcGF0aG9nZW4sXG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICBzZXRTZWxlY3RlZFBhdGhvZ2VuKHBhdGhvZ2VuKTtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgL3diZV9kYXNoYm9hcmQvaW5kZXg/bG9jYWxlPSR7bmF2Q29udGV4dC5sb2NhbGV9JndhdGVyX2F1dGhvcml0eV9pZD0ke3dhdGVyQXV0aG9yaXR5SWR9JnBhdGhvZ2VuPSR7cGF0aG9nZW59YCxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGZldGNoRm9yVGFiU2VsZWN0aW9uID0gKHRhYikgPT4ge1xuICAgIHNldEZldGNoaW5nKHRydWUpO1xuICAgIGF4aW9zLmdldChmZXRjaFVybCh0YWIpKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgbGV0IHJlc3BvbnNlRGF0YSA9IHJlc3BvbnNlLmRhdGEuZGF0YTtcblxuICAgICAgc2V0RmV0Y2hpbmcoZmFsc2UpO1xuICAgICAgc2V0VGFicyhERUZBVUxUX1RBQlMpO1xuICAgICAgc2V0Um93cyhyZXNwb25zZURhdGEpO1xuICAgICAgc2V0Q3VycmVudERhdGEocmVzcG9uc2VEYXRhKTtcbiAgICAgIGluaXRpYWxpemVNYXBBcmVhcyhyZXNwb25zZURhdGEpO1xuICAgICAgem9vbUFsbEFyZWFzKHJlc3BvbnNlRGF0YSk7XG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlVGFiU2VsZWN0aW9uQ2xpY2sgPSAodGFiKSA9PiB7XG4gICAgaWYgKCFpc0ZldGNoaW5nKSB7XG4gICAgICBzZXRTZWxlY3RlZFRhYih0YWIpO1xuXG4gICAgICBpZiAodGFiICE9PSBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jdXN0b20nKSkge1xuICAgICAgICB0YWIgPVxuICAgICAgICAgIHRhYiA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY2l0aWVzJylcbiAgICAgICAgICAgID8gJ2NpdHknXG4gICAgICAgICAgICA6IHRhYiA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJylcbiAgICAgICAgICAgID8gJ21vbml0b3JlZCdcbiAgICAgICAgICAgIDogJyc7XG5cbiAgICAgICAgZmV0Y2hGb3JUYWJTZWxlY3Rpb24odGFiKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaW5pdGlhbGl6ZURyaWxsZWRBcmVhID0gKHJlc3BvbnNlKSA9PiB7XG4gICAgbGV0IGRhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG4gICAgc2V0Um93cyhkYXRhKTtcbiAgICBzZXRDdXJyZW50RGF0YShkYXRhKTtcbiAgICBpbml0aWFsaXplTWFwQXJlYXMoZGF0YSk7XG4gICAgem9vbUFsbEFyZWFzKGRhdGEpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUFyZWFDbGljayA9IChhcmVhKSA9PiB7XG4gICAgem9vbVRvQXJlYShhcmVhKTtcblxuICAgIGlmIChhcmVhLmhhc19jaGlsZHJlbikge1xuICAgICAgc2V0VGFicyhbLi4udGFicywgaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY3VzdG9tJyldKTtcbiAgICAgIHNldFNlbGVjdGVkVGFiKGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmN1c3RvbScpKTtcblxuICAgICAgYXhpb3MuZ2V0KGZldGNoVXJsKGFyZWEuaWQpKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBpbml0aWFsaXplRHJpbGxlZEFyZWEocmVzcG9uc2UpO1xuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGluaXRpYWxpemVDb21wb25lbnQgPSAoKSA9PiB7XG4gICAgc2V0Q3VycmVudERhdGEoZGF0YSk7XG4gICAgc2V0Um93cyhkYXRhKTtcbiAgICBhbmFseXRpY3NUcmFjaygnV0JFIFN0YXR1cyBSZXBvcnQnLCB7XG4gICAgICB1dGlsaXR5X25hbWU6IHdhdGVyQXV0aG9yaXR5TmFtZSxcbiAgICB9KTtcbiAgICBkaXNwYXRjaCh1cGRhdGVOYXZDb250ZXh0KHsgbmFtZTogJ3diZV9kYXNoYm9hcmQnIH0pKTtcblxuICAgIGF4aW9zLmdldChmZXRjaFVybCgnbW9uaXRvcmVkJykpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICBsZXQgZGF0YSA9IHJlc3BvbnNlLmRhdGEuZGF0YTtcblxuICAgICAgaW5pdGlhbGl6ZU1hcEFyZWFzKGRhdGEpO1xuICAgICAgem9vbUFsbEFyZWFzKGRhdGEpO1xuICAgIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc0ZldGNoaW5nICYmIGRhdGEgIT09IG51bGwpIHtcbiAgICAgIGluaXRpYWxpemVDb21wb25lbnQoKTtcbiAgICB9XG4gIH0sIFtpc0ZldGNoaW5nLCBzZWxlY3RlZFBhdGhvZ2VuLCBkYXRhXSk7XG5cbiAgY29uc3QgcGF0aG9nZW5UaXRsZSA9XG4gICAgKCFpc0ZldGNoaW5nUGF0aG9nZW5zICYmXG4gICAgICBwYXRob2dlbnM/LmZpbmQoXG4gICAgICAgIChpdGVtKSA9PiBpdGVtLnRvTG93ZXJDYXNlKCkgPT09IHNlbGVjdGVkUGF0aG9nZW4udG9Mb3dlckNhc2UoKSxcbiAgICAgICkpIHx8XG4gICAgJyc7XG4gIGNvbnN0IGRyb3BEb3duVGl0bGUgPVxuICAgIHBhdGhvZ2VuVGl0bGUgfHwgaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQucGF0aG9nZW5fbm90X2ZvdW5kJyk7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPENvbnRlbnQ+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgPGgxPlxuICAgICAgICAgICAge2Ake2kxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnRhYmxlX25hbWUnKX0gKCR7XG4gICAgICAgICAgICAgIHBhdGhvZ2VuVGl0bGUgfHwgZ2V0UGF0aG9nZW4oKVxuICAgICAgICAgICAgfSlgfVxuICAgICAgICAgIDwvaDE+XG4gICAgICAgICAgeyFpc0ZldGNoaW5nUGF0aG9nZW5zICYmIHBhdGhvZ2Vucy5sZW5ndGggPT09IDAgJiYgKFxuICAgICAgICAgICAgPGgzPntpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKX08L2gzPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7IWlzRmV0Y2hpbmdQYXRob2dlbnMgJiYgcGF0aG9nZW5zLmxlbmd0aCA+IDEgJiYgKFxuICAgICAgICAgICAgICA8RHJvcGRvd25CdXR0b25cbiAgICAgICAgICAgICAgICBpZD1cImRyb3Bkb3duLWJhc2ljLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYnV0dG9uIGJ1dHRvbi0tc29ydCd9XG4gICAgICAgICAgICAgICAgdGl0bGU9e2Ryb3BEb3duVGl0bGUgKyAnICd9XG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7cGF0aG9nZW5zLm1hcCgocGF0aG9nZW4pID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtwYXRob2dlbn1cbiAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayhwYXRob2dlbil9XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHRBbGlnbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyAncmlnaHQnIDogJ2xlZnQnLFxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7cGF0aG9nZW59XG4gICAgICAgICAgICAgICAgICAgIDwvRHJvcGRvd24uSXRlbT5cbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgIDwvRHJvcGRvd25CdXR0b24+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvQWN0aW9uc0NvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxGaXJzdFNlY3Rpb24+XG4gICAgICAgICAgPFdiZVN1bW1hcnlCYXJcbiAgICAgICAgICAgIHBhdGhvZ2VuPXtzZWxlY3RlZFBhdGhvZ2VufVxuICAgICAgICAgICAgd2F0ZXJBdXRob3JpdHlJZD17d2F0ZXJBdXRob3JpdHlJZH1cbiAgICAgICAgICAgIGlzUnRsPXtpc1J0bH1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0ZpcnN0U2VjdGlvbj5cblxuICAgICAgICA8U2Vjb25kU2VjdGlvbj5cbiAgICAgICAgICA8U2VhcmNoSW5wdXQgb25DaGFuZ2VCZWhhdmlvcj17ZmlsdGVyUmVzdWx0c0FuZFNldFJvd3N9IC8+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9eyd0YWJzLWNvbnRhaW5lcid9PlxuICAgICAgICAgICAgPFRhYnNcbiAgICAgICAgICAgICAgdGFicz17dGFic31cbiAgICAgICAgICAgICAgc2VsZWN0ZWRUYWI9e3NlbGVjdGVkVGFifVxuICAgICAgICAgICAgICBoYW5kbGVPbkNsaWNrPXtoYW5kbGVUYWJTZWxlY3Rpb25DbGlja31cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPE1hcFRhYmxlQ29udGFpbmVyIGlzUnRsPXtpc1J0bH0+XG4gICAgICAgICAgICB7aXNGZXRjaGluZyAmJiA8U3Bpbm5lciAvPn1cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnbWFwLWNvbnRhaW5lcid9PlxuICAgICAgICAgICAgICB7IWlzRmV0Y2hpbmcgJiYgcm93cyAhPT0gbnVsbCAmJiBtYXBab29tICE9PSBudWxsICYmIChcbiAgICAgICAgICAgICAgICA8RXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICAgICAgICAgIDxNYXBcbiAgICAgICAgICAgICAgICAgICAgYXJlYXM9e21hcEFyZWFzfVxuICAgICAgICAgICAgICAgICAgICBhcmVhVG9DZW50ZXJCeT17bWFwWm9vbX1cbiAgICAgICAgICAgICAgICAgICAgZWRnZXM9e1tdfVxuICAgICAgICAgICAgICAgICAgICBwb2ludHM9e1tdfVxuICAgICAgICAgICAgICAgICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsRGF0YX1cbiAgICAgICAgICAgICAgICAgICAgbWFwQm94U3R5bGU9e01BUEJPWF9XQkVfREFTSEJPQVJEX1NUWUxFfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIHshaXNGZXRjaGluZyAmJiByb3dzICE9PSBudWxsICYmIChcbiAgICAgICAgICAgICAgPEthbmRvVGFibGVcbiAgICAgICAgICAgICAgICBvblJvd0V4cGFuZFRvZ2dsZWQ9e2hhbmRsZU9uUm93RXhwYW5kfVxuICAgICAgICAgICAgICAgIGRhdGE9e3Jvd3N9XG4gICAgICAgICAgICAgICAgY29sdW1ucz17Y29sdW1uc31cbiAgICAgICAgICAgICAgICBkaXJlY3Rpb249e2Rpcn1cbiAgICAgICAgICAgICAgICBleHBhbmRhYmxlUm93cz17dHJ1ZX1cbiAgICAgICAgICAgICAgICBwYWdpbmF0aW9uUGVyUGFnZT17VEFCTEVfUk9XU19QRVJfUEFHRX1cbiAgICAgICAgICAgICAgICByb3dDb21wb25lbnQ9e0V4cGFuZGVkQ29tcG9uZW50fVxuICAgICAgICAgICAgICAgIGV4cGFuZGFibGVSb3dzQ29tcG9uZW50UHJvcHM9e3sgcGF0aG9nZW46IHNlbGVjdGVkUGF0aG9nZW4gfX1cbiAgICAgICAgICAgICAgICBkZWZhdWx0U29ydEZpZWxkSWQ9ezN9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvTWFwVGFibGVDb250YWluZXI+XG4gICAgICAgIDwvU2Vjb25kU2VjdGlvbj5cbiAgICAgIDwvQ29udGVudD5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbmNvbnN0IFJvd05hbWUgPSBzdHlsZWQuZGl2PHsgaXNSdGw6IGJvb2xlYW4gfT5gXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgICBcbiAgICAucm93X25hbWUge1xuICAgICAgLmV4cGFuZGFibGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlLWluOyAgICAgIFxuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgICAgICBcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogMnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIFxuICAgICAgICAmLS1jbGVhbiB7XG4gICAgICAgICBjb2xvcjogIzI3YTYzYTsgXG4gICAgICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyN2E2M2E7ICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLWluZmVjdGVkIHtcbiAgICAgICAgICBjb2xvcjogI2UxMDAzNjtcbiAgICAgICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlMTAwMzY7ICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLWluYWN0aXZlLXNhbXBsaW5nIHtcbiAgICAgICAgICBjb2xvcjogJHt0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm42MH07XG4gICAgICAgICAgLmV4cGFuZGFibGUtaWNvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAke3RoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwfTsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICR7KHApID0+IChwLmlzUnRsID8gJ3JpZ2h0OiA1MXB4OycgOiAnbGVmdDogNTFweDsnKX1cbiAgICAgICAgICB0b3A6IDE2cHg7XG4gICAgICAgICAgd2lkdGg6IDcuNWVtO1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgYDtcblxuY29uc3QgQWN0aW9uc0NvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5gO1xuXG5jb25zdCBGaXJzdFNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBtYXJnaW46IDg1cHggMCAyMHB4IDA7XG5gO1xuXG5jb25zdCBTZWNvbmRTZWN0aW9uID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZjZmNmYztcbiAgYm9yZGVyOiAxcHggc29saWQgI2U3ZTdlNztcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuYDtcblxuY29uc3QgTWFwVGFibGVDb250YWluZXIgPSBzdHlsZWQuZGl2PHsgaXNSdGw6IGJvb2xlYW4gfT5gXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgLm1hcC1jb250YWluZXIge1xuICAgIHdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIC5ldmVudC10aW1lcmFuZ2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgI21hcCB7XG4gICAgICBoZWlnaHQ6IDY5dmg7XG4gICAgICB3aWR0aDogMzB2dztcbiAgICB9XG4gIH1cbiAgW2RhdGEtdGVzdGlkPSdrYW5kby10YWJsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBbZGF0YS1jb2x1bW4taWQ9JzEnXSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5uYW1lIHtcbiAgICAgICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTIwcHggKyAxdncpO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIGN1YmljLWJlemllcigwLjY1LCAwLjA1LCAwLjM2LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3Bpbm5lci1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IENvbnRlbnQgPSBzdHlsZWQuZGl2YFxuICBAbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgaDEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgcGFkZGluZzogNjBweCA2MHB4O1xuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxLQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxlQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxVQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxZQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxpQkFBQSxHQUFBUCxPQUFBO0FBQ0EsSUFBQVEsYUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsa0JBQUEsR0FBQVQsT0FBQTtBQUVBLElBQUFVLFFBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLGFBQUEsR0FBQVgsT0FBQTtBQUEwRCxJQUFBWSxjQUFBLEdBQUFaLE9BQUE7QUFBQSxJQUFBYSxVQUFBLEdBQUFiLE9BQUE7QUFHMUQsSUFBQWMsd0JBQUEsR0FBQWQsT0FBQTtBQUNBLElBQUFlLGdCQUFBLEdBQUFmLE9BQUE7QUFDQSxJQUFBZ0IsSUFBQSxHQUFBaEIsT0FBQTtBQUNBLElBQUFpQixXQUFB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
429
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfaTE4biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIl9BbmFseXRpY3MiLCJfU2VhcmNoSW5wdXQiLCJfcmVhY3RGb250YXdlc29tZSIsIl9HcmFwaFdyYXBwZXIiLCJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJfYWN0aW9ucyIsIl9UaG91c2FuZHNUb0siLCJfRHJpbGxEb3duSWNvbiIsIl9CYXNlTGV2ZWwiLCJfcmVhY3REYXRhVGFibGVDb21wb25lbnQiLCJfbnZsU3RhdHVzSGVscGVyIiwiX01hcCIsIl9LYW5kb1RhYmxlIiwiX1RhYnMiLCJfdXNlS2FuZG9GZXRjaDIiLCJfdXNlUXVlcnlVUkwiLCJfRHJvcGRvd24iLCJfRHJvcGRvd25CdXR0b24iLCJfYXhpb3MiLCJfVHJ1bmNhdGUiLCJfRXhwYW5kYWJsZUNvbXBvbmVudCIsIl9TcGlubmVyIiwiX1diZVN1bW1hcnlCYXIiLCJfRXJyb3JCb3VuZGFyeSIsIl90aGVtZSIsIl91c2VLYW5kb0ZldGNoMyIsIl91cmxzIiwiX3VzZVVzZXJUaW1lWm9uZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiVEFCTEVfUk9XU19QRVJfUEFHRSIsIk1BUEJPWF9XQkVfREFTSEJPQVJEX1NUWUxFIiwiV2JlRGFzaGJvYXJkUGFnZSIsImdldFdBSWQiLCJxdWVyeSIsImZldGNoVXJsIiwiZmlyc3RQYXJhbSIsImNvbmNhdCIsInNlbGVjdGVkUGF0aG9nZW4iLCJwYXRob2dlbnNVcmwiLCJ1cmxzIiwid2F0ZXJBdXRob3JpdHlJZCIsIndiZURhc2hib2FyZCIsInBhdGhvZ2VucyIsInVybCIsIkRFRkFVTFRfVEFCUyIsImkxOG4iLCJ0IiwiY29udmVydFRhYk5hbWVUb1BhcmFtIiwidGFiX25hbWUiLCJ1c2VRdWVyeVVSTCIsImdldFBhdGhvZ2VuTmFtZSIsInBhdGhvZ2VuIiwiZ2V0UGF0aG9nZW4iLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJjdXJyZW50RGF0YSIsInNldEN1cnJlbnREYXRhIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJtYXBBcmVhcyIsInNldE1hcEFyZWFzIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJtYXBab29tIiwic2V0TWFwWm9vbSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4Iiwicm93cyIsInNldFJvd3MiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMTAiLCJ0YWJzIiwic2V0VGFicyIsIl91c2VTdGF0ZTExIiwiX3VzZVN0YXRlMTIiLCJzZWxlY3RlZFRhYiIsInNldFNlbGVjdGVkVGFiIiwiX3VzZVN0YXRlMTMiLCJfdXNlU3RhdGUxNCIsInNldFNlbGVjdGVkUGF0aG9nZW4iLCJfdXNlS2FuZG9GZXRjaCIsInVzZUthbmRvRmV0Y2giLCJkYXRhIiwiaXNGZXRjaGluZyIsInNldEZldGNoaW5nIiwiX1VzZUthbmRvRmV0Y2giLCJVc2VLYW5kb0ZldGNoIiwiaXNGZXRjaGluZ1BhdGhvZ2VucyIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJuYXZDb250ZXh0IiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJnbG9iYWxEYXRhIiwiZ2xvYmFsX2RhdGEiLCJpc1J0bCIsImxvY2FsZSIsImNvbG9yRm9yUm93Iiwicm93IiwicXVhbGl0eSIsInNhbXBsZV9hY3RpdmUiLCJpc0luZmVjdGVkIiwibnZsIiwidXNlckZvcm1hdCIsInVzZVVzZXJTZWxlY3RlZERhdGVGb3JtYXQiLCJjb2x1bW5zIiwiUmVhY3QiLCJ1c2VNZW1vIiwibmFtZSIsInNlbGVjdG9yIiwic29ydGFibGUiLCJjZWxsIiwiY3JlYXRlRWxlbWVudCIsIlJvd05hbWUiLCJjbGFzc05hbWUiLCJvbkNsaWNrIiwiaGFuZGxlQXJlYUNsaWNrIiwiaGFzX2NoaWxkcmVuIiwiUmVhY3RDb21wb25lbnQiLCJjaGFyYWN0ZXJzIiwiaW5oZXJpdFRleHRBbGlnbiIsIm52bF9jaGFuZ2UiLCJzdHlsZSIsImRpcmVjdGlvbiIsImNvbG9yIiwibWFyZ2luIiwiRm9udEF3ZXNvbWVJY29uIiwiaWNvbiIsImZhQ2hldnJvblVwIiwiZmFDaGV2cm9uRG93biIsImxhc3RfdXBkYXRlZCIsImRheUZvcm1hdEZyb21UaW1lIiwiR3JhcGhXcmFwcGVyIiwiaWQiLCJ3YXRlcl9hdXRob3JpdHlfaWQiLCJwb3B1bGF0aW9uIiwia0Zvcm1hdHRlciIsInBhcnNlSW50IiwiaW5pdGlhbGl6ZU1hcEFyZWFzIiwiYXJlYXMiLCJtYXBwZWRXaXRoQ29sb3IiLCJtYXAiLCJhIiwid2JlX2Rhc2hib2FyZF9uYW1lIiwic2hvd0NvbG9yT25seUluQm9yZGVycyIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJuYXR1cmFsIiwibjYwIiwiUjEwMCIsIkcxMDAiLCJ6b29tVG9BcmVhIiwiYXJlYSIsInNoYXBlX2RhdGEiLCJ1bmRlZmluZWQiLCJ6b29tQWxsQXJlYXMiLCJzaGFwZURhdGEiLCJkYXR1bSIsImxldmVsTlZMIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJkaXIiLCJEaXJlY3Rpb24iLCJSVEwiLCJMVFIiLCJmaWx0ZXJSZXN1bHRzQW5kU2V0Um93cyIsInRleHQiLCJyZXN1bHRzIiwiZmlsdGVyIiwiZWwiLCJ0b0xvd2VyQ2FzZSIsImluY2x1ZGVzIiwiaGFuZGxlT25Sb3dFeHBhbmQiLCJleHBhbmRlZCIsIndhdGVyQXV0aG9yaXR5TmFtZSIsImhhbmRsZVNlbGVjdFBhdGhvZ2VuQ2xpY2siLCJhbmFseXRpY3NUcmFjayIsInV0aWxpdHlfbmFtZSIsInB1c2giLCJmZXRjaEZvclRhYlNlbGVjdGlvbiIsInRhYiIsImF4aW9zIiwidGhlbiIsInJlc3BvbnNlIiwicmVzcG9uc2VEYXRhIiwiaGFuZGxlVGFiU2VsZWN0aW9uQ2xpY2siLCJpbml0aWFsaXplRHJpbGxlZEFyZWEiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiaW5pdGlhbGl6ZUNvbXBvbmVudCIsInVwZGF0ZU5hdkNvbnRleHQiLCJ1c2VFZmZlY3QiLCJwYXRob2dlblRpdGxlIiwiZmluZCIsIml0ZW0iLCJkcm9wRG93blRpdGxlIiwiRnJhZ21lbnQiLCJDb250ZW50IiwibGVuZ3RoIiwiQWN0aW9uc0NvbnRhaW5lciIsInRpdGxlIiwidmFyaWFudCIsIkl0ZW0iLCJocmVmIiwidGV4dEFsaWduIiwiRmlyc3RTZWN0aW9uIiwiV2JlU3VtbWFyeUJhciIsIlNlY29uZFNlY3Rpb24iLCJTZWFyY2hJbnB1dCIsIm9uQ2hhbmdlQmVoYXZpb3IiLCJUYWJzIiwiaGFuZGxlT25DbGljayIsIk1hcFRhYmxlQ29udGFpbmVyIiwiU3Bpbm5lciIsIk1hcCIsImFyZWFUb0NlbnRlckJ5IiwiZWRnZXMiLCJwb2ludHMiLCJtYXBCb3hTdHlsZSIsIkthbmRvVGFibGUiLCJvblJvd0V4cGFuZFRvZ2dsZWQiLCJleHBhbmRhYmxlUm93cyIsInBhZ2luYXRpb25QZXJQYWdlIiwicm93Q29tcG9uZW50IiwiRXhwYW5kZWRDb21wb25lbnQiLCJleHBhbmRhYmxlUm93c0NvbXBvbmVudFByb3BzIiwiZGVmYXVsdFNvcnRGaWVsZElkIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwicCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCB7IFNlYXJjaElucHV0IH0gZnJvbSAnLi9TZWFyY2hJbnB1dCc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgR3JhcGhXcmFwcGVyIH0gZnJvbSAnLi9HcmFwaFdyYXBwZXInO1xuaW1wb3J0IHsgZmFDaGV2cm9uRG93biwgZmFDaGV2cm9uVXAgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IHVwZGF0ZU5hdkNvbnRleHQgfSBmcm9tICcuLi8uLi9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IHsga0Zvcm1hdHRlciB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9UaG91c2FuZHNUb0snO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRHJpbGxEb3duSWNvbiB9IGZyb20gJy4vRHJpbGxEb3duSWNvbi5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQmFzZUxldmVsIH0gZnJvbSAnLi9CYXNlTGV2ZWwuc3ZnJztcbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ3JlYWN0LWRhdGEtdGFibGUtY29tcG9uZW50JztcbmltcG9ydCB7IGxldmVsTlZMIH0gZnJvbSAnLi4vQ292aWRQYWdlL2NvbXBvbmVudHMvbnZsU3RhdHVzSGVscGVyJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJy4uLy4uL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgeyBLYW5kb1RhYmxlIH0gZnJvbSAnc3JjL3VpLWtpdC9LYW5kb1RhYmxlL0thbmRvVGFibGUnO1xuaW1wb3J0IHsgVGFicyB9IGZyb20gJy4vVGFicyc7XG5pbXBvcnQgdXNlS2FuZG9GZXRjaCBmcm9tICcuLi8uLi9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICcuLi8uLi9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCBEcm9wZG93biBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duJztcbmltcG9ydCBEcm9wZG93bkJ1dHRvbiBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duQnV0dG9uJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgVHJ1bmNhdGUgZnJvbSAnLi4vLi4vdXRpbGl0aWVzL1RydW5jYXRlJztcbmltcG9ydCB7IEV4cGFuZGVkQ29tcG9uZW50IH0gZnJvbSAnLi9FeHBhbmRhYmxlQ29tcG9uZW50JztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyBXYmVTdW1tYXJ5QmFyIH0gZnJvbSAnLi9XYmVTdW1tYXJ5QmFyJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJy4uLy4uL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBVc2VLYW5kb0ZldGNoIGZyb20gJ3NyYy9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHtcbiAgZGF5Rm9ybWF0RnJvbVRpbWUsXG4gIHVzZVVzZXJTZWxlY3RlZERhdGVGb3JtYXQsXG59IGZyb20gJ3NyYy9ob29rcy91c2VVc2VyVGltZVpvbmUnO1xuY29uc3QgVEFCTEVfUk9XU19QRVJfUEFHRSA9IDI1O1xuY29uc3QgTUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEUgPSAnY2t6emtqc2k3MDA1ZjE0bzlpbTBtY3pzOSc7XG5cbmV4cG9ydCBjb25zdCBXYmVEYXNoYm9hcmRQYWdlID0gKCkgPT4ge1xuICBjb25zdCBnZXRXQUlkID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpO1xuICB9O1xuICBjb25zdCBmZXRjaFVybCA9IChmaXJzdFBhcmFtKSA9PiB7XG4gICAgcmV0dXJuIGAvYXBpX3VpL3diZV9kYXNoYm9hcmQvJHtzZWxlY3RlZFBhdGhvZ2VufS8ke2ZpcnN0UGFyYW19P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dldFdBSWQoKX1gO1xuICB9O1xuICBjb25zdCBwYXRob2dlbnNVcmwgPSAoKSA9PlxuICAgIHVybHMoeyB3YXRlckF1dGhvcml0eUlkOiBnZXRXQUlkKCkgfSkud2JlRGFzaGJvYXJkLnBhdGhvZ2Vucy51cmw7XG4gIGNvbnN0IERFRkFVTFRfVEFCUyA9IFtcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jaXRpZXMnKSxcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5tb25pdG9yZWRfYXJlYXMnKSxcbiAgXTtcbiAgY29uc3QgY29udmVydFRhYk5hbWVUb1BhcmFtID0gKHRhYl9uYW1lOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodGFiX25hbWUgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmNpdGllcycpKSB7XG4gICAgICByZXR1cm4gJ2NpdHknO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0YWJfbmFtZSA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJylcbiAgICApIHtcbiAgICAgIHJldHVybiAnbW9uaXRvcmVkJztcbiAgICB9XG5cbiAgICByZXR1cm4gJ2NpdHknO1xuICB9O1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG5cbiAgY29uc3QgZ2V0UGF0aG9nZW5OYW1lID0gKHBhdGhvZ2VuKSA9PiB7XG4gICAgcmV0dXJuIHBhdGhvZ2VuID09PSAnQ292aWQgSGFjaCcgPyAnU0FSUy1Db1YtMicgOiBwYXRob2dlbjtcbiAgfTtcblxuICBjb25zdCBnZXRQYXRob2dlbiA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdwYXRob2dlbicpIHx8ICdjb3ZpZCc7XG4gIH07XG5cbiAgY29uc3QgW2N1cnJlbnREYXRhLCBzZXRDdXJyZW50RGF0YV0gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFttYXBBcmVhcywgc2V0TWFwQXJlYXNdID0gdXNlU3RhdGU8YW55W10+KFtdKTtcbiAgY29uc3QgW21hcFpvb20sIHNldE1hcFpvb21dID0gdXNlU3RhdGU8YW55W10+KFtdKTtcbiAgY29uc3QgW3Jvd3MsIHNldFJvd3NdID0gdXNlU3RhdGU8YW55PihbXSk7XG4gIGNvbnN0IFt0YWJzLCBzZXRUYWJzXSA9IHVzZVN0YXRlPHN0cmluZ1tdPihERUZBVUxUX1RBQlMpO1xuICBjb25zdCBbc2VsZWN0ZWRUYWIsIHNldFNlbGVjdGVkVGFiXSA9IHVzZVN0YXRlPHN0cmluZz4odGFic1swXSk7XG4gIGNvbnN0IFtzZWxlY3RlZFBhdGhvZ2VuLCBzZXRTZWxlY3RlZFBhdGhvZ2VuXSA9IHVzZVN0YXRlPHN0cmluZz4oXG4gICAgZ2V0UGF0aG9nZW4oKSxcbiAgKTtcbiAgY29uc3QgeyBkYXRhLCBpc0ZldGNoaW5nLCBzZXRGZXRjaGluZyB9ID0gdXNlS2FuZG9GZXRjaChcbiAgICBmZXRjaFVybChjb252ZXJ0VGFiTmFtZVRvUGFyYW0oc2VsZWN0ZWRUYWIpKSxcbiAgKTtcbiAgY29uc3QgeyBkYXRhOiBwYXRob2dlbnMsIGlzRmV0Y2hpbmc6IGlzRmV0Y2hpbmdQYXRob2dlbnMgfSA9IFVzZUthbmRvRmV0Y2goXG4gICAgcGF0aG9nZW5zVXJsKCksXG4gICk7XG5cbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuICBjb25zdCBnbG9iYWxEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZ2xvYmFsX2RhdGEsXG4gICk7XG4gIGNvbnN0IGlzUnRsOiBib29sZWFuID0gbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyB0cnVlIDogZmFsc2U7XG4gIGNvbnN0IGNvbG9yRm9yUm93ID0gKHJvdykgPT4ge1xuICAgIGxldCBxdWFsaXR5O1xuICAgIGlmICghcm93LnNhbXBsZV9hY3RpdmUpIHtcbiAgICAgIHF1YWxpdHkgPSAnaW5hY3RpdmUtc2FtcGxpbmcnO1xuICAgIH0gZWxzZSBpZiAoaXNJbmZlY3RlZChyb3cubnZsKSkge1xuICAgICAgcXVhbGl0eSA9ICdpbmZlY3RlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHF1YWxpdHkgPSAnY2xlYW4nO1xuICAgIH1cblxuICAgIHJldHVybiBgcm93X25hbWUtLSR7cXVhbGl0eX1gO1xuICB9O1xuXG4gIGNvbnN0IHVzZXJGb3JtYXQgPSB1c2VVc2VyU2VsZWN0ZWREYXRlRm9ybWF0KCk7XG4gIGNvbnN0IGNvbHVtbnM6IGFueSA9IFJlYWN0LnVzZU1lbW8oXG4gICAgKCkgPT4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5uYW1lJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubmFtZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbmFtZTogc3RyaW5nOyBudmw6IG51bWJlcjsgaGFzX2NoaWxkcmVuOiBib29sZWFuIH0pID0+IChcbiAgICAgICAgICA8Um93TmFtZSBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgcm93X25hbWUgJHtjb2xvckZvclJvdyhyb3cpfWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICBoYW5kbGVBcmVhQ2xpY2socm93KTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydleHBhbmRhYmxlLWljb24nfT5cbiAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgIHtyb3cuaGFzX2NoaWxkcmVuICYmIDxEcmlsbERvd25JY29uIC8+fVxuICAgICAgICAgICAgICAgICAgeyFyb3cuaGFzX2NoaWxkcmVuICYmIDxCYXNlTGV2ZWwgLz59XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnbmFtZSd9PlxuICAgICAgICAgICAgICAgIDxUcnVuY2F0ZSBjaGFyYWN0ZXJzPXszfSBpbmhlcml0VGV4dEFsaWduPXt0cnVlfT5cbiAgICAgICAgICAgICAgICAgIHtyb3cubmFtZX1cbiAgICAgICAgICAgICAgICA8L1RydW5jYXRlPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1Jvd05hbWU+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5udmxfc2NvcmUnKSxcbiAgICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5udmwsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IG52bDogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj57cm93Lm52bH08L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnBlcmNlbnRhZ2VfZnJvbV9sYXN0X3NhbXBsaW5nJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubnZsX2NoYW5nZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbnZsX2NoYW5nZTogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2x0cicsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGNvbG9yOiAnIzAwMDAwMCcsIG1hcmdpbjogJzAgNnB4JyB9fT5cbiAgICAgICAgICAgICAge3Jvdy5udmxfY2hhbmdlfSVcbiAgICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgICAgICAgaWNvbj17cm93Lm52bF9jaGFuZ2UgPiAwID8gZmFDaGV2cm9uVXAgOiBmYUNoZXZyb25Eb3dufVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubGFzdF9zYW1wbGVkJyksXG4gICAgICAgIHNlbGVjdG9yOiAnbGFzdF9zYW1wbGVkJyxcbiAgICAgICAgc29ydGFibGU6IChyb3cpID0+IHJvdy5sYXN0X3VwZGF0ZWQsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbGFzdF91cGRhdGVkOiBzdHJpbmcgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPlxuICAgICAgICAgICAge3Jvdy5sYXN0X3VwZGF0ZWQgPT09IG51bGxcbiAgICAgICAgICAgICAgPyAnLSdcbiAgICAgICAgICAgICAgOiBkYXlGb3JtYXRGcm9tVGltZShyb3cubGFzdF91cGRhdGVkLCB1c2VyRm9ybWF0KX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnRyZW5kX2dyYXBoJyksXG4gICAgICAgIHNlbGVjdG9yOiAndHJlbmRfZ3JhcGgnLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgY2VsbDogKHJvdzogeyBpZDogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj5cbiAgICAgICAgICAgIDxHcmFwaFdyYXBwZXJcbiAgICAgICAgICAgICAga2V5PXtyb3cuaWR9XG4gICAgICAgICAgICAgIHJvdz17cm93fVxuICAgICAgICAgICAgICB3YXRlcl9hdXRob3JpdHlfaWQ9e2dldFdBSWQoKX1cbiAgICAgICAgICAgICAgcGF0aG9nZW49e3NlbGVjdGVkUGF0aG9nZW59XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQucG9wdWxhdGlvbicpLFxuICAgICAgICBzZWxlY3RvcjogKHJvdykgPT4gcm93LnBvcHVsYXRpb24sXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IHBvcHVsYXRpb246IHN0cmluZyB9KSA9PiAoXG4gICAgICAgICAgPGRpdiBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCI+XG4gICAgICAgICAgICB7a0Zvcm1hdHRlcihwYXJzZUludChyb3cucG9wdWxhdGlvbikpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFtpc1J0bCwgc2VsZWN0ZWRQYXRob2dlbiwgdXNlckZvcm1hdF0sXG4gICk7XG5cbiAgY29uc3QgaW5pdGlhbGl6ZU1hcEFyZWFzID0gKGFyZWFzKSA9PiB7XG4gICAgY29uc3QgbWFwcGVkV2l0aENvbG9yID0gYXJlYXMubWFwKChhOiBhbnkpID0+IHtcbiAgICAgIGEud2JlX2Rhc2hib2FyZF9uYW1lID0gYS5uYW1lO1xuICAgICAgYS5zaG93Q29sb3JPbmx5SW5Cb3JkZXJzID0gdHJ1ZTtcblxuICAgICAgaWYgKCFhLnNhbXBsZV9hY3RpdmUpIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwO1xuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzSW5mZWN0ZWQoYS5udmwpKSB7XG4gICAgICAgIGEuY29sb3IgPSB0aGVtZS5jb2xvclNjaGVtZS5kYXRhLlIxMDA7XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLmRhdGEuRzEwMDtcbiAgICAgICAgcmV0dXJuIGE7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBzZXRNYXBBcmVhcyhtYXBwZWRXaXRoQ29sb3IpO1xuICB9O1xuXG4gIGNvbnN0IHpvb21Ub0FyZWEgPSAoYXJlYSkgPT4ge1xuICAgIGFyZWEuc2hhcGVfZGF0YSAhPT0gdW5kZWZpbmVkICYmIHNldE1hcFpvb20oYXJlYS5zaGFwZV9kYXRhKTtcbiAgfTtcblxuICBjb25zdCB6b29tQWxsQXJlYXMgPSAoZGF0YSkgPT4ge1xuICAgIGNvbnN0IHNoYXBlRGF0YSA9IGRhdGEubWFwKChkYXR1bSkgPT4ge1xuICAgICAgcmV0dXJuIGRhdHVtLnNoYXBlX2RhdGE7XG4gICAgfSk7XG5cbiAgICBzZXRNYXBab29tKHNoYXBlRGF0YSk7XG4gIH07XG5cbiAgY29uc3QgaXNJbmZlY3RlZCA9IChudmw6IG51bWJlcikgPT4ge1xuICAgIGlmIChsZXZlbE5WTChudmwpID09PSAnY2xlYW4nKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxldmVsTlZMKG52bCkgPT09ICdsb3cnIHx8XG4gICAgICBsZXZlbE5WTChudmwpID09PSAnbWVkaXVtJyB8fFxuICAgICAgbGV2ZWxOVkwobnZsKSA9PT0gJ2hpZ2gnXG4gICAgKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PlxuICAgICAgc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgKTtcblxuICBjb25zdCBkaXI6IERpcmVjdGlvbiA9XG4gICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyBEaXJlY3Rpb24uUlRMIDogRGlyZWN0aW9uLkxUUjtcblxuICBjb25zdCBmaWx0ZXJSZXN1bHRzQW5kU2V0Um93cyA9ICh0ZXh0OiBzdHJpbmcpID0+IHtcbiAgICBsZXQgcmVzdWx0cyA9IGN1cnJlbnREYXRhLmZpbHRlcihmdW5jdGlvbiAoZWw6IGFueSkge1xuICAgICAgcmV0dXJuIGVsLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXh0LnRvTG93ZXJDYXNlKCkpO1xuICAgIH0pO1xuXG4gICAgc2V0Um93cyhyZXN1bHRzKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVPblJvd0V4cGFuZCA9IChleHBhbmRlZCwgcm93KSA9PiB7XG4gICAgZXhwYW5kZWQgJiYgem9vbVRvQXJlYShyb3cpO1xuICAgICFleHBhbmRlZCAmJiB6b29tQWxsQXJlYXMoZGF0YSk7XG4gIH07XG5cbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlOYW1lID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayA9IChwYXRob2dlbikgPT4ge1xuICAgIGFuYWx5dGljc1RyYWNrKCdXQkUgU3RhdHVzIFJlcG9ydCAtIFBhdGhvZ2VuIGNoYW5nZSBjbGlja2VkJywge1xuICAgICAgcGF0aG9nZW46IHBhdGhvZ2VuLFxuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgc2V0U2VsZWN0ZWRQYXRob2dlbihwYXRob2dlbik7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC93YmVfZGFzaGJvYXJkL2luZGV4P2xvY2FsZT0ke25hdkNvbnRleHQubG9jYWxlfSZ3YXRlcl9hdXRob3JpdHlfaWQ9JHt3YXRlckF1dGhvcml0eUlkfSZwYXRob2dlbj0ke3BhdGhvZ2VufWAsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBmZXRjaEZvclRhYlNlbGVjdGlvbiA9ICh0YWIpID0+IHtcbiAgICBzZXRGZXRjaGluZyh0cnVlKTtcbiAgICBheGlvcy5nZXQoZmV0Y2hVcmwodGFiKSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGxldCByZXNwb25zZURhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG5cbiAgICAgIHNldEZldGNoaW5nKGZhbHNlKTtcbiAgICAgIHNldFRhYnMoREVGQVVMVF9UQUJTKTtcbiAgICAgIHNldFJvd3MocmVzcG9uc2VEYXRhKTtcbiAgICAgIHNldEN1cnJlbnREYXRhKHJlc3BvbnNlRGF0YSk7XG4gICAgICBpbml0aWFsaXplTWFwQXJlYXMocmVzcG9uc2VEYXRhKTtcbiAgICAgIHpvb21BbGxBcmVhcyhyZXNwb25zZURhdGEpO1xuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVRhYlNlbGVjdGlvbkNsaWNrID0gKHRhYikgPT4ge1xuICAgIGlmICghaXNGZXRjaGluZykge1xuICAgICAgc2V0U2VsZWN0ZWRUYWIodGFiKTtcblxuICAgICAgaWYgKHRhYiAhPT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY3VzdG9tJykpIHtcbiAgICAgICAgdGFiID1cbiAgICAgICAgICB0YWIgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmNpdGllcycpXG4gICAgICAgICAgICA/ICdjaXR5J1xuICAgICAgICAgICAgOiB0YWIgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLm1vbml0b3JlZF9hcmVhcycpXG4gICAgICAgICAgICA/ICdtb25pdG9yZWQnXG4gICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgIGZldGNoRm9yVGFiU2VsZWN0aW9uKHRhYik7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGluaXRpYWxpemVEcmlsbGVkQXJlYSA9IChyZXNwb25zZSkgPT4ge1xuICAgIGxldCBkYXRhID0gcmVzcG9uc2UuZGF0YS5kYXRhO1xuICAgIHNldFJvd3MoZGF0YSk7XG4gICAgc2V0Q3VycmVudERhdGEoZGF0YSk7XG4gICAgaW5pdGlhbGl6ZU1hcEFyZWFzKGRhdGEpO1xuICAgIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVBcmVhQ2xpY2sgPSAoYXJlYSkgPT4ge1xuICAgIHpvb21Ub0FyZWEoYXJlYSk7XG5cbiAgICBpZiAoYXJlYS5oYXNfY2hpbGRyZW4pIHtcbiAgICAgIHNldFRhYnMoWy4uLnRhYnMsIGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmN1c3RvbScpXSk7XG4gICAgICBzZXRTZWxlY3RlZFRhYihpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jdXN0b20nKSk7XG5cbiAgICAgIGF4aW9zLmdldChmZXRjaFVybChhcmVhLmlkKSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgaW5pdGlhbGl6ZURyaWxsZWRBcmVhKHJlc3BvbnNlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBpbml0aWFsaXplQ29tcG9uZW50ID0gKCkgPT4ge1xuICAgIHNldEN1cnJlbnREYXRhKGRhdGEpO1xuICAgIHNldFJvd3MoZGF0YSk7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1dCRSBTdGF0dXMgUmVwb3J0Jywge1xuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgZGlzcGF0Y2godXBkYXRlTmF2Q29udGV4dCh7IG5hbWU6ICd3YmVfZGFzaGJvYXJkJyB9KSk7XG5cbiAgICBheGlvcy5nZXQoZmV0Y2hVcmwoJ21vbml0b3JlZCcpKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgbGV0IGRhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG5cbiAgICAgIGluaXRpYWxpemVNYXBBcmVhcyhkYXRhKTtcbiAgICAgIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgICB9KTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNGZXRjaGluZyAmJiBkYXRhICE9PSBudWxsKSB7XG4gICAgICBpbml0aWFsaXplQ29tcG9uZW50KCk7XG4gICAgfVxuICB9LCBbaXNGZXRjaGluZywgc2VsZWN0ZWRQYXRob2dlbiwgZGF0YV0pO1xuXG4gIGNvbnN0IHBhdGhvZ2VuVGl0bGUgPVxuICAgICghaXNGZXRjaGluZ1BhdGhvZ2VucyAmJlxuICAgICAgcGF0aG9nZW5zPy5maW5kKFxuICAgICAgICAoaXRlbSkgPT4gaXRlbS50b0xvd2VyQ2FzZSgpID09PSBzZWxlY3RlZFBhdGhvZ2VuLnRvTG93ZXJDYXNlKCksXG4gICAgICApKSB8fFxuICAgICcnO1xuICBjb25zdCBkcm9wRG93blRpdGxlID1cbiAgICBnZXRQYXRob2dlbk5hbWUocGF0aG9nZW5UaXRsZSkgfHxcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8Q29udGVudD5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8aDE+XG4gICAgICAgICAgICB7YCR7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQudGFibGVfbmFtZScpfSAoJHtcbiAgICAgICAgICAgICAgZ2V0UGF0aG9nZW5OYW1lKHBhdGhvZ2VuVGl0bGUpIHx8IGdldFBhdGhvZ2VuTmFtZShnZXRQYXRob2dlbigpKVxuICAgICAgICAgICAgfSlgfVxuICAgICAgICAgIDwvaDE+XG4gICAgICAgICAgeyFpc0ZldGNoaW5nUGF0aG9nZW5zICYmIHBhdGhvZ2Vucy5sZW5ndGggPT09IDAgJiYgKFxuICAgICAgICAgICAgPGgzPntpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKX08L2gzPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7IWlzRmV0Y2hpbmdQYXRob2dlbnMgJiYgcGF0aG9nZW5zLmxlbmd0aCA+IDEgJiYgKFxuICAgICAgICAgICAgICA8RHJvcGRvd25CdXR0b25cbiAgICAgICAgICAgICAgICBpZD1cImRyb3Bkb3duLWJhc2ljLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYnV0dG9uIGJ1dHRvbi0tc29ydCd9XG4gICAgICAgICAgICAgICAgdGl0bGU9e2Ryb3BEb3duVGl0bGUgKyAnICd9XG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7cGF0aG9nZW5zLm1hcCgocGF0aG9nZW4pID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtwYXRob2dlbn1cbiAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayhwYXRob2dlbil9XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHRBbGlnbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyAncmlnaHQnIDogJ2xlZnQnLFxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7Z2V0UGF0aG9nZW5OYW1lKHBhdGhvZ2VuKX1cbiAgICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5JdGVtPlxuICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgPC9Ecm9wZG93bkJ1dHRvbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9BY3Rpb25zQ29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPEZpcnN0U2VjdGlvbj5cbiAgICAgICAgICA8V2JlU3VtbWFyeUJhclxuICAgICAgICAgICAgcGF0aG9nZW49e3NlbGVjdGVkUGF0aG9nZW59XG4gICAgICAgICAgICB3YXRlckF1dGhvcml0eUlkPXt3YXRlckF1dGhvcml0eUlkfVxuICAgICAgICAgICAgaXNSdGw9e2lzUnRsfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvRmlyc3RTZWN0aW9uPlxuXG4gICAgICAgIDxTZWNvbmRTZWN0aW9uPlxuICAgICAgICAgIDxTZWFyY2hJbnB1dCBvbkNoYW5nZUJlaGF2aW9yPXtmaWx0ZXJSZXN1bHRzQW5kU2V0Um93c30gLz5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3RhYnMtY29udGFpbmVyJ30+XG4gICAgICAgICAgICA8VGFic1xuICAgICAgICAgICAgICB0YWJzPXt0YWJzfVxuICAgICAgICAgICAgICBzZWxlY3RlZFRhYj17c2VsZWN0ZWRUYWJ9XG4gICAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2s9e2hhbmRsZVRhYlNlbGVjdGlvbkNsaWNrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8TWFwVGFibGVDb250YWluZXIgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIHtpc0ZldGNoaW5nICYmIDxTcGlubmVyIC8+fVxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydtYXAtY29udGFpbmVyJ30+XG4gICAgICAgICAgICAgIHshaXNGZXRjaGluZyAmJiByb3dzICE9PSBudWxsICYmIG1hcFpvb20gIT09IG51bGwgJiYgKFxuICAgICAgICAgICAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICAgICAgICAgICAgPE1hcFxuICAgICAgICAgICAgICAgICAgICBhcmVhcz17bWFwQXJlYXN9XG4gICAgICAgICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXttYXBab29tfVxuICAgICAgICAgICAgICAgICAgICBlZGdlcz17W119XG4gICAgICAgICAgICAgICAgICAgIHBvaW50cz17W119XG4gICAgICAgICAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxEYXRhfVxuICAgICAgICAgICAgICAgICAgICBtYXBCb3hTdHlsZT17TUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEV9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgeyFpc0ZldGNoaW5nICYmIHJvd3MgIT09IG51bGwgJiYgKFxuICAgICAgICAgICAgICA8S2FuZG9UYWJsZVxuICAgICAgICAgICAgICAgIG9uUm93RXhwYW5kVG9nZ2xlZD17aGFuZGxlT25Sb3dFeHBhbmR9XG4gICAgICAgICAgICAgICAgZGF0YT17cm93c31cbiAgICAgICAgICAgICAgICBjb2x1bW5zPXtjb2x1bW5zfVxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbj17ZGlyfVxuICAgICAgICAgICAgICAgIGV4cGFuZGFibGVSb3dzPXt0cnVlfVxuICAgICAgICAgICAgICAgIHBhZ2luYXRpb25QZXJQYWdlPXtUQUJMRV9ST1dTX1BFUl9QQUdFfVxuICAgICAgICAgICAgICAgIHJvd0NvbXBvbmVudD17RXhwYW5kZWRDb21wb25lbnR9XG4gICAgICAgICAgICAgICAgZXhwYW5kYWJsZVJvd3NDb21wb25lbnRQcm9wcz17eyBwYXRob2dlbjogc2VsZWN0ZWRQYXRob2dlbiB9fVxuICAgICAgICAgICAgICAgIGRlZmF1bHRTb3J0RmllbGRJZD17M31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9NYXBUYWJsZUNvbnRhaW5lcj5cbiAgICAgICAgPC9TZWNvbmRTZWN0aW9uPlxuICAgICAgPC9Db250ZW50PlxuICAgIDwvPlxuICApO1xufTtcblxuY29uc3QgUm93TmFtZSA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgICB3aWR0aDogMTAwJTtcbiAgICAgIFxuICAgIC5yb3dfbmFtZSB7XG4gICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW47ICAgICAgXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCA0cHg7XG4gICAgICAgIFxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLWNsZWFuIHtcbiAgICAgICAgIGNvbG9yOiAjMjdhNjNhOyBcbiAgICAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzI3YTYzYTsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi0taW5mZWN0ZWQge1xuICAgICAgICAgIGNvbG9yOiAjZTEwMDM2O1xuICAgICAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2UxMDAzNjsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi0taW5hY3RpdmUtc2FtcGxpbmcge1xuICAgICAgICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwfTtcbiAgICAgICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7dGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9OyAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgJHsocCkgPT4gKHAuaXNSdGwgPyAncmlnaHQ6IDUxcHg7JyA6ICdsZWZ0OiA1MXB4OycpfVxuICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgICB3aWR0aDogNy41ZW07XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBgO1xuXG5jb25zdCBBY3Rpb25zQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbmNvbnN0IEZpcnN0U2VjdGlvbiA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbjogODVweCAwIDIwcHggMDtcbmA7XG5cbmNvbnN0IFNlY29uZFNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmNmY2ZjO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTdlN2U3O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG5gO1xuXG5jb25zdCBNYXBUYWJsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAubWFwLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgLmV2ZW50LXRpbWVyYW5nZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjbWFwIHtcbiAgICAgIGhlaWdodDogNjl2aDtcbiAgICAgIHdpZHRoOiAzMHZ3O1xuICAgIH1cbiAgfVxuICBbZGF0YS10ZXN0aWQ9J2thbmRvLXRhYmxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIFtkYXRhLWNvbHVtbi1pZD0nMSddIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgLm5hbWUge1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICB3aWR0aDogY2FsYygxMjBweCArIDF2dyk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuMnMgY3ViaWMtYmV6aWVyKDAuNjUsIDAuMDUsIDAuMzYsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zcGlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuYDtcblxuY29uc3QgQ29udGVudCA9IHN0eWxlZC5kaXZgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICBwYWRkaW5nOiA2MHB4IDYwcHg7XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLGVBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFVBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGlCQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxhQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxrQkFBQSxHQUFBVCxPQUFBO0FB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kando-env/kando-ui",
3
- "version": "1.2.357",
3
+ "version": "1.2.358-alpha.0",
4
4
  "main": "lib/index.js",
5
5
  "author": "Nadav(Private) <nadavk72@gmail.com>",
6
6
  "scripts": {