@kando-env/kando-ui 1.2.64-alpha.4 → 1.2.64-alpha.6
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.
|
@@ -102,6 +102,7 @@ var NetworkForSpecificEvent = function NetworkForSpecificEvent(_ref) {
|
|
|
102
102
|
}
|
|
103
103
|
|
|
104
104
|
if (_sourcePoint) drawManholeIcon(_sourcePoint);
|
|
105
|
+
if (targetPoint) drawManholeIcon(targetPoint);
|
|
105
106
|
}
|
|
106
107
|
|
|
107
108
|
polylineBack['kando_object_id'] = edge.id;
|
|
@@ -138,4 +139,4 @@ var NetworkForSpecificEvent = function NetworkForSpecificEvent(_ref) {
|
|
|
138
139
|
};
|
|
139
140
|
|
|
140
141
|
exports.NetworkForSpecificEvent = NetworkForSpecificEvent;
|
|
141
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9ldmVudHMvTmV0d29ya0ZvclNwZWNpZmljRXZlbnQudHN4Il0sIm5hbWVzIjpbIk5ldHdvcmtGb3JTcGVjaWZpY0V2ZW50IiwiZXZlbnQiLCJlZGdlcyIsInBvaW50cyIsIm1hcCIsImRpc3BhdGNoIiwiZWRnZXNUb0RyYXciLCJmaXJzdEVkZ2UiLCJmaW5kIiwiZWRnZSIsImlkIiwicGF0aCIsImVkZ2VfaWQiLCJ1bmRlZmluZWQiLCJ1cHN0cmVhbUVkZ2UiLCJ0YXJnZXRfcG9pbnRfaWQiLCJzb3VyY2VfcG9pbnRfaWQiLCJzb3VyY2VQb2ludCIsInBvaW50IiwiaGFzX2RldmljZSIsInB1c2giLCJmb3JFYWNoIiwicGFydCIsIm1hdGNoZWRQYXJ0IiwiZHJhd01hbmhvbGVJY29uIiwicG9pbnRJY29uIiwiTCIsImljb24iLCJpY29uVXJsIiwid2hpdGVQb2ludCIsImljb25TaXplIiwiaWNvbkFuY2hvciIsIm1hbmhvbGVJY29uIiwibWFya2VyIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJyaXNlT25Ib3ZlciIsImFkZFRvIiwiYmluZFRvb2x0aXAiLCJncm91cCIsIm5hbWUiLCJkcmF3TmV0d29yayIsImxhdGxuZ3MiLCJzaGFwZV9kYXRhIiwiZGF0YSIsImxhdCIsImxuZyIsInBvbHlsaW5lQmFjayIsInBvbHlsaW5lIiwiY29sb3IiLCJ3ZWlnaHQiLCJvcGFjaXR5IiwibGVuZ3RoIiwidGFyZ2V0UG9pbnQiLCJiaW5kUG9wdXAiLCJkaXN0YW5jZSIsImJyaW5nVG9Gcm9udCIsInBvbHlsaW5lRnJvbnQiLCJjbGVhbnVwIiwibGF5ZXJzIiwiX2xheWVycyIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0IiwicmVtb3ZlTGF5ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7Ozs7OztBQVJBO0FBaUJPLElBQU1BLHVCQUF5QyxHQUFHLFNBQTVDQSx1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QUNEO0FBQ0Y7QUFDRixLQVhEO0FBWUQsR0FmRCxFQWVHLENBQUM1RCxLQUFELENBZkg7QUFpQkEsc0JBQU8sMkRBQVA7QUFDRCxDQWhITSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1pZ25vcmVcbmltcG9ydCBMLCB7IE1hcCBhcyBMZWFmbGV0TWFwIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBzZXRIb3ZlcmVkRWRnZVBhdGhzIH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9hY3Rpb25zJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBJRWRnZSB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgd2hpdGVQb2ludCBmcm9tICcuLi8uLi8uLi9hc3NldHMvd2hpdGUtcG9pbnQucG5nJztcblxudHlwZSBJUHJvcHMgPSB7XG4gIGV2ZW50OiBJRXZlbnQ7XG4gIGVkZ2VzOiBJRWRnZVtdO1xuICBwb2ludHM6IElQb2ludFtdO1xuICBtYXA6IExlYWZsZXRNYXAgfCBhbnk7XG59O1xuXG5leHBvcnQgY29uc3QgTmV0d29ya0ZvclNwZWNpZmljRXZlbnQ6IFJlYWN0LkZDPElQcm9wcz4gPSAoe1xuICBldmVudCxcbiAgZWRnZXMsXG4gIHBvaW50cyxcbiAgbWFwLFxufSkgPT4ge1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGxldCBlZGdlc1RvRHJhdzogSUVkZ2VbXSA9IFtdO1xuICBsZXQgZmlyc3RFZGdlID0gZWRnZXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gZXZlbnQucGF0aFswXS5lZGdlX2lkKTtcbiAgaWYgKGZpcnN0RWRnZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgbGV0IHVwc3RyZWFtRWRnZSA9IGVkZ2VzLmZpbmQoXG4gICAgICAoZWRnZSkgPT4gZWRnZS50YXJnZXRfcG9pbnRfaWQgPT09IGZpcnN0RWRnZSEuc291cmNlX3BvaW50X2lkLFxuICAgICk7XG4gICAgaWYgKHVwc3RyZWFtRWRnZSkge1xuICAgICAgbGV0IHNvdXJjZVBvaW50ID0gcG9pbnRzLmZpbmQoXG4gICAgICAgIChwb2ludCkgPT4gcG9pbnQuaWQgPT09IHVwc3RyZWFtRWRnZSEuc291cmNlX3BvaW50X2lkLFxuICAgICAgKTtcbiAgICAgIGlmIChzb3VyY2VQb2ludCAmJiAhc291cmNlUG9pbnQuaGFzX2RldmljZSkge1xuICAgICAgICBlZGdlc1RvRHJhdy5wdXNoKHVwc3RyZWFtRWRnZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZXZlbnQucGF0aC5mb3JFYWNoKChwYXJ0KSA9PiB7XG4gICAgbGV0IG1hdGNoZWRQYXJ0ID0gZWRnZXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gcGFydC5lZGdlX2lkKTtcbiAgICBpZiAobWF0Y2hlZFBhcnQgIT09IHVuZGVmaW5lZCkgZWRnZXNUb0RyYXcucHVzaChtYXRjaGVkUGFydCk7XG4gIH0pO1xuXG4gIGNvbnN0IGRyYXdNYW5ob2xlSWNvbiA9IChzb3VyY2VQb2ludCkgPT4ge1xuICAgIGxldCBwb2ludEljb24gPSBMLmljb24oe1xuICAgICAgaWNvblVybDogd2hpdGVQb2ludCxcbiAgICAgIGljb25TaXplOiBbOSwgOV0sXG4gICAgICBpY29uQW5jaG9yOiBbNC41LCA0LjVdLFxuICAgIH0pO1xuICAgIGxldCBtYW5ob2xlSWNvbjogYW55ID0gTC5tYXJrZXIoXG4gICAgICBbc291cmNlUG9pbnQubGF0aXR1ZGUsIHNvdXJjZVBvaW50LmxvbmdpdHVkZV0sXG4gICAgICB7XG4gICAgICAgIGljb246IHBvaW50SWNvbixcbiAgICAgICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gICAgICB9LFxuICAgICkuYWRkVG8obWFwKTtcbiAgICBtYW5ob2xlSWNvbi5iaW5kVG9vbHRpcChgJHtzb3VyY2VQb2ludC5ncm91cC5uYW1lfSAoJHtzb3VyY2VQb2ludC5pZH0pYCk7XG4gICAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdF9pZCddID0gc291cmNlUG9pbnQuaWQ7XG4gICAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdCddID0gJ1Vwc3RyZWFtUG9pbnQnO1xuICB9O1xuXG4gIGNvbnN0IGRyYXdOZXR3b3JrID0gKGVkZ2VzKSA9PiB7XG4gICAgbGV0IGxhdGxuZ3M6IGFueSA9IFtdO1xuICAgIGVkZ2VzLmZvckVhY2goKGVkZ2UpID0+IHtcbiAgICAgIGVkZ2Uuc2hhcGVfZGF0YS5mb3JFYWNoKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgbGF0bG5ncy5wdXNoKFtkYXRhLmxhdCwgZGF0YS5sbmddKTtcbiAgICAgIH0pO1xuXG4gICAgICBsZXQgcG9seWxpbmVCYWNrOiBhbnkgPSBMLnBvbHlsaW5lKGxhdGxuZ3MsIHtcbiAgICAgICAgY29sb3I6ICdyZ2IoMjI3LDIyNywyMjcpJyxcbiAgICAgICAgd2VpZ2h0OiA2LFxuICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgfSkuYWRkVG8obWFwKTtcbiAgICAgIGlmIChwb2ludHMubGVuZ3RoICE9PSAwKSB7XG4gICAgICAgIGxldCBzb3VyY2VQb2ludCA9IHBvaW50cy5maW5kKFxuICAgICAgICAgIChwb2ludDogSVBvaW50KSA9PiBwb2ludC5pZCA9PT0gZWRnZS5zb3VyY2VfcG9pbnRfaWQsXG4gICAgICAgICk7XG4gICAgICAgIGxldCB0YXJnZXRQb2ludCA9IHBvaW50cy5maW5kKFxuICAgICAgICAgIChwb2ludDogSVBvaW50KSA9PiBwb2ludC5pZCA9PT0gZWRnZS50YXJnZXRfcG9pbnRfaWQsXG4gICAgICAgICk7XG4gICAgICAgIGlmIChzb3VyY2VQb2ludCAhPT0gdW5kZWZpbmVkICYmIHRhcmdldFBvaW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBwb2x5bGluZUJhY2suYmluZFBvcHVwKGBFZGdlIElEOiAke2VkZ2UuaWR9LDxicj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU291cmNlIHBvaW50OiAke3NvdXJjZVBvaW50Lmdyb3VwLm5hbWV9LDxicj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGFyZ2V0IHBvaW50OiAke3RhcmdldFBvaW50Lmdyb3VwLm5hbWV9LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXN0YW5jZTogJHtlZGdlLmRpc3RhbmNlfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHNvdXJjZVBvaW50KSBkcmF3TWFuaG9sZUljb24oc291cmNlUG9pbnQpO1xuICAgICAgfVxuXG4gICAgICBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lQmFja1sna2FuZG9fb2JqZWN0J10gPSAnSG92ZXJlZEVkZ2UnO1xuXG4gICAgICBwb2x5bGluZUJhY2suYnJpbmdUb0Zyb250KCk7XG5cbiAgICAgIGxldCBwb2x5bGluZUZyb250OiBhbnkgPSBMLnBvbHlsaW5lKGxhdGxuZ3MsIHtcbiAgICAgICAgY29sb3I6ICdyZ2IoMjksMjksMjkpJyxcbiAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICBvcGFjaXR5OiAxLFxuICAgICAgfSkuYWRkVG8obWFwKTtcblxuICAgICAgcG9seWxpbmVGcm9udFsna2FuZG9fb2JqZWN0X2lkJ10gPSBlZGdlLmlkO1xuICAgICAgcG9seWxpbmVGcm9udFsna2FuZG9fb2JqZWN0J10gPSAnSG92ZXJlZEVkZ2VGcm9udCc7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnQuYnJpbmdUb0Zyb250KCk7XG4gICAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtwb2x5bGluZUJhY2ssIHBvbHlsaW5lRnJvbnRdKSk7XG4gICAgfSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkcmF3TmV0d29yayhlZGdlc1RvRHJhdyk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFZGdlUGF0aHMoW10pKTtcbiAgICAgIGxldCBsYXllcnMgPSBtYXAuX2xheWVycztcbiAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBsYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgPT09ICdVcHN0cmVhbVBvaW50J1xuICAgICAgICApIHtcbiAgICAgICAgICBtYXAucmVtb3ZlTGF5ZXIobGF5ZXJzW3Byb3BlcnR5XSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9O1xuICB9LCBbZXZlbnRdKTtcblxuICByZXR1cm4gPD48Lz47XG59O1xuIl19
|
|
142
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9ldmVudHMvTmV0d29ya0ZvclNwZWNpZmljRXZlbnQudHN4Il0sIm5hbWVzIjpbIk5ldHdvcmtGb3JTcGVjaWZpY0V2ZW50IiwiZXZlbnQiLCJlZGdlcyIsInBvaW50cyIsIm1hcCIsImRpc3BhdGNoIiwiZWRnZXNUb0RyYXciLCJmaXJzdEVkZ2UiLCJmaW5kIiwiZWRnZSIsImlkIiwicGF0aCIsImVkZ2VfaWQiLCJ1bmRlZmluZWQiLCJ1cHN0cmVhbUVkZ2UiLCJ0YXJnZXRfcG9pbnRfaWQiLCJzb3VyY2VfcG9pbnRfaWQiLCJzb3VyY2VQb2ludCIsInBvaW50IiwiaGFzX2RldmljZSIsInB1c2giLCJmb3JFYWNoIiwicGFydCIsIm1hdGNoZWRQYXJ0IiwiZHJhd01hbmhvbGVJY29uIiwicG9pbnRJY29uIiwiTCIsImljb24iLCJpY29uVXJsIiwid2hpdGVQb2ludCIsImljb25TaXplIiwiaWNvbkFuY2hvciIsIm1hbmhvbGVJY29uIiwibWFya2VyIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJyaXNlT25Ib3ZlciIsImFkZFRvIiwiYmluZFRvb2x0aXAiLCJncm91cCIsIm5hbWUiLCJkcmF3TmV0d29yayIsImxhdGxuZ3MiLCJzaGFwZV9kYXRhIiwiZGF0YSIsImxhdCIsImxuZyIsInBvbHlsaW5lQmFjayIsInBvbHlsaW5lIiwiY29sb3IiLCJ3ZWlnaHQiLCJvcGFjaXR5IiwibGVuZ3RoIiwidGFyZ2V0UG9pbnQiLCJiaW5kUG9wdXAiLCJkaXN0YW5jZSIsImJyaW5nVG9Gcm9udCIsInBvbHlsaW5lRnJvbnQiLCJjbGVhbnVwIiwibGF5ZXJzIiwiX2xheWVycyIsInByb3BlcnR5Iiwia2FuZG9fb2JqZWN0IiwicmVtb3ZlTGF5ZXIiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBSUE7Ozs7OztBQVJBO0FBaUJPLElBQU1BLHVCQUF5QyxHQUFHLFNBQTVDQSx1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R0FBRyxDQUFDMkQsV0FBSixDQUFnQkosTUFBTSxDQUFDRSxRQUFELENBQXRCO0FBQ0Q7QUFDRjtBQUNGLEtBWEQ7QUFZRCxHQWZELEVBZUcsQ0FBQzVELEtBQUQsQ0FmSDtBQWlCQSxzQkFBTywyREFBUDtBQUNELENBakhNIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWlnbm9yZVxuaW1wb3J0IEwsIHsgTWFwIGFzIExlYWZsZXRNYXAgfSBmcm9tICdsZWFmbGV0JztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHNldEhvdmVyZWRFZGdlUGF0aHMgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IElFZGdlIH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJy4uLy4uLy4uL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCB3aGl0ZVBvaW50IGZyb20gJy4uLy4uLy4uL2Fzc2V0cy93aGl0ZS1wb2ludC5wbmcnO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgZXZlbnQ6IElFdmVudDtcbiAgZWRnZXM6IElFZGdlW107XG4gIHBvaW50czogSVBvaW50W107XG4gIG1hcDogTGVhZmxldE1hcCB8IGFueTtcbn07XG5cbmV4cG9ydCBjb25zdCBOZXR3b3JrRm9yU3BlY2lmaWNFdmVudDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGV2ZW50LFxuICBlZGdlcyxcbiAgcG9pbnRzLFxuICBtYXAsXG59KSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgbGV0IGVkZ2VzVG9EcmF3OiBJRWRnZVtdID0gW107XG4gIGxldCBmaXJzdEVkZ2UgPSBlZGdlcy5maW5kKChlZGdlKSA9PiBlZGdlLmlkID09PSBldmVudC5wYXRoWzBdLmVkZ2VfaWQpO1xuICBpZiAoZmlyc3RFZGdlICE9PSB1bmRlZmluZWQpIHtcbiAgICBsZXQgdXBzdHJlYW1FZGdlID0gZWRnZXMuZmluZChcbiAgICAgIChlZGdlKSA9PiBlZGdlLnRhcmdldF9wb2ludF9pZCA9PT0gZmlyc3RFZGdlIS5zb3VyY2VfcG9pbnRfaWQsXG4gICAgKTtcbiAgICBpZiAodXBzdHJlYW1FZGdlKSB7XG4gICAgICBsZXQgc291cmNlUG9pbnQgPSBwb2ludHMuZmluZChcbiAgICAgICAgKHBvaW50KSA9PiBwb2ludC5pZCA9PT0gdXBzdHJlYW1FZGdlIS5zb3VyY2VfcG9pbnRfaWQsXG4gICAgICApO1xuICAgICAgaWYgKHNvdXJjZVBvaW50ICYmICFzb3VyY2VQb2ludC5oYXNfZGV2aWNlKSB7XG4gICAgICAgIGVkZ2VzVG9EcmF3LnB1c2godXBzdHJlYW1FZGdlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBldmVudC5wYXRoLmZvckVhY2goKHBhcnQpID0+IHtcbiAgICBsZXQgbWF0Y2hlZFBhcnQgPSBlZGdlcy5maW5kKChlZGdlKSA9PiBlZGdlLmlkID09PSBwYXJ0LmVkZ2VfaWQpO1xuICAgIGlmIChtYXRjaGVkUGFydCAhPT0gdW5kZWZpbmVkKSBlZGdlc1RvRHJhdy5wdXNoKG1hdGNoZWRQYXJ0KTtcbiAgfSk7XG5cbiAgY29uc3QgZHJhd01hbmhvbGVJY29uID0gKHNvdXJjZVBvaW50KSA9PiB7XG4gICAgbGV0IHBvaW50SWNvbiA9IEwuaWNvbih7XG4gICAgICBpY29uVXJsOiB3aGl0ZVBvaW50LFxuICAgICAgaWNvblNpemU6IFs5LCA5XSxcbiAgICAgIGljb25BbmNob3I6IFs0LjUsIDQuNV0sXG4gICAgfSk7XG4gICAgbGV0IG1hbmhvbGVJY29uOiBhbnkgPSBMLm1hcmtlcihcbiAgICAgIFtzb3VyY2VQb2ludC5sYXRpdHVkZSwgc291cmNlUG9pbnQubG9uZ2l0dWRlXSxcbiAgICAgIHtcbiAgICAgICAgaWNvbjogcG9pbnRJY29uLFxuICAgICAgICByaXNlT25Ib3ZlcjogdHJ1ZSxcbiAgICAgIH0sXG4gICAgKS5hZGRUbyhtYXApO1xuICAgIG1hbmhvbGVJY29uLmJpbmRUb29sdGlwKGAke3NvdXJjZVBvaW50Lmdyb3VwLm5hbWV9ICgke3NvdXJjZVBvaW50LmlkfSlgKTtcbiAgICBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBzb3VyY2VQb2ludC5pZDtcbiAgICBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0J10gPSAnVXBzdHJlYW1Qb2ludCc7XG4gIH07XG5cbiAgY29uc3QgZHJhd05ldHdvcmsgPSAoZWRnZXMpID0+IHtcbiAgICBsZXQgbGF0bG5nczogYW55ID0gW107XG4gICAgZWRnZXMuZm9yRWFjaCgoZWRnZSkgPT4ge1xuICAgICAgZWRnZS5zaGFwZV9kYXRhLmZvckVhY2goKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICBsYXRsbmdzLnB1c2goW2RhdGEubGF0LCBkYXRhLmxuZ10pO1xuICAgICAgfSk7XG5cbiAgICAgIGxldCBwb2x5bGluZUJhY2s6IGFueSA9IEwucG9seWxpbmUobGF0bG5ncywge1xuICAgICAgICBjb2xvcjogJ3JnYigyMjcsMjI3LDIyNyknLFxuICAgICAgICB3ZWlnaHQ6IDYsXG4gICAgICAgIG9wYWNpdHk6IDEsXG4gICAgICB9KS5hZGRUbyhtYXApO1xuICAgICAgaWYgKHBvaW50cy5sZW5ndGggIT09IDApIHtcbiAgICAgICAgbGV0IHNvdXJjZVBvaW50ID0gcG9pbnRzLmZpbmQoXG4gICAgICAgICAgKHBvaW50OiBJUG9pbnQpID0+IHBvaW50LmlkID09PSBlZGdlLnNvdXJjZV9wb2ludF9pZCxcbiAgICAgICAgKTtcbiAgICAgICAgbGV0IHRhcmdldFBvaW50ID0gcG9pbnRzLmZpbmQoXG4gICAgICAgICAgKHBvaW50OiBJUG9pbnQpID0+IHBvaW50LmlkID09PSBlZGdlLnRhcmdldF9wb2ludF9pZCxcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHNvdXJjZVBvaW50ICE9PSB1bmRlZmluZWQgJiYgdGFyZ2V0UG9pbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHBvbHlsaW5lQmFjay5iaW5kUG9wdXAoYEVkZ2UgSUQ6ICR7ZWRnZS5pZH0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTb3VyY2UgcG9pbnQ6ICR7c291cmNlUG9pbnQuZ3JvdXAubmFtZX0sPGJyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUYXJnZXQgcG9pbnQ6ICR7dGFyZ2V0UG9pbnQuZ3JvdXAubmFtZX0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpc3RhbmNlOiAke2VkZ2UuZGlzdGFuY2V9YCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoc291cmNlUG9pbnQpIGRyYXdNYW5ob2xlSWNvbihzb3VyY2VQb2ludCk7XG4gICAgICAgIGlmICh0YXJnZXRQb2ludCkgZHJhd01hbmhvbGVJY29uKHRhcmdldFBvaW50KTtcbiAgICAgIH1cblxuICAgICAgcG9seWxpbmVCYWNrWydrYW5kb19vYmplY3RfaWQnXSA9IGVkZ2UuaWQ7XG4gICAgICBwb2x5bGluZUJhY2tbJ2thbmRvX29iamVjdCddID0gJ0hvdmVyZWRFZGdlJztcblxuICAgICAgcG9seWxpbmVCYWNrLmJyaW5nVG9Gcm9udCgpO1xuXG4gICAgICBsZXQgcG9seWxpbmVGcm9udDogYW55ID0gTC5wb2x5bGluZShsYXRsbmdzLCB7XG4gICAgICAgIGNvbG9yOiAncmdiKDI5LDI5LDI5KScsXG4gICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG5cbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdF9pZCddID0gZWRnZS5pZDtcbiAgICAgIHBvbHlsaW5lRnJvbnRbJ2thbmRvX29iamVjdCddID0gJ0hvdmVyZWRFZGdlRnJvbnQnO1xuXG4gICAgICBwb2x5bGluZUZyb250LmJyaW5nVG9Gcm9udCgpO1xuICAgICAgZGlzcGF0Y2goc2V0SG92ZXJlZEVkZ2VQYXRocyhbcG9seWxpbmVCYWNrLCBwb2x5bGluZUZyb250XSkpO1xuICAgIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZHJhd05ldHdvcmsoZWRnZXNUb0RyYXcpO1xuXG4gICAgcmV0dXJuIGZ1bmN0aW9uIGNsZWFudXAoKSB7XG4gICAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtdKSk7XG4gICAgICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG4gICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgbGF5ZXJzW3Byb3BlcnR5XS5rYW5kb19vYmplY3QgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgIGxheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0ID09PSAnVXBzdHJlYW1Qb2ludCdcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKGxheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgfSwgW2V2ZW50XSk7XG5cbiAgcmV0dXJuIDw+PC8+O1xufTtcbiJdfQ==
|
package/lib/macros/getVersion.js
CHANGED
|
@@ -242,9 +242,13 @@ var EventsList = function EventsList(_ref) {
|
|
|
242
242
|
hoveredEventPaths.forEach(function (path) {
|
|
243
243
|
map.removeLayer(path);
|
|
244
244
|
});
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
245
|
+
|
|
246
|
+
if (hoveredEdgePaths) {
|
|
247
|
+
hoveredEdgePaths.forEach(function (path) {
|
|
248
|
+
map.removeLayer(path);
|
|
249
|
+
});
|
|
250
|
+
}
|
|
251
|
+
|
|
248
252
|
var layers = map._layers;
|
|
249
253
|
|
|
250
254
|
for (var property in layers) {
|
|
@@ -399,4 +403,4 @@ var connector = (0, _reactRedux.connect)(mapStateToProps);
|
|
|
399
403
|
var _default = connector(EventsList);
|
|
400
404
|
|
|
401
405
|
exports.default = _default;
|
|
402
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudHNMaXN0LnRzeCJdLCJuYW1lcyI6WyJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJzaWRlbmF2RXhwYW5kZWQiLCJkaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwiaG92ZXJlZEVkZ2VQYXRocyIsIndhdGVyQXV0aG9yaXR5SWQiLCJtYXAiLCJmaWx0ZXJQb3B1cE9wZW4iLCJzZXRGaWx0ZXJQb3B1cE9wZW4iLCJtZXNzYWdlcyIsIm1lc3NhZ2UiLCJldmVudF9pZCIsImV2ZW50X2lkcyIsImV4Y2VwdGlvbkFsZXJ0Iiwic2V0RXhjZXB0aW9uQWxlcnQiLCJsYXN0VmlzaXRlZCIsInVzZVF1ZXJ5IiwiVVJMU2VhcmNoUGFyYW1zIiwic2VhcmNoIiwiaGlzdG9yeSIsInF1ZXJ5IiwiZ2V0S1FMVmFsdWVzRnJvbVVSTCIsImdldCIsImdldEV2ZW50SWRGcm9tVVJMIiwibG9hZGVyIiwibGVuZ3RoIiwibmV3QXJlYXMiLCJoYW5kbGVFeHBhbnNpb25Ub2dnbGUiLCJhcHBseURlZmF1bHRGaWx0ZXIiLCJwdXNoIiwibmF2Q29udGV4dCIsIm5hbWUiLCJsb2NhbGUiLCJ2YWxpZGF0ZUV2ZW50IiwiZXZlbnQiLCJpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMiLCJvYnNlcnZhdGlvbnMiLCJmb3JFYWNoIiwib2JzZXJ2YXRpb24iLCJwb2ludF9pc19yb290IiwiZWRnZSIsImZpbmQiLCJzb3VyY2VfcG9pbnRfaWQiLCJwb2ludF9pZCIsInVuZGVmaW5lZCIsInBvaW50X25hbWUiLCJpbmRleCIsImZpbmRJbmRleCIsIm1zZyIsImlkIiwiaTE4biIsInQiLCJpbnZhbGlkUGF0aE1lc3NhZ2VzIiwicGF0aCIsImVkZ2VfaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJsYXN0X29ic2VydmF0aW9uX2lkIiwibGFzdE9ic2VydmF0aW9uUG9pbnQiLCJoYW5kbGVFdmVudEl0ZW1DbGljayIsInJlZiIsIm9uTW91c2VMZWF2ZUV2ZW50IiwiZXZlbnRGaWx0ZXJQYXJhbSIsIm9uTW91c2VFbnRlckV2ZW50IiwicmVtb3ZlTGF5ZXIiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJrYW5kb19vYmplY3QiLCJpbmNsdWRlcyIsInNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyIsImUiLCJwYXJzZUludCIsInRyaWdnZXJTb3J0Iiwic29ydCIsImFjdGl2ZUZpbHRlciIsIktRTCIsIlVSTCIsIm1vcmVJbmZvIiwiYWN0aXZlIiwiZmFDYXJldExlZnQiLCJmYUNhcmV0UmlnaHQiLCJmYUFycm93TGVmdCIsIkxlZnRBcnJvd0ljb24iLCJOb0V2ZW50c0ltYWdlIiwiY29ubmVjdG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFDQTs7QUFLQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFJQTs7QUFFQTs7QUFDQTs7QUFRQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBL0JBO0FBaUNBLFNBQVNBLGVBQVQsQ0FBeUJDLEtBQXpCLEVBQTJDO0FBQ3pDLE1BQ0VDLFdBREYsR0FPSUQsS0FQSixDQUNFQyxXQURGO0FBQUEsTUFFRUMsV0FGRixHQU9JRixLQVBKLENBRUVFLFdBRkY7QUFBQSxNQUdFQyxVQUhGLEdBT0lILEtBUEosQ0FHRUcsVUFIRjtBQUFBLE1BSUVDLFdBSkYsR0FPSUosS0FQSixDQUlFSSxXQUpGO0FBQUEsTUFLRUMsVUFMRixHQU9JTCxLQVBKLENBS0VLLFVBTEY7QUFBQSxNQU1FQyxnQkFORixHQU9JTixLQVBK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UixVQUFVLENBQUNRLFVBSGIsaUJBSUc7QUFBSSxJQUFBLFNBQVMsRUFBQztBQUFkLEtBQ0dELEtBQUssQ0FBQ08sR0FBTixDQUFVLFVBQUM0QixLQUFEO0FBQUEsd0JBQ1Q7QUFBSSxNQUFBLEdBQUcsRUFBRUEsS0FBSyxDQUFDZSxFQUFmO0FBQW1CLE1BQUEsU0FBUyxFQUFDLE9BQTdCO0FBQXFDLHVCQUFlZixLQUFLLENBQUNlO0FBQTFELG9CQUNFLDZCQUFDLHdCQUFEO0FBQ0UsTUFBQSxLQUFLLEVBQUVmLEtBRFQ7QUFFRSxNQUFBLFdBQVcsRUFBRXlCLG9CQUZmO0FBR0UsTUFBQSxpQkFBaUIsRUFBRUksaUJBSHJCO0FBSUUsTUFBQSxpQkFBaUIsRUFBRUYsaUJBSnJCO0FBS0UsTUFBQSxhQUFhLEVBQUU1QixhQUxqQjtBQU1FLE1BQUEsY0FBYyxFQUFFcEI7QUFObEIsTUFERixDQURTO0FBQUEsR0FBVixDQURILENBdEJOLENBdEZGLENBREY7QUErSEQsQ0E1WEQ7O0FBOFhBLElBQU13RSxTQUFTLEdBQUcseUJBQVFqRyxlQUFSLENBQWxCOztlQUNlaUcsU0FBUyxDQUFDekYsVUFBRCxDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgZXRjL25vLWNvbW1lbnRlZC1vdXQtY29kZSAqL1xuaW1wb3J0IHtcbiAgZmFBcnJvd0xlZnQsXG4gIGZhQ2FyZXRMZWZ0LFxuICBmYUNhcmV0UmlnaHQsXG59IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucyc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IFJlYWN0LCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGNvbm5lY3QsIENvbm5lY3RlZFByb3BzLCB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IExpbmssIHVzZUhpc3RvcnksIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgTGVmdEFycm93SWNvbiBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Fycm93LWxlZnQuc3ZnJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIEZpbHRlckljb24gfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zL2Z1bm5lbC5zdmcnO1xuaW1wb3J0IE5vRXZlbnRzSW1hZ2UgZnJvbSAnc3JjL2Fzc2V0cy9ub19ldmVudHMuc3ZnJztcbmltcG9ydCB7IFNldmVyZUV2ZW50IH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvU2V2ZXJlRXZlbnQvU2V2ZXJlRXZlbnQnO1xuaW1wb3J0IHsgSUFwcFN0YXRlIH0gZnJvbSAnc3JjL21vZGVscy9JQXBwU3RhdGUnO1xuaW1wb3J0IHsgdXNlTGFzdFZpc2l0ZWQgfSBmcm9tICdzcmMvcHJvdmlkZXJzL1VybEhpc3RvcnknO1xuaW1wb3J0IHtcbiAgZmV0Y2hFdmVudHMsXG4gIHNldEZvY3VzZWRFdmVudCxcbiAgc2V0SG92ZXJlZEVkZ2VQYXRocyxcbiAgc2V0SG92ZXJlZEV2ZW50LFxuICBzZXRIb3ZlcmVkRXZlbnRQYXRocyxcbn0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9hY3Rpb25zJztcbmltcG9ydCB7IElFdmVudCB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvbW9kZWxzL0lFdmVudCc7XG5pbXBvcnQgeyBzZXRFdmVudEZpbHRlclBhcmFtLCBzaWRlTmF2RXhwYW5kZWQgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IGJ1aWxkS1FMUXVlcnkgfSBmcm9tICdzcmMvdXRpbGl0aWVzL2txbCc7XG5pbXBvcnQgJy4uL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEV2ZW50SW5mbyBmcm9tICcuLi9ldmVudF9pbmZvL0V2ZW50SW5mbyc7XG5pbXBvcnQgTW9yZUluZm8gZnJvbSAnLi4vTW9yZUluZm8nO1xuaW1wb3J0IEZpbHRlckNvbnRhaW5lciBmcm9tICcuL0ZpbHRlci9GaWx0ZXJDb250YWluZXInO1xuaW1wb3J0IFNvcnQgZnJvbSAnLi9Tb3J0JztcblxuZnVuY3Rpb24gbWFwU3RhdGVUb1Byb3BzKHN0YXRlOiBJQXBwU3RhdGUpIHtcbiAgY29uc3Qge1xuICAgIGV2ZW50c19kYXRhLFxuICAgIGdsb2JhbF9kYXRhLFxuICAgIGVkZ2VzX2RhdGEsXG4gICAgcG9pbnRzX2RhdGEsXG4gICAgYXJlYXNfZGF0YSxcbiAgICBuYXZfY29udGV4dF9kYXRhLFxuICB9ID0gc3RhdGU7XG5cbiAgcmV0dXJuIHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGFyZWFzX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgfTtcbn1cblxudHlwZSBJUHJvcHMgPSBDb25uZWN0ZWRQcm9wczx0eXBlb2YgY29ubmVjdG9yPiAmIHtcbiAgc2lkZW5hdkV4cGFuZGVkOiBib29sZWFuO1xufTtcblxuY29uc3QgRXZlbnRzTGlzdDogUmVhY3QuRkM8SVByb3BzPiA9ICh7XG4gIGFyZWFzX2RhdGEsXG4gIHBvaW50c19kYXRhLFxuICBlZGdlc19kYXRhLFxuICBnbG9iYWxfZGF0YSxcbiAgc2lkZW5hdkV4cGFuZGVkLFxuICBldmVudHNfZGF0YSxcbiAgbmF2X2NvbnRleHRfZGF0YSxcbn0pID0+IHtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCB7XG4gICAgaXRlbXMsXG4gICAgaXNGZXRjaGluZyxcbiAgICBmb2N1c2VkRXZlbnQsXG4gICAgaG92ZXJlZEV2ZW50LFxuICAgIGhvdmVyZWRFdmVudFBhdGhzLFxuICAgIGhvdmVyZWRFZGdlUGF0aHMsXG4gIH0gPSBldmVudHNfZGF0YTtcbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eUlkLCBtYXAgfSA9IGdsb2JhbF9kYXRhO1xuICBjb25zdCBbZmlsdGVyUG9wdXBPcGVuLCBzZXRGaWx0ZXJQb3B1cE9wZW5dID0gdXNlU3RhdGUodHJ1ZSk7XG4gIGNvbnN0IFtleGNlcHRpb25BbGVydCwgc2V0RXhjZXB0aW9uQWxlcnRdID0gdXNlU3RhdGU8e1xuICAgIG1lc3NhZ2VzOiB7IG1lc3NhZ2U6IGFueTsgZXZlbnRfaWQ6IG51bWJlciB9W107XG4gICAgZXZlbnRfaWRzOiBudW1iZXJbXTtcbiAgfT4oeyBtZXNzYWdlczogW3sgbWVzc2FnZTogJycsIGV2ZW50X2lkOiAwIH1dLCBldmVudF9pZHM6IFtdIH0pO1xuICBjb25zdCBsYXN0VmlzaXRlZCA9IHVzZUxhc3RWaXNpdGVkKCk7XG5cbiAgY29uc3QgdXNlUXVlcnkgPSAoKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBVUkxTZWFyY2hQYXJhbXModXNlTG9jYXRpb24oKS5zZWFyY2gpO1xuICB9O1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5KCk7XG4gIGNvbnN0IGdldEtRTFZhbHVlc0Zyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgndmFsdWVzRnJvbUtRTCcpO1xuICB9O1xuICBjb25zdCBnZXRFdmVudElkRnJvbVVSTCA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdldmVudElkJyk7XG4gIH07XG5cbiAgY29uc3QgbG9hZGVyID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIChpc0ZldGNoaW5nICYmIGl0ZW1zLmxlbmd0aCA9PT0gMCkgfHxcbiAgICAgIGFyZWFzX2RhdGEubmV3QXJlYXMubGVuZ3RoID09PSAwIHx8XG4gICAgICBwb2ludHNfZGF0YS5pc0ZldGNoaW5nIHx8XG4gICAgICBlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIHJldHVybiA8ZGl2IGNsYXNzTmFtZT17J2xvYWRlcid9PjwvZGl2PjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV4cGFuc2lvblRvZ2dsZSA9ICgpID0+IHtcbiAgICBkaXNwYXRjaChzaWRlTmF2RXhwYW5kZWQoIXNpZGVuYXZFeHBhbmRlZCkpO1xuICB9O1xuXG4gIGNvbnN0IGFwcGx5RGVmYXVsdEZpbHRlciA9ICgpID0+IHtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9YCxcbiAgICApO1xuICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oJycpKTtcbiAgfTtcblxuICBjb25zdCB2YWxpZGF0ZUV2ZW50ID0gKGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgICAvLyBjaGVjayB0aGF0IGFsbCBvYnNlcnZhdGlvbnMnIGVkZ2VzIGV4aXN0cy4gSWYgdGhleSBhcmUgbm90IGV4aXN0cyBpdCdzIGluZGljYXRlcyB0aGF0IHRoZWlyIHBvaW50cyBhcmVcbiAgICAvLyBub3QgaW4gdGhlIGhpZXJhcmNoeSBvciBkb2Vzbid0IGhhdmUgbGF0L2xuZy5cbiAgICBsZXQgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5vYnNlcnZhdGlvbnMuZm9yRWFjaCgob2JzZXJ2YXRpb246IGFueSkgPT4ge1xuICAgICAgLy8gaWYgb2JzZXJ2YXRpb24gaXMgcm9vdCAoZXguIFdXVFApIHRoZXJlIGlzIG5vIGVkZ2UgdGhhdCBpdHMgYSBzb3VyY2UuIHNvIHdlIGNhbiBza2lwIHRoaXMgY2hlY2tcbiAgICAgIGlmICghb2JzZXJ2YXRpb24ucG9pbnRfaXNfcm9vdCkge1xuICAgICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgICAoZWRnZSkgPT4gZWRnZS5zb3VyY2VfcG9pbnRfaWQgPT09IG9ic2VydmF0aW9uLnBvaW50X2lkLFxuICAgICAgICApO1xuICAgICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgaW52YWxpZE9ic2VydmF0aW9uc01lc3NhZ2VzLnB1c2goXG4gICAgICAgICAgICBgJHtvYnNlcnZhdGlvbi5wb2ludF9uYW1lfSAoJHtvYnNlcnZhdGlvbi5wb2ludF9pZH0pIGAsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcy5sZW5ndGggIT09IDApIHtcbiAgICAgIGxldCBpbmRleCA9IGV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLmZpbmRJbmRleChcbiAgICAgICAgKG1zZykgPT4gbXNnLmV2ZW50X2lkID09PSBldmVudC5pZCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgc2V0RXhjZXB0aW9uQWxlcnQoe1xuICAgICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgICAuLi5leGNlcHRpb25BbGVydC5tZXNzYWdlcyxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8cD57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfZGF0YV9taXNzaW5nJyl9PC9wPlxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIHNhbWUgY2hlY2sgYXMgYWJvdmUgYnV0IHRoaXMgdGltZSBmb3IgdGhlIGV2ZW50IHBhdGguIElmIGVkZ2UgZG9lc24ndCBleGlzdCwgaXQncyBpbmRpY2F0ZXMgdGhhdCBvbmUgb2YgdGhlXG4gICAgLy8gcG9pbnRzIGRvd25zdHJlYW0gZG9lc24ndCBoYXZlIGxhdC9sbmcuXG4gICAgbGV0IGludmFsaWRQYXRoTWVzc2FnZXM6IGFueSA9IFtdO1xuICAgIGV2ZW50LnBhdGguZm9yRWFjaCgocGF0aDogYW55KSA9PiB7XG4gICAgICBsZXQgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZCgoZWRnZSkgPT4gZWRnZS5pZCA9PT0gcGF0aC5lZGdlX2lkKTtcbiAgICAgIGlmIChlZGdlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgZWRnZSAke3BhdGguZWRnZV9pZH0gY2FuIG5vdCBiZSBmb3VuZGApO1xuICAgICAgICBsZXQgb2JzZXJ2YXRpb24gPSBldmVudC5vYnNlcnZhdGlvbnMuZmluZChcbiAgICAgICAgICAob2JzZXJ2YXRpb24pID0+IG9ic2VydmF0aW9uLmlkID09PSBwYXRoLmxhc3Rfb2JzZXJ2YXRpb25faWQsXG4gICAgICAgICk7XG4gICAgICAgIGxldCBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9ICdOb3QgZm91bmQnO1xuICAgICAgICBpZiAob2JzZXJ2YXRpb24pIHtcbiAgICAgICAgICBsYXN0T2JzZXJ2YXRpb25Qb2ludCA9IG9ic2VydmF0aW9uLnBvaW50X25hbWU7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignbGFzdE9ic2VydmF0aW9uUG9pbnQnLCBsYXN0T2JzZXJ2YXRpb25Qb2ludCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBpbnZhbGlkUGF0aE1lc3NhZ2VzLnB1c2goYCR7bGFzdE9ic2VydmF0aW9uUG9pbnR9IGApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgaWYgKGludmFsaWRQYXRoTWVzc2FnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBzZXRFeGNlcHRpb25BbGVydCh7XG4gICAgICAgIG1lc3NhZ2VzOiBbXG4gICAgICAgICAgLi4uZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMsXG4gICAgICAgICAge1xuICAgICAgICAgICAgbWVzc2FnZTogKFxuICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5ldmVudF92ZXJpZnlfY29vcmRpbmF0ZXMnKX08L3A+XG4gICAgICAgICAgICAgICAgPHNwYW4+e2ludmFsaWRQYXRoTWVzc2FnZXN9PC9zcGFuPlxuICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBldmVudF9pZDogZXZlbnQuaWQsXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZXZlbnRfaWRzOiBbLi4uZXhjZXB0aW9uQWxlcnQuZXZlbnRfaWRzLCBldmVudC5pZF0sXG4gICAgICB9KTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVFdmVudEl0ZW1DbGljayA9IChldmVudDogSUV2ZW50LCByZWY6IFJlZk9iamVjdDxIVE1MRWxlbWVudD4pID0+IHtcbiAgICBvbk1vdXNlTGVhdmVFdmVudCgpO1xuICAgIC8vIGlmIChob3ZlcmVkRXZlbnRQYXRocyAmJiBtYXApIHtcbiAgICAvLyAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgIC8vICAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgIC8vICAgICB9KTtcbiAgICAvLyB9XG4gICAgLy8gZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICAvLyBkaXNwYXRjaChzZXRIb3ZlckV2ZW50SW5kaWNhdG9yKG51bGwpKTtcbiAgICBpZiAodmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudChldmVudCkpO1xuICAgICAgc2V0RmlsdGVyUG9wdXBPcGVuKGZhbHNlKTtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZldmVudElkPSR7ZXZlbnQuaWR9JnZhbHVlc0Zyb21LUUw9JHtnbG9iYWxfZGF0YS5ldmVudEZpbHRlclBhcmFtfWAsXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlRW50ZXJFdmVudCA9IChldmVudCkgPT4ge1xuICAgIGlmICghZm9jdXNlZEV2ZW50ICYmICFob3ZlcmVkRXZlbnQgJiYgdmFsaWRhdGVFdmVudChldmVudCkpIHtcbiAgICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChldmVudCkpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBvbk1vdXNlTGVhdmVFdmVudCA9ICgpID0+IHtcbiAgICBpZiAoaG92ZXJlZEV2ZW50ICYmIGhvdmVyZWRFdmVudFBhdGhzICYmIG1hcCkge1xuICAgICAgaG92ZXJlZEV2ZW50UGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICBtYXAucmVtb3ZlTGF5ZXIocGF0aCk7XG4gICAgICB9KTtcblxuICAgICAgaG92ZXJlZEVkZ2VQYXRocy5mb3JFYWNoKChwYXRoKSA9PiB7XG4gICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAgIH0pO1xuXG4gICAgICBsZXQgbGF5ZXJzID0gbWFwLl9sYXllcnM7XG4gICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgICAgICBjb25zdCBrYW5kb19vYmplY3QgPSBsYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdDtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGthbmRvX29iamVjdD8uaW5jbHVkZXMoJ0V2ZW50Qm9keScpIHx8XG4gICAgICAgICAgW1xuICAgICAgICAgICAgJ0V2ZW50VGFpbCcsXG4gICAgICAgICAgICAnU2FtcGxpbmdQb2ludCcsXG4gICAgICAgICAgICAnRGVjb3JhdG9yJyxcbiAgICAgICAgICAgICdIb3ZlcmVkRWRnZScsXG4gICAgICAgICAgICAnSG92ZXJlZEVkZ2VGcm9udCcsXG4gICAgICAgICAgXS5pbmNsdWRlcyhrYW5kb19vYmplY3QpXG4gICAgICAgICkge1xuICAgICAgICAgIG1hcC5yZW1vdmVMYXllcihsYXllcnNbcHJvcGVydHldKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnQobnVsbCkpO1xuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudFBhdGhzKFtdKSk7XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEVkZ2VQYXRocyhbXSkpO1xuICB9O1xuXG4gIGNvbnN0IHNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyA9ICgpID0+IHtcbiAgICBpZiAoXG4gICAgICBnZXRFdmVudElkRnJvbVVSTCgpICE9PSBudWxsICYmXG4gICAgICBnZXRFdmVudElkRnJvbVVSTCgpICE9PSAnbnVsbCcgJiZcbiAgICAgIGZvY3VzZWRFdmVudCA9PT0gbnVsbCAmJlxuICAgICAgaXRlbXMubGVuZ3RoICE9PSAwICYmXG4gICAgICAhaXNGZXRjaGluZyAmJlxuICAgICAgIWFyZWFzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmdcbiAgICApIHtcbiAgICAgIGxldCBldmVudCA9IGV2ZW50c19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAgIChlOiBJRXZlbnQpID0+IGUuaWQgPT09IHBhcnNlSW50KGdldEV2ZW50SWRGcm9tVVJMKCkhKSxcbiAgICAgICk7XG4gICAgICBpZiAoZXZlbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICBkaXNwYXRjaChzZXRGb2N1c2VkRXZlbnQoZXZlbnQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdHJpZ2dlclNvcnQgPSAoc29ydDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciAhPT0gbnVsbCkge1xuICAgICAgbGV0IEtRTDtcbiAgICAgIGxldCBVUkw7XG4gICAgICBzd2l0Y2ggKHNvcnQpIHtcbiAgICAgICAgY2FzZSAxOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnbmV3ZXN0Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9JHtLUUx9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIDI6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICdvbGRlc3QnKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mdmFsdWVzRnJvbUtRTD0ke0tRTH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMzpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ3NldmVyaXR5Jyl9YDtcbiAgICAgICAgICBVUkwgPSBgLyR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0Lm5hbWV9L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9JHtLUUx9YDtcbiAgICAgICAgICBoaXN0b3J5LnB1c2goVVJMKTtcbiAgICAgICAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKEtRTCkpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpc3BhdGNoKGZldGNoRXZlbnRzKHdhdGVyQXV0aG9yaXR5SWQsIGdldEtRTFZhbHVlc0Zyb21VUkwoKSB8fCAnREVGQVVMVCcpKTtcbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmV2ZW50RmlsdGVyUGFyYW1dKTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPXsnc2lkZW5hdiAnICsgKHNpZGVuYXZFeHBhbmRlZCA/ICcnIDogJ3NpZGVuYXYtLWNvbGxhcHNlZCcpfT5cbiAgICAgIHtzZXRGb2N1c2VkRXZlbnRJZkZvdW5kSW5QYXJhbXMoKX1cbiAgICAgIHtnbG9iYWxfZGF0YS5tb3JlSW5mbyAhPT0gdW5kZWZpbmVkICYmIGdsb2JhbF9kYXRhLm1vcmVJbmZvLmFjdGl2ZSAmJiAoXG4gICAgICAgIDxNb3JlSW5mbyAvPlxuICAgICAgKX1cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICdldmVudC1pbmZvICcgK1xuICAgICAgICAgICghaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbFxuICAgICAgICAgICAgPyAnJ1xuICAgICAgICAgICAgOiAnZXZlbnQtaW5mby0tY29sbGFwc2VkJylcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7IWhvdmVyZWRFdmVudCAmJiBmb2N1c2VkRXZlbnQgIT09IG51bGwgJiYgKFxuICAgICAgICAgIDxFdmVudEluZm9cbiAgICAgICAgICAgIGV2ZW50PXtmb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICByZU9wZW5GaWx0ZXI9eygpID0+IHNldEZpbHRlclBvcHVwT3Blbih0cnVlKX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT1cInRvZ2dsZS1leHBhbnNpb24tYnV0dG9uXCJcbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm5hdi1leHBhbnNpb24taWNvblwiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb25cbiAgICAgICAgICAgIGljb249e3NpZGVuYXZFeHBhbmRlZCA/IGZhQ2FyZXRMZWZ0IDogZmFDYXJldFJpZ2h0fVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17J3RvZ2dsZS1leHBhbnNpb24tYnV0dG9uLW1vYmlsZSd9XG4gICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICBoYW5kbGVFeHBhbnNpb25Ub2dnbGUoKTtcbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgPGEgaHJlZj1cIiNcIj5cbiAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhQXJyb3dMZWZ0fSAvPlxuICAgICAgICAgIDxzcGFuPiB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuYmFja190b19kZXRhaWxzJyl9PC9zcGFuPlxuICAgICAgICA8L2E+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWhlYWRlclwiPlxuICAgICAgICB7bGFzdFZpc2l0ZWQgJiYgIWlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgIDxMaW5rIGNsYXNzTmFtZT1cImJhY2tcIiB0bz17bGFzdFZpc2l0ZWR9PlxuICAgICAgICAgICAgeycgJ31cbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgc3JjPXtMZWZ0QXJyb3dJY29ufVxuICAgICAgICAgICAgICBoZWlnaHQ9XCIxMHB4XCJcbiAgICAgICAgICAgICAgd2lkdGg9XCIxMnB4XCJcbiAgICAgICAgICAgICAgYWx0PVwiYmFja1wiXG4gICAgICAgICAgICAvPnsnICd9XG4gICAgICAgICAgICB7aTE4bi50KCdhcmVhX3NjcmVlbi5iYWNrJyl9XG4gICAgICAgICAgPC9MaW5rPlxuICAgICAgICApfVxuICAgICAgICA8aDQ+XG4gICAgICAgICAge2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50c19saXN0Jyl9ICh7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RofSlcbiAgICAgICAgPC9oND5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWx0ZXJpbmdcIj5cbiAgICAgICAgICB7ZXZlbnRzX2RhdGEuaXRlbXMubGVuZ3RoICE9PSAwICYmIChcbiAgICAgICAgICAgIDxTb3J0XG4gICAgICAgICAgICAgIHRyaWdnZXJTb3J0PXt0cmlnZ2VyU29ydH1cbiAgICAgICAgICAgICAgZXZlbnRzPXtldmVudHNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgZXZlbnRzRmV0Y2hpbmc9e2V2ZW50c19kYXRhLmlzRmV0Y2hpbmd9XG4gICAgICAgICAgICAgIGFjdGl2ZUZpbHRlcj17Z2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaWNvbnNcIj5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZmlsdGVyXCJcbiAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKCFmaWx0ZXJQb3B1cE9wZW4pfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8RmlsdGVySWNvbiB3aWR0aD1cIjE3cHhcIiBoZWlnaHQ9XCIxN3B4XCIgZmlsbD1cIiNmNjAwNGZcIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIHtwb2ludHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgKFxuICAgICAgICAgIDxGaWx0ZXJDb250YWluZXJcbiAgICAgICAgICAgIGZpbHRlclBvcHVwT3Blbj17ZmlsdGVyUG9wdXBPcGVufVxuICAgICAgICAgICAgZmV0Y2hUeXBlPXsnRXZlbnRGaWx0ZXInfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZXZlbnRzLWNvbnRhaW5lciBzY3JvbGxiYXIgXCI+XG4gICAgICAgIHtsb2FkZXIoKX1cbiAgICAgICAgeyFpc0ZldGNoaW5nICYmXG4gICAgICAgICAgaXRlbXMubGVuZ3RoID09PSAwICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZXZlbnRzX19ibGFua3NsYXRlJ30+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPXtOb0V2ZW50c0ltYWdlfSBhbHQ9XCJOb0V2ZW50c0ljb25cIiAvPlxuICAgICAgICAgICAgICA8aDI+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmhlYWRlcicpfTwvaDI+XG4gICAgICAgICAgICAgIDxwPntpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5ib2R5Jyl9PC9wPlxuICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17J2FwcGx5X2RlZmF1bHRfZmlsdGVyX2J1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gYXBwbHlEZWZhdWx0RmlsdGVyKCl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuYnV0dG9uJyl9XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICl9XG4gICAgICAgIHtpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAgICAgIXBvaW50c19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhZWRnZXNfZGF0YS5pc0ZldGNoaW5nICYmIChcbiAgICAgICAgICAgIDx1bCBjbGFzc05hbWU9XCJldmVudHMgXCI+XG4gICAgICAgICAgICAgIHtpdGVtcy5tYXAoKGV2ZW50OiBhbnkpID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXtldmVudC5pZH0gY2xhc3NOYW1lPVwiZXZlbnRcIiBkYXRhLWV2ZW50LWlkPXtldmVudC5pZH0+XG4gICAgICAgICAgICAgICAgICA8U2V2ZXJlRXZlbnRcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQ9e2V2ZW50fVxuICAgICAgICAgICAgICAgICAgICBoYW5kbGVDbGljaz17aGFuZGxlRXZlbnRJdGVtQ2xpY2t9XG4gICAgICAgICAgICAgICAgICAgIG9uTW91c2VFbnRlckV2ZW50PXtvbk1vdXNlRW50ZXJFdmVudH1cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUxlYXZlRXZlbnQ9e29uTW91c2VMZWF2ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgICB2YWxpZGF0ZUV2ZW50PXt2YWxpZGF0ZUV2ZW50fVxuICAgICAgICAgICAgICAgICAgICBleGNlcHRpb25BbGVydD17ZXhjZXB0aW9uQWxlcnR9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuXG5jb25zdCBjb25uZWN0b3IgPSBjb25uZWN0KG1hcFN0YXRlVG9Qcm9wcyk7XG5leHBvcnQgZGVmYXVsdCBjb25uZWN0b3IoRXZlbnRzTGlzdCk7XG4iXX0=
|
|
406
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWdlcy9FdmVudHNQYWdlL2V2ZW50cy9ldmVudHNfbGlzdC9FdmVudHNMaXN0LnRzeCJdLCJuYW1lcyI6WyJtYXBTdGF0ZVRvUHJvcHMiLCJzdGF0ZSIsImV2ZW50c19kYXRhIiwiZ2xvYmFsX2RhdGEiLCJlZGdlc19kYXRhIiwicG9pbnRzX2RhdGEiLCJhcmVhc19kYXRhIiwibmF2X2NvbnRleHRfZGF0YSIsIkV2ZW50c0xpc3QiLCJzaWRlbmF2RXhwYW5kZWQiLCJkaXNwYXRjaCIsIml0ZW1zIiwiaXNGZXRjaGluZyIsImZvY3VzZWRFdmVudCIsImhvdmVyZWRFdmVudCIsImhvdmVyZWRFdmVudFBhdGhzIiwiaG92ZXJlZEVkZ2VQYXRocyIsIndhdGVyQXV0aG9yaXR5SWQiLCJtYXAiLCJmaWx0ZXJQb3B1cE9wZW4iLCJzZXRGaWx0ZXJQb3B1cE9wZW4iLCJtZXNzYWdlcyIsIm1lc3NhZ2UiLCJldmVudF9pZCIsImV2ZW50X2lkcyIsImV4Y2VwdGlvbkFsZXJ0Iiwic2V0RXhjZXB0aW9uQWxlcnQiLCJsYXN0VmlzaXRlZCIsInVzZVF1ZXJ5IiwiVVJMU2VhcmNoUGFyYW1zIiwic2VhcmNoIiwiaGlzdG9yeSIsInF1ZXJ5IiwiZ2V0S1FMVmFsdWVzRnJvbVVSTCIsImdldCIsImdldEV2ZW50SWRGcm9tVVJMIiwibG9hZGVyIiwibGVuZ3RoIiwibmV3QXJlYXMiLCJoYW5kbGVFeHBhbnNpb25Ub2dnbGUiLCJhcHBseURlZmF1bHRGaWx0ZXIiLCJwdXNoIiwibmF2Q29udGV4dCIsIm5hbWUiLCJsb2NhbGUiLCJ2YWxpZGF0ZUV2ZW50IiwiZXZlbnQiLCJpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMiLCJvYnNlcnZhdGlvbnMiLCJmb3JFYWNoIiwib2JzZXJ2YXRpb24iLCJwb2ludF9pc19yb290IiwiZWRnZSIsImZpbmQiLCJzb3VyY2VfcG9pbnRfaWQiLCJwb2ludF9pZCIsInVuZGVmaW5lZCIsInBvaW50X25hbWUiLCJpbmRleCIsImZpbmRJbmRleCIsIm1zZyIsImlkIiwiaTE4biIsInQiLCJpbnZhbGlkUGF0aE1lc3NhZ2VzIiwicGF0aCIsImVkZ2VfaWQiLCJjb25zb2xlIiwiZXJyb3IiLCJsYXN0X29ic2VydmF0aW9uX2lkIiwibGFzdE9ic2VydmF0aW9uUG9pbnQiLCJoYW5kbGVFdmVudEl0ZW1DbGljayIsInJlZiIsIm9uTW91c2VMZWF2ZUV2ZW50IiwiZXZlbnRGaWx0ZXJQYXJhbSIsIm9uTW91c2VFbnRlckV2ZW50IiwicmVtb3ZlTGF5ZXIiLCJsYXllcnMiLCJfbGF5ZXJzIiwicHJvcGVydHkiLCJrYW5kb19vYmplY3QiLCJpbmNsdWRlcyIsInNldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcyIsImUiLCJwYXJzZUludCIsInRyaWdnZXJTb3J0Iiwic29ydCIsImFjdGl2ZUZpbHRlciIsIktRTCIsIlVSTCIsIm1vcmVJbmZvIiwiYWN0aXZlIiwiZmFDYXJldExlZnQiLCJmYUNhcmV0UmlnaHQiLCJmYUFycm93TGVmdCIsIkxlZnRBcnJvd0ljb24iLCJOb0V2ZW50c0ltYWdlIiwiY29ubmVjdG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFDQTs7QUFLQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFJQTs7QUFFQTs7QUFDQTs7QUFRQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBL0JBO0FBaUNBLFNBQVNBLGVBQVQsQ0FBeUJDLEtBQXpCLEVBQTJDO0FBQ3pDLE1BQ0VDLFdBREYsR0FPSUQsS0FQSixDQUNFQyxXQURGO0FBQUEsTUFFRUMsV0FGRixHQU9JRixLQVBKLENBRUVFLFdBRkY7QUFBQSxNQUdFQyxVQUhGLEdBT0lILEtBUEosQ0FHRUcsVUFIRjtBQUFBLE1BSUVDLFdBSkYsR0FPSUosS0FQSixDQUlFSSxXQUpGO0FBQUEsTUFLRUMsVUFMRixHQU9JTCxLQVBKLENBS0VLLFVBTEY7QUFBQSxNQU1FQyxnQkFORixHQU9JTixLQVBK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Q0FBQ1AsV0FBVyxDQUFDTyxVQUZkLElBR0MsQ0FBQ1IsVUFBVSxDQUFDUSxVQUhiLGlCQUlHO0FBQUksSUFBQSxTQUFTLEVBQUM7QUFBZCxLQUNHRCxLQUFLLENBQUNPLEdBQU4sQ0FBVSxVQUFDNEIsS0FBRDtBQUFBLHdCQUNUO0FBQUksTUFBQSxHQUFHLEVBQUVBLEtBQUssQ0FBQ2UsRUFBZjtBQUFtQixNQUFBLFNBQVMsRUFBQyxPQUE3QjtBQUFxQyx1QkFBZWYsS0FBSyxDQUFDZTtBQUExRCxvQkFDRSw2QkFBQyx3QkFBRDtBQUNFLE1BQUEsS0FBSyxFQUFFZixLQURUO0FBRUUsTUFBQSxXQUFXLEVBQUV5QixvQkFGZjtBQUdFLE1BQUEsaUJBQWlCLEVBQUVJLGlCQUhyQjtBQUlFLE1BQUEsaUJBQWlCLEVBQUVGLGlCQUpyQjtBQUtFLE1BQUEsYUFBYSxFQUFFNUIsYUFMakI7QUFNRSxNQUFBLGNBQWMsRUFBRXBCO0FBTmxCLE1BREYsQ0FEUztBQUFBLEdBQVYsQ0FESCxDQXRCTixDQXRGRixDQURGO0FBK0hELENBOVhEOztBQWdZQSxJQUFNd0UsU0FBUyxHQUFHLHlCQUFRakcsZUFBUixDQUFsQjs7ZUFDZWlHLFNBQVMsQ0FBQ3pGLFVBQUQsQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGV0Yy9uby1jb21tZW50ZWQtb3V0LWNvZGUgKi9cbmltcG9ydCB7XG4gIGZhQXJyb3dMZWZ0LFxuICBmYUNhcmV0TGVmdCxcbiAgZmFDYXJldFJpZ2h0LFxufSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCBSZWFjdCwgeyBSZWZPYmplY3QsIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBjb25uZWN0LCBDb25uZWN0ZWRQcm9wcywgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBMaW5rLCB1c2VIaXN0b3J5LCB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IExlZnRBcnJvd0ljb24gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9hcnJvdy1sZWZ0LnN2Zyc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBGaWx0ZXJJY29uIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucy9mdW5uZWwuc3ZnJztcbmltcG9ydCBOb0V2ZW50c0ltYWdlIGZyb20gJ3NyYy9hc3NldHMvbm9fZXZlbnRzLnN2Zyc7XG5pbXBvcnQgeyBTZXZlcmVFdmVudCB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NldmVyZUV2ZW50L1NldmVyZUV2ZW50JztcbmltcG9ydCB7IElBcHBTdGF0ZSB9IGZyb20gJ3NyYy9tb2RlbHMvSUFwcFN0YXRlJztcbmltcG9ydCB7IHVzZUxhc3RWaXNpdGVkIH0gZnJvbSAnc3JjL3Byb3ZpZGVycy9VcmxIaXN0b3J5JztcbmltcG9ydCB7XG4gIGZldGNoRXZlbnRzLFxuICBzZXRGb2N1c2VkRXZlbnQsXG4gIHNldEhvdmVyZWRFZGdlUGF0aHMsXG4gIHNldEhvdmVyZWRFdmVudCxcbiAgc2V0SG92ZXJlZEV2ZW50UGF0aHMsXG59IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgc2V0RXZlbnRGaWx0ZXJQYXJhbSwgc2lkZU5hdkV4cGFuZGVkIH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBidWlsZEtRTFF1ZXJ5IH0gZnJvbSAnc3JjL3V0aWxpdGllcy9rcWwnO1xuaW1wb3J0ICcuLi9FdmVudHNTdHlsZS5zY3NzJztcbmltcG9ydCBFdmVudEluZm8gZnJvbSAnLi4vZXZlbnRfaW5mby9FdmVudEluZm8nO1xuaW1wb3J0IE1vcmVJbmZvIGZyb20gJy4uL01vcmVJbmZvJztcbmltcG9ydCBGaWx0ZXJDb250YWluZXIgZnJvbSAnLi9GaWx0ZXIvRmlsdGVyQ29udGFpbmVyJztcbmltcG9ydCBTb3J0IGZyb20gJy4vU29ydCc7XG5cbmZ1bmN0aW9uIG1hcFN0YXRlVG9Qcm9wcyhzdGF0ZTogSUFwcFN0YXRlKSB7XG4gIGNvbnN0IHtcbiAgICBldmVudHNfZGF0YSxcbiAgICBnbG9iYWxfZGF0YSxcbiAgICBlZGdlc19kYXRhLFxuICAgIHBvaW50c19kYXRhLFxuICAgIGFyZWFzX2RhdGEsXG4gICAgbmF2X2NvbnRleHRfZGF0YSxcbiAgfSA9IHN0YXRlO1xuXG4gIHJldHVybiB7XG4gICAgZXZlbnRzX2RhdGEsXG4gICAgZ2xvYmFsX2RhdGEsXG4gICAgZWRnZXNfZGF0YSxcbiAgICBwb2ludHNfZGF0YSxcbiAgICBhcmVhc19kYXRhLFxuICAgIG5hdl9jb250ZXh0X2RhdGEsXG4gIH07XG59XG5cbnR5cGUgSVByb3BzID0gQ29ubmVjdGVkUHJvcHM8dHlwZW9mIGNvbm5lY3Rvcj4gJiB7XG4gIHNpZGVuYXZFeHBhbmRlZDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IEV2ZW50c0xpc3Q6IFJlYWN0LkZDPElQcm9wcz4gPSAoe1xuICBhcmVhc19kYXRhLFxuICBwb2ludHNfZGF0YSxcbiAgZWRnZXNfZGF0YSxcbiAgZ2xvYmFsX2RhdGEsXG4gIHNpZGVuYXZFeHBhbmRlZCxcbiAgZXZlbnRzX2RhdGEsXG4gIG5hdl9jb250ZXh0X2RhdGEsXG59KSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3Qge1xuICAgIGl0ZW1zLFxuICAgIGlzRmV0Y2hpbmcsXG4gICAgZm9jdXNlZEV2ZW50LFxuICAgIGhvdmVyZWRFdmVudCxcbiAgICBob3ZlcmVkRXZlbnRQYXRocyxcbiAgICBob3ZlcmVkRWRnZVBhdGhzLFxuICB9ID0gZXZlbnRzX2RhdGE7XG4gIGNvbnN0IHsgd2F0ZXJBdXRob3JpdHlJZCwgbWFwIH0gPSBnbG9iYWxfZGF0YTtcbiAgY29uc3QgW2ZpbHRlclBvcHVwT3Blbiwgc2V0RmlsdGVyUG9wdXBPcGVuXSA9IHVzZVN0YXRlKHRydWUpO1xuICBjb25zdCBbZXhjZXB0aW9uQWxlcnQsIHNldEV4Y2VwdGlvbkFsZXJ0XSA9IHVzZVN0YXRlPHtcbiAgICBtZXNzYWdlczogeyBtZXNzYWdlOiBhbnk7IGV2ZW50X2lkOiBudW1iZXIgfVtdO1xuICAgIGV2ZW50X2lkczogbnVtYmVyW107XG4gIH0+KHsgbWVzc2FnZXM6IFt7IG1lc3NhZ2U6ICcnLCBldmVudF9pZDogMCB9XSwgZXZlbnRfaWRzOiBbXSB9KTtcbiAgY29uc3QgbGFzdFZpc2l0ZWQgPSB1c2VMYXN0VmlzaXRlZCgpO1xuXG4gIGNvbnN0IHVzZVF1ZXJ5ID0gKCkgPT4ge1xuICAgIHJldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKHVzZUxvY2F0aW9uKCkuc2VhcmNoKTtcbiAgfTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeSgpO1xuICBjb25zdCBnZXRLUUxWYWx1ZXNGcm9tVVJMID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3ZhbHVlc0Zyb21LUUwnKTtcbiAgfTtcbiAgY29uc3QgZ2V0RXZlbnRJZEZyb21VUkwgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHF1ZXJ5LmdldCgnZXZlbnRJZCcpO1xuICB9O1xuXG4gIGNvbnN0IGxvYWRlciA9ICgpID0+IHtcbiAgICBpZiAoXG4gICAgICAoaXNGZXRjaGluZyAmJiBpdGVtcy5sZW5ndGggPT09IDApIHx8XG4gICAgICBhcmVhc19kYXRhLm5ld0FyZWFzLmxlbmd0aCA9PT0gMCB8fFxuICAgICAgcG9pbnRzX2RhdGEuaXNGZXRjaGluZyB8fFxuICAgICAgZWRnZXNfZGF0YS5pc0ZldGNoaW5nXG4gICAgKSB7XG4gICAgICByZXR1cm4gPGRpdiBjbGFzc05hbWU9eydsb2FkZXInfT48L2Rpdj47XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVFeHBhbnNpb25Ub2dnbGUgPSAoKSA9PiB7XG4gICAgZGlzcGF0Y2goc2lkZU5hdkV4cGFuZGVkKCFzaWRlbmF2RXhwYW5kZWQpKTtcbiAgfTtcblxuICBjb25zdCBhcHBseURlZmF1bHRGaWx0ZXIgPSAoKSA9PiB7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZ2YWx1ZXNGcm9tS1FMPWAsXG4gICAgKTtcbiAgICBkaXNwYXRjaChzZXRFdmVudEZpbHRlclBhcmFtKCcnKSk7XG4gIH07XG5cbiAgY29uc3QgdmFsaWRhdGVFdmVudCA9IChldmVudDogSUV2ZW50KSA9PiB7XG4gICAgLy8gY2hlY2sgdGhhdCBhbGwgb2JzZXJ2YXRpb25zJyBlZGdlcyBleGlzdHMuIElmIHRoZXkgYXJlIG5vdCBleGlzdHMgaXQncyBpbmRpY2F0ZXMgdGhhdCB0aGVpciBwb2ludHMgYXJlXG4gICAgLy8gbm90IGluIHRoZSBoaWVyYXJjaHkgb3IgZG9lc24ndCBoYXZlIGxhdC9sbmcuXG4gICAgbGV0IGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlczogYW55ID0gW107XG4gICAgZXZlbnQub2JzZXJ2YXRpb25zLmZvckVhY2goKG9ic2VydmF0aW9uOiBhbnkpID0+IHtcbiAgICAgIC8vIGlmIG9ic2VydmF0aW9uIGlzIHJvb3QgKGV4LiBXV1RQKSB0aGVyZSBpcyBubyBlZGdlIHRoYXQgaXRzIGEgc291cmNlLiBzbyB3ZSBjYW4gc2tpcCB0aGlzIGNoZWNrXG4gICAgICBpZiAoIW9ic2VydmF0aW9uLnBvaW50X2lzX3Jvb3QpIHtcbiAgICAgICAgbGV0IGVkZ2UgPSBlZGdlc19kYXRhLml0ZW1zLmZpbmQoXG4gICAgICAgICAgKGVkZ2UpID0+IGVkZ2Uuc291cmNlX3BvaW50X2lkID09PSBvYnNlcnZhdGlvbi5wb2ludF9pZCxcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGVkZ2UgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIGludmFsaWRPYnNlcnZhdGlvbnNNZXNzYWdlcy5wdXNoKFxuICAgICAgICAgICAgYCR7b2JzZXJ2YXRpb24ucG9pbnRfbmFtZX0gKCR7b2JzZXJ2YXRpb24ucG9pbnRfaWR9KSBgLFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChpbnZhbGlkT2JzZXJ2YXRpb25zTWVzc2FnZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBsZXQgaW5kZXggPSBleGNlcHRpb25BbGVydC5tZXNzYWdlcy5maW5kSW5kZXgoXG4gICAgICAgIChtc2cpID0+IG1zZy5ldmVudF9pZCA9PT0gZXZlbnQuaWQsXG4gICAgICApO1xuXG4gICAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICAgIHNldEV4Y2VwdGlvbkFsZXJ0KHtcbiAgICAgICAgICBtZXNzYWdlczogW1xuICAgICAgICAgICAgLi4uZXhjZXB0aW9uQWxlcnQubWVzc2FnZXMsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIG1lc3NhZ2U6IChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmV2ZW50X2RhdGFfbWlzc2luZycpfTwvcD5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgZXZlbnRfaWQ6IGV2ZW50LmlkLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIGV2ZW50X2lkczogWy4uLmV4Y2VwdGlvbkFsZXJ0LmV2ZW50X2lkcywgZXZlbnQuaWRdLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBzYW1lIGNoZWNrIGFzIGFib3ZlIGJ1dCB0aGlzIHRpbWUgZm9yIHRoZSBldmVudCBwYXRoLiBJZiBlZGdlIGRvZXNuJ3QgZXhpc3QsIGl0J3MgaW5kaWNhdGVzIHRoYXQgb25lIG9mIHRoZVxuICAgIC8vIHBvaW50cyBkb3duc3RyZWFtIGRvZXNuJ3QgaGF2ZSBsYXQvbG5nLlxuICAgIGxldCBpbnZhbGlkUGF0aE1lc3NhZ2VzOiBhbnkgPSBbXTtcbiAgICBldmVudC5wYXRoLmZvckVhY2goKHBhdGg6IGFueSkgPT4ge1xuICAgICAgbGV0IGVkZ2UgPSBlZGdlc19kYXRhLml0ZW1zLmZpbmQoKGVkZ2UpID0+IGVkZ2UuaWQgPT09IHBhdGguZWRnZV9pZCk7XG4gICAgICBpZiAoZWRnZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYGVkZ2UgJHtwYXRoLmVkZ2VfaWR9IGNhbiBub3QgYmUgZm91bmRgKTtcbiAgICAgICAgbGV0IG9ic2VydmF0aW9uID0gZXZlbnQub2JzZXJ2YXRpb25zLmZpbmQoXG4gICAgICAgICAgKG9ic2VydmF0aW9uKSA9PiBvYnNlcnZhdGlvbi5pZCA9PT0gcGF0aC5sYXN0X29ic2VydmF0aW9uX2lkLFxuICAgICAgICApO1xuICAgICAgICBsZXQgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSAnTm90IGZvdW5kJztcbiAgICAgICAgaWYgKG9ic2VydmF0aW9uKSB7XG4gICAgICAgICAgbGFzdE9ic2VydmF0aW9uUG9pbnQgPSBvYnNlcnZhdGlvbi5wb2ludF9uYW1lO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ2xhc3RPYnNlcnZhdGlvblBvaW50JywgbGFzdE9ic2VydmF0aW9uUG9pbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW52YWxpZFBhdGhNZXNzYWdlcy5wdXNoKGAke2xhc3RPYnNlcnZhdGlvblBvaW50fSBgKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGlmIChpbnZhbGlkUGF0aE1lc3NhZ2VzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgc2V0RXhjZXB0aW9uQWxlcnQoe1xuICAgICAgICBtZXNzYWdlczogW1xuICAgICAgICAgIC4uLmV4Y2VwdGlvbkFsZXJ0Lm1lc3NhZ2VzLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG1lc3NhZ2U6IChcbiAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICA8cD57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRfdmVyaWZ5X2Nvb3JkaW5hdGVzJyl9PC9wPlxuICAgICAgICAgICAgICAgIDxzcGFuPntpbnZhbGlkUGF0aE1lc3NhZ2VzfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgZXZlbnRfaWQ6IGV2ZW50LmlkLFxuICAgICAgICAgIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGV2ZW50X2lkczogWy4uLmV4Y2VwdGlvbkFsZXJ0LmV2ZW50X2lkcywgZXZlbnQuaWRdLFxuICAgICAgfSk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXZlbnRJdGVtQ2xpY2sgPSAoZXZlbnQ6IElFdmVudCwgcmVmOiBSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+KSA9PiB7XG4gICAgb25Nb3VzZUxlYXZlRXZlbnQoKTtcbiAgICAvLyBpZiAoaG92ZXJlZEV2ZW50UGF0aHMgJiYgbWFwKSB7XG4gICAgLy8gICAgIGhvdmVyZWRFdmVudFBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAvLyAgICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAvLyAgICAgfSk7XG4gICAgLy8gfVxuICAgIC8vIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudFBhdGhzKFtdKSk7XG4gICAgLy8gZGlzcGF0Y2goc2V0SG92ZXJFdmVudEluZGljYXRvcihudWxsKSk7XG4gICAgaWYgKHZhbGlkYXRlRXZlbnQoZXZlbnQpKSB7XG4gICAgICBkaXNwYXRjaChzZXRGb2N1c2VkRXZlbnQoZXZlbnQpKTtcbiAgICAgIHNldEZpbHRlclBvcHVwT3BlbihmYWxzZSk7XG4gICAgICBoaXN0b3J5LnB1c2goXG4gICAgICAgIGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mZXZlbnRJZD0ke2V2ZW50LmlkfSZ2YWx1ZXNGcm9tS1FMPSR7Z2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbX1gLFxuICAgICAgKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Nb3VzZUVudGVyRXZlbnQgPSAoZXZlbnQpID0+IHtcbiAgICBpZiAoIWZvY3VzZWRFdmVudCAmJiAhaG92ZXJlZEV2ZW50ICYmIHZhbGlkYXRlRXZlbnQoZXZlbnQpKSB7XG4gICAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRXZlbnQoZXZlbnQpKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgb25Nb3VzZUxlYXZlRXZlbnQgPSAoKSA9PiB7XG4gICAgaWYgKGhvdmVyZWRFdmVudCAmJiBob3ZlcmVkRXZlbnRQYXRocyAmJiBtYXApIHtcbiAgICAgIGhvdmVyZWRFdmVudFBhdGhzLmZvckVhY2goKHBhdGgpID0+IHtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBhdGgpO1xuICAgICAgfSk7XG5cbiAgICAgIGlmIChob3ZlcmVkRWRnZVBhdGhzKSB7XG4gICAgICAgIGhvdmVyZWRFZGdlUGF0aHMuZm9yRWFjaCgocGF0aCkgPT4ge1xuICAgICAgICAgIG1hcC5yZW1vdmVMYXllcihwYXRoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGxldCBsYXllcnMgPSBtYXAuX2xheWVycztcbiAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gbGF5ZXJzKSB7XG4gICAgICAgIGNvbnN0IGthbmRvX29iamVjdCA9IGxheWVyc1twcm9wZXJ0eV0ua2FuZG9fb2JqZWN0O1xuICAgICAgICBpZiAoXG4gICAgICAgICAga2FuZG9fb2JqZWN0Py5pbmNsdWRlcygnRXZlbnRCb2R5JykgfHxcbiAgICAgICAgICBbXG4gICAgICAgICAgICAnRXZlbnRUYWlsJyxcbiAgICAgICAgICAgICdTYW1wbGluZ1BvaW50JyxcbiAgICAgICAgICAgICdEZWNvcmF0b3InLFxuICAgICAgICAgICAgJ0hvdmVyZWRFZGdlJyxcbiAgICAgICAgICAgICdIb3ZlcmVkRWRnZUZyb250JyxcbiAgICAgICAgICBdLmluY2x1ZGVzKGthbmRvX29iamVjdClcbiAgICAgICAgKSB7XG4gICAgICAgICAgbWFwLnJlbW92ZUxheWVyKGxheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGRpc3BhdGNoKHNldEhvdmVyZWRFdmVudChudWxsKSk7XG4gICAgZGlzcGF0Y2goc2V0SG92ZXJlZEV2ZW50UGF0aHMoW10pKTtcbiAgICBkaXNwYXRjaChzZXRIb3ZlcmVkRWRnZVBhdGhzKFtdKSk7XG4gIH07XG5cbiAgY29uc3Qgc2V0Rm9jdXNlZEV2ZW50SWZGb3VuZEluUGFyYW1zID0gKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09IG51bGwgJiZcbiAgICAgIGdldEV2ZW50SWRGcm9tVVJMKCkgIT09ICdudWxsJyAmJlxuICAgICAgZm9jdXNlZEV2ZW50ID09PSBudWxsICYmXG4gICAgICBpdGVtcy5sZW5ndGggIT09IDAgJiZcbiAgICAgICFpc0ZldGNoaW5nICYmXG4gICAgICAhYXJlYXNfZGF0YS5pc0ZldGNoaW5nICYmXG4gICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgIWVkZ2VzX2RhdGEuaXNGZXRjaGluZ1xuICAgICkge1xuICAgICAgbGV0IGV2ZW50ID0gZXZlbnRzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgKGU6IElFdmVudCkgPT4gZS5pZCA9PT0gcGFyc2VJbnQoZ2V0RXZlbnRJZEZyb21VUkwoKSEpLFxuICAgICAgKTtcbiAgICAgIGlmIChldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGRpc3BhdGNoKHNldEZvY3VzZWRFdmVudChldmVudCkpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCB0cmlnZ2VyU29ydCA9IChzb3J0OiBudW1iZXIpID0+IHtcbiAgICBpZiAoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyICE9PSBudWxsKSB7XG4gICAgICBsZXQgS1FMO1xuICAgICAgbGV0IFVSTDtcbiAgICAgIHN3aXRjaCAoc29ydCkge1xuICAgICAgICBjYXNlIDE6XG4gICAgICAgICAgS1FMID0gYCR7YnVpbGRLUUxRdWVyeShnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXIsICduZXdlc3QnKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mdmFsdWVzRnJvbUtRTD0ke0tRTH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgMjpcbiAgICAgICAgICBLUUwgPSBgJHtidWlsZEtRTFF1ZXJ5KGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlciwgJ29sZGVzdCcpfWA7XG4gICAgICAgICAgVVJMID0gYC8ke25hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5uYW1lfS9pbmRleD93YXRlcl9hdXRob3JpdHlfaWQ9JHtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkfSZsb2NhbGU9JHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlfSZ2YWx1ZXNGcm9tS1FMPSR7S1FMfWA7XG4gICAgICAgICAgaGlzdG9yeS5wdXNoKFVSTCk7XG4gICAgICAgICAgZGlzcGF0Y2goc2V0RXZlbnRGaWx0ZXJQYXJhbShLUUwpKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAzOlxuICAgICAgICAgIEtRTCA9IGAke2J1aWxkS1FMUXVlcnkoZ2xvYmFsX2RhdGEuYWN0aXZlRmlsdGVyLCAnc2V2ZXJpdHknKX1gO1xuICAgICAgICAgIFVSTCA9IGAvJHtuYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubmFtZX0vaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7Z2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZX0mdmFsdWVzRnJvbUtRTD0ke0tRTH1gO1xuICAgICAgICAgIGhpc3RvcnkucHVzaChVUkwpO1xuICAgICAgICAgIGRpc3BhdGNoKHNldEV2ZW50RmlsdGVyUGFyYW0oS1FMKSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZGlzcGF0Y2goZmV0Y2hFdmVudHMod2F0ZXJBdXRob3JpdHlJZCwgZ2V0S1FMVmFsdWVzRnJvbVVSTCgpIHx8ICdERUZBVUxUJykpO1xuICB9LCBbZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCwgZ2xvYmFsX2RhdGEuZXZlbnRGaWx0ZXJQYXJhbV0pO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9eydzaWRlbmF2ICcgKyAoc2lkZW5hdkV4cGFuZGVkID8gJycgOiAnc2lkZW5hdi0tY29sbGFwc2VkJyl9PlxuICAgICAge3NldEZvY3VzZWRFdmVudElmRm91bmRJblBhcmFtcygpfVxuICAgICAge2dsb2JhbF9kYXRhLm1vcmVJbmZvICE9PSB1bmRlZmluZWQgJiYgZ2xvYmFsX2RhdGEubW9yZUluZm8uYWN0aXZlICYmIChcbiAgICAgICAgPE1vcmVJbmZvIC8+XG4gICAgICApfVxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzTmFtZT17XG4gICAgICAgICAgJ2V2ZW50LWluZm8gJyArXG4gICAgICAgICAgKCFob3ZlcmVkRXZlbnQgJiYgZm9jdXNlZEV2ZW50ICE9PSBudWxsXG4gICAgICAgICAgICA/ICcnXG4gICAgICAgICAgICA6ICdldmVudC1pbmZvLS1jb2xsYXBzZWQnKVxuICAgICAgICB9XG4gICAgICA+XG4gICAgICAgIHshaG92ZXJlZEV2ZW50ICYmIGZvY3VzZWRFdmVudCAhPT0gbnVsbCAmJiAoXG4gICAgICAgICAgPEV2ZW50SW5mb1xuICAgICAgICAgICAgZXZlbnQ9e2ZvY3VzZWRFdmVudH1cbiAgICAgICAgICAgIHJlT3BlbkZpbHRlcj17KCkgPT4gc2V0RmlsdGVyUG9wdXBPcGVuKHRydWUpfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPVwidG9nZ2xlLWV4cGFuc2lvbi1idXR0b25cIlxuICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlRXhwYW5zaW9uVG9nZ2xlKCk7XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibmF2LWV4cGFuc2lvbi1pY29uXCI+XG4gICAgICAgICAgPEZvbnRBd2Vzb21lSWNvblxuICAgICAgICAgICAgaWNvbj17c2lkZW5hdkV4cGFuZGVkID8gZmFDYXJldExlZnQgOiBmYUNhcmV0UmlnaHR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3NOYW1lPXsndG9nZ2xlLWV4cGFuc2lvbi1idXR0b24tbW9iaWxlJ31cbiAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgIGhhbmRsZUV4cGFuc2lvblRvZ2dsZSgpO1xuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8YSBocmVmPVwiI1wiPlxuICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFBcnJvd0xlZnR9IC8+XG4gICAgICAgICAgPHNwYW4+IHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5iYWNrX3RvX2RldGFpbHMnKX08L3NwYW4+XG4gICAgICAgIDwvYT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtaGVhZGVyXCI+XG4gICAgICAgIHtsYXN0VmlzaXRlZCAmJiAhaXNGZXRjaGluZyAmJiAoXG4gICAgICAgICAgPExpbmsgY2xhc3NOYW1lPVwiYmFja1wiIHRvPXtsYXN0VmlzaXRlZH0+XG4gICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICBzcmM9e0xlZnRBcnJvd0ljb259XG4gICAgICAgICAgICAgIGhlaWdodD1cIjEwcHhcIlxuICAgICAgICAgICAgICB3aWR0aD1cIjEycHhcIlxuICAgICAgICAgICAgICBhbHQ9XCJiYWNrXCJcbiAgICAgICAgICAgIC8+eycgJ31cbiAgICAgICAgICAgIHtpMThuLnQoJ2FyZWFfc2NyZWVuLmJhY2snKX1cbiAgICAgICAgICA8L0xpbms+XG4gICAgICAgICl9XG4gICAgICAgIDxoND5cbiAgICAgICAgICB7aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZXZlbnRzX2xpc3QnKX0gKHtldmVudHNfZGF0YS5pdGVtcy5sZW5ndGh9KVxuICAgICAgICA8L2g0PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpbHRlcmluZ1wiPlxuICAgICAgICAgIHtldmVudHNfZGF0YS5pdGVtcy5sZW5ndGggIT09IDAgJiYgKFxuICAgICAgICAgICAgPFNvcnRcbiAgICAgICAgICAgICAgdHJpZ2dlclNvcnQ9e3RyaWdnZXJTb3J0fVxuICAgICAgICAgICAgICBldmVudHM9e2V2ZW50c19kYXRhLml0ZW1zfVxuICAgICAgICAgICAgICBldmVudHNGZXRjaGluZz17ZXZlbnRzX2RhdGEuaXNGZXRjaGluZ31cbiAgICAgICAgICAgICAgYWN0aXZlRmlsdGVyPXtnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXJ9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJpY29uc1wiPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJmaWx0ZXJcIlxuICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRGaWx0ZXJQb3B1cE9wZW4oIWZpbHRlclBvcHVwT3Blbil9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxGaWx0ZXJJY29uIHdpZHRoPVwiMTdweFwiIGhlaWdodD1cIjE3cHhcIiBmaWxsPVwiI2Y2MDA0ZlwiIC8+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAge3BvaW50c19kYXRhLml0ZW1zLmxlbmd0aCAhPT0gMCAmJiAoXG4gICAgICAgICAgPEZpbHRlckNvbnRhaW5lclxuICAgICAgICAgICAgZmlsdGVyUG9wdXBPcGVuPXtmaWx0ZXJQb3B1cE9wZW59XG4gICAgICAgICAgICBmZXRjaFR5cGU9eydFdmVudEZpbHRlcid9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJldmVudHMtY29udGFpbmVyIHNjcm9sbGJhciBcIj5cbiAgICAgICAge2xvYWRlcigpfVxuICAgICAgICB7IWlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICBpdGVtcy5sZW5ndGggPT09IDAgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydldmVudHNfX2JsYW5rc2xhdGUnfT5cbiAgICAgICAgICAgICAgPGltZyBzcmM9e05vRXZlbnRzSW1hZ2V9IGFsdD1cIk5vRXZlbnRzSWNvblwiIC8+XG4gICAgICAgICAgICAgIDxoMj57aTE4bi50KCdldmVudHNfb3ZlcnZpZXcuZmlsdGVyLmJsYW5rc2xhdGUuaGVhZGVyJyl9PC9oMj5cbiAgICAgICAgICAgICAgPHA+e2kxOG4udCgnZXZlbnRzX292ZXJ2aWV3LmZpbHRlci5ibGFua3NsYXRlLmJvZHknKX08L3A+XG4gICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYXBwbHlfZGVmYXVsdF9maWx0ZXJfYnV0dG9uJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBhcHBseURlZmF1bHRGaWx0ZXIoKX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2V2ZW50c19vdmVydmlldy5maWx0ZXIuYmxhbmtzbGF0ZS5idXR0b24nKX1cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKX1cbiAgICAgICAge2l0ZW1zLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgICAgICFhcmVhc19kYXRhLmlzRmV0Y2hpbmcgJiZcbiAgICAgICAgICAhcG9pbnRzX2RhdGEuaXNGZXRjaGluZyAmJlxuICAgICAgICAgICFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgKFxuICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT1cImV2ZW50cyBcIj5cbiAgICAgICAgICAgICAge2l0ZW1zLm1hcCgoZXZlbnQ6IGFueSkgPT4gKFxuICAgICAgICAgICAgICAgIDxsaSBrZXk9e2V2ZW50LmlkfSBjbGFzc05hbWU9XCJldmVudFwiIGRhdGEtZXZlbnQtaWQ9e2V2ZW50LmlkfT5cbiAgICAgICAgICAgICAgICAgIDxTZXZlcmVFdmVudFxuICAgICAgICAgICAgICAgICAgICBldmVudD17ZXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGhhbmRsZUNsaWNrPXtoYW5kbGVFdmVudEl0ZW1DbGlja31cbiAgICAgICAgICAgICAgICAgICAgb25Nb3VzZUVudGVyRXZlbnQ9e29uTW91c2VFbnRlckV2ZW50fVxuICAgICAgICAgICAgICAgICAgICBvbk1vdXNlTGVhdmVFdmVudD17b25Nb3VzZUxlYXZlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIHZhbGlkYXRlRXZlbnQ9e3ZhbGlkYXRlRXZlbnR9XG4gICAgICAgICAgICAgICAgICAgIGV4Y2VwdGlvbkFsZXJ0PXtleGNlcHRpb25BbGVydH1cbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICl9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbmNvbnN0IGNvbm5lY3RvciA9IGNvbm5lY3QobWFwU3RhdGVUb1Byb3BzKTtcbmV4cG9ydCBkZWZhdWx0IGNvbm5lY3RvcihFdmVudHNMaXN0KTtcbiJdfQ==
|
|
@@ -89,10 +89,6 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
89
89
|
|
|
90
90
|
var history = (0, _reactRouterDom.useHistory)();
|
|
91
91
|
var query = (0, _useQueryURL.default)();
|
|
92
|
-
var waterAuthorityIdFromUrl = parseInt(query.get('water_authority_id') || '0');
|
|
93
|
-
var navContext = (0, _reactRedux.useSelector)(function (state) {
|
|
94
|
-
return state.nav_context_data.navContext;
|
|
95
|
-
});
|
|
96
92
|
var userInfo = (0, _reactRedux.useSelector)(function (state) {
|
|
97
93
|
return state.permissions.user_info;
|
|
98
94
|
});
|
|
@@ -121,11 +117,7 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
121
117
|
});
|
|
122
118
|
|
|
123
119
|
var handleClose = function handleClose() {
|
|
124
|
-
|
|
125
|
-
locale: navContext.locale,
|
|
126
|
-
waterAuthorityId: waterAuthorityIdFromUrl
|
|
127
|
-
}).samplingsPage.samplingsListRoute.url;
|
|
128
|
-
history.push(samplingsListRoute);
|
|
120
|
+
history.goBack();
|
|
129
121
|
};
|
|
130
122
|
|
|
131
123
|
var handleSubmit = function handleSubmit(values) {
|
|
@@ -294,7 +286,7 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
294
286
|
setSamplingUpdated: setSamplingUpdated,
|
|
295
287
|
isDatePickerDisabled: isPropertiesPage,
|
|
296
288
|
dateFormat: dateFormat
|
|
297
|
-
}), samplingProperties
|
|
289
|
+
}), samplingProperties && pageType && /*#__PURE__*/_react.default.createElement(_SamplingPropertiesForm.SamplingPropertiesForm, {
|
|
298
290
|
samplingProperties: samplingProperties,
|
|
299
291
|
sampling: samplingPlan,
|
|
300
292
|
pageType: pageType,
|
|
@@ -314,4 +306,4 @@ var SamplingPropertiesStyle = _styledComponents.default.div.withConfig({
|
|
|
314
306
|
displayName: "SamplingProperties__SamplingPropertiesStyle",
|
|
315
307
|
componentId: "sc-opklsf-0"
|
|
316
308
|
})(["", " ", ""], !_reactDeviceDetect.isMobile ? 'width: 830px;' : '', !_reactDeviceDetect.isMobile ? 'margin: 100px auto;' : '');
|
|
317
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMudHN4Il0sIm5hbWVzIjpbIlNhbXBsaW5nUHJvcGVydGllcyIsIkRhdGUiLCJub3ciLCJmb3JtYXQiLCJjb2xsZWN0aW9uVGltZSIsInNldENvbGxlY3Rpb25UaW1lIiwicGhvdG9zIiwic2V0UGhvdG9zIiwicGhvdG9zVG9EZWxldGUiLCJzZXRQaG90b3NUb0RlbGV0ZSIsImkxOG4iLCJ0Iiwic2F2aW5nTXNnIiwic2V0U2F2aW5nTXNnIiwic2FtcGxpbmdVcGRhdGVkIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwidW5kZWZpbmVkIiwic2FtcGxpbmdQbGFuIiwic2V0U2FtcGxpbmdQbGFuIiwiaGlzdG9yeSIsInF1ZXJ5Iiwid2F0ZXJBdXRob3JpdHlJZEZyb21VcmwiLCJwYXJzZUludCIsImdldCIsIm5hdkNvbnRleHQiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJ1c2VySW5mbyIsInBlcm1pc3Npb25zIiwidXNlcl9pbmZvIiwiZGF0ZUZvcm1hdCIsImRhdGVfdGltZV9mb3JtYXQiLCJwYWdlVHlwZSIsInNldFBhZ2VUeXBlIiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwic2V0U2FtcGxpbmdQcm9wZXJ0aWVzIiwidmFsaWRhdGlvblNjaGVtYSIsInByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hIiwiY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSIsImZvcm1payIsImVuYWJsZVJlaW5pdGlhbGl6ZSIsImluaXRpYWxWYWx1ZXMiLCJzYW1wbGluZ1Byb3BlcnR5IiwidmFsaWRhdGVPbkNoYW5nZSIsInZhbGlkYXRlT25CbHVyIiwib25TdWJtaXQiLCJ2YWx1ZXMiLCJoYW5kbGVTdWJtaXQiLCJoYW5kbGVDbG9zZSIsInNhbXBsaW5nc0xpc3RSb3V0ZSIsImxvY2FsZSIsIndhdGVyQXV0aG9yaXR5SWQiLCJzYW1wbGluZ3NQYWdlIiwidXJsIiwicHVzaCIsInBpY3R1cmVzX2F0dHJpYnV0ZXMiLCJzYXZlRm9ybURhdGEiLCJmb3JtRGF0YUJ1aWxkZXIiLCJ1cGRhdGVPckNyZWF0ZSIsInNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCIsInNldFRpbWVvdXQiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwia2V5IiwidmFsdWUiLCJhcHBlbmQiLCJ1bmlxdWVQaG90b3NUb0RlbGV0ZSIsIlNldCIsImxlbmd0aCIsImZvckVhY2giLCJpZCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyIsIm1zZyIsInNhbXBsaW5nIiwiYXhpb3MiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJ0aGVuIiwiY2F0Y2giLCJwdXQiLCJzYW1wbGluZ0lkIiwidXBkYXRlU2FtcGxpbmciLCJkZXRlY3RQYWdlVHlwZSIsImNvbGxlY3Rpb25UaW1lU2VydmVyIiwib3AiLCJfcGFnZVR5cGUiLCJpc19jYW5jZWxlZCIsIkNPTExFQ1RfU0FNUExJTkdfT1AiLCJDQU5DRUxfU0FNUExJTkdfT1AiLCJpc1Byb3BlcnRpZXNQYWdlIiwic2FtcGxlSWQiLCJmZXRjaFNhbXBsaW5nUHJvcGVydGllcyIsImZldGNoU2FtcGxpbmciLCJyZXMiLCJzYW1wbGluZ1JlcyIsImRhdGEiLCJzYW1wbGluZ19wcm9wZXJ0aWVzIiwiY29sbGVjdGlvbl90aW1lIiwiaXNDYW5jZWxlZCIsInBhZ2VDb2xsZWN0aW9uVGltZSIsInNhbSIsInNldFZhbHVlcyIsImxhYl9pZCIsInB1bXBfc2FtcGxpbmdfdm9sdW1lIiwicHVtcF9iYXR0ZXJ5X2xldmVsIiwiZGVzY3JpcHRpb24iLCJrYW5kb19yZXAiLCJzYW1wbGluZ19wbGFuX2lkIiwiY2FuY2VsbGF0aW9uX3JlYXNvbiIsInNhbXBsaW5nX3BsYW4iLCJnZXRVcmxRdWVyeU9wIiwiaW5jbHVkZXMiLCJpc01vYmlsZSIsIlNhbXBsaW5nUHJvcGVydGllc1N0eWxlIiwic3R5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QSxrQkFBa0IsRUFBRWpCLGtCQUp0QjtBQUtFLElBQUEsU0FBUyxFQUFFSCxTQUxiO0FBTUUsSUFBQSxXQUFXLEVBQUVvQyxXQU5mO0FBT0UsSUFBQSxpQkFBaUIsRUFBRXZDLGlCQVByQjtBQVFFLElBQUEsU0FBUyxFQUFFRixTQVJiO0FBU0UsSUFBQSxNQUFNLEVBQUVELE1BVFY7QUFVRSxJQUFBLE1BQU0sRUFBRWlDO0FBVlYsSUE5QkosQ0FERixDQURGLENBREY7QUFrREQsQ0F6UU07Ozs7QUEyUVAsSUFBTTZFLHVCQUF1QixHQUFHQywwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSxrQkFDekIsQ0FBQ0gsMkJBQUQsR0FBWSxlQUFaLEdBQThCLEVBREwsRUFFekIsQ0FBQ0EsMkJBQUQsR0FBWSxxQkFBWixHQUFvQyxFQUZYLENBQTdCIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFByb3BlcnRpZXMgYW5kIENhbmNlbGxpbmcgZm9ybXMuXG4gKiovXG5pbXBvcnQgUmVhY3QsIHsgRkMsIHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyBGb3JtaWtDb25maWcgfSBmcm9tICdmb3JtaWsvZGlzdC90eXBlcyc7XG5pbXBvcnQgeyBpc01vYmlsZSB9IGZyb20gJ3JlYWN0LWRldmljZS1kZXRlY3QnO1xuaW1wb3J0IHsgdXNlRm9ybWlrIH0gZnJvbSAnZm9ybWlrJztcbmltcG9ydCB7IHVzZUhpc3RvcnksIHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBMYXlvdXQgZnJvbSAnc3JjL3VpLWtpdC9MYXlvdXQvTGF5b3V0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnc3JjL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICdzcmMvY29tcG9uZW50cy9TcGlubmVyL1NwaW5uZXInO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcblxuaW1wb3J0IHtcbiAgQ0FOQ0VMX1NBTVBMSU5HX09QLFxuICBDT0xMRUNUX1NBTVBMSU5HX09QLFxuICBTYW1wbGluZ0ZldGNoRGF0YSxcbn0gZnJvbSAnLi4vc2FtcGxpbmdzUGFnZVV0aWxzJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0Zvcm0gfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0Zvcm0nO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlJztcbmltcG9ydCB7XG4gIGNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWEsXG4gIHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hLFxuICBUU2FtcGxpbmdQcm9wZXJ0aWVzLFxuICBzYW1wbGluZ1Byb3BlcnR5LFxuICBGb3JtVHlwZSxcbn0gZnJvbSAnLi9zYW1wbGluZ1Byb3BlcnRpZXNVdGlscyc7XG5cbmV4cG9ydCBjb25zdCBTYW1wbGluZ1Byb3BlcnRpZXM6IEZDID0gKCkgPT4ge1xuICBjb25zdCBbY29sbGVjdGlvblRpbWUsIHNldENvbGxlY3Rpb25UaW1lXSA9IHVzZVN0YXRlPHN0cmluZyB8IERhdGUgfCBudWxsPihcbiAgICBtb21lbnQoRGF0ZS5ub3coKSkuZm9ybWF0KCdERC9NTS9ZWVlZIGhoOm1tJyksXG4gICk7XG4gIGNvbnN0IFtwaG90b3MsIHNldFBob3Rvc10gPSB1c2VTdGF0ZTxzdHJpbmcgfCBCbG9iIHwgYW55PihbXSk7XG4gIGNvbnN0IFtwaG90b3NUb0RlbGV0ZSwgc2V0UGhvdG9zVG9EZWxldGVdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKTtcbiAgY29uc3QgW3NhdmluZ01zZywgc2V0U2F2aW5nTXNnXSA9IHVzZVN0YXRlPHN0cmluZz4oaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gIGNvbnN0IFtzYW1wbGluZ1VwZGF0ZWQsIHNldFNhbXBsaW5nVXBkYXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzYW1wbGluZ1BsYW4sIHNldFNhbXBsaW5nUGxhbl0gPSB1c2VTdGF0ZTxcbiAgICBTYW1wbGluZ0ZldGNoRGF0YSB8IHVuZGVmaW5lZFxuICA+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZEZyb21VcmwgPSBwYXJzZUludChcbiAgICBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpIHx8ICcwJyxcbiAgKTtcbiAgY29uc3QgbmF2Q29udGV4dCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLm5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dCxcbiAgKTtcblxuICBjb25zdCB1c2VySW5mbyA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUucGVybWlzc2lvbnMudXNlcl9pbmZvKTtcbiAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgdXNlckluZm8uZGF0ZV90aW1lX2Zvcm1hdCA9PT0gJ3VzJ1xuICAgICAgPyAnTU1NIGQsIHl5eXkgaGg6bW0gYWEnXG4gICAgICA6ICdkL01NL3l5eXkgSEg6bW0nO1xuICBjb25zdCBbcGFnZVR5cGUsIHNldFBhZ2VUeXBlXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KCk7XG4gIGNvbnN0IFtzYW1wbGluZ1Byb3BlcnRpZXMsIHNldFNhbXBsaW5nUHJvcGVydGllc10gPVxuICAgIHVzZVN0YXRlPFRTYW1wbGluZ1Byb3BlcnRpZXM+KCk7XG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPVxuICAgIHBhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgID8gcHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWFcbiAgICAgIDogY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYTtcblxuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybWlrQ29uZmlnPEZvcm1UeXBlPj4oe1xuICAgIGVuYWJsZVJlaW5pdGlhbGl6ZTogdHJ1ZSxcbiAgICBpbml0aWFsVmFsdWVzOiBzYW1wbGluZ1Byb3BlcnR5LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogZmFsc2UsXG4gICAgdmFsaWRhdGVPbkJsdXI6IHRydWUsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGNvbnN0IHNhbXBsaW5nc0xpc3RSb3V0ZSA9IHVybHMoe1xuICAgICAgbG9jYWxlOiBuYXZDb250ZXh0LmxvY2FsZSxcbiAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsLFxuICAgIH0pLnNhbXBsaW5nc1BhZ2Uuc2FtcGxpbmdzTGlzdFJvdXRlLnVybDtcbiAgICBoaXN0b3J5LnB1c2goc2FtcGxpbmdzTGlzdFJvdXRlKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAodmFsdWVzKSA9PiB7XG4gICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZpbmcnKSk7XG4gICAgdmFsdWVzLnBpY3R1cmVzX2F0dHJpYnV0ZXMgPSBwaG90b3M7XG4gICAgY29uc3Qgc2F2ZUZvcm1EYXRhID0gZm9ybURhdGFCdWlsZGVyKHZhbHVlcyk7XG4gICAgdXBkYXRlT3JDcmVhdGUoc2F2ZUZvcm1EYXRhKTtcbiAgfTtcblxuICBjb25zdCBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQgPSAoKSA9PiB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gICAgfSwgMzAwMCk7XG4gIH07XG5cbiAgY29uc3QgZm9ybURhdGFCdWlsZGVyID0gKHZhbHVlcykgPT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gdmFsdWVzKSB7XG4gICAgICBpZiAoa2V5ICE9PSAncGljdHVyZXNfYXR0cmlidXRlcycpIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZXNba2V5XSA9PT0gbnVsbCA/ICcnIDogdmFsdWVzW2tleV07XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChgc2FtcGxpbmdbJHtrZXl9XWAsIHZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGV0IHVuaXF1ZVBob3Rvc1RvRGVsZXRlID0gWy4uLm5ldyBTZXQocGhvdG9zVG9EZWxldGUpXTtcbiAgICB1bmlxdWVQaG90b3NUb0RlbGV0ZS5sZW5ndGggIT09IDAgJiZcbiAgICAgIHVuaXF1ZVBob3Rvc1RvRGVsZXRlLmZvckVhY2goKGlkLCBpbmRleCkgPT4ge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtpZF1gLFxuICAgICAgICAgIEpTT04uc3RyaW5naWZ5KGlkKSxcbiAgICAgICAgKTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKFxuICAgICAgICAgIGBzYW1wbGluZ1twaWN0dXJlc19hdHRyaWJ1dGVzXVske2luZGV4fV1bX2Rlc3Ryb3ldYCxcbiAgICAgICAgICAndHJ1ZScsXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICByZXR1cm4gZm9ybURhdGE7XG4gIH07XG5cbiAgY29uc3QgdXBkYXRlT3JDcmVhdGUgPSAoZm9ybURhdGEpID0+IHtcbiAgICBjb25zdCB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MgPSAobXNnKSA9PiB7XG4gICAgICBzZXRTYXZpbmdNc2coaTE4bi50KG1zZykpO1xuICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkKHRydWUpO1xuICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICBoYW5kbGVDbG9zZSgpO1xuICAgIH07XG5cbiAgICBpZiAoc2FtcGxpbmdQcm9wZXJ0aWVzPy5zYW1wbGluZz8uaWQgPT09IG51bGwpIHtcbiAgICAgIC8vIGNyZWF0ZVxuICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1tkYXRlXWAsIGNvbGxlY3Rpb25UaW1lKTtcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wb3N0KHVybHMoKS5zYW1wbGluZ1Byb3BlcnRpZXMuY3JlYXRlU2FtcGxpbmcudXJsLCBmb3JtRGF0YSlcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHVwZGF0ZU9yQ3JlYXRlU3VjY2VzcygnYnV0dG9ucy5jcmVhdGVkJyk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5lcnJvcicpKTtcbiAgICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHVwZGF0ZVxuICAgICAgYXhpb3NcbiAgICAgICAgLnB1dChcbiAgICAgICAgICB1cmxzKHsgc2FtcGxpbmdJZDogc2FtcGxpbmdQcm9wZXJ0aWVzPy5zYW1wbGluZz8uaWQgfSlcbiAgICAgICAgICAgIC5zYW1wbGluZ1Byb3BlcnRpZXMudXBkYXRlU2FtcGxpbmcudXJsLFxuICAgICAgICAgIGZvcm1EYXRhLFxuICAgICAgICApXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MoJ2J1dHRvbnMudXBkYXRlZCcpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkZXRlY3RQYWdlVHlwZSA9IChzYW1wbGluZ1Byb3BlcnRpZXMsIGNvbGxlY3Rpb25UaW1lU2VydmVyLCBvcCkgPT4ge1xuICAgIGxldCBfcGFnZVR5cGU7XG4gICAgaWYgKG9wID09PSAnZWRpdCcpIHtcbiAgICAgIF9wYWdlVHlwZSA9IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pc19jYW5jZWxlZFxuICAgICAgICA/ICdjYW5jZWwnXG4gICAgICAgIDogJ2NvbGxlY3QnO1xuICAgICAgaWYgKGNvbGxlY3Rpb25UaW1lU2VydmVyKSB7XG4gICAgICAgIHNldENvbGxlY3Rpb25UaW1lKG5ldyBEYXRlKGNvbGxlY3Rpb25UaW1lU2VydmVyKSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZSgpKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKG9wID09PSBDT0xMRUNUX1NBTVBMSU5HX09QKSB7XG4gICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZSgpKTtcbiAgICAgIF9wYWdlVHlwZSA9ICdjb2xsZWN0JztcbiAgICB9IGVsc2UgaWYgKG9wID09PSBDQU5DRUxfU0FNUExJTkdfT1ApIHtcbiAgICAgIHNldENvbGxlY3Rpb25UaW1lKG5ldyBEYXRlKGNvbGxlY3Rpb25UaW1lU2VydmVyKSk7XG4gICAgICBfcGFnZVR5cGUgPSAnY2FuY2VsJztcbiAgICB9XG4gICAgcmV0dXJuIF9wYWdlVHlwZTtcbiAgfTtcblxuICBjb25zdCBpc1Byb3BlcnRpZXNQYWdlID0gcGFnZVR5cGUgPT09ICdlZGl0JztcblxuICBjb25zdCB7IHNhbXBsZUlkIH0gPSB1c2VQYXJhbXMoKTtcblxuICBjb25zdCBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyA9IChzYW1wbGluZ0lkID0gc2FtcGxlSWQsIG9wKSA9PiB7XG4gICAgYXhpb3NcbiAgICAgIC5nZXQoXG4gICAgICAgIHVybHMoeyBzYW1wbGluZ0lkOiBzYW1wbGluZ0lkIH0pLnNhbXBsaW5nUHJvcGVydGllcy5mZXRjaFNhbXBsaW5nLnVybCxcbiAgICAgIClcbiAgICAgIC50aGVuKChyZXMpID0+IHtcbiAgICAgICAgY29uc3Qgc2FtcGxpbmdSZXMgPSByZXMuZGF0YTtcbiAgICAgICAgY29uc3Qgc2FtcGxpbmdQcm9wZXJ0aWVzID0gc2FtcGxpbmdSZXMuc2FtcGxpbmdfcHJvcGVydGllcztcbiAgICAgICAgY29uc3QgY29sbGVjdGlvblRpbWVTZXJ2ZXIgPVxuICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5jb2xsZWN0aW9uX3RpbWU7XG5cbiAgICAgICAgY29uc3QgX3BhZ2VUeXBlID0gZGV0ZWN0UGFnZVR5cGUoXG4gICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLFxuICAgICAgICAgIGNvbGxlY3Rpb25UaW1lU2VydmVyLFxuICAgICAgICAgIG9wLFxuICAgICAgICApO1xuICAgICAgICBzZXRQYWdlVHlwZShfcGFnZVR5cGUpO1xuXG4gICAgICAgIGNvbnN0IGlzQ2FuY2VsZWQgPVxuICAgICAgICAgIF9wYWdlVHlwZSA9PT0gJ2NhbmNlbCdcbiAgICAgICAgICAgID8gdHJ1ZVxuICAgICAgICAgICAgOiBfcGFnZVR5cGUgPT09ICdjb2xsZWN0J1xuICAgICAgICAgICAgPyBmYWxzZVxuICAgICAgICAgICAgOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuaXNfY2FuY2VsZWQgfHwgZmFsc2U7XG5cbiAgICAgICAgY29uc3QgcGFnZUNvbGxlY3Rpb25UaW1lID1cbiAgICAgICAgICBfcGFnZVR5cGUgPT09ICdjb2xsZWN0J1xuICAgICAgICAgICAgPyBjb2xsZWN0aW9uVGltZVxuICAgICAgICAgICAgOiBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuY29sbGVjdGlvbl90aW1lO1xuXG4gICAgICAgIGNvbnN0IHNhbSA9IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZztcbiAgICAgICAgZm9ybWlrLnNldFZhbHVlcyh7XG4gICAgICAgICAgbGFiX2lkOiBzYW0ubGFiX2lkLFxuICAgICAgICAgIGNvbGxlY3Rpb25fdGltZTogcGFnZUNvbGxlY3Rpb25UaW1lLFxuICAgICAgICAgIHB1bXBfc2FtcGxpbmdfdm9sdW1lOiBzYW0ucHVtcF9zYW1wbGluZ192b2x1bWUsXG4gICAgICAgICAgcHVtcF9iYXR0ZXJ5X2xldmVsOiBzYW0ucHVtcF9iYXR0ZXJ5X2xldmVsLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBzYW0uZGVzY3JpcHRpb24sXG4gICAgICAgICAga2FuZG9fcmVwOiBzYW0ua2FuZG9fcmVwLFxuICAgICAgICAgIHNhbXBsaW5nX3BsYW5faWQ6IHNhbS5zYW1wbGluZ19wbGFuX2lkLFxuICAgICAgICAgIGNhbmNlbGxhdGlvbl9yZWFzb246IHNhbS5jYW5jZWxsYXRpb25fcmVhc29uIHx8ICcnLFxuICAgICAgICAgIGlzX2NhbmNlbGVkOiBpc0NhbmNlbGVkLFxuICAgICAgICB9KTtcbiAgICAgICAgc2V0U2FtcGxpbmdQcm9wZXJ0aWVzKHNhbXBsaW5nUHJvcGVydGllcyk7XG4gICAgICAgIHNldFNhbXBsaW5nUGxhbihzYW1wbGluZ1Jlcy5zYW1wbGluZ19wbGFuKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGdldFVybFF1ZXJ5T3AgPSAoKSA9PiB7XG4gICAgbGV0IG9wID0gcXVlcnkuZ2V0KCdvcCcpO1xuICAgIC8vIGlmIG5vdCBwcmVzZW50IHRoZW4gZGVmYXVsdCBvcCBpcyAnY29sbGVjdGluZydcbiAgICBpZiAoW3VuZGVmaW5lZCwgbnVsbCwgJyddLmluY2x1ZGVzKG9wKSkge1xuICAgICAgcmV0dXJuIENPTExFQ1RfU0FNUExJTkdfT1A7XG4gICAgfVxuICAgIHJldHVybiBvcDtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZldGNoU2FtcGxpbmdQcm9wZXJ0aWVzKHNhbXBsZUlkLCBnZXRVcmxRdWVyeU9wKCkpO1xuICB9LCBbc2FtcGxpbmdVcGRhdGVkXSk7XG5cbiAgaWYgKCFzYW1wbGluZ1BsYW4gfHwgIXNhbXBsaW5nUHJvcGVydGllcykge1xuICAgIHJldHVybiA8U3Bpbm5lciAvPjtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGZvcm0gb25TdWJtaXQ9e2Zvcm1pay5oYW5kbGVTdWJtaXR9PlxuICAgICAgPExheW91dD5cbiAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgICAgIHshaXNNb2JpbGUgJiYgKFxuICAgICAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc0hlYWRcbiAgICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzPXtzYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ1BsYW59XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgICBwYWdlVHlwZT17cGFnZVR5cGV9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25EYXRlPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvbkRhdGU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2V9XG4gICAgICAgICAgICAgIGRhdGVGb3JtYXQ9e2RhdGVGb3JtYXR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7aXNNb2JpbGUgJiYgKFxuICAgICAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc0hlYWRNb2JpbGVcbiAgICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzPXtzYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ1BsYW59XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgICBwYWdlVHlwZT17cGFnZVR5cGV9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25EYXRlPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvbkRhdGU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2V9XG4gICAgICAgICAgICAgIGRhdGVGb3JtYXQ9e2RhdGVGb3JtYXR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG5cbiAgICAgICAgICB7c2FtcGxpbmdQcm9wZXJ0aWVzICE9PSB1bmRlZmluZWQgJiYgcGFnZVR5cGUgIT09IHVuZGVmaW5lZCAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzRm9ybVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgc2F2aW5nTXNnPXtzYXZpbmdNc2d9XG4gICAgICAgICAgICAgIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgc2V0UGhvdG9zVG9EZWxldGU9e3NldFBob3Rvc1RvRGVsZXRlfVxuICAgICAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICAgICAgcGhvdG9zPXtwaG90b3N9XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgPC9MYXlvdXQ+XG4gICAgPC9mb3JtPlxuICApO1xufTtcblxuY29uc3QgU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGUgPSBzdHlsZWQuZGl2YFxuICAkeyFpc01vYmlsZSA/ICd3aWR0aDogODMwcHg7JyA6ICcnfVxuICAkeyFpc01vYmlsZSA/ICdtYXJnaW46IDEwMHB4IGF1dG87JyA6ICcnfVxuYDtcbiJdfQ==
|
|
309
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMudHN4Il0sIm5hbWVzIjpbIlNhbXBsaW5nUHJvcGVydGllcyIsIkRhdGUiLCJub3ciLCJmb3JtYXQiLCJjb2xsZWN0aW9uVGltZSIsInNldENvbGxlY3Rpb25UaW1lIiwicGhvdG9zIiwic2V0UGhvdG9zIiwicGhvdG9zVG9EZWxldGUiLCJzZXRQaG90b3NUb0RlbGV0ZSIsImkxOG4iLCJ0Iiwic2F2aW5nTXNnIiwic2V0U2F2aW5nTXNnIiwic2FtcGxpbmdVcGRhdGVkIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwidW5kZWZpbmVkIiwic2FtcGxpbmdQbGFuIiwic2V0U2FtcGxpbmdQbGFuIiwiaGlzdG9yeSIsInF1ZXJ5IiwidXNlckluZm8iLCJzdGF0ZSIsInBlcm1pc3Npb25zIiwidXNlcl9pbmZvIiwiZGF0ZUZvcm1hdCIsImRhdGVfdGltZV9mb3JtYXQiLCJwYWdlVHlwZSIsInNldFBhZ2VUeXBlIiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwic2V0U2FtcGxpbmdQcm9wZXJ0aWVzIiwidmFsaWRhdGlvblNjaGVtYSIsInByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hIiwiY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSIsImZvcm1payIsImVuYWJsZVJlaW5pdGlhbGl6ZSIsImluaXRpYWxWYWx1ZXMiLCJzYW1wbGluZ1Byb3BlcnR5IiwidmFsaWRhdGVPbkNoYW5nZSIsInZhbGlkYXRlT25CbHVyIiwib25TdWJtaXQiLCJ2YWx1ZXMiLCJoYW5kbGVTdWJtaXQiLCJoYW5kbGVDbG9zZSIsImdvQmFjayIsInBpY3R1cmVzX2F0dHJpYnV0ZXMiLCJzYXZlRm9ybURhdGEiLCJmb3JtRGF0YUJ1aWxkZXIiLCJ1cGRhdGVPckNyZWF0ZSIsInNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCIsInNldFRpbWVvdXQiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwia2V5IiwidmFsdWUiLCJhcHBlbmQiLCJ1bmlxdWVQaG90b3NUb0RlbGV0ZSIsIlNldCIsImxlbmd0aCIsImZvckVhY2giLCJpZCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsInVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyIsIm1zZyIsInNhbXBsaW5nIiwiYXhpb3MiLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJ1cmwiLCJ0aGVuIiwiY2F0Y2giLCJwdXQiLCJzYW1wbGluZ0lkIiwidXBkYXRlU2FtcGxpbmciLCJkZXRlY3RQYWdlVHlwZSIsImNvbGxlY3Rpb25UaW1lU2VydmVyIiwib3AiLCJfcGFnZVR5cGUiLCJpc19jYW5jZWxlZCIsIkNPTExFQ1RfU0FNUExJTkdfT1AiLCJDQU5DRUxfU0FNUExJTkdfT1AiLCJpc1Byb3BlcnRpZXNQYWdlIiwic2FtcGxlSWQiLCJmZXRjaFNhbXBsaW5nUHJvcGVydGllcyIsImdldCIsImZldGNoU2FtcGxpbmciLCJyZXMiLCJzYW1wbGluZ1JlcyIsImRhdGEiLCJzYW1wbGluZ19wcm9wZXJ0aWVzIiwiY29sbGVjdGlvbl90aW1lIiwiaXNDYW5jZWxlZCIsInBhZ2VDb2xsZWN0aW9uVGltZSIsInNhbSIsInNldFZhbHVlcyIsImxhYl9pZCIsInB1bXBfc2FtcGxpbmdfdm9sdW1lIiwicHVtcF9iYXR0ZXJ5X2xldmVsIiwiZGVzY3JpcHRpb24iLCJrYW5kb19yZXAiLCJzYW1wbGluZ19wbGFuX2lkIiwiY2FuY2VsbGF0aW9uX3JlYXNvbiIsInNhbXBsaW5nX3BsYW4iLCJnZXRVcmxRdWVyeU9wIiwiaW5jbHVkZXMiLCJpc01vYmlsZSIsIlNhbXBsaW5nUHJvcGVydGllc1N0eWxlIiwic3R5bGVkIiwiZGl2Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUdBOztBQUNBOztBQUNBOztBQUdBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUtBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUEzQkE7QUFDQTtBQUNBO0FBaUNPLElBQU1BLGtCQUFzQixHQUFHLFNBQXpCQSxrQkFBeUIsR0FBTTtBQUMxQyxrQkFBNEMscUJBQzFDLHFCQUFPQyxJQUFJLENBQUNDLEdBQUwsRUFBUCxFQUFtQkMsTUFBbkIsQ0FBMEIsa0JBQTFCLENBRDBDLENBQTVDO0FBQUE7QUFBQSxNQUFPQyxjQUFQO0FBQUEsTUFBdUJDLGlCQUF2Qjs7QUFHQSxtQkFBNEIscUJBQThCLEVBQTlCLENBQTVCO0FBQUE7QUFBQSxNQUFPQyxNQUFQO0FBQUEsTUFBZUMsU0FBZjs7QUFDQSxtQkFBNEMscUJBQW1CLEVBQW5CLENBQTVDO0FBQUE7QUFBQSxNQUFPQyxjQUFQO0FBQUEsTUFBdUJDLGlCQUF2Qjs7QUFDQSxtQkFBa0MscUJBQWlCQyxjQUFLQyxDQUFMLENBQU8sY0FBUCxDQUFqQixDQUFsQztBQUFBO0FBQUEsTUFBT0MsU0FBUDtBQUFBLE1BQWtCQyxZQUFsQjs7QUFDQSxtQkFBOEMscUJBQVMsS0FBVCxDQUE5QztBQUFBO0FBQUEsTUFBT0MsZUFBUDtBQUFBLE1BQXdCQyxrQkFBeEI7O0FBQ0Esb0JBQXdDLHFCQUV0Q0MsU0FGc0MsQ0FBeEM7QUFBQTtBQUFBLE1BQU9DLFlBQVA7QUFBQSxNQUFxQkMsZUFBckI7O0FBR0EsTUFBTUMsT0FBTyxHQUFHLGlDQUFoQjtBQUNBLE1BQU1DLEtBQUssR0FBRywyQkFBZDtBQUVBLE1BQU1DLFFBQVEsR0FBRyw2QkFBWSxVQUFDQyxLQUFEO0FBQUEsV0FBV0EsS0FBSyxDQUFDQyxXQUFOLENBQWtCQyxTQUE3QjtBQUFBLEdBQVosQ0FBakI7QUFDQSxNQUFNQyxVQUFVLEdBQ2RKLFFBQVEsQ0FBQ0ssZ0JBQVQsS0FBOEIsSUFBOUIsR0FDSSxzQkFESixHQUVJLGlCQUhOOztBQUlBLG9CQUFnQyxzQkFBaEM7QUFBQTtBQUFBLE1BQU9DLFFBQVA7QUFBQSxNQUFpQkMsV0FBakI7O0FBQ0Esb0JBQ0Usc0JBREY7QUFBQTtBQUFBLE1BQU9DLGtCQUFQO0FBQUEsTUFBMkJDLHFCQUEzQjs7QUFFQSxNQUFNQyxnQkFBZ0IsR0FDcEJKLFFBQVEsS0FBSyxTQUFiLEdBQ0lLLG1EQURKLEdBRUlDLHFEQUhOO0FBS0EsTUFBTUMsTUFBTSxHQUFHLHVCQUFrQztBQUMvQ0MsSUFBQUEsa0JBQWtCLEVBQUUsSUFEMkI7QUFFL0NDLElBQUFBLGFBQWEsRUFBRUMseUNBRmdDO0FBRy9DTixJQUFBQSxnQkFBZ0IsRUFBRUEsZ0JBSDZCO0FBSS9DTyxJQUFBQSxnQkFBZ0IsRUFBRSxLQUo2QjtBQUsvQ0MsSUFBQUEsY0FBYyxFQUFFLElBTCtCO0FBTS9DQyxJQUFBQSxRQUFRLEVBQUUsa0JBQUNDLE1BQUQsRUFBWTtBQUNwQkMsTUFBQUEsWUFBWSxDQUFDRCxNQUFELENBQVo7QUFDRDtBQVI4QyxHQUFsQyxDQUFmOztBQVdBLE1BQU1FLFdBQVcsR0FBRyxTQUFkQSxXQUFjLEdBQU07QUFDeEJ4QixJQUFBQSxPQUFPLENBQUN5QixNQUFSO0FBQ0QsR0FGRDs7QUFJQSxNQUFNRixZQUFZLEdBQUcsU0FBZkEsWUFBZSxDQUFDRCxNQUFELEVBQVk7QUFDL0I1QixJQUFBQSxZQUFZLENBQUNILGNBQUtDLENBQUwsQ0FBTyxnQkFBUCxDQUFELENBQVo7QUFDQThCLElBQUFBLE1BQU0sQ0FBQ0ksbUJBQVAsR0FBNkJ2QyxNQUE3QjtBQUNBLFFBQU13QyxZQUFZLEdBQUdDLGVBQWUsQ0FBQ04sTUFBRCxDQUFwQztBQUNBTyxJQUFBQSxjQUFjLENBQUNGLFlBQUQsQ0FBZDtBQUNELEdBTEQ7O0FBT0EsTUFBTUcsaUNBQWlDLEdBQUcsU0FBcENBLGlDQUFvQyxHQUFNO0FBQzlDQyxJQUFBQSxVQUFVLENBQUMsWUFBTTtBQUNmckMsTUFBQUEsWUFBWSxDQUFDSCxjQUFLQyxDQUFMLENBQU8sY0FBUCxDQUFELENBQVo7QUFDRCxLQUZTLEVBRVAsSUFGTyxDQUFWO0FBR0QsR0FKRDs7QUFNQSxNQUFNb0MsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixDQUFDTixNQUFELEVBQVk7QUFDbEMsUUFBTVUsUUFBUSxHQUFHLElBQUlDLFFBQUosRUFBakI7O0FBQ0EsU0FBSyxJQUFNQyxHQUFYLElBQWtCWixNQUFsQixFQUEwQjtBQUN4QixVQUFJWSxHQUFHLEtBQUsscUJBQVosRUFBbUM7QUFDakMsWUFBTUMsS0FBSyxHQUFHYixNQUFNLENBQUNZLEdBQUQsQ0FBTixLQUFnQixJQUFoQixHQUF1QixFQUF2QixHQUE0QlosTUFBTSxDQUFDWSxHQUFELENBQWhEO0FBQ0FGLFFBQUFBLFFBQVEsQ0FBQ0ksTUFBVCxvQkFBNEJGLEdBQTVCLFFBQW9DQyxLQUFwQztBQUNEO0FBQ0Y7O0FBQ0QsUUFBSUUsb0JBQW9CLG9DQUFPLElBQUlDLEdBQUosQ0FBUWpELGNBQVIsQ0FBUCxDQUF4QjtBQUNBZ0QsSUFBQUEsb0JBQW9CLENBQUNFLE1BQXJCLEtBQWdDLENBQWhDLElBQ0VGLG9CQUFvQixDQUFDRyxPQUFyQixDQUE2QixVQUFDQyxFQUFELEVBQUtDLEtBQUwsRUFBZTtBQUMxQ1YsTUFBQUEsUUFBUSxDQUFDSSxNQUFULHlDQUNtQ00sS0FEbkMsWUFFRUMsSUFBSSxDQUFDQyxTQUFMLENBQWVILEVBQWYsQ0FGRjtBQUlBVCxNQUFBQSxRQUFRLENBQUNJLE1BQVQseUNBQ21DTSxLQURuQyxrQkFFRSxNQUZGO0FBSUQsS0FURCxDQURGO0FBV0EsV0FBT1YsUUFBUDtBQUNELEdBckJEOztBQXVCQSxNQUFNSCxjQUFjLEdBQUcsU0FBakJBLGNBQWlCLENBQUNHLFFBQUQsRUFBYztBQUFBOztBQUNuQyxRQUFNYSxxQkFBcUIsR0FBRyxTQUF4QkEscUJBQXdCLENBQUNDLEdBQUQsRUFBUztBQUNyQ3BELE1BQUFBLFlBQVksQ0FBQ0gsY0FBS0MsQ0FBTCxDQUFPc0QsR0FBUCxDQUFELENBQVo7QUFDQWxELE1BQUFBLGtCQUFrQixDQUFDLElBQUQsQ0FBbEI7QUFDQWtDLE1BQUFBLGlDQUFpQztBQUNqQ04sTUFBQUEsV0FBVztBQUNaLEtBTEQ7O0FBT0EsUUFBSSxDQUFBZCxrQkFBa0IsU0FBbEIsSUFBQUEsa0JBQWtCLFdBQWxCLHFDQUFBQSxrQkFBa0IsQ0FBRXFDLFFBQXBCLGdGQUE4Qk4sRUFBOUIsTUFBcUMsSUFBekMsRUFBK0M7QUFDN0M7QUFDQVQsTUFBQUEsUUFBUSxDQUFDSSxNQUFULG1CQUFrQ25ELGNBQWxDOztBQUNBK0QscUJBQ0dDLElBREgsQ0FDUSxrQkFBT3ZDLGtCQUFQLENBQTBCd0MsY0FBMUIsQ0FBeUNDLEdBRGpELEVBQ3NEbkIsUUFEdEQsRUFFR29CLElBRkgsQ0FFUSxZQUFNO0FBQ1ZQLFFBQUFBLHFCQUFxQixDQUFDLGlCQUFELENBQXJCO0FBQ0QsT0FKSCxFQUtHUSxLQUxILENBS1MsWUFBTTtBQUNYM0QsUUFBQUEsWUFBWSxDQUFDSCxjQUFLQyxDQUFMLENBQU8sZUFBUCxDQUFELENBQVo7QUFDQXNDLFFBQUFBLGlDQUFpQztBQUNsQyxPQVJIO0FBU0QsS0FaRCxNQVlPO0FBQUE7O0FBQ0w7QUFDQWtCLHFCQUNHTSxHQURILENBRUksZ0JBQUs7QUFBRUMsUUFBQUEsVUFBVSxFQUFFN0Msa0JBQUYsYUFBRUEsa0JBQUYsaURBQUVBLGtCQUFrQixDQUFFcUMsUUFBdEIsMkRBQUUsdUJBQThCTjtBQUE1QyxPQUFMLEVBQ0cvQixrQkFESCxDQUNzQjhDLGNBRHRCLENBQ3FDTCxHQUh6QyxFQUlJbkIsUUFKSixFQU1Hb0IsSUFOSCxDQU1RLFlBQU07QUFDVlAsUUFBQUEscUJBQXFCLENBQUMsaUJBQUQsQ0FBckI7QUFDRCxPQVJILEVBU0dRLEtBVEgsQ0FTUyxZQUFNO0FBQ1gzRCxRQUFBQSxZQUFZLENBQUNILGNBQUtDLENBQUwsQ0FBTyxlQUFQLENBQUQsQ0FBWjtBQUNBc0MsUUFBQUEsaUNBQWlDO0FBQ2xDLE9BWkg7QUFhRDtBQUNGLEdBcENEOztBQXNDQSxNQUFNMkIsY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixDQUFDL0Msa0JBQUQsRUFBcUJnRCxvQkFBckIsRUFBMkNDLEVBQTNDLEVBQWtEO0FBQ3ZFLFFBQUlDLFNBQUo7O0FBQ0EsUUFBSUQsRUFBRSxLQUFLLE1BQVgsRUFBbUI7QUFDakJDLE1BQUFBLFNBQVMsR0FBR2xELGtCQUFrQixDQUFDcUMsUUFBbkIsQ0FBNEJjLFdBQTVCLEdBQ1IsUUFEUSxHQUVSLFNBRko7O0FBR0EsVUFBSUgsb0JBQUosRUFBMEI7QUFDeEJ4RSxRQUFBQSxpQkFBaUIsQ0FBQyxJQUFJSixJQUFKLENBQVM0RSxvQkFBVCxDQUFELENBQWpCO0FBQ0QsT0FGRCxNQUVPO0FBQ0x4RSxRQUFBQSxpQkFBaUIsQ0FBQyxJQUFJSixJQUFKLEVBQUQsQ0FBakI7QUFDRDtBQUNGLEtBVEQsTUFTTyxJQUFJNkUsRUFBRSxLQUFLRyx1Q0FBWCxFQUFnQztBQUNyQzVFLE1BQUFBLGlCQUFpQixDQUFDLElBQUlKLElBQUosRUFBRCxDQUFqQjtBQUNBOEUsTUFBQUEsU0FBUyxHQUFHLFNBQVo7QUFDRCxLQUhNLE1BR0EsSUFBSUQsRUFBRSxLQUFLSSxzQ0FBWCxFQUErQjtBQUNwQzdFLE1BQUFBLGlCQUFpQixDQUFDLElBQUlKLElBQUosQ0FBUzRFLG9CQUFULENBQUQsQ0FBakI7QUFDQUUsTUFBQUEsU0FBUyxHQUFHLFFBQVo7QUFDRDs7QUFDRCxXQUFPQSxTQUFQO0FBQ0QsR0FuQkQ7O0FBcUJBLE1BQU1JLGdCQUFnQixHQUFHeEQsUUFBUSxLQUFLLE1BQXRDOztBQUVBLG1CQUFxQixnQ0FBckI7QUFBQSxNQUFReUQsUUFBUixjQUFRQSxRQUFSOztBQUVBLE1BQU1DLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBMEIsR0FBK0I7QUFBQSxRQUE5QlgsVUFBOEIsdUVBQWpCVSxRQUFpQjtBQUFBLFFBQVBOLEVBQU87O0FBQzdEWCxtQkFDR21CLEdBREgsQ0FFSSxnQkFBSztBQUFFWixNQUFBQSxVQUFVLEVBQUVBO0FBQWQsS0FBTCxFQUFpQzdDLGtCQUFqQyxDQUFvRDBELGFBQXBELENBQWtFakIsR0FGdEUsRUFJR0MsSUFKSCxDQUlRLFVBQUNpQixHQUFELEVBQVM7QUFDYixVQUFNQyxXQUFXLEdBQUdELEdBQUcsQ0FBQ0UsSUFBeEI7QUFDQSxVQUFNN0Qsa0JBQWtCLEdBQUc0RCxXQUFXLENBQUNFLG1CQUF2QztBQUNBLFVBQU1kLG9CQUFvQixHQUN4QmhELGtCQUFrQixDQUFDcUMsUUFBbkIsQ0FBNEIwQixlQUQ5Qjs7QUFHQSxVQUFNYixTQUFTLEdBQUdILGNBQWMsQ0FDOUIvQyxrQkFEOEIsRUFFOUJnRCxvQkFGOEIsRUFHOUJDLEVBSDhCLENBQWhDOztBQUtBbEQsTUFBQUEsV0FBVyxDQUFDbUQsU0FBRCxDQUFYO0FBRUEsVUFBTWMsVUFBVSxHQUNkZCxTQUFTLEtBQUssUUFBZCxHQUNJLElBREosR0FFSUEsU0FBUyxLQUFLLFNBQWQsR0FDQSxLQURBLEdBRUFsRCxrQkFBa0IsQ0FBQ3FDLFFBQW5CLENBQTRCYyxXQUE1QixJQUEyQyxLQUxqRDtBQU9BLFVBQU1jLGtCQUFrQixHQUN0QmYsU0FBUyxLQUFLLFNBQWQsR0FDSTNFLGNBREosR0FFSXlCLGtCQUFrQixDQUFDcUMsUUFBbkIsQ0FBNEIwQixlQUhsQztBQUtBLFVBQU1HLEdBQUcsR0FBR2xFLGtCQUFrQixDQUFDcUMsUUFBL0I7QUFDQWhDLE1BQUFBLE1BQU0sQ0FBQzhELFNBQVAsQ0FBaUI7QUFDZkMsUUFBQUEsTUFBTSxFQUFFRixHQUFHLENBQUNFLE1BREc7QUFFZkwsUUFBQUEsZUFBZSxFQUFFRSxrQkFGRjtBQUdmSSxRQUFBQSxvQkFBb0IsRUFBRUgsR0FBRyxDQUFDRyxvQkFIWDtBQUlmQyxRQUFBQSxrQkFBa0IsRUFBRUosR0FBRyxDQUFDSSxrQkFKVDtBQUtmQyxRQUFBQSxXQUFXLEVBQUVMLEdBQUcsQ0FBQ0ssV0FMRjtBQU1mQyxRQUFBQSxTQUFTLEVBQUVOLEdBQUcsQ0FBQ00sU0FOQTtBQU9mQyxRQUFBQSxnQkFBZ0IsRUFBRVAsR0FBRyxDQUFDTyxnQkFQUDtBQVFmQyxRQUFBQSxtQkFBbUIsRUFBRVIsR0FBRyxDQUFDUSxtQkFBSixJQUEyQixFQVJqQztBQVNmdkIsUUFBQUEsV0FBVyxFQUFFYTtBQVRFLE9BQWpCO0FBV0EvRCxNQUFBQSxxQkFBcUIsQ0FBQ0Qsa0JBQUQsQ0FBckI7QUFDQVgsTUFBQUEsZUFBZSxDQUFDdUUsV0FBVyxDQUFDZSxhQUFiLENBQWY7QUFDRCxLQTNDSDtBQTRDRCxHQTdDRDs7QUErQ0EsTUFBTUMsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixHQUFNO0FBQzFCLFFBQUkzQixFQUFFLEdBQUcxRCxLQUFLLENBQUNrRSxHQUFOLENBQVUsSUFBVixDQUFULENBRDBCLENBRTFCOztBQUNBLFFBQUksQ0FBQ3RFLFNBQUQsRUFBWSxJQUFaLEVBQWtCLEVBQWxCLEVBQXNCMEYsUUFBdEIsQ0FBK0I1QixFQUEvQixDQUFKLEVBQXdDO0FBQ3RDLGFBQU9HLHVDQUFQO0FBQ0Q7O0FBQ0QsV0FBT0gsRUFBUDtBQUNELEdBUEQ7O0FBU0Esd0JBQVUsWUFBTTtBQUNkTyxJQUFBQSx1QkFBdUIsQ0FBQ0QsUUFBRCxFQUFXcUIsYUFBYSxFQUF4QixDQUF2QjtBQUNELEdBRkQsRUFFRyxDQUFDM0YsZUFBRCxDQUZIOztBQUlBLE1BQUksQ0FBQ0csWUFBRCxJQUFpQixDQUFDWSxrQkFBdEIsRUFBMEM7QUFDeEMsd0JBQU8sNkJBQUMsZ0JBQUQsT0FBUDtBQUNEOztBQUVELHNCQUNFO0FBQU0sSUFBQSxRQUFRLEVBQUVLLE1BQU0sQ0FBQ1E7QUFBdkIsa0JBQ0UsNkJBQUMsZUFBRCxxQkFDRSw2QkFBQyx1QkFBRCxRQUNHLENBQUNpRSwyQkFBRCxpQkFDQyw2QkFBQyw4Q0FBRDtBQUNFLElBQUEsa0JBQWtCLEVBQUU5RSxrQkFEdEI7QUFFRSxJQUFBLFFBQVEsRUFBRVosWUFGWjtBQUdFLElBQUEsTUFBTSxFQUFFaUIsTUFIVjtBQUlFLElBQUEsUUFBUSxFQUFFUCxRQUpaO0FBS0UsSUFBQSxjQUFjLEVBQUV2QixjQUxsQjtBQU1FLElBQUEsaUJBQWlCLEVBQUVDLGlCQU5yQjtBQU9FLElBQUEsa0JBQWtCLEVBQUVVLGtCQVB0QjtBQVFFLElBQUEsb0JBQW9CLEVBQUVvRSxnQkFSeEI7QUFTRSxJQUFBLFVBQVUsRUFBRTFEO0FBVGQsSUFGSixFQWVHa0YsNENBQ0MsNkJBQUMsMERBQUQ7QUFDRSxJQUFBLGtCQUFrQixFQUFFOUUsa0JBRHRCO0FBRUUsSUFBQSxRQUFRLEVBQUVaLFlBRlo7QUFHRSxJQUFBLE1BQU0sRUFBRWlCLE1BSFY7QUFJRSxJQUFBLFFBQVEsRUFBRVAsUUFKWjtBQUtFLElBQUEsY0FBYyxFQUFFdkIsY0FMbEI7QUFNRSxJQUFBLGlCQUFpQixFQUFFQyxpQkFOckI7QUFPRSxJQUFBLGtCQUFrQixFQUFFVSxrQkFQdEI7QUFRRSxJQUFBLG9CQUFvQixFQUFFb0UsZ0JBUnhCO0FBU0UsSUFBQSxVQUFVLEVBQUUxRDtBQVRkLElBaEJKLEVBNkJHSSxrQkFBa0IsSUFBSUYsUUFBdEIsaUJBQ0MsNkJBQUMsOENBQUQ7QUFDRSxJQUFBLGtCQUFrQixFQUFFRSxrQkFEdEI7QUFFRSxJQUFBLFFBQVEsRUFBRVosWUFGWjtBQUdFLElBQUEsUUFBUSxFQUFFVSxRQUhaO0FBSUUsSUFBQSxrQkFBa0IsRUFBRVosa0JBSnRCO0FBS0UsSUFBQSxTQUFTLEVBQUVILFNBTGI7QUFNRSxJQUFBLFdBQVcsRUFBRStCLFdBTmY7QUFPRSxJQUFBLGlCQUFpQixFQUFFbEMsaUJBUHJCO0FBUUUsSUFBQSxTQUFTLEVBQUVGLFNBUmI7QUFTRSxJQUFBLE1BQU0sRUFBRUQsTUFUVjtBQVVFLElBQUEsTUFBTSxFQUFFNEI7QUFWVixJQTlCSixDQURGLENBREYsQ0FERjtBQWtERCxDQS9QTTs7OztBQWlRUCxJQUFNMEUsdUJBQXVCLEdBQUdDLDBCQUFPQyxHQUFWO0FBQUE7QUFBQTtBQUFBLGtCQUN6QixDQUFDSCwyQkFBRCxHQUFZLGVBQVosR0FBOEIsRUFETCxFQUV6QixDQUFDQSwyQkFBRCxHQUFZLHFCQUFaLEdBQW9DLEVBRlgsQ0FBN0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHJvcGVydGllcyBhbmQgQ2FuY2VsbGluZyBmb3Jtcy5cbiAqKi9cbmltcG9ydCBSZWFjdCwgeyBGQywgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IEZvcm1pa0NvbmZpZyB9IGZyb20gJ2Zvcm1pay9kaXN0L3R5cGVzJztcbmltcG9ydCB7IGlzTW9iaWxlIH0gZnJvbSAncmVhY3QtZGV2aWNlLWRldGVjdCc7XG5pbXBvcnQgeyB1c2VGb3JtaWsgfSBmcm9tICdmb3JtaWsnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlUGFyYW1zIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcblxuaW1wb3J0IExheW91dCBmcm9tICdzcmMvdWkta2l0L0xheW91dC9MYXlvdXQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcblxuaW1wb3J0IHtcbiAgQ0FOQ0VMX1NBTVBMSU5HX09QLFxuICBDT0xMRUNUX1NBTVBMSU5HX09QLFxuICBTYW1wbGluZ0ZldGNoRGF0YSxcbn0gZnJvbSAnLi4vc2FtcGxpbmdzUGFnZVV0aWxzJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0Zvcm0gfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0Zvcm0nO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlJztcbmltcG9ydCB7XG4gIGNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWEsXG4gIHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hLFxuICBUU2FtcGxpbmdQcm9wZXJ0aWVzLFxuICBzYW1wbGluZ1Byb3BlcnR5LFxuICBGb3JtVHlwZSxcbn0gZnJvbSAnLi9zYW1wbGluZ1Byb3BlcnRpZXNVdGlscyc7XG5cbmV4cG9ydCBjb25zdCBTYW1wbGluZ1Byb3BlcnRpZXM6IEZDID0gKCkgPT4ge1xuICBjb25zdCBbY29sbGVjdGlvblRpbWUsIHNldENvbGxlY3Rpb25UaW1lXSA9IHVzZVN0YXRlPHN0cmluZyB8IERhdGUgfCBudWxsPihcbiAgICBtb21lbnQoRGF0ZS5ub3coKSkuZm9ybWF0KCdERC9NTS9ZWVlZIGhoOm1tJyksXG4gICk7XG4gIGNvbnN0IFtwaG90b3MsIHNldFBob3Rvc10gPSB1c2VTdGF0ZTxzdHJpbmcgfCBCbG9iIHwgYW55PihbXSk7XG4gIGNvbnN0IFtwaG90b3NUb0RlbGV0ZSwgc2V0UGhvdG9zVG9EZWxldGVdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKTtcbiAgY29uc3QgW3NhdmluZ01zZywgc2V0U2F2aW5nTXNnXSA9IHVzZVN0YXRlPHN0cmluZz4oaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gIGNvbnN0IFtzYW1wbGluZ1VwZGF0ZWQsIHNldFNhbXBsaW5nVXBkYXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzYW1wbGluZ1BsYW4sIHNldFNhbXBsaW5nUGxhbl0gPSB1c2VTdGF0ZTxcbiAgICBTYW1wbGluZ0ZldGNoRGF0YSB8IHVuZGVmaW5lZFxuICA+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcblxuICBjb25zdCB1c2VySW5mbyA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUucGVybWlzc2lvbnMudXNlcl9pbmZvKTtcbiAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgdXNlckluZm8uZGF0ZV90aW1lX2Zvcm1hdCA9PT0gJ3VzJ1xuICAgICAgPyAnTU1NIGQsIHl5eXkgaGg6bW0gYWEnXG4gICAgICA6ICdkL01NL3l5eXkgSEg6bW0nO1xuICBjb25zdCBbcGFnZVR5cGUsIHNldFBhZ2VUeXBlXSA9IHVzZVN0YXRlPHN0cmluZyB8IG51bGw+KCk7XG4gIGNvbnN0IFtzYW1wbGluZ1Byb3BlcnRpZXMsIHNldFNhbXBsaW5nUHJvcGVydGllc10gPVxuICAgIHVzZVN0YXRlPFRTYW1wbGluZ1Byb3BlcnRpZXM+KCk7XG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPVxuICAgIHBhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgID8gcHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWFcbiAgICAgIDogY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYTtcblxuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybWlrQ29uZmlnPEZvcm1UeXBlPj4oe1xuICAgIGVuYWJsZVJlaW5pdGlhbGl6ZTogdHJ1ZSxcbiAgICBpbml0aWFsVmFsdWVzOiBzYW1wbGluZ1Byb3BlcnR5LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogZmFsc2UsXG4gICAgdmFsaWRhdGVPbkJsdXI6IHRydWUsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGhpc3RvcnkuZ29CYWNrKCk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gKHZhbHVlcykgPT4ge1xuICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuc2F2aW5nJykpO1xuICAgIHZhbHVlcy5waWN0dXJlc19hdHRyaWJ1dGVzID0gcGhvdG9zO1xuICAgIGNvbnN0IHNhdmVGb3JtRGF0YSA9IGZvcm1EYXRhQnVpbGRlcih2YWx1ZXMpO1xuICAgIHVwZGF0ZU9yQ3JlYXRlKHNhdmVGb3JtRGF0YSk7XG4gIH07XG5cbiAgY29uc3Qgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0ID0gKCkgPT4ge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZlJykpO1xuICAgIH0sIDMwMDApO1xuICB9O1xuXG4gIGNvbnN0IGZvcm1EYXRhQnVpbGRlciA9ICh2YWx1ZXMpID0+IHtcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvciAoY29uc3Qga2V5IGluIHZhbHVlcykge1xuICAgICAgaWYgKGtleSAhPT0gJ3BpY3R1cmVzX2F0dHJpYnV0ZXMnKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzW2tleV0gPT09IG51bGwgPyAnJyA6IHZhbHVlc1trZXldO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nWyR7a2V5fV1gLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIGxldCB1bmlxdWVQaG90b3NUb0RlbGV0ZSA9IFsuLi5uZXcgU2V0KHBob3Rvc1RvRGVsZXRlKV07XG4gICAgdW5pcXVlUGhvdG9zVG9EZWxldGUubGVuZ3RoICE9PSAwICYmXG4gICAgICB1bmlxdWVQaG90b3NUb0RlbGV0ZS5mb3JFYWNoKChpZCwgaW5kZXgpID0+IHtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKFxuICAgICAgICAgIGBzYW1wbGluZ1twaWN0dXJlc19hdHRyaWJ1dGVzXVske2luZGV4fV1baWRdYCxcbiAgICAgICAgICBKU09OLnN0cmluZ2lmeShpZCksXG4gICAgICAgICk7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICAgICBgc2FtcGxpbmdbcGljdHVyZXNfYXR0cmlidXRlc11bJHtpbmRleH1dW19kZXN0cm95XWAsXG4gICAgICAgICAgJ3RydWUnLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgcmV0dXJuIGZvcm1EYXRhO1xuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlID0gKGZvcm1EYXRhKSA9PiB7XG4gICAgY29uc3QgdXBkYXRlT3JDcmVhdGVTdWNjZXNzID0gKG1zZykgPT4ge1xuICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udChtc2cpKTtcbiAgICAgIHNldFNhbXBsaW5nVXBkYXRlZCh0cnVlKTtcbiAgICAgIHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCgpO1xuICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICB9O1xuXG4gICAgaWYgKHNhbXBsaW5nUHJvcGVydGllcz8uc2FtcGxpbmc/LmlkID09PSBudWxsKSB7XG4gICAgICAvLyBjcmVhdGVcbiAgICAgIGZvcm1EYXRhLmFwcGVuZChgc2FtcGxpbmdbZGF0ZV1gLCBjb2xsZWN0aW9uVGltZSk7XG4gICAgICBheGlvc1xuICAgICAgICAucG9zdCh1cmxzKCkuc2FtcGxpbmdQcm9wZXJ0aWVzLmNyZWF0ZVNhbXBsaW5nLnVybCwgZm9ybURhdGEpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MoJ2J1dHRvbnMuY3JlYXRlZCcpO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyB1cGRhdGVcbiAgICAgIGF4aW9zXG4gICAgICAgIC5wdXQoXG4gICAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nUHJvcGVydGllcz8uc2FtcGxpbmc/LmlkIH0pXG4gICAgICAgICAgICAuc2FtcGxpbmdQcm9wZXJ0aWVzLnVwZGF0ZVNhbXBsaW5nLnVybCxcbiAgICAgICAgICBmb3JtRGF0YSxcbiAgICAgICAgKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgdXBkYXRlT3JDcmVhdGVTdWNjZXNzKCdidXR0b25zLnVwZGF0ZWQnKTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLmVycm9yJykpO1xuICAgICAgICAgIHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCgpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZGV0ZWN0UGFnZVR5cGUgPSAoc2FtcGxpbmdQcm9wZXJ0aWVzLCBjb2xsZWN0aW9uVGltZVNlcnZlciwgb3ApID0+IHtcbiAgICBsZXQgX3BhZ2VUeXBlO1xuICAgIGlmIChvcCA9PT0gJ2VkaXQnKSB7XG4gICAgICBfcGFnZVR5cGUgPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuaXNfY2FuY2VsZWRcbiAgICAgICAgPyAnY2FuY2VsJ1xuICAgICAgICA6ICdjb2xsZWN0JztcbiAgICAgIGlmIChjb2xsZWN0aW9uVGltZVNlcnZlcikge1xuICAgICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZShjb2xsZWN0aW9uVGltZVNlcnZlcikpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgc2V0Q29sbGVjdGlvblRpbWUobmV3IERhdGUoKSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ09MTEVDVF9TQU1QTElOR19PUCkge1xuICAgICAgc2V0Q29sbGVjdGlvblRpbWUobmV3IERhdGUoKSk7XG4gICAgICBfcGFnZVR5cGUgPSAnY29sbGVjdCc7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ0FOQ0VMX1NBTVBMSU5HX09QKSB7XG4gICAgICBzZXRDb2xsZWN0aW9uVGltZShuZXcgRGF0ZShjb2xsZWN0aW9uVGltZVNlcnZlcikpO1xuICAgICAgX3BhZ2VUeXBlID0gJ2NhbmNlbCc7XG4gICAgfVxuICAgIHJldHVybiBfcGFnZVR5cGU7XG4gIH07XG5cbiAgY29uc3QgaXNQcm9wZXJ0aWVzUGFnZSA9IHBhZ2VUeXBlID09PSAnZWRpdCc7XG5cbiAgY29uc3QgeyBzYW1wbGVJZCB9ID0gdXNlUGFyYW1zKCk7XG5cbiAgY29uc3QgZmV0Y2hTYW1wbGluZ1Byb3BlcnRpZXMgPSAoc2FtcGxpbmdJZCA9IHNhbXBsZUlkLCBvcCkgPT4ge1xuICAgIGF4aW9zXG4gICAgICAuZ2V0KFxuICAgICAgICB1cmxzKHsgc2FtcGxpbmdJZDogc2FtcGxpbmdJZCB9KS5zYW1wbGluZ1Byb3BlcnRpZXMuZmV0Y2hTYW1wbGluZy51cmwsXG4gICAgICApXG4gICAgICAudGhlbigocmVzKSA9PiB7XG4gICAgICAgIGNvbnN0IHNhbXBsaW5nUmVzID0gcmVzLmRhdGE7XG4gICAgICAgIGNvbnN0IHNhbXBsaW5nUHJvcGVydGllcyA9IHNhbXBsaW5nUmVzLnNhbXBsaW5nX3Byb3BlcnRpZXM7XG4gICAgICAgIGNvbnN0IGNvbGxlY3Rpb25UaW1lU2VydmVyID1cbiAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuY29sbGVjdGlvbl90aW1lO1xuXG4gICAgICAgIGNvbnN0IF9wYWdlVHlwZSA9IGRldGVjdFBhZ2VUeXBlKFxuICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICAgICAgICBjb2xsZWN0aW9uVGltZVNlcnZlcixcbiAgICAgICAgICBvcCxcbiAgICAgICAgKTtcbiAgICAgICAgc2V0UGFnZVR5cGUoX3BhZ2VUeXBlKTtcblxuICAgICAgICBjb25zdCBpc0NhbmNlbGVkID1cbiAgICAgICAgICBfcGFnZVR5cGUgPT09ICdjYW5jZWwnXG4gICAgICAgICAgICA/IHRydWVcbiAgICAgICAgICAgIDogX3BhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgICAgICAgID8gZmFsc2VcbiAgICAgICAgICAgIDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkIHx8IGZhbHNlO1xuXG4gICAgICAgIGNvbnN0IHBhZ2VDb2xsZWN0aW9uVGltZSA9XG4gICAgICAgICAgX3BhZ2VUeXBlID09PSAnY29sbGVjdCdcbiAgICAgICAgICAgID8gY29sbGVjdGlvblRpbWVcbiAgICAgICAgICAgIDogc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZTtcblxuICAgICAgICBjb25zdCBzYW0gPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmc7XG4gICAgICAgIGZvcm1pay5zZXRWYWx1ZXMoe1xuICAgICAgICAgIGxhYl9pZDogc2FtLmxhYl9pZCxcbiAgICAgICAgICBjb2xsZWN0aW9uX3RpbWU6IHBhZ2VDb2xsZWN0aW9uVGltZSxcbiAgICAgICAgICBwdW1wX3NhbXBsaW5nX3ZvbHVtZTogc2FtLnB1bXBfc2FtcGxpbmdfdm9sdW1lLFxuICAgICAgICAgIHB1bXBfYmF0dGVyeV9sZXZlbDogc2FtLnB1bXBfYmF0dGVyeV9sZXZlbCxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogc2FtLmRlc2NyaXB0aW9uLFxuICAgICAgICAgIGthbmRvX3JlcDogc2FtLmthbmRvX3JlcCxcbiAgICAgICAgICBzYW1wbGluZ19wbGFuX2lkOiBzYW0uc2FtcGxpbmdfcGxhbl9pZCxcbiAgICAgICAgICBjYW5jZWxsYXRpb25fcmVhc29uOiBzYW0uY2FuY2VsbGF0aW9uX3JlYXNvbiB8fCAnJyxcbiAgICAgICAgICBpc19jYW5jZWxlZDogaXNDYW5jZWxlZCxcbiAgICAgICAgfSk7XG4gICAgICAgIHNldFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGluZ1Byb3BlcnRpZXMpO1xuICAgICAgICBzZXRTYW1wbGluZ1BsYW4oc2FtcGxpbmdSZXMuc2FtcGxpbmdfcGxhbik7XG4gICAgICB9KTtcbiAgfTtcblxuICBjb25zdCBnZXRVcmxRdWVyeU9wID0gKCkgPT4ge1xuICAgIGxldCBvcCA9IHF1ZXJ5LmdldCgnb3AnKTtcbiAgICAvLyBpZiBub3QgcHJlc2VudCB0aGVuIGRlZmF1bHQgb3AgaXMgJ2NvbGxlY3RpbmcnXG4gICAgaWYgKFt1bmRlZmluZWQsIG51bGwsICcnXS5pbmNsdWRlcyhvcCkpIHtcbiAgICAgIHJldHVybiBDT0xMRUNUX1NBTVBMSU5HX09QO1xuICAgIH1cbiAgICByZXR1cm4gb3A7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGVJZCwgZ2V0VXJsUXVlcnlPcCgpKTtcbiAgfSwgW3NhbXBsaW5nVXBkYXRlZF0pO1xuXG4gIGlmICghc2FtcGxpbmdQbGFuIHx8ICFzYW1wbGluZ1Byb3BlcnRpZXMpIHtcbiAgICByZXR1cm4gPFNwaW5uZXIgLz47XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxmb3JtIG9uU3VibWl0PXtmb3JtaWsuaGFuZGxlU3VibWl0fT5cbiAgICAgIDxMYXlvdXQ+XG4gICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNTdHlsZT5cbiAgICAgICAgICB7IWlzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uRGF0ZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25EYXRlPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2lzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uRGF0ZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25EYXRlPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge3NhbXBsaW5nUHJvcGVydGllcyAmJiBwYWdlVHlwZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzRm9ybVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgc2F2aW5nTXNnPXtzYXZpbmdNc2d9XG4gICAgICAgICAgICAgIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgc2V0UGhvdG9zVG9EZWxldGU9e3NldFBob3Rvc1RvRGVsZXRlfVxuICAgICAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICAgICAgcGhvdG9zPXtwaG90b3N9XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgPC9MYXlvdXQ+XG4gICAgPC9mb3JtPlxuICApO1xufTtcblxuY29uc3QgU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGUgPSBzdHlsZWQuZGl2YFxuICAkeyFpc01vYmlsZSA/ICd3aWR0aDogODMwcHg7JyA6ICcnfVxuICAkeyFpc01vYmlsZSA/ICdtYXJnaW46IDEwMHB4IGF1dG87JyA6ICcnfVxuYDtcbiJdfQ==
|