ato-water-lib 0.0.118 → 0.0.120

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,8 +1,8 @@
1
- import { Component, EventEmitter, HostListener, Input, Output, ViewChild, } from '@angular/core';
1
+ import { Component, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
2
2
  import * as go from 'gojs';
3
3
  import _ from 'lodash';
4
4
  import { AtoGoJSBase64 } from '../../constants/base64.const';
5
- import { ATO_COMPONENTS_GROUP_DATA, } from '../../constants/components-group-const';
5
+ import { ATO_COMPONENTS_GROUP_DATA } from '../../constants/components-group-const';
6
6
  import { AtoGojsEditorModel } from '../../models/gojs-editor.model';
7
7
  import { AtoAssetParamsViewComponent } from '../asset-params-view/asset-params-view.component';
8
8
  import { AtoFlowDiagramLibComponent } from '../flow-diagram-lib/flow-diagram-lib.component';
@@ -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/IGBJc0Zyb20ke2RlZmF1bHREYXRhLmlzRnJvbX1gIDogJydcbiAgICAgIH0ke2lzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gO1xuICAgICAgbm9kZSA9IF8ubWVyZ2Uobm9kZSwgbm9kZVtwcm9wZXJ0eU5hbWVFeHRlbmRdLCBub2RlW2Ake3Byb3BlcnR5TmFtZUV4dGVuZH0ke2RlZmF1bHREYXRhPy5hc3NldExheWVyfWBdID8/IHt9KTtcbiAgICAgIGlmIChub2RlPy5hc3NldExheWVycykge1xuICAgICAgICBub2RlLnZpc2libGUgPVxuICAgICAgICAgIG5vZGU/LmFzc2V0TGF5ZXJzID09PSBkZWZhdWx0RGF0YT8uYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXT8udmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIGlmIChkZWZhdWx0RGF0YS5pc0Zyb20gJiYgbm9kZT8uZGF0YVRhYmxlKSB7XG4gICAgICAgIF8uZm9yRWFjaChub2RlPy5kYXRhVGFibGUsIChpdGVtKSA9PiB7XG4gICAgICAgICAgaWYgKGl0ZW0/LmlzRnJvbSkge1xuICAgICAgICAgICAgaXRlbS52aXNpYmxlID0gaXRlbT8uaXNGcm9tID09PSBkZWZhdWx0RGF0YS5pc0Zyb207XG4gICAgICAgICAgfVxuICAgICAgICAgIGl0ZW0gPSBfLm1lcmdlKGl0ZW0sIGl0ZW1bYGV4dGVuZGVkRGF0YUlzRnJvbSR7ZGVmYXVsdERhdGEuaXNGcm9tfWBdKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gYXNzZXRMYXllclxuICAgIC8vIGZsb3dEYXRhLm5vZGVEYXRhQXJyYXkgPSBfLmZpbHRlcihmbG93RGF0YS5ub2RlRGF0YUFycmF5LCB4ID0+ICF4Py5hc3NldExheWVycyB8fCAoeD8uYXNzZXRMYXllcnMgJiYgeD8uYXNzZXRMYXllcnMgPT09IChkZWZhdWx0RGF0YT8uYXNzZXRMYXllciA/PyBBVE9fQVNTRVRfTEFZRVJTLkZMT1cpKSlcbiAgICBpZiAoZGVmYXVsdERhdGE/LmlzVXNlQmFzZTY0KSB7XG4gICAgICBjb25zdCBpdGVtSW1hZ2VUZW1wID0gKGZsb3dEYXRhIGFzIEF0b0dvSlNEYXRhKT8ubm9kZURhdGFBcnJheT8uZmluZChcbiAgICAgICAgKHgpID0+IHg/LnR5cGUgPT09ICdJbWFnZSBUZW1wbGF0ZSdcbiAgICAgICk7XG4gICAgICBpZiAoaXRlbUltYWdlVGVtcCkge1xuICAgICAgICBpdGVtSW1hZ2VUZW1wLnNvdXJjZSA9IEF0b0dvSlNCYXNlNjRbZGVmYXVsdERhdGE/LnN5c3RlbVR5cGVdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmxvd0RhdGE7XG4gIH1cblxuICBzZXRGbG93RGF0YShkYXRhOiBBdG9Hb0pTRGF0YSkge1xuICAgIF8uZm9yRWFjaChkYXRhLm5vZGVEYXRhQXJyYXksIChub2RlKSA9PiB7XG4gICAgICBjb25zdCBwcm9wZXJ0eU5hbWVFeHRlbmQgPSBgZXh0ZW5kZWREYXRhJHtcbiAgICAgICAgZGF0YS5pc0Zyb20gJiYgbm9kZT8uaXNGcm9tID8gYElzRnJvbSR7ZGF0YS5pc0Zyb219YCA6ICcnXG4gICAgICB9JHt0aGlzLmlzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gO1xuICAgICAgbm9kZSA9IF8ubWVyZ2Uobm9kZSwgbm9kZVtwcm9wZXJ0eU5hbWVFeHRlbmRdLCBub2RlW2Ake3Byb3BlcnR5TmFtZUV4dGVuZH0ke2RhdGE/LmFzc2V0TGF5ZXJ9YF0gPz8ge30pO1xuICAgICAgaWYgKG5vZGU/LmFzc2V0TGF5ZXJzKSB7XG4gICAgICAgIG5vZGUudmlzaWJsZSA9XG4gICAgICAgICAgbm9kZT8uYXNzZXRMYXllcnMgPT09IGRhdGEuYXNzZXRMYXllciAmJlxuICAgICAgICAgIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXT8udmlzaWJsZTtcbiAgICAgIH1cbiAgICAgIGlmIChkYXRhLmlzRnJvbSAmJiBub2RlPy5kYXRhVGFibGUpIHtcbiAgICAgICAgIF8uZm9yRWFjaChub2RlPy5kYXRhVGFibGUsIChpdGVtKSA9PiB7XG4gICAgICAgICAgaWYgKGl0ZW0/LmlzRnJvbSkge1xuICAgICAgICAgICAgaXRlbS52aXNpYmxlID0gaXRlbT8uaXNGcm9tID09PSBkYXRhLmlzRnJvbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaXRlbSA9IF8ubWVyZ2UoaXRlbSwgaXRlbVtgZXh0ZW5kZWREYXRhSXNGcm9tJHtkYXRhLmlzRnJvbX1gXSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMuZmxvd0RhdGEgPSB7XG4gICAgICAuLi5kYXRhLFxuICAgIH07XG4gICAgdGhpcy51cGRhdGVEYXRhVGFibGVBc3NldFBhcmFtcyhkYXRhKTtcbiAgfVxuXG4gIHVwZGF0ZURhdGFUYWJsZUFzc2V0UGFyYW1zKGRhdGE6IEF0b0dvSlNEYXRhKSB7XG4gICAgdGhpcy5kYXRhVGFibGVBc3NldFBhcmFtcyA9IF8uZm9yRWFjaChcbiAgICAgIHRoaXMuZmxvd0RhdGE/Lm5vZGVEYXRhQXJyYXk/LmZpbHRlcihcbiAgICAgICAgKGUpID0+XG4gICAgICAgICAgZT8udHlwZSA9PT0gQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlBBUkFNX1RBQkxFICYmXG4gICAgICAgICAgKGRhdGE/LmFzc2V0TGF5ZXIgPyBlPy5hc3NldExheWVycyA9PT0gZGF0YT8uYXNzZXRMYXllciA6IHRydWUpXG4gICAgICApLFxuICAgICAgKHgpID0+IHtcbiAgICAgICAgaWYgKCFkYXRhPy5pc1JlZnJlc2gpIHtcbiAgICAgICAgICB4LmlzQ29sbGFwc2VkID0gdGhpcy5hc3NldFBhcmFtc1ZpZXdUZW1wPy5kYXRhPy5maW5kKFxuICAgICAgICAgICAgKHkpID0+IHk/LmtleSA9PT0geD8ua2V5XG4gICAgICAgICAgKT8uaXNDb2xsYXBzZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaC0xMDAgZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtZ2FwLTMgZmxleC1ncm93LTEgb3ZlcmZsb3ctYXV0byBweC0zIHBiLTNcIj5cbiAgPGRpdiBjbGFzcz1cImgtMTAwIGQtZmxleCBmbGV4LWNvbHVtblwiIGF0b0xvYWRpbmcgW2FwcExvYWRpbmddPVwiZmxvd0RhdGEgPT09IG51bGxcIj5cbiAgICA8YXRvLWZsb3ctZGlhZ3JhbS1saWJcbiAgICAgICpuZ0lmPVwiZmxvd0RhdGEgIT09IG51bGxcIlxuICAgICAgI2dqRmxvd0RpYWdyYW1UZW1wXG4gICAgICBbZGF0YV09XCJmbG93RGF0YVwiXG4gICAgICBbaW5pdGlhbE9wdGlvbnNdPVwib3B0aW9uc1wiXG4gICAgICAob25DbGlrUGFyYW1PZlRhYmxlKT1cIm9uQ2xpY2tQYXJhbU9mVGFibGUoJGV2ZW50KVwiXG4gICAgICBbY2xhc3NdPVwiISFpc1Jlc3BvbnNpdmVWaWV3ID8gJ2RpYWdyYW0tcmVzcG9uc2l2ZS12aWV3JyA6ICdmbGV4LWdyb3ctMSdcIlxuICAgID48L2F0by1mbG93LWRpYWdyYW0tbGliPlxuICAgIDxkaXYgY2xhc3M9XCJtdC0yXCIgKm5nSWY9XCJpc1Jlc3BvbnNpdmVWaWV3XCI+XG4gICAgICA8YXRvLWFzc2V0LXBhcmFtcy12aWV3XG4gICAgICAgICNhc3NldFBhcmFtc1ZpZXdUZW1wXG4gICAgICAgIFtkYXRhXT1cImRhdGFUYWJsZUFzc2V0UGFyYW1zXCJcbiAgICAgICAgW2lzRWRpdFZpZXddPVwidHJ1ZVwiXG4gICAgICAgIChjbGlja1BhcmFtVGFibGVSb3cpPVwib25DbGlja1BhcmFtT2ZUYWJsZSgkZXZlbnQpXCJcbiAgICAgID48L2F0by1hc3NldC1wYXJhbXMtdmlldz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuIl19
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtZmxvdy9hc3NldC1mbG93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLENBQUMsTUFBTSxRQUFRLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFFTCx5QkFBeUIsRUFDMUIsTUFBTSx3Q0FBd0MsQ0FBQztBQUdoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUMvRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7O0FBTzVGLE1BQU0sT0FBTyxrQkFBa0I7SUFML0I7UUFhWSw2QkFBd0IsR0FDaEMsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNqQixnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUU3QixNQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUFDeEIsWUFBTyxHQUFHO1lBQ1IsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLG9CQUFvQixFQUFFO1lBQ3RDLGdC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QUFTO3VCQUFDLDJCQUEyQjtnQkFFN0IsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksd0JBQXdCO3NCQUFqQyxNQUFNO2dCQUVFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQVVPLFFBQVE7c0JBQXBCLEtBQUs7Z0JBY0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUlOLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIGdvIGZyb20gJ2dvanMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEF0b0dvSlNCYXNlNjQgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYmFzZTY0LmNvbnN0JztcbmltcG9ydCB7XG4gIEFUT19BU1NFVF9MQVlFUlMsXG4gIEFUT19DT01QT05FTlRTX0dST1VQX0RBVEFcbn0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbXBvbmVudHMtZ3JvdXAtY29uc3QnO1xuaW1wb3J0IHsgQXRvRGVmYXVsdEZsb3dEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2F0by1hc3NldC1mbG93Lm1vZGVsJztcbmltcG9ydCB7IEF0b0dvSlNEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dvanMtZGF0YS5tb2RlbCc7XG5pbXBvcnQgeyBBdG9Hb2pzRWRpdG9yTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ29qcy1lZGl0b3IubW9kZWwnO1xuaW1wb3J0IHsgQXRvQXNzZXRQYXJhbXNWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi4vYXNzZXQtcGFyYW1zLXZpZXcvYXNzZXQtcGFyYW1zLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50IH0gZnJvbSAnLi4vZmxvdy1kaWFncmFtLWxpYi9mbG93LWRpYWdyYW0tbGliLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F0by1hc3NldC1mbG93JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2V0LWZsb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hc3NldC1mbG93LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEFzc2V0Rmxvd0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGFzc2V0TGF5ZXI6IEFUT19BU1NFVF9MQVlFUlM7XG4gIEBWaWV3Q2hpbGQoQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQpXG4gIGdqRmxvd0RpYWdyYW1UZW1wOiBBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudDtcbiAgQFZpZXdDaGlsZChBdG9Bc3NldFBhcmFtc1ZpZXdDb21wb25lbnQpXG4gIGFzc2V0UGFyYW1zVmlld1RlbXA6IEF0b0Fzc2V0UGFyYW1zVmlld0NvbXBvbmVudDtcbiAgQElucHV0KCkgc2VsZWN0ZWRDb21wb25lbnQ6IGFueTtcbiAgQElucHV0KCkgc3lzdGVtVHlwZTogQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVFlQRVM7XG4gIEBPdXRwdXQoKSBvbkNsaWNrUGFyYW1PZlRhYmxlRXZlbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID1cbiAgICBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQElucHV0KCkgaXNVc2VCYXNlNjQgPSBmYWxzZTtcbiAgQElucHV0KCkgaXNGcm9tOiBzdHJpbmc7XG4gICQgPSBnby5HcmFwaE9iamVjdC5tYWtlO1xuICBvcHRpb25zID0ge1xuICAgIGxheW91dDogdGhpcy4kKGdvLkxheWVyZWREaWdyYXBoTGF5b3V0LCB7XG4gICAgICAvLyBkaXJlY3Rpb246IDAsXG4gICAgfSksXG4gICAgLy8gaXNSZWFkT25seTogdHJ1ZSxcbiAgfTtcblxuICBwcml2YXRlIF9mbG93RGF0YTogYW55O1xuICBASW5wdXQoKSBzZXQgZmxvd0RhdGEodjogQXRvR29KU0RhdGEpIHtcbiAgICB0aGlzLl9mbG93RGF0YSA9IHY7XG4gICAgdGhpcy51cGRhdGVEYXRhVGFibGVBc3NldFBhcmFtcyh7IC4uLnYsIGFzc2V0TGF5ZXI6IHRoaXMuYXNzZXRMYXllciB9KTtcbiAgfVxuICBnZXQgZmxvd0RhdGEoKTogQXRvR29KU0RhdGEge1xuICAgIHJldHVybiB0aGlzLl9mbG93RGF0YTtcbiAgfVxuXG4gIC8vIFJlcG9uc2l2ZVxuICBkYXRhVGFibGVBc3NldFBhcmFtczogYW55W107XG4gIC8vIEBJbnB1dCgpIGlzUmVzcG9uc2l2ZVZpZXcgPSBmYWxzZTtcbiAgZ2V0IGlzUmVzcG9uc2l2ZVZpZXcoKSB7XG4gICAgcmV0dXJuIHdpbmRvdy5pbm5lcldpZHRoIDwgMTAyNDtcbiAgfVxuICBASW5wdXQoKSBnZXRGbG93RGF0YUNhbGxCYWNrOiBGdW5jdGlvbjtcblxuICB0aW1lb3V0UmVzaXplV2luZG93O1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcbiAgb25SZXNpemUoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgLy8gTm93IG9ubHkgU3VwcG9ydCBDb29saW5nIFRvd2VyIFJlc3BvbnNpdmVcbiAgICBpZiAodGhpcy50aW1lb3V0UmVzaXplV2luZG93KSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy50aW1lb3V0UmVzaXplV2luZG93KTtcbiAgICB9XG4gICAgdGhpcy50aW1lb3V0UmVzaXplV2luZG93ID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUxvY2F0aW9uUmVwb25zaXZlKCk7XG4gICAgfSwgMTAwMCk7XG4gIH1cblxuICB1cGRhdGVMb2NhdGlvblJlcG9uc2l2ZSgpIHtcbiAgICBpZiAoIXRoaXMuZmxvd0RhdGE/Lm5vZGVEYXRhQXJyYXkpIHtcbiAgICAgIHRoaXMuZmxvd0RhdGEgPSBBc3NldEZsb3dDb21wb25lbnQuZ2V0RGVmYXVsdEZsb3dEYXRhKHtcbiAgICAgICAgc3lzdGVtVHlwZTogdGhpcy5zeXN0ZW1UeXBlLFxuICAgICAgICBpc1VzZUJhc2U2NDogdGhpcy5pc1VzZUJhc2U2NCxcbiAgICAgICAgYXNzZXRMYXllcjogdGhpcy5hc3NldExheWVyLFxuICAgICAgfSk7XG4gICAgfVxuICAgIF8uZm9yRWFjaCh0aGlzLmZsb3dEYXRhPy5ub2RlRGF0YUFycmF5LCAobm9kZTogYW55KSA9PiB7XG4gICAgICBub2RlID0gXy5tZXJnZShcbiAgICAgICAgbm9kZSxcbiAgICAgICAgbm9kZVtgZXh0ZW5kZWREYXRhJHt0aGlzLmlzUmVzcG9uc2l2ZVZpZXcgPyAnUmVzcG9uc2l2ZScgOiAnJ31gXVxuICAgICAgKTtcbiAgICB9KTtcbiAgICB0aGlzLnNldEZsb3dEYXRhKF8uY2xvbmVEZWVwKHRoaXMuZmxvd0RhdGEpKTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudXBkYXRlTG9jYXRpb25SZXBvbnNpdmUoKTtcbiAgfVxuICBvbkNsaWNrUGFyYW1PZlRhYmxlKCRldmVudDogYW55KSB7XG4gICAgdGhpcy5vbkNsaWNrUGFyYW1PZlRhYmxlRXZlbnQuZW1pdCgkZXZlbnQpO1xuICB9XG5cbiAgc3RhdGljIGdldERlZmF1bHRGbG93RGF0YShkZWZhdWx0RGF0YTogQXRvRGVmYXVsdEZsb3dEYXRhKSB7XG4gICAgY29uc3QgZmxvd0RhdGEgPSB7XG4gICAgICAuLi5kZWZhdWx0RGF0YSxcbiAgICAgIC4uLl8uY2xvbmVEZWVwKEFUT19DT01QT05FTlRTX0dST1VQX0RBVEEpW2RlZmF1bHREYXRhPy5zeXN0ZW1UeXBlXSxcbiAgICAgIGxpbmtGcm9tUG9ydElkUHJvcGVydHk6ICdmcm9tUG9ydCcsXG4gICAgICBsaW5rVG9Qb3J0SWRQcm9wZXJ0eTogJ3RvUG9ydCcsXG4gICAgfTtcbiAgICBjb25zdCBpc1Jlc3BvbnNpdmVWaWV3ID0gd2luZG93LmlubmVyV2lkdGggPCAxMDI0O1xuICAgIC8vIFJlcG9uc2l2ZVxuICAgIF8uZm9yRWFjaChmbG93RGF0YT8ubm9kZURhdGFBcnJheSwgKG5vZGU6IGFueSkgPT4ge1xuICAgICAgY29uc3QgcHJvcGVydHlOYW1lRXh0ZW5kID0gYGV4dGVuZGVkRGF0YSR7XG4gICAgICAgIGRlZmF1bHREYXRhLmlzRnJvbSAmJiBub2RlPy5pc0Zyb20gPyBgSXNGcm9tJHtkZWZhdWx0RGF0YS5pc0Zyb219YCA6ICcnXG4gICAgICB9JHtpc1Jlc3BvbnNpdmVWaWV3ID8gJ1Jlc3BvbnNpdmUnIDogJyd9YDtcbiAgICAgIG5vZGUgPSBfLm1lcmdlKG5vZGUsIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXSwgbm9kZVtgJHtwcm9wZXJ0eU5hbWVFeHRlbmR9JHtkZWZhdWx0RGF0YT8uYXNzZXRMYXllcn1gXSA/PyB7fSk7XG4gICAgICBpZiAobm9kZT8uYXNzZXRMYXllcnMpIHtcbiAgICAgICAgbm9kZS52aXNpYmxlID1cbiAgICAgICAgICBub2RlPy5hc3NldExheWVycyA9PT0gZGVmYXVsdERhdGE/LmFzc2V0TGF5ZXIgJiZcbiAgICAgICAgICBub2RlW3Byb3BlcnR5TmFtZUV4dGVuZF0/LnZpc2libGU7XG4gICAgICB9XG4gICAgICBpZiAoZGVmYXVsdERhdGEuaXNGcm9tICYmIG5vZGU/LmRhdGFUYWJsZSkge1xuICAgICAgICBfLmZvckVhY2gobm9kZT8uZGF0YVRhYmxlLCAoaXRlbSkgPT4ge1xuICAgICAgICAgIGlmIChpdGVtPy5pc0Zyb20pIHtcbiAgICAgICAgICAgIGl0ZW0udmlzaWJsZSA9IGl0ZW0/LmlzRnJvbSA9PT0gZGVmYXVsdERhdGEuaXNGcm9tO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpdGVtID0gXy5tZXJnZShpdGVtLCBpdGVtW2BleHRlbmRlZERhdGFJc0Zyb20ke2RlZmF1bHREYXRhLmlzRnJvbX1gXSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIC8vIGFzc2V0TGF5ZXJcbiAgICAvLyBmbG93RGF0YS5ub2RlRGF0YUFycmF5ID0gXy5maWx0ZXIoZmxvd0RhdGEubm9kZURhdGFBcnJheSwgeCA9PiAheD8uYXNzZXRMYXllcnMgfHwgKHg/LmFzc2V0TGF5ZXJzICYmIHg/LmFzc2V0TGF5ZXJzID09PSAoZGVmYXVsdERhdGE/LmFzc2V0TGF5ZXIgPz8gQVRPX0FTU0VUX0xBWUVSUy5GTE9XKSkpXG4gICAgaWYgKGRlZmF1bHREYXRhPy5pc1VzZUJhc2U2NCkge1xuICAgICAgY29uc3QgaXRlbUltYWdlVGVtcCA9IChmbG93RGF0YSBhcyBBdG9Hb0pTRGF0YSk/Lm5vZGVEYXRhQXJyYXk/LmZpbmQoXG4gICAgICAgICh4KSA9PiB4Py50eXBlID09PSAnSW1hZ2UgVGVtcGxhdGUnXG4gICAgICApO1xuICAgICAgaWYgKGl0ZW1JbWFnZVRlbXApIHtcbiAgICAgICAgaXRlbUltYWdlVGVtcC5zb3VyY2UgPSBBdG9Hb0pTQmFzZTY0W2RlZmF1bHREYXRhPy5zeXN0ZW1UeXBlXTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZsb3dEYXRhO1xuICB9XG5cbiAgc2V0Rmxvd0RhdGEoZGF0YTogQXRvR29KU0RhdGEpIHtcbiAgICBfLmZvckVhY2goZGF0YS5ub2RlRGF0YUFycmF5LCAobm9kZSkgPT4ge1xuICAgICAgY29uc3QgcHJvcGVydHlOYW1lRXh0ZW5kID0gYGV4dGVuZGVkRGF0YSR7XG4gICAgICAgIGRhdGEuaXNGcm9tICYmIG5vZGU/LmlzRnJvbSA/IGBJc0Zyb20ke2RhdGEuaXNGcm9tfWAgOiAnJ1xuICAgICAgfSR7dGhpcy5pc1Jlc3BvbnNpdmVWaWV3ID8gJ1Jlc3BvbnNpdmUnIDogJyd9YDtcbiAgICAgIG5vZGUgPSBfLm1lcmdlKG5vZGUsIG5vZGVbcHJvcGVydHlOYW1lRXh0ZW5kXSwgbm9kZVtgJHtwcm9wZXJ0eU5hbWVFeHRlbmR9JHtkYXRhPy5hc3NldExheWVyfWBdID8/IHt9KTtcbiAgICAgIGlmIChub2RlPy5hc3NldExheWVycykge1xuICAgICAgICBub2RlLnZpc2libGUgPVxuICAgICAgICAgIG5vZGU/LmFzc2V0TGF5ZXJzID09PSBkYXRhLmFzc2V0TGF5ZXIgJiZcbiAgICAgICAgICBub2RlW3Byb3BlcnR5TmFtZUV4dGVuZF0/LnZpc2libGU7XG4gICAgICB9XG4gICAgICBpZiAoZGF0YS5pc0Zyb20gJiYgbm9kZT8uZGF0YVRhYmxlKSB7XG4gICAgICAgICBfLmZvckVhY2gobm9kZT8uZGF0YVRhYmxlLCAoaXRlbSkgPT4ge1xuICAgICAgICAgIGlmIChpdGVtPy5pc0Zyb20pIHtcbiAgICAgICAgICAgIGl0ZW0udmlzaWJsZSA9IGl0ZW0/LmlzRnJvbSA9PT0gZGF0YS5pc0Zyb207XG4gICAgICAgICAgfVxuICAgICAgICAgIGl0ZW0gPSBfLm1lcmdlKGl0ZW0sIGl0ZW1bYGV4dGVuZGVkRGF0YUlzRnJvbSR7ZGF0YS5pc0Zyb219YF0pO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLmZsb3dEYXRhID0ge1xuICAgICAgLi4uZGF0YSxcbiAgICB9O1xuICAgIHRoaXMudXBkYXRlRGF0YVRhYmxlQXNzZXRQYXJhbXMoZGF0YSk7XG4gIH1cblxuXG4gIHVwZGF0ZURhdGFUYWJsZUFzc2V0UGFyYW1zKGRhdGE6IEF0b0dvSlNEYXRhKSB7XG4gICAgdGhpcy5kYXRhVGFibGVBc3NldFBhcmFtcyA9IF8uZm9yRWFjaChcbiAgICAgIHRoaXMuZmxvd0RhdGE/Lm5vZGVEYXRhQXJyYXk/LmZpbHRlcihcbiAgICAgICAgKGUpID0+XG4gICAgICAgICAgZT8udHlwZSA9PT0gQXRvR29qc0VkaXRvck1vZGVsLkVOVU1fVEVNUExBVEVTLlBBUkFNX1RBQkxFICYmXG4gICAgICAgICAgKGRhdGE/LmFzc2V0TGF5ZXIgPyBlPy5hc3NldExheWVycyA9PT0gZGF0YT8uYXNzZXRMYXllciA6IHRydWUpXG4gICAgICApLFxuICAgICAgKHgpID0+IHtcbiAgICAgICAgaWYgKCFkYXRhPy5pc1JlZnJlc2gpIHtcbiAgICAgICAgICB4LmlzQ29sbGFwc2VkID0gdGhpcy5hc3NldFBhcmFtc1ZpZXdUZW1wPy5kYXRhPy5maW5kKFxuICAgICAgICAgICAgKHkpID0+IHk/LmtleSA9PT0geD8ua2V5XG4gICAgICAgICAgKT8uaXNDb2xsYXBzZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaC0xMDAgZC1mbGV4IGZsZXgtY29sdW1uIGZsZXgtZ2FwLTMgZmxleC1ncm93LTEgb3ZlcmZsb3ctYXV0byBweC0zIHBiLTNcIj5cbiAgPGRpdiBjbGFzcz1cImgtMTAwIGQtZmxleCBmbGV4LWNvbHVtblwiIGF0b0xvYWRpbmcgW2FwcExvYWRpbmddPVwiZmxvd0RhdGEgPT09IG51bGxcIj5cbiAgICA8YXRvLWZsb3ctZGlhZ3JhbS1saWJcbiAgICAgICpuZ0lmPVwiZmxvd0RhdGEgIT09IG51bGxcIlxuICAgICAgI2dqRmxvd0RpYWdyYW1UZW1wXG4gICAgICBbZGF0YV09XCJmbG93RGF0YVwiXG4gICAgICBbaW5pdGlhbE9wdGlvbnNdPVwib3B0aW9uc1wiXG4gICAgICAob25DbGlrUGFyYW1PZlRhYmxlKT1cIm9uQ2xpY2tQYXJhbU9mVGFibGUoJGV2ZW50KVwiXG4gICAgICBbY2xhc3NdPVwiISFpc1Jlc3BvbnNpdmVWaWV3ID8gJ2RpYWdyYW0tcmVzcG9uc2l2ZS12aWV3JyA6ICdmbGV4LWdyb3ctMSdcIlxuICAgID48L2F0by1mbG93LWRpYWdyYW0tbGliPlxuICAgIDxkaXYgY2xhc3M9XCJtdC0yXCIgKm5nSWY9XCJpc1Jlc3BvbnNpdmVWaWV3XCI+XG4gICAgICA8YXRvLWFzc2V0LXBhcmFtcy12aWV3XG4gICAgICAgICNhc3NldFBhcmFtc1ZpZXdUZW1wXG4gICAgICAgIFtkYXRhXT1cImRhdGFUYWJsZUFzc2V0UGFyYW1zXCJcbiAgICAgICAgW2lzRWRpdFZpZXddPVwidHJ1ZVwiXG4gICAgICAgIChjbGlja1BhcmFtVGFibGVSb3cpPVwib25DbGlja1BhcmFtT2ZUYWJsZSgkZXZlbnQpXCJcbiAgICAgID48L2F0by1hc3NldC1wYXJhbXMtdmlldz5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuIl19