@taiga-ui/kit 4.49.0 → 4.50.0-canary.40b0ab8

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 (59) hide show
  1. package/components/files/input-files/input-files.directive.d.ts +2 -3
  2. package/components/files/input-files/input-files.options.d.ts +2 -1
  3. package/components/input-number/input-number.directive.d.ts +9 -6
  4. package/esm2022/components/avatar/avatar-stack.component.mjs +2 -2
  5. package/esm2022/components/avatar/avatar.component.mjs +3 -3
  6. package/esm2022/components/combo-box/combo-box.directive.mjs +2 -2
  7. package/esm2022/components/confirm/confirm.component.mjs +4 -3
  8. package/esm2022/components/files/file/file.component.mjs +3 -3
  9. package/esm2022/components/files/input-files/input-files.component.mjs +5 -5
  10. package/esm2022/components/files/input-files/input-files.directive.mjs +6 -5
  11. package/esm2022/components/files/input-files/input-files.options.mjs +2 -1
  12. package/esm2022/components/input-date/input-date.directive.mjs +4 -3
  13. package/esm2022/components/input-date-time/input-date-time.directive.mjs +3 -3
  14. package/esm2022/components/input-number/input-number.directive.mjs +47 -44
  15. package/esm2022/components/input-phone-international/input-phone-international.component.mjs +8 -6
  16. package/esm2022/components/input-time/input-time.directive.mjs +3 -3
  17. package/esm2022/components/line-clamp/line-clamp.component.mjs +2 -2
  18. package/esm2022/components/pin/pin.directive.mjs +2 -2
  19. package/esm2022/components/preview/preview.component.mjs +2 -2
  20. package/esm2022/components/preview/zoom/preview-zoom.component.mjs +2 -2
  21. package/esm2022/components/rating/rating.component.mjs +3 -3
  22. package/esm2022/components/slider/slider.component.mjs +2 -2
  23. package/esm2022/components/switch/switch.component.mjs +2 -2
  24. package/esm2022/directives/copy/copy.component.mjs +2 -2
  25. package/fesm2022/taiga-ui-kit-components-avatar.mjs +4 -4
  26. package/fesm2022/taiga-ui-kit-components-avatar.mjs.map +1 -1
  27. package/fesm2022/taiga-ui-kit-components-combo-box.mjs +1 -1
  28. package/fesm2022/taiga-ui-kit-components-combo-box.mjs.map +1 -1
  29. package/fesm2022/taiga-ui-kit-components-confirm.mjs +3 -2
  30. package/fesm2022/taiga-ui-kit-components-confirm.mjs.map +1 -1
  31. package/fesm2022/taiga-ui-kit-components-files.mjs +11 -10
  32. package/fesm2022/taiga-ui-kit-components-files.mjs.map +1 -1
  33. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs +2 -2
  34. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs.map +1 -1
  35. package/fesm2022/taiga-ui-kit-components-input-date.mjs +3 -2
  36. package/fesm2022/taiga-ui-kit-components-input-date.mjs.map +1 -1
  37. package/fesm2022/taiga-ui-kit-components-input-number.mjs +46 -43
  38. package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
  39. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +7 -5
  40. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  41. package/fesm2022/taiga-ui-kit-components-input-time.mjs +2 -2
  42. package/fesm2022/taiga-ui-kit-components-input-time.mjs.map +1 -1
  43. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +1 -1
  44. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  45. package/fesm2022/taiga-ui-kit-components-pin.mjs +2 -2
  46. package/fesm2022/taiga-ui-kit-components-pin.mjs.map +1 -1
  47. package/fesm2022/taiga-ui-kit-components-preview.mjs +2 -2
  48. package/fesm2022/taiga-ui-kit-components-preview.mjs.map +1 -1
  49. package/fesm2022/taiga-ui-kit-components-rating.mjs +2 -2
  50. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  51. package/fesm2022/taiga-ui-kit-components-slider.mjs +2 -2
  52. package/fesm2022/taiga-ui-kit-components-slider.mjs.map +1 -1
  53. package/fesm2022/taiga-ui-kit-components-switch.mjs +2 -2
  54. package/fesm2022/taiga-ui-kit-components-switch.mjs.map +1 -1
  55. package/fesm2022/taiga-ui-kit-directives-copy.mjs +1 -1
  56. package/fesm2022/taiga-ui-kit-directives-copy.mjs.map +1 -1
  57. package/package.json +4 -4
  58. package/styles/components/pin.less +3 -6
  59. package/styles/components/switch.less +2 -1
@@ -1,5 +1,5 @@
1
1
  import { CommonModule } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, inject, Input, Output, signal, TemplateRef, ViewChild, ViewChildren, } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, inject, Input, Output, signal, TemplateRef, untracked, ViewChild, ViewChildren, } from '@angular/core';
3
3
  import { toObservable, toSignal } from '@angular/core/rxjs-interop';
4
4
  import { FormsModule } from '@angular/forms';
5
5
  import { MaskitoDirective } from '@maskito/angular';
@@ -100,10 +100,12 @@ class TuiInputPhoneInternational extends TuiControl {
100
100
  }
101
101
  writeValue(unmaskedValue) {
102
102
  super.writeValue(unmaskedValue);
103
- const maskOptions = this.mask();
104
- this.textfieldValue = maskOptions
105
- ? maskitoTransform(this.value(), maskOptions)
106
- : this.value(); // it will be calibrated later when mask is ready (by maskitoInitialCalibrationPlugin)
103
+ const mask = untracked(() => this.mask());
104
+ const value = untracked(() => this.value());
105
+ this.textfieldValue = mask
106
+ ? maskitoTransform(value, mask)
107
+ : // it will be calibrated later when mask is ready (by maskitoInitialCalibrationPlugin)
108
+ value;
107
109
  this.cdr.detectChanges();
108
110
  }
109
111
  set template(template) {
@@ -205,4 +207,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
205
207
  type: ViewChild,
206
208
  args: [forwardRef(() => TuiTextfieldDropdownDirective), { read: TemplateRef }]
207
209
  }] } });
208
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsL2lucHV0LXBob25lLWludGVybmF0aW9uYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC9pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxFQUNULFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsWUFBWSxFQUFFLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ2xFLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0gsK0JBQStCLEVBRS9CLGdCQUFnQixHQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMseUJBQXlCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDdkQsT0FBTyxFQUFDLDJCQUEyQixFQUFFLDRCQUE0QixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekYsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsU0FBUyxFQUFFLG1C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QW9CO3NCQURuQyxNQUFNO2dCQU1JLGNBQWM7c0JBRHhCLEtBQUs7dUJBQUMsV0FBVztnQkFNUCxPQUFPO3NCQURqQixLQUFLO3VCQUFDLGdCQUFnQjtnQkFzRFQsUUFBUTtzQkFEckIsU0FBUzt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNkJBQTZCLENBQUMsRUFBRSxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGNvbXB1dGVkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIHR5cGUgUXVlcnlMaXN0LFxuICAgIHNpZ25hbCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0NoaWxkcmVuLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7dG9PYnNlcnZhYmxlLCB0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtGb3Jtc01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXNraXRvRGlyZWN0aXZlfSBmcm9tICdAbWFza2l0by9hbmd1bGFyJztcbmltcG9ydCB7XG4gICAgbWFza2l0b0luaXRpYWxDYWxpYnJhdGlvblBsdWdpbixcbiAgICB0eXBlIE1hc2tpdG9PcHRpb25zLFxuICAgIG1hc2tpdG9UcmFuc2Zvcm0sXG59IGZyb20gJ0BtYXNraXRvL2NvcmUnO1xuaW1wb3J0IHttYXNraXRvUmVtb3ZlT25CbHVyUGx1Z2lufSBmcm9tICdAbWFza2l0by9raXQnO1xuaW1wb3J0IHttYXNraXRvR2V0Q291bnRyeUZyb21OdW1iZXIsIG1hc2tpdG9QaG9uZU9wdGlvbnNHZW5lcmF0b3J9IGZyb20gJ0BtYXNraXRvL3Bob25lJztcbmltcG9ydCB7dHVpQXNDb250cm9sLCBUdWlDb250cm9sfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NsYXNzZXMnO1xuaW1wb3J0IHtDSEFSX1BMVVMsIFRVSV9ERUZBVUxUX01BVENIRVJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvY29uc3RhbnRzJztcbmltcG9ydCB7XG4gICAgVHVpQXV0b0ZvY3VzLFxuICAgIHR1aUF1dG9Gb2N1c09wdGlvbnNQcm92aWRlcixcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL2F1dG8tZm9jdXMnO1xuaW1wb3J0IHtUVUlfSVNfSU9TLCB0dWlGYWxsYmFja1ZhbHVlUHJvdmlkZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsvdG9rZW5zJztcbmltcG9ydCB7dHVpSXNJbnB1dEV2ZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aURpcmVjdGl2ZUJpbmRpbmd9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aURhdGFMaXN0LCBUdWlPcHRpb259IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0JztcbmltcG9ydCB7XG4gICAgVFVJX1RFWFRGSUVMRF9PUFRJT05TLFxuICAgIFR1aVRleHRmaWVsZCxcbiAgICBUdWlUZXh0ZmllbGREcm9wZG93bkRpcmVjdGl2ZSxcbiAgICB0dWlUZXh0ZmllbGRPcHRpb25zUHJvdmlkZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvdGV4dGZpZWxkJztcbmltcG9ydCB7XG4gICAgdHVpRHJvcGRvd24sXG4gICAgVHVpRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgVHVpRHJvcGRvd25PcGVuLFxuICAgIHR1aURyb3Bkb3duT3BlbixcbiAgICB0dWlEcm9wZG93bk9wdGlvbnNQcm92aWRlcixcbiAgICBUdWlXaXRoRHJvcGRvd25PcGVuLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2Ryb3Bkb3duJztcbmltcG9ydCB7VHVpR3JvdXB9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZ3JvdXAnO1xuaW1wb3J0IHtUdWlGbGFnUGlwZX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvcGlwZXMvZmxhZyc7XG5pbXBvcnQge1RVSV9DT01NT05fSUNPTlN9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3Rva2Vucyc7XG5pbXBvcnQge3R1aUlzRWRpdGluZ0tleX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge3R5cGUgVHVpQ291bnRyeUlzb0NvZGV9IGZyb20gJ0B0YWlnYS11aS9pMThuL3R5cGVzJztcbmltcG9ydCB7VHVpQ2hldnJvbn0gZnJvbSAnQHRhaWdhLXVpL2tpdC9kaXJlY3RpdmVzJztcbmltcG9ydCB7VFVJX0NPVU5UUklFUywgVFVJX0lOVEVSTkFUSU9OQUxfU0VBUkNIfSBmcm9tICdAdGFpZ2EtdWkva2l0L3Rva2Vucyc7XG5pbXBvcnQge3R1aUdldENhbGxpbmdDb2RlfSBmcm9tICdAdGFpZ2EtdWkva2l0L3V0aWxzJztcbmltcG9ydCB7dHlwZSBQb2x5bW9ycGhldXNDb250ZW50fSBmcm9tICdAdGFpZ2EtdWkvcG9seW1vcnBoZXVzJztcbmltcG9ydCB7dmFsaWRhdGVQaG9uZU51bWJlckxlbmd0aH0gZnJvbSAnbGlicGhvbmVudW1iZXItanMnO1xuaW1wb3J0IHtnZXRDb3VudHJ5Q2FsbGluZ0NvZGUsIHR5cGUgTWV0YWRhdGFKc29ufSBmcm9tICdsaWJwaG9uZW51bWJlci1qcy9jb3JlJztcbmltcG9ydCB7ZnJvbSwgc2tpcH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1BIT05FX0lOVEVSTkFUSU9OQUxfT1BUSU9OU30gZnJvbSAnLi9pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsLm9wdGlvbnMnO1xuXG5jb25zdCBOT1RfRk9STV9DT05UUk9MX1NZTUJPTFMgPSAvW14rXFxkXS9nO1xuXG4vKiogQGRlcHJlY2F0ZWQgdXNlIHZlcnNpb24gZnJvbSBleHBlcmltZW50YWwgcGFja2FnZSBpbnN0ZWFkICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWlucHV0LXBob25lLWludGVybmF0aW9uYWwnLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgTWFza2l0b0RpcmVjdGl2ZSxcbiAgICAgICAgVHVpQXV0b0ZvY3VzLFxuICAgICAgICBUdWlDaGV2cm9uLFxuICAgICAgICBUdWlEYXRhTGlzdCxcbiAgICAgICAgVHVpRmxhZ1BpcGUsXG4gICAgICAgIFR1aVRleHRmaWVsZCxcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsLnRlbXBsYXRlLmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2lucHV0LXBob25lLWludGVybmF0aW9uYWwuc3R5bGUubGVzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB0dWlBc0NvbnRyb2woVHVpSW5wdXRQaG9uZUludGVybmF0aW9uYWwpLFxuICAgICAgICB0dWlGYWxsYmFja1ZhbHVlUHJvdmlkZXIoJycpLFxuICAgICAgICB0dWlBdXRvRm9jdXNPcHRpb25zUHJvdmlkZXIoe3ByZXZlbnRTY3JvbGw6IHRydWV9KSxcbiAgICAgICAgdHVpVGV4dGZpZWxkT3B0aW9uc1Byb3ZpZGVyKHtjbGVhbmVyOiBzaWduYWwoZmFsc2UpfSksXG4gICAgICAgIHR1aURyb3Bkb3duT3B0aW9uc1Byb3ZpZGVyKHtcbiAgICAgICAgICAgIGxpbWl0V2lkdGg6ICdmaXhlZCcsXG4gICAgICAgICAgICBhbGlnbjogJ3JpZ2h0JyxcbiAgICAgICAgfSksXG4gICAgXSxcbiAgICBob3N0RGlyZWN0aXZlczogW1R1aUdyb3VwLCBUdWlEcm9wZG93bkRpcmVjdGl2ZSwgVHVpV2l0aERyb3Bkb3duT3Blbl0sXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zaXplXSc6ICdzaXplKCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUlucHV0UGhvbmVJbnRlcm5hdGlvbmFsIGV4dGVuZHMgVHVpQ29udHJvbDxzdHJpbmc+IHtcbiAgICBAVmlld0NoaWxkKE1hc2tpdG9EaXJlY3RpdmUsIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlucHV0PzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGQoVHVpQXV0b0ZvY3VzLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBmaWx0ZXI/OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+O1xuXG4gICAgQFZpZXdDaGlsZHJlbihUdWlPcHRpb24sIHtyZWFkOiBFbGVtZW50UmVmfSlcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RPcHRpb25zPzogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQ+PjtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0lvcyA9IGluamVjdChUVUlfSVNfSU9TKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZHJvcGRvd24gPSB0dWlEcm9wZG93bihudWxsKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb3B0aW9ucyA9IGluamVjdChUVUlfSU5QVVRfUEhPTkVfSU5URVJOQVRJT05BTF9PUFRJT05TKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2l6ZSA9IGluamVjdChUVUlfVEVYVEZJRUxEX09QVElPTlMpLnNpemU7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wZW4gPSB0dWlEcm9wZG93bk9wZW4oKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbmFtZXMgPSB0b1NpZ25hbChpbmplY3QoVFVJX0NPVU5UUklFUykpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBtZXRhZGF0YSA9IHRvU2lnbmFsKGZyb20odGhpcy5vcHRpb25zLm1ldGFkYXRhKSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvdW50cmllcyA9IHNpZ25hbCh0aGlzLm9wdGlvbnMuY291bnRyaWVzKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY291bnRyeUlzb0NvZGUgPSBzaWduYWwodGhpcy5vcHRpb25zLmNvdW50cnlJc29Db2RlKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaWNvbnMgPSBpbmplY3QoVFVJX0NPTU1PTl9JQ09OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxhYmVsID0gdG9TaWduYWwoaW5qZWN0KFRVSV9JTlRFUk5BVElPTkFMX1NFQVJDSCkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzZWFyY2ggPSBzaWduYWw8c3RyaW5nPignJyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcGFyYXRvciA9IHNpZ25hbCh0aGlzLm9wdGlvbnMuc2VwYXJhdG9yKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBmaWx0ZXJlZCA9IGNvbXB1dGVkKCgpID0+XG4gICAgICAgIHRoaXMuY291bnRyaWVzKClcbiAgICAgICAgICAgIC5tYXAoKGlzbykgPT4gKHtcbiAgICAgICAgICAgICAgICBpc28sXG4gICAgICAgICAgICAgICAgbmFtZTogdGhpcy5uYW1lcygpPy5baXNvXSB8fCAnJyxcbiAgICAgICAgICAgICAgICBjb2RlOiB0dWlHZXRDYWxsaW5nQ29kZShpc28sIHRoaXMubWV0YWRhdGEoKSksXG4gICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIC5maWx0ZXIoKHtuYW1lLCBjb2RlfSkgPT4gVFVJX0RFRkFVTFRfTUFUQ0hFUihuYW1lICsgY29kZSwgdGhpcy5zZWFyY2goKSkpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWFzayA9IGNvbXB1dGVkKCgpID0+XG4gICAgICAgIHRoaXMuY29tcHV0ZU1hc2sodGhpcy5jb3VudHJ5SXNvQ29kZSgpLCB0aGlzLm1ldGFkYXRhKCksIHRoaXMuc2VwYXJhdG9yKCkpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgJCA9IHR1aURpcmVjdGl2ZUJpbmRpbmcoXG4gICAgICAgIFR1aURyb3Bkb3duT3BlbixcbiAgICAgICAgJ3R1aURyb3Bkb3duRW5hYmxlZCcsXG4gICAgICAgIHRoaXMuaW50ZXJhY3RpdmUsXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCB0ZXh0ZmllbGRWYWx1ZSA9ICcnO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY291bnRyeVNlYXJjaCA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpXG4gICAgcHVibGljIHJlYWRvbmx5IGNvdW50cnlJc29Db2RlQ2hhbmdlID0gdG9PYnNlcnZhYmxlKHRoaXMuY291bnRyeUlzb0NvZGUpLnBpcGUoXG4gICAgICAgIHNraXAoMSksXG4gICAgKTtcblxuICAgIEBJbnB1dCgnY291bnRyaWVzJylcbiAgICBwdWJsaWMgc2V0IGNvdW50cmllc1ZhbHVlKHZhbHVlOiByZWFkb25seSBUdWlDb3VudHJ5SXNvQ29kZVtdKSB7XG4gICAgICAgIHRoaXMuY291bnRyaWVzLnNldCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgQElucHV0KCdjb3VudHJ5SXNvQ29kZScpXG4gICAgcHVibGljIHNldCBpc29Db2RlKGNvZGU6IFR1aUNvdW50cnlJc29Db2RlKSB7XG4gICAgICAgIHRoaXMuY291bnRyeUlzb0NvZGUuc2V0KGNvZGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBmb2N1c0ZpcnN0SXRlbSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5saXN0T3B0aW9ucz8uZ2V0KDApPy5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uUGFzdGUoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHBob25lc01ldGFkYXRhID0gdGhpcy5tZXRhZGF0YSgpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0dWlJc0lucHV0RXZlbnQoZXZlbnQpIHx8XG4gICAgICAgICAgICAhcGhvbmVzTWV0YWRhdGEgfHxcbiAgICAgICAgICAgICghZXZlbnQuaW5wdXRUeXBlLmluY2x1ZGVzKCdEcm9wJykgJiYgIWV2ZW50LmlucHV0VHlwZS5pbmNsdWRlcygnUGFzdGUnKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IGV2ZW50LmRhdGEgfHwgJyc7XG4gICAgICAgIGNvbnN0IHByZWZpeGVkVmFsdWUgPSBuZXdWYWx1ZS5zdGFydHNXaXRoKENIQVJfUExVUylcbiAgICAgICAgICAgID8gbmV3VmFsdWVcbiAgICAgICAgICAgIDogQ0hBUl9QTFVTICsgbmV3VmFsdWU7XG5cbiAgICAgICAgaWYgKHZhbGlkYXRlUGhvbmVOdW1iZXJMZW5ndGgocHJlZml4ZWRWYWx1ZSkgPT09ICdUT09fU0hPUlQnKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBjb3VudHJ5SXNvQ29kZSA9IG1hc2tpdG9HZXRDb3VudHJ5RnJvbU51bWJlcihwcmVmaXhlZFZhbHVlLCBwaG9uZXNNZXRhZGF0YSk7XG5cbiAgICAgICAgaWYgKGNvdW50cnlJc29Db2RlKSB7XG4gICAgICAgICAgICB0aGlzLmNvdW50cnlJc29Db2RlLnNldChjb3VudHJ5SXNvQ29kZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25JdGVtQ2xpY2soaXNvQ29kZTogVHVpQ291bnRyeUlzb0NvZGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcGVuLnNldChmYWxzZSk7XG4gICAgICAgIHRoaXMuY291bnRyeUlzb0NvZGUuc2V0KGlzb0NvZGUpO1xuICAgICAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIHdyaXRlVmFsdWUodW5tYXNrZWRWYWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodW5tYXNrZWRWYWx1ZSk7XG5cbiAgICAgICAgY29uc3QgbWFza09wdGlvbnMgPSB0aGlzLm1hc2soKTtcblxuICAgICAgICB0aGlzLnRleHRmaWVsZFZhbHVlID0gbWFza09wdGlvbnNcbiAgICAgICAgICAgID8gbWFza2l0b1RyYW5zZm9ybSh0aGlzLnZhbHVlKCksIG1hc2tPcHRpb25zKVxuICAgICAgICAgICAgOiB0aGlzLnZhbHVlKCk7IC8vIGl0IHdpbGwgYmUgY2FsaWJyYXRlZCBsYXRlciB3aGVuIG1hc2sgaXMgcmVhZHkgKGJ5IG1hc2tpdG9Jbml0aWFsQ2FsaWJyYXRpb25QbHVnaW4pXG4gICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBAVmlld0NoaWxkKGZvcndhcmRSZWYoKCkgPT4gVHVpVGV4dGZpZWxkRHJvcGRvd25EaXJlY3RpdmUpLCB7cmVhZDogVGVtcGxhdGVSZWZ9KVxuICAgIHByb3RlY3RlZCBzZXQgdGVtcGxhdGUodGVtcGxhdGU6IFBvbHltb3JwaGV1c0NvbnRlbnQpIHtcbiAgICAgICAgdGhpcy5kcm9wZG93bi5zZXQodGVtcGxhdGUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvbkZvY3VzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwaG9uZU1ldGFkYXRhID0gdGhpcy5tZXRhZGF0YSgpO1xuXG4gICAgICAgIGlmICghdGhpcy50ZXh0ZmllbGRWYWx1ZSAmJiBwaG9uZU1ldGFkYXRhKSB7XG4gICAgICAgICAgICB0aGlzLnRleHRmaWVsZFZhbHVlID0gYCR7Q0hBUl9QTFVTICsgZ2V0Q291bnRyeUNhbGxpbmdDb2RlKHRoaXMuY291bnRyeUlzb0NvZGUoKSwgcGhvbmVNZXRhZGF0YSl9IGA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25WYWx1ZUNoYW5nZShtYXNrZWRWYWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHVubWFza2VkVmFsdWUgPSBtYXNrZWRWYWx1ZS5yZXBsYWNlQWxsKE5PVF9GT1JNX0NPTlRST0xfU1lNQk9MUywgJycpO1xuICAgICAgICBjb25zdCBwaG9uZXNNZXRhZGF0YSA9IHRoaXMubWV0YWRhdGEoKTtcbiAgICAgICAgY29uc3QgY291bnRyeUNhbGxpbmdDb2RlID0gcGhvbmVzTWV0YWRhdGFcbiAgICAgICAgICAgID8gQ0hBUl9QTFVTICsgZ2V0Q291bnRyeUNhbGxpbmdDb2RlKHRoaXMuY291bnRyeUlzb0NvZGUoKSwgcGhvbmVzTWV0YWRhdGEpXG4gICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgIHRoaXMub25DaGFuZ2UodW5tYXNrZWRWYWx1ZSA9PT0gY291bnRyeUNhbGxpbmdDb2RlID8gJycgOiB1bm1hc2tlZFZhbHVlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25LZXlEb3duKHtrZXl9OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0dWlJc0VkaXRpbmdLZXkoa2V5KSkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXI/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoe3ByZXZlbnRTY3JvbGw6IHRydWV9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgY29tcHV0ZU1hc2soXG4gICAgICAgIGNvdW50cnlJc29Db2RlOiBUdWlDb3VudHJ5SXNvQ29kZSxcbiAgICAgICAgbWV0YWRhdGE/OiBNZXRhZGF0YUpzb24sXG4gICAgICAgIHNlcGFyYXRvcj86IHN0cmluZyxcbiAgICApOiBNYXNraXRvT3B0aW9ucyB8IG51bGwge1xuICAgICAgICBpZiAoIW1ldGFkYXRhKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtwbHVnaW5zLCAuLi5yZXN0T3B0aW9uc30gPSBtYXNraXRvUGhvbmVPcHRpb25zR2VuZXJhdG9yKHtcbiAgICAgICAgICAgIGNvdW50cnlJc29Db2RlLFxuICAgICAgICAgICAgbWV0YWRhdGEsXG4gICAgICAgICAgICBzZXBhcmF0b3IsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5yZXN0T3B0aW9ucyxcbiAgICAgICAgICAgIHBsdWdpbnM6IFtcbiAgICAgICAgICAgICAgICAuLi5wbHVnaW5zLFxuICAgICAgICAgICAgICAgIG1hc2tpdG9SZW1vdmVPbkJsdXJQbHVnaW4oXG4gICAgICAgICAgICAgICAgICAgIGAke0NIQVJfUExVU30ke2dldENvdW50cnlDYWxsaW5nQ29kZShjb3VudHJ5SXNvQ29kZSwgbWV0YWRhdGEpfSBgLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgbWFza2l0b0luaXRpYWxDYWxpYnJhdGlvblBsdWdpbigpLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgfTtcbiAgICB9XG59XG4iLCI8dHVpLXRleHRmaWVsZFxuICAgIGNsYXNzPVwidC1zZWxlY3RcIlxuICAgIFtjb250ZW50XT1cImZsYWdcIlxuICAgIFt0dWlDaGV2cm9uXT1cIm9wZW4oKVwiXG4+XG4gICAgPHNlbGVjdFxuICAgICAgICBhcmlhLWxhYmVsPVwiQ291bnRyeVwiXG4gICAgICAgIG5nTW9kZWw9XCJcIlxuICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgW2F0dHIuZGF0YS1tb2RlXT1cIm1vZGUoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICAgICAgW2ZvY3VzZWRdPVwib3BlbigpXCJcbiAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXG4gICAgPjwvc2VsZWN0PlxuXG4gICAgPG5nLXRlbXBsYXRlICNmbGFnPlxuICAgICAgICA8aW1nXG4gICAgICAgICAgICBjbGFzcz1cInQtZmxhZ1wiXG4gICAgICAgICAgICBbYWx0XT1cIm5hbWVzKCk/Lltjb3VudHJ5SXNvQ29kZSgpXVwiXG4gICAgICAgICAgICBbc3JjXT1cImNvdW50cnlJc29Db2RlKCkgfCB0dWlGbGFnXCJcbiAgICAgICAgLz5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC90dWktdGV4dGZpZWxkPlxuXG48dHVpLXRleHRmaWVsZD5cbiAgICA8IS0tVE9ETzogUmVwbGFjZSBhdHRyaWJ1dGUgYmluZGluZ3Mgd2l0aCBpbnB1dHMgYWZ0ZXIgQW5ndWxhciB1cGRhdGVkIGFuZCBzaWduYWwgYmluZGluZ3MgcHJvcGVybHkgdXBkYXRlLS0+XG4gICAgPGlucHV0XG4gICAgICAgIGF1dG9jb21wbGV0ZT1cIm5ldy1wYXNzd29yZFwiXG4gICAgICAgIHR1aVRleHRmaWVsZFxuICAgICAgICBbYXR0ci5kYXRhLW1vZGVdPVwibW9kZSgpXCJcbiAgICAgICAgW2F0dHIucmVhZG9ubHldPVwicmVhZE9ubHkoKSB8fCBudWxsXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkKClcIlxuICAgICAgICBbbWFza2l0b109XCJtYXNrKClcIlxuICAgICAgICBbbmdNb2RlbE9wdGlvbnNdPVwie3N0YW5kYWxvbmU6IHRydWV9XCJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJ0ZXh0ZmllbGRWYWx1ZVwiXG4gICAgICAgIChiZWZvcmVpbnB1dC5jYXB0dXJlKT1cIm9uUGFzdGUoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cIm9uVG91Y2hlZCgpXCJcbiAgICAgICAgKGZvY3VzKT1cIiFyZWFkT25seSgpICYmIG9uRm9jdXMoKVwiXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgLz5cblxuICAgIDwhLS1cbiAgICBUT0RPOiBnZXQgcmlkIG9mIGJ1aWx0LWluIGlucHV0IGFuZCBsYWJlbCBhbmQganVzdCBleHRlcm5hbGl6ZSBldmVyeXRoaW5nIGluIDUuMFxuICAgIDx0dWktaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbD5cbiAgICAgIDxsYWJlbCB0dWlMYWJlbD5NeSBsYWJlbDwvbGFiZWw+XG4gICAgICA8aW5wdXQgdHVpVGV4dGZpZWxkIHBsYWNlaG9sZGVyPVwiTXkgcGxhY2Vob2xkZXJcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgLz5cbiAgICAgIDx0dWktaWNvbiBpY29uPVwiQHR1aS5waG9uZVwiIC8+XG4gICAgPC90dWktaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbD5cbiAgICAtLT5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0dWktaWNvbiwgaW1nXCIgLz5cblxuICAgIDxsYWJlbCB0dWlMYWJlbD5cbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L2xhYmVsPlxuPC90dWktdGV4dGZpZWxkPlxuXG48bmctY29udGFpbmVyICp0dWlUZXh0ZmllbGREcm9wZG93bj5cbiAgICA8dHVpLXRleHRmaWVsZFxuICAgICAgICAqbmdJZj1cImNvdW50cnlTZWFyY2hcIlxuICAgICAgICB0dWlUZXh0ZmllbGRTaXplPVwibVwiXG4gICAgICAgIGNsYXNzPVwidC1zZWFyY2hcIlxuICAgICAgICBbaWNvblN0YXJ0XT1cImljb25zLnNlYXJjaFwiXG4gICAgPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHR1aVRleHRmaWVsZFxuICAgICAgICAgICAgW2ZvY3VzZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJzZWFyY2goKVwiXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwibGFiZWwoKVwiXG4gICAgICAgICAgICBbdHVpQXV0b0ZvY3VzXT1cIiFpc0lvc1wiXG4gICAgICAgICAgICAoa2V5ZG93bi5hcnJvd0Rvd24pPVwiZm9jdXNGaXJzdEl0ZW0oKVwiXG4gICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJzZWFyY2guc2V0KCRldmVudClcIlxuICAgICAgICAvPlxuICAgIDwvdHVpLXRleHRmaWVsZD5cblxuICAgIDx0dWktZGF0YS1saXN0IChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBpdGVtIG9mIGZpbHRlcmVkKClcIlxuICAgICAgICAgICAgdHVpT3B0aW9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhpdGVtLmlzbylcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInQtZmxhZ1wiXG4gICAgICAgICAgICAgICAgW3NyY109XCJpdGVtLmlzbyB8IHR1aUZsYWdcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidC1uYW1lXCI+e3sgaXRlbS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0LWNvZGVcIj57eyBpdGVtLmNvZGUgfX08L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvdHVpLWRhdGEtbGlzdD5cbjwvbmctY29udGFpbmVyPlxuIl19
210
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsL2lucHV0LXBob25lLWludGVybmF0aW9uYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC9pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUVOLE1BQU0sRUFDTixXQUFXLEVBQ1gsU0FBUyxFQUNULFNBQVMsRUFDVCxZQUFZLEdBQ2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFlBQVksRUFBRSxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUNILCtCQUErQixFQUUvQixnQkFBZ0IsR0FDbkIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZELE9BQU8sRUFBQywyQkFBMkIsRUFBRSw0QkFBNEIsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3pGLE9BQU8sRUFBQyxZQUFZLEVBQUUsVUFBVSxFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDL0QsT0FBTyxFQUFDLFNB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c0JBRDNCLFlBQVk7dUJBQUMsU0FBUyxFQUFFLEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBQztnQkF3Q3BDLGFBQWE7c0JBRG5CLEtBQUs7Z0JBSVUsb0JBQW9CO3NCQURuQyxNQUFNO2dCQU1JLGNBQWM7c0JBRHhCLEtBQUs7dUJBQUMsV0FBVztnQkFNUCxPQUFPO3NCQURqQixLQUFLO3VCQUFDLGdCQUFnQjtnQkF3RFQsUUFBUTtzQkFEckIsU0FBUzt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsNkJBQTZCLENBQUMsRUFBRSxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGNvbXB1dGVkLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgZm9yd2FyZFJlZixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIHR5cGUgUXVlcnlMaXN0LFxuICAgIHNpZ25hbCxcbiAgICBUZW1wbGF0ZVJlZixcbiAgICB1bnRyYWNrZWQsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdDaGlsZHJlbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3RvT2JzZXJ2YWJsZSwgdG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7Rm9ybXNNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7TWFza2l0b0RpcmVjdGl2ZX0gZnJvbSAnQG1hc2tpdG8vYW5ndWxhcic7XG5pbXBvcnQge1xuICAgIG1hc2tpdG9Jbml0aWFsQ2FsaWJyYXRpb25QbHVnaW4sXG4gICAgdHlwZSBNYXNraXRvT3B0aW9ucyxcbiAgICBtYXNraXRvVHJhbnNmb3JtLFxufSBmcm9tICdAbWFza2l0by9jb3JlJztcbmltcG9ydCB7bWFza2l0b1JlbW92ZU9uQmx1clBsdWdpbn0gZnJvbSAnQG1hc2tpdG8va2l0JztcbmltcG9ydCB7bWFza2l0b0dldENvdW50cnlGcm9tTnVtYmVyLCBtYXNraXRvUGhvbmVPcHRpb25zR2VuZXJhdG9yfSBmcm9tICdAbWFza2l0by9waG9uZSc7XG5pbXBvcnQge3R1aUFzQ29udHJvbCwgVHVpQ29udHJvbH0gZnJvbSAnQHRhaWdhLXVpL2Nkay9jbGFzc2VzJztcbmltcG9ydCB7Q0hBUl9QTFVTLCBUVUlfREVGQVVMVF9NQVRDSEVSfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICAgIFR1aUF1dG9Gb2N1cyxcbiAgICB0dWlBdXRvRm9jdXNPcHRpb25zUHJvdmlkZXIsXG59IGZyb20gJ0B0YWlnYS11aS9jZGsvZGlyZWN0aXZlcy9hdXRvLWZvY3VzJztcbmltcG9ydCB7VFVJX0lTX0lPUywgdHVpRmFsbGJhY2tWYWx1ZVByb3ZpZGVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3Rva2Vucyc7XG5pbXBvcnQge3R1aUlzSW5wdXRFdmVudH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9kb20nO1xuaW1wb3J0IHt0dWlEaXJlY3RpdmVCaW5kaW5nfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHtUdWlEYXRhTGlzdCwgVHVpT3B0aW9ufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL2RhdGEtbGlzdCc7XG5pbXBvcnQge1xuICAgIFRVSV9URVhURklFTERfT1BUSU9OUyxcbiAgICBUdWlUZXh0ZmllbGQsXG4gICAgVHVpVGV4dGZpZWxkRHJvcGRvd25EaXJlY3RpdmUsXG4gICAgdHVpVGV4dGZpZWxkT3B0aW9uc1Byb3ZpZGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL3RleHRmaWVsZCc7XG5pbXBvcnQge1xuICAgIHR1aURyb3Bkb3duLFxuICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgIFR1aURyb3Bkb3duT3BlbixcbiAgICB0dWlEcm9wZG93bk9wZW4sXG4gICAgdHVpRHJvcGRvd25PcHRpb25zUHJvdmlkZXIsXG4gICAgVHVpV2l0aERyb3Bkb3duT3Blbixcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9kcm9wZG93bic7XG5pbXBvcnQge1R1aUdyb3VwfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2dyb3VwJztcbmltcG9ydCB7VHVpRmxhZ1BpcGV9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3BpcGVzL2ZsYWcnO1xuaW1wb3J0IHtUVUlfQ09NTU9OX0lDT05TfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90b2tlbnMnO1xuaW1wb3J0IHt0dWlJc0VkaXRpbmdLZXl9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHt0eXBlIFR1aUNvdW50cnlJc29Db2RlfSBmcm9tICdAdGFpZ2EtdWkvaTE4bi90eXBlcyc7XG5pbXBvcnQge1R1aUNoZXZyb259IGZyb20gJ0B0YWlnYS11aS9raXQvZGlyZWN0aXZlcyc7XG5pbXBvcnQge1RVSV9DT1VOVFJJRVMsIFRVSV9JTlRFUk5BVElPTkFMX1NFQVJDSH0gZnJvbSAnQHRhaWdhLXVpL2tpdC90b2tlbnMnO1xuaW1wb3J0IHt0dWlHZXRDYWxsaW5nQ29kZX0gZnJvbSAnQHRhaWdhLXVpL2tpdC91dGlscyc7XG5pbXBvcnQge3R5cGUgUG9seW1vcnBoZXVzQ29udGVudH0gZnJvbSAnQHRhaWdhLXVpL3BvbHltb3JwaGV1cyc7XG5pbXBvcnQge3ZhbGlkYXRlUGhvbmVOdW1iZXJMZW5ndGh9IGZyb20gJ2xpYnBob25lbnVtYmVyLWpzJztcbmltcG9ydCB7Z2V0Q291bnRyeUNhbGxpbmdDb2RlLCB0eXBlIE1ldGFkYXRhSnNvbn0gZnJvbSAnbGlicGhvbmVudW1iZXItanMvY29yZSc7XG5pbXBvcnQge2Zyb20sIHNraXB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1RVSV9JTlBVVF9QSE9ORV9JTlRFUk5BVElPTkFMX09QVElPTlN9IGZyb20gJy4vaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC5vcHRpb25zJztcblxuY29uc3QgTk9UX0ZPUk1fQ09OVFJPTF9TWU1CT0xTID0gL1teK1xcZF0vZztcblxuLyoqIEBkZXByZWNhdGVkIHVzZSB2ZXJzaW9uIGZyb20gZXhwZXJpbWVudGFsIHBhY2thZ2UgaW5zdGVhZCAqL1xuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICAgIE1hc2tpdG9EaXJlY3RpdmUsXG4gICAgICAgIFR1aUF1dG9Gb2N1cyxcbiAgICAgICAgVHVpQ2hldnJvbixcbiAgICAgICAgVHVpRGF0YUxpc3QsXG4gICAgICAgIFR1aUZsYWdQaXBlLFxuICAgICAgICBUdWlUZXh0ZmllbGQsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW5wdXQtcGhvbmUtaW50ZXJuYXRpb25hbC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9pbnB1dC1waG9uZS1pbnRlcm5hdGlvbmFsLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgdHVpQXNDb250cm9sKFR1aUlucHV0UGhvbmVJbnRlcm5hdGlvbmFsKSxcbiAgICAgICAgdHVpRmFsbGJhY2tWYWx1ZVByb3ZpZGVyKCcnKSxcbiAgICAgICAgdHVpQXV0b0ZvY3VzT3B0aW9uc1Byb3ZpZGVyKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSksXG4gICAgICAgIHR1aVRleHRmaWVsZE9wdGlvbnNQcm92aWRlcih7Y2xlYW5lcjogc2lnbmFsKGZhbHNlKX0pLFxuICAgICAgICB0dWlEcm9wZG93bk9wdGlvbnNQcm92aWRlcih7XG4gICAgICAgICAgICBsaW1pdFdpZHRoOiAnZml4ZWQnLFxuICAgICAgICAgICAgYWxpZ246ICdyaWdodCcsXG4gICAgICAgIH0pLFxuICAgIF0sXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtUdWlHcm91cCwgVHVpRHJvcGRvd25EaXJlY3RpdmUsIFR1aVdpdGhEcm9wZG93bk9wZW5dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRhdGEtc2l6ZV0nOiAnc2l6ZSgpJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBUdWlJbnB1dFBob25lSW50ZXJuYXRpb25hbCBleHRlbmRzIFR1aUNvbnRyb2w8c3RyaW5nPiB7XG4gICAgQFZpZXdDaGlsZChNYXNraXRvRGlyZWN0aXZlLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBpbnB1dD86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgICBAVmlld0NoaWxkKFR1aUF1dG9Gb2N1cywge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgZmlsdGVyPzogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIEBWaWV3Q2hpbGRyZW4oVHVpT3B0aW9uLCB7cmVhZDogRWxlbWVudFJlZn0pXG4gICAgcHJpdmF0ZSByZWFkb25seSBsaXN0T3B0aW9ucz86IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxCdXR0b25FbGVtZW50Pj47XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNJb3MgPSBpbmplY3QoVFVJX0lTX0lPUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRyb3Bkb3duID0gdHVpRHJvcGRvd24obnVsbCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0lOUFVUX1BIT05FX0lOVEVSTkFUSU9OQUxfT1BUSU9OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHNpemUgPSBpbmplY3QoVFVJX1RFWFRGSUVMRF9PUFRJT05TKS5zaXplO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBvcGVuID0gdHVpRHJvcGRvd25PcGVuKCk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG5hbWVzID0gdG9TaWduYWwoaW5qZWN0KFRVSV9DT1VOVFJJRVMpKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgbWV0YWRhdGEgPSB0b1NpZ25hbChmcm9tKHRoaXMub3B0aW9ucy5tZXRhZGF0YSkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb3VudHJpZXMgPSBzaWduYWwodGhpcy5vcHRpb25zLmNvdW50cmllcyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvdW50cnlJc29Db2RlID0gc2lnbmFsKHRoaXMub3B0aW9ucy5jb3VudHJ5SXNvQ29kZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25zID0gaW5qZWN0KFRVSV9DT01NT05fSUNPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBsYWJlbCA9IHRvU2lnbmFsKGluamVjdChUVUlfSU5URVJOQVRJT05BTF9TRUFSQ0gpKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VhcmNoID0gc2lnbmFsPHN0cmluZz4oJycpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBzZXBhcmF0b3IgPSBzaWduYWwodGhpcy5vcHRpb25zLnNlcGFyYXRvcik7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmlsdGVyZWQgPSBjb21wdXRlZCgoKSA9PlxuICAgICAgICB0aGlzLmNvdW50cmllcygpXG4gICAgICAgICAgICAubWFwKChpc28pID0+ICh7XG4gICAgICAgICAgICAgICAgaXNvLFxuICAgICAgICAgICAgICAgIG5hbWU6IHRoaXMubmFtZXMoKT8uW2lzb10gfHwgJycsXG4gICAgICAgICAgICAgICAgY29kZTogdHVpR2V0Q2FsbGluZ0NvZGUoaXNvLCB0aGlzLm1ldGFkYXRhKCkpLFxuICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAuZmlsdGVyKCh7bmFtZSwgY29kZX0pID0+IFRVSV9ERUZBVUxUX01BVENIRVIobmFtZSArIGNvZGUsIHRoaXMuc2VhcmNoKCkpKSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1hc2sgPSBjb21wdXRlZCgoKSA9PlxuICAgICAgICB0aGlzLmNvbXB1dGVNYXNrKHRoaXMuY291bnRyeUlzb0NvZGUoKSwgdGhpcy5tZXRhZGF0YSgpLCB0aGlzLnNlcGFyYXRvcigpKSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5ICQgPSB0dWlEaXJlY3RpdmVCaW5kaW5nKFxuICAgICAgICBUdWlEcm9wZG93bk9wZW4sXG4gICAgICAgICd0dWlEcm9wZG93bkVuYWJsZWQnLFxuICAgICAgICB0aGlzLmludGVyYWN0aXZlLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgdGV4dGZpZWxkVmFsdWUgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGNvdW50cnlTZWFyY2ggPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBjb3VudHJ5SXNvQ29kZUNoYW5nZSA9IHRvT2JzZXJ2YWJsZSh0aGlzLmNvdW50cnlJc29Db2RlKS5waXBlKFxuICAgICAgICBza2lwKDEpLFxuICAgICk7XG5cbiAgICBASW5wdXQoJ2NvdW50cmllcycpXG4gICAgcHVibGljIHNldCBjb3VudHJpZXNWYWx1ZSh2YWx1ZTogcmVhZG9ubHkgVHVpQ291bnRyeUlzb0NvZGVbXSkge1xuICAgICAgICB0aGlzLmNvdW50cmllcy5zZXQodmFsdWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCgnY291bnRyeUlzb0NvZGUnKVxuICAgIHB1YmxpYyBzZXQgaXNvQ29kZShjb2RlOiBUdWlDb3VudHJ5SXNvQ29kZSkge1xuICAgICAgICB0aGlzLmNvdW50cnlJc29Db2RlLnNldChjb2RlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZm9jdXNGaXJzdEl0ZW0oKTogdm9pZCB7XG4gICAgICAgIHRoaXMubGlzdE9wdGlvbnM/LmdldCgwKT8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblBhc3RlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwaG9uZXNNZXRhZGF0YSA9IHRoaXMubWV0YWRhdGEoKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICAhdHVpSXNJbnB1dEV2ZW50KGV2ZW50KSB8fFxuICAgICAgICAgICAgIXBob25lc01ldGFkYXRhIHx8XG4gICAgICAgICAgICAoIWV2ZW50LmlucHV0VHlwZS5pbmNsdWRlcygnRHJvcCcpICYmICFldmVudC5pbnB1dFR5cGUuaW5jbHVkZXMoJ1Bhc3RlJykpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSBldmVudC5kYXRhIHx8ICcnO1xuICAgICAgICBjb25zdCBwcmVmaXhlZFZhbHVlID0gbmV3VmFsdWUuc3RhcnRzV2l0aChDSEFSX1BMVVMpXG4gICAgICAgICAgICA/IG5ld1ZhbHVlXG4gICAgICAgICAgICA6IENIQVJfUExVUyArIG5ld1ZhbHVlO1xuXG4gICAgICAgIGlmICh2YWxpZGF0ZVBob25lTnVtYmVyTGVuZ3RoKHByZWZpeGVkVmFsdWUpID09PSAnVE9PX1NIT1JUJykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY291bnRyeUlzb0NvZGUgPSBtYXNraXRvR2V0Q291bnRyeUZyb21OdW1iZXIocHJlZml4ZWRWYWx1ZSwgcGhvbmVzTWV0YWRhdGEpO1xuXG4gICAgICAgIGlmIChjb3VudHJ5SXNvQ29kZSkge1xuICAgICAgICAgICAgdGhpcy5jb3VudHJ5SXNvQ29kZS5zZXQoY291bnRyeUlzb0NvZGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uSXRlbUNsaWNrKGlzb0NvZGU6IFR1aUNvdW50cnlJc29Db2RlKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3Blbi5zZXQoZmFsc2UpO1xuICAgICAgICB0aGlzLmNvdW50cnlJc29Db2RlLnNldChpc29Db2RlKTtcbiAgICAgICAgdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSB3cml0ZVZhbHVlKHVubWFza2VkVmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBzdXBlci53cml0ZVZhbHVlKHVubWFza2VkVmFsdWUpO1xuXG4gICAgICAgIGNvbnN0IG1hc2sgPSB1bnRyYWNrZWQoKCkgPT4gdGhpcy5tYXNrKCkpO1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHVudHJhY2tlZCgoKSA9PiB0aGlzLnZhbHVlKCkpO1xuXG4gICAgICAgIHRoaXMudGV4dGZpZWxkVmFsdWUgPSBtYXNrXG4gICAgICAgICAgICA/IG1hc2tpdG9UcmFuc2Zvcm0odmFsdWUsIG1hc2spXG4gICAgICAgICAgICA6IC8vIGl0IHdpbGwgYmUgY2FsaWJyYXRlZCBsYXRlciB3aGVuIG1hc2sgaXMgcmVhZHkgKGJ5IG1hc2tpdG9Jbml0aWFsQ2FsaWJyYXRpb25QbHVnaW4pXG4gICAgICAgICAgICAgIHZhbHVlO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgQFZpZXdDaGlsZChmb3J3YXJkUmVmKCgpID0+IFR1aVRleHRmaWVsZERyb3Bkb3duRGlyZWN0aXZlKSwge3JlYWQ6IFRlbXBsYXRlUmVmfSlcbiAgICBwcm90ZWN0ZWQgc2V0IHRlbXBsYXRlKHRlbXBsYXRlOiBQb2x5bW9ycGhldXNDb250ZW50KSB7XG4gICAgICAgIHRoaXMuZHJvcGRvd24uc2V0KHRlbXBsYXRlKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGhvbmVNZXRhZGF0YSA9IHRoaXMubWV0YWRhdGEoKTtcblxuICAgICAgICBpZiAoIXRoaXMudGV4dGZpZWxkVmFsdWUgJiYgcGhvbmVNZXRhZGF0YSkge1xuICAgICAgICAgICAgdGhpcy50ZXh0ZmllbGRWYWx1ZSA9IGAke0NIQVJfUExVUyArIGdldENvdW50cnlDYWxsaW5nQ29kZSh0aGlzLmNvdW50cnlJc29Db2RlKCksIHBob25lTWV0YWRhdGEpfSBgO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uVmFsdWVDaGFuZ2UobWFza2VkVmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCB1bm1hc2tlZFZhbHVlID0gbWFza2VkVmFsdWUucmVwbGFjZUFsbChOT1RfRk9STV9DT05UUk9MX1NZTUJPTFMsICcnKTtcbiAgICAgICAgY29uc3QgcGhvbmVzTWV0YWRhdGEgPSB0aGlzLm1ldGFkYXRhKCk7XG4gICAgICAgIGNvbnN0IGNvdW50cnlDYWxsaW5nQ29kZSA9IHBob25lc01ldGFkYXRhXG4gICAgICAgICAgICA/IENIQVJfUExVUyArIGdldENvdW50cnlDYWxsaW5nQ29kZSh0aGlzLmNvdW50cnlJc29Db2RlKCksIHBob25lc01ldGFkYXRhKVxuICAgICAgICAgICAgOiAnJztcblxuICAgICAgICB0aGlzLm9uQ2hhbmdlKHVubWFza2VkVmFsdWUgPT09IGNvdW50cnlDYWxsaW5nQ29kZSA/ICcnIDogdW5tYXNrZWRWYWx1ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uS2V5RG93bih7a2V5fTogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodHVpSXNFZGl0aW5nS2V5KGtleSkpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyPy5uYXRpdmVFbGVtZW50LmZvY3VzKHtwcmV2ZW50U2Nyb2xsOiB0cnVlfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbXB1dGVNYXNrKFxuICAgICAgICBjb3VudHJ5SXNvQ29kZTogVHVpQ291bnRyeUlzb0NvZGUsXG4gICAgICAgIG1ldGFkYXRhPzogTWV0YWRhdGFKc29uLFxuICAgICAgICBzZXBhcmF0b3I/OiBzdHJpbmcsXG4gICAgKTogTWFza2l0b09wdGlvbnMgfCBudWxsIHtcbiAgICAgICAgaWYgKCFtZXRhZGF0YSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB7cGx1Z2lucywgLi4ucmVzdE9wdGlvbnN9ID0gbWFza2l0b1Bob25lT3B0aW9uc0dlbmVyYXRvcih7XG4gICAgICAgICAgICBjb3VudHJ5SXNvQ29kZSxcbiAgICAgICAgICAgIG1ldGFkYXRhLFxuICAgICAgICAgICAgc2VwYXJhdG9yLFxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4ucmVzdE9wdGlvbnMsXG4gICAgICAgICAgICBwbHVnaW5zOiBbXG4gICAgICAgICAgICAgICAgLi4ucGx1Z2lucyxcbiAgICAgICAgICAgICAgICBtYXNraXRvUmVtb3ZlT25CbHVyUGx1Z2luKFxuICAgICAgICAgICAgICAgICAgICBgJHtDSEFSX1BMVVN9JHtnZXRDb3VudHJ5Q2FsbGluZ0NvZGUoY291bnRyeUlzb0NvZGUsIG1ldGFkYXRhKX0gYCxcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIG1hc2tpdG9Jbml0aWFsQ2FsaWJyYXRpb25QbHVnaW4oKSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH07XG4gICAgfVxufVxuIiwiPHR1aS10ZXh0ZmllbGRcbiAgICBjbGFzcz1cInQtc2VsZWN0XCJcbiAgICBbY29udGVudF09XCJmbGFnXCJcbiAgICBbdHVpQ2hldnJvbl09XCJvcGVuKClcIlxuPlxuICAgIDxzZWxlY3RcbiAgICAgICAgYXJpYS1sYWJlbD1cIkNvdW50cnlcIlxuICAgICAgICBuZ01vZGVsPVwiXCJcbiAgICAgICAgdHVpVGV4dGZpZWxkXG4gICAgICAgIFthdHRyLmRhdGEtbW9kZV09XCJtb2RlKClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQoKVwiXG4gICAgICAgIFtmb2N1c2VkXT1cIm9wZW4oKVwiXG4gICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxuICAgID48L3NlbGVjdD5cblxuICAgIDxuZy10ZW1wbGF0ZSAjZmxhZz5cbiAgICAgICAgPGltZ1xuICAgICAgICAgICAgY2xhc3M9XCJ0LWZsYWdcIlxuICAgICAgICAgICAgW2FsdF09XCJuYW1lcygpPy5bY291bnRyeUlzb0NvZGUoKV1cIlxuICAgICAgICAgICAgW3NyY109XCJjb3VudHJ5SXNvQ29kZSgpIHwgdHVpRmxhZ1wiXG4gICAgICAgIC8+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvdHVpLXRleHRmaWVsZD5cblxuPHR1aS10ZXh0ZmllbGQ+XG4gICAgPCEtLVRPRE86IFJlcGxhY2UgYXR0cmlidXRlIGJpbmRpbmdzIHdpdGggaW5wdXRzIGFmdGVyIEFuZ3VsYXIgdXBkYXRlZCBhbmQgc2lnbmFsIGJpbmRpbmdzIHByb3Blcmx5IHVwZGF0ZS0tPlxuICAgIDxpbnB1dFxuICAgICAgICBhdXRvY29tcGxldGU9XCJuZXctcGFzc3dvcmRcIlxuICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgW2F0dHIuZGF0YS1tb2RlXT1cIm1vZGUoKVwiXG4gICAgICAgIFthdHRyLnJlYWRvbmx5XT1cInJlYWRPbmx5KCkgfHwgbnVsbFwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZCgpXCJcbiAgICAgICAgW21hc2tpdG9dPVwibWFzaygpXCJcbiAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwidGV4dGZpZWxkVmFsdWVcIlxuICAgICAgICAoYmVmb3JlaW5wdXQuY2FwdHVyZSk9XCJvblBhc3RlKCRldmVudClcIlxuICAgICAgICAoYmx1cik9XCJvblRvdWNoZWQoKVwiXG4gICAgICAgIChmb2N1cyk9XCIhcmVhZE9ubHkoKSAmJiBvbkZvY3VzKClcIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJvblZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgIC8+XG5cbiAgICA8IS0tXG4gICAgVE9ETzogZ2V0IHJpZCBvZiBidWlsdC1pbiBpbnB1dCBhbmQgbGFiZWwgYW5kIGp1c3QgZXh0ZXJuYWxpemUgZXZlcnl0aGluZyBpbiA1LjBcbiAgICA8dHVpLWlucHV0LXBob25lLWludGVybmF0aW9uYWw+XG4gICAgICA8bGFiZWwgdHVpTGFiZWw+TXkgbGFiZWw8L2xhYmVsPlxuICAgICAgPGlucHV0IHR1aVRleHRmaWVsZCBwbGFjZWhvbGRlcj1cIk15IHBsYWNlaG9sZGVyXCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiIC8+XG4gICAgICA8dHVpLWljb24gaWNvbj1cIkB0dWkucGhvbmVcIiAvPlxuICAgIDwvdHVpLWlucHV0LXBob25lLWludGVybmF0aW9uYWw+XG4gICAgLS0+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpLWljb24sIGltZ1wiIC8+XG5cbiAgICA8bGFiZWwgdHVpTGFiZWw+XG4gICAgICAgIDxuZy1jb250ZW50IC8+XG4gICAgPC9sYWJlbD5cbjwvdHVpLXRleHRmaWVsZD5cblxuPG5nLWNvbnRhaW5lciAqdHVpVGV4dGZpZWxkRHJvcGRvd24+XG4gICAgPHR1aS10ZXh0ZmllbGRcbiAgICAgICAgKm5nSWY9XCJjb3VudHJ5U2VhcmNoXCJcbiAgICAgICAgdHVpVGV4dGZpZWxkU2l6ZT1cIm1cIlxuICAgICAgICBjbGFzcz1cInQtc2VhcmNoXCJcbiAgICAgICAgW2ljb25TdGFydF09XCJpY29ucy5zZWFyY2hcIlxuICAgID5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICB0dWlUZXh0ZmllbGRcbiAgICAgICAgICAgIFtmb2N1c2VkXT1cInRydWVcIlxuICAgICAgICAgICAgW25nTW9kZWxdPVwic2VhcmNoKClcIlxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cImxhYmVsKClcIlxuICAgICAgICAgICAgW3R1aUF1dG9Gb2N1c109XCIhaXNJb3NcIlxuICAgICAgICAgICAgKGtleWRvd24uYXJyb3dEb3duKT1cImZvY3VzRmlyc3RJdGVtKClcIlxuICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoLnNldCgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICA8L3R1aS10ZXh0ZmllbGQ+XG5cbiAgICA8dHVpLWRhdGEtbGlzdCAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBmaWx0ZXJlZCgpXCJcbiAgICAgICAgICAgIHR1aU9wdGlvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAoY2xpY2spPVwib25JdGVtQ2xpY2soaXRlbS5pc28pXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgIGFsdD1cIlwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0LWZsYWdcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwiaXRlbS5pc28gfCB0dWlGbGFnXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInQtbmFtZVwiPnt7IGl0ZW0ubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidC1jb2RlXCI+e3sgaXRlbS5jb2RlIH19PC9zcGFuPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L3R1aS1kYXRhLWxpc3Q+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { computed, Directive, inject, Input, signal } from '@angular/core';
1
+ import { computed, Directive, inject, Input, signal, untracked } from '@angular/core';
2
2
  import { toSignal } from '@angular/core/rxjs-interop';
3
3
  import { MaskitoDirective } from '@maskito/angular';
4
4
  import { maskitoAddOnFocusPlugin, maskitoCaretGuard, maskitoRemoveOnBlurPlugin, maskitoSelectionChangeHandler, maskitoTimeOptionsGenerator, } from '@maskito/kit';
@@ -67,7 +67,7 @@ class TuiInputTimeDirective extends TuiControl {
67
67
  }
68
68
  writeValue(value) {
69
69
  super.writeValue(value);
70
- this.textfield.value.set(this.stringify(this.value()));
70
+ untracked(() => this.textfield.value.set(this.stringify(this.value())));
71
71
  }
72
72
  onInput(valueWithAffixes) {
73
73
  const value = valueWithAffixes
@@ -152,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
152
152
  type: Input,
153
153
  args: ['postfix']
154
154
  }] } });
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGltZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC10aW1lL2lucHV0LXRpbWUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUVsRCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsNkJBQTZCLEVBRTdCLDJCQUEyQixHQUU5QixNQUFNLGNBQWMsQ0FBQztBQUN0QixPQUFPLEVBQUMsWUFBWSxFQUFFLFVBQVUsRUFBRSx1QkFBdUIsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ3hGLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDdEUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdkUsT0FBTyxFQUNILHNCQUFzQixFQUV0QixxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLHVCQUF1QixFQUN2QixtQkFBbUIsRUFDbkIsZ0JBQWdCLEdBQ25CLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUNILG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsZUFBZSxHQUNsQixNQUFNLG9DQUFvQyxDQUFDO0FBQzVDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx1QkFBdUIsQ0FB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LENBQUMsZUFBZSxDQUFDO1NBQ3RDOztTQVNRLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQWxCakMsU0FBUzttQkFBQztvQkFDUCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsU0FBUyxFQUFFO3dCQUNQLFlBQVksdUJBQXVCO3dCQUNuQyxzQkFBc0IsdUJBQXVCO3dCQUM3QyxjQUFjLHVCQUF1Qjt3QkFDckMsdUJBQXVCLENBQUMsc0JBQXNCLENBQUM7d0JBQy9DLGtCQUFrQixDQUFDLGVBQWUsQ0FBQztxQkFDdEM7b0JBQ0QsY0FBYyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ3BELElBQUksRUFBRTt3QkFDRixTQUFTLEVBQUUsU0FBUzt3QkFDcEIsWUFBWSxFQUFFLFlBQVk7d0JBQzFCLFNBQVMsRUFBRSxVQUFVO3dCQUNyQixTQUFTLEVBQUUsOEJBQThCO3FCQUM1QztpQkFDSjs4QkF3Q1UsTUFBTTtzQkFEWixLQUFLO2dCQVVLLFVBQVU7c0JBRHBCLEtBQUs7dUJBQUMsTUFBTTtnQkFPRixZQUFZO3NCQUR0QixLQUFLO3VCQUFDLFFBQVE7Z0JBT0osYUFBYTtzQkFEdkIsS0FBSzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtjb21wdXRlZCwgRGlyZWN0aXZlLCBpbmplY3QsIElucHV0LCBzaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtNYXNraXRvRGlyZWN0aXZlfSBmcm9tICdAbWFza2l0by9hbmd1bGFyJztcbmltcG9ydCB7dHlwZSBNYXNraXRvT3B0aW9uc30gZnJvbSAnQG1hc2tpdG8vY29yZSc7XG5pbXBvcnQge1xuICAgIG1hc2tpdG9BZGRPbkZvY3VzUGx1Z2luLFxuICAgIG1hc2tpdG9DYXJldEd1YXJkLFxuICAgIG1hc2tpdG9SZW1vdmVPbkJsdXJQbHVnaW4sXG4gICAgbWFza2l0b1NlbGVjdGlvbkNoYW5nZUhhbmRsZXIsXG4gICAgdHlwZSBNYXNraXRvVGltZU1vZGUsXG4gICAgbWFza2l0b1RpbWVPcHRpb25zR2VuZXJhdG9yLFxuICAgIHR5cGUgTWFza2l0b1RpbWVQYXJhbXMsXG59IGZyb20gJ0BtYXNraXRvL2tpdCc7XG5pbXBvcnQge3R1aUFzQ29udHJvbCwgVHVpQ29udHJvbCwgdHVpVmFsdWVUcmFuc2Zvcm1lckZyb219IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aVRpbWV9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGF0ZS10aW1lJztcbmltcG9ydCB7VFVJX0lTX01PQklMRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHt0dWlEaXJlY3RpdmVCaW5kaW5nfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHt0dWlBc09wdGlvbkNvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0JztcbmltcG9ydCB7XG4gICAgdHVpQXNUZXh0ZmllbGRBY2Nlc3NvcixcbiAgICB0eXBlIFR1aVRleHRmaWVsZEFjY2Vzc29yLFxuICAgIFR1aVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBUdWlUZXh0ZmllbGREaXJlY3RpdmUsXG4gICAgdHVpVGV4dGZpZWxkSWNvbkJpbmRpbmcsXG4gICAgVHVpV2l0aE5hdGl2ZVBpY2tlcixcbiAgICBUdWlXaXRoVGV4dGZpZWxkLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL3RleHRmaWVsZCc7XG5pbXBvcnQge1xuICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgIHR1aURyb3Bkb3duRW5hYmxlZCxcbiAgICB0dWlEcm9wZG93bk9wZW4sXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHt0dWlBc0F1eGlsaWFyeX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpU2VsZWN0T3B0aW9ufSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc2VsZWN0JztcbmltcG9ydCB7VFVJX1RJTUVfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7dHVpTWFza2l0b30gZnJvbSAnQHRhaWdhLXVpL2tpdC91dGlscyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1RJTUVfT1BUSU9OU30gZnJvbSAnLi9pbnB1dC10aW1lLm9wdGlvbnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpSW5wdXRUaW1lXScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUFzQ29udHJvbChUdWlJbnB1dFRpbWVEaXJlY3RpdmUpLFxuICAgICAgICB0dWlBc1RleHRmaWVsZEFjY2Vzc29yKFR1aUlucHV0VGltZURpcmVjdGl2ZSksXG4gICAgICAgIHR1aUFzQXV4aWxpYXJ5KFR1aUlucHV0VGltZURpcmVjdGl2ZSksXG4gICAgICAgIHR1aVZhbHVlVHJhbnNmb3JtZXJGcm9tKFRVSV9JTlBVVF9USU1FX09QVElPTlMpLFxuICAgICAgICB0dWlBc09wdGlvbkNvbnRlbnQoVHVpU2VsZWN0T3B0aW9uKSxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbVHVpV2l0aFRleHRmaWVsZCwgTWFza2l0b0RpcmVjdGl2ZV0sXG4gICAgaG9zdDoge1xuICAgICAgICBpbnB1dG1vZGU6ICdudW1lcmljJyxcbiAgICAgICAgJ1tkaXNhYmxlZF0nOiAnZGlzYWJsZWQoKScsXG4gICAgICAgICcoY2xpY2spJzogJ3RvZ2dsZSgpJyxcbiAgICAgICAgJyhpbnB1dCknOiAnb25JbnB1dCgkZXZlbnQudGFyZ2V0LnZhbHVlKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRUaW1lRGlyZWN0aXZlXG4gICAgZXh0ZW5kcyBUdWlDb250cm9sPFR1aVRpbWUgfCBudWxsPlxuICAgIGltcGxlbWVudHMgVHVpVGV4dGZpZWxkQWNjZXNzb3I8VHVpVGltZSB8IG51bGw+XG57XG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQgPSBpbmplY3QoVHVpVGV4dGZpZWxkRGlyZWN0aXZlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duID0gaW5qZWN0KFR1aURyb3Bkb3duRGlyZWN0aXZlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wZW4gPSB0dWlEcm9wZG93bk9wZW4oKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0lOUFVUX1RJTUVfT1BUSU9OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBmaWxsZXJzID0gdG9TaWduYWwoaW5qZWN0KFRVSV9USU1FX1RFWFRTKSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmVmaXggPSBzaWduYWwoJycpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcG9zdGZpeCA9IHNpZ25hbCgnJyk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaWNvbiA9IHR1aVRleHRmaWVsZEljb25CaW5kaW5nKFRVSV9JTlBVVF9USU1FX09QVElPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93bkVuYWJsZWQgPSB0dWlEcm9wZG93bkVuYWJsZWQoXG4gICAgICAgIGNvbXB1dGVkKCgpID0+ICF0aGlzLm5hdGl2ZSAmJiB0aGlzLmludGVyYWN0aXZlKCkpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmlsbGVyID0gdHVpRGlyZWN0aXZlQmluZGluZyhcbiAgICAgICAgVHVpVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgICAgICAnZmlsbGVyU2V0dGVyJyxcbiAgICAgICAgY29tcHV0ZWQoKGZpbGxlciA9IHRoaXMuZmlsbGVycygpPy5bdGhpcy50aW1lTW9kZSgpXSA/PyAnJykgPT5cbiAgICAgICAgICAgIHRoaXMucG9zdGZpeCgpID8gJycgOiB0aGlzLnByZWZpeCgpICsgZmlsbGVyLFxuICAgICAgICApLFxuICAgICAgICB7fSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1hc2sgPSB0dWlNYXNraXRvKFxuICAgICAgICBjb21wdXRlZCgoKSA9PlxuICAgICAgICAgICAgdGhpcy5jb21wdXRlTWFzayh7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5vcHRpb25zLFxuICAgICAgICAgICAgICAgIG1vZGU6IHRoaXMudGltZU1vZGUoKSxcbiAgICAgICAgICAgICAgICBzdGVwOiB0aGlzLmludGVyYWN0aXZlKCkgJiYgIXRoaXMuZHJvcGRvd24uX2NvbnRlbnQoKSA/IDEgOiAwLFxuICAgICAgICAgICAgICAgIHByZWZpeDogdGhpcy5wcmVmaXgoKSxcbiAgICAgICAgICAgICAgICBwb3N0Zml4OiB0aGlzLnBvc3RmaXgoKSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhY2NlcHQ6IHJlYWRvbmx5IFR1aVRpbWVbXSA9IFtdO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IG5hdGl2ZSA9XG4gICAgICAgICEhaW5qZWN0KFR1aVdpdGhOYXRpdmVQaWNrZXIsIHtvcHRpb25hbDogdHJ1ZX0pICYmIGluamVjdChUVUlfSVNfTU9CSUxFKTtcblxuICAgIHB1YmxpYyByZWFkb25seSB0aW1lTW9kZSA9IHNpZ25hbCh0aGlzLm9wdGlvbnMubW9kZSk7XG5cbiAgICAvLyBUT0RPKHY1KTogdXNlIHNpZ25hbCBpbnB1dHNcbiAgICBASW5wdXQoJ21vZGUnKVxuICAgIHB1YmxpYyBzZXQgbW9kZVNldHRlcih4OiBNYXNraXRvVGltZU1vZGUpIHtcbiAgICAgICAgdGhpcy50aW1lTW9kZS5zZXQoeCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETyh2NSk6IHVzZSBzaWduYWwgaW5wdXRzXG4gICAgQElucHV0KCdwcmVmaXgnKVxuICAgIHB1YmxpYyBzZXQgcHJlZml4U2V0dGVyKHg6IHN0cmluZykge1xuICAgICAgICB0aGlzLnByZWZpeC5zZXQoeCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETyh2NSk6IHVzZSBzaWduYWwgaW5wdXRzXG4gICAgQElucHV0KCdwb3N0Zml4JylcbiAgICBwdWJsaWMgc2V0IHBvc3RmaXhTZXR0ZXIoeDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMucG9zdGZpeC5zZXQoeCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldFZhbHVlKHZhbHVlOiBUdWlUaW1lIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcblxuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMudGV4dGZpZWxkLnZhbHVlLnNldCh0aGlzLnN0cmluZ2lmeSh2YWx1ZSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy50ZXh0ZmllbGQuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF2YWx1ZSAmJiB0aGlzLmRyb3Bkb3duRW5hYmxlZCgpKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW4uc2V0KHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IFR1aVRpbWUgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLnRleHRmaWVsZC52YWx1ZS5zZXQodGhpcy5zdHJpbmdpZnkodGhpcy52YWx1ZSgpKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uSW5wdXQodmFsdWVXaXRoQWZmaXhlczogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVXaXRoQWZmaXhlc1xuICAgICAgICAgICAgLnJlcGxhY2UodGhpcy5wcmVmaXgoKSwgJycpXG4gICAgICAgICAgICAucmVwbGFjZSh0aGlzLnBvc3RmaXgoKSwgJycpO1xuICAgICAgICBjb25zdCB0aW1lID1cbiAgICAgICAgICAgIHZhbHVlLmxlbmd0aCA9PT0gdGhpcy50aW1lTW9kZSgpLmxlbmd0aCA/IFR1aVRpbWUuZnJvbVN0cmluZyh2YWx1ZSkgOiBudWxsO1xuICAgICAgICBjb25zdCBuZXdWYWx1ZSA9XG4gICAgICAgICAgICB0aGlzLmFjY2VwdC5sZW5ndGggJiYgdGltZSA/IHRoaXMuZmluZE5lYXJlc3RUaW1lKHRpbWUsIHRoaXMuYWNjZXB0KSA6IHRpbWU7XG5cbiAgICAgICAgdGhpcy5jb250cm9sPy5jb250cm9sPy51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KHtlbWl0RXZlbnQ6IGZhbHNlfSk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UobmV3VmFsdWUpO1xuXG4gICAgICAgIGlmIChuZXdWYWx1ZSAmJiBuZXdWYWx1ZSAhPT0gdGltZSkge1xuICAgICAgICAgICAgdGhpcy50ZXh0ZmllbGQudmFsdWUuc2V0KHRoaXMuc3RyaW5naWZ5KG5ld1ZhbHVlKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdG9nZ2xlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9wZW4udXBkYXRlKCh4KSA9PiAheCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjb21wdXRlTWFzayhwYXJhbXM6IFJlcXVpcmVkPE1hc2tpdG9UaW1lUGFyYW1zPik6IE1hc2tpdG9PcHRpb25zIHtcbiAgICAgICAgY29uc3Qgb3B0aW9ucyA9IG1hc2tpdG9UaW1lT3B0aW9uc0dlbmVyYXRvcihwYXJhbXMpO1xuICAgICAgICBjb25zdCB7bW9kZSwgcHJlZml4LCBwb3N0Zml4fSA9IHBhcmFtcztcbiAgICAgICAgY29uc3QgaW5wdXRNb2RlU3dpdGNoUGx1Z2luID0gbWFza2l0b1NlbGVjdGlvbkNoYW5nZUhhbmRsZXIoKGVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgIGVsZW1lbnQuaW5wdXRNb2RlID1cbiAgICAgICAgICAgICAgICBlbGVtZW50LnNlbGVjdGlvblN0YXJ0ISA+PSBtb2RlLmluZGV4T2YoJyBBQScpID8gJ3RleHQnIDogJ251bWVyaWMnO1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgY2FyZXRHdWFyZFBsdWdpbiA9IG1hc2tpdG9DYXJldEd1YXJkKCh2YWx1ZSkgPT4gW1xuICAgICAgICAgICAgcHJlZml4Lmxlbmd0aCxcbiAgICAgICAgICAgIHZhbHVlLmxlbmd0aCAtIHBvc3RmaXgubGVuZ3RoLFxuICAgICAgICBdKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4ub3B0aW9ucyxcbiAgICAgICAgICAgIHBsdWdpbnM6IG9wdGlvbnMucGx1Z2lucy5jb25jYXQoXG4gICAgICAgICAgICAgICAgY2FyZXRHdWFyZFBsdWdpbixcbiAgICAgICAgICAgICAgICBtYXNraXRvQWRkT25Gb2N1c1BsdWdpbihwcmVmaXggKyBwb3N0Zml4KSxcbiAgICAgICAgICAgICAgICBtYXNraXRvUmVtb3ZlT25CbHVyUGx1Z2luKHByZWZpeCArIHBvc3RmaXgpLFxuICAgICAgICAgICAgICAgIG1vZGUuaW5jbHVkZXMoJ0FBJykgPyBpbnB1dE1vZGVTd2l0Y2hQbHVnaW4gOiBbXSxcbiAgICAgICAgICAgICksXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaW5kTmVhcmVzdFRpbWUodmFsdWU6IFR1aVRpbWUsIGl0ZW1zOiByZWFkb25seSBUdWlUaW1lW10pOiBUdWlUaW1lIHwgbnVsbCB7XG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1yZXN0cmljdGVkLXN5bnRheFxuICAgICAgICByZXR1cm4gaXRlbXMucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT5cbiAgICAgICAgICAgIE1hdGguYWJzKGN1cnJlbnQudmFsdWVPZigpIC0gdmFsdWUudmFsdWVPZigpKSA8XG4gICAgICAgICAgICBNYXRoLmFicyhwcmV2aW91cy52YWx1ZU9mKCkgLSB2YWx1ZS52YWx1ZU9mKCkpXG4gICAgICAgICAgICAgICAgPyBjdXJyZW50XG4gICAgICAgICAgICAgICAgOiBwcmV2aW91cyxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0cmluZ2lmeSh0aW1lOiBUdWlUaW1lIHwgbnVsbCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnByZWZpeCgpICsgKHRpbWU/LnRvU3RyaW5nKHRoaXMudGltZU1vZGUoKSkgfHwgJycpICsgdGhpcy5wb3N0Zml4KCk7XG4gICAgfVxufVxuIl19
155
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtdGltZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9pbnB1dC10aW1lL2lucHV0LXRpbWUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDcEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFbEQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIseUJBQXlCLEVBQ3pCLDZCQUE2QixFQUU3QiwyQkFBMkIsR0FFOUIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsdUJBQXVCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDaEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ3RFLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBQ3ZFLE9BQU8sRUFDSCxzQkFBc0IsRUFFdEIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIsbUJBQW1CLEVBQ25CLGdCQUFnQixHQUNuQixNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsa0JBQWtCLEVBQ2xCLGVBQWUsR0FDbEIsTUFBTSxvQ0FBb0MsQ0FBQztBQUM1QyxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0s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Q3JDLHVCQUF1QixDQUFDLHNCQUFzQixDQUFDO1lBQy9DLGtCQUFrQixDQUFDLGVBQWUsQ0FBQztTQUN0Qzs7U0FTUSxxQkFBcUI7NEZBQXJCLHFCQUFxQjtrQkFsQmpDLFNBQVM7bUJBQUM7b0JBQ1AsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFNBQVMsRUFBRTt3QkFDUCxZQUFZLHVCQUF1Qjt3QkFDbkMsc0JBQXNCLHVCQUF1Qjt3QkFDN0MsY0FBYyx1QkFBdUI7d0JBQ3JDLHVCQUF1QixDQUFDLHNCQUFzQixDQUFDO3dCQUMvQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUM7cUJBQ3RDO29CQUNELGNBQWMsRUFBRSxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDO29CQUNwRCxJQUFJLEVBQUU7d0JBQ0YsU0FBUyxFQUFFLFNBQVM7d0JBQ3BCLFlBQVksRUFBRSxZQUFZO3dCQUMxQixTQUFTLEVBQUUsVUFBVTt3QkFDckIsU0FBUyxFQUFFLDhCQUE4QjtxQkFDNUM7aUJBQ0o7OEJBd0NVLE1BQU07c0JBRFosS0FBSztnQkFVSyxVQUFVO3NCQURwQixLQUFLO3VCQUFDLE1BQU07Z0JBT0YsWUFBWTtzQkFEdEIsS0FBSzt1QkFBQyxRQUFRO2dCQU9KLGFBQWE7c0JBRHZCLEtBQUs7dUJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y29tcHV0ZWQsIERpcmVjdGl2ZSwgaW5qZWN0LCBJbnB1dCwgc2lnbmFsLCB1bnRyYWNrZWR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHt0b1NpZ25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHtNYXNraXRvRGlyZWN0aXZlfSBmcm9tICdAbWFza2l0by9hbmd1bGFyJztcbmltcG9ydCB7dHlwZSBNYXNraXRvT3B0aW9uc30gZnJvbSAnQG1hc2tpdG8vY29yZSc7XG5pbXBvcnQge1xuICAgIG1hc2tpdG9BZGRPbkZvY3VzUGx1Z2luLFxuICAgIG1hc2tpdG9DYXJldEd1YXJkLFxuICAgIG1hc2tpdG9SZW1vdmVPbkJsdXJQbHVnaW4sXG4gICAgbWFza2l0b1NlbGVjdGlvbkNoYW5nZUhhbmRsZXIsXG4gICAgdHlwZSBNYXNraXRvVGltZU1vZGUsXG4gICAgbWFza2l0b1RpbWVPcHRpb25zR2VuZXJhdG9yLFxuICAgIHR5cGUgTWFza2l0b1RpbWVQYXJhbXMsXG59IGZyb20gJ0BtYXNraXRvL2tpdCc7XG5pbXBvcnQge3R1aUFzQ29udHJvbCwgVHVpQ29udHJvbCwgdHVpVmFsdWVUcmFuc2Zvcm1lckZyb219IGZyb20gJ0B0YWlnYS11aS9jZGsvY2xhc3Nlcyc7XG5pbXBvcnQge1R1aVRpbWV9IGZyb20gJ0B0YWlnYS11aS9jZGsvZGF0ZS10aW1lJztcbmltcG9ydCB7VFVJX0lTX01PQklMRX0gZnJvbSAnQHRhaWdhLXVpL2Nkay90b2tlbnMnO1xuaW1wb3J0IHt0dWlEaXJlY3RpdmVCaW5kaW5nfSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL21pc2NlbGxhbmVvdXMnO1xuaW1wb3J0IHt0dWlBc09wdGlvbkNvbnRlbnR9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2NvbXBvbmVudHMvZGF0YS1saXN0JztcbmltcG9ydCB7XG4gICAgdHVpQXNUZXh0ZmllbGRBY2Nlc3NvcixcbiAgICB0eXBlIFR1aVRleHRmaWVsZEFjY2Vzc29yLFxuICAgIFR1aVRleHRmaWVsZENvbXBvbmVudCxcbiAgICBUdWlUZXh0ZmllbGREaXJlY3RpdmUsXG4gICAgdHVpVGV4dGZpZWxkSWNvbkJpbmRpbmcsXG4gICAgVHVpV2l0aE5hdGl2ZVBpY2tlcixcbiAgICBUdWlXaXRoVGV4dGZpZWxkLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb21wb25lbnRzL3RleHRmaWVsZCc7XG5pbXBvcnQge1xuICAgIFR1aURyb3Bkb3duRGlyZWN0aXZlLFxuICAgIHR1aURyb3Bkb3duRW5hYmxlZCxcbiAgICB0dWlEcm9wZG93bk9wZW4sXG59IGZyb20gJ0B0YWlnYS11aS9jb3JlL2RpcmVjdGl2ZXMvZHJvcGRvd24nO1xuaW1wb3J0IHt0dWlBc0F1eGlsaWFyeX0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdG9rZW5zJztcbmltcG9ydCB7VHVpU2VsZWN0T3B0aW9ufSBmcm9tICdAdGFpZ2EtdWkva2l0L2NvbXBvbmVudHMvc2VsZWN0JztcbmltcG9ydCB7VFVJX1RJTUVfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7dHVpTWFza2l0b30gZnJvbSAnQHRhaWdhLXVpL2tpdC91dGlscyc7XG5cbmltcG9ydCB7VFVJX0lOUFVUX1RJTUVfT1BUSU9OU30gZnJvbSAnLi9pbnB1dC10aW1lLm9wdGlvbnMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnaW5wdXRbdHVpSW5wdXRUaW1lXScsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHR1aUFzQ29udHJvbChUdWlJbnB1dFRpbWVEaXJlY3RpdmUpLFxuICAgICAgICB0dWlBc1RleHRmaWVsZEFjY2Vzc29yKFR1aUlucHV0VGltZURpcmVjdGl2ZSksXG4gICAgICAgIHR1aUFzQXV4aWxpYXJ5KFR1aUlucHV0VGltZURpcmVjdGl2ZSksXG4gICAgICAgIHR1aVZhbHVlVHJhbnNmb3JtZXJGcm9tKFRVSV9JTlBVVF9USU1FX09QVElPTlMpLFxuICAgICAgICB0dWlBc09wdGlvbkNvbnRlbnQoVHVpU2VsZWN0T3B0aW9uKSxcbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbVHVpV2l0aFRleHRmaWVsZCwgTWFza2l0b0RpcmVjdGl2ZV0sXG4gICAgaG9zdDoge1xuICAgICAgICBpbnB1dG1vZGU6ICdudW1lcmljJyxcbiAgICAgICAgJ1tkaXNhYmxlZF0nOiAnZGlzYWJsZWQoKScsXG4gICAgICAgICcoY2xpY2spJzogJ3RvZ2dsZSgpJyxcbiAgICAgICAgJyhpbnB1dCknOiAnb25JbnB1dCgkZXZlbnQudGFyZ2V0LnZhbHVlKScsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgVHVpSW5wdXRUaW1lRGlyZWN0aXZlXG4gICAgZXh0ZW5kcyBUdWlDb250cm9sPFR1aVRpbWUgfCBudWxsPlxuICAgIGltcGxlbWVudHMgVHVpVGV4dGZpZWxkQWNjZXNzb3I8VHVpVGltZSB8IG51bGw+XG57XG4gICAgcHJpdmF0ZSByZWFkb25seSB0ZXh0ZmllbGQgPSBpbmplY3QoVHVpVGV4dGZpZWxkRGlyZWN0aXZlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRyb3Bkb3duID0gaW5qZWN0KFR1aURyb3Bkb3duRGlyZWN0aXZlKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wZW4gPSB0dWlEcm9wZG93bk9wZW4oKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0lOUFVUX1RJTUVfT1BUSU9OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBmaWxsZXJzID0gdG9TaWduYWwoaW5qZWN0KFRVSV9USU1FX1RFWFRTKSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBwcmVmaXggPSBzaWduYWwoJycpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgcG9zdGZpeCA9IHNpZ25hbCgnJyk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaWNvbiA9IHR1aVRleHRmaWVsZEljb25CaW5kaW5nKFRVSV9JTlBVVF9USU1FX09QVElPTlMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBkcm9wZG93bkVuYWJsZWQgPSB0dWlEcm9wZG93bkVuYWJsZWQoXG4gICAgICAgIGNvbXB1dGVkKCgpID0+ICF0aGlzLm5hdGl2ZSAmJiB0aGlzLmludGVyYWN0aXZlKCkpLFxuICAgICk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZmlsbGVyID0gdHVpRGlyZWN0aXZlQmluZGluZyhcbiAgICAgICAgVHVpVGV4dGZpZWxkQ29tcG9uZW50LFxuICAgICAgICAnZmlsbGVyU2V0dGVyJyxcbiAgICAgICAgY29tcHV0ZWQoKGZpbGxlciA9IHRoaXMuZmlsbGVycygpPy5bdGhpcy50aW1lTW9kZSgpXSA/PyAnJykgPT5cbiAgICAgICAgICAgIHRoaXMucG9zdGZpeCgpID8gJycgOiB0aGlzLnByZWZpeCgpICsgZmlsbGVyLFxuICAgICAgICApLFxuICAgICAgICB7fSxcbiAgICApO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG1hc2sgPSB0dWlNYXNraXRvKFxuICAgICAgICBjb21wdXRlZCgoKSA9PlxuICAgICAgICAgICAgdGhpcy5jb21wdXRlTWFzayh7XG4gICAgICAgICAgICAgICAgLi4udGhpcy5vcHRpb25zLFxuICAgICAgICAgICAgICAgIG1vZGU6IHRoaXMudGltZU1vZGUoKSxcbiAgICAgICAgICAgICAgICBzdGVwOiB0aGlzLmludGVyYWN0aXZlKCkgJiYgIXRoaXMuZHJvcGRvd24uX2NvbnRlbnQoKSA/IDEgOiAwLFxuICAgICAgICAgICAgICAgIHByZWZpeDogdGhpcy5wcmVmaXgoKSxcbiAgICAgICAgICAgICAgICBwb3N0Zml4OiB0aGlzLnBvc3RmaXgoKSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApLFxuICAgICk7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBhY2NlcHQ6IHJlYWRvbmx5IFR1aVRpbWVbXSA9IFtdO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IG5hdGl2ZSA9XG4gICAgICAgICEhaW5qZWN0KFR1aVdpdGhOYXRpdmVQaWNrZXIsIHtvcHRpb25hbDogdHJ1ZX0pICYmIGluamVjdChUVUlfSVNfTU9CSUxFKTtcblxuICAgIHB1YmxpYyByZWFkb25seSB0aW1lTW9kZSA9IHNpZ25hbCh0aGlzLm9wdGlvbnMubW9kZSk7XG5cbiAgICAvLyBUT0RPKHY1KTogdXNlIHNpZ25hbCBpbnB1dHNcbiAgICBASW5wdXQoJ21vZGUnKVxuICAgIHB1YmxpYyBzZXQgbW9kZVNldHRlcih4OiBNYXNraXRvVGltZU1vZGUpIHtcbiAgICAgICAgdGhpcy50aW1lTW9kZS5zZXQoeCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETyh2NSk6IHVzZSBzaWduYWwgaW5wdXRzXG4gICAgQElucHV0KCdwcmVmaXgnKVxuICAgIHB1YmxpYyBzZXQgcHJlZml4U2V0dGVyKHg6IHN0cmluZykge1xuICAgICAgICB0aGlzLnByZWZpeC5zZXQoeCk7XG4gICAgfVxuXG4gICAgLy8gVE9ETyh2NSk6IHVzZSBzaWduYWwgaW5wdXRzXG4gICAgQElucHV0KCdwb3N0Zml4JylcbiAgICBwdWJsaWMgc2V0IHBvc3RmaXhTZXR0ZXIoeDogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMucG9zdGZpeC5zZXQoeCk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldFZhbHVlKHZhbHVlOiBUdWlUaW1lIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcblxuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMudGV4dGZpZWxkLnZhbHVlLnNldCh0aGlzLnN0cmluZ2lmeSh2YWx1ZSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy50ZXh0ZmllbGQuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF2YWx1ZSAmJiB0aGlzLmRyb3Bkb3duRW5hYmxlZCgpKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW4uc2V0KHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIHdyaXRlVmFsdWUodmFsdWU6IFR1aVRpbWUgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpO1xuICAgICAgICB1bnRyYWNrZWQoKCkgPT4gdGhpcy50ZXh0ZmllbGQudmFsdWUuc2V0KHRoaXMuc3RyaW5naWZ5KHRoaXMudmFsdWUoKSkpKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25JbnB1dCh2YWx1ZVdpdGhBZmZpeGVzOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZVdpdGhBZmZpeGVzXG4gICAgICAgICAgICAucmVwbGFjZSh0aGlzLnByZWZpeCgpLCAnJylcbiAgICAgICAgICAgIC5yZXBsYWNlKHRoaXMucG9zdGZpeCgpLCAnJyk7XG4gICAgICAgIGNvbnN0IHRpbWUgPVxuICAgICAgICAgICAgdmFsdWUubGVuZ3RoID09PSB0aGlzLnRpbWVNb2RlKCkubGVuZ3RoID8gVHVpVGltZS5mcm9tU3RyaW5nKHZhbHVlKSA6IG51bGw7XG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlID1cbiAgICAgICAgICAgIHRoaXMuYWNjZXB0Lmxlbmd0aCAmJiB0aW1lID8gdGhpcy5maW5kTmVhcmVzdFRpbWUodGltZSwgdGhpcy5hY2NlcHQpIDogdGltZTtcblxuICAgICAgICB0aGlzLmNvbnRyb2w/LmNvbnRyb2w/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoe2VtaXRFdmVudDogZmFsc2V9KTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG5cbiAgICAgICAgaWYgKG5ld1ZhbHVlICYmIG5ld1ZhbHVlICE9PSB0aW1lKSB7XG4gICAgICAgICAgICB0aGlzLnRleHRmaWVsZC52YWx1ZS5zZXQodGhpcy5zdHJpbmdpZnkobmV3VmFsdWUpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCB0b2dnbGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3Blbi51cGRhdGUoKHgpID0+ICF4KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbXB1dGVNYXNrKHBhcmFtczogUmVxdWlyZWQ8TWFza2l0b1RpbWVQYXJhbXM+KTogTWFza2l0b09wdGlvbnMge1xuICAgICAgICBjb25zdCBvcHRpb25zID0gbWFza2l0b1RpbWVPcHRpb25zR2VuZXJhdG9yKHBhcmFtcyk7XG4gICAgICAgIGNvbnN0IHttb2RlLCBwcmVmaXgsIHBvc3RmaXh9ID0gcGFyYW1zO1xuICAgICAgICBjb25zdCBpbnB1dE1vZGVTd2l0Y2hQbHVnaW4gPSBtYXNraXRvU2VsZWN0aW9uQ2hhbmdlSGFuZGxlcigoZWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgZWxlbWVudC5pbnB1dE1vZGUgPVxuICAgICAgICAgICAgICAgIGVsZW1lbnQuc2VsZWN0aW9uU3RhcnQhID49IG1vZGUuaW5kZXhPZignIEFBJykgPyAndGV4dCcgOiAnbnVtZXJpYyc7XG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBjYXJldEd1YXJkUGx1Z2luID0gbWFza2l0b0NhcmV0R3VhcmQoKHZhbHVlKSA9PiBbXG4gICAgICAgICAgICBwcmVmaXgubGVuZ3RoLFxuICAgICAgICAgICAgdmFsdWUubGVuZ3RoIC0gcG9zdGZpeC5sZW5ndGgsXG4gICAgICAgIF0pO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5vcHRpb25zLFxuICAgICAgICAgICAgcGx1Z2luczogb3B0aW9ucy5wbHVnaW5zLmNvbmNhdChcbiAgICAgICAgICAgICAgICBjYXJldEd1YXJkUGx1Z2luLFxuICAgICAgICAgICAgICAgIG1hc2tpdG9BZGRPbkZvY3VzUGx1Z2luKHByZWZpeCArIHBvc3RmaXgpLFxuICAgICAgICAgICAgICAgIG1hc2tpdG9SZW1vdmVPbkJsdXJQbHVnaW4ocHJlZml4ICsgcG9zdGZpeCksXG4gICAgICAgICAgICAgICAgbW9kZS5pbmNsdWRlcygnQUEnKSA/IGlucHV0TW9kZVN3aXRjaFBsdWdpbiA6IFtdLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGZpbmROZWFyZXN0VGltZSh2YWx1ZTogVHVpVGltZSwgaXRlbXM6IHJlYWRvbmx5IFR1aVRpbWVbXSk6IFR1aVRpbWUgfCBudWxsIHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXJlc3RyaWN0ZWQtc3ludGF4XG4gICAgICAgIHJldHVybiBpdGVtcy5yZWR1Y2UoKHByZXZpb3VzLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgTWF0aC5hYnMoY3VycmVudC52YWx1ZU9mKCkgLSB2YWx1ZS52YWx1ZU9mKCkpIDxcbiAgICAgICAgICAgIE1hdGguYWJzKHByZXZpb3VzLnZhbHVlT2YoKSAtIHZhbHVlLnZhbHVlT2YoKSlcbiAgICAgICAgICAgICAgICA/IGN1cnJlbnRcbiAgICAgICAgICAgICAgICA6IHByZXZpb3VzLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RyaW5naWZ5KHRpbWU6IFR1aVRpbWUgfCBudWxsKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJlZml4KCkgKyAodGltZT8udG9TdHJpbmcodGhpcy50aW1lTW9kZSgpKSB8fCAnJykgKyB0aGlzLnBvc3RmaXgoKTtcbiAgICB9XG59XG4iXX0=
@@ -62,7 +62,7 @@ class TuiLineClamp {
62
62
  provide: TUI_HINT_COMPONENT,
63
63
  useValue: TuiLineClampBox,
64
64
  },
65
- ], viewQueries: [{ propertyName: "outlet", first: true, predicate: TuiHintDirective, descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n tuiLineClampPosition\n class=\"t-wrapper\"\n [style.-webkit-line-clamp]=\"lineClamp()\"\n [style.word-break]=\"lineClamp() > 1 ? 'break-word' : 'break-all'\"\n [tuiHint]=\"computedContent\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">{{ text }}</ng-container>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden}:host._initialized{transition-property:max-height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-wrapper{display:-webkit-box;-webkit-box-orient:block-axis;overflow:hidden;overflow-wrap:anywhere}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: i1.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintContext", "tuiHintAppearance", "tuiHint"] }, { kind: "directive", type: TuiLineClampPositionDirective, selector: "[tuiLineClampPosition]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
65
+ ], viewQueries: [{ propertyName: "outlet", first: true, predicate: TuiHintDirective, descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n tuiLineClampPosition\n class=\"t-wrapper\"\n [style.-webkit-line-clamp]=\"lineClamp()\"\n [style.word-break]=\"lineClamp() > 1 ? 'break-word' : 'break-all'\"\n [tuiHint]=\"computedContent\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">{{ text }}</ng-container>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden}:host._initialized{transition-property:max-height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-wrapper{display:-webkit-box;-webkit-box-orient:block-axis;overflow:hidden;overflow-wrap:anywhere}\n"], dependencies: [{ kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: i1.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintContext", "tuiHintAppearance", "tuiHint"], outputs: ["tuiHintVisible"] }, { kind: "directive", type: TuiLineClampPositionDirective, selector: "[tuiLineClampPosition]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
66
66
  }
67
67
  export { TuiLineClamp };
68
68
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiLineClamp, decorators: [{
@@ -92,4 +92,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
92
92
  }], linesLimit: [{
93
93
  type: Input
94
94
  }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jbGFtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9saW5lLWNsYW1wL2xpbmUtY2xhbXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvbGluZS1jbGFtcC9saW5lLWNsYW1wLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLE9BQU8sRUFDUCxnQkFBZ0IsR0FDbkIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQTJCLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDcEYsT0FBTyxFQUNILGVBQWUsRUFDZixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixHQUFHLEVBRUgsRUFBRSxFQUNGLFFBQVEsRUFDUixTQUFTLEVBQ1QsT0FBTyxFQUNQLFNBQVMsR0FDWixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzVELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFB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UyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakUsQ0FBQzsrR0FqRlEsWUFBWTttR0FBWixZQUFZLGdiQWZWO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsUUFBUSxFQUFFLGVBQWU7YUFDNUI7U0FDSixrRUFXVSxnQkFBZ0IsMkJBQVMsVUFBVSw2QkMvRGxELHVUQVNBLDRWRGtDYyxrQkFBa0Isc1NBQVcsNkJBQTZCOztTQW1CM0QsWUFBWTs0RkFBWixZQUFZO2tCQXRCeEIsU0FBUztpQ0FDTSxJQUFJLFlBQ04sZ0JBQWdCLFdBQ2pCLENBQUMsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLDZCQUE2QixDQUFDLG1CQUdwRCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFFBQVEsRUFBRSxlQUFlO3lCQUM1QjtxQkFDSixRQUNLO3dCQUNGLG1CQUFtQixFQUFFLFVBQVU7d0JBQy9CLHVCQUF1QixFQUFFLGFBQWE7d0JBQ3RDLHNCQUFzQixFQUFFLGVBQWU7d0JBQ3ZDLGlCQUFpQixFQUFFLGNBQWM7d0JBQ2pDLGNBQWMsRUFBRSxjQUFjO3dCQUM5QixVQUFVLEVBQUUsY0FBYztxQkFDN0I7OEJBSWdCLE1BQU07c0JBRHRCLFNBQVM7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDO2dCQThCeEMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSVUsZUFBZTtzQkFEOUIsTUFBTTtnQkFPSSxVQUFVO3NCQURwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICB0eXBlIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIHR5cGUgRG9DaGVjayxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgc2lnbmFsLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZCwgdG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7dHVpVHlwZWRGcm9tRXZlbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50LCB0dWlJc0N1cnJlbnRUYXJnZXR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7XG4gICAgVFVJX0hJTlRfQ09NUE9ORU5ULFxuICAgIFR1aUhpbnQsXG4gICAgVHVpSGludERpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9oaW50JztcbmltcG9ydCB7dHlwZSBQb2x5bW9ycGhldXNDb250ZW50LCBQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtcbiAgICBCZWhhdmlvclN1YmplY3QsXG4gICAgZGVib3VuY2VUaW1lLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgIGZpbHRlcixcbiAgICBtYXAsXG4gICAgdHlwZSBPYnNlcnZhYmxlLFxuICAgIG9mLFxuICAgIHBhaXJ3aXNlLFxuICAgIHN0YXJ0V2l0aCxcbiAgICBTdWJqZWN0LFxuICAgIHN3aXRjaE1hcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX0xJTkVfQ0xBTVBfT1BUSU9OU30gZnJvbSAnLi9saW5lLWNsYW1wLm9wdGlvbnMnO1xuaW1wb3J0IHtUdWlMaW5lQ2xhbXBCb3h9IGZyb20gJy4vbGluZS1jbGFtcC1ib3guY29tcG9uZW50JztcbmltcG9ydCB7VHVpTGluZUNsYW1wUG9zaXRpb25EaXJlY3RpdmV9IGZyb20gJy4vbGluZS1jbGFtcC1wb3NpdGlvbi5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWxpbmUtY2xhbXAnLFxuICAgIGltcG9ydHM6IFtQb2x5bW9ycGhldXNPdXRsZXQsIFR1aUhpbnQsIFR1aUxpbmVDbGFtcFBvc2l0aW9uRGlyZWN0aXZlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbGluZS1jbGFtcC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9saW5lLWNsYW1wLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0hJTlRfQ09NUE9ORU5ULFxuICAgICAgICAgICAgdXNlVmFsdWU6IFR1aUxpbmVDbGFtcEJveCxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS5oZWlnaHQucHhdJzogJ2hlaWdodCgpJyxcbiAgICAgICAgJ1tzdHlsZS5tYXgtaGVpZ2h0LnB4XSc6ICdtYXhIZWlnaHQoKScsXG4gICAgICAgICdbY2xhc3MuX2luaXRpYWxpemVkXSc6ICdpbml0aWFsaXplZCgpJyxcbiAgICAgICAgJyh0cmFuc2l0aW9uZW5kKSc6ICd1cGRhdGVWaWV3KCknLFxuICAgICAgICAnKG1vdXNlZW50ZXIpJzogJ3VwZGF0ZVZpZXcoKScsXG4gICAgICAgICcocmVzaXplKSc6ICd1cGRhdGVWaWV3KCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVDbGFtcCBpbXBsZW1lbnRzIERvQ2hlY2ssIEFmdGVyVmlld0luaXQge1xuICAgIEBWaWV3Q2hpbGQoVHVpSGludERpcmVjdGl2ZSwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3V0bGV0PzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0xJTkVfQ0xBTVBfT1BUSU9OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpbmVzTGltaXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgxKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlzT3ZlcmZsb3duJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgcHJvdGVjdGVkIGluaXRpYWxpemVkID0gc2lnbmFsKGZhbHNlKTtcbiAgICBwcm90ZWN0ZWQgbWF4SGVpZ2h0ID0gc2lnbmFsKDApO1xuICAgIHByb3RlY3RlZCBoZWlnaHQgPSBzaWduYWwoMCk7XG5cbiAgICBwcm90ZWN0ZWQgbGluZUNsYW1wID0gdG9TaWduYWwoXG4gICAgICAgIHRoaXMubGluZXNMaW1pdCQucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCgxKSxcbiAgICAgICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKFtwcmV2LCBuZXh0XSkgPT5cbiAgICAgICAgICAgICAgICBuZXh0ID49IHByZXZcbiAgICAgICAgICAgICAgICAgICAgPyBvZihuZXh0KVxuICAgICAgICAgICAgICAgICAgICA6IHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZWwsICd0cmFuc2l0aW9uZW5kJykucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKHR1aUlzQ3VycmVudFRhcmdldCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiBuZXh0KSxcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgICApLFxuICAgICAgICB7aW5pdGlhbFZhbHVlOiAwfSxcbiAgICApO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbGluZUhlaWdodCA9IDI0O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBvdmVyZmxvd25DaGFuZ2U6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmlzT3ZlcmZsb3duJC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBsaW5lc0xpbWl0KGxpbmVzTGltaXQ6IG51bWJlcikge1xuICAgICAgICB0aGlzLmxpbmVzTGltaXQkLm5leHQobGluZXNMaW1pdCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGUoKTtcbiAgICAgICAgdGhpcy5pc092ZXJmbG93biQubmV4dCh0aGlzLm92ZXJmbG93bik7XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplZC5zZXQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBvdmVyZmxvd24oKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5vdXRsZXQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtzY3JvbGxIZWlnaHQsIHNjcm9sbFdpZHRofSA9IHRoaXMub3V0bGV0Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtjbGllbnRXaWR0aH0gPSB0aGlzLmVsO1xuXG4gICAgICAgIHJldHVybiBzY3JvbGxIZWlnaHQgPiB0aGlzLm1heEhlaWdodCgpIHx8IHNjcm9sbFdpZHRoID4gY2xpZW50V2lkdGg7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBjb21wdXRlZENvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuc2hvd0hpbnQgJiYgdGhpcy5vdmVyZmxvd24gPyB0aGlzLmNvbnRlbnQgOiAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlVmlldygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm91dGxldCkge1xuICAgICAgICAgICAgdGhpcy5oZWlnaHQuc2V0KHRoaXMub3V0bGV0Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubWF4SGVpZ2h0LnNldCh0aGlzLmxpbmVIZWlnaHQgKiB0aGlzLmxpbmVzTGltaXQkLnZhbHVlKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgdHVpTGluZUNsYW1wUG9zaXRpb25cbiAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgW3N0eWxlLi13ZWJraXQtbGluZS1jbGFtcF09XCJsaW5lQ2xhbXAoKVwiXG4gICAgW3N0eWxlLndvcmQtYnJlYWtdPVwibGluZUNsYW1wKCkgPiAxID8gJ2JyZWFrLXdvcmQnIDogJ2JyZWFrLWFsbCdcIlxuICAgIFt0dWlIaW50XT1cImNvbXB1dGVkQ29udGVudFwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udGVudCBhcyB0ZXh0XCI+e3sgdGV4dCB9fTwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS1jbGFtcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9saW5lLWNsYW1wL2xpbmUtY2xhbXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvbGluZS1jbGFtcC9saW5lLWNsYW1wLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixNQUFNLEVBQ04sU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxrQkFBa0IsRUFBRSxRQUFRLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUUsa0JBQWtCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLE9BQU8sRUFDUCxnQkFBZ0IsR0FDbkIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN4QyxPQUFPLEVBQTJCLGtCQUFrQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDcEYsT0FBTyxFQUNILGVBQWUsRUFDZixZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE1BQU0sRUFDTixHQUFHLEVBRUgsRUFBRSxFQUNGLFFBQVEsRUFDUixTQUFTLEVBQ1QsT0FBTyxFQUNQLFNBQVMsR0FDWixNQUFNLE1BQU0sQ0FBQztBQUVkLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzVELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFB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UyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakUsQ0FBQzsrR0FqRlEsWUFBWTttR0FBWixZQUFZLGdiQWZWO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGtCQUFrQjtnQkFDM0IsUUFBUSxFQUFFLGVBQWU7YUFDNUI7U0FDSixrRUFXVSxnQkFBZ0IsMkJBQVMsVUFBVSw2QkMvRGxELHVUQVNBLDRWRGtDYyxrQkFBa0IsbVVBQVcsNkJBQTZCOztTQW1CM0QsWUFBWTs0RkFBWixZQUFZO2tCQXRCeEIsU0FBUztpQ0FDTSxJQUFJLFlBQ04sZ0JBQWdCLFdBQ2pCLENBQUMsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLDZCQUE2QixDQUFDLG1CQUdwRCx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxrQkFBa0I7NEJBQzNCLFFBQVEsRUFBRSxlQUFlO3lCQUM1QjtxQkFDSixRQUNLO3dCQUNGLG1CQUFtQixFQUFFLFVBQVU7d0JBQy9CLHVCQUF1QixFQUFFLGFBQWE7d0JBQ3RDLHNCQUFzQixFQUFFLGVBQWU7d0JBQ3ZDLGlCQUFpQixFQUFFLGNBQWM7d0JBQ2pDLGNBQWMsRUFBRSxjQUFjO3dCQUM5QixVQUFVLEVBQUUsY0FBYztxQkFDN0I7OEJBSWdCLE1BQU07c0JBRHRCLFNBQVM7dUJBQUMsZ0JBQWdCLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDO2dCQThCeEMsVUFBVTtzQkFEaEIsS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSVUsZUFBZTtzQkFEOUIsTUFBTTtnQkFPSSxVQUFVO3NCQURwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICB0eXBlIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIHR5cGUgRG9DaGVjayxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgc2lnbmFsLFxuICAgIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rha2VVbnRpbERlc3Ryb3llZCwgdG9TaWduYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7dHVpVHlwZWRGcm9tRXZlbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50LCB0dWlJc0N1cnJlbnRUYXJnZXR9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvZG9tJztcbmltcG9ydCB7XG4gICAgVFVJX0hJTlRfQ09NUE9ORU5ULFxuICAgIFR1aUhpbnQsXG4gICAgVHVpSGludERpcmVjdGl2ZSxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvZGlyZWN0aXZlcy9oaW50JztcbmltcG9ydCB7dHlwZSBQb2x5bW9ycGhldXNDb250ZW50LCBQb2x5bW9ycGhldXNPdXRsZXR9IGZyb20gJ0B0YWlnYS11aS9wb2x5bW9ycGhldXMnO1xuaW1wb3J0IHtcbiAgICBCZWhhdmlvclN1YmplY3QsXG4gICAgZGVib3VuY2VUaW1lLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkLFxuICAgIGZpbHRlcixcbiAgICBtYXAsXG4gICAgdHlwZSBPYnNlcnZhYmxlLFxuICAgIG9mLFxuICAgIHBhaXJ3aXNlLFxuICAgIHN0YXJ0V2l0aCxcbiAgICBTdWJqZWN0LFxuICAgIHN3aXRjaE1hcCxcbn0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7VFVJX0xJTkVfQ0xBTVBfT1BUSU9OU30gZnJvbSAnLi9saW5lLWNsYW1wLm9wdGlvbnMnO1xuaW1wb3J0IHtUdWlMaW5lQ2xhbXBCb3h9IGZyb20gJy4vbGluZS1jbGFtcC1ib3guY29tcG9uZW50JztcbmltcG9ydCB7VHVpTGluZUNsYW1wUG9zaXRpb25EaXJlY3RpdmV9IGZyb20gJy4vbGluZS1jbGFtcC1wb3NpdGlvbi5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAndHVpLWxpbmUtY2xhbXAnLFxuICAgIGltcG9ydHM6IFtQb2x5bW9ycGhldXNPdXRsZXQsIFR1aUhpbnQsIFR1aUxpbmVDbGFtcFBvc2l0aW9uRGlyZWN0aXZlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbGluZS1jbGFtcC50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9saW5lLWNsYW1wLnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogVFVJX0hJTlRfQ09NUE9ORU5ULFxuICAgICAgICAgICAgdXNlVmFsdWU6IFR1aUxpbmVDbGFtcEJveCxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS5oZWlnaHQucHhdJzogJ2hlaWdodCgpJyxcbiAgICAgICAgJ1tzdHlsZS5tYXgtaGVpZ2h0LnB4XSc6ICdtYXhIZWlnaHQoKScsXG4gICAgICAgICdbY2xhc3MuX2luaXRpYWxpemVkXSc6ICdpbml0aWFsaXplZCgpJyxcbiAgICAgICAgJyh0cmFuc2l0aW9uZW5kKSc6ICd1cGRhdGVWaWV3KCknLFxuICAgICAgICAnKG1vdXNlZW50ZXIpJzogJ3VwZGF0ZVZpZXcoKScsXG4gICAgICAgICcocmVzaXplKSc6ICd1cGRhdGVWaWV3KCknLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFR1aUxpbmVDbGFtcCBpbXBsZW1lbnRzIERvQ2hlY2ssIEFmdGVyVmlld0luaXQge1xuICAgIEBWaWV3Q2hpbGQoVHVpSGludERpcmVjdGl2ZSwge3JlYWQ6IEVsZW1lbnRSZWZ9KVxuICAgIHByaXZhdGUgcmVhZG9ubHkgb3V0bGV0PzogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnMgPSBpbmplY3QoVFVJX0xJTkVfQ0xBTVBfT1BUSU9OUyk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNkID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpbmVzTGltaXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdCgxKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGlzT3ZlcmZsb3duJCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgcHJvdGVjdGVkIGluaXRpYWxpemVkID0gc2lnbmFsKGZhbHNlKTtcbiAgICBwcm90ZWN0ZWQgbWF4SGVpZ2h0ID0gc2lnbmFsKDApO1xuICAgIHByb3RlY3RlZCBoZWlnaHQgPSBzaWduYWwoMCk7XG5cbiAgICBwcm90ZWN0ZWQgbGluZUNsYW1wID0gdG9TaWduYWwoXG4gICAgICAgIHRoaXMubGluZXNMaW1pdCQucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCgxKSxcbiAgICAgICAgICAgIHBhaXJ3aXNlKCksXG4gICAgICAgICAgICBzd2l0Y2hNYXAoKFtwcmV2LCBuZXh0XSkgPT5cbiAgICAgICAgICAgICAgICBuZXh0ID49IHByZXZcbiAgICAgICAgICAgICAgICAgICAgPyBvZihuZXh0KVxuICAgICAgICAgICAgICAgICAgICA6IHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZWwsICd0cmFuc2l0aW9uZW5kJykucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKHR1aUlzQ3VycmVudFRhcmdldCksXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiBuZXh0KSxcbiAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpLFxuICAgICAgICApLFxuICAgICAgICB7aW5pdGlhbFZhbHVlOiAwfSxcbiAgICApO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgbGluZUhlaWdodCA9IDI0O1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgY29udGVudDogUG9seW1vcnBoZXVzQ29udGVudDtcblxuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyByZWFkb25seSBvdmVyZmxvd25DaGFuZ2U6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLmlzT3ZlcmZsb3duJC5waXBlKFxuICAgICAgICBkZWJvdW5jZVRpbWUoMCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgKTtcblxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBsaW5lc0xpbWl0KGxpbmVzTGltaXQ6IG51bWJlcikge1xuICAgICAgICB0aGlzLmxpbmVzTGltaXQkLm5leHQobGluZXNMaW1pdCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGRhdGUoKTtcbiAgICAgICAgdGhpcy5pc092ZXJmbG93biQubmV4dCh0aGlzLm92ZXJmbG93bik7XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplZC5zZXQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBvdmVyZmxvd24oKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghdGhpcy5vdXRsZXQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHtzY3JvbGxIZWlnaHQsIHNjcm9sbFdpZHRofSA9IHRoaXMub3V0bGV0Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IHtjbGllbnRXaWR0aH0gPSB0aGlzLmVsO1xuXG4gICAgICAgIHJldHVybiBzY3JvbGxIZWlnaHQgPiB0aGlzLm1heEhlaWdodCgpIHx8IHNjcm9sbFdpZHRoID4gY2xpZW50V2lkdGg7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldCBjb21wdXRlZENvbnRlbnQoKTogUG9seW1vcnBoZXVzQ29udGVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuc2hvd0hpbnQgJiYgdGhpcy5vdmVyZmxvd24gPyB0aGlzLmNvbnRlbnQgOiAnJztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlVmlldygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGUoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLm91dGxldCkge1xuICAgICAgICAgICAgdGhpcy5oZWlnaHQuc2V0KHRoaXMub3V0bGV0Lm5hdGl2ZUVsZW1lbnQuc2Nyb2xsSGVpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubWF4SGVpZ2h0LnNldCh0aGlzLmxpbmVIZWlnaHQgKiB0aGlzLmxpbmVzTGltaXQkLnZhbHVlKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgdHVpTGluZUNsYW1wUG9zaXRpb25cbiAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgW3N0eWxlLi13ZWJraXQtbGluZS1jbGFtcF09XCJsaW5lQ2xhbXAoKVwiXG4gICAgW3N0eWxlLndvcmQtYnJlYWtdPVwibGluZUNsYW1wKCkgPiAxID8gJ2JyZWFrLXdvcmQnIDogJ2JyZWFrLWFsbCdcIlxuICAgIFt0dWlIaW50XT1cImNvbXB1dGVkQ29udGVudFwiXG4+XG4gICAgPG5nLWNvbnRhaW5lciAqcG9seW1vcnBoZXVzT3V0bGV0PVwiY29udGVudCBhcyB0ZXh0XCI+e3sgdGV4dCB9fTwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
@@ -3,13 +3,13 @@ import { tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
3
3
  import * as i0 from "@angular/core";
4
4
  class TuiPinStyles {
5
5
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPinStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiPinStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-pin" }, ngImport: i0, template: '', isInline: true, styles: ["tui-pin,[tuiPin]{--t-size: 2rem;transition-property:width,height,border,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:flex;inline-size:var(--t-size);block-size:var(--t-size);align-items:stretch;flex-direction:column;justify-content:center;text-align:center;border-radius:100%;font:var(--tui-font-text-s);font-weight:700;box-sizing:border-box;color:var(--tui-text-primary-on-accent-2);background:var(--tui-background-accent-2);box-shadow:0 0 0 .125rem var(--tui-background-elevation-2);border:0 solid var(--tui-background-accent-2);transform:translate(-50%,-50%)}tui-pin:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:empty,[tuiPin]:empty{--t-size: .75rem}tui-pin:empty:before,[tuiPin]:empty:before{display:none}tui-pin>input,[tuiPin]>input{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;border-radius:100%}tui-pin>img,[tuiPin]>img{max-block-size:100%;box-sizing:border-box;border-radius:100%;background:var(--tui-background-base)}tui-pin>tui-icon,[tuiPin]>tui-icon,tui-pin>tui-svg,[tuiPin]>tui-svg{transition-property:width,height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;inline-size:1.25rem;block-size:1.25rem;align-self:center}tui-pin:has(:checked),[tuiPin]:has(:checked){--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin:has(:checked)>img,[tuiPin]:has(:checked)>img{padding:.125rem}tui-pin:has(:checked)>tui-icon,[tuiPin]:has(:checked)>tui-icon,tui-pin:has(:checked)>tui-svg,[tuiPin]:has(:checked)>tui-svg{inline-size:2.125rem;block-size:2.125rem}tui-pin:has(:checked):before,[tuiPin]:has(:checked):before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin:has(:checked):after,[tuiPin]:has(:checked):after{top:4.5rem;opacity:1}tui-pin._open,[tuiPin]._open{--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin._open>img,[tuiPin]._open>img{padding:.125rem}tui-pin._open>tui-icon,[tuiPin]._open>tui-icon,tui-pin._open>tui-svg,[tuiPin]._open>tui-svg{inline-size:2.125rem;block-size:2.125rem}tui-pin._open:before,[tuiPin]._open:before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin._open:after,[tuiPin]._open:after{top:4.5rem;opacity:1}tui-pin:before,[tuiPin]:before{transition-property:transform,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;right:-.25rem;bottom:-.625rem;box-sizing:border-box;border-width:2.2rem 2rem;border-style:solid;border-color:inherit;opacity:0;transform:scale(.57) translate(-1.875rem,-1.875rem);transform-origin:top left;pointer-events:none;-webkit-mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat;mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat}tui-pin:after,[tuiPin]:after{transition-property:top,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;border:.1875rem solid currentColor;border-color:inherit;border-radius:100%;box-sizing:border-box;box-shadow:inherit;transform:translate(-50%,-50%);opacity:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiPinStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-pin" }, ngImport: i0, template: '', isInline: true, styles: ["tui-pin,[tuiPin]{--t-size: 2rem;transition-property:width,height,border,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:flex;inline-size:var(--t-size);block-size:var(--t-size);align-items:stretch;flex-direction:column;justify-content:center;text-align:center;border-radius:100%;font:var(--tui-font-text-s);font-weight:700;box-sizing:border-box;color:var(--tui-text-primary-on-accent-2);background:var(--tui-background-accent-2);box-shadow:0 0 0 .125rem var(--tui-background-elevation-2);border:0 solid var(--tui-background-accent-2);transform:translate(-50%,-50%)}tui-pin:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:empty,[tuiPin]:empty{--t-size: .75rem}tui-pin:empty:before,[tuiPin]:empty:before{display:none}tui-pin>input,[tuiPin]>input{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;border-radius:100%}tui-pin>img,[tuiPin]>img{max-block-size:100%;box-sizing:border-box;border-radius:100%;background:var(--tui-background-base)}tui-pin>tui-icon,[tuiPin]>tui-icon,tui-pin>tui-svg,[tuiPin]>tui-svg{transition-property:width,height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font-size:1.25rem;align-self:center}tui-pin:has(:checked),[tuiPin]:has(:checked){--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin:has(:checked)>img,[tuiPin]:has(:checked)>img{padding:.125rem}tui-pin:has(:checked)>tui-icon,[tuiPin]:has(:checked)>tui-icon,tui-pin:has(:checked)>tui-svg,[tuiPin]:has(:checked)>tui-svg{font-size:2.125rem}tui-pin:has(:checked):before,[tuiPin]:has(:checked):before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin:has(:checked):after,[tuiPin]:has(:checked):after{top:4.5rem;opacity:1}tui-pin._open,[tuiPin]._open{--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin._open>img,[tuiPin]._open>img{padding:.125rem}tui-pin._open>tui-icon,[tuiPin]._open>tui-icon,tui-pin._open>tui-svg,[tuiPin]._open>tui-svg{font-size:2.125rem}tui-pin._open:before,[tuiPin]._open:before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin._open:after,[tuiPin]._open:after{top:4.5rem;opacity:1}tui-pin:before,[tuiPin]:before{transition-property:transform,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;right:-.25rem;bottom:-.625rem;box-sizing:border-box;border-width:2.2rem 2rem;border-style:solid;border-color:inherit;opacity:0;transform:scale(.57) translate(-1.875rem,-1.875rem);transform-origin:top left;pointer-events:none;-webkit-mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat;mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat}tui-pin:after,[tuiPin]:after{transition-property:top,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;border:.1875rem solid currentColor;border-color:inherit;border-radius:100%;box-sizing:border-box;box-shadow:inherit;transform:translate(-50%,-50%);opacity:0}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
7
7
  }
8
8
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPinStyles, decorators: [{
9
9
  type: Component,
10
10
  args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
11
11
  class: 'tui-pin',
12
- }, styles: ["tui-pin,[tuiPin]{--t-size: 2rem;transition-property:width,height,border,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:flex;inline-size:var(--t-size);block-size:var(--t-size);align-items:stretch;flex-direction:column;justify-content:center;text-align:center;border-radius:100%;font:var(--tui-font-text-s);font-weight:700;box-sizing:border-box;color:var(--tui-text-primary-on-accent-2);background:var(--tui-background-accent-2);box-shadow:0 0 0 .125rem var(--tui-background-elevation-2);border:0 solid var(--tui-background-accent-2);transform:translate(-50%,-50%)}tui-pin:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:empty,[tuiPin]:empty{--t-size: .75rem}tui-pin:empty:before,[tuiPin]:empty:before{display:none}tui-pin>input,[tuiPin]>input{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;border-radius:100%}tui-pin>img,[tuiPin]>img{max-block-size:100%;box-sizing:border-box;border-radius:100%;background:var(--tui-background-base)}tui-pin>tui-icon,[tuiPin]>tui-icon,tui-pin>tui-svg,[tuiPin]>tui-svg{transition-property:width,height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;inline-size:1.25rem;block-size:1.25rem;align-self:center}tui-pin:has(:checked),[tuiPin]:has(:checked){--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin:has(:checked)>img,[tuiPin]:has(:checked)>img{padding:.125rem}tui-pin:has(:checked)>tui-icon,[tuiPin]:has(:checked)>tui-icon,tui-pin:has(:checked)>tui-svg,[tuiPin]:has(:checked)>tui-svg{inline-size:2.125rem;block-size:2.125rem}tui-pin:has(:checked):before,[tuiPin]:has(:checked):before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin:has(:checked):after,[tuiPin]:has(:checked):after{top:4.5rem;opacity:1}tui-pin._open,[tuiPin]._open{--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin._open>img,[tuiPin]._open>img{padding:.125rem}tui-pin._open>tui-icon,[tuiPin]._open>tui-icon,tui-pin._open>tui-svg,[tuiPin]._open>tui-svg{inline-size:2.125rem;block-size:2.125rem}tui-pin._open:before,[tuiPin]._open:before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin._open:after,[tuiPin]._open:after{top:4.5rem;opacity:1}tui-pin:before,[tuiPin]:before{transition-property:transform,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;right:-.25rem;bottom:-.625rem;box-sizing:border-box;border-width:2.2rem 2rem;border-style:solid;border-color:inherit;opacity:0;transform:scale(.57) translate(-1.875rem,-1.875rem);transform-origin:top left;pointer-events:none;-webkit-mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat;mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat}tui-pin:after,[tuiPin]:after{transition-property:top,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;border:.1875rem solid currentColor;border-color:inherit;border-radius:100%;box-sizing:border-box;box-shadow:inherit;transform:translate(-50%,-50%);opacity:0}\n"] }]
12
+ }, styles: ["tui-pin,[tuiPin]{--t-size: 2rem;transition-property:width,height,border,margin;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;position:relative;display:flex;inline-size:var(--t-size);block-size:var(--t-size);align-items:stretch;flex-direction:column;justify-content:center;text-align:center;border-radius:100%;font:var(--tui-font-text-s);font-weight:700;box-sizing:border-box;color:var(--tui-text-primary-on-accent-2);background:var(--tui-background-accent-2);box-shadow:0 0 0 .125rem var(--tui-background-elevation-2);border:0 solid var(--tui-background-accent-2);transform:translate(-50%,-50%)}tui-pin:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:matches(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled),[tuiPin]:is(a,button,select,textarea,input,label,.tui-interactive):not(:disabled){cursor:pointer}tui-pin:empty,[tuiPin]:empty{--t-size: .75rem}tui-pin:empty:before,[tuiPin]:empty:before{display:none}tui-pin>input,[tuiPin]>input{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;-webkit-appearance:none;appearance:none;border-radius:100%}tui-pin>img,[tuiPin]>img{max-block-size:100%;box-sizing:border-box;border-radius:100%;background:var(--tui-background-base)}tui-pin>tui-icon,[tuiPin]>tui-icon,tui-pin>tui-svg,[tuiPin]>tui-svg{transition-property:width,height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;font-size:1.25rem;align-self:center}tui-pin:has(:checked),[tuiPin]:has(:checked){--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin:has(:checked)>img,[tuiPin]:has(:checked)>img{padding:.125rem}tui-pin:has(:checked)>tui-icon,[tuiPin]:has(:checked)>tui-icon,tui-pin:has(:checked)>tui-svg,[tuiPin]:has(:checked)>tui-svg{font-size:2.125rem}tui-pin:has(:checked):before,[tuiPin]:has(:checked):before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin:has(:checked):after,[tuiPin]:has(:checked):after{top:4.5rem;opacity:1}tui-pin._open,[tuiPin]._open{--t-size: 3.5rem;font:var(--tui-font-text-m);font-weight:700;border-width:0;margin-block-start:-2.75rem}tui-pin._open>img,[tuiPin]._open>img{padding:.125rem}tui-pin._open>tui-icon,[tuiPin]._open>tui-icon,tui-pin._open>tui-svg,[tuiPin]._open>tui-svg{font-size:2.125rem}tui-pin._open:before,[tuiPin]._open:before{transform:scale(.99) translate(-1.875rem,-1.875rem);opacity:1}tui-pin._open:after,[tuiPin]._open:after{top:4.5rem;opacity:1}tui-pin:before,[tuiPin]:before{transition-property:transform,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;right:-.25rem;bottom:-.625rem;box-sizing:border-box;border-width:2.2rem 2rem;border-style:solid;border-color:inherit;opacity:0;transform:scale(.57) translate(-1.875rem,-1.875rem);transform-origin:top left;pointer-events:none;-webkit-mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat;mask:url('data:image/svg+xml,<svg width=\"60\" height=\"66\" viewBox=\"0 0 60 66\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 30.0917C0 13.4726 13.4313 0 30.0002 0C46.5687 0 60 13.4726 60 30.0917C60 44.2105 50.4927 56.0529 37.4162 59.2986C32.5552 60.5551 31.0408 65.275 31.0408 65.275C30.8892 65.697 30.4909 66 30.0183 66C29.5453 66 29.147 65.697 28.9938 65.275C28.9938 65.275 27.481 60.5551 22.6199 59.2986C9.46433 56.0206 0 43.5901 0 30.0917ZM30 57.75C45.3259 57.75 57.75 45.3259 57.75 30C57.75 14.6741 45.3259 2.25 30 2.25C14.6741 2.25 2.25 14.6741 2.25 30C2.25 45.3259 14.6741 57.75 30 57.75Z\" /></svg>') no-repeat}tui-pin:after,[tuiPin]:after{transition-property:top,opacity;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;content:\"\";position:absolute;top:50%;left:50%;border:.1875rem solid currentColor;border-color:inherit;border-radius:100%;box-sizing:border-box;box-shadow:inherit;transform:translate(-50%,-50%);opacity:0}\n"] }]
13
13
  }] });
14
14
  class TuiPin {
15
15
  constructor() {
@@ -115,7 +115,7 @@ class TuiPreviewComponent {
115
115
  ];
116
116
  }
117
117
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
118
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiPreviewComponent, isStandalone: true, selector: "tui-preview", inputs: { zoomable: "zoomable", rotatable: "rotatable", initialScale: "initialScale" }, ngImport: i0, template: "<ng-container *ngIf=\"texts$ | async as texts\">\n <section\n #contentWrapper\n attributeFilter=\"src\"\n characterData\n childList\n subtree\n class=\"t-wrapper\"\n [class.t-not-interactive-content]=\"zoomable\"\n [class.t-transitive]=\"transitioned$ | async\"\n [style.cursor]=\"cursor$ | async\"\n [style.transform]=\"wrapperTransform$ | async\"\n (tuiPan)=\"onPan($event)\"\n (tuiZoom)=\"onZoom($event)\"\n (waMutationObserver)=\"onMutation(contentWrapper)\"\n (waResizeObserver)=\"onResize($event)\"\n >\n <ng-content />\n </section>\n\n <header class=\"t-header\">\n <div class=\"t-title\">\n <ng-content select=\"tui-preview-title\" />\n </div>\n\n <ng-content select=\"tui-preview-pagination\" />\n\n <div class=\"t-actions\">\n <ng-content select=\"[tuiPreviewAction]\" />\n </div>\n </header>\n\n <footer class=\"t-footer\">\n <button\n *ngIf=\"rotatable\"\n tuiHintAppearance=\"dark\"\n tuiHintDescribe\n tuiHintDirection=\"top-right\"\n tuiIconButton\n tuiPreviewAction\n type=\"button\"\n class=\"t-rotate-button\"\n [iconStart]=\"icons.rotate\"\n [tuiHint]=\"texts.rotate\"\n (click)=\"rotate()\"\n ></button>\n\n <tui-preview-zoom\n *ngIf=\"zoomable\"\n [min]=\"minZoom\"\n [value]=\"(zoom$ | async) || 1\"\n (reset)=\"reset()\"\n (valueChange)=\"setZoom($event)\"\n />\n </footer>\n</ng-container>\n", styles: [":host{position:relative;display:flex;justify-content:center;align-items:center;inline-size:100%;block-size:100%;-webkit-user-select:none;user-select:none}.t-header{position:fixed;top:max(1rem,env(safe-area-inset-top));display:flex;inline-size:100%;padding:0 1rem;box-sizing:border-box}.t-footer{position:absolute;bottom:max(1rem,env(safe-area-inset-bottom));display:flex;inline-size:100%;padding:0 1rem;box-sizing:border-box;justify-content:center}.t-actions{display:flex;flex:1;justify-content:flex-end}.t-actions ::ng-deep>*{margin-inline-start:.625rem}.t-rotate-button{margin-inline-end:.3125rem}.t-title{flex:1}:host-context(tui-root._mobile) .t-title{display:none}.t-not-interactive-content ::ng-deep>*{pointer-events:none}.t-wrapper{will-change:transform}.t-transitive{transition-duration:.3s}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i1.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintContext", "tuiHintAppearance", "tuiHint"] }, { kind: "directive", type: i1.TuiHintDescribe, selector: "[tuiHintDescribe]", inputs: ["tuiHintDescribe"] }, { kind: "directive", type: TuiPan, selector: "[tuiPan]", outputs: ["tuiPan"] }, { kind: "directive", type: TuiPreviewAction, selector: "[tuiPreviewAction]" }, { kind: "component", type: TuiPreviewZoom, selector: "tui-preview-zoom", inputs: ["min", "max", "value"], outputs: ["valueChange", "reset"] }, { kind: "directive", type: TuiZoom, selector: "[tuiZoom]", outputs: ["tuiZoom"] }, { kind: "directive", type: WaMutationObserver, selector: "[waMutationObserver]", inputs: ["attributeFilter", "attributeOldValue", "attributes", "characterData", "characterDataOldValue", "childList", "subtree"], outputs: ["waMutationObserver"], exportAs: ["MutationObserver"] }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
118
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiPreviewComponent, isStandalone: true, selector: "tui-preview", inputs: { zoomable: "zoomable", rotatable: "rotatable", initialScale: "initialScale" }, ngImport: i0, template: "<ng-container *ngIf=\"texts$ | async as texts\">\n <section\n #contentWrapper\n attributeFilter=\"src\"\n characterData\n childList\n subtree\n class=\"t-wrapper\"\n [class.t-not-interactive-content]=\"zoomable\"\n [class.t-transitive]=\"transitioned$ | async\"\n [style.cursor]=\"cursor$ | async\"\n [style.transform]=\"wrapperTransform$ | async\"\n (tuiPan)=\"onPan($event)\"\n (tuiZoom)=\"onZoom($event)\"\n (waMutationObserver)=\"onMutation(contentWrapper)\"\n (waResizeObserver)=\"onResize($event)\"\n >\n <ng-content />\n </section>\n\n <header class=\"t-header\">\n <div class=\"t-title\">\n <ng-content select=\"tui-preview-title\" />\n </div>\n\n <ng-content select=\"tui-preview-pagination\" />\n\n <div class=\"t-actions\">\n <ng-content select=\"[tuiPreviewAction]\" />\n </div>\n </header>\n\n <footer class=\"t-footer\">\n <button\n *ngIf=\"rotatable\"\n tuiHintAppearance=\"dark\"\n tuiHintDescribe\n tuiHintDirection=\"top-right\"\n tuiIconButton\n tuiPreviewAction\n type=\"button\"\n class=\"t-rotate-button\"\n [iconStart]=\"icons.rotate\"\n [tuiHint]=\"texts.rotate\"\n (click)=\"rotate()\"\n ></button>\n\n <tui-preview-zoom\n *ngIf=\"zoomable\"\n [min]=\"minZoom\"\n [value]=\"(zoom$ | async) || 1\"\n (reset)=\"reset()\"\n (valueChange)=\"setZoom($event)\"\n />\n </footer>\n</ng-container>\n", styles: [":host{position:relative;display:flex;justify-content:center;align-items:center;inline-size:100%;block-size:100%;-webkit-user-select:none;user-select:none}.t-header{position:fixed;top:max(1rem,env(safe-area-inset-top));display:flex;inline-size:100%;padding:0 1rem;box-sizing:border-box}.t-footer{position:absolute;bottom:max(1rem,env(safe-area-inset-bottom));display:flex;inline-size:100%;padding:0 1rem;box-sizing:border-box;justify-content:center}.t-actions{display:flex;flex:1;justify-content:flex-end}.t-actions ::ng-deep>*{margin-inline-start:.625rem}.t-rotate-button{margin-inline-end:.3125rem}.t-title{flex:1}:host-context(tui-root._mobile) .t-title{display:none}.t-not-interactive-content ::ng-deep>*{pointer-events:none}.t-wrapper{will-change:transform}.t-transitive{transition-duration:.3s}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: TuiButton, selector: "a[tuiButton],button[tuiButton],a[tuiIconButton],button[tuiIconButton]", inputs: ["size"] }, { kind: "directive", type: i1.TuiHintDirective, selector: "[tuiHint]:not(ng-container):not(ng-template)", inputs: ["tuiHintContext", "tuiHintAppearance", "tuiHint"], outputs: ["tuiHintVisible"] }, { kind: "directive", type: i1.TuiHintDescribe, selector: "[tuiHintDescribe]", inputs: ["tuiHintDescribe"] }, { kind: "directive", type: TuiPan, selector: "[tuiPan]", outputs: ["tuiPan"] }, { kind: "directive", type: TuiPreviewAction, selector: "[tuiPreviewAction]" }, { kind: "component", type: TuiPreviewZoom, selector: "tui-preview-zoom", inputs: ["min", "max", "value"], outputs: ["valueChange", "reset"] }, { kind: "directive", type: TuiZoom, selector: "[tuiZoom]", outputs: ["tuiZoom"] }, { kind: "directive", type: WaMutationObserver, selector: "[waMutationObserver]", inputs: ["attributeFilter", "attributeOldValue", "attributes", "characterData", "characterDataOldValue", "childList", "subtree"], outputs: ["waMutationObserver"], exportAs: ["MutationObserver"] }, { kind: "directive", type: WaResizeObserver, selector: "[waResizeObserver]", inputs: ["box"], outputs: ["waResizeObserver"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
119
119
  }
120
120
  export { TuiPreviewComponent };
121
121
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiPreviewComponent, decorators: [{
@@ -139,4 +139,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
139
139
  }], initialScale: [{
140
140
  type: Input
141
141
  }] } });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9wcmV2aWV3L3ByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvcHJldmlldy9wcmV2aWV3LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssR0FDUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxFQUFDLE9BQU8sRUFBb0IsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFFLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTNFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBRTdELE1BQU0saUJBQWlCLEdBQXFCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ25ELE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQztBQUUxQixNQW1CYSxtQkFBbUI7SUFuQmhDO1FBb0JxQixPQUFFLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUUvQixZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ1osVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFDRixXQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbkMsVUFBSyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2xDLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUMzQyxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUNqRCxpQkFBaUIsQ0FDcEIsQ0FBQztRQUVpQixrQkFBYSxHQUFHLEtBQUssQ0FDcEMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssV0FBVyxDQUFDLENBQUMsRUFDekUsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7WUFDcEMsT0FBTyxFQUFFLElBQUk7U0FDaEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxFQUMvQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUNwRixDQUFDO1FBRWlCLFlBQU8sR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN6RCxHQUFHLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDbEUsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUN2QixDQUFDO1FBRWlCLHNCQUFpQixHQUFHLGFBQWEsQ0FBQztZQUNqRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRSxJQUFJLENBQUMsS0FBSztZQUNWLElBQUksQ0FBQyxTQUFTO1NBQ2pCLENBQUMsQ0FBQyxJQUFJLENBQ0gsR0FBRyxDQUNDLENBQUMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FDNUIsYUFBYSxTQUFTLFdBQVcsSUFBSSxZQUFZLFFBQVEsTUFBTSxDQUN0RSxDQUNKLENBQUM7UUFHSyxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBR2hCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFHbEIsaUJBQVksR0FBRyxHQUFHLENBQUM7S0ErSDdCO0lBN0hhLE1BQU07UUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRVMsS0FBSyxDQUFDLEtBQWdDO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNsQixJQUFJLENBQUMscUJBQXFCLENBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUN4QyxDQUNKLENBQUM7SUFDTixDQUFDO0lBRVMsVUFBVSxDQUFDLGNBQTJCO1FBQzVDLE1BQU0sRUFBQyxXQUFXLEVBQUUsWUFBWSxFQUFDLEdBQUcsY0FBYyxDQUFDO1FBRW5ELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFUyxNQUFNLENBQUMsRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBZTtRQUNwRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDN0M7SUFDTCxDQUFDO0lBRVMsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFpQztRQUN0RCxJQUFJLEtBQUssRUFBRSxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRVMsS0FBSztRQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFUyxPQUFPLENBQUMsSUFBWTtRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBRXZDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBWSxPQUFPO1FBQ2YsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JFLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV0RSxPQUFPLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBQyxDQUFDO0lBQzlCLENBQUM7SUFFTyxnQkFBZ0IsQ0FDcEIsYUFBcUIsRUFDckIsWUFBb0IsRUFDcEIsU0FBaUIsRUFDakIsUUFBZ0I7UUFFaEIsTUFBTSxPQUFPLEdBQ1QsYUFBYSxHQUFHLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWTtZQUM3QyxZQUFZLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDaEQsTUFBTSxFQUFDLFlBQVksRUFBRSxXQUFXLEVBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBRTVDLE9BQU8sT0FBTztZQUNWLENBQUMsQ0FBQyxRQUFRLENBQ0osSUFBSSxDQUFDLEdBQUcsQ0FDSixDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsYUFBYSxFQUNsRCxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsWUFBWSxDQUNuRCxFQUNELENBQUMsQ0FDSjtZQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDWixDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQWEsRUFBRSxNQUFjO1FBQ3pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUNoQyxNQUFNLEVBQ04sS0FBSyxFQUNMLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUNwQixJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FDdEIsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTyxXQUFXLENBQUMsT0FBZSxFQUFFLE9BQWUsRUFBRSxLQUFhO1FBQy9ELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ2xDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFRLEdBQUcsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFN0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FDOUIsRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFDLEVBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FDbkIsQ0FBQztRQUVGLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQztRQUMxRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUM7UUFFMUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ2xCLElBQUksQ0FBQyxxQkFBcUIsQ0FDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUNsQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQ3JDLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxDQUFTLEVBQUUsQ0FBUztRQUM5QyxNQUFNLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFeEMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTyxjQUFjLENBQ2xCLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBcUMsRUFDdEQsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUE0QixFQUNqQyxLQUFhO1FBRWIsT0FBTztZQUNILENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLO1lBQy9DLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLO1NBQ25ELENBQUM7SUFDTixDQUFDOytHQTVLUSxtQkFBbUI7bUdBQW5CLG1CQUFtQiwrSkMvQ2hDLHdxREF3REEsczFCRHhCUSxTQUFTLDhDQUNULElBQUksNkZBQ0osU0FBUyx5WkFFVCxNQUFNLDBFQUNOLGdCQUFnQiwrREFDaEIsY0FBYyxpSUFDZCxPQUFPLDRFQUNQLGtCQUFrQixvUUFDbEIsZ0JBQWdCOztTQU1YLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQW5CL0IsU0FBUztpQ0FDTSxJQUFJLFlBQ04sYUFBYSxXQUNkO3dCQUNMLFNBQVM7d0JBQ1QsSUFBSTt3QkFDSixTQUFTO3dCQUNULE9BQU87d0JBQ1AsTUFBTTt3QkFDTixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsT0FBTzt3QkFDUCxrQkFBa0I7d0JBQ2xCLGdCQUFnQjtxQkFDbkIsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBMEN4QyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsU0FBUztzQkFEZixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZSwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dhTXV0YXRpb25PYnNlcnZlcn0gZnJvbSAnQG5nLXdlYi1hcGlzL211dGF0aW9uLW9ic2VydmVyJztcbmltcG9ydCB7V2FSZXNpemVPYnNlcnZlcn0gZnJvbSAnQG5nLXdlYi1hcGlzL3Jlc2l6ZS1vYnNlcnZlcic7XG5pbXBvcnQge1RVSV9GQUxTRV9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aVBhbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3Bhbic7XG5pbXBvcnQge1R1aVpvb20sIHR5cGUgVHVpWm9vbUV2ZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvem9vbSc7XG5pbXBvcnQge3R1aURyYWdBbmREcm9wRnJvbSwgdHVpVHlwZWRGcm9tRXZlbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUNsYW1wLCB0dWlSb3VuZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcbmltcG9ydCB7dHVpUHh9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aUJ1dHRvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2hpbnQnO1xuaW1wb3J0IHtUVUlfUFJFVklFV19JQ09OUywgVFVJX1BSRVZJRVdfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIG1lcmdlLCBzdGFydFdpdGh9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1R1aVByZXZpZXdBY3Rpb259IGZyb20gJy4vYWN0aW9uL3ByZXZpZXctYWN0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1R1aVByZXZpZXdab29tfSBmcm9tICcuL3pvb20vcHJldmlldy16b29tLmNvbXBvbmVudCc7XG5cbmNvbnN0IEVNUFRZX0NPT1JESU5BVEVTOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuY29uc3QgUk9UQVRJT05fQU5HTEUgPSA5MDtcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1wcmV2aWV3JyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgTmdJZixcbiAgICAgICAgVHVpQnV0dG9uLFxuICAgICAgICBUdWlIaW50LFxuICAgICAgICBUdWlQYW4sXG4gICAgICAgIFR1aVByZXZpZXdBY3Rpb24sXG4gICAgICAgIFR1aVByZXZpZXdab29tLFxuICAgICAgICBUdWlab29tLFxuICAgICAgICBXYU11dGF0aW9uT2JzZXJ2ZXIsXG4gICAgICAgIFdhUmVzaXplT2JzZXJ2ZXIsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJldmlldy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wcmV2aWV3LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJldmlld0NvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcblxuICAgIHByb3RlY3RlZCBtaW5ab29tID0gMTtcbiAgICBwcm90ZWN0ZWQgd2lkdGggPSAwO1xuICAgIHByb3RlY3RlZCBoZWlnaHQgPSAwO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXh0cyQgPSBpbmplY3QoVFVJX1BSRVZJRVdfVEVYVFMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29ucyA9IGluamVjdChUVUlfUFJFVklFV19JQ09OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHpvb20kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KHRoaXMubWluWm9vbSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdGF0aW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29vcmRpbmF0ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxyZWFkb25seSBbbnVtYmVyLCBudW1iZXJdPihcbiAgICAgICAgRU1QVFlfQ09PUkRJTkFURVMsXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSB0cmFuc2l0aW9uZWQkID0gbWVyZ2UoXG4gICAgICAgIHR1aURyYWdBbmREcm9wRnJvbSh0aGlzLmVsKS5waXBlKG1hcCgoe3N0YWdlfSkgPT4gc3RhZ2UgIT09ICdjb250aW51ZXMnKSksXG4gICAgICAgIHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZWwsICd0b3VjaG1vdmUnLCB7XG4gICAgICAgICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgICB9KS5waXBlKG1hcChUVUlfRkFMU0VfSEFORExFUikpLFxuICAgICAgICB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmVsLCAnd2hlZWwnLCB7cGFzc2l2ZTogdHJ1ZX0pLnBpcGUobWFwKFRVSV9GQUxTRV9IQU5ETEVSKSksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjdXJzb3IkID0gdHVpRHJhZ0FuZERyb3BGcm9tKHRoaXMuZWwpLnBpcGUoXG4gICAgICAgIG1hcCgoe3N0YWdlfSkgPT4gKHN0YWdlID09PSAnY29udGludWVzJyA/ICdncmFiYmluZycgOiAnaW5pdGlhbCcpKSxcbiAgICAgICAgc3RhcnRXaXRoKCdpbml0aWFsJyksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSB3cmFwcGVyVHJhbnNmb3JtJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC5waXBlKG1hcCgoW3gsIHldKSA9PiBgJHt0dWlQeCh4KX0sICR7dHVpUHgoeSl9YCkpLFxuICAgICAgICB0aGlzLnpvb20kLFxuICAgICAgICB0aGlzLnJvdGF0aW9uJCxcbiAgICBdKS5waXBlKFxuICAgICAgICBtYXAoXG4gICAgICAgICAgICAoW3RyYW5zbGF0ZSwgem9vbSwgcm90YXRpb25dKSA9PlxuICAgICAgICAgICAgICAgIGB0cmFuc2xhdGUoJHt0cmFuc2xhdGV9KSBzY2FsZSgke3pvb219KSByb3RhdGUoJHtyb3RhdGlvbn1kZWcpYCxcbiAgICAgICAgKSxcbiAgICApO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgem9vbWFibGUgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcm90YXRhYmxlID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpbml0aWFsU2NhbGUgPSAwLjg7XG5cbiAgICBwcm90ZWN0ZWQgcm90YXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJvdGF0aW9uJC5uZXh0KHRoaXMucm90YXRpb24kLnZhbHVlIC0gUk9UQVRJT05fQU5HTEUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblBhbihkZWx0YTogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC5uZXh0KFxuICAgICAgICAgICAgdGhpcy5nZXRHdWFyZGVkQ29vcmRpbmF0ZXMoXG4gICAgICAgICAgICAgICAgdGhpcy5jb29yZGluYXRlcyQudmFsdWVbMF0gKyBkZWx0YVswXSxcbiAgICAgICAgICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC52YWx1ZVsxXSArIGRlbHRhWzFdLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25NdXRhdGlvbihjb250ZW50V3JhcHBlcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2NsaWVudFdpZHRoLCBjbGllbnRIZWlnaHR9ID0gY29udGVudFdyYXBwZXI7XG5cbiAgICAgICAgdGhpcy5yZWZyZXNoKGNsaWVudFdpZHRoLCBjbGllbnRIZWlnaHQpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblpvb20oe2NsaWVudFgsIGNsaWVudFksIGRlbHRhfTogVHVpWm9vbUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnpvb21hYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3Nab29tKGNsaWVudFgsIGNsaWVudFksIGRlbHRhKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblJlc2l6ZShbZW50cnldOiByZWFkb25seSBSZXNpemVPYnNlcnZlckVudHJ5W10pOiB2b2lkIHtcbiAgICAgICAgaWYgKGVudHJ5Py5jb250ZW50UmVjdCkge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoKGVudHJ5LmNvbnRlbnRSZWN0LndpZHRoLCBlbnRyeS5jb250ZW50UmVjdC5oZWlnaHQpO1xuICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnpvb20kLm5leHQodGhpcy5taW5ab29tKTtcbiAgICAgICAgdGhpcy5jb29yZGluYXRlcyQubmV4dChFTVBUWV9DT09SRElOQVRFUyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldFpvb20oem9vbTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuem9vbSQubmV4dCh6b29tKTtcbiAgICAgICAgY29uc3QgW3gsIHldID0gdGhpcy5jb29yZGluYXRlcyQudmFsdWU7XG5cbiAgICAgICAgdGhpcy5jb29yZGluYXRlcyQubmV4dCh0aGlzLmdldEd1YXJkZWRDb29yZGluYXRlcyh4LCB5KSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgb2Zmc2V0cygpOiB7b2Zmc2V0WDogbnVtYmVyOyBvZmZzZXRZOiBudW1iZXJ9IHtcbiAgICAgICAgY29uc3Qgb2Zmc2V0WCA9ICgodGhpcy56b29tJC52YWx1ZSAtIHRoaXMubWluWm9vbSkgKiB0aGlzLndpZHRoKSAvIDI7XG4gICAgICAgIGNvbnN0IG9mZnNldFkgPSAoKHRoaXMuem9vbSQudmFsdWUgLSB0aGlzLm1pblpvb20pICogdGhpcy5oZWlnaHQpIC8gMjtcblxuICAgICAgICByZXR1cm4ge29mZnNldFgsIG9mZnNldFl9O1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlTWluWm9vbShcbiAgICAgICAgY29udGVudEhlaWdodDogbnVtYmVyLFxuICAgICAgICBjb250ZW50V2lkdGg6IG51bWJlcixcbiAgICAgICAgYm94SGVpZ2h0OiBudW1iZXIsXG4gICAgICAgIGJveFdpZHRoOiBudW1iZXIsXG4gICAgKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgYmlnU2l6ZSA9XG4gICAgICAgICAgICBjb250ZW50SGVpZ2h0ID4gYm94SGVpZ2h0ICogdGhpcy5pbml0aWFsU2NhbGUgfHxcbiAgICAgICAgICAgIGNvbnRlbnRXaWR0aCA+IGJveFdpZHRoICogdGhpcy5pbml0aWFsU2NhbGU7XG4gICAgICAgIGNvbnN0IHtjbGllbnRIZWlnaHQsIGNsaWVudFdpZHRofSA9IHRoaXMuZWw7XG5cbiAgICAgICAgcmV0dXJuIGJpZ1NpemVcbiAgICAgICAgICAgID8gdHVpUm91bmQoXG4gICAgICAgICAgICAgICAgICBNYXRoLm1pbihcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpZW50SGVpZ2h0ICogdGhpcy5pbml0aWFsU2NhbGUpIC8gY29udGVudEhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpZW50V2lkdGggKiB0aGlzLmluaXRpYWxTY2FsZSkgLyBjb250ZW50V2lkdGgsXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgMixcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiAxO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVmcmVzaCh3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLndpZHRoID0gd2lkdGg7XG4gICAgICAgIHRoaXMuaGVpZ2h0ID0gaGVpZ2h0O1xuICAgICAgICB0aGlzLm1pblpvb20gPSB0aGlzLmNhbGN1bGF0ZU1pblpvb20oXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICB3aWR0aCxcbiAgICAgICAgICAgIHRoaXMuZWwuY2xpZW50SGVpZ2h0LFxuICAgICAgICAgICAgdGhpcy5lbC5jbGllbnRXaWR0aCxcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy56b29tJC5uZXh0KHRoaXMubWluWm9vbSk7XG4gICAgICAgIHRoaXMuY29vcmRpbmF0ZXMkLm5leHQoRU1QVFlfQ09PUkRJTkFURVMpO1xuICAgICAgICB0aGlzLnJvdGF0aW9uJC5uZXh0KDApO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2Vzc1pvb20oY2xpZW50WDogbnVtYmVyLCBjbGllbnRZOiBudW1iZXIsIGRlbHRhOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgb2xkU2NhbGUgPSB0aGlzLnpvb20kLnZhbHVlO1xuICAgICAgICBjb25zdCBuZXdTY2FsZSA9IHR1aUNsYW1wKG9sZFNjYWxlICsgZGVsdGEsIHRoaXMubWluWm9vbSwgMik7XG5cbiAgICAgICAgY29uc3QgY2VudGVyID0gdGhpcy5nZXRTY2FsZUNlbnRlcihcbiAgICAgICAgICAgIHtjbGllbnRYLCBjbGllbnRZfSxcbiAgICAgICAgICAgIHRoaXMuY29vcmRpbmF0ZXMkLnZhbHVlLFxuICAgICAgICAgICAgdGhpcy56b29tJC52YWx1ZSxcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBtb3ZlWCA9IGNlbnRlclswXSAqIG9sZFNjYWxlIC0gY2VudGVyWzBdICogbmV3U2NhbGU7XG4gICAgICAgIGNvbnN0IG1vdmVZID0gY2VudGVyWzFdICogb2xkU2NhbGUgLSBjZW50ZXJbMV0gKiBuZXdTY2FsZTtcblxuICAgICAgICB0aGlzLnpvb20kLm5leHQobmV3U2NhbGUpO1xuICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC5uZXh0KFxuICAgICAgICAgICAgdGhpcy5nZXRHdWFyZGVkQ29vcmRpbmF0ZXMoXG4gICAgICAgICAgICAgICAgdGhpcy5jb29yZGluYXRlcyQudmFsdWVbMF0gKyBtb3ZlWCxcbiAgICAgICAgICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC52YWx1ZVsxXSArIG1vdmVZLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEd1YXJkZWRDb29yZGluYXRlcyh4OiBudW1iZXIsIHk6IG51bWJlcik6IHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCB7b2Zmc2V0WCwgb2Zmc2V0WX0gPSB0aGlzLm9mZnNldHM7XG5cbiAgICAgICAgcmV0dXJuIFt0dWlDbGFtcCh4LCAtb2Zmc2V0WCwgb2Zmc2V0WCksIHR1aUNsYW1wKHksIC1vZmZzZXRZLCBvZmZzZXRZKV07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTY2FsZUNlbnRlcihcbiAgICAgICAge2NsaWVudFgsIGNsaWVudFl9OiB7Y2xpZW50WDogbnVtYmVyOyBjbGllbnRZOiBudW1iZXJ9LFxuICAgICAgICBbeCwgeV06IHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0sXG4gICAgICAgIHNjYWxlOiBudW1iZXIsXG4gICAgKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAoY2xpZW50WCAtIHggLSB0aGlzLmVsLm9mZnNldFdpZHRoIC8gMikgLyBzY2FsZSxcbiAgICAgICAgICAgIChjbGllbnRZIC0geSAtIHRoaXMuZWwub2Zmc2V0SGVpZ2h0IC8gMikgLyBzY2FsZSxcbiAgICAgICAgXTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidGV4dHMkIHwgYXN5bmMgYXMgdGV4dHNcIj5cbiAgICA8c2VjdGlvblxuICAgICAgICAjY29udGVudFdyYXBwZXJcbiAgICAgICAgYXR0cmlidXRlRmlsdGVyPVwic3JjXCJcbiAgICAgICAgY2hhcmFjdGVyRGF0YVxuICAgICAgICBjaGlsZExpc3RcbiAgICAgICAgc3VidHJlZVxuICAgICAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgICAgIFtjbGFzcy50LW5vdC1pbnRlcmFjdGl2ZS1jb250ZW50XT1cInpvb21hYmxlXCJcbiAgICAgICAgW2NsYXNzLnQtdHJhbnNpdGl2ZV09XCJ0cmFuc2l0aW9uZWQkIHwgYXN5bmNcIlxuICAgICAgICBbc3R5bGUuY3Vyc29yXT1cImN1cnNvciQgfCBhc3luY1wiXG4gICAgICAgIFtzdHlsZS50cmFuc2Zvcm1dPVwid3JhcHBlclRyYW5zZm9ybSQgfCBhc3luY1wiXG4gICAgICAgICh0dWlQYW4pPVwib25QYW4oJGV2ZW50KVwiXG4gICAgICAgICh0dWlab29tKT1cIm9uWm9vbSgkZXZlbnQpXCJcbiAgICAgICAgKHdhTXV0YXRpb25PYnNlcnZlcik9XCJvbk11dGF0aW9uKGNvbnRlbnRXcmFwcGVyKVwiXG4gICAgICAgICh3YVJlc2l6ZU9ic2VydmVyKT1cIm9uUmVzaXplKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L3NlY3Rpb24+XG5cbiAgICA8aGVhZGVyIGNsYXNzPVwidC1oZWFkZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInQtdGl0bGVcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aS1wcmV2aWV3LXRpdGxlXCIgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpLXByZXZpZXctcGFnaW5hdGlvblwiIC8+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInQtYWN0aW9uc1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3R1aVByZXZpZXdBY3Rpb25dXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8Zm9vdGVyIGNsYXNzPVwidC1mb290ZXJcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJyb3RhdGFibGVcIlxuICAgICAgICAgICAgdHVpSGludEFwcGVhcmFuY2U9XCJkYXJrXCJcbiAgICAgICAgICAgIHR1aUhpbnREZXNjcmliZVxuICAgICAgICAgICAgdHVpSGludERpcmVjdGlvbj1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICB0dWlQcmV2aWV3QWN0aW9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1yb3RhdGUtYnV0dG9uXCJcbiAgICAgICAgICAgIFtpY29uU3RhcnRdPVwiaWNvbnMucm90YXRlXCJcbiAgICAgICAgICAgIFt0dWlIaW50XT1cInRleHRzLnJvdGF0ZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwicm90YXRlKClcIlxuICAgICAgICA+PC9idXR0b24+XG5cbiAgICAgICAgPHR1aS1wcmV2aWV3LXpvb21cbiAgICAgICAgICAgICpuZ0lmPVwiem9vbWFibGVcIlxuICAgICAgICAgICAgW21pbl09XCJtaW5ab29tXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCIoem9vbSQgfCBhc3luYykgfHwgMVwiXG4gICAgICAgICAgICAocmVzZXQpPVwicmVzZXQoKVwiXG4gICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwic2V0Wm9vbSgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICA8L2Zvb3Rlcj5cbjwvbmctY29udGFpbmVyPlxuIl19
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJldmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy9wcmV2aWV3L3ByZXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvcHJldmlldy9wcmV2aWV3LnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsTUFBTSxFQUNOLEtBQUssR0FDUixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMxRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDcEQsT0FBTyxFQUFDLE9BQU8sRUFBb0IsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RSxPQUFPLEVBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUNoRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDM0QsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZELE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQzFFLE9BQU8sRUFBQyxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRTNFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBQ25FLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBRTdELE1BQU0saUJBQWlCLEdBQXFCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ25ELE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQztBQUUxQixNQW1CYSxtQkFBbUI7SUFuQmhDO1FBb0JxQixPQUFFLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUUvQixZQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ1osVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLFdBQU0sR0FBRyxDQUFDLENBQUM7UUFDRixXQUFNLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDbkMsVUFBSyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2xDLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xELGNBQVMsR0FBRyxJQUFJLGVBQWUsQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUMzQyxpQkFBWSxHQUFHLElBQUksZUFBZSxDQUNqRCxpQkFBaUIsQ0FDcEIsQ0FBQztRQUVpQixrQkFBYSxHQUFHLEtBQUssQ0FDcEMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEtBQUssV0FBVyxDQUFDLENBQUMsRUFDekUsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUU7WUFDcEMsT0FBTyxFQUFFLElBQUk7U0FDaEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxFQUMvQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxFQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUNwRixDQUFDO1FBRWlCLFlBQU8sR0FBRyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN6RCxHQUFHLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDbEUsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUN2QixDQUFDO1FBRWlCLHNCQUFpQixHQUFHLGFBQWEsQ0FBQztZQUNqRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNuRSxJQUFJLENBQUMsS0FBSztZQUNWLElBQUksQ0FBQyxTQUFTO1NBQ2pCLENBQUMsQ0FBQyxJQUFJLENBQ0gsR0FBRyxDQUNDLENBQUMsQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FDNUIsYUFBYSxTQUFTLFdBQVcsSUFBSSxZQUFZLFFBQVEsTUFBTSxDQUN0RSxDQUNKLENBQUM7UUFHSyxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBR2hCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFHbEIsaUJBQVksR0FBRyxHQUFHLENBQUM7S0ErSDdCO0lBN0hhLE1BQU07UUFDWixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRVMsS0FBSyxDQUFDLEtBQWdDO1FBQzVDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNsQixJQUFJLENBQUMscUJBQXFCLENBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUN4QyxDQUNKLENBQUM7SUFDTixDQUFDO0lBRVMsVUFBVSxDQUFDLGNBQTJCO1FBQzVDLE1BQU0sRUFBQyxXQUFXLEVBQUUsWUFBWSxFQUFDLEdBQUcsY0FBYyxDQUFDO1FBRW5ELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFUyxNQUFNLENBQUMsRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBZTtRQUNwRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDN0M7SUFDTCxDQUFDO0lBRVMsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFpQztRQUN0RCxJQUFJLEtBQUssRUFBRSxXQUFXLEVBQUU7WUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDNUI7SUFDTCxDQUFDO0lBRVMsS0FBSztRQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFUyxPQUFPLENBQUMsSUFBWTtRQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN0QixNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO1FBRXZDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBWSxPQUFPO1FBQ2YsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JFLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV0RSxPQUFPLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBQyxDQUFDO0lBQzlCLENBQUM7SUFFTyxnQkFBZ0IsQ0FDcEIsYUFBcUIsRUFDckIsWUFBb0IsRUFDcEIsU0FBaUIsRUFDakIsUUFBZ0I7UUFFaEIsTUFBTSxPQUFPLEdBQ1QsYUFBYSxHQUFHLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWTtZQUM3QyxZQUFZLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDaEQsTUFBTSxFQUFDLFlBQVksRUFBRSxXQUFXLEVBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBRTVDLE9BQU8sT0FBTztZQUNWLENBQUMsQ0FBQyxRQUFRLENBQ0osSUFBSSxDQUFDLEdBQUcsQ0FDSixDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsYUFBYSxFQUNsRCxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsWUFBWSxDQUNuRCxFQUNELENBQUMsQ0FDSjtZQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDWixDQUFDO0lBRU8sT0FBTyxDQUFDLEtBQWEsRUFBRSxNQUFjO1FBQ3pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUNoQyxNQUFNLEVBQ04sS0FBSyxFQUNMLElBQUksQ0FBQyxFQUFFLENBQUMsWUFBWSxFQUNwQixJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsQ0FDdEIsQ0FBQztRQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFTyxXQUFXLENBQUMsT0FBZSxFQUFFLE9BQWUsRUFBRSxLQUFhO1FBQy9ELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQ2xDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxRQUFRLEdBQUcsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFN0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FDOUIsRUFBQyxPQUFPLEVBQUUsT0FBTyxFQUFDLEVBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FDbkIsQ0FBQztRQUVGLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQztRQUMxRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUM7UUFFMUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQ2xCLElBQUksQ0FBQyxxQkFBcUIsQ0FDdEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxFQUNsQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQ3JDLENBQ0osQ0FBQztJQUNOLENBQUM7SUFFTyxxQkFBcUIsQ0FBQyxDQUFTLEVBQUUsQ0FBUztRQUM5QyxNQUFNLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFeEMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTyxjQUFjLENBQ2xCLEVBQUMsT0FBTyxFQUFFLE9BQU8sRUFBcUMsRUFDdEQsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUE0QixFQUNqQyxLQUFhO1FBRWIsT0FBTztZQUNILENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLO1lBQy9DLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsR0FBRyxLQUFLO1NBQ25ELENBQUM7SUFDTixDQUFDOytHQTVLUSxtQkFBbUI7bUdBQW5CLG1CQUFtQiwrSkMvQ2hDLHdxREF3REEsczFCRHhCUSxTQUFTLDhDQUNULElBQUksNkZBQ0osU0FBUyxzYkFFVCxNQUFNLDBFQUNOLGdCQUFnQiwrREFDaEIsY0FBYyxpSUFDZCxPQUFPLDRFQUNQLGtCQUFrQixvUUFDbEIsZ0JBQWdCOztTQU1YLG1CQUFtQjs0RkFBbkIsbUJBQW1CO2tCQW5CL0IsU0FBUztpQ0FDTSxJQUFJLFlBQ04sYUFBYSxXQUNkO3dCQUNMLFNBQVM7d0JBQ1QsSUFBSTt3QkFDSixTQUFTO3dCQUNULE9BQU87d0JBQ1AsTUFBTTt3QkFDTixnQkFBZ0I7d0JBQ2hCLGNBQWM7d0JBQ2QsT0FBTzt3QkFDUCxrQkFBa0I7d0JBQ2xCLGdCQUFnQjtxQkFDbkIsbUJBR2dCLHVCQUF1QixDQUFDLE1BQU07OEJBMEN4QyxRQUFRO3NCQURkLEtBQUs7Z0JBSUMsU0FBUztzQkFEZixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FzeW5jUGlwZSwgTmdJZn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIGluamVjdCxcbiAgICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1dhTXV0YXRpb25PYnNlcnZlcn0gZnJvbSAnQG5nLXdlYi1hcGlzL211dGF0aW9uLW9ic2VydmVyJztcbmltcG9ydCB7V2FSZXNpemVPYnNlcnZlcn0gZnJvbSAnQG5nLXdlYi1hcGlzL3Jlc2l6ZS1vYnNlcnZlcic7XG5pbXBvcnQge1RVSV9GQUxTRV9IQU5ETEVSfSBmcm9tICdAdGFpZ2EtdWkvY2RrL2NvbnN0YW50cyc7XG5pbXBvcnQge1R1aVBhbn0gZnJvbSAnQHRhaWdhLXVpL2Nkay9kaXJlY3RpdmVzL3Bhbic7XG5pbXBvcnQge1R1aVpvb20sIHR5cGUgVHVpWm9vbUV2ZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL2RpcmVjdGl2ZXMvem9vbSc7XG5pbXBvcnQge3R1aURyYWdBbmREcm9wRnJvbSwgdHVpVHlwZWRGcm9tRXZlbnR9IGZyb20gJ0B0YWlnYS11aS9jZGsvb2JzZXJ2YWJsZXMnO1xuaW1wb3J0IHt0dWlJbmplY3RFbGVtZW50fSBmcm9tICdAdGFpZ2EtdWkvY2RrL3V0aWxzL2RvbSc7XG5pbXBvcnQge3R1aUNsYW1wLCB0dWlSb3VuZH0gZnJvbSAnQHRhaWdhLXVpL2Nkay91dGlscy9tYXRoJztcbmltcG9ydCB7dHVpUHh9IGZyb20gJ0B0YWlnYS11aS9jZGsvdXRpbHMvbWlzY2VsbGFuZW91cyc7XG5pbXBvcnQge1R1aUJ1dHRvbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHtUdWlIaW50fSBmcm9tICdAdGFpZ2EtdWkvY29yZS9kaXJlY3RpdmVzL2hpbnQnO1xuaW1wb3J0IHtUVUlfUFJFVklFV19JQ09OUywgVFVJX1BSRVZJRVdfVEVYVFN9IGZyb20gJ0B0YWlnYS11aS9raXQvdG9rZW5zJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIG1lcmdlLCBzdGFydFdpdGh9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQge1R1aVByZXZpZXdBY3Rpb259IGZyb20gJy4vYWN0aW9uL3ByZXZpZXctYWN0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQge1R1aVByZXZpZXdab29tfSBmcm9tICcuL3pvb20vcHJldmlldy16b29tLmNvbXBvbmVudCc7XG5cbmNvbnN0IEVNUFRZX0NPT1JESU5BVEVTOiBbbnVtYmVyLCBudW1iZXJdID0gWzAsIDBdO1xuY29uc3QgUk9UQVRJT05fQU5HTEUgPSA5MDtcblxuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ3R1aS1wcmV2aWV3JyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgTmdJZixcbiAgICAgICAgVHVpQnV0dG9uLFxuICAgICAgICBUdWlIaW50LFxuICAgICAgICBUdWlQYW4sXG4gICAgICAgIFR1aVByZXZpZXdBY3Rpb24sXG4gICAgICAgIFR1aVByZXZpZXdab29tLFxuICAgICAgICBUdWlab29tLFxuICAgICAgICBXYU11dGF0aW9uT2JzZXJ2ZXIsXG4gICAgICAgIFdhUmVzaXplT2JzZXJ2ZXIsXG4gICAgXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcHJldmlldy50ZW1wbGF0ZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9wcmV2aWV3LnN0eWxlLmxlc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgVHVpUHJldmlld0NvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbCA9IHR1aUluamVjdEVsZW1lbnQoKTtcblxuICAgIHByb3RlY3RlZCBtaW5ab29tID0gMTtcbiAgICBwcm90ZWN0ZWQgd2lkdGggPSAwO1xuICAgIHByb3RlY3RlZCBoZWlnaHQgPSAwO1xuICAgIHByb3RlY3RlZCByZWFkb25seSB0ZXh0cyQgPSBpbmplY3QoVFVJX1BSRVZJRVdfVEVYVFMpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29ucyA9IGluamVjdChUVUlfUFJFVklFV19JQ09OUyk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHpvb20kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KHRoaXMubWluWm9vbSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdGF0aW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29vcmRpbmF0ZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxyZWFkb25seSBbbnVtYmVyLCBudW1iZXJdPihcbiAgICAgICAgRU1QVFlfQ09PUkRJTkFURVMsXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSB0cmFuc2l0aW9uZWQkID0gbWVyZ2UoXG4gICAgICAgIHR1aURyYWdBbmREcm9wRnJvbSh0aGlzLmVsKS5waXBlKG1hcCgoe3N0YWdlfSkgPT4gc3RhZ2UgIT09ICdjb250aW51ZXMnKSksXG4gICAgICAgIHR1aVR5cGVkRnJvbUV2ZW50KHRoaXMuZWwsICd0b3VjaG1vdmUnLCB7XG4gICAgICAgICAgICBwYXNzaXZlOiB0cnVlLFxuICAgICAgICB9KS5waXBlKG1hcChUVUlfRkFMU0VfSEFORExFUikpLFxuICAgICAgICB0dWlUeXBlZEZyb21FdmVudCh0aGlzLmVsLCAnd2hlZWwnLCB7cGFzc2l2ZTogdHJ1ZX0pLnBpcGUobWFwKFRVSV9GQUxTRV9IQU5ETEVSKSksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBjdXJzb3IkID0gdHVpRHJhZ0FuZERyb3BGcm9tKHRoaXMuZWwpLnBpcGUoXG4gICAgICAgIG1hcCgoe3N0YWdlfSkgPT4gKHN0YWdlID09PSAnY29udGludWVzJyA/ICdncmFiYmluZycgOiAnaW5pdGlhbCcpKSxcbiAgICAgICAgc3RhcnRXaXRoKCdpbml0aWFsJyksXG4gICAgKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSB3cmFwcGVyVHJhbnNmb3JtJCA9IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC5waXBlKG1hcCgoW3gsIHldKSA9PiBgJHt0dWlQeCh4KX0sICR7dHVpUHgoeSl9YCkpLFxuICAgICAgICB0aGlzLnpvb20kLFxuICAgICAgICB0aGlzLnJvdGF0aW9uJCxcbiAgICBdKS5waXBlKFxuICAgICAgICBtYXAoXG4gICAgICAgICAgICAoW3RyYW5zbGF0ZSwgem9vbSwgcm90YXRpb25dKSA9PlxuICAgICAgICAgICAgICAgIGB0cmFuc2xhdGUoJHt0cmFuc2xhdGV9KSBzY2FsZSgke3pvb219KSByb3RhdGUoJHtyb3RhdGlvbn1kZWcpYCxcbiAgICAgICAgKSxcbiAgICApO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgem9vbWFibGUgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgcm90YXRhYmxlID0gZmFsc2U7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBpbml0aWFsU2NhbGUgPSAwLjg7XG5cbiAgICBwcm90ZWN0ZWQgcm90YXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJvdGF0aW9uJC5uZXh0KHRoaXMucm90YXRpb24kLnZhbHVlIC0gUk9UQVRJT05fQU5HTEUpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblBhbihkZWx0YTogcmVhZG9ubHkgW251bWJlciwgbnVtYmVyXSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC5uZXh0KFxuICAgICAgICAgICAgdGhpcy5nZXRHdWFyZGVkQ29vcmRpbmF0ZXMoXG4gICAgICAgICAgICAgICAgdGhpcy5jb29yZGluYXRlcyQudmFsdWVbMF0gKyBkZWx0YVswXSxcbiAgICAgICAgICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC52YWx1ZVsxXSArIGRlbHRhWzFdLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25NdXRhdGlvbihjb250ZW50V3JhcHBlcjogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qge2NsaWVudFdpZHRoLCBjbGllbnRIZWlnaHR9ID0gY29udGVudFdyYXBwZXI7XG5cbiAgICAgICAgdGhpcy5yZWZyZXNoKGNsaWVudFdpZHRoLCBjbGllbnRIZWlnaHQpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblpvb20oe2NsaWVudFgsIGNsaWVudFksIGRlbHRhfTogVHVpWm9vbUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnpvb21hYmxlKSB7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3Nab29tKGNsaWVudFgsIGNsaWVudFksIGRlbHRhKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblJlc2l6ZShbZW50cnldOiByZWFkb25seSBSZXNpemVPYnNlcnZlckVudHJ5W10pOiB2b2lkIHtcbiAgICAgICAgaWYgKGVudHJ5Py5jb250ZW50UmVjdCkge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoKGVudHJ5LmNvbnRlbnRSZWN0LndpZHRoLCBlbnRyeS5jb250ZW50UmVjdC5oZWlnaHQpO1xuICAgICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnpvb20kLm5leHQodGhpcy5taW5ab29tKTtcbiAgICAgICAgdGhpcy5jb29yZGluYXRlcyQubmV4dChFTVBUWV9DT09SRElOQVRFUyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldFpvb20oem9vbTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuem9vbSQubmV4dCh6b29tKTtcbiAgICAgICAgY29uc3QgW3gsIHldID0gdGhpcy5jb29yZGluYXRlcyQudmFsdWU7XG5cbiAgICAgICAgdGhpcy5jb29yZGluYXRlcyQubmV4dCh0aGlzLmdldEd1YXJkZWRDb29yZGluYXRlcyh4LCB5KSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXQgb2Zmc2V0cygpOiB7b2Zmc2V0WDogbnVtYmVyOyBvZmZzZXRZOiBudW1iZXJ9IHtcbiAgICAgICAgY29uc3Qgb2Zmc2V0WCA9ICgodGhpcy56b29tJC52YWx1ZSAtIHRoaXMubWluWm9vbSkgKiB0aGlzLndpZHRoKSAvIDI7XG4gICAgICAgIGNvbnN0IG9mZnNldFkgPSAoKHRoaXMuem9vbSQudmFsdWUgLSB0aGlzLm1pblpvb20pICogdGhpcy5oZWlnaHQpIC8gMjtcblxuICAgICAgICByZXR1cm4ge29mZnNldFgsIG9mZnNldFl9O1xuICAgIH1cblxuICAgIHByaXZhdGUgY2FsY3VsYXRlTWluWm9vbShcbiAgICAgICAgY29udGVudEhlaWdodDogbnVtYmVyLFxuICAgICAgICBjb250ZW50V2lkdGg6IG51bWJlcixcbiAgICAgICAgYm94SGVpZ2h0OiBudW1iZXIsXG4gICAgICAgIGJveFdpZHRoOiBudW1iZXIsXG4gICAgKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgYmlnU2l6ZSA9XG4gICAgICAgICAgICBjb250ZW50SGVpZ2h0ID4gYm94SGVpZ2h0ICogdGhpcy5pbml0aWFsU2NhbGUgfHxcbiAgICAgICAgICAgIGNvbnRlbnRXaWR0aCA+IGJveFdpZHRoICogdGhpcy5pbml0aWFsU2NhbGU7XG4gICAgICAgIGNvbnN0IHtjbGllbnRIZWlnaHQsIGNsaWVudFdpZHRofSA9IHRoaXMuZWw7XG5cbiAgICAgICAgcmV0dXJuIGJpZ1NpemVcbiAgICAgICAgICAgID8gdHVpUm91bmQoXG4gICAgICAgICAgICAgICAgICBNYXRoLm1pbihcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpZW50SGVpZ2h0ICogdGhpcy5pbml0aWFsU2NhbGUpIC8gY29udGVudEhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpZW50V2lkdGggKiB0aGlzLmluaXRpYWxTY2FsZSkgLyBjb250ZW50V2lkdGgsXG4gICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgMixcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiAxO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVmcmVzaCh3aWR0aDogbnVtYmVyLCBoZWlnaHQ6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLndpZHRoID0gd2lkdGg7XG4gICAgICAgIHRoaXMuaGVpZ2h0ID0gaGVpZ2h0O1xuICAgICAgICB0aGlzLm1pblpvb20gPSB0aGlzLmNhbGN1bGF0ZU1pblpvb20oXG4gICAgICAgICAgICBoZWlnaHQsXG4gICAgICAgICAgICB3aWR0aCxcbiAgICAgICAgICAgIHRoaXMuZWwuY2xpZW50SGVpZ2h0LFxuICAgICAgICAgICAgdGhpcy5lbC5jbGllbnRXaWR0aCxcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy56b29tJC5uZXh0KHRoaXMubWluWm9vbSk7XG4gICAgICAgIHRoaXMuY29vcmRpbmF0ZXMkLm5leHQoRU1QVFlfQ09PUkRJTkFURVMpO1xuICAgICAgICB0aGlzLnJvdGF0aW9uJC5uZXh0KDApO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJvY2Vzc1pvb20oY2xpZW50WDogbnVtYmVyLCBjbGllbnRZOiBudW1iZXIsIGRlbHRhOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgb2xkU2NhbGUgPSB0aGlzLnpvb20kLnZhbHVlO1xuICAgICAgICBjb25zdCBuZXdTY2FsZSA9IHR1aUNsYW1wKG9sZFNjYWxlICsgZGVsdGEsIHRoaXMubWluWm9vbSwgMik7XG5cbiAgICAgICAgY29uc3QgY2VudGVyID0gdGhpcy5nZXRTY2FsZUNlbnRlcihcbiAgICAgICAgICAgIHtjbGllbnRYLCBjbGllbnRZfSxcbiAgICAgICAgICAgIHRoaXMuY29vcmRpbmF0ZXMkLnZhbHVlLFxuICAgICAgICAgICAgdGhpcy56b29tJC52YWx1ZSxcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBtb3ZlWCA9IGNlbnRlclswXSAqIG9sZFNjYWxlIC0gY2VudGVyWzBdICogbmV3U2NhbGU7XG4gICAgICAgIGNvbnN0IG1vdmVZID0gY2VudGVyWzFdICogb2xkU2NhbGUgLSBjZW50ZXJbMV0gKiBuZXdTY2FsZTtcblxuICAgICAgICB0aGlzLnpvb20kLm5leHQobmV3U2NhbGUpO1xuICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC5uZXh0KFxuICAgICAgICAgICAgdGhpcy5nZXRHdWFyZGVkQ29vcmRpbmF0ZXMoXG4gICAgICAgICAgICAgICAgdGhpcy5jb29yZGluYXRlcyQudmFsdWVbMF0gKyBtb3ZlWCxcbiAgICAgICAgICAgICAgICB0aGlzLmNvb3JkaW5hdGVzJC52YWx1ZVsxXSArIG1vdmVZLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEd1YXJkZWRDb29yZGluYXRlcyh4OiBudW1iZXIsIHk6IG51bWJlcik6IHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0ge1xuICAgICAgICBjb25zdCB7b2Zmc2V0WCwgb2Zmc2V0WX0gPSB0aGlzLm9mZnNldHM7XG5cbiAgICAgICAgcmV0dXJuIFt0dWlDbGFtcCh4LCAtb2Zmc2V0WCwgb2Zmc2V0WCksIHR1aUNsYW1wKHksIC1vZmZzZXRZLCBvZmZzZXRZKV07XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTY2FsZUNlbnRlcihcbiAgICAgICAge2NsaWVudFgsIGNsaWVudFl9OiB7Y2xpZW50WDogbnVtYmVyOyBjbGllbnRZOiBudW1iZXJ9LFxuICAgICAgICBbeCwgeV06IHJlYWRvbmx5IFtudW1iZXIsIG51bWJlcl0sXG4gICAgICAgIHNjYWxlOiBudW1iZXIsXG4gICAgKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAoY2xpZW50WCAtIHggLSB0aGlzLmVsLm9mZnNldFdpZHRoIC8gMikgLyBzY2FsZSxcbiAgICAgICAgICAgIChjbGllbnRZIC0geSAtIHRoaXMuZWwub2Zmc2V0SGVpZ2h0IC8gMikgLyBzY2FsZSxcbiAgICAgICAgXTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwidGV4dHMkIHwgYXN5bmMgYXMgdGV4dHNcIj5cbiAgICA8c2VjdGlvblxuICAgICAgICAjY29udGVudFdyYXBwZXJcbiAgICAgICAgYXR0cmlidXRlRmlsdGVyPVwic3JjXCJcbiAgICAgICAgY2hhcmFjdGVyRGF0YVxuICAgICAgICBjaGlsZExpc3RcbiAgICAgICAgc3VidHJlZVxuICAgICAgICBjbGFzcz1cInQtd3JhcHBlclwiXG4gICAgICAgIFtjbGFzcy50LW5vdC1pbnRlcmFjdGl2ZS1jb250ZW50XT1cInpvb21hYmxlXCJcbiAgICAgICAgW2NsYXNzLnQtdHJhbnNpdGl2ZV09XCJ0cmFuc2l0aW9uZWQkIHwgYXN5bmNcIlxuICAgICAgICBbc3R5bGUuY3Vyc29yXT1cImN1cnNvciQgfCBhc3luY1wiXG4gICAgICAgIFtzdHlsZS50cmFuc2Zvcm1dPVwid3JhcHBlclRyYW5zZm9ybSQgfCBhc3luY1wiXG4gICAgICAgICh0dWlQYW4pPVwib25QYW4oJGV2ZW50KVwiXG4gICAgICAgICh0dWlab29tKT1cIm9uWm9vbSgkZXZlbnQpXCJcbiAgICAgICAgKHdhTXV0YXRpb25PYnNlcnZlcik9XCJvbk11dGF0aW9uKGNvbnRlbnRXcmFwcGVyKVwiXG4gICAgICAgICh3YVJlc2l6ZU9ic2VydmVyKT1cIm9uUmVzaXplKCRldmVudClcIlxuICAgID5cbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L3NlY3Rpb24+XG5cbiAgICA8aGVhZGVyIGNsYXNzPVwidC1oZWFkZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInQtdGl0bGVcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInR1aS1wcmV2aWV3LXRpdGxlXCIgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidHVpLXByZXZpZXctcGFnaW5hdGlvblwiIC8+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cInQtYWN0aW9uc1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3R1aVByZXZpZXdBY3Rpb25dXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8Zm9vdGVyIGNsYXNzPVwidC1mb290ZXJcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKm5nSWY9XCJyb3RhdGFibGVcIlxuICAgICAgICAgICAgdHVpSGludEFwcGVhcmFuY2U9XCJkYXJrXCJcbiAgICAgICAgICAgIHR1aUhpbnREZXNjcmliZVxuICAgICAgICAgICAgdHVpSGludERpcmVjdGlvbj1cInRvcC1yaWdodFwiXG4gICAgICAgICAgICB0dWlJY29uQnV0dG9uXG4gICAgICAgICAgICB0dWlQcmV2aWV3QWN0aW9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwidC1yb3RhdGUtYnV0dG9uXCJcbiAgICAgICAgICAgIFtpY29uU3RhcnRdPVwiaWNvbnMucm90YXRlXCJcbiAgICAgICAgICAgIFt0dWlIaW50XT1cInRleHRzLnJvdGF0ZVwiXG4gICAgICAgICAgICAoY2xpY2spPVwicm90YXRlKClcIlxuICAgICAgICA+PC9idXR0b24+XG5cbiAgICAgICAgPHR1aS1wcmV2aWV3LXpvb21cbiAgICAgICAgICAgICpuZ0lmPVwiem9vbWFibGVcIlxuICAgICAgICAgICAgW21pbl09XCJtaW5ab29tXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCIoem9vbSQgfCBhc3luYykgfHwgMVwiXG4gICAgICAgICAgICAocmVzZXQpPVwicmVzZXQoKVwiXG4gICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwic2V0Wm9vbSgkZXZlbnQpXCJcbiAgICAgICAgLz5cbiAgICA8L2Zvb3Rlcj5cbjwvbmctY29udGFpbmVyPlxuIl19