@kando-env/kando-ui 1.2.228-alpha.116 → 1.2.228-alpha.118
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/Widgets/Map/Map.js
CHANGED
|
@@ -127,7 +127,7 @@ var Map = function Map(_ref) {
|
|
|
127
127
|
points: points,
|
|
128
128
|
hideEdges: hideEdges,
|
|
129
129
|
allowUnmonitoredDescendants: includeUnmonitoredDescendantsForEdges
|
|
130
|
-
}));
|
|
130
|
+
}), memoizedPoints);
|
|
131
131
|
break;
|
|
132
132
|
case 'Medium':
|
|
133
133
|
payload = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Edges.default, {
|
|
@@ -181,6 +181,9 @@ var Map = function Map(_ref) {
|
|
|
181
181
|
(0, _react.useEffect)(function () {
|
|
182
182
|
(0, _MapUtils.initializeMap)(mapZoomLevel, mapBoxStyle, _theme.leafletMap.satellite, mapRef, dispatch, _MapUtils.isValidArea, areaToCenterBy, setMapZoomLevel);
|
|
183
183
|
return function cleanup() {
|
|
184
|
+
factoriesClusterGroup.doneCreating = false;
|
|
185
|
+
wwtpsLayerGroup.doneCreating = false;
|
|
186
|
+
collectorsLayerGroup.doneCreating = false;
|
|
184
187
|
// @ts-ignore
|
|
185
188
|
mapRef.current.remove();
|
|
186
189
|
dispatch((0, _actions.storeMap)(undefined));
|
|
@@ -199,13 +202,13 @@ var Map = function Map(_ref) {
|
|
|
199
202
|
className: " map-container ".concat(global_data.sidenavExpanded ? '' : 'map-container--sidenav-collapsed')
|
|
200
203
|
}, /*#__PURE__*/_react.default.createElement(_ErrorBoundary.default, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
201
204
|
id: "map"
|
|
202
|
-
}), (0, _MapUtils.shouldLoadMapObjects)(global_data, mapRef, edges, points) && /*#__PURE__*/_react.default.createElement(
|
|
205
|
+
}), (0, _MapUtils.shouldLoadMapObjects)(global_data, mapRef, edges, points) && /*#__PURE__*/_react.default.createElement(_AreaPolygons.AreaPolygons, {
|
|
203
206
|
areas: areas,
|
|
204
207
|
map: mapRef.current,
|
|
205
208
|
L: L,
|
|
206
209
|
areaToCenterBy: areaToCenterBy,
|
|
207
210
|
mapZoom: mapZoomLevel
|
|
208
|
-
})
|
|
211
|
+
}), (0, _MapUtils.shoudLoadDependentMapObjects)(edges, areas, global_data, mapRef) && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, memoizedEvent, memoizedZoomControl, children))));
|
|
209
212
|
};
|
|
210
213
|
exports.Map = Map;
|
|
211
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0UmVkdXgiLCJfYWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9BcmVhUG9seWdvbnMiLCJfRWRnZXMiLCJfUG9pbnRNYXJrZXJzIiwiX0V2ZW50IiwiX01hcFV0aWxzIiwiX3RoZW1lIiwiX2kxOG4iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIk1hcCIsIl9yZWYiLCJhcmVhcyIsImVkZ2VzIiwicG9pbnRzIiwiZ2xvYmFsX2RhdGEiLCJhcmVhVG9DZW50ZXJCeSIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsIl9yZWYkaGlkZUVkZ2VzIiwiaGlkZUVkZ2VzIiwiX3JlZiRtYXBCb3hTdHlsZSIsIm1hcEJveFN0eWxlIiwibGVhZmxldE1hcCIsIm1hcERlZmF1bHQiLCJjaGlsZHJlbiIsIl9yZWYkaW5jbHVkZVVubW9uaXRvciIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsIl9yZWYkaW5jbHVkZVVubW9uaXRvcjIiLCJpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzIiwiX3JlZiRmb3JFdmVudHNWaWV3IiwiZm9yRXZlbnRzVmlldyIsIm1hcCIsIm1hcFJlZiIsInVzZVJlZiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJtYXBab29tTGV2ZWwiLCJzZXRNYXBab29tTGV2ZWwiLCJldmVudHNEYXRhIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiaG92ZXJlZEV2ZW50UHJlc2VudCIsInVzZU1lbW8iLCJ1bmRlZmluZWQiLCJmb2N1c2VkRXZlbnRQcmVzZW50IiwiX3VzZVN0YXRlMyIsIndpbmRvdyIsImN1c3RvbUxlYWZsZXQiLCJtYXJrZXJDbHVzdGVyR3JvdXAiLCJzcGlkZXJmeU9uTWF4Wm9vbSIsInNob3dDb3ZlcmFnZU9uSG92ZXIiLCJ6b29tVG9Cb3VuZHNPbkNsaWNrIiwiYW5pbWF0ZSIsImRpc2FibGVDbHVzdGVyaW5nQXRab29tIiwicmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHMiLCJjaHVua2VkTG9hZGluZyIsImljb25DcmVhdGVGdW5jdGlvbiIsImNsdXN0ZXIiLCJEaXZJY29uIiwiaHRtbCIsImNvbmNhdCIsIl9jaGlsZENvdW50IiwiaTE4biIsInQiLCJjbGFzc05hbWUiLCJpY29uU2l6ZSIsIlBvaW50IiwiX3VzZVN0YXRlNCIsImZhY3Rvcmllc0NsdXN0ZXJHcm91cCIsIl91c2VTdGF0ZTUiLCJsYXllckdyb3VwIiwiX3VzZVN0YXRlNiIsInd3dHBzTGF5ZXJHcm91cCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiY29sbGVjdG9yc0xheWVyR3JvdXAiLCJtZW1vaXplZFBvaW50cyIsImlzRmV0Y2hpbmciLCJjdXJyZW50IiwiY3JlYXRlRWxlbWVudCIsIlBvaW50TWFya2VycyIsInJlcmVuZGVyIiwiem9vbUxldmVscyIsImZhY3Rvcmllc0dyb3VwIiwid3d0cHNHcm91cCIsImNvbGxlY3RvcnNHcm91cCIsInpvb21SdWxlc0ZvckV2ZW50c1ZpZXciLCJwYXlsb2FkIiwiRnJhZ21lbnQiLCJhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHMiLCJ6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcyIsImNvbnNvbGUiLCJ3YXJuIiwibWVtb2l6ZWRab29tQ29udHJvbCIsIm1lbW9pemVkRXZlbnQiLCJmb2N1c2VkIiwiaG92ZXJlZCIsIkV2ZW50IiwiZXZlbnQiLCJpbmNsdWRlTmV0d29yayIsImV2ZW50RmlsdGVyUGFyYW0iLCJ1c2VFZmZlY3QiLCJpbml0aWFsaXplTWFwIiwic2F0ZWxsaXRlIiwiaXNWYWxpZEFyZWEiLCJjbGVhbnVwIiwicmVtb3ZlIiwic3RvcmVNYXAiLCJ3YXRlckF1dGhvcml0eUlkIiwiYXJlYUZvY3VzTG9naWMiLCJzaWRlbmF2RXhwYW5kZWQiLCJpZCIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiQXJlYVBvbHlnb25zIiwibWFwWm9vbSIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL01hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCAnbGVhZmxldC5tYXJrZXJjbHVzdGVyJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzdG9yZU1hcCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBJR2xvYmFsU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL21vZGVscy9JR2xvYmFsU3RhdGUnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgeyBBcmVhUG9seWdvbnMgfSBmcm9tICcuL2FyZWFzL0FyZWFQb2x5Z29ucyc7XG5pbXBvcnQgRWRnZXMgZnJvbSAnLi9lZGdlcy9FZGdlcyc7XG5pbXBvcnQgJy4vTWFwLnNjc3MnO1xuaW1wb3J0ICcuL3BvaW50cy9Qb2ludEljb24uc2Nzcyc7XG5pbXBvcnQgeyBQb2ludE1hcmtlcnMgfSBmcm9tICcuL3BvaW50cy9Qb2ludE1hcmtlcnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IEV2ZW50IH0gZnJvbSAnLi9ldmVudHMvRXZlbnQnO1xuaW1wb3J0IHtcbiAgYXJlYUZvY3VzTG9naWMsXG4gIGluaXRpYWxpemVNYXAsXG4gIGlzVmFsaWRBcmVhLFxuICBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzLFxuICBzaG91bGRMb2FkTWFwT2JqZWN0cyxcbiAgem9vbUxldmVscyxcbn0gZnJvbSAnLi9NYXBVdGlscyc7XG5pbXBvcnQgeyBsZWFmbGV0TWFwIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcbnJlcXVpcmUoJ2xlYWZsZXQubWFya2VyY2x1c3RlcicpO1xuXG5pbnRlcmZhY2UgTWFwUHJvcHMge1xuICBhcmVhczogSUFyZWFbXTtcbiAgZWRnZXM/OiBJRWRnZVtdO1xuICBwb2ludHM/OiBJUG9pbnRbXTtcbiAgZ2xvYmFsX2RhdGE6IElHbG9iYWxTdGF0ZTtcbiAgYXJlYVRvQ2VudGVyQnk/OiBhbnk7XG4gIGZvY3VzZWRFdmVudD86IElFdmVudCB8IG51bGw7XG4gIGhvdmVyZWRFdmVudD86IElFdmVudCB8IG51bGw7XG4gIGhpZGVFZGdlcz86IGJvb2xlYW47XG4gIG1hcEJveFN0eWxlPzogc3RyaW5nO1xuICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM/OiBib29sZWFuO1xuICBpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzPzogYm9vbGVhbjtcbiAgZm9yRXZlbnRzVmlldzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IE1hcDogUmVhY3QuRkM8TWFwUHJvcHM+ID0gKHtcbiAgYXJlYXMsXG4gIGVkZ2VzLFxuICBwb2ludHMsXG4gIGdsb2JhbF9kYXRhLFxuICBhcmVhVG9DZW50ZXJCeSxcbiAgZm9jdXNlZEV2ZW50LFxuICBob3ZlcmVkRXZlbnQsXG4gIGhpZGVFZGdlcyA9IGZhbHNlLFxuICBtYXBCb3hTdHlsZSA9IGxlYWZsZXRNYXAubWFwRGVmYXVsdCxcbiAgY2hpbGRyZW4sXG4gIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyA9IHRydWUsXG4gIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMgPSBmYWxzZSxcbiAgZm9yRXZlbnRzVmlldyA9IGZhbHNlLFxufSkgPT4ge1xuICBjb25zdCB7IG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IG1hcFJlZiA9IHVzZVJlZjxMLk1hcD4obnVsbCk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgW21hcFpvb21MZXZlbCwgc2V0TWFwWm9vbUxldmVsXSA9IHVzZVN0YXRlKDIpO1xuICBjb25zdCBldmVudHNEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZXZlbnRzX2RhdGEsXG4gICk7XG4gIGNvbnN0IGhvdmVyZWRFdmVudFByZXNlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gaG92ZXJlZEV2ZW50ICE9PSBudWxsICYmIGhvdmVyZWRFdmVudCAhPT0gdW5kZWZpbmVkO1xuICB9LCBbaG92ZXJlZEV2ZW50XSk7XG5cbiAgY29uc3QgZm9jdXNlZEV2ZW50UHJlc2VudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgZm9jdXNlZEV2ZW50ICE9PSB1bmRlZmluZWQ7XG4gIH0sIFtmb2N1c2VkRXZlbnRdKTtcblxuICBjb25zdCBbZmFjdG9yaWVzQ2x1c3Rlckdyb3VwXSA9IHVzZVN0YXRlKFxuICAgIHdpbmRvdy5jdXN0b21MZWFmbGV0Lm1hcmtlckNsdXN0ZXJHcm91cCh7XG4gICAgICBzcGlkZXJmeU9uTWF4Wm9vbTogZmFsc2UsXG4gICAgICBzaG93Q292ZXJhZ2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgIHpvb21Ub0JvdW5kc09uQ2xpY2s6IHRydWUsXG4gICAgICBhbmltYXRlOiB0cnVlLFxuICAgICAgZGlzYWJsZUNsdXN0ZXJpbmdBdFpvb206IDE1LFxuICAgICAgcmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHM6IGZhbHNlLFxuICAgICAgY2h1bmtlZExvYWRpbmc6IHRydWUsXG4gICAgICBpY29uQ3JlYXRlRnVuY3Rpb246IGZ1bmN0aW9uIChjbHVzdGVyKSB7XG4gICAgICAgIHJldHVybiBuZXcgTC5EaXZJY29uKHtcbiAgICAgICAgICBodG1sOiBgPGRpdj48c3Bhbj4ke1xuICAgICAgICAgICAgY2x1c3Rlci5fY2hpbGRDb3VudFxuICAgICAgICAgIH08L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0nbWFya2VyLWNsdXN0ZXItbmFtZSc+JHtpMThuLnQoXG4gICAgICAgICAgICAnaW5kdXN0cmllcycsXG4gICAgICAgICAgKX08L2Rpdj5gLFxuICAgICAgICAgIGNsYXNzTmFtZTogJ21hcmtlci1jbHVzdGVyJyxcbiAgICAgICAgICBpY29uU2l6ZTogbmV3IEwuUG9pbnQoNDAsIDQwKSxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgIH0pLFxuICApO1xuXG4gIGNvbnN0IFt3d3Rwc0xheWVyR3JvdXBdID0gdXNlU3RhdGUoTC5sYXllckdyb3VwKCkpO1xuICBjb25zdCBbY29sbGVjdG9yc0xheWVyR3JvdXBdID0gdXNlU3RhdGUoTC5sYXllckdyb3VwKCkpO1xuICAvL2NvbnN0IFtmYWN0b3JpZXNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcblxuICBjb25zdCBtZW1vaXplZFBvaW50cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICAhZXZlbnRzRGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJiAoXG4gICAgICAgIDxQb2ludE1hcmtlcnNcbiAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgIHBvaW50cz17cG9pbnRzfVxuICAgICAgICAgIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cz17aW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzfVxuICAgICAgICAgIHJlcmVuZGVyPXt6b29tTGV2ZWxzW21hcFpvb21MZXZlbF19XG4gICAgICAgICAgZmFjdG9yaWVzR3JvdXA9e2ZhY3Rvcmllc0NsdXN0ZXJHcm91cH1cbiAgICAgICAgICB3d3Rwc0dyb3VwPXt3d3Rwc0xheWVyR3JvdXB9XG4gICAgICAgICAgY29sbGVjdG9yc0dyb3VwPXtjb2xsZWN0b3JzTGF5ZXJHcm91cH1cbiAgICAgICAgICBmb3JFdmVudHNWaWV3PXtmYWxzZX1cbiAgICAgICAgLz5cbiAgICAgIClcbiAgICApO1xuICB9LCBbXG4gICAgZXZlbnRzRGF0YS5pc0ZldGNoaW5nLFxuICAgIG1hcFJlZi5jdXJyZW50LFxuICAgIHBvaW50cyxcbiAgICBmb2N1c2VkRXZlbnRQcmVzZW50LFxuICAgIG1hcFpvb21MZXZlbCxcbiAgICBmYWN0b3JpZXNDbHVzdGVyR3JvdXAsXG4gICAgd3d0cHNMYXllckdyb3VwLFxuICAgIGNvbGxlY3RvcnNMYXllckdyb3VwLFxuICBdKTtcblxuICAvLyBjb25zdCBhY3RpdmF0ZVpvb21Db250cm9sRm9ySWNvbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgLy8gICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJiBpY29uWm9vbUNvbnRyb2wobWFwUmVmLmN1cnJlbnQpO1xuICAvLyB9LCBbbWFwUmVmLmN1cnJlbnQsIHBvaW50cywgZm9jdXNlZEV2ZW50UHJlc2VudF0pO1xuXG4gIGNvbnN0IHpvb21SdWxlc0ZvckV2ZW50c1ZpZXcgPSAocGF5bG9hZCkgPT4ge1xuICAgIHBheWxvYWQgPSAoXG4gICAgICA8PlxuICAgICAgICA8RWRnZXNcbiAgICAgICAgICBlZGdlcz17ZWRnZXMhfVxuICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgTD17TH1cbiAgICAgICAgICBwb2ludHM9e3BvaW50cyF9XG4gICAgICAgICAgaGlkZUVkZ2VzPXtoaWRlRWRnZXN9XG4gICAgICAgICAgYWxsb3dVbm1vbml0b3JlZERlc2NlbmRhbnRzPXtpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzfVxuICAgICAgICAvPlxuICAgICAgICB7bWVtb2l6ZWRQb2ludHN9XG4gICAgICA8Lz5cbiAgICApO1xuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH07XG5cbiAgY29uc3Qgem9vbVJ1bGVzRm9yRGFzaGFib2FyZE1hcHMgPSAocGF5bG9hZCkgPT4ge1xuICAgIGNvbnNvbGUud2Fybih6b29tTGV2ZWxzW21hcFpvb21MZXZlbF0pO1xuXG4gICAgc3dpdGNoICh6b29tTGV2ZWxzW21hcFpvb21MZXZlbF0pIHtcbiAgICAgIGNhc2UgJ1NtYWxsJzpcbiAgICAgICAgcGF5bG9hZCA9IChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPEVkZ2VzXG4gICAgICAgICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgICAgICAgaGlkZUVkZ2VzPXtoaWRlRWRnZXN9XG4gICAgICAgICAgICAgIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz17XG4gICAgICAgICAgICAgICAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ01lZGl1bSc6XG4gICAgICAgIHBheWxvYWQgPSAoXG4gICAgICAgICAgPD5cbiAgICAgICAgICAgIDxFZGdlc1xuICAgICAgICAgICAgICBlZGdlcz17ZWRnZXMhfVxuICAgICAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgICAgICBMPXtMfVxuICAgICAgICAgICAgICBwb2ludHM9e3BvaW50cyF9XG4gICAgICAgICAgICAgIGhpZGVFZGdlcz17aGlkZUVkZ2VzfVxuICAgICAgICAgICAgICBhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHM9e1xuICAgICAgICAgICAgICAgIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXNcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIHttZW1vaXplZFBvaW50c31cbiAgICAgICAgICA8Lz5cbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdNTGFyZ2UnOlxuICAgICAgICBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0xhcmdlJzpcbiAgICAgICAgcGF5bG9hZCA9IDw+e21lbW9pemVkUG9pbnRzfTwvPjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdYTGFyZ2UnOlxuICAgICAgICBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHBheWxvYWQgPSA8PnttZW1vaXplZFBvaW50c308Lz47XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9O1xuXG4gIGNvbnN0IG1lbW9pemVkWm9vbUNvbnRyb2wgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBsZXQgcGF5bG9hZCA9IDw+PC8+O1xuICAgIGlmIChmb3JFdmVudHNWaWV3KSBwYXlsb2FkID0gem9vbVJ1bGVzRm9yRXZlbnRzVmlldyhwYXlsb2FkKTtcbiAgICBpZiAoIWZvckV2ZW50c1ZpZXcpIHBheWxvYWQgPSB6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcyhwYXlsb2FkKTtcblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9LCBbbWFwWm9vbUxldmVsLCBldmVudHNEYXRhLmlzRmV0Y2hpbmcsIGZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBwb2ludHNdKTtcblxuICBjb25zdCBtZW1vaXplZEV2ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGZvY3VzZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGZvY3VzZWRFdmVudCEuZm9jdXNlZCA9IGZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgICBmb2N1c2VkRXZlbnQhLmhvdmVyZWQgPSAhZm9jdXNlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoaG92ZXJlZEV2ZW50UHJlc2VudCkge1xuICAgICAgaG92ZXJlZEV2ZW50IS5ob3ZlcmVkID0gaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICAgIGhvdmVyZWRFdmVudCEuZm9jdXNlZCA9ICFob3ZlcmVkRXZlbnRQcmVzZW50O1xuICAgIH1cblxuICAgIGlmICghaG92ZXJlZEV2ZW50UHJlc2VudCAmJiAhZm9jdXNlZEV2ZW50UHJlc2VudCkgcmV0dXJuIDw+PC8+O1xuICAgIHJldHVybiAoXG4gICAgICA8RXZlbnRcbiAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudCEgfHwgaG92ZXJlZEV2ZW50IX1cbiAgICAgICAgbWFwPXttYXB9XG4gICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgaW5jbHVkZU5ldHdvcms9eyFob3ZlcmVkRXZlbnRQcmVzZW50fVxuICAgICAgLz5cbiAgICApO1xuICB9LCBbZm9jdXNlZEV2ZW50LCBob3ZlcmVkRXZlbnQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGluaXRpYWxpemVNYXAoXG4gICAgICBtYXBab29tTGV2ZWwsXG4gICAgICBtYXBCb3hTdHlsZSxcbiAgICAgIGxlYWZsZXRNYXAuc2F0ZWxsaXRlLFxuICAgICAgbWFwUmVmLFxuICAgICAgZGlzcGF0Y2gsXG4gICAgICBpc1ZhbGlkQXJlYSxcbiAgICAgIGFyZWFUb0NlbnRlckJ5LFxuICAgICAgc2V0TWFwWm9vbUxldmVsLFxuICAgICk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIG1hcFJlZi5jdXJyZW50LnJlbW92ZSgpO1xuICAgICAgZGlzcGF0Y2goc3RvcmVNYXAodW5kZWZpbmVkKSk7XG4gICAgfTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghbWFwUmVmLmN1cnJlbnQpIHtcbiAgICAgIGluaXRpYWxpemVNYXAoXG4gICAgICAgIG1hcFpvb21MZXZlbCxcbiAgICAgICAgbWFwQm94U3R5bGUsXG4gICAgICAgIGxlYWZsZXRNYXAuc2F0ZWxsaXRlLFxuICAgICAgICBtYXBSZWYsXG4gICAgICAgIGRpc3BhdGNoLFxuICAgICAgICBpc1ZhbGlkQXJlYSxcbiAgICAgICAgYXJlYVRvQ2VudGVyQnksXG4gICAgICAgIHNldE1hcFpvb21MZXZlbCxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGFyZWFGb2N1c0xvZ2ljKFxuICAgICAgICBtYXBSZWYsXG4gICAgICAgIGlzVmFsaWRBcmVhLFxuICAgICAgICBhcmVhVG9DZW50ZXJCeSA/IGFyZWFUb0NlbnRlckJ5IDogYXJlYXNbMF0sXG4gICAgICApO1xuICAgIH1cbiAgfSwgW2FyZWFUb0NlbnRlckJ5LCBhcmVhc10pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJrZC1tYXAtY29udGFpbmVyXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17YCBtYXAtY29udGFpbmVyICR7XG4gICAgICAgICAgZ2xvYmFsX2RhdGEuc2lkZW5hdkV4cGFuZGVkID8gJycgOiAnbWFwLWNvbnRhaW5lci0tc2lkZW5hdi1jb2xsYXBzZWQnXG4gICAgICAgIH1gfVxuICAgICAgPlxuICAgICAgICA8RXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICA8ZGl2IGlkPVwibWFwXCI+PC9kaXY+XG4gICAgICAgICAge3Nob3VsZExvYWRNYXBPYmplY3RzKGdsb2JhbF9kYXRhLCBtYXBSZWYsIGVkZ2VzLCBwb2ludHMpICYmIChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxBcmVhUG9seWdvbnNcbiAgICAgICAgICAgICAgICBhcmVhcz17YXJlYXN9XG4gICAgICAgICAgICAgICAgbWFwPXttYXBSZWYuY3VycmVudH1cbiAgICAgICAgICAgICAgICBMPXtMfVxuICAgICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXthcmVhVG9DZW50ZXJCeX1cbiAgICAgICAgICAgICAgICBtYXBab29tPXttYXBab29tTGV2ZWx9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApfVxuICAgICAgICAgIHtzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzKGVkZ2VzLCBhcmVhcywgZ2xvYmFsX2RhdGEsIG1hcFJlZikgJiYgKFxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAge21lbW9pemVkRXZlbnR9XG4gICAgICAgICAgICAgIHttZW1vaXplZFpvb21Db250cm9sfVxuICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApfVxuICAgICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLElBQUFBLENBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRix1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsV0FBQSxHQUFBRixPQUFBO0FBSUEsSUFBQUcsUUFBQSxHQUFBSCxPQUFBO0FBR0EsSUFBQUksY0FBQSxHQUFBQyxzQkFBQSxDQUFBTCxPQUFBO0FBQ0EsSUFBQU0sYUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sTUFBQSxHQUFBRixzQkFBQSxDQUFBTCxPQUFBO0FBQ0FBLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFRLGFBQUEsR0FBQVIsT0FBQTtBQUVBLElBQUFTLE1BQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLFNBQUEsR0FBQVYsT0FBQTtBQVFBLElBQUFXLE1BQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLEtBQUEsR0FBQVAsc0JBQUEsQ0FBQUwsT0FBQTtBQUF3QyxTQUFBYSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWYsd0JBQUFtQixHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxH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
|
|
214
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJMIiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX3JlYWN0UmVkdXgiLCJfYWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9BcmVhUG9seWdvbnMiLCJfRWRnZXMiLCJfUG9pbnRNYXJrZXJzIiwiX0V2ZW50IiwiX01hcFV0aWxzIiwiX3RoZW1lIiwiX2kxOG4iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIk1hcCIsIl9yZWYiLCJhcmVhcyIsImVkZ2VzIiwicG9pbnRzIiwiZ2xvYmFsX2RhdGEiLCJhcmVhVG9DZW50ZXJCeSIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsIl9yZWYkaGlkZUVkZ2VzIiwiaGlkZUVkZ2VzIiwiX3JlZiRtYXBCb3hTdHlsZSIsIm1hcEJveFN0eWxlIiwibGVhZmxldE1hcCIsIm1hcERlZmF1bHQiLCJjaGlsZHJlbiIsIl9yZWYkaW5jbHVkZVVubW9uaXRvciIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsIl9yZWYkaW5jbHVkZVVubW9uaXRvcjIiLCJpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzIiwiX3JlZiRmb3JFdmVudHNWaWV3IiwiZm9yRXZlbnRzVmlldyIsIm1hcCIsIm1hcFJlZiIsInVzZVJlZiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJtYXBab29tTGV2ZWwiLCJzZXRNYXBab29tTGV2ZWwiLCJldmVudHNEYXRhIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiaG92ZXJlZEV2ZW50UHJlc2VudCIsInVzZU1lbW8iLCJ1bmRlZmluZWQiLCJmb2N1c2VkRXZlbnRQcmVzZW50IiwiX3VzZVN0YXRlMyIsIndpbmRvdyIsImN1c3RvbUxlYWZsZXQiLCJtYXJrZXJDbHVzdGVyR3JvdXAiLCJzcGlkZXJmeU9uTWF4Wm9vbSIsInNob3dDb3ZlcmFnZU9uSG92ZXIiLCJ6b29tVG9Cb3VuZHNPbkNsaWNrIiwiYW5pbWF0ZSIsImRpc2FibGVDbHVzdGVyaW5nQXRab29tIiwicmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHMiLCJjaHVua2VkTG9hZGluZyIsImljb25DcmVhdGVGdW5jdGlvbiIsImNsdXN0ZXIiLCJEaXZJY29uIiwiaHRtbCIsImNvbmNhdCIsIl9jaGlsZENvdW50IiwiaTE4biIsInQiLCJjbGFzc05hbWUiLCJpY29uU2l6ZSIsIlBvaW50IiwiX3VzZVN0YXRlNCIsImZhY3Rvcmllc0NsdXN0ZXJHcm91cCIsIl91c2VTdGF0ZTUiLCJsYXllckdyb3VwIiwiX3VzZVN0YXRlNiIsInd3dHBzTGF5ZXJHcm91cCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwiY29sbGVjdG9yc0xheWVyR3JvdXAiLCJtZW1vaXplZFBvaW50cyIsImlzRmV0Y2hpbmciLCJjdXJyZW50IiwiY3JlYXRlRWxlbWVudCIsIlBvaW50TWFya2VycyIsInJlcmVuZGVyIiwiem9vbUxldmVscyIsImZhY3Rvcmllc0dyb3VwIiwid3d0cHNHcm91cCIsImNvbGxlY3RvcnNHcm91cCIsInpvb21SdWxlc0ZvckV2ZW50c1ZpZXciLCJwYXlsb2FkIiwiRnJhZ21lbnQiLCJhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHMiLCJ6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcyIsImNvbnNvbGUiLCJ3YXJuIiwibWVtb2l6ZWRab29tQ29udHJvbCIsIm1lbW9pemVkRXZlbnQiLCJmb2N1c2VkIiwiaG92ZXJlZCIsIkV2ZW50IiwiZXZlbnQiLCJpbmNsdWRlTmV0d29yayIsImV2ZW50RmlsdGVyUGFyYW0iLCJ1c2VFZmZlY3QiLCJpbml0aWFsaXplTWFwIiwic2F0ZWxsaXRlIiwiaXNWYWxpZEFyZWEiLCJjbGVhbnVwIiwiZG9uZUNyZWF0aW5nIiwicmVtb3ZlIiwic3RvcmVNYXAiLCJ3YXRlckF1dGhvcml0eUlkIiwiYXJlYUZvY3VzTG9naWMiLCJzaWRlbmF2RXhwYW5kZWQiLCJpZCIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiQXJlYVBvbHlnb25zIiwibWFwWm9vbSIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL01hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0JztcbmltcG9ydCAnbGVhZmxldC5tYXJrZXJjbHVzdGVyJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzdG9yZU1hcCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyBJR2xvYmFsU3RhdGUgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL21vZGVscy9JR2xvYmFsU3RhdGUnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgeyBBcmVhUG9seWdvbnMgfSBmcm9tICcuL2FyZWFzL0FyZWFQb2x5Z29ucyc7XG5pbXBvcnQgRWRnZXMgZnJvbSAnLi9lZGdlcy9FZGdlcyc7XG5pbXBvcnQgJy4vTWFwLnNjc3MnO1xuaW1wb3J0ICcuL3BvaW50cy9Qb2ludEljb24uc2Nzcyc7XG5pbXBvcnQgeyBQb2ludE1hcmtlcnMgfSBmcm9tICcuL3BvaW50cy9Qb2ludE1hcmtlcnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IEV2ZW50IH0gZnJvbSAnLi9ldmVudHMvRXZlbnQnO1xuaW1wb3J0IHtcbiAgYXJlYUZvY3VzTG9naWMsXG4gIGluaXRpYWxpemVNYXAsXG4gIGlzVmFsaWRBcmVhLFxuICBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzLFxuICBzaG91bGRMb2FkTWFwT2JqZWN0cyxcbiAgem9vbUxldmVscyxcbn0gZnJvbSAnLi9NYXBVdGlscyc7XG5pbXBvcnQgeyBsZWFmbGV0TWFwIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBpMThuIGZyb20gJy4uLy4uL3V0aWxpdGllcy9pMThuJztcbnJlcXVpcmUoJ2xlYWZsZXQubWFya2VyY2x1c3RlcicpO1xuXG5pbnRlcmZhY2UgTWFwUHJvcHMge1xuICBhcmVhczogSUFyZWFbXTtcbiAgZWRnZXM/OiBJRWRnZVtdO1xuICBwb2ludHM/OiBJUG9pbnRbXTtcbiAgZ2xvYmFsX2RhdGE6IElHbG9iYWxTdGF0ZTtcbiAgYXJlYVRvQ2VudGVyQnk/OiBhbnk7XG4gIGZvY3VzZWRFdmVudD86IElFdmVudCB8IG51bGw7XG4gIGhvdmVyZWRFdmVudD86IElFdmVudCB8IG51bGw7XG4gIGhpZGVFZGdlcz86IGJvb2xlYW47XG4gIG1hcEJveFN0eWxlPzogc3RyaW5nO1xuICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM/OiBib29sZWFuO1xuICBpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzPzogYm9vbGVhbjtcbiAgZm9yRXZlbnRzVmlldzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IE1hcDogUmVhY3QuRkM8TWFwUHJvcHM+ID0gKHtcbiAgYXJlYXMsXG4gIGVkZ2VzLFxuICBwb2ludHMsXG4gIGdsb2JhbF9kYXRhLFxuICBhcmVhVG9DZW50ZXJCeSxcbiAgZm9jdXNlZEV2ZW50LFxuICBob3ZlcmVkRXZlbnQsXG4gIGhpZGVFZGdlcyA9IGZhbHNlLFxuICBtYXBCb3hTdHlsZSA9IGxlYWZsZXRNYXAubWFwRGVmYXVsdCxcbiAgY2hpbGRyZW4sXG4gIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyA9IHRydWUsXG4gIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMgPSBmYWxzZSxcbiAgZm9yRXZlbnRzVmlldyA9IGZhbHNlLFxufSkgPT4ge1xuICBjb25zdCB7IG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IG1hcFJlZiA9IHVzZVJlZjxMLk1hcD4obnVsbCk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgW21hcFpvb21MZXZlbCwgc2V0TWFwWm9vbUxldmVsXSA9IHVzZVN0YXRlKDIpO1xuICBjb25zdCBldmVudHNEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZXZlbnRzX2RhdGEsXG4gICk7XG4gIGNvbnN0IGhvdmVyZWRFdmVudFByZXNlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gaG92ZXJlZEV2ZW50ICE9PSBudWxsICYmIGhvdmVyZWRFdmVudCAhPT0gdW5kZWZpbmVkO1xuICB9LCBbaG92ZXJlZEV2ZW50XSk7XG5cbiAgY29uc3QgZm9jdXNlZEV2ZW50UHJlc2VudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgZm9jdXNlZEV2ZW50ICE9PSB1bmRlZmluZWQ7XG4gIH0sIFtmb2N1c2VkRXZlbnRdKTtcblxuICBjb25zdCBbZmFjdG9yaWVzQ2x1c3Rlckdyb3VwXSA9IHVzZVN0YXRlKFxuICAgIHdpbmRvdy5jdXN0b21MZWFmbGV0Lm1hcmtlckNsdXN0ZXJHcm91cCh7XG4gICAgICBzcGlkZXJmeU9uTWF4Wm9vbTogZmFsc2UsXG4gICAgICBzaG93Q292ZXJhZ2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgIHpvb21Ub0JvdW5kc09uQ2xpY2s6IHRydWUsXG4gICAgICBhbmltYXRlOiB0cnVlLFxuICAgICAgZGlzYWJsZUNsdXN0ZXJpbmdBdFpvb206IDE1LFxuICAgICAgcmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHM6IGZhbHNlLFxuICAgICAgY2h1bmtlZExvYWRpbmc6IHRydWUsXG4gICAgICBpY29uQ3JlYXRlRnVuY3Rpb246IGZ1bmN0aW9uIChjbHVzdGVyKSB7XG4gICAgICAgIHJldHVybiBuZXcgTC5EaXZJY29uKHtcbiAgICAgICAgICBodG1sOiBgPGRpdj48c3Bhbj4ke1xuICAgICAgICAgICAgY2x1c3Rlci5fY2hpbGRDb3VudFxuICAgICAgICAgIH08L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0nbWFya2VyLWNsdXN0ZXItbmFtZSc+JHtpMThuLnQoXG4gICAgICAgICAgICAnaW5kdXN0cmllcycsXG4gICAgICAgICAgKX08L2Rpdj5gLFxuICAgICAgICAgIGNsYXNzTmFtZTogJ21hcmtlci1jbHVzdGVyJyxcbiAgICAgICAgICBpY29uU2l6ZTogbmV3IEwuUG9pbnQoNDAsIDQwKSxcbiAgICAgICAgfSk7XG4gICAgICB9LFxuICAgIH0pLFxuICApO1xuXG4gIGNvbnN0IFt3d3Rwc0xheWVyR3JvdXBdID0gdXNlU3RhdGUoTC5sYXllckdyb3VwKCkpO1xuICBjb25zdCBbY29sbGVjdG9yc0xheWVyR3JvdXBdID0gdXNlU3RhdGUoTC5sYXllckdyb3VwKCkpO1xuICAvL2NvbnN0IFtmYWN0b3JpZXNMYXllckdyb3VwXSA9IHVzZVN0YXRlKEwubGF5ZXJHcm91cCgpKTtcblxuICBjb25zdCBtZW1vaXplZFBvaW50cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICAhZXZlbnRzRGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJiAoXG4gICAgICAgIDxQb2ludE1hcmtlcnNcbiAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgIHBvaW50cz17cG9pbnRzfVxuICAgICAgICAgIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cz17aW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzfVxuICAgICAgICAgIHJlcmVuZGVyPXt6b29tTGV2ZWxzW21hcFpvb21MZXZlbF19XG4gICAgICAgICAgZmFjdG9yaWVzR3JvdXA9e2ZhY3Rvcmllc0NsdXN0ZXJHcm91cH1cbiAgICAgICAgICB3d3Rwc0dyb3VwPXt3d3Rwc0xheWVyR3JvdXB9XG4gICAgICAgICAgY29sbGVjdG9yc0dyb3VwPXtjb2xsZWN0b3JzTGF5ZXJHcm91cH1cbiAgICAgICAgICBmb3JFdmVudHNWaWV3PXtmYWxzZX1cbiAgICAgICAgLz5cbiAgICAgIClcbiAgICApO1xuICB9LCBbXG4gICAgZXZlbnRzRGF0YS5pc0ZldGNoaW5nLFxuICAgIG1hcFJlZi5jdXJyZW50LFxuICAgIHBvaW50cyxcbiAgICBmb2N1c2VkRXZlbnRQcmVzZW50LFxuICAgIG1hcFpvb21MZXZlbCxcbiAgICBmYWN0b3JpZXNDbHVzdGVyR3JvdXAsXG4gICAgd3d0cHNMYXllckdyb3VwLFxuICAgIGNvbGxlY3RvcnNMYXllckdyb3VwLFxuICBdKTtcblxuICAvLyBjb25zdCBhY3RpdmF0ZVpvb21Db250cm9sRm9ySWNvbnMgPSB1c2VNZW1vKCgpID0+IHtcbiAgLy8gICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJiBpY29uWm9vbUNvbnRyb2wobWFwUmVmLmN1cnJlbnQpO1xuICAvLyB9LCBbbWFwUmVmLmN1cnJlbnQsIHBvaW50cywgZm9jdXNlZEV2ZW50UHJlc2VudF0pO1xuXG4gIGNvbnN0IHpvb21SdWxlc0ZvckV2ZW50c1ZpZXcgPSAocGF5bG9hZCkgPT4ge1xuICAgIHBheWxvYWQgPSAoXG4gICAgICA8PlxuICAgICAgICA8RWRnZXNcbiAgICAgICAgICBlZGdlcz17ZWRnZXMhfVxuICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgTD17TH1cbiAgICAgICAgICBwb2ludHM9e3BvaW50cyF9XG4gICAgICAgICAgaGlkZUVkZ2VzPXtoaWRlRWRnZXN9XG4gICAgICAgICAgYWxsb3dVbm1vbml0b3JlZERlc2NlbmRhbnRzPXtpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzfVxuICAgICAgICAvPlxuICAgICAgICB7bWVtb2l6ZWRQb2ludHN9XG4gICAgICA8Lz5cbiAgICApO1xuXG4gICAgcmV0dXJuIHBheWxvYWQ7XG4gIH07XG5cbiAgY29uc3Qgem9vbVJ1bGVzRm9yRGFzaGFib2FyZE1hcHMgPSAocGF5bG9hZCkgPT4ge1xuICAgIGNvbnNvbGUud2Fybih6b29tTGV2ZWxzW21hcFpvb21MZXZlbF0pO1xuXG4gICAgc3dpdGNoICh6b29tTGV2ZWxzW21hcFpvb21MZXZlbF0pIHtcbiAgICAgIGNhc2UgJ1NtYWxsJzpcbiAgICAgICAgcGF5bG9hZCA9IChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPEVkZ2VzXG4gICAgICAgICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgICAgICAgaGlkZUVkZ2VzPXtoaWRlRWRnZXN9XG4gICAgICAgICAgICAgIGFsbG93VW5tb25pdG9yZWREZXNjZW5kYW50cz17XG4gICAgICAgICAgICAgICAgaW5jbHVkZVVubW9uaXRvcmVkRGVzY2VuZGFudHNGb3JFZGdlc1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAge21lbW9pemVkUG9pbnRzfVxuICAgICAgICAgIDwvPlxuICAgICAgICApO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ01lZGl1bSc6XG4gICAgICAgIHBheWxvYWQgPSAoXG4gICAgICAgICAgPD5cbiAgICAgICAgICAgIDxFZGdlc1xuICAgICAgICAgICAgICBlZGdlcz17ZWRnZXMhfVxuICAgICAgICAgICAgICBtYXA9e21hcFJlZi5jdXJyZW50fVxuICAgICAgICAgICAgICBMPXtMfVxuICAgICAgICAgICAgICBwb2ludHM9e3BvaW50cyF9XG4gICAgICAgICAgICAgIGhpZGVFZGdlcz17aGlkZUVkZ2VzfVxuICAgICAgICAgICAgICBhbGxvd1VubW9uaXRvcmVkRGVzY2VuZGFudHM9e1xuICAgICAgICAgICAgICAgIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXNcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIHttZW1vaXplZFBvaW50c31cbiAgICAgICAgICA8Lz5cbiAgICAgICAgKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdNTGFyZ2UnOlxuICAgICAgICBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0xhcmdlJzpcbiAgICAgICAgcGF5bG9hZCA9IDw+e21lbW9pemVkUG9pbnRzfTwvPjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdYTGFyZ2UnOlxuICAgICAgICBwYXlsb2FkID0gPD57bWVtb2l6ZWRQb2ludHN9PC8+O1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHBheWxvYWQgPSA8PnttZW1vaXplZFBvaW50c308Lz47XG4gICAgICAgIGJyZWFrO1xuICAgIH1cblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9O1xuXG4gIGNvbnN0IG1lbW9pemVkWm9vbUNvbnRyb2wgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBsZXQgcGF5bG9hZCA9IDw+PC8+O1xuICAgIGlmIChmb3JFdmVudHNWaWV3KSBwYXlsb2FkID0gem9vbVJ1bGVzRm9yRXZlbnRzVmlldyhwYXlsb2FkKTtcbiAgICBpZiAoIWZvckV2ZW50c1ZpZXcpIHBheWxvYWQgPSB6b29tUnVsZXNGb3JEYXNoYWJvYXJkTWFwcyhwYXlsb2FkKTtcblxuICAgIHJldHVybiBwYXlsb2FkO1xuICB9LCBbbWFwWm9vbUxldmVsLCBldmVudHNEYXRhLmlzRmV0Y2hpbmcsIGZvY3VzZWRFdmVudCwgaG92ZXJlZEV2ZW50LCBwb2ludHNdKTtcblxuICBjb25zdCBtZW1vaXplZEV2ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgaWYgKGZvY3VzZWRFdmVudFByZXNlbnQpIHtcbiAgICAgIGZvY3VzZWRFdmVudCEuZm9jdXNlZCA9IGZvY3VzZWRFdmVudFByZXNlbnQ7XG4gICAgICBmb2N1c2VkRXZlbnQhLmhvdmVyZWQgPSAhZm9jdXNlZEV2ZW50UHJlc2VudDtcbiAgICB9XG5cbiAgICBpZiAoaG92ZXJlZEV2ZW50UHJlc2VudCkge1xuICAgICAgaG92ZXJlZEV2ZW50IS5ob3ZlcmVkID0gaG92ZXJlZEV2ZW50UHJlc2VudDtcbiAgICAgIGhvdmVyZWRFdmVudCEuZm9jdXNlZCA9ICFob3ZlcmVkRXZlbnRQcmVzZW50O1xuICAgIH1cblxuICAgIGlmICghaG92ZXJlZEV2ZW50UHJlc2VudCAmJiAhZm9jdXNlZEV2ZW50UHJlc2VudCkgcmV0dXJuIDw+PC8+O1xuICAgIHJldHVybiAoXG4gICAgICA8RXZlbnRcbiAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudCEgfHwgaG92ZXJlZEV2ZW50IX1cbiAgICAgICAgbWFwPXttYXB9XG4gICAgICAgIGVkZ2VzPXtlZGdlcyF9XG4gICAgICAgIHBvaW50cz17cG9pbnRzIX1cbiAgICAgICAgaW5jbHVkZU5ldHdvcms9eyFob3ZlcmVkRXZlbnRQcmVzZW50fVxuICAgICAgLz5cbiAgICApO1xuICB9LCBbZm9jdXNlZEV2ZW50LCBob3ZlcmVkRXZlbnQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGluaXRpYWxpemVNYXAoXG4gICAgICBtYXBab29tTGV2ZWwsXG4gICAgICBtYXBCb3hTdHlsZSxcbiAgICAgIGxlYWZsZXRNYXAuc2F0ZWxsaXRlLFxuICAgICAgbWFwUmVmLFxuICAgICAgZGlzcGF0Y2gsXG4gICAgICBpc1ZhbGlkQXJlYSxcbiAgICAgIGFyZWFUb0NlbnRlckJ5LFxuICAgICAgc2V0TWFwWm9vbUxldmVsLFxuICAgICk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIGZhY3Rvcmllc0NsdXN0ZXJHcm91cC5kb25lQ3JlYXRpbmcgPSBmYWxzZTtcbiAgICAgIHd3dHBzTGF5ZXJHcm91cC5kb25lQ3JlYXRpbmcgPSBmYWxzZTtcbiAgICAgIGNvbGxlY3RvcnNMYXllckdyb3VwLmRvbmVDcmVhdGluZyA9IGZhbHNlO1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgbWFwUmVmLmN1cnJlbnQucmVtb3ZlKCk7XG4gICAgICBkaXNwYXRjaChzdG9yZU1hcCh1bmRlZmluZWQpKTtcbiAgICB9O1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFtYXBSZWYuY3VycmVudCkge1xuICAgICAgaW5pdGlhbGl6ZU1hcChcbiAgICAgICAgbWFwWm9vbUxldmVsLFxuICAgICAgICBtYXBCb3hTdHlsZSxcbiAgICAgICAgbGVhZmxldE1hcC5zYXRlbGxpdGUsXG4gICAgICAgIG1hcFJlZixcbiAgICAgICAgZGlzcGF0Y2gsXG4gICAgICAgIGlzVmFsaWRBcmVhLFxuICAgICAgICBhcmVhVG9DZW50ZXJCeSxcbiAgICAgICAgc2V0TWFwWm9vbUxldmVsLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXJlYUZvY3VzTG9naWMoXG4gICAgICAgIG1hcFJlZixcbiAgICAgICAgaXNWYWxpZEFyZWEsXG4gICAgICAgIGFyZWFUb0NlbnRlckJ5ID8gYXJlYVRvQ2VudGVyQnkgOiBhcmVhc1swXSxcbiAgICAgICk7XG4gICAgfVxuICB9LCBbYXJlYVRvQ2VudGVyQnksIGFyZWFzXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cImtkLW1hcC1jb250YWluZXJcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXtgIG1hcC1jb250YWluZXIgJHtcbiAgICAgICAgICBnbG9iYWxfZGF0YS5zaWRlbmF2RXhwYW5kZWQgPyAnJyA6ICdtYXAtY29udGFpbmVyLS1zaWRlbmF2LWNvbGxhcHNlZCdcbiAgICAgICAgfWB9XG4gICAgICA+XG4gICAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICAgIDxkaXYgaWQ9XCJtYXBcIj48L2Rpdj5cbiAgICAgICAgICB7c2hvdWxkTG9hZE1hcE9iamVjdHMoZ2xvYmFsX2RhdGEsIG1hcFJlZiwgZWRnZXMsIHBvaW50cykgJiYgKFxuICAgICAgICAgICAgPEFyZWFQb2x5Z29uc1xuICAgICAgICAgICAgICBhcmVhcz17YXJlYXN9XG4gICAgICAgICAgICAgIG1hcD17bWFwUmVmLmN1cnJlbnR9XG4gICAgICAgICAgICAgIEw9e0x9XG4gICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXthcmVhVG9DZW50ZXJCeX1cbiAgICAgICAgICAgICAgbWFwWm9vbT17bWFwWm9vbUxldmVsfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIHtzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzKGVkZ2VzLCBhcmVhcywgZ2xvYmFsX2RhdGEsIG1hcFJlZikgJiYgKFxuICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAge21lbW9pemVkRXZlbnR9XG4gICAgICAgICAgICAgIHttZW1vaXplZFpvb21Db250cm9sfVxuICAgICAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApfVxuICAgICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLElBQUFBLENBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRix1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsV0FBQSxHQUFBRixPQUFBO0FBSUEsSUFBQUcsUUFBQSxHQUFBSCxPQUFBO0FBR0EsSUFBQUksY0FBQSxHQUFBQyxzQkFBQSxDQUFBTCxPQUFBO0FBQ0EsSUFBQU0sYUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sTUFBQSxHQUFBRixzQkFBQSxDQUFBTCxPQUFBO0FBQ0FBLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFRLGFBQUEsR0FBQVIsT0FBQTtBQUVBLElBQUFTLE1BQUEsR0FBQVQsT0FBQTtBQUNBLElBQUFVLFNBQUEsR0FBQVYsT0FBQTtBQVFBLElBQUFXLE1BQUEsR0FBQVgsT0FBQTtBQUNBLElBQUFZLEtBQUEsR0FBQVAsc0JBQUEsQ0FBQUwsT0FBQTtBQUF3QyxTQUFBYSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFB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
|
|
@@ -82,6 +82,11 @@ var PointMarkers = function PointMarkers(props) {
|
|
|
82
82
|
factoriesGroup.doneCreating = true;
|
|
83
83
|
wwtpsGroup.doneCreating = true;
|
|
84
84
|
collectorsGroup.doneCreating = true;
|
|
85
|
+
return function cleanup() {
|
|
86
|
+
factoriesGroup.doneCreating = false;
|
|
87
|
+
wwtpsGroup.doneCreating = false;
|
|
88
|
+
collectorsGroup.doneCreating = false;
|
|
89
|
+
};
|
|
85
90
|
}, [rerender]);
|
|
86
91
|
return /*#__PURE__*/_react.default.createElement("div", null, points.length !== 0 && filteredPoints().map(function (point) {
|
|
87
92
|
return point.latitude && point.longitude && !factoriesGroup.doneCreating && !wwtpsGroup.doneCreating && !collectorsGroup.doneCreating && /*#__PURE__*/_react.default.createElement(_PointMarker.default, {
|
|
@@ -94,4 +99,4 @@ var PointMarkers = function PointMarkers(props) {
|
|
|
94
99
|
}));
|
|
95
100
|
};
|
|
96
101
|
exports.PointMarkers = PointMarkers;
|
|
97
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfUG9pbnRNYXJrZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1BvaW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIlBvaW50TWFya2VycyIsInByb3BzIiwicG9pbnRzIiwibWFwIiwiZmFjdG9yaWVzR3JvdXAiLCJ3d3Rwc0dyb3VwIiwiY29sbGVjdG9yc0dyb3VwIiwicmVyZW5kZXIiLCJfcHJvcHMkZm9yRXZlbnRzVmlldyIsImZvckV2ZW50c1ZpZXciLCJpc1BvaW50QmVsb25nVG9Hcm91cFR5cGVzIiwicG9pbnQiLCJncm91cCIsInR5cGUiLCJoYXNfZGV2aWNlIiwiZmlsdGVyU3RhdGVtZW50IiwiZmlsdGVyZWRQb2ludHMiLCJmaWx0ZXIiLCJ1c2VFZmZlY3QiLCJhZGRMYXllckdyb3VwIiwicmVtb3ZlTGF5ZXJHcm91cCIsImRvbmVDcmVhdGluZyIsImNyZWF0ZUVsZW1lbnQiLCJsZW5ndGgiLCJsYXRpdHVkZSIsImxvbmdpdHVkZSIsImlkIiwibGF5ZXJHcm91cCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvV2lkZ2V0cy9NYXAvcG9pbnRzL1BvaW50TWFya2Vycy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgUG9pbnRNYXJrZXIgZnJvbSAnLi9Qb2ludE1hcmtlcic7XG5pbXBvcnQgeyBhZGRMYXllckdyb3VwLCByZW1vdmVMYXllckdyb3VwIH0gZnJvbSAnLi9Qb2ludFV0aWxzJztcblxudHlwZSBQcm9wcyA9IHtcbiAgbWFwOiBhbnk7XG4gIHBvaW50czogYW55O1xuICBpbmNsdWRlVW5tb25pdG9yZWRQb2ludHM6IGJvb2xlYW47XG4gIHJlcmVuZGVyOiBzdHJpbmc7XG4gIGZhY3Rvcmllc0dyb3VwOiBhbnk7XG4gIHd3dHBzR3JvdXA6IGFueTtcbiAgY29sbGVjdG9yc0dyb3VwOiBhbnk7XG4gIGZvckV2ZW50c1ZpZXc6IGJvb2xlYW47XG59O1xuXG5leHBvcnQgY29uc3QgUG9pbnRNYXJrZXJzOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIHBvaW50cyxcbiAgICBtYXAsXG4gICAgZmFjdG9yaWVzR3JvdXAsXG4gICAgd3d0cHNHcm91cCxcbiAgICBjb2xsZWN0b3JzR3JvdXAsXG4gICAgcmVyZW5kZXIsXG4gICAgZm9yRXZlbnRzVmlldyA9IGZhbHNlLFxuICB9ID0gcHJvcHM7XG5cbiAgLy9IYW5kbGUgdGhlIG1vdXNlIGNsaWNrIGhlcmUgb25lIGZvciBhbGwgaW5zdGVhZCBvbmUgYnkgb25lXG4gIC8vIGZhY3Rvcmllc0NsdXN0ZXJHcm91cC5vbignY2xpY2snLCBmdW5jdGlvbiAoYSkge1xuICAvLyAgIGNvbnNvbGUubG9nKCdjdXJyZW50U3JjJywgYS5vcmlnaW5hbEV2ZW50LnRhcmdldC5jdXJyZW50U3JjKTtcbiAgLy8gICBjb25zb2xlLmxvZygnc3JjJywgYS5vcmlnaW5hbEV2ZW50LnRhcmdldC5zcmMpO1xuICAvLyAgIC8vYS5vcmlnaW5hbEV2ZW50LnRhcmdldC5zcmMgPSAnJztcbiAgLy8gICAvL0NoYW5nZSBpY29uIGhlcmVcbiAgLy8gfSk7XG4gIC8vIGNvbnNvbGUubG9nKCdMYXllckdyb3VwcycsIGZhY3Rvcmllc0NsdXN0ZXJHcm91cCk7XG5cbiAgY29uc3QgaXNQb2ludEJlbG9uZ1RvR3JvdXBUeXBlcyA9IChwb2ludDogSVBvaW50KSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6Oldhc3Rld2F0ZXJUcmVhdG1lbnRQbGFudCcgfHxcbiAgICAgIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6OkZhY3RvcnknIHx8XG4gICAgICAocG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6Q29sbGVjdG9ycycgJiYgcG9pbnQuaGFzX2RldmljZSkgfHxcbiAgICAgIChwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpQdW1wU3RhdGlvbicgJiYgcG9pbnQuaGFzX2RldmljZSlcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGZpbHRlclN0YXRlbWVudCA9IChwb2ludCkgPT4ge1xuICAgIHJldHVybiBpc1BvaW50QmVsb25nVG9Hcm91cFR5cGVzKHBvaW50KTtcbiAgfTtcblxuICBjb25zdCBmaWx0ZXJlZFBvaW50cyA9ICgpID0+IHtcbiAgICByZXR1cm4gcG9pbnRzLmZpbHRlcigocG9pbnQ6IElQb2ludCkgPT4gZmlsdGVyU3RhdGVtZW50KHBvaW50KSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAobWFwKSB7XG4gICAgICBpZiAoZm9yRXZlbnRzVmlldykge1xuICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgZmFjdG9yaWVzR3JvdXApO1xuICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgIGFkZExheWVyR3JvdXAobWFwLCBjb2xsZWN0b3JzR3JvdXApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc3dpdGNoIChyZXJlbmRlcikge1xuICAgICAgICAgIGNhc2UgJ1hMYXJnZSc6XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgZmFjdG9yaWVzR3JvdXApO1xuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIHd3dHBzR3JvdXApO1xuICAgICAgICAgICAgcmVtb3ZlTGF5ZXJHcm91cChtYXAsIGNvbGxlY3RvcnNHcm91cCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdMYXJnZSc6XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgZmFjdG9yaWVzR3JvdXApO1xuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIHd3dHBzR3JvdXApO1xuICAgICAgICAgICAgcmVtb3ZlTGF5ZXJHcm91cChtYXAsIGNvbGxlY3RvcnNHcm91cCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdNTGFyZ2UnOlxuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIGZhY3Rvcmllc0dyb3VwKTtcbiAgICAgICAgICAgIGFkZExheWVyR3JvdXAobWFwLCB3d3Rwc0dyb3VwKTtcbiAgICAgICAgICAgIHJlbW92ZUxheWVyR3JvdXAobWFwLCBjb2xsZWN0b3JzR3JvdXApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnTWVkaXVtJzpcbiAgICAgICAgICAgIGFkZExheWVyR3JvdXAobWFwLCBmYWN0b3JpZXNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ1NtYWxsJzpcbiAgICAgICAgICAgIGFkZExheWVyR3JvdXAobWFwLCBmYWN0b3JpZXNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGZhY3Rvcmllc0dyb3VwLmRvbmVDcmVhdGluZyA9IHRydWU7XG4gICAgd3d0cHNHcm91cC5kb25lQ3JlYXRpbmcgPSB0cnVlO1xuICAgIGNvbGxlY3RvcnNHcm91cC5kb25lQ3JlYXRpbmcgPSB0cnVlO1xuICB9LCBbcmVyZW5kZXJdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXY+XG4gICAgICB7cG9pbnRzLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICBmaWx0ZXJlZFBvaW50cygpLm1hcChcbiAgICAgICAgICAocG9pbnQ6IElQb2ludCkgPT5cbiAgICAgICAgICAgIHBvaW50LmxhdGl0dWRlICYmXG4gICAgICAgICAgICBwb2ludC5sb25naXR1ZGUgJiZcbiAgICAgICAgICAgICFmYWN0b3JpZXNHcm91cC5kb25lQ3JlYXRpbmcgJiZcbiAgICAgICAgICAgICF3d3Rwc0dyb3VwLmRvbmVDcmVhdGluZyAmJlxuICAgICAgICAgICAgIWNvbGxlY3RvcnNHcm91cC5kb25lQ3JlYXRpbmcgJiYgKFxuICAgICAgICAgICAgICA8UG9pbnRNYXJrZXJcbiAgICAgICAgICAgICAgICBtYXA9e21hcH1cbiAgICAgICAgICAgICAgICBwb2ludD17cG9pbnR9XG4gICAgICAgICAgICAgICAga2V5PXtwb2ludC5pZH1cbiAgICAgICAgICAgICAgICByZXJlbmRlcj17cmVyZW5kZXJ9XG4gICAgICAgICAgICAgICAgbGF5ZXJHcm91cD17XG4gICAgICAgICAgICAgICAgICBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpGYWN0b3J5J1xuICAgICAgICAgICAgICAgICAgICA/IGZhY3Rvcmllc0dyb3VwXG4gICAgICAgICAgICAgICAgICAgIDogcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50J1xuICAgICAgICAgICAgICAgICAgICA/IHd3dHBzR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgOiBjb2xsZWN0b3JzR3JvdXBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApLFxuICAgICAgICApfVxuICAgIDwvZGl2PlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxZQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFILE9BQUE7QUFBK0QsU0FBQUkseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFOLHdCQUFBVSxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixHQUFBLEVB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
|
|
102
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfUG9pbnRNYXJrZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1BvaW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIlBvaW50TWFya2VycyIsInByb3BzIiwicG9pbnRzIiwibWFwIiwiZmFjdG9yaWVzR3JvdXAiLCJ3d3Rwc0dyb3VwIiwiY29sbGVjdG9yc0dyb3VwIiwicmVyZW5kZXIiLCJfcHJvcHMkZm9yRXZlbnRzVmlldyIsImZvckV2ZW50c1ZpZXciLCJpc1BvaW50QmVsb25nVG9Hcm91cFR5cGVzIiwicG9pbnQiLCJncm91cCIsInR5cGUiLCJoYXNfZGV2aWNlIiwiZmlsdGVyU3RhdGVtZW50IiwiZmlsdGVyZWRQb2ludHMiLCJmaWx0ZXIiLCJ1c2VFZmZlY3QiLCJhZGRMYXllckdyb3VwIiwicmVtb3ZlTGF5ZXJHcm91cCIsImRvbmVDcmVhdGluZyIsImNsZWFudXAiLCJjcmVhdGVFbGVtZW50IiwibGVuZ3RoIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJpZCIsImxheWVyR3JvdXAiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL1dpZGdldHMvTWFwL3BvaW50cy9Qb2ludE1hcmtlcnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IFBvaW50TWFya2VyIGZyb20gJy4vUG9pbnRNYXJrZXInO1xuaW1wb3J0IHsgYWRkTGF5ZXJHcm91cCwgcmVtb3ZlTGF5ZXJHcm91cCB9IGZyb20gJy4vUG9pbnRVdGlscyc7XG5cbnR5cGUgUHJvcHMgPSB7XG4gIG1hcDogYW55O1xuICBwb2ludHM6IGFueTtcbiAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzOiBib29sZWFuO1xuICByZXJlbmRlcjogc3RyaW5nO1xuICBmYWN0b3JpZXNHcm91cDogYW55O1xuICB3d3Rwc0dyb3VwOiBhbnk7XG4gIGNvbGxlY3RvcnNHcm91cDogYW55O1xuICBmb3JFdmVudHNWaWV3OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGNvbnN0IFBvaW50TWFya2VyczogUmVhY3QuRkM8UHJvcHM+ID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBwb2ludHMsXG4gICAgbWFwLFxuICAgIGZhY3Rvcmllc0dyb3VwLFxuICAgIHd3dHBzR3JvdXAsXG4gICAgY29sbGVjdG9yc0dyb3VwLFxuICAgIHJlcmVuZGVyLFxuICAgIGZvckV2ZW50c1ZpZXcgPSBmYWxzZSxcbiAgfSA9IHByb3BzO1xuXG4gIC8vSGFuZGxlIHRoZSBtb3VzZSBjbGljayBoZXJlIG9uZSBmb3IgYWxsIGluc3RlYWQgb25lIGJ5IG9uZVxuICAvLyBmYWN0b3JpZXNDbHVzdGVyR3JvdXAub24oJ2NsaWNrJywgZnVuY3Rpb24gKGEpIHtcbiAgLy8gICBjb25zb2xlLmxvZygnY3VycmVudFNyYycsIGEub3JpZ2luYWxFdmVudC50YXJnZXQuY3VycmVudFNyYyk7XG4gIC8vICAgY29uc29sZS5sb2coJ3NyYycsIGEub3JpZ2luYWxFdmVudC50YXJnZXQuc3JjKTtcbiAgLy8gICAvL2Eub3JpZ2luYWxFdmVudC50YXJnZXQuc3JjID0gJyc7XG4gIC8vICAgLy9DaGFuZ2UgaWNvbiBoZXJlXG4gIC8vIH0pO1xuICAvLyBjb25zb2xlLmxvZygnTGF5ZXJHcm91cHMnLCBmYWN0b3JpZXNDbHVzdGVyR3JvdXApO1xuXG4gIGNvbnN0IGlzUG9pbnRCZWxvbmdUb0dyb3VwVHlwZXMgPSAocG9pbnQ6IElQb2ludCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnIHx8XG4gICAgICBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpGYWN0b3J5JyB8fFxuICAgICAgKHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6OkNvbGxlY3RvcnMnICYmIHBvaW50Lmhhc19kZXZpY2UpIHx8XG4gICAgICAocG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6UHVtcFN0YXRpb24nICYmIHBvaW50Lmhhc19kZXZpY2UpXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBmaWx0ZXJTdGF0ZW1lbnQgPSAocG9pbnQpID0+IHtcbiAgICByZXR1cm4gaXNQb2ludEJlbG9uZ1RvR3JvdXBUeXBlcyhwb2ludCk7XG4gIH07XG5cbiAgY29uc3QgZmlsdGVyZWRQb2ludHMgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHBvaW50cy5maWx0ZXIoKHBvaW50OiBJUG9pbnQpID0+IGZpbHRlclN0YXRlbWVudChwb2ludCkpO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKG1hcCkge1xuICAgICAgaWYgKGZvckV2ZW50c1ZpZXcpIHtcbiAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIGZhY3Rvcmllc0dyb3VwKTtcbiAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIHd3dHBzR3JvdXApO1xuICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHN3aXRjaCAocmVyZW5kZXIpIHtcbiAgICAgICAgICBjYXNlICdYTGFyZ2UnOlxuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIGZhY3Rvcmllc0dyb3VwKTtcbiAgICAgICAgICAgIGFkZExheWVyR3JvdXAobWFwLCB3d3Rwc0dyb3VwKTtcbiAgICAgICAgICAgIHJlbW92ZUxheWVyR3JvdXAobWFwLCBjb2xsZWN0b3JzR3JvdXApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnTGFyZ2UnOlxuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIGZhY3Rvcmllc0dyb3VwKTtcbiAgICAgICAgICAgIGFkZExheWVyR3JvdXAobWFwLCB3d3Rwc0dyb3VwKTtcbiAgICAgICAgICAgIHJlbW92ZUxheWVyR3JvdXAobWFwLCBjb2xsZWN0b3JzR3JvdXApO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgY2FzZSAnTUxhcmdlJzpcbiAgICAgICAgICAgIGFkZExheWVyR3JvdXAobWFwLCBmYWN0b3JpZXNHcm91cCk7XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgd3d0cHNHcm91cCk7XG4gICAgICAgICAgICByZW1vdmVMYXllckdyb3VwKG1hcCwgY29sbGVjdG9yc0dyb3VwKTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIGNhc2UgJ01lZGl1bSc6XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgZmFjdG9yaWVzR3JvdXApO1xuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIHd3dHBzR3JvdXApO1xuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIGNvbGxlY3RvcnNHcm91cCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBjYXNlICdTbWFsbCc6XG4gICAgICAgICAgICBhZGRMYXllckdyb3VwKG1hcCwgZmFjdG9yaWVzR3JvdXApO1xuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIHd3dHBzR3JvdXApO1xuICAgICAgICAgICAgYWRkTGF5ZXJHcm91cChtYXAsIGNvbGxlY3RvcnNHcm91cCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBmYWN0b3JpZXNHcm91cC5kb25lQ3JlYXRpbmcgPSB0cnVlO1xuICAgIHd3dHBzR3JvdXAuZG9uZUNyZWF0aW5nID0gdHJ1ZTtcbiAgICBjb2xsZWN0b3JzR3JvdXAuZG9uZUNyZWF0aW5nID0gdHJ1ZTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgZmFjdG9yaWVzR3JvdXAuZG9uZUNyZWF0aW5nID0gZmFsc2U7XG4gICAgICB3d3Rwc0dyb3VwLmRvbmVDcmVhdGluZyA9IGZhbHNlO1xuICAgICAgY29sbGVjdG9yc0dyb3VwLmRvbmVDcmVhdGluZyA9IGZhbHNlO1xuICAgIH07XG4gIH0sIFtyZXJlbmRlcl0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIHtwb2ludHMubGVuZ3RoICE9PSAwICYmXG4gICAgICAgIGZpbHRlcmVkUG9pbnRzKCkubWFwKFxuICAgICAgICAgIChwb2ludDogSVBvaW50KSA9PlxuICAgICAgICAgICAgcG9pbnQubGF0aXR1ZGUgJiZcbiAgICAgICAgICAgIHBvaW50LmxvbmdpdHVkZSAmJlxuICAgICAgICAgICAgIWZhY3Rvcmllc0dyb3VwLmRvbmVDcmVhdGluZyAmJlxuICAgICAgICAgICAgIXd3dHBzR3JvdXAuZG9uZUNyZWF0aW5nICYmXG4gICAgICAgICAgICAhY29sbGVjdG9yc0dyb3VwLmRvbmVDcmVhdGluZyAmJiAoXG4gICAgICAgICAgICAgIDxQb2ludE1hcmtlclxuICAgICAgICAgICAgICAgIG1hcD17bWFwfVxuICAgICAgICAgICAgICAgIHBvaW50PXtwb2ludH1cbiAgICAgICAgICAgICAgICBrZXk9e3BvaW50LmlkfVxuICAgICAgICAgICAgICAgIHJlcmVuZGVyPXtyZXJlbmRlcn1cbiAgICAgICAgICAgICAgICBsYXllckdyb3VwPXtcbiAgICAgICAgICAgICAgICAgIHBvaW50Lmdyb3VwLnR5cGUgPT09ICdHcm91cHM6OkZhY3RvcnknXG4gICAgICAgICAgICAgICAgICAgID8gZmFjdG9yaWVzR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgOiBwb2ludC5ncm91cC50eXBlID09PSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnXG4gICAgICAgICAgICAgICAgICAgID8gd3d0cHNHcm91cFxuICAgICAgICAgICAgICAgICAgICA6IGNvbGxlY3RvcnNHcm91cFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICksXG4gICAgICAgICl9XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUErRCxTQUFBSSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQU4sd0JBQUFVLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFB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
|
package/lib/macros/getVersion.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var packageJsonVersion = "1.2.228-alpha.
|
|
3
|
+
var packageJsonVersion = "1.2.228-alpha.118";
|
|
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));
|
|
@@ -213,6 +213,9 @@ var EventsList = function EventsList(_ref) {
|
|
|
213
213
|
dispatch((0, _actions.setHoveredEventPaths)([]));
|
|
214
214
|
dispatch((0, _actions.setHoveredEdgePaths)([]));
|
|
215
215
|
};
|
|
216
|
+
var isDataFetchedAndEventNotFocused = function isDataFetchedAndEventNotFocused() {
|
|
217
|
+
return (getEventIdFromURL() === 'null' || getEventIdFromURL() === null) && focusedEvent === null && items.length !== 0 && !isFetching && !areas_data.isFetching && !points_data.isFetching && !edges_data.isFetching;
|
|
218
|
+
};
|
|
216
219
|
var setFocusedEventIfFoundInParams = function setFocusedEventIfFoundInParams() {
|
|
217
220
|
if (getEventIdFromURL() !== null && getEventIdFromURL() !== 'null' && focusedEvent === null && items.length !== 0 && !isFetching && !areas_data.isFetching && !points_data.isFetching && !edges_data.isFetching) {
|
|
218
221
|
var event = events_data.items.find(function (e) {
|
|
@@ -234,7 +237,7 @@ var EventsList = function EventsList(_ref) {
|
|
|
234
237
|
}
|
|
235
238
|
}, [events_data.focusedEvent, areas_data.isFetching, points_data.isFetching, edges_data.isFetching, events_data.isFetching]);
|
|
236
239
|
var triggerSort = function triggerSort(sort) {
|
|
237
|
-
if (global_data.activeFilter !== null) {
|
|
240
|
+
if (global_data.activeFilter !== null && isDataFetchedAndEventNotFocused()) {
|
|
238
241
|
var KQL;
|
|
239
242
|
var URL;
|
|
240
243
|
switch (sort) {
|
|
@@ -365,4 +368,4 @@ var EventsList = function EventsList(_ref) {
|
|
|
365
368
|
var connector = (0, _reactRedux.connect)(mapStateToProps);
|
|
366
369
|
var _default = connector(EventsList);
|
|
367
370
|
exports.default = _default;
|
|
368
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX2Fycm93TGVmdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZnVubmVsIiwiX25vX2V2ZW50cyIsIl9TZXZlcmVFdmVudCIsIl9VcmxIaXN0b3J5IiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfaTE4biIsIl9rcWwiLCJfRXZlbnRJbmZvIiwiX01vcmVJbmZvIiwiX0ZpbHRlckNvbnRhaW5lciIsIl9Tb3J0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJfcmVmIiwic2lkZW5hdkV4cGFuZGVkIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwiaG92ZXJlZEVkZ2VQYXRocyIsIndhdGVyQXV0aG9yaXR5SWQiLCJtYXAiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJmaWx0ZXJQb3B1cE9wZW4iLCJzZXRGaWx0ZXJQb3B1cE9wZW4iLCJfdXNlU3RhdGUzIiwibWVzc2FnZXMiLCJtZXNzYWdlIiwiZXZlbnRfaWQiLCJldmVudF9pZHMiLCJfdXNlU3RhdGU0IiwiZXhjZXB0aW9uQWxlcnQiLCJzZXRFeGNlcHRpb25BbGVydCIsImxhc3RWaXNpdGVkIiwidXNlTGFzdFZpc2l0ZWQiLCJ1c2VRdWVyeSIsIlVSTFNlYXJjaFBhcmFtcyIsInVzZUxvY2F0aW9uIiwic2VhcmNoIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJxdWVyeSIsImdldEtRTFZhbHVlc0Zyb21VUkwiLCJnZXRFdmVudElkRnJvbVVSTCIsImxvYWRlciIsImxlbmd0aCIsIm5ld0FyZWFzIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImhhbmRsZUV4cGFuc2lvblRvZ2dsZSIsInNpZGVOYXZFeHBhbmRlZCIsImFwcGx5RGVmYXVsdEZpbHRlciIsInB1c2giLCJjb25jYXQiLCJuYXZDb250ZXh0IiwibmFtZSIsImxvY2FsZSIsInNldEV2ZW50RmlsdGVyUGFyYW0iLCJ2YWxpZGF0ZUV2ZW50IiwiZXZlbnQiLCJpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMiLCJvYnNlcnZhdGlvbnMiLCJmb3JFYWNoIiwib2JzZXJ2YXRpb24iLCJwb2ludF9pc19yb290IiwiZWRnZSIsImZpbmQiLCJzb3VyY2VfcG9pbnRfaWQiLCJwb2ludF9pZCIsInVuZGVmaW5lZCIsInBvaW50X25hbWUiLCJpbmRleCIsImZpbmRJbmRleCIsIm1zZyIsImlkIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsIkZyYWdtZW50IiwiaTE4biIsInQiLCJpbnZhbGlkUGF0aE1lc3NhZ2VzIiwicGF0aCIsImVkZ2VfaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJsYXN0X29ic2VydmF0aW9uX2lkIiwibGFzdE9ic2VydmF0aW9uUG9pbnQiLCJoYW5kbGVFdmVudEl0ZW1DbGljayIsInJlZiIsIm9uTW91c2VMZWF2ZUV2ZW50Iiwic2V0Rm9jdXNlZEV2ZW50Iiwic2V0VGltZW91dCIsImV2ZW50RmlsdGVyUGFyYW0iLCJvbk1vdXNlRW50ZXJFdmVudCIsInNldEhvdmVyZWRFdmVudCIsInJlbW92ZUxheWVyIiwibGF5ZXJzIiwiX2xheWVycyIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0IiwiaW5jbHVkZXMiLCJzZXRIb3ZlcmVkRXZlbnRQYXRocyIsInNldEhvdmVyZWRFZGdlUGF0aHMiLCJzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMiLCJlIiwicGFyc2VJbnQiLCJ2YWxpZEV2ZW50IiwidXNlTWVtbyIsInRvU3RyaW5nIiwidHJpZ2dlclNvcnQiLCJzb3J0IiwiYWN0aXZlRmlsdGVyIiwiS1FMIiwiVVJMIiwiYnVpbGRLUUxRdWVyeSIsImNhbGNFdmVudHNSZWFsQW1vdW50IiwiZXZlbnRzQ291bnQiLCJldmVudHNfY291bnQiLCJ1c2VFZmZlY3QiLCJmZXRjaEV2ZW50cyIsIm1vcmVJbmZvIiwiYWN0aXZlIiwicmVPcGVuRmlsdGVyIiwib25DbGljayIsIkZvbnRBd2Vzb21lSWNvbiIsImljb24iLCJmYUNhcmV0TGVmdCIsImZhQ2FyZXRSaWdodCIsImhyZWYiLCJmYUFycm93TGVmdCIsIkxpbmsiLCJ0byIsInNyYyIsIkxlZnRBcnJvd0ljb24iLCJoZWlnaHQiLCJ3aWR0aCIsImFsdCIsImV2ZW50cyIsImV2ZW50c0ZldGNoaW5nIiwiUmVhY3RDb21wb25lbnQiLCJmaWxsIiwiZmV0Y2hUeXBlIiwiTm9FdmVudHNJbWFnZSIsIlNldmVyZUV2ZW50IiwiaGFuZGxlQ2xpY2siLCJjb25uZWN0b3IiLCJjb25uZWN0IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0V2ZW50c0xpc3QudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGV0Yy9uby1jb21tZW50ZWQtb3V0LWNvZGUgKi9cbmltcG9ydCB7XG4gIGZhQXJyb3dMZWZ0LFxuICBmYUNhcmV0TGVmdCxcbiAgZmFDYXJldFJpZ2h0LFxufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCBSZWFjdCwgeyBSZWZPYmplY3QsIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjb25uZWN0LCBDb25uZWN0ZWRQcm9wcywgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBMaW5rLCB1c2VIaXN0b3J5LCB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IExlZnRBcnJvd0ljb24gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9hcnJvdy1sZWZ0LnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBGaWx0ZXJJY29uIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9mdW5uZWwuc3ZnJztcbmltcG9ydCBOb0V2ZW50c0ltYWdlIGZyb20gJ3NyYy9hc3NldHMvbm9fZXZlbnRzLnN2Zyc7XG5pbXBvcnQgeyBTZXZlcmVFdmVudCB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NldmVyZUV2ZW50L1NldmVyZUV2ZW50JztcbmltcG9ydCB7IElBcHBTdGF0ZSB9IGZyb20gJ3NyYy9tb2RlbHMvSUFwcFN0YXRlJztcbmltcG9ydCB7IHVzZUxhc3RWaXNpdGVkIH0gZnJvbSAnc3JjL3Byb3ZpZGVycy9VcmxIaXN0b3J5JztcbmltcG9ydCB7XG4gIGZldGNoRXZlbnRzLFxuICBzZXRGb2N1c2VkRXZlbnQsXG4gIHNldEhvdmVyZWRFZGdlUGF0aHMsXG4gIHNldEhvdmVyZWRFdmVudCxcbiAgc2V0SG92ZXJlZEV2ZW50UGF0aHMsXG59IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgc2V0RXZlbnRGaWx0ZXJQYXJhbSwgc2lkZU5hdkV4cGFuZGVkIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBidWlsZEtRTFF1ZXJ5IH0gZnJvbSAnc3JjL3V0aWxpdGllcy9rcWwnO1xuaW1wb3J0ICcuLi9FdmVudHNTdHlsZS5zY3NzJztcbmltcG9ydCBFdmVudEluZm8gZnJvbSAnLi4vZXZlbnRfaW5mby9FdmVudEluZm8nO1xuaW1wb3J0IE1vcmVJbmZvIGZyb20gJy4uL01vcmVJbmZvJztcbmltcG9ydCBGaWx0ZXJDb250YWluZXIgZnJvbSAnLi9GaWx0ZXIvRmlsdGVyQ29udGFpbmVyJztcbmltcG9ydCBTb3J0IGZyb20gJy4vU29ydCc7XG5cbmZ1bmN0aW9uIG1hcFN0YXRlVG9Qcm9wcyhzdGF0ZTogSUFwcFN0YXRlKSB7XG4gIGNvbnN0IHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGFyZWFzX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB7XG4gICAgZXZlbnRzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgZWRnZXNfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgICBhcmVhc19kYXRhLFxuICAgIG5hdl9jb250ZXh0X2RhdGEsXG4gIH07XG59XG5cbnR5cGUgSVByb3BzID0gQ29ubmVjdGVkUHJvcHM8dHlwZW9mIGNvbm5lY3Rvcj4gJiB7XG4gIHNpZGVuYXZFeHBhbmRlZDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEV2ZW50c0xpc3Q6IFJlYWN0LkZDPElQcm9wcz4gPSAoe1xuICBhcmVhc19kYXRhLFxuICBwb2ludHNfZGF0YSxcbiAgZWRnZXNfZGF0YSxcbiAgZ2xvYmFsX2RhdGEsXG4gIHNpZGVuYXZFeHBhbmRlZCxcbiAgZXZlbnRzX2RhdGEsXG4gIG5hdl9jb250ZXh0X2RhdGEsXG59KSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3Qge1xuICAgIGl0ZW1zLFxuICAgIGlzRmV0Y2hpbmcsXG4gICAgZm9jdXNlZEV2ZW50LFxuICAgIGhvdmVyZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnRQYXRocyxcbiAgICBob3ZlcmVkRWRnZVBhdGhzLFxuICB9ID0gZXZlbnRzX2RhdGE7XG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCwgbWFwIH0gPSBnbG9iYWxfZGF0YTtcbiAgY29uc3QgW2ZpbHRlclBvcHVwT3Blbiwgc2V0RmlsdGVyUG9wdXBPcGVuXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBbZXhjZXB0aW9uQWxlcnQsIHNldEV4Y2VwdGlvbkFsZXJ0XSA9IHVzZVN0YXRlPHtcbiAgICBtZXNzYWdlczogeyBtZXNzYWdlOiBhbnk7IGV2ZW50X2lkOiBudW1iZXIgfVtdO1xuICAgIGV2ZW50X2lkczogbnVtYmVyW107XG4gIH0+KHsgbWVzc2FnZXM6IFt7IG1lc3NhZ2U6ICcnLCBldmVudF9pZDogMCB9XSwgZXZlbnRfaWRzOiBbXSB9KTtcbiAgY29uc3QgbGFzdFZpc2l0ZWQgPSB1c2VMYXN0VmlzaXRlZCgpO1xuXG4gIGNvbnN0IHVzZVF1ZXJ5ID0gKCkgPT4ge1xuICAgIHJldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKHVzZUxvY2F0aW9uKCkuc2VhcmNoKTtcbiAgfTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeSgpO1xuICBjb25zdCBnZXRLUUxWYWx1ZXNGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3ZhbHVlc0Zyb21LUUwnKTtcbiAgfTtcbiAgY29uc3QgZ2V0RXZlbnRJZEZyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgnZXZlbnRJZCcpO1xuICB9O1xuXG4gIGNvbnN0IGxvYWRlciA9ICgpID0+IHtcbiAgICBpZiAoXG4gICAgICAoaXNGZXRjaGluZyAmJiBpdGVtcy5sZW5ndGggPT09IDApIHx8XG4gICAgICBhcmVhc19kYXRhLm5ld0FyZWFzLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgcG9pbnRzX2RhdGEuaXNGZXRjaGluZyB8fFxuICAgICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nXG4gICAgKSB7XG4gICAgICByZXR1cm4gPGRpdiBjbGFzc05hbWU9eydsb2FkZXInfT48L2Rpdj47XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVFeHBhbnNpb25Ub2dnbGUgPSAoKSA9PiB7XG4gICAgZGlzcGF0Y2goc2lkZU5hdkV4cGFuZGVkKCFzaWRlbmF2RXhwYW5kZWQpKTtcbiAgfTtcblxuICBjb25zdCBhcHBseURlZmF1bHRGaWx0ZXIgPSAoKSA9PiB7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZ2YWx1ZXNGcm9tS1FMPWAsXG4gICAgKTtcbiAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKCcnKSk7XG4gIH07XG5cbiAgY29uc3QgdmFsaWRhdGVFdmVudCA9IChldmVudDogSUV2ZW50KSA9PiB7XG4gICAgLy8gY2hlY2sgdGhhdCBhbGwgb2JzZXJ2YXRpb25zJyBlZGdlcyBleGlzdHMuIElmIHRoZXkgYXJlIG5vdCBleGlzdHMgaXQncyBpbmRpY2F0ZXMgdGhhdCB0aGVpciBwb2ludHMgYXJlXG4gICAgLy8gbm90IGluIHRoZSBoaWVyYXJjaHkgb3IgZG9lc24ndCBoYXZlIGxhdC9sbmcuXG4gICAgbGV0IGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlczogYW55ID0gW107XG4gICAgZXZlbnQub2JzZXJ2YXRpb25zLmZvckVhY2goKG9ic2VydmF0aW9uOiBhbnkpID0+IHtcbiAgICAgIC8vIGlmIG9ic2VydmF0aW9uIGlzIHJvb3QgKGV4LiBXV1RQKSB0aGVyZSBpcyBubyBlZGdlIHRoYXQgaXRzIGEgc291cmNlLiBzbyB3ZSBjYW4gc2tpcCB0aGlzIGNoZWNrXG4gICAgICBpZiAoIW9ic2VydmF0aW9uLnBvaW50X2lzX3Jvb3QpIHtcbiAgICAgICAgbGV0IGVkZ2UgPSBlZGdlc19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAgICAgKGVkZ2UpID0+IGVkZ2Uuc291cmNlX3BvaW50X2lkID09PSBvYnNlcnZhdGlvbi5wb2ludF9pZCxcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGVkZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcy5wdXNoKFxuICAgICAgICAgICAgYCR7b2JzZXJ2YXRpb24ucG9pbnRfbmFtZX0gKCR7b2JzZXJ2YXRpb24ucG9pbnRfaWR9KSBgLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBsZXQgaW5kZXggPSBleGNlcHRpb25BbGVydC5tZXNzYWdlcy5maW5kSW5kZXgoXG4gICAgICAgIChtc2cpID0+IG1zZy5ldmVudF9pZCA9PT0gZXZlbnQuaWQsXG4gICAgICApO1xuXG4gICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgIHNldEV4Y2VwdGlvbkFsZXJ0KHtcbiAgICAgICAgICBtZXNzYWdlczogW1xuICAgICAgICAgICAgLi4uZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG1lc3NhZ2U6IChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50X2RhdGFfbWlzc2luZycpfTwvcD5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgZXZlbnRfaWQ6IGV2ZW50LmlkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIGV2ZW50X2lkczogWy4uLmV4Y2VwdGlvbkFsZXJ0LmV2ZW50X2lkcywgZXZlbnQuaWRdLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBzYW1lIGNoZWNrIGFzIGFib3ZlIGJ1dCB0aGlzIHRpbWUgZm9yIHRoZSBldmVudCBwYXRoLiBJZiBlZGdlIGRvZXNuJ3QgZXhpc3QsIGl0J3MgaW5kaWNhdGVzIHRoYXQgb25lIG9mIHRoZVxuICAgIC8vIHBvaW50cyBkb3duc3RyZWFtIGRvZXNuJ3QgaGF2ZSBsYXQvbG5nLlxuICAgIGxldCBpbnZhbGlkUGF0aE1lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5wYXRoLmZvckVhY2goKHBhdGg6IGFueSkgPT4ge1xuICAgICAgbGV0IGVkZ2UgPSBlZGdlc19kYXRhLml0ZW1zLmZpbmQoKGVkZ2UpID0+IGVkZ2UuaWQgPT09IHBhdGguZWRnZV9pZCk7XG4gICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYGVkZ2UgJHtwYXRoLmVkZ2VfaWR9IGNhbiBub3QgYmUgZm91bmRgKTtcbiAgICAgICAgbGV0IG9ic2VydmF0aW9uID0gZXZlbnQub2JzZXJ2YXRpb25zLmZpbmQoXG4gICAgICAgICAgKG9ic2VydmF0aW9uKSA9PiBvYnNlcnZhdGlvbi5pZCA9PT0gcGF0aC5sYXN0X29ic2VydmF0aW9uX2lkLFxuICAgICAgICApO1xuICAgICAgICBsZXQgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSAnTm90IGZvdW5kJztcbiAgICAgICAgaWYgKG9ic2VydmF0aW9uKSB7XG4gICAgICAgICAgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSBvYnNlcnZhdGlvbi5wb2ludF9uYW1lO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ2xhc3RPYnNlcnZhdGlvblBvaW50JywgbGFzdE9ic2VydmF0aW9uUG9pbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW52YWxpZFBhdGhNZXNzYWdlcy5wdXNoKGAke2xhc3RPYnNlcnZhdGlvblBvaW50fSBgKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChpbnZhbGlkUGF0aE1lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgc2V0RXhjZXB0aW9uQWxlcnQoe1xuICAgICAgICBtZXNzYWdlczogW1xuICAgICAgICAgIC4uLmV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG1lc3NhZ2U6IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8cD57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfdmVyaWZ5X2Nvb3JkaW5hdGVzJyl9PC9wPlxuICAgICAgICAgICAgICAgIDxzcGFuPntpbnZhbGlkUGF0aE1lc3NhZ2VzfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgZXZlbnRfaWQ6IGV2ZW50LmlkLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGV2ZW50X2lkczogWy4uLmV4Y2VwdGlvbkFsZXJ0LmV2ZW50X2lkcywgZXZlbnQuaWRdLFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXZlbnRJdGVtQ2xpY2sgPSAoXG4gICAgZXZlbnQ6IElFdmVudCxcbiAgICByZWY6IFJlZk9iamVjdDxIVE1MRWxlbWVudD4gfCBudWxsLFxuICApID0+IHtcbiAgICBpZiAocmVmICE9PSBudWxsKSBvbk1vdXNlTGVhdmVFdmVudCgpO1xuICAgIC8vIGlmIChob3ZlcmVkRXZlbnRQYXRocyAmJiBtYXApIHtcbiAgICAvLyAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgIC8vICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgIC8vICAgICB9KTtcbiAgICAvLyB9XG4gICAgLy8gZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICAvLyBkaXNwYXRjaChzZXRIb3ZlckV2ZW50SW5kaWNhdG9yKG51bGwpKTtcbiAgICBkaXNwYXRjaChzZXRGb2N1c2VkRXZlbnQoZXZlbnQpKTtcbiAgICBzZXRGaWx0ZXJQb3B1cE9wZW4oZmFsc2UpO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaGlzdG9yeS5wdXNoKFxuICAgICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke1xuICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRcbiAgICAgICAgfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZldmVudElkPSR7XG4gICAgICAgICAgZXZlbnQuaWRcbiAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7XG4gICAgICAgICAgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbVxuICAgICAgICB9JnZhbGlkRXZlbnQ9JHt2YWxpZGF0ZUV2ZW50KGV2ZW50KX1gLFxuICAgICAgKTtcbiAgICB9LCA1MDApO1xuICB9O1xuXG4gIGNvbnN0IG9uTW91c2VFbnRlckV2ZW50ID0gKGV2ZW50KSA9PiB7XG4gICAgaWYgKCFmb2N1c2VkRXZlbnQgJiYgIWhvdmVyZWRFdmVudCAmJiB2YWxpZGF0ZUV2ZW50KGV2ZW50KSkge1xuICAgICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50KGV2ZW50KSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IG9uTW91c2VMZWF2ZUV2ZW50ID0gKCkgPT4ge1xuICAgIGlmIChob3ZlcmVkRXZlbnQgJiYgaG92ZXJlZEV2ZW50UGF0aHMgJiYgbWFwKSB7XG4gICAgICBob3ZlcmVkRXZlbnRQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAgIH0pO1xuXG4gICAgICBpZiAoaG92ZXJlZEVkZ2VQYXRocykge1xuICAgICAgICBob3ZlcmVkRWRnZVBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG4gICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgICAgICBjb25zdCBrYW5kb19vYmplY3QgPSBsYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdDtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGthbmRvX29iamVjdD8uaW5jbHVkZXMoJ0V2ZW50Qm9keScpIHx8XG4gICAgICAgICAgW1xuICAgICAgICAgICAgJ0V2ZW50VGFpbCcsXG4gICAgICAgICAgICAnU2FtcGxpbmdQb2ludCcsXG4gICAgICAgICAgICAnRGVjb3JhdG9yJyxcbiAgICAgICAgICAgICdIb3ZlcmVkRWRnZScsXG4gICAgICAgICAgICAnSG92ZXJlZEVkZ2VGcm9udCcsXG4gICAgICAgICAgICAnRm9jdXNlZEVkZ2UnLFxuICAgICAgICAgICAgJ0ZvY3VzZWRFZGdlRnJvbnQnLFxuICAgICAgICAgIF0uaW5jbHVkZXMoa2FuZG9fb2JqZWN0KVxuICAgICAgICApIHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIobGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50KG51bGwpKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnRQYXRocyhbXSkpO1xuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW10pKTtcbiAgfTtcblxuICBjb25zdCBzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMgPSAoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgZ2V0RXZlbnRJZEZyb21VUkwoKSAhPT0gbnVsbCAmJlxuICAgICAgZ2V0RXZlbnRJZEZyb21VUkwoKSAhPT0gJ251bGwnICYmXG4gICAgICBmb2N1c2VkRXZlbnQgPT09IG51bGwgJiZcbiAgICAgIGl0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgIWlzRmV0Y2hpbmcgJiZcbiAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nXG4gICAgKSB7XG4gICAgICBsZXQgZXZlbnQgPSBldmVudHNfZGF0YS5pdGVtcy5maW5kKFxuICAgICAgICAoZTogSUV2ZW50KSA9PiBlLmlkID09PSBwYXJzZUludChnZXRFdmVudElkRnJvbVVSTCgpISksXG4gICAgICApO1xuICAgICAgaWYgKGV2ZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaGFuZGxlRXZlbnRJdGVtQ2xpY2soZXZlbnQsIG51bGwpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCB2YWxpZEV2ZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgbGV0IGV2ZW50ID0gZXZlbnRzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgIChlKSA9PiBlLmlkLnRvU3RyaW5nKCkgPT09IGdldEV2ZW50SWRGcm9tVVJMKCksXG4gICAgKTtcblxuICAgIGlmIChldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdmFsaWRhdGVFdmVudChldmVudCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfSwgW1xuICAgIGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCxcbiAgICBhcmVhc19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgcG9pbnRzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZXZlbnRzX2RhdGEuaXNGZXRjaGluZyxcbiAgXSk7XG5cbiAgY29uc3QgdHJpZ2dlclNvcnQgPSAoc29ydDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCkge1xuICAgICAgbGV0IEtRTDtcbiAgICAgIGxldCBVUkw7XG4gICAgICBzd2l0Y2ggKHNvcnQpIHtcbiAgICAgICAgY2FzZSAxOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnbmV3ZXN0Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZVxuICAgICAgICAgIH0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZldmVudElkPSR7Z2V0RXZlbnRJZEZyb21VUkwoKX0mbG9jYWxlPSR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlXG4gICAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7S1FMfSZ2YWxpZEV2ZW50PSR7dmFsaWRFdmVudH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMjpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ29sZGVzdCcpfWA7XG4gICAgICAgICAgVVJMID0gYC8ke1xuICAgICAgICAgICAgbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWVcbiAgICAgICAgICB9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke1xuICAgICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZFxuICAgICAgICAgIH0mZXZlbnRJZD0ke2dldEV2ZW50SWRGcm9tVVJMKCl9JmxvY2FsZT0ke1xuICAgICAgICAgICAgbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZVxuICAgICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke0tRTH0mdmFsaWRFdmVudD0ke3ZhbGlkRXZlbnR9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIDM6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICdzZXZlcml0eScpfWA7XG4gICAgICAgICAgVVJMID0gYC8ke1xuICAgICAgICAgICAgbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWVcbiAgICAgICAgICB9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke1xuICAgICAgICAgICAgZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZFxuICAgICAgICAgIH0mZXZlbnRJZD0ke2dldEV2ZW50SWRGcm9tVVJMKCl9JmxvY2FsZT0ke1xuICAgICAgICAgICAgbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZVxuICAgICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke0tRTH0mdmFsaWRFdmVudD0ke3ZhbGlkRXZlbnR9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBjYWxjRXZlbnRzUmVhbEFtb3VudCA9ICgpID0+IHtcbiAgICBsZXQgZXZlbnRzQ291bnQ6IG51bWJlciB8IHN0cmluZyA9IDA7XG4gICAgZXZlbnRzQ291bnQgPSBldmVudHNfZGF0YS5ldmVudHNfY291bnQ7XG4gICAgaWYgKGV2ZW50c0NvdW50ID4gNTApXG4gICAgICBldmVudHNDb3VudCA9IGAke2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3Lm1vcmVfdGhhbicpfSA1MGA7XG5cbiAgICByZXR1cm4gZXZlbnRzQ291bnQ7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaXNwYXRjaChcbiAgICAgIGZldGNoRXZlbnRzKFxuICAgICAgICB3YXRlckF1dGhvcml0eUlkLFxuICAgICAgICBnZXRLUUxWYWx1ZXNGcm9tVVJMKCkgfHwgJ0RFRkFVTFQnLFxuICAgICAgICBnZXRFdmVudElkRnJvbVVSTCgpLFxuICAgICAgKSxcbiAgICApO1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgIWV2ZW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFwb2ludHNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nXG4gICAgKSB7XG4gICAgICBzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMoKTtcbiAgICB9XG4gIH0sIFtcbiAgICBldmVudHNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGVkZ2VzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGFyZWFzX2RhdGEuaXNGZXRjaGluZyxcbiAgICBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtLFxuICBdKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXsnc2lkZW5hdiAnICsgKHNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ3NpZGVuYXYtLWNvbGxhcHNlZCcpfT5cbiAgICAgIHtnbG9iYWxfZGF0YS5tb3JlSW5mbyAhPT0gdW5kZWZpbmVkICYmIGdsb2JhbF9kYXRhLm1vcmVJbmZvLmFjdGl2ZSAmJiAoXG4gICAgICAgIDxNb3JlSW5mbyAvPlxuICAgICAgKX1cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICdldmVudC1pbmZvICcgK1xuICAgICAgICAgICghaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbFxuICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgOiAnZXZlbnQtaW5mby0tY29sbGFwc2VkJylcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7IWhvdmVyZWRFdmVudCAmJiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgKFxuICAgICAgICAgIDxFdmVudEluZm9cbiAgICAgICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICByZU9wZW5GaWx0ZXI9eygpID0+IHNldEZpbHRlclBvcHVwT3Blbih0cnVlKX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cInRvZ2dsZS1leHBhbnNpb24tYnV0dG9uXCJcbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm5hdi1leHBhbnNpb24taWNvblwiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb25cbiAgICAgICAgICAgIGljb249e3NpZGVuYXZFeHBhbmRlZCA/IGZhQ2FyZXRMZWZ0IDogZmFDYXJldFJpZ2h0fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17J3RvZ2dsZS1leHBhbnNpb24tYnV0dG9uLW1vYmlsZSd9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICBoYW5kbGVFeHBhbnNpb25Ub2dnbGUoKTtcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGEgaHJlZj1cIiNcIj5cbiAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhQXJyb3dMZWZ0fSAvPlxuICAgICAgICAgIDxzcGFuPiB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYmFja190b19kZXRhaWxzJyl9PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWhlYWRlclwiPlxuICAgICAgICB7bGFzdFZpc2l0ZWQgJiYgIWlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgIDxMaW5rIGNsYXNzTmFtZT1cImJhY2tcIiB0bz17bGFzdFZpc2l0ZWR9PlxuICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgc3JjPXtMZWZ0QXJyb3dJY29ufVxuICAgICAgICAgICAgICBoZWlnaHQ9XCIxMHB4XCJcbiAgICAgICAgICAgICAgd2lkdGg9XCIxMnB4XCJcbiAgICAgICAgICAgICAgYWx0PVwiYmFja1wiXG4gICAgICAgICAgICAvPnsnICd9XG4gICAgICAgICAgICB7aTE4bi50KCdhcmVhX3NjcmVlbi5iYWNrJyl9XG4gICAgICAgICAgPC9MaW5rPlxuICAgICAgICApfVxuICAgICAgICA8aDQ+XG4gICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50c19saXN0Jyl9XG4gICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnZXZlbnRzLWhlYWRlcl9fZXZlbnRzX2Ftb3VudCd9PlxuICAgICAgICAgICAgKHtjYWxjRXZlbnRzUmVhbEFtb3VudCgpfSlcbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvaDQ+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmlsdGVyaW5nXCI+XG4gICAgICAgICAge2V2ZW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCAmJiAoXG4gICAgICAgICAgICA8U29ydFxuICAgICAgICAgICAgICB0cmlnZ2VyU29ydD17dHJpZ2dlclNvcnR9XG4gICAgICAgICAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICAgICAgICAgIGV2ZW50c0ZldGNoaW5nPXtldmVudHNfZGF0YS5pc0ZldGNoaW5nfVxuICAgICAgICAgICAgICBhY3RpdmVGaWx0ZXI9e2dsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlcn1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImljb25zXCI+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImZpbHRlclwiXG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldEZpbHRlclBvcHVwT3BlbighZmlsdGVyUG9wdXBPcGVuKX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEZpbHRlckljb24gd2lkdGg9XCIxN3B4XCIgaGVpZ2h0PVwiMTdweFwiIGZpbGw9XCIjZjYwMDRmXCIgLz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICB7cG9pbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmICFmb2N1c2VkRXZlbnQgJiYgKFxuICAgICAgICAgIDxGaWx0ZXJDb250YWluZXJcbiAgICAgICAgICAgIGZpbHRlclBvcHVwT3Blbj17ZmlsdGVyUG9wdXBPcGVufVxuICAgICAgICAgICAgZmV0Y2hUeXBlPXsnRXZlbnRGaWx0ZXInfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWNvbnRhaW5lciBzY3JvbGxiYXIgXCI+XG4gICAgICAgIHtsb2FkZXIoKX1cbiAgICAgICAgeyFpc0ZldGNoaW5nICYmXG4gICAgICAgICAgaXRlbXMubGVuZ3RoID09PSAwICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnRzX19ibGFua3NsYXRlJ30+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPXtOb0V2ZW50c0ltYWdlfSBhbHQ9XCJOb0V2ZW50c0ljb25cIiAvPlxuICAgICAgICAgICAgICA8aDI+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmhlYWRlcicpfTwvaDI+XG4gICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5ib2R5Jyl9PC9wPlxuICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17J2FwcGx5X2RlZmF1bHRfZmlsdGVyX2J1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gYXBwbHlEZWZhdWx0RmlsdGVyKCl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuYnV0dG9uJyl9XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIHtpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJldmVudHMgXCI+XG4gICAgICAgICAgICAgIHtpdGVtcy5tYXAoKGV2ZW50OiBhbnkpID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtldmVudC5pZH0gY2xhc3NOYW1lPVwiZXZlbnRcIiBkYXRhLWV2ZW50LWlkPXtldmVudC5pZH0+XG4gICAgICAgICAgICAgICAgICA8U2V2ZXJlRXZlbnRcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQ9e2V2ZW50fVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGljaz17aGFuZGxlRXZlbnRJdGVtQ2xpY2t9XG4gICAgICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlckV2ZW50PXtvbk1vdXNlRW50ZXJFdmVudH1cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUxlYXZlRXZlbnQ9e29uTW91c2VMZWF2ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgICB2YWxpZGF0ZUV2ZW50PXt2YWxpZGF0ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgICBleGNlcHRpb25BbGVydD17ZXhjZXB0aW9uQWxlcnR9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5jb25zdCBjb25uZWN0b3IgPSBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcyk7XG5leHBvcnQgZGVmYXVsdCBjb25uZWN0b3IoRXZlbnRzTGlzdCk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFDQSxJQUFB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
|
|
371
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX2Fycm93TGVmdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZnVubmVsIiwiX25vX2V2ZW50cyIsIl9TZXZlcmVFdmVudCIsIl9VcmxIaXN0b3J5IiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfaTE4biIsIl9rcWwiLCJfRXZlbnRJbmZvIiwiX01vcmVJbmZvIiwiX0ZpbHRlckNvbnRhaW5lciIsIl9Tb3J0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJfcmVmIiwic2lkZW5hdkV4cGFuZGVkIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwiaG92ZXJlZEVkZ2VQYXRocyIsIndhdGVyQXV0aG9yaXR5SWQiLCJtYXAiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJmaWx0ZXJQb3B1cE9wZW4iLCJzZXRGaWx0ZXJQb3B1cE9wZW4iLCJfdXNlU3RhdGUzIiwibWVzc2FnZXMiLCJtZXNzYWdlIiwiZXZlbnRfaWQiLCJldmVudF9pZHMiLCJfdXNlU3RhdGU0IiwiZXhjZXB0aW9uQWxlcnQiLCJzZXRFeGNlcHRpb25BbGVydCIsImxhc3RWaXNpdGVkIiwidXNlTGFzdFZpc2l0ZWQiLCJ1c2VRdWVyeSIsIlVSTFNlYXJjaFBhcmFtcyIsInVzZUxvY2F0aW9uIiwic2VhcmNoIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJxdWVyeSIsImdldEtRTFZhbHVlc0Zyb21VUkwiLCJnZXRFdmVudElkRnJvbVVSTCIsImxvYWRlciIsImxlbmd0aCIsIm5ld0FyZWFzIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImhhbmRsZUV4cGFuc2lvblRvZ2dsZSIsInNpZGVOYXZFeHBhbmRlZCIsImFwcGx5RGVmYXVsdEZpbHRlciIsInB1c2giLCJjb25jYXQiLCJuYXZDb250ZXh0IiwibmFtZSIsImxvY2FsZSIsInNldEV2ZW50RmlsdGVyUGFyYW0iLCJ2YWxpZGF0ZUV2ZW50IiwiZXZlbnQiLCJpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMiLCJvYnNlcnZhdGlvbnMiLCJmb3JFYWNoIiwib2JzZXJ2YXRpb24iLCJwb2ludF9pc19yb290IiwiZWRnZSIsImZpbmQiLCJzb3VyY2VfcG9pbnRfaWQiLCJwb2ludF9pZCIsInVuZGVmaW5lZCIsInBvaW50X25hbWUiLCJpbmRleCIsImZpbmRJbmRleCIsIm1zZyIsImlkIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsIkZyYWdtZW50IiwiaTE4biIsInQiLCJpbnZhbGlkUGF0aE1lc3NhZ2VzIiwicGF0aCIsImVkZ2VfaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJsYXN0X29ic2VydmF0aW9uX2lkIiwibGFzdE9ic2VydmF0aW9uUG9pbnQiLCJoYW5kbGVFdmVudEl0ZW1DbGljayIsInJlZiIsIm9uTW91c2VMZWF2ZUV2ZW50Iiwic2V0Rm9jdXNlZEV2ZW50Iiwic2V0VGltZW91dCIsImV2ZW50RmlsdGVyUGFyYW0iLCJvbk1vdXNlRW50ZXJFdmVudCIsInNldEhvdmVyZWRFdmVudCIsInJlbW92ZUxheWVyIiwibGF5ZXJzIiwiX2xheWVycyIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0IiwiaW5jbHVkZXMiLCJzZXRIb3ZlcmVkRXZlbnRQYXRocyIsInNldEhvdmVyZWRFZGdlUGF0aHMiLCJpc0RhdGFGZXRjaGVkQW5kRXZlbnROb3RGb2N1c2VkIiwic2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zIiwiZSIsInBhcnNlSW50IiwidmFsaWRFdmVudCIsInVzZU1lbW8iLCJ0b1N0cmluZyIsInRyaWdnZXJTb3J0Iiwic29ydCIsImFjdGl2ZUZpbHRlciIsIktRTCIsIlVSTCIsImJ1aWxkS1FMUXVlcnkiLCJjYWxjRXZlbnRzUmVhbEFtb3VudCIsImV2ZW50c0NvdW50IiwiZXZlbnRzX2NvdW50IiwidXNlRWZmZWN0IiwiZmV0Y2hFdmVudHMiLCJtb3JlSW5mbyIsImFjdGl2ZSIsInJlT3BlbkZpbHRlciIsIm9uQ2xpY2siLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFDYXJldExlZnQiLCJmYUNhcmV0UmlnaHQiLCJocmVmIiwiZmFBcnJvd0xlZnQiLCJMaW5rIiwidG8iLCJzcmMiLCJMZWZ0QXJyb3dJY29uIiwiaGVpZ2h0Iiwid2lkdGgiLCJhbHQiLCJldmVudHMiLCJldmVudHNGZXRjaGluZyIsIlJlYWN0Q29tcG9uZW50IiwiZmlsbCIsImZldGNoVHlwZSIsIk5vRXZlbnRzSW1hZ2UiLCJTZXZlcmVFdmVudCIsImhhbmRsZUNsaWNrIiwiY29ubmVjdG9yIiwiY29ubmVjdCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudHNMaXN0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBldGMvbm8tY29tbWVudGVkLW91dC1jb2RlICovXG5pbXBvcnQge1xuICBmYUFycm93TGVmdCxcbiAgZmFDYXJldExlZnQsXG4gIGZhQ2FyZXRSaWdodCxcbn0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgUmVhY3QsIHsgUmVmT2JqZWN0LCB1c2VFZmZlY3QsIHVzZU1lbW8sIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY29ubmVjdCwgQ29ubmVjdGVkUHJvcHMsIHVzZURpc3BhdGNoIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgTGluaywgdXNlSGlzdG9yeSwgdXNlTG9jYXRpb24gfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCBMZWZ0QXJyb3dJY29uIGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvYXJyb3ctbGVmdC5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRmlsdGVySWNvbiB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMvZnVubmVsLnN2Zyc7XG5pbXBvcnQgTm9FdmVudHNJbWFnZSBmcm9tICdzcmMvYXNzZXRzL25vX2V2ZW50cy5zdmcnO1xuaW1wb3J0IHsgU2V2ZXJlRXZlbnQgfSBmcm9tICdzcmMvY29tcG9uZW50cy9TZXZlcmVFdmVudC9TZXZlcmVFdmVudCc7XG5pbXBvcnQgeyBJQXBwU3RhdGUgfSBmcm9tICdzcmMvbW9kZWxzL0lBcHBTdGF0ZSc7XG5pbXBvcnQgeyB1c2VMYXN0VmlzaXRlZCB9IGZyb20gJ3NyYy9wcm92aWRlcnMvVXJsSGlzdG9yeSc7XG5pbXBvcnQge1xuICBmZXRjaEV2ZW50cyxcbiAgc2V0Rm9jdXNlZEV2ZW50LFxuICBzZXRIb3ZlcmVkRWRnZVBhdGhzLFxuICBzZXRIb3ZlcmVkRXZlbnQsXG4gIHNldEhvdmVyZWRFdmVudFBhdGhzLFxufSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IHNldEV2ZW50RmlsdGVyUGFyYW0sIHNpZGVOYXZFeHBhbmRlZCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgYnVpbGRLUUxRdWVyeSB9IGZyb20gJ3NyYy91dGlsaXRpZXMva3FsJztcbmltcG9ydCAnLi4vRXZlbnRzU3R5bGUuc2Nzcyc7XG5pbXBvcnQgRXZlbnRJbmZvIGZyb20gJy4uL2V2ZW50X2luZm8vRXZlbnRJbmZvJztcbmltcG9ydCBNb3JlSW5mbyBmcm9tICcuLi9Nb3JlSW5mbyc7XG5pbXBvcnQgRmlsdGVyQ29udGFpbmVyIGZyb20gJy4vRmlsdGVyL0ZpbHRlckNvbnRhaW5lcic7XG5pbXBvcnQgU29ydCBmcm9tICcuL1NvcnQnO1xuXG5mdW5jdGlvbiBtYXBTdGF0ZVRvUHJvcHMoc3RhdGU6IElBcHBTdGF0ZSkge1xuICBjb25zdCB7XG4gICAgZXZlbnRzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgZWRnZXNfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgICBhcmVhc19kYXRhLFxuICAgIG5hdl9jb250ZXh0X2RhdGEsXG4gIH0gPSBzdGF0ZTtcblxuICByZXR1cm4ge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9O1xufVxuXG50eXBlIElQcm9wcyA9IENvbm5lY3RlZFByb3BzPHR5cGVvZiBjb25uZWN0b3I+ICYge1xuICBzaWRlbmF2RXhwYW5kZWQ6IGJvb2xlYW47XG59O1xuXG5jb25zdCBFdmVudHNMaXN0OiBSZWFjdC5GQzxJUHJvcHM+ID0gKHtcbiAgYXJlYXNfZGF0YSxcbiAgcG9pbnRzX2RhdGEsXG4gIGVkZ2VzX2RhdGEsXG4gIGdsb2JhbF9kYXRhLFxuICBzaWRlbmF2RXhwYW5kZWQsXG4gIGV2ZW50c19kYXRhLFxuICBuYXZfY29udGV4dF9kYXRhLFxufSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IHtcbiAgICBpdGVtcyxcbiAgICBpc0ZldGNoaW5nLFxuICAgIGZvY3VzZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnQsXG4gICAgaG92ZXJlZEV2ZW50UGF0aHMsXG4gICAgaG92ZXJlZEVkZ2VQYXRocyxcbiAgfSA9IGV2ZW50c19kYXRhO1xuICBjb25zdCB7IHdhdGVyQXV0aG9yaXR5SWQsIG1hcCB9ID0gZ2xvYmFsX2RhdGE7XG4gIGNvbnN0IFtmaWx0ZXJQb3B1cE9wZW4sIHNldEZpbHRlclBvcHVwT3Blbl0gPSB1c2VTdGF0ZSh0cnVlKTtcbiAgY29uc3QgW2V4Y2VwdGlvbkFsZXJ0LCBzZXRFeGNlcHRpb25BbGVydF0gPSB1c2VTdGF0ZTx7XG4gICAgbWVzc2FnZXM6IHsgbWVzc2FnZTogYW55OyBldmVudF9pZDogbnVtYmVyIH1bXTtcbiAgICBldmVudF9pZHM6IG51bWJlcltdO1xuICB9Pih7IG1lc3NhZ2VzOiBbeyBtZXNzYWdlOiAnJywgZXZlbnRfaWQ6IDAgfV0sIGV2ZW50X2lkczogW10gfSk7XG4gIGNvbnN0IGxhc3RWaXNpdGVkID0gdXNlTGFzdFZpc2l0ZWQoKTtcblxuICBjb25zdCB1c2VRdWVyeSA9ICgpID0+IHtcbiAgICByZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcyh1c2VMb2NhdGlvbigpLnNlYXJjaCk7XG4gIH07XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnkoKTtcbiAgY29uc3QgZ2V0S1FMVmFsdWVzRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCd2YWx1ZXNGcm9tS1FMJyk7XG4gIH07XG4gIGNvbnN0IGdldEV2ZW50SWRGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ2V2ZW50SWQnKTtcbiAgfTtcblxuICBjb25zdCBsb2FkZXIgPSAoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgKGlzRmV0Y2hpbmcgJiYgaXRlbXMubGVuZ3RoID09PSAwKSB8fFxuICAgICAgYXJlYXNfZGF0YS5uZXdBcmVhcy5sZW5ndGggPT09IDAgfHxcbiAgICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcgfHxcbiAgICAgIGVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICkge1xuICAgICAgcmV0dXJuIDxkaXYgY2xhc3NOYW1lPXsnbG9hZGVyJ30+PC9kaXY+O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXhwYW5zaW9uVG9nZ2xlID0gKCkgPT4ge1xuICAgIGRpc3BhdGNoKHNpZGVOYXZFeHBhbmRlZCghc2lkZW5hdkV4cGFuZGVkKSk7XG4gIH07XG5cbiAgY29uc3QgYXBwbHlEZWZhdWx0RmlsdGVyID0gKCkgPT4ge1xuICAgIGhpc3RvcnkucHVzaChcbiAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mdmFsdWVzRnJvbUtRTD1gLFxuICAgICk7XG4gICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbSgnJykpO1xuICB9O1xuXG4gIGNvbnN0IHZhbGlkYXRlRXZlbnQgPSAoZXZlbnQ6IElFdmVudCkgPT4ge1xuICAgIC8vIGNoZWNrIHRoYXQgYWxsIG9ic2VydmF0aW9ucycgZWRnZXMgZXhpc3RzLiBJZiB0aGV5IGFyZSBub3QgZXhpc3RzIGl0J3MgaW5kaWNhdGVzIHRoYXQgdGhlaXIgcG9pbnRzIGFyZVxuICAgIC8vIG5vdCBpbiB0aGUgaGllcmFyY2h5IG9yIGRvZXNuJ3QgaGF2ZSBsYXQvbG5nLlxuICAgIGxldCBpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXM6IGFueSA9IFtdO1xuICAgIGV2ZW50Lm9ic2VydmF0aW9ucy5mb3JFYWNoKChvYnNlcnZhdGlvbjogYW55KSA9PiB7XG4gICAgICAvLyBpZiBvYnNlcnZhdGlvbiBpcyByb290IChleC4gV1dUUCkgdGhlcmUgaXMgbm8gZWRnZSB0aGF0IGl0cyBhIHNvdXJjZS4gc28gd2UgY2FuIHNraXAgdGhpcyBjaGVja1xuICAgICAgaWYgKCFvYnNlcnZhdGlvbi5wb2ludF9pc19yb290KSB7XG4gICAgICAgIGxldCBlZGdlID0gZWRnZXNfZGF0YS5pdGVtcy5maW5kKFxuICAgICAgICAgIChlZGdlKSA9PiBlZGdlLnNvdXJjZV9wb2ludF9pZCA9PT0gb2JzZXJ2YXRpb24ucG9pbnRfaWQsXG4gICAgICAgICk7XG4gICAgICAgIGlmIChlZGdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMucHVzaChcbiAgICAgICAgICAgIGAke29ic2VydmF0aW9uLnBvaW50X25hbWV9ICgke29ic2VydmF0aW9uLnBvaW50X2lkfSkgYCxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbGV0IGluZGV4ID0gZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMuZmluZEluZGV4KFxuICAgICAgICAobXNnKSA9PiBtc2cuZXZlbnRfaWQgPT09IGV2ZW50LmlkLFxuICAgICAgKTtcblxuICAgICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgICBzZXRFeGNlcHRpb25BbGVydCh7XG4gICAgICAgICAgbWVzc2FnZXM6IFtcbiAgICAgICAgICAgIC4uLmV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBtZXNzYWdlOiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldmVudF9kYXRhX21pc3NpbmcnKX08L3A+XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIGV2ZW50X2lkOiBldmVudC5pZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSxcbiAgICAgICAgICBldmVudF9pZHM6IFsuLi5leGNlcHRpb25BbGVydC5ldmVudF9pZHMsIGV2ZW50LmlkXSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gc2FtZSBjaGVjayBhcyBhYm92ZSBidXQgdGhpcyB0aW1lIGZvciB0aGUgZXZlbnQgcGF0aC4gSWYgZWRnZSBkb2Vzbid0IGV4aXN0LCBpdCdzIGluZGljYXRlcyB0aGF0IG9uZSBvZiB0aGVcbiAgICAvLyBwb2ludHMgZG93bnN0cmVhbSBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZFBhdGhNZXNzYWdlczogYW55ID0gW107XG4gICAgZXZlbnQucGF0aC5mb3JFYWNoKChwYXRoOiBhbnkpID0+IHtcbiAgICAgIGxldCBlZGdlID0gZWRnZXNfZGF0YS5pdGVtcy5maW5kKChlZGdlKSA9PiBlZGdlLmlkID09PSBwYXRoLmVkZ2VfaWQpO1xuICAgICAgaWYgKGVkZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBlZGdlICR7cGF0aC5lZGdlX2lkfSBjYW4gbm90IGJlIGZvdW5kYCk7XG4gICAgICAgIGxldCBvYnNlcnZhdGlvbiA9IGV2ZW50Lm9ic2VydmF0aW9ucy5maW5kKFxuICAgICAgICAgIChvYnNlcnZhdGlvbikgPT4gb2JzZXJ2YXRpb24uaWQgPT09IHBhdGgubGFzdF9vYnNlcnZhdGlvbl9pZCxcbiAgICAgICAgKTtcbiAgICAgICAgbGV0IGxhc3RPYnNlcnZhdGlvblBvaW50ID0gJ05vdCBmb3VuZCc7XG4gICAgICAgIGlmIChvYnNlcnZhdGlvbikge1xuICAgICAgICAgIGxhc3RPYnNlcnZhdGlvblBvaW50ID0gb2JzZXJ2YXRpb24ucG9pbnRfbmFtZTtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdsYXN0T2JzZXJ2YXRpb25Qb2ludCcsIGxhc3RPYnNlcnZhdGlvblBvaW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGludmFsaWRQYXRoTWVzc2FnZXMucHVzaChgJHtsYXN0T2JzZXJ2YXRpb25Qb2ludH0gYCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBpZiAoaW52YWxpZFBhdGhNZXNzYWdlcy5sZW5ndGggIT09IDApIHtcbiAgICAgIHNldEV4Y2VwdGlvbkFsZXJ0KHtcbiAgICAgICAgbWVzc2FnZXM6IFtcbiAgICAgICAgICAuLi5leGNlcHRpb25BbGVydC5tZXNzYWdlcyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBtZXNzYWdlOiAoXG4gICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50X3ZlcmlmeV9jb29yZGluYXRlcycpfTwvcD5cbiAgICAgICAgICAgICAgICA8c3Bhbj57aW52YWxpZFBhdGhNZXNzYWdlc308L3NwYW4+XG4gICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIGV2ZW50X2lkOiBldmVudC5pZCxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgICBldmVudF9pZHM6IFsuLi5leGNlcHRpb25BbGVydC5ldmVudF9pZHMsIGV2ZW50LmlkXSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV2ZW50SXRlbUNsaWNrID0gKFxuICAgIGV2ZW50OiBJRXZlbnQsXG4gICAgcmVmOiBSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+IHwgbnVsbCxcbiAgKSA9PiB7XG4gICAgaWYgKHJlZiAhPT0gbnVsbCkgb25Nb3VzZUxlYXZlRXZlbnQoKTtcbiAgICAvLyBpZiAoaG92ZXJlZEV2ZW50UGF0aHMgJiYgbWFwKSB7XG4gICAgLy8gICAgIGhvdmVyZWRFdmVudFBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAvLyAgICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAvLyAgICAgfSk7XG4gICAgLy8gfVxuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudFBhdGhzKFtdKSk7XG4gICAgLy8gZGlzcGF0Y2goc2V0SG92ZXJFdmVudEluZGljYXRvcihudWxsKSk7XG4gICAgZGlzcGF0Y2goc2V0Rm9jdXNlZEV2ZW50KGV2ZW50KSk7XG4gICAgc2V0RmlsdGVyUG9wdXBPcGVuKGZhbHNlKTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgIH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mZXZlbnRJZD0ke1xuICAgICAgICAgIGV2ZW50LmlkXG4gICAgICAgIH0mdmFsdWVzRnJvbUtRTD0ke1xuICAgICAgICAgIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1cbiAgICAgICAgfSZ2YWxpZEV2ZW50PSR7dmFsaWRhdGVFdmVudChldmVudCl9YCxcbiAgICAgICk7XG4gICAgfSwgNTAwKTtcbiAgfTtcblxuICBjb25zdCBvbk1vdXNlRW50ZXJFdmVudCA9IChldmVudCkgPT4ge1xuICAgIGlmICghZm9jdXNlZEV2ZW50ICYmICFob3ZlcmVkRXZlbnQgJiYgdmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChldmVudCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlTGVhdmVFdmVudCA9ICgpID0+IHtcbiAgICBpZiAoaG92ZXJlZEV2ZW50ICYmIGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICB9KTtcblxuICAgICAgaWYgKGhvdmVyZWRFZGdlUGF0aHMpIHtcbiAgICAgICAgaG92ZXJlZEVkZ2VQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgbGV0IGxheWVycyA9IG1hcC5fbGF5ZXJzO1xuICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBsYXllcnMpIHtcbiAgICAgICAgY29uc3Qga2FuZG9fb2JqZWN0ID0gbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3Q7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBrYW5kb19vYmplY3Q/LmluY2x1ZGVzKCdFdmVudEJvZHknKSB8fFxuICAgICAgICAgIFtcbiAgICAgICAgICAgICdFdmVudFRhaWwnLFxuICAgICAgICAgICAgJ1NhbXBsaW5nUG9pbnQnLFxuICAgICAgICAgICAgJ0RlY29yYXRvcicsXG4gICAgICAgICAgICAnSG92ZXJlZEVkZ2UnLFxuICAgICAgICAgICAgJ0hvdmVyZWRFZGdlRnJvbnQnLFxuICAgICAgICAgICAgJ0ZvY3VzZWRFZGdlJyxcbiAgICAgICAgICAgICdGb2N1c2VkRWRnZUZyb250JyxcbiAgICAgICAgICBdLmluY2x1ZGVzKGthbmRvX29iamVjdClcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKGxheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChudWxsKSk7XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtdKSk7XG4gIH07XG5cbiAgY29uc3QgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCA9ICgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKGdldEV2ZW50SWRGcm9tVVJMKCkgPT09ICdudWxsJyB8fCBnZXRFdmVudElkRnJvbVVSTCgpID09PSBudWxsKSAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICk7XG4gIH07XG5cbiAgY29uc3Qgc2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09IG51bGwgJiZcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09ICdudWxsJyAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICkge1xuICAgICAgbGV0IGV2ZW50ID0gZXZlbnRzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgKGU6IElFdmVudCkgPT4gZS5pZCA9PT0gcGFyc2VJbnQoZ2V0RXZlbnRJZEZyb21VUkwoKSEpLFxuICAgICAgKTtcbiAgICAgIGlmIChldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGhhbmRsZUV2ZW50SXRlbUNsaWNrKGV2ZW50LCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdmFsaWRFdmVudCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGxldCBldmVudCA9IGV2ZW50c19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAoZSkgPT4gZS5pZC50b1N0cmluZygpID09PSBnZXRFdmVudElkRnJvbVVSTCgpLFxuICAgICk7XG5cbiAgICBpZiAoZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHZhbGlkYXRlRXZlbnQoZXZlbnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gIH0sIFtcbiAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgYXJlYXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGV2ZW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gIF0pO1xuXG4gIGNvbnN0IHRyaWdnZXJTb3J0ID0gKHNvcnQ6IG51bWJlcikgPT4ge1xuICAgIGlmIChcbiAgICAgIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCAmJlxuICAgICAgaXNEYXRhRmV0Y2hlZEFuZEV2ZW50Tm90Rm9jdXNlZCgpXG4gICAgKSB7XG4gICAgICBsZXQgS1FMO1xuICAgICAgbGV0IFVSTDtcbiAgICAgIHN3aXRjaCAoc29ydCkge1xuICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICduZXdlc3QnKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lXG4gICAgICAgICAgfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtcbiAgICAgICAgICAgIGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRcbiAgICAgICAgICB9JmV2ZW50SWQ9JHtnZXRFdmVudElkRnJvbVVSTCgpfSZsb2NhbGU9JHtcbiAgICAgICAgICAgIG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGVcbiAgICAgICAgICB9JnZhbHVlc0Zyb21LUUw9JHtLUUx9JnZhbGlkRXZlbnQ9JHt2YWxpZEV2ZW50fWA7XG4gICAgICAgICAgaGlzdG9yeS5wdXNoKFVSTCk7XG4gICAgICAgICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbShLUUwpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAyOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnb2xkZXN0Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZVxuICAgICAgICAgIH0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZldmVudElkPSR7Z2V0RXZlbnRJZEZyb21VUkwoKX0mbG9jYWxlPSR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlXG4gICAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7S1FMfSZ2YWxpZEV2ZW50PSR7dmFsaWRFdmVudH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMzpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ3NldmVyaXR5Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZVxuICAgICAgICAgIH0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7XG4gICAgICAgICAgICBnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkXG4gICAgICAgICAgfSZldmVudElkPSR7Z2V0RXZlbnRJZEZyb21VUkwoKX0mbG9jYWxlPSR7XG4gICAgICAgICAgICBuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlXG4gICAgICAgICAgfSZ2YWx1ZXNGcm9tS1FMPSR7S1FMfSZ2YWxpZEV2ZW50PSR7dmFsaWRFdmVudH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGNhbGNFdmVudHNSZWFsQW1vdW50ID0gKCkgPT4ge1xuICAgIGxldCBldmVudHNDb3VudDogbnVtYmVyIHwgc3RyaW5nID0gMDtcbiAgICBldmVudHNDb3VudCA9IGV2ZW50c19kYXRhLmV2ZW50c19jb3VudDtcbiAgICBpZiAoZXZlbnRzQ291bnQgPiA1MClcbiAgICAgIGV2ZW50c0NvdW50ID0gYCR7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcubW9yZV90aGFuJyl9IDUwYDtcblxuICAgIHJldHVybiBldmVudHNDb3VudDtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpc3BhdGNoKFxuICAgICAgZmV0Y2hFdmVudHMoXG4gICAgICAgIHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgIGdldEtRTFZhbHVlc0Zyb21VUkwoKSB8fCAnREVGQVVMVCcsXG4gICAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCksXG4gICAgICApLFxuICAgICk7XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICAhZXZlbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIHNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcygpO1xuICAgIH1cbiAgfSwgW1xuICAgIGV2ZW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIHBvaW50c19kYXRhLmlzRmV0Y2hpbmcsXG4gICAgYXJlYXNfZGF0YS5pc0ZldGNoaW5nLFxuICAgIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW0sXG4gIF0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydzaWRlbmF2ICcgKyAoc2lkZW5hdkV4cGFuZGVkID8gJycgOiAnc2lkZW5hdi0tY29sbGFwc2VkJyl9PlxuICAgICAge2dsb2JhbF9kYXRhLm1vcmVJbmZvICE9PSB1bmRlZmluZWQgJiYgZ2xvYmFsX2RhdGEubW9yZUluZm8uYWN0aXZlICYmIChcbiAgICAgICAgPE1vcmVJbmZvIC8+XG4gICAgICApfVxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17XG4gICAgICAgICAgJ2V2ZW50LWluZm8gJyArXG4gICAgICAgICAgKCFob3ZlcmVkRXZlbnQgJiYgZm9jdXNlZEV2ZW50ICE9PSBudWxsXG4gICAgICAgICAgICA/ICcnXG4gICAgICAgICAgICA6ICdldmVudC1pbmZvLS1jb2xsYXBzZWQnKVxuICAgICAgICB9XG4gICAgICA+XG4gICAgICAgIHshaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgPEV2ZW50SW5mb1xuICAgICAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudH1cbiAgICAgICAgICAgIHJlT3BlbkZpbHRlcj17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKHRydWUpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPVwidG9nZ2xlLWV4cGFuc2lvbi1idXR0b25cIlxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlRXhwYW5zaW9uVG9nZ2xlKCk7XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibmF2LWV4cGFuc2lvbi1pY29uXCI+XG4gICAgICAgICAgPEZvbnRBd2Vzb21lSWNvblxuICAgICAgICAgICAgaWNvbj17c2lkZW5hdkV4cGFuZGVkID8gZmFDYXJldExlZnQgOiBmYUNhcmV0UmlnaHR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXsndG9nZ2xlLWV4cGFuc2lvbi1idXR0b24tbW9iaWxlJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8YSBocmVmPVwiI1wiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFBcnJvd0xlZnR9IC8+XG4gICAgICAgICAgPHNwYW4+IHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5iYWNrX3RvX2RldGFpbHMnKX08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtaGVhZGVyXCI+XG4gICAgICAgIHtsYXN0VmlzaXRlZCAmJiAhaXNGZXRjaGluZyAmJiAoXG4gICAgICAgICAgPExpbmsgY2xhc3NOYW1lPVwiYmFja1wiIHRvPXtsYXN0VmlzaXRlZH0+XG4gICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICBzcmM9e0xlZnRBcnJvd0ljb259XG4gICAgICAgICAgICAgIGhlaWdodD1cIjEwcHhcIlxuICAgICAgICAgICAgICB3aWR0aD1cIjEycHhcIlxuICAgICAgICAgICAgICBhbHQ9XCJiYWNrXCJcbiAgICAgICAgICAgIC8+eycgJ31cbiAgICAgICAgICAgIHtpMThuLnQoJ2FyZWFfc2NyZWVuLmJhY2snKX1cbiAgICAgICAgICA8L0xpbms+XG4gICAgICAgICl9XG4gICAgICAgIDxoND5cbiAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRzX2xpc3QnKX1cbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydldmVudHMtaGVhZGVyX19ldmVudHNfYW1vdW50J30+XG4gICAgICAgICAgICAoe2NhbGNFdmVudHNSZWFsQW1vdW50KCl9KVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9oND5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXJpbmdcIj5cbiAgICAgICAgICB7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmIChcbiAgICAgICAgICAgIDxTb3J0XG4gICAgICAgICAgICAgIHRyaWdnZXJTb3J0PXt0cmlnZ2VyU29ydH1cbiAgICAgICAgICAgICAgZXZlbnRzPXtldmVudHNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgZXZlbnRzRmV0Y2hpbmc9e2V2ZW50c19kYXRhLmlzRmV0Y2hpbmd9XG4gICAgICAgICAgICAgIGFjdGl2ZUZpbHRlcj17Z2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaWNvbnNcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZmlsdGVyXCJcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKCFmaWx0ZXJQb3B1cE9wZW4pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmlsdGVySWNvbiB3aWR0aD1cIjE3cHhcIiBoZWlnaHQ9XCIxN3B4XCIgZmlsbD1cIiNmNjAwNGZcIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIHtwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgIWZvY3VzZWRFdmVudCAmJiAoXG4gICAgICAgICAgPEZpbHRlckNvbnRhaW5lclxuICAgICAgICAgICAgZmlsdGVyUG9wdXBPcGVuPXtmaWx0ZXJQb3B1cE9wZW59XG4gICAgICAgICAgICBmZXRjaFR5cGU9eydFdmVudEZpbHRlcid9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtY29udGFpbmVyIHNjcm9sbGJhciBcIj5cbiAgICAgICAge2xvYWRlcigpfVxuICAgICAgICB7IWlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICBpdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydldmVudHNfX2JsYW5rc2xhdGUnfT5cbiAgICAgICAgICAgICAgPGltZyBzcmM9e05vRXZlbnRzSW1hZ2V9IGFsdD1cIk5vRXZlbnRzSWNvblwiIC8+XG4gICAgICAgICAgICAgIDxoMj57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuaGVhZGVyJyl9PC9oMj5cbiAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmJvZHknKX08L3A+XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYXBwbHlfZGVmYXVsdF9maWx0ZXJfYnV0dG9uJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBhcHBseURlZmF1bHRGaWx0ZXIoKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5idXR0b24nKX1cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAge2l0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImV2ZW50cyBcIj5cbiAgICAgICAgICAgICAge2l0ZW1zLm1hcCgoZXZlbnQ6IGFueSkgPT4gKFxuICAgICAgICAgICAgICAgIDxsaSBrZXk9e2V2ZW50LmlkfSBjbGFzc05hbWU9XCJldmVudFwiIGRhdGEtZXZlbnQtaWQ9e2V2ZW50LmlkfT5cbiAgICAgICAgICAgICAgICAgIDxTZXZlcmVFdmVudFxuICAgICAgICAgICAgICAgICAgICBldmVudD17ZXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZUNsaWNrPXtoYW5kbGVFdmVudEl0ZW1DbGlja31cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUVudGVyRXZlbnQ9e29uTW91c2VFbnRlckV2ZW50fVxuICAgICAgICAgICAgICAgICAgICBvbk1vdXNlTGVhdmVFdmVudD17b25Nb3VzZUxlYXZlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlRXZlbnQ9e3ZhbGlkYXRlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbkFsZXJ0PXtleGNlcHRpb25BbGVydH1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFdmVudHNMaXN0KTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUNBLElBQUFBLGtCQUFBLEdBQUFDLE9BQUE7QUFLQSxJQUFBQyxpQkFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsTUFBQSxHQUFBQyx1QkFBQSxDQUFBSCxPQUFBO0FBQ0EsSUFBQUksV0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssZUFBQSxHQUFBTCxPQUFBO0FBQWlFLElBQUFNLFVBQUEsR0FBQUMsc0JBQUEsQ0FBQVAsT0FBQTtBQUFBLElBQUFRLE9BQUEsR0FBQVIsT0FBQTtBQUFBLElBQUFTLFVBQUEsR0FBQUYsc0JBQUEsQ0FBQVAsT0FBQTtBQUlqRSxJQUFBVSxZQUFBLEdBQUFWLE9BQUE7QUFFQSxJQUFBVyxXQUFBLEdBQUFYLE9BQUE7QUFDQSxJQUFBWSxRQUFBLEdBQUFaLE9BQUE7QUFRQSxJQUFBYSxTQUFBLEdBQUFiLE9BQUE7QUFDQSxJQUFBYyxLQUFBLEdBQUFQLHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBZSxJQUFBLEdBQUFmLE9BQUE7QUFDQUEsT0FBQTtBQUNBLElBQUFnQixVQUFBLEdBQUFULHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBaUIsU0FBQSxHQUFBVixzQkFBQSxDQUFBUCxPQUFBO0FBQ0EsSUFBQWtCLGdCQUFBLEdBQUFYLHNCQUFBLENBQUFQLE9BQUE7QUFDQSxJQUFBbUIsS0FBQSxHQUFBWixzQkFBQSxDQUFBUCxPQUFBO0FBQTBCLFNBQUFvQix5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWxCLHdCQUFBc0IsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLGFBQUFFLE9BQUEsQ0FBQUYsR0FBQSx5QkFBQUEsR0FBQSw0QkFBQUcsT0FBQSxFQUFBSCxHQUFBLFVBQUFJLEtBQUEsR0FBQVQsd0JBQUEsQ0FBQUMsV0FBQSxPQUFBUSxLQUFBLElBQUFBLEtBQUEsQ0FBQUMsR0FBQSxDQUFBTCxHQUFBLFlBQUFJLEtBQUEsQ0FBQUUsR0FBQSxDQUFBTixHQUFBLFNBQUFPLE1BQUEsV0FBQUMscUJBQUEsR0FBQUMsTUFBQSxDQUFBQyxjQUFBLElBQUFELE1BQUEsQ0FBQUUsd0JBQUEsV0FBQUMsR0FBQSxJQUFBWixHQUFBLFFBQUFZLEdBQUEsa0JBQUFILE1BQUEsQ0FBQUksU0FBQSxDQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQWYsR0FBQSxFQUFBWSxHQUFBLFNBQUFJLElBQUEsR0FBQVIscUJBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBWCxHQUFBLEVBQUFZLEdBQUEsY0FBQUksSUFBQSxLQUFBQSxJQUFBLENBQUFWLEdBQUEsSUFBQVUsSUFBQSxDQUFBQyxHQUFBLEtBQUFSLE1BQUEsQ0FBQUMsY0FBQSxDQUFBSCxNQUFBLEVBQUFLLEdBQUEsRUFBQUksSUFBQSxZQUFBVCxNQUFBLENBQUFLLEdBQUEsSUFBQVosR0FBQSxDQUFBWSxHQUFBLFNBQUFMLE1BQUEsQ0FBQUosT0FBQSxHQUFBSCxHQUFBLE1BQUFJLEtBQUEsSUFBQUEsS0FBQSxDQUFBYSxHQUFBLENBQUFqQixHQUFBLEVBQUFPLE1BQUEsWUFBQUEsTUFBQTtBQS9CMUI7O0FBaUNBLFNBQVNXLGVBQWVBLENBQUNDLEtBQWdCLEVBQUU7RUFDekMsSUFDRUMsV0FBVyxHQU1URCxLQUFLLENBTlBDLFdBQVc7SUFDWEMsV0FBVyxHQUtURixLQUFLLENBTFBFLFdBQVc7SUFDWEMsVUFBVSxHQUlSSCxLQUFLLENBSlBHLFVBQVU7SUFDVkMsV0FBVyxHQUdUSixLQUFLLENBSFBJLFdBQVc7SUFDWEMsVUFBVSxHQUVSTCxLQUFLLENBRlBLLFVBQVU7SUFDVkMsZ0JBQWdCLEdBQ2ROLEtBQUssQ0FEUE0sZ0JBQWdCO0VBR2xCLE9BQU87SUFDTEwsV0FBVyxFQUFYQSxXQUFXO0lBQ1hDLFdBQVcsRUFBWEEsV0FBVztJQUNYQyxVQUFVLEVBQVZBLFVBQVU7SUFDVkMsV0FBVyxFQUFYQSxXQUFXO0lBQ1hDLFVBQVUsRUFBVkEsVUFBVTtJQUNWQyxnQkFBZ0IsRUFBaEJBO0VBQ0YsQ0FBQztBQUNIO0FBTUEsSUFBTUMsVUFBNEIsR0FBRyxTQUEvQkEsVUFBNEJBLENBQUFDLElBQUEsRUFRNUI7RUFBQSxJQVBKSCxVQUFVLEdBQUFHLElBQUEsQ0FBVkgsVUFBVTtJQUNWRCxXQUFXLEdBQUFJLElBQUEsQ0FBWEosV0FBVztJQUNYRCxVQUFVLEdBQUFLLElBQUEsQ0FBVkwsVUFBVTtJQUNWRCxXQUFXLEdBQUFNLElBQUEsQ0FBWE4sV0FBVztJQUNYTyxlQUFlLEdBQUFELElBQUEsQ0FBZkMsZUFBZTtJQUNmUixXQUFXLEdBQUFPLElBQUEsQ0FBWFAsV0FBVztJQUNYSyxnQkFBZ0IsR0FBQUUsSUFBQSxDQUFoQkYsZ0JBQWdCO0VBRWhCLElBQU1JLFFBQVEsR0FBRyxJQUFBQyx1QkFBVyxFQUFDLENBQUM7RUFDOUIsSUFDRUMsS0FBSyxHQU1IWCxXQUFXLENBTmJXLEtBQUs7SUFDTEMsVUFBVSxHQUtSWixXQUFXLENBTGJZLFVBQVU7SUFDVkMsWUFBWSxHQUlWYixXQUFXLENBSmJhLFlBQVk7SUFDWkMsWUFBWSxHQUdWZCxXQUFXLENBSGJjLFlBQVk7SUFDWkMsaUJBQWlCLEdBRWZmLFdBQVcsQ0FGYmUsaUJBQWlCO0lBQ2pCQyxnQkFBZ0IsR0FDZGhCLFdBQVcsQ0FEYmdCLGdCQUFnQjtFQUVsQixJQUFRQyxnQkFBZ0IsR0FBVWhCLFdBQVcsQ0FBckNnQixnQkFBZ0I7SUFBRUMsR0FBRyxHQUFLakIsV0FBVyxDQUFuQmlCLEdBQUc7RUFDN0IsSUFBQUMsU0FBQSxHQUE4QyxJQUFBQyxlQUFRLEVBQUMsSUFBSSxDQUFDO0lBQUFDLFVBQUEsT0FBQUMsZUFBQSxDQUFBdkMsT0FBQSxFQUFBb0MsU0FBQTtJQUFyREksZUFBZSxHQUFBRixVQUFBO0lBQUVHLGtCQUFrQixHQUFBSCxVQUFBO0VBQzFDLElBQUFJLFVBQUEsR0FBNEMsSUFBQUwsZUFBUSxFQUdqRDtNQUFFTSxRQUFRLEVBQUUsQ0FBQztRQUFFQyxPQUFPLEVBQUUsRUFBRTtRQUFFQyxRQUFRLEVBQUU7TUFBRSxDQUFDLENBQUM7TUFBRUMsU0FBUyxFQUFFO0lBQUcsQ0FBQyxDQUFDO0lBQUFDLFVBQUEsT0FBQVIsZUFBQSxDQUFBdkMsT0FBQSxFQUFBMEMsVUFBQTtJQUh4RE0sY0FBYyxHQUFBRCxVQUFBO0lBQUVFLGlCQUFpQixHQUFBRixVQUFBO0VBSXhDLElBQU1HLFdBQVcsR0FBRyxJQUFBQywwQkFBYyxFQUFDLENBQUM7RUFFcEMsSUFBTUMsUUFBUSxHQUFHLFNBQVhBLFFBQVFBLENBQUEsRUFBUztJQUNyQixPQUFPLElBQUlDLGVBQWUsQ0FBQyxJQUFBQywyQkFBVyxFQUFDLENBQUMsQ0FBQ0MsTUFBTSxDQUFDO0VBQ2xELENBQUM7RUFDRCxJQUFNQyxPQUFPLEdBQUcsSUFBQUMsMEJBQVUsRUFBQyxDQUFDO0VBQzVCLElBQU1DLEtBQUssR0FBR04sUUFBUSxDQUFDLENBQUM7RUFDeEIsSUFBTU8sbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBQSxFQUFTO0lBQ2hDLE9BQU9ELEtBQUssQ0FBQ3ZELEdBQUcsQ0FBQyxlQUFlLENBQUM7RUFDbkMsQ0FBQztFQUNELElBQU15RCxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFBLEVBQVM7SUFDOUIsT0FBT0YsS0FBSyxDQUFDdkQsR0FBRyxDQUFDLFNBQVMsQ0FBQztFQUM3QixDQUFDO0VBRUQsSUFBTTBELE1BQU0sR0FBRyxTQUFUQSxNQUFNQSxDQUFBLEVBQVM7SUFDbkIsSUFDR2hDLFVBQVUsSUFBSUQsS0FBSyxDQUFDa0MsTUFBTSxLQUFLLENBQUMsSUFDakN6QyxVQUFVLENBQUMwQyxRQUFRLENBQUNELE1BQU0sS0FBSyxDQUFDLElBQ2hDMUMsV0FBVyxDQUFDUyxVQUFVLElBQ3RCVixVQUFVLENBQUNVLFVBQVUsRUFDckI7TUFDQSxvQkFBT3ZELE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUE7UUFBS0MsU0FBUyxFQUFFO01BQVMsQ0FBTSxDQUFDO0lBQ3pDLENBQUMsTUFBTTtNQUNMLE9BQU8sSUFBSTtJQUNiO0VBQ0YsQ0FBQztFQUVELElBQU1DLHFCQUFxQixHQUFHLFNBQXhCQSxxQkFBcUJBLENBQUEsRUFBUztJQUNsQ3hDLFFBQVEsQ0FBQyxJQUFBeUMseUJBQWUsRUFBQyxDQUFDMUMsZUFBZSxDQUFDLENBQUM7RUFDN0MsQ0FBQztFQUVELElBQU0yQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFBLEVBQVM7SUFDL0JaLE9BQU8sQ0FBQ2EsSUFBSSxLQUFBQyxNQUFBLENBQ05oRCxnQkFBZ0IsQ0FBQ2lELFVBQVUsQ0FBQ0MsSUFBSSxnQ0FBQUYsTUFBQSxDQUE2QnBELFdBQVcsQ0FBQ2dCLGdCQUFnQixjQUFBb0MsTUFBQSxDQUFXaEQsZ0JBQWdCLENBQUNpRCxVQUFVLENBQUNFLE1BQU0sb0JBQzVJLENBQUM7SUFDRC9DLFFBQVEsQ0FBQyxJQUFBZ0QsNkJBQW1CLEVBQUMsRUFBRSxDQUFDLENBQUM7RUFDbkMsQ0FBQztFQUVELElBQU1DLGFBQWEsR0FBRyxTQUFoQkEsYUFBYUEsQ0FBSUMsS0FBYSxFQUFLO0lBQ3ZDO0lBQ0E7SUFDQSxJQUFJQywyQkFBZ0MsR0FBRyxFQUFFO0lBQ3pDRCxLQUFLLENBQUNFLFlBQVksQ0FBQ0MsT0FBTyxDQUFDLFVBQUNDLFdBQWdCLEVBQUs7TUFDL0M7TUFDQSxJQUFJLENBQUNBLFdBQVcsQ0FBQ0MsYUFBYSxFQUFFO1FBQzlCLElBQUlDLElBQUksR0FBRy9ELFVBQVUsQ0FBQ1MsS0FBSyxDQUFDdUQsSUFBSSxDQUM5QixVQUFDRCxJQUFJO1VBQUEsT0FBS0EsSUFBSSxDQUFDRSxlQUFlLEtBQUtKLFdBQVcsQ0FBQ0ssUUFBUTtRQUFBLENBQ3pELENBQUM7UUFDRCxJQUFJSCxJQUFJLEtBQUtJLFNBQVMsRUFBRTtVQUN0QlQsMkJBQTJCLENBQUNSLElBQUksSUFBQUMsTUFBQSxDQUMzQlUsV0FBVyxDQUFDTyxVQUFVLFFBQUFqQixNQUFBLENBQUtVLFdBQVcsQ0FBQ0ssUUFBUSxPQUNwRCxDQUFDO1FBQ0g7TUFDRjtJQUNGLENBQUMsQ0FBQztJQUVGLElBQUlSLDJCQUEyQixDQUFDZixNQUFNLEtBQUssQ0FBQyxFQUFFO01BQzVDLElBQUkwQixLQUFLLEdBQUd4QyxjQUFjLENBQUNMLFFBQVEsQ0FBQzhDLFNBQVMsQ0FDM0MsVUFBQ0MsR0FBRztRQUFBLE9BQUtBLEdBQUcsQ0FBQzdDLFFBQVEsS0FBSytCLEtBQUssQ0FBQ2UsRUFBRTtNQUFBLENBQ3BDLENBQUM7TUFFRCxJQUFJSCxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUU7UUFDaEJ2QyxpQkFBaUIsQ0FBQztVQUNoQk4sUUFBUSxLQUFBMkIsTUFBQSxLQUFBc0IsbUJBQUEsQ0FBQTVGLE9BQUEsRUFDSGdELGNBQWMsQ0FBQ0wsUUFBUSxJQUMxQjtZQUNFQyxPQUFPLGVBQ0x0RSxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBLENBQUExRixNQUFBLENBQUEwQixPQUFBLENBQUE2RixRQUFBLHFCQUNFdkgsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxZQUFJOEIsYUFBSSxDQUFDQyxDQUFDLENBQUMsb0NBQW9DLENBQUssQ0FDcEQsQ0FDSDtZQUNEbEQsUUFBUSxFQUFFK0IsS0FBSyxDQUFDZTtVQUNsQixDQUFDLEVBQ0Y7VUFDRDdDLFNBQVMsS0FBQXdCLE1BQUEsS0FBQXNCLG1CQUFBLENBQUE1RixPQUFBLEVBQU1nRCxjQUFjLENBQUNGLFNBQVMsSUFBRThCLEtBQUssQ0FBQ2UsRUFBRTtRQUNuRCxDQUFDLENBQUM7TUFDSjtNQUNBLE9BQU8sS0FBSztJQUNkOztJQUVBO0lBQ0E7SUFDQSxJQUFJSyxtQkFBd0IsR0FBRyxFQUFFO0lBQ2pDcEIsS0FBSyxDQUFDcUIsSUFBSSxDQUFDbEIsT0FBTyxDQUFDLFVBQUNrQixJQUFTLEVBQUs7TUFDaEMsSUFBSWYsSUFBSSxHQUFHL0QsVUFBVSxDQUFDUyxLQUFLLENBQUN1RCxJQUFJLENBQUMsVUFBQ0QsSUFBSTtRQUFBLE9BQUtBLElBQUksQ0FBQ1MsRUFBRSxLQUFLTSxJQUFJLENBQUNDLE9BQU87TUFBQSxFQUFDO01BQ3BFLElBQUloQixJQUFJLEtBQUtJLFNBQVMsRUFBRTtRQUN0QmEsT0FBTyxDQUFDQyxLQUFLLFNBQUE5QixNQUFBLENBQVMyQixJQUFJLENBQUNDLE9BQU8sc0JBQW1CLENBQUM7UUFDdEQsSUFBSWxCLFdBQVcsR0FBR0osS0FBSyxDQUFDRSxZQUFZLENBQUNLLElBQUksQ0FDdkMsVUFBQ0gsV0FBVztVQUFBLE9BQUtBLFdBQVcsQ0FBQ1csRUFBRSxLQUFLTSxJQUFJLENBQUNJLG1CQUFtQjtRQUFBLENBQzlELENBQUM7UUFDRCxJQUFJQyxvQkFBb0IsR0FBRyxXQUFXO1FBQ3RDLElBQUl0QixXQUFXLEVBQUU7VUFDZnNCLG9CQUFvQixHQUFHdEIsV0FBVyxDQUFDTyxVQUFVO1VBQzdDWSxPQUFPLENBQUNDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRUUsb0JBQW9CLENBQUM7UUFDN0Q7O1FBRUE7TUFDRjtJQUNGLENBQUMsQ0FBQzs7SUFFRixJQUFJTixtQkFBbUIsQ0FBQ2xDLE1BQU0sS0FBSyxDQUFDLEVBQUU7TUFDcENiLGlCQUFpQixDQUFDO1FBQ2hCTixRQUFRLEtBQUEyQixNQUFBLEtBQUFzQixtQkFBQSxDQUFBNUYsT0FBQSxFQUNIZ0QsY0FBYyxDQUFDTCxRQUFRLElBQzFCO1VBQ0VDLE9BQU8sZUFDTHRFLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUEsQ0FBQTFGLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQTZGLFFBQUEscUJBQ0V2SCxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBLFlBQUk4QixhQUFJLENBQUNDLENBQUMsQ0FBQywwQ0FBMEMsQ0FBSyxDQUFDLGVBQzNEekgsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxlQUFPZ0MsbUJBQTBCLENBQ2pDLENBQ0g7VUFDRG5ELFFBQVEsRUFBRStCLEtBQUssQ0FBQ2U7UUFDbEIsQ0FBQyxFQUNGO1FBQ0Q3QyxTQUFTLEtBQUF3QixNQUFBLEtBQUFzQixtQkFBQSxDQUFBNUYsT0FBQSxFQUFNZ0QsY0FBYyxDQUFDRixTQUFTLElBQUU4QixLQUFLLENBQUNlLEVBQUU7TUFDbkQsQ0FBQyxDQUFDO01BQ0YsT0FBTyxLQUFLO0lBQ2Q7SUFFQSxPQUFPLElBQUk7RUFDYixDQUFDO0VBRUQsSUFBTVksb0JBQW9CLEdBQUcsU0FBdkJBLG9CQUFvQkEsQ0FDeEIzQixLQUFhLEVBQ2I0QixHQUFrQyxFQUMvQjtJQUNILElBQUlBLEdBQUcsS0FBSyxJQUFJLEVBQUVDLGlCQUFpQixDQUFDLENBQUM7SUFDckM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQS9FLFFBQVEsQ0FBQyxJQUFBZ0Ysd0JBQWUsRUFBQzlCLEtBQUssQ0FBQyxDQUFDO0lBQ2hDbkMsa0JBQWtCLENBQUMsS0FBSyxDQUFDO0lBQ3pCa0UsVUFBVSxDQUFDLFlBQU07TUFDZm5ELE9BQU8sQ0FBQ2EsSUFBSSxLQUFBQyxNQUFBLENBQ05oRCxnQkFBZ0IsQ0FBQ2lELFVBQVUsQ0FBQ0MsSUFBSSxnQ0FBQUYsTUFBQSxDQUNsQ3BELFdBQVcsQ0FBQ2dCLGdCQUFnQixjQUFBb0MsTUFBQSxDQUNuQmhELGdCQUFnQixDQUFDaUQsVUFBVSxDQUFDRSxNQUFNLGVBQUFILE1BQUEsQ0FDM0NNLEtBQUssQ0FBQ2UsRUFBRSxxQkFBQXJCLE1BQUEsQ0FFUnBELFdBQVcsQ0FBQzBGLGdCQUFnQixrQkFBQXRDLE1BQUEsQ0FDZkssYUFBYSxDQUFDQyxLQUFLLENBQUMsQ0FDckMsQ0FBQztJQUNILENBQUMsRUFBRSxHQUFHLENBQUM7RUFDVCxDQUFDO0VBRUQsSUFBTWlDLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUlqQyxLQUFLLEVBQUs7SUFDbkMsSUFBSSxDQUFDOUMsWUFBWSxJQUFJLENBQUNDLFlBQVksSUFBSTRDLGFBQWEsQ0FBQ0MsS0FBSyxDQUFDLEVBQUU7TUFDMURsRCxRQUFRLENBQUMsSUFBQW9GLHdCQUFlLEVBQUNsQyxLQUFLLENBQUMsQ0FBQztJQUNsQztFQUNGLENBQUM7RUFFRCxJQUFNNkIsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBQSxFQUFTO0lBQzlCLElBQUkxRSxZQUFZLElBQUlDLGlCQUFpQixJQUFJRyxHQUFHLEVBQUU7TUFDNUNILGlCQUFpQixDQUFDK0MsT0FBTyxDQUFDLFVBQUNrQixJQUFJLEVBQUs7UUFDbEM5RCxHQUFHLENBQUM0RSxXQUFXLENBQUNkLElBQUksQ0FBQztNQUN2QixDQUFDLENBQUM7TUFFRixJQUFJaEUsZ0JBQWdCLEVBQUU7UUFDcEJBLGdCQUFnQixDQUFDOEMsT0FBTyxDQUFDLFVBQUNrQixJQUFJLEVBQUs7VUFDakM5RCxHQUFHLENBQUM0RSxXQUFXLENBQUNkLElBQUksQ0FBQztRQUN2QixDQUFDLENBQUM7TUFDSjtNQUVBLElBQUllLE1BQU0sR0FBRzdFLEdBQUcsQ0FBQzhFLE9BQU87TUFDeEIsS0FBSyxJQUFNQyxRQUFRLElBQUlGLE1BQU0sRUFBRTtRQUM3QixJQUFNRyxZQUFZLEdBQUdILE1BQU0sQ0FBQ0UsUUFBUSxDQUFDLENBQUNDLFlBQVk7UUFDbEQsSUFDRSxDQUFBQSxZQUFZLGFBQVpBLFlBQVksdUJBQVpBLFlBQVksQ0FBRUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxLQUNuQyxDQUNFLFdBQVcsRUFDWCxlQUFlLEVBQ2YsV0FBVyxFQUNYLGFBQWEsRUFDYixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGtCQUFrQixDQUNuQixDQUFDQSxRQUFRLENBQUNELFlBQVksQ0FBQyxFQUN4QjtVQUNBaEYsR0FBRyxDQUFDNEUsV0FBVyxDQUFDQyxNQUFNLENBQUNFLFFBQVEsQ0FBQyxDQUFDO1FBQ25DO01BQ0Y7SUFDRjtJQUNBeEYsUUFBUSxDQUFDLElBQUFvRix3QkFBZSxFQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CcEYsUUFBUSxDQUFDLElBQUEyRiw2QkFBb0IsRUFBQyxFQUFFLENBQUMsQ0FBQztJQUNsQzNGLFFBQVEsQ0FBQyxJQUFBNEYsNEJBQW1CLEVBQUMsRUFBRSxDQUFDLENBQUM7RUFDbkMsQ0FBQztFQUVELElBQU1DLCtCQUErQixHQUFHLFNBQWxDQSwrQkFBK0JBLENBQUEsRUFBUztJQUM1QyxPQUNFLENBQUMzRCxpQkFBaUIsQ0FBQyxDQUFDLEtBQUssTUFBTSxJQUFJQSxpQkFBaUIsQ0FBQyxDQUFDLEtBQUssSUFBSSxLQUMvRDlCLFlBQVksS0FBSyxJQUFJLElBQ3JCRixLQUFLLENBQUNrQyxNQUFNLEtBQUssQ0FBQyxJQUNsQixDQUFDakMsVUFBVSxJQUNYLENBQUNSLFVBQVUsQ0FBQ1EsVUFBVSxJQUN0QixDQUFDVCxXQUFXLENBQUNTLFVBQVUsSUFDdkIsQ0FBQ1YsVUFBVSxDQUFDVSxVQUFVO0VBRTFCLENBQUM7RUFFRCxJQUFNMkYsOEJBQThCLEdBQUcsU0FBakNBLDhCQUE4QkEsQ0FBQSxFQUFTO0lBQzNDLElBQ0U1RCxpQkFBaUIsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUM1QkEsaUJBQWlCLENBQUMsQ0FBQyxLQUFLLE1BQU0sSUFDOUI5QixZQUFZLEtBQUssSUFBSSxJQUNyQkYsS0FBSyxDQUFDa0MsTUFBTSxLQUFLLENBQUMsSUFDbEIsQ0FBQ2pDLFVBQVUsSUFDWCxDQUFDUixVQUFVLENBQUNRLFVBQVUsSUFDdEIsQ0FBQ1QsV0FBVyxDQUFDUyxVQUFVLElBQ3ZCLENBQUNWLFVBQVUsQ0FBQ1UsVUFBVSxFQUN0QjtNQUNBLElBQUkrQyxLQUFLLEdBQUczRCxXQUFXLENBQUNXLEtBQUssQ0FBQ3VELElBQUksQ0FDaEMsVUFBQ3NDLENBQVM7UUFBQSxPQUFLQSxDQUFDLENBQUM5QixFQUFFLEtBQUsrQixRQUFRLENBQUM5RCxpQkFBaUIsQ0FBQyxDQUFFLENBQUM7TUFBQSxDQUN4RCxDQUFDO01BQ0QsSUFBSWdCLEtBQUssS0FBS1UsU0FBUyxFQUFFO1FBQ3ZCaUIsb0JBQW9CLENBQUMzQixLQUFLLEVBQUUsSUFBSSxDQUFDO01BQ25DO0lBQ0Y7RUFDRixDQUFDO0VBRUQsSUFBTStDLFVBQVUsR0FBRyxJQUFBQyxjQUFPLEVBQUMsWUFBTTtJQUMvQixJQUFJaEQsS0FBSyxHQUFHM0QsV0FBVyxDQUFDVyxLQUFLLENBQUN1RCxJQUFJLENBQ2hDLFVBQUNzQyxDQUFDO01BQUEsT0FBS0EsQ0FBQyxDQUFDOUIsRUFBRSxDQUFDa0MsUUFBUSxDQUFDLENBQUMsS0FBS2pFLGlCQUFpQixDQUFDLENBQUM7SUFBQSxDQUNoRCxDQUFDO0lBRUQsSUFBSWdCLEtBQUssS0FBS1UsU0FBUyxFQUFFO01BQ3ZCLE9BQU9YLGFBQWEsQ0FBQ0MsS0FBSyxDQUFDO0lBQzdCLENBQUMsTUFBTTtNQUNMLE9BQU8sSUFBSTtJQUNiO0VBQ0YsQ0FBQyxFQUFFLENBQ0QzRCxXQUFXLENBQUNhLFlBQVksRUFDeEJULFVBQVUsQ0FBQ1EsVUFBVSxFQUNyQlQsV0FBVyxDQUFDUyxVQUFVLEVBQ3RCVixVQUFVLENBQUNVLFVBQVUsRUFDckJaLFdBQVcsQ0FBQ1ksVUFBVSxDQUN2QixDQUFDO0VBRUYsSUFBTWlHLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFJQyxJQUFZLEVBQUs7SUFDcEMsSUFDRTdHLFdBQVcsQ0FBQzhHLFlBQVksS0FBSyxJQUFJLElBQ2pDVCwrQkFBK0IsQ0FBQyxDQUFDLEVBQ2pDO01BQ0EsSUFBSVUsR0FBRztNQUNQLElBQUlDLEdBQUc7TUFDUCxRQUFRSCxJQUFJO1FBQ1YsS0FBSyxDQUFDO1VBQ0pFLEdBQUcsTUFBQTNELE1BQUEsQ0FBTSxJQUFBNkQsa0JBQWEsRUFBQ2pILFdBQVcsQ0FBQzhHLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBRTtVQUM1REUsR0FBRyxPQUFBNUQsTUFBQSxDQUNEaEQsZ0JBQWdCLENBQUNpRCxVQUFVLENBQUNDLElBQUksZ0NBQUFGLE1BQUEsQ0FFaENwRCxXQUFXLENBQUNnQixnQkFBZ0IsZUFBQW9DLE1BQUEsQ0FDbEJWLGlCQUFpQixDQUFDLENBQUMsY0FBQVUsTUFBQSxDQUM3QmhELGdCQUFnQixDQUFDaUQsVUFBVSxDQUFDRSxNQUFNLHFCQUFBSCxNQUFBLENBQ2xCMkQsR0FBRyxrQkFBQTNELE1BQUEsQ0FBZXFELFVBQVUsQ0FBRTtVQUNoRG5FLE9BQU8sQ0FBQ2EsSUFBSSxDQUFDNkQsR0FBRyxDQUFDO1VBQ2pCeEcsUUFBUSxDQUFDLElBQUFnRCw2QkFBbUIsRUFBQ3VELEdBQUcsQ0FBQyxDQUFDO1VBQ2xDO1FBQ0YsS0FBSyxDQUFDO1VBQ0pBLEdBQUcsTUFBQTNELE1BQUEsQ0FBTSxJQUFBNkQsa0JBQWEsRUFBQ2pILFdBQVcsQ0FBQzhHLFlBQVksRUFBRSxRQUFRLENBQUMsQ0FBRTtVQUM1REUsR0FBRyxPQUFBNUQsTUFBQSxDQUNEaEQsZ0JBQWdCLENBQUNpRCxVQUFVLENBQUNDLElBQUksZ0NBQUFGLE1BQUEsQ0FFaENwRCxXQUFXLENBQUNnQixnQkFBZ0IsZUFBQW9DLE1BQUEsQ0FDbEJWLGlCQUFpQixDQUFDLENBQUMsY0FBQVUsTUFBQSxDQUM3QmhELGdCQUFnQixDQUFDaUQsVUFBVSxDQUFDRSxNQUFNLHFCQUFBSCxNQUFBLENBQ2xCMkQsR0FBRyxrQkFBQTNELE1BQUEsQ0FBZXFELFVBQVUsQ0FBRTtVQUNoRG5FLE9BQU8sQ0FBQ2EsSUFBSSxDQUFDNkQsR0FBRyxDQUFDO1VBQ2pCeEcsUUFBUSxDQUFDLElBQUFnRCw2QkFBbUIsRUFBQ3VELEdBQUcsQ0FBQyxDQUFDO1VBQ2xDO1FBQ0YsS0FBSyxDQUFDO1VBQ0pBLEdBQUcsTUFBQTNELE1BQUEsQ0FBTSxJQUFBNkQsa0JBQWEsRUFBQ2pILFdBQVcsQ0FBQzhHLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBRTtVQUM5REUsR0FBRyxPQUFBNUQsTUFBQSxDQUNEaEQsZ0JBQWdCLENBQUNpRCxVQUFVLENBQUNDLElBQUksZ0NBQUFGLE1BQUEsQ0FFaENwRCxXQUFXLENBQUNnQixnQkFBZ0IsZUFBQW9DLE1BQUEsQ0FDbEJWLGlCQUFpQixDQUFDLENBQUMsY0FBQVUsTUFBQSxDQUM3QmhELGdCQUFnQixDQUFDaUQsVUFBVSxDQUFDRSxNQUFNLHFCQUFBSCxNQUFBLENBQ2xCMkQsR0FBRyxrQkFBQTNELE1BQUEsQ0FBZXFELFVBQVUsQ0FBRTtVQUNoRG5FLE9BQU8sQ0FBQ2EsSUFBSSxDQUFDNkQsR0FBRyxDQUFDO1VBQ2pCeEcsUUFBUSxDQUFDLElBQUFnRCw2QkFBbUIsRUFBQ3VELEdBQUcsQ0FBQyxDQUFDO1VBQ2xDO01BQ0o7SUFDRjtFQUNGLENBQUM7RUFFRCxJQUFNRyxvQkFBb0IsR0FBRyxTQUF2QkEsb0JBQW9CQSxDQUFBLEVBQVM7SUFDakMsSUFBSUMsV0FBNEIsR0FBRyxDQUFDO0lBQ3BDQSxXQUFXLEdBQUdwSCxXQUFXLENBQUNxSCxZQUFZO0lBQ3RDLElBQUlELFdBQVcsR0FBRyxFQUFFLEVBQ2xCQSxXQUFXLE1BQUEvRCxNQUFBLENBQU13QixhQUFJLENBQUNDLENBQUMsQ0FBQywyQkFBMkIsQ0FBQyxRQUFLO0lBRTNELE9BQU9zQyxXQUFXO0VBQ3BCLENBQUM7RUFFRCxJQUFBRSxnQkFBUyxFQUFDLFlBQU07SUFDZDdHLFFBQVEsQ0FDTixJQUFBOEcsb0JBQVcsRUFDVHRHLGdCQUFnQixFQUNoQnlCLG1CQUFtQixDQUFDLENBQUMsSUFBSSxTQUFTLEVBQ2xDQyxpQkFBaUIsQ0FBQyxDQUNwQixDQUNGLENBQUM7RUFDSCxDQUFDLEVBQUUsQ0FBQzFDLFdBQVcsQ0FBQ2dCLGdCQUFnQixFQUFFaEIsV0FBVyxDQUFDMEYsZ0JBQWdCLENBQUMsQ0FBQztFQUVoRSxJQUFBMkIsZ0JBQVMsRUFBQyxZQUFNO0lBQ2QsSUFDRSxDQUFDdEgsV0FBVyxDQUFDWSxVQUFVLElBQ3ZCLENBQUNWLFVBQVUsQ0FBQ1UsVUFBVSxJQUN0QixDQUFDVCxXQUFXLENBQUNTLFVBQVUsSUFDdkIsQ0FBQ1IsVUFBVSxDQUFDUSxVQUFVLEVBQ3RCO01BQ0EyRiw4QkFBOEIsQ0FBQyxDQUFDO0lBQ2xDO0VBQ0YsQ0FBQyxFQUFFLENBQ0R2RyxXQUFXLENBQUNZLFVBQVUsRUFDdEJWLFVBQVUsQ0FBQ1UsVUFBVSxFQUNyQlQsV0FBVyxDQUFDUyxVQUFVLEVBQ3RCUixVQUFVLENBQUNRLFVBQVUsRUFDckJYLFdBQVcsQ0FBQzBGLGdCQUFnQixDQUM3QixDQUFDO0VBRUYsb0JBQ0V0SSxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBO0lBQUtDLFNBQVMsRUFBRSxVQUFVLElBQUl4QyxlQUFlLEdBQUcsRUFBRSxHQUFHLG9CQUFvQjtFQUFFLEdBQ3hFUCxXQUFXLENBQUN1SCxRQUFRLEtBQUtuRCxTQUFTLElBQUlwRSxXQUFXLENBQUN1SCxRQUFRLENBQUNDLE1BQU0saUJBQ2hFcEssTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxDQUFDM0UsU0FBQSxDQUFBVyxPQUFRLE1BQUUsQ0FDWixlQUVEMUIsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUNFQyxTQUFTLEVBQ1AsYUFBYSxJQUNaLENBQUNsQyxZQUFZLElBQUlELFlBQVksS0FBSyxJQUFJLEdBQ25DLEVBQUUsR0FDRix1QkFBdUI7RUFDNUIsR0FFQSxDQUFDQyxZQUFZLElBQUlELFlBQVksS0FBSyxJQUFJLGlCQUNyQ3hELE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUEsQ0FBQzVFLFVBQUEsQ0FBQVksT0FBUztJQUNSNEUsS0FBSyxFQUFFOUMsWUFBYTtJQUNwQjZHLFlBQVksRUFBRSxTQUFBQSxhQUFBO01BQUEsT0FBTWxHLGtCQUFrQixDQUFDLElBQUksQ0FBQztJQUFBO0VBQUMsQ0FDOUMsQ0FFQSxDQUFDLGVBQ05uRSxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBO0lBQ0VDLFNBQVMsRUFBQyx5QkFBeUI7SUFDbkMyRSxPQUFPLEVBQUUsU0FBQUEsUUFBQSxFQUFNO01BQ2IxRSxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pCO0VBQUUsZ0JBRUY1RixNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBO0lBQUtDLFNBQVMsRUFBQztFQUFvQixnQkFDakMzRixNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBLENBQUMzRixpQkFBQSxDQUFBd0ssZUFBZTtJQUNkQyxJQUFJLEVBQUVySCxlQUFlLEdBQUdzSCw4QkFBVyxHQUFHQztFQUFhLENBQ3BELENBQ0UsQ0FDRixDQUFDLGVBQ04xSyxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBO0lBQ0VDLFNBQVMsRUFBRSxnQ0FBaUM7SUFDNUMyRSxPQUFPLEVBQUUsU0FBQUEsUUFBQSxFQUFNO01BQ2IxRSxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3pCO0VBQUUsZ0JBRUY1RixNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBO0lBQUdpRixJQUFJLEVBQUM7RUFBRyxnQkFDVDNLLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUEsQ0FBQzNGLGlCQUFBLENBQUF3SyxlQUFlO0lBQUNDLElBQUksRUFBRUk7RUFBWSxDQUFFLENBQUMsZUFDdEM1SyxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBLGVBQU0sR0FBQyxFQUFDOEIsYUFBSSxDQUFDQyxDQUFDLENBQUMsaUNBQWlDLENBQVEsQ0FDdkQsQ0FDQSxDQUFDLGVBQ056SCxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBO0lBQUtDLFNBQVMsRUFBQztFQUFlLEdBQzNCZixXQUFXLElBQUksQ0FBQ3JCLFVBQVUsaUJBQ3pCdkQsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxDQUFDdkYsZUFBQSxDQUFBMEssSUFBSTtJQUFDbEYsU0FBUyxFQUFDLE1BQU07SUFBQ21GLEVBQUUsRUFBRWxHO0VBQVksR0FDcEMsR0FBRyxlQUNKNUUsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUNFcUYsR0FBRyxFQUFFQyxrQkFBYztJQUNuQkMsTUFBTSxFQUFDLE1BQU07SUFDYkMsS0FBSyxFQUFDLE1BQU07SUFDWkMsR0FBRyxFQUFDO0VBQU0sQ0FDWCxDQUFDLEVBQUMsR0FBRyxFQUNMM0QsYUFBSSxDQUFDQyxDQUFDLENBQUMsa0JBQWtCLENBQ3RCLENBQ1AsZUFDRHpILE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUEsYUFDRzhCLGFBQUksQ0FBQ0MsQ0FBQyxDQUFDLDZCQUE2QixDQUFDLGVBQ3RDekgsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUFNQyxTQUFTLEVBQUU7RUFBK0IsR0FBQyxHQUM5QyxFQUFDbUUsb0JBQW9CLENBQUMsQ0FBQyxFQUFDLEdBQ3JCLENBQ0osQ0FBQyxlQUNMOUosTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUFLQyxTQUFTLEVBQUM7RUFBVyxHQUN2QmhELFdBQVcsQ0FBQ1csS0FBSyxDQUFDa0MsTUFBTSxLQUFLLENBQUMsaUJBQzdCeEYsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxDQUFDekUsS0FBQSxDQUFBUyxPQUFJO0lBQ0g4SCxXQUFXLEVBQUVBLFdBQVk7SUFDekI0QixNQUFNLEVBQUV6SSxXQUFXLENBQUNXLEtBQU07SUFDMUIrSCxjQUFjLEVBQUUxSSxXQUFXLENBQUNZLFVBQVc7SUFDdkNtRyxZQUFZLEVBQUU5RyxXQUFXLENBQUM4RztFQUFhLENBQ3hDLENBQ0YsZUFDRDFKLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUE7SUFBS0MsU0FBUyxFQUFDO0VBQU8sZ0JBQ3BCM0YsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUNFQyxTQUFTLEVBQUMsUUFBUTtJQUNsQjJFLE9BQU8sRUFBRSxTQUFBQSxRQUFBO01BQUEsT0FBTW5HLGtCQUFrQixDQUFDLENBQUNELGVBQWUsQ0FBQztJQUFBO0VBQUMsZ0JBRXBEbEUsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxDQUFDcEYsT0FBQSxDQUFBZ0wsY0FBVTtJQUFDSixLQUFLLEVBQUMsTUFBTTtJQUFDRCxNQUFNLEVBQUMsTUFBTTtJQUFDTSxJQUFJLEVBQUM7RUFBUyxDQUFFLENBQ2pELENBQ0wsQ0FDRixDQUFDLEVBRUx6SSxXQUFXLENBQUNRLEtBQUssQ0FBQ2tDLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQ2hDLFlBQVksaUJBQzlDeEQsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxDQUFDMUUsZ0JBQUEsQ0FBQVUsT0FBZTtJQUNkd0MsZUFBZSxFQUFFQSxlQUFnQjtJQUNqQ3NILFNBQVMsRUFBRTtFQUFjLENBQzFCLENBRUEsQ0FBQyxlQUNOeEwsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUFLQyxTQUFTLEVBQUM7RUFBNkIsR0FDekNKLE1BQU0sQ0FBQyxDQUFDLEVBQ1IsQ0FBQ2hDLFVBQVUsSUFDVkQsS0FBSyxDQUFDa0MsTUFBTSxLQUFLLENBQUMsSUFDbEIsQ0FBQzFDLFdBQVcsQ0FBQ1MsVUFBVSxJQUN2QixDQUFDVixVQUFVLENBQUNVLFVBQVUsaUJBQ3BCdkQsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUFLQyxTQUFTLEVBQUU7RUFBcUIsZ0JBQ25DM0YsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQTtJQUFLcUYsR0FBRyxFQUFFVSxrQkFBYztJQUFDTixHQUFHLEVBQUM7RUFBYyxDQUFFLENBQUMsZUFDOUNuTCxNQUFBLENBQUEwQixPQUFBLENBQUFnRSxhQUFBLGFBQUs4QixhQUFJLENBQUNDLENBQUMsQ0FBQywwQ0FBMEMsQ0FBTSxDQUFDLGVBQzdEekgsTUFBQSxDQUFBMEIsT0FBQSxDQUFBZ0UsYUFBQSxZQUFJOEIsYUFBSSxDQUFDQyxDQUFDLENBQUMsd0NBQXdDLENBQUssQ0FBQyxlQUN6RHpILE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUE7SUFDRUMsU0FBUyxFQUFFLDZCQUE4QjtJQUN6QzJFLE9BQU8sRUFBRSxTQUFBQSxRQUFBO01BQUEsT0FBTXhFLGtCQUFrQixDQUFDLENBQUM7SUFBQTtFQUFDLEdBRW5DMEIsYUFBSSxDQUFDQyxDQUFDLENBQUMsMENBQTBDLENBQ2pELENBQ0EsQ0FDTixFQUNGbkUsS0FBSyxDQUFDa0MsTUFBTSxLQUFLLENBQUMsSUFDakIsQ0FBQ3pDLFVBQVUsQ0FBQ1EsVUFBVSxJQUN0QixDQUFDVCxXQUFXLENBQUNTLFVBQVUsSUFDdkIsQ0FBQ1YsVUFBVSxDQUFDVSxVQUFVLGlCQUNwQnZELE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUE7SUFBSUMsU0FBUyxFQUFDO0VBQVMsR0FDcEJyQyxLQUFLLENBQUNPLEdBQUcsQ0FBQyxVQUFDeUMsS0FBVTtJQUFBLG9CQUNwQnRHLE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUE7TUFBSXZELEdBQUcsRUFBRW1FLEtBQUssQ0FBQ2UsRUFBRztNQUFDMUIsU0FBUyxFQUFDLE9BQU87TUFBQyxpQkFBZVcsS0FBSyxDQUFDZTtJQUFHLGdCQUMzRHJILE1BQUEsQ0FBQTBCLE9BQUEsQ0FBQWdFLGFBQUEsQ0FBQ2xGLFlBQUEsQ0FBQWtMLFdBQVc7TUFDVnBGLEtBQUssRUFBRUEsS0FBTTtNQUNicUYsV0FBVyxFQUFFMUQsb0JBQXFCO01BQ2xDTSxpQkFBaUIsRUFBRUEsaUJBQWtCO01BQ3JDSixpQkFBaUIsRUFBRUEsaUJBQWtCO01BQ3JDOUIsYUFBYSxFQUFFQSxhQUFjO01BQzdCM0IsY0FBYyxFQUFFQTtJQUFlLENBQ2hDLENBQ0MsQ0FBQztFQUFBLENBQ04sQ0FDQyxDQUVMLENBQ0YsQ0FBQztBQUVWLENBQUM7QUFFRCxJQUFNa0gsU0FBUyxHQUFHLElBQUFDLG1CQUFPLEVBQUNwSixlQUFlLENBQUM7QUFBQyxJQUFBcUosUUFBQSxHQUM1QkYsU0FBUyxDQUFDM0ksVUFBVSxDQUFDO0FBQUE4SSxPQUFBLENBQUFySyxPQUFBLEdBQUFvSyxRQUFBIn0=
|