ato-water-lib 0.0.102 → 0.0.104

Sign up to get free protection for your applications and to get access to all the features.
@@ -72,7 +72,7 @@ export class AssetFlowComponent {
72
72
  const isResponsiveView = window.innerWidth < 1024;
73
73
  // Reponsive
74
74
  _.forEach(flowData?.nodeDataArray, (node) => {
75
- const propertyNameExtend = `extendedData${defaultData.isFrom && node?.isFrom ? `isFrom${defaultData.isFrom}` : ''}${isResponsiveView ? 'Responsive' : ''}`;
75
+ const propertyNameExtend = `extendedData${defaultData.isFrom && node?.isFrom ? `IsFrom${defaultData.isFrom}` : ''}${isResponsiveView ? 'Responsive' : ''}`;
76
76
  node = _.merge(node, node[propertyNameExtend], node[`${propertyNameExtend}${defaultData?.assetLayer}`] ?? {});
77
77
  if (node?.assetLayers) {
78
78
  node.visible =
@@ -100,7 +100,7 @@ export class AssetFlowComponent {
100
100
  }
101
101
  setFlowData(data) {
102
102
  _.forEach(data.nodeDataArray, (node) => {
103
- const propertyNameExtend = `extendedData${data.isFrom && node?.isFrom ? `isFrom${data.isFrom}` : ''}${this.isResponsiveView ? 'Responsive' : ''}`;
103
+ const propertyNameExtend = `extendedData${data.isFrom && node?.isFrom ? `IsFrom${data.isFrom}` : ''}${this.isResponsiveView ? 'Responsive' : ''}`;
104
104
  node = _.merge(node, node[propertyNameExtend], node[`${propertyNameExtend}${data?.assetLayer}`] ?? {});
105
105
  if (node?.assetLayers) {
106
106
  node.visible =
@@ -161,4 +161,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
161
161
  type: HostListener,
162
162
  args: ['window:resize', ['$event']]
163
163
  }] } });
164
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtZmxvdy9hc3NldC1mbG93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFFTCx5QkFBeUIsR0FDMUIsTUFBTSx3Q0FBd0MsQ0FBQztBQUdoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7O0FBTzVGLE1BQU0sT0FBTyxrQkFBa0I7SUFML0I7UUFhWSw2QkFBd0IsR0FDaEMsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNqQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUU3QixNQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDeEIsWUFBTyxHQUFHO1lBQ1IsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFO1lBQ3RDLGdC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QUFTO3VCQUFDLDJCQUEyQjtnQkFFN0IsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksd0JBQXdCO3NCQUFqQyxNQUFNO2dCQUVFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQVVPLFFBQVE7c0JBQXBCLEtBQUs7Z0JBY0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBnbyBmcm9tICdnb2pzJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBBdG9Hb0pTQmFzZTY0IH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2Jhc2U2NC5jb25zdCc7XG5pbXBvcnQge1xuICBBVE9fQVNTRVRfTEFZRVJTLFxuICBBVE9fQ09NUE9ORU5UU19HUk9VUF9EQVRBLFxufSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29tcG9uZW50cy1ncm91cC1jb25zdCc7XG5pbXBvcnQgeyBBdG9EZWZhdWx0Rmxvd0RhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXRvLWFzc2V0LWZsb3cubW9kZWwnO1xuaW1wb3J0IHsgQXRvR29KU0RhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ29qcy1kYXRhLm1vZGVsJztcbmltcG9ydCB7IEF0b0dvanNFZGl0b3JNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9nb2pzLWVkaXRvci5tb2RlbCc7XG5pbXBvcnQgeyBBdG9Bc3NldFBhcmFtc1ZpZXdDb21wb25lbnQgfSBmcm9tICcuLi9hc3NldC1wYXJhbXMtdmlldy9hc3NldC1wYXJhbXMtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQgfSBmcm9tICcuLi9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXRvLWFzc2V0LWZsb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXNzZXQtZmxvdy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Fzc2V0LWZsb3cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQXNzZXRGbG93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgYXNzZXRMYXllcjogQVRPX0FTU0VUX0xBWUVSUztcbiAgQFZpZXdDaGlsZChBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudClcbiAgZ2pGbG93RGlhZ3JhbVRlbXA6IEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudClcbiAgYXNzZXRQYXJhbXNWaWV3VGVtcDogQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50O1xuICBASW5wdXQoKSBzZWxlY3RlZENvbXBvbmVudDogYW55O1xuICBASW5wdXQoKSBzeXN0ZW1UeXBlOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9UWVBFUztcbiAgQE91dHB1dCgpIG9uQ2xpY2tQYXJhbU9mVGFibGVFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBASW5wdXQoKSBpc1VzZUJhc2U2NCA9IGZhbHNlO1xuICBASW5wdXQoKSBpc0Zyb206IHN0cmluZztcbiAgJCA9IGdvLkdyYXBoT2JqZWN0Lm1ha2U7XG4gIG9wdGlvbnMgPSB7XG4gICAgbGF5b3V0OiB0aGlzLiQoZ28uTGF5ZXJlZERpZ3JhcGhMYXlvdXQsIHtcbiAgICAgIC8vIGRpcmVjdGlvbjogMCxcbiAgICB9KSxcbiAgICAvLyBpc1JlYWRPbmx5OiB0cnVlLFxuICB9O1xuXG4gIHByaXZhdGUgX2Zsb3dEYXRhOiBhbnk7XG4gIEBJbnB1dCgpIHNldCBmbG93RGF0YSh2OiBBdG9Hb0pTRGF0YSkge1xuICAgIHRoaXMuX2Zsb3dEYXRhID0gdjtcbiAgICB0aGlzLnVwZGF0ZURhdGFUYWJsZUFzc2V0UGFyYW1zKHsgLi4udiwgYXNzZXRMYXllcjogdGhpcy5hc3NldExheWVyIH0pO1xuICB9XG4gIGdldCBmbG93RGF0YSgpOiBBdG9Hb0pTRGF0YSB7XG4gICAgcmV0dXJuIHRoaXMuX2Zsb3dEYXRhO1xuICB9XG5cbiAgLy8gUmVwb25zaXZlXG4gIGRhdGFUYWJsZUFzc2V0UGFyYW1zOiBhbnlbXTtcbiAgLy8gQElucHV0KCkgaXNSZXNwb25zaXZlVmlldyA9IGZhbHNlO1xuICBnZXQgaXNSZXNwb25zaXZlVmlldygpIHtcbiAgICByZXR1cm4gd2luZG93LmlubmVyV2lkdGggPCAxMDI0O1xuICB9XG4gIEBJbnB1dCgpIGdldEZsb3dEYXRhQ2FsbEJhY2s6IEZ1bmN0aW9uO1xuXG4gIHRpbWVvdXRSZXNpemVXaW5kb3c7XG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBvblJlc2l6ZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBOb3cgb25seSBTdXBwb3J0IENvb2xpbmcgVG93ZXIgUmVzcG9uc2l2ZVxuICAgIGlmICh0aGlzLnRpbWVvdXRSZXNpemVXaW5kb3cpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXRSZXNpemVXaW5kb3cpO1xuICAgIH1cbiAgICB0aGlzLnRpbWVvdXRSZXNpemVXaW5kb3cgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlTG9jYXRpb25SZXBvbnNpdmUoKTtcbiAgICB9LCAxMDAwKTtcbiAgfVxuXG4gIHVwZGF0ZUxvY2F0aW9uUmVwb25zaXZlKCkge1xuICAgIGlmICghdGhpcy5mbG93RGF0YT8ubm9kZURhdGFBcnJheSkge1xuICAgICAgdGhpcy5mbG93RGF0YSA9IEFzc2V0Rmxvd0NvbXBvbmVudC5nZXREZWZhdWx0Rmxvd0RhdGEoe1xuICAgICAgICBzeXN0ZW1UeXBlOiB0aGlzLnN5c3RlbVR5cGUsXG4gICAgICAgIGlzVXNlQmFzZTY0OiB0aGlzLmlzVXNlQmFzZTY0LFxuICAgICAgICBhc3NldExheWVyOiB0aGlzLmFzc2V0TGF5ZXIsXG4gICAgICB9KTtcbiAgICB9XG4gICAgXy5mb3JFYWNoKHRoaXMuZmxvd0RhdGE/Lm5vZGVEYXRhQXJyYXksIChub2RlOiBhbnkpID0+IHtcbiAgICAgIG5vZGUgPSBfLm1lcmdlKFxuICAgICAgICBub2RlLFxuICAgICAgICBub2RlW2BleHRlbmRlZERhdGEke3RoaXMuaXNSZXNwb25zaXZlVmlldyA/ICdSZXNwb25zaXZlJyA6ICcnfWBdXG4gICAgICApO1xuICAgIH0pO1xuICAgIHRoaXMuc2V0Rmxvd0RhdGEoXy5jbG9uZURlZXAodGhpcy5mbG93RGF0YSkpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cGRhdGVMb2NhdGlvblJlcG9uc2l2ZSgpO1xuICB9XG4gIG9uQ2xpY2tQYXJhbU9mVGFibGUoJGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLm9uQ2xpY2tQYXJhbU9mVGFibGVFdmVudC5lbWl0KCRldmVudCk7XG4gIH1cblxuICBzdGF0aWMgZ2V0RGVmYXVsdEZsb3dEYXRhKGRlZmF1bHREYXRhOiBBdG9EZWZhdWx0Rmxvd0RhdGEpIHtcbiAgICBjb25zdCBmbG93RGF0YSA9IHtcbiAgICAgIC4uLmRlZmF1bHREYXRhLFxuICAgICAgLi4uXy5jbG9uZURlZXAoQVRPX0NPTVBPTkVOVFNfR1JPVVBfREFUQSlbZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVdLFxuICAgICAgbGlua0Zyb21Qb3J0SWRQcm9wZXJ0eTogJ2Zyb21Qb3J0JyxcbiAgICAgIGxpbmtUb1BvcnRJZFByb3BlcnR5OiAndG9Qb3J0JyxcbiAgICB9O1xuICAgIGNvbnN0IGlzUmVzcG9uc2l2ZVZpZXcgPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDEwMjQ7XG4gICAgLy8gUmVwb25zaXZlXG4gICAgXy5mb3JFYWNoKGZsb3dEYXRhPy5ub2RlRGF0YUFycmF5LCAobm9kZTogYW55KSA9PiB7XG4gICAgICBjb25zdCBwcm9wZXJ0eU5hbWVFeHRlbmQgPSBgZXh0ZW5kZWREYXRhJHtcbiAgICAgICAgZGVmYXVsdERhdGEuaXNGcm9tICYmIG5vZGU/LmlzRnJvbSA/IGBpc0Zyb20ke2RlZmF1bHREYXRhLmlzRnJvbX1gIDogJydcbiAgICAgIH0ke2lzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gO1xuICAgICAgbm9kZSA9IF8ubWVyZ2Uobm9kZSwgbm9kZVtwcm9wZXJ0eU5hbWVFeHRlbmRdLCBub2RlW2Ake3Byb3BlcnR5TmFtZUV4dGVuZH0ke2RlZmF1bHREYXRhPy5hc3NldExheWVyfWBdID8/IHt9KTtcbiAgICAgIGlmIChub2RlPy5hc3NldExheWVycykge1xuICAgICAgICBub2RlLnZpc2libGUgPVxuICAgICAgICAgIG5vZGU/LmFzc2V0TGF5ZXJzID09PSBkZWZhdWx0RGF0YT8uYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXT8udmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIGlmIChkZWZhdWx0RGF0YS5pc0Zyb20gJiYgbm9kZT8uZGF0YVRhYmxlKSB7XG4gICAgICAgIF8uZm9yRWFjaChub2RlPy5kYXRhVGFibGUsIChpdGVtKSA9PiB7XG4gICAgICAgICAgaWYgKGl0ZW0/LmlzRnJvbSkge1xuICAgICAgICAgICAgaXRlbS52aXNpYmxlID0gaXRlbT8uaXNGcm9tID09PSBkZWZhdWx0RGF0YS5pc0Zyb207XG4gICAgICAgICAgfVxuICAgICAgICAgIGl0ZW0gPSBfLm1lcmdlKGl0ZW0sIGl0ZW1bYGV4dGVuZGVkRGF0YUlzRnJvbSR7ZGVmYXVsdERhdGEuaXNGcm9tfWBdKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gYXNzZXRMYXllclxuICAgIC8vIGZsb3dEYXRhLm5vZGVEYXRhQXJyYXkgPSBfLmZpbHRlcihmbG93RGF0YS5ub2RlRGF0YUFycmF5LCB4ID0+ICF4Py5hc3NldExheWVycyB8fCAoeD8uYXNzZXRMYXllcnMgJiYgeD8uYXNzZXRMYXllcnMgPT09IChkZWZhdWx0RGF0YT8uYXNzZXRMYXllciA/PyBBVE9fQVNTRVRfTEFZRVJTLkZMT1cpKSlcbiAgICBpZiAoZGVmYXVsdERhdGE/LmlzVXNlQmFzZTY0KSB7XG4gICAgICBjb25zdCBpdGVtSW1hZ2VUZW1wID0gKGZsb3dEYXRhIGFzIEF0b0dvSlNEYXRhKT8ubm9kZURhdGFBcnJheT8uZmluZChcbiAgICAgICAgKHgpID0+IHg/LnR5cGUgPT09ICdJbWFnZSBUZW1wbGF0ZSdcbiAgICAgICk7XG4gICAgICBpZiAoaXRlbUltYWdlVGVtcCkge1xuICAgICAgICBpdGVtSW1hZ2VUZW1wLnNvdXJjZSA9IEF0b0dvSlNCYXNlNjRbZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmxvd0RhdGE7XG4gIH1cblxuICBzZXRGbG93RGF0YShkYXRhOiBBdG9Hb0pTRGF0YSkge1xuICAgIF8uZm9yRWFjaChkYXRhLm5vZGVEYXRhQXJyYXksIChub2RlKSA9PiB7XG4gICAgICBjb25zdCBwcm9wZXJ0eU5hbWVFeHRlbmQgPSBgZXh0ZW5kZWREYXRhJHtcbiAgICAgICAgZGF0YS5pc0Zyb20gJiYgbm9kZT8uaXNGcm9tID8gYGlzRnJvbSR7ZGF0YS5pc0Zyb219YCA6ICcnXG4gICAgICB9JHt0aGlzLmlzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gO1xuICAgICAgbm9kZSA9IF8ubWVyZ2Uobm9kZSwgbm9kZVtwcm9wZXJ0eU5hbWVFeHRlbmRdLCBub2RlW2Ake3Byb3BlcnR5TmFtZUV4dGVuZH0ke2RhdGE/LmFzc2V0TGF5ZXJ9YF0gPz8ge30pO1xuICAgICAgaWYgKG5vZGU/LmFzc2V0TGF5ZXJzKSB7XG4gICAgICAgIG5vZGUudmlzaWJsZSA9XG4gICAgICAgICAgbm9kZT8uYXNzZXRMYXllcnMgPT09IGRhdGEuYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXT8udmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIGlmIChkYXRhLmlzRnJvbSAmJiBub2RlPy5kYXRhVGFibGUpIHtcbiAgICAgICAgXy5mb3JFYWNoKG5vZGU/LmRhdGFUYWJsZSwgKGl0ZW0pID0+IHtcbiAgICAgICAgICBpZiAoaXRlbT8uaXNGcm9tKSB7XG4gICAgICAgICAgICBpdGVtLnZpc2libGUgPSBpdGVtPy5pc0Zyb20gPT09IGRhdGEuaXNGcm9tO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpdGVtID0gXy5tZXJnZShpdGVtLCBpdGVtW2BleHRlbmRlZERhdGFJc0Zyb20ke2RhdGEuaXNGcm9tfWBdKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5mbG93RGF0YSA9IHtcbiAgICAgIC4uLmRhdGEsXG4gICAgfTtcbiAgICB0aGlzLnVwZGF0ZURhdGFUYWJsZUFzc2V0UGFyYW1zKGRhdGEpO1xuICB9XG5cbiAgdXBkYXRlRGF0YVRhYmxlQXNzZXRQYXJhbXMoZGF0YTogQXRvR29KU0RhdGEpIHtcbiAgICB0aGlzLmRhdGFUYWJsZUFzc2V0UGFyYW1zID0gXy5mb3JFYWNoKFxuICAgICAgdGhpcy5mbG93RGF0YT8ubm9kZURhdGFBcnJheT8uZmlsdGVyKFxuICAgICAgICAoZSkgPT5cbiAgICAgICAgICBlPy50eXBlID09PSBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9URU1QTEFURVMuUEFSQU1fVEFCTEUgJiZcbiAgICAgICAgICAoZGF0YT8uYXNzZXRMYXllciA/IGU/LmFzc2V0TGF5ZXJzID09PSBkYXRhPy5hc3NldExheWVyIDogdHJ1ZSlcbiAgICAgICksXG4gICAgICAoeCkgPT4ge1xuICAgICAgICBpZiAoIWRhdGE/LmlzUmVmcmVzaCkge1xuICAgICAgICAgIHguaXNDb2xsYXBzZWQgPSB0aGlzLmFzc2V0UGFyYW1zVmlld1RlbXA/LmRhdGE/LmZpbmQoXG4gICAgICAgICAgICAoeSkgPT4geT8ua2V5ID09PSB4Py5rZXlcbiAgICAgICAgICApPy5pc0NvbGxhcHNlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoLTEwMCBkLWZsZXggZmxleC1jb2x1bW4gZmxleC1nYXAtMyBmbGV4LWdyb3ctMSBvdmVyZmxvdy1hdXRvIHB4LTMgcGItM1wiPlxuICA8ZGl2IGNsYXNzPVwiaC0xMDAgZC1mbGV4IGZsZXgtY29sdW1uXCIgYXRvTG9hZGluZyBbYXBwTG9hZGluZ109XCJmbG93RGF0YSA9PT0gbnVsbFwiPlxuICAgIDxhdG8tZmxvdy1kaWFncmFtLWxpYlxuICAgICAgKm5nSWY9XCJmbG93RGF0YSAhPT0gbnVsbFwiXG4gICAgICAjZ2pGbG93RGlhZ3JhbVRlbXBcbiAgICAgIFtkYXRhXT1cImZsb3dEYXRhXCJcbiAgICAgIFtpbml0aWFsT3B0aW9uc109XCJvcHRpb25zXCJcbiAgICAgIChvbkNsaWtQYXJhbU9mVGFibGUpPVwib25DbGlja1BhcmFtT2ZUYWJsZSgkZXZlbnQpXCJcbiAgICAgIFtjbGFzc109XCIhIWlzUmVzcG9uc2l2ZVZpZXcgPyAnZGlhZ3JhbS1yZXNwb25zaXZlLXZpZXcnIDogJ2ZsZXgtZ3Jvdy0xJ1wiXG4gICAgPjwvYXRvLWZsb3ctZGlhZ3JhbS1saWI+XG4gICAgPGRpdiBjbGFzcz1cIm10LTJcIiAqbmdJZj1cImlzUmVzcG9uc2l2ZVZpZXdcIj5cbiAgICAgIDxhdG8tYXNzZXQtcGFyYW1zLXZpZXdcbiAgICAgICAgI2Fzc2V0UGFyYW1zVmlld1RlbXBcbiAgICAgICAgW2RhdGFdPVwiZGF0YVRhYmxlQXNzZXRQYXJhbXNcIlxuICAgICAgICBbaXNFZGl0Vmlld109XCJ0cnVlXCJcbiAgICAgICAgKGNsaWNrUGFyYW1UYWJsZVJvdyk9XCJvbkNsaWNrUGFyYW1PZlRhYmxlKCRldmVudClcIlxuICAgICAgPjwvYXRvLWFzc2V0LXBhcmFtcy12aWV3PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG4iXX0=
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtZmxvdy9hc3NldC1mbG93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFFTCx5QkFBeUIsR0FDMUIsTUFBTSx3Q0FBd0MsQ0FBQztBQUdoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7O0FBTzVGLE1BQU0sT0FBTyxrQkFBa0I7SUFML0I7UUFhWSw2QkFBd0IsR0FDaEMsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNqQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUU3QixNQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDeEIsWUFBTyxHQUFHO1lBQ1IsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFO1lBQ3RDLGdC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QUFTO3VCQUFDLDJCQUEyQjtnQkFFN0IsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksd0JBQXdCO3NCQUFqQyxNQUFNO2dCQUVFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQVVPLFFBQVE7c0JBQXBCLEtBQUs7Z0JBY0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBnbyBmcm9tICdnb2pzJztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBBdG9Hb0pTQmFzZTY0IH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2Jhc2U2NC5jb25zdCc7XG5pbXBvcnQge1xuICBBVE9fQVNTRVRfTEFZRVJTLFxuICBBVE9fQ09NUE9ORU5UU19HUk9VUF9EQVRBLFxufSBmcm9tICcuLi8uLi9jb25zdGFudHMvY29tcG9uZW50cy1ncm91cC1jb25zdCc7XG5pbXBvcnQgeyBBdG9EZWZhdWx0Rmxvd0RhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvYXRvLWFzc2V0LWZsb3cubW9kZWwnO1xuaW1wb3J0IHsgQXRvR29KU0RhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ29qcy1kYXRhLm1vZGVsJztcbmltcG9ydCB7IEF0b0dvanNFZGl0b3JNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9nb2pzLWVkaXRvci5tb2RlbCc7XG5pbXBvcnQgeyBBdG9Bc3NldFBhcmFtc1ZpZXdDb21wb25lbnQgfSBmcm9tICcuLi9hc3NldC1wYXJhbXMtdmlldy9hc3NldC1wYXJhbXMtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQgfSBmcm9tICcuLi9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXRvLWFzc2V0LWZsb3cnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXNzZXQtZmxvdy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Fzc2V0LWZsb3cuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQXNzZXRGbG93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgYXNzZXRMYXllcjogQVRPX0FTU0VUX0xBWUVSUztcbiAgQFZpZXdDaGlsZChBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudClcbiAgZ2pGbG93RGlhZ3JhbVRlbXA6IEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50O1xuICBAVmlld0NoaWxkKEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudClcbiAgYXNzZXRQYXJhbXNWaWV3VGVtcDogQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50O1xuICBASW5wdXQoKSBzZWxlY3RlZENvbXBvbmVudDogYW55O1xuICBASW5wdXQoKSBzeXN0ZW1UeXBlOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9UWVBFUztcbiAgQE91dHB1dCgpIG9uQ2xpY2tQYXJhbU9mVGFibGVFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBASW5wdXQoKSBpc1VzZUJhc2U2NCA9IGZhbHNlO1xuICBASW5wdXQoKSBpc0Zyb206IHN0cmluZztcbiAgJCA9IGdvLkdyYXBoT2JqZWN0Lm1ha2U7XG4gIG9wdGlvbnMgPSB7XG4gICAgbGF5b3V0OiB0aGlzLiQoZ28uTGF5ZXJlZERpZ3JhcGhMYXlvdXQsIHtcbiAgICAgIC8vIGRpcmVjdGlvbjogMCxcbiAgICB9KSxcbiAgICAvLyBpc1JlYWRPbmx5OiB0cnVlLFxuICB9O1xuXG4gIHByaXZhdGUgX2Zsb3dEYXRhOiBhbnk7XG4gIEBJbnB1dCgpIHNldCBmbG93RGF0YSh2OiBBdG9Hb0pTRGF0YSkge1xuICAgIHRoaXMuX2Zsb3dEYXRhID0gdjtcbiAgICB0aGlzLnVwZGF0ZURhdGFUYWJsZUFzc2V0UGFyYW1zKHsgLi4udiwgYXNzZXRMYXllcjogdGhpcy5hc3NldExheWVyIH0pO1xuICB9XG4gIGdldCBmbG93RGF0YSgpOiBBdG9Hb0pTRGF0YSB7XG4gICAgcmV0dXJuIHRoaXMuX2Zsb3dEYXRhO1xuICB9XG5cbiAgLy8gUmVwb25zaXZlXG4gIGRhdGFUYWJsZUFzc2V0UGFyYW1zOiBhbnlbXTtcbiAgLy8gQElucHV0KCkgaXNSZXNwb25zaXZlVmlldyA9IGZhbHNlO1xuICBnZXQgaXNSZXNwb25zaXZlVmlldygpIHtcbiAgICByZXR1cm4gd2luZG93LmlubmVyV2lkdGggPCAxMDI0O1xuICB9XG4gIEBJbnB1dCgpIGdldEZsb3dEYXRhQ2FsbEJhY2s6IEZ1bmN0aW9uO1xuXG4gIHRpbWVvdXRSZXNpemVXaW5kb3c7XG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxuICBvblJlc2l6ZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAvLyBOb3cgb25seSBTdXBwb3J0IENvb2xpbmcgVG93ZXIgUmVzcG9uc2l2ZVxuICAgIGlmICh0aGlzLnRpbWVvdXRSZXNpemVXaW5kb3cpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVvdXRSZXNpemVXaW5kb3cpO1xuICAgIH1cbiAgICB0aGlzLnRpbWVvdXRSZXNpemVXaW5kb3cgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMudXBkYXRlTG9jYXRpb25SZXBvbnNpdmUoKTtcbiAgICB9LCAxMDAwKTtcbiAgfVxuXG4gIHVwZGF0ZUxvY2F0aW9uUmVwb25zaXZlKCkge1xuICAgIGlmICghdGhpcy5mbG93RGF0YT8ubm9kZURhdGFBcnJheSkge1xuICAgICAgdGhpcy5mbG93RGF0YSA9IEFzc2V0Rmxvd0NvbXBvbmVudC5nZXREZWZhdWx0Rmxvd0RhdGEoe1xuICAgICAgICBzeXN0ZW1UeXBlOiB0aGlzLnN5c3RlbVR5cGUsXG4gICAgICAgIGlzVXNlQmFzZTY0OiB0aGlzLmlzVXNlQmFzZTY0LFxuICAgICAgICBhc3NldExheWVyOiB0aGlzLmFzc2V0TGF5ZXIsXG4gICAgICB9KTtcbiAgICB9XG4gICAgXy5mb3JFYWNoKHRoaXMuZmxvd0RhdGE/Lm5vZGVEYXRhQXJyYXksIChub2RlOiBhbnkpID0+IHtcbiAgICAgIG5vZGUgPSBfLm1lcmdlKFxuICAgICAgICBub2RlLFxuICAgICAgICBub2RlW2BleHRlbmRlZERhdGEke3RoaXMuaXNSZXNwb25zaXZlVmlldyA/ICdSZXNwb25zaXZlJyA6ICcnfWBdXG4gICAgICApO1xuICAgIH0pO1xuICAgIHRoaXMuc2V0Rmxvd0RhdGEoXy5jbG9uZURlZXAodGhpcy5mbG93RGF0YSkpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy51cGRhdGVMb2NhdGlvblJlcG9uc2l2ZSgpO1xuICB9XG4gIG9uQ2xpY2tQYXJhbU9mVGFibGUoJGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLm9uQ2xpY2tQYXJhbU9mVGFibGVFdmVudC5lbWl0KCRldmVudCk7XG4gIH1cblxuICBzdGF0aWMgZ2V0RGVmYXVsdEZsb3dEYXRhKGRlZmF1bHREYXRhOiBBdG9EZWZhdWx0Rmxvd0RhdGEpIHtcbiAgICBjb25zdCBmbG93RGF0YSA9IHtcbiAgICAgIC4uLmRlZmF1bHREYXRhLFxuICAgICAgLi4uXy5jbG9uZURlZXAoQVRPX0NPTVBPTkVOVFNfR1JPVVBfREFUQSlbZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVdLFxuICAgICAgbGlua0Zyb21Qb3J0SWRQcm9wZXJ0eTogJ2Zyb21Qb3J0JyxcbiAgICAgIGxpbmtUb1BvcnRJZFByb3BlcnR5OiAndG9Qb3J0JyxcbiAgICB9O1xuICAgIGNvbnN0IGlzUmVzcG9uc2l2ZVZpZXcgPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDEwMjQ7XG4gICAgLy8gUmVwb25zaXZlXG4gICAgXy5mb3JFYWNoKGZsb3dEYXRhPy5ub2RlRGF0YUFycmF5LCAobm9kZTogYW55KSA9PiB7XG4gICAgICBjb25zdCBwcm9wZXJ0eU5hbWVFeHRlbmQgPSBgZXh0ZW5kZWREYXRhJHtcbiAgICAgICAgZGVmYXVsdERhdGEuaXNGcm9tICYmIG5vZGU/LmlzRnJvbSA/IGBJc0Zyb20ke2RlZmF1bHREYXRhLmlzRnJvbX1gIDogJydcbiAgICAgIH0ke2lzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gO1xuICAgICAgbm9kZSA9IF8ubWVyZ2Uobm9kZSwgbm9kZVtwcm9wZXJ0eU5hbWVFeHRlbmRdLCBub2RlW2Ake3Byb3BlcnR5TmFtZUV4dGVuZH0ke2RlZmF1bHREYXRhPy5hc3NldExheWVyfWBdID8/IHt9KTtcbiAgICAgIGlmIChub2RlPy5hc3NldExheWVycykge1xuICAgICAgICBub2RlLnZpc2libGUgPVxuICAgICAgICAgIG5vZGU/LmFzc2V0TGF5ZXJzID09PSBkZWZhdWx0RGF0YT8uYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXT8udmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIGlmIChkZWZhdWx0RGF0YS5pc0Zyb20gJiYgbm9kZT8uZGF0YVRhYmxlKSB7XG4gICAgICAgIF8uZm9yRWFjaChub2RlPy5kYXRhVGFibGUsIChpdGVtKSA9PiB7XG4gICAgICAgICAgaWYgKGl0ZW0/LmlzRnJvbSkge1xuICAgICAgICAgICAgaXRlbS52aXNpYmxlID0gaXRlbT8uaXNGcm9tID09PSBkZWZhdWx0RGF0YS5pc0Zyb207XG4gICAgICAgICAgfVxuICAgICAgICAgIGl0ZW0gPSBfLm1lcmdlKGl0ZW0sIGl0ZW1bYGV4dGVuZGVkRGF0YUlzRnJvbSR7ZGVmYXVsdERhdGEuaXNGcm9tfWBdKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gYXNzZXRMYXllclxuICAgIC8vIGZsb3dEYXRhLm5vZGVEYXRhQXJyYXkgPSBfLmZpbHRlcihmbG93RGF0YS5ub2RlRGF0YUFycmF5LCB4ID0+ICF4Py5hc3NldExheWVycyB8fCAoeD8uYXNzZXRMYXllcnMgJiYgeD8uYXNzZXRMYXllcnMgPT09IChkZWZhdWx0RGF0YT8uYXNzZXRMYXllciA/PyBBVE9fQVNTRVRfTEFZRVJTLkZMT1cpKSlcbiAgICBpZiAoZGVmYXVsdERhdGE/LmlzVXNlQmFzZTY0KSB7XG4gICAgICBjb25zdCBpdGVtSW1hZ2VUZW1wID0gKGZsb3dEYXRhIGFzIEF0b0dvSlNEYXRhKT8ubm9kZURhdGFBcnJheT8uZmluZChcbiAgICAgICAgKHgpID0+IHg/LnR5cGUgPT09ICdJbWFnZSBUZW1wbGF0ZSdcbiAgICAgICk7XG4gICAgICBpZiAoaXRlbUltYWdlVGVtcCkge1xuICAgICAgICBpdGVtSW1hZ2VUZW1wLnNvdXJjZSA9IEF0b0dvSlNCYXNlNjRbZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmxvd0RhdGE7XG4gIH1cblxuICBzZXRGbG93RGF0YShkYXRhOiBBdG9Hb0pTRGF0YSkge1xuICAgIF8uZm9yRWFjaChkYXRhLm5vZGVEYXRhQXJyYXksIChub2RlKSA9PiB7XG4gICAgICBjb25zdCBwcm9wZXJ0eU5hbWVFeHRlbmQgPSBgZXh0ZW5kZWREYXRhJHtcbiAgICAgICAgZGF0YS5pc0Zyb20gJiYgbm9kZT8uaXNGcm9tID8gYElzRnJvbSR7ZGF0YS5pc0Zyb219YCA6ICcnXG4gICAgICB9JHt0aGlzLmlzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gO1xuICAgICAgbm9kZSA9IF8ubWVyZ2Uobm9kZSwgbm9kZVtwcm9wZXJ0eU5hbWVFeHRlbmRdLCBub2RlW2Ake3Byb3BlcnR5TmFtZUV4dGVuZH0ke2RhdGE/LmFzc2V0TGF5ZXJ9YF0gPz8ge30pO1xuICAgICAgaWYgKG5vZGU/LmFzc2V0TGF5ZXJzKSB7XG4gICAgICAgIG5vZGUudmlzaWJsZSA9XG4gICAgICAgICAgbm9kZT8uYXNzZXRMYXllcnMgPT09IGRhdGEuYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXT8udmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIGlmIChkYXRhLmlzRnJvbSAmJiBub2RlPy5kYXRhVGFibGUpIHtcbiAgICAgICAgIF8uZm9yRWFjaChub2RlPy5kYXRhVGFibGUsIChpdGVtKSA9PiB7XG4gICAgICAgICAgaWYgKGl0ZW0/LmlzRnJvbSkge1xuICAgICAgICAgICAgaXRlbS52aXNpYmxlID0gaXRlbT8uaXNGcm9tID09PSBkYXRhLmlzRnJvbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaXRlbSA9IF8ubWVyZ2UoaXRlbSwgaXRlbVtgZXh0ZW5kZWREYXRhSXNGcm9tJHtkYXRhLmlzRnJvbX1gXSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMuZmxvd0RhdGEgPSB7XG4gICAgICAuLi5kYXRhLFxuICAgIH07XG4gICAgdGhpcy51cGRhdGVEYXRhVGFibGVBc3NldFBhcmFtcyhkYXRhKTtcbiAgfVxuXG4gIHVwZGF0ZURhdGFUYWJsZUFzc2V0UGFyYW1zKGRhdGE6IEF0b0dvSlNEYXRhKSB7XG4gICAgdGhpcy5kYXRhVGFibGVBc3NldFBhcmFtcyA9IF8uZm9yRWFjaChcbiAgICAgIHRoaXMuZmxvd0RhdGE/Lm5vZGVEYXRhQXJyYXk/LmZpbHRlcihcbiAgICAgICAgKGUpID0+XG4gICAgICAgICAgZT8udHlwZSA9PT0gQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlBBUkFNX1RBQkxFICYmXG4gICAgICAgICAgKGRhdGE/LmFzc2V0TGF5ZXIgPyBlPy5hc3NldExheWVycyA9PT0gZGF0YT8uYXNzZXRMYXllciA6IHRydWUpXG4gICAgICApLFxuICAgICAgKHgpID0+IHtcbiAgICAgICAgaWYgKCFkYXRhPy5pc1JlZnJlc2gpIHtcbiAgICAgICAgICB4LmlzQ29sbGFwc2VkID0gdGhpcy5hc3NldFBhcmFtc1ZpZXdUZW1wPy5kYXRhPy5maW5kKFxuICAgICAgICAgICAgKHkpID0+IHk/LmtleSA9PT0geD8ua2V5XG4gICAgICAgICAgKT8uaXNDb2xsYXBzZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaC0xMDAgZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtZ2FwLTMgZmxleC1ncm93LTEgb3ZlcmZsb3ctYXV0byBweC0zIHBiLTNcIj5cbiAgPGRpdiBjbGFzcz1cImgtMTAwIGQtZmxleCBmbGV4LWNvbHVtblwiIGF0b0xvYWRpbmcgW2FwcExvYWRpbmddPVwiZmxvd0RhdGEgPT09IG51bGxcIj5cbiAgICA8YXRvLWZsb3ctZGlhZ3JhbS1saWJcbiAgICAgICpuZ0lmPVwiZmxvd0RhdGEgIT09IG51bGxcIlxuICAgICAgI2dqRmxvd0RpYWdyYW1UZW1wXG4gICAgICBbZGF0YV09XCJmbG93RGF0YVwiXG4gICAgICBbaW5pdGlhbE9wdGlvbnNdPVwib3B0aW9uc1wiXG4gICAgICAob25DbGlrUGFyYW1PZlRhYmxlKT1cIm9uQ2xpY2tQYXJhbU9mVGFibGUoJGV2ZW50KVwiXG4gICAgICBbY2xhc3NdPVwiISFpc1Jlc3BvbnNpdmVWaWV3ID8gJ2RpYWdyYW0tcmVzcG9uc2l2ZS12aWV3JyA6ICdmbGV4LWdyb3ctMSdcIlxuICAgID48L2F0by1mbG93LWRpYWdyYW0tbGliPlxuICAgIDxkaXYgY2xhc3M9XCJtdC0yXCIgKm5nSWY9XCJpc1Jlc3BvbnNpdmVWaWV3XCI+XG4gICAgICA8YXRvLWFzc2V0LXBhcmFtcy12aWV3XG4gICAgICAgICNhc3NldFBhcmFtc1ZpZXdUZW1wXG4gICAgICAgIFtkYXRhXT1cImRhdGFUYWJsZUFzc2V0UGFyYW1zXCJcbiAgICAgICAgW2lzRWRpdFZpZXddPVwidHJ1ZVwiXG4gICAgICAgIChjbGlja1BhcmFtVGFibGVSb3cpPVwib25DbGlja1BhcmFtT2ZUYWJsZSgkZXZlbnQpXCJcbiAgICAgID48L2F0by1hc3NldC1wYXJhbXMtdmlldz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuIl19