@alauda-fe/common 1.4.34-beta.0 → 1.4.35

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 (143) hide show
  1. package/core/types/k8s/raw.d.ts +1 -1
  2. package/esm2022/abnormal-page/abnormal-page.component.mjs +1 -1
  3. package/esm2022/array-form-table/form/component.mjs +1 -1
  4. package/esm2022/array-form-table/key-value-form/component.mjs +1 -1
  5. package/esm2022/array-form-table/key-value-table/component.mjs +1 -1
  6. package/esm2022/array-form-table/string-array-form/component.mjs +1 -1
  7. package/esm2022/async-data/error-page/component.mjs +1 -1
  8. package/esm2022/async-data/page-state/component.mjs +1 -1
  9. package/esm2022/business/notification-disabled-container/component.mjs +1 -1
  10. package/esm2022/business/resource-select/exports/cluster-list/component.mjs +1 -1
  11. package/esm2022/business/resource-select/exports/cluster-selector/component.mjs +1 -1
  12. package/esm2022/business/resource-select/exports/icon/component.mjs +1 -1
  13. package/esm2022/business/resource-select/exports/mesh-group-selector/component.mjs +1 -1
  14. package/esm2022/business/resource-select/exports/namespace-list/component.mjs +1 -1
  15. package/esm2022/business/resource-select/exports/namespace-page/component.mjs +1 -1
  16. package/esm2022/business/resource-select/exports/namespace-selector/component.mjs +1 -1
  17. package/esm2022/business/resource-select/exports/project-list/component.mjs +1 -1
  18. package/esm2022/business/resource-select/exports/project-page/component.mjs +1 -1
  19. package/esm2022/business/resource-select/exports/project-selector/component.mjs +1 -1
  20. package/esm2022/business/resource-select/internals/data-grid/component.mjs +1 -1
  21. package/esm2022/business/resource-select/internals/meshgroup-list/component.mjs +1 -1
  22. package/esm2022/business/resource-select/internals/no-data/component.mjs +1 -1
  23. package/esm2022/business/resource-select/internals/resource-dashboard/component.mjs +1 -1
  24. package/esm2022/business/resource-select/internals/selector-popup/component.mjs +1 -1
  25. package/esm2022/chart/common/axis/axis-label.component.mjs +1 -1
  26. package/esm2022/chart/common/axis/x-axis-ticks.component.mjs +1 -1
  27. package/esm2022/chart/common/axis/x-axis.component.mjs +1 -1
  28. package/esm2022/chart/common/axis/x-plot-lines.component.mjs +1 -1
  29. package/esm2022/chart/common/axis/y-axis-ticks.component.mjs +1 -1
  30. package/esm2022/chart/common/axis/y-axis.component.mjs +1 -1
  31. package/esm2022/chart/common/axis/y-plot-lines.component.mjs +1 -1
  32. package/esm2022/chart/common/chart/chart.component.mjs +1 -1
  33. package/esm2022/chart/common/legend/legend.component.mjs +1 -1
  34. package/esm2022/chart/common/range-area/range-area.component.mjs +1 -1
  35. package/esm2022/chart/common/reference-area/reference-area.component.mjs +1 -1
  36. package/esm2022/chart/common/series/area-series.component.mjs +1 -1
  37. package/esm2022/chart/common/series/bar-path.component.mjs +1 -1
  38. package/esm2022/chart/common/series/bar-series.component.mjs +1 -1
  39. package/esm2022/chart/common/series/line-series.component.mjs +1 -1
  40. package/esm2022/chart/common/tooltip/tooltip.component.mjs +1 -1
  41. package/esm2022/chart/custom-template/dropdown-legend.mjs +1 -1
  42. package/esm2022/code/code-display-dialog/component.mjs +1 -1
  43. package/esm2022/code/k8s-yaml-display-dialog/component.mjs +1 -1
  44. package/esm2022/code/resource-yaml-display/component.mjs +1 -1
  45. package/esm2022/code/resource-yaml-editor/component.mjs +1 -1
  46. package/esm2022/code/yaml-sidebar/component.mjs +1 -1
  47. package/esm2022/core/components/tree/node/component.mjs +1 -1
  48. package/esm2022/core/components/tree/tree/component.mjs +1 -1
  49. package/esm2022/core/directives/readonly-field.directive.mjs +1 -1
  50. package/esm2022/core/types/k8s/raw.mjs +2 -2
  51. package/esm2022/custom-columns-setting/component.mjs +1 -1
  52. package/esm2022/disabled-container/disabled-container.component.mjs +1 -1
  53. package/esm2022/editable/editable.component.mjs +1 -1
  54. package/esm2022/editable-text/component.mjs +1 -1
  55. package/esm2022/exec/placeholder/component.mjs +1 -1
  56. package/esm2022/exec/terminal/component.mjs +1 -1
  57. package/esm2022/exec/terminal-group/component.mjs +1 -1
  58. package/esm2022/feature-gate-forbidden/component/component.mjs +1 -1
  59. package/esm2022/form/errors-mapper/errors-mapper-component/component.mjs +1 -1
  60. package/esm2022/form/errors-mapper/errors-mapper.directive.mjs +1 -1
  61. package/esm2022/form/labels-editor/component.mjs +1 -1
  62. package/esm2022/form/taints-editor/component.mjs +1 -1
  63. package/esm2022/form/upload-file/component.mjs +1 -1
  64. package/esm2022/form/validators/strong-password/strong-password-tooltip/component.mjs +1 -1
  65. package/esm2022/graph-canvas/components/graph-actions.component.mjs +1 -1
  66. package/esm2022/graph-canvas/components/graph-canvas.component.mjs +1 -1
  67. package/esm2022/graph-canvas/components/graph-link.component.mjs +1 -1
  68. package/esm2022/graph-canvas/components/graph-links.component.mjs +1 -1
  69. package/esm2022/grid-layout/components/grid/component.mjs +1 -1
  70. package/esm2022/grid-layout/components/grid-items/component.mjs +1 -1
  71. package/esm2022/help-document/component.mjs +1 -1
  72. package/esm2022/k8s-resource-list/footer/component.mjs +1 -1
  73. package/esm2022/k8s-shared/resource-mark/k8s-resource-mark.component.mjs +1 -1
  74. package/esm2022/k8s-shared/update-description-dialog/component.mjs +1 -1
  75. package/esm2022/k8s-shared/update-display-name-dialog/component.mjs +1 -1
  76. package/esm2022/k8s-shared/update-key-value-dialog/component.mjs +1 -1
  77. package/esm2022/lazy-component/lazy-load-component.mjs +1 -1
  78. package/esm2022/license/license-error/component.mjs +1 -1
  79. package/esm2022/list-display/component.mjs +1 -1
  80. package/esm2022/metric-chart/metric-chart.component.mjs +1 -1
  81. package/esm2022/metric-chart/metric-time-pick.mjs +1 -1
  82. package/esm2022/multi-search/action-input/component.mjs +1 -1
  83. package/esm2022/multi-search/form/component.mjs +1 -1
  84. package/esm2022/multi-search/multi-search-tags/component.mjs +1 -1
  85. package/esm2022/mutable/mosaic/mosaic.component.mjs +1 -1
  86. package/esm2022/notification/feedback-notification/component.mjs +1 -1
  87. package/esm2022/overview-banner/overview-banner.component.mjs +1 -1
  88. package/esm2022/page-guard/component/component.mjs +1 -1
  89. package/esm2022/page-scaffold/navigation/breadcrumb/breadcrumb.component.mjs +1 -1
  90. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-li/nav-item-li.component.mjs +1 -1
  91. package/esm2022/page-scaffold/navigation/nav-menu/nav-item-ul/nav-item-ul.component.mjs +1 -1
  92. package/esm2022/page-scaffold/navigation/nav-menu/nav-menu.component.mjs +1 -1
  93. package/esm2022/page-scaffold/page/notices/maintenance.component.mjs +1 -1
  94. package/esm2022/page-scaffold/page/notices/notice.component.mjs +1 -1
  95. package/esm2022/page-scaffold/page/page.component.mjs +1 -1
  96. package/esm2022/page-scaffold/page-header/account-menu/component/component.mjs +1 -1
  97. package/esm2022/page-scaffold/page-header/common-layout/namespace-select/component.mjs +1 -1
  98. package/esm2022/page-scaffold/page-header/common-layout/product-select/component.mjs +1 -1
  99. package/esm2022/page-scaffold/page-header/component.mjs +1 -1
  100. package/esm2022/page-scaffold/page-header/enterprise-support-status/component.mjs +1 -1
  101. package/esm2022/page-scaffold/page-header/header-notify/component/header-notify.component.mjs +1 -1
  102. package/esm2022/page-scaffold/page-header/header-notify/component/notification-list/notification-list.component.mjs +1 -1
  103. package/esm2022/page-scaffold/page-header/help-menu/component/component.mjs +1 -1
  104. package/esm2022/pie-derivative-chart/donut-status/component.mjs +1 -1
  105. package/esm2022/pie-derivative-chart/radial-bar/radial-bar-chart.component.mjs +1 -1
  106. package/esm2022/pod-status/component.mjs +1 -1
  107. package/esm2022/searchable-selector/component.mjs +1 -1
  108. package/esm2022/skeleton/item/component.mjs +1 -1
  109. package/esm2022/skeleton/nav-skeleton/component.mjs +1 -1
  110. package/esm2022/table/component.mjs +3 -3
  111. package/esm2022/view-chart/custom-template/dropdown-legend.mjs +1 -1
  112. package/esm2022/view-chart/legend/legend.component.mjs +1 -1
  113. package/esm2022/view-chart/view-chart.component.mjs +1 -1
  114. package/esm2022/view-zchart/custom-template/dropdown-legend.mjs +1 -1
  115. package/esm2022/view-zchart/legend/legend.component.mjs +1 -1
  116. package/esm2022/view-zchart/view-zchart.component.mjs +1 -1
  117. package/esm2022/widget/card-section/card-section.component.mjs +1 -1
  118. package/esm2022/widget/confirm-delete/confirm-delete.component.mjs +1 -1
  119. package/esm2022/widget/current-time/component.mjs +1 -1
  120. package/esm2022/widget/date-range-picker/component.mjs +1 -1
  121. package/esm2022/widget/field-set/column/component.mjs +2 -2
  122. package/esm2022/widget/field-set/group/component.mjs +1 -1
  123. package/esm2022/widget/field-set/item/component.mjs +1 -1
  124. package/esm2022/widget/foldable-block/component.mjs +1 -1
  125. package/esm2022/widget/foldable-item-in-table/component.mjs +1 -1
  126. package/esm2022/widget/loading-mask/loading-mask.component.mjs +1 -1
  127. package/esm2022/widget/password-input/component.mjs +1 -1
  128. package/esm2022/widget/relative-time/component.mjs +1 -1
  129. package/esm2022/widget/resource-label/component.mjs +1 -1
  130. package/esm2022/widget/resource-multi-select/component.mjs +1 -1
  131. package/esm2022/widget/search-panel/component.mjs +1 -1
  132. package/esm2022/widget/search-panel/search-item/component.mjs +1 -1
  133. package/esm2022/widget/status-icon/status-icon.component.mjs +1 -1
  134. package/esm2022/widget/tags-label/component.mjs +1 -1
  135. package/esm2022/widget/terminating-tag/component.mjs +1 -1
  136. package/esm2022/widget/text-ellipsis/component.mjs +1 -1
  137. package/esm2022/widget/text-with-url/component.mjs +1 -1
  138. package/esm2022/widget/zero-state/zero-state.component.mjs +1 -1
  139. package/esm2022/workload-status-icon/component.mjs +1 -1
  140. package/esm2022/xterm/xterm-terminal/xterm-terminal.component.mjs +1 -1
  141. package/esm2022/xterm/xterm.component.mjs +1 -1
  142. package/package.json +1 -1
  143. package/table/component.d.ts +1 -1
@@ -546,7 +546,7 @@ export class TableComponent {
546
546
  this.delete = new EventEmitter();
547
547
  this.sortChange = new EventEmitter();
548
548
  this.currentPage$ = new BehaviorSubject(1);
549
- this.pageSize$ = new BehaviorSubject(DEFAULT_PAGE_SIZE);
549
+ this.pageSize$ = new BehaviorSubject(this.pageSize || DEFAULT_PAGE_SIZE);
550
550
  this.pagination = {
551
551
  total: 0,
552
552
  pages: 0,
@@ -823,5 +823,5 @@ __decorate([
823
823
  type: HostBinding,
824
824
  args: ['style.max-height']
825
825
  }] }); })();
826
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TableComponent, { className: "TableComponent" }); })();
827
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RhYmxlL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90YWJsZS90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFRLE1BQU0sWUFBWSxDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsR0FFWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzFFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLEdBQUcsRUFDSCxLQUFLLEVBQ0wsVUFBVSxFQUNWLEVBQUUsRUFDRixhQUFhLEVBQ2IsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xFLE9BQU8sRUFDTCxpQkFBaUIsR0FFbEIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RSxPQUFP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QUNGLFVBQVU7cURBQTBCO0FBYXBEO0lBREMsZUFBZSxFQUFFOzhCQUNOLFVBQVU7aURBQStCO2lGQXREMUMsY0FBYztjQU4xQixTQUFTOzJCQUNFLFdBQVcsbUJBRUosdUJBQXVCLENBQUMsTUFBTTttR0FRL0MsSUFBSTtrQkFESCxLQUFLO1lBSU4sS0FBSyxNQUdMLFVBQVU7a0JBRFQsS0FBSztZQUlOLFdBQVcsTUFHWCxZQUFZO2tCQURYLEtBQUs7WUFJTixhQUFhLE1BR2Isc0JBQXNCO2tCQURyQixLQUFLO1lBSU4sTUFBTTtrQkFETCxLQUFLO1lBSU4sV0FBVztrQkFEVixLQUFLO1lBSU4sT0FBTztrQkFETixLQUFLO1lBSU4sUUFBUSxNQUdSLFlBQVk7a0JBRFgsS0FBSztZQUlOLGFBQWEsTUFHYixPQUFPO2tCQUROLEtBQUs7WUFRTixRQUFRO2tCQURQLEtBQUs7WUFJTixTQUFTLE1BR1QsT0FBTztrQkFETixLQUFLO1lBSU4sVUFBVTtrQkFEVCxLQUFLO1lBSU4sb0JBQW9CO2tCQURuQixLQUFLO1lBSU4sZ0JBQWdCO2tCQURmLEtBQUs7WUFJTixRQUFRO2tCQURQLEtBQUs7WUFJTixlQUFlO2tCQURkLEtBQUs7WUFJTixnQkFBZ0I7a0JBRGYsS0FBSztZQUdHLGVBQWU7a0JBQXZCLEtBQUs7WUFHTixNQUFNO2tCQURMLE1BQU07WUFJUCxNQUFNO2tCQURMLE1BQU07WUFJUCxVQUFVO2tCQURULE1BQU07WUFJUCxhQUFhO2tCQURaLGVBQWU7bUJBQUMscUJBQXFCO1lBSWxDLGFBQWE7a0JBRGhCLFdBQVc7bUJBQUMsaUNBQWlDO1lBTTFDLG1CQUFtQjtrQkFEdEIsV0FBVzttQkFBQyxrQkFBa0I7O2tGQWhHcEIsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGhhbmRsZVBpeGVsLCBTb3J0IH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFF1ZXJ5TGlzdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFRyYWNrQnlGdW5jdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGdldCwgaXNGdW5jdGlvbiwgaXNPYmplY3RMaWtlLCBpc1N0cmluZywgbGFzdCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGNvbWJpbmVMYXRlc3QsXG4gIG1hcCxcbiAgbWVyZ2UsXG4gIE9ic2VydmFibGUsXG4gIG9mLFxuICBSZXBsYXlTdWJqZWN0LFxuICBzd2l0Y2hNYXAsXG4gIHRhcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEFDVElPTiwgQ1JFQVRFRF9BVCwgTElOSywgVVBEQVRFIH0gZnJvbSAnLi4vY29yZS9jb25zdGFudHMvY29uc3RhbnRzJztcbmltcG9ydCB7IGlzRmllbGROb3RBdmFpbGFibGUgfSBmcm9tICcuLi9jb3JlL3BpcGVzL2ZpZWxkLW5vdC1hdmFpbGFibGUucGlwZSc7XG5pbXBvcnQgeyBDUkVBVE9SLCBOQU1FIH0gZnJvbSAnLi4vY29yZS9zZXJ2aWNlcy9rOHMtdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIEs4c1Jlc291cmNlQWN0aW9uLFxuICBLdWJlcm5ldGVzUmVzb3VyY2VMaXN0LFxufSBmcm9tICcuLi9jb3JlL3R5cGVzL2s4cy9wdWJsaWMtYXBpJztcbmltcG9ydCB7IGlzSzhzUmVzb3VyY2UsIG5vb3AsIHRyYWNrQnlVaWQgfSBmcm9tICcuLi9jb3JlL3V0aWxzL2NvbW1vbic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlSW5wdXQgfSBmcm9tICcuLi9jb3JlL3V0aWxzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgcHVibGlzaFJlZiB9IGZyb20gJy4uL2NvcmUvdXRpbHMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFN0cmVhbUxpc3RMb2FkZXIgfSBmcm9tICcuLi9rOHMtcmVzb3VyY2UtbGlzdC90eXBlcyc7XG5cbmltcG9ydCB7XG4gIERFRkFVTFRfUEFHRV9TSVpFLFxuICBERUZBVUxUX1BBR0VfU0laRV9PUFRJT05TLFxuICBERUZBVUxUX1BBR0lOQVRJT05fTEFZT1VULFxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBUYWJsZUNlbGxEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2hlbHBlcnMuZGlyZWN0aXZlJztcbmltcG9ydCB7XG4gIE5vcm1hbGl6ZWRUYWJsZUNvbHVtbkRlZixcbiAgVGFibGVDb2x1bW5EZWZzLFxuICBUYWJsZUNvbHVtbixcbiAgVGFibGVDb2x1bW5EZWYsXG4gIFRhYmxlRmlsdGVyRm4sXG4gIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmEsXG4gIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmFJdGVtLFxuICBUYWJsZUNvbHVtbkFjdGlvbkRpc2FibGVkSGFuZGxlcixcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBLTk9XTl9DT0xVTU5TLCBUYWJsZVV0aWxTZXJ2aWNlIH0gZnJvbSAnLi91dGlsLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtdGFibGUnLFxuICB0ZW1wbGF0ZVVybDogJ3RlbXBsYXRlLmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbXBvbmVudDxcbiAgSXRlbSBleHRlbmRzIG9iamVjdCxcbiAgQ29udGV4dCA9IFRhYmxlVXRpbFNlcnZpY2U8SXRlbT4sXG4+IHtcbiAgQElucHV0KClcbiAgbGlzdCE6IFN0cmVhbUxpc3RMb2FkZXI8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxJdGVtPiwgSXRlbT47XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIGxpc3QkITogT2JzZXJ2YWJsZTxTdHJlYW1MaXN0TG9hZGVyPEt1YmVybmV0ZXNSZXNvdXJjZUxpc3Q8SXRlbT4sIEl0ZW0+PjtcblxuICBASW5wdXQoKVxuICBkYXRhU291cmNlOiBJdGVtW10gfCBPYnNlcnZhYmxlPEl0ZW1bXT47XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIGRhdGFTb3VyY2UkITogT2JzZXJ2YWJsZTxJdGVtW10gfCBPYnNlcnZhYmxlPEl0ZW1bXT4+O1xuXG4gIEBJbnB1dCgpXG4gIHJlc291cmNlTmFtZTogc3RyaW5nO1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICByZXNvdXJjZU5hbWUkITogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuXG4gIEBJbnB1dCgpXG4gIHJlc291cmNlTmFtZVRyYW5zbGF0ZWQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBzdGlja3k6IG51bWJlciB8IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwZXJtaXNzaW9uczogUGFydGlhbDxSZWNvcmQ8SzhzUmVzb3VyY2VBY3Rpb24sIGJvb2xlYW4+PjtcblxuICBASW5wdXQoKVxuICBjb2x1bW5zOiBSZWFkb25seUFycmF5PFRhYmxlQ29sdW1uPEl0ZW0sIENvbnRleHQ+PjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgY29sdW1ucyQhOiBPYnNlcnZhYmxlPEFycmF5PFRhYmxlQ29sdW1uPEl0ZW0sIENvbnRleHQ+Pj47XG5cbiAgQElucHV0KClcbiAgZmlsdGVyUGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgZmlsdGVyUGFyYW1zJCE6IE9ic2VydmFibGU8UmVjb3JkPHN0cmluZywgdW5rbm93bj4+O1xuXG4gIEBJbnB1dCgpXG4gIGNvbnRleHQ6IENvbnRleHQ7XG5cbiAgZ2V0IGZpbmFsQ29udGV4dCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0ID8/ICh0aGlzLnV0aWwgYXMgdW5rbm93biBhcyBDb250ZXh0KTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIGZpbHRlckZuOiBUYWJsZUZpbHRlckZuPEl0ZW0sIENvbnRleHQ+O1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBmaWx0ZXJGbiQhOiBPYnNlcnZhYmxlPFRhYmxlRmlsdGVyRm48SXRlbSwgQ29udGV4dD4+O1xuXG4gIEBJbnB1dCgpXG4gIHRyYWNrQnk6IFRyYWNrQnlGdW5jdGlvbjxJdGVtPiA9IHRoaXMudHJhY2tCeUZuO1xuXG4gIEBJbnB1dCgpXG4gIG5vRGF0YUhpbnQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBsb2FkaW5nRXJyb3JUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBASW5wdXQoKVxuICBlbmFibGVQYWdpbmF0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgcGFnZVNpemUgPSBERUZBVUxUX1BBR0VfU0laRTtcblxuICBASW5wdXQoKVxuICBwYWdlU2l6ZU9wdGlvbnMgPSBERUZBVUxUX1BBR0VfU0laRV9PUFRJT05TO1xuXG4gIEBJbnB1dCgpXG4gIHBhZ2luYXRpb25MYXlvdXQgPSBERUZBVUxUX1BBR0lOQVRJT05fTEFZT1VUO1xuXG4gIEBJbnB1dCgpIGZpcnN0U2Nyb2xsTG9hZDogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKVxuICB1cGRhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPEl0ZW0+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGRlbGV0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8SXRlbT4oKTtcblxuICBAT3V0cHV0KClcbiAgc29ydENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8U29ydD4oKTtcblxuICBAQ29udGVudENoaWxkcmVuKFRhYmxlQ2VsbERlZkRpcmVjdGl2ZSlcbiAgdGFibGVDZWxsRGVmczogUXVlcnlMaXN0PFRhYmxlQ2VsbERlZkRpcmVjdGl2ZTxJdGVtPj47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hdWktdGFibGVfX3Njcm9sbC13cmFwcGVyJylcbiAgZ2V0IHNjcm9sbFdyYXBwZXIoKSB7XG4gICAgcmV0dXJuICEhdGhpcy5zdGlja3k7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1heC1oZWlnaHQnKVxuICBnZXQgc2Nyb2xsV3JhcHBlckhlaWdodCgpIHtcbiAgICByZXR1cm4gaGFuZGxlUGl4ZWwodGhpcy5zdGlja3kpO1xuICB9XG5cbiAgY3VycmVudFBhZ2UkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDEpO1xuXG4gIHBhZ2VTaXplJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPihERUZBVUxUX1BBR0VfU0laRSk7XG5cbiAgcGFnaW5hdGlvbiA9IHtcbiAgICB0b3RhbDogMCxcbiAgICBwYWdlczogMCxcbiAgfTtcblxuICBmaW5hbERhdGFTb3VyY2UkID0gdGhpcy5kYXRhU291cmNlJC5waXBlKFxuICAgIHN3aXRjaE1hcChkYXRhU291cmNlID0+XG4gICAgICBkYXRhU291cmNlIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSA/IGRhdGFTb3VyY2UgOiBvZihkYXRhU291cmNlKSxcbiAgICApLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBmaW5hbFJlc291cmNlTmFtZSQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLmxpc3QkLCB0aGlzLnJlc291cmNlTmFtZSRdKS5waXBlKFxuICAgIHN3aXRjaE1hcCgoW2xpc3QsIHJlc291cmNlTmFtZV0pID0+XG4gICAgICAhbGlzdCB8fCByZXNvdXJjZU5hbWVcbiAgICAgICAgPyBvZihyZXNvdXJjZU5hbWUpXG4gICAgICAgIDogbGlzdC5yYXdSZXNwb25zZSQucGlwZShcbiAgICAgICAgICAgIG1hcChyZXMgPT4gcmVzPy5raW5kLnNsaWNlKDAsIC00KS50b0xvd2VyQ2FzZSgpKSxcbiAgICAgICAgICApLFxuICAgICksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGNvbHVtbkRlZnMkID0gdGhpcy5jb2x1bW5zJC5waXBlKFxuICAgIG1hcChcbiAgICAgIGNvbHVtbnMgPT5cbiAgICAgICAgKGNvbHVtbnMgfHwgW10pLm1hcChjb2x1bW4gPT4ge1xuICAgICAgICAgIGNvbHVtbiA9IGlzU3RyaW5nKGNvbHVtbikgPyB7IG5hbWU6IGNvbHVtbiB9IDogY29sdW1uO1xuICAgICAgICAgIGlmICghKCdwYXRoJyBpbiBjb2x1bW4pICYmICFLTk9XTl9DT0xVTU5TLmhhcyhjb2x1bW4ubmFtZSkpIHtcbiAgICAgICAgICAgIGNvbHVtbi5wYXRoID0gY29sdW1uLm5hbWU7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMubm9ybWFsaXplQ29sdW1uRGVmU29ydChjb2x1bW4pO1xuICAgICAgICAgIHRoaXMubm9ybWFsaXplQ29sdW1uRGVmVHJhbnNsYXRlKGNvbHVtbik7XG4gICAgICAgICAgcmV0dXJuIHRoaXMubm9ybWFsaXplQWN0aW9uQ29sdW1uRGVmKGNvbHVtbik7XG4gICAgICAgIH0pIGFzIFRhYmxlQ29sdW1uRGVmczxJdGVtLCBDb250ZXh0PixcbiAgICApLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBjb2x1bW5OYW1lcyQgPSB0aGlzLmNvbHVtbkRlZnMkLnBpcGUoXG4gICAgbWFwKGNvbHVtbnMgPT4gY29sdW1ucy5tYXAoY29sdW1uID0+IGNvbHVtbi5uYW1lKSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGFjdGl2ZVNvcnQkJCA9IG5ldyBSZXBsYXlTdWJqZWN0PFNvcnQ+KDEpO1xuXG4gIGFjdGl2ZVNvcnQkOiBPYnNlcnZhYmxlPFNvcnQ+ID0gbWVyZ2UoXG4gICAgdGhpcy5hY3RpdmVTb3J0JCQsXG4gICAgdGhpcy5jb2x1bW5EZWZzJC5waXBlKFxuICAgICAgbWFwKGNvbHVtbkRlZnMgPT4ge1xuICAgICAgICBjb25zdCBjb2x1bW5EZWYgPSBjb2x1bW5EZWZzLmZpbmQoY29sdW1uID0+IGNvbHVtbi5zb3J0Py5hY3RpdmUpO1xuICAgICAgICByZXR1cm4gY29sdW1uRGVmXG4gICAgICAgICAgPyB7IGFjdGl2ZTogY29sdW1uRGVmLm5hbWUsIGRpcmVjdGlvbjogY29sdW1uRGVmLnNvcnQuZGlyZWN0aW9uIH1cbiAgICAgICAgICA6IG51bGw7XG4gICAgICB9KSxcbiAgICApLFxuICApLnBpcGUocHVibGlzaFJlZigpKTtcblxuICBmaWx0ZXJlZEl0ZW1zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMubGlzdCQsIHRoaXMuZmluYWxEYXRhU291cmNlJF0pLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKFtsaXN0LCBkYXRhU291cmNlXSkgPT4gKGxpc3QgPyBsaXN0Lml0ZW1zJCA6IG9mKGRhdGFTb3VyY2UpKSksXG4gICAgKSxcbiAgICB0aGlzLmNvbHVtbkRlZnMkLFxuICAgIHRoaXMuYWN0aXZlU29ydCQsXG4gICAgdGhpcy5maWx0ZXJQYXJhbXMkLFxuICAgIHRoaXMuZmlsdGVyRm4kLFxuICBdKS5waXBlKFxuICAgIG1hcChcbiAgICAgIChbXG4gICAgICAgIGl0ZW1zLFxuICAgICAgICBjb2x1bW5EZWZzLFxuICAgICAgICBhY3RpdmVTb3J0LFxuICAgICAgICBmaWx0ZXJQYXJhbXMsXG4gICAgICAgIGZpbHRlckZuID0gdGhpcy51dGlsLmRlZmF1bHRGaWx0ZXJGbixcbiAgICAgIF0pID0+XG4gICAgICAgIGZpbHRlckZuLmNhbGwoXG4gICAgICAgICAgdGhpcy5maW5hbENvbnRleHQsXG4gICAgICAgICAgaXRlbXMsXG4gICAgICAgICAgY29sdW1uRGVmcyxcbiAgICAgICAgICBhY3RpdmVTb3J0LFxuICAgICAgICAgIGZpbHRlclBhcmFtcyxcbiAgICAgICAgICB0aGlzLmZpbmFsQ29udGV4dCxcbiAgICAgICAgKSxcbiAgICApLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBwYWdlZEl0ZW1zJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgIHRoaXMuZmlsdGVyZWRJdGVtcyQsXG4gICAgdGhpcy5jdXJyZW50UGFnZSQsXG4gICAgdGhpcy5wYWdlU2l6ZSQsXG4gIF0pLnBpcGUoXG4gICAgdGFwKChbaXRlbXMsIF8sIHBhZ2VTaXplXSkgPT4ge1xuICAgICAgaWYgKHRoaXMuZW5hYmxlUGFnaW5hdGlvbikge1xuICAgICAgICB0aGlzLnBhZ2luYXRpb24gPVxuICAgICAgICAgIGl0ZW1zLmxlbmd0aCA9PT0gMFxuICAgICAgICAgICAgPyB7IHRvdGFsOiAwLCBwYWdlczogMCB9XG4gICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICB0b3RhbDogaXRlbXMubGVuZ3RoLFxuICAgICAgICAgICAgICAgIHBhZ2VzOiBNYXRoLmNlaWwoaXRlbXMubGVuZ3RoIC8gcGFnZVNpemUpLFxuICAgICAgICAgICAgICB9O1xuICAgICAgfVxuICAgIH0pLFxuICAgIG1hcCgoW2l0ZW1zLCBjdXJyZW50UGFnZSwgcGFnZVNpemVdKSA9PiB7XG4gICAgICBpZiAoIXRoaXMuZW5hYmxlUGFnaW5hdGlvbikge1xuICAgICAgICByZXR1cm4gaXRlbXM7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5wYWdpbmF0aW9uLnBhZ2VzIDwgY3VycmVudFBhZ2UgJiYgdGhpcy5wYWdpbmF0aW9uLnBhZ2VzICE9PSAwKSB7XG4gICAgICAgIGN1cnJlbnRQYWdlID0gdGhpcy5wYWdpbmF0aW9uLnBhZ2VzO1xuICAgICAgICB0aGlzLmN1cnJlbnRQYWdlJC5uZXh0KGN1cnJlbnRQYWdlKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGJlZ2luID0gKGN1cnJlbnRQYWdlIC0gMSkgKiBwYWdlU2l6ZTtcbiAgICAgIHJldHVybiBpdGVtcy5zbGljZShiZWdpbiwgYmVnaW4gKyBwYWdlU2l6ZSk7XG4gICAgfSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGdldCBpc0xpc3RQYWdlKCkge1xuICAgIHJldHVybiB0aGlzLnJvdXRlLnJvdXRlQ29uZmlnPy5wYXRoID09PSAnbGlzdCc7XG4gIH1cblxuICBpc0xpc3RQYWdlJCA9IHRoaXMucm91dGUudXJsLnBpcGUoXG4gICAgbWFwKCgpID0+IHRoaXMuaXNMaXN0UGFnZSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGlzRnVuY3Rpb24gPSBpc0Z1bmN0aW9uO1xuICBpc0s4c1Jlc291cmNlID0gaXNLOHNSZXNvdXJjZTtcbiAgaXNGaWVsZE5vdEF2YWlsYWJsZSA9IGlzRmllbGROb3RBdmFpbGFibGU7XG5cbiAgZ2V0VmFsdWVGcm9tUGF0aCA9IHRoaXMudXRpbC5nZXRWYWx1ZUZyb21QYXRoO1xuICB0cmFja0J5TmFtZShfOiBudW1iZXIsIGNvbHVtbkRlZjogVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD4pIHtcbiAgICByZXR1cm4gY29sdW1uRGVmLm5hbWU7XG4gIH1cblxuICBOQU1FID0gTkFNRTtcbiAgQ1JFQVRPUiA9IENSRUFUT1I7XG4gIENSRUFURURfQVQgPSBDUkVBVEVEX0FUO1xuICBBQ1RJT04gPSBBQ1RJT047XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgdXRpbDogVGFibGVVdGlsU2VydmljZTxJdGVtPixcbiAgKSB7XG4gICAgdGhpcy5nZXRDb2x1bW5UZW1wbGF0ZSA9IHRoaXMuZ2V0Q29sdW1uVGVtcGxhdGUuYmluZCh0aGlzKTtcbiAgfVxuXG4gIG5vcm1hbGl6ZUNvbHVtbkRlZlRyYW5zbGF0ZShjb2x1bW46IFRhYmxlQ29sdW1uRGVmPEl0ZW0sIENvbnRleHQ+KSB7XG4gICAgY29uc3QgeyB0cmFuc2xhdGUgfSA9IGNvbHVtbjtcbiAgICBpZiAodHJhbnNsYXRlID09IG51bGwpIHtcbiAgICAgIHJldHVybiBjb2x1bW47XG4gICAgfVxuICAgIGlmICh0cmFuc2xhdGUgPT09IHRydWUpIHtcbiAgICAgIGNvbHVtbi50cmFuc2xhdGUgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAoaXNTdHJpbmcodHJhbnNsYXRlKSkge1xuICAgICAgY29sdW1uLnRyYW5zbGF0ZSA9ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKSA9PiB0cmFuc2xhdGUgKyB2YWx1ZTtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0TGlrZSh0cmFuc2xhdGUpKSB7XG4gICAgICBjb2x1bW4udHJhbnNsYXRlID0gKHZhbHVlOiBzdHJpbmcgfCBudW1iZXIpID0+IGdldCh0cmFuc2xhdGUsIHZhbHVlKTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbHVtbjtcbiAgfVxuXG4gIG5vcm1hbGl6ZUNvbHVtbkRlZlNvcnQoY29sdW1uOiBUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0Pikge1xuICAgIGNvbnN0IHsgc29ydCB9ID0gY29sdW1uO1xuICAgIGlmIChzb3J0ID09IG51bGwpIHtcbiAgICAgIHJldHVybiBjb2x1bW47XG4gICAgfVxuICAgIGlmIChzb3J0ID09PSB0cnVlKSB7XG4gICAgICBjb2x1bW4uc29ydCA9IHtcbiAgICAgICAgZGlyZWN0aW9uOiAnYXNjJyxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChpc1N0cmluZyhzb3J0KSkge1xuICAgICAgY29sdW1uLnNvcnQgPSB7XG4gICAgICAgIGRpcmVjdGlvbjogc29ydCxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChpc0Z1bmN0aW9uKHNvcnQpKSB7XG4gICAgICBjb2x1bW4uc29ydCA9IHtcbiAgICAgICAgZGlyZWN0aW9uOiAnYXNjJyxcbiAgICAgICAgaGFuZGxlcjogc29ydCxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChzb3J0LmRpcmVjdGlvbiA9PSBudWxsKSB7XG4gICAgICBzb3J0LmRpcmVjdGlvbiA9ICdhc2MnO1xuICAgIH1cbiAgICByZXR1cm4gY29sdW1uO1xuICB9XG5cbiAgb25Tb3J0Q2hhbmdlKCRldmVudDogU29ydCkge1xuICAgIHRoaXMuc29ydENoYW5nZS5uZXh0KCRldmVudCk7XG4gICAgdGhpcy5hY3RpdmVTb3J0JCQubmV4dCgkZXZlbnQpO1xuICB9XG5cbiAgbm9ybWFsaXplQWN0aW9uQ29sdW1uRGVmKFxuICAgIGNvbHVtbjogVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD4sXG4gICk6IE5vcm1hbGl6ZWRUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0PiB7XG4gICAgaWYgKGNvbHVtbi5uYW1lICE9PSBBQ1RJT04gfHwgIWNvbHVtbi5leHRyYSkge1xuICAgICAgcmV0dXJuIGNvbHVtbiBhcyBOb3JtYWxpemVkVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD47XG4gICAgfVxuXG4gICAgY29uc3QgZXh0cmEgPSBjb2x1bW4uZXh0cmEgYXMgVGFibGVDb2x1bW5BY3Rpb25FeHRyYTxJdGVtLCBDb250ZXh0PjtcbiAgICAoW0s4c1Jlc291cmNlQWN0aW9uLkRFTEVURSwgSzhzUmVzb3VyY2VBY3Rpb24uVVBEQVRFXSBhcyBjb25zdCkuZm9yRWFjaChcbiAgICAgIGFjdGlvbiA9PiB7XG4gICAgICAgIGlmICghZXh0cmFbYWN0aW9uXSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBsZXQgaGFuZGxlciA9IChcbiAgICAgICAgICBleHRyYVthY3Rpb25dIGFzIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmFJdGVtPEl0ZW0sIENvbnRleHQ+XG4gICAgICAgICkuZGlzYWJsZWQ7XG4gICAgICAgIGlmIChoYW5kbGVyID09IG51bGwpIHtcbiAgICAgICAgICBoYW5kbGVyID0gbm9vcCBhcyBUYWJsZUNvbHVtbkFjdGlvbkRpc2FibGVkSGFuZGxlcjxJdGVtLCBDb250ZXh0PjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNGdW5jdGlvbihoYW5kbGVyKSkge1xuICAgICAgICAgIChcbiAgICAgICAgICAgIGV4dHJhW2FjdGlvbl0gYXMgVGFibGVDb2x1bW5BY3Rpb25FeHRyYUl0ZW08SXRlbSwgQ29udGV4dD5cbiAgICAgICAgICApLmRpc2FibGVkID0geyBoYW5kbGVyIH07XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgKTtcbiAgICByZXR1cm4gY29sdW1uIGFzIE5vcm1hbGl6ZWRUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0PjtcbiAgfVxuXG4gIGdldENvbHVtblRlbXBsYXRlKGNvbHVtbjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGVDZWxsRGVmcy5maW5kKGRlZiA9PiBkZWYuYWNsVGFibGVDZWxsRGVmID09PSBjb2x1bW4pXG4gICAgICA/LnRlbXBsYXRlUmVmO1xuICB9XG5cbiAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IEl0ZW0pIHtcbiAgICByZXR1cm4gaXNLOHNSZXNvdXJjZShpdGVtKVxuICAgICAgPyB0cmFja0J5VWlkKGluZGV4LCBpdGVtKVxuICAgICAgOiBnZXQoaXRlbSwgTkFNRSwgaW5kZXgpO1xuICB9XG5cbiAgb25VcGRhdGUoZGF0YTogSXRlbSwgY29sdW1uRGVmOiBUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0Pikge1xuICAgIHRoaXMudXBkYXRlLmVtaXQoZGF0YSk7XG5cbiAgICBpZiAoZ2V0KGNvbHVtbkRlZi5leHRyYSwgW1VQREFURSwgTElOS10pICE9PSBmYWxzZSkge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoXG4gICAgICAgIFtcbiAgICAgICAgICB0aGlzLmlzTGlzdFBhZ2UgPyAnLi4nIDogJy4nLFxuICAgICAgICAgIFVQREFURSxcbiAgICAgICAgICB0aGlzLmdldFZhbHVlRnJvbVBhdGgoZGF0YSwgTkFNRSksXG4gICAgICAgIF0sXG4gICAgICAgIHtcbiAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLFxuICAgICAgICB9LFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBnZXRWYWx1ZTxULCBGIGV4dGVuZHMgKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gVD4oXG4gICAgZnVuY3Rpb25PclZhbHVlOiBUIHwgRixcbiAgICAuLi5hcmdzOiBQYXJhbWV0ZXJzPEY+XG4gICk6IFQge1xuICAgIHJldHVybiBpc0Z1bmN0aW9uKGZ1bmN0aW9uT3JWYWx1ZSlcbiAgICAgID8gZnVuY3Rpb25PclZhbHVlLmNhbGwobGFzdChhcmdzKSwgLi4uYXJncylcbiAgICAgIDogZnVuY3Rpb25PclZhbHVlO1xuICB9XG59XG4iLCI8YXVpLXRhYmxlXG4gIGF1aVNvcnRcbiAgW2FjdGl2ZV09XCIoYWN0aXZlU29ydCQgfCBhc3luYyk/LmFjdGl2ZVwiXG4gIFtkaXJlY3Rpb25dPVwiKGFjdGl2ZVNvcnQkIHwgYXN5bmMpPy5kaXJlY3Rpb25cIlxuICBbZGF0YVNvdXJjZV09XCJwYWdlZEl0ZW1zJFwiXG4gIFt0cmFja0J5XT1cInRyYWNrQnlcIlxuICAoc29ydENoYW5nZSk9XCJvblNvcnRDaGFuZ2UoJGV2ZW50KVwiXG4gIFthdWlUYWJsZVNjcm9sbGFibGVdPVwiISFzdGlja3lcIlxuPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nRm9yPVwibGV0IGNvbHVtbkRlZiBvZiBjb2x1bW5EZWZzJCB8IGFzeW5jOyB0cmFja0J5OiB0cmFja0J5TmFtZVwiXG4gICAgW2F1aVRhYmxlQ29sdW1uRGVmXT1cImNvbHVtbkRlZi5uYW1lXCJcbiAgICBbc3RpY2t5XT1cImNvbHVtbkRlZi5zdGlja3lcIlxuICAgIFtzdGlja3lFbmRdPVwiY29sdW1uRGVmLnN0aWNreUVuZFwiXG4gID5cbiAgICA8YXVpLXRhYmxlLWhlYWRlci1jZWxsXG4gICAgICAqYXVpVGFibGVIZWFkZXJDZWxsRGVmXG4gICAgICBbc3R5bGVdPVwiY29sdW1uRGVmLnN0eWxlXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uRGVmLm5hbWUgIT09IEFDVElPTlwiPlxuICAgICAgICA8c3BhblxuICAgICAgICAgICpuZ0lmPVwiY29sdW1uRGVmLnNvcnRcIlxuICAgICAgICAgIGF1aS1zb3J0LWhlYWRlclxuICAgICAgICAgIFtzdGFydF09XCJjb2x1bW5EZWYuc29ydC5kaXJlY3Rpb25cIlxuICAgICAgICAgID57eyBjb2x1bW5EZWYubGFiZWwgfHwgY29sdW1uRGVmLm5hbWUgfCB0cmFuc2xhdGUgfX08L3NwYW5cbiAgICAgICAgPlxuICAgICAgICA8c3BhbiAqbmdJZj1cIiFjb2x1bW5EZWYuc29ydFwiPnt7XG4gICAgICAgICAgY29sdW1uRGVmLmxhYmVsIHx8IGNvbHVtbkRlZi5uYW1lIHwgdHJhbnNsYXRlXG4gICAgICAgIH19PC9zcGFuPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9hdWktdGFibGUtaGVhZGVyLWNlbGw+XG5cbiAgICA8YXVpLXRhYmxlLWNlbGxcbiAgICAgICphdWlUYWJsZUNlbGxEZWY9XCJcbiAgICAgICAgbGV0IGRhdGE7XG4gICAgICAgIGxldCBpbmRleCA9IGluZGV4O1xuICAgICAgICBsZXQgZXZlbiA9IGV2ZW47XG4gICAgICAgIGxldCBvZGQgPSBvZGQ7XG4gICAgICAgIGxldCBsYXN0ID0gbGFzdFxuICAgICAgXCJcbiAgICAgIFtkaXJlY3Rpb25dPVwiY29sdW1uRGVmLmRpcmVjdGlvblwiXG4gICAgICBbbmdDbGFzc109XCJjb2x1bW5EZWYuY2xhc3NcIlxuICAgICAgW3N0eWxlXT1cImNvbHVtbkRlZi5zdHlsZVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIGNvbHVtbkRlZi5uYW1lIHwgcHVyZTogZ2V0Q29sdW1uVGVtcGxhdGUgYXMgdGVtcGxhdGU7XG4gICAgICAgICAgZWxzZSB0YWJsZUNlbGxEZWZUcGxcbiAgICAgICAgXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICB0ZW1wbGF0ZTtcbiAgICAgICAgICAgIGNvbnRleHQ6IHtcbiAgICAgICAgICAgICAgJGltcGxpY2l0OiBkYXRhLFxuICAgICAgICAgICAgICBpbmRleDogaW5kZXgsXG4gICAgICAgICAgICAgIGV2ZW46IGV2ZW4sXG4gICAgICAgICAgICAgIG9kZDogb2RkLFxuICAgICAgICAgICAgICBsYXN0OiBsYXN0LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIFwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICN0YWJsZUNlbGxEZWZUcGw+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgY29sdW1uRGVmLnBhdGggIT0gbnVsbCAmJlxuICAgICAgICAgICAgICAoZGF0YVxuICAgICAgICAgICAgICAgIHwgcHVyZVxuICAgICAgICAgICAgICAgICAgOiBnZXRWYWx1ZUZyb21QYXRoXG4gICAgICAgICAgICAgICAgICA6IGNvbHVtbkRlZi5uYW1lXG4gICAgICAgICAgICAgICAgICA6IGNvbHVtbkRlZi5wYXRoKSBhcyB2YWx1ZTtcbiAgICAgICAgICAgIGVsc2UgZGVmYXVsdFRhYmxlQ2VsbFRwbFxuICAgICAgICAgIFwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICB0YWJsZUNlbGxDb250ZW50O1xuICAgICAgICAgICAgICBjb250ZXh0OiB7IGNvbHVtbkRlZjogY29sdW1uRGVmLCB2YWx1ZTogdmFsdWUgfVxuICAgICAgICAgICAgXCJcbiAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRhYmxlQ2VsbFRwbD5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICBkZWZhdWx0VGFibGVDZWxsO1xuICAgICAgICAgICAgY29udGV4dDogeyBkYXRhOiBkYXRhLCBjb2x1bW5EZWY6IGNvbHVtbkRlZiB9XG4gICAgICAgICAgXCJcbiAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2F1aS10YWJsZS1jZWxsPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8YXVpLXRhYmxlLWhlYWRlci1yb3dcbiAgICAqYXVpVGFibGVIZWFkZXJSb3dEZWY9XCJjb2x1bW5OYW1lcyQgfCBhc3luYzsgc3RpY2t5OiAhIXN0aWNreVwiXG4gID48L2F1aS10YWJsZS1oZWFkZXItcm93PlxuICA8YXVpLXRhYmxlLXJvd1xuICAgICphdWlUYWJsZVJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGNvbHVtbk5hbWVzJCB8IGFzeW5jXCJcbiAgPjwvYXVpLXRhYmxlLXJvdz5cblxuICA8bmctY29udGFpbmVyICphdWlUYWJsZVBsYWNlaG9sZGVyRGVmPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsaXN0XCI+XG4gICAgICA8ZGl2XG4gICAgICAgIFtoaWRkZW5dPVwiXG4gICAgICAgICAgKHBhZ2VkSXRlbXMkIHwgYXN5bmMpPy5sZW5ndGggfHwgIShsaXN0Lml0ZW1zJCB8IGFzeW5jKT8ubGVuZ3RoXG4gICAgICAgIFwiXG4gICAgICAgIGNsYXNzPVwiZW1wdHktcGxhY2Vob2xkZXJcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nSWY9XCJmaW5hbFJlc291cmNlTmFtZSQgfCBhc3luYyBhcyBmaW5hbFJlc291cmNlTmFtZTsgZWxzZSBub0RhdGFcIlxuICAgICAgICA+XG4gICAgICAgICAge3tcbiAgICAgICAgICAgICdub19uYW1lZF9kYXRhX2hpbnQnXG4gICAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6XG4gICAgICAgICAgICAgICAgICAgICAgcmVzb3VyY2VOYW1lVHJhbnNsYXRlZCB8fCAoZmluYWxSZXNvdXJjZU5hbWUgfCB0cmFuc2xhdGUpLFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgIH19XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8YWNsLWs4cy1yZXNvdXJjZS1saXN0LWZvb3RlclxuICAgICAgICBbaGlkZGVuXT1cIlxuICAgICAgICAgICEocGFnZWRJdGVtcyQgfCBhc3luYyk/Lmxlbmd0aCAmJiAobGlzdC5pdGVtcyQgfCBhc3luYyk/Lmxlbmd0aFxuICAgICAgICBcIlxuICAgICAgICBbbGlzdF09XCJsaXN0XCJcbiAgICAgICAgW3Jlc291cmNlTmFtZV09XCJmaW5hbFJlc291cmNlTmFtZSQgfCBhc3luY1wiXG4gICAgICAgIFtyZXNvdXJjZU5hbWVUcmFuc2xhdGVkXT1cInJlc291cmNlTmFtZVRyYW5zbGF0ZWRcIlxuICAgICAgICBbZmlyc3RTY3JvbGxMb2FkXT1cImZpcnN0U2Nyb2xsTG9hZFwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nRXJyb3JUZW1wbGF0ZVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICphY2xLOHNMaXN0Rm9vdGVyTG9hZGluZ0Vycm9yXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJsb2FkaW5nRXJyb3JUZW1wbGF0ZVwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvYWNsLWs4cy1yZXNvdXJjZS1saXN0LWZvb3Rlcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cIiFsaXN0ICYmICEocGFnZWRJdGVtcyQgfCBhc3luYyk/Lmxlbmd0aFwiXG4gICAgICBjbGFzcz1cImVtcHR5LXBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmluYWxEYXRhU291cmNlJCB8IGFzeW5jOyBlbHNlIGxvYWRpbmdcIj5cbiAgICAgICAge3tcbiAgICAgICAgICBub0RhdGFIaW50IHx8XG4gICAgICAgICAgICAoJ25vX25hbWVkX2RhdGFfaGludCdcbiAgICAgICAgICAgICAgfCB0cmFuc2xhdGVcbiAgICAgICAgICAgICAgICA6IHtcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogcmVzb3VyY2VOYW1lVHJhbnNsYXRlZCB8fCAocmVzb3VyY2VOYW1lIHwgdHJhbnNsYXRlKSxcbiAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH19XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbG9hZGluZz5cbiAgICAgICAgPGF1aS1pY29uXG4gICAgICAgICAgY2xhc3M9XCJhY2wtbG9hZGluZy1tYXNrX19pY29uXCJcbiAgICAgICAgICBzaXplPVwiMTZweFwiXG4gICAgICAgICAgaWNvbj1cInNwaW5uZXJcIlxuICAgICAgICA+PC9hdWktaWNvbj5cbiAgICAgICAge3sgJ2xvYWRpbmdfcGxlYXNlX3dhaXQnIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvYXVpLXRhYmxlPlxuXG48bmctY29udGFpbmVyICpuZ0lmPVwiZW5hYmxlUGFnaW5hdGlvblwiPlxuICA8YXVpLXBhZ2luYXRvclxuICAgIFtsYXlvdXRdPVwicGFnaW5hdGlvbkxheW91dFwiXG4gICAgW2N1cnJlbnRQYWdlXT1cImN1cnJlbnRQYWdlJCB8IGFzeW5jXCJcbiAgICBbcGFnZVNpemVdPVwicGFnZVNpemUkIHwgYXN5bmNcIlxuICAgIFt0b3RhbF09XCJwYWdpbmF0aW9uLnRvdGFsXCJcbiAgICAoY3VycmVudFBhZ2VDaGFuZ2UpPVwiY3VycmVudFBhZ2UkLm5leHQoJGV2ZW50KVwiXG4gICAgKHBhZ2VTaXplQ2hhbmdlKT1cInBhZ2VTaXplJC5uZXh0KCRldmVudClcIlxuICAgIFtwYWdlU2l6ZU9wdGlvbnNdPVwicGFnZVNpemVPcHRpb25zXCJcbiAgPjwvYXVpLXBhZ2luYXRvcj5cbjwvbmctY29udGFpbmVyPlxuXG48bmctdGVtcGxhdGVcbiAgI2RlZmF1bHRUYWJsZUNlbGxcbiAgbGV0LWRhdGE9XCJkYXRhXCJcbiAgbGV0LWNvbHVtbkRlZj1cImNvbHVtbkRlZlwiXG4+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbHVtbkRlZi5uYW1lXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiTkFNRVwiPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdJZj1cImRhdGEgfCBwdXJlOiBnZXRWYWx1ZUZyb21QYXRoIDogY29sdW1uRGVmLm5hbWUgYXMgbmFtZVwiXG4gICAgICAgIGNsYXNzPVwiYXVpLXRhYmxlX19jZWxsX19uYW1lXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgICBjb2x1bW5EZWYuZXh0cmE/LmxpbmsgIT09IGZhbHNlICYmICEoZGF0YSB8IGFjbElzRGVsZXRpbmcpO1xuICAgICAgICAgICAgZWxzZSBwbGFpbk5hbWVcbiAgICAgICAgICBcIlxuICAgICAgICA+XG4gICAgICAgICAgPGFcbiAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsoaXNMaXN0UGFnZSQgfCBhc3luYykgPyAnLi4nIDogJy4nLCAnZGV0YWlsJywgbmFtZV1cIlxuICAgICAgICAgICAgW2F1aVRvb2x0aXBdPVwibmFtZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgbmFtZSB9fVxuICAgICAgICAgIDwvYT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjcGxhaW5OYW1lPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBbYXVpVG9vbHRpcF09XCJuYW1lXCJcbiAgICAgICAgICAgIFtjbGFzcy5kZWxldGluZy10ZXh0XT1cImRhdGEgfCBhY2xJc0RlbGV0aW5nXCJcbiAgICAgICAgICAgID57eyBuYW1lIH19PC9zcGFuXG4gICAgICAgICAgPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8YWNsLWRlbGV0aW5nLXRhZ1xuICAgICAgICAgICpuZ0lmPVwiZGF0YSB8IHB1cmU6IGlzSzhzUmVzb3VyY2VcIlxuICAgICAgICAgIFtyZXNvdXJjZV09XCJkYXRhXCJcbiAgICAgICAgPjwvYWNsLWRlbGV0aW5nLXRhZz5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIChkYXRhIHwgcHVyZTogaXNLOHNSZXNvdXJjZSlcbiAgICAgICAgICAgID8gKGRhdGEgfCBhY2xEaXNwbGF5TmFtZSlcbiAgICAgICAgICAgIDogZGF0YS5kaXNwbGF5TmFtZSBhcyBkaXNwbGF5TmFtZVxuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImF1aS10YWJsZV9fY2VsbF9fZGlzcGxheS1uYW1lXCJcbiAgICAgICAgW2NsYXNzLmRlbGV0aW5nLXRleHRdPVwiZGF0YSB8IGFjbElzRGVsZXRpbmdcIlxuICAgICAgPlxuICAgICAgICB7eyBkaXNwbGF5TmFtZSB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiQ1JFQVRFRF9BVFwiPlxuICAgICAgPGFjbC1yZWxhdGl2ZS10aW1lXG4gICAgICAgIFt0aW1lXT1cImRhdGEgfCBwdXJlOiBnZXRWYWx1ZUZyb21QYXRoIDogY29sdW1uRGVmLm5hbWVcIlxuICAgICAgPjwvYWNsLXJlbGF0aXZlLXRpbWU+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiQUNUSU9OXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgW2F1aURyb3Bkb3duXT1cIm1lbnVcIlxuICAgICAgICBbYXVpRHJvcGRvd25Db250ZXh0XT1cInsgJGltcGxpY2l0OiBkYXRhLCBjb2x1bW5EZWY6IGNvbHVtbkRlZiB9XCJcbiAgICAgID5cbiAgICAgICAgPGF1aS1pY29uIGljb249XCJlbGxpcHNpc192X3NcIj48L2F1aS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hEZWZhdWx0PlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgIGRhdGEgfCBwdXJlOiBnZXRWYWx1ZUZyb21QYXRoIDogY29sdW1uRGVmLm5hbWUgYXMgdmFsdWU7XG4gICAgICAgICAgZWxzZSBlbXB0eVxuICAgICAgICBcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgIHRhYmxlQ2VsbENvbnRlbnQ7XG4gICAgICAgICAgICBjb250ZXh0OiB7IGNvbHVtbkRlZjogY29sdW1uRGVmLCB2YWx1ZTogdmFsdWUgfVxuICAgICAgICAgIFwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAjdGFibGVDZWxsQ29udGVudFxuICBsZXQtY29sdW1uRGVmPVwiY29sdW1uRGVmXCJcbiAgbGV0LXZhbHVlPVwidmFsdWVcIlxuPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJcbiAgICAgIGNvbHVtbkRlZi50cmFuc2xhdGUgPT0gbnVsbFxuICAgICAgICA/IHZhbHVlXG4gICAgICAgIDogY29sdW1uRGVmLnRyYW5zbGF0ZSA9PT0gdHJ1ZVxuICAgICAgICAgID8gKHZhbHVlIHwgdHJhbnNsYXRlKVxuICAgICAgICAgIDogKHZhbHVlXG4gICAgICAgICAgICB8IHB1cmU6IGNvbHVtbkRlZi50cmFuc2xhdGUgOiBmaW5hbENvbnRleHRcbiAgICAgICAgICAgIHwgdHJhbnNsYXRlKSBhcyB0ZXh0O1xuICAgICAgZWxzZSBlbXB0eVxuICAgIFwiXG4gID5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cImNvbHVtbkRlZi5lbGxpcHNpczsgZWxzZSBwbGFpblRleHRcIlxuICAgICAgY2xhc3M9XCJ0ZXh0LW92ZXJmbG93XCJcbiAgICAgIFthdWlUb29sdGlwXT1cInRleHRcIlxuICAgID5cbiAgICAgIHt7IHRleHQgfX1cbiAgICA8L2Rpdj5cbiAgICA8bmctdGVtcGxhdGUgI3BsYWluVGV4dD57eyB0ZXh0IH19PC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGVcbiAgI21lbnVcbiAgbGV0LWRhdGFcbiAgbGV0LWNvbHVtbkRlZj1cImNvbHVtbkRlZlwiXG4gID48YXVpLW1lbnU+XG4gICAgPGFjbC1kaXNhYmxlZC1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiY29sdW1uRGVmLmV4dHJhPy51cGRhdGUgIT09IGZhbHNlXCJcbiAgICAgIFtpc0FsbG93ZWRdPVwiIXBlcm1pc3Npb25zIHx8IHBlcm1pc3Npb25zLnVwZGF0ZVwiXG4gICAgICBbaXNEaXNhYmxlZF09XCJcbiAgICAgICAgKGNvbHVtbkRlZi5leHRyYT8udXBkYXRlPy5kaXNhYmxlZC5oYW5kbGVyIHwgcHVyZTogaXNGdW5jdGlvbikgJiZcbiAgICAgICAgKGRhdGEgfCBwdXJlOiBjb2x1bW5EZWYuZXh0cmEudXBkYXRlLmRpc2FibGVkLmhhbmRsZXIgOiBmaW5hbENvbnRleHQpXG4gICAgICBcIlxuICAgICAgW3Rvb2x0aXBdPVwiXG4gICAgICAgIGNvbHVtbkRlZi5leHRyYT8udXBkYXRlPy5kaXNhYmxlZC50b29sdGlwXG4gICAgICAgICAgfCBwdXJlOiBnZXRWYWx1ZSA6IGRhdGEgOiBmaW5hbENvbnRleHRcbiAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgXCJcbiAgICAgIChjbGljayk9XCJvblVwZGF0ZShkYXRhLCBjb2x1bW5EZWYpXCJcbiAgICA+XG4gICAgICA8YXVpLW1lbnUtaXRlbT57eyAndXBkYXRlJyB8IHRyYW5zbGF0ZSB9fTwvYXVpLW1lbnUtaXRlbT5cbiAgICA8L2FjbC1kaXNhYmxlZC1jb250YWluZXI+XG4gICAgPGFjbC1kaXNhYmxlZC1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiY29sdW1uRGVmLmV4dHJhPy5kZWxldGUgIT09IGZhbHNlXCJcbiAgICAgIFtpc0FsbG93ZWRdPVwiIXBlcm1pc3Npb25zIHx8IHBlcm1pc3Npb25zLmRlbGV0ZVwiXG4gICAgICBbaXNEaXNhYmxlZF09XCJcbiAgICAgICAgKGNvbHVtbkRlZi5leHRyYT8uZGVsZXRlPy5kaXNhYmxlZC5oYW5kbGVyIHwgcHVyZTogaXNGdW5jdGlvbikgJiZcbiAgICAgICAgKGRhdGEgfCBwdXJlOiBjb2x1bW5EZWYuZXh0cmEuZGVsZXRlLmRpc2FibGVkLmhhbmRsZXIgOiBmaW5hbENvbnRleHQpXG4gICAgICBcIlxuICAgICAgW3Rvb2x0aXBdPVwiXG4gICAgICAgIGNvbHVtbkRlZi5leHRyYT8uZGVsZXRlPy5kaXNhYmxlZC50b29sdGlwXG4gICAgICAgICAgfCBwdXJlOiBnZXRWYWx1ZSA6IGRhdGEgOiBmaW5hbENvbnRleHRcbiAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgXCJcbiAgICAgIChjbGljayk9XCJkZWxldGUuZW1pdChkYXRhKVwiXG4gICAgPlxuICAgICAgPGF1aS1tZW51LWl0ZW0+e3sgJ2RlbGV0ZScgfCB0cmFuc2xhdGUgfX08L2F1aS1tZW51LWl0ZW0+XG4gICAgPC9hY2wtZGlzYWJsZWQtY29udGFpbmVyPlxuICA8L2F1aS1tZW51PjwvbmctdGVtcGxhdGVcbj5cblxuPG5nLXRlbXBsYXRlICNlbXB0eT57eyBudWxsIHwgYWNsRmllbGROb3RBdmFpbGFibGUgfX08L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI25vRGF0YT57eyAnbm9fZGF0YScgfCB0cmFuc2xhdGUgfX08L25nLXRlbXBsYXRlPlxuIl19
826
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TableComponent, { className: "TableComponent", filePath: "table/component.ts", lineNumber: 64 }); })();
827
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3RhYmxlL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy90YWJsZS90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFRLE1BQU0sWUFBWSxDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFDTCxNQUFNLEVBQ04sU0FBUyxFQUNULFdBQVcsR0FFWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzFFLE9BQU8sRUFDTCxlQUFlLEVBQ2YsYUFBYSxFQUNiLEdBQUcsRUFDSCxLQUFLLEVBQ0wsVUFBVSxFQUNWLEVBQUUsRUFDRixhQUFhLEVBQ2IsU0FBUyxFQUNULEdBQUcsR0FDSixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xFLE9BQU8sRUFDTCxpQkFBaUIsR0FFbEIsTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RSxPQUFP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ekQ7SUFEQyxlQUFlLEVBQUU7OEJBQ0YsVUFBVTtxREFBMEI7QUFhcEQ7SUFEQyxlQUFlLEVBQUU7OEJBQ04sVUFBVTtpREFBK0I7aUZBdEQxQyxjQUFjO2NBTjFCLFNBQVM7MkJBQ0UsV0FBVyxtQkFFSix1QkFBdUIsQ0FBQyxNQUFNO21HQVEvQyxJQUFJO2tCQURILEtBQUs7WUFJTixLQUFLLE1BR0wsVUFBVTtrQkFEVCxLQUFLO1lBSU4sV0FBVyxNQUdYLFlBQVk7a0JBRFgsS0FBSztZQUlOLGFBQWEsTUFHYixzQkFBc0I7a0JBRHJCLEtBQUs7WUFJTixNQUFNO2tCQURMLEtBQUs7WUFJTixXQUFXO2tCQURWLEtBQUs7WUFJTixPQUFPO2tCQUROLEtBQUs7WUFJTixRQUFRLE1BR1IsWUFBWTtrQkFEWCxLQUFLO1lBSU4sYUFBYSxNQUdiLE9BQU87a0JBRE4sS0FBSztZQVFOLFFBQVE7a0JBRFAsS0FBSztZQUlOLFNBQVMsTUFHVCxPQUFPO2tCQUROLEtBQUs7WUFJTixVQUFVO2tCQURULEtBQUs7WUFJTixvQkFBb0I7a0JBRG5CLEtBQUs7WUFJTixnQkFBZ0I7a0JBRGYsS0FBSztZQUlOLFFBQVE7a0JBRFAsS0FBSztZQUlOLGVBQWU7a0JBRGQsS0FBSztZQUlOLGdCQUFnQjtrQkFEZixLQUFLO1lBR0csZUFBZTtrQkFBdkIsS0FBSztZQUdOLE1BQU07a0JBREwsTUFBTTtZQUlQLE1BQU07a0JBREwsTUFBTTtZQUlQLFVBQVU7a0JBRFQsTUFBTTtZQUlQLGFBQWE7a0JBRFosZUFBZTttQkFBQyxxQkFBcUI7WUFJbEMsYUFBYTtrQkFEaEIsV0FBVzttQkFBQyxpQ0FBaUM7WUFNMUMsbUJBQW1CO2tCQUR0QixXQUFXO21CQUFDLGtCQUFrQjs7a0ZBaEdwQixjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaGFuZGxlUGl4ZWwsIFNvcnQgfSBmcm9tICdAYWxhdWRhL3VpJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBUZW1wbGF0ZVJlZixcbiAgVHJhY2tCeUZ1bmN0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZ2V0LCBpc0Z1bmN0aW9uLCBpc09iamVjdExpa2UsIGlzU3RyaW5nLCBsYXN0IH0gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgY29tYmluZUxhdGVzdCxcbiAgbWFwLFxuICBtZXJnZSxcbiAgT2JzZXJ2YWJsZSxcbiAgb2YsXG4gIFJlcGxheVN1YmplY3QsXG4gIHN3aXRjaE1hcCxcbiAgdGFwLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQUNUSU9OLCBDUkVBVEVEX0FULCBMSU5LLCBVUERBVEUgfSBmcm9tICcuLi9jb3JlL2NvbnN0YW50cy9jb25zdGFudHMnO1xuaW1wb3J0IHsgaXNGaWVsZE5vdEF2YWlsYWJsZSB9IGZyb20gJy4uL2NvcmUvcGlwZXMvZmllbGQtbm90LWF2YWlsYWJsZS5waXBlJztcbmltcG9ydCB7IENSRUFUT1IsIE5BTUUgfSBmcm9tICcuLi9jb3JlL3NlcnZpY2VzL2s4cy11dGlsLnNlcnZpY2UnO1xuaW1wb3J0IHtcbiAgSzhzUmVzb3VyY2VBY3Rpb24sXG4gIEt1YmVybmV0ZXNSZXNvdXJjZUxpc3QsXG59IGZyb20gJy4uL2NvcmUvdHlwZXMvazhzL3B1YmxpYy1hcGknO1xuaW1wb3J0IHsgaXNLOHNSZXNvdXJjZSwgbm9vcCwgdHJhY2tCeVVpZCB9IGZyb20gJy4uL2NvcmUvdXRpbHMvY29tbW9uJztcbmltcG9ydCB7IE9ic2VydmFibGVJbnB1dCB9IGZyb20gJy4uL2NvcmUvdXRpbHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBwdWJsaXNoUmVmIH0gZnJvbSAnLi4vY29yZS91dGlscy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3RyZWFtTGlzdExvYWRlciB9IGZyb20gJy4uL2s4cy1yZXNvdXJjZS1saXN0L3R5cGVzJztcblxuaW1wb3J0IHtcbiAgREVGQVVMVF9QQUdFX1NJWkUsXG4gIERFRkFVTFRfUEFHRV9TSVpFX09QVElPTlMsXG4gIERFRkFVTFRfUEFHSU5BVElPTl9MQVlPVVQsXG59IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IFRhYmxlQ2VsbERlZkRpcmVjdGl2ZSB9IGZyb20gJy4vaGVscGVycy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtcbiAgTm9ybWFsaXplZFRhYmxlQ29sdW1uRGVmLFxuICBUYWJsZUNvbHVtbkRlZnMsXG4gIFRhYmxlQ29sdW1uLFxuICBUYWJsZUNvbHVtbkRlZixcbiAgVGFibGVGaWx0ZXJGbixcbiAgVGFibGVDb2x1bW5BY3Rpb25FeHRyYSxcbiAgVGFibGVDb2x1bW5BY3Rpb25FeHRyYUl0ZW0sXG4gIFRhYmxlQ29sdW1uQWN0aW9uRGlzYWJsZWRIYW5kbGVyLFxufSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEtOT1dOX0NPTFVNTlMsIFRhYmxlVXRpbFNlcnZpY2UgfSBmcm9tICcuL3V0aWwuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FjbC10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAndGVtcGxhdGUuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdHlsZVVybHM6IFsnLi9zdHlsZS5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlQ29tcG9uZW50PFxuICBJdGVtIGV4dGVuZHMgb2JqZWN0LFxuICBDb250ZXh0ID0gVGFibGVVdGlsU2VydmljZTxJdGVtPixcbj4ge1xuICBASW5wdXQoKVxuICBsaXN0ITogU3RyZWFtTGlzdExvYWRlcjxLdWJlcm5ldGVzUmVzb3VyY2VMaXN0PEl0ZW0+LCBJdGVtPjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgbGlzdCQhOiBPYnNlcnZhYmxlPFN0cmVhbUxpc3RMb2FkZXI8S3ViZXJuZXRlc1Jlc291cmNlTGlzdDxJdGVtPiwgSXRlbT4+O1xuXG4gIEBJbnB1dCgpXG4gIGRhdGFTb3VyY2U6IEl0ZW1bXSB8IE9ic2VydmFibGU8SXRlbVtdPjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgZGF0YVNvdXJjZSQhOiBPYnNlcnZhYmxlPEl0ZW1bXSB8IE9ic2VydmFibGU8SXRlbVtdPj47XG5cbiAgQElucHV0KClcbiAgcmVzb3VyY2VOYW1lOiBzdHJpbmc7XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIHJlc291cmNlTmFtZSQhOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgQElucHV0KClcbiAgcmVzb3VyY2VOYW1lVHJhbnNsYXRlZDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHN0aWNreTogbnVtYmVyIHwgc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHBlcm1pc3Npb25zOiBQYXJ0aWFsPFJlY29yZDxLOHNSZXNvdXJjZUFjdGlvbiwgYm9vbGVhbj4+O1xuXG4gIEBJbnB1dCgpXG4gIGNvbHVtbnM6IFJlYWRvbmx5QXJyYXk8VGFibGVDb2x1bW48SXRlbSwgQ29udGV4dD4+O1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBjb2x1bW5zJCE6IE9ic2VydmFibGU8QXJyYXk8VGFibGVDb2x1bW48SXRlbSwgQ29udGV4dD4+PjtcblxuICBASW5wdXQoKVxuICBmaWx0ZXJQYXJhbXM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBmaWx0ZXJQYXJhbXMkITogT2JzZXJ2YWJsZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj47XG5cbiAgQElucHV0KClcbiAgY29udGV4dDogQ29udGV4dDtcblxuICBnZXQgZmluYWxDb250ZXh0KCkge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQgPz8gKHRoaXMudXRpbCBhcyB1bmtub3duIGFzIENvbnRleHQpO1xuICB9XG5cbiAgQElucHV0KClcbiAgZmlsdGVyRm46IFRhYmxlRmlsdGVyRm48SXRlbSwgQ29udGV4dD47XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIGZpbHRlckZuJCE6IE9ic2VydmFibGU8VGFibGVGaWx0ZXJGbjxJdGVtLCBDb250ZXh0Pj47XG5cbiAgQElucHV0KClcbiAgdHJhY2tCeTogVHJhY2tCeUZ1bmN0aW9uPEl0ZW0+ID0gdGhpcy50cmFja0J5Rm47XG5cbiAgQElucHV0KClcbiAgbm9EYXRhSGludDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIGxvYWRpbmdFcnJvclRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBJbnB1dCgpXG4gIGVuYWJsZVBhZ2luYXRpb24gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwYWdlU2l6ZSA9IERFRkFVTFRfUEFHRV9TSVpFO1xuXG4gIEBJbnB1dCgpXG4gIHBhZ2VTaXplT3B0aW9ucyA9IERFRkFVTFRfUEFHRV9TSVpFX09QVElPTlM7XG5cbiAgQElucHV0KClcbiAgcGFnaW5hdGlvbkxheW91dCA9IERFRkFVTFRfUEFHSU5BVElPTl9MQVlPVVQ7XG5cbiAgQElucHV0KCkgZmlyc3RTY3JvbGxMb2FkOiBudW1iZXI7XG5cbiAgQE91dHB1dCgpXG4gIHVwZGF0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8SXRlbT4oKTtcblxuICBAT3V0cHV0KClcbiAgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxJdGVtPigpO1xuXG4gIEBPdXRwdXQoKVxuICBzb3J0Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxTb3J0PigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oVGFibGVDZWxsRGVmRGlyZWN0aXZlKVxuICB0YWJsZUNlbGxEZWZzOiBRdWVyeUxpc3Q8VGFibGVDZWxsRGVmRGlyZWN0aXZlPEl0ZW0+PjtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmF1aS10YWJsZV9fc2Nyb2xsLXdyYXBwZXInKVxuICBnZXQgc2Nyb2xsV3JhcHBlcigpIHtcbiAgICByZXR1cm4gISF0aGlzLnN0aWNreTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubWF4LWhlaWdodCcpXG4gIGdldCBzY3JvbGxXcmFwcGVySGVpZ2h0KCkge1xuICAgIHJldHVybiBoYW5kbGVQaXhlbCh0aGlzLnN0aWNreSk7XG4gIH1cblxuICBjdXJyZW50UGFnZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMSk7XG5cbiAgcGFnZVNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KHRoaXMucGFnZVNpemUgfHwgREVGQVVMVF9QQUdFX1NJWkUpO1xuXG4gIHBhZ2luYXRpb24gPSB7XG4gICAgdG90YWw6IDAsXG4gICAgcGFnZXM6IDAsXG4gIH07XG5cbiAgZmluYWxEYXRhU291cmNlJCA9IHRoaXMuZGF0YVNvdXJjZSQucGlwZShcbiAgICBzd2l0Y2hNYXAoZGF0YVNvdXJjZSA9PlxuICAgICAgZGF0YVNvdXJjZSBpbnN0YW5jZW9mIE9ic2VydmFibGUgPyBkYXRhU291cmNlIDogb2YoZGF0YVNvdXJjZSksXG4gICAgKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbiAgZmluYWxSZXNvdXJjZU5hbWUkID0gY29tYmluZUxhdGVzdChbdGhpcy5saXN0JCwgdGhpcy5yZXNvdXJjZU5hbWUkXSkucGlwZShcbiAgICBzd2l0Y2hNYXAoKFtsaXN0LCByZXNvdXJjZU5hbWVdKSA9PlxuICAgICAgIWxpc3QgfHwgcmVzb3VyY2VOYW1lXG4gICAgICAgID8gb2YocmVzb3VyY2VOYW1lKVxuICAgICAgICA6IGxpc3QucmF3UmVzcG9uc2UkLnBpcGUoXG4gICAgICAgICAgICBtYXAocmVzID0+IHJlcz8ua2luZC5zbGljZSgwLCAtNCkudG9Mb3dlckNhc2UoKSksXG4gICAgICAgICAgKSxcbiAgICApLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBjb2x1bW5EZWZzJCA9IHRoaXMuY29sdW1ucyQucGlwZShcbiAgICBtYXAoXG4gICAgICBjb2x1bW5zID0+XG4gICAgICAgIChjb2x1bW5zIHx8IFtdKS5tYXAoY29sdW1uID0+IHtcbiAgICAgICAgICBjb2x1bW4gPSBpc1N0cmluZyhjb2x1bW4pID8geyBuYW1lOiBjb2x1bW4gfSA6IGNvbHVtbjtcbiAgICAgICAgICBpZiAoISgncGF0aCcgaW4gY29sdW1uKSAmJiAhS05PV05fQ09MVU1OUy5oYXMoY29sdW1uLm5hbWUpKSB7XG4gICAgICAgICAgICBjb2x1bW4ucGF0aCA9IGNvbHVtbi5uYW1lO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLm5vcm1hbGl6ZUNvbHVtbkRlZlNvcnQoY29sdW1uKTtcbiAgICAgICAgICB0aGlzLm5vcm1hbGl6ZUNvbHVtbkRlZlRyYW5zbGF0ZShjb2x1bW4pO1xuICAgICAgICAgIHJldHVybiB0aGlzLm5vcm1hbGl6ZUFjdGlvbkNvbHVtbkRlZihjb2x1bW4pO1xuICAgICAgICB9KSBhcyBUYWJsZUNvbHVtbkRlZnM8SXRlbSwgQ29udGV4dD4sXG4gICAgKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbiAgY29sdW1uTmFtZXMkID0gdGhpcy5jb2x1bW5EZWZzJC5waXBlKFxuICAgIG1hcChjb2x1bW5zID0+IGNvbHVtbnMubWFwKGNvbHVtbiA9PiBjb2x1bW4ubmFtZSkpLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBhY3RpdmVTb3J0JCQgPSBuZXcgUmVwbGF5U3ViamVjdDxTb3J0PigxKTtcblxuICBhY3RpdmVTb3J0JDogT2JzZXJ2YWJsZTxTb3J0PiA9IG1lcmdlKFxuICAgIHRoaXMuYWN0aXZlU29ydCQkLFxuICAgIHRoaXMuY29sdW1uRGVmcyQucGlwZShcbiAgICAgIG1hcChjb2x1bW5EZWZzID0+IHtcbiAgICAgICAgY29uc3QgY29sdW1uRGVmID0gY29sdW1uRGVmcy5maW5kKGNvbHVtbiA9PiBjb2x1bW4uc29ydD8uYWN0aXZlKTtcbiAgICAgICAgcmV0dXJuIGNvbHVtbkRlZlxuICAgICAgICAgID8geyBhY3RpdmU6IGNvbHVtbkRlZi5uYW1lLCBkaXJlY3Rpb246IGNvbHVtbkRlZi5zb3J0LmRpcmVjdGlvbiB9XG4gICAgICAgICAgOiBudWxsO1xuICAgICAgfSksXG4gICAgKSxcbiAgKS5waXBlKHB1Ymxpc2hSZWYoKSk7XG5cbiAgZmlsdGVyZWRJdGVtcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmxpc3QkLCB0aGlzLmZpbmFsRGF0YVNvdXJjZSRdKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChbbGlzdCwgZGF0YVNvdXJjZV0pID0+IChsaXN0ID8gbGlzdC5pdGVtcyQgOiBvZihkYXRhU291cmNlKSkpLFxuICAgICksXG4gICAgdGhpcy5jb2x1bW5EZWZzJCxcbiAgICB0aGlzLmFjdGl2ZVNvcnQkLFxuICAgIHRoaXMuZmlsdGVyUGFyYW1zJCxcbiAgICB0aGlzLmZpbHRlckZuJCxcbiAgXSkucGlwZShcbiAgICBtYXAoXG4gICAgICAoW1xuICAgICAgICBpdGVtcyxcbiAgICAgICAgY29sdW1uRGVmcyxcbiAgICAgICAgYWN0aXZlU29ydCxcbiAgICAgICAgZmlsdGVyUGFyYW1zLFxuICAgICAgICBmaWx0ZXJGbiA9IHRoaXMudXRpbC5kZWZhdWx0RmlsdGVyRm4sXG4gICAgICBdKSA9PlxuICAgICAgICBmaWx0ZXJGbi5jYWxsKFxuICAgICAgICAgIHRoaXMuZmluYWxDb250ZXh0LFxuICAgICAgICAgIGl0ZW1zLFxuICAgICAgICAgIGNvbHVtbkRlZnMsXG4gICAgICAgICAgYWN0aXZlU29ydCxcbiAgICAgICAgICBmaWx0ZXJQYXJhbXMsXG4gICAgICAgICAgdGhpcy5maW5hbENvbnRleHQsXG4gICAgICAgICksXG4gICAgKSxcbiAgICBwdWJsaXNoUmVmKCksXG4gICk7XG5cbiAgcGFnZWRJdGVtcyQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICB0aGlzLmZpbHRlcmVkSXRlbXMkLFxuICAgIHRoaXMuY3VycmVudFBhZ2UkLFxuICAgIHRoaXMucGFnZVNpemUkLFxuICBdKS5waXBlKFxuICAgIHRhcCgoW2l0ZW1zLCBfLCBwYWdlU2l6ZV0pID0+IHtcbiAgICAgIGlmICh0aGlzLmVuYWJsZVBhZ2luYXRpb24pIHtcbiAgICAgICAgdGhpcy5wYWdpbmF0aW9uID1cbiAgICAgICAgICBpdGVtcy5sZW5ndGggPT09IDBcbiAgICAgICAgICAgID8geyB0b3RhbDogMCwgcGFnZXM6IDAgfVxuICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgdG90YWw6IGl0ZW1zLmxlbmd0aCxcbiAgICAgICAgICAgICAgICBwYWdlczogTWF0aC5jZWlsKGl0ZW1zLmxlbmd0aCAvIHBhZ2VTaXplKSxcbiAgICAgICAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9KSxcbiAgICBtYXAoKFtpdGVtcywgY3VycmVudFBhZ2UsIHBhZ2VTaXplXSkgPT4ge1xuICAgICAgaWYgKCF0aGlzLmVuYWJsZVBhZ2luYXRpb24pIHtcbiAgICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMucGFnaW5hdGlvbi5wYWdlcyA8IGN1cnJlbnRQYWdlICYmIHRoaXMucGFnaW5hdGlvbi5wYWdlcyAhPT0gMCkge1xuICAgICAgICBjdXJyZW50UGFnZSA9IHRoaXMucGFnaW5hdGlvbi5wYWdlcztcbiAgICAgICAgdGhpcy5jdXJyZW50UGFnZSQubmV4dChjdXJyZW50UGFnZSk7XG4gICAgICB9XG4gICAgICBjb25zdCBiZWdpbiA9IChjdXJyZW50UGFnZSAtIDEpICogcGFnZVNpemU7XG4gICAgICByZXR1cm4gaXRlbXMuc2xpY2UoYmVnaW4sIGJlZ2luICsgcGFnZVNpemUpO1xuICAgIH0pLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBnZXQgaXNMaXN0UGFnZSgpIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZS5yb3V0ZUNvbmZpZz8ucGF0aCA9PT0gJ2xpc3QnO1xuICB9XG5cbiAgaXNMaXN0UGFnZSQgPSB0aGlzLnJvdXRlLnVybC5waXBlKFxuICAgIG1hcCgoKSA9PiB0aGlzLmlzTGlzdFBhZ2UpLFxuICAgIHB1Ymxpc2hSZWYoKSxcbiAgKTtcblxuICBpc0Z1bmN0aW9uID0gaXNGdW5jdGlvbjtcbiAgaXNLOHNSZXNvdXJjZSA9IGlzSzhzUmVzb3VyY2U7XG4gIGlzRmllbGROb3RBdmFpbGFibGUgPSBpc0ZpZWxkTm90QXZhaWxhYmxlO1xuXG4gIGdldFZhbHVlRnJvbVBhdGggPSB0aGlzLnV0aWwuZ2V0VmFsdWVGcm9tUGF0aDtcbiAgdHJhY2tCeU5hbWUoXzogbnVtYmVyLCBjb2x1bW5EZWY6IFRhYmxlQ29sdW1uRGVmPEl0ZW0sIENvbnRleHQ+KSB7XG4gICAgcmV0dXJuIGNvbHVtbkRlZi5uYW1lO1xuICB9XG5cbiAgTkFNRSA9IE5BTUU7XG4gIENSRUFUT1IgPSBDUkVBVE9SO1xuICBDUkVBVEVEX0FUID0gQ1JFQVRFRF9BVDtcbiAgQUNUSU9OID0gQUNUSU9OO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHVibGljIHJlYWRvbmx5IHV0aWw6IFRhYmxlVXRpbFNlcnZpY2U8SXRlbT4sXG4gICkge1xuICAgIHRoaXMuZ2V0Q29sdW1uVGVtcGxhdGUgPSB0aGlzLmdldENvbHVtblRlbXBsYXRlLmJpbmQodGhpcyk7XG4gIH1cblxuICBub3JtYWxpemVDb2x1bW5EZWZUcmFuc2xhdGUoY29sdW1uOiBUYWJsZUNvbHVtbkRlZjxJdGVtLCBDb250ZXh0Pikge1xuICAgIGNvbnN0IHsgdHJhbnNsYXRlIH0gPSBjb2x1bW47XG4gICAgaWYgKHRyYW5zbGF0ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gY29sdW1uO1xuICAgIH1cbiAgICBpZiAodHJhbnNsYXRlID09PSB0cnVlKSB7XG4gICAgICBjb2x1bW4udHJhbnNsYXRlID0gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKGlzU3RyaW5nKHRyYW5zbGF0ZSkpIHtcbiAgICAgIGNvbHVtbi50cmFuc2xhdGUgPSAodmFsdWU6IHN0cmluZyB8IG51bWJlcikgPT4gdHJhbnNsYXRlICsgdmFsdWU7XG4gICAgfSBlbHNlIGlmIChpc09iamVjdExpa2UodHJhbnNsYXRlKSkge1xuICAgICAgY29sdW1uLnRyYW5zbGF0ZSA9ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKSA9PiBnZXQodHJhbnNsYXRlLCB2YWx1ZSk7XG4gICAgfVxuICAgIHJldHVybiBjb2x1bW47XG4gIH1cblxuICBub3JtYWxpemVDb2x1bW5EZWZTb3J0KGNvbHVtbjogVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD4pIHtcbiAgICBjb25zdCB7IHNvcnQgfSA9IGNvbHVtbjtcbiAgICBpZiAoc29ydCA9PSBudWxsKSB7XG4gICAgICByZXR1cm4gY29sdW1uO1xuICAgIH1cbiAgICBpZiAoc29ydCA9PT0gdHJ1ZSkge1xuICAgICAgY29sdW1uLnNvcnQgPSB7XG4gICAgICAgIGRpcmVjdGlvbjogJ2FzYycsXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAoaXNTdHJpbmcoc29ydCkpIHtcbiAgICAgIGNvbHVtbi5zb3J0ID0ge1xuICAgICAgICBkaXJlY3Rpb246IHNvcnQsXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAoaXNGdW5jdGlvbihzb3J0KSkge1xuICAgICAgY29sdW1uLnNvcnQgPSB7XG4gICAgICAgIGRpcmVjdGlvbjogJ2FzYycsXG4gICAgICAgIGhhbmRsZXI6IHNvcnQsXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAoc29ydC5kaXJlY3Rpb24gPT0gbnVsbCkge1xuICAgICAgc29ydC5kaXJlY3Rpb24gPSAnYXNjJztcbiAgICB9XG4gICAgcmV0dXJuIGNvbHVtbjtcbiAgfVxuXG4gIG9uU29ydENoYW5nZSgkZXZlbnQ6IFNvcnQpIHtcbiAgICB0aGlzLnNvcnRDaGFuZ2UubmV4dCgkZXZlbnQpO1xuICAgIHRoaXMuYWN0aXZlU29ydCQkLm5leHQoJGV2ZW50KTtcbiAgfVxuXG4gIG5vcm1hbGl6ZUFjdGlvbkNvbHVtbkRlZihcbiAgICBjb2x1bW46IFRhYmxlQ29sdW1uRGVmPEl0ZW0sIENvbnRleHQ+LFxuICApOiBOb3JtYWxpemVkVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD4ge1xuICAgIGlmIChjb2x1bW4ubmFtZSAhPT0gQUNUSU9OIHx8ICFjb2x1bW4uZXh0cmEpIHtcbiAgICAgIHJldHVybiBjb2x1bW4gYXMgTm9ybWFsaXplZFRhYmxlQ29sdW1uRGVmPEl0ZW0sIENvbnRleHQ+O1xuICAgIH1cblxuICAgIGNvbnN0IGV4dHJhID0gY29sdW1uLmV4dHJhIGFzIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmE8SXRlbSwgQ29udGV4dD47XG4gICAgKFtLOHNSZXNvdXJjZUFjdGlvbi5ERUxFVEUsIEs4c1Jlc291cmNlQWN0aW9uLlVQREFURV0gYXMgY29uc3QpLmZvckVhY2goXG4gICAgICBhY3Rpb24gPT4ge1xuICAgICAgICBpZiAoIWV4dHJhW2FjdGlvbl0pIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGhhbmRsZXIgPSAoXG4gICAgICAgICAgZXh0cmFbYWN0aW9uXSBhcyBUYWJsZUNvbHVtbkFjdGlvbkV4dHJhSXRlbTxJdGVtLCBDb250ZXh0PlxuICAgICAgICApLmRpc2FibGVkO1xuICAgICAgICBpZiAoaGFuZGxlciA9PSBudWxsKSB7XG4gICAgICAgICAgaGFuZGxlciA9IG5vb3AgYXMgVGFibGVDb2x1bW5BY3Rpb25EaXNhYmxlZEhhbmRsZXI8SXRlbSwgQ29udGV4dD47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzRnVuY3Rpb24oaGFuZGxlcikpIHtcbiAgICAgICAgICAoXG4gICAgICAgICAgICBleHRyYVthY3Rpb25dIGFzIFRhYmxlQ29sdW1uQWN0aW9uRXh0cmFJdGVtPEl0ZW0sIENvbnRleHQ+XG4gICAgICAgICAgKS5kaXNhYmxlZCA9IHsgaGFuZGxlciB9O1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICk7XG4gICAgcmV0dXJuIGNvbHVtbiBhcyBOb3JtYWxpemVkVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD47XG4gIH1cblxuICBnZXRDb2x1bW5UZW1wbGF0ZShjb2x1bW46IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnRhYmxlQ2VsbERlZnMuZmluZChkZWYgPT4gZGVmLmFjbFRhYmxlQ2VsbERlZiA9PT0gY29sdW1uKVxuICAgICAgPy50ZW1wbGF0ZVJlZjtcbiAgfVxuXG4gIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBpdGVtOiBJdGVtKSB7XG4gICAgcmV0dXJuIGlzSzhzUmVzb3VyY2UoaXRlbSlcbiAgICAgID8gdHJhY2tCeVVpZChpbmRleCwgaXRlbSlcbiAgICAgIDogZ2V0KGl0ZW0sIE5BTUUsIGluZGV4KTtcbiAgfVxuXG4gIG9uVXBkYXRlKGRhdGE6IEl0ZW0sIGNvbHVtbkRlZjogVGFibGVDb2x1bW5EZWY8SXRlbSwgQ29udGV4dD4pIHtcbiAgICB0aGlzLnVwZGF0ZS5lbWl0KGRhdGEpO1xuXG4gICAgaWYgKGdldChjb2x1bW5EZWYuZXh0cmEsIFtVUERBVEUsIExJTktdKSAhPT0gZmFsc2UpIHtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFxuICAgICAgICBbXG4gICAgICAgICAgdGhpcy5pc0xpc3RQYWdlID8gJy4uJyA6ICcuJyxcbiAgICAgICAgICBVUERBVEUsXG4gICAgICAgICAgdGhpcy5nZXRWYWx1ZUZyb21QYXRoKGRhdGEsIE5BTUUpLFxuICAgICAgICBdLFxuICAgICAgICB7XG4gICAgICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSxcbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgZ2V0VmFsdWU8VCwgRiBleHRlbmRzICguLi5hcmdzOiB1bmtub3duW10pID0+IFQ+KFxuICAgIGZ1bmN0aW9uT3JWYWx1ZTogVCB8IEYsXG4gICAgLi4uYXJnczogUGFyYW1ldGVyczxGPlxuICApOiBUIHtcbiAgICByZXR1cm4gaXNGdW5jdGlvbihmdW5jdGlvbk9yVmFsdWUpXG4gICAgICA/IGZ1bmN0aW9uT3JWYWx1ZS5jYWxsKGxhc3QoYXJncyksIC4uLmFyZ3MpXG4gICAgICA6IGZ1bmN0aW9uT3JWYWx1ZTtcbiAgfVxufVxuIiwiPGF1aS10YWJsZVxuICBhdWlTb3J0XG4gIFthY3RpdmVdPVwiKGFjdGl2ZVNvcnQkIHwgYXN5bmMpPy5hY3RpdmVcIlxuICBbZGlyZWN0aW9uXT1cIihhY3RpdmVTb3J0JCB8IGFzeW5jKT8uZGlyZWN0aW9uXCJcbiAgW2RhdGFTb3VyY2VdPVwicGFnZWRJdGVtcyRcIlxuICBbdHJhY2tCeV09XCJ0cmFja0J5XCJcbiAgKHNvcnRDaGFuZ2UpPVwib25Tb3J0Q2hhbmdlKCRldmVudClcIlxuICBbYXVpVGFibGVTY3JvbGxhYmxlXT1cIiEhc3RpY2t5XCJcbj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0Zvcj1cImxldCBjb2x1bW5EZWYgb2YgY29sdW1uRGVmcyQgfCBhc3luYzsgdHJhY2tCeTogdHJhY2tCeU5hbWVcIlxuICAgIFthdWlUYWJsZUNvbHVtbkRlZl09XCJjb2x1bW5EZWYubmFtZVwiXG4gICAgW3N0aWNreV09XCJjb2x1bW5EZWYuc3RpY2t5XCJcbiAgICBbc3RpY2t5RW5kXT1cImNvbHVtbkRlZi5zdGlja3lFbmRcIlxuICA+XG4gICAgPGF1aS10YWJsZS1oZWFkZXItY2VsbFxuICAgICAgKmF1aVRhYmxlSGVhZGVyQ2VsbERlZlxuICAgICAgW3N0eWxlXT1cImNvbHVtbkRlZi5zdHlsZVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbkRlZi5uYW1lICE9PSBBQ1RJT05cIj5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAqbmdJZj1cImNvbHVtbkRlZi5zb3J0XCJcbiAgICAgICAgICBhdWktc29ydC1oZWFkZXJcbiAgICAgICAgICBbc3RhcnRdPVwiY29sdW1uRGVmLnNvcnQuZGlyZWN0aW9uXCJcbiAgICAgICAgICA+e3sgY29sdW1uRGVmLmxhYmVsIHx8IGNvbHVtbkRlZi5uYW1lIHwgdHJhbnNsYXRlIH19PC9zcGFuXG4gICAgICAgID5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCIhY29sdW1uRGVmLnNvcnRcIj57e1xuICAgICAgICAgIGNvbHVtbkRlZi5sYWJlbCB8fCBjb2x1bW5EZWYubmFtZSB8IHRyYW5zbGF0ZVxuICAgICAgICB9fTwvc3Bhbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvYXVpLXRhYmxlLWhlYWRlci1jZWxsPlxuXG4gICAgPGF1aS10YWJsZS1jZWxsXG4gICAgICAqYXVpVGFibGVDZWxsRGVmPVwiXG4gICAgICAgIGxldCBkYXRhO1xuICAgICAgICBsZXQgaW5kZXggPSBpbmRleDtcbiAgICAgICAgbGV0IGV2ZW4gPSBldmVuO1xuICAgICAgICBsZXQgb2RkID0gb2RkO1xuICAgICAgICBsZXQgbGFzdCA9IGxhc3RcbiAgICAgIFwiXG4gICAgICBbZGlyZWN0aW9uXT1cImNvbHVtbkRlZi5kaXJlY3Rpb25cIlxuICAgICAgW25nQ2xhc3NdPVwiY29sdW1uRGVmLmNsYXNzXCJcbiAgICAgIFtzdHlsZV09XCJjb2x1bW5EZWYuc3R5bGVcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICBjb2x1bW5EZWYubmFtZSB8IHB1cmU6IGdldENvbHVtblRlbXBsYXRlIGFzIHRlbXBsYXRlO1xuICAgICAgICAgIGVsc2UgdGFibGVDZWxsRGVmVHBsXG4gICAgICAgIFwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgdGVtcGxhdGU7XG4gICAgICAgICAgICBjb250ZXh0OiB7XG4gICAgICAgICAgICAgICRpbXBsaWNpdDogZGF0YSxcbiAgICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxuICAgICAgICAgICAgICBldmVuOiBldmVuLFxuICAgICAgICAgICAgICBvZGQ6IG9kZCxcbiAgICAgICAgICAgICAgbGFzdDogbGFzdCxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjdGFibGVDZWxsRGVmVHBsPlxuICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAgIGNvbHVtbkRlZi5wYXRoICE9IG51bGwgJiZcbiAgICAgICAgICAgICAgKGRhdGFcbiAgICAgICAgICAgICAgICB8IHB1cmVcbiAgICAgICAgICAgICAgICAgIDogZ2V0VmFsdWVGcm9tUGF0aFxuICAgICAgICAgICAgICAgICAgOiBjb2x1bW5EZWYubmFtZVxuICAgICAgICAgICAgICAgICAgOiBjb2x1bW5EZWYucGF0aCkgYXMgdmFsdWU7XG4gICAgICAgICAgICBlbHNlIGRlZmF1bHRUYWJsZUNlbGxUcGxcbiAgICAgICAgICBcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJcbiAgICAgICAgICAgICAgdGFibGVDZWxsQ29udGVudDtcbiAgICAgICAgICAgICAgY29udGV4dDogeyBjb2x1bW5EZWY6IGNvbHVtbkRlZiwgdmFsdWU6IHZhbHVlIH1cbiAgICAgICAgICAgIFwiXG4gICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUYWJsZUNlbGxUcGw+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgZGVmYXVsdFRhYmxlQ2VsbDtcbiAgICAgICAgICAgIGNvbnRleHQ6IHsgZGF0YTogZGF0YSwgY29sdW1uRGVmOiBjb2x1bW5EZWYgfVxuICAgICAgICAgIFwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9hdWktdGFibGUtY2VsbD5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPGF1aS10YWJsZS1oZWFkZXItcm93XG4gICAgKmF1aVRhYmxlSGVhZGVyUm93RGVmPVwiY29sdW1uTmFtZXMkIHwgYXN5bmM7IHN0aWNreTogISFzdGlja3lcIlxuICA+PC9hdWktdGFibGUtaGVhZGVyLXJvdz5cbiAgPGF1aS10YWJsZS1yb3dcbiAgICAqYXVpVGFibGVSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBjb2x1bW5OYW1lcyQgfCBhc3luY1wiXG4gID48L2F1aS10YWJsZS1yb3c+XG5cbiAgPG5nLWNvbnRhaW5lciAqYXVpVGFibGVQbGFjZWhvbGRlckRlZj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGlzdFwiPlxuICAgICAgPGRpdlxuICAgICAgICBbaGlkZGVuXT1cIlxuICAgICAgICAgIChwYWdlZEl0ZW1zJCB8IGFzeW5jKT8ubGVuZ3RoIHx8ICEobGlzdC5pdGVtcyQgfCBhc3luYyk/Lmxlbmd0aFxuICAgICAgICBcIlxuICAgICAgICBjbGFzcz1cImVtcHR5LXBsYWNlaG9sZGVyXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ0lmPVwiZmluYWxSZXNvdXJjZU5hbWUkIHwgYXN5bmMgYXMgZmluYWxSZXNvdXJjZU5hbWU7IGVsc2Ugbm9EYXRhXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICAnbm9fbmFtZWRfZGF0YV9oaW50J1xuICAgICAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgICAgICAgICAgIDoge1xuICAgICAgICAgICAgICAgICAgICBuYW1lOlxuICAgICAgICAgICAgICAgICAgICAgIHJlc291cmNlTmFtZVRyYW5zbGF0ZWQgfHwgKGZpbmFsUmVzb3VyY2VOYW1lIHwgdHJhbnNsYXRlKSxcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICB9fVxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGFjbC1rOHMtcmVzb3VyY2UtbGlzdC1mb290ZXJcbiAgICAgICAgW2hpZGRlbl09XCJcbiAgICAgICAgICAhKHBhZ2VkSXRlbXMkIHwgYXN5bmMpPy5sZW5ndGggJiYgKGxpc3QuaXRlbXMkIHwgYXN5bmMpPy5sZW5ndGhcbiAgICAgICAgXCJcbiAgICAgICAgW2xpc3RdPVwibGlzdFwiXG4gICAgICAgIFtyZXNvdXJjZU5hbWVdPVwiZmluYWxSZXNvdXJjZU5hbWUkIHwgYXN5bmNcIlxuICAgICAgICBbcmVzb3VyY2VOYW1lVHJhbnNsYXRlZF09XCJyZXNvdXJjZU5hbWVUcmFuc2xhdGVkXCJcbiAgICAgICAgW2ZpcnN0U2Nyb2xsTG9hZF09XCJmaXJzdFNjcm9sbExvYWRcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGluZ0Vycm9yVGVtcGxhdGVcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAqYWNsSzhzTGlzdEZvb3RlckxvYWRpbmdFcnJvclxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwibG9hZGluZ0Vycm9yVGVtcGxhdGVcIlxuICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L2FjbC1rOHMtcmVzb3VyY2UtbGlzdC1mb290ZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCIhbGlzdCAmJiAhKHBhZ2VkSXRlbXMkIHwgYXN5bmMpPy5sZW5ndGhcIlxuICAgICAgY2xhc3M9XCJlbXB0eS1wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpbmFsRGF0YVNvdXJjZSQgfCBhc3luYzsgZWxzZSBsb2FkaW5nXCI+XG4gICAgICAgIHt7XG4gICAgICAgICAgbm9EYXRhSGludCB8fFxuICAgICAgICAgICAgKCdub19uYW1lZF9kYXRhX2hpbnQnXG4gICAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICAgICAgOiB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IHJlc291cmNlTmFtZVRyYW5zbGF0ZWQgfHwgKHJlc291cmNlTmFtZSB8IHRyYW5zbGF0ZSksXG4gICAgICAgICAgICAgICAgICB9KVxuICAgICAgICB9fVxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctdGVtcGxhdGUgI2xvYWRpbmc+XG4gICAgICAgIDxhdWktaWNvblxuICAgICAgICAgIGNsYXNzPVwiYWNsLWxvYWRpbmctbWFza19faWNvblwiXG4gICAgICAgICAgc2l6ZT1cIjE2cHhcIlxuICAgICAgICAgIGljb249XCJzcGlubmVyXCJcbiAgICAgICAgPjwvYXVpLWljb24+XG4gICAgICAgIHt7ICdsb2FkaW5nX3BsZWFzZV93YWl0JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2F1aS10YWJsZT5cblxuPG5nLWNvbnRhaW5lciAqbmdJZj1cImVuYWJsZVBhZ2luYXRpb25cIj5cbiAgPGF1aS1wYWdpbmF0b3JcbiAgICBbbGF5b3V0XT1cInBhZ2luYXRpb25MYXlvdXRcIlxuICAgIFtjdXJyZW50UGFnZV09XCJjdXJyZW50UGFnZSQgfCBhc3luY1wiXG4gICAgW3BhZ2VTaXplXT1cInBhZ2VTaXplJCB8IGFzeW5jXCJcbiAgICBbdG90YWxdPVwicGFnaW5hdGlvbi50b3RhbFwiXG4gICAgKGN1cnJlbnRQYWdlQ2hhbmdlKT1cImN1cnJlbnRQYWdlJC5uZXh0KCRldmVudClcIlxuICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJwYWdlU2l6ZSQubmV4dCgkZXZlbnQpXCJcbiAgICBbcGFnZVNpemVPcHRpb25zXT1cInBhZ2VTaXplT3B0aW9uc1wiXG4gID48L2F1aS1wYWdpbmF0b3I+XG48L25nLWNvbnRhaW5lcj5cblxuPG5nLXRlbXBsYXRlXG4gICNkZWZhdWx0VGFibGVDZWxsXG4gIGxldC1kYXRhPVwiZGF0YVwiXG4gIGxldC1jb2x1bW5EZWY9XCJjb2x1bW5EZWZcIlxuPlxuICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJjb2x1bW5EZWYubmFtZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIk5BTUVcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJkYXRhIHwgcHVyZTogZ2V0VmFsdWVGcm9tUGF0aCA6IGNvbHVtbkRlZi5uYW1lIGFzIG5hbWVcIlxuICAgICAgICBjbGFzcz1cImF1aS10YWJsZV9fY2VsbF9fbmFtZVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAqbmdJZj1cIlxuICAgICAgICAgICAgY29sdW1uRGVmLmV4dHJhPy5saW5rICE9PSBmYWxzZSAmJiAhKGRhdGEgfCBhY2xJc0RlbGV0aW5nKTtcbiAgICAgICAgICAgIGVsc2UgcGxhaW5OYW1lXG4gICAgICAgICAgXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxhXG4gICAgICAgICAgICBbcm91dGVyTGlua109XCJbKGlzTGlzdFBhZ2UkIHwgYXN5bmMpID8gJy4uJyA6ICcuJywgJ2RldGFpbCcsIG5hbWVdXCJcbiAgICAgICAgICAgIFthdWlUb29sdGlwXT1cIm5hbWVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IG5hbWUgfX1cbiAgICAgICAgICA8L2E+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctdGVtcGxhdGUgI3BsYWluTmFtZT5cbiAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgW2F1aVRvb2x0aXBdPVwibmFtZVwiXG4gICAgICAgICAgICBbY2xhc3MuZGVsZXRpbmctdGV4dF09XCJkYXRhIHwgYWNsSXNEZWxldGluZ1wiXG4gICAgICAgICAgICA+e3sgbmFtZSB9fTwvc3BhblxuICAgICAgICAgID5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPGFjbC1kZWxldGluZy10YWdcbiAgICAgICAgICAqbmdJZj1cImRhdGEgfCBwdXJlOiBpc0s4c1Jlc291cmNlXCJcbiAgICAgICAgICBbcmVzb3VyY2VdPVwiZGF0YVwiXG4gICAgICAgID48L2FjbC1kZWxldGluZy10YWc+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICAoZGF0YSB8IHB1cmU6IGlzSzhzUmVzb3VyY2UpXG4gICAgICAgICAgICA/IChkYXRhIHwgYWNsRGlzcGxheU5hbWUpXG4gICAgICAgICAgICA6IGRhdGEuZGlzcGxheU5hbWUgYXMgZGlzcGxheU5hbWVcbiAgICAgICAgXCJcbiAgICAgICAgY2xhc3M9XCJhdWktdGFibGVfX2NlbGxfX2Rpc3BsYXktbmFtZVwiXG4gICAgICAgIFtjbGFzcy5kZWxldGluZy10ZXh0XT1cImRhdGEgfCBhY2xJc0RlbGV0aW5nXCJcbiAgICAgID5cbiAgICAgICAge3sgZGlzcGxheU5hbWUgfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkNSRUFURURfQVRcIj5cbiAgICAgIDxhY2wtcmVsYXRpdmUtdGltZVxuICAgICAgICBbdGltZV09XCJkYXRhIHwgcHVyZTogZ2V0VmFsdWVGcm9tUGF0aCA6IGNvbHVtbkRlZi5uYW1lXCJcbiAgICAgID48L2FjbC1yZWxhdGl2ZS10aW1lPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkFDVElPTlwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgICAgIFtzcXVhcmVdPVwidHJ1ZVwiXG4gICAgICAgIHNpemU9XCJzbWFsbFwiXG4gICAgICAgIFthdWlEcm9wZG93bl09XCJtZW51XCJcbiAgICAgICAgW2F1aURyb3Bkb3duQ29udGV4dF09XCJ7ICRpbXBsaWNpdDogZGF0YSwgY29sdW1uRGVmOiBjb2x1bW5EZWYgfVwiXG4gICAgICA+XG4gICAgICAgIDxhdWktaWNvbiBpY29uPVwiZWxsaXBzaXNfdl9zXCI+PC9hdWktaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nSWY9XCJcbiAgICAgICAgICBkYXRhIHwgcHVyZTogZ2V0VmFsdWVGcm9tUGF0aCA6IGNvbHVtbkRlZi5uYW1lIGFzIHZhbHVlO1xuICAgICAgICAgIGVsc2UgZW1wdHlcbiAgICAgICAgXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICB0YWJsZUNlbGxDb250ZW50O1xuICAgICAgICAgICAgY29udGV4dDogeyBjb2x1bW5EZWY6IGNvbHVtbkRlZiwgdmFsdWU6IHZhbHVlIH1cbiAgICAgICAgICBcIlxuICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGVcbiAgI3RhYmxlQ2VsbENvbnRlbnRcbiAgbGV0LWNvbHVtbkRlZj1cImNvbHVtbkRlZlwiXG4gIGxldC12YWx1ZT1cInZhbHVlXCJcbj5cbiAgPG5nLWNvbnRhaW5lclxuICAgICpuZ0lmPVwiXG4gICAgICBjb2x1bW5EZWYudHJhbnNsYXRlID09IG51bGxcbiAgICAgICAgPyB2YWx1ZVxuICAgICAgICA6IGNvbHVtbkRlZi50cmFuc2xhdGUgPT09IHRydWVcbiAgICAgICAgICA/ICh2YWx1ZSB8IHRyYW5zbGF0ZSlcbiAgICAgICAgICA6ICh2YWx1ZVxuICAgICAgICAgICAgfCBwdXJlOiBjb2x1bW5EZWYudHJhbnNsYXRlIDogZmluYWxDb250ZXh0XG4gICAgICAgICAgICB8IHRyYW5zbGF0ZSkgYXMgdGV4dDtcbiAgICAgIGVsc2UgZW1wdHlcbiAgICBcIlxuICA+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJjb2x1bW5EZWYuZWxsaXBzaXM7IGVsc2UgcGxhaW5UZXh0XCJcbiAgICAgIGNsYXNzPVwidGV4dC1vdmVyZmxvd1wiXG4gICAgICBbYXVpVG9vbHRpcF09XCJ0ZXh0XCJcbiAgICA+XG4gICAgICB7eyB0ZXh0IH19XG4gICAgPC9kaXY+XG4gICAgPG5nLXRlbXBsYXRlICNwbGFpblRleHQ+e3sgdGV4dCB9fTwvbmctdGVtcGxhdGU+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlXG4gICNtZW51XG4gIGxldC1kYXRhXG4gIGxldC1jb2x1bW5EZWY9XCJjb2x1bW5EZWZcIlxuICA+PGF1aS1tZW51PlxuICAgIDxhY2wtZGlzYWJsZWQtY29udGFpbmVyXG4gICAgICAqbmdJZj1cImNvbHVtbkRlZi5leHRyYT8udXBkYXRlICE9PSBmYWxzZVwiXG4gICAgICBbaXNBbGxvd2VkXT1cIiFwZXJtaXNzaW9ucyB8fCBwZXJtaXNzaW9ucy51cGRhdGVcIlxuICAgICAgW2lzRGlzYWJsZWRdPVwiXG4gICAgICAgIChjb2x1bW5EZWYuZXh0cmE/LnVwZGF0ZT8uZGlzYWJsZWQuaGFuZGxlciB8IHB1cmU6IGlzRnVuY3Rpb24pICYmXG4gICAgICAgIChkYXRhIHwgcHVyZTogY29sdW1uRGVmLmV4dHJhLnVwZGF0ZS5kaXNhYmxlZC5oYW5kbGVyIDogZmluYWxDb250ZXh0KVxuICAgICAgXCJcbiAgICAgIFt0b29sdGlwXT1cIlxuICAgICAgICBjb2x1bW5EZWYuZXh0cmE/LnVwZGF0ZT8uZGlzYWJsZWQudG9vbHRpcFxuICAgICAgICAgIHwgcHVyZTogZ2V0VmFsdWUgOiBkYXRhIDogZmluYWxDb250ZXh0XG4gICAgICAgICAgfCB0cmFuc2xhdGVcbiAgICAgIFwiXG4gICAgICAoY2xpY2spPVwib25VcGRhdGUoZGF0YSwgY29sdW1uRGVmKVwiXG4gICAgPlxuICAgICAgPGF1aS1tZW51LWl0ZW0+e3sgJ3VwZGF0ZScgfCB0cmFuc2xhdGUgfX08L2F1aS1tZW51LWl0ZW0+XG4gICAgPC9hY2wtZGlzYWJsZWQtY29udGFpbmVyPlxuICAgIDxhY2wtZGlzYWJsZWQtY29udGFpbmVyXG4gICAgICAqbmdJZj1cImNvbHVtbkRlZi5leHRyYT8uZGVsZXRlICE9PSBmYWxzZVwiXG4gICAgICBbaXNBbGxvd2VkXT1cIiFwZXJtaXNzaW9ucyB8fCBwZXJtaXNzaW9ucy5kZWxldGVcIlxuICAgICAgW2lzRGlzYWJsZWRdPVwiXG4gICAgICAgIChjb2x1bW5EZWYuZXh0cmE/LmRlbGV0ZT8uZGlzYWJsZWQuaGFuZGxlciB8IHB1cmU6IGlzRnVuY3Rpb24pICYmXG4gICAgICAgIChkYXRhIHwgcHVyZTogY29sdW1uRGVmLmV4dHJhLmRlbGV0ZS5kaXNhYmxlZC5oYW5kbGVyIDogZmluYWxDb250ZXh0KVxuICAgICAgXCJcbiAgICAgIFt0b29sdGlwXT1cIlxuICAgICAgICBjb2x1bW5EZWYuZXh0cmE/LmRlbGV0ZT8uZGlzYWJsZWQudG9vbHRpcFxuICAgICAgICAgIHwgcHVyZTogZ2V0VmFsdWUgOiBkYXRhIDogZmluYWxDb250ZXh0XG4gICAgICAgICAgfCB0cmFuc2xhdGVcbiAgICAgIFwiXG4gICAgICAoY2xpY2spPVwiZGVsZXRlLmVtaXQoZGF0YSlcIlxuICAgID5cbiAgICAgIDxhdWktbWVudS1pdGVtPnt7ICdkZWxldGUnIHwgdHJhbnNsYXRlIH19PC9hdWktbWVudS1pdGVtPlxuICAgIDwvYWNsLWRpc2FibGVkLWNvbnRhaW5lcj5cbiAgPC9hdWktbWVudT48L25nLXRlbXBsYXRlXG4+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+e3sgbnVsbCB8IGFjbEZpZWxkTm90QXZhaWxhYmxlIH19PC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNub0RhdGE+e3sgJ25vX2RhdGEnIHwgdHJhbnNsYXRlIH19PC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -109,5 +109,5 @@ export class LegendDropdownComponent {
109
109
  }], isCard: [{
110
110
  type: Input
111
111
  }] }); })();
112
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendDropdownComponent, { className: "LegendDropdownComponent" }); })();
112
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendDropdownComponent, { className: "LegendDropdownComponent", filePath: "view-chart/custom-template/dropdown-legend.ts", lineNumber: 56 }); })();
113
113
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGVnZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3ZpZXctY2hhcnQvY3VzdG9tLXRlbXBsYXRlL2Ryb3Bkb3duLWxlZ2VuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBQ0wsV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDOzs7OztJQU9uQiw2QkFBaUQ7SUFDL0MsOEJBU1k7Ozs7O0lBTlYsY0FBbUM7SUFDbkMsQUFEQSxvREFBbUMsNkVBQ0Q7OztJQVFwQyxpQ0FXQztJQUNDLDhCQUE4QztJQUNoRCxpQkFBUzs7OztJQVBQLEFBREEsQUFIQSw2QkFBZSx1Q0FHb0IsNkVBQ0Q7OztJQVdwQyw2QkFBa0U7SUFDaEUsOEJBQTZCO0lBQzNCLDJCQUFpRTtJQUNuRSxpQkFBTTs7OztJQURVLGVBQW1DO0lBQW5DLHdEQUFtQzs7O0lBSW5ELCtCQUFzQjtJQUFBLFlBQTJCOztJQUFBLGlCQUFPOztJQUFsQyxjQUEyQjtJQUEzQixxREFBMkI7OztJQURuRCxBQUxBLHdHQUFrRSwwSEFLckM7Ozs7SUFMZ0IsQUFBOUIsMkRBQThCLCtCQUFtQjs7QUFhdEUsTUFBTSxPQUFPLHVCQUF1Qjt3RkFBdkIsdUJBQXVCO29FQUF2Qix1QkFBdUI7WUFkaEMsQUFqQkEsQUFaQSwwRkFBaUQsNEdBWXRCLDRHQWlCUTs7O1lBN0JMLEFBQWYsa0NBQWUsNkJBQWlCOzs7aUZBMkN0Qyx1QkFBdUI7Y0E5Q25DLFNBQVM7MkJBQ0UscUJBQXFCLFlBQ3JCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBd0NULG1CQUVnQix1QkFBdUIsQ0FBQyxNQUFNO2dCQUd0QyxJQUFJO2tCQUFaLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLOztrRkFKSyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBMZWdlbmRJdGVtIH0gZnJvbSAnLi4vLi4vY2hhcnQvY29tbW9uL3B1YmxpYy1hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtbGVnZW5kLWRyb3Bkb3duJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzQ2FyZDsgZWxzZSBlbHNlVGVtcGxhdGVcIj5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgIGljb249XCJwcm9kOmNoYXJ0X2xlZ2VuZFwiXG4gICAgICAgIFthdWlUb29sdGlwXT1cImRyb3Bkb3duSXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW2F1aVRvb2x0aXBDb250ZXh0XT1cInsgZGF0YTogW10gfVwiXG4gICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgIGF1aVRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbSBlbmRcIlxuICAgICAgICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgICAgICAgYXVpVG9vbHRpcEFjdGl2ZT1cImxlZ2VuZEFjdGl2ZVwiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VUZW1wbGF0ZT5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvblxuICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgIGljb249XCJwcm9kOmNoYXJ0X2xlZ2VuZFwiXG4gICAgICAgIFthdWlUb29sdGlwXT1cImRyb3Bkb3duSXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW2F1aVRvb2x0aXBDb250ZXh0XT1cInsgZGF0YTogW10gfVwiXG4gICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgIGF1aVRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbSBlbmRcIlxuICAgICAgICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgICAgICAgYXVpVG9vbHRpcEFjdGl2ZT1cImxlZ2VuZEFjdGl2ZVwiXG4gICAgICA+XG4gICAgICAgIDxhdWktaWNvbiBpY29uPVwicHJvZDpjaGFydF9sZWdlbmRcIj48L2F1aS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZHJvcGRvd25JdGVtVGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS5sZW5ndGggJiYgIW5vRGF0YTsgZWxzZSBub0RhdGFUZW1wbGF0ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVnZW5kLXZlcnRpY2FsXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsZWdlbmRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNub0RhdGFUZW1wbGF0ZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJuby1kYXRhXCI+e3sgJ25vX2RhdGEnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi1sZWdlbmQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTGVnZW5kRHJvcGRvd25Db21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBMZWdlbmRJdGVtW107XG4gIEBJbnB1dCgpIGxlZ2VuZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgQElucHV0KCkgbm9EYXRhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc0NhcmQ6IGJvb2xlYW47XG59XG4iXX0=
@@ -254,5 +254,5 @@ export class LegendComponent {
254
254
  }], changeLegend: [{
255
255
  type: Output
256
256
  }] }); })();
257
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendComponent, { className: "LegendComponent" }); })();
257
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendComponent, { className: "LegendComponent", filePath: "view-chart/legend/legend.component.ts", lineNumber: 37 }); })();
258
258
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy92aWV3LWNoYXJ0L2xlZ2VuZC9sZWdlbmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3ZpZXctY2hhcnQvbGVnZW5kL2xlZ2VuZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsSUFBSSxFQUdKLGFBQWEsRUFDYixVQUFVLEdBR1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUMzQyxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBRU4sV0FBVyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxXQUFXLENBQUM7Ozs7O0lDdEJoQyw4QkFHQztJQUNDLDJCQUdnQjtJQUNsQixpQkFBTTs7O0lBSEYsY0FBa0M7SUFDbEMsQUFEQSx1REFBa0Msd0RBQ2M7OztJQVFsRCw2QkFBNkM7SUFDM0MsMkJBQWlFOzs7OztJQUFuRCxjQUFtQztJQUFuQyxvREFBbUM7OztJQUdqRCw2QkFBb0U7SUFDbEUsMkJBR2dCOzs7O0lBRmQsY0FBbUM7SUFDbkMsQUFEQSxrREFBbUMsNkVBQ21COzs7SUFLdEQsMENBUXNCOzs7O0lBRnBCLEFBREEsQUFEQSxBQURBLDJDQUFzQix5QkFDTCxxQ0FDZ0Isa0NBQ1A7OztJQVA5QixpQ0FBb0M7SUFDbEMsbUlBT0M7Ozs7SUFSVywwQ0FBcUI7SUFHOUIsY0FBd0I7SUFBeEIseUNBQXdCOzs7SUFKL0IsQUFOQSxzR0FBb0Usd0hBTXRDOzs7O0lBTmdCLEFBQS9CLDREQUErQixnQ0FBb0I7OztJQVJ0RSw4QkFHQztJQUlD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QUE5QkEsQUFWQSxnRUFHQyxtREFVQSxtREE4QkEsb0dBSTRCOztZQTdDMUIsMkRBQWtDO1lBVWxDLGNBQWlCO1lBQWpCLHNDQUFpQjtZQThCakIsY0FBbUM7WUFBbkMsNERBQW1DOzs7aUZETnpCLGVBQWU7Y0FOM0IsU0FBUzsyQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTTtrREFHdEMsTUFBTTtrQkFBZCxLQUFLO1lBRUcsUUFBUTtrQkFBaEIsS0FBSztZQUVHLElBQUk7a0JBQVosS0FBSztZQUVHLFdBQVc7a0JBQW5CLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsb0JBQW9CO2tCQUE1QixLQUFLO1lBRUcsY0FBYztrQkFBdEIsS0FBSztZQUVHLFVBQVU7a0JBQWxCLEtBQUs7WUFFRyxrQkFBa0I7a0JBQTFCLEtBQUs7WUFFRyxhQUFhO2tCQUFyQixLQUFLO1lBRUcsS0FBSztrQkFBYixLQUFLO1lBRUksWUFBWTtrQkFBckIsTUFBTTs7a0ZBdkJJLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBWaWV3LFxuICBMZWdlbmQgYXMgQ2hhcnRMZWdlbmQsXG4gIExlZ2VuZEl0ZW0sXG4gIExFR0VORF9FVkVOVFMsXG4gIFZJRVdfSE9PS1MsXG4gIENoYXJ0RGF0YSxcbiAgRGF0YSxcbn0gZnJvbSAnQGFsYXVkYS9jaGFydCc7XG5pbXBvcnQgeyBpc1RlbXBsYXRlUmVmIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZ2V0IH0gZnJvbSAnbG9kYXNoLWVzJztcblxuaW1wb3J0IHsgU3RyaW5nTWFwIH0gZnJvbSAnLi4vLi4vY29yZS9wdWJsaWMtYXBpJztcblxuZXhwb3J0IGNsYXNzIExlZ2VuZFBheWxvYWQge1xuICBsZWdlbmQ6IExlZ2VuZEl0ZW07XG4gIHNvdXJjZTogTGVnZW5kSXRlbVtdO1xufVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLWJhc2UtbGVnZW5kJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xlZ2VuZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xlZ2VuZC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTGVnZW5kQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBzeW1ib2w6ICdjaXJjbGUnIHwgJ3NxdWFyZScgfCAnbGluZScgPSAnbGluZSc7XG5cbiAgQElucHV0KCkgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgc3RyaW5nIHwgJ2Ryb3Bkb3duJztcblxuICBASW5wdXQoKSBtb2RlOiAnY2FyZCcgfCAnZGVmYXVsdCcgPSAnZGVmYXVsdCc7XG5cbiAgQElucHV0KCkgdHJhbnNsYXRpb24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpIGxlZnRPcGVyYXRpb246IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIGxlZnRPcGVyYXRpb25Db250ZXh0OiBTdHJpbmdNYXA7XG5cbiAgQElucHV0KCkgcmlnaHRPcGVyYXRpb246IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIGhpZGVMZWdlbmQ6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgc2VsZWN0QWxsT3BlcmF0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KCkgc2VsZWN0QWxsTmFtZTogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGNoYXJ0OiBWaWV3O1xuXG4gIEBPdXRwdXQoKSBjaGFuZ2VMZWdlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPExlZ2VuZEl0ZW1bXT4oKTtcblxuICBnZXQgbm9EYXRhKCkge1xuICAgIHJldHVybiB0aGlzLmxlZ2VuZEVudHJpZXM/Lmxlbmd0aCA9PT0gMCB8fCAhdGhpcy5sZWdlbmRFbnRyaWVzO1xuICB9XG5cbiAgZ2V0IGxlZ2VuZEluc3RhbmNlKCk6IENoYXJ0TGVnZW5kIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydD8uZ2V0Q29udHJvbGxlcignbGVnZW5kJyk7XG4gIH1cblxuICBsZWdlbmRFbnRyaWVzOiBMZWdlbmRJdGVtW10gPSBbXTtcblxuICBpc1RlbXBsYXRlUmVmID0gaXNUZW1wbGF0ZVJlZjtcblxuICBhbGxTZWxlY3RlZCA9IHRydWU7XG5cbiAgZ2V0IHN5bWJvbE5hbWUoKSB7XG4gICAgcmV0dXJuIGBzeW1ib2wtJHt0aGlzLnN5bWJvbH1gO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nT25DaGFuZ2VzKHsgY2hhcnQgfTogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFydC5jdXJyZW50VmFsdWUpIHtcbiAgICAgIHRoaXMubGVnZW5kRW50cmllcyA9IHRoaXMubGVnZW5kSW5zdGFuY2U/LmxlZ2VuZEl0ZW1zO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubGVnZW5kRW50cmllcyA9IHRoaXMubGVnZW5kSW5zdGFuY2U/LmxlZ2VuZEl0ZW1zO1xuICAgIHRoaXMuY2hhcnQ/Lm9uKFZJRVdfSE9PS1MuU0VUX0RBVEEsIChkYXRhOiBDaGFydERhdGFbXSkgPT4ge1xuICAgICAgY29uc3QgaXNCYXIgPSB0aGlzLmNoYXJ0Lm9wdGlvbnMudHlwZSA9PT0gJ2Jhcic7XG4gICAgICBjb25zdCB2YWx1ZXMgPSBkYXRhLmZsYXRNYXAoaXRlbSA9PiBpdGVtLnZhbHVlcykgYXMgQXJyYXk8XG4gICAgICAgIERhdGE8eyB4OiBzdHJpbmc7IGNvbG9yOiBzdHJpbmc7IG5hbWU6IHN0cmluZzsgeTogbnVtYmVyIH0+XG4gICAgICA+O1xuICAgICAgdGhpcy5sZWdlbmRFbnRyaWVzID0gaXNCYXJcbiAgICAgICAgPyB2YWx1ZXMucmVkdWNlPEFycmF5PERhdGE8TGVnZW5kSXRlbT4+PihcbiAgICAgICAgICAgIChwcmUsIGN1cikgPT4gW1xuICAgICAgICAgICAgICAuLi5wcmUsXG4gICAgICAgICAgICAgIC4uLihwcmUuc29tZShkID0+IGQubmFtZSA9PT0gY3VyLngpXG4gICAgICAgICAgICAgICAgPyBbXVxuICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgbmFtZTogY3VyLngsXG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGN1ci5jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICBhY3RpdmF0ZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICBob3ZlcjogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGN1ci55LFxuICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZTogY3VyLFxuICAgICAgICAgICAgICAgICAgICAgIHVuaXQ6IGdldChjdXIsICd1bml0JyksXG4gICAgICAgICAgICAgICAgICAgICAgLi4uY3VyLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXSksXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW10sXG4gICAgICAgICAgKVxuICAgICAgICA6IGRhdGEucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgZCkgPT4gW1xuICAgICAgICAgICAgICAuLi5hY2MsXG4gICAgICAgICAgICAgIC4uLihkLm5hbWVcbiAgICAgICAgICAgICAgICA/IFtcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgIG5hbWU6IGQubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZC5jb2xvcixcbiAgICAgICAgICAgICAgICAgICAgICBhY3RpdmF0ZTogIXRoaXMubGVnZW5kSW5zdGFuY2U/LmRpc2FibGVkTGVnZW5kLmhhcyhcbiAgICAgICAgICAgICAgICAgICAgICAgIGQubmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgIGhvdmVyOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogZC52YWx1ZXM/LltkLnZhbHVlcz8ubGVuZ3RoIC0gMV0/LnksXG4gICAgICAgICAgICAgICAgICAgICAgc291cmNlOiBkLFxuICAgICAgICAgICAgICAgICAgICAgIHVuaXQ6IGdldChkLCAndW5pdCcpLFxuICAgICAgICAgICAgICAgICAgICAgIC4uLmQsXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgOiBbXSksXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgW10sXG4gICAgICAgICAgKTtcbiAgICAgIGlmICh0aGlzLmxlZ2VuZEluc3RhbmNlPy5kaXNhYmxlZExlZ2VuZC5zaXplKSB7XG4gICAgICAgIHRoaXMuY2hhbmdlTGVnZW5kLm5leHQodGhpcy5sZWdlbmRFbnRyaWVzKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5jaGFydD8ub24oTEVHRU5EX0VWRU5UUy5DTElDSywgKGRhdGE6IExlZ2VuZFBheWxvYWQpID0+IHtcbiAgICAgIGNvbnN0IHsgbGVnZW5kLCBzb3VyY2UgfSA9IGRhdGE7XG4gICAgICBjb25zdCBsZWdlbmRJdGVtID0gdGhpcy5sZWdlbmRFbnRyaWVzLmZpbmQoXG4gICAgICAgIGl0ZW0gPT4gaXRlbS5uYW1lID09PSBsZWdlbmQubmFtZSxcbiAgICAgICk7XG4gICAgICBsZWdlbmRJdGVtLmFjdGl2YXRlID0gIWxlZ2VuZC5hY3RpdmF0ZTtcbiAgICAgIHRoaXMuY2hhbmdlTGVnZW5kLm5leHQoc291cmNlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHNlbGVjdGVkKGxlZ2VuZDogTGVnZW5kSXRlbSkge1xuICAgIHRoaXMubGVnZW5kSW5zdGFuY2UuY2hhbmdlTGVnZW5kKGxlZ2VuZCk7XG4gIH1cblxuICBhbGxTZWxlY3Qoc2VsZWN0OiBib29sZWFuKSB7XG4gICAgaWYgKHNlbGVjdCkge1xuICAgICAgdGhpcy5sZWdlbmRJbnN0YW5jZS5sZWdlbmRTZWxlY3RBbGwoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sZWdlbmRJbnN0YW5jZS5sZWdlbmRVbnNlbGVjdEFsbCgpO1xuICAgIH1cbiAgICB0aGlzLmxlZ2VuZEluc3RhbmNlLmNoYW5nZUxlZ2VuZCh0aGlzLmxlZ2VuZEVudHJpZXNbMF0pO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwib3BlcmF0aW9uXCJcbiAgKm5nSWY9XCJpc1RlbXBsYXRlUmVmKGxlZnRPcGVyYXRpb24pXCJcbj5cbiAgPG5nLWNvbnRhaW5lclxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxlZnRPcGVyYXRpb25cIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJsZWZ0T3BlcmF0aW9uQ29udGV4dFwiXG4gID48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwibGVnZW5kLXdyYXAgb3BlcmF0aW9uXCJcbiAgKm5nSWY9XCIhaGlkZUxlZ2VuZFwiXG4+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhdGVtcGxhdGU7IGVsc2UgY3VzdG9tXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsZWdlbmRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNjdXN0b20+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzVGVtcGxhdGVSZWYodGVtcGxhdGUpOyBlbHNlIGJ1aWx0aW5UZW1wbGF0ZVwiPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KHRlbXBsYXRlKVwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGNvbnRleHQ6IGxlZ2VuZEVudHJpZXMgfVwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNidWlsdGluVGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ0ZW1wbGF0ZVwiPlxuICAgICAgICA8YWNsLWxlZ2VuZC1kcm9wZG93blxuICAgICAgICAgIGNsYXNzPVwibGVnZW5kLXZlcnRpY2FsXCJcbiAgICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ2Ryb3Bkb3duJ1wiXG4gICAgICAgICAgW2RhdGFdPVwibGVnZW5kRW50cmllc1wiXG4gICAgICAgICAgW25vRGF0YV09XCJub0RhdGFcIlxuICAgICAgICAgIFtsZWdlbmRUZW1wbGF0ZV09XCJsZWdlbmRUZW1wbGF0ZVwiXG4gICAgICAgICAgW2lzQ2FyZF09XCJtb2RlID09PSAnY2FyZCdcIlxuICAgICAgICA+XG4gICAgICAgIDwvYWNsLWxlZ2VuZC1kcm9wZG93bj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cblxuPGRpdlxuICBjbGFzcz1cIm9wZXJhdGlvblwiXG4gICpuZ0lmPVwiaXNUZW1wbGF0ZVJlZihyaWdodE9wZXJhdGlvbilcIlxuPlxuICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJpZ2h0T3BlcmF0aW9uXCI+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNsZWdlbmRUZW1wbGF0ZT5cbiAgPHVsIGNsYXNzPVwibGVnZW5kLWxhYmVsc1wiPlxuICAgIDxsaVxuICAgICAgY2xhc3M9XCJzZWxlY3QtYWxsXCJcbiAgICAgICpuZ0lmPVwiIW5vRGF0YSAmJiBzZWxlY3RBbGxPcGVyYXRpb24gJiYgdGVtcGxhdGUgPT09ICdkcm9wZG93bidcIlxuICAgID5cbiAgICAgIDxhdWktY2hlY2tib3hcbiAgICAgICAgWyhuZ01vZGVsKV09XCJhbGxTZWxlY3RlZFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImFsbFNlbGVjdCgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAge3sgc2VsZWN0QWxsTmFtZSB8fCAoJ3NlbGVjdF9hbGwnIHwgdHJhbnNsYXRlKSB9fVxuICAgICAgPC9hdWktY2hlY2tib3g+XG4gICAgPC9saT5cbiAgICA8bGlcbiAgICAgIGNsYXNzPVwibGVnZW5kLWxhYmVsXCJcbiAgICAgIFtjbGFzcy5kaXNhYmxlXT1cIiFsZWdlbmQuYWN0aXZhdGUgfHwgbm9EYXRhXCJcbiAgICAgIFtjbGFzcy5mb3JiaWRdPVwibm9EYXRhXCJcbiAgICAgIFt0aXRsZV09XCIobGVnZW5kLmFjdGl2YXRlID8gJ2NsaWNrX2hpZGUnIDogJ2NsaWNrX3Nob3cnKSB8IHRyYW5zbGF0ZVwiXG4gICAgICAqbmdGb3I9XCJsZXQgbGVnZW5kIG9mIGxlZ2VuZEVudHJpZXNcIlxuICAgICAgKGNsaWNrKT1cInNlbGVjdGVkKGxlZ2VuZClcIlxuICAgID5cbiAgICAgIDxzcGFuXG4gICAgICAgIFtuZ0NsYXNzXT1cIltzeW1ib2xOYW1lLCAnbGFiZWwtc3ltYm9sJ11cIlxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJsZWdlbmQuY29sb3JcIlxuICAgICAgPlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJsYWJlbC1uYW1lXCI+e3tcbiAgICAgICAgdHJhbnNsYXRpb24gPyAobGVnZW5kLm5hbWUgfCB0cmFuc2xhdGUpIDogbGVnZW5kLm5hbWVcbiAgICAgIH19PC9zcGFuPlxuICAgIDwvbGk+XG4gIDwvdWw+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -828,5 +828,5 @@ __decorate([
828
828
  }], refreshEvent: [{
829
829
  type: Output
830
830
  }] }); })();
831
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ViewChartComponent, { className: "ViewChartComponent" }); })();
831
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ViewChartComponent, { className: "ViewChartComponent", filePath: "view-chart/view-chart.component.ts", lineNumber: 86 }); })();
832
832
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvbW1vbi9zcmMvdmlldy1jaGFydC92aWV3LWNoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy92aWV3LWNoYXJ0L3ZpZXctY2hhcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFLTCxLQUFLLEVBTUwsV0FBVyxFQUNYLFNBQVMsR0FJVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzNDLE9BQU8sRUFDTCxlQUFlLEVBQ2YsZUFBZSxFQUNmLGNBQWMsR0FDZixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFFTCxjQUFjLEVBQ2QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1Qsd0JBQXdCLEVBRXhCLFVBQVUsRUFFVixZQUFZLEVBQ1osUUFBUSxFQUNSLEtBQUssRUFHTCxNQUFNLEVBRU4sV0FBVyxFQUNYLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFzQyxVQUFVLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDcEUsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFDTCxlQUFlLEVBQ2YsR0FBRyxFQUNILFVBQVUsRUFDVixPQUFPLEVBQ1AsU0FBUyxFQUNULEdBQUcsRUFDSCxhQUFhLEVBQ2IsU0FBUyxHQUNWLE1BQU0sTUFBTSxDQUFDO0FBRWQsT0FBTyxFQUtMLGdCQUFnQixFQUNoQixlQUFlLEVBQ2YsV0FBVyxFQUNYLFVBQVUsRUFFVixnQkFBZ0IsRUFDaEIsU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7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QUs7WUFDRyxnQkFBZ0I7a0JBQXhCLEtBQUs7WUFNTixXQUFXLE1BRUYsVUFBVTtrQkFBbEIsS0FBSztZQUdOLFdBQVcsTUFHWCxZQUFZLE1BRUYsWUFBWTtrQkFBckIsTUFBTTtZQUVHLGNBQWM7a0JBQXZCLE1BQU07WUFFRyxZQUFZO2tCQUFyQixNQUFNOztrRkF0Tkksa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQUNoYXJ0LFxuICBBcmVhU2VyaWVzT3B0aW9uLFxuICBCYXJDb2x1bW5QYXJhbXMsXG4gIEJhclNlcmllc09wdGlvbixcbiAgQ2hhcnQsXG4gIENoYXJ0RGF0YSxcbiAgTGluZVNlcmllc09wdGlvbixcbiAgVmlld09wdGlvbnMsXG4gIFBlcmNlbnRhZ2UsXG4gIFBpZVNlcmllc09wdGlvbixcbiAgUkVDVF9FVkVOVFMsXG4gIFNjYWxlVHlwZSxcbiAgVG9vbHRpcENvbnRleHQsXG4gIFRvb2x0aXBDb250ZXh0SXRlbSxcbiAgVmlldyxcbn0gZnJvbSAnQGFsYXVkYS9jaGFydCc7XG5pbXBvcnQgeyBpc1RlbXBsYXRlUmVmIH0gZnJvbSAnQGFsYXVkYS91aSc7XG5pbXBvcnQge1xuICBDb21wb25lbnRQb3J0YWwsXG4gIERvbVBvcnRhbE91dGxldCxcbiAgVGVtcGxhdGVQb3J0YWwsXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQXBwbGljYXRpb25SZWYsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gIENvbXBvbmVudFJlZixcbiAgRWxlbWVudFJlZixcbiAgRW1iZWRkZWRWaWV3UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDdXJ2ZUZhY3RvcnksIEN1cnZlRmFjdG9yeUxpbmVPbmx5LCB0aW1lRm9ybWF0IH0gZnJvbSAnZDMnO1xuaW1wb3J0IGRheWpzIGZyb20gJ2RheWpzJztcbmltcG9ydCB7XG4gIEJlaGF2aW9yU3ViamVjdCxcbiAgbWFwLFxuICBPYnNlcnZhYmxlLFxuICBTdWJqZWN0LFxuICB0YWtlVW50aWwsXG4gIHRhcCxcbiAgY29tYmluZUxhdGVzdCxcbiAgc3RhcnRXaXRoLFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgQXJlYVBvc2l0aW9uLFxuICBDaGFydERhdGFJdGVtLFxuICBDaGFydFN0YXR1cyxcbiAgQ29udGV4dEl0ZW0sXG4gIGhhbmRsZURhdGVGb3JtYXQsXG4gIE9ic2VydmFibGVJbnB1dCxcbiAgcG9pbnRGb3JtYXQsXG4gIHB1Ymxpc2hSZWYsXG4gIFN0cmluZ01hcCxcbiAgVHJhbnNsYXRlU2VydmljZSxcbiAgVmFsdWVIb29rLFxuICBYUGxvdExpbmVzLFxufSBmcm9tICcuLi9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHsgTGVnZW5kQ29tcG9uZW50IH0gZnJvbSAnLi9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudCc7XG5cbmludGVyZmFjZSBab29tUGFyYW1zIHtcbiAgeDogbnVtYmVyO1xuICB2YWx1ZTogeyB4OiBudW1iZXI7IHk6IG51bWJlciB9O1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtdmlldy1jaGFydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi92aWV3LWNoYXJ0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdmlldy1jaGFydC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVmlld0NoYXJ0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBiYWNrZ3JvdW5kQ29sb3I6IHN0cmluZztcblxuICBASW5wdXQoKSBoaWRlSGVhZGVyOiBib29sZWFuO1xuXG4gIEBWaWV3Q2hpbGQoJ2NoYXJ0Q29udGFpbmVyJykgY2hhcnRDb250YWluZXI6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZCgndGl0bGVDb250YWluZXInKSB0aXRsZUNvbnRhaW5lcjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQFZpZXdDaGlsZCgndG9vbHRpcEl0ZW1WaXJ0dWFsJykgdG9vbHRpcEl0ZW1WaXJ0dWFsOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXBUaXRsZVZpcnR1YWwnKSB0b29sdGlwVGl0bGVWaXJ0dWFsOiBFbGVtZW50UmVmO1xuXG4gIEBWaWV3Q2hpbGQoJ3Rvb2x0aXBOYW1lVmlydHVhbCcpIHRvb2x0aXBOYW1lVmlydHVhbDogRWxlbWVudFJlZjtcblxuICBAVmlld0NoaWxkKCdwaWVMYWJlbENvbnRhaW5lcicpIHBpZUxhYmVsQ29udGFpbmVyOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBtb2RlOiAnY2FyZCcgfCAnZGVmYXVsdCcgPSAnZGVmYXVsdCc7XG5cbiAgQElucHV0KCkgY3VzdG9tTm9EYXRhVGl0bGU6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgc3RyaW5nO1xuXG4gIEBJbnB1dCgpIGN1c3RvbUVycm9yQ29udGFpbmVyOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBtYXJnaW5MZWZ0OiBudW1iZXI7XG5cbiAgQElucHV0KCkgZ3JpZE9mZnNldFRvcCA9IDA7XG5cbiAgQElucHV0KCkgcm90YXRlZDogYm9vbGVhbjtcblxuICAvLyBiYXNlXG4gIEBJbnB1dCgpIGNoYXJ0VHlwZTogJ2xpbmUnIHwgJ2FyZWEnIHwgJ2JhcicgfCAncGllJyB8ICdzY2F0dGVyJyA9ICdhcmVhJztcblxuICBASW5wdXQoKSBzZXJpZXM6IENoYXJ0RGF0YVtdO1xuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgc2VyaWVzJCE6IE9ic2VydmFibGU8Q2hhcnREYXRhW10+O1xuXG4gIEBJbnB1dCgpIHhBY2Nlc3NvciA9IChkOiBDaGFydERhdGFJdGVtKSA9PiBkLng7XG5cbiAgQElucHV0KCkgeUFjY2Vzc29yID0gKGQ6IENoYXJ0RGF0YUl0ZW0pID0+IGQueTtcblxuICBASW5wdXQoKSB1bml0OiBzdHJpbmc7XG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICB1bml0JCE6IE9ic2VydmFibGU8c3RyaW5nPjtcblxuICBAVmFsdWVIb29rKGZ1bmN0aW9uIChcbiAgICB0aGlzOiBWaWV3Q2hhcnRDb21wb25lbnQsXG4gICAgY29udGV4dENhbGxiYWNrRnVuY3Rpb246IChjb250ZXh0OiBWaWV3KSA9PiB2b2lkLFxuICApIHtcbiAgICBpZiAoY29udGV4dENhbGxiYWNrRnVuY3Rpb24gJiYgIXRoaXMub3B0aW9ucz8uY29udGV4dENhbGxiYWNrRnVuY3Rpb24pIHtcbiAgICAgIHRoaXMuY2hhcnQ/LnNldE9wdGlvbnMoeyBjb250ZXh0Q2FsbGJhY2tGdW5jdGlvbiB9KTtcbiAgICB9XG4gIH0pXG4gIEBJbnB1dCgpXG4gIGNvbnRleHRDYWxsYmFja0Z1bmN0aW9uOiAoY29udGV4dDogVmlldykgPT4gdm9pZDtcblxuICAvLyB0aXRsZVxuICBASW5wdXQoKSB0aXRsZTogc3RyaW5nIHwgVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgaGlkZVRpdGxlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHRpdGxlRGVzY3JpcHRpb246IHN0cmluZyB8IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIHRpdGxlRGVzY3JpcHRpb25Db250ZXh0OiBTdHJpbmdNYXA7XG5cbiAgQElucHV0KCkgdGl0bGVPZmZzZXRYOiBudW1iZXI7XG5cbiAgLy8gbGVnZW5kXG4gIEBJbnB1dCgpIGhpZGVMZWdlbmQgPSBmYWxzZTtcblxuICBASW5wdXQoKSBsZWdlbmRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBzdHJpbmc7XG5cbiAgLy8gY3VzdG9tIGxlZ2VuZFxuICBASW5wdXQoKSBsZWZ0T3BlcmF0aW9uOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBsZWZ0T3BlcmF0aW9uQ29udGV4dDogU3RyaW5nTWFwO1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBsZWZ0T3BlcmF0aW9uJCE6IE9ic2VydmFibGU8VGVtcGxhdGVSZWY8dW5rbm93bj4+O1xuXG4gIEBJbnB1dCgpIHJpZ2h0T3BlcmF0aW9uOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgcmlnaHRPcGVyYXRpb24kITogT2JzZXJ2YWJsZTxUZW1wbGF0ZVJlZjx1bmtub3duPj47XG5cbiAgQElucHV0KCkgbGVnZW5kU2VsZWN0QWxsT3BlcmF0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KCkgbGVnZW5kU2VsZWN0QWxsTmFtZTogc3RyaW5nO1xuXG4gIC8vIGF4aXNcblxuICBASW5wdXQoKSB5QXhpc1RpY2tTdWZmaXg6IHN0cmluZztcblxuICBASW5wdXQoKSBkYXRlQXhpc0xhYmVsRm9ybWF0czogc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHhBeGlzTGFiZWxUcmFuc2xhdGlvbjogYm9vbGVhbjtcblxuICBASW5wdXQoKSB4U2NhbGVUeXBlOiBTY2FsZVR5cGU7XG5cbiAgQElucHV0KCkgeEF4aXNUaWNrRm9ybWF0dGVyOiBzdHJpbmcgfCAoKHZhbHVlOiBzdHJpbmcpID0+IHN0cmluZyk7XG5cbiAgQElucHV0KCkgdGlja3M6IHVua25vd247XG5cbiAgQElucHV0KCkgeUF4aXNUaWNrRm9ybWF0dGVyOiBzdHJpbmcgfCAoKHZhbHVlOiBudW1iZXIpID0+IHN0cmluZyk7XG5cbiAgQElucHV0KCkgeUF4aXNNaW5TdGVwPzogbnVtYmVyO1xuXG4gIC8vIHRvb2x0aXBcbiAgQElucHV0KCkgdG9vbHRpcFRyaWdnZXI6ICdheGlzJyB8ICdpdGVtJyB8ICdub25lJztcblxuICBASW5wdXQoKSB0b29sdGlwQXV0b1NvcnQgPSBmYWxzZTtcblxuICBASW5wdXQoKSB0b29sdGlwSGlkZVRpdGxlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBDb2x1bW5MYXlvdXQ6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgdG9vbHRpcFRpdGxlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBQb2ludE5hbWVUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgdG9vbHRpcFRyYW5zbGF0aW9uOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBUaXRsZVRyYW5zbGF0aW9uOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIGhpZGVUb29sdGlwVW5pdDogYm9vbGVhbjtcblxuICBASW5wdXQoKSB0b29sdGlwUG9pbnRGb3JtYXQ6IChkOiBDb250ZXh0SXRlbSkgPT4gbnVtYmVyIHwgc3RyaW5nO1xuXG4gIEBJbnB1dCgpIHRvb2x0aXBQb2ludFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSB0b29sdGlwUG9pbnRUZW1wbGF0ZUNvbnRleHQ6IHVua25vd247XG5cbiAgLy8gc2VyaWVzXG4gIEBJbnB1dCgpIGJhbmRXaWR0aCA9IDEwO1xuXG4gIEBJbnB1dCgpIG1pbkhlaWdodDogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIHN0ZXBMaW5lOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIGN1cnZlVHlwZTogQ3VydmVGYWN0b3J5IHwgQ3VydmVGYWN0b3J5TGluZU9ubHk7XG5cbiAgQElucHV0KCkgYmFyVHlwZTogJ3N0YW5kYXJkJyB8ICdzdGFja2VkJyA9ICdzdGFuZGFyZCc7XG5cbiAgQElucHV0KCkgc3RhcnRPcGFjaXR5OiBudW1iZXI7XG5cbiAgQElucHV0KCkgZW5kT3BhY2l0eTogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIGxpbmVXaWR0aD86IG51bWJlcjtcblxuICAvLyBiYXIgc2VyaWVzXG4gIEBJbnB1dCgpIGlzR3JvdXA6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgYmFyUmFkaXVzOiBudW1iZXI7XG5cbiAgQElucHV0KCkgY2xvc2VSYWRpdXNMYWRkZXI6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgY29sdW1uQ2xpY2s6IChkYXRhOiBCYXJDb2x1bW5QYXJhbXMpID0+IHZvaWQ7XG5cbiAgLy8gem9vbVxuICBASW5wdXQoKSBlbmFibGVab29tOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIGNoYXJ0U3RhdHVzOiBDaGFydFN0YXR1cztcblxuICAvLyBwbG90IGxpbmVcbiAgQElucHV0KCkgeVBsb3RMaW5lc0hpZGUgPSBmYWxzZTtcblxuICBASW5wdXQoKSB5UGxvdExpbmVzOiBUb29sdGlwQ29udGV4dDtcblxuICAvLyBwaWVcbiAgQElucHV0KCkgcGllSW5uZXJSYWRpdXM6IG51bWJlciB8IFBlcmNlbnRhZ2U7XG5cbiAgQElucHV0KCkgcGllT3V0ZXJSYWRpdXM6IG51bWJlciB8IFBlcmNlbnRhZ2U7XG5cbiAgQElucHV0KCkgcGllU3RhcnRBbmdsZTogbnVtYmVyO1xuXG4gIEBJbnB1dCgpIHBpZUVuZEFuZ2xlOiBudW1iZXI7XG5cbiAgQElucHV0KCkgcGllQmFja2dyb3VuZENvbG9yOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgcGllVG90YWw6IG51bWJlcjtcblxuICBASW5wdXQoKSBwaWVJbm5lckRpc2M6IGJvb2xlYW47XG5cbiAgQElucHV0KCkgcGllTGFiZWxUZXh0OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKSBwaWVMYWJlbFBvc2l0aW9uOiB7IHg6IHN0cmluZzsgeTogc3RyaW5nIH07XG5cbiAgQElucHV0KCkgcGllSXRlbVN0eWxlPzoge1xuICAgIGJvcmRlclJhZGl1cz86IG51bWJlcjtcbiAgfTtcblxuICAvLyBzY2F0dGVyXG4gIEBJbnB1dCgpIHNjYXR0ZXJUeXBlOiAnYnViYmxlJztcbiAgQElucHV0KCkgc2NhdHRlck9wYWNpdHk6IG51bWJlcjtcbiAgQElucHV0KCkgc2NhdHRlclNpemU6IG51bWJlcjtcbiAgQElucHV0KCkgc2NhdHRlclRocmVzaG9sZDoge1xuICAgIG1pblNpemU6IG51bWJlcjtcbiAgICBtYXhTaXplOiBudW1iZXI7XG4gIH07XG5cbiAgQE9ic2VydmFibGVJbnB1dCgpXG4gIHlQbG90TGluZXMkITogT2JzZXJ2YWJsZTxUb29sdGlwQ29udGV4dD47XG5cbiAgQElucHV0KCkgeFBsb3RMaW5lczogWFBsb3RMaW5lcztcblxuICBAT2JzZXJ2YWJsZUlucHV0KClcbiAgeFBsb3RMaW5lcyQhOiBPYnNlcnZhYmxlPFhQbG90TGluZXM+O1xuXG4gIEBPYnNlcnZhYmxlSW5wdXQoKVxuICBjaGFydFN0YXR1cyQhOiBPYnNlcnZhYmxlPENoYXJ0U3RhdHVzPjtcblxuICBAT3V0cHV0KCkgbW91c2VVcEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxBcmVhUG9zaXRpb24+KCk7XG5cbiAgQE91dHB1dCgpIG1hcmtDbGlja0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxUb29sdGlwQ29udGV4dD4oKTtcblxuICBAT3V0cHV0KCkgcmVmcmVzaEV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgb25EZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgX2NoYXJ0U3RhdHVzJCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENoYXJ0U3RhdHVzPih7XG4gICAgbG9hZGluZzogdHJ1ZSxcbiAgICBub0RhdGE6IGZhbHNlLFxuICAgIGZhaWxlZDogZmFsc2UsXG4gICAgbm9MZWdlbmQ6IGZhbHNlLFxuICB9KTtcblxuICBfc3RhdHVzOiBDaGFydFN0YXR1cyA9IHt9O1xuXG4gIGNoYXJ0OiBBQ2hhcnQ7XG5cbiAgYXJlYVBvc2l0aW9uOiBBcmVhUG9zaXRpb24gPSB7XG4gICAgeDE6IDAsXG4gICAgeDI6IDAsXG4gICAgc3RhcnRYOiAwLFxuICAgIGVuZFg6IDAsXG4gIH07XG5cbiAgc3RhdHVzJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuY2hhcnRTdGF0dXMkLCB0aGlzLl9jaGFydFN0YXR1cyQkXSkucGlwZShcbiAgICBtYXAoKFtzdGF0dXMsIF9zdGF0dXNdKSA9PiAoe1xuICAgICAgLi4uX3N0YXR1cyxcbiAgICAgIC4uLnN0YXR1cyxcbiAgICB9KSksXG4gICAgdGFwKHN0YXR1cyA9PiAodGhpcy5fc3RhdHVzID0gc3RhdHVzKSksXG4gICAgcHVibGlzaFJlZigpLFxuICApO1xuXG4gIGdldCBiYWNrZ3JvdW5kKCkge1xuICAgIHJldHVybiB0aGlzLmJhY2tncm91bmRDb2xvcjtcbiAgfVxuXG4gIGlzVGVtcGxhdGVSZWYgPSBpc1RlbXBsYXRlUmVmO1xuXG4gIGN1c3RvbUxlZ2VuZFJlZjogQ29tcG9uZW50UmVmPExlZ2VuZENvbXBvbmVudD47XG5cbiAgY3VzdG9tVGl0bGVSZWY6IEVtYmVkZGVkVmlld1JlZjx1bmtub3duPjtcblxuICBjdXN0b21QaWVMYWJlbFRleHRSZWY6IEVtYmVkZGVkVmlld1JlZjx1bmtub3duPjtcblxuICB0b29sdGlwSXRlbUNvbnRleHQ6IHsgY29udGV4dDogVG9vbHRpcENvbnRleHRJdGVtW10gfSA9IHsgY29udGV4dDogW10gfTtcblxuICB0b29sdGlwVGl0bGVDb250ZXh0OiB7IGNvbnRleHQ6IFRvb2x0aXBDb250ZXh0IH0gPSB7IGNvbnRleHQ6IG51bGwgfTtcblxuICBnZXQgc2VyaWVzT3B0aW9ucygpIHtcbiAgICBjb25zdCBiYXJTZXJpZXMgPSB7XG4gICAgICBzdGFjazogdGhpcy5iYXJUeXBlID09PSAnc3RhY2tlZCcsXG4gICAgICBiYW5kd2lkdGg6IHRoaXMuYmFuZFdpZHRoLFxuICAgICAgaXNHcm91cDogdGhpcy5pc0dyb3VwLFxuICAgICAgcmFkaXVzOiB0aGlzLmJhclJhZGl1cyxcbiAgICAgIGNsb3NlUmFkaXVzTGFkZGVyOiB0aGlzLmNsb3NlUmFkaXVzTGFkZGVyLFxuICAgICAgY29sdW1uQ2xpY2s6IHRoaXMuY29sdW1uQ2xpY2sgfHwgbnVsbCxcbiAgICAgIG1pbkhlaWdodDogdGhpcy5taW5IZWlnaHQsXG4gICAgfTtcbiAgICBjb25zdCBsaW5lU2VyaWVzID0ge1xuICAgICAgc3RlcDogdGhpcy5zdGVwTGluZSxcbiAgICAgIGN1cnZlVHlwZTogdGhpcy5jdXJ2ZVR5cGUsXG4gICAgICBsaW5lV2lkdGg6IHRoaXMubGluZVdpZHRoLFxuICAgIH07XG4gICAgY29uc3QgYXJlYVNlcmllcyA9IHtcbiAgICAgIGN1cnZlVHlwZTogdGhpcy5jdXJ2ZVR5cGUsXG4gICAgICBzdGFydE9wYWNpdHk6IHRoaXMuc3RhcnRPcGFjaXR5LFxuICAgICAgZW5kT3BhY2l0eTogdGhpcy5lbmRPcGFjaXR5LFxuICAgICAgbGluZVdpZHRoOiB0aGlzLmxpbmVXaWR0aCxcbiAgICB9O1xuXG4gICAgc3dpdGNoICh0aGlzLmNoYXJ0VHlwZSkge1xuICAgICAgY2FzZSAnYmFyJzoge1xuICAgICAgICByZXR1cm4gYmFyU2VyaWVzIGFzIEJhclNlcmllc09wdGlvbjtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2xpbmUnOiB7XG4gICAgICAgIHJldHVybiBsaW5lU2VyaWVzIGFzIExpbmVTZXJpZXNPcHRpb247XG4gICAgICB9XG4gICAgICBjYXNlICdhcmVhJzoge1xuICAgICAgICByZXR1cm4gYXJlYVNlcmllcyBhcyBBcmVhU2VyaWVzT3B0aW9uO1xuICAgICAgfVxuICAgICAgY2FzZSAncGllJzoge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGlubmVyUmFkaXVzOiB0aGlzLnBpZUlubmVyUmFkaXVzLFxuICAgICAgICAgIG91dGVyUmFkaXVzOiB0aGlzLnBpZU91dGVyUmFkaXVzLFxuICAgICAgICAgIHN0YXJ0QW5nbGU6IHRoaXMucGllU3RhcnRBbmdsZSxcbiAgICAgICAgICBlbmRBbmdsZTogdGhpcy5waWVFbmRBbmdsZSxcbiAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHRoaXMucGllQmFja2dyb3VuZENvbG9yIHx8ICd0cmFuc3BhcmVudCcsXG4gICAgICAgICAgdG90YWw6IHRoaXMucGllVG90YWwsXG4gICAgICAgICAgbGFiZWw6IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgICAgICAgIHg6IHRoaXMucGllTGFiZWxQb3NpdGlvbj8ueCB8fCAnNTAlJyxcbiAgICAgICAgICAgICAgeTogdGhpcy5waWVMYWJlbFBvc2l0aW9uPy55IHx8ICc1MCUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIGlubmVyRGlzYzogdGhpcy5waWVJbm5lckRpc2MsXG4gICAgICAgICAgaXRlbVN0eWxlOiB0aGlzLnBpZUl0ZW1TdHlsZSB8fCB7IGJvcmRlclJhZGl1czogdGhpcy5iYW5kV2lkdGggLyAyIH0sXG4gICAgICAgIH0gYXMgUGllU2VyaWVzT3B0aW9uO1xuICAgICAgfVxuICAgICAgY2FzZSAnc2NhdHRlcic6IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBzaXplOiB0aGlzLnNjYXR0ZXJTaXplLFxuICAgICAgICAgIC4uLnRoaXMuc2NhdHRlclRocmVzaG9sZCxcbiAgICAgICAgICB0eXBlOiB0aGlzLnNjYXR0ZXJUeXBlLFxuICAgICAgICAgIG9wYWNpdHk6IHRoaXMuc2NhdHRlck9wYWNpdHksXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBkZWZhdWx0OiB7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBnZXQgaXNDYXJkTW9kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlID09PSAnY2FyZCc7XG4gIH1cblxuICBnZXQgc2NhbGVUeXBlKCkge1xuICAgIHJldHVybiB0aGlzLnhTY2FsZVR5cGUgfHwgU2NhbGVUeXBlLlRJTUU7XG4gIH1cblxuICBnZXQgaXNTY2FsZVRpbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2NhbGVUeXBlID09PSBTY2FsZVR5cGUuVElNRTtcbiAgfVxuXG4gIGdldCBvcHRpb25zKCk6IFZpZXdPcHRpb25zIHtcbiAgICBjb25zdCBkZWZhdWx0WEF4aXNUaWNrRm9ybWF0dGVyID0gdGhpcy5pc1NjYWxlVGltZVxuICAgICAgPyAoKSA9PiB0aW1lRm9ybWF0KHRoaXMuZGF0ZUF4aXNMYWJlbEZvcm1hdHMgfHwgJyVIOiVNJylcbiAgICAgIDogbnVsbDtcbiAgICBjb25zdCB4QXhpc1RpY2tGb3JtYXR0ZXIgPVxuICAgICAgdGhpcy54QXhpc1RpY2tGb3JtYXR0ZXIgfHwgZGVmYXVsdFhBeGlzVGlja0Zvcm1hdHRlcjtcbiAgICByZXR1cm4ge1xuICAgICAgY3VzdG9tSGVhZGVyOiB0aGlzLmNoYXJ0VHlwZSAhPT0gJ3BpZScsXG4gICAgICB0eXBlOiB0aGlzLnN0ZXBMaW5lID8gJ2xpbmUnIDogdGhpcy5jaGFydFR5cGUsXG4gICAgICBvZmZzZXQ6IHtcbiAgICAgICAgeDogdGhpcy5tYXJnaW5MZWZ0LFxuICAgICAgICB5OiB0aGlzLmlzQ2FyZE1vZGUgPyA1IDogMCxcbiAgICAgIH0sXG4gICAgICByb3RhdGVkOiB0aGlzLnJvdGF0ZWQsXG4gICAgICB0aXRsZToge1xuICAgICAgICB0ZXh0OiB0aGlzLnRpdGxlIGFzIHN0cmluZyxcbiAgICAgICAgb2Zmc2V0WDogdGhpcy50aXRsZU9mZnNldFgsXG4gICAgICAgIGhpZGU6IHRoaXMuaGlkZVRpdGxlIHx8IHRoaXMuaGlkZUhlYWRlcixcbiAgICAgICAgZm9ybWF0dGVyOiAoKSA9PiAnJyxcbiAgICAgIH0sXG4gICAgICBsZWdlbmQ6IHtcbiAgICAgICAgaGlkZTogdGhpcy5oaWRlSGVhZGVyLFxuICAgICAgICBmb3JtYXR0ZXI6ICgpID0+ICcnLFxuICAgICAgICBvZmZzZXRZOiB0aGlzLmlzQ2FyZE1vZGUgPyAtOCA6IDAsXG4gICAgICAgIGlzTW91bnQ6IHRydWUsXG4gICAgICB9LFxuICAgICAgZ3JpZDogeyB0b3A6IHRoaXMuZ3JpZE9mZnNldFRvcCB8fCAwIH0sXG4gICAgICB5QXhpczoge1xuICAgICAgICB0aWNrRm9ybWF0dGVyOlxuICAgICAgICAgIHRoaXMueUF4aXNUaWNrRm9ybWF0dGVyIHx8XG4gICAgICAgICAgKCh2YWx1ZTogbnVtYmVyKSA9PlxuICAgICAgICAgICAgYCR7dGhpcy5jb252ZXJzaW9uTWF4aW11bSh2YWx1ZSl9JHt0aGlzLnlBeGlzVGlja1N1ZmZpeCB8fCAnJ31gKSxcbiAgICAgICAgbWluU3RlcDogdGhpcy55QXhpc01pblN0ZXAsXG4gICAgICB9LFxuICAgICAgeEF4aXM6IHtcbiAgICAgICAgdHlwZTogdGhpcy54U2NhbGVUeXBlIHx8IFNjYWxlVHlwZS5USU1FLFxuICAgICAgICB0aWNrRm9ybWF0dGVyOiB4QXhpc1RpY2tGb3JtYXR0ZXIsXG4gICAgICAgIHRpY2tzOiB0aGlzLnRpY2tzLFxuICAgICAgfSxcbiAgICAgIHRvb2x0aXA6IHtcbiAgICAgICAgaGlkZVRpdGxlOiB0aGlzLnRvb2x0aXBIaWRlVGl0bGUsXG4gICAgICAgIHRyaWdnZXI6IHRoaXMudG9vbHRpcFRyaWdnZXJUeXBlLFxuICAgICAgICB0aXRsZUZvcm1hdHRlcjogdGhpcy50aXRsZUZvcm1hdHRlcixcbiAgICAgICAgaXRlbUZvcm1hdHRlcjogKGNvbnRleHQ6IFRvb2x0aXBDb250ZXh0SXRlbVtdKSA9PiB7XG4gICAgICAgICAgdGhpcy50b29sdGlwSXRlbUNvbnRleHQgPSB0aGlzLm1lcmdlUG9pbnRDb250ZXh0KGNvbnRleHQpO1xuICAgICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICByZXR1cm4gdGhpcy50b29sdGlwUG9pbnRUZW1wbGF0ZVxuICAgICAgICAgICAgPyB0aGlzLnRvb2x0aXBJdGVtVmlydHVhbC5uYXRpdmVFbGVtZW50LmlubmVySFRNTFxuICAgICAgICAgICAgOiB0aGlzLnRvb2x0aXBJdGVtQ29udGV4dC5jb250ZXh0O1xuICAgICAgICB9LFxuICAgICAgICBuYW1lRm9ybWF0dGVyOiAoeyBuYW1lIH0pID0+XG4gICAgICAgICAgdGhpcy50b29sdGlwVHJhbnNsYXRpb24gPyB0aGlzLnRyYW5zbGF0ZS5nZXQobmFtZSkgOiBuYW1lLFxuICAgICAgICB2YWx1ZUZvcm1hdHRlcjogdGhpcy52YWx1ZUZvcm1hdHRlcixcbiAgICAgICAgc29ydDogdGhpcy50b29sdGlwQXV0b1NvcnQgPyAoYSwgYikgPT4gYi55IC0gYS55IDogbnVsbCxcbiAgICAgIH0sXG4gICAgICBzZXJpZXNPcHRpb246IHRoaXMuc2VyaWVzT3B0aW9ucyxcbiAgICAgIHpvb206IHtcbiAgICAgICAgZW5hYmxlZDogdGhpcy5lbmFibGVab29tLFxuICAgICAgICBvbnpvb21TdGFydDogKGQ6IFpvb21QYXJhbXMpID0+IHtcbiAgICAgICAgICB0aGlzLmFyZWFQb3NpdGlvbi54MSA9IGQueDtcbiAgICAgICAgICB0aGlzLmFyZWFQb3NpdGlvbi5zdGFydFggPSBkLnZhbHVlLng7XG4gICAgICAgIH0sXG4gICAgICAgIG9uem9vbUVuZDogKGQ6IFpvb21QYXJhbXMpID0+IHtcbiAgICAgICAgICB0aGlzLmFyZWFQb3NpdGlvbi54MiA9IGQueDtcbiAgICAgICAgICB0aGlzLmFyZWFQb3NpdGlvbi5lbmRYID0gZC52YWx1ZS54O1xuICAgICAgICAgIGNvbnN0IHsgc3RhcnRYLCBlbmRYIH0gPSB0aGlzLmFyZWFQb3NpdGlvbjtcbiAgICAgICAgICBpZiAoc3RhcnRYICE9PSBlbmRYKSB7XG4gICAgICAgICAgICB0aGlzLm1vdXNlVXBFdmVudC5uZXh0KHRoaXMuYXJlYVBvc2l0aW9uKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgeFBsb3RMaW5lOiB7XG4gICAgICAgIGNvbG9yOiAncmVkJyxcbiAgICAgIH0sXG4gICAgICBjb250ZXh0Q2FsbGJhY2tGdW5jdGlvbjogdGhpcy5jb250ZXh0Q2FsbGJhY2tGdW5jdGlvbixcbiAgICB9O1xuICB9XG5cbiAgZ2V0IHRvb2x0aXBUcmlnZ2VyVHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy50b29sdGlwVHJpZ2dlciB8fCB0aGlzLmdldFRyaWdnZXJUeXBlKCk7XG4gIH1cblxuICBnZXRUcmlnZ2VyVHlwZSgpIHtcbiAgICBzd2l0Y2ggKHRoaXMuY2hhcnRUeXBlKSB7XG4gICAgICBjYXNlICdsaW5lJzpcbiAgICAgIGNhc2UgJ2FyZWEnOlxuICAgICAgY2FzZSAnYmFyJzoge1xuICAgICAgICByZXR1cm4gJ2F4aXMnO1xuICAgICAgfVxuICAgICAgY2FzZSAnc2NhdHRlcic6IHtcbiAgICAgICAgcmV0dXJuICdpdGVtJztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ3BpZSc6IHtcbiAgICAgICAgcmV0dXJuICdub25lJztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXBwUmVmOiBBcHBsaWNhdGlvblJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZWFkb25seSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICApIHt9XG5cbiAgbmdPbkNoYW5nZXMoeyBlbmFibGVab29tIH06IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoZW5hYmxlWm9vbT8uY3VycmVudFZhbHVlKSB7XG4gICAgICB0aGlzLmNoYXJ0Py5zZXRPcHRpb25zKHsgem9vbTogeyBlbmFibGVkOiB0cnVlIH0gfSk7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2hhcnQgPSBDaGFydCh7XG4gICAgICBjb250YWluZXI6IHRoaXMuY2hhcnRDb250YWluZXIubmF0aXZlRWxlbWVudCxcbiAgICAgIC4uLnRoaXMub3B0aW9ucyxcbiAgICAgIGRhdGE6IFtdLFxuICAgIH0pO1xuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuc2VyaWVzJCwgdGhpcy54UGxvdExpbmVzJC5waXBlKHN0YXJ0V2l0aChudWxsKSldKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMub25EZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKFtkYXRhLCByZXNdKSA9PiB7XG4gICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgIHRoaXMuY2hhcnQuc2V0T3B0aW9ucyh7XG4gICAgICAgICAgICAgIHR5cGU6XG4gICAgICAgICAgICAgICAgZGF0YS5sZW5ndGggPiAzICYmIHRoaXMuY2hhcnRUeXBlID09PSAnYXJlYSdcbiAgICAgICAgICAgICAgICAgID8gJ2xpbmUnXG4gICAgICAgICAgICAgICAgICA6IHRoaXMuY2hhcnRUeXBlLFxuICAgICAgICAgICAgICBzZXJpZXNPcHRpb246IHtcbiAgICAgICAgICAgICAgICBsaW5lV2lkdGg6IGRhdGEubGVuZ3RoID4gMyA/IDEgOiB0aGlzLmxpbmVXaWR0aCxcbiAgICAgICAgICAgICAgICBhY3RpdmVMaW5lV2lkdGg6IGRhdGEubGVuZ3RoID4gMyA/IDIgOiAzLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB5QXhpczoge1xuICAgICAgICAgICAgICAgIC4uLnRoaXMub3B0aW9ucy55QXhpcyxcbiAgICAgICAgICAgICAgICBtYXg6IHJlcz8udmFsdWUgfHwgdGhpcy5vcHRpb25zLnlBeGlzLm1heCxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3QgdmFsdWVzID0gdGhpcy5oYW5kZWxEYXRhKGRhdGEpO1xuICAgICAgICAgICAgdGhpcy5jaGFydC5kYXRhKHZhbHVlcyk7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5hZGRDdXN0b21MZWdlbmQodGhpcy5jaGFydC5jaGFydFVJZCk7XG4gICAgICAgICAgICAgIHRoaXMuYWRkQ3VzdG9tVGl0bGUodGhpcy5jaGFydC5jaGFydFVJZCk7XG4gICAgICAgICAgICAgIHRoaXMuYWRkUGllTGFiZWxUZXh0KHRoaXMuY2hhcnQuY2hhcnRVSWQpO1xuICAgICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgICBjb25zdCBsZWdlbmRJdGVtcyA9IHRoaXMuY2hhcnQuZ2V0Q29udHJvbGxlcignbGVnZW5kJykubGVnZW5kSXRlbXM7XG4gICAgICAgICAgICB0aGlzLmhhbmRlbENoYXJ0U3RhdHVzKHtcbiAgICAgICAgICAgICAgbG9hZGluZzogZmFsc2UsXG4gICAgICAgICAgICAgIG5vTGVnZW5kOlxuICAgICAgICAgICAgICAgIGxlZ2VuZEl0ZW1zLmxlbmd0aCAmJiBsZWdlbmRJdGVtcy5ldmVyeShpdGVtID0+ICFpdGVtLmFjdGl2YXRlKSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAocmVzKSB7XG4gICAgICAgICAgICB0aGlzLmNoYXJ0Py51cGRhdGVYUGxvdExpbmUocmVzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB0aGlzLmNoYXJ0Lm9uKFJFQ1RfRVZFTlRTLkNMSUNLLCAodmFsdWU6IFRvb2x0aXBDb250ZXh0KSA9PiB7XG4gICAgICB0aGlzLm1hcmtDbGlja0V2ZW50Lm5leHQodmFsdWUpO1xuICAgICAgaWYgKCF0aGlzLnlQbG90TGluZXNIaWRlICYmIHRoaXMueVBsb3RMaW5lcykge1xuICAgICAgICB0aGlzLmNoYXJ0LnVwZGF0ZVlQbG90TGluZSh7XG4gICAgICAgICAgLi4udmFsdWUsXG4gICAgICAgICAgdGl0bGU6IGRheWpzKHZhbHVlLnRpdGxlKS5mb3JtYXQoJ1lZWVktTU0tREQgSEg6bW06c3MnKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy55UGxvdExpbmVzJC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgdGhpcy5jaGFydC51cGRhdGVZUGxvdExpbmUoe1xuICAgICAgICAgIC4uLnJlcyxcbiAgICAgICAgICB0aXRsZTogZGF5anMocmVzLnRpdGxlKS5mb3JtYXQoJ1lZWVktTU0tREQgSEg6bW06c3MnKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBoYW5kZWxEYXRhKGRhdGE6IENoYXJ0RGF0YVtdKSB7XG4gICAgcmV0dXJuIGRhdGEubWFwKGQgPT4gKHtcbiAgICAgIC4uLmQsXG4gICAgICB2YWx1ZXM6IGQudmFsdWVzPy5tYXAodiA9PiAoe1xuICAgICAgICAuLi52LFxuICAgICAgICB4OiB0aGlzLnhBY2Nlc3Nvcih2KSxcbiAgICAgICAgeTogdGhpcy55QWNjZXNzb3IodiksXG4gICAgICB9KSksXG4gICAgfSkpO1xuICB9XG5cbiAgYWRkQ3VzdG9tTGVnZW5kKGNoYXJ0VUlkOiBzdHJpbmcpIHtcbiAgICBjb25zdCBkb20gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAuJHtjaGFydFVJZH0gLmFjLWxlZ2VuZGApO1xuICAgIGlmICghdGhpcy5jdXN0b21MZWdlbmRSZWYgJiYgZG9tICYmICF0aGlzLmhpZGVIZWFkZXIpIHtcbiAgICAgIGNvbnN0IHAgPSBuZXcgQ29tcG9uZW50UG9ydGFsKExlZ2VuZENvbXBvbmVudCk7XG4gICAgICBjb25zdCBvID0gbmV3IERvbVBvcnRhbE91dGxldChcbiAgICAgICAgZG9tLFxuICAgICAgICB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgdGhpcy5hcHBSZWYsXG4gICAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICApO1xuICAgICAgdGhpcy5jdXN0b21MZWdlbmRSZWYgPSBwLmF0dGFjaChvKTtcbiAgICAgIHRoaXMuY3VzdG9tTGVnZW5kUmVmLmluc3RhbmNlLmNoYXJ0ID0gdGhpcy5jaGFydDtcbiAgICAgIHRoaXMuY3VzdG9tTGVnZW5kUmVmLmluc3RhbmNlLnN5bWJvbCA9IFsnYmFyJywgJ3BpZScsICdzY2F0dGVyJ10uaW5jbHVkZXMoXG4gICAgICAgIHRoaXMuY2hhcnRUeXBlLFxuICAgICAgKVxuICAgICAgICA/ICdjaXJjbGUnXG4gICAgICAgIDogJ2xpbmUnO1xuICAgICAgdGhpcy5sZWZ0T3BlcmF0aW9uJC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmN1c3RvbUxlZ2VuZFJlZi5pbnN0YW5jZS5sZWZ0T3BlcmF0aW9uID0gdGhpcy5sZWZ0T3BlcmF0aW9uO1xuICAgICAgICB0aGlzLmN1c3RvbUxlZ2VuZFJlZi5pbnN0YW5jZS5sZWZ0T3BlcmF0aW9uQ29udGV4dCA9XG4gICAgICAgICAgdGhpcy5sZWZ0T3BlcmF0aW9uQ29udGV4dDtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnJpZ2h0T3BlcmF0aW9uJC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICB0aGlzLmN1c3RvbUxlZ2VuZFJlZi5pbnN0YW5jZS5yaWdodE9wZXJhdGlvbiA9IHRoaXMucmlnaHRPcGVyYXRpb247XG4gICAgICB9KTtcbiAgICAgIHRoaXMuY3VzdG9tTGVnZW5kUmVmLmluc3RhbmNlLm1vZGUgPSB0aGlzLm1vZGU7XG4gICAgICB0aGlzLmN1c3RvbUxlZ2VuZFJlZi5pbnN0YW5jZS5oaWRlTGVnZW5kID0gdGhpcy5oaWRlTGVnZW5kO1xuICAgICAgdGhpcy5jdXN0b21MZWdlbmRSZWYuaW5zdGFuY2Uuc2VsZWN0QWxsTmFtZSA9IHRoaXMubGVnZW5kU2VsZWN0QWxsTmFtZTtcbiAgICAgIHRoaXMuY3VzdG9tTGVnZW5kUmVmLmluc3RhbmNlLnNlbGVjdEFsbE9wZXJhdGlvbiA9XG4gICAgICAgIHRoaXMubGVnZW5kU2VsZWN0QWxsT3BlcmF0aW9uO1xuICAgICAgdGhpcy5jdXN0b21MZWdlbmRSZWYuaW5zdGFuY2UudGVtcGxhdGUgPSB0aGlzLmxlZ2VuZFRlbXBsYXRlO1xuICAgICAgdGhpcy5jdXN0b21MZWdlbmRSZWYuaW5zdGFuY2UuY2hhbmdlTGVnZW5kXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSQpKVxuICAgICAgICAuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICAgICAgdGhpcy5oYW5kZWxDaGFydFN0YXR1cyh7XG4gICAgICAgICAgICBub0xlZ2VuZDogcmVzLmV2ZXJ5KGl0ZW0gPT4gIWl0ZW0uYWN0aXZhdGUpLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBhZGRDdXN0b21UaXRsZShjaGFydFVJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgZG9tID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgLiR7Y2hhcnRVSWR9IC5hYy10aXRsZWApO1xuICAgIGlmICghdGhpcy5jdXN0b21UaXRsZVJlZiAmJiBkb20gJiYgIXRoaXMuaGlkZUhlYWRlcikge1xuICAgICAgY29uc3QgcCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLnRpdGxlQ29udGFpbmVyLCB0aGlzLnZpZXdDb250YWluZXJSZWYpO1xuICAgICAgY29uc3QgbyA9IG5ldyBEb21Qb3J0YWxPdXRsZXQoXG4gICAgICAgIGRvbSxcbiAgICAgICAgdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgIHRoaXMuYXBwUmVmLFxuICAgICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgKTtcbiAgICAgIHRoaXMuY3VzdG9tVGl0bGVSZWYgPSBwLmF0dGFjaChvKTtcbiAgICB9XG4gIH1cblxuICBhZGRQaWVMYWJlbFRleHQoY2hhcnRVSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGRvbSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYC4ke2NoYXJ0VUlkfSAuYWMtcGllLWd1aWRlYCk7XG4gICAgaWYgKCF0aGlzLmN1c3RvbVBpZUxhYmVsVGV4dFJlZiAmJiBkb20gJiYgdGhpcy5waWVMYWJlbFRleHQpIHtcbiAgICAgIGNvbnN0IHAgPSBuZXcgVGVtcGxhdGVQb3J0YWwoXG4gICAgICAgIHRoaXMucGllTGFiZWxDb250YWluZXIsXG4gICAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgICk7XG4gICAgICBjb25zdCBvID0gbmV3IERvbVBvcnRhbE91dGxldChcbiAgICAgICAgZG9tLFxuICAgICAgICB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICAgICAgdGhpcy5hcHBSZWYsXG4gICAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICApO1xuICAgICAgdGhpcy5jdXN0b21QaWVMYWJlbFRleHRSZWYgPSBwLmF0dGFjaChvKTtcbiAgICB9XG4gIH1cblxuICByZWZyZXNoKCkge1xuICAgIHRoaXMucmVmcmVzaEV2ZW50Lm5leHQobnVsbCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm9uRGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuY3VzdG9tTGVnZW5kUmVmPy5kZXN0cm95KCk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IG1lcmdlUG9pbnRDb250ZXh0ID0gKGNvbnRleHQ6IFRvb2x0aXBDb250ZXh0SXRlbVtdKSA9PiAoe1xuICAgIGNvbnRleHQ6IHRoaXMubGltaXRNYXhDb250ZXh0KGNvbnRleHQpLFxuICAgIC4uLih0aGlzLnRvb2x0aXBQb2ludFRlbXBsYXRlQ29udGV4dCBhcyBTdHJpbmdNYXApLFxuICB9KTtcblxuICBwcml2YXRlIGhhbmRlbENoYXJ0U3RhdHVzKHN0YXR1czogQ2hhcnRTdGF0dXMpIHtcbiAgICB0aGlzLl9jaGFydFN0YXR1cyQkLm5leHQoe1xuICAgICAgLi4uc3RhdHVzLFxuICAgIH0pO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgbGltaXRNYXhDb250ZXh0KGNvbnRleHQ6IFRvb2x0aXBDb250ZXh0SXRlbVtdLCBsaW1pdCA9IDE1KSB7XG4gICAgY29uc3QgdmFsdWVzID0gY29udGV4dC5zbGljZSgwLCBsaW1pdCk7XG4gICAgY29uc3QgZXhpc3RBY3RpdmUgPVxuICAgICAgY29udGV4dC5zb21lKGl0ZW0gPT4gaXRlbS5hY3RpdmF0ZWQpICYmIHZhbHVlcy5zb21lKGQgPT4gIWQuYWN0aXZhdGVkKTtcbiAgICBpZiAoIWV4aXN0QWN0aXZlICYmIGNvbnRleHQubGVuZ3RoID4gbGltaXQpIHtcbiAgICAgIGNvbnN0IGRhdGEgPSBjb250ZXh0LmZpbmQoaXRlbSA9PiBpdGVtLmFjdGl2YXRlZCk7XG4gICAgICByZXR1cm4gZGF0YSA/IFsuLi52YWx1ZXMuc2xpY2UoMCwgbGltaXQgLSAxKSwgZGF0YV0gOiB2YWx1ZXM7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZXM7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRQb2ludEZvcm1hdCA9IHBvaW50Rm9ybWF0O1xuXG4gIHByaXZhdGUgY29udmVyc2lvbk1heGltdW0odmFsdWU6IG51bWJlcikge1xuICAgIGNvbnN0IHVuaXQgPSAnayc7XG4gICAgaWYgKHZhbHVlID49IDEwMDApIHtcbiAgICAgIGNvbnN0IG51bSA9ICsodmFsdWUgLyAxMDAwKS50b0ZpeGVkKDIpO1xuICAgICAgcmV0dXJuIGAke251bX0ke3VuaXR9YDtcbiAgICB9XG4gICAgcmV0dXJuICcnICsgdmFsdWU7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IHRpdGxlRm9ybWF0dGVyID0gKGNvbnRleHQ6IFRvb2x0aXBDb250ZXh0KSA9PiB7XG4gICAgdGhpcy50b29sdGlwVGl0bGVDb250ZXh0ID0geyBjb250ZXh0IH07XG4gICAgY29uc3QgdGl0bGUgPVxuICAgICAgdGhpcy50b29sdGlwVHJhbnNsYXRpb24gJiYgIXRoaXMudG9vbHRpcFRpdGxlVGVtcGxhdGVcbiAgICAgICAgPyB0aGlzLnRyYW5zbGF0ZS5nZXQoY29udGV4dC50aXRsZSBhcyBzdHJpbmcpIHx8IGNvbnRleHQudGl0bGVcbiAgICAgICAgOiBjb250ZXh0LnRpdGxlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIHJldHVybiB0aGlzLnRvb2x0aXBUaXRsZVRlbXBsYXRlXG4gICAgICA/IHRoaXMudG9vbHRpcFRpdGxlVmlydHVhbC5uYXRpdmVFbGVtZW50LmlubmVySFRNTFxuICAgICAgOiBoYW5kbGVEYXRlRm9ybWF0KHRpdGxlKTtcbiAgfTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHZhbHVlRm9ybWF0dGVyID0gKHZhbHVlOiBUb29sdGlwQ29udGV4dEl0ZW0pID0+IHtcbiAgICBjb25zdCByZXMgPSB0aGlzLnRvb2x0aXBQb2ludEZvcm1hdFxuICAgICAgPyB0aGlzLnRvb2x0aXBQb2ludEZvcm1hdCh2YWx1ZSlcbiAgICAgIDogdGhpcy5kZWZhdWx0UG9pbnRGb3JtYXQodmFsdWUueSk7XG4gICAgcmV0dXJuIHRoaXMuaGlkZVRvb2x0aXBVbml0ICYmICF0aGlzLnVuaXRcbiAgICAgID8gKHJlcyBhcyBzdHJpbmcpXG4gICAgICA6IGAke3Jlc30gJHt0aGlzLnRyYW5zbGF0ZS5nZXQodGhpcy51bml0KX1gO1xuICB9O1xufVxuIiwiPGRpdlxuICBjbGFzcz1cImFjLWNoYXJ0XCJcbiAgW2NsYXNzLmFjLW5vbi1jaGFydF09XCJjaGFydFR5cGUgPT09ICdwaWUnXCJcbiAgW2NsYXNzLmFjLWJhcl09XCJjaGFydFR5cGUgPT09ICdiYXInXCJcbiAgW3N0eWxlLmJhY2tncm91bmRdPVwiYmFja2dyb3VuZFwiXG4+XG4gIDxkaXZcbiAgICAjY2hhcnRDb250YWluZXJcbiAgICBjbGFzcz1cImFjLWNoYXJ0LWNvbnRhaW5lciB0dy13LWZ1bGwgdHctaC1mdWxsXCJcbiAgPjwvZGl2PlxuXG4gIDxkaXZcbiAgICBjbGFzcz1cImFjLWNoYXJ0LXN0YXR1c1wiXG4gICAgKm5nSWY9XCJzdGF0dXMkIHwgYXN5bmMgYXMgc3RhdHVzXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwic3RhdHVzLmZhaWxlZCAmJiAhc3RhdHVzLmxvYWRpbmdcIlxuICAgICAgY2xhc3M9XCJzdGF0dXMgZmFpbGVkXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VzdG9tRXJyb3JDb250YWluZXI7IGVsc2Ugbm9DdXN0b21FcnJvckNvbnRhaW5lclwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbUVycm9yQ29udGFpbmVyXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm9DdXN0b21FcnJvckNvbnRhaW5lcj5cbiAgICAgICAgPGF1aS1pY29uXG4gICAgICAgICAgaWNvbj1cImV4Y2xhbWF0aW9uX3RyaWFuZ2xlX3NcIlxuICAgICAgICAgIGJhY2tncm91bmQ9XCJ0cmlhbmdsZVwiXG4gICAgICAgID48L2F1aS1pY29uPlxuICAgICAgICB7eyAnZmFpbGVkX2xvYWRfcGxlYXNlJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgICAgIChjbGljayk9XCJyZWZyZXNoKClcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgKCdyZWZyZXNoJyB8IHRyYW5zbGF0ZSkudG9Mb3dlckNhc2UoKSB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJzdGF0dXMubG9hZGluZ1wiXG4gICAgICBjbGFzcz1cInN0YXR1cyBsb2FkaW5nXCJcbiAgICA+XG4gICAgICA8YXVpLWljb24gaWNvbj1cInNwaW5uZXJcIj48L2F1aS1pY29uPiB7eyAnbG9hZGluZycgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cInN0YXR1cy5ub0xlZ2VuZCAmJiAhc3RhdHVzLmxvYWRpbmdcIlxuICAgICAgY2xhc3M9XCJzdGF0dXMgbm8tbGVnZW5kXCJcbiAgICA+XG4gICAgICB7eyAnbm9faW5kaWNhdG9yX3NlbGVjdGVkJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvZGl2PlxuXG4gICAgPGRpdlxuICAgICAgKm5nSWY9XCJzdGF0dXMubm9EYXRhICYmICFzdGF0dXMubG9hZGluZyAmJiAhc3RhdHVzLmZhaWxlZFwiXG4gICAgICBjbGFzcz1cInN0YXR1cyBuby1kYXRhXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ0lmPVwiXG4gICAgICAgICAgY3VzdG9tTm9EYXRhVGl0bGUgJiYgaXNUZW1wbGF0ZVJlZihjdXN0b21Ob0RhdGFUaXRsZSk7XG4gICAgICAgICAgZWxzZSBub0RhdGFUaXRsZVRlbXBsYXRlXG4gICAgICAgIFwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY3VzdG9tTm9EYXRhVGl0bGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNub0RhdGFUaXRsZVRlbXBsYXRlPlxuICAgICAgICB7eyBjdXN0b21Ob0RhdGFUaXRsZSB8fCAoJ25vX2RhdGEnIHwgdHJhbnNsYXRlKSB9fVxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPCEtLSB0aXRsZSBUZW1wbGF0ZSAtLT5cbjxuZy10ZW1wbGF0ZSAjdGl0bGVDb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpc1RlbXBsYXRlUmVmKHRpdGxlKTsgZWxzZSBUaXRsZVRlbXBsYXRlXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0aXRsZVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNUZW1wbGF0ZVJlZih0aXRsZURlc2NyaXB0aW9uKTsgZWxzZSBUaXRsZURlc1RlbXBsYXRlXCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGl0bGVEZXNjcmlwdGlvblwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwidGl0bGVEZXNjcmlwdGlvbkNvbnRleHRcIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI1RpdGxlVGVtcGxhdGU+XG4gIHt7IHRpdGxlIH19XG4gIHt7IHVuaXQgPyAnKCcgKyAodW5pdCB8IHRyYW5zbGF0ZSkgKyAnKScgOiAnJyB9fVxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNUaXRsZURlc1RlbXBsYXRlPlxuICB7eyB0aXRsZURlc2NyaXB0aW9uIH19XG48L25nLXRlbXBsYXRlPlxuXG48IS0tIHRvb2x0aXAgdGVtcGxhdGUgLS0+XG48ZGl2XG4gICN0b29sdGlwSXRlbVZpcnR1YWxcbiAgY2xhc3M9XCJoaWRlXCJcbj5cbiAgPG5nLWNvbnRhaW5lclxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRvb2x0aXBQb2ludFRlbXBsYXRlXCJcbiAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwidG9vbHRpcEl0ZW1Db250ZXh0XCJcbiAgPjwvbmctY29udGFpbmVyPlxuPC9kaXY+XG5cbjxkaXZcbiAgI3Rvb2x0aXBUaXRsZVZpcnR1YWxcbiAgY2xhc3M9XCJoaWRlXCJcbj5cbiAgPG5nLWNvbnRhaW5lclxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRvb2x0aXBUaXRsZVRlbXBsYXRlXCJcbiAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwidG9vbHRpcFRpdGxlQ29udGV4dFwiXG4gID48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48ZGl2XG4gICN0b29sdGlwTmFtZVZpcnR1YWxcbiAgY2xhc3M9XCJoaWRlXCJcbj5cbiAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJ0b29sdGlwUG9pbnROYW1lVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI3BpZUxhYmVsQ29udGFpbmVyPlxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJwaWVMYWJlbFRleHQgJiYgaXNUZW1wbGF0ZVJlZihwaWVMYWJlbFRleHQpOyBlbHNlIHN0cmluZ1BpZUxhYmVsVGV4dFwiXG4gID5cbiAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInBpZUxhYmVsVGV4dFwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLXRlbXBsYXRlICNzdHJpbmdQaWVMYWJlbFRleHQ+XG4gICAge3sgcGllTGFiZWxUZXh0IH19XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -109,5 +109,5 @@ export class LegendDropdownComponent {
109
109
  }], isCard: [{
110
110
  type: Input
111
111
  }] }); })();
112
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendDropdownComponent, { className: "LegendDropdownComponent" }); })();
112
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendDropdownComponent, { className: "LegendDropdownComponent", filePath: "view-zchart/custom-template/dropdown-legend.ts", lineNumber: 56 }); })();
113
113
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbGVnZW5kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21tb24vc3JjL3ZpZXctemNoYXJ0L2N1c3RvbS10ZW1wbGF0ZS9kcm9wZG93bi1sZWdlbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQzs7Ozs7SUFPbkIsNkJBQWlEO0lBQy9DLDhCQVNZOzs7OztJQU5WLGNBQW1DO0lBQ25DLEFBREEsb0RBQW1DLDZFQUNEOzs7SUFRcEMsaUNBV0M7SUFDQyw4QkFBOEM7SUFDaEQsaUJBQVM7Ozs7SUFQUCxBQURBLEFBSEEsNkJBQWUsdUNBR29CLDZFQUNEOzs7SUFXcEMsNkJBQWtFO0lBQ2hFLDhCQUE2QjtJQUMzQiwyQkFBaUU7SUFDbkUsaUJBQU07Ozs7SUFEVSxlQUFtQztJQUFuQyx3REFBbUM7OztJQUluRCwrQkFBc0I7SUFBQSxZQUEyQjs7SUFBQSxpQkFBTzs7SUFBbEMsY0FBMkI7SUFBM0IscURBQTJCOzs7SUFEbkQsQUFMQSx3R0FBa0UsMEhBS3JDOzs7O0lBTGdCLEFBQTlCLDJEQUE4QiwrQkFBbUI7O0FBYXRFLE1BQU0sT0FBTyx1QkFBdUI7d0ZBQXZCLHVCQUF1QjtvRUFBdkIsdUJBQXVCO1lBZGhDLEFBakJBLEFBWkEsMEZBQWlELDRHQVl0Qiw0R0FpQlE7OztZQTdCTCxBQUFmLGtDQUFlLDZCQUFpQjs7O2lGQTJDdEMsdUJBQXVCO2NBOUNuQyxTQUFTOzJCQUNFLDBCQUEwQixZQUMxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdDVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTTtnQkFHdEMsSUFBSTtrQkFBWixLQUFLO1lBQ0csY0FBYztrQkFBdEIsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSztZQUNHLE1BQU07a0JBQWQsS0FBSzs7a0ZBSkssdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTGVnZW5kSXRlbSB9IGZyb20gJy4uLy4uL2NoYXJ0L2NvbW1vbi9wdWJsaWMtYXBpJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYWNsLXZpZXctbGVnZW5kLWRyb3Bkb3duJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzQ2FyZDsgZWxzZSBlbHNlVGVtcGxhdGVcIj5cbiAgICAgIDxhdWktaWNvblxuICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgIGljb249XCJwcm9kOmNoYXJ0X2xlZ2VuZFwiXG4gICAgICAgIFthdWlUb29sdGlwXT1cImRyb3Bkb3duSXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW2F1aVRvb2x0aXBDb250ZXh0XT1cInsgZGF0YTogW10gfVwiXG4gICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgIGF1aVRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbSBlbmRcIlxuICAgICAgICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgICAgICAgYXVpVG9vbHRpcEFjdGl2ZT1cImxlZ2VuZEFjdGl2ZVwiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VUZW1wbGF0ZT5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvblxuICAgICAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgICAgICBjbGFzcz1cImJ0blwiXG4gICAgICAgIGljb249XCJwcm9kOmNoYXJ0X2xlZ2VuZFwiXG4gICAgICAgIFthdWlUb29sdGlwXT1cImRyb3Bkb3duSXRlbVRlbXBsYXRlXCJcbiAgICAgICAgW2F1aVRvb2x0aXBDb250ZXh0XT1cInsgZGF0YTogW10gfVwiXG4gICAgICAgIGF1aVRvb2x0aXBUeXBlPVwiaW5mb1wiXG4gICAgICAgIGF1aVRvb2x0aXBQb3NpdGlvbj1cImJvdHRvbSBlbmRcIlxuICAgICAgICBhdWlUb29sdGlwVHJpZ2dlcj1cImNsaWNrXCJcbiAgICAgICAgYXVpVG9vbHRpcEFjdGl2ZT1cImxlZ2VuZEFjdGl2ZVwiXG4gICAgICA+XG4gICAgICAgIDxhdWktaWNvbiBpY29uPVwicHJvZDpjaGFydF9sZWdlbmRcIj48L2F1aS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZHJvcGRvd25JdGVtVGVtcGxhdGU+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS5sZW5ndGggJiYgIW5vRGF0YTsgZWxzZSBub0RhdGFUZW1wbGF0ZVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGVnZW5kLXZlcnRpY2FsXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJsZWdlbmRUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLXRlbXBsYXRlICNub0RhdGFUZW1wbGF0ZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJuby1kYXRhXCI+e3sgJ25vX2RhdGEnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi1sZWdlbmQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTGVnZW5kRHJvcGRvd25Db21wb25lbnQge1xuICBASW5wdXQoKSBkYXRhOiBMZWdlbmRJdGVtW107XG4gIEBJbnB1dCgpIGxlZ2VuZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcbiAgQElucHV0KCkgbm9EYXRhOiBib29sZWFuO1xuICBASW5wdXQoKSBpc0NhcmQ6IGJvb2xlYW47XG59XG4iXX0=
@@ -260,5 +260,5 @@ export class LegendComponent {
260
260
  }], changeLegend: [{
261
261
  type: Output
262
262
  }] }); })();
263
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendComponent, { className: "LegendComponent" }); })();
263
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(LegendComponent, { className: "LegendComponent", filePath: "view-zchart/legend/legend.component.ts", lineNumber: 36 }); })();
264
264
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnZW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy92aWV3LXpjaGFydC9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy92aWV3LXpjaGFydC9sZWdlbmQvbGVnZW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDM0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQXlCLFVBQVUsRUFBUSxNQUFNLFVBQVUsQ0FBQzs7Ozs7SUNkMUUsOEJBR0M7SUFDQywyQkFHZ0I7SUFDbEIsaUJBQU07OztJQUhGLGNBQWtDO0lBQ2xDLEFBREEsdURBQWtDLHdEQUNjOzs7SUFTaEQsK0NBUTJCOzs7O0lBRnpCLEFBREEsQUFEQSxBQURBLDJDQUFzQix5QkFDTCxxQ0FDZ0Isa0NBQ1A7OztJQUc1Qiw2QkFBK0M7SUFDN0MsNEJBQWlFOzs7OztJQUFuRCxjQUFtQztJQUFuQyxvREFBbUM7OztJQVhyRCw2QkFBNkM7SUFVM0MsQUFUQSwrSEFPQywyRkFFOEM7Ozs7SUFQNUMsY0FBOEI7SUFBOUIsc0RBQThCO0lBT2xCLGNBQThCO0lBQTlCLHNEQUE4Qjs7O0lBSzdDLDZCQUFvRTtJQUNsRSwyQkFHZ0I7Ozs7SUFGZCxjQUFtQztJQUNuQyxBQURBLGtEQUFtQyw2RUFDbUI7OztJQUt0RCwrQ0FRMkI7Ozs7SUFGekIsQUFEQSxBQURBLEFBREEsMkNBQXNCLHlCQUNMLHFDQUNn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QUFVO2tCQUFsQixLQUFLO1lBRUcsa0JBQWtCO2tCQUExQixLQUFLO1lBRUcsYUFBYTtrQkFBckIsS0FBSztZQUVHLEtBQUs7a0JBQWIsS0FBSztZQUVJLFlBQVk7a0JBQXJCLE1BQU07O2tGQXZCSSxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNUZW1wbGF0ZVJlZiB9IGZyb20gJ0BhbGF1ZGEvdWknO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGdldCB9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQgeyBDaGFydCwgTGVnZW5kIGFzIENoYXJ0TGVnZW5kLCBDaGFydEV2ZW50LCBEYXRhIH0gZnJvbSAnenotY2hhcnQnO1xuXG5pbXBvcnQgeyBTdHJpbmdNYXAgfSBmcm9tICcuLi8uLi9jb3JlL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgaW50ZXJmYWNlIExlZ2VuZEl0ZW0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGNvbG9yOiBzdHJpbmc7XG4gIGFjdGl2YXRlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIExlZ2VuZFBheWxvYWQge1xuICBsZWdlbmQ6IExlZ2VuZEl0ZW07XG4gIHNvdXJjZTogTGVnZW5kSXRlbVtdO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhY2wtYmFzZS1sZWdlbmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGVnZW5kLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGVnZW5kLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBMZWdlbmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHN5bWJvbDogJ2NpcmNsZScgfCAnc3F1YXJlJyB8ICdsaW5lJyA9ICdsaW5lJztcblxuICBASW5wdXQoKSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj4gfCBzdHJpbmcgfCAnZHJvcGRvd24nO1xuXG4gIEBJbnB1dCgpIG1vZGU6ICdjYXJkJyB8ICdkZWZhdWx0JyA9ICdkZWZhdWx0JztcblxuICBASW5wdXQoKSB0cmFuc2xhdGlvbiA9IHRydWU7XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgbGVmdE9wZXJhdGlvbkNvbnRleHQ6IFN0cmluZ01hcDtcblxuICBASW5wdXQoKSByaWdodE9wZXJhdGlvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KCkgaGlkZUxlZ2VuZDogYm9vbGVhbjtcblxuICBASW5wdXQoKSBzZWxlY3RBbGxPcGVyYXRpb24gPSBmYWxzZTtcblxuICBASW5wdXQoKSBzZWxlY3RBbGxOYW1lOiBzdHJpbmc7XG5cbiAgQElucHV0KCkgY2hhcnQ6IENoYXJ0O1xuXG4gIEBPdXRwdXQoKSBjaGFuZ2VMZWdlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPExlZ2VuZEl0ZW1bXT4oKTtcblxuICBnZXQgbm9EYXRhKCkge1xuICAgIHJldHVybiB0aGlzLmxlZ2VuZEVudHJpZXM/Lmxlbmd0aCA9PT0gMCB8fCAhdGhpcy5sZWdlbmRFbnRyaWVzO1xuICB9XG5cbiAgZ2V0IGxlZ2VuZEluc3RhbmNlKCk6IENoYXJ0TGVnZW5kIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydD8uY29tcG9uZW50cy5nZXQoJ2xlZ2VuZCcpIGFzIENoYXJ0TGVnZW5kO1xuICB9XG5cbiAgZ2V0IGxlZ2VuZEl0ZW0oKTogTGVnZW5kSXRlbVtdIHtcbiAgICByZXR1cm4gKFxuICAgICAgKHRoaXMubGVnZW5kSW5zdGFuY2U/LmdldExlZ2VuZCgpIGFzIExlZ2VuZEl0ZW1bXSk/Lm1hcChsZWdlbmQgPT4gKHtcbiAgICAgICAgLi4ubGVnZW5kLFxuICAgICAgICBhY3RpdmF0ZTogdHJ1ZSxcbiAgICAgIH0pKSB8fCBbXVxuICAgICk7XG4gIH1cblxuICBsZWdlbmRFbnRyaWVzOiBMZWdlbmRJdGVtW10gPSBbXTtcblxuICBpc1RlbXBsYXRlUmVmID0gaXNUZW1wbGF0ZVJlZjtcblxuICBhbGxTZWxlY3RlZCA9IHRydWU7XG5cbiAgZ2V0IHN5bWJvbE5hbWUoKSB7XG4gICAgcmV0dXJuIGBzeW1ib2wtJHt0aGlzLnN5bWJvbH1gO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdPbkNoYW5nZXMoeyBjaGFydCB9OiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKGNoYXJ0LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5sZWdlbmRFbnRyaWVzID0gdGhpcy5sZWdlbmRJdGVtO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubGVnZW5kRW50cmllcyA9IHRoaXMubGVnZW5kSXRlbTtcblxuICAgIHRoaXMuY2hhcnQ/Lm9uKENoYXJ0RXZlbnQuREFUQV9DSEFOR0UsIChkYXRhOiBEYXRhKSA9PiB7XG4gICAgICB0aGlzLmxlZ2VuZEVudHJpZXMgPSBkYXRhLnJlZHVjZShcbiAgICAgICAgKGFjYywgZCkgPT4gW1xuICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAuLi4oZC5uYW1lXG4gICAgICAgICAgICA/IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiBkLm5hbWUsXG4gICAgICAgICAgICAgICAgICBjb2xvcjogZC5jb2xvcixcbiAgICAgICAgICAgICAgICAgIGFjdGl2YXRlOiAhdGhpcy5sZWdlbmRJbnN0YW5jZS5pbmFjdGl2YXRlZFNldC5oYXMoZC5uYW1lKSxcbiAgICAgICAgICAgICAgICAgIGhvdmVyOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBkLnZhbHVlc1tkLnZhbHVlcz8ubGVuZ3RoIC0gMV0ueSxcbiAgICAgICAgICAgICAgICAgIHNvdXJjZTogZCxcbiAgICAgICAgICAgICAgICAgIHVuaXQ6IGdldChkLCAndW5pdCcpLFxuICAgICAgICAgICAgICAgICAgLi4uZCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICA6IFtdKSxcbiAgICAgICAgXSxcbiAgICAgICAgW10sXG4gICAgICApO1xuICAgICAgaWYgKHRoaXMubGVnZW5kRW50cmllcy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VMZWdlbmQubmV4dCh0aGlzLmxlZ2VuZEVudHJpZXMpO1xuICAgICAgfVxuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBzZWxlY3RlZChsZWdlbmQ6IExlZ2VuZEl0ZW0pIHtcbiAgICB0aGlzLmxlZ2VuZEluc3RhbmNlLmxlZ2VuZEl0ZW1DbGljayh7XG4gICAgICBuYW1lOiBsZWdlbmQubmFtZSxcbiAgICAgIGFjdGl2YXRlZDogIWxlZ2VuZC5hY3RpdmF0ZSxcbiAgICB9KTtcbiAgICBjb25zdCBsZWdlbmRJdGVtID0gdGhpcy5sZWdlbmRFbnRyaWVzLmZpbmQoXG4gICAgICBpdGVtID0+IGl0ZW0ubmFtZSA9PT0gbGVnZW5kLm5hbWUsXG4gICAgKTtcbiAgICBsZWdlbmRJdGVtLmFjdGl2YXRlID0gIWxlZ2VuZC5hY3RpdmF0ZTtcbiAgICB0aGlzLmNoYW5nZUxlZ2VuZC5uZXh0KHRoaXMubGVnZW5kRW50cmllcyk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBhbGxTZWxlY3Qoc2VsZWN0OiBib29sZWFuKSB7XG4gICAgdGhpcy5sZWdlbmRFbnRyaWVzLmZvckVhY2gobGVnZW5kID0+IHtcbiAgICAgIHRoaXMubGVnZW5kSW5zdGFuY2UubGVnZW5kSXRlbUNsaWNrKHtcbiAgICAgICAgbmFtZTogbGVnZW5kLm5hbWUsXG4gICAgICAgIGFjdGl2YXRlZDogc2VsZWN0LFxuICAgICAgfSk7XG4gICAgICBsZWdlbmQuYWN0aXZhdGUgPSBzZWxlY3Q7XG4gICAgfSk7XG4gICAgdGhpcy5jaGFuZ2VMZWdlbmQubmV4dCh0aGlzLmxlZ2VuZEVudHJpZXMpO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwib3BlcmF0aW9uXCJcbiAgKm5nSWY9XCJpc1RlbXBsYXRlUmVmKGxlZnRPcGVyYXRpb24pXCJcbj5cbiAgPG5nLWNvbnRhaW5lclxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxlZnRPcGVyYXRpb25cIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJsZWZ0T3BlcmF0aW9uQ29udGV4dFwiXG4gID48L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuXG48ZGl2XG4gIGNsYXNzPVwibGVnZW5kLXdyYXAgb3BlcmF0aW9uXCJcbiAgKm5nSWY9XCIhaGlkZUxlZ2VuZFwiXG4+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCIhdGVtcGxhdGU7IGVsc2UgY3VzdG9tXCI+XG4gICAgPGFjbC12aWV3LWxlZ2VuZC1kcm9wZG93blxuICAgICAgY2xhc3M9XCJsZWdlbmQtdmVydGljYWxcIlxuICAgICAgKm5nSWY9XCJsZWdlbmRFbnRyaWVzLmxlbmd0aCA+IDNcIlxuICAgICAgW2RhdGFdPVwibGVnZW5kRW50cmllc1wiXG4gICAgICBbbm9EYXRhXT1cIm5vRGF0YVwiXG4gICAgICBbbGVnZW5kVGVtcGxhdGVdPVwibGVnZW5kVGVtcGxhdGVcIlxuICAgICAgW2lzQ2FyZF09XCJtb2RlID09PSAnY2FyZCdcIlxuICAgID5cbiAgICA8L2FjbC12aWV3LWxlZ2VuZC1kcm9wZG93bj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGVnZW5kRW50cmllcy5sZW5ndGggPCA0XCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImxlZ2VuZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctdGVtcGxhdGUgI2N1c3RvbT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNUZW1wbGF0ZVJlZih0ZW1wbGF0ZSk7IGVsc2UgYnVpbHRpblRlbXBsYXRlXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIiRhbnkodGVtcGxhdGUpXCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgY29udGV4dDogbGVnZW5kRW50cmllcyB9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctdGVtcGxhdGUgI2J1aWx0aW5UZW1wbGF0ZT5cbiAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInRlbXBsYXRlXCI+XG4gICAgICAgIDxhY2wtdmlldy1sZWdlbmQtZHJvcGRvd25cbiAgICAgICAgICBjbGFzcz1cImxlZ2VuZC12ZXJ0aWNhbFwiXG4gICAgICAgICAgKm5nU3dpdGNoQ2FzZT1cIidkcm9wZG93bidcIlxuICAgICAgICAgIFtkYXRhXT1cImxlZ2VuZEVudHJpZXNcIlxuICAgICAgICAgIFtub0RhdGFdPVwibm9EYXRhXCJcbiAgICAgICAgICBbbGVnZW5kVGVtcGxhdGVdPVwibGVnZW5kVGVtcGxhdGVcIlxuICAgICAgICAgIFtpc0NhcmRdPVwibW9kZSA9PT0gJ2NhcmQnXCJcbiAgICAgICAgPlxuICAgICAgICA8L2FjbC12aWV3LWxlZ2VuZC1kcm9wZG93bj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cblxuPGRpdlxuICBjbGFzcz1cIm9wZXJhdGlvblwiXG4gICpuZ0lmPVwiaXNUZW1wbGF0ZVJlZihyaWdodE9wZXJhdGlvbilcIlxuPlxuICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJpZ2h0T3BlcmF0aW9uXCI+PC9uZy1jb250YWluZXI+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNsZWdlbmRUZW1wbGF0ZT5cbiAgPHVsIGNsYXNzPVwibGVnZW5kLWxhYmVsc1wiPlxuICAgIDxsaVxuICAgICAgY2xhc3M9XCJzZWxlY3QtYWxsXCJcbiAgICAgICpuZ0lmPVwiIW5vRGF0YSAmJiBzZWxlY3RBbGxPcGVyYXRpb24gJiYgdGVtcGxhdGUgPT09ICdkcm9wZG93bidcIlxuICAgID5cbiAgICAgIDxhdWktY2hlY2tib3hcbiAgICAgICAgWyhuZ01vZGVsKV09XCJhbGxTZWxlY3RlZFwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cImFsbFNlbGVjdCgkZXZlbnQpXCJcbiAgICAgID5cbiAgICAgICAge3sgc2VsZWN0QWxsTmFtZSB8fCAoJ3NlbGVjdF9hbGwnIHwgdHJhbnNsYXRlKSB9fVxuICAgICAgPC9hdWktY2hlY2tib3g+XG4gICAgPC9saT5cbiAgICA8bGlcbiAgICAgIGNsYXNzPVwibGVnZW5kLWxhYmVsXCJcbiAgICAgIFtjbGFzcy5kaXNhYmxlXT1cIiFsZWdlbmQuYWN0aXZhdGUgfHwgbm9EYXRhXCJcbiAgICAgIFtjbGFzcy5mb3JiaWRdPVwibm9EYXRhXCJcbiAgICAgIFt0aXRsZV09XCIobGVnZW5kLmFjdGl2YXRlID8gJ2NsaWNrX2hpZGUnIDogJ2NsaWNrX3Nob3cnKSB8IHRyYW5zbGF0ZVwiXG4gICAgICAqbmdGb3I9XCJsZXQgbGVnZW5kIG9mIGxlZ2VuZEVudHJpZXM7IGxldCBpID0gaW5kZXhcIlxuICAgICAgKGNsaWNrKT1cInNlbGVjdGVkKGxlZ2VuZClcIlxuICAgID5cbiAgICAgIDxzcGFuXG4gICAgICAgIFtuZ0NsYXNzXT1cIltzeW1ib2xOYW1lLCAnbGFiZWwtc3ltYm9sJ11cIlxuICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJsZWdlbmQuY29sb3JcIlxuICAgICAgPlxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW4gY2xhc3M9XCJsYWJlbC1uYW1lXCI+e3tcbiAgICAgICAgdHJhbnNsYXRpb24gPyAobGVnZW5kLm5hbWUgfCB0cmFuc2xhdGUpIDogbGVnZW5kLm5hbWVcbiAgICAgIH19PC9zcGFuPlxuICAgIDwvbGk+XG4gIDwvdWw+XG48L25nLXRlbXBsYXRlPlxuIl19