@taiga-ui/addon-charts 2.75.0 → 2.76.0

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 (120) hide show
  1. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js +58 -13
  2. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.js.map +1 -1
  3. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.min.js +1 -1
  4. package/bundles/taiga-ui-addon-charts-components-arc-chart.umd.min.js.map +1 -1
  5. package/bundles/taiga-ui-addon-charts-components-axes.umd.js +54 -9
  6. package/bundles/taiga-ui-addon-charts-components-axes.umd.js.map +1 -1
  7. package/bundles/taiga-ui-addon-charts-components-axes.umd.min.js.map +1 -1
  8. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js +51 -6
  9. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.js.map +1 -1
  10. package/bundles/taiga-ui-addon-charts-components-bar-chart.umd.min.js.map +1 -1
  11. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js +49 -4
  12. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.js.map +1 -1
  13. package/bundles/taiga-ui-addon-charts-components-bar-set.umd.min.js.map +1 -1
  14. package/bundles/taiga-ui-addon-charts-components-bar.umd.js +49 -4
  15. package/bundles/taiga-ui-addon-charts-components-bar.umd.js.map +1 -1
  16. package/bundles/taiga-ui-addon-charts-components-bar.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js +55 -10
  18. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.js.map +1 -1
  19. package/bundles/taiga-ui-addon-charts-components-legend-item.umd.min.js.map +1 -1
  20. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js +58 -13
  21. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.js.map +1 -1
  22. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js +1 -1
  23. package/bundles/taiga-ui-addon-charts-components-line-chart.umd.min.js.map +1 -1
  24. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js +58 -11
  25. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.js.map +1 -1
  26. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js +1 -1
  27. package/bundles/taiga-ui-addon-charts-components-line-days-chart.umd.min.js.map +1 -1
  28. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js +59 -14
  29. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.js.map +1 -1
  30. package/bundles/taiga-ui-addon-charts-components-pie-chart.umd.min.js.map +1 -1
  31. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js +50 -5
  32. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.js.map +1 -1
  33. package/bundles/taiga-ui-addon-charts-components-ring-chart.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-addon-charts-utils.umd.js +48 -2
  35. package/bundles/taiga-ui-addon-charts-utils.umd.js.map +1 -1
  36. package/bundles/taiga-ui-addon-charts-utils.umd.min.js +1 -1
  37. package/bundles/taiga-ui-addon-charts-utils.umd.min.js.map +1 -1
  38. package/components/arc-chart/taiga-ui-addon-charts-components-arc-chart.metadata.json +1 -1
  39. package/components/bar/bar.component.d.ts +1 -1
  40. package/components/bar-chart/bar-chart.component.d.ts +1 -1
  41. package/components/bar-set/bar-set.component.d.ts +2 -2
  42. package/components/pie-chart/pie-chart.component.d.ts +1 -1
  43. package/esm2015/components/arc-chart/arc-chart.component.js +13 -13
  44. package/esm2015/components/axes/axes.component.js +9 -9
  45. package/esm2015/components/bar/bar.component.js +4 -4
  46. package/esm2015/components/bar-chart/bar-chart.component.js +6 -6
  47. package/esm2015/components/bar-set/bar-set.component.js +4 -4
  48. package/esm2015/components/legend-item/legend-item.component.js +10 -10
  49. package/esm2015/components/line-chart/line-chart-hint.directive.js +5 -5
  50. package/esm2015/components/line-chart/line-chart.component.js +9 -9
  51. package/esm2015/components/line-days-chart/line-days-chart-hint.directive.js +5 -5
  52. package/esm2015/components/line-days-chart/line-days-chart.component.js +10 -7
  53. package/esm2015/components/pie-chart/pie-chart.component.js +12 -12
  54. package/esm2015/components/pie-chart/pie-chart.directive.js +3 -3
  55. package/esm2015/components/ring-chart/ring-chart.component.js +5 -5
  56. package/esm2015/types/line-type.js +1 -1
  57. package/esm2015/utils/describe-sector.js +2 -2
  58. package/esm2015/utils/line-length.js +2 -1
  59. package/esm5/components/arc-chart/arc-chart.component.js +13 -13
  60. package/esm5/components/axes/axes.component.js +9 -9
  61. package/esm5/components/bar/bar.component.js +4 -4
  62. package/esm5/components/bar-chart/bar-chart.component.js +6 -6
  63. package/esm5/components/bar-set/bar-set.component.js +4 -4
  64. package/esm5/components/legend-item/legend-item.component.js +10 -10
  65. package/esm5/components/line-chart/line-chart-hint.directive.js +5 -5
  66. package/esm5/components/line-chart/line-chart.component.js +9 -9
  67. package/esm5/components/line-days-chart/line-days-chart-hint.directive.js +5 -5
  68. package/esm5/components/line-days-chart/line-days-chart.component.js +9 -7
  69. package/esm5/components/pie-chart/pie-chart.component.js +12 -12
  70. package/esm5/components/pie-chart/pie-chart.directive.js +3 -3
  71. package/esm5/components/ring-chart/ring-chart.component.js +5 -5
  72. package/esm5/types/line-type.js +1 -1
  73. package/esm5/utils/describe-sector.js +2 -2
  74. package/esm5/utils/line-length.js +2 -1
  75. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.js +12 -12
  76. package/fesm2015/taiga-ui-addon-charts-components-arc-chart.js.map +1 -1
  77. package/fesm2015/taiga-ui-addon-charts-components-axes.js +8 -8
  78. package/fesm2015/taiga-ui-addon-charts-components-axes.js.map +1 -1
  79. package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js +5 -5
  80. package/fesm2015/taiga-ui-addon-charts-components-bar-chart.js.map +1 -1
  81. package/fesm2015/taiga-ui-addon-charts-components-bar-set.js +3 -3
  82. package/fesm2015/taiga-ui-addon-charts-components-bar-set.js.map +1 -1
  83. package/fesm2015/taiga-ui-addon-charts-components-bar.js +3 -3
  84. package/fesm2015/taiga-ui-addon-charts-components-bar.js.map +1 -1
  85. package/fesm2015/taiga-ui-addon-charts-components-legend-item.js +9 -9
  86. package/fesm2015/taiga-ui-addon-charts-components-legend-item.js.map +1 -1
  87. package/fesm2015/taiga-ui-addon-charts-components-line-chart.js +12 -12
  88. package/fesm2015/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
  89. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js +13 -10
  90. package/fesm2015/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
  91. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js +13 -13
  92. package/fesm2015/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
  93. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js +4 -4
  94. package/fesm2015/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
  95. package/fesm2015/taiga-ui-addon-charts-utils.js +2 -1
  96. package/fesm2015/taiga-ui-addon-charts-utils.js.map +1 -1
  97. package/fesm5/taiga-ui-addon-charts-components-arc-chart.js +12 -12
  98. package/fesm5/taiga-ui-addon-charts-components-arc-chart.js.map +1 -1
  99. package/fesm5/taiga-ui-addon-charts-components-axes.js +8 -8
  100. package/fesm5/taiga-ui-addon-charts-components-axes.js.map +1 -1
  101. package/fesm5/taiga-ui-addon-charts-components-bar-chart.js +5 -5
  102. package/fesm5/taiga-ui-addon-charts-components-bar-chart.js.map +1 -1
  103. package/fesm5/taiga-ui-addon-charts-components-bar-set.js +3 -3
  104. package/fesm5/taiga-ui-addon-charts-components-bar-set.js.map +1 -1
  105. package/fesm5/taiga-ui-addon-charts-components-bar.js +3 -3
  106. package/fesm5/taiga-ui-addon-charts-components-bar.js.map +1 -1
  107. package/fesm5/taiga-ui-addon-charts-components-legend-item.js +9 -9
  108. package/fesm5/taiga-ui-addon-charts-components-legend-item.js.map +1 -1
  109. package/fesm5/taiga-ui-addon-charts-components-line-chart.js +12 -12
  110. package/fesm5/taiga-ui-addon-charts-components-line-chart.js.map +1 -1
  111. package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js +12 -10
  112. package/fesm5/taiga-ui-addon-charts-components-line-days-chart.js.map +1 -1
  113. package/fesm5/taiga-ui-addon-charts-components-pie-chart.js +13 -13
  114. package/fesm5/taiga-ui-addon-charts-components-pie-chart.js.map +1 -1
  115. package/fesm5/taiga-ui-addon-charts-components-ring-chart.js +4 -4
  116. package/fesm5/taiga-ui-addon-charts-components-ring-chart.js.map +1 -1
  117. package/fesm5/taiga-ui-addon-charts-utils.js +2 -1
  118. package/fesm5/taiga-ui-addon-charts-utils.js.map +1 -1
  119. package/package.json +3 -3
  120. package/types/line-type.d.ts +1 -1
@@ -10,7 +10,7 @@ import { TuiLineChartHintDirective } from './line-chart-hint.directive';
10
10
  export function smoothingAssertion(smoothingFactor) {
11
11
  return inRange(smoothingFactor, 0, 100);
12
12
  }
13
- var SMOOTHING_MESSAGE = "smoothingFactor must be between 0 and 100";
13
+ var SMOOTHING_MESSAGE = 'smoothingFactor must be between 0 and 100';
14
14
  var TuiLineChartComponent = /** @class */ (function () {
15
15
  function TuiLineChartComponent(idService, ngZone, locationRef, hintDirective) {
16
16
  this.ngZone = ngZone;
@@ -22,7 +22,7 @@ var TuiLineChartComponent = /** @class */ (function () {
22
22
  this.width = 0;
23
23
  this.height = 0;
24
24
  this.smoothingFactor = 0;
25
- this.hintContent = "";
25
+ this.hintContent = '';
26
26
  this.xStringify = null;
27
27
  this.yStringify = null;
28
28
  this.filled = false;
@@ -32,7 +32,7 @@ var TuiLineChartComponent = /** @class */ (function () {
32
32
  }
33
33
  Object.defineProperty(TuiLineChartComponent.prototype, "valueSetter", {
34
34
  set: function (value) {
35
- this.value = value.filter(function (item) { return !item.some(isNaN); });
35
+ this.value = value.filter(function (item) { return !item.some(Number.isNaN); });
36
36
  },
37
37
  enumerable: true,
38
38
  configurable: true
@@ -55,7 +55,7 @@ var TuiLineChartComponent = /** @class */ (function () {
55
55
  get: function () {
56
56
  return this.filled
57
57
  ? "url(" + this.locationRef.prepareExternalUrl(this.locationRef.path()) + "#" + this.fillId + ")"
58
- : "none";
58
+ : 'none';
59
59
  },
60
60
  enumerable: true,
61
61
  configurable: true
@@ -161,7 +161,7 @@ var TuiLineChartComponent = /** @class */ (function () {
161
161
  TuiLineChartComponent.prototype.getD = function (value, smoothingFactor) {
162
162
  return value.reduce(function (d, point, index) {
163
163
  return index ? d + " " + draw(value, index, smoothingFactor) : "M " + point;
164
- }, "");
164
+ }, '');
165
165
  };
166
166
  TuiLineChartComponent.prototype.computeWidth = function (index) {
167
167
  return index === this.value.length - 1
@@ -175,7 +175,7 @@ var TuiLineChartComponent = /** @class */ (function () {
175
175
  { type: TuiLineChartHintDirective, decorators: [{ type: Optional }, { type: Inject, args: [TuiLineChartHintDirective,] }] }
176
176
  ]; };
177
177
  __decorate([
178
- Input("value"),
178
+ Input('value'),
179
179
  tuiDefaultProp()
180
180
  ], TuiLineChartComponent.prototype, "valueSetter", null);
181
181
  __decorate([
@@ -222,14 +222,14 @@ var TuiLineChartComponent = /** @class */ (function () {
222
222
  tuiPure
223
223
  ], TuiLineChartComponent.prototype, "hovered$", null);
224
224
  __decorate([
225
- HostListener("mouseleave")
225
+ HostListener('mouseleave')
226
226
  ], TuiLineChartComponent.prototype, "onMouseLeave", null);
227
227
  __decorate([
228
228
  tuiPure
229
229
  ], TuiLineChartComponent.prototype, "getD", null);
230
230
  TuiLineChartComponent = __decorate([
231
231
  Component({
232
- selector: "tui-line-chart",
232
+ selector: 'tui-line-chart',
233
233
  template: "<ng-container *tuiLet=\"hovered$ | async as hovered\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n focusable=\"false\"\n preserveAspectRatio=\"none\"\n width=\"100%\"\n height=\"100%\"\n class=\"t-svg\"\n [attr.viewBox]=\"viewBox\"\n >\n <defs>\n <linearGradient\n x1=\"0\"\n x2=\"0\"\n y1=\"1\"\n y2=\"0\"\n [attr.id]=\"fillId\"\n >\n <stop\n stop-color=\"currentColor\"\n offset=\"0%\"\n stop-opacity=\"0.5\"\n />\n <stop\n stop-color=\"currentColor\"\n offset=\"100%\"\n stop-opacity=\"0\"\n />\n </linearGradient>\n </defs>\n <path\n stroke=\"none\"\n [attr.fill]=\"fill\"\n [attr.d]=\"fillD\"\n />\n <path\n fill=\"none\"\n stroke=\"currentColor\"\n vector-effect=\"non-scaling-stroke\"\n stroke-width=\"2\"\n [attr.d]=\"d\"\n />\n </svg>\n <ng-container *ngIf=\"dots\">\n <div\n *ngFor=\"let point of value\"\n class=\"t-dot\"\n [style.left.%]=\"getLeft(point[0])\"\n [style.bottom.%]=\"getBottom(point[1])\"\n ></div>\n </ng-container>\n <ng-container *ngIf=\"hasHints\">\n <ng-container *ngFor=\"let point of value; let index = index\">\n <div\n *ngIf=\"value.length > 1 || dots\"\n tuiHintDirection=\"top-left\"\n class=\"t-column\"\n [class.t-column_hovered]=\"hovered === index\"\n [tuiHintHost]=\"hintHost\"\n [tuiHint]=\"hintDirective || hintContent ? hint : ''\"\n [tuiHintId]=\"getHintId(index)\"\n [style.left.%]=\"getLeft(getX(index))\"\n [style.width.%]=\"getWidth(index)\"\n (mouseenter)=\"onMouseEnter(index)\"\n >\n <div\n class=\"t-line t-line_vertical\"\n [style.left.%]=\"getOffset(index)\"\n ></div>\n <div\n #hintHost\n class=\"t-host\"\n [style.left.%]=\"getOffset(index)\"\n [style.bottom.%]=\"getBottom(point[1])\"\n [tuiFocusable]=\"isFocusable\"\n [tuiDescribedBy]=\"getHintId(index)\"\n ></div>\n </div>\n <div\n *ngIf=\"isFocusable\"\n class=\"t-line t-line_horizontal\"\n [style.bottom.%]=\"getBottom(point[1])\"\n ></div>\n <ng-template #hint>\n <div\n *ngIf=\"hintDirective; else single\"\n polymorpheus-outlet\n class=\"t-text\"\n [content]=\"hintDirective.hint\"\n [context]=\"getContentContext(point, index)\"\n ></div>\n <ng-template #single>\n <div\n polymorpheus-outlet\n class=\"t-text\"\n [content]=\"hintContent\"\n [context]=\"{$implicit: point, index: index}\"\n ></div>\n </ng-template>\n </ng-template>\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"getHovered(hovered) as point\">\n <div\n *ngIf=\"xStringify\"\n class=\"t-hint t-hint_x\"\n [style.left.%]=\"getLeft(point[0])\"\n >\n {{ xStringify(point[0]) }}\n </div>\n <div\n *ngIf=\"yStringify\"\n class=\"t-hint t-hint_y\"\n [style.bottom.%]=\"getBottom(point[1])\"\n >\n {{ yStringify(point[1]) }}\n </div>\n </ng-container>\n</ng-container>\n",
234
234
  changeDetection: ChangeDetectionStrategy.OnPush,
235
235
  styles: [":host{display:flex;width:100%;height:100%;pointer-events:none}.t-svg{transform:scale(1,-1)}.t-column{position:absolute;top:0;height:100%;pointer-events:auto}.t-dot{position:absolute;width:.375rem;height:.375rem;border-radius:100%;background:currentColor;margin:-.1875rem;box-shadow:0 0 0 2px #fff}.t-host{position:absolute;left:50%;width:.5rem;height:.5rem;border-radius:100%;opacity:0;background:#fff;margin:-.25rem;box-shadow:0 0 0 2px currentColor,0 .0625rem .1875rem .125rem rgba(0,0,0,.1);outline:0;pointer-events:none}.t-column._hint_hovered .t-host,.t-column:hover .t-host,.t-column_hovered .t-host,.t-host:focus{opacity:1}.t-line{position:absolute;opacity:0;background:var(--tui-base-03)}.t-line_vertical{top:0;bottom:0;left:50%;width:1px}.t-line_horizontal{z-index:-1;width:100%;height:1px}:host:not([style]) .t-column._hint_hovered .t-line,:host:not([style]) .t-column._hint_hovered+.t-line,:host:not([style]) .t-column:hover .t-line,:host:not([style]) .t-column:hover+.t-line,:host[style^='z-index: 0'] .t-column_hovered .t-line,:host[style^='z-index: 0'] .t-column_hovered+.t-line{opacity:1}.t-text{white-space:pre-wrap}.t-hint{box-shadow:0 .25rem 1.5rem rgba(0,0,0,.12);position:absolute;font:var(--tui-font-text-xs);height:1.25rem;line-height:1.25rem;margin-bottom:-.625rem;padding:0 .375rem;white-space:nowrap;color:var(--tui-base-09);background:var(--tui-base-01);transform:translate3d(-50%,0,0)}.t-hint_x{bottom:0}.t-hint_y{left:0}"]
@@ -243,4 +243,4 @@ var TuiLineChartComponent = /** @class */ (function () {
243
243
  return TuiLineChartComponent;
244
244
  }());
245
245
  export { TuiLineChartComponent };
246
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydC8iLCJzb3VyY2VzIjpbImxpbmUtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFFBQVEsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDbEQsT0FBTyxFQUNILE9BQU8sRUFDUCxjQUFjLEVBQ2QsWUFBWSxFQUNaLE9BQU8sRUFDUCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFdEUsZ0VBQWdFO0FBQ2hFLE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxlQUF1QjtJQUN0RCxPQUFPLE9BQU8sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFFRCxJQUFNLGlCQUFpQixHQUFHLDJDQUEyQyxDQUFDO0FBUXRFO0lBcURJLCtCQUMwQixTQUF1QixFQUNaLE1BQWMsRUFDWixXQUFxQixFQUcvQyxhQUErQztRQUp2QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ1osZ0JBQVcsR0FBWCxXQUFXLENBQVU7UUFHL0Msa0JBQWEsR0FBYixhQUFhLENBQWtDO1FBMUQzQyxjQUFTLEdBQUcsSUFBSSxP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LEVBQUU7b0RBQ1g7SUFJTjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTt3REFDUDtJQUlWO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFO3lEQUNOO0lBSVg7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLENBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7a0VBQ2xDO0lBSXBCO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFOzhEQUN3RDtJQUl6RTtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTs2REFDa0M7SUFJbkQ7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7NkRBQ2tDO0lBSW5EO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFO3lEQUNGO0lBSWY7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7dURBQ0o7SUFnQmI7UUFEQyxPQUFPO3lEQUdQO0lBMENEO1FBREMsWUFBWSxDQUFDLFlBQVksQ0FBQzs2REFLMUI7SUFrRUQ7UUFEQyxPQUFPO3FEQU9QO0lBekxRLHFCQUFxQjtRQU5qQyxTQUFTLENBQUM7WUFDUCxRQUFRLEVBQUUsZ0JBQWdCO1lBQzFCLHlpSUFBeUM7WUFFekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O1NBQ2xELENBQUM7UUF1RE8sV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDcEIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUNoQixXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQTtPQTFEN0IscUJBQXFCLENBZ01qQztJQUFELDRCQUFDO0NBQUEsQUFoTUQsSUFnTUM7U0FoTVkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgTmdab25lLFxuICAgIE9wdGlvbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VHVpTGluZUNoYXJ0SGludENvbnRleHR9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvaW50ZXJmYWNlcyc7XG5pbXBvcnQge2RyYXd9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvdXRpbHMnO1xuaW1wb3J0IHtcbiAgICBpblJhbmdlLFxuICAgIHR1aURlZmF1bHRQcm9wLFxuICAgIFR1aUlkU2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG4gICAgdHVpWm9uZU9wdGltaXplZCxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVBvaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aUxpbmVDaGFydEhpbnREaXJlY3RpdmV9IGZyb20gJy4vbGluZS1jaGFydC1oaW50LmRpcmVjdGl2ZSc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb25cbmV4cG9ydCBmdW5jdGlvbiBzbW9vdGhpbmdBc3NlcnRpb24oc21vb3RoaW5nRmFjdG9yOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gaW5SYW5nZShzbW9vdGhpbmdGYWN0b3IsIDAsIDEwMCk7XG59XG5cbmNvbnN0IFNNT09USElOR19NRVNTQUdFID0gYHNtb290aGluZ0ZhY3RvciBtdXN0IGJlIGJldHdlZW4gMCBhbmQgMTAwYDtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGB0dWktbGluZS1jaGFydGAsXG4gICAgdGVtcGxhdGVVcmw6IGAuL2xpbmUtY2hhcnQudGVtcGxhdGUuaHRtbGAsXG4gICAgc3R5bGVVcmxzOiBbYC4vbGluZS1jaGFydC5zdHlsZS5sZXNzYF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVDaGFydENvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfaG92ZXJlZCQgPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9JZFN0cmluZzogc3RyaW5nO1xuXG4gICAgQElucHV0KGB2YWx1ZWApXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBzZXQgdmFsdWVTZXR0ZXIodmFsdWU6IHJlYWRvbmx5IFR1aVBvaW50W10pIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlLmZpbHRlcihpdGVtID0+ICFpdGVtLnNvbWUoaXNOYU4pKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeSA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgd2lkdGggPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhlaWdodCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcChzbW9vdGhpbmdBc3NlcnRpb24sIFNNT09USElOR19NRVNTQUdFKVxuICAgIHNtb290aGluZ0ZhY3RvciA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpTGluZUNoYXJ0SGludENvbnRleHQ8VHVpUG9pbnQ+PiA9IGBgO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHhTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHlTdHJpbmdpZnk6IFR1aVN0cmluZ0hhbmRsZXI8bnVtYmVyPiB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGZpbGxlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGRvdHMgPSBmYWxzZTtcblxuICAgIHZhbHVlOiByZWFkb25seSBUdWlQb2ludFtdID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEluamVjdChUdWlJZFNlcnZpY2UpIGlkU2VydmljZTogVHVpSWRTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KE5nWm9uZSkgcHJpdmF0ZSByZWFkb25seSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoVHVpTGluZUNoYXJ0SGludERpcmVjdGl2ZSlcbiAgICAgICAgcmVhZG9ubHkgaGludERpcmVjdGl2ZTogVHVpTGluZUNoYXJ0SGludERpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuYXV0b0lkU3RyaW5nID0gaWRTZXJ2aWNlLmdlbmVyYXRlKCk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBnZXQgaG92ZXJlZCQoKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hvdmVyZWQkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSwgdHVpWm9uZU9wdGltaXplZCh0aGlzLm5nWm9uZSkpO1xuICAgIH1cblxuICAgIGdldCBmaWxsSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGB0dWktbGluZS1jaGFydC0ke3RoaXMuYXV0b0lkU3RyaW5nfWA7XG4gICAgfVxuXG4gICAgZ2V0IGZpbGwoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsbGVkXG4gICAgICAgICAgICA/IGB1cmwoJHt0aGlzLmxvY2F0aW9uUmVmLnByZXBhcmVFeHRlcm5hbFVybCh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSl9IyR7XG4gICAgICAgICAgICAgICAgICB0aGlzLmZpbGxJZFxuICAgICAgICAgICAgICB9KWBcbiAgICAgICAgICAgIDogYG5vbmVgO1xuICAgIH1cblxuICAgIGdldCB2aWV3Qm94KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLnh9ICR7dGhpcy55fSAke3RoaXMud2lkdGh9ICR7dGhpcy5oZWlnaHR9YDtcbiAgICB9XG5cbiAgICBnZXQgZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXREKHRoaXMudmFsdWUsIHRoaXMuc21vb3RoaW5nRmFjdG9yKTtcbiAgICB9XG5cbiAgICBnZXQgZmlsbEQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoXG4gICAgICAgICAgICA/IGAke3RoaXMuZH1WICR7dGhpcy55fSBIICR7dGhpcy52YWx1ZVswXVswXX0gViAke3RoaXMudmFsdWVbMF1bMV19YFxuICAgICAgICAgICAgOiB0aGlzLmQ7XG4gICAgfVxuXG4gICAgZ2V0IGlzRm9jdXNhYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaGludERpcmVjdGl2ZSAmJiB0aGlzLmhhc0hpbnRzO1xuICAgIH1cblxuICAgIGdldCBoYXNIaW50cygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICEhdGhpcy54U3RyaW5naWZ5IHx8XG4gICAgICAgICAgICAhIXRoaXMueVN0cmluZ2lmeSB8fFxuICAgICAgICAgICAgISF0aGlzLmhpbnREaXJlY3RpdmU/LmhpbnQgfHxcbiAgICAgICAgICAgICEhdGhpcy5oaW50Q29udGVudFxuICAgICAgICApO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoYG1vdXNlbGVhdmVgKVxuICAgIG9uTW91c2VMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmhpbnREaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMub25Ib3ZlcmVkKE5hTik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRYKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBpZiAodGhpcy5pc1NpbmdsZVBvaW50KSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy52YWx1ZVswXVswXSAvIDI7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaW5kZXhcbiAgICAgICAgICAgID8gKHRoaXMudmFsdWVbaW5kZXggLSAxXVswXSArIHRoaXMudmFsdWVbaW5kZXhdWzBdKSAvIDJcbiAgICAgICAgICAgIDogMiAqIHRoaXMudmFsdWVbMF1bMF0gLSB0aGlzLmdldFgoMSk7XG4gICAgfVxuXG4gICAgZ2V0V2lkdGgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoMTAwICogdGhpcy5jb21wdXRlV2lkdGgoaW5kZXgpKSAvIHRoaXMud2lkdGg7XG4gICAgfVxuXG4gICAgZ2V0SGludElkKGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5hdXRvSWRTdHJpbmd9XyR7aW5kZXh9YDtcbiAgICB9XG5cbiAgICBnZXRDb250ZW50Q29udGV4dChcbiAgICAgICAgJGltcGxpY2l0OiBUdWlQb2ludCxcbiAgICAgICAgaW5kZXg6IG51bWJlcixcbiAgICApOiBUdWlMaW5lQ2hhcnRIaW50Q29udGV4dDxyZWFkb25seSBUdWlQb2ludFtdPiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICB0aGlzLmhpbnREaXJlY3RpdmU/LmdldENvbnRleHQodGhpcy52YWx1ZS5pbmRleE9mKCRpbXBsaWNpdCksIHRoaXMpIHx8IHtcbiAgICAgICAgICAgICAgICAkaW1wbGljaXQ6IFtdLFxuICAgICAgICAgICAgICAgIGluZGV4LFxuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIGdldEhvdmVyZWQoaG92ZXJlZDogbnVtYmVyKTogVHVpUG9pbnQgfCBudWxsIHtcbiAgICAgICAgLy8gVGhpcyBjaGVja3MgZm9yIE5hTiBhbmQgbnVsbCB0b28gc2luY2UgYXN5bmMgcGlwZSByZXR1cm5zIG51bGwgYmVmb3JlIGZpcnN0IGl0ZW1cbiAgICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIoaG92ZXJlZCkgPyB0aGlzLnZhbHVlW2hvdmVyZWRdIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXRCb3R0b20oeTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICgxMDAgKiAoeSAtIHRoaXMueSkpIC8gdGhpcy5oZWlnaHQ7XG4gICAgfVxuXG4gICAgZ2V0TGVmdCh4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKDEwMCAqICh4IC0gdGhpcy54KSkgLyB0aGlzLndpZHRoO1xuICAgIH1cblxuICAgIGdldE9mZnNldCh4OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKDEwMCAqICh0aGlzLnZhbHVlW3hdWzBdIC0gdGhpcy5nZXRYKHgpKSkgLyB0aGlzLmNvbXB1dGVXaWR0aCh4KTtcbiAgICB9XG5cbiAgICBvbk1vdXNlRW50ZXIoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5oaW50RGlyZWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmhpbnREaXJlY3RpdmUucmFpc2UoaW5kZXgsIHRoaXMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5vbkhvdmVyZWQoaW5kZXgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faG92ZXJlZCQubmV4dChpbmRleCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgaXNTaW5nbGVQb2ludCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoID09PSAxO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBnZXREKHZhbHVlOiByZWFkb25seSBUdWlQb2ludFtdLCBzbW9vdGhpbmdGYWN0b3I6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB2YWx1ZS5yZWR1Y2UoXG4gICAgICAgICAgICAoZCwgcG9pbnQsIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgIGluZGV4ID8gYCR7ZH0gJHtkcmF3KHZhbHVlLCBpbmRleCwgc21vb3RoaW5nRmFjdG9yKX1gIDogYE0gJHtwb2ludH1gLFxuICAgICAgICAgICAgYGAsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb21wdXRlV2lkdGgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiBpbmRleCA9PT0gdGhpcy52YWx1ZS5sZW5ndGggLSAxXG4gICAgICAgICAgICA/IDIgKiAodGhpcy52YWx1ZVtpbmRleF1bMF0gLSB0aGlzLmdldFgoaW5kZXgpKVxuICAgICAgICAgICAgOiB0aGlzLmdldFgoaW5kZXggKyAxKSAtIHRoaXMuZ2V0WChpbmRleCk7XG4gICAgfVxufVxuIl19
246
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jaGFydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydC8iLCJzb3VyY2VzIjpbImxpbmUtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFFBQVEsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDbEQsT0FBTyxFQUNILE9BQU8sRUFDUCxjQUFjLEVBQ2QsWUFBWSxFQUNaLE9BQU8sRUFDUCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEdBQ25CLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBYSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekMsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFdEUsZ0VBQWdFO0FBQ2hFLE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxlQUF1QjtJQUN0RCxPQUFPLE9BQU8sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFFRCxJQUFNLGlCQUFpQixHQUFHLDJDQUEyQyxDQUFDO0FBUXRFO0lBcURJLCtCQUMwQixTQUF1QixFQUNaLE1BQWMsRUFDWixXQUFxQixFQUcvQyxhQUErQztRQUp2QixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ1osZ0JBQVcsR0FBWCxXQUFXLENBQVU7UUFHL0Msa0JBQWEsR0FBYixhQUFhLENBQWtDO1FBMUQzQyxjQUFTLEdBQUcsSUFBSSxP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O1FBQ1AsY0FBYyxFQUFFO29EQUNYO0lBSU47UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7d0RBQ1A7SUFJVjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTt5REFDTjtJQUlYO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxDQUFDLGtCQUFrQixFQUFFLGlCQUFpQixDQUFDO2tFQUNsQztJQUlwQjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTs4REFDd0Q7SUFJekU7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7NkRBQ2tDO0lBSW5EO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFOzZEQUNrQztJQUluRDtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTt5REFDRjtJQUlmO1FBRkMsS0FBSyxFQUFFO1FBQ1AsY0FBYyxFQUFFO3VEQUNKO0lBZ0JiO1FBREMsT0FBTzt5REFHUDtJQTBDRDtRQURDLFlBQVksQ0FBQyxZQUFZLENBQUM7NkRBSzFCO0lBa0VEO1FBREMsT0FBTztxREFPUDtJQXpMUSxxQkFBcUI7UUFOakMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQix5aUlBQXlDO1lBRXpDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOztTQUNsRCxDQUFDO1FBdURPLFdBQUEsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ3BCLFdBQUEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ2QsV0FBQSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDaEIsV0FBQSxRQUFRLEVBQUUsQ0FBQTtRQUNWLFdBQUEsTUFBTSxDQUFDLHlCQUF5QixDQUFDLENBQUE7T0ExRDdCLHFCQUFxQixDQWdNakM7SUFBRCw0QkFBQztDQUFBLEFBaE1ELElBZ01DO1NBaE1ZLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBPcHRpb25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1R1aUxpbmVDaGFydEhpbnRDb250ZXh0fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2ludGVyZmFjZXMnO1xuaW1wb3J0IHtkcmF3fSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL3V0aWxzJztcbmltcG9ydCB7XG4gICAgaW5SYW5nZSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlJZFNlcnZpY2UsXG4gICAgdHVpUHVyZSxcbiAgICBUdWlTdHJpbmdIYW5kbGVyLFxuICAgIHR1aVpvbmVPcHRpbWl6ZWQsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWR9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlfSBmcm9tICcuL2xpbmUtY2hhcnQtaGludC5kaXJlY3RpdmUnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG5leHBvcnQgZnVuY3Rpb24gc21vb3RoaW5nQXNzZXJ0aW9uKHNtb290aGluZ0ZhY3RvcjogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGluUmFuZ2Uoc21vb3RoaW5nRmFjdG9yLCAwLCAxMDApO1xufVxuXG5jb25zdCBTTU9PVEhJTkdfTUVTU0FHRSA9ICdzbW9vdGhpbmdGYWN0b3IgbXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDEwMCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWxpbmUtY2hhcnQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9saW5lLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xpbmUtY2hhcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBUdWlMaW5lQ2hhcnRDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2hvdmVyZWQkID0gbmV3IFN1YmplY3Q8bnVtYmVyPigpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBhdXRvSWRTdHJpbmc6IHN0cmluZztcblxuICAgIEBJbnB1dCgndmFsdWUnKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IHZhbHVlU2V0dGVyKHZhbHVlOiByZWFkb25seSBUdWlQb2ludFtdKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZS5maWx0ZXIoaXRlbSA9PiAhaXRlbS5zb21lKE51bWJlci5pc05hTikpO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB4ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB5ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB3aWR0aCA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGVpZ2h0ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKHNtb290aGluZ0Fzc2VydGlvbiwgU01PT1RISU5HX01FU1NBR0UpXG4gICAgc21vb3RoaW5nRmFjdG9yID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBoaW50Q29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDxUdWlMaW5lQ2hhcnRIaW50Q29udGV4dDxUdWlQb2ludD4+ID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeFN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgeVN0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+IHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZmlsbGVkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgZG90cyA9IGZhbHNlO1xuXG4gICAgdmFsdWU6IHJlYWRvbmx5IFR1aVBvaW50W10gPSBbXTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aUlkU2VydmljZSkgaWRTZXJ2aWNlOiBUdWlJZFNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KExvY2F0aW9uKSBwcml2YXRlIHJlYWRvbmx5IGxvY2F0aW9uUmVmOiBMb2NhdGlvbixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlKVxuICAgICAgICByZWFkb25seSBoaW50RGlyZWN0aXZlOiBUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlIHwgbnVsbCxcbiAgICApIHtcbiAgICAgICAgdGhpcy5hdXRvSWRTdHJpbmcgPSBpZFNlcnZpY2UuZ2VuZXJhdGUoKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldCBob3ZlcmVkJCgpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faG92ZXJlZCQucGlwZShkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLCB0dWlab25lT3B0aW1pemVkKHRoaXMubmdab25lKSk7XG4gICAgfVxuXG4gICAgZ2V0IGZpbGxJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYHR1aS1saW5lLWNoYXJ0LSR7dGhpcy5hdXRvSWRTdHJpbmd9YDtcbiAgICB9XG5cbiAgICBnZXQgZmlsbCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5maWxsZWRcbiAgICAgICAgICAgID8gYHVybCgke3RoaXMubG9jYXRpb25SZWYucHJlcGFyZUV4dGVybmFsVXJsKHRoaXMubG9jYXRpb25SZWYucGF0aCgpKX0jJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuZmlsbElkXG4gICAgICAgICAgICAgIH0pYFxuICAgICAgICAgICAgOiAnbm9uZSc7XG4gICAgfVxuXG4gICAgZ2V0IHZpZXdCb3goKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMueH0gJHt0aGlzLnl9ICR7dGhpcy53aWR0aH0gJHt0aGlzLmhlaWdodH1gO1xuICAgIH1cblxuICAgIGdldCBkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEQodGhpcy52YWx1ZSwgdGhpcy5zbW9vdGhpbmdGYWN0b3IpO1xuICAgIH1cblxuICAgIGdldCBmaWxsRCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5sZW5ndGhcbiAgICAgICAgICAgID8gYCR7dGhpcy5kfVYgJHt0aGlzLnl9IEggJHt0aGlzLnZhbHVlWzBdWzBdfSBWICR7dGhpcy52YWx1ZVswXVsxXX1gXG4gICAgICAgICAgICA6IHRoaXMuZDtcbiAgICB9XG5cbiAgICBnZXQgaXNGb2N1c2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5oaW50RGlyZWN0aXZlICYmIHRoaXMuaGFzSGludHM7XG4gICAgfVxuXG4gICAgZ2V0IGhhc0hpbnRzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgISF0aGlzLnhTdHJpbmdpZnkgfHxcbiAgICAgICAgICAgICEhdGhpcy55U3RyaW5naWZ5IHx8XG4gICAgICAgICAgICAhIXRoaXMuaGludERpcmVjdGl2ZT8uaGludCB8fFxuICAgICAgICAgICAgISF0aGlzLmhpbnRDb250ZW50XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScpXG4gICAgb25Nb3VzZUxlYXZlKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuaGludERpcmVjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5vbkhvdmVyZWQoTmFOKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFgoaW5kZXg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIGlmICh0aGlzLmlzU2luZ2xlUG9pbnQpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbHVlWzBdWzBdIC8gMjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpbmRleFxuICAgICAgICAgICAgPyAodGhpcy52YWx1ZVtpbmRleCAtIDFdWzBdICsgdGhpcy52YWx1ZVtpbmRleF1bMF0pIC8gMlxuICAgICAgICAgICAgOiAyICogdGhpcy52YWx1ZVswXVswXSAtIHRoaXMuZ2V0WCgxKTtcbiAgICB9XG5cbiAgICBnZXRXaWR0aChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuICgxMDAgKiB0aGlzLmNvbXB1dGVXaWR0aChpbmRleCkpIC8gdGhpcy53aWR0aDtcbiAgICB9XG5cbiAgICBnZXRIaW50SWQoaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLmF1dG9JZFN0cmluZ31fJHtpbmRleH1gO1xuICAgIH1cblxuICAgIGdldENvbnRlbnRDb250ZXh0KFxuICAgICAgICAkaW1wbGljaXQ6IFR1aVBvaW50LFxuICAgICAgICBpbmRleDogbnVtYmVyLFxuICAgICk6IFR1aUxpbmVDaGFydEhpbnRDb250ZXh0PHJlYWRvbmx5IFR1aVBvaW50W10+IHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuaGludERpcmVjdGl2ZT8uZ2V0Q29udGV4dCh0aGlzLnZhbHVlLmluZGV4T2YoJGltcGxpY2l0KSwgdGhpcykgfHwge1xuICAgICAgICAgICAgICAgICRpbXBsaWNpdDogW10sXG4gICAgICAgICAgICAgICAgaW5kZXgsXG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0SG92ZXJlZChob3ZlcmVkOiBudW1iZXIpOiBUdWlQb2ludCB8IG51bGwge1xuICAgICAgICAvLyBUaGlzIGNoZWNrcyBmb3IgTmFOIGFuZCBudWxsIHRvbyBzaW5jZSBhc3luYyBwaXBlIHJldHVybnMgbnVsbCBiZWZvcmUgZmlyc3QgaXRlbVxuICAgICAgICByZXR1cm4gTnVtYmVyLmlzSW50ZWdlcihob3ZlcmVkKSA/IHRoaXMudmFsdWVbaG92ZXJlZF0gOiBudWxsO1xuICAgIH1cblxuICAgIGdldEJvdHRvbSh5OiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gKDEwMCAqICh5IC0gdGhpcy55KSkgLyB0aGlzLmhlaWdodDtcbiAgICB9XG5cbiAgICBnZXRMZWZ0KHg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoMTAwICogKHggLSB0aGlzLngpKSAvIHRoaXMud2lkdGg7XG4gICAgfVxuXG4gICAgZ2V0T2Zmc2V0KHg6IG51bWJlcik6IG51bWJlciB7XG4gICAgICAgIHJldHVybiAoMTAwICogKHRoaXMudmFsdWVbeF1bMF0gLSB0aGlzLmdldFgoeCkpKSAvIHRoaXMuY29tcHV0ZVdpZHRoKHgpO1xuICAgIH1cblxuICAgIG9uTW91c2VFbnRlcihpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhpbnREaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuaGludERpcmVjdGl2ZS5yYWlzZShpbmRleCwgdGhpcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9uSG92ZXJlZChpbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLl9ob3ZlcmVkJC5uZXh0KGluZGV4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldCBpc1NpbmdsZVBvaW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy52YWx1ZS5sZW5ndGggPT09IDE7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldEQodmFsdWU6IHJlYWRvbmx5IFR1aVBvaW50W10sIHNtb290aGluZ0ZhY3RvcjogbnVtYmVyKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHZhbHVlLnJlZHVjZShcbiAgICAgICAgICAgIChkLCBwb2ludCwgaW5kZXgpID0+XG4gICAgICAgICAgICAgICAgaW5kZXggPyBgJHtkfSAke2RyYXcodmFsdWUsIGluZGV4LCBzbW9vdGhpbmdGYWN0b3IpfWAgOiBgTSAke3BvaW50fWAsXG4gICAgICAgICAgICAnJyxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbXB1dGVXaWR0aChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIGluZGV4ID09PSB0aGlzLnZhbHVlLmxlbmd0aCAtIDFcbiAgICAgICAgICAgID8gMiAqICh0aGlzLnZhbHVlW2luZGV4XVswXSAtIHRoaXMuZ2V0WChpbmRleCkpXG4gICAgICAgICAgICA6IHRoaXMuZ2V0WChpbmRleCArIDEpIC0gdGhpcy5nZXRYKGluZGV4KTtcbiAgICB9XG59XG4iXX0=
@@ -11,7 +11,7 @@ var TuiLineDaysChartHintDirective = /** @class */ (function () {
11
11
  var _this = this;
12
12
  var nativeElement = _a.nativeElement;
13
13
  this.charts = EMPTY_QUERY;
14
- this.hint = "";
14
+ this.hint = '';
15
15
  animationFrame$
16
16
  .pipe(throttleTime(200), map(function () { return !!nativeElement.querySelector("." + HINT_HOVERED_CLASS); }), startWith(false), distinctUntilChanged(), tuiZonefree(ngZone), filter(function (v) { return !v; }), takeUntil(destroy$))
17
17
  .subscribe(function () {
@@ -29,7 +29,7 @@ var TuiLineDaysChartHintDirective = /** @class */ (function () {
29
29
  })
30
30
  .filter(function (_a) {
31
31
  var _b = __read(_a, 2), _ = _b[0], value = _b[1];
32
- return !isNaN(value);
32
+ return !Number.isNaN(value);
33
33
  });
34
34
  var sorted = __spread(current).sort(function (a, b) { return a[1] - b[1]; });
35
35
  this.charts.forEach(function (chart, index) {
@@ -55,7 +55,7 @@ var TuiLineDaysChartHintDirective = /** @class */ (function () {
55
55
  ContentChildren(forwardRef(function () { return TuiLineDaysChartComponent; }))
56
56
  ], TuiLineDaysChartHintDirective.prototype, "charts", void 0);
57
57
  __decorate([
58
- Input("tuiLineChartHint"),
58
+ Input('tuiLineChartHint'),
59
59
  tuiDefaultProp()
60
60
  ], TuiLineDaysChartHintDirective.prototype, "hint", void 0);
61
61
  __decorate([
@@ -63,7 +63,7 @@ var TuiLineDaysChartHintDirective = /** @class */ (function () {
63
63
  ], TuiLineDaysChartHintDirective.prototype, "computeContext", null);
64
64
  TuiLineDaysChartHintDirective = __decorate([
65
65
  Directive({
66
- selector: "[tuiLineChartHint]",
66
+ selector: '[tuiLineChartHint]',
67
67
  providers: [TuiDestroyService],
68
68
  }),
69
69
  __param(0, Inject(TuiDestroyService)),
@@ -80,4 +80,4 @@ function find(value, current) {
80
80
  return day.daySame(current);
81
81
  }) || [current, NaN];
82
82
  }
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LWhpbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC8iLCJzb3VyY2VzIjpbImxpbmUtZGF5cy1jaGFydC1oaW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILGVBQWUsRUFDZixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFDSCxXQUFXLEVBQ1gsc0JBQXNCLEVBQ3RCLE1BQU0sRUFDTixjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixHQUFHLEVBQ0gsU0FBUyxFQUNULFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQU10RTtJQVFJLHVDQUMrQixRQUEyQixFQUNsQyxFQUF3QyxFQUM1QyxNQUFjLEVBQ0wsZUFBbUM7UUFKaEUsaUJBbUJDO1lBakJ3QixnQ0FBYTtRQVJyQixXQUFNLEdBQXlDLFdBQVcsQ0FBQztRQUk1RSxTQUFJLEdBQXFFLEVBQUUsQ0FBQztRQVF4RSxlQUFlO2FBQ1YsSUFBSSxDQUNELFlBQVksQ0FBQyxHQUFHLENBQUMsRUFDakIsR0FBRyxDQUFDLGNBQU0sT0FBQSxDQUFD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TSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQTtPQVpuQiw2QkFBNkIsQ0FzRHpDO0lBQUQsb0NBQUM7Q0FBQSxBQXRERCxJQXNEQztTQXREWSw2QkFBNkI7QUF3RDFDLFNBQVMsSUFBSSxDQUFDLEtBQXNDLEVBQUUsT0FBZTtJQUNqRSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBQyxFQUFLO1lBQUwsa0JBQUssRUFBSixXQUFHO1FBQU0sT0FBQSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUFwQixDQUFvQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDekUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUV9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aURheSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVpvbmVmcmVlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7SElOVF9IT1ZFUkVEX0NMQVNTLCBUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgZmlsdGVyLFxuICAgIG1hcCxcbiAgICBzdGFydFdpdGgsXG4gICAgdGFrZVVudGlsLFxuICAgIHRocm90dGxlVGltZSxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnR9IGZyb20gJy4vbGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiBgW3R1aUxpbmVDaGFydEhpbnRdYCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlIHtcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVHVpTGluZURheXNDaGFydENvbXBvbmVudCkpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFydHM6IFF1ZXJ5TGlzdDxUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQElucHV0KGB0dWlMaW5lQ2hhcnRIaW50YClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhpbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxyZWFkb25seSBUdWlQb2ludFtdPj4gPSBgYDtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikge25hdGl2ZUVsZW1lbnR9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIG5nWm9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgKSB7XG4gICAgICAgIGFuaW1hdGlvbkZyYW1lJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGhyb3R0bGVUaW1lKDIwMCksXG4gICAgICAgICAgICAgICAgbWFwKCgpID0+ICEhbmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGAuJHtISU5UX0hPVkVSRURfQ0xBU1N9YCkpLFxuICAgICAgICAgICAgICAgIHN0YXJ0V2l0aChmYWxzZSksXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICB0dWlab25lZnJlZShuZ1pvbmUpLFxuICAgICAgICAgICAgICAgIGZpbHRlcih2ID0+ICF2KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwoZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaChjaGFydCA9PiBjaGFydC5vbkhvdmVyZWQobnVsbCkpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0Q29udGV4dChkYXk6IFR1aURheSk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8UmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlQ29udGV4dChkYXksIHRoaXMuY2hhcnRzKTtcbiAgICB9XG5cbiAgICByYWlzZShkYXk6IFR1aURheSk6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5jaGFydHNcbiAgICAgICAgICAgIC5tYXAoKHt2YWx1ZX0pID0+IGZpbmQodmFsdWUsIGRheSkpXG4gICAgICAgICAgICAuZmlsdGVyKChbXywgdmFsdWVdKSA9PiAhaXNOYU4odmFsdWUpKTtcbiAgICAgICAgY29uc3Qgc29ydGVkID0gWy4uLmN1cnJlbnRdLnNvcnQoKGEsIGIpID0+IGFbMV0gLSBiWzFdKTtcblxuICAgICAgICB0aGlzLmNoYXJ0cy5mb3JFYWNoKChjaGFydCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNoYXJ0Lm9uSG92ZXJlZChkYXkpO1xuICAgICAgICAgICAgY2hhcnQuekluZGV4ID0gTWF0aC5tYXgoc29ydGVkLmluZGV4T2YoY3VycmVudFtpbmRleF0pLCAwKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGNvbXB1dGVDb250ZXh0KFxuICAgICAgICBkYXk6IFR1aURheSxcbiAgICAgICAgY2hhcnRzOiBRdWVyeUxpc3Q8VHVpTGluZURheXNDaGFydENvbXBvbmVudD4sXG4gICAgKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDxSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAkaW1wbGljaXQ6IGNoYXJ0cy5tYXAoKHt2YWx1ZX0pID0+IGZpbmQodmFsdWUsIGRheSkpLFxuICAgICAgICB9O1xuICAgIH1cbn1cblxuZnVuY3Rpb24gZmluZCh2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPiwgY3VycmVudDogVHVpRGF5KTogW1R1aURheSwgbnVtYmVyXSB7XG4gICAgcmV0dXJuIHZhbHVlLmZpbmQoKFtkYXldKSA9PiBkYXkuZGF5U2FtZShjdXJyZW50KSkgfHwgW2N1cnJlbnQsIE5hTl07XG59XG4iXX0=
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LWhpbnQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb21wb25lbnRzL2xpbmUtZGF5cy1jaGFydC8iLCJzb3VyY2VzIjpbImxpbmUtZGF5cy1jaGFydC1oaW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNILGVBQWUsRUFDZixTQUFTLEVBQ1QsVUFBVSxFQUNWLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEdBQ1osTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFDSCxXQUFXLEVBQ1gsc0JBQXNCLEVBQ3RCLE1BQU0sRUFDTixjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLE9BQU8sRUFDUCxXQUFXLEdBQ2QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLGtCQUFrQixFQUFXLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNoQyxPQUFPLEVBQ0gsb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixHQUFHLEVBQ0gsU0FBUyxFQUNULFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQU10RTtJQVFJLHVDQUMrQixRQUEyQixFQUNsQyxFQUF3QyxFQUM1QyxNQUFjLEVBQ0wsZUFBbUM7UUFKaEUsaUJBbUJDO1lBakJ3QixnQ0FBYTtRQVJyQixXQUFNLEdBQXlDLFdBQVcsQ0FBQztRQUk1RSxTQUFJLEdBQXFFLEVBQUUsQ0FBQztRQVF4RSxlQUFlO2FBQ1YsSUFBSSxDQUNELFlBQVksQ0FBQyxHQUFHLENBQUMsRUFDakIsR0FBRyxDQUFDLGNBQU0sT0FBQSxDQUFDLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxNQUFJLGtCQUFvQixDQUFDLEVBQXZELENBQXVELENBQUMsRUFDbEUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUNoQixvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsTUFBTSxDQUFDLEVBQ25CLE1BQU0sQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxFQUFGLENBQUUsQ0FBQyxFQUNmLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDdEI7YUFDQSxTQUFTLENBQUM7WUFDUCxLQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxVQUFBLEtBQUssSUFBSSxPQUFBLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQXJCLENBQXFCLENBQUMsQ0FBQztRQUN4RCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxrREFBVSxHQUFWLFVBQVcsR0FBVztRQUNsQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsNkNBQUssR0FBTCxVQUFNLEdBQVc7UUFDYixJQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTTthQUN0QixHQUFHLENBQUMsVUFBQyxFQUFPO2dCQUFOLGdCQUFLO1lBQU0sT0FBQSxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQztRQUFoQixDQUFnQixDQUFDO2FBQ2xDLE1BQU0sQ0FBQyxVQUFDLEVBQVU7Z0JBQVYsa0JBQVUsRUFBVCxTQUFDLEVBQUUsYUFBSztZQUFNLE9BQUEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUFwQixDQUFvQixDQUFDLENBQUM7UUFDbEQsSUFBTSxNQUFNLEdBQUcsU0FBSSxPQUFPLEVBQUUsSUFBSSxDQUFDLFVBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSyxPQUFBLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQVgsQ0FBVyxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsVUFBQyxLQUFLLEVBQUUsS0FBSztZQUM3QixLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3JCLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9ELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUdPLHNEQUFjLEdBQXRCLFVBQ0ksR0FBVyxFQUNYLE1BQTRDO1FBRTVDLE9BQU87WUFDSCxTQUFTLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxVQUFDLEVBQU87b0JBQU4sZ0JBQUs7Z0JBQU0sT0FBQSxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQztZQUFoQixDQUFnQixDQUFDO1NBQ3ZELENBQUM7SUFDTixDQUFDOztnQkE1Q3dDLGlCQUFpQix1QkFBckQsTUFBTSxTQUFDLGlCQUFpQjtnQkFDWSxVQUFVLHVCQUE5QyxNQUFNLFNBQUMsVUFBVTtnQkFDTSxNQUFNLHVCQUE3QixNQUFNLFNBQUMsTUFBTTtnQkFDNEIsVUFBVSx1QkFBbkQsTUFBTSxTQUFDLGVBQWU7O0lBVjNCO1FBREMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxjQUFNLE9BQUEseUJBQXlCLEVBQXpCLENBQXlCLENBQUMsQ0FBQztpRUFDZTtJQUk1RTtRQUZDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztRQUN6QixjQUFjLEVBQUU7K0RBQzJEO0lBd0M1RTtRQURDLE9BQU87dUVBUVA7SUFyRFEsNkJBQTZCO1FBSnpDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxvQkFBb0I7WUFDOUIsU0FBUyxFQUFFLENBQUMsaUJBQWlCLENBQUM7U0FDakMsQ0FBQztRQVVPLFdBQUEsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDekIsV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQTtPQVpuQiw2QkFBNkIsQ0FzRHpDO0lBQUQsb0NBQUM7Q0FBQSxBQXRERCxJQXNEQztTQXREWSw2QkFBNkI7QUF3RDFDLFNBQVMsSUFBSSxDQUFDLEtBQXNDLEVBQUUsT0FBZTtJQUNqRSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBQyxFQUFLO1lBQUwsa0JBQUssRUFBSixXQUFHO1FBQU0sT0FBQSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUFwQixDQUFvQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDekUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBRdWVyeUxpc3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBTklNQVRJT05fRlJBTUV9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtcbiAgICBFTVBUWV9RVUVSWSxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aURheSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlEZXN0cm95U2VydmljZSxcbiAgICB0dWlQdXJlLFxuICAgIHR1aVpvbmVmcmVlLFxufSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7SElOVF9IT1ZFUkVEX0NMQVNTLCBUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgZmlsdGVyLFxuICAgIG1hcCxcbiAgICBzdGFydFdpdGgsXG4gICAgdGFrZVVudGlsLFxuICAgIHRocm90dGxlVGltZSxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQge1R1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnR9IGZyb20gJy4vbGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3R1aUxpbmVDaGFydEhpbnRdJyxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlIHtcbiAgICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gVHVpTGluZURheXNDaGFydENvbXBvbmVudCkpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFydHM6IFF1ZXJ5TGlzdDxUdWlMaW5lRGF5c0NoYXJ0Q29tcG9uZW50PiA9IEVNUFRZX1FVRVJZO1xuXG4gICAgQElucHV0KCd0dWlMaW5lQ2hhcnRIaW50JylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGhpbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxyZWFkb25seSBUdWlQb2ludFtdPj4gPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KFR1aURlc3Ryb3lTZXJ2aWNlKSBkZXN0cm95JDogVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgICAgIEBJbmplY3QoRWxlbWVudFJlZikge25hdGl2ZUVsZW1lbnR9OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgICAgQEluamVjdChOZ1pvbmUpIG5nWm9uZTogTmdab25lLFxuICAgICAgICBASW5qZWN0KEFOSU1BVElPTl9GUkFNRSkgYW5pbWF0aW9uRnJhbWUkOiBPYnNlcnZhYmxlPG51bWJlcj4sXG4gICAgKSB7XG4gICAgICAgIGFuaW1hdGlvbkZyYW1lJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGhyb3R0bGVUaW1lKDIwMCksXG4gICAgICAgICAgICAgICAgbWFwKCgpID0+ICEhbmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKGAuJHtISU5UX0hPVkVSRURfQ0xBU1N9YCkpLFxuICAgICAgICAgICAgICAgIHN0YXJ0V2l0aChmYWxzZSksXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgICAgICB0dWlab25lZnJlZShuZ1pvbmUpLFxuICAgICAgICAgICAgICAgIGZpbHRlcih2ID0+ICF2KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwoZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaChjaGFydCA9PiBjaGFydC5vbkhvdmVyZWQobnVsbCkpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZ2V0Q29udGV4dChkYXk6IFR1aURheSk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8UmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb21wdXRlQ29udGV4dChkYXksIHRoaXMuY2hhcnRzKTtcbiAgICB9XG5cbiAgICByYWlzZShkYXk6IFR1aURheSk6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5jaGFydHNcbiAgICAgICAgICAgIC5tYXAoKHt2YWx1ZX0pID0+IGZpbmQodmFsdWUsIGRheSkpXG4gICAgICAgICAgICAuZmlsdGVyKChbXywgdmFsdWVdKSA9PiAhTnVtYmVyLmlzTmFOKHZhbHVlKSk7XG4gICAgICAgIGNvbnN0IHNvcnRlZCA9IFsuLi5jdXJyZW50XS5zb3J0KChhLCBiKSA9PiBhWzFdIC0gYlsxXSk7XG5cbiAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaCgoY2hhcnQsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjaGFydC5vbkhvdmVyZWQoZGF5KTtcbiAgICAgICAgICAgIGNoYXJ0LnpJbmRleCA9IE1hdGgubWF4KHNvcnRlZC5pbmRleE9mKGN1cnJlbnRbaW5kZXhdKSwgMCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBjb21wdXRlQ29udGV4dChcbiAgICAgICAgZGF5OiBUdWlEYXksXG4gICAgICAgIGNoYXJ0czogUXVlcnlMaXN0PFR1aUxpbmVEYXlzQ2hhcnRDb21wb25lbnQ+LFxuICAgICk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8UmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPj4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgJGltcGxpY2l0OiBjaGFydHMubWFwKCh7dmFsdWV9KSA9PiBmaW5kKHZhbHVlLCBkYXkpKSxcbiAgICAgICAgfTtcbiAgICB9XG59XG5cbmZ1bmN0aW9uIGZpbmQodmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4sIGN1cnJlbnQ6IFR1aURheSk6IFtUdWlEYXksIG51bWJlcl0ge1xuICAgIHJldHVybiB2YWx1ZS5maW5kKChbZGF5XSkgPT4gZGF5LmRheVNhbWUoY3VycmVudCkpIHx8IFtjdXJyZW50LCBOYU5dO1xufVxuIl19
@@ -12,14 +12,14 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
12
12
  this.y = 0;
13
13
  this.height = 0;
14
14
  this.smoothingFactor = 0;
15
- this.hintContent = "";
15
+ this.hintContent = '';
16
16
  this.xStringify = null;
17
17
  this.yStringify = null;
18
18
  this.dots = false;
19
19
  this.zIndex = 0;
20
20
  this.value = [];
21
21
  this.daysStringify = function (index) {
22
- return _this.xStringify ? _this.xStringify(_this.getMonth(index)) : "";
22
+ return _this.xStringify ? _this.xStringify(_this.getMonth(index)) : '';
23
23
  };
24
24
  }
25
25
  TuiLineDaysChartComponent_1 = TuiLineDaysChartComponent;
@@ -128,7 +128,9 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
128
128
  .map(function (month, index, array) {
129
129
  return index === array.length - 1
130
130
  ? month
131
- : __spread(month, [array[index + 1].find(function (day) { return !isNaN(day[1]); }) || DUMMY]);
131
+ : __spread(month, [
132
+ array[index + 1].find(function (day) { return !Number.isNaN(day[1]); }) || DUMMY,
133
+ ]);
132
134
  });
133
135
  };
134
136
  TuiLineDaysChartComponent.prototype.getMonth = function (index) {
@@ -142,7 +144,7 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
142
144
  ViewChildren(TuiLineChartComponent)
143
145
  ], TuiLineDaysChartComponent.prototype, "charts", void 0);
144
146
  __decorate([
145
- Input("value"),
147
+ Input('value'),
146
148
  tuiDefaultProp()
147
149
  ], TuiLineDaysChartComponent.prototype, "valueSetter", null);
148
150
  __decorate([
@@ -174,7 +176,7 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
174
176
  tuiDefaultProp()
175
177
  ], TuiLineDaysChartComponent.prototype, "dots", void 0);
176
178
  __decorate([
177
- HostBinding("style.zIndex")
179
+ HostBinding('style.zIndex')
178
180
  ], TuiLineDaysChartComponent.prototype, "zIndex", void 0);
179
181
  __decorate([
180
182
  tuiPure
@@ -184,7 +186,7 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
184
186
  ], TuiLineDaysChartComponent.prototype, "breakMonths", null);
185
187
  TuiLineDaysChartComponent = TuiLineDaysChartComponent_1 = __decorate([
186
188
  Component({
187
- selector: "tui-line-days-chart",
189
+ selector: 'tui-line-days-chart',
188
190
  template: "<tui-line-chart\n *ngFor=\"let month of months; let first = first\"\n class=\"t-chart\"\n [style.zIndex]=\"zIndex\"\n [dots]=\"dots\"\n [x]=\"first ? 0 : getX(month[0][0])\"\n [y]=\"y\"\n [width]=\"first ? firstWidth : getWidth(month[0][0])\"\n [height]=\"height\"\n [value]=\"month\"\n [smoothingFactor]=\"smoothingFactor\"\n [hintContent]=\"hintContent ? hint : ''\"\n [yStringify]=\"yStringify\"\n [xStringify]=\"xStringify ? daysStringify : null\"\n></tui-line-chart>\n<ng-template\n #hint\n let-point\n>\n <div\n polymorpheus-outlet\n [content]=\"hintContent\"\n [context]=\"getHintContext(point[0], value)\"\n ></div>\n</ng-template>\n",
189
191
  changeDetection: ChangeDetectionStrategy.OnPush,
190
192
  providers: [
@@ -201,4 +203,4 @@ var TuiLineDaysChartComponent = /** @class */ (function () {
201
203
  return TuiLineDaysChartComponent;
202
204
  }());
203
205
  export { TuiLineDaysChartComponent };
204
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWRheXMtY2hhcnQvIiwic291cmNlcyI6WyJsaW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUVSLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLHlCQUF5QixHQUM1QixNQUFNLDhDQUE4QyxDQUFDO0FBQ3RELE9BQU8sRUFDSCxXQUFXLEVBQ1gsV0FBVyxFQUNYLFNBQVMsRUFFVCxNQUFNLEVBQ04sY0FBYyxFQUNkLFFBQVEsRUFDUixPQUFPLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFFL0UsSUFBTSxLQUFLLEdBQWEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFjbkM7SUEyREksbUNBR3FCLGFBQW1EO1FBSHhFLGlCQUlJO1FBRGlCLGtCQUFhLEdBQWIsYUFBYSxDQUFzQztRQTVEdkQsV0FBTSxHQUFxQyxXQUFXLENBQUM7UUEwQnhFLE1BQUMsR0FBRyxDQUFDLENBQUM7UUFJTixXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBSVgsb0JBQWUsR0FBRyxDQUFDLENBQUM7UUFJcEIsZ0JBQVcsR0FBa0UsRUFBRSxDQUFDO1FBSWhGLGVBQVUsR0FBb0MsSUFBSSxDQUFDO1FBSW5ELGVBQVUsR0FBb0MsSUFBSSxDQUFDO1FBSW5ELFNBQUksR0FBRyxLQUFLLENBQUM7UUFHYixXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRVgsVUFBSyxHQUFvQyxFQUFFLENBQUM7UUFnQ25DLGtCQUFh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LFVBQVUsQ0FBQyxjQUFNLE9BQUEsMkJBQXlCLEVBQXpCLENBQXlCLENBQUM7aUJBQzNEO2FBQ0o7O1NBQ0osQ0FBQztRQTZETyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtPQTdEakMseUJBQXlCLENBK0tyQztJQUFELGdDQUFDO0NBQUEsQUEvS0QsSUErS0M7U0EvS1kseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFR1aUxpbmVDaGFydENvbXBvbmVudCxcbiAgICBUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlLFxufSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydCc7XG5pbXBvcnQge1xuICAgIEVNUFRZX0FSUkFZLFxuICAgIEVNUFRZX1FVRVJZLFxuICAgIGlzUHJlc2VudCxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aURheSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlNb250aCxcbiAgICB0dWlQdXJlLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlfSBmcm9tICcuL2xpbmUtZGF5cy1jaGFydC1oaW50LmRpcmVjdGl2ZSc7XG5cbmNvbnN0IERVTU1ZOiBUdWlQb2ludCA9IFtOYU4sIE5hTl07XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBgdHVpLWxpbmUtZGF5cy1jaGFydGAsXG4gICAgdGVtcGxhdGVVcmw6IGAuL2xpbmUtZGF5cy1jaGFydC50ZW1wbGF0ZS5odG1sYCxcbiAgICBzdHlsZVVybHM6IFtgLi9saW5lLWRheXMtY2hhcnQuc3R5bGUubGVzc2BdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpTGluZURheXNDaGFydENvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTGluZURheXNDaGFydENvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZHJlbihUdWlMaW5lQ2hhcnRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFydHM6IFF1ZXJ5TGlzdDxUdWlMaW5lQ2hhcnRDb21wb25lbnQ+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBASW5wdXQoYHZhbHVlYClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNldCB2YWx1ZVNldHRlcih2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPikge1xuICAgICAgICBpZiAoIXZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IFtdO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdGFydCA9IHZhbHVlWzBdWzBdO1xuICAgICAgICBjb25zdCBtdXRhYmxlID0gWy4uLnZhbHVlXTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gVHVpRGF5Lmxlbmd0aEJldHdlZW4oc3RhcnQsIHZhbHVlW3ZhbHVlLmxlbmd0aCAtIDFdWzBdKSArIDE7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IEFycmF5LmZyb20oe2xlbmd0aH0sIChfLCBkYXkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnREYXkgPSBzdGFydC5hcHBlbmQoe2RheX0pO1xuICAgICAgICAgICAgY29uc3Qgc2hpZnRlZCA9IGN1cnJlbnREYXkuZGF5U2FtZShtdXRhYmxlWzBdWzBdKSA/IG11dGFibGUuc2hpZnQoKSA6IG51bGw7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSBzaGlmdGVkID8gc2hpZnRlZFsxXSA6IE5hTjtcblxuICAgICAgICAgICAgcmV0dXJuIFtjdXJyZW50RGF5LCBjdXJyZW50VmFsdWVdIGFzIFtUdWlEYXksIG51bWJlcl07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB5ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBoZWlnaHQgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNtb290aGluZ0ZhY3RvciA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxbVHVpRGF5LCBudW1iZXJdPj4gPSBgYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB4U3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPFR1aURheT4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB5U3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPG51bWJlcj4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkb3RzID0gZmFsc2U7XG5cbiAgICBASG9zdEJpbmRpbmcoYHN0eWxlLnpJbmRleGApXG4gICAgekluZGV4ID0gMDtcblxuICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+ID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoaW50RGlyZWN0aXZlOiBUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7fVxuXG4gICAgZ2V0IG1vbnRocygpOiBSZWFkb25seUFycmF5PHJlYWRvbmx5IFR1aVBvaW50W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoID8gdGhpcy5icmVha01vbnRocyh0aGlzLnZhbHVlKSA6IEVNUFRZX0FSUkFZO1xuICAgIH1cblxuICAgIGdldCBmaXJzdFdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vbnRocy5sZW5ndGggKiB0aGlzLnZhbHVlWzBdWzBdLmRheXNDb3VudDtcbiAgICB9XG5cbiAgICBnZXQgaGludCgpOlxuICAgICAgICB8IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxbVHVpRGF5LCBudW1iZXJdPj5cbiAgICAgICAgfCBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8cmVhZG9ubHkgVHVpUG9pbnRbXT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludERpcmVjdGl2ZSA/IHRoaXMuaGludERpcmVjdGl2ZS5oaW50IDogdGhpcy5oaW50Q29udGVudDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldEhpbnRDb250ZXh0KFxuICAgICAgICB4OiBudW1iZXIsXG4gICAgICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+LFxuICAgICk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8W1R1aURheSwgbnVtYmVyXT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgJGltcGxpY2l0OiB2YWx1ZVt4IC0gdmFsdWVbMF1bMF0uZGF5ICsgMV0sXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcmVhZG9ubHkgZGF5c1N0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+ID0gaW5kZXggPT5cbiAgICAgICAgdGhpcy54U3RyaW5naWZ5ID8gdGhpcy54U3RyaW5naWZ5KHRoaXMuZ2V0TW9udGgoaW5kZXgpKSA6IGBgO1xuXG4gICAgZ2V0WChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuZ2V0TW9udGgoaW5kZXgpO1xuICAgICAgICBjb25zdCBtb250aHMgPSBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHRoaXMudmFsdWVbMF1bMF0sIGN1cnJlbnQpO1xuICAgICAgICBjb25zdCBvZmZzZXQgPSBtb250aHMgKiBjdXJyZW50LmRheXNDb3VudDtcblxuICAgICAgICByZXR1cm4gaW5kZXggLSBvZmZzZXQ7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGRheTogVHVpRGF5IHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBpZiAoIWRheSkge1xuICAgICAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaChjaGFydCA9PiBjaGFydC5vbkhvdmVyZWQoTmFOKSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluZGV4ID0gVHVpTW9udGgubGVuZ3RoQmV0d2Vlbih0aGlzLnZhbHVlWzBdWzBdLCBkYXkpO1xuICAgICAgICBjb25zdCB4ID0gVHVpRGF5Lmxlbmd0aEJldHdlZW4odGhpcy52YWx1ZVswXVswXSwgZGF5KSArIHRoaXMudmFsdWVbMF1bMF0uZGF5IC0gMTtcbiAgICAgICAgY29uc3QgYXJyYXkgPSB0aGlzLmNoYXJ0cy50b0FycmF5KCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSBhcnJheVtpbmRleF07XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSBjdXJyZW50O1xuXG4gICAgICAgIGFycmF5LmZvckVhY2goY2hhcnQgPT4ge1xuICAgICAgICAgICAgaWYgKGNoYXJ0ID09PSBjdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY3VycmVudC5vbkhvdmVyZWQodmFsdWUuZmluZEluZGV4KHBvaW50ID0+IHBvaW50WzBdID09PSB4KSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNoYXJ0Lm9uSG92ZXJlZChOYU4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByYWlzZShpbmRleDogbnVtYmVyLCB7dmFsdWV9OiBUdWlMaW5lQ2hhcnRDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeCA9IHZhbHVlW2luZGV4XVswXTtcbiAgICAgICAgY29uc3QgbW9udGggPSB0aGlzLmdldE1vbnRoKHgpO1xuXG4gICAgICAgIGlmICh0aGlzLmhpbnREaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuaGludERpcmVjdGl2ZS5yYWlzZShtb250aCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9uSG92ZXJlZChtb250aCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRXaWR0aChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TW9udGgoaW5kZXgpLmRheXNDb3VudCAqIHRoaXMubW9udGhzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBnZXRDb250ZXh0KFxuICAgICAgICBpbmRleDogbnVtYmVyLFxuICAgICAgICB7dmFsdWV9OiBUdWlMaW5lQ2hhcnRDb21wb25lbnQsXG4gICAgKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDx1bmtub3duPiB7XG4gICAgICAgIGNvbnN0IHggPSB2YWx1ZVtpbmRleF1bMF07XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaGludERpcmVjdGl2ZVxuICAgICAgICAgICAgPyB0aGlzLmhpbnREaXJlY3RpdmUuZ2V0Q29udGV4dCh0aGlzLmdldE1vbnRoKHgpKVxuICAgICAgICAgICAgOiB0aGlzLmdldEhpbnRDb250ZXh0KHgsIHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBicmVha01vbnRocyhcbiAgICAgICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4sXG4gICAgKTogUmVhZG9ubHlBcnJheTxyZWFkb25seSBUdWlQb2ludFtdPiB7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHZhbHVlWzBdWzBdLmRheSAtIDE7XG5cbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICAgICAgICB7bGVuZ3RoOiBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHZhbHVlWzBdWzBdLCB2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXVswXSkgKyAxfSxcbiAgICAgICAgICAgIChfLCBpKSA9PiBpICsgdmFsdWVbMF1bMF0ubW9udGggKyB2YWx1ZVswXVswXS55ZWFyICogMTIsXG4gICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoYWJzb2x1dGVNb250aCA9PlxuICAgICAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICAgICAgICAgICAgIC5tYXA8VHVpUG9pbnQgfCBudWxsPigoW3ttb250aCwgeWVhcn0sIHldLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIG1vbnRoICsgeWVhciAqIDEyID09PSBhYnNvbHV0ZU1vbnRoID8gW2luZGV4ICsgb2Zmc2V0LCB5XSA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihpc1ByZXNlbnQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLm1hcCgobW9udGgsIGluZGV4LCBhcnJheSkgPT5cbiAgICAgICAgICAgICAgICBpbmRleCA9PT0gYXJyYXkubGVuZ3RoIC0gMVxuICAgICAgICAgICAgICAgICAgICA/IG1vbnRoXG4gICAgICAgICAgICAgICAgICAgIDogWy4uLm1vbnRoLCBhcnJheVtpbmRleCArIDFdLmZpbmQoZGF5ID0+ICFpc05hTihkYXlbMV0pKSB8fCBEVU1NWV0sXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TW9udGgoaW5kZXg6IG51bWJlcik6IFR1aURheSB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlW2luZGV4IC0gdGhpcy52YWx1ZVswXVswXS5kYXkgKyAxXVswXTtcbiAgICB9XG59XG4iXX0=
206
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1kYXlzLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9saW5lLWRheXMtY2hhcnQvIiwic291cmNlcyI6WyJsaW5lLWRheXMtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUVSLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0gscUJBQXFCLEVBQ3JCLHlCQUF5QixHQUM1QixNQUFNLDhDQUE4QyxDQUFDO0FBQ3RELE9BQU8sRUFDSCxXQUFXLEVBQ1gsV0FBVyxFQUNYLFNBQVMsRUFFVCxNQUFNLEVBQ04sY0FBYyxFQUNkLFFBQVEsRUFDUixPQUFPLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFFL0UsSUFBTSxLQUFLLEdBQWEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFjbkM7SUEyREksbUNBR3FCLGFBQW1EO1FBSHhFLGlCQUlJO1FBRGlCLGtCQUFhLEdBQWIsYUFBYSxDQUFzQztRQTVEdkQsV0FBTSxHQUFxQyxXQUFXLENBQUM7UUEwQnhFLE1BQUMsR0FBRyxDQUFDLENBQUM7UUFJTixXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBSVgsb0JBQWUsR0FBRyxDQUFDLENBQUM7UUFJcEIsZ0JBQVcsR0FBa0UsRUFBRSxDQUFDO1FBSWhGLGVBQVUsR0FBb0MsSUFBSSxDQUFDO1FBSW5ELGVBQVUsR0FBb0MsSUFBSSxDQUFDO1FBSW5ELFNBQUksR0FBRyxLQUFLLENBQUM7UUFHYixXQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRVgsVUFBSyxHQUFvQyxFQUFFLENBQUM7UUFnQ25DLGtCQUFh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bEMsV0FBVyxFQUFFLFVBQVUsQ0FBQyxjQUFNLE9BQUEsMkJBQXlCLEVBQXpCLENBQXlCLENBQUM7aUJBQzNEO2FBQ0o7O1NBQ0osQ0FBQztRQTZETyxXQUFBLFFBQVEsRUFBRSxDQUFBO1FBQ1YsV0FBQSxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtPQTdEakMseUJBQXlCLENBa0xyQztJQUFELGdDQUFDO0NBQUEsQUFsTEQsSUFrTEM7U0FsTFkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFR1aUxpbmVDaGFydENvbXBvbmVudCxcbiAgICBUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlLFxufSBmcm9tICdAdGFpZ2EtdWkvYWRkb24tY2hhcnRzL2NvbXBvbmVudHMvbGluZS1jaGFydCc7XG5pbXBvcnQge1xuICAgIEVNUFRZX0FSUkFZLFxuICAgIEVNUFRZX1FVRVJZLFxuICAgIGlzUHJlc2VudCxcbiAgICBUdWlDb250ZXh0V2l0aEltcGxpY2l0LFxuICAgIFR1aURheSxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlNb250aCxcbiAgICB0dWlQdXJlLFxuICAgIFR1aVN0cmluZ0hhbmRsZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlQb2ludH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGlua29mZi9uZy1wb2x5bW9ycGhldXMnO1xuXG5pbXBvcnQge1R1aUxpbmVEYXlzQ2hhcnRIaW50RGlyZWN0aXZlfSBmcm9tICcuL2xpbmUtZGF5cy1jaGFydC1oaW50LmRpcmVjdGl2ZSc7XG5cbmNvbnN0IERVTU1ZOiBUdWlQb2ludCA9IFtOYU4sIE5hTl07XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndHVpLWxpbmUtZGF5cy1jaGFydCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xpbmUtZGF5cy1jaGFydC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9saW5lLWRheXMtY2hhcnQuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBUdWlMaW5lQ2hhcnRIaW50RGlyZWN0aXZlLFxuICAgICAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVHVpTGluZURheXNDaGFydENvbXBvbmVudCksXG4gICAgICAgIH0sXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpTGluZURheXNDaGFydENvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZHJlbihUdWlMaW5lQ2hhcnRDb21wb25lbnQpXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFydHM6IFF1ZXJ5TGlzdDxUdWlMaW5lQ2hhcnRDb21wb25lbnQ+ID0gRU1QVFlfUVVFUlk7XG5cbiAgICBASW5wdXQoJ3ZhbHVlJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNldCB2YWx1ZVNldHRlcih2YWx1ZTogUmVhZG9ubHlBcnJheTxbVHVpRGF5LCBudW1iZXJdPikge1xuICAgICAgICBpZiAoIXZhbHVlLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IFtdO1xuXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdGFydCA9IHZhbHVlWzBdWzBdO1xuICAgICAgICBjb25zdCBtdXRhYmxlID0gWy4uLnZhbHVlXTtcbiAgICAgICAgY29uc3QgbGVuZ3RoID0gVHVpRGF5Lmxlbmd0aEJldHdlZW4oc3RhcnQsIHZhbHVlW3ZhbHVlLmxlbmd0aCAtIDFdWzBdKSArIDE7XG5cbiAgICAgICAgdGhpcy52YWx1ZSA9IEFycmF5LmZyb20oe2xlbmd0aH0sIChfLCBkYXkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnREYXkgPSBzdGFydC5hcHBlbmQoe2RheX0pO1xuICAgICAgICAgICAgY29uc3Qgc2hpZnRlZCA9IGN1cnJlbnREYXkuZGF5U2FtZShtdXRhYmxlWzBdWzBdKSA/IG11dGFibGUuc2hpZnQoKSA6IG51bGw7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50VmFsdWUgPSBzaGlmdGVkID8gc2hpZnRlZFsxXSA6IE5hTjtcblxuICAgICAgICAgICAgcmV0dXJuIFtjdXJyZW50RGF5LCBjdXJyZW50VmFsdWVdIGFzIFtUdWlEYXksIG51bWJlcl07XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB5ID0gMDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBoZWlnaHQgPSAwO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNtb290aGluZ0ZhY3RvciA9IDA7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxbVHVpRGF5LCBudW1iZXJdPj4gPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB4U3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPFR1aURheT4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICB5U3RyaW5naWZ5OiBUdWlTdHJpbmdIYW5kbGVyPG51bWJlcj4gfCBudWxsID0gbnVsbDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBkb3RzID0gZmFsc2U7XG5cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLnpJbmRleCcpXG4gICAgekluZGV4ID0gMDtcblxuICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+ID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZSlcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBoaW50RGlyZWN0aXZlOiBUdWlMaW5lRGF5c0NoYXJ0SGludERpcmVjdGl2ZSB8IG51bGwsXG4gICAgKSB7fVxuXG4gICAgZ2V0IG1vbnRocygpOiBSZWFkb25seUFycmF5PHJlYWRvbmx5IFR1aVBvaW50W10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWUubGVuZ3RoID8gdGhpcy5icmVha01vbnRocyh0aGlzLnZhbHVlKSA6IEVNUFRZX0FSUkFZO1xuICAgIH1cblxuICAgIGdldCBmaXJzdFdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm1vbnRocy5sZW5ndGggKiB0aGlzLnZhbHVlWzBdWzBdLmRheXNDb3VudDtcbiAgICB9XG5cbiAgICBnZXQgaGludCgpOlxuICAgICAgICB8IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxbVHVpRGF5LCBudW1iZXJdPj5cbiAgICAgICAgfCBQb2x5bW9ycGhldXNDb250ZW50PFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8cmVhZG9ubHkgVHVpUG9pbnRbXT4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludERpcmVjdGl2ZSA/IHRoaXMuaGludERpcmVjdGl2ZS5oaW50IDogdGhpcy5oaW50Q29udGVudDtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIGdldEhpbnRDb250ZXh0KFxuICAgICAgICB4OiBudW1iZXIsXG4gICAgICAgIHZhbHVlOiBSZWFkb25seUFycmF5PFtUdWlEYXksIG51bWJlcl0+LFxuICAgICk6IFR1aUNvbnRleHRXaXRoSW1wbGljaXQ8W1R1aURheSwgbnVtYmVyXT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgJGltcGxpY2l0OiB2YWx1ZVt4IC0gdmFsdWVbMF1bMF0uZGF5ICsgMV0sXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcmVhZG9ubHkgZGF5c1N0cmluZ2lmeTogVHVpU3RyaW5nSGFuZGxlcjxudW1iZXI+ID0gaW5kZXggPT5cbiAgICAgICAgdGhpcy54U3RyaW5naWZ5ID8gdGhpcy54U3RyaW5naWZ5KHRoaXMuZ2V0TW9udGgoaW5kZXgpKSA6ICcnO1xuXG4gICAgZ2V0WChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuZ2V0TW9udGgoaW5kZXgpO1xuICAgICAgICBjb25zdCBtb250aHMgPSBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHRoaXMudmFsdWVbMF1bMF0sIGN1cnJlbnQpO1xuICAgICAgICBjb25zdCBvZmZzZXQgPSBtb250aHMgKiBjdXJyZW50LmRheXNDb3VudDtcblxuICAgICAgICByZXR1cm4gaW5kZXggLSBvZmZzZXQ7XG4gICAgfVxuXG4gICAgb25Ib3ZlcmVkKGRheTogVHVpRGF5IHwgbnVsbCk6IHZvaWQge1xuICAgICAgICBpZiAoIWRheSkge1xuICAgICAgICAgICAgdGhpcy5jaGFydHMuZm9yRWFjaChjaGFydCA9PiBjaGFydC5vbkhvdmVyZWQoTmFOKSk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluZGV4ID0gVHVpTW9udGgubGVuZ3RoQmV0d2Vlbih0aGlzLnZhbHVlWzBdWzBdLCBkYXkpO1xuICAgICAgICBjb25zdCB4ID0gVHVpRGF5Lmxlbmd0aEJldHdlZW4odGhpcy52YWx1ZVswXVswXSwgZGF5KSArIHRoaXMudmFsdWVbMF1bMF0uZGF5IC0gMTtcbiAgICAgICAgY29uc3QgYXJyYXkgPSB0aGlzLmNoYXJ0cy50b0FycmF5KCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnQgPSBhcnJheVtpbmRleF07XG4gICAgICAgIGNvbnN0IHt2YWx1ZX0gPSBjdXJyZW50O1xuXG4gICAgICAgIGFycmF5LmZvckVhY2goY2hhcnQgPT4ge1xuICAgICAgICAgICAgaWYgKGNoYXJ0ID09PSBjdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgY3VycmVudC5vbkhvdmVyZWQodmFsdWUuZmluZEluZGV4KHBvaW50ID0+IHBvaW50WzBdID09PSB4KSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNoYXJ0Lm9uSG92ZXJlZChOYU4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByYWlzZShpbmRleDogbnVtYmVyLCB7dmFsdWV9OiBUdWlMaW5lQ2hhcnRDb21wb25lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeCA9IHZhbHVlW2luZGV4XVswXTtcbiAgICAgICAgY29uc3QgbW9udGggPSB0aGlzLmdldE1vbnRoKHgpO1xuXG4gICAgICAgIGlmICh0aGlzLmhpbnREaXJlY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuaGludERpcmVjdGl2ZS5yYWlzZShtb250aCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm9uSG92ZXJlZChtb250aCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRXaWR0aChpbmRleDogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TW9udGgoaW5kZXgpLmRheXNDb3VudCAqIHRoaXMubW9udGhzLmxlbmd0aDtcbiAgICB9XG5cbiAgICBnZXRDb250ZXh0KFxuICAgICAgICBpbmRleDogbnVtYmVyLFxuICAgICAgICB7dmFsdWV9OiBUdWlMaW5lQ2hhcnRDb21wb25lbnQsXG4gICAgKTogVHVpQ29udGV4dFdpdGhJbXBsaWNpdDx1bmtub3duPiB7XG4gICAgICAgIGNvbnN0IHggPSB2YWx1ZVtpbmRleF1bMF07XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaGludERpcmVjdGl2ZVxuICAgICAgICAgICAgPyB0aGlzLmhpbnREaXJlY3RpdmUuZ2V0Q29udGV4dCh0aGlzLmdldE1vbnRoKHgpKVxuICAgICAgICAgICAgOiB0aGlzLmdldEhpbnRDb250ZXh0KHgsIHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIEB0dWlQdXJlXG4gICAgcHJpdmF0ZSBicmVha01vbnRocyhcbiAgICAgICAgdmFsdWU6IFJlYWRvbmx5QXJyYXk8W1R1aURheSwgbnVtYmVyXT4sXG4gICAgKTogUmVhZG9ubHlBcnJheTxyZWFkb25seSBUdWlQb2ludFtdPiB7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHZhbHVlWzBdWzBdLmRheSAtIDE7XG5cbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oXG4gICAgICAgICAgICB7bGVuZ3RoOiBUdWlNb250aC5sZW5ndGhCZXR3ZWVuKHZhbHVlWzBdWzBdLCB2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXVswXSkgKyAxfSxcbiAgICAgICAgICAgIChfLCBpKSA9PiBpICsgdmFsdWVbMF1bMF0ubW9udGggKyB2YWx1ZVswXVswXS55ZWFyICogMTIsXG4gICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoYWJzb2x1dGVNb250aCA9PlxuICAgICAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICAgICAgICAgICAgIC5tYXA8VHVpUG9pbnQgfCBudWxsPigoW3ttb250aCwgeWVhcn0sIHldLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgIG1vbnRoICsgeWVhciAqIDEyID09PSBhYnNvbHV0ZU1vbnRoID8gW2luZGV4ICsgb2Zmc2V0LCB5XSA6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgLmZpbHRlcihpc1ByZXNlbnQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLm1hcCgobW9udGgsIGluZGV4LCBhcnJheSkgPT5cbiAgICAgICAgICAgICAgICBpbmRleCA9PT0gYXJyYXkubGVuZ3RoIC0gMVxuICAgICAgICAgICAgICAgICAgICA/IG1vbnRoXG4gICAgICAgICAgICAgICAgICAgIDogW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAuLi5tb250aCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXlbaW5kZXggKyAxXS5maW5kKGRheSA9PiAhTnVtYmVyLmlzTmFOKGRheVsxXSkpIHx8IERVTU1ZLFxuICAgICAgICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TW9udGgoaW5kZXg6IG51bWJlcik6IFR1aURheSB7XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlW2luZGV4IC0gdGhpcy52YWx1ZVswXVswXS5kYXkgKyAxXVswXTtcbiAgICB9XG59XG4iXX0=
@@ -6,11 +6,11 @@ import { TUI_DEFAULT_COLOR_HANDLER } from '@taiga-ui/addon-charts/constants';
6
6
  import { sum, TuiContextWithImplicit, tuiDefaultProp, TuiIdService, tuiPure, } from '@taiga-ui/cdk';
7
7
  import { colorFallback } from '@taiga-ui/core';
8
8
  var RADII = {
9
- xs: "50",
10
- s: "50",
11
- m: "77.8",
12
- l: "81.9",
13
- xl: "81.3",
9
+ xs: '50',
10
+ s: '50',
11
+ m: '77.8',
12
+ l: '81.9',
13
+ xl: '81.3',
14
14
  };
15
15
  var TRANSFORM = {
16
16
  xs: 1.15,
@@ -25,9 +25,9 @@ var TuiPieChartComponent = /** @class */ (function () {
25
25
  this.locationRef = locationRef;
26
26
  this.sanitizer = sanitizer;
27
27
  this.value = [];
28
- this.size = "m";
28
+ this.size = 'm';
29
29
  this.colorHandler = TUI_DEFAULT_COLOR_HANDLER;
30
- this.hintContent = "";
30
+ this.hintContent = '';
31
31
  this.masked = false;
32
32
  this.activeItemIndex = NaN;
33
33
  this.activeItemIndexChange = new EventEmitter();
@@ -77,7 +77,7 @@ var TuiPieChartComponent = /** @class */ (function () {
77
77
  return index === this.activeItemIndex ? transform : null;
78
78
  };
79
79
  TuiPieChartComponent.prototype.getHint = function (hint) {
80
- return this.hintContent ? hint : "";
80
+ return this.hintContent ? hint : '';
81
81
  };
82
82
  TuiPieChartComponent.prototype.onHovered = function (hovered, index) {
83
83
  this.updateActiveItemIndex(hovered ? index : NaN);
@@ -120,7 +120,7 @@ var TuiPieChartComponent = /** @class */ (function () {
120
120
  ], TuiPieChartComponent.prototype, "value", void 0);
121
121
  __decorate([
122
122
  Input(),
123
- HostBinding("attr.data-size"),
123
+ HostBinding('attr.data-size'),
124
124
  tuiDefaultProp()
125
125
  ], TuiPieChartComponent.prototype, "size", void 0);
126
126
  __decorate([
@@ -143,7 +143,7 @@ var TuiPieChartComponent = /** @class */ (function () {
143
143
  Output()
144
144
  ], TuiPieChartComponent.prototype, "activeItemIndexChange", void 0);
145
145
  __decorate([
146
- HostBinding("class._empty")
146
+ HostBinding('class._empty')
147
147
  ], TuiPieChartComponent.prototype, "empty", null);
148
148
  __decorate([
149
149
  tuiPure
@@ -153,7 +153,7 @@ var TuiPieChartComponent = /** @class */ (function () {
153
153
  ], TuiPieChartComponent.prototype, "getSegments", null);
154
154
  TuiPieChartComponent = __decorate([
155
155
  Component({
156
- selector: "tui-pie-chart",
156
+ selector: 'tui-pie-chart',
157
157
  template: "<svg\n xmlns=\"http://www.w3.org/2000/svg\"\n height=\"100%\"\n width=\"100%\"\n viewBox=\"-100 -100 200 200\"\n focusable=\"false\"\n class=\"t-svg\"\n>\n <defs>\n <mask [attr.id]=\"maskId\">\n <rect\n x=\"-200\"\n y=\"-200\"\n width=\"400\"\n height=\"400\"\n fill=\"white\"\n />\n <circle\n cx=\"0\"\n cy=\"0\"\n [attr.r]=\"radius\"\n />\n </mask>\n </defs>\n <g [style.mask]=\"mask\">\n <circle\n cx=\"0\"\n cy=\"0\"\n r=\"100\"\n class=\"t-placeholder\"\n />\n <path\n *tuiRepeatTimes=\"let index of segments.length\"\n fill=\"currentColor\"\n automation-id=\"tui-pie-chart__segment\"\n tuiHintMode=\"onDark\"\n tuiHintDirection=\"top-right\"\n d=\"\"\n class=\"t-segment\"\n [attr.transform]=\"getTransform(index)\"\n [style.color]=\"getColor(index)\"\n [tuiPieChart]=\"segments[index]\"\n [tuiPointerHint]=\"getHint(hint)\"\n (tuiHoveredChange)=\"onHovered($event, index)\"\n >\n <ng-template #hint>\n <ng-container\n [ngTemplateOutlet]=\"template\"\n [ngTemplateOutletContext]=\"{$implicit: index}\"\n ></ng-container>\n </ng-template>\n </path>\n </g>\n</svg>\n<ng-template\n #template\n let-index\n>\n <div\n polymorpheus-outlet\n class=\"t-text\"\n [content]=\"hintContent\"\n [context]=\"{$implicit: index}\"\n ></div>\n</ng-template>\n",
158
158
  changeDetection: ChangeDetectionStrategy.OnPush,
159
159
  styles: [":host{position:relative;display:block}:host[data-size=xs]{width:2rem;height:2rem;pointer-events:none}:host[data-size='s']{width:4rem;height:4rem}:host[data-size='m']{width:9rem;height:9rem}:host[data-size='l']{width:11rem;height:11rem}:host[data-size=xl]{width:16rem;height:16rem}.t-svg{position:relative;overflow:visible;transform:rotate(-90deg)}.t-segment{transition-property:transform;transition-duration:var(--tui-duration,300ms);transition-timing-function:ease-in-out}:host._empty .t-segment{display:none}.t-placeholder{fill:var(--tui-base-03)}.t-text{white-space:pre-wrap}"]
@@ -165,4 +165,4 @@ var TuiPieChartComponent = /** @class */ (function () {
165
165
  return TuiPieChartComponent;
166
166
  }());
167
167
  export { TuiPieChartComponent };
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTNFLE9BQU8sRUFDSCxHQUFHLEVBQ0gsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxZQUFZLEVBQ1osT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUM7QUFHbkUsSUFBTSxLQUFLLEdBQUc7SUFDVixFQUFFLEVBQUUsSUFBSTtJQUNSLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLE1BQU07SUFDVCxDQUFDLEVBQUUsTUFBTTtJQUNULEVBQUUsRUFBRSxNQUFNO0NBQ2IsQ0FBQztBQUNGLElBQU0sU0FBUyxHQUFHO0lBQ2QsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLElBQUk7SUFDUCxFQUFFLEVBQUUsSUFBSTtDQUNYLENBQUM7QUFFRiw0REFBNEQ7QUFPNUQ7SUErQkksOEJBQzBCLFNBQXVCLEVBQ1YsV0FBcUIsRUFDakIsU0FBdUI7UUFEM0IsZ0JBQVcsR0FBWCxXQUFXLENBQVU7UUFDakIsY0FB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REFDcUQ7SUFJdEU7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7d0RBQ0Y7SUFJZjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTtpRUFDSztJQUd0QjtRQURDLE1BQU0sRUFBRTt1RUFDMEM7SUFXbkQ7UUFEQyxXQUFXLENBQUMsY0FBYyxDQUFDO3FEQUczQjtJQTZDRDtRQURDLE9BQU87c0RBR1A7SUFHRDtRQURDLE9BQU87MkRBYVA7SUF4R1Esb0JBQW9CO1FBTmhDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxlQUFlO1lBQ3pCLGl4REFBd0M7WUFFeEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O1NBQ2xELENBQUM7UUFpQ08sV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDcEIsV0FBQSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDaEIsV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7T0FsQ2hCLG9CQUFvQixDQXNIaEM7SUFBRCwyQkFBQztDQUFBLEFBdEhELElBc0hDO1NBdEhZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZVZhbHVlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7VFVJX0RFRkFVTFRfQ09MT1JfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlDb2xvckhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvdHlwZXMnO1xuaW1wb3J0IHtcbiAgICBzdW0sXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlJZFNlcnZpY2UsXG4gICAgdHVpUHVyZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge2NvbG9yRmFsbGJhY2ssIFR1aVNpemVYTCwgVHVpU2l6ZVhTfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmNvbnN0IFJBRElJID0ge1xuICAgIHhzOiBgNTBgLFxuICAgIHM6IGA1MGAsXG4gICAgbTogYDc3LjhgLFxuICAgIGw6IGA4MS45YCxcbiAgICB4bDogYDgxLjNgLFxufTtcbmNvbnN0IFRSQU5TRk9STSA9IHtcbiAgICB4czogMS4xNSxcbiAgICBzOiAxLjI1LFxuICAgIG06IDEuMTEsXG4gICAgbDogMS4wOSxcbiAgICB4bDogMS4wOCxcbn07XG5cbi8vIFRPRE86IDMuMCBSZW1vdmUgc2FuaXRpemVyIHdoZW4gQW5ndWxhciB2ZXJzaW9uIGlzIGJ1bXBlZFxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IGB0dWktcGllLWNoYXJ0YCxcbiAgICB0ZW1wbGF0ZVVybDogYC4vcGllLWNoYXJ0LnRlbXBsYXRlLmh0bWxgLFxuICAgIHN0eWxlVXJsczogW2AuL3BpZS1jaGFydC5zdHlsZS5sZXNzYF0sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0Q29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9JZFN0cmluZzogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHZhbHVlOiByZWFkb25seSBudW1iZXJbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoYGF0dHIuZGF0YS1zaXplYClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVYUyB8IFR1aVNpemVYTCA9IGBtYDtcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjb2xvckhhbmRsZXI6IFR1aUNvbG9ySGFuZGxlciA9IFRVSV9ERUZBVUxUX0NPTE9SX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxudW1iZXI+PiA9IGBgO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1hc2tlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleCA9IE5hTjtcblxuICAgIEBPdXRwdXQoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpSWRTZXJ2aWNlKSBpZFNlcnZpY2U6IFR1aUlkU2VydmljZSxcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBJbmplY3QoRG9tU2FuaXRpemVyKSBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICkge1xuICAgICAgICB0aGlzLmF1dG9JZFN0cmluZyA9IGlkU2VydmljZS5nZW5lcmF0ZSgpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZyhgY2xhc3MuX2VtcHR5YClcbiAgICBnZXQgZW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5nZXRTdW0odGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0IG1hc2tJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYHR1aS1yaW5nLWNoYXJ0LSR7dGhpcy5hdXRvSWRTdHJpbmd9YDtcbiAgICB9XG5cbiAgICBnZXQgbWFzaygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWFza2VkXG4gICAgICAgICAgICA/IGB1cmwoJHt0aGlzLmxvY2F0aW9uUmVmLnByZXBhcmVFeHRlcm5hbFVybCh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSl9IyR7XG4gICAgICAgICAgICAgICAgICB0aGlzLm1hc2tJZFxuICAgICAgICAgICAgICB9KWBcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcmFkaXVzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBSQURJSVt0aGlzLnNpemVdO1xuICAgIH1cblxuICAgIGdldCBzZWdtZW50cygpOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2VnbWVudHModGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0VHJhbnNmb3JtKGluZGV4OiBudW1iZXIpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHNjYWxlKCR7VFJBTlNGT1JNW3RoaXMuc2l6ZV19KWBcbiAgICAgICAgICAgIDogYHNjYWxlKCR7VFJBTlNGT1JNLnhzfSlgO1xuXG4gICAgICAgIHJldHVybiBpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXggPyB0cmFuc2Zvcm0gOiBudWxsO1xuICAgIH1cblxuICAgIGdldEhpbnQoaGludDogUG9seW1vcnBoZXVzQ29udGVudCk6IFBvbHltb3JwaGV1c0NvbnRlbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50Q29udGVudCA/IGhpbnQgOiBgYDtcbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbiwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZUl0ZW1JbmRleChob3ZlcmVkID8gaW5kZXggOiBOYU4pO1xuICAgIH1cblxuICAgIGdldENvbG9yKGluZGV4OiBudW1iZXIpOiBTYWZlVmFsdWUge1xuICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFN0eWxlKFxuICAgICAgICAgICAgYHZhcigtLXR1aS1jaGFydC0ke2luZGV4fSwgJHtjb2xvckZhbGxiYWNrKHRoaXMuY29sb3JIYW5kbGVyKGluZGV4KSl9KWAsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldFN1bSh2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10pOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gc3VtKC4uLnZhbHVlKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U2VnbWVudHModmFsdWU6IHJlYWRvbmx5IG51bWJlcltdKTogUmVhZG9ubHlBcnJheTxbbnVtYmVyLCBudW1iZXJdPiB7XG4gICAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgICAgICAgLm1hcCgoaW5pdGlhbCwgaSwgYXJyYXkpID0+XG4gICAgICAgICAgICAgICAgYXJyYXkucmVkdWNlKFxuICAgICAgICAgICAgICAgICAgICAoc3VtLCBjdXJyZW50LCBqKSA9PiAoaiA8IGkgPyB0aGlzLmdldERlZyhjdXJyZW50KSArIHN1bSA6IHN1bSksXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGVnKGluaXRpYWwpLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChhbmdsZSwgaW5kZXgsIGFycmF5KSA9PiBbXG4gICAgICAgICAgICAgICAgYXJyYXlbaW5kZXggLSAxXSB8fCAwLFxuICAgICAgICAgICAgICAgIE1hdGgubWluKGFuZ2xlLCAzNTkuOTk5OSksXG4gICAgICAgICAgICBdKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERlZyh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIDM2MCAqICh2YWx1ZSAvIHRoaXMuZ2V0U3VtKHRoaXMudmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUFjdGl2ZUl0ZW1JbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmIChpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4ID0gaW5kZXg7XG4gICAgICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4Q2hhbmdlLm5leHQoaW5kZXgpO1xuICAgIH1cbn1cbiJdfQ==
168
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFBQyx5QkFBeUIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBRTNFLE9BQU8sRUFDSCxHQUFHLEVBQ0gsc0JBQXNCLEVBQ3RCLGNBQWMsRUFDZCxZQUFZLEVBQ1osT0FBTyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUM7QUFHbkUsSUFBTSxLQUFLLEdBQUc7SUFDVixFQUFFLEVBQUUsSUFBSTtJQUNSLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLE1BQU07SUFDVCxDQUFDLEVBQUUsTUFBTTtJQUNULEVBQUUsRUFBRSxNQUFNO0NBQ2IsQ0FBQztBQUNGLElBQU0sU0FBUyxHQUFHO0lBQ2QsRUFBRSxFQUFFLElBQUk7SUFDUixDQUFDLEVBQUUsSUFBSTtJQUNQLENBQUMsRUFBRSxJQUFJO0lBQ1AsQ0FBQyxFQUFFLElBQUk7SUFDUCxFQUFFLEVBQUUsSUFBSTtDQUNYLENBQUM7QUFFRiw0REFBNEQ7QUFPNUQ7SUErQkksOEJBQzBCLFNBQXVCLEVBQ1YsV0FBcUIsRUFDakIsU0FBdUI7UUFEM0IsZ0JBQVcsR0FBWCxXQUFXLENBQVU7UUFDakIsY0FB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REFDcUQ7SUFJdEU7UUFGQyxLQUFLLEVBQUU7UUFDUCxjQUFjLEVBQUU7d0RBQ0Y7SUFJZjtRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTtpRUFDSztJQUd0QjtRQURDLE1BQU0sRUFBRTt1RUFDMEM7SUFXbkQ7UUFEQyxXQUFXLENBQUMsY0FBYyxDQUFDO3FEQUczQjtJQTZDRDtRQURDLE9BQU87c0RBR1A7SUFHRDtRQURDLE9BQU87MkRBYVA7SUF4R1Esb0JBQW9CO1FBTmhDLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxlQUFlO1lBQ3pCLGl4REFBd0M7WUFFeEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O1NBQ2xELENBQUM7UUFpQ08sV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDcEIsV0FBQSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDaEIsV0FBQSxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUE7T0FsQ2hCLG9CQUFvQixDQXNIaEM7SUFBRCwyQkFBQztDQUFBLEFBdEhELElBc0hDO1NBdEhZLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TG9jYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RvbVNhbml0aXplciwgU2FmZVZhbHVlfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7VFVJX0RFRkFVTFRfQ09MT1JfSEFORExFUn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlDb2xvckhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9hZGRvbi1jaGFydHMvdHlwZXMnO1xuaW1wb3J0IHtcbiAgICBzdW0sXG4gICAgVHVpQ29udGV4dFdpdGhJbXBsaWNpdCxcbiAgICB0dWlEZWZhdWx0UHJvcCxcbiAgICBUdWlJZFNlcnZpY2UsXG4gICAgdHVpUHVyZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge2NvbG9yRmFsbGJhY2ssIFR1aVNpemVYTCwgVHVpU2l6ZVhTfSBmcm9tICdAdGFpZ2EtdWkvY29yZSc7XG5pbXBvcnQge1BvbHltb3JwaGV1c0NvbnRlbnR9IGZyb20gJ0B0aW5rb2ZmL25nLXBvbHltb3JwaGV1cyc7XG5cbmNvbnN0IFJBRElJID0ge1xuICAgIHhzOiAnNTAnLFxuICAgIHM6ICc1MCcsXG4gICAgbTogJzc3LjgnLFxuICAgIGw6ICc4MS45JyxcbiAgICB4bDogJzgxLjMnLFxufTtcbmNvbnN0IFRSQU5TRk9STSA9IHtcbiAgICB4czogMS4xNSxcbiAgICBzOiAxLjI1LFxuICAgIG06IDEuMTEsXG4gICAgbDogMS4wOSxcbiAgICB4bDogMS4wOCxcbn07XG5cbi8vIFRPRE86IDMuMCBSZW1vdmUgc2FuaXRpemVyIHdoZW4gQW5ndWxhciB2ZXJzaW9uIGlzIGJ1bXBlZFxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0dWktcGllLWNoYXJ0JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcGllLWNoYXJ0LnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3BpZS1jaGFydC5zdHlsZS5sZXNzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0Q29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGF1dG9JZFN0cmluZzogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHZhbHVlOiByZWFkb25seSBudW1iZXJbXSA9IFtdO1xuXG4gICAgQElucHV0KClcbiAgICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIHNpemU6IFR1aVNpemVYTCB8IFR1aVNpemVYUyA9ICdtJztcblxuICAgIEBJbnB1dCgpXG4gICAgQHR1aURlZmF1bHRQcm9wKClcbiAgICBjb2xvckhhbmRsZXI6IFR1aUNvbG9ySGFuZGxlciA9IFRVSV9ERUZBVUxUX0NPTE9SX0hBTkRMRVI7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgaGludENvbnRlbnQ6IFBvbHltb3JwaGV1c0NvbnRlbnQ8VHVpQ29udGV4dFdpdGhJbXBsaWNpdDxudW1iZXI+PiA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIG1hc2tlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KClcbiAgICBAdHVpRGVmYXVsdFByb3AoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleCA9IE5hTjtcblxuICAgIEBPdXRwdXQoKVxuICAgIGFjdGl2ZUl0ZW1JbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoVHVpSWRTZXJ2aWNlKSBpZFNlcnZpY2U6IFR1aUlkU2VydmljZSxcbiAgICAgICAgQEluamVjdChMb2NhdGlvbikgcHJpdmF0ZSByZWFkb25seSBsb2NhdGlvblJlZjogTG9jYXRpb24sXG4gICAgICAgIEBJbmplY3QoRG9tU2FuaXRpemVyKSBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICkge1xuICAgICAgICB0aGlzLmF1dG9JZFN0cmluZyA9IGlkU2VydmljZS5nZW5lcmF0ZSgpO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuX2VtcHR5JylcbiAgICBnZXQgZW1wdHkoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhdGhpcy5nZXRTdW0odGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0IG1hc2tJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gYHR1aS1yaW5nLWNoYXJ0LSR7dGhpcy5hdXRvSWRTdHJpbmd9YDtcbiAgICB9XG5cbiAgICBnZXQgbWFzaygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWFza2VkXG4gICAgICAgICAgICA/IGB1cmwoJHt0aGlzLmxvY2F0aW9uUmVmLnByZXBhcmVFeHRlcm5hbFVybCh0aGlzLmxvY2F0aW9uUmVmLnBhdGgoKSl9IyR7XG4gICAgICAgICAgICAgICAgICB0aGlzLm1hc2tJZFxuICAgICAgICAgICAgICB9KWBcbiAgICAgICAgICAgIDogbnVsbDtcbiAgICB9XG5cbiAgICBnZXQgcmFkaXVzKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBSQURJSVt0aGlzLnNpemVdO1xuICAgIH1cblxuICAgIGdldCBzZWdtZW50cygpOiBSZWFkb25seUFycmF5PFtudW1iZXIsIG51bWJlcl0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2VnbWVudHModGhpcy52YWx1ZSk7XG4gICAgfVxuXG4gICAgZ2V0VHJhbnNmb3JtKGluZGV4OiBudW1iZXIpOiBzdHJpbmcgfCBudWxsIHtcbiAgICAgICAgY29uc3QgdHJhbnNmb3JtID0gdGhpcy5tYXNrZWRcbiAgICAgICAgICAgID8gYHNjYWxlKCR7VFJBTlNGT1JNW3RoaXMuc2l6ZV19KWBcbiAgICAgICAgICAgIDogYHNjYWxlKCR7VFJBTlNGT1JNLnhzfSlgO1xuXG4gICAgICAgIHJldHVybiBpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXggPyB0cmFuc2Zvcm0gOiBudWxsO1xuICAgIH1cblxuICAgIGdldEhpbnQoaGludDogUG9seW1vcnBoZXVzQ29udGVudCk6IFBvbHltb3JwaGV1c0NvbnRlbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50Q29udGVudCA/IGhpbnQgOiAnJztcbiAgICB9XG5cbiAgICBvbkhvdmVyZWQoaG92ZXJlZDogYm9vbGVhbiwgaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUFjdGl2ZUl0ZW1JbmRleChob3ZlcmVkID8gaW5kZXggOiBOYU4pO1xuICAgIH1cblxuICAgIGdldENvbG9yKGluZGV4OiBudW1iZXIpOiBTYWZlVmFsdWUge1xuICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFN0eWxlKFxuICAgICAgICAgICAgYHZhcigtLXR1aS1jaGFydC0ke2luZGV4fSwgJHtjb2xvckZhbGxiYWNrKHRoaXMuY29sb3JIYW5kbGVyKGluZGV4KSl9KWAsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgQHR1aVB1cmVcbiAgICBwcml2YXRlIGdldFN1bSh2YWx1ZTogcmVhZG9ubHkgbnVtYmVyW10pOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gc3VtKC4uLnZhbHVlKTtcbiAgICB9XG5cbiAgICBAdHVpUHVyZVxuICAgIHByaXZhdGUgZ2V0U2VnbWVudHModmFsdWU6IHJlYWRvbmx5IG51bWJlcltdKTogUmVhZG9ubHlBcnJheTxbbnVtYmVyLCBudW1iZXJdPiB7XG4gICAgICAgIHJldHVybiB2YWx1ZVxuICAgICAgICAgICAgLm1hcCgoaW5pdGlhbCwgaSwgYXJyYXkpID0+XG4gICAgICAgICAgICAgICAgYXJyYXkucmVkdWNlKFxuICAgICAgICAgICAgICAgICAgICAoc3VtLCBjdXJyZW50LCBqKSA9PiAoaiA8IGkgPyB0aGlzLmdldERlZyhjdXJyZW50KSArIHN1bSA6IHN1bSksXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0RGVnKGluaXRpYWwpLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKChhbmdsZSwgaW5kZXgsIGFycmF5KSA9PiBbXG4gICAgICAgICAgICAgICAgYXJyYXlbaW5kZXggLSAxXSB8fCAwLFxuICAgICAgICAgICAgICAgIE1hdGgubWluKGFuZ2xlLCAzNTkuOTk5OSksXG4gICAgICAgICAgICBdKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldERlZyh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIDM2MCAqICh2YWx1ZSAvIHRoaXMuZ2V0U3VtKHRoaXMudmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZUFjdGl2ZUl0ZW1JbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGlmIChpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4ID0gaW5kZXg7XG4gICAgICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4Q2hhbmdlLm5leHQoaW5kZXgpO1xuICAgIH1cbn1cbiJdfQ==
@@ -26,7 +26,7 @@ var TuiPieChartDirective = /** @class */ (function () {
26
26
  }), tuiZonefree(ngZone), takeUntil(destroy$))
27
27
  .subscribe(function (_a) {
28
28
  var _b = __read(_a, 2), start = _b[0], end = _b[1];
29
- nativeElement.setAttribute("d", describeSector(start, end));
29
+ nativeElement.setAttribute('d', describeSector(start, end));
30
30
  });
31
31
  }
32
32
  Object.defineProperty(TuiPieChartDirective.prototype, "tuiPieChart", {
@@ -50,7 +50,7 @@ var TuiPieChartDirective = /** @class */ (function () {
50
50
  ], TuiPieChartDirective.prototype, "tuiPieChart", null);
51
51
  TuiPieChartDirective = __decorate([
52
52
  Directive({
53
- selector: "path[tuiPieChart]",
53
+ selector: 'path[tuiPieChart]',
54
54
  providers: [TuiDestroyService],
55
55
  }),
56
56
  __param(0, Inject(ElementRef)),
@@ -63,4 +63,4 @@ var TuiPieChartDirective = /** @class */ (function () {
63
63
  return TuiPieChartDirective;
64
64
  }());
65
65
  export { TuiPieChartDirective };
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUMsZUFBZSxFQUFFLFdBQVcsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsS0FBSyxFQUNMLGFBQWEsRUFDYixjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLFdBQVcsR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFFLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTlFLFdBQVc7QUFLWDtJQVNJLDhCQUN3QixFQUEyQyxFQUMvQyxNQUFjLEVBQ0gsUUFBNkIsRUFDbkMsV0FBd0IsRUFDcEIsZUFBbUMsRUFDM0IsUUFBZ0I7WUFMNUIsZ0NBQWE7UUFUckIsWUFBTyxHQUFHLElBQUksZUFBZSxDQUE0QixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBZ0I5RSxJQUFJLENBQUMsT0FBTzthQUNQLElBQUksQ0FDRCxRQUFRLEVBQUUsRUFDVixTQUFTLENBQUMsVUFBQyxFQUFXO2dCQUFYLGtCQUFXLEVBQVYsWUFBSSxFQUFFLFdBQUc7WUFDakIsSUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzlCLElBQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEMsSUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVsQyxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQ3ZCLEdBQUcsQ0FBQyxVQUFBLFNBQVM7Z0JBQ1QsT0FBQSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxHQUFHLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFBeEQsQ0FBd0QsQ0FDM0QsRUFDRCxTQUFTLENBQUMsVUFBQSxRQUFRLElBQUksT0FBQSxRQUFRLEdBQUcsQ0FBQyxFQUFaLENBQVksRUFBRSxJQUFJLENBQUMsRUFDekMsR0FBRyxDQUFDLFVBQUEsUUFBUSxJQUFJLE9BQUE7Z0JBQ1osSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxRQUFRO2dCQUMvQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsUUFBUTthQUN4RCxFQUhlLENBR2YsQ0FBQyxDQUNMLENBQUM7UUFDTixDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsTUFBTSxDQUFDLEVBQ25CLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDdEI7YUFDQSxTQUFTLENBQUMsVUFBQyxFQUFZO2dCQUFaLGtCQUFZLEVBQVgsYUFBSyxFQUFFLFdBQUc7WUFDbkIsYUFBYSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQXJDRCxzQkFBSSw2Q0FBVzthQUFmLFVBQWdCLE1BQWlDO1lBQzdDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLENBQUM7OztPQUFBOztnQkFHd0MsVUFBVSx1QkFBOUMsTUFBTSxTQUFDLFVBQVU7Z0JBQ00sTUFBTSx1QkFBN0IsTUFBTSxTQUFDLE1BQU07Z0JBQ3VCLFVBQVUsdUJBQTlDLE1BQU0sU0FBQyxpQkFBaUI7Z0JBQ1MsV0FBVyx1QkFBNUMsTUFBTSxTQUFDLFdBQVc7Z0JBQ3VCLFVBQVUsdUJBQW5ELE1BQU0sU0FBQyxlQUFlOzZDQUN0QixNQUFNLFNBQUMsdUJBQXVCOztJQVZuQztRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTsyREFHaEI7SUFQUSxvQkFBb0I7UUFKaEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztTQUNqQyxDQUFDO1FBV08sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQ3pCLFdBQUEsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ25CLFdBQUEsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFBO1FBQ3ZCLFdBQUEsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7T0FmM0Isb0JBQW9CLENBMkNoQztJQUFELDJCQUFDO0NBQUEsQUEzQ0QsSUEyQ0M7U0EzQ1ksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE5nWm9uZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgUEVSRk9STUFOQ0V9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtkZXNjcmliZVNlY3Rvcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy91dGlscyc7XG5pbXBvcnQge1xuICAgIGNsYW1wLFxuICAgIGVhc2VJbk91dFF1YWQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OU19EVVJBVElPTn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHBhaXJ3aXNlLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFrZVdoaWxlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8vIEBkeW5hbWljXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogYHBhdGhbdHVpUGllQ2hhcnRdYCxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0RGlyZWN0aXZlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlY3RvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0+KFswLCAwXSk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IHR1aVBpZUNoYXJ0KHNlY3RvcjogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSkge1xuICAgICAgICB0aGlzLnNlY3RvciQubmV4dChzZWN0b3IpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHtuYXRpdmVFbGVtZW50fTogRWxlbWVudFJlZjxTVkdQYXRoRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoUEVSRk9STUFOQ0UpIHBlcmZvcm1hbmNlOiBQZXJmb3JtYW5jZSxcbiAgICAgICAgQEluamVjdChBTklNQVRJT05fRlJBTUUpIGFuaW1hdGlvbkZyYW1lJDogT2JzZXJ2YWJsZTxudW1iZXI+LFxuICAgICAgICBASW5qZWN0KFRVSV9BTklNQVRJT05TX0RVUkFUSU9OKSBkdXJhdGlvbjogbnVtYmVyLFxuICAgICkge1xuICAgICAgICB0aGlzLnNlY3RvciRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChbcHJldiwgY3VyXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBub3cgPSBwZXJmb3JtYW5jZS5ub3coKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnREZWx0YSA9IGN1clswXSAtIHByZXZbMF07XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZERlbHRhID0gY3VyWzFdIC0gcHJldlsxXTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAodGltZXN0YW1wID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZUluT3V0UXVhZChjbGFtcCgodGltZXN0YW1wIC0gbm93KSAvIGR1cmF0aW9uLCAwLCAxKSksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVdoaWxlKHByb2dyZXNzID0+IHByb2dyZXNzIDwgMSwgdHJ1ZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAocHJvZ3Jlc3MgPT4gW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZbMF0gKyBzdGFydERlbHRhICogcHJvZ3Jlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VyWzFdID4gMzU5ID8gY3VyWzFdIDogcHJldlsxXSArIGVuZERlbHRhICogcHJvZ3Jlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB0dWlab25lZnJlZShuZ1pvbmUpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChkZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbc3RhcnQsIGVuZF0pID0+IHtcbiAgICAgICAgICAgICAgICBuYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZShgZGAsIGRlc2NyaWJlU2VjdG9yKHN0YXJ0LCBlbmQpKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGllLWNoYXJ0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B0YWlnYS11aS9hZGRvbi1jaGFydHMvY29tcG9uZW50cy9waWUtY2hhcnQvIiwic291cmNlcyI6WyJwaWUtY2hhcnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUMsZUFBZSxFQUFFLFdBQVcsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ2pFLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsS0FBSyxFQUNMLGFBQWEsRUFDYixjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLFdBQVcsR0FDZCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFFLFVBQVUsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUMsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTlFLFdBQVc7QUFLWDtJQVNJLDhCQUN3QixFQUEyQyxFQUMvQyxNQUFjLEVBQ0gsUUFBNkIsRUFDbkMsV0FBd0IsRUFDcEIsZUFBbUMsRUFDM0IsUUFBZ0I7WUFMNUIsZ0NBQWE7UUFUckIsWUFBTyxHQUFHLElBQUksZUFBZSxDQUE0QixDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBZ0I5RSxJQUFJLENBQUMsT0FBTzthQUNQLElBQUksQ0FDRCxRQUFRLEVBQUUsRUFDVixTQUFTLENBQUMsVUFBQyxFQUFXO2dCQUFYLGtCQUFXLEVBQVYsWUFBSSxFQUFFLFdBQUc7WUFDakIsSUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQzlCLElBQU0sVUFBVSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEMsSUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUVsQyxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQ3ZCLEdBQUcsQ0FBQyxVQUFBLFNBQVM7Z0JBQ1QsT0FBQSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxHQUFHLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFBeEQsQ0FBd0QsQ0FDM0QsRUFDRCxTQUFTLENBQUMsVUFBQSxRQUFRLElBQUksT0FBQSxRQUFRLEdBQUcsQ0FBQyxFQUFaLENBQVksRUFBRSxJQUFJLENBQUMsRUFDekMsR0FBRyxDQUFDLFVBQUEsUUFBUSxJQUFJLE9BQUE7Z0JBQ1osSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVUsR0FBRyxRQUFRO2dCQUMvQixHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsUUFBUTthQUN4RCxFQUhlLENBR2YsQ0FBQyxDQUNMLENBQUM7UUFDTixDQUFDLENBQUMsRUFDRixXQUFXLENBQUMsTUFBTSxDQUFDLEVBQ25CLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FDdEI7YUFDQSxTQUFTLENBQUMsVUFBQyxFQUFZO2dCQUFaLGtCQUFZLEVBQVgsYUFBSyxFQUFFLFdBQUc7WUFDbkIsYUFBYSxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2hFLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQXJDRCxzQkFBSSw2Q0FBVzthQUFmLFVBQWdCLE1BQWlDO1lBQzdDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLENBQUM7OztPQUFBOztnQkFHd0MsVUFBVSx1QkFBOUMsTUFBTSxTQUFDLFVBQVU7Z0JBQ00sTUFBTSx1QkFBN0IsTUFBTSxTQUFDLE1BQU07Z0JBQ3VCLFVBQVUsdUJBQTlDLE1BQU0sU0FBQyxpQkFBaUI7Z0JBQ1MsV0FBVyx1QkFBNUMsTUFBTSxTQUFDLFdBQVc7Z0JBQ3VCLFVBQVUsdUJBQW5ELE1BQU0sU0FBQyxlQUFlOzZDQUN0QixNQUFNLFNBQUMsdUJBQXVCOztJQVZuQztRQUZDLEtBQUssRUFBRTtRQUNQLGNBQWMsRUFBRTsyREFHaEI7SUFQUSxvQkFBb0I7UUFKaEMsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixTQUFTLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztTQUNqQyxDQUFDO1FBV08sV0FBQSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDbEIsV0FBQSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDZCxXQUFBLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQ3pCLFdBQUEsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ25CLFdBQUEsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFBO1FBQ3ZCLFdBQUEsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7T0FmM0Isb0JBQW9CLENBMkNoQztJQUFELDJCQUFDO0NBQUEsQUEzQ0QsSUEyQ0M7U0EzQ1ksb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE5nWm9uZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0FOSU1BVElPTl9GUkFNRSwgUEVSRk9STUFOQ0V9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHtkZXNjcmliZVNlY3Rvcn0gZnJvbSAnQHRhaWdhLXVpL2FkZG9uLWNoYXJ0cy91dGlscyc7XG5pbXBvcnQge1xuICAgIGNsYW1wLFxuICAgIGVhc2VJbk91dFF1YWQsXG4gICAgdHVpRGVmYXVsdFByb3AsXG4gICAgVHVpRGVzdHJveVNlcnZpY2UsXG4gICAgdHVpWm9uZWZyZWUsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfQU5JTUFUSU9OU19EVVJBVElPTn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXAsIHBhaXJ3aXNlLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFrZVdoaWxlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbi8vIEBkeW5hbWljXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ3BhdGhbdHVpUGllQ2hhcnRdJyxcbiAgICBwcm92aWRlcnM6IFtUdWlEZXN0cm95U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aVBpZUNoYXJ0RGlyZWN0aXZlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlY3RvciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0+KFswLCAwXSk7XG5cbiAgICBASW5wdXQoKVxuICAgIEB0dWlEZWZhdWx0UHJvcCgpXG4gICAgc2V0IHR1aVBpZUNoYXJ0KHNlY3RvcjogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSkge1xuICAgICAgICB0aGlzLnNlY3RvciQubmV4dChzZWN0b3IpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KEVsZW1lbnRSZWYpIHtuYXRpdmVFbGVtZW50fTogRWxlbWVudFJlZjxTVkdQYXRoRWxlbWVudD4sXG4gICAgICAgIEBJbmplY3QoTmdab25lKSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgQEluamVjdChUdWlEZXN0cm95U2VydmljZSkgZGVzdHJveSQ6IE9ic2VydmFibGU8dW5rbm93bj4sXG4gICAgICAgIEBJbmplY3QoUEVSRk9STUFOQ0UpIHBlcmZvcm1hbmNlOiBQZXJmb3JtYW5jZSxcbiAgICAgICAgQEluamVjdChBTklNQVRJT05fRlJBTUUpIGFuaW1hdGlvbkZyYW1lJDogT2JzZXJ2YWJsZTxudW1iZXI+LFxuICAgICAgICBASW5qZWN0KFRVSV9BTklNQVRJT05TX0RVUkFUSU9OKSBkdXJhdGlvbjogbnVtYmVyLFxuICAgICkge1xuICAgICAgICB0aGlzLnNlY3RvciRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKChbcHJldiwgY3VyXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBub3cgPSBwZXJmb3JtYW5jZS5ub3coKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RhcnREZWx0YSA9IGN1clswXSAtIHByZXZbMF07XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGVuZERlbHRhID0gY3VyWzFdIC0gcHJldlsxXTtcblxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYW5pbWF0aW9uRnJhbWUkLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAodGltZXN0YW1wID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZWFzZUluT3V0UXVhZChjbGFtcCgodGltZXN0YW1wIC0gbm93KSAvIGR1cmF0aW9uLCAwLCAxKSksXG4gICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVdoaWxlKHByb2dyZXNzID0+IHByb2dyZXNzIDwgMSwgdHJ1ZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXAocHJvZ3Jlc3MgPT4gW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByZXZbMF0gKyBzdGFydERlbHRhICogcHJvZ3Jlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VyWzFdID4gMzU5ID8gY3VyWzFdIDogcHJldlsxXSArIGVuZERlbHRhICogcHJvZ3Jlc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB0dWlab25lZnJlZShuZ1pvbmUpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbChkZXN0cm95JCksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChbc3RhcnQsIGVuZF0pID0+IHtcbiAgICAgICAgICAgICAgICBuYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnZCcsIGRlc2NyaWJlU2VjdG9yKHN0YXJ0LCBlbmQpKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==