@esfaenza/es-charts 11.2.8 → 12.2.9

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.
Files changed (25) hide show
  1. package/bundles/esfaenza-es-charts.umd.js +35 -37
  2. package/bundles/esfaenza-es-charts.umd.js.map +1 -1
  3. package/esfaenza-es-charts.metadata.json +1 -1
  4. package/esm2015/lib/components/base/base-chart.component.js +1 -1
  5. package/esm2015/lib/components/chart-pager/chart-pager.component.js +1 -1
  6. package/esm2015/lib/components/specializations/es-area-chart.component.js +2 -2
  7. package/esm2015/lib/components/specializations/es-chart.component.js +2 -2
  8. package/esm2015/lib/components/specializations/es-line-chart.component.js +2 -2
  9. package/esm2015/lib/components/specializations/es-pie-chart.component.js +2 -2
  10. package/esm2015/lib/components/specializations/es-vertical-2d-chart.component.js +2 -2
  11. package/esm2015/lib/components/specializations/es-vertical-chart.component.js +2 -2
  12. package/esm2015/lib/components/specializations/es-vertical-stacked-chart.component.js +2 -2
  13. package/esm2015/lib/es-charts.module.js +2 -1
  14. package/esm2015/lib/models/core/classes/ChartLoader.js +1 -2
  15. package/esm2015/lib/services/classes/AreaChartService.js +1 -1
  16. package/esm2015/lib/services/classes/LineChartService.js +1 -1
  17. package/esm2015/lib/services/classes/PieChartService.js +1 -1
  18. package/esm2015/lib/services/classes/Vertical2DChartService.js +1 -1
  19. package/esm2015/lib/services/classes/VerticalChartService.js +1 -1
  20. package/esm2015/lib/services/classes/VerticalStackedChartService.js +1 -1
  21. package/fesm2015/esfaenza-es-charts.js +9 -9
  22. package/fesm2015/esfaenza-es-charts.js.map +1 -1
  23. package/package.json +5 -5
  24. package/bundles/esfaenza-es-charts.umd.min.js +0 -2
  25. package/bundles/esfaenza-es-charts.umd.min.js.map +0 -1
@@ -308,4 +308,4 @@ BaseChartComponent.propDecorators = {
308
308
  onLoadStart: [{ type: Output }],
309
309
  onLoadEnd: [{ type: Output }]
310
310
  };
311
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUFnQyxNQUFNLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBWSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSS9LLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHakUsT0FBTyxLQUFLLE9BQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUdwRDs7O0dBR0c7QUFFSCxNQUFNLE9BQWdCLGtCQUFrQjtJQXlMdEM7Ozs7Ozs7Ozs7OztPQVlHO0lBQ0gsWUFBb0IsRUFBYyxFQUFVLFVBQWtCLEVBQVUsSUFBWSxFQUFVLE9BQW9CLEVBQVUsVUFBMkIsRUFBVSxJQUFhLEVBQ3BLLFVBQW1CLEVBQVUsTUFBYyxFQUFVLEtBQWE7UUFEeEQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVE7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFRO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQWlCO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBUztRQUNwSyxlQUFVLEdBQVYsVUFBVSxDQUFTO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQVE7UUF2SzVFOztXQUVHO1FBQ00sU0FBSSxHQUFXLEVBQUUsQ0FBQztRQTBEM0I7Ozs7V0FJRztRQUNNLGtCQUFhLEdBQVcsR0FBRyxDQUFDO1FBWXJDOztXQUVH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RTFGLFFBQVEsQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUUsUUFBUSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzFELFFBQVEsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDbEYsUUFBUSxDQUFDLDRCQUE0QixHQUFHLFFBQVEsQ0FBQyw0QkFBNEIsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDO1FBQ2xLLFFBQVEsQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM5RSxRQUFRLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDOUUsUUFBUSxDQUFDLGNBQWMsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQ2xHLFFBQVEsQ0FBQyxzQkFBc0IsR0FBRyxRQUFRLENBQUMsc0JBQXNCLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FB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QUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7Z0JBQy9CLENBQUMsRUFBRSxDQUFDO1lBQ04sQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7OztZQTVhRixTQUFTOzs7WUFkbUksVUFBVTtZQXFON0YsTUFBTTtZQXJObEIsTUFBTTtZQUkzQyxXQUFXO1lBQUUsZUFBZTs7Ozs7OztxQkFnQmxDLEtBQUs7cUJBS0wsS0FBSzt1QkFLTCxLQUFLO3FCQUtMLEtBQUs7NkJBS0wsS0FBSzt1QkFLTCxLQUFLO21CQUtMLEtBQUs7eUJBS0wsS0FBSztvQkFPTCxLQUFLO3FCQUtMLEtBQUs7cUNBTUwsS0FBSzs4QkFPTCxLQUFLOzJDQUtMLEtBQUs7NEJBS0wsS0FBSzt1QkFNTCxLQUFLO2dDQUtMLEtBQUs7MkJBS0wsS0FBSzs0QkFPTCxLQUFLO3dCQUtMLFlBQVksU0FBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFOytCQUt4QyxZQUFZLFNBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtpQ0FLekMsTUFBTTs4QkFLTixNQUFNOzBCQUtOLE1BQU07d0JBS04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSW5wdXQsIFNpbXBsZUNoYW5nZXMsIEFmdGVyVmlld0luaXQsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIENvbnRlbnRDaGlsZCwgT3B0aW9uYWwsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgSUJhc2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBCYXNlU2V0dGluZ3MsIExlZ2VuZFBhZCB9IGZyb20gJy4uLy4uL21vZGVscy9zZXR0aW5ncyc7XHJcbmltcG9ydCB7IENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvcmVcIjtcclxuaW1wb3J0IHsgUGFnZWRDaGFydERhdGEsIExpbmVDaGFydERhdGEsIFBpZUNoYXJ0RGF0YSwgVmVydGljYWwyRENoYXJ0RGF0YSwgVmVydGljYWxDaGFydERhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvZGF0YSc7XHJcblxyXG5pbXBvcnQgKiBhcyBhbTRjb3JlIGZyb20gXCJAYW1jaGFydHMvYW1jaGFydHM0L2NvcmVcIjtcclxuaW1wb3J0ICogYXMgYW00Y2hhcnRzIGZyb20gXCJAYW1jaGFydHMvYW1jaGFydHM0L2NoYXJ0c1wiO1xyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudGUgR3JhZmljbyBCYXNlIGNoZSBnZXN0aXNjZSB0dXR0ZSBsZSBjb3NlIGNvbXVuaSBkZWkgdmFyaSBncmFmaWNpIGlzdGFuemlhYmlsaSwgY29tZSBsYSBwcmVzZW56YSBvIG1lbnUgZGkgdW5hIGxlZ2VuZGEsXHJcbiAqIGlsIHRlbWEgdXRpbGl6emF0bywgaWwgbG9jYWxlIGRlbCBzaW5nb2xvIGdyYWZpY28sIGVjYyBlY2MuLi5cclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUNoYXJ0Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkluaXQsIE9uQ2hhbmdlcyB7XHJcblxyXG4gIC8qKlxyXG4gICAqIFRpdG9sbyBwZXIgbCdhc3NlIFhcclxuICAgKi9cclxuICBASW5wdXQoKSBYVGl0bGU6IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogVGl0b2xvIHBlciBsJ2Fzc2UgWVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIFlUaXRsZTogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBJbXBvc3RhemlvbmkgZGkgYmFzZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIFNldHRpbmdzOiBCYXNlU2V0dGluZ3M7XHJcblxyXG4gIC8qKlxyXG4gICAqIFByZXNlbnphIG8gbWVubyBkZWxsYSBsZWdlbmRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgTGVnZW5kOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBQb3NpemlvbmUgZGVsbGEgbGVnZW5kYVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIExlZ2VuZFBvc2l0aW9uOiBcInRvcFwiIHwgXCJib3R0b21cIiB8IFwibGVmdFwiIHwgXCJyaWdodFwiO1xyXG5cclxuICAvKipcclxuICAgKiBQcmVzZW56YSBvIG1lbm8gZGVsbGEgdGltZWxpbmVcclxuICAgKi9cclxuICBASW5wdXQoKSBUaW1lbGluZTogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogTm9tZSBkZWwgZ3JhZmljbywgZm9uZGFtZW50YWxlIGFzc2VnbmFybG8gcGVyIHBlcm1ldHRlcmUgYWxsYSBsaWJyZXJpYSBkaSBzY2hlZHVsYXJuZSBsYSBjcmVhemlvbmVcclxuICAgKi9cclxuICBASW5wdXQoKSBuYW1lOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICAvKipcclxuICAgKiBVdGlsaXp6byBvIG1lbm8gZGVsbGUgYW5pbWF6aW9uaS4gU2VuemEgYW5pbWF6aW9uaSBpbCBncmFmaWNvIMOoIGxlZ2dlcm1lbnRlIHBpw7kgcGVyZm9ybWFudGUsIHNwZWNpYWxtZW50ZSBhbGwnYXVtZW50YXJlIGRlaSBwdW50aSBuZWxsYSBzZXJpZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEFuaW1hdGlvbnM6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRlbWEgZGEgdXRpbGl6emFyZSwgdmFsaWRvIHNvbG8gcGVyIGlsIGdyYWZpY28gaW4gcXVlc3Rpb25lLiBHbGkgYWx0cmkgZ3JhZmljaSBkZWxsYSBwYWdpbmEgcG9zc29ubyBhdmVyZSBzdGlsaSBkaXZlcnNpLlxyXG4gICAqIFxyXG4gICAqIEVzc2VuZG8gaSB0ZW1pIGNhcmljYXRpIGluIG1hbmllcmEgYXNpbmNyb25hIGluIGJhc2UgYWxsJ3V0aWxpenpvIHV0aWxpenphcm5lIHRhbnRpIGRpdmVyc2kgaW4gdW4ndW5pY2EgcGFnaW5hIHBvdHJlYmJlIHJhbGxlbnRhcmUgaWwgcHJpbW8gY2FyaWNhbWVudG9cclxuICAgKi9cclxuICBASW5wdXQoKSBUaGVtZTogJ3NwaXJpdGVkYXdheScgfCAnbW9vbnJpc2VraW5nZG9tJyB8ICdmcm96ZW4nIHwgJ2RhcmsnIHwgJ2tlbGx5JyB8ICdtYXRlcmlhbCcgfCAnZGF0YXZpeicgfCAnbm9uZSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIExvY2FsZSBkZWwgc2luZ29sbyBncmFmaWNvXHJcbiAgICovXHJcbiAgQElucHV0KCkgTG9jYWxlOiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBzZSB1dGlsaXp6YXJlIGlsIGNvbXBvcnRhbWVudG8gZGkgZGVmYXVsdCBwZXIgaSBjbGljayBkZWxsZSBzZXJpZSBzdWxsYSBMZWdlbmRhLiBNZXR0ZW5kbyBxdWVzdGEgdmFyaWFiaWxlIGEgKipmYWxzZSoqXHJcbiAgICogZSBjb2xsZWdhbmRvIGwnb3V0cHV0ICoqb25TZXJpZXNDbGlja2VkKiogw6ggcG9zc2liaWxlIGdlbmVyYXJlIHVuIGV2ZW50byBvZ25pIHZvbHRhIGNoZSBsJ3V0ZW50ZSBmYSBjbGljayBzdSB1bmEgc2VyaWUgZGVsbGEgTGVnZW5kYVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEhpZGVTZXJpZXNPbkxhYmVsQ2xpY2s6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIE1pbmltYSBkaXN0YW56YSBuZWxsYSBncmlnbGlhIGZyYSBpIHZhbG9yaSwgbW9kaWZpY2EgbGEgcXVhbnRpdMOgIGRpIHN0ZXAgZnJhIGkgdmFsb3JpIGRlbGwnYXNzZSBYIGUgcXVpbmRpIGxhIGdyYW51bGFyaXTDoCBkZWkgZGF0aS5cclxuICAgKiBcclxuICAgKiBQacO5IHBpY2NvbGEgw6gsIHBpw7kgdmFsb3JpIHZlcnJhbm5vIGluc2VyaXRpIG5lbGwnYXNzZSBYXHJcbiAgICovXHJcbiAgQElucHV0KCkgTWluR3JpZERpc3RhbmNlOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIENlcmNhIGRpIGFnZ2l1c3RhcmUgaSB2YXJpIHN0ZXAgZGVsbCdhc3NlIFggcnVvdGFuZG9saSBlIGRpbWludWVuZG9uZSBsZSBkaW1lbnNpb25pIGFiYmFzdGFuemEgcGVyIG1vc3RyYXJuZSBpbCBwacO5IHBvc3NpYmlsZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEFkYXB0TGFiZWxTaXplQW5kT3JpZW50YXRpb246IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBhZGRpbmcgZGEgYXBwbGljYXJlIGFsbGEgTGVnZW5kYSBpbiBjYXNvIHNpIHZvZ2xpYSBzcG9zdGFyZSB1biBwbydcclxuICAgKi9cclxuICBASW5wdXQoKSBMZWdlbmRQYWRkaW5nOiBMZWdlbmRQYWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RhIGRpIGR0byBnZW5lcmljaSBjaGUgdmVycmFubm8gZW1lc3NpIGRhbCBzaXN0ZW1hIGRpIGdyYWZpY2kgdW5vIHBlciB1bm8gYXR0cmF2ZXJzbyBsYSBmdW56aW9uZSAqKkRhdGFSZXRyaWV2ZSoqLCBjaGUgZG92cmFubm8gZXNzZXJlXHJcbiAgICogdXNhdGkgcGVyIHVhbiBzb3J0YSBkaSBjYXJpY2FtZW50byBcInBhZ2luYXRvXCIgZGVpIGdyYWZpY2lcclxuICAgKi9cclxuICBASW5wdXQoKSBEYXRhRHRvczogYW55W107XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljZSBkZWxsJ2FycmF5ICoqRGF0YUR0b3MqKiBvIGRlbGwnYXJyYXkgKipEYXRhQXJyYXkqKiBkYSBjdWkgaW5pemlhcmUgYWQgZW1ldHRlcmUgaSB2YWxvcmksIHV0aWxlIHBlciBzdXBwb3J0YXJlIGlsIFwiYmFja1wiIGRhIHVuIGV2ZW50dWFsZSBwYWdpbmEgZGkgZGV0dGFnbGlvXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YUR0b1N0YXJ0SW5kZXg6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogRnVuemlvbmUgZGVmaW5pdGEgbGF0byBhcHBsaWNhdGl2byBjaGUgaW4gYmFzZSBhbCAqKkRhdGFEdG8qKiBjb3JyZW50ZSByZXN0aXR1aXNjZSB1bmEgUHJvbWlzZSBkZWwgdGlwbyBkaSBkYXRpIHJpY2hpZXN0byBwZXIgaWwgZ3JhZmljbyBjb3JyZW50ZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGFSZXRyaWV2ZTogKGR0bzogYW55LCBpbmRleDogbnVtYmVyKSA9PiBQcm9taXNlPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIERvcG8gYXZlciBuYXZpZ2F0byBhIHVuIG51b3ZvIGdyYWZpY28gdmVycmFubm8gYXR0ZXNpIHF1ZXN0aSBtaWxsaXNlY29uZGkgcHJpbWEgZGkgcmljaGllZGVyZSBpIGRhdGkgYXR0cmF2ZXJzbyBsYSAqKkRhdGFSZXRyaWV2ZSoqLlxyXG4gICAqIFxyXG4gICAqIFF1ZXN0byBwZXIgZXZpdGFyZSBjaGUgbCd1dGVudGUgY2xpY2NhbmRvIHZlbG9jZW1lbnRlIFwiYXZhbnRpXCIgZ2VuZXJpIHRvbm5lbGxhdGUgZGkgcmljaGllc3RlIGludXRpbGlcclxuICAgKi9cclxuICBASW5wdXQoKSBCcm93c2VEZWxheU1zOiBudW1iZXIgPSA1MDA7XHJcblxyXG4gIC8qKlxyXG4gICAqIEludGVzdGF6aW9uZSBkZWkgZ3JhZmljaSBuZWwgY2FzbyBzaSB1dGlsaXp6aSBsYSBtb2RhbGl0w6AgcGFnaW5hdGFcclxuICAgKi9cclxuICBAQ29udGVudENoaWxkKCdoZWFkZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgaGVhZGVyX3RyO1xyXG5cclxuICAvKipcclxuICAgKiBNZXNzYWdnaW8gZGkgY2FyaWNhbWVudG8gZnJhIHVuIGdyYWZpY28gZSBsJ2FsdHJvIFxyXG4gICAqL1xyXG4gIEBDb250ZW50Q2hpbGQoJ2xvYWRpbmcnLCB7IHN0YXRpYzogZmFsc2UgfSkgbG9hZGluZ190ZW1wbGF0ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnRvIGxhbmNpYXRvIHN1bGxhIHNlbGV6aW9uZSBkaSB1biByYW5nZSBkaSBkYXRpIG8gZGFsbGEgdGltZWxpbmUgbyBkYWwgZ3JhZmljby4gVmFsaWRvIHBlciB0dXR0aSBpIGdyYWZpY2kgY2hlIHN1cHBvcnRhbm8gc2VyaWUgYmFzYXRlIHN1bGxlIGRhdGVcclxuICAgKi9cclxuICBAT3V0cHV0KCkgb25TZWxlY3Rpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8eyBmcm9tOiBEYXRlLCB0bzogRGF0ZSwgaW5pdGlhbDogYm9vbGVhbiB9PiA9IG5ldyBFdmVudEVtaXR0ZXI8eyBmcm9tOiBEYXRlLCB0bzogRGF0ZSwgaW5pdGlhbDogYm9vbGVhbiB9PigpO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudG8gbGFuY2lhdG8gZGFsIGNsaWNrIGRpIHVuYSBzZXJpZSBkYWxsYSBMZWdlbmRhLCBhIHBhdHRvIGNoZSBsJ0lucHV0ICoqSGlkZVNlcmllc09uTGFiZWxDbGljayoqIHNpYSBpbXBvc3RhdG8gYSBmYWxzZVxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvblNlcmllc0NsaWNrZWQ6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50byBsYW5jaWF0byBhbGwnaW5pemlvIGRlbCBjYXJpY2FtZW50byBkaSB1bmEgbnVvdmEgcGFnaW5hIGRlbCBncmFmaWNvXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9uTG9hZFN0YXJ0OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50byBsYW5jaWF0byBhbCB0ZXJtaW5lIGRlbCBjYXJpY2FtZW50byBkaSB1bmEgbnVvdmEgcGFnaW5hIGRlbCBncmFmaWNvXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9uTG9hZEVuZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAvKipcclxuICAgKiBTZXJ2ZSBhIGRlY2lkZXJlIHNlIHNhcsOgIHByZXNlbnRlIGwnaW50ZXJmYWNjaWEgZGkgcGFnaW5hemlvbmVcclxuICAgKi9cclxuICBwdWJsaWMgaXNQYWdlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBpbml0RG9uZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBJc3RhbnphIG5hdGl2YSBkZWwgZ3JhZmljbyBhbWNoYXJ0cy4gUXVhbHNpYXNpIGNvc2Egbm9uIGZhIHF1ZXN0YSBsaWJyZXJpYSBzaSBwdcOyIHByZW5kZXJlIHF1ZXN0YSBpc3RhbnphIGUgbW9kaWZpY2FyZSBhIHBpYWNpbWVudG9cclxuICAgKi9cclxuICBwdWJsaWMgQ2hhcnQ6IGFtNGNoYXJ0cy5DaGFydDtcclxuXHJcbiAgLyoqXHJcbiAgICogU2Vydml6aW8gZGkgZ3JhZmljYXppb25lIGRlbCBncmFmaWNvXHJcbiAgICovXHJcbiAgcHVibGljIENoYXJ0U2VydmljZTogSUJhc2VTZXJ2aWNlPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFZhcmlhYmlsZSBjaGUgaW5kaWNhIHNlIHVuYSBudW92YSBwYWdpbmEgZGVsIGdyYWZpY28gw6ggaW4gZmFzZSBkaSBjYXJpY2FtZW50b1xyXG4gICAqL1xyXG4gIHB1YmxpYyBsb2FkaW5nQ2hhcnQ6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIERhdGkgZGVsIGdyYWZpY28uIE9nbmkgaW1wbGVtZW50YXppb25lIGdlc3RpcsOgIHF1ZXN0YSB2YXJpYWJpbGUgaW4gYmFzZSBhbCBwcm9wcmlvIHRpcG8gZGkgRGF0aVxyXG4gICAqL1xyXG4gIGFic3RyYWN0IERhdGE6IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogRGF0aSBkZWwgZ3JhZmljbyBpbiBtb2RhbGl0w6AgcGFnaW5hdGEsIHBlciBxdWFuZG8gdHV0dGUgbGUgcGFnaW5lIHNvbm8gcHJlY2FyaWNhdGUgaW4gbWVtb3JpYSAoaW4gY2FzbyBjb250cmFyaW8gdmVycmViYmVyw7IgdXRpbGl6emF0aSBpICoqRGF0YUR0b3MqKilcclxuICAgKi9cclxuICBhYnN0cmFjdCBEYXRhQXJyYXk6IFBhZ2VkQ2hhcnREYXRhPGFueT5bXTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIGxlIHByb3ByaWV0w6Agc3BlY2lmaWNhIHBlciB1bmEgZGF0YSBpbXBsZW1lbnRhemlvbmUgY2hlIGRldm9ubyBjYXVzYXJlIHVuIHJlcGFpbnQgZGVsIGdyYWZpY29cclxuICAgKi9cclxuICBhYnN0cmFjdCBnZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCk6IHN0cmluZ1tdO1xyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gZ2VuZXJpY28gZGkgZ3JhZmljYXppb25lLCByZWltcGxlbWVudGF0byBkYWxsZSB2YXJpZSBpbXBsZW1lbnRhemlvbmlcclxuICAgKi9cclxuICBhYnN0cmFjdCBncmFwaGljYXRlKGNhc3RlZFNldHRpbmdzKTogSUJhc2VTZXJ2aWNlPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBnZW5lcmljbyBjaGUgcHJlbmRlIGxlIGltcG9zdGF6aW9uaSBnZW5lcmljaGUgZGVsIGdyYWZpY28gZSBsZSBjYXN0YSBhbGxhIHRpcG9sb2dpYSBnaXVzdGEgcGVyIGlsIGdyYWZpY28gc3BlY2lmaWNvXHJcbiAgICovXHJcbiAgYWJzdHJhY3QgZ2V0Q2FzdGVkU2V0dGluZ3MoKTogYW55O1xyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gY2hlIFwiUmllbXBpZVwiIGxhIGNsYXNzZSBkZWxsZSBpbXBvc3RhemlvbmkgY29uIHR1dHRlIGxlIGltcG9zdGF6aW9uaSBzcGVjaWZpY2hlIHBhc3NhdGUgYSB1biBkYXRvIGdyYWZpY28gY29tZSBJbnB1dFxyXG4gICAqL1xyXG4gIGFic3RyYWN0IGZpbGxTcGVjaWZpY1NldHRpbmdzKHNldHRpbmdzQ2FzdGVkKTogdm9pZDtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29zdHJ1dHRvcmVcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge0VsZW1lbnRSZWZ9IGVsIENvbnRlbml0b3JlIGFsbCdpbnRlcm5vIGRlbCBjdWkgdmllbmUgY3JlYXRvIGlsIGdyYWZpY28uIFV0aWxpenphdG8gcGVyIGVzdHJhcG9sYXJuZSBsYSAqKkNvbnRhaW5lckhlaWdodCoqXHJcbiAgICogQHBhcmFtIHtPYmplY3R9IHBsYXRmb3JtSWQgcGlhdHRhZm9ybWEgQW5ndWxhciAoYnJvd3NlciwgZWNjLi4uKSBwZXIgZXNzZXJlIHNpY3VyaSBjaGUgYW1jaGFydHMgdmVuZ2EgYXR0aXZhdG8gc29sbyBsYXRvIGJyb3dzZXIuIE5vbiB1dGlsaXp6YW5kbyBTU1IgbmVsbGUgYXBwbGljYXppb25pIGNoZSBjb25zdW1hbm8gcXVlc3RhIGxpYnJlcmlhIG5vbiDDqCBwYXJ0aWNvbGFybWVudGUgc2lnbmlmaWNhdGl2bywgbWEgbm9uIHNpIHNhIG1haVxyXG4gICAqIEBwYXJhbSB7Tmdab25lfSB6b25lIE5nWm9uZSBkaSBkZWZhdWx0IHBlciBwZXJtZXR0ZXJlIGRpIGluaXppYWxpenphcmUgaWwgZ3JhZmljbyBhbGwnaW5mdW9yaSBkaSBBbmd1bGFyIHBlciBhdmVyZSBxdWFsY2hlIHByZXN0YXppb25lIGluIHBpw7lcclxuICAgKiBAcGFyYW0ge0NoYXJ0TG9hZGVyfSBDaGFydGVyIElzdGFuemEgZGVsIExvYWRlciBjaGUgc2kgb2NjdXBlcsOgIGRpIGNhcmljYXJlIGluIG1lbW9yaWEgdHV0dG8gY2nDsiBjaGUgc2VydmUgcGVyIGlsIGdyYWZpY28gYXR0dWFsZSAodGVtaSwgbG9jYWxlLCBhbmltYXppb25pLCBlY2MuLi4pXHJcbiAgICogQHBhcmFtIHtDaGFydERpc3BhdGNoZXJ9IERpc3BhdGNoZXIgSXN0YW56YSBkZWwgRGlzcGF0Y2hlciBjaGUgc2kgb2NjdXBhIGRpIGRpZmZlcmlyZSBpbCBjYXJpY2FtZW50byBkZWkgZ3JhZmljaSAxIGRvcG8gbCdhbHRybyBpbiBtb2RvIGNoZSBjYXJpY2FtZW50aSBwc2V1ZG8gcGFyYWxsZWxpIGluY2FzaW5pbm8gdHV0dG9cclxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IGxvZ3MgSW5kaWNhIHNlIGVmZmV0dHVhcmUgbG9nIGEgY29uc29sZSBvIG1lbm8sIGluaWV0dGF0byBkYWxsZSBjbGFzc2kgc3BlY2lhbGl6emF0ZSBkYWwgdG9rZW4gRVNDX0xPR1NcclxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IGFuaW1hdGlvbnMgSW5kaWNhIHNlIHBlciBxdWVzdG8gZ3JhZmljbyBkZXZvbm8gZXNzZXJlIGF0dGl2ZSBvIG1lbm8gbGUgYW5pbWF6aW9uaS4gSW1wb3N0YXppb25lIGdlbmVyaWNhIHByZXNhIGRhbCB0b2tlbiBFU0NfQU5JTUFUSU9OU1xyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBsb2NhbGUgSW5kaWNhIGlsIGxvY2FsZSBzcGVjaWZpY28gcGVyIHF1ZXN0byBncmFmaWNvLiBJbXBvc3RhemlvbmUgZ2VuZXJpY2EgcHJlc2EgZGFsIHRva2VuIEVTQ19MT0NBTEVcclxuICAgKiBAcGFyYW0ge3N0cmluZ30gdGhlbWUgSW5kaWNhIGlsIHRlbWEgc3BlY2lmaWNvIHBlciBxdWVzdG8gZ3JhZmljby4gSW1wb3N0YXppb25lIGdlbmVyaWNhIHByZXNhIGRhbCB0b2tlbiBFU0NfVEhFTUVcclxuICAgKi9cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCwgcHJpdmF0ZSB6b25lOiBOZ1pvbmUsIHByaXZhdGUgQ2hhcnRlcjogQ2hhcnRMb2FkZXIsIHByaXZhdGUgRGlzcGF0Y2hlcjogQ2hhcnREaXNwYXRjaGVyLCBwcml2YXRlIGxvZ3M6IGJvb2xlYW4sIFxyXG4gICAgcHJpdmF0ZSBhbmltYXRpb25zOiBib29sZWFuLCBwcml2YXRlIGxvY2FsZTogc3RyaW5nLCBwcml2YXRlIHRoZW1lOiBzdHJpbmcpIHsgfVxyXG5cclxuICAvKipcclxuICAgKiBNZXRvZG8gZGkgaW5pemlhbGl6emF6aW9uZSBwb3N0IHZhbG9yaXp6YXppb25lIGRlZ2xpIGlucHV0LCB1dGlsaXp6YXRvIHBlciB2YWxvcml6emFyZSBjb3JyZXR0YW1lbnRlIGxlIHByb3ByaWV0w6AgZXNzZW56aWFsaSBkZWwgZ3JhZmljbyAoQW5pbWF6aW9uaSwgVGVtYSBlIExvY2FsZSlcclxuICAgKiBcclxuICAgKiBWaWVuZSBkYXRhIHByaW9yaXTDoCBhaSBTZXR0aW5ncyAoSFRNTCksIHByaW9yaXTDoCBzZWNvbmRhcmlhIGFnbGkgSW5wdXQgZGlyZXR0aSAoTGF0byBIVE1MKSwgcHJpb3JpdMOgIHVsdGltYSBhbGxlIGltcG9zdGF6aW9uaSBnbG9iYWxpLFxyXG4gICAqIGltcG9zdGF0ZSBpbiBmYXNlIGRpIGltcG9ydCBkZWwgbW9kdWxvIGFzc2VnbmFuZG8gdmFsb3JpIGFpIHRva2VuIEVTQ19MT0NBTEUsIEVTQ19BTklNQVRJT05TLCBFU0NfVEhFTUVcclxuICAgKi9cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIC8vIFF1aSBzZXJ2b25vIHNvbG8gbGUgdmFyaWFiaWxpIGRhIGNvbm9zY2VyZSBQUkUtZ3JhZmljYXppb25lIHBlciBpbCBjYXJpY2FtZW50byBkZWkgbW9kdWxpIGxhenkgZGVsIGdyYWZpY29cclxuXHJcbiAgICB0aGlzLkFuaW1hdGlvbnMgPSB0aGlzLlNldHRpbmdzPy5BbmltYXRpb25zICE9IG51bGwgPyB0aGlzLlNldHRpbmdzPy5BbmltYXRpb25zIDogKHRoaXMuQW5pbWF0aW9ucyAhPSBudWxsID8gdGhpcy5BbmltYXRpb25zIDogdGhpcy5hbmltYXRpb25zKVxyXG4gICAgdGhpcy5UaGVtZSA9IHRoaXMuU2V0dGluZ3M/LlRoZW1lICE9IG51bGwgPyB0aGlzLlNldHRpbmdzPy5UaGVtZSA6ICh0aGlzLlRoZW1lICE9IG51bGwgPyB0aGlzLlRoZW1lIDogPGFueT50aGlzLnRoZW1lKVxyXG4gICAgdGhpcy5Mb2NhbGUgPSB0aGlzLlNldHRpbmdzPy5Mb2NhbGUgIT0gbnVsbCA/IHRoaXMuU2V0dGluZ3M/LkxvY2FsZSA6ICh0aGlzLkxvY2FsZSAhPSBudWxsID8gdGhpcy5Mb2NhbGUgOiB0aGlzLmxvY2FsZSlcclxuXHJcbiAgICB0aGlzLmlzUGFnZWQgPSAodGhpcy5EYXRhQXJyYXkgJiYgdGhpcy5EYXRhQXJyYXkubGVuZ3RoID4gMCAmJiAhdGhpcy5EYXRhKSB8fCAodGhpcy5EYXRhRHRvcyAmJiB0aGlzLkRhdGFEdG9zLmxlbmd0aCA+IDAgJiYgISF0aGlzLkRhdGFSZXRyaWV2ZSk7XHJcbiAgICB0aGlzLmxvZyhcIkNoYXJ0IFwiICsgdGhpcy5uYW1lICsgXCI6IG5nT25Jbml0XCIpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW1wbGVtZW50YXppb25lIHV0aWxpenphdGEgcGVyIGNvbnRyb2xsYXJlIGV2ZW50dWFsaSBwcm9wcmlldMOgIGNoaWF2ZSBkZWwgZ3JhZmljbyBlIHJpZ3JhZmljYXJlIHR1dHRvIHF1YWxvcmEgc2kgcml2ZWxhc3NlIG5lY2Vzc2FyaW9cclxuICAgKiBcclxuICAgKiBAcGFyYW0ge1NpbXBsZUNoYW5nZXN9IGNoYW5nZXMgSW5kaWNhemlvbmUgZGVpIGNhbWJpYW1lbnRpIHN1bGxlIHByb3ByaWV0w6AgZGVsIGdyYWZpY28uIFZlZGVyZSBkb2N1bWVudGF6aW9uZSBBbmd1bGFyIGluIG1lcml0b1xyXG4gICAqL1xyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGlmICghdGhpcy5pbml0RG9uZSlcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMubG9nKFwiQ2hhcnQgXCIgKyB0aGlzLm5hbWUgKyBcIjogbmdPbkNoYW5nZXNcIik7XHJcblxyXG4gICAgbGV0IHByb3BzVG9DaGVjayA9IFtcIlRpbWVsaW5lXCIsIFwiTGVnZW5kXCIsIFwiU2V0dGluZ3NcIiwgXCJBbmltYXRpb25zXCIsIFwiVGhlbWVcIiwgXCJMb2NhbGVcIiwgLi4udGhpcy5nZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCldO1xyXG4gICAgdGhpcy5jaGVja1Byb3BlcnRpZXNBbmRSZWdyYXBoaWNhdGVBc05lZWRlZChjaGFuZ2VzLCBwcm9wc1RvQ2hlY2spO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTmVsIHBvc3QgaW5pemlhbGl6emF6aW9uZSwgYSBwYXR0byBjaGUgbWkgdHJvdmkgaW4gYW1iaWVudGUgXCJicm93c2VyXCIsIHByb3NlZ3VvIGFsIGNhcmljYW1lbnRvIGRlbCBncmFmaWNvIHN1bGwnSFRNTFxyXG4gICAqL1xyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5uYW1lKVxyXG4gICAgICB0aHJvdyBcImEgVW5pcXVlIG5hbWUgaXMgbWFuZGF0b3J5IHRvIGNyZWF0ZSBhIGNoYXJ0XCI7XHJcblxyXG4gICAgdGhpcy5sb2coXCJDaGFydCBcIiArIHRoaXMubmFtZSArIFwiOiBuZ0FmdGVyVmlld0luaXQsIGdyYXBoaWNhdGluZyBjaGFydCBvdXRzaWRlIEFuZ3VsYXJcIik7XHJcblxyXG4gICAgaWYoIXRoaXMuaXNQYWdlZClcclxuICAgICAgdGhpcy5kaXNwYXRjaExvYWRDaGFydCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWxsJ29uRGVzdHJveSBzY2FyaWNvIGlsIGdyYWZpY28gcGVyIGxpYmVyYXJlIG1lbW9yaWFcclxuICAgKi9cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICh0aGlzLkNoYXJ0KSB7XHJcbiAgICAgIHRoaXMubG9nKFwiQ2hhcnQgXCIgKyB0aGlzLm5hbWUgKyBcIjogVW5sb2FkaW5nIGRlc3Ryb3llZCBjaGFydFwiKTtcclxuICAgICAgdGhpcy5icm93c2VyT25seSgoKSA9PiB7IHRoaXMuQ2hhcnQuZGlzcG9zZSgpOyB0aGlzLkRpc3BhdGNoZXIuZGVyZWdpc3RlckdyYXBoKHRoaXMubmFtZSkgfSk7XHJcbiAgICB9XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMubG9nKFwiQ2hhcnQgXCIgKyB0aGlzLm5hbWUgKyBcIjogVW5sb2FkaW5nIHVuY3JlYXRlZCBjaGFydCBjb21wb25lbnQuIEl0IHByb2JhYmx5IHdhcyBhIGR1cGxpY2F0ZWRcIik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSZWdpc3RyYSBpbCBncmFmaWNvIGF0dHVhbGUgbmVsIERpc3BhdGNoZXIgaW4gbW9kbyBjaGUgdmVuZ2EgY2FyaWNhdG8gYXBwZW5hIHBvc3NpYmlsZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgZGlzcGF0Y2hMb2FkQ2hhcnQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmJyb3dzZXJPbmx5KCgpID0+IHtcclxuICAgICAgdGhpcy5EaXNwYXRjaGVyLnJlZ2lzdGVyKHRoaXMubmFtZSwgKCkgPT4geyByZXR1cm4gdGhpcy5sb2FkQ2hhcnQoKTsgfSk7XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSWwgY2FyaWNhbWVudG8gZGVsIGdyYWZpY28gZnVuemlvbmEgbmVsIHNlZ3VlbnRlIG1vZG86XHJcbiAgICogXHJcbiAgICogMSkgQ2FyaWNhbWVudG8gZGVsIHRlbWEgZSBkZWxsZSBhbmltYXppb25pLCBxdWFsb3JhIG5lY2Vzc2FyaVxyXG4gICAqIFxyXG4gICAqIDIpIENhcmljYW1lbnRvIGRlbGxlIGltcG9zdGF6aW9uaSBzcGVjaWZpY2hlIGUgaW50ZWdyYXppb25lIGNvbiBsZSBpbXBvc3RhemlvbmkgZ2VuZXJpY2hlXHJcbiAgICogXHJcbiAgICogMykgR3JhZmljYXppb25lXHJcbiAgICogXHJcbiAgICogNCkgQ2FyaWNhbWVudG8gZGVsIGxvY2FsZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgbG9hZENoYXJ0KCkge1xyXG4gICAgdGhpcy5sb2coXCJDaGFydCBcIiArIHRoaXMubmFtZSArIFwiOiBTdGFydCBsb2FkaW5nIE1vZHVsZXMgaWYgbmVlZGVkXCIpO1xyXG4gICAgcmV0dXJuIFByb21pc2UuYWxsKFtcclxuICAgICAgdGhpcy5zZXR1cEFtQ2hhcnRzVGhlbWVzKCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5sb2coXCJDaGFydCBcIiArIHRoaXMubmFtZSArIFwiOiBHcmFwaGljYXRpbmcgYWZ0ZXIgbW9kdWxlcyBsb2FkXCIpO1xyXG5cclxuICAgICAgICB2YXIgY2FzdGVkU2V0dGluZ3MgPSB0aGlzLmdldENhc3RlZFNldHRpbmdzKCk7XHJcbiAgICAgICAgdGhpcy5maWxsU2V0dGluZ3MoY2FzdGVkU2V0dGluZ3MpO1xyXG4gICAgICAgIHRoaXMuZmlsbFNwZWNpZmljU2V0dGluZ3MoY2FzdGVkU2V0dGluZ3MpO1xyXG4gICAgICAgIHRoaXMuQ2hhcnRTZXJ2aWNlID0gdGhpcy5ncmFwaGljYXRlKGNhc3RlZFNldHRpbmdzKTtcclxuICAgICAgICB0aGlzLkNoYXJ0ID0gdGhpcy5DaGFydFNlcnZpY2UuQ2hhcnRJbnN0YW5jZTtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLkNoYXJ0KSB0aGlzLmxvZyhcIkNoYXJ0IFwiICsgdGhpcy5uYW1lICsgXCI6IENvdWxkIG5vdCBjcmVhdGUgZ3JhcGhcIik7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLkNoYXJ0ZXIuYXBwbHlMb2NhbGUodGhpcy5DaGFydCwgdGhpcy5Mb2NhbGUpLnRoZW4oKCkgPT4gdGhpcy5pbml0RG9uZSA9IHRydWUpO1xyXG4gICAgICB9KVxyXG4gICAgXSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSaWVtcGltZW50byBkZWxsZSBpbXBvc3RhemlvbmkgbmVsbGEgY2xhc3NlIFNldHRpbmdzLiBTaSBkYW5ubyBwcmlvcml0w6AgYWkgdmFsb3JpIGdpw6AgaW1wb3N0YXRpIG5laSBTZXR0aW5ncywgXHJcbiAgICogaW50ZWdyYW5kbyBldmVudHVhbG1lbnRlIGNvbiBsZSAgcHJvcHJpZXTDoCBkZWwgZ3JhZmljb1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7QmFzZVNldHRpbmdzfSBzZXR0aW5ncyBJbXBvc3RhemlvbmkgYmFzZSByaWNldnV0ZSBkYWxsYSBzcGVjaWFsaXp6YXppb25lIGRlbCBncmFmaWNvXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBmaWxsU2V0dGluZ3Moc2V0dGluZ3M6IEJhc2VTZXR0aW5ncykge1xyXG5cclxuICAgIC8vIE1lcmdlIGRlZ2xpIElucHV0IGNvbiBpIFNldHRpbmdzLCBkYW5kbyBwcmlvcml0w6AgYWkgU2V0dGluZ3NcclxuXHJcbiAgICBzZXR0aW5ncy5UaGVtZSA9IHNldHRpbmdzLlRoZW1lID8gc2V0dGluZ3MuVGhlbWUgOiB0aGlzLlRoZW1lO1xyXG4gICAgc2V0dGluZ3MuTG9jYWxlID0gc2V0dGluZ3MuTG9jYWxlID8gc2V0dGluZ3MuTG9jYWxlIDogdGhpcy5Mb2NhbGU7XHJcbiAgICBzZXR0aW5ncy5BbmltYXRpb25zID0gc2V0dGluZ3MuQW5pbWF0aW9ucyAhPSBudWxsID8gc2V0dGluZ3MuQW5pbWF0aW9ucyA6IHRoaXMuQW5pbWF0aW9ucztcclxuXHJcbiAgICBzZXR0aW5ncy5MZWdlbmQgPSBzZXR0aW5ncy5MZWdlbmQgIT0gbnVsbCA/IHNldHRpbmdzLkxlZ2VuZCA6IHRoaXMuTGVnZW5kO1xyXG4gICAgc2V0dGluZ3MuTmFtZSA9IHNldHRpbmdzLk5hbWUgPyBzZXR0aW5ncy5OYW1lIDogdGhpcy5uYW1lO1xyXG4gICAgc2V0dGluZ3MuVGltZWxpbmUgPSBzZXR0aW5ncy5UaW1lbGluZSAhPSBudWxsID8gc2V0dGluZ3MuVGltZWxpbmUgOiB0aGlzLlRpbWVsaW5lO1xyXG4gICAgc2V0dGluZ3MuQWRhcHRMYWJlbFNpemVBbmRPcmllbnRhdGlvbiA9IHNldHRpbmdzLkFkYXB0TGFiZWxTaXplQW5kT3JpZW50YXRpb24gIT0gbnVsbCA/IHNldHRpbmdzLkFkYXB0TGFiZWxTaXplQW5kT3JpZW50YXRpb24gOiB0aGlzLkFkYXB0TGFiZWxTaXplQW5kT3JpZW50YXRpb247XHJcbiAgICBzZXR0aW5ncy5YQXhpc1RpdGxlID0gc2V0dGluZ3MuWEF4aXNUaXRsZSA/IHNldHRpbmdzLlhBeGlzVGl0bGUgOiB0aGlzLlhUaXRsZTtcclxuICAgIHNldHRpbmdzLllBeGlzVGl0bGUgPSBzZXR0aW5ncy5ZQXhpc1RpdGxlID8gc2V0dGluZ3MuWUF4aXNUaXRsZSA6IHRoaXMuWVRpdGxlO1xyXG4gICAgc2V0dGluZ3MuTGVnZW5kUG9zaXRpb24gPSBzZXR0aW5ncy5MZWdlbmRQb3NpdGlvbiA/IHNldHRpbmdzLkxlZ2VuZFBvc2l0aW9uIDogdGhpcy5MZWdlbmRQb3NpdGlvbjtcclxuICAgIHNldHRpbmdzLkhpZGVTZXJpZXNPbkxhYmVsQ2xpY2sgPSBzZXR0aW5ncy5IaWRlU2VyaWVzT25MYWJlbENsaWNrICE9IG51bGwgPyBzZXR0aW5ncy5IaWRlU2VyaWVzT25MYWJlbENsaWNrIDogdGhpcy5IaWRlU2VyaWVzT25MYWJlbENsaWNrO1xyXG4gICAgc2V0dGluZ3MuTWluR3JpZERpc3RhbmNlID0gc2V0dGluZ3MuTWluR3JpZERpc3RhbmNlICE9IG51bGwgPyBzZXR0aW5ncy5NaW5HcmlkRGlzdGFuY2UgOiB0aGlzLk1pbkdyaWREaXN0YW5jZTtcclxuICAgIHNldHRpbmdzLkxlZ2VuZFBhZGRpbmcgPSBzZXR0aW5ncy5MZWdlbmRQYWRkaW5nID8gc2V0dGluZ3MuTGVnZW5kUGFkZGluZyA6IHRoaXMuTGVnZW5kUGFkZGluZyA/PyBudWxsO1xyXG5cclxuICAgICg8YW55PnNldHRpbmdzKS5Db250YWluZXJIZWlnaHQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudC5vZmZzZXRIZWlnaHQ7XHJcbiAgICAoPGFueT5zZXR0aW5ncykuT25TZXJpZXNDbGlja0NhbGxiYWNrID0gKHNlcmllcykgPT4geyB0aGlzLm9uU2VyaWVzQ2xpY2tlZC5lbWl0KHNlcmllcyk7IH07XHJcbiAgICAoPGFueT5zZXR0aW5ncykuT25TZWxlY3Rpb25DaGFuZ2VkQ2FsbGJhY2sgPSAoZXZlbnQ6IHsgZnJvbTogRGF0ZSwgdG86IERhdGUsIGluaXRpYWw6IGJvb2xlYW4gfSkgPT4geyB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KHsgZnJvbTogZXZlbnQuZnJvbSwgdG86IGV2ZW50LnRvLCBpbml0aWFsOiBldmVudC5pbml0aWFsIH0pOyB9O1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29udHJvbGxhIGkgY2FtYmlhbWVudGkgYXZ2ZW51dGkgYWxsZSBwcm9wcmlldMOgIGNoaWF2ZSBlIHJpZWZmZXR0dWEgbGEgZ3JhZmljYXppb25lIHF1YWxvcmEgbmVjZXNzYXJpb1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7U2ltcGxlQ2hhbmdlc30gY2hhbmdlcyBJbmRpY2F6aW9uZSBkZWxsYSBtb2RpZmljaGUgYXZ2ZW51dGUgbmVpIHZhcmkgSW5wdXRcclxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBwcm9wc1RvQ2hlY2sgTGlzdGEgZGVnbGkgSW5wdXQgZGEgY29udHJvbGxhcmUgcGVyIGN1aSB1bmEgbW9kaWZpY2EgY2F1c2EgdW5hIHJpZ3JhZmljYXppb25lXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBjaGVja1Byb3BlcnRpZXNBbmRSZWdyYXBoaWNhdGVBc05lZWRlZChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzLCBwcm9wc1RvQ2hlY2s6IHN0cmluZ1tdKSB7XHJcbiAgICBsZXQgdG9SZUdyYXBoaWNhdGUgPSBmYWxzZTtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcHJvcHNUb0NoZWNrLmxlbmd0aDsgaSsrKVxyXG4gICAgICB0b1JlR3JhcGhpY2F0ZSA9IHRvUmVHcmFwaGljYXRlIHx8IChjaGFuZ2VzW3Byb3BzVG9DaGVja1tpXV0gJiYgY2hhbmdlc1twcm9wc1RvQ2hlY2tbaV1dLmN1cnJlbnRWYWx1ZSlcclxuXHJcbiAgICBpZiAodG9SZUdyYXBoaWNhdGUpXHJcbiAgICAgIHRoaXMucmVsb2FkQ2hhcnQoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZ1bnppb25lIGNoZSBlZmZldHR1YSB1biBjYW1iaW8gZGkgcGFnaW5hIHBlciBpIGdyYWZpY2kgcGFnaW5hdGkuIFF1YWxvcmEgKipkYXRhKiogZm9zc2UgbnVsbG8gc2lnbmlmaWNhIGNoZSDDqCBpbml6aWF0byB1biBjYXJpY2FtZW50byBcclxuICAgKiBlIGFuY2hlIGxhdG8gYXBwbGljYXRpdm8gaWwgRGF0YVJldHJpZXZlIGRvdnLDoCBjb25zaWRlcmFyZSBjaGUgbCdhc3NlbnphIGRpIHZhbG9yaSBub24gw6ggYWx0cm8gY2hlIHVuJ2luZGljYXppb25lIGRpIGluaXppbyBjYXJpY2FtZW50b1xyXG4gICAqIFxyXG4gICAqIElsIGNhcmljYW1lbnRvIGRpIHF1YWxzaWFzaSBwYWdpbmEgZ2VuZXJlcsOgIGNvbXVucXVlIHVuYSBwcmltbyBldmVudG8gY29uICoqZGF0YSoqIG51bGxvIGluIG1vZG8gZGEgaW5kaWNhcmUgbCdpbml6aW8gY2FyaWNhbWVudG8gZVxyXG4gICAqIGluIHNlY29uZGEgaXN0YW56YSB1biBhbHRybyBldmVudG8gaW4gY3VpICoqZGF0YSoqIHNhcsOgIHNlbXByZSB2YWxvcml6emF0bywgbyBjb24gaWwgRHRvIGRhIHVzYXJlIHBlciByZWN1cGVyYXJlIGkgZGF0aSwgbyBjb24gaSBkYXRpXHJcbiAgICogdmVyaSBlIHByb3ByaSBnacOgIHByZXNlbnRpIG5lbCAqKkRhdGFBcnJheSoqXHJcbiAgICogXHJcbiAgICogSSBjYWxsYmFjayAqKm9uTG9hZFN0YXJ0KiogZSAqKm9uTG9hZEVuZCoqIHZlbmdvbm8gc2VtcHJlIGNoaWFtYXRpXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHt7IGRhdGE6IExpbmVDaGFydERhdGEgfCBQaWVDaGFydERhdGEgfCBWZXJ0aWNhbDJEQ2hhcnREYXRhIHwgVmVydGljYWxDaGFydERhdGEgfCBhbnksIGluZGV4OiBudW1iZXIgfX0gbmQgSW5kaWNlIGRlbCBjYXJpY2FtZW50byBkYXRpLCBjb24gZXZlbnR1YWxtZW50ZSBnacOgIGkgZGF0aSBzZSBkaXNwb25pYmlsaVxyXG4gICAqL1xyXG4gIHB1YmxpYyBjaGFuZ2VQYWdlKG5kOiB7IGRhdGE6IExpbmVDaGFydERhdGEgfCBQaWVDaGFydERhdGEgfCBWZXJ0aWNhbDJEQ2hhcnREYXRhIHwgVmVydGljYWxDaGFydERhdGEgfCBhbnksIGluZGV4OiBudW1iZXIgfSkge1xyXG4gICAgaWYgKCFuZC5kYXRhKSB7XHJcbiAgICAgIHRoaXMubG9hZGluZ0NoYXJ0ID0gdHJ1ZTtcclxuICAgICAgLy8gU2VydmUgcGVyIGluZm9ybWFyZSBsJ2FwcGxpY2F0aXZvIGluIGxpc3RlbmluZyBzdWxsJ2luZGljZSBhdHR1YWxtZW50ZSBpbiB2aXN1YWxpenphemlvbmUuIFxyXG4gICAgICAvLyBMYSBtYW5jYW56YSBkaSBkYXRpIGluZGljYSBjaGUgbm9uIGRldm9ubyBlc3NlcmUgZWZmZXR0dWF0ZSByaWNlcmNoZSBwZXIgb3JhXHJcbiAgICAgIGlmICh0aGlzLkRhdGFSZXRyaWV2ZSlcclxuICAgICAgICB0aGlzLkRhdGFSZXRyaWV2ZShudWxsLCBuZC5pbmRleClcclxuICAgICAgdGhpcy5vbkxvYWRTdGFydC5lbWl0KCk7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5EYXRhUmV0cmlldmUpXHJcbiAgICAgIHRoaXMuRGF0YVJldHJpZXZlKG5kLmRhdGEsIG5kLmluZGV4KS50aGVuKHQgPT4geyB0aGlzLmNoYW5nZVBhZ2VEYXRhUmVjZWl2ZWQodCk7IH0pO1xyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLmNoYW5nZVBhZ2VEYXRhUmVjZWl2ZWQobmQuZGF0YSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBbCB0ZXJtaW5lIGRlbCBjYXJpY2FtZW50byBkZWkgZGF0aSBkaSB1bmEgcGFnaW5hIHF1ZXN0byBtZXRvZG8gdmllbmUgY2hpYW1hdG8gcGVyIHJpZ3JhZmljYXJlIGxhIHNpdHVhemlvbmUgY29uIGkgbnVvdmkgZGF0aVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7TGluZUNoYXJ0RGF0YSB8IFBpZUNoYXJ0RGF0YSB8IFZlcnRpY2FsMkRDaGFydERhdGEgfCBWZXJ0aWNhbENoYXJ0RGF0YSB8IGFueX0gZGF0YSBEYXRpIGRlbCBncmFmaWNvXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBjaGFuZ2VQYWdlRGF0YVJlY2VpdmVkKGRhdGE6IExpbmVDaGFydERhdGEgfCBQaWVDaGFydERhdGEgfCBWZXJ0aWNhbDJEQ2hhcnREYXRhIHwgVmVydGljYWxDaGFydERhdGEgfCBhbnkpIHtcclxuICAgIHRoaXMubG9hZGluZ0NoYXJ0ID0gZmFsc2U7XHJcbiAgICB0aGlzLm9uTG9hZEVuZC5lbWl0KCk7XHJcbiAgICBsZXQgZmlyc3RCaW5kID0gIXRoaXMuRGF0YTtcclxuICAgIHRoaXMuRGF0YSA9IGRhdGE7XHJcblxyXG4gICAgaWYgKCFmaXJzdEJpbmQpXHJcbiAgICAgIHRoaXMucmVsb2FkQ2hhcnQoKTtcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5kaXNwYXRjaExvYWRDaGFydCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmljYXJpY2EgaWwgZ3JhZmljbyBkaXN0cnVnZ2VuZG8gaWwgdmVjY2hpbyBlIHJpY3JlYW5kbyBpbCBudW92b1xyXG4gICAqIFxyXG4gICAqIExlIGNoaWFtYXRlIGEgcXVlc3RvIG1ldG9kbyBwb3Nzb25vIGVzc2VyZSB0cmFzZm9ybWF0ZSBpbiBjaGlhbWF0ZSBhbCBtZXRvZG8gKipncmFwaGljYXRlKiogZGVsbGEgU2VydmljZSwgc2Ugc29sbyBxdWVsIG1ldG9kbyBmb3NzZSBhYmJhc3RhbnphIGludGVsbGlnZW50ZSBwZXIgY2FwaXJlXHJcbiAgICogbGUgZGlmZmVyZW56ZSBmcmEgaWwgZ3JhZmljbyBjb20nZXJhIHByaW1hIGUgY29tZSBkZXZlIGRpdmVudGFyZSwgaW4gbW9kbyBkYSBub24gcmljcmVhcmxvIG1hIHNlbXBsaWNlbWVudGUgbW9kaWZpY2FyZSBxdWVsbG8gY2hlIGdpw6Agw6ggZGlzZWduYXRvXHJcbiAgICovXHJcbiAgcHJpdmF0ZSByZWxvYWRDaGFydCgpIHtcclxuICAgIHRoaXMuYnJvd3Nlck9ubHkoKCkgPT4geyBpZiAoIXRoaXMuQ2hhcnQuaXNEaXNwb3NlZCgpKSB0aGlzLkNoYXJ0LmRpc3Bvc2UoKTsgdGhpcy5EaXNwYXRjaGVyLmRlcmVnaXN0ZXJHcmFwaCh0aGlzLm5hbWUpIH0pO1xyXG4gICAgdGhpcy5EaXNwYXRjaGVyLnJlZ2lzdGVyKHRoaXMubmFtZSwgKCkgPT4geyByZXR1cm4gdGhpcy5sb2FkQ2hhcnQoKTsgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGdW56aW9uZSBjaGUgc2kgb2NjdXBhIGRpIGNhcmljYXJlIGkgdGVtaSBuZWNlc3NhcmkgcGVyIGlsIGdyYWZpY28gaW4gb2dnZXR0by4gUHJpbWEgYXBwbGljYSBpbCB0ZW1hLCBwb2ksIHNlIHNlcnZlLCBhcHBsaWNhIGxlIGFuaW1hemlvbmlcclxuICAgKi9cclxuICBwcml2YXRlIHNldHVwQW1DaGFydHNUaGVtZXMoKSB7XHJcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoW1xyXG4gICAgICB0aGlzLkNoYXJ0ZXIuYXBwbHlUaGVtZShhbTRjb3JlLCB0aGlzLlRoZW1lKS50aGVuKCgpID0+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5BbmltYXRpb25zID8gdGhpcy5DaGFydGVyLmFwcGx5QW5pbWF0aW9ucyhhbTRjb3JlKSA6IHRoaXMuQ2hhcnRlci51bmFwcGx5QW5pbWF0aW9ucyhhbTRjb3JlKTtcclxuICAgICAgfSlcclxuICAgIF0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIHByaXZhdGUgbG9nKGxvZzogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5sb2dzKVxyXG4gICAgICBjb25zb2xlLmxvZyhcIkBlc2ZhZW56YS9lcy1jaGFydHM6IFwiICsgbG9nKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBicm93c2VyT25seShmOiAoKSA9PiB2b2lkKSB7XHJcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xyXG4gICAgICB0aGlzLnpvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG4gICAgICAgIGYoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG59Il19
311
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9jb21wb25lbnRzL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUFnQyxNQUFNLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBWSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSS9LLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHakUsT0FBTyxLQUFLLE9BQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUdwRDs7O0dBR0c7QUFFSCxNQUFNLE9BQWdCLGtCQUFrQjtJQXlMdEM7Ozs7Ozs7Ozs7OztPQVlHO0lBQ0gsWUFBb0IsRUFBYyxFQUFVLFVBQWtCLEVBQVUsSUFBWSxFQUFVLE9BQW9CLEVBQVUsVUFBMkIsRUFBVSxJQUFhLEVBQ3BLLFVBQW1CLEVBQVUsTUFBYyxFQUFVLEtBQWE7UUFEeEQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQVE7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFRO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQUFVLGVBQVUsR0FBVixVQUFVLENBQWlCO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBUztRQUNwSyxlQUFVLEdBQVYsVUFBVSxDQUFTO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQVE7UUF2SzVFOztXQUVHO1FBQ00sU0FBSSxHQUFXLEVBQUUsQ0FBQztRQTBEM0I7Ozs7V0FJRztRQUNNLGtCQUFhLEdBQVcsR0FBRyxDQUFDO1FBWXJDOztXQUVH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QUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBRTFGLFFBQVEsQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUUsUUFBUSxDQUFDLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzFELFFBQVEsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDbEYsUUFBUSxDQUFDLDRCQUE0QixHQUFHLFFBQVEsQ0FBQyw0QkFBNEIsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDO1FBQ2xLLFFBQVEsQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM5RSxRQUFRLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDOUUsUUFBUSxDQUFDLGNBQWMsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQ2xHLFFBQVEsQ0FBQyxzQkFBc0IsR0FBRyxRQUFRLENBQUMsc0JBQXNCLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMs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QUksQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtnQkFDL0IsQ0FBQyxFQUFFLENBQUM7WUFDTixDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7O1lBNWFGLFNBQVM7OztZQWRtSSxVQUFVO1lBcU43RixNQUFNO1lBck5sQixNQUFNO1lBSTNDLFdBQVc7WUFBRSxlQUFlOzs7Ozs7O3FCQWdCbEMsS0FBSztxQkFLTCxLQUFLO3VCQUtMLEtBQUs7cUJBS0wsS0FBSzs2QkFLTCxLQUFLO3VCQUtMLEtBQUs7bUJBS0wsS0FBSzt5QkFLTCxLQUFLO29CQU9MLEtBQUs7cUJBS0wsS0FBSztxQ0FNTCxLQUFLOzhCQU9MLEtBQUs7MkNBS0wsS0FBSzs0QkFLTCxLQUFLO3VCQU1MLEtBQUs7Z0NBS0wsS0FBSzsyQkFLTCxLQUFLOzRCQU9MLEtBQUs7d0JBS0wsWUFBWSxTQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7K0JBS3hDLFlBQVksU0FBQyxTQUFTLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2lDQUt6QyxNQUFNOzhCQUtOLE1BQU07MEJBS04sTUFBTTt3QkFLTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJbnB1dCwgU2ltcGxlQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgTmdab25lLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT25DaGFuZ2VzLCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgQ29udGVudENoaWxkLCBPcHRpb25hbCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBJQmFzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEJhc2VTZXR0aW5ncywgTGVnZW5kUGFkIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NldHRpbmdzJztcclxuaW1wb3J0IHsgQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlciB9IGZyb20gXCIuLi8uLi9tb2RlbHMvY29yZVwiO1xyXG5pbXBvcnQgeyBQYWdlZENoYXJ0RGF0YSwgTGluZUNoYXJ0RGF0YSwgUGllQ2hhcnREYXRhLCBWZXJ0aWNhbDJEQ2hhcnREYXRhLCBWZXJ0aWNhbENoYXJ0RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXRhJztcclxuXHJcbmltcG9ydCAqIGFzIGFtNGNvcmUgZnJvbSBcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvY29yZVwiO1xyXG5pbXBvcnQgKiBhcyBhbTRjaGFydHMgZnJvbSBcIkBhbWNoYXJ0cy9hbWNoYXJ0czQvY2hhcnRzXCI7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBHcmFmaWNvIEJhc2UgY2hlIGdlc3Rpc2NlIHR1dHRlIGxlIGNvc2UgY29tdW5pIGRlaSB2YXJpIGdyYWZpY2kgaXN0YW56aWFiaWxpLCBjb21lIGxhIHByZXNlbnphIG8gbWVudSBkaSB1bmEgbGVnZW5kYSxcclxuICogaWwgdGVtYSB1dGlsaXp6YXRvLCBpbCBsb2NhbGUgZGVsIHNpbmdvbG8gZ3JhZmljbywgZWNjIGVjYy4uLlxyXG4gKi9cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ2hhcnRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuXHJcbiAgLyoqXHJcbiAgICogVGl0b2xvIHBlciBsJ2Fzc2UgWFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIFhUaXRsZTogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBUaXRvbG8gcGVyIGwnYXNzZSBZXHJcbiAgICovXHJcbiAgQElucHV0KCkgWVRpdGxlOiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEltcG9zdGF6aW9uaSBkaSBiYXNlXHJcbiAgICovXHJcbiAgQElucHV0KCkgU2V0dGluZ3M6IEJhc2VTZXR0aW5ncztcclxuXHJcbiAgLyoqXHJcbiAgICogUHJlc2VuemEgbyBtZW5vIGRlbGxhIGxlZ2VuZGFcclxuICAgKi9cclxuICBASW5wdXQoKSBMZWdlbmQ6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBvc2l6aW9uZSBkZWxsYSBsZWdlbmRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgTGVnZW5kUG9zaXRpb246IFwidG9wXCIgfCBcImJvdHRvbVwiIHwgXCJsZWZ0XCIgfCBcInJpZ2h0XCI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFByZXNlbnphIG8gbWVubyBkZWxsYSB0aW1lbGluZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIFRpbWVsaW5lOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBOb21lIGRlbCBncmFmaWNvLCBmb25kYW1lbnRhbGUgYXNzZWduYXJsbyBwZXIgcGVybWV0dGVyZSBhbGxhIGxpYnJlcmlhIGRpIHNjaGVkdWxhcm5lIGxhIGNyZWF6aW9uZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIC8qKlxyXG4gICAqIFV0aWxpenpvIG8gbWVubyBkZWxsZSBhbmltYXppb25pLiBTZW56YSBhbmltYXppb25pIGlsIGdyYWZpY28gw6ggbGVnZ2VybWVudGUgcGnDuSBwZXJmb3JtYW50ZSwgc3BlY2lhbG1lbnRlIGFsbCdhdW1lbnRhcmUgZGVpIHB1bnRpIG5lbGxhIHNlcmllXHJcbiAgICovXHJcbiAgQElucHV0KCkgQW5pbWF0aW9uczogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogVGVtYSBkYSB1dGlsaXp6YXJlLCB2YWxpZG8gc29sbyBwZXIgaWwgZ3JhZmljbyBpbiBxdWVzdGlvbmUuIEdsaSBhbHRyaSBncmFmaWNpIGRlbGxhIHBhZ2luYSBwb3Nzb25vIGF2ZXJlIHN0aWxpIGRpdmVyc2kuXHJcbiAgICogXHJcbiAgICogRXNzZW5kbyBpIHRlbWkgY2FyaWNhdGkgaW4gbWFuaWVyYSBhc2luY3JvbmEgaW4gYmFzZSBhbGwndXRpbGl6em8gdXRpbGl6emFybmUgdGFudGkgZGl2ZXJzaSBpbiB1bid1bmljYSBwYWdpbmEgcG90cmViYmUgcmFsbGVudGFyZSBpbCBwcmltbyBjYXJpY2FtZW50b1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIFRoZW1lOiAnc3Bpcml0ZWRhd2F5JyB8ICdtb29ucmlzZWtpbmdkb20nIHwgJ2Zyb3plbicgfCAnZGFyaycgfCAna2VsbHknIHwgJ21hdGVyaWFsJyB8ICdkYXRhdml6JyB8ICdub25lJztcclxuXHJcbiAgLyoqXHJcbiAgICogTG9jYWxlIGRlbCBzaW5nb2xvIGdyYWZpY29cclxuICAgKi9cclxuICBASW5wdXQoKSBMb2NhbGU6IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIHV0aWxpenphcmUgaWwgY29tcG9ydGFtZW50byBkaSBkZWZhdWx0IHBlciBpIGNsaWNrIGRlbGxlIHNlcmllIHN1bGxhIExlZ2VuZGEuIE1ldHRlbmRvIHF1ZXN0YSB2YXJpYWJpbGUgYSAqKmZhbHNlKipcclxuICAgKiBlIGNvbGxlZ2FuZG8gbCdvdXRwdXQgKipvblNlcmllc0NsaWNrZWQqKiDDqCBwb3NzaWJpbGUgZ2VuZXJhcmUgdW4gZXZlbnRvIG9nbmkgdm9sdGEgY2hlIGwndXRlbnRlIGZhIGNsaWNrIHN1IHVuYSBzZXJpZSBkZWxsYSBMZWdlbmRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgSGlkZVNlcmllc09uTGFiZWxDbGljazogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogTWluaW1hIGRpc3RhbnphIG5lbGxhIGdyaWdsaWEgZnJhIGkgdmFsb3JpLCBtb2RpZmljYSBsYSBxdWFudGl0w6AgZGkgc3RlcCBmcmEgaSB2YWxvcmkgZGVsbCdhc3NlIFggZSBxdWluZGkgbGEgZ3JhbnVsYXJpdMOgIGRlaSBkYXRpLlxyXG4gICAqIFxyXG4gICAqIFBpw7kgcGljY29sYSDDqCwgcGnDuSB2YWxvcmkgdmVycmFubm8gaW5zZXJpdGkgbmVsbCdhc3NlIFhcclxuICAgKi9cclxuICBASW5wdXQoKSBNaW5HcmlkRGlzdGFuY2U6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogQ2VyY2EgZGkgYWdnaXVzdGFyZSBpIHZhcmkgc3RlcCBkZWxsJ2Fzc2UgWCBydW90YW5kb2xpIGUgZGltaW51ZW5kb25lIGxlIGRpbWVuc2lvbmkgYWJiYXN0YW56YSBwZXIgbW9zdHJhcm5lIGlsIHBpw7kgcG9zc2liaWxlXHJcbiAgICovXHJcbiAgQElucHV0KCkgQWRhcHRMYWJlbFNpemVBbmRPcmllbnRhdGlvbjogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogUGFkZGluZyBkYSBhcHBsaWNhcmUgYWxsYSBMZWdlbmRhIGluIGNhc28gc2kgdm9nbGlhIHNwb3N0YXJlIHVuIHBvJ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIExlZ2VuZFBhZGRpbmc6IExlZ2VuZFBhZDtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGkgZHRvIGdlbmVyaWNpIGNoZSB2ZXJyYW5ubyBlbWVzc2kgZGFsIHNpc3RlbWEgZGkgZ3JhZmljaSB1bm8gcGVyIHVubyBhdHRyYXZlcnNvIGxhIGZ1bnppb25lICoqRGF0YVJldHJpZXZlKiosIGNoZSBkb3ZyYW5ubyBlc3NlcmVcclxuICAgKiB1c2F0aSBwZXIgdWFuIHNvcnRhIGRpIGNhcmljYW1lbnRvIFwicGFnaW5hdG9cIiBkZWkgZ3JhZmljaVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGFEdG9zOiBhbnlbXTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNlIGRlbGwnYXJyYXkgKipEYXRhRHRvcyoqIG8gZGVsbCdhcnJheSAqKkRhdGFBcnJheSoqIGRhIGN1aSBpbml6aWFyZSBhZCBlbWV0dGVyZSBpIHZhbG9yaSwgdXRpbGUgcGVyIHN1cHBvcnRhcmUgaWwgXCJiYWNrXCIgZGEgdW4gZXZlbnR1YWxlIHBhZ2luYSBkaSBkZXR0YWdsaW9cclxuICAgKi9cclxuICBASW5wdXQoKSBEYXRhRHRvU3RhcnRJbmRleDogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBGdW56aW9uZSBkZWZpbml0YSBsYXRvIGFwcGxpY2F0aXZvIGNoZSBpbiBiYXNlIGFsICoqRGF0YUR0byoqIGNvcnJlbnRlIHJlc3RpdHVpc2NlIHVuYSBQcm9taXNlIGRlbCB0aXBvIGRpIGRhdGkgcmljaGllc3RvIHBlciBpbCBncmFmaWNvIGNvcnJlbnRlXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YVJldHJpZXZlOiAoZHRvOiBhbnksIGluZGV4OiBudW1iZXIpID0+IFByb21pc2U8YW55PjtcclxuXHJcbiAgLyoqXHJcbiAgICogRG9wbyBhdmVyIG5hdmlnYXRvIGEgdW4gbnVvdm8gZ3JhZmljbyB2ZXJyYW5ubyBhdHRlc2kgcXVlc3RpIG1pbGxpc2Vjb25kaSBwcmltYSBkaSByaWNoaWVkZXJlIGkgZGF0aSBhdHRyYXZlcnNvIGxhICoqRGF0YVJldHJpZXZlKiouXHJcbiAgICogXHJcbiAgICogUXVlc3RvIHBlciBldml0YXJlIGNoZSBsJ3V0ZW50ZSBjbGljY2FuZG8gdmVsb2NlbWVudGUgXCJhdmFudGlcIiBnZW5lcmkgdG9ubmVsbGF0ZSBkaSByaWNoaWVzdGUgaW51dGlsaVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEJyb3dzZURlbGF5TXM6IG51bWJlciA9IDUwMDtcclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZXN0YXppb25lIGRlaSBncmFmaWNpIG5lbCBjYXNvIHNpIHV0aWxpenppIGxhIG1vZGFsaXTDoCBwYWdpbmF0YVxyXG4gICAqL1xyXG4gIEBDb250ZW50Q2hpbGQoJ2hlYWRlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBoZWFkZXJfdHI7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1lc3NhZ2dpbyBkaSBjYXJpY2FtZW50byBmcmEgdW4gZ3JhZmljbyBlIGwnYWx0cm8gXHJcbiAgICovXHJcbiAgQENvbnRlbnRDaGlsZCgnbG9hZGluZycsIHsgc3RhdGljOiBmYWxzZSB9KSBsb2FkaW5nX3RlbXBsYXRlO1xyXG5cclxuICAvKipcclxuICAgKiBFdmVudG8gbGFuY2lhdG8gc3VsbGEgc2VsZXppb25lIGRpIHVuIHJhbmdlIGRpIGRhdGkgbyBkYWxsYSB0aW1lbGluZSBvIGRhbCBncmFmaWNvLiBWYWxpZG8gcGVyIHR1dHRpIGkgZ3JhZmljaSBjaGUgc3VwcG9ydGFubyBzZXJpZSBiYXNhdGUgc3VsbGUgZGF0ZVxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBvblNlbGVjdGlvbkNoYW5nZWQ6IEV2ZW50RW1pdHRlcjx7IGZyb206IERhdGUsIHRvOiBEYXRlLCBpbml0aWFsOiBib29sZWFuIH0+ID0gbmV3IEV2ZW50RW1pdHRlcjx7IGZyb206IERhdGUsIHRvOiBEYXRlLCBpbml0aWFsOiBib29sZWFuIH0+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50byBsYW5jaWF0byBkYWwgY2xpY2sgZGkgdW5hIHNlcmllIGRhbGxhIExlZ2VuZGEsIGEgcGF0dG8gY2hlIGwnSW5wdXQgKipIaWRlU2VyaWVzT25MYWJlbENsaWNrKiogc2lhIGltcG9zdGF0byBhIGZhbHNlXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIG9uU2VyaWVzQ2xpY2tlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnRvIGxhbmNpYXRvIGFsbCdpbml6aW8gZGVsIGNhcmljYW1lbnRvIGRpIHVuYSBudW92YSBwYWdpbmEgZGVsIGdyYWZpY29cclxuICAgKi9cclxuICBAT3V0cHV0KCkgb25Mb2FkU3RhcnQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRXZlbnRvIGxhbmNpYXRvIGFsIHRlcm1pbmUgZGVsIGNhcmljYW1lbnRvIGRpIHVuYSBudW92YSBwYWdpbmEgZGVsIGdyYWZpY29cclxuICAgKi9cclxuICBAT3V0cHV0KCkgb25Mb2FkRW5kOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIC8qKlxyXG4gICAqIFNlcnZlIGEgZGVjaWRlcmUgc2Ugc2Fyw6AgcHJlc2VudGUgbCdpbnRlcmZhY2NpYSBkaSBwYWdpbmF6aW9uZVxyXG4gICAqL1xyXG4gIHB1YmxpYyBpc1BhZ2VkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBwcml2YXRlIGluaXREb25lOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIElzdGFuemEgbmF0aXZhIGRlbCBncmFmaWNvIGFtY2hhcnRzLiBRdWFsc2lhc2kgY29zYSBub24gZmEgcXVlc3RhIGxpYnJlcmlhIHNpIHB1w7IgcHJlbmRlcmUgcXVlc3RhIGlzdGFuemEgZSBtb2RpZmljYXJlIGEgcGlhY2ltZW50b1xyXG4gICAqL1xyXG4gIHB1YmxpYyBDaGFydDogYW00Y2hhcnRzLkNoYXJ0O1xyXG5cclxuICAvKipcclxuICAgKiBTZXJ2aXppbyBkaSBncmFmaWNhemlvbmUgZGVsIGdyYWZpY29cclxuICAgKi9cclxuICBwdWJsaWMgQ2hhcnRTZXJ2aWNlOiBJQmFzZVNlcnZpY2U8YW55PjtcclxuXHJcbiAgLyoqXHJcbiAgICogVmFyaWFiaWxlIGNoZSBpbmRpY2Egc2UgdW5hIG51b3ZhIHBhZ2luYSBkZWwgZ3JhZmljbyDDqCBpbiBmYXNlIGRpIGNhcmljYW1lbnRvXHJcbiAgICovXHJcbiAgcHVibGljIGxvYWRpbmdDaGFydDogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogRGF0aSBkZWwgZ3JhZmljby4gT2duaSBpbXBsZW1lbnRhemlvbmUgZ2VzdGlyw6AgcXVlc3RhIHZhcmlhYmlsZSBpbiBiYXNlIGFsIHByb3ByaW8gdGlwbyBkaSBEYXRpXHJcbiAgICovXHJcbiAgYWJzdHJhY3QgRGF0YTogYW55O1xyXG5cclxuICAvKipcclxuICAgKiBEYXRpIGRlbCBncmFmaWNvIGluIG1vZGFsaXTDoCBwYWdpbmF0YSwgcGVyIHF1YW5kbyB0dXR0ZSBsZSBwYWdpbmUgc29ubyBwcmVjYXJpY2F0ZSBpbiBtZW1vcmlhIChpbiBjYXNvIGNvbnRyYXJpbyB2ZXJyZWJiZXLDsiB1dGlsaXp6YXRpIGkgKipEYXRhRHRvcyoqKVxyXG4gICAqL1xyXG4gIGFic3RyYWN0IERhdGFBcnJheTogUGFnZWRDaGFydERhdGE8YW55PltdO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgbGUgcHJvcHJpZXTDoCBzcGVjaWZpY2EgcGVyIHVuYSBkYXRhIGltcGxlbWVudGF6aW9uZSBjaGUgZGV2b25vIGNhdXNhcmUgdW4gcmVwYWludCBkZWwgZ3JhZmljb1xyXG4gICAqL1xyXG4gIGFic3RyYWN0IGdldFNwZWNpZmljUHJvcGVydGllc1RvQ2hlY2soKTogc3RyaW5nW107XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBnZW5lcmljbyBkaSBncmFmaWNhemlvbmUsIHJlaW1wbGVtZW50YXRvIGRhbGxlIHZhcmllIGltcGxlbWVudGF6aW9uaVxyXG4gICAqL1xyXG4gIGFic3RyYWN0IGdyYXBoaWNhdGUoY2FzdGVkU2V0dGluZ3MpOiBJQmFzZVNlcnZpY2U8YW55PjtcclxuXHJcbiAgLyoqXHJcbiAgICogTWV0b2RvIGdlbmVyaWNvIGNoZSBwcmVuZGUgbGUgaW1wb3N0YXppb25pIGdlbmVyaWNoZSBkZWwgZ3JhZmljbyBlIGxlIGNhc3RhIGFsbGEgdGlwb2xvZ2lhIGdpdXN0YSBwZXIgaWwgZ3JhZmljbyBzcGVjaWZpY29cclxuICAgKi9cclxuICBhYnN0cmFjdCBnZXRDYXN0ZWRTZXR0aW5ncygpOiBhbnk7XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBjaGUgXCJSaWVtcGllXCIgbGEgY2xhc3NlIGRlbGxlIGltcG9zdGF6aW9uaSBjb24gdHV0dGUgbGUgaW1wb3N0YXppb25pIHNwZWNpZmljaGUgcGFzc2F0ZSBhIHVuIGRhdG8gZ3JhZmljbyBjb21lIElucHV0XHJcbiAgICovXHJcbiAgYWJzdHJhY3QgZmlsbFNwZWNpZmljU2V0dGluZ3Moc2V0dGluZ3NDYXN0ZWQpOiB2b2lkO1xyXG5cclxuICAvKipcclxuICAgKiBDb3N0cnV0dG9yZVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7RWxlbWVudFJlZn0gZWwgQ29udGVuaXRvcmUgYWxsJ2ludGVybm8gZGVsIGN1aSB2aWVuZSBjcmVhdG8gaWwgZ3JhZmljby4gVXRpbGl6emF0byBwZXIgZXN0cmFwb2xhcm5lIGxhICoqQ29udGFpbmVySGVpZ2h0KipcclxuICAgKiBAcGFyYW0ge09iamVjdH0gcGxhdGZvcm1JZCBwaWF0dGFmb3JtYSBBbmd1bGFyIChicm93c2VyLCBlY2MuLi4pIHBlciBlc3NlcmUgc2ljdXJpIGNoZSBhbWNoYXJ0cyB2ZW5nYSBhdHRpdmF0byBzb2xvIGxhdG8gYnJvd3Nlci4gTm9uIHV0aWxpenphbmRvIFNTUiBuZWxsZSBhcHBsaWNhemlvbmkgY2hlIGNvbnN1bWFubyBxdWVzdGEgbGlicmVyaWEgbm9uIMOoIHBhcnRpY29sYXJtZW50ZSBzaWduaWZpY2F0aXZvLCBtYSBub24gc2kgc2EgbWFpXHJcbiAgICogQHBhcmFtIHtOZ1pvbmV9IHpvbmUgTmdab25lIGRpIGRlZmF1bHQgcGVyIHBlcm1ldHRlcmUgZGkgaW5pemlhbGl6emFyZSBpbCBncmFmaWNvIGFsbCdpbmZ1b3JpIGRpIEFuZ3VsYXIgcGVyIGF2ZXJlIHF1YWxjaGUgcHJlc3RhemlvbmUgaW4gcGnDuVxyXG4gICAqIEBwYXJhbSB7Q2hhcnRMb2FkZXJ9IENoYXJ0ZXIgSXN0YW56YSBkZWwgTG9hZGVyIGNoZSBzaSBvY2N1cGVyw6AgZGkgY2FyaWNhcmUgaW4gbWVtb3JpYSB0dXR0byBjacOyIGNoZSBzZXJ2ZSBwZXIgaWwgZ3JhZmljbyBhdHR1YWxlICh0ZW1pLCBsb2NhbGUsIGFuaW1hemlvbmksIGVjYy4uLilcclxuICAgKiBAcGFyYW0ge0NoYXJ0RGlzcGF0Y2hlcn0gRGlzcGF0Y2hlciBJc3RhbnphIGRlbCBEaXNwYXRjaGVyIGNoZSBzaSBvY2N1cGEgZGkgZGlmZmVyaXJlIGlsIGNhcmljYW1lbnRvIGRlaSBncmFmaWNpIDEgZG9wbyBsJ2FsdHJvIGluIG1vZG8gY2hlIGNhcmljYW1lbnRpIHBzZXVkbyBwYXJhbGxlbGkgaW5jYXNpbmlubyB0dXR0b1xyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gbG9ncyBJbmRpY2Egc2UgZWZmZXR0dWFyZSBsb2cgYSBjb25zb2xlIG8gbWVubywgaW5pZXR0YXRvIGRhbGxlIGNsYXNzaSBzcGVjaWFsaXp6YXRlIGRhbCB0b2tlbiBFU0NfTE9HU1xyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gYW5pbWF0aW9ucyBJbmRpY2Egc2UgcGVyIHF1ZXN0byBncmFmaWNvIGRldm9ubyBlc3NlcmUgYXR0aXZlIG8gbWVubyBsZSBhbmltYXppb25pLiBJbXBvc3RhemlvbmUgZ2VuZXJpY2EgcHJlc2EgZGFsIHRva2VuIEVTQ19BTklNQVRJT05TXHJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGxvY2FsZSBJbmRpY2EgaWwgbG9jYWxlIHNwZWNpZmljbyBwZXIgcXVlc3RvIGdyYWZpY28uIEltcG9zdGF6aW9uZSBnZW5lcmljYSBwcmVzYSBkYWwgdG9rZW4gRVNDX0xPQ0FMRVxyXG4gICAqIEBwYXJhbSB7c3RyaW5nfSB0aGVtZSBJbmRpY2EgaWwgdGVtYSBzcGVjaWZpY28gcGVyIHF1ZXN0byBncmFmaWNvLiBJbXBvc3RhemlvbmUgZ2VuZXJpY2EgcHJlc2EgZGFsIHRva2VuIEVTQ19USEVNRVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgcGxhdGZvcm1JZDogT2JqZWN0LCBwcml2YXRlIHpvbmU6IE5nWm9uZSwgcHJpdmF0ZSBDaGFydGVyOiBDaGFydExvYWRlciwgcHJpdmF0ZSBEaXNwYXRjaGVyOiBDaGFydERpc3BhdGNoZXIsIHByaXZhdGUgbG9nczogYm9vbGVhbiwgXHJcbiAgICBwcml2YXRlIGFuaW1hdGlvbnM6IGJvb2xlYW4sIHByaXZhdGUgbG9jYWxlOiBzdHJpbmcsIHByaXZhdGUgdGhlbWU6IHN0cmluZykgeyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE1ldG9kbyBkaSBpbml6aWFsaXp6YXppb25lIHBvc3QgdmFsb3JpenphemlvbmUgZGVnbGkgaW5wdXQsIHV0aWxpenphdG8gcGVyIHZhbG9yaXp6YXJlIGNvcnJldHRhbWVudGUgbGUgcHJvcHJpZXTDoCBlc3NlbnppYWxpIGRlbCBncmFmaWNvIChBbmltYXppb25pLCBUZW1hIGUgTG9jYWxlKVxyXG4gICAqIFxyXG4gICAqIFZpZW5lIGRhdGEgcHJpb3JpdMOgIGFpIFNldHRpbmdzIChIVE1MKSwgcHJpb3JpdMOgIHNlY29uZGFyaWEgYWdsaSBJbnB1dCBkaXJldHRpIChMYXRvIEhUTUwpLCBwcmlvcml0w6AgdWx0aW1hIGFsbGUgaW1wb3N0YXppb25pIGdsb2JhbGksXHJcbiAgICogaW1wb3N0YXRlIGluIGZhc2UgZGkgaW1wb3J0IGRlbCBtb2R1bG8gYXNzZWduYW5kbyB2YWxvcmkgYWkgdG9rZW4gRVNDX0xPQ0FMRSwgRVNDX0FOSU1BVElPTlMsIEVTQ19USEVNRVxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgLy8gUXVpIHNlcnZvbm8gc29sbyBsZSB2YXJpYWJpbGkgZGEgY29ub3NjZXJlIFBSRS1ncmFmaWNhemlvbmUgcGVyIGlsIGNhcmljYW1lbnRvIGRlaSBtb2R1bGkgbGF6eSBkZWwgZ3JhZmljb1xyXG5cclxuICAgIHRoaXMuQW5pbWF0aW9ucyA9IHRoaXMuU2V0dGluZ3M/LkFuaW1hdGlvbnMgIT0gbnVsbCA/IHRoaXMuU2V0dGluZ3M/LkFuaW1hdGlvbnMgOiAodGhpcy5BbmltYXRpb25zICE9IG51bGwgPyB0aGlzLkFuaW1hdGlvbnMgOiB0aGlzLmFuaW1hdGlvbnMpXHJcbiAgICB0aGlzLlRoZW1lID0gdGhpcy5TZXR0aW5ncz8uVGhlbWUgIT0gbnVsbCA/IHRoaXMuU2V0dGluZ3M/LlRoZW1lIDogKHRoaXMuVGhlbWUgIT0gbnVsbCA/IHRoaXMuVGhlbWUgOiA8YW55PnRoaXMudGhlbWUpXHJcbiAgICB0aGlzLkxvY2FsZSA9IHRoaXMuU2V0dGluZ3M/LkxvY2FsZSAhPSBudWxsID8gdGhpcy5TZXR0aW5ncz8uTG9jYWxlIDogKHRoaXMuTG9jYWxlICE9IG51bGwgPyB0aGlzLkxvY2FsZSA6IHRoaXMubG9jYWxlKVxyXG5cclxuICAgIHRoaXMuaXNQYWdlZCA9ICh0aGlzLkRhdGFBcnJheSAmJiB0aGlzLkRhdGFBcnJheS5sZW5ndGggPiAwICYmICF0aGlzLkRhdGEpIHx8ICh0aGlzLkRhdGFEdG9zICYmIHRoaXMuRGF0YUR0b3MubGVuZ3RoID4gMCAmJiAhIXRoaXMuRGF0YVJldHJpZXZlKTtcclxuICAgIHRoaXMubG9nKFwiQ2hhcnQgXCIgKyB0aGlzLm5hbWUgKyBcIjogbmdPbkluaXRcIik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbXBsZW1lbnRhemlvbmUgdXRpbGl6emF0YSBwZXIgY29udHJvbGxhcmUgZXZlbnR1YWxpIHByb3ByaWV0w6AgY2hpYXZlIGRlbCBncmFmaWNvIGUgcmlncmFmaWNhcmUgdHV0dG8gcXVhbG9yYSBzaSByaXZlbGFzc2UgbmVjZXNzYXJpb1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7U2ltcGxlQ2hhbmdlc30gY2hhbmdlcyBJbmRpY2F6aW9uZSBkZWkgY2FtYmlhbWVudGkgc3VsbGUgcHJvcHJpZXTDoCBkZWwgZ3JhZmljby4gVmVkZXJlIGRvY3VtZW50YXppb25lIEFuZ3VsYXIgaW4gbWVyaXRvXHJcbiAgICovXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgaWYgKCF0aGlzLmluaXREb25lKVxyXG4gICAgICByZXR1cm47XHJcblxyXG4gICAgdGhpcy5sb2coXCJDaGFydCBcIiArIHRoaXMubmFtZSArIFwiOiBuZ09uQ2hhbmdlc1wiKTtcclxuXHJcbiAgICBsZXQgcHJvcHNUb0NoZWNrID0gW1wiVGltZWxpbmVcIiwgXCJMZWdlbmRcIiwgXCJTZXR0aW5nc1wiLCBcIkFuaW1hdGlvbnNcIiwgXCJUaGVtZVwiLCBcIkxvY2FsZVwiLCAuLi50aGlzLmdldFNwZWNpZmljUHJvcGVydGllc1RvQ2hlY2soKV07XHJcbiAgICB0aGlzLmNoZWNrUHJvcGVydGllc0FuZFJlZ3JhcGhpY2F0ZUFzTmVlZGVkKGNoYW5nZXMsIHByb3BzVG9DaGVjayk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBOZWwgcG9zdCBpbml6aWFsaXp6YXppb25lLCBhIHBhdHRvIGNoZSBtaSB0cm92aSBpbiBhbWJpZW50ZSBcImJyb3dzZXJcIiwgcHJvc2VndW8gYWwgY2FyaWNhbWVudG8gZGVsIGdyYWZpY28gc3VsbCdIVE1MXHJcbiAgICovXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgaWYgKCF0aGlzLm5hbWUpXHJcbiAgICAgIHRocm93IFwiYSBVbmlxdWUgbmFtZSBpcyBtYW5kYXRvcnkgdG8gY3JlYXRlIGEgY2hhcnRcIjtcclxuXHJcbiAgICB0aGlzLmxvZyhcIkNoYXJ0IFwiICsgdGhpcy5uYW1lICsgXCI6IG5nQWZ0ZXJWaWV3SW5pdCwgZ3JhcGhpY2F0aW5nIGNoYXJ0IG91dHNpZGUgQW5ndWxhclwiKTtcclxuXHJcbiAgICBpZighdGhpcy5pc1BhZ2VkKVxyXG4gICAgICB0aGlzLmRpc3BhdGNoTG9hZENoYXJ0KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBbGwnb25EZXN0cm95IHNjYXJpY28gaWwgZ3JhZmljbyBwZXIgbGliZXJhcmUgbWVtb3JpYVxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuQ2hhcnQpIHtcclxuICAgICAgdGhpcy5sb2coXCJDaGFydCBcIiArIHRoaXMubmFtZSArIFwiOiBVbmxvYWRpbmcgZGVzdHJveWVkIGNoYXJ0XCIpO1xyXG4gICAgICB0aGlzLmJyb3dzZXJPbmx5KCgpID0+IHsgdGhpcy5DaGFydC5kaXNwb3NlKCk7IHRoaXMuRGlzcGF0Y2hlci5kZXJlZ2lzdGVyR3JhcGgodGhpcy5uYW1lKSB9KTtcclxuICAgIH1cclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5sb2coXCJDaGFydCBcIiArIHRoaXMubmFtZSArIFwiOiBVbmxvYWRpbmcgdW5jcmVhdGVkIGNoYXJ0IGNvbXBvbmVudC4gSXQgcHJvYmFibHkgd2FzIGEgZHVwbGljYXRlZFwiKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlZ2lzdHJhIGlsIGdyYWZpY28gYXR0dWFsZSBuZWwgRGlzcGF0Y2hlciBpbiBtb2RvIGNoZSB2ZW5nYSBjYXJpY2F0byBhcHBlbmEgcG9zc2liaWxlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBkaXNwYXRjaExvYWRDaGFydCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYnJvd3Nlck9ubHkoKCkgPT4ge1xyXG4gICAgICB0aGlzLkRpc3BhdGNoZXIucmVnaXN0ZXIodGhpcy5uYW1lLCAoKSA9PiB7IHJldHVybiB0aGlzLmxvYWRDaGFydCgpOyB9KTtcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbCBjYXJpY2FtZW50byBkZWwgZ3JhZmljbyBmdW56aW9uYSBuZWwgc2VndWVudGUgbW9kbzpcclxuICAgKiBcclxuICAgKiAxKSBDYXJpY2FtZW50byBkZWwgdGVtYSBlIGRlbGxlIGFuaW1hemlvbmksIHF1YWxvcmEgbmVjZXNzYXJpXHJcbiAgICogXHJcbiAgICogMikgQ2FyaWNhbWVudG8gZGVsbGUgaW1wb3N0YXppb25pIHNwZWNpZmljaGUgZSBpbnRlZ3JhemlvbmUgY29uIGxlIGltcG9zdGF6aW9uaSBnZW5lcmljaGVcclxuICAgKiBcclxuICAgKiAzKSBHcmFmaWNhemlvbmVcclxuICAgKiBcclxuICAgKiA0KSBDYXJpY2FtZW50byBkZWwgbG9jYWxlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBsb2FkQ2hhcnQoKSB7XHJcbiAgICB0aGlzLmxvZyhcIkNoYXJ0IFwiICsgdGhpcy5uYW1lICsgXCI6IFN0YXJ0IGxvYWRpbmcgTW9kdWxlcyBpZiBuZWVkZWRcIik7XHJcbiAgICByZXR1cm4gUHJvbWlzZS5hbGwoW1xyXG4gICAgICB0aGlzLnNldHVwQW1DaGFydHNUaGVtZXMoKS50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLmxvZyhcIkNoYXJ0IFwiICsgdGhpcy5uYW1lICsgXCI6IEdyYXBoaWNhdGluZyBhZnRlciBtb2R1bGVzIGxvYWRcIik7XHJcblxyXG4gICAgICAgIHZhciBjYXN0ZWRTZXR0aW5ncyA9IHRoaXMuZ2V0Q2FzdGVkU2V0dGluZ3MoKTtcclxuICAgICAgICB0aGlzLmZpbGxTZXR0aW5ncyhjYXN0ZWRTZXR0aW5ncyk7XHJcbiAgICAgICAgdGhpcy5maWxsU3BlY2lmaWNTZXR0aW5ncyhjYXN0ZWRTZXR0aW5ncyk7XHJcbiAgICAgICAgdGhpcy5DaGFydFNlcnZpY2UgPSB0aGlzLmdyYXBoaWNhdGUoY2FzdGVkU2V0dGluZ3MpO1xyXG4gICAgICAgIHRoaXMuQ2hhcnQgPSB0aGlzLkNoYXJ0U2VydmljZS5DaGFydEluc3RhbmNlO1xyXG5cclxuICAgICAgICBpZiAoIXRoaXMuQ2hhcnQpIHRoaXMubG9nKFwiQ2hhcnQgXCIgKyB0aGlzLm5hbWUgKyBcIjogQ291bGQgbm90IGNyZWF0ZSBncmFwaFwiKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuQ2hhcnRlci5hcHBseUxvY2FsZSh0aGlzLkNoYXJ0LCB0aGlzLkxvY2FsZSkudGhlbigoKSA9PiB0aGlzLmluaXREb25lID0gdHJ1ZSk7XHJcbiAgICAgIH0pXHJcbiAgICBdKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJpZW1waW1lbnRvIGRlbGxlIGltcG9zdGF6aW9uaSBuZWxsYSBjbGFzc2UgU2V0dGluZ3MuIFNpIGRhbm5vIHByaW9yaXTDoCBhaSB2YWxvcmkgZ2nDoCBpbXBvc3RhdGkgbmVpIFNldHRpbmdzLCBcclxuICAgKiBpbnRlZ3JhbmRvIGV2ZW50dWFsbWVudGUgY29uIGxlICBwcm9wcmlldMOgIGRlbCBncmFmaWNvXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtCYXNlU2V0dGluZ3N9IHNldHRpbmdzIEltcG9zdGF6aW9uaSBiYXNlIHJpY2V2dXRlIGRhbGxhIHNwZWNpYWxpenphemlvbmUgZGVsIGdyYWZpY29cclxuICAgKi9cclxuICBwcml2YXRlIGZpbGxTZXR0aW5ncyhzZXR0aW5nczogQmFzZVNldHRpbmdzKSB7XHJcblxyXG4gICAgLy8gTWVyZ2UgZGVnbGkgSW5wdXQgY29uIGkgU2V0dGluZ3MsIGRhbmRvIHByaW9yaXTDoCBhaSBTZXR0aW5nc1xyXG5cclxuICAgIHNldHRpbmdzLlRoZW1lID0gc2V0dGluZ3MuVGhlbWUgPyBzZXR0aW5ncy5UaGVtZSA6IHRoaXMuVGhlbWU7XHJcbiAgICBzZXR0aW5ncy5Mb2NhbGUgPSBzZXR0aW5ncy5Mb2NhbGUgPyBzZXR0aW5ncy5Mb2NhbGUgOiB0aGlzLkxvY2FsZTtcclxuICAgIHNldHRpbmdzLkFuaW1hdGlvbnMgPSBzZXR0aW5ncy5BbmltYXRpb25zICE9IG51bGwgPyBzZXR0aW5ncy5BbmltYXRpb25zIDogdGhpcy5BbmltYXRpb25zO1xyXG5cclxuICAgIHNldHRpbmdzLkxlZ2VuZCA9IHNldHRpbmdzLkxlZ2VuZCAhPSBudWxsID8gc2V0dGluZ3MuTGVnZW5kIDogdGhpcy5MZWdlbmQ7XHJcbiAgICBzZXR0aW5ncy5OYW1lID0gc2V0dGluZ3MuTmFtZSA/IHNldHRpbmdzLk5hbWUgOiB0aGlzLm5hbWU7XHJcbiAgICBzZXR0aW5ncy5UaW1lbGluZSA9IHNldHRpbmdzLlRpbWVsaW5lICE9IG51bGwgPyBzZXR0aW5ncy5UaW1lbGluZSA6IHRoaXMuVGltZWxpbmU7XHJcbiAgICBzZXR0aW5ncy5BZGFwdExhYmVsU2l6ZUFuZE9yaWVudGF0aW9uID0gc2V0dGluZ3MuQWRhcHRMYWJlbFNpemVBbmRPcmllbnRhdGlvbiAhPSBudWxsID8gc2V0dGluZ3MuQWRhcHRMYWJlbFNpemVBbmRPcmllbnRhdGlvbiA6IHRoaXMuQWRhcHRMYWJlbFNpemVBbmRPcmllbnRhdGlvbjtcclxuICAgIHNldHRpbmdzLlhBeGlzVGl0bGUgPSBzZXR0aW5ncy5YQXhpc1RpdGxlID8gc2V0dGluZ3MuWEF4aXNUaXRsZSA6IHRoaXMuWFRpdGxlO1xyXG4gICAgc2V0dGluZ3MuWUF4aXNUaXRsZSA9IHNldHRpbmdzLllBeGlzVGl0bGUgPyBzZXR0aW5ncy5ZQXhpc1RpdGxlIDogdGhpcy5ZVGl0bGU7XHJcbiAgICBzZXR0aW5ncy5MZWdlbmRQb3NpdGlvbiA9IHNldHRpbmdzLkxlZ2VuZFBvc2l0aW9uID8gc2V0dGluZ3MuTGVnZW5kUG9zaXRpb24gOiB0aGlzLkxlZ2VuZFBvc2l0aW9uO1xyXG4gICAgc2V0dGluZ3MuSGlkZVNlcmllc09uTGFiZWxDbGljayA9IHNldHRpbmdzLkhpZGVTZXJpZXNPbkxhYmVsQ2xpY2sgIT0gbnVsbCA/IHNldHRpbmdzLkhpZGVTZXJpZXNPbkxhYmVsQ2xpY2sgOiB0aGlzLkhpZGVTZXJpZXNPbkxhYmVsQ2xpY2s7XHJcbiAgICBzZXR0aW5ncy5NaW5HcmlkRGlzdGFuY2UgPSBzZXR0aW5ncy5NaW5HcmlkRGlzdGFuY2UgIT0gbnVsbCA/IHNldHRpbmdzLk1pbkdyaWREaXN0YW5jZSA6IHRoaXMuTWluR3JpZERpc3RhbmNlO1xyXG4gICAgc2V0dGluZ3MuTGVnZW5kUGFkZGluZyA9IHNldHRpbmdzLkxlZ2VuZFBhZGRpbmcgPyBzZXR0aW5ncy5MZWdlbmRQYWRkaW5nIDogdGhpcy5MZWdlbmRQYWRkaW5nID8/IG51bGw7XHJcblxyXG4gICAgKDxhbnk+c2V0dGluZ3MpLkNvbnRhaW5lckhlaWdodCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgICg8YW55PnNldHRpbmdzKS5PblNlcmllc0NsaWNrQ2FsbGJhY2sgPSAoc2VyaWVzKSA9PiB7IHRoaXMub25TZXJpZXNDbGlja2VkLmVtaXQoc2VyaWVzKTsgfTtcclxuICAgICg8YW55PnNldHRpbmdzKS5PblNlbGVjdGlvbkNoYW5nZWRDYWxsYmFjayA9IChldmVudDogeyBmcm9tOiBEYXRlLCB0bzogRGF0ZSwgaW5pdGlhbDogYm9vbGVhbiB9KSA9PiB7IHRoaXMub25TZWxlY3Rpb25DaGFuZ2VkLmVtaXQoeyBmcm9tOiBldmVudC5mcm9tLCB0bzogZXZlbnQudG8sIGluaXRpYWw6IGV2ZW50LmluaXRpYWwgfSk7IH07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDb250cm9sbGEgaSBjYW1iaWFtZW50aSBhdnZlbnV0aSBhbGxlIHByb3ByaWV0w6AgY2hpYXZlIGUgcmllZmZldHR1YSBsYSBncmFmaWNhemlvbmUgcXVhbG9yYSBuZWNlc3NhcmlvXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtTaW1wbGVDaGFuZ2VzfSBjaGFuZ2VzIEluZGljYXppb25lIGRlbGxhIG1vZGlmaWNoZSBhdnZlbnV0ZSBuZWkgdmFyaSBJbnB1dFxyXG4gICAqIEBwYXJhbSB7c3RyaW5nW119IHByb3BzVG9DaGVjayBMaXN0YSBkZWdsaSBJbnB1dCBkYSBjb250cm9sbGFyZSBwZXIgY3VpIHVuYSBtb2RpZmljYSBjYXVzYSB1bmEgcmlncmFmaWNhemlvbmVcclxuICAgKi9cclxuICBwcml2YXRlIGNoZWNrUHJvcGVydGllc0FuZFJlZ3JhcGhpY2F0ZUFzTmVlZGVkKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMsIHByb3BzVG9DaGVjazogc3RyaW5nW10pIHtcclxuICAgIGxldCB0b1JlR3JhcGhpY2F0ZSA9IGZhbHNlO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwcm9wc1RvQ2hlY2subGVuZ3RoOyBpKyspXHJcbiAgICAgIHRvUmVHcmFwaGljYXRlID0gdG9SZUdyYXBoaWNhdGUgfHwgKGNoYW5nZXNbcHJvcHNUb0NoZWNrW2ldXSAmJiBjaGFuZ2VzW3Byb3BzVG9DaGVja1tpXV0uY3VycmVudFZhbHVlKVxyXG5cclxuICAgIGlmICh0b1JlR3JhcGhpY2F0ZSlcclxuICAgICAgdGhpcy5yZWxvYWRDaGFydCgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRnVuemlvbmUgY2hlIGVmZmV0dHVhIHVuIGNhbWJpbyBkaSBwYWdpbmEgcGVyIGkgZ3JhZmljaSBwYWdpbmF0aS4gUXVhbG9yYSAqKmRhdGEqKiBmb3NzZSBudWxsbyBzaWduaWZpY2EgY2hlIMOoIGluaXppYXRvIHVuIGNhcmljYW1lbnRvIFxyXG4gICAqIGUgYW5jaGUgbGF0byBhcHBsaWNhdGl2byBpbCBEYXRhUmV0cmlldmUgZG92csOgIGNvbnNpZGVyYXJlIGNoZSBsJ2Fzc2VuemEgZGkgdmFsb3JpIG5vbiDDqCBhbHRybyBjaGUgdW4naW5kaWNhemlvbmUgZGkgaW5pemlvIGNhcmljYW1lbnRvXHJcbiAgICogXHJcbiAgICogSWwgY2FyaWNhbWVudG8gZGkgcXVhbHNpYXNpIHBhZ2luYSBnZW5lcmVyw6AgY29tdW5xdWUgdW5hIHByaW1vIGV2ZW50byBjb24gKipkYXRhKiogbnVsbG8gaW4gbW9kbyBkYSBpbmRpY2FyZSBsJ2luaXppbyBjYXJpY2FtZW50byBlXHJcbiAgICogaW4gc2Vjb25kYSBpc3RhbnphIHVuIGFsdHJvIGV2ZW50byBpbiBjdWkgKipkYXRhKiogc2Fyw6Agc2VtcHJlIHZhbG9yaXp6YXRvLCBvIGNvbiBpbCBEdG8gZGEgdXNhcmUgcGVyIHJlY3VwZXJhcmUgaSBkYXRpLCBvIGNvbiBpIGRhdGlcclxuICAgKiB2ZXJpIGUgcHJvcHJpIGdpw6AgcHJlc2VudGkgbmVsICoqRGF0YUFycmF5KipcclxuICAgKiBcclxuICAgKiBJIGNhbGxiYWNrICoqb25Mb2FkU3RhcnQqKiBlICoqb25Mb2FkRW5kKiogdmVuZ29ubyBzZW1wcmUgY2hpYW1hdGlcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge3sgZGF0YTogTGluZUNoYXJ0RGF0YSB8IFBpZUNoYXJ0RGF0YSB8IFZlcnRpY2FsMkRDaGFydERhdGEgfCBWZXJ0aWNhbENoYXJ0RGF0YSB8IGFueSwgaW5kZXg6IG51bWJlciB9fSBuZCBJbmRpY2UgZGVsIGNhcmljYW1lbnRvIGRhdGksIGNvbiBldmVudHVhbG1lbnRlIGdpw6AgaSBkYXRpIHNlIGRpc3BvbmliaWxpXHJcbiAgICovXHJcbiAgcHVibGljIGNoYW5nZVBhZ2UobmQ6IHsgZGF0YTogTGluZUNoYXJ0RGF0YSB8IFBpZUNoYXJ0RGF0YSB8IFZlcnRpY2FsMkRDaGFydERhdGEgfCBWZXJ0aWNhbENoYXJ0RGF0YSB8IGFueSwgaW5kZXg6IG51bWJlciB9KSB7XHJcbiAgICBpZiAoIW5kLmRhdGEpIHtcclxuICAgICAgdGhpcy5sb2FkaW5nQ2hhcnQgPSB0cnVlO1xyXG4gICAgICAvLyBTZXJ2ZSBwZXIgaW5mb3JtYXJlIGwnYXBwbGljYXRpdm8gaW4gbGlzdGVuaW5nIHN1bGwnaW5kaWNlIGF0dHVhbG1lbnRlIGluIHZpc3VhbGl6emF6aW9uZS4gXHJcbiAgICAgIC8vIExhIG1hbmNhbnphIGRpIGRhdGkgaW5kaWNhIGNoZSBub24gZGV2b25vIGVzc2VyZSBlZmZldHR1YXRlIHJpY2VyY2hlIHBlciBvcmFcclxuICAgICAgaWYgKHRoaXMuRGF0YVJldHJpZXZlKVxyXG4gICAgICAgIHRoaXMuRGF0YVJldHJpZXZlKG51bGwsIG5kLmluZGV4KVxyXG4gICAgICB0aGlzLm9uTG9hZFN0YXJ0LmVtaXQoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLkRhdGFSZXRyaWV2ZSlcclxuICAgICAgdGhpcy5EYXRhUmV0cmlldmUobmQuZGF0YSwgbmQuaW5kZXgpLnRoZW4odCA9PiB7IHRoaXMuY2hhbmdlUGFnZURhdGFSZWNlaXZlZCh0KTsgfSk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuY2hhbmdlUGFnZURhdGFSZWNlaXZlZChuZC5kYXRhKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFsIHRlcm1pbmUgZGVsIGNhcmljYW1lbnRvIGRlaSBkYXRpIGRpIHVuYSBwYWdpbmEgcXVlc3RvIG1ldG9kbyB2aWVuZSBjaGlhbWF0byBwZXIgcmlncmFmaWNhcmUgbGEgc2l0dWF6aW9uZSBjb24gaSBudW92aSBkYXRpXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtMaW5lQ2hhcnREYXRhIHwgUGllQ2hhcnREYXRhIHwgVmVydGljYWwyRENoYXJ0RGF0YSB8IFZlcnRpY2FsQ2hhcnREYXRhIHwgYW55fSBkYXRhIERhdGkgZGVsIGdyYWZpY29cclxuICAgKi9cclxuICBwcml2YXRlIGNoYW5nZVBhZ2VEYXRhUmVjZWl2ZWQoZGF0YTogTGluZUNoYXJ0RGF0YSB8IFBpZUNoYXJ0RGF0YSB8IFZlcnRpY2FsMkRDaGFydERhdGEgfCBWZXJ0aWNhbENoYXJ0RGF0YSB8IGFueSkge1xyXG4gICAgdGhpcy5sb2FkaW5nQ2hhcnQgPSBmYWxzZTtcclxuICAgIHRoaXMub25Mb2FkRW5kLmVtaXQoKTtcclxuICAgIGxldCBmaXJzdEJpbmQgPSAhdGhpcy5EYXRhO1xyXG4gICAgdGhpcy5EYXRhID0gZGF0YTtcclxuXHJcbiAgICBpZiAoIWZpcnN0QmluZClcclxuICAgICAgdGhpcy5yZWxvYWRDaGFydCgpO1xyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLmRpc3BhdGNoTG9hZENoYXJ0KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBSaWNhcmljYSBpbCBncmFmaWNvIGRpc3RydWdnZW5kbyBpbCB2ZWNjaGlvIGUgcmljcmVhbmRvIGlsIG51b3ZvXHJcbiAgICogXHJcbiAgICogTGUgY2hpYW1hdGUgYSBxdWVzdG8gbWV0b2RvIHBvc3Nvbm8gZXNzZXJlIHRyYXNmb3JtYXRlIGluIGNoaWFtYXRlIGFsIG1ldG9kbyAqKmdyYXBoaWNhdGUqKiBkZWxsYSBTZXJ2aWNlLCBzZSBzb2xvIHF1ZWwgbWV0b2RvIGZvc3NlIGFiYmFzdGFuemEgaW50ZWxsaWdlbnRlIHBlciBjYXBpcmVcclxuICAgKiBsZSBkaWZmZXJlbnplIGZyYSBpbCBncmFmaWNvIGNvbSdlcmEgcHJpbWEgZSBjb21lIGRldmUgZGl2ZW50YXJlLCBpbiBtb2RvIGRhIG5vbiByaWNyZWFybG8gbWEgc2VtcGxpY2VtZW50ZSBtb2RpZmljYXJlIHF1ZWxsbyBjaGUgZ2nDoCDDqCBkaXNlZ25hdG9cclxuICAgKi9cclxuICBwcml2YXRlIHJlbG9hZENoYXJ0KCkge1xyXG4gICAgdGhpcy5icm93c2VyT25seSgoKSA9PiB7IGlmICghdGhpcy5DaGFydC5pc0Rpc3Bvc2VkKCkpIHRoaXMuQ2hhcnQuZGlzcG9zZSgpOyB0aGlzLkRpc3BhdGNoZXIuZGVyZWdpc3RlckdyYXBoKHRoaXMubmFtZSkgfSk7XHJcbiAgICB0aGlzLkRpc3BhdGNoZXIucmVnaXN0ZXIodGhpcy5uYW1lLCAoKSA9PiB7IHJldHVybiB0aGlzLmxvYWRDaGFydCgpOyB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZ1bnppb25lIGNoZSBzaSBvY2N1cGEgZGkgY2FyaWNhcmUgaSB0ZW1pIG5lY2Vzc2FyaSBwZXIgaWwgZ3JhZmljbyBpbiBvZ2dldHRvLiBQcmltYSBhcHBsaWNhIGlsIHRlbWEsIHBvaSwgc2Ugc2VydmUsIGFwcGxpY2EgbGUgYW5pbWF6aW9uaVxyXG4gICAqL1xyXG4gIHByaXZhdGUgc2V0dXBBbUNoYXJ0c1RoZW1lcygpIHtcclxuICAgIHJldHVybiBQcm9taXNlLmFsbChbXHJcbiAgICAgIHRoaXMuQ2hhcnRlci5hcHBseVRoZW1lKGFtNGNvcmUsIHRoaXMuVGhlbWUpLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLkFuaW1hdGlvbnMgPyB0aGlzLkNoYXJ0ZXIuYXBwbHlBbmltYXRpb25zKGFtNGNvcmUpIDogdGhpcy5DaGFydGVyLnVuYXBwbHlBbmltYXRpb25zKGFtNGNvcmUpO1xyXG4gICAgICB9KVxyXG4gICAgXSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBsb2cobG9nOiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLmxvZ3MpXHJcbiAgICAgIGNvbnNvbGUubG9nKFwiQGVzZmFlbnphL2VzLWNoYXJ0czogXCIgKyBsb2cpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGJyb3dzZXJPbmx5KGY6ICgpID0+IHZvaWQpIHtcclxuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XHJcbiAgICAgIHRoaXMuem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgICAgZigpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbn0iXX0=
@@ -70,7 +70,7 @@ PageChartSelector.decorators = [
70
70
  selector: "chart-pager",
71
71
  template: "<div *ngIf=\"(Items || Dtos) && (Items || Dtos).length > 0\" class=\"pcs-no-selection\">\r\n <div class=\"pcs-button pcs-backward\">\r\n <svg class=\"pcs-svg-header\">\r\n <g class=\"pcs-svg-button-container\" role=\"button\" (click)=\"currentpage != 1 && Previous(); $event.stopPropagation(); $event.preventDefault();\">\r\n <!--Pulsante e freccettina all'interno-->\r\n <g class=\"pcs-svg-button\" [style.cursor]=\"currentpage == 1 ? 'not-allowed' : 'pointer'\"><path d=\"M3,0 L53.027,0 a3,3 0 0 1 3,3 L56.027,36.817 a3,3 0 0 1 -3,3 L3,39.817 a3,3 0 0 1 -3,-3 L0,3 a3,3 0 0 1 3,-3 Z\"></path></g>\r\n <g class=\"pcs-svg-arrow pcs-svg-arrow-left\"><path d=\"M26,14H10l5.17-6.79A2,2,0,0,0,12,4.79l-7.62,10a2,2,0,0,0,0,2.42l7.62,10a2,2,0,0,0,3.18-2.42L10,18H26a2,2,0,0,0,0-4Z\"></path></g>\r\n </g>\r\n </svg>\r\n </div>\r\n <div class=\"pcs-infos\">\r\n <ng-container *ngIf=\"headerInner_tr\">\r\n <ng-container *ngTemplateOutlet=\"headerInner_tr; context : {$implicit: (Items || Dtos)[currentpage - 1]}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"pcs-button pcs-forward\">\r\n <svg class=\"pcs-svg-header\">\r\n <g class=\"pcs-svg-button-container\" role=\"button\" (click)=\"(Items || Dtos).length != currentpage && Next(); $event.stopPropagation(); $event.preventDefault();\">\r\n <!--Pulsante e freccettina all'interno-->\r\n <g class=\"pcs-svg-button\" [style.cursor]=\"(Items || Dtos).length == currentpage ? 'not-allowed' : 'pointer'\"><path d=\"M3,0 L53.027,0 a3,3 0 0 1 3,3 L56.027,36.817 a3,3 0 0 1 -3,3 L3,39.817 a3,3 0 0 1 -3,-3 L0,3 a3,3 0 0 1 3,-3 Z\"></path></g>\r\n <g class=\"pcs-svg-arrow pcs-svg-arrow-right\"><path d=\"M26,14H10l5.17-6.79A2,2,0,0,0,12,4.79l-7.62,10a2,2,0,0,0,0,2.42l7.62,10a2,2,0,0,0,3.18-2.42L10,18H26a2,2,0,0,0,0-4Z\"></path></g>\r\n </g>\r\n </svg>\r\n </div>\r\n <div style=\"clear: both;\"></div>\r\n</div>",
72
72
  changeDetection: ChangeDetectionStrategy.OnPush,
73
- styles: [".pcs-button{width:60px}.pcs-forward{float:right;text-align:end}.pcs-backward{float:left}.pcs-svg-header{width:57px;height:40px}.pcs-svg-button-container{outline:medium none currentcolor}.pcs-svg-arrow{pointer-events:none;fill:#555}.pcs-svg-arrow-right{transform:translate(44px,36px) rotate(180deg)}.pcs-svg-arrow-left{transform:translate(13px,4px)}.pcs-svg-button{fill:#d9d9d9;stroke:#fff;fill-opacity:1;stroke-opacity:1}.pcs-svg-button:hover{fill:#a3a3a3;cursor:pointer}.pcs-infos{width:calc(100% - 120px);height:44px;float:left}.pcs-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}"]
73
+ styles: [".pcs-button{width:60px}.pcs-forward{float:right;text-align:end}.pcs-backward{float:left}.pcs-svg-header{width:57px;height:40px}.pcs-svg-button-container{outline:currentcolor none medium}.pcs-svg-arrow{pointer-events:none;fill:#555}.pcs-svg-arrow-right{transform:translate(44px,36px) rotate(180deg)}.pcs-svg-arrow-left{transform:translate(13px,4px)}.pcs-svg-button{fill:#d9d9d9;stroke:#fff;fill-opacity:1;stroke-opacity:1}.pcs-svg-button:hover{fill:#a3a3a3;cursor:pointer}.pcs-infos{width:calc(100% - 120px);height:44px;float:left}.pcs-no-selection{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none}\n"]
74
74
  },] }
75
75
  ];
76
76
  PageChartSelector.propDecorators = {
@@ -53,7 +53,7 @@ EsAreaChartComponent.decorators = [
53
53
  selector: 'es-area-chart',
54
54
  template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>",
55
55
  changeDetection: ChangeDetectionStrategy.OnPush,
56
- styles: [".esc-loading-overlay{background:hsla(0,0%,60%,.6);text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}"]
56
+ styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:bold;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"]
57
57
  },] }
58
58
  ];
59
59
  EsAreaChartComponent.ctorParameters = () => [
@@ -72,4 +72,4 @@ EsAreaChartComponent.propDecorators = {
72
72
  Data: [{ type: Input }],
73
73
  DataArray: [{ type: Input }]
74
74
  };
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtYXJlYS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1hcmVhLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRDs7R0FFRztBQU9ILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxrQkFBa0I7SUFZMUQ7O09BRUc7SUFDSCxZQUFZLEVBQWMsRUFBRSxXQUF3QixFQUFFLGVBQWdDLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzNHLFVBQWtCLEVBQ3JCLFFBQWlCLEVBQ1gsY0FBdUIsRUFDM0IsVUFBa0IsRUFDbkIsU0FBaUI7UUFDcEMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFOYixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBT3BILENBQUM7SUFFRDs7T0FFRztJQUNILDRCQUE0QjtRQUMxQixPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsaUJBQWlCOztRQUNmLE9BQTBCLE9BQUMsSUFBSSxDQUFDLFFBQVEsbUNBQUksSUFBSSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxvQkFBb0IsQ0FBQyxjQUFpQztJQUV0RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsY0FBaUM7UUFDMUMsT0FBTyxJQUFJLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLENBQWdCLElBQUksQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDakcsQ0FBQzs7O1lBL0RGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZUFBZTtnQkFDekIsa2tDQUFnRDtnQkFFaEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFyQmdGLFVBQVU7WUFPbEYsV0FBVztZQUFFLGVBQWU7WUFKNUIsV0FBVztZQUg0QixNQUFNO1lBc0NqQixNQUFNLHVCQUF0QyxNQUFNLFNBQUMsV0FBVzswQ0FDbEIsTUFBTSxTQUFDLFFBQVE7MENBQ2YsTUFBTSxTQUFDLGNBQWM7eUNBQ3JCLE1BQU0sU0FBQyxVQUFVO3lDQUNqQixNQUFNLFNBQUMsU0FBUzs7O21CQWZsQixLQUFLO3dCQUtMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBJbmplY3QsIFBMQVRGT1JNX0lELCBOZ1pvbmUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcblxyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciB9IGZyb20gJy4uLy4uL2FkYXB0ZXJzJztcclxuaW1wb3J0IHsgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSwgRVNDX0xPR1MgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IEFyZWFDaGFydFNldHRpbmdzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NldHRpbmdzJztcclxuaW1wb3J0IHsgQXJlYUNoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgQXJlYUNoYXJ0RGF0YSwgUGFnZWRDaGFydERhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvZGF0YSc7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBzcGVjaWZpY28gcGVyIGxhIGdyYWZpY2F6aW9uZSBkaSB1biBncmFmaWNvIGFkIEFyZWFcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZXMtYXJlYS1jaGFydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuLi9iYXNlL2Jhc2UtY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuLi9iYXNlL2Jhc2UtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNBcmVhQ2hhcnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ2hhcnRDb21wb25lbnQge1xyXG5cclxuICAvKipcclxuICAgKiBEYXRpIHNwZWNpZmljaSBwZXIgaWwgZ3JhZmljbyBvIGRpIHVuIHRpcG8gdHJhbXV0YWJpbGUgYWwgdGlwbyAqKkFyZWFDaGFydERhdGEqKiBjb2wgc3VwcG9ydG8gZGVsICoqQmFzZUFkYXB0ZXIqKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGE6IEFyZWFDaGFydERhdGEgfCBhbnk7XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RhIGRpIERhdGkgc3BlY2lmaWNpIHBlciB1biBncmFmaWNvIHBhZ2luYXRvIG8gZGkgY3VpIG9nbmkgYmxvY2NvIGRhdGkgw6ggdHJhbXV0YWJpbGUgYWwgdGlwbyAqKkFyZWFDaGFydERhdGEqKiBjb2wgc3VwcG9ydG8gZGVsICoqQmFzZUFkYXB0ZXIqKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGFBcnJheTogUGFnZWRDaGFydERhdGE8QXJlYUNoYXJ0RGF0YT5bXSB8IFBhZ2VkQ2hhcnREYXRhPGFueT5bXTtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLCBDaGFydExvYWRlcjogQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlcjogQ2hhcnREaXNwYXRjaGVyLCBwcml2YXRlIGFkYXB0ZXI6IEJhc2VBZGFwdGVyLCB6b25lOiBOZ1pvbmUsXHJcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwbGF0Zm9ybUlkOiBPYmplY3QsXHJcbiAgICBASW5qZWN0KEVTQ19MT0dTKSBFU0NfTE9HUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0FOSU1BVElPTlMpIEVTQ19BTklNQVRJT05TOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfTE9DQUxFKSBFU0NfTE9DQUxFOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KEVTQ19USEVNRSkgRVNDX1RIRU1FOiBzdHJpbmcpIHtcclxuICAgIHN1cGVyKGVsLCBwbGF0Zm9ybUlkLCB6b25lLCBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyLCBFU0NfTE9HUywgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGxlIHByb3ByaWV0w6Agc3BlY2lmaWNoZSBwZXIgcXVlc3RhIHRpcG9sb2dpYSBkaSBncmFmaWNvIHBlciBjdWkgc2VydmUgcmlncmFmaWNhcmVcclxuICAgKi9cclxuICBnZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbXCJEYXRhXCIsIFwiRGF0YUFycmF5XCJdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3R0aWVuZSBpIFNldHRpbmdzIChFcmVkaXRhdGkgZGFsbGEgY2xhc3NlIGJhc2UsIHF1aW5kaSBkZWwgdGlwbyBnZW5lcmljbyAqKkJhc2VTZXR0aW5ncyoqKSBjYXN0YXRpIGFsIHRpcG8gc3BlY2lmaWNvIHBlciBxdWVzdG8gZ3JhZmljb1xyXG4gICAqIFxyXG4gICAqIEByZXR1cm5zIHtBcmVhQ2hhcnRTZXR0aW5nc30gU2V0dGluZ3MgY2FzdGF0aSBhbCB0aXBvIGdpdXN0b1xyXG4gICAqL1xyXG4gIGdldENhc3RlZFNldHRpbmdzKCk6IEFyZWFDaGFydFNldHRpbmdzIHtcclxuICAgIHJldHVybiA8QXJlYUNoYXJ0U2V0dGluZ3M+KHRoaXMuU2V0dGluZ3MgPz8gbmV3IEFyZWFDaGFydFNldHRpbmdzKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZWdyYSBpIFNldHRpbmdzIGJhc2UgY29uIHR1dHRpIGdsaSBJbnB1dCBzcGVjaWZpY2kgZGkgcXVlc3RvIGdyYWZpY28sIGRhbmRvIHByaW9yaXTDoCBhaSBTZXR0aW5ncyBzZSBkZWZpbml0aVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7QXJlYUNoYXJ0U2V0dGluZ3N9IHNldHRpbmdzQ2FzdGVkIFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBmaWxsU3BlY2lmaWNTZXR0aW5ncyhzZXR0aW5nc0Nhc3RlZDogQXJlYUNoYXJ0U2V0dGluZ3MpOiB2b2lkIHtcclxuXHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFZmZldHR1YSBpbCByZW5kZXJpbmcgZGkgcXVlc3RvIGdyYWZpY28gaW4gYmFzZSBhaSBTZXR0aW5nc1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7QXJlYUNoYXJ0U2V0dGluZ3N9IHNldHRpbmdzQ2FzdGVkIEltcG9zdGF6aW9uaSBkaSBncmFmaWNhemlvbmVcclxuICAgKiBAcmV0dXJucyB7QXJlYUNoYXJ0U2VydmljZX0gTGEgc2VydmljZSB1dGlsaXp6YXRhIHBlciBpbCByZW5kZXJpbmcgbmVsbG8gc3RhdG8gc3ViaXRvIHN1Y2Nlc3Npdm8gYWwgcmVuZGVyaW5nIGVmZmV0dHVhdG9cclxuICAgKi9cclxuICBncmFwaGljYXRlKHNldHRpbmdzQ2FzdGVkOiBBcmVhQ2hhcnRTZXR0aW5ncyk6IGFueSB7XHJcbiAgICByZXR1cm4gbmV3IEFyZWFDaGFydFNlcnZpY2UodGhpcy5hZGFwdGVyKS5ncmFwaGljYXRlKDxBcmVhQ2hhcnREYXRhPnRoaXMuRGF0YSwgc2V0dGluZ3NDYXN0ZWQpO1xyXG4gIH1cclxufSJdfQ==
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtYXJlYS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1hcmVhLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRDs7R0FFRztBQU9ILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxrQkFBa0I7SUFZMUQ7O09BRUc7SUFDSCxZQUFZLEVBQWMsRUFBRSxXQUF3QixFQUFFLGVBQWdDLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzNHLFVBQWtCLEVBQ3JCLFFBQWlCLEVBQ1gsY0FBdUIsRUFDM0IsVUFBa0IsRUFDbkIsU0FBaUI7UUFDcEMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFOYixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBT3BILENBQUM7SUFFRDs7T0FFRztJQUNILDRCQUE0QjtRQUMxQixPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsaUJBQWlCOztRQUNmLE9BQTBCLENBQUMsTUFBQSxJQUFJLENBQUMsUUFBUSxtQ0FBSSxJQUFJLGlCQUFpQixFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG9CQUFvQixDQUFDLGNBQWlDO0lBRXRELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FBQyxjQUFpQztRQUMxQyxPQUFPLElBQUksZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsQ0FBZ0IsSUFBSSxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUNqRyxDQUFDOzs7WUEvREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxlQUFlO2dCQUN6Qixra0NBQWdEO2dCQUVoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQXJCZ0YsVUFBVTtZQU9sRixXQUFXO1lBQUUsZUFBZTtZQUo1QixXQUFXO1lBSDRCLE1BQU07WUFzQ2pCLE1BQU0sdUJBQXRDLE1BQU0sU0FBQyxXQUFXOzBDQUNsQixNQUFNLFNBQUMsUUFBUTswQ0FDZixNQUFNLFNBQUMsY0FBYzt5Q0FDckIsTUFBTSxTQUFDLFVBQVU7eUNBQ2pCLE1BQU0sU0FBQyxTQUFTOzs7bUJBZmxCLEtBQUs7d0JBS0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEluamVjdCwgUExBVEZPUk1fSUQsIE5nWm9uZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0ZVNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuXHJcbmltcG9ydCB7IEJhc2VBZGFwdGVyIH0gZnJvbSAnLi4vLi4vYWRhcHRlcnMnO1xyXG5pbXBvcnQgeyBFU0NfQU5JTUFUSU9OUywgRVNDX0xPQ0FMRSwgRVNDX1RIRU1FLCBFU0NfTE9HUyB9IGZyb20gJy4uLy4uL3Rva2Vucyc7XHJcblxyXG5pbXBvcnQgeyBCYXNlQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlL2Jhc2UtY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlciB9IGZyb20gXCIuLi8uLi9tb2RlbHMvY29yZVwiO1xyXG5cclxuaW1wb3J0IHsgQXJlYUNoYXJ0U2V0dGluZ3MgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2V0dGluZ3MnO1xyXG5pbXBvcnQgeyBBcmVhQ2hhcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBBcmVhQ2hhcnREYXRhLCBQYWdlZENoYXJ0RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXRhJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIHNwZWNpZmljbyBwZXIgbGEgZ3JhZmljYXppb25lIGRpIHVuIGdyYWZpY28gYWQgQXJlYVxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlcy1hcmVhLWNoYXJ0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc0FyZWFDaGFydENvbXBvbmVudCBleHRlbmRzIEJhc2VDaGFydENvbXBvbmVudCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIERhdGkgc3BlY2lmaWNpIHBlciBpbCBncmFmaWNvIG8gZGkgdW4gdGlwbyB0cmFtdXRhYmlsZSBhbCB0aXBvICoqQXJlYUNoYXJ0RGF0YSoqIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YTogQXJlYUNoYXJ0RGF0YSB8IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGkgRGF0aSBzcGVjaWZpY2kgcGVyIHVuIGdyYWZpY28gcGFnaW5hdG8gbyBkaSBjdWkgb2duaSBibG9jY28gZGF0aSDDqCB0cmFtdXRhYmlsZSBhbCB0aXBvICoqQXJlYUNoYXJ0RGF0YSoqIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YUFycmF5OiBQYWdlZENoYXJ0RGF0YTxBcmVhQ2hhcnREYXRhPltdIHwgUGFnZWRDaGFydERhdGE8YW55PltdO1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIENoYXJ0TG9hZGVyOiBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyOiBDaGFydERpc3BhdGNoZXIsIHByaXZhdGUgYWRhcHRlcjogQmFzZUFkYXB0ZXIsIHpvbmU6IE5nWm9uZSxcclxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHBsYXRmb3JtSWQ6IE9iamVjdCxcclxuICAgIEBJbmplY3QoRVNDX0xPR1MpIEVTQ19MT0dTOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfQU5JTUFUSU9OUykgRVNDX0FOSU1BVElPTlM6IGJvb2xlYW4sXHJcbiAgICBASW5qZWN0KEVTQ19MT0NBTEUpIEVTQ19MT0NBTEU6IHN0cmluZyxcclxuICAgIEBJbmplY3QoRVNDX1RIRU1FKSBFU0NfVEhFTUU6IHN0cmluZykge1xyXG4gICAgc3VwZXIoZWwsIHBsYXRmb3JtSWQsIHpvbmUsIENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIsIEVTQ19MT0dTLCBFU0NfQU5JTUFUSU9OUywgRVNDX0xPQ0FMRSwgRVNDX1RIRU1FKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE90dGllbmUgbGUgcHJvcHJpZXTDoCBzcGVjaWZpY2hlIHBlciBxdWVzdGEgdGlwb2xvZ2lhIGRpIGdyYWZpY28gcGVyIGN1aSBzZXJ2ZSByaWdyYWZpY2FyZVxyXG4gICAqL1xyXG4gIGdldFNwZWNpZmljUHJvcGVydGllc1RvQ2hlY2soKTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIFtcIkRhdGFcIiwgXCJEYXRhQXJyYXlcIl07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGkgU2V0dGluZ3MgKEVyZWRpdGF0aSBkYWxsYSBjbGFzc2UgYmFzZSwgcXVpbmRpIGRlbCB0aXBvIGdlbmVyaWNvICoqQmFzZVNldHRpbmdzKiopIGNhc3RhdGkgYWwgdGlwbyBzcGVjaWZpY28gcGVyIHF1ZXN0byBncmFmaWNvXHJcbiAgICogXHJcbiAgICogQHJldHVybnMge0FyZWFDaGFydFNldHRpbmdzfSBTZXR0aW5ncyBjYXN0YXRpIGFsIHRpcG8gZ2l1c3RvXHJcbiAgICovXHJcbiAgZ2V0Q2FzdGVkU2V0dGluZ3MoKTogQXJlYUNoYXJ0U2V0dGluZ3Mge1xyXG4gICAgcmV0dXJuIDxBcmVhQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgQXJlYUNoYXJ0U2V0dGluZ3MoKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbnRlZ3JhIGkgU2V0dGluZ3MgYmFzZSBjb24gdHV0dGkgZ2xpIElucHV0IHNwZWNpZmljaSBkaSBxdWVzdG8gZ3JhZmljbywgZGFuZG8gcHJpb3JpdMOgIGFpIFNldHRpbmdzIHNlIGRlZmluaXRpXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtBcmVhQ2hhcnRTZXR0aW5nc30gc2V0dGluZ3NDYXN0ZWQgU2V0dGluZ3MgY2FzdGF0aSBhbCB0aXBvIGdpdXN0b1xyXG4gICAqL1xyXG4gIGZpbGxTcGVjaWZpY1NldHRpbmdzKHNldHRpbmdzQ2FzdGVkOiBBcmVhQ2hhcnRTZXR0aW5ncyk6IHZvaWQge1xyXG5cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVmZmV0dHVhIGlsIHJlbmRlcmluZyBkaSBxdWVzdG8gZ3JhZmljbyBpbiBiYXNlIGFpIFNldHRpbmdzXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtBcmVhQ2hhcnRTZXR0aW5nc30gc2V0dGluZ3NDYXN0ZWQgSW1wb3N0YXppb25pIGRpIGdyYWZpY2F6aW9uZVxyXG4gICAqIEByZXR1cm5zIHtBcmVhQ2hhcnRTZXJ2aWNlfSBMYSBzZXJ2aWNlIHV0aWxpenphdGEgcGVyIGlsIHJlbmRlcmluZyBuZWxsbyBzdGF0byBzdWJpdG8gc3VjY2Vzc2l2byBhbCByZW5kZXJpbmcgZWZmZXR0dWF0b1xyXG4gICAqL1xyXG4gIGdyYXBoaWNhdGUoc2V0dGluZ3NDYXN0ZWQ6IEFyZWFDaGFydFNldHRpbmdzKTogYW55IHtcclxuICAgIHJldHVybiBuZXcgQXJlYUNoYXJ0U2VydmljZSh0aGlzLmFkYXB0ZXIpLmdyYXBoaWNhdGUoPEFyZWFDaGFydERhdGE+dGhpcy5EYXRhLCBzZXR0aW5nc0Nhc3RlZCk7XHJcbiAgfVxyXG59Il19
@@ -84,7 +84,7 @@ EsChartComponent.decorators = [
84
84
  selector: 'es-chart',
85
85
  template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>",
86
86
  changeDetection: ChangeDetectionStrategy.OnPush,
87
- styles: [".esc-loading-overlay{background:hsla(0,0%,60%,.6);text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}"]
87
+ styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:bold;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"]
88
88
  },] }
89
89
  ];
90
90
  EsChartComponent.ctorParameters = () => [
@@ -105,4 +105,4 @@ EsChartComponent.propDecorators = {
105
105
  Data: [{ type: Input }],
106
106
  DataArray: [{ type: Input }]
107
107
  };
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtY2hhcnRzL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUsdUJBQXVCLEVBQUUsNEJBQTRCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3SyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFLDJCQUEyQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHaEs7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxrQkFBa0I7SUF1QnREOztPQUVHO0lBQ0gsWUFBWSxFQUFjLEVBQUUsV0FBd0IsRUFBRSxlQUFnQyxFQUFVLFdBQXdCLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzdJLFVBQWtCLEVB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TTs7YUFDaEQ7OztZQXZCZ0YsVUFBVTtZQU9sRixXQUFXO1lBQUUsZUFBZTtZQU41QixXQUFXO1lBRVgsV0FBVztZQUg0QixNQUFNO1lBbURqQixNQUFNLHVCQUF0QyxNQUFNLFNBQUMsV0FBVzswQ0FDbEIsTUFBTSxTQUFDLFFBQVE7MENBQ2YsTUFBTSxTQUFDLGNBQWM7eUNBQ3JCLE1BQU0sU0FBQyxVQUFVO3lDQUNqQixNQUFNLFNBQUMsU0FBUzs7O21CQTFCbEIsS0FBSzttQkFLTCxLQUFLO3dCQUtMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBJbmplY3QsIFBMQVRGT1JNX0lELCBOZ1pvbmUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcblxyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciB9IGZyb20gJy4uLy4uL2FkYXB0ZXJzJztcclxuaW1wb3J0IHsgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSwgRVNDX0xPR1MgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IFBpZUNoYXJ0U2V0dGluZ3MsIExpbmVDaGFydFNldHRpbmdzLCBWZXJ0aWNhbENoYXJ0U2V0dGluZ3MsIFZlcnRpY2FsMkRDaGFydFNldHRpbmdzLCBWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzLCBBcmVhQ2hhcnRTZXR0aW5ncyB9IGZyb20gJy4uLy4uL21vZGVscy9zZXR0aW5ncyc7XHJcbmltcG9ydCB7IExpbmVDaGFydFNlcnZpY2UsIFBpZUNoYXJ0U2VydmljZSwgVmVydGljYWxDaGFydFNlcnZpY2UsIFZlcnRpY2FsMkRDaGFydFNlcnZpY2UsIFZlcnRpY2FsU3RhY2tlZENoYXJ0U2VydmljZSwgQXJlYUNoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgUGllQ2hhcnREYXRhLCBMaW5lQ2hhcnREYXRhLCBWZXJ0aWNhbENoYXJ0RGF0YSwgVmVydGljYWwyRENoYXJ0RGF0YSwgVmVydGljYWxTdGFja2VkQ2hhcnREYXRhLCBQYWdlZENoYXJ0RGF0YSwgQXJlYUNoYXJ0RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXRhJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIHNwZWNpZmljbyBwZXIgbGEgZ3JhZmljYXppb25lIGRpIHVuIHF1YWxzaWFzaSB0aXBvIGRpIGdyYWZpY28uXHJcbiAqIFxyXG4gKiBTaSBiYXNhIHN1bCB0aXBvIHNwZWNpZmljYXRvIGRhbGxhIHByb3ByaWV0w6AgKipUeXBlKipcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZXMtY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVzQ2hhcnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ2hhcnRDb21wb25lbnQge1xyXG5cclxuICAvKipcclxuICAgKiBUaXBvbG9naWEgZGkgZ3JhZmljbyBkYSBwcmVzZW50YXJlXHJcbiAgICovXHJcbiAgQElucHV0KCkgVHlwZTogJ3BpZScgfCAnbGluZScgfCAndmVydGljYWwnIHwgJ3ZlcnRpY2FsLTJkJyB8ICd2ZXJ0aWNhbC1zdGFja2VkJyB8ICdhcmVhJztcclxuXHJcbiAgLyoqXHJcbiAgICogRGF0aSBzcGVjaWZpY2kgcGVyIGlsIGdyYWZpY28gbyBkaSB1biB0aXBvIHRyYW11dGFiaWxlIGFsIHRpcG8gZ2l1c3RvIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YTogTGluZUNoYXJ0RGF0YSB8IFBpZUNoYXJ0RGF0YSB8IFZlcnRpY2FsMkRDaGFydERhdGEgfCBWZXJ0aWNhbENoYXJ0RGF0YSB8IFZlcnRpY2FsU3RhY2tlZENoYXJ0RGF0YSB8IEFyZWFDaGFydERhdGEgfCBhbnk7XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RhIGRpIERhdGkgc3BlY2lmaWNpIHBlciB1biBncmFmaWNvIHBhZ2luYXRvIG8gZGkgY3VpIG9nbmkgYmxvY2NvIGRhdGkgw6ggdHJhbXV0YWJpbGUgYWwgdGlwbyBnaXVzdG8gY29sIHN1cHBvcnRvIGRlbCAqKkJhc2VBZGFwdGVyKipcclxuICAgKi9cclxuICBASW5wdXQoKSBEYXRhQXJyYXk6IFBhZ2VkQ2hhcnREYXRhPExpbmVDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8UGllQ2hhcnREYXRhPltdXHJcbiAgICB8IFBhZ2VkQ2hhcnREYXRhPFZlcnRpY2FsMkRDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8VmVydGljYWxDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8VmVydGljYWxTdGFja2VkQ2hhcnREYXRhPltdXHJcbiAgICB8IFBhZ2VkQ2hhcnREYXRhPEFyZWFDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8YW55PltdO1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIENoYXJ0TG9hZGVyOiBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyOiBDaGFydERpc3BhdGNoZXIsIHByaXZhdGUgZGF0ZVNlcnZpY2U6IERhdGVTZXJ2aWNlLCBwcml2YXRlIGFkYXB0ZXI6IEJhc2VBZGFwdGVyLCB6b25lOiBOZ1pvbmUsXHJcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwbGF0Zm9ybUlkOiBPYmplY3QsXHJcbiAgICBASW5qZWN0KEVTQ19MT0dTKSBFU0NfTE9HUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0FOSU1BVElPTlMpIEVTQ19BTklNQVRJT05TOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfTE9DQUxFKSBFU0NfTE9DQUxFOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KEVTQ19USEVNRSkgRVNDX1RIRU1FOiBzdHJpbmcpIHtcclxuICAgIHN1cGVyKGVsLCBwbGF0Zm9ybUlkLCB6b25lLCBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyLCBFU0NfTE9HUywgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGxlIHByb3ByaWV0w6Agc3BlY2lmaWNoZSBwZXIgcXVlc3RhIHRpcG9sb2dpYSBkaSBncmFmaWNvIHBlciBjdWkgc2VydmUgcmlncmFmaWNhcmVcclxuICAgKi9cclxuICBnZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbXCJEYXRhXCIsIFwiVHlwZVwiXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE90dGllbmUgaSBTZXR0aW5ncyAoRXJlZGl0YXRpIGRhbGxhIGNsYXNzZSBiYXNlLCBxdWluZGkgZGVsIHRpcG8gZ2VuZXJpY28gKipCYXNlU2V0dGluZ3MqKikgY2FzdGF0aSBhbCB0aXBvIHNwZWNpZmljbyBwZXIgcXVlc3RvIGdyYWZpY29cclxuICAgKiBcclxuICAgKiBAcmV0dXJucyB7UGllQ2hhcnRTZXR0aW5ncyB8IEFyZWFDaGFydFNldHRpbmdzIHwgTGluZUNoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbENoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsU3RhY2tlZENoYXJ0U2V0dGluZ3N9IFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBnZXRDYXN0ZWRTZXR0aW5ncygpIHtcclxuICAgIHN3aXRjaCAodGhpcy5UeXBlKSB7XHJcbiAgICAgIGNhc2UgJ3BpZSc6XHJcbiAgICAgICAgcmV0dXJuIDxQaWVDaGFydFNldHRpbmdzPih0aGlzLlNldHRpbmdzID8/IG5ldyBQaWVDaGFydFNldHRpbmdzKCkpO1xyXG4gICAgICBjYXNlICdhcmVhJzpcclxuICAgICAgICByZXR1cm4gPEFyZWFDaGFydFNldHRpbmdzPih0aGlzLlNldHRpbmdzID8/IG5ldyBBcmVhQ2hhcnRTZXR0aW5ncygpKTtcclxuICAgICAgY2FzZSAnbGluZSc6XHJcbiAgICAgICAgcmV0dXJuIDxMaW5lQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgTGluZUNoYXJ0U2V0dGluZ3MoKSk7XHJcbiAgICAgIGNhc2UgJ3ZlcnRpY2FsJzpcclxuICAgICAgICByZXR1cm4gPFZlcnRpY2FsQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgVmVydGljYWxDaGFydFNldHRpbmdzKCkpO1xyXG4gICAgICBjYXNlICd2ZXJ0aWNhbC0yZCc6XHJcbiAgICAgICAgcmV0dXJuIDxWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgVmVydGljYWwyRENoYXJ0U2V0dGluZ3MoKSk7XHJcbiAgICAgIGNhc2UgJ3ZlcnRpY2FsLXN0YWNrZWQnOlxyXG4gICAgICAgIHJldHVybiA8VmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgVmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5ncygpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEludGVncmEgaSBTZXR0aW5ncyBiYXNlIGNvbiB0dXR0aSBnbGkgSW5wdXQgc3BlY2lmaWNpIGRpIHF1ZXN0byBncmFmaWNvLCBkYW5kbyBwcmlvcml0w6AgYWkgU2V0dGluZ3Mgc2UgZGVmaW5pdGlcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge1BpZUNoYXJ0U2V0dGluZ3MgfCBBcmVhQ2hhcnRTZXR0aW5ncyB8IExpbmVDaGFydFNldHRpbmdzIHwgVmVydGljYWxDaGFydFNldHRpbmdzIHwgVmVydGljYWwyRENoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzfSBzZXR0aW5nc0Nhc3RlZCBTZXR0aW5ncyBjYXN0YXRpIGFsIHRpcG8gZ2l1c3RvXHJcbiAgICovXHJcbiAgZmlsbFNwZWNpZmljU2V0dGluZ3Moc2V0dGluZ3NDYXN0ZWQ6IFBpZUNoYXJ0U2V0dGluZ3MgfCBBcmVhQ2hhcnRTZXR0aW5ncyB8IExpbmVDaGFydFNldHRpbmdzIHwgVmVydGljYWxDaGFydFNldHRpbmdzIHwgVmVydGljYWwyRENoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzKTogdm9pZCB7XHJcbiAgICAvLyBOb3BlLiBTZSBzaSB1c2EgbCdlcy1jaGFydCBzaSBkYW5ubyBpIHNldHRpbmdzIGNvbiBsJ29nZ2V0dG9cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVmZmV0dHVhIGlsIHJlbmRlcmluZyBkaSBxdWVzdG8gZ3JhZmljbyBpbiBiYXNlIGFpIFNldHRpbmdzXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtQaWVDaGFydFNldHRpbmdzIHwgQXJlYUNoYXJ0U2V0dGluZ3MgfCBMaW5lQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsMkRDaGFydFNldHRpbmdzIHwgVmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5nc30gc2V0dGluZ3NDYXN0ZWQgSW1wb3N0YXppb25pIGRpIGdyYWZpY2F6aW9uZVxyXG4gICAqIEByZXR1cm5zIHtQaWVDaGFydFNlcnZpY2UgfCBBcmVhQ2hhcnRTZXJ2aWNlIHwgTGluZUNoYXJ0U2VydmljZSB8IFZlcnRpY2FsQ2hhcnRTZXJ2aWNlIHwgVmVydGljYWwyRENoYXJ0U2VydmljZSB8IFZlcnRpY2FsU3RhY2tlZENoYXJ0U2VydmljZX0gTGEgc2VydmljZSB1dGlsaXp6YXRhIHBlciBpbCByZW5kZXJpbmcgbmVsbG8gc3RhdG8gc3ViaXRvIHN1Y2Nlc3Npdm8gYWwgcmVuZGVyaW5nIGVmZmV0dHVhdG9cclxuICAgKi9cclxuICBncmFwaGljYXRlKHNldHRpbmdzOiBQaWVDaGFydFNldHRpbmdzIHwgQXJlYUNoYXJ0U2V0dGluZ3MgfCBMaW5lQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsMkRDaGFydFNldHRpbmdzIHwgVmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5ncyk6IGFueSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuVHlwZSkge1xyXG4gICAgICBjYXNlICdwaWUnOlxyXG4gICAgICAgIHJldHVybiBuZXcgUGllQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlcikuZ3JhcGhpY2F0ZSg8UGllQ2hhcnREYXRhPnRoaXMuRGF0YSwgPFBpZUNoYXJ0U2V0dGluZ3M+c2V0dGluZ3MpO1xyXG4gICAgICBjYXNlICdhcmVhJzpcclxuICAgICAgICByZXR1cm4gbmV3IEFyZWFDaGFydFNlcnZpY2UodGhpcy5hZGFwdGVyKS5ncmFwaGljYXRlKDxBcmVhQ2hhcnREYXRhPnRoaXMuRGF0YSwgPEFyZWFDaGFydFNldHRpbmdzPnNldHRpbmdzKTtcclxuICAgICAgY2FzZSAnbGluZSc6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBMaW5lQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlciwgdGhpcy5kYXRlU2VydmljZSkuZ3JhcGhpY2F0ZSg8TGluZUNoYXJ0RGF0YT50aGlzLkRhdGEsIDxMaW5lQ2hhcnRTZXR0aW5ncz5zZXR0aW5ncyk7XHJcbiAgICAgIGNhc2UgJ3ZlcnRpY2FsJzpcclxuICAgICAgICByZXR1cm4gbmV3IFZlcnRpY2FsQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlcikuZ3JhcGhpY2F0ZSg8VmVydGljYWxDaGFydERhdGE+dGhpcy5EYXRhLCA8VmVydGljYWxDaGFydFNldHRpbmdzPnNldHRpbmdzKTtcclxuICAgICAgY2FzZSAndmVydGljYWwtMmQnOlxyXG4gICAgICAgIHJldHVybiBuZXcgVmVydGljYWwyRENoYXJ0U2VydmljZSh0aGlzLmFkYXB0ZXIpLmdyYXBoaWNhdGUoPFZlcnRpY2FsMkRDaGFydERhdGE+dGhpcy5EYXRhLCA8VmVydGljYWwyRENoYXJ0U2V0dGluZ3M+c2V0dGluZ3MpO1xyXG4gICAgICBjYXNlICd2ZXJ0aWNhbC1zdGFja2VkJzpcclxuICAgICAgICByZXR1cm4gbmV3IFZlcnRpY2FsU3RhY2tlZENoYXJ0U2VydmljZSh0aGlzLmFkYXB0ZXIpLmdyYXBoaWNhdGUoPFZlcnRpY2FsU3RhY2tlZENoYXJ0RGF0YT50aGlzLkRhdGEsIDxWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzPnNldHRpbmdzKTtcclxuICAgIH1cclxuICB9XHJcbn0iXX0=
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtY2hhcnRzL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUscUJBQXFCLEVBQUUsdUJBQXVCLEVBQUUsNEJBQTRCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3SyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLG9CQUFvQixFQUFFLHNCQUFzQixFQUFFLDJCQUEyQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHaEs7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxrQkFBa0I7SUF1QnREOztPQUVHO0lBQ0gsWUFBWSxFQUFjLEVBQUUsV0FBd0IsRUFBRSxlQUFnQyxFQUFVLFdBQXdCLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzdJLFVBQWtCLEVB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QUVoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQXZCZ0YsVUFBVTtZQU9sRixXQUFXO1lBQUUsZUFBZTtZQU41QixXQUFXO1lBRVgsV0FBVztZQUg0QixNQUFNO1lBbURqQixNQUFNLHVCQUF0QyxNQUFNLFNBQUMsV0FBVzswQ0FDbEIsTUFBTSxTQUFDLFFBQVE7MENBQ2YsTUFBTSxTQUFDLGNBQWM7eUNBQ3JCLE1BQU0sU0FBQyxVQUFVO3lDQUNqQixNQUFNLFNBQUMsU0FBUzs7O21CQTFCbEIsS0FBSzttQkFLTCxLQUFLO3dCQUtMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBJbmplY3QsIFBMQVRGT1JNX0lELCBOZ1pvbmUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERhdGVTZXJ2aWNlIH0gZnJvbSBcIkBlc2ZhZW56YS9leHRlbnNpb25zXCI7XHJcblxyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciB9IGZyb20gJy4uLy4uL2FkYXB0ZXJzJztcclxuaW1wb3J0IHsgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSwgRVNDX0xPR1MgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IFBpZUNoYXJ0U2V0dGluZ3MsIExpbmVDaGFydFNldHRpbmdzLCBWZXJ0aWNhbENoYXJ0U2V0dGluZ3MsIFZlcnRpY2FsMkRDaGFydFNldHRpbmdzLCBWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzLCBBcmVhQ2hhcnRTZXR0aW5ncyB9IGZyb20gJy4uLy4uL21vZGVscy9zZXR0aW5ncyc7XHJcbmltcG9ydCB7IExpbmVDaGFydFNlcnZpY2UsIFBpZUNoYXJ0U2VydmljZSwgVmVydGljYWxDaGFydFNlcnZpY2UsIFZlcnRpY2FsMkRDaGFydFNlcnZpY2UsIFZlcnRpY2FsU3RhY2tlZENoYXJ0U2VydmljZSwgQXJlYUNoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgUGllQ2hhcnREYXRhLCBMaW5lQ2hhcnREYXRhLCBWZXJ0aWNhbENoYXJ0RGF0YSwgVmVydGljYWwyRENoYXJ0RGF0YSwgVmVydGljYWxTdGFja2VkQ2hhcnREYXRhLCBQYWdlZENoYXJ0RGF0YSwgQXJlYUNoYXJ0RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXRhJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIHNwZWNpZmljbyBwZXIgbGEgZ3JhZmljYXppb25lIGRpIHVuIHF1YWxzaWFzaSB0aXBvIGRpIGdyYWZpY28uXHJcbiAqIFxyXG4gKiBTaSBiYXNhIHN1bCB0aXBvIHNwZWNpZmljYXRvIGRhbGxhIHByb3ByaWV0w6AgKipUeXBlKipcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZXMtY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVzQ2hhcnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ2hhcnRDb21wb25lbnQge1xyXG5cclxuICAvKipcclxuICAgKiBUaXBvbG9naWEgZGkgZ3JhZmljbyBkYSBwcmVzZW50YXJlXHJcbiAgICovXHJcbiAgQElucHV0KCkgVHlwZTogJ3BpZScgfCAnbGluZScgfCAndmVydGljYWwnIHwgJ3ZlcnRpY2FsLTJkJyB8ICd2ZXJ0aWNhbC1zdGFja2VkJyB8ICdhcmVhJztcclxuXHJcbiAgLyoqXHJcbiAgICogRGF0aSBzcGVjaWZpY2kgcGVyIGlsIGdyYWZpY28gbyBkaSB1biB0aXBvIHRyYW11dGFiaWxlIGFsIHRpcG8gZ2l1c3RvIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YTogTGluZUNoYXJ0RGF0YSB8IFBpZUNoYXJ0RGF0YSB8IFZlcnRpY2FsMkRDaGFydERhdGEgfCBWZXJ0aWNhbENoYXJ0RGF0YSB8IFZlcnRpY2FsU3RhY2tlZENoYXJ0RGF0YSB8IEFyZWFDaGFydERhdGEgfCBhbnk7XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RhIGRpIERhdGkgc3BlY2lmaWNpIHBlciB1biBncmFmaWNvIHBhZ2luYXRvIG8gZGkgY3VpIG9nbmkgYmxvY2NvIGRhdGkgw6ggdHJhbXV0YWJpbGUgYWwgdGlwbyBnaXVzdG8gY29sIHN1cHBvcnRvIGRlbCAqKkJhc2VBZGFwdGVyKipcclxuICAgKi9cclxuICBASW5wdXQoKSBEYXRhQXJyYXk6IFBhZ2VkQ2hhcnREYXRhPExpbmVDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8UGllQ2hhcnREYXRhPltdXHJcbiAgICB8IFBhZ2VkQ2hhcnREYXRhPFZlcnRpY2FsMkRDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8VmVydGljYWxDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8VmVydGljYWxTdGFja2VkQ2hhcnREYXRhPltdXHJcbiAgICB8IFBhZ2VkQ2hhcnREYXRhPEFyZWFDaGFydERhdGE+W11cclxuICAgIHwgUGFnZWRDaGFydERhdGE8YW55PltdO1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIENoYXJ0TG9hZGVyOiBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyOiBDaGFydERpc3BhdGNoZXIsIHByaXZhdGUgZGF0ZVNlcnZpY2U6IERhdGVTZXJ2aWNlLCBwcml2YXRlIGFkYXB0ZXI6IEJhc2VBZGFwdGVyLCB6b25lOiBOZ1pvbmUsXHJcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwbGF0Zm9ybUlkOiBPYmplY3QsXHJcbiAgICBASW5qZWN0KEVTQ19MT0dTKSBFU0NfTE9HUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0FOSU1BVElPTlMpIEVTQ19BTklNQVRJT05TOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfTE9DQUxFKSBFU0NfTE9DQUxFOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KEVTQ19USEVNRSkgRVNDX1RIRU1FOiBzdHJpbmcpIHtcclxuICAgIHN1cGVyKGVsLCBwbGF0Zm9ybUlkLCB6b25lLCBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyLCBFU0NfTE9HUywgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGxlIHByb3ByaWV0w6Agc3BlY2lmaWNoZSBwZXIgcXVlc3RhIHRpcG9sb2dpYSBkaSBncmFmaWNvIHBlciBjdWkgc2VydmUgcmlncmFmaWNhcmVcclxuICAgKi9cclxuICBnZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbXCJEYXRhXCIsIFwiVHlwZVwiXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE90dGllbmUgaSBTZXR0aW5ncyAoRXJlZGl0YXRpIGRhbGxhIGNsYXNzZSBiYXNlLCBxdWluZGkgZGVsIHRpcG8gZ2VuZXJpY28gKipCYXNlU2V0dGluZ3MqKikgY2FzdGF0aSBhbCB0aXBvIHNwZWNpZmljbyBwZXIgcXVlc3RvIGdyYWZpY29cclxuICAgKiBcclxuICAgKiBAcmV0dXJucyB7UGllQ2hhcnRTZXR0aW5ncyB8IEFyZWFDaGFydFNldHRpbmdzIHwgTGluZUNoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbENoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsU3RhY2tlZENoYXJ0U2V0dGluZ3N9IFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBnZXRDYXN0ZWRTZXR0aW5ncygpIHtcclxuICAgIHN3aXRjaCAodGhpcy5UeXBlKSB7XHJcbiAgICAgIGNhc2UgJ3BpZSc6XHJcbiAgICAgICAgcmV0dXJuIDxQaWVDaGFydFNldHRpbmdzPih0aGlzLlNldHRpbmdzID8/IG5ldyBQaWVDaGFydFNldHRpbmdzKCkpO1xyXG4gICAgICBjYXNlICdhcmVhJzpcclxuICAgICAgICByZXR1cm4gPEFyZWFDaGFydFNldHRpbmdzPih0aGlzLlNldHRpbmdzID8/IG5ldyBBcmVhQ2hhcnRTZXR0aW5ncygpKTtcclxuICAgICAgY2FzZSAnbGluZSc6XHJcbiAgICAgICAgcmV0dXJuIDxMaW5lQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgTGluZUNoYXJ0U2V0dGluZ3MoKSk7XHJcbiAgICAgIGNhc2UgJ3ZlcnRpY2FsJzpcclxuICAgICAgICByZXR1cm4gPFZlcnRpY2FsQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgVmVydGljYWxDaGFydFNldHRpbmdzKCkpO1xyXG4gICAgICBjYXNlICd2ZXJ0aWNhbC0yZCc6XHJcbiAgICAgICAgcmV0dXJuIDxWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgVmVydGljYWwyRENoYXJ0U2V0dGluZ3MoKSk7XHJcbiAgICAgIGNhc2UgJ3ZlcnRpY2FsLXN0YWNrZWQnOlxyXG4gICAgICAgIHJldHVybiA8VmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgVmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5ncygpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEludGVncmEgaSBTZXR0aW5ncyBiYXNlIGNvbiB0dXR0aSBnbGkgSW5wdXQgc3BlY2lmaWNpIGRpIHF1ZXN0byBncmFmaWNvLCBkYW5kbyBwcmlvcml0w6AgYWkgU2V0dGluZ3Mgc2UgZGVmaW5pdGlcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge1BpZUNoYXJ0U2V0dGluZ3MgfCBBcmVhQ2hhcnRTZXR0aW5ncyB8IExpbmVDaGFydFNldHRpbmdzIHwgVmVydGljYWxDaGFydFNldHRpbmdzIHwgVmVydGljYWwyRENoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzfSBzZXR0aW5nc0Nhc3RlZCBTZXR0aW5ncyBjYXN0YXRpIGFsIHRpcG8gZ2l1c3RvXHJcbiAgICovXHJcbiAgZmlsbFNwZWNpZmljU2V0dGluZ3Moc2V0dGluZ3NDYXN0ZWQ6IFBpZUNoYXJ0U2V0dGluZ3MgfCBBcmVhQ2hhcnRTZXR0aW5ncyB8IExpbmVDaGFydFNldHRpbmdzIHwgVmVydGljYWxDaGFydFNldHRpbmdzIHwgVmVydGljYWwyRENoYXJ0U2V0dGluZ3MgfCBWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzKTogdm9pZCB7XHJcbiAgICAvLyBOb3BlLiBTZSBzaSB1c2EgbCdlcy1jaGFydCBzaSBkYW5ubyBpIHNldHRpbmdzIGNvbiBsJ29nZ2V0dG9cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVmZmV0dHVhIGlsIHJlbmRlcmluZyBkaSBxdWVzdG8gZ3JhZmljbyBpbiBiYXNlIGFpIFNldHRpbmdzXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtQaWVDaGFydFNldHRpbmdzIHwgQXJlYUNoYXJ0U2V0dGluZ3MgfCBMaW5lQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsMkRDaGFydFNldHRpbmdzIHwgVmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5nc30gc2V0dGluZ3NDYXN0ZWQgSW1wb3N0YXppb25pIGRpIGdyYWZpY2F6aW9uZVxyXG4gICAqIEByZXR1cm5zIHtQaWVDaGFydFNlcnZpY2UgfCBBcmVhQ2hhcnRTZXJ2aWNlIHwgTGluZUNoYXJ0U2VydmljZSB8IFZlcnRpY2FsQ2hhcnRTZXJ2aWNlIHwgVmVydGljYWwyRENoYXJ0U2VydmljZSB8IFZlcnRpY2FsU3RhY2tlZENoYXJ0U2VydmljZX0gTGEgc2VydmljZSB1dGlsaXp6YXRhIHBlciBpbCByZW5kZXJpbmcgbmVsbG8gc3RhdG8gc3ViaXRvIHN1Y2Nlc3Npdm8gYWwgcmVuZGVyaW5nIGVmZmV0dHVhdG9cclxuICAgKi9cclxuICBncmFwaGljYXRlKHNldHRpbmdzOiBQaWVDaGFydFNldHRpbmdzIHwgQXJlYUNoYXJ0U2V0dGluZ3MgfCBMaW5lQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsQ2hhcnRTZXR0aW5ncyB8IFZlcnRpY2FsMkRDaGFydFNldHRpbmdzIHwgVmVydGljYWxTdGFja2VkQ2hhcnRTZXR0aW5ncyk6IGFueSB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuVHlwZSkge1xyXG4gICAgICBjYXNlICdwaWUnOlxyXG4gICAgICAgIHJldHVybiBuZXcgUGllQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlcikuZ3JhcGhpY2F0ZSg8UGllQ2hhcnREYXRhPnRoaXMuRGF0YSwgPFBpZUNoYXJ0U2V0dGluZ3M+c2V0dGluZ3MpO1xyXG4gICAgICBjYXNlICdhcmVhJzpcclxuICAgICAgICByZXR1cm4gbmV3IEFyZWFDaGFydFNlcnZpY2UodGhpcy5hZGFwdGVyKS5ncmFwaGljYXRlKDxBcmVhQ2hhcnREYXRhPnRoaXMuRGF0YSwgPEFyZWFDaGFydFNldHRpbmdzPnNldHRpbmdzKTtcclxuICAgICAgY2FzZSAnbGluZSc6XHJcbiAgICAgICAgcmV0dXJuIG5ldyBMaW5lQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlciwgdGhpcy5kYXRlU2VydmljZSkuZ3JhcGhpY2F0ZSg8TGluZUNoYXJ0RGF0YT50aGlzLkRhdGEsIDxMaW5lQ2hhcnRTZXR0aW5ncz5zZXR0aW5ncyk7XHJcbiAgICAgIGNhc2UgJ3ZlcnRpY2FsJzpcclxuICAgICAgICByZXR1cm4gbmV3IFZlcnRpY2FsQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlcikuZ3JhcGhpY2F0ZSg8VmVydGljYWxDaGFydERhdGE+dGhpcy5EYXRhLCA8VmVydGljYWxDaGFydFNldHRpbmdzPnNldHRpbmdzKTtcclxuICAgICAgY2FzZSAndmVydGljYWwtMmQnOlxyXG4gICAgICAgIHJldHVybiBuZXcgVmVydGljYWwyRENoYXJ0U2VydmljZSh0aGlzLmFkYXB0ZXIpLmdyYXBoaWNhdGUoPFZlcnRpY2FsMkRDaGFydERhdGE+dGhpcy5EYXRhLCA8VmVydGljYWwyRENoYXJ0U2V0dGluZ3M+c2V0dGluZ3MpO1xyXG4gICAgICBjYXNlICd2ZXJ0aWNhbC1zdGFja2VkJzpcclxuICAgICAgICByZXR1cm4gbmV3IFZlcnRpY2FsU3RhY2tlZENoYXJ0U2VydmljZSh0aGlzLmFkYXB0ZXIpLmdyYXBoaWNhdGUoPFZlcnRpY2FsU3RhY2tlZENoYXJ0RGF0YT50aGlzLkRhdGEsIDxWZXJ0aWNhbFN0YWNrZWRDaGFydFNldHRpbmdzPnNldHRpbmdzKTtcclxuICAgIH1cclxuICB9XHJcbn0iXX0=
@@ -65,7 +65,7 @@ EsLineChartComponent.decorators = [
65
65
  selector: 'es-line-chart',
66
66
  template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>",
67
67
  changeDetection: ChangeDetectionStrategy.OnPush,
68
- styles: [".esc-loading-overlay{background:hsla(0,0%,60%,.6);text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}"]
68
+ styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:bold;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"]
69
69
  },] }
70
70
  ];
71
71
  EsLineChartComponent.ctorParameters = () => [
@@ -95,4 +95,4 @@ EsLineChartComponent.propDecorators = {
95
95
  Max: [{ type: Input }],
96
96
  Fill: [{ type: Input }]
97
97
  };
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtbGluZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1saW5lLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbEQ7O0dBRUc7QUFPSCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsa0JBQWtCO0lBMkUxRDs7T0FFRztJQUNILFlBQVksRUFBYyxFQUFFLFdBQXdCLEVBQUUsZUFBZ0MsRUFBVSxPQUFvQixFQUFVLFdBQXdCLEVBQUUsSUFBWSxFQUM3SSxVQUFrQixFQUNyQixRQUFpQixFQUNYLGNBQXVCLEVBQzNCLFVBQWtCLEVBQ25CLFNBQWlCO1FBQ3BDLEtBQUssQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFF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UUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLGtrQ0FBZ0Q7Z0JBRWhELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7O1lBckJnRixVQUFVO1lBT2xGLFdBQVc7WUFBRSxlQUFlO1lBSjVCLFdBQVc7WUFGWCxXQUFXO1lBRDRCLE1BQU07WUFxR2pCLE1BQU0sdUJBQXRDLE1BQU0sU0FBQyxXQUFXOzBDQUNsQixNQUFNLFNBQUMsUUFBUTswQ0FDZixNQUFNLFNBQUMsY0FBYzt5Q0FDckIsTUFBTSxTQUFDLFVBQVU7eUNBQ2pCLE1BQU0sU0FBQyxTQUFTOzs7bUJBOUVsQixLQUFLO3dCQUtMLEtBQUs7bUJBS0wsS0FBSztrQ0FRTCxLQUFLO29DQUtMLEtBQUs7eUJBS0wsS0FBSzt3QkFVTCxLQUFLOzRCQU9MLEtBQUs7NEJBUUwsS0FBSztrQkFLTCxLQUFLO2tCQUtMLEtBQUs7bUJBS0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEluamVjdCwgUExBVEZPUk1fSUQsIE5nWm9uZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGF0ZVNlcnZpY2UgfSBmcm9tIFwiQGVzZmFlbnphL2V4dGVuc2lvbnNcIjtcclxuXHJcbmltcG9ydCB7IEJhc2VBZGFwdGVyIH0gZnJvbSAnLi4vLi4vYWRhcHRlcnMnO1xyXG5pbXBvcnQgeyBFU0NfQU5JTUFUSU9OUywgRVNDX0xPQ0FMRSwgRVNDX1RIRU1FLCBFU0NfTE9HUyB9IGZyb20gJy4uLy4uL3Rva2Vucyc7XHJcblxyXG5pbXBvcnQgeyBCYXNlQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlL2Jhc2UtY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlciB9IGZyb20gXCIuLi8uLi9tb2RlbHMvY29yZVwiO1xyXG5cclxuaW1wb3J0IHsgTGluZUNoYXJ0U2V0dGluZ3MgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2V0dGluZ3MnO1xyXG5pbXBvcnQgeyBMaW5lQ2hhcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBMaW5lQ2hhcnREYXRhLCBQYWdlZENoYXJ0RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXRhJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIHNwZWNpZmljbyBwZXIgbGEgZ3JhZmljYXppb25lIGRpIHVuIGdyYWZpY28gYSBMaW5lYSBzdSB1biBhc3NlIHRlbXBvcmFsZVxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlcy1saW5lLWNoYXJ0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc0xpbmVDaGFydENvbXBvbmVudCBleHRlbmRzIEJhc2VDaGFydENvbXBvbmVudCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIERhdGkgc3BlY2lmaWNpIHBlciBpbCBncmFmaWNvIG8gZGkgdW4gdGlwbyB0cmFtdXRhYmlsZSBhbCB0aXBvICoqTGluZUNoYXJ0RGF0YSoqIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YTogTGluZUNoYXJ0RGF0YSB8IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGkgRGF0aSBzcGVjaWZpY2kgcGVyIHVuIGdyYWZpY28gcGFnaW5hdG8gbyBkaSBjdWkgb2duaSBibG9jY28gZGF0aSDDqCB0cmFtdXRhYmlsZSBhbCB0aXBvICoqTGluZUNoYXJ0RGF0YSoqIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YUFycmF5OiBQYWdlZENoYXJ0RGF0YTxMaW5lQ2hhcnREYXRhPltdIHwgUGFnZWRDaGFydERhdGE8YW55PltdO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgbGEgY3VydmEgZGV2ZSBjb2xsZWdhcmUgZGlyZXR0YW1lbnRlIHVuIGRhdGFwb2ludCBhbGwnYWx0cm8gbyBzZSBkZXZlIGZhcmUgZGVnbGkgc3RlcFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIFN0ZXA6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBpbCBudW1lcm8gbWFzc2ltbyBkaSBkYXRhcG9pbnQgdmlzdWFsaXp6YWJpbGUgaW4gdW5hIHNpbmdvbGEgdmlzdGEgZGVsIGdyYWZpY28uIEwnZWNjZWRlbnphIHZpZW5lIHJhZ2dydXBwYXRhIGUgdmVycsOgIG1vc3RyYXRhIHN1bGxvIHpvb20uXHJcbiAgICogXHJcbiAgICogQVRURU5aSU9ORTogVXRpbGl6emFuZG8gaWwgc2lzdGVtYSBkaSBkZWZhdWx0IGRpIHJhZ2dydXBwYW1lbnRvIGRpIGFtLWNoYXJ0cyBzaSByaXNjaGlhIGRpIHRhZ2xpYXJlIHZpYSBwZXp6aSBkYSBzZXJpZSBtb2x0byBvbmR1bGF0ZVxyXG4gICAqIGluIHF1YW50byBpbCBjb21wb3J0YW1lbnRvIGRpIGRlZmF1bHQgw6ggcXVlbGxvIGRpIGVsaW1pbmFyZSBpIGRhdGFwb2ludCBjaGUgbm9uIGNpIHN0YW5ubywgbm9uIGRpIGludGVycG9sYXJsaVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGFHcm91cEJ1Y2tldFNpemU6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogU29nbGlhIHBlciBjb250cm9sbGFyZSBvbHRyZSBjaGUgbnVtZXJvIGRpIGRhdGFwb2ludCBpbCBncmFmaWNvIGRldmUgaW5pemlhcmUgYWQgZWZmZXR0dWFyZSByYWdncnVwcGFtZW50aSBjb25zaWRlcmFuZG8gbCdJbnB1dCAqKkRhdGFHcm91cEJ1Y2tldFNpemUqKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGFHcm91cGluZ1RocmVzaG9sZDogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgbGUgZGltbnNpb25pLCBpbiBwaXhlbCBkZWxsYSBsaW5lYSBkZWwgZ3JhZmljb1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIFN0cm9rZVNpemU6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIHNvbm8gcGVybWVzc2kgZGVpIEdhcCBmcmEgdW4gdmFsb3JlIGUgbCdhbHRyby5cclxuICAgKiBcclxuICAgKiBOb3JtYWxtZW50ZSBxdWFuZG8gY2kgc29ubyBkZWkgYnVjaGkgbCd1bHRpbW8gZGF0YXBvaW50IGRlbCBidWNvIHZpZW5lIGNvbGxlZ2F0byBkaXJldHRhbWVudGUgYWwgcHJpbW8gZGF0YXBvaW50IGRpc3BvbmliaWxlLiBcclxuICAgKiBcclxuICAgKiBJbXBvc3RhbmRvIHF1ZXN0byBJbnB1dCBhIHRydWUgaW52ZWNlLCBwb3N0byBkaSBhdmVyIGFzc2VnbmF0byBsYSB2YXJpYWJpbGUgKippbnRlcnZhbCoqIGRlbGxhIGNsYXNzZSAqKkxpbmVDaGFydERhdGEqKiwgw6ggcG9zc2liaWxlIFxyXG4gICAqIGZhciBhcHBhcmlyZSBpbCBibG9jY28gZGkgZGF0aSBtYW5jYW50aSBjb21lIHVuIGJ1Y28gdmVybyBlIHByb3ByaW8sIHNlbnphIGFsY3VuIGNvbGxlZ2FtZW50byBmcmEgaSBkdWUgZGF0YXBvaW50IGVzdHJlbWlcclxuICAgKi9cclxuICBASW5wdXQoKSBBbGxvd0dhcHM6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIElucHV0IGNoZSBwZXJtZXR0ZSBkaSByaWVsYWJvcmFyZSBpIGRhdGkgZGVsIGdyYWZpY28gcGVyIGdlbmVyYXJlIHVuIHNvbG8gRGF0YXNldFxyXG4gICAqIFxyXG4gICAqIFZpZW5lIHV0aWxpenphdG8gc2VtcGxpY2VtZW50ZSBwZXIgZGFyZSB1biB0b29sdGlwIG1vbHRvIHBpw7kgYmVsbG8vYXZhbnphdG8gc3VsbG8gc2NvcnJpbWVudG9kZWwgY3Vyc29yZSBhbGwnaW50ZXJubyBkZWwgZ3JhZmljb1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIE1lcmdlRGF0YXNldHM6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBzZSBsZSBkYXRlIGNoZSBhcnJpdmFubyBhbGwnYXNzZSBYIGRldm9ubyBlc3NlcmUgY29uc2lkZXJhdGUgXCJJc3RhbnRlIGZpbmFsZVwiIGUgYWdnaXVzdGF0ZSBkaSBjb25zZWd1ZW56YS4gXHJcbiAgICogU2Ugbm9uIMOoIHZhbG9yaXp6YXRhIGxhIHZhcmlhYmlsZSAqKmludGVydmFsKiogZGVsbGEgY2xhc3NlICoqTGluZUNoYXJ0RGF0YSoqIG5vbiBoYSBhbGN1biBlZmZldHRvXHJcbiAgICogXHJcbiAgICogQWQgZXNlbXBpbywgbGEgZGF0YSAxNi8wNy8yMDIxIGNvbiBpbnRlcnZhbGxvIG9yYXJpbyB2ZXJyZWJiZSB0cmFzZm9ybWF0YSBpbiAxNS8wNy8yMDIxIDI0OjAwOjAwIChPdnZpYW1lbnRlIMOoIHV0aWxpenphdG8gc29sbyBsYXRvIHByZXNlbnRhemlvbmUpXHJcbiAgICovXHJcbiAgQElucHV0KCkgRmluYWxJbnN0YW50czogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogR2VzdGlzY2UgaWwgbWluaW1vIGRlbGwnYXNzZSBZXHJcbiAgICovXHJcbiAgQElucHV0KCkgTWluOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEdlc3Rpc2NlIGlsIG1hc3NpbW8gZGVsbCdhc3NlIFlcclxuICAgKi9cclxuICBASW5wdXQoKSBNYXg6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIGVmZmV0dHVhcmUgaWwgRmlsbCBkZWxsYSBzZXJpZSBpbiBtb2RvIGRhIG5vbiB2ZWRlcmUgc29sbyBsYSBsaW5lYSBtYSBwcm9wcmlvIGwnYXJlYSBzb3R0ZXNzYSBjb21wbGV0YW1lbnRlIGNvbG9yYXRhXHJcbiAgICovXHJcbiAgQElucHV0KCkgRmlsbDogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLCBDaGFydExvYWRlcjogQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlcjogQ2hhcnREaXNwYXRjaGVyLCBwcml2YXRlIGFkYXB0ZXI6IEJhc2VBZGFwdGVyLCBwcml2YXRlIGRhdGVTZXJ2aWNlOiBEYXRlU2VydmljZSwgem9uZTogTmdab25lLFxyXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogT2JqZWN0LFxyXG4gICAgQEluamVjdChFU0NfTE9HUykgRVNDX0xPR1M6IGJvb2xlYW4sXHJcbiAgICBASW5qZWN0KEVTQ19BTklNQVRJT05TKSBFU0NfQU5JTUFUSU9OUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0xPQ0FMRSkgRVNDX0xPQ0FMRTogc3RyaW5nLFxyXG4gICAgQEluamVjdChFU0NfVEhFTUUpIEVTQ19USEVNRTogc3RyaW5nKSB7XHJcbiAgICBzdXBlcihlbCwgcGxhdGZvcm1JZCwgem9uZSwgQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlciwgRVNDX0xPR1MsIEVTQ19BTklNQVRJT05TLCBFU0NfTE9DQUxFLCBFU0NfVEhFTUUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3R0aWVuZSBsZSBwcm9wcmlldMOgIHNwZWNpZmljaGUgcGVyIHF1ZXN0YSB0aXBvbG9naWEgZGkgZ3JhZmljbyBwZXIgY3VpIHNlcnZlIHJpZ3JhZmljYXJlXHJcbiAgICovXHJcbiAgZ2V0U3BlY2lmaWNQcm9wZXJ0aWVzVG9DaGVjaygpOiBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gW1wiRGF0YVwiLCBcIkRhdGFBcnJheVwiLCBcIlN0ZXBcIiwgXCJEYXRhR3JvdXBCdWNrZXRTaXplXCIsIFwiRGF0YUdyb3VwaW5nVGhyZXNob2xkXCIsIFwiU3Ryb2tlU2l6ZVwiLCBcIkFsbG93R2Fwc1wiLCBcIk1lcmdlRGF0YXNldHNcIiwgXCJGaW5hbEluc3RhbnRzXCIsIFwiRmlsbFwiLCBcIk1pblwiLCBcIk1heFwiXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE90dGllbmUgaSBTZXR0aW5ncyAoRXJlZGl0YXRpIGRhbGxhIGNsYXNzZSBiYXNlLCBxdWluZGkgZGVsIHRpcG8gZ2VuZXJpY28gKipCYXNlU2V0dGluZ3MqKikgY2FzdGF0aSBhbCB0aXBvIHNwZWNpZmljbyBwZXIgcXVlc3RvIGdyYWZpY29cclxuICAgKiBcclxuICAgKiBAcmV0dXJucyB7TGluZUNoYXJ0U2V0dGluZ3N9IFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBnZXRDYXN0ZWRTZXR0aW5ncygpOiBMaW5lQ2hhcnRTZXR0aW5ncyB7XHJcbiAgICByZXR1cm4gPExpbmVDaGFydFNldHRpbmdzPih0aGlzLlNldHRpbmdzID8/IG5ldyBMaW5lQ2hhcnRTZXR0aW5ncygpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEludGVncmEgaSBTZXR0aW5ncyBiYXNlIGNvbiB0dXR0aSBnbGkgSW5wdXQgc3BlY2lmaWNpIGRpIHF1ZXN0byBncmFmaWNvLCBkYW5kbyBwcmlvcml0w6AgYWkgU2V0dGluZ3Mgc2UgZGVmaW5pdGlcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge0xpbmVDaGFydFNldHRpbmdzfSBzZXR0aW5nc0Nhc3RlZCBTZXR0aW5ncyBjYXN0YXRpIGFsIHRpcG8gZ2l1c3RvXHJcbiAgICovXHJcbiAgZmlsbFNwZWNpZmljU2V0dGluZ3Moc2V0dGluZ3NDYXN0ZWQ6IExpbmVDaGFydFNldHRpbmdzKTogdm9pZCB7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5TdGVwID0gc2V0dGluZ3NDYXN0ZWQuU3RlcCAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuU3RlcCA6IHRoaXMuU3RlcDtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkRhdGFHcm91cEJ1Y2tldFNpemUgPSBzZXR0aW5nc0Nhc3RlZC5EYXRhR3JvdXBCdWNrZXRTaXplICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5EYXRhR3JvdXBCdWNrZXRTaXplIDogdGhpcy5EYXRhR3JvdXBCdWNrZXRTaXplO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuU3Ryb2tlU2l6ZSA9IHNldHRpbmdzQ2FzdGVkLlN0cm9rZVNpemUgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLlN0cm9rZVNpemUgOiB0aGlzLlN0cm9rZVNpemU7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5EYXRhR3JvdXBpbmdUaHJlc2hvbGQgPSBzZXR0aW5nc0Nhc3RlZC5EYXRhR3JvdXBpbmdUaHJlc2hvbGQgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkRhdGFHcm91cGluZ1RocmVzaG9sZCA6IHRoaXMuRGF0YUdyb3VwaW5nVGhyZXNob2xkO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuQWxsb3dHYXBzID0gc2V0dGluZ3NDYXN0ZWQuQWxsb3dHYXBzICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5BbGxvd0dhcHMgOiB0aGlzLkFsbG93R2FwcztcclxuICAgIHNldHRpbmdzQ2FzdGVkLk1lcmdlRGF0YXNldHMgPSBzZXR0aW5nc0Nhc3RlZC5NZXJnZURhdGFzZXRzICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5NZXJnZURhdGFzZXRzIDogdGhpcy5NZXJnZURhdGFzZXRzO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuRmluYWxJbnN0YW50cyA9IHNldHRpbmdzQ2FzdGVkLkZpbmFsSW5zdGFudHMgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkZpbmFsSW5zdGFudHMgOiB0aGlzLkZpbmFsSW5zdGFudHM7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5NaW4gPSBzZXR0aW5nc0Nhc3RlZC5NaW4gIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLk1pbiA6IHRoaXMuTWluO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTWF4ID0gc2V0dGluZ3NDYXN0ZWQuTWF4ICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5NYXggOiB0aGlzLk1heDtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkZpbGwgPSBzZXR0aW5nc0Nhc3RlZC5GaWxsICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5GaWxsIDogdGhpcy5GaWxsO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRWZmZXR0dWEgaWwgcmVuZGVyaW5nIGRpIHF1ZXN0byBncmFmaWNvIGluIGJhc2UgYWkgU2V0dGluZ3NcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge0xpbmVDaGFydFNldHRpbmdzfSBzZXR0aW5nc0Nhc3RlZCBJbXBvc3RhemlvbmkgZGkgZ3JhZmljYXppb25lXHJcbiAgICogQHJldHVybnMge0xpbmVDaGFydFNlcnZpY2V9IExhIHNlcnZpY2UgdXRpbGl6emF0YSBwZXIgaWwgcmVuZGVyaW5nIG5lbGxvIHN0YXRvIHN1Yml0byBzdWNjZXNzaXZvIGFsIHJlbmRlcmluZyBlZmZldHR1YXRvXHJcbiAgICovXHJcbiAgZ3JhcGhpY2F0ZShzZXR0aW5nc0Nhc3RlZDogTGluZUNoYXJ0U2V0dGluZ3MpOiBhbnkge1xyXG4gICAgcmV0dXJuIG5ldyBMaW5lQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlciwgdGhpcy5kYXRlU2VydmljZSkuZ3JhcGhpY2F0ZSg8TGluZUNoYXJ0RGF0YT50aGlzLkRhdGEsIHNldHRpbmdzQ2FzdGVkKTtcclxuICB9XHJcbn0iXX0=
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtbGluZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcy1jaGFydHMvc3JjL2xpYi9jb21wb25lbnRzL3NwZWNpYWxpemF0aW9ucy9lcy1saW5lLWNoYXJ0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSx1QkFBdUIsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHbEQ7O0dBRUc7QUFPSCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsa0JBQWtCO0lBMkUxRDs7T0FFRztJQUNILFlBQVksRUFBYyxFQUFFLFdBQXdCLEVBQUUsZUFBZ0MsRUFBVSxPQUFvQixFQUFVLFdBQXdCLEVBQUUsSUFBWSxFQUM3SSxVQUFrQixFQUNyQixRQUFpQixFQUNYLGNBQXVCLEVBQzNCLFVBQWtCLEVBQ25CLFNBQWlCO1FBQ3BDLEtBQUssQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFF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QkFDVCxRQUFRLEVBQUUsZUFBZTtnQkFDekIsa2tDQUFnRDtnQkFFaEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFyQmdGLFVBQVU7WUFPbEYsV0FBVztZQUFFLGVBQWU7WUFKNUIsV0FBVztZQUZYLFdBQVc7WUFENEIsTUFBTTtZQXFHakIsTUFBTSx1QkFBdEMsTUFBTSxTQUFDLFdBQVc7MENBQ2xCLE1BQU0sU0FBQyxRQUFROzBDQUNmLE1BQU0sU0FBQyxjQUFjO3lDQUNyQixNQUFNLFNBQUMsVUFBVTt5Q0FDakIsTUFBTSxTQUFDLFNBQVM7OzttQkE5RWxCLEtBQUs7d0JBS0wsS0FBSzttQkFLTCxLQUFLO2tDQVFMLEtBQUs7b0NBS0wsS0FBSzt5QkFLTCxLQUFLO3dCQVVMLEtBQUs7NEJBT0wsS0FBSzs0QkFRTCxLQUFLO2tCQUtMLEtBQUs7a0JBS0wsS0FBSzttQkFLTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgSW5qZWN0LCBQTEFURk9STV9JRCwgTmdab25lLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEYXRlU2VydmljZSB9IGZyb20gXCJAZXNmYWVuemEvZXh0ZW5zaW9uc1wiO1xyXG5cclxuaW1wb3J0IHsgQmFzZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9hZGFwdGVycyc7XHJcbmltcG9ydCB7IEVTQ19BTklNQVRJT05TLCBFU0NfTE9DQUxFLCBFU0NfVEhFTUUsIEVTQ19MT0dTIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcclxuXHJcbmltcG9ydCB7IEJhc2VDaGFydENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBMaW5lQ2hhcnRTZXR0aW5ncyB9IGZyb20gJy4uLy4uL21vZGVscy9zZXR0aW5ncyc7XHJcbmltcG9ydCB7IExpbmVDaGFydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IExpbmVDaGFydERhdGEsIFBhZ2VkQ2hhcnREYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RhdGEnO1xyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudGUgc3BlY2lmaWNvIHBlciBsYSBncmFmaWNhemlvbmUgZGkgdW4gZ3JhZmljbyBhIExpbmVhIHN1IHVuIGFzc2UgdGVtcG9yYWxlXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VzLWxpbmUtY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVzTGluZUNoYXJ0Q29tcG9uZW50IGV4dGVuZHMgQmFzZUNoYXJ0Q29tcG9uZW50IHtcclxuXHJcbiAgLyoqXHJcbiAgICogRGF0aSBzcGVjaWZpY2kgcGVyIGlsIGdyYWZpY28gbyBkaSB1biB0aXBvIHRyYW11dGFiaWxlIGFsIHRpcG8gKipMaW5lQ2hhcnREYXRhKiogY29sIHN1cHBvcnRvIGRlbCAqKkJhc2VBZGFwdGVyKipcclxuICAgKi9cclxuICBASW5wdXQoKSBEYXRhOiBMaW5lQ2hhcnREYXRhIHwgYW55O1xyXG5cclxuICAvKipcclxuICAgKiBMaXN0YSBkaSBEYXRpIHNwZWNpZmljaSBwZXIgdW4gZ3JhZmljbyBwYWdpbmF0byBvIGRpIGN1aSBvZ25pIGJsb2NjbyBkYXRpIMOoIHRyYW11dGFiaWxlIGFsIHRpcG8gKipMaW5lQ2hhcnREYXRhKiogY29sIHN1cHBvcnRvIGRlbCAqKkJhc2VBZGFwdGVyKipcclxuICAgKi9cclxuICBASW5wdXQoKSBEYXRhQXJyYXk6IFBhZ2VkQ2hhcnREYXRhPExpbmVDaGFydERhdGE+W10gfCBQYWdlZENoYXJ0RGF0YTxhbnk+W107XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBzZSBsYSBjdXJ2YSBkZXZlIGNvbGxlZ2FyZSBkaXJldHRhbWVudGUgdW4gZGF0YXBvaW50IGFsbCdhbHRybyBvIHNlIGRldmUgZmFyZSBkZWdsaSBzdGVwXHJcbiAgICovXHJcbiAgQElucHV0KCkgU3RlcDogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIGlsIG51bWVybyBtYXNzaW1vIGRpIGRhdGFwb2ludCB2aXN1YWxpenphYmlsZSBpbiB1bmEgc2luZ29sYSB2aXN0YSBkZWwgZ3JhZmljby4gTCdlY2NlZGVuemEgdmllbmUgcmFnZ3J1cHBhdGEgZSB2ZXJyw6AgbW9zdHJhdGEgc3VsbG8gem9vbS5cclxuICAgKiBcclxuICAgKiBBVFRFTlpJT05FOiBVdGlsaXp6YW5kbyBpbCBzaXN0ZW1hIGRpIGRlZmF1bHQgZGkgcmFnZ3J1cHBhbWVudG8gZGkgYW0tY2hhcnRzIHNpIHJpc2NoaWEgZGkgdGFnbGlhcmUgdmlhIHBlenppIGRhIHNlcmllIG1vbHRvIG9uZHVsYXRlXHJcbiAgICogaW4gcXVhbnRvIGlsIGNvbXBvcnRhbWVudG8gZGkgZGVmYXVsdCDDqCBxdWVsbG8gZGkgZWxpbWluYXJlIGkgZGF0YXBvaW50IGNoZSBub24gY2kgc3Rhbm5vLCBub24gZGkgaW50ZXJwb2xhcmxpXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YUdyb3VwQnVja2V0U2l6ZTogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBTb2dsaWEgcGVyIGNvbnRyb2xsYXJlIG9sdHJlIGNoZSBudW1lcm8gZGkgZGF0YXBvaW50IGlsIGdyYWZpY28gZGV2ZSBpbml6aWFyZSBhZCBlZmZldHR1YXJlIHJhZ2dydXBwYW1lbnRpIGNvbnNpZGVyYW5kbyBsJ0lucHV0ICoqRGF0YUdyb3VwQnVja2V0U2l6ZSoqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YUdyb3VwaW5nVGhyZXNob2xkOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBsZSBkaW1uc2lvbmksIGluIHBpeGVsIGRlbGxhIGxpbmVhIGRlbCBncmFmaWNvXHJcbiAgICovXHJcbiAgQElucHV0KCkgU3Ryb2tlU2l6ZTogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2Ugc29ubyBwZXJtZXNzaSBkZWkgR2FwIGZyYSB1biB2YWxvcmUgZSBsJ2FsdHJvLlxyXG4gICAqIFxyXG4gICAqIE5vcm1hbG1lbnRlIHF1YW5kbyBjaSBzb25vIGRlaSBidWNoaSBsJ3VsdGltbyBkYXRhcG9pbnQgZGVsIGJ1Y28gdmllbmUgY29sbGVnYXRvIGRpcmV0dGFtZW50ZSBhbCBwcmltbyBkYXRhcG9pbnQgZGlzcG9uaWJpbGUuIFxyXG4gICAqIFxyXG4gICAqIEltcG9zdGFuZG8gcXVlc3RvIElucHV0IGEgdHJ1ZSBpbnZlY2UsIHBvc3RvIGRpIGF2ZXIgYXNzZWduYXRvIGxhIHZhcmlhYmlsZSAqKmludGVydmFsKiogZGVsbGEgY2xhc3NlICoqTGluZUNoYXJ0RGF0YSoqLCDDqCBwb3NzaWJpbGUgXHJcbiAgICogZmFyIGFwcGFyaXJlIGlsIGJsb2NjbyBkaSBkYXRpIG1hbmNhbnRpIGNvbWUgdW4gYnVjbyB2ZXJvIGUgcHJvcHJpbywgc2VuemEgYWxjdW4gY29sbGVnYW1lbnRvIGZyYSBpIGR1ZSBkYXRhcG9pbnQgZXN0cmVtaVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIEFsbG93R2FwczogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5wdXQgY2hlIHBlcm1ldHRlIGRpIHJpZWxhYm9yYXJlIGkgZGF0aSBkZWwgZ3JhZmljbyBwZXIgZ2VuZXJhcmUgdW4gc29sbyBEYXRhc2V0XHJcbiAgICogXHJcbiAgICogVmllbmUgdXRpbGl6emF0byBzZW1wbGljZW1lbnRlIHBlciBkYXJlIHVuIHRvb2x0aXAgbW9sdG8gcGnDuSBiZWxsby9hdmFuemF0byBzdWxsbyBzY29ycmltZW50b2RlbCBjdXJzb3JlIGFsbCdpbnRlcm5vIGRlbCBncmFmaWNvXHJcbiAgICovXHJcbiAgQElucHV0KCkgTWVyZ2VEYXRhc2V0czogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIGxlIGRhdGUgY2hlIGFycml2YW5vIGFsbCdhc3NlIFggZGV2b25vIGVzc2VyZSBjb25zaWRlcmF0ZSBcIklzdGFudGUgZmluYWxlXCIgZSBhZ2dpdXN0YXRlIGRpIGNvbnNlZ3VlbnphLiBcclxuICAgKiBTZSBub24gw6ggdmFsb3JpenphdGEgbGEgdmFyaWFiaWxlICoqaW50ZXJ2YWwqKiBkZWxsYSBjbGFzc2UgKipMaW5lQ2hhcnREYXRhKiogbm9uIGhhIGFsY3VuIGVmZmV0dG9cclxuICAgKiBcclxuICAgKiBBZCBlc2VtcGlvLCBsYSBkYXRhIDE2LzA3LzIwMjEgY29uIGludGVydmFsbG8gb3JhcmlvIHZlcnJlYmJlIHRyYXNmb3JtYXRhIGluIDE1LzA3LzIwMjEgMjQ6MDA6MDAgKE92dmlhbWVudGUgw6ggdXRpbGl6emF0byBzb2xvIGxhdG8gcHJlc2VudGF6aW9uZSlcclxuICAgKi9cclxuICBASW5wdXQoKSBGaW5hbEluc3RhbnRzOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBHZXN0aXNjZSBpbCBtaW5pbW8gZGVsbCdhc3NlIFlcclxuICAgKi9cclxuICBASW5wdXQoKSBNaW46IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogR2VzdGlzY2UgaWwgbWFzc2ltbyBkZWxsJ2Fzc2UgWVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIE1heDogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgZWZmZXR0dWFyZSBpbCBGaWxsIGRlbGxhIHNlcmllIGluIG1vZG8gZGEgbm9uIHZlZGVyZSBzb2xvIGxhIGxpbmVhIG1hIHByb3ByaW8gbCdhcmVhIHNvdHRlc3NhIGNvbXBsZXRhbWVudGUgY29sb3JhdGFcclxuICAgKi9cclxuICBASW5wdXQoKSBGaWxsOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIENoYXJ0TG9hZGVyOiBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyOiBDaGFydERpc3BhdGNoZXIsIHByaXZhdGUgYWRhcHRlcjogQmFzZUFkYXB0ZXIsIHByaXZhdGUgZGF0ZVNlcnZpY2U6IERhdGVTZXJ2aWNlLCB6b25lOiBOZ1pvbmUsXHJcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwbGF0Zm9ybUlkOiBPYmplY3QsXHJcbiAgICBASW5qZWN0KEVTQ19MT0dTKSBFU0NfTE9HUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0FOSU1BVElPTlMpIEVTQ19BTklNQVRJT05TOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfTE9DQUxFKSBFU0NfTE9DQUxFOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KEVTQ19USEVNRSkgRVNDX1RIRU1FOiBzdHJpbmcpIHtcclxuICAgIHN1cGVyKGVsLCBwbGF0Zm9ybUlkLCB6b25lLCBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyLCBFU0NfTE9HUywgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGxlIHByb3ByaWV0w6Agc3BlY2lmaWNoZSBwZXIgcXVlc3RhIHRpcG9sb2dpYSBkaSBncmFmaWNvIHBlciBjdWkgc2VydmUgcmlncmFmaWNhcmVcclxuICAgKi9cclxuICBnZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbXCJEYXRhXCIsIFwiRGF0YUFycmF5XCIsIFwiU3RlcFwiLCBcIkRhdGFHcm91cEJ1Y2tldFNpemVcIiwgXCJEYXRhR3JvdXBpbmdUaHJlc2hvbGRcIiwgXCJTdHJva2VTaXplXCIsIFwiQWxsb3dHYXBzXCIsIFwiTWVyZ2VEYXRhc2V0c1wiLCBcIkZpbmFsSW5zdGFudHNcIiwgXCJGaWxsXCIsIFwiTWluXCIsIFwiTWF4XCJdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3R0aWVuZSBpIFNldHRpbmdzIChFcmVkaXRhdGkgZGFsbGEgY2xhc3NlIGJhc2UsIHF1aW5kaSBkZWwgdGlwbyBnZW5lcmljbyAqKkJhc2VTZXR0aW5ncyoqKSBjYXN0YXRpIGFsIHRpcG8gc3BlY2lmaWNvIHBlciBxdWVzdG8gZ3JhZmljb1xyXG4gICAqIFxyXG4gICAqIEByZXR1cm5zIHtMaW5lQ2hhcnRTZXR0aW5nc30gU2V0dGluZ3MgY2FzdGF0aSBhbCB0aXBvIGdpdXN0b1xyXG4gICAqL1xyXG4gIGdldENhc3RlZFNldHRpbmdzKCk6IExpbmVDaGFydFNldHRpbmdzIHtcclxuICAgIHJldHVybiA8TGluZUNoYXJ0U2V0dGluZ3M+KHRoaXMuU2V0dGluZ3MgPz8gbmV3IExpbmVDaGFydFNldHRpbmdzKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZWdyYSBpIFNldHRpbmdzIGJhc2UgY29uIHR1dHRpIGdsaSBJbnB1dCBzcGVjaWZpY2kgZGkgcXVlc3RvIGdyYWZpY28sIGRhbmRvIHByaW9yaXTDoCBhaSBTZXR0aW5ncyBzZSBkZWZpbml0aVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7TGluZUNoYXJ0U2V0dGluZ3N9IHNldHRpbmdzQ2FzdGVkIFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBmaWxsU3BlY2lmaWNTZXR0aW5ncyhzZXR0aW5nc0Nhc3RlZDogTGluZUNoYXJ0U2V0dGluZ3MpOiB2b2lkIHtcclxuICAgIHNldHRpbmdzQ2FzdGVkLlN0ZXAgPSBzZXR0aW5nc0Nhc3RlZC5TdGVwICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5TdGVwIDogdGhpcy5TdGVwO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuRGF0YUdyb3VwQnVja2V0U2l6ZSA9IHNldHRpbmdzQ2FzdGVkLkRhdGFHcm91cEJ1Y2tldFNpemUgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkRhdGFHcm91cEJ1Y2tldFNpemUgOiB0aGlzLkRhdGFHcm91cEJ1Y2tldFNpemU7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5TdHJva2VTaXplID0gc2V0dGluZ3NDYXN0ZWQuU3Ryb2tlU2l6ZSAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuU3Ryb2tlU2l6ZSA6IHRoaXMuU3Ryb2tlU2l6ZTtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkRhdGFHcm91cGluZ1RocmVzaG9sZCA9IHNldHRpbmdzQ2FzdGVkLkRhdGFHcm91cGluZ1RocmVzaG9sZCAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuRGF0YUdyb3VwaW5nVGhyZXNob2xkIDogdGhpcy5EYXRhR3JvdXBpbmdUaHJlc2hvbGQ7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5BbGxvd0dhcHMgPSBzZXR0aW5nc0Nhc3RlZC5BbGxvd0dhcHMgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkFsbG93R2FwcyA6IHRoaXMuQWxsb3dHYXBzO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTWVyZ2VEYXRhc2V0cyA9IHNldHRpbmdzQ2FzdGVkLk1lcmdlRGF0YXNldHMgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLk1lcmdlRGF0YXNldHMgOiB0aGlzLk1lcmdlRGF0YXNldHM7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5GaW5hbEluc3RhbnRzID0gc2V0dGluZ3NDYXN0ZWQuRmluYWxJbnN0YW50cyAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuRmluYWxJbnN0YW50cyA6IHRoaXMuRmluYWxJbnN0YW50cztcclxuICAgIHNldHRpbmdzQ2FzdGVkLk1pbiA9IHNldHRpbmdzQ2FzdGVkLk1pbiAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuTWluIDogdGhpcy5NaW47XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5NYXggPSBzZXR0aW5nc0Nhc3RlZC5NYXggIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLk1heCA6IHRoaXMuTWF4O1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuRmlsbCA9IHNldHRpbmdzQ2FzdGVkLkZpbGwgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkZpbGwgOiB0aGlzLkZpbGw7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFZmZldHR1YSBpbCByZW5kZXJpbmcgZGkgcXVlc3RvIGdyYWZpY28gaW4gYmFzZSBhaSBTZXR0aW5nc1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7TGluZUNoYXJ0U2V0dGluZ3N9IHNldHRpbmdzQ2FzdGVkIEltcG9zdGF6aW9uaSBkaSBncmFmaWNhemlvbmVcclxuICAgKiBAcmV0dXJucyB7TGluZUNoYXJ0U2VydmljZX0gTGEgc2VydmljZSB1dGlsaXp6YXRhIHBlciBpbCByZW5kZXJpbmcgbmVsbG8gc3RhdG8gc3ViaXRvIHN1Y2Nlc3Npdm8gYWwgcmVuZGVyaW5nIGVmZmV0dHVhdG9cclxuICAgKi9cclxuICBncmFwaGljYXRlKHNldHRpbmdzQ2FzdGVkOiBMaW5lQ2hhcnRTZXR0aW5ncyk6IGFueSB7XHJcbiAgICByZXR1cm4gbmV3IExpbmVDaGFydFNlcnZpY2UodGhpcy5hZGFwdGVyLCB0aGlzLmRhdGVTZXJ2aWNlKS5ncmFwaGljYXRlKDxMaW5lQ2hhcnREYXRhPnRoaXMuRGF0YSwgc2V0dGluZ3NDYXN0ZWQpO1xyXG4gIH1cclxufSJdfQ==
@@ -60,7 +60,7 @@ EsPieChartComponent.decorators = [
60
60
  selector: 'es-pie-chart',
61
61
  template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>",
62
62
  changeDetection: ChangeDetectionStrategy.OnPush,
63
- styles: [".esc-loading-overlay{background:hsla(0,0%,60%,.6);text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}"]
63
+ styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:bold;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"]
64
64
  },] }
65
65
  ];
66
66
  EsPieChartComponent.ctorParameters = () => [
@@ -86,4 +86,4 @@ EsPieChartComponent.propDecorators = {
86
86
  LabelsWidth: [{ type: Input }],
87
87
  LabelsVisible: [{ type: Input }]
88
88
  };
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLWNoYXJ0cy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXBpZS1jaGFydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pEOztHQUVHO0FBT0gsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGtCQUFrQjtJQStDekQ7O09BRUc7SUFDSCxZQUFZLEVBQWMsRUFBRSxXQUF3QixFQUFFLGVBQWdDLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzNHLFVBQWtCLEVBQ3JCLFFBQWlCLEVBQ1gsY0FBdUIsRUFDM0IsVUFBa0IsRUFDbkIsU0FBaUI7UUFDcEMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFOYixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBT3BILENBQUM7SUFFRDs7T0FFRztJQUNILDRCQUE0QjtRQUMxQixPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDdkgsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxpQkFBaUI7O1FBQ2YsT0FBeUIsT0FBQyxJQUFJLENBQUMsUUFBUSxtQ0FBSSxJQUFJLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG9CQUFvQixDQUFDLGNBQWdDO1FBQ25ELGNBQWMsQ0FBQyxVQUFVLEdBQUcsY0FBYyxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDNUcsY0FBYyxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUM1RixjQUFjLENBQUMscUJBQXFCLEdBQUcsY0FBYyxDQUFDLHFCQUFxQixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFDeEosY0FBYyxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUM1RyxjQUFjLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDO1FBQzVILGNBQWMsQ0FBQyxXQUFXLEdBQUcsY0FBYyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDaEgsY0FBYyxDQUFDLGFBQWEsR0FBRyxjQUFjLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUMxSCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsY0FBZ0M7UUFDekMsT0FBTyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFlLElBQUksQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDL0YsQ0FBQzs7O1lBeEdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsY0FBYztnQkFDeEIsa2tDQUFnRDtnQkFFaEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFwQmdGLFVBQVU7WUFNbEYsV0FBVztZQUFFLGVBQWU7WUFKNUIsV0FBVztZQUY0QixNQUFNO1lBd0VqQixNQUFNLHVCQUF0QyxNQUFNLFNBQUMsV0FBVzswQ0FDbEIsTUFBTSxTQUFDLFFBQVE7MENBQ2YsTUFBTSxTQUFDLGNBQWM7eUNBQ3JCLE1BQU0sU0FBQyxVQUFVO3lDQUNqQixNQUFNLFNBQUMsU0FBUzs7O21CQWxEbEIsS0FBSzt3QkFLTCxLQUFLO3lCQUtMLEtBQUs7cUJBS0wsS0FBSztvQ0FLSixLQUFLO3lCQUtMLEtBQUs7NkJBS0wsS0FBSzswQkFLTCxLQUFLOzRCQUtMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBJbmplY3QsIFBMQVRGT1JNX0lELCBOZ1pvbmUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciB9IGZyb20gJy4uLy4uL2FkYXB0ZXJzJztcclxuaW1wb3J0IHsgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSwgRVNDX0xPR1MgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IFBpZUNoYXJ0U2V0dGluZ3MgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2V0dGluZ3MnO1xyXG5pbXBvcnQgeyBQaWVDaGFydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFBpZUNoYXJ0RGF0YSwgUGFnZWRDaGFydERhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvZGF0YSc7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBzcGVjaWZpY28gcGVyIGxhIGdyYWZpY2F6aW9uZSBkaSB1biBncmFmaWNvIGEgVG9ydGFcclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZXMtcGllLWNoYXJ0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc1BpZUNoYXJ0Q29tcG9uZW50IGV4dGVuZHMgQmFzZUNoYXJ0Q29tcG9uZW50IHtcclxuXHJcbiAgLyoqXHJcbiAgICogRGF0aSBzcGVjaWZpY2kgcGVyIGlsIGdyYWZpY28gbyBkaSB1biB0aXBvIHRyYW11dGFiaWxlIGFsIHRpcG8gKipQaWVDaGFydERhdGEqKiBjb2wgc3VwcG9ydG8gZGVsICoqQmFzZUFkYXB0ZXIqKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGE6IFBpZUNoYXJ0RGF0YSB8IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGkgRGF0aSBzcGVjaWZpY2kgcGVyIHVuIGdyYWZpY28gcGFnaW5hdG8gbyBkaSBjdWkgb2duaSBibG9jY28gZGF0aSDDqCB0cmFtdXRhYmlsZSBhbCB0aXBvICoqUGllQ2hhcnREYXRhKiogY29sIHN1cHBvcnRvIGRlbCAqKkJhc2VBZGFwdGVyKipcclxuICAgKi9cclxuICBASW5wdXQoKSBEYXRhQXJyYXk6IFBhZ2VkQ2hhcnREYXRhPFBpZUNoYXJ0RGF0YT5bXSB8IFBhZ2VkQ2hhcnREYXRhPGFueT5bXTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIG1vc3RyYXJlIG8gbWVubyBsZSBzZXJpZSBjb24gcGVyY2VudHVhbGUgYSAwXHJcbiAgICovXHJcbiAgQElucHV0KCkgSGlkZVplcm9lczogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIGFwcGFyaXJlIGluIG1vZGFsaXTDoCAzRCBvIDJEXHJcbiAgICovXHJcbiAgQElucHV0KCkgTW9kZTNEOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBQZXJjZW50dWFsZSBkZWxsJ2FsdGV6emEgZGVsIGdyYWZpY28gY2hlIHZpZW5lIHV0aWxpenphdGEgcGVyIGNyZWFyZSBpbCBidWNvIGFsbCdpbnRlcm5vIGRlbGxhIGNpYW1iZWxsYSAqKndpbmsqKiAqKndpbmsqKlxyXG4gICAqL1xyXG4gICBASW5wdXQoKSBEb251dFJhZGl1c1BlcmNlbnRhZ2U6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIHdyYXBwYXJlIGxlIGxhYmVsIGNoZSBub24gc3Rhbm5vIG5lbCBjb250ZW5pdG9yZVxyXG4gICAqL1xyXG4gICBASW5wdXQoKSBMYWJlbHNXcmFwOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgdHJvbmNhcmUgbGUgbGFiZWwgY2hlIG5vbiBzdGFubm8gbmVsIGNvbnRlbml0b3JlXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpIExhYmVsc1RydW5jYXRlOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgbGEgZGltZW5zaW9uZSBtYXNzaW1hIGNoZSBwb3Nzb25vIGFzc3VtZXJlIGxlIGxhYmVsXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpIExhYmVsc1dpZHRoOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBzZSBtb3N0cmFyZSBvIG1lbm8gbGUgbGFiZWxzXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpIExhYmVsc1Zpc2libGU6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBjb25zdHJ1Y3RvcihlbDogRWxlbWVudFJlZiwgQ2hhcnRMb2FkZXI6IENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXI6IENoYXJ0RGlzcGF0Y2hlciwgcHJpdmF0ZSBhZGFwdGVyOiBCYXNlQWRhcHRlciwgem9uZTogTmdab25lLFxyXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogT2JqZWN0LFxyXG4gICAgQEluamVjdChFU0NfTE9HUykgRVNDX0xPR1M6IGJvb2xlYW4sXHJcbiAgICBASW5qZWN0KEVTQ19BTklNQVRJT05TKSBFU0NfQU5JTUFUSU9OUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0xPQ0FMRSkgRVNDX0xPQ0FMRTogc3RyaW5nLFxyXG4gICAgQEluamVjdChFU0NfVEhFTUUpIEVTQ19USEVNRTogc3RyaW5nKSB7XHJcbiAgICBzdXBlcihlbCwgcGxhdGZvcm1JZCwgem9uZSwgQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlciwgRVNDX0xPR1MsIEVTQ19BTklNQVRJT05TLCBFU0NfTE9DQUxFLCBFU0NfVEhFTUUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3R0aWVuZSBsZSBwcm9wcmlldMOgIHNwZWNpZmljaGUgcGVyIHF1ZXN0YSB0aXBvbG9naWEgZGkgZ3JhZmljbyBwZXIgY3VpIHNlcnZlIHJpZ3JhZmljYXJlXHJcbiAgICovXHJcbiAgZ2V0U3BlY2lmaWNQcm9wZXJ0aWVzVG9DaGVjaygpOiBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gW1wiRGF0YVwiLCBcIkRhdGFBcnJheVwiLCBcIkhpZGVaZXJvZXNcIiwgXCJNb2RlM0RcIiwgXCJMYWJlbHNXcmFwXCIsIFwiTGFiZWxzVHJ1bmNhdGVcIiwgXCJMYWJlbHNXaWR0aFwiLCBcIkxhYmVsc1Zpc2libGVcIl07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGkgU2V0dGluZ3MgKEVyZWRpdGF0aSBkYWxsYSBjbGFzc2UgYmFzZSwgcXVpbmRpIGRlbCB0aXBvIGdlbmVyaWNvICoqQmFzZVNldHRpbmdzKiopIGNhc3RhdGkgYWwgdGlwbyBzcGVjaWZpY28gcGVyIHF1ZXN0byBncmFmaWNvXHJcbiAgICogXHJcbiAgICogQHJldHVybnMge1BpZUNoYXJ0U2V0dGluZ3N9IFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBnZXRDYXN0ZWRTZXR0aW5ncygpOiBQaWVDaGFydFNldHRpbmdzIHtcclxuICAgIHJldHVybiA8UGllQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgUGllQ2hhcnRTZXR0aW5ncygpKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEludGVncmEgaSBTZXR0aW5ncyBiYXNlIGNvbiB0dXR0aSBnbGkgSW5wdXQgc3BlY2lmaWNpIGRpIHF1ZXN0byBncmFmaWNvLCBkYW5kbyBwcmlvcml0w6AgYWkgU2V0dGluZ3Mgc2UgZGVmaW5pdGlcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge1BpZUNoYXJ0U2V0dGluZ3N9IHNldHRpbmdzQ2FzdGVkIFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBmaWxsU3BlY2lmaWNTZXR0aW5ncyhzZXR0aW5nc0Nhc3RlZDogUGllQ2hhcnRTZXR0aW5ncyk6IHZvaWQge1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuSGlkZVplcm9lcyA9IHNldHRpbmdzQ2FzdGVkLkhpZGVaZXJvZXMgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkhpZGVaZXJvZXMgOiB0aGlzLkhpZGVaZXJvZXM7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5Nb2RlM0QgPSBzZXR0aW5nc0Nhc3RlZC5Nb2RlM0QgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLk1vZGUzRCA6IHRoaXMuTW9kZTNEO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuRG9udXRSYWRpdXNQZXJjZW50YWdlID0gc2V0dGluZ3NDYXN0ZWQuRG9udXRSYWRpdXNQZXJjZW50YWdlICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5Eb251dFJhZGl1c1BlcmNlbnRhZ2UgOiB0aGlzLkRvbnV0UmFkaXVzUGVyY2VudGFnZTtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkxhYmVsc1dyYXAgPSBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNXcmFwICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNXcmFwIDogdGhpcy5MYWJlbHNXcmFwO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxzVHJ1bmNhdGUgPSBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNUcnVuY2F0ZSAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuTGFiZWxzVHJ1bmNhdGUgOiB0aGlzLkxhYmVsc1RydW5jYXRlO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxzV2lkdGggPSBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNXaWR0aCAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuTGFiZWxzV2lkdGggOiB0aGlzLkxhYmVsc1dpZHRoO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxzVmlzaWJsZSA9IHNldHRpbmdzQ2FzdGVkLkxhYmVsc1Zpc2libGUgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkxhYmVsc1Zpc2libGUgOiB0aGlzLkxhYmVsc1Zpc2libGU7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFZmZldHR1YSBpbCByZW5kZXJpbmcgZGkgcXVlc3RvIGdyYWZpY28gaW4gYmFzZSBhaSBTZXR0aW5nc1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7UGllQ2hhcnRTZXR0aW5nc30gc2V0dGluZ3NDYXN0ZWQgSW1wb3N0YXppb25pIGRpIGdyYWZpY2F6aW9uZVxyXG4gICAqIEByZXR1cm5zIHtQaWVDaGFydFNlcnZpY2V9IExhIHNlcnZpY2UgdXRpbGl6emF0YSBwZXIgaWwgcmVuZGVyaW5nIG5lbGxvIHN0YXRvIHN1Yml0byBzdWNjZXNzaXZvIGFsIHJlbmRlcmluZyBlZmZldHR1YXRvXHJcbiAgICovXHJcbiAgZ3JhcGhpY2F0ZShzZXR0aW5nc0Nhc3RlZDogUGllQ2hhcnRTZXR0aW5ncyk6IGFueSB7XHJcbiAgICByZXR1cm4gbmV3IFBpZUNoYXJ0U2VydmljZSh0aGlzLmFkYXB0ZXIpLmdyYXBoaWNhdGUoPFBpZUNoYXJ0RGF0YT50aGlzLkRhdGEsIHNldHRpbmdzQ2FzdGVkKTtcclxuICB9XHJcbn0iXX0=
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtcGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VzLWNoYXJ0cy9zcmMvbGliL2NvbXBvbmVudHMvc3BlY2lhbGl6YXRpb25zL2VzLXBpZS1jaGFydC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsdUJBQXVCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pEOztHQUVHO0FBT0gsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGtCQUFrQjtJQStDekQ7O09BRUc7SUFDSCxZQUFZLEVBQWMsRUFBRSxXQUF3QixFQUFFLGVBQWdDLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzNHLFVBQWtCLEVBQ3JCLFFBQWlCLEVBQ1gsY0FBdUIsRUFDM0IsVUFBa0IsRUFDbkIsU0FBaUI7UUFDcEMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFOYixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBT3BILENBQUM7SUFFRDs7T0FFRztJQUNILDRCQUE0QjtRQUMxQixPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDLENBQUM7SUFDdkgsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxpQkFBaUI7O1FBQ2YsT0FBeUIsQ0FBQyxNQUFBLElBQUksQ0FBQyxRQUFRLG1DQUFJLElBQUksZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsb0JBQW9CLENBQUMsY0FBZ0M7UUFDbkQsY0FBYyxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUM1RyxjQUFjLENBQUMsTUFBTSxHQUFHLGNBQWMsQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVGLGNBQWMsQ0FBQyxxQkFBcUIsR0FBRyxjQUFjLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUN4SixjQUFjLENBQUMsVUFBVSxHQUFHLGNBQWMsQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQzVHLGNBQWMsQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUM7UUFDNUgsY0FBYyxDQUFDLFdBQVcsR0FBRyxjQUFjLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNoSCxjQUFjLENBQUMsYUFBYSxHQUFHLGNBQWMsQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzFILENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILFVBQVUsQ0FBQyxjQUFnQztRQUN6QyxPQUFPLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLENBQWUsSUFBSSxDQUFDLElBQUksRUFBRSxjQUFjLENBQUMsQ0FBQztJQUMvRixDQUFDOzs7WUF4R0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxjQUFjO2dCQUN4Qixra0NBQWdEO2dCQUVoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQXBCZ0YsVUFBVTtZQU1sRixXQUFXO1lBQUUsZUFBZTtZQUo1QixXQUFXO1lBRjRCLE1BQU07WUF3RWpCLE1BQU0sdUJBQXRDLE1BQU0sU0FBQyxXQUFXOzBDQUNsQixNQUFNLFNBQUMsUUFBUTswQ0FDZixNQUFNLFNBQUMsY0FBYzt5Q0FDckIsTUFBTSxTQUFDLFVBQVU7eUNBQ2pCLE1BQU0sU0FBQyxTQUFTOzs7bUJBbERsQixLQUFLO3dCQUtMLEtBQUs7eUJBS0wsS0FBSztxQkFLTCxLQUFLO29DQUtKLEtBQUs7eUJBS0wsS0FBSzs2QkFLTCxLQUFLOzBCQUtMLEtBQUs7NEJBS0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEluamVjdCwgUExBVEZPUk1fSUQsIE5nWm9uZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IEJhc2VBZGFwdGVyIH0gZnJvbSAnLi4vLi4vYWRhcHRlcnMnO1xyXG5pbXBvcnQgeyBFU0NfQU5JTUFUSU9OUywgRVNDX0xPQ0FMRSwgRVNDX1RIRU1FLCBFU0NfTE9HUyB9IGZyb20gJy4uLy4uL3Rva2Vucyc7XHJcblxyXG5pbXBvcnQgeyBCYXNlQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlL2Jhc2UtY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlciB9IGZyb20gXCIuLi8uLi9tb2RlbHMvY29yZVwiO1xyXG5cclxuaW1wb3J0IHsgUGllQ2hhcnRTZXR0aW5ncyB9IGZyb20gJy4uLy4uL21vZGVscy9zZXR0aW5ncyc7XHJcbmltcG9ydCB7IFBpZUNoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgUGllQ2hhcnREYXRhLCBQYWdlZENoYXJ0RGF0YSB9IGZyb20gJy4uLy4uL21vZGVscy9kYXRhJztcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnRlIHNwZWNpZmljbyBwZXIgbGEgZ3JhZmljYXppb25lIGRpIHVuIGdyYWZpY28gYSBUb3J0YVxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlcy1waWUtY2hhcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEVzUGllQ2hhcnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ2hhcnRDb21wb25lbnQge1xyXG5cclxuICAvKipcclxuICAgKiBEYXRpIHNwZWNpZmljaSBwZXIgaWwgZ3JhZmljbyBvIGRpIHVuIHRpcG8gdHJhbXV0YWJpbGUgYWwgdGlwbyAqKlBpZUNoYXJ0RGF0YSoqIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YTogUGllQ2hhcnREYXRhIHwgYW55O1xyXG5cclxuICAvKipcclxuICAgKiBMaXN0YSBkaSBEYXRpIHNwZWNpZmljaSBwZXIgdW4gZ3JhZmljbyBwYWdpbmF0byBvIGRpIGN1aSBvZ25pIGJsb2NjbyBkYXRpIMOoIHRyYW11dGFiaWxlIGFsIHRpcG8gKipQaWVDaGFydERhdGEqKiBjb2wgc3VwcG9ydG8gZGVsICoqQmFzZUFkYXB0ZXIqKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGFBcnJheTogUGFnZWRDaGFydERhdGE8UGllQ2hhcnREYXRhPltdIHwgUGFnZWRDaGFydERhdGE8YW55PltdO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgbW9zdHJhcmUgbyBtZW5vIGxlIHNlcmllIGNvbiBwZXJjZW50dWFsZSBhIDBcclxuICAgKi9cclxuICBASW5wdXQoKSBIaWRlWmVyb2VzOiBib29sZWFuO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2UgYXBwYXJpcmUgaW4gbW9kYWxpdMOgIDNEIG8gMkRcclxuICAgKi9cclxuICBASW5wdXQoKSBNb2RlM0Q6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBlcmNlbnR1YWxlIGRlbGwnYWx0ZXp6YSBkZWwgZ3JhZmljbyBjaGUgdmllbmUgdXRpbGl6emF0YSBwZXIgY3JlYXJlIGlsIGJ1Y28gYWxsJ2ludGVybm8gZGVsbGEgY2lhbWJlbGxhICoqd2luayoqICoqd2luayoqXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpIERvbnV0UmFkaXVzUGVyY2VudGFnZTogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2Egc2Ugd3JhcHBhcmUgbGUgbGFiZWwgY2hlIG5vbiBzdGFubm8gbmVsIGNvbnRlbml0b3JlXHJcbiAgICovXHJcbiAgIEBJbnB1dCgpIExhYmVsc1dyYXA6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBzZSB0cm9uY2FyZSBsZSBsYWJlbCBjaGUgbm9uIHN0YW5ubyBuZWwgY29udGVuaXRvcmVcclxuICAgKi9cclxuICAgQElucHV0KCkgTGFiZWxzVHJ1bmNhdGU6IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBsYSBkaW1lbnNpb25lIG1hc3NpbWEgY2hlIHBvc3Nvbm8gYXNzdW1lcmUgbGUgbGFiZWxcclxuICAgKi9cclxuICAgQElucHV0KCkgTGFiZWxzV2lkdGg6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHNlIG1vc3RyYXJlIG8gbWVubyBsZSBsYWJlbHNcclxuICAgKi9cclxuICAgQElucHV0KCkgTGFiZWxzVmlzaWJsZTogYm9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLCBDaGFydExvYWRlcjogQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlcjogQ2hhcnREaXNwYXRjaGVyLCBwcml2YXRlIGFkYXB0ZXI6IEJhc2VBZGFwdGVyLCB6b25lOiBOZ1pvbmUsXHJcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwbGF0Zm9ybUlkOiBPYmplY3QsXHJcbiAgICBASW5qZWN0KEVTQ19MT0dTKSBFU0NfTE9HUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0FOSU1BVElPTlMpIEVTQ19BTklNQVRJT05TOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfTE9DQUxFKSBFU0NfTE9DQUxFOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KEVTQ19USEVNRSkgRVNDX1RIRU1FOiBzdHJpbmcpIHtcclxuICAgIHN1cGVyKGVsLCBwbGF0Zm9ybUlkLCB6b25lLCBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyLCBFU0NfTE9HUywgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGxlIHByb3ByaWV0w6Agc3BlY2lmaWNoZSBwZXIgcXVlc3RhIHRpcG9sb2dpYSBkaSBncmFmaWNvIHBlciBjdWkgc2VydmUgcmlncmFmaWNhcmVcclxuICAgKi9cclxuICBnZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbXCJEYXRhXCIsIFwiRGF0YUFycmF5XCIsIFwiSGlkZVplcm9lc1wiLCBcIk1vZGUzRFwiLCBcIkxhYmVsc1dyYXBcIiwgXCJMYWJlbHNUcnVuY2F0ZVwiLCBcIkxhYmVsc1dpZHRoXCIsIFwiTGFiZWxzVmlzaWJsZVwiXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE90dGllbmUgaSBTZXR0aW5ncyAoRXJlZGl0YXRpIGRhbGxhIGNsYXNzZSBiYXNlLCBxdWluZGkgZGVsIHRpcG8gZ2VuZXJpY28gKipCYXNlU2V0dGluZ3MqKikgY2FzdGF0aSBhbCB0aXBvIHNwZWNpZmljbyBwZXIgcXVlc3RvIGdyYWZpY29cclxuICAgKiBcclxuICAgKiBAcmV0dXJucyB7UGllQ2hhcnRTZXR0aW5nc30gU2V0dGluZ3MgY2FzdGF0aSBhbCB0aXBvIGdpdXN0b1xyXG4gICAqL1xyXG4gIGdldENhc3RlZFNldHRpbmdzKCk6IFBpZUNoYXJ0U2V0dGluZ3Mge1xyXG4gICAgcmV0dXJuIDxQaWVDaGFydFNldHRpbmdzPih0aGlzLlNldHRpbmdzID8/IG5ldyBQaWVDaGFydFNldHRpbmdzKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZWdyYSBpIFNldHRpbmdzIGJhc2UgY29uIHR1dHRpIGdsaSBJbnB1dCBzcGVjaWZpY2kgZGkgcXVlc3RvIGdyYWZpY28sIGRhbmRvIHByaW9yaXTDoCBhaSBTZXR0aW5ncyBzZSBkZWZpbml0aVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7UGllQ2hhcnRTZXR0aW5nc30gc2V0dGluZ3NDYXN0ZWQgU2V0dGluZ3MgY2FzdGF0aSBhbCB0aXBvIGdpdXN0b1xyXG4gICAqL1xyXG4gIGZpbGxTcGVjaWZpY1NldHRpbmdzKHNldHRpbmdzQ2FzdGVkOiBQaWVDaGFydFNldHRpbmdzKTogdm9pZCB7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5IaWRlWmVyb2VzID0gc2V0dGluZ3NDYXN0ZWQuSGlkZVplcm9lcyAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuSGlkZVplcm9lcyA6IHRoaXMuSGlkZVplcm9lcztcclxuICAgIHNldHRpbmdzQ2FzdGVkLk1vZGUzRCA9IHNldHRpbmdzQ2FzdGVkLk1vZGUzRCAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuTW9kZTNEIDogdGhpcy5Nb2RlM0Q7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5Eb251dFJhZGl1c1BlcmNlbnRhZ2UgPSBzZXR0aW5nc0Nhc3RlZC5Eb251dFJhZGl1c1BlcmNlbnRhZ2UgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkRvbnV0UmFkaXVzUGVyY2VudGFnZSA6IHRoaXMuRG9udXRSYWRpdXNQZXJjZW50YWdlO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxzV3JhcCA9IHNldHRpbmdzQ2FzdGVkLkxhYmVsc1dyYXAgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkxhYmVsc1dyYXAgOiB0aGlzLkxhYmVsc1dyYXA7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNUcnVuY2F0ZSA9IHNldHRpbmdzQ2FzdGVkLkxhYmVsc1RydW5jYXRlICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNUcnVuY2F0ZSA6IHRoaXMuTGFiZWxzVHJ1bmNhdGU7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNXaWR0aCA9IHNldHRpbmdzQ2FzdGVkLkxhYmVsc1dpZHRoICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNXaWR0aCA6IHRoaXMuTGFiZWxzV2lkdGg7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5MYWJlbHNWaXNpYmxlID0gc2V0dGluZ3NDYXN0ZWQuTGFiZWxzVmlzaWJsZSAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuTGFiZWxzVmlzaWJsZSA6IHRoaXMuTGFiZWxzVmlzaWJsZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEVmZmV0dHVhIGlsIHJlbmRlcmluZyBkaSBxdWVzdG8gZ3JhZmljbyBpbiBiYXNlIGFpIFNldHRpbmdzXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtQaWVDaGFydFNldHRpbmdzfSBzZXR0aW5nc0Nhc3RlZCBJbXBvc3RhemlvbmkgZGkgZ3JhZmljYXppb25lXHJcbiAgICogQHJldHVybnMge1BpZUNoYXJ0U2VydmljZX0gTGEgc2VydmljZSB1dGlsaXp6YXRhIHBlciBpbCByZW5kZXJpbmcgbmVsbG8gc3RhdG8gc3ViaXRvIHN1Y2Nlc3Npdm8gYWwgcmVuZGVyaW5nIGVmZmV0dHVhdG9cclxuICAgKi9cclxuICBncmFwaGljYXRlKHNldHRpbmdzQ2FzdGVkOiBQaWVDaGFydFNldHRpbmdzKTogYW55IHtcclxuICAgIHJldHVybiBuZXcgUGllQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlcikuZ3JhcGhpY2F0ZSg8UGllQ2hhcnREYXRhPnRoaXMuRGF0YSwgc2V0dGluZ3NDYXN0ZWQpO1xyXG4gIH1cclxufSJdfQ==
@@ -59,7 +59,7 @@ EsVertical2DChartComponent.decorators = [
59
59
  selector: 'es-vertical-2d-chart',
60
60
  template: "<chart-pager *ngIf=\"isPaged\" (onPageChange)=\"changePage($event)\" [Items]=\"DataArray\" [Dtos]=\"DataDtos\" [StartIndex]=\"DataDtoStartIndex\"\r\n [BrowseDelayMs]=\"BrowseDelayMs\">\r\n <ng-template #header_inner let-headerItem>\r\n <ng-container *ngTemplateOutlet=\"header_tr; context : {$implicit: headerItem}\"></ng-container>\r\n </ng-template>\r\n</chart-pager>\r\n\r\n<ng-container *ngIf=\"loadingChart && loading_template\">\r\n <div style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <ng-container *ngTemplateOutlet=\"loading_template\"></ng-container>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"loadingChart && !loading_template\">\r\n <div class=\"esc-loading-overlay\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\">\r\n <p class=\"label\">Loading....</p>\r\n </div>\r\n</ng-container>\r\n\r\n<div [class.hide-block]=\"loadingChart\" id=\"{{name}}\" style=\"width: 100%;\" [style.height]=\"isPaged ? 'calc(100% - 44px)' : '100%'\"></div>",
61
61
  changeDetection: ChangeDetectionStrategy.OnPush,
62
- styles: [".esc-loading-overlay{background:hsla(0,0%,60%,.6);text-transform:uppercase;font-size:30px;font-weight:700;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}"]
62
+ styles: [".esc-loading-overlay{background:#9999;text-transform:uppercase;font-size:30px;font-weight:bold;color:#fff;text-align:center;font-family:monospace}.esc-loading-overlay .label{margin:0;padding-top:7%}.hide-block{display:none}\n"]
63
63
  },] }
64
64
  ];
65
65
  EsVertical2DChartComponent.ctorParameters = () => [
@@ -84,4 +84,4 @@ EsVertical2DChartComponent.propDecorators = {
84
84
  LabelRightWhenCompressed: [{ type: Input }],
85
85
  LabelTopWhenCompressed: [{ type: Input }]
86
86
  };
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtdmVydGljYWwtMmQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtY2hhcnRzL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtdmVydGljYWwtMmQtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hEOztHQUVHO0FBT0gsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGtCQUFrQjtJQTRDaEU7O09BRUc7SUFDSCxZQUFZLEVBQWMsRUFBRSxXQUF3QixFQUFFLGVBQWdDLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzNHLFVBQWtCLEVBQ3JCLFFBQWlCLEVBQ1gsY0FBdUIsRUFDM0IsVUFBa0IsRUFDbkIsU0FBaUI7UUFDcEMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFOYixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBT3BILENBQUM7SUFFRDs7T0FFRztJQUNILDRCQUE0QjtRQUMxQixPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsaUJBQWlCOztRQUNmLE9BQWdDLE9BQUMsSUFBSSxDQUFDLFFBQVEsbUNBQUksSUFBSSx1QkFBdUIsRUFBRSxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxvQkFBb0IsQ0FBQyxjQUF1QztRQUMxRCxjQUFjLENBQUMscUJBQXFCLEdBQUcsY0FBYyxDQUFDLHFCQUFxQixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUM7UUFDeEosY0FBYyxDQUFDLHNCQUFzQixHQUFHLGNBQWMsQ0FBQyxzQkFBc0IsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDO1FBQzVKLGNBQWMsQ0FBQyxVQUFVLEdBQUcsY0FBYyxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDNUcsY0FBYyxDQUFDLG1DQUFtQyxHQUFHLGNBQWMsQ0FBQyxtQ0FBbUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1DQUFtQyxDQUFDO1FBQ2hOLGNBQWMsQ0FBQyx3QkFBd0IsR0FBRyxjQUFjLENBQUMsd0JBQXdCLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztRQUNwSyxjQUFjLENBQUMsc0JBQXNCLEdBQUcsY0FBYyxDQUFDLHNCQUFzQixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUM7SUFDOUosQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsVUFBVSxDQUFDLGNBQXVDO1FBQ2hELE9BQU8sSUFBSSxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsVUFBVSxDQUFzQixJQUFJLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzdHLENBQUM7OztZQXBHRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsa2tDQUFnRDtnQkFFaEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFwQmdGLFVBQVU7WUFNbEYsV0FBVztZQUFFLGVBQWU7WUFKNUIsV0FBVztZQUY0QixNQUFNO1lBcUVqQixNQUFNLHVCQUF0QyxNQUFNLFNBQUMsV0FBVzswQ0FDbEIsTUFBTSxTQUFDLFFBQVE7MENBQ2YsTUFBTSxTQUFDLGNBQWM7eUNBQ3JCLE1BQU0sU0FBQyxVQUFVO3lDQUNqQixNQUFNLFNBQUMsU0FBUzs7O21CQS9DbEIsS0FBSzt3QkFLTCxLQUFLO29DQU1MLEtBQUs7cUNBTUwsS0FBSzt5QkFLTCxLQUFLO2tEQUtMLEtBQUs7dUNBS0wsS0FBSztxQ0FLTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgSW5qZWN0LCBQTEFURk9STV9JRCwgTmdab25lLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUFkYXB0ZXIgfSBmcm9tICcuLi8uLi9hZGFwdGVycyc7XHJcbmltcG9ydCB7IEVTQ19BTklNQVRJT05TLCBFU0NfTE9DQUxFLCBFU0NfVEhFTUUsIEVTQ19MT0dTIH0gZnJvbSAnLi4vLi4vdG9rZW5zJztcclxuXHJcbmltcG9ydCB7IEJhc2VDaGFydENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyIH0gZnJvbSBcIi4uLy4uL21vZGVscy9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncyB9IGZyb20gJy4uLy4uL21vZGVscy9zZXR0aW5ncyc7XHJcbmltcG9ydCB7IFZlcnRpY2FsMkRDaGFydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IFZlcnRpY2FsMkRDaGFydERhdGEsIFBhZ2VkQ2hhcnREYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RhdGEnO1xyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudGUgc3BlY2lmaWNvIHBlciBsYSBncmFmaWNhemlvbmUgZGkgdW4gZ3JhZmljbyBhIEJhcnJlIGNvbiBkdWUgZGltZW5zaW9uaVxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlcy12ZXJ0aWNhbC0yZC1jaGFydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuLi9iYXNlL2Jhc2UtY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuLi9iYXNlL2Jhc2UtY2hhcnQuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRXNWZXJ0aWNhbDJEQ2hhcnRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ2hhcnRDb21wb25lbnQge1xyXG5cclxuICAvKipcclxuICAgKiBEYXRpIHNwZWNpZmljaSBwZXIgaWwgZ3JhZmljbyBvIGRpIHVuIHRpcG8gdHJhbXV0YWJpbGUgYWwgdGlwbyAqKlZlcnRpY2FsMkRDaGFydERhdGEqKiBjb2wgc3VwcG9ydG8gZGVsICoqQmFzZUFkYXB0ZXIqKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGE6IFZlcnRpY2FsMkRDaGFydERhdGEgfCBhbnk7XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RhIGRpIERhdGkgc3BlY2lmaWNpIHBlciB1biBncmFmaWNvIHBhZ2luYXRvIG8gZGkgY3VpIG9nbmkgYmxvY2NvIGRhdGkgw6ggdHJhbXV0YWJpbGUgYWwgdGlwbyAqKlZlcnRpY2FsMkRDaGFydERhdGEqKiBjb2wgc3VwcG9ydG8gZGVsICoqQmFzZUFkYXB0ZXIqKlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIERhdGFBcnJheTogUGFnZWRDaGFydERhdGE8VmVydGljYWwyRENoYXJ0RGF0YT5bXSB8IFBhZ2VkQ2hhcnREYXRhPGFueT5bXTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIGxhIHBlcmNlbnR1YWxlIGRpIGNlbGxhIGNoZSBsYSBjb2xvbm5hIGFuZHLDoCBhIHJpZW1waXJlLiBVbiB2YWxvcmUgcGFyaSBhIDEwMCByaWVtcGlyw6AgbGEgY2VsbGEgY29tcGxldGFtZW50ZSBcclxuICAgKiBlIHR1dHRlIGxlIGJhcnJlIHJpc3VsdGVyYW5ubyBhcHBpY2NpY2F0ZSBsJ3VuIGwnYWx0cmFcclxuICAgKi9cclxuICBASW5wdXQoKSBDb2x1bW5XaWR0aFBlcmNlbnRhZ2U6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIGlsIHBhZGRpbmcgcGVyY2VudHVhbGUgcmlzcGV0dG8gYWxsYSBjZWxsYSBkYSBsYXNjaWFyZSBmcmEgdW4gZ3J1cHBvIGRpIGJhcnJlIGUgbCdhbHRyby4gVW4gdmFsb3JlIHBhcmkgYSAwIGluZGljYSBsYSBtYW5jYW56YSBkaVxyXG4gICAqIHNwYXppbyBmcmEgdW4gZ3J1cHBvIGUgbCdhbHRybywgdW4gdmFsb3JlIHBhcmkgYSA1IGluZGljYSBpbCA1JSBkZWxsYSBkaW1lbnNpb25lIGRlbGxhIGNlbGxhIGluIGN1aSBhcHBhcmUgaWwgZ3J1cHBvIGNvbWUgcGFkZGluZyBhIGRlc3RyYSBlIHNpbmlzdHJhXHJcbiAgICovXHJcbiAgQElucHV0KCkgR3JvdXBQYWRkaW5nUGVyY2VudGFnZTogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgbGUgZGltZW5zaW9uaSBtYXNzaW1lIGRlbGxhIGxhYmVsIGFzc29jaWF0YSBhIHVuIGdydXBwbyBkaSBiYXJyZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIExhYmVsV2lkdGg6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIGxhIGRpbWVuc2lvbmUgbWFzc2ltYSBzb3R0byBsYSBxdWFsZSBsYSBsYWJlbCBhc3NvY2lhdGEgYSB1biBncnVwcG8gZGkgYmFycmUgc2kgaW5jbGluYSBjZXJjYW5kbyBkaSBvY2N1cGFyZSBtZW5vIHNwYXppb1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIExhYmVsVmVydGljYWxPcmllbnRhdGlvbkN1dG9mZldpZHRoOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSB1biBvZmZzZXQgb3JpenpvbnRhbGUgZGEgYXBwbGljYXJlIGFsbGEgbGFiZWwgYXNzb2NpYXRhIGEgdW4gZ3J1cHBvIGRpIGJhcnJlIHF1YWxvcmEgZm9zc2UgY29tcHJlc3NhIGEgY2F1c2EgZGVsbGEgbWFuY2FuemEgZGkgc3BhemlvXHJcbiAgICovXHJcbiAgQElucHV0KCkgTGFiZWxSaWdodFdoZW5Db21wcmVzc2VkOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSB1biBvZmZzZXQgdmVydGljYWxlIGRhIGFwcGxpY2FyZSBhbGxhIGxhYmVsIGFzc29jaWF0YSBhIHVuIGdydXBwbyBkaSBiYXJyZSBxdWFsb3JhIGZvc3NlIGNvbXByZXNzYSBhIGNhdXNhIGRlbGxhIG1hbmNhbnphIGRpIHNwYXppb1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIExhYmVsVG9wV2hlbkNvbXByZXNzZWQ6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogQGlnbm9yZVxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKGVsOiBFbGVtZW50UmVmLCBDaGFydExvYWRlcjogQ2hhcnRMb2FkZXIsIENoYXJ0RGlzcGF0Y2hlcjogQ2hhcnREaXNwYXRjaGVyLCBwcml2YXRlIGFkYXB0ZXI6IEJhc2VBZGFwdGVyLCB6b25lOiBOZ1pvbmUsXHJcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwbGF0Zm9ybUlkOiBPYmplY3QsXHJcbiAgICBASW5qZWN0KEVTQ19MT0dTKSBFU0NfTE9HUzogYm9vbGVhbixcclxuICAgIEBJbmplY3QoRVNDX0FOSU1BVElPTlMpIEVTQ19BTklNQVRJT05TOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfTE9DQUxFKSBFU0NfTE9DQUxFOiBzdHJpbmcsXHJcbiAgICBASW5qZWN0KEVTQ19USEVNRSkgRVNDX1RIRU1FOiBzdHJpbmcpIHtcclxuICAgIHN1cGVyKGVsLCBwbGF0Zm9ybUlkLCB6b25lLCBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyLCBFU0NfTE9HUywgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGxlIHByb3ByaWV0w6Agc3BlY2lmaWNoZSBwZXIgcXVlc3RhIHRpcG9sb2dpYSBkaSBncmFmaWNvIHBlciBjdWkgc2VydmUgcmlncmFmaWNhcmVcclxuICAgKi9cclxuICBnZXRTcGVjaWZpY1Byb3BlcnRpZXNUb0NoZWNrKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBbXCJEYXRhXCIsIFwiRGF0YUFycmF5XCJdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3R0aWVuZSBpIFNldHRpbmdzIChFcmVkaXRhdGkgZGFsbGEgY2xhc3NlIGJhc2UsIHF1aW5kaSBkZWwgdGlwbyBnZW5lcmljbyAqKkJhc2VTZXR0aW5ncyoqKSBjYXN0YXRpIGFsIHRpcG8gc3BlY2lmaWNvIHBlciBxdWVzdG8gZ3JhZmljb1xyXG4gICAqIFxyXG4gICAqIEByZXR1cm5zIHtWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5nc30gU2V0dGluZ3MgY2FzdGF0aSBhbCB0aXBvIGdpdXN0b1xyXG4gICAqL1xyXG4gIGdldENhc3RlZFNldHRpbmdzKCk6IFZlcnRpY2FsMkRDaGFydFNldHRpbmdzIHtcclxuICAgIHJldHVybiA8VmVydGljYWwyRENoYXJ0U2V0dGluZ3M+KHRoaXMuU2V0dGluZ3MgPz8gbmV3IFZlcnRpY2FsMkRDaGFydFNldHRpbmdzKCkpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZWdyYSBpIFNldHRpbmdzIGJhc2UgY29uIHR1dHRpIGdsaSBJbnB1dCBzcGVjaWZpY2kgZGkgcXVlc3RvIGdyYWZpY28sIGRhbmRvIHByaW9yaXTDoCBhaSBTZXR0aW5ncyBzZSBkZWZpbml0aVxyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7VmVydGljYWwyRENoYXJ0U2V0dGluZ3N9IHNldHRpbmdzQ2FzdGVkIFNldHRpbmdzIGNhc3RhdGkgYWwgdGlwbyBnaXVzdG9cclxuICAgKi9cclxuICBmaWxsU3BlY2lmaWNTZXR0aW5ncyhzZXR0aW5nc0Nhc3RlZDogVmVydGljYWwyRENoYXJ0U2V0dGluZ3MpOiB2b2lkIHtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkNvbHVtbldpZHRoUGVyY2VudGFnZSA9IHNldHRpbmdzQ2FzdGVkLkNvbHVtbldpZHRoUGVyY2VudGFnZSAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuQ29sdW1uV2lkdGhQZXJjZW50YWdlIDogdGhpcy5Db2x1bW5XaWR0aFBlcmNlbnRhZ2U7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5Hcm91cFBhZGRpbmdQZXJjZW50YWdlID0gc2V0dGluZ3NDYXN0ZWQuR3JvdXBQYWRkaW5nUGVyY2VudGFnZSAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuR3JvdXBQYWRkaW5nUGVyY2VudGFnZSA6IHRoaXMuR3JvdXBQYWRkaW5nUGVyY2VudGFnZTtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkxhYmVsV2lkdGggPSBzZXR0aW5nc0Nhc3RlZC5MYWJlbFdpZHRoICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5MYWJlbFdpZHRoIDogdGhpcy5MYWJlbFdpZHRoO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxWZXJ0aWNhbE9yaWVudGF0aW9uQ3V0b2ZmV2lkdGggPSBzZXR0aW5nc0Nhc3RlZC5MYWJlbFZlcnRpY2FsT3JpZW50YXRpb25DdXRvZmZXaWR0aCAhPSBudWxsID8gc2V0dGluZ3NDYXN0ZWQuTGFiZWxWZXJ0aWNhbE9yaWVudGF0aW9uQ3V0b2ZmV2lkdGggOiB0aGlzLkxhYmVsVmVydGljYWxPcmllbnRhdGlvbkN1dG9mZldpZHRoO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxSaWdodFdoZW5Db21wcmVzc2VkID0gc2V0dGluZ3NDYXN0ZWQuTGFiZWxSaWdodFdoZW5Db21wcmVzc2VkICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5MYWJlbFJpZ2h0V2hlbkNvbXByZXNzZWQgOiB0aGlzLkxhYmVsUmlnaHRXaGVuQ29tcHJlc3NlZDtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkxhYmVsVG9wV2hlbkNvbXByZXNzZWQgPSBzZXR0aW5nc0Nhc3RlZC5MYWJlbFRvcFdoZW5Db21wcmVzc2VkICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5MYWJlbFRvcFdoZW5Db21wcmVzc2VkIDogdGhpcy5MYWJlbFRvcFdoZW5Db21wcmVzc2VkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogRWZmZXR0dWEgaWwgcmVuZGVyaW5nIGRpIHF1ZXN0byBncmFmaWNvIGluIGJhc2UgYWkgU2V0dGluZ3NcclxuICAgKiBcclxuICAgKiBAcGFyYW0ge1ZlcnRpY2FsMkRDaGFydFNldHRpbmdzfSBzZXR0aW5nc0Nhc3RlZCBJbXBvc3RhemlvbmkgZGkgZ3JhZmljYXppb25lXHJcbiAgICogQHJldHVybnMge1ZlcnRpY2FsMkRDaGFydFNlcnZpY2V9IExhIHNlcnZpY2UgdXRpbGl6emF0YSBwZXIgaWwgcmVuZGVyaW5nIG5lbGxvIHN0YXRvIHN1Yml0byBzdWNjZXNzaXZvIGFsIHJlbmRlcmluZyBlZmZldHR1YXRvXHJcbiAgICovXHJcbiAgZ3JhcGhpY2F0ZShzZXR0aW5nc0Nhc3RlZDogVmVydGljYWwyRENoYXJ0U2V0dGluZ3MpOiBhbnkge1xyXG4gICAgcmV0dXJuIG5ldyBWZXJ0aWNhbDJEQ2hhcnRTZXJ2aWNlKHRoaXMuYWRhcHRlcikuZ3JhcGhpY2F0ZSg8VmVydGljYWwyRENoYXJ0RGF0YT50aGlzLkRhdGEsIHNldHRpbmdzQ2FzdGVkKTtcclxuICB9XHJcbn0iXX0=
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXMtdmVydGljYWwtMmQtY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXMtY2hhcnRzL3NyYy9saWIvY29tcG9uZW50cy9zcGVjaWFsaXphdGlvbnMvZXMtdmVydGljYWwtMmQtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLHVCQUF1QixFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR3hEOztHQUVHO0FBT0gsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGtCQUFrQjtJQTRDaEU7O09BRUc7SUFDSCxZQUFZLEVBQWMsRUFBRSxXQUF3QixFQUFFLGVBQWdDLEVBQVUsT0FBb0IsRUFBRSxJQUFZLEVBQzNHLFVBQWtCLEVBQ3JCLFFBQWlCLEVBQ1gsY0FBdUIsRUFDM0IsVUFBa0IsRUFDbkIsU0FBaUI7UUFDcEMsS0FBSyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFOYixZQUFPLEdBQVAsT0FBTyxDQUFhO0lBT3BILENBQUM7SUFFRDs7T0FFRztJQUNILDRCQUE0QjtRQUMxQixPQUFPLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsaUJBQWlCOztRQUNmLE9BQWdDLENBQUMsTUFBQSxJQUFJLENBQUMsUUFBUSxtQ0FBSSxJQUFJLHVCQUF1QixFQUFFLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG9CQUFvQixDQUFDLGNBQXVDO1FBQzFELGNBQWMsQ0FBQyxxQkFBcUIsR0FBRyxjQUFjLENBQUMscUJBQXFCLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUN4SixjQUFjLENBQUMsc0JBQXNCLEdBQUcsY0FBYyxDQUFDLHNCQUFzQixJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUM7UUFDNUosY0FBYyxDQUFDLFVBQVUsR0FBRyxjQUFjLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUM1RyxjQUFjLENBQUMsbUNBQW1DLEdBQUcsY0FBYyxDQUFDLG1DQUFtQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLG1DQUFtQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsbUNBQW1DLENBQUM7UUFDaE4sY0FBYyxDQUFDLHdCQUF3QixHQUFHLGNBQWMsQ0FBQyx3QkFBd0IsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDO1FBQ3BLLGNBQWMsQ0FBQyxzQkFBc0IsR0FBRyxjQUFjLENBQUMsc0JBQXNCLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztJQUM5SixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsY0FBdUM7UUFDaEQsT0FBTyxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLENBQXNCLElBQUksQ0FBQyxJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDN0csQ0FBQzs7O1lBcEdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0JBQXNCO2dCQUNoQyxra0NBQWdEO2dCQUVoRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQXBCZ0YsVUFBVTtZQU1sRixXQUFXO1lBQUUsZUFBZTtZQUo1QixXQUFXO1lBRjRCLE1BQU07WUFxRWpCLE1BQU0sdUJBQXRDLE1BQU0sU0FBQyxXQUFXOzBDQUNsQixNQUFNLFNBQUMsUUFBUTswQ0FDZixNQUFNLFNBQUMsY0FBYzt5Q0FDckIsTUFBTSxTQUFDLFVBQVU7eUNBQ2pCLE1BQU0sU0FBQyxTQUFTOzs7bUJBL0NsQixLQUFLO3dCQUtMLEtBQUs7b0NBTUwsS0FBSztxQ0FNTCxLQUFLO3lCQUtMLEtBQUs7a0RBS0wsS0FBSzt1Q0FLTCxLQUFLO3FDQUtMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBJbmplY3QsIFBMQVRGT1JNX0lELCBOZ1pvbmUsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBCYXNlQWRhcHRlciB9IGZyb20gJy4uLy4uL2FkYXB0ZXJzJztcclxuaW1wb3J0IHsgRVNDX0FOSU1BVElPTlMsIEVTQ19MT0NBTEUsIEVTQ19USEVNRSwgRVNDX0xPR1MgfSBmcm9tICcuLi8uLi90b2tlbnMnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS9iYXNlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIgfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7IFZlcnRpY2FsMkRDaGFydFNldHRpbmdzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3NldHRpbmdzJztcclxuaW1wb3J0IHsgVmVydGljYWwyRENoYXJ0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVmVydGljYWwyRENoYXJ0RGF0YSwgUGFnZWRDaGFydERhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvZGF0YSc7XHJcblxyXG4vKipcclxuICogQ29tcG9uZW50ZSBzcGVjaWZpY28gcGVyIGxhIGdyYWZpY2F6aW9uZSBkaSB1biBncmFmaWNvIGEgQmFycmUgY29uIGR1ZSBkaW1lbnNpb25pXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VzLXZlcnRpY2FsLTJkLWNoYXJ0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4uL2Jhc2UvYmFzZS1jaGFydC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBFc1ZlcnRpY2FsMkRDaGFydENvbXBvbmVudCBleHRlbmRzIEJhc2VDaGFydENvbXBvbmVudCB7XHJcblxyXG4gIC8qKlxyXG4gICAqIERhdGkgc3BlY2lmaWNpIHBlciBpbCBncmFmaWNvIG8gZGkgdW4gdGlwbyB0cmFtdXRhYmlsZSBhbCB0aXBvICoqVmVydGljYWwyRENoYXJ0RGF0YSoqIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YTogVmVydGljYWwyRENoYXJ0RGF0YSB8IGFueTtcclxuXHJcbiAgLyoqXHJcbiAgICogTGlzdGEgZGkgRGF0aSBzcGVjaWZpY2kgcGVyIHVuIGdyYWZpY28gcGFnaW5hdG8gbyBkaSBjdWkgb2duaSBibG9jY28gZGF0aSDDqCB0cmFtdXRhYmlsZSBhbCB0aXBvICoqVmVydGljYWwyRENoYXJ0RGF0YSoqIGNvbCBzdXBwb3J0byBkZWwgKipCYXNlQWRhcHRlcioqXHJcbiAgICovXHJcbiAgQElucHV0KCkgRGF0YUFycmF5OiBQYWdlZENoYXJ0RGF0YTxWZXJ0aWNhbDJEQ2hhcnREYXRhPltdIHwgUGFnZWRDaGFydERhdGE8YW55PltdO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgbGEgcGVyY2VudHVhbGUgZGkgY2VsbGEgY2hlIGxhIGNvbG9ubmEgYW5kcsOgIGEgcmllbXBpcmUuIFVuIHZhbG9yZSBwYXJpIGEgMTAwIHJpZW1waXLDoCBsYSBjZWxsYSBjb21wbGV0YW1lbnRlIFxyXG4gICAqIGUgdHV0dGUgbGUgYmFycmUgcmlzdWx0ZXJhbm5vIGFwcGljY2ljYXRlIGwndW4gbCdhbHRyYVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIENvbHVtbldpZHRoUGVyY2VudGFnZTogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgaWwgcGFkZGluZyBwZXJjZW50dWFsZSByaXNwZXR0byBhbGxhIGNlbGxhIGRhIGxhc2NpYXJlIGZyYSB1biBncnVwcG8gZGkgYmFycmUgZSBsJ2FsdHJvLiBVbiB2YWxvcmUgcGFyaSBhIDAgaW5kaWNhIGxhIG1hbmNhbnphIGRpXHJcbiAgICogc3BhemlvIGZyYSB1biBncnVwcG8gZSBsJ2FsdHJvLCB1biB2YWxvcmUgcGFyaSBhIDUgaW5kaWNhIGlsIDUlIGRlbGxhIGRpbWVuc2lvbmUgZGVsbGEgY2VsbGEgaW4gY3VpIGFwcGFyZSBpbCBncnVwcG8gY29tZSBwYWRkaW5nIGEgZGVzdHJhIGUgc2luaXN0cmFcclxuICAgKi9cclxuICBASW5wdXQoKSBHcm91cFBhZGRpbmdQZXJjZW50YWdlOiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIEluZGljYSBsZSBkaW1lbnNpb25pIG1hc3NpbWUgZGVsbGEgbGFiZWwgYXNzb2NpYXRhIGEgdW4gZ3J1cHBvIGRpIGJhcnJlXHJcbiAgICovXHJcbiAgQElucHV0KCkgTGFiZWxXaWR0aDogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBJbmRpY2EgbGEgZGltZW5zaW9uZSBtYXNzaW1hIHNvdHRvIGxhIHF1YWxlIGxhIGxhYmVsIGFzc29jaWF0YSBhIHVuIGdydXBwbyBkaSBiYXJyZSBzaSBpbmNsaW5hIGNlcmNhbmRvIGRpIG9jY3VwYXJlIG1lbm8gc3BhemlvXHJcbiAgICovXHJcbiAgQElucHV0KCkgTGFiZWxWZXJ0aWNhbE9yaWVudGF0aW9uQ3V0b2ZmV2lkdGg6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHVuIG9mZnNldCBvcml6em9udGFsZSBkYSBhcHBsaWNhcmUgYWxsYSBsYWJlbCBhc3NvY2lhdGEgYSB1biBncnVwcG8gZGkgYmFycmUgcXVhbG9yYSBmb3NzZSBjb21wcmVzc2EgYSBjYXVzYSBkZWxsYSBtYW5jYW56YSBkaSBzcGF6aW9cclxuICAgKi9cclxuICBASW5wdXQoKSBMYWJlbFJpZ2h0V2hlbkNvbXByZXNzZWQ6IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW5kaWNhIHVuIG9mZnNldCB2ZXJ0aWNhbGUgZGEgYXBwbGljYXJlIGFsbGEgbGFiZWwgYXNzb2NpYXRhIGEgdW4gZ3J1cHBvIGRpIGJhcnJlIHF1YWxvcmEgZm9zc2UgY29tcHJlc3NhIGEgY2F1c2EgZGVsbGEgbWFuY2FuemEgZGkgc3BhemlvXHJcbiAgICovXHJcbiAgQElucHV0KCkgTGFiZWxUb3BXaGVuQ29tcHJlc3NlZDogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBAaWdub3JlXHJcbiAgICovXHJcbiAgY29uc3RydWN0b3IoZWw6IEVsZW1lbnRSZWYsIENoYXJ0TG9hZGVyOiBDaGFydExvYWRlciwgQ2hhcnREaXNwYXRjaGVyOiBDaGFydERpc3BhdGNoZXIsIHByaXZhdGUgYWRhcHRlcjogQmFzZUFkYXB0ZXIsIHpvbmU6IE5nWm9uZSxcclxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHBsYXRmb3JtSWQ6IE9iamVjdCxcclxuICAgIEBJbmplY3QoRVNDX0xPR1MpIEVTQ19MT0dTOiBib29sZWFuLFxyXG4gICAgQEluamVjdChFU0NfQU5JTUFUSU9OUykgRVNDX0FOSU1BVElPTlM6IGJvb2xlYW4sXHJcbiAgICBASW5qZWN0KEVTQ19MT0NBTEUpIEVTQ19MT0NBTEU6IHN0cmluZyxcclxuICAgIEBJbmplY3QoRVNDX1RIRU1FKSBFU0NfVEhFTUU6IHN0cmluZykge1xyXG4gICAgc3VwZXIoZWwsIHBsYXRmb3JtSWQsIHpvbmUsIENoYXJ0TG9hZGVyLCBDaGFydERpc3BhdGNoZXIsIEVTQ19MT0dTLCBFU0NfQU5JTUFUSU9OUywgRVNDX0xPQ0FMRSwgRVNDX1RIRU1FKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIE90dGllbmUgbGUgcHJvcHJpZXTDoCBzcGVjaWZpY2hlIHBlciBxdWVzdGEgdGlwb2xvZ2lhIGRpIGdyYWZpY28gcGVyIGN1aSBzZXJ2ZSByaWdyYWZpY2FyZVxyXG4gICAqL1xyXG4gIGdldFNwZWNpZmljUHJvcGVydGllc1RvQ2hlY2soKTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIFtcIkRhdGFcIiwgXCJEYXRhQXJyYXlcIl07XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPdHRpZW5lIGkgU2V0dGluZ3MgKEVyZWRpdGF0aSBkYWxsYSBjbGFzc2UgYmFzZSwgcXVpbmRpIGRlbCB0aXBvIGdlbmVyaWNvICoqQmFzZVNldHRpbmdzKiopIGNhc3RhdGkgYWwgdGlwbyBzcGVjaWZpY28gcGVyIHF1ZXN0byBncmFmaWNvXHJcbiAgICogXHJcbiAgICogQHJldHVybnMge1ZlcnRpY2FsMkRDaGFydFNldHRpbmdzfSBTZXR0aW5ncyBjYXN0YXRpIGFsIHRpcG8gZ2l1c3RvXHJcbiAgICovXHJcbiAgZ2V0Q2FzdGVkU2V0dGluZ3MoKTogVmVydGljYWwyRENoYXJ0U2V0dGluZ3Mge1xyXG4gICAgcmV0dXJuIDxWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncz4odGhpcy5TZXR0aW5ncyA/PyBuZXcgVmVydGljYWwyRENoYXJ0U2V0dGluZ3MoKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbnRlZ3JhIGkgU2V0dGluZ3MgYmFzZSBjb24gdHV0dGkgZ2xpIElucHV0IHNwZWNpZmljaSBkaSBxdWVzdG8gZ3JhZmljbywgZGFuZG8gcHJpb3JpdMOgIGFpIFNldHRpbmdzIHNlIGRlZmluaXRpXHJcbiAgICogXHJcbiAgICogQHBhcmFtIHtWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5nc30gc2V0dGluZ3NDYXN0ZWQgU2V0dGluZ3MgY2FzdGF0aSBhbCB0aXBvIGdpdXN0b1xyXG4gICAqL1xyXG4gIGZpbGxTcGVjaWZpY1NldHRpbmdzKHNldHRpbmdzQ2FzdGVkOiBWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncyk6IHZvaWQge1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuQ29sdW1uV2lkdGhQZXJjZW50YWdlID0gc2V0dGluZ3NDYXN0ZWQuQ29sdW1uV2lkdGhQZXJjZW50YWdlICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5Db2x1bW5XaWR0aFBlcmNlbnRhZ2UgOiB0aGlzLkNvbHVtbldpZHRoUGVyY2VudGFnZTtcclxuICAgIHNldHRpbmdzQ2FzdGVkLkdyb3VwUGFkZGluZ1BlcmNlbnRhZ2UgPSBzZXR0aW5nc0Nhc3RlZC5Hcm91cFBhZGRpbmdQZXJjZW50YWdlICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5Hcm91cFBhZGRpbmdQZXJjZW50YWdlIDogdGhpcy5Hcm91cFBhZGRpbmdQZXJjZW50YWdlO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxXaWR0aCA9IHNldHRpbmdzQ2FzdGVkLkxhYmVsV2lkdGggIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkxhYmVsV2lkdGggOiB0aGlzLkxhYmVsV2lkdGg7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5MYWJlbFZlcnRpY2FsT3JpZW50YXRpb25DdXRvZmZXaWR0aCA9IHNldHRpbmdzQ2FzdGVkLkxhYmVsVmVydGljYWxPcmllbnRhdGlvbkN1dG9mZldpZHRoICE9IG51bGwgPyBzZXR0aW5nc0Nhc3RlZC5MYWJlbFZlcnRpY2FsT3JpZW50YXRpb25DdXRvZmZXaWR0aCA6IHRoaXMuTGFiZWxWZXJ0aWNhbE9yaWVudGF0aW9uQ3V0b2ZmV2lkdGg7XHJcbiAgICBzZXR0aW5nc0Nhc3RlZC5MYWJlbFJpZ2h0V2hlbkNvbXByZXNzZWQgPSBzZXR0aW5nc0Nhc3RlZC5MYWJlbFJpZ2h0V2hlbkNvbXByZXNzZWQgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkxhYmVsUmlnaHRXaGVuQ29tcHJlc3NlZCA6IHRoaXMuTGFiZWxSaWdodFdoZW5Db21wcmVzc2VkO1xyXG4gICAgc2V0dGluZ3NDYXN0ZWQuTGFiZWxUb3BXaGVuQ29tcHJlc3NlZCA9IHNldHRpbmdzQ2FzdGVkLkxhYmVsVG9wV2hlbkNvbXByZXNzZWQgIT0gbnVsbCA/IHNldHRpbmdzQ2FzdGVkLkxhYmVsVG9wV2hlbkNvbXByZXNzZWQgOiB0aGlzLkxhYmVsVG9wV2hlbkNvbXByZXNzZWQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFZmZldHR1YSBpbCByZW5kZXJpbmcgZGkgcXVlc3RvIGdyYWZpY28gaW4gYmFzZSBhaSBTZXR0aW5nc1xyXG4gICAqIFxyXG4gICAqIEBwYXJhbSB7VmVydGljYWwyRENoYXJ0U2V0dGluZ3N9IHNldHRpbmdzQ2FzdGVkIEltcG9zdGF6aW9uaSBkaSBncmFmaWNhemlvbmVcclxuICAgKiBAcmV0dXJucyB7VmVydGljYWwyRENoYXJ0U2VydmljZX0gTGEgc2VydmljZSB1dGlsaXp6YXRhIHBlciBpbCByZW5kZXJpbmcgbmVsbG8gc3RhdG8gc3ViaXRvIHN1Y2Nlc3Npdm8gYWwgcmVuZGVyaW5nIGVmZmV0dHVhdG9cclxuICAgKi9cclxuICBncmFwaGljYXRlKHNldHRpbmdzQ2FzdGVkOiBWZXJ0aWNhbDJEQ2hhcnRTZXR0aW5ncyk6IGFueSB7XHJcbiAgICByZXR1cm4gbmV3IFZlcnRpY2FsMkRDaGFydFNlcnZpY2UodGhpcy5hZGFwdGVyKS5ncmFwaGljYXRlKDxWZXJ0aWNhbDJEQ2hhcnREYXRhPnRoaXMuRGF0YSwgc2V0dGluZ3NDYXN0ZWQpO1xyXG4gIH1cclxufSJdfQ==