@villedemontreal/angular-ui 13.0.0 → 14.0.1

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 (78) hide show
  1. package/esm2020/lib/alert/alert.component.mjs +19 -19
  2. package/esm2020/lib/alert/module.mjs +5 -5
  3. package/esm2020/lib/avatar/avatar.component.mjs +7 -7
  4. package/esm2020/lib/avatar/module.mjs +5 -5
  5. package/esm2020/lib/badge/badge.component.mjs +4 -4
  6. package/esm2020/lib/badge/module.mjs +5 -5
  7. package/esm2020/lib/bao.module.mjs +9 -11
  8. package/esm2020/lib/breadcrumb/breadcrumb.component.mjs +4 -4
  9. package/esm2020/lib/breadcrumb/module.mjs +5 -5
  10. package/esm2020/lib/button/button.component.mjs +6 -6
  11. package/esm2020/lib/button/module.mjs +5 -5
  12. package/esm2020/lib/card/card.component.mjs +16 -16
  13. package/esm2020/lib/card/module.mjs +5 -5
  14. package/esm2020/lib/checkbox/checkbox-group.component.mjs +4 -4
  15. package/esm2020/lib/checkbox/checkbox.component.mjs +7 -7
  16. package/esm2020/lib/checkbox/module.mjs +5 -5
  17. package/esm2020/lib/common-components/error-text/errorText.component.mjs +4 -4
  18. package/esm2020/lib/common-components/guiding-text/guidingText.component.mjs +4 -4
  19. package/esm2020/lib/common-components/label-text/labelText.component.mjs +4 -4
  20. package/esm2020/lib/common-components/module.mjs +5 -5
  21. package/esm2020/lib/common-components/title-text/titleText.component.mjs +4 -4
  22. package/esm2020/lib/dropdown-menu/dropdown-menu.component.mjs +22 -22
  23. package/esm2020/lib/dropdown-menu/module.mjs +5 -5
  24. package/esm2020/lib/header-info/header-info.component.mjs +19 -19
  25. package/esm2020/lib/header-info/module.mjs +5 -5
  26. package/esm2020/lib/hyperlink/hyperlink.component.mjs +4 -4
  27. package/esm2020/lib/hyperlink/module.mjs +5 -5
  28. package/esm2020/lib/icon/bao-icon-registry.mjs +4 -4
  29. package/esm2020/lib/icon/icon.component.mjs +4 -4
  30. package/esm2020/lib/icon/module.mjs +5 -5
  31. package/esm2020/lib/list/list.component.mjs +16 -16
  32. package/esm2020/lib/list/module.mjs +5 -5
  33. package/esm2020/lib/modal/modal-container.mjs +8 -8
  34. package/esm2020/lib/modal/modal-directives.mjs +4 -4
  35. package/esm2020/lib/modal/modal.mjs +7 -7
  36. package/esm2020/lib/modal/module.mjs +9 -11
  37. package/esm2020/lib/radio/module.mjs +10 -12
  38. package/esm2020/lib/radio/radio-group.component.mjs +5 -5
  39. package/esm2020/lib/radio/radio.component.mjs +7 -7
  40. package/esm2020/lib/summary/list-summary.component.mjs +9 -16
  41. package/esm2020/lib/summary/module.mjs +5 -5
  42. package/esm2020/lib/summary/summary.component.mjs +7 -7
  43. package/esm2020/lib/tabs/module.mjs +5 -5
  44. package/esm2020/lib/tabs/tabs.component.mjs +13 -13
  45. package/esm2020/lib/tag/module.mjs +5 -5
  46. package/esm2020/lib/tag/tag.component.mjs +4 -4
  47. package/fesm2015/villedemontreal-angular-ui.mjs +273 -286
  48. package/fesm2015/villedemontreal-angular-ui.mjs.map +1 -1
  49. package/fesm2020/villedemontreal-angular-ui.mjs +273 -286
  50. package/fesm2020/villedemontreal-angular-ui.mjs.map +1 -1
  51. package/{villedemontreal-angular-ui.d.ts → index.d.ts} +0 -0
  52. package/lib/alert/alert.component.d.ts +5 -5
  53. package/lib/avatar/avatar.component.d.ts +2 -2
  54. package/lib/badge/badge.component.d.ts +1 -1
  55. package/lib/breadcrumb/breadcrumb.component.d.ts +1 -1
  56. package/lib/button/button.component.d.ts +1 -1
  57. package/lib/card/card.component.d.ts +5 -5
  58. package/lib/checkbox/checkbox-group.component.d.ts +1 -1
  59. package/lib/checkbox/checkbox.component.d.ts +2 -2
  60. package/lib/common-components/error-text/errorText.component.d.ts +1 -1
  61. package/lib/common-components/guiding-text/guidingText.component.d.ts +1 -1
  62. package/lib/common-components/label-text/labelText.component.d.ts +1 -1
  63. package/lib/common-components/title-text/titleText.component.d.ts +1 -1
  64. package/lib/dropdown-menu/dropdown-menu.component.d.ts +7 -7
  65. package/lib/header-info/header-info.component.d.ts +6 -6
  66. package/lib/hyperlink/hyperlink.component.d.ts +1 -1
  67. package/lib/icon/icon.component.d.ts +1 -1
  68. package/lib/list/list.component.d.ts +5 -5
  69. package/lib/modal/modal-container.d.ts +2 -2
  70. package/lib/modal/modal-directives.d.ts +1 -1
  71. package/lib/modal/modal.d.ts +1 -1
  72. package/lib/radio/radio-group.component.d.ts +1 -1
  73. package/lib/radio/radio.component.d.ts +2 -2
  74. package/lib/summary/list-summary.component.d.ts +2 -2
  75. package/lib/summary/summary.component.d.ts +2 -2
  76. package/lib/tabs/tabs.component.d.ts +4 -4
  77. package/lib/tag/tag.component.d.ts +1 -1
  78. package/package.json +7 -7
@@ -11,12 +11,12 @@ export class BaoLabelTextComponent {
11
11
  this.required = false;
12
12
  }
13
13
  }
14
- BaoLabelTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoLabelTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
- BaoLabelTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BaoLabelTextComponent, selector: "bao-label, [bao-label]", inputs: { required: "required" }, host: { classAttribute: "bao-label" }, ngImport: i0, template: '<div class="bao-label"><ng-content></ng-content><span *ngIf="required">&nbsp;*</span></div>', isInline: true, styles: [".bao-label{color:#212529!important;font-weight:700;line-height:1.5em;font-size:1rem;margin-bottom:0}.bao-label span{color:#d3310a}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoLabelTextComponent, decorators: [{
14
+ BaoLabelTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoLabelTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
+ BaoLabelTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoLabelTextComponent, selector: "bao-label, [bao-label]", inputs: { required: "required" }, host: { classAttribute: "bao-label" }, ngImport: i0, template: '<div class="bao-label"><ng-content></ng-content><span *ngIf="required">&nbsp;*</span></div>', isInline: true, styles: [".bao-label{color:#212529!important;font-weight:700;line-height:1.5em;font-size:1rem;margin-bottom:0}.bao-label span{color:#d3310a}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoLabelTextComponent, decorators: [{
17
17
  type: Component,
18
18
  args: [{ selector: 'bao-label, [bao-label]', encapsulation: ViewEncapsulation.None, template: '<div class="bao-label"><ng-content></ng-content><span *ngIf="required">&nbsp;*</span></div>', host: { class: 'bao-label' }, styles: [".bao-label{color:#212529!important;font-weight:700;line-height:1.5em;font-size:1rem;margin-bottom:0}.bao-label span{color:#d3310a}\n"] }]
19
19
  }], propDecorators: { required: [{
20
20
  type: Input
21
21
  }] } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxUZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9jb21tb24tY29tcG9uZW50cy9sYWJlbC10ZXh0L2xhYmVsVGV4dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVcEUsTUFBTSxPQUFPLHFCQUFxQjtJQVJsQztRQVNrQixhQUFRLEdBQUcsS0FBSyxDQUFDO0tBQ2xDOzttSEFGWSxxQkFBcUI7dUdBQXJCLHFCQUFxQix1SUFKOUIsNkZBQTZGOzRGQUlwRixxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0Usd0JBQXdCLGlCQUNuQixpQkFBaUIsQ0FBQyxJQUFJLFlBRW5DLDZGQUE2RixRQUV6RixFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7OEJBR1osUUFBUTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWxhYmVsLCBbYmFvLWxhYmVsXScsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOlxuICAgICc8ZGl2IGNsYXNzPVwiYmFvLWxhYmVsXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjxzcGFuICpuZ0lmPVwicmVxdWlyZWRcIj4mbmJzcDsqPC9zcGFuPjwvZGl2PicsXG4gIHN0eWxlVXJsczogWycuL2xhYmVsVGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7IGNsYXNzOiAnYmFvLWxhYmVsJyB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0xhYmVsVGV4dENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xufVxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxUZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9jb21tb24tY29tcG9uZW50cy9sYWJlbC10ZXh0L2xhYmVsVGV4dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFVcEUsTUFBTSxPQUFPLHFCQUFxQjtJQVJsQztRQVNrQixhQUFRLEdBQUcsS0FBSyxDQUFDO0tBQ2xDOztrSEFGWSxxQkFBcUI7c0dBQXJCLHFCQUFxQix1SUFKOUIsNkZBQTZGOzJGQUlwRixxQkFBcUI7a0JBUmpDLFNBQVM7K0JBQ0Usd0JBQXdCLGlCQUNuQixpQkFBaUIsQ0FBQyxJQUFJLFlBRW5DLDZGQUE2RixRQUV6RixFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7OEJBR1osUUFBUTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWxhYmVsLCBbYmFvLWxhYmVsXScsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHRlbXBsYXRlOlxuICAgICc8ZGl2IGNsYXNzPVwiYmFvLWxhYmVsXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjxzcGFuICpuZ0lmPVwicmVxdWlyZWRcIj4mbmJzcDsqPC9zcGFuPjwvZGl2PicsXG4gIHN0eWxlVXJsczogWycuL2xhYmVsVGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7IGNsYXNzOiAnYmFvLWxhYmVsJyB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0xhYmVsVGV4dENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZCA9IGZhbHNlO1xufVxuIl19
@@ -15,16 +15,16 @@ const DIRECTIVES = [
15
15
  ];
16
16
  export class BaoCommonComponentsModule {
17
17
  }
18
- BaoCommonComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoCommonComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
19
- BaoCommonComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoCommonComponentsModule, declarations: [BaoErrorTextComponent,
18
+ BaoCommonComponentsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoCommonComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
19
+ BaoCommonComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.1", ngImport: i0, type: BaoCommonComponentsModule, declarations: [BaoErrorTextComponent,
20
20
  BaoGuidingTextComponent,
21
21
  BaoLabelTextComponent,
22
22
  BaoTitleTextComponent], imports: [CommonModule], exports: [BaoErrorTextComponent,
23
23
  BaoGuidingTextComponent,
24
24
  BaoLabelTextComponent,
25
25
  BaoTitleTextComponent] });
26
- BaoCommonComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoCommonComponentsModule, imports: [[CommonModule]] });
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoCommonComponentsModule, decorators: [{
26
+ BaoCommonComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoCommonComponentsModule, imports: [CommonModule] });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoCommonComponentsModule, decorators: [{
28
28
  type: NgModule,
29
29
  args: [{
30
30
  imports: [CommonModule],
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
32
32
  exports: DIRECTIVES
33
33
  }]
34
34
  }] });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2NvbW1vbi1jb21wb25lbnRzL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUN0QixNQUFNLEdBQUcsQ0FBQzs7QUFFWCxNQUFNLFVBQVUsR0FBRztJQUNqQixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQixxQkFBcUI7Q0FDdEIsQ0FBQztBQU9GLE1BQU0sT0FBTyx5QkFBeUI7O3VIQUF6Qix5QkFBeUI7d0hBQXpCLHlCQUF5QixpQkFYcEMscUJBQXFCO1FBQ3JCLHVCQUF1QjtRQUN2QixxQkFBcUI7UUFDckIscUJBQXFCLGFBSVgsWUFBWSxhQVB0QixxQkFBcUI7UUFDckIsdUJBQXVCO1FBQ3ZCLHFCQUFxQjtRQUNyQixxQkFBcUI7d0hBUVYseUJBQXlCLFlBSjNCLENBQUMsWUFBWSxDQUFDOzRGQUlaLHlCQUF5QjtrQkFMckMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxVQUFVO29CQUN4QixPQUFPLEVBQUUsVUFBVTtpQkFDcEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmFvRXJyb3JUZXh0Q29tcG9uZW50LFxuICBCYW9HdWlkaW5nVGV4dENvbXBvbmVudCxcbiAgQmFvTGFiZWxUZXh0Q29tcG9uZW50LFxuICBCYW9UaXRsZVRleHRDb21wb25lbnRcbn0gZnJvbSAnLic7XG5cbmNvbnN0IERJUkVDVElWRVMgPSBbXG4gIEJhb0Vycm9yVGV4dENvbXBvbmVudCxcbiAgQmFvR3VpZGluZ1RleHRDb21wb25lbnQsXG4gIEJhb0xhYmVsVGV4dENvbXBvbmVudCxcbiAgQmFvVGl0bGVUZXh0Q29tcG9uZW50XG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBESVJFQ1RJVkVTLFxuICBleHBvcnRzOiBESVJFQ1RJVkVTXG59KVxuZXhwb3J0IGNsYXNzIEJhb0NvbW1vbkNvbXBvbmVudHNNb2R1bGUge31cbiJdfQ==
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2NvbW1vbi1jb21wb25lbnRzL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIscUJBQXFCLEVBQ3JCLHFCQUFxQixFQUN0QixNQUFNLEdBQUcsQ0FBQzs7QUFFWCxNQUFNLFVBQVUsR0FBRztJQUNqQixxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLHFCQUFxQjtJQUNyQixxQkFBcUI7Q0FDdEIsQ0FBQztBQU9GLE1BQU0sT0FBTyx5QkFBeUI7O3NIQUF6Qix5QkFBeUI7dUhBQXpCLHlCQUF5QixpQkFYcEMscUJBQXFCO1FBQ3JCLHVCQUF1QjtRQUN2QixxQkFBcUI7UUFDckIscUJBQXFCLGFBSVgsWUFBWSxhQVB0QixxQkFBcUI7UUFDckIsdUJBQXVCO1FBQ3ZCLHFCQUFxQjtRQUNyQixxQkFBcUI7dUhBUVYseUJBQXlCLFlBSjFCLFlBQVk7MkZBSVgseUJBQXlCO2tCQUxyQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsWUFBWSxFQUFFLFVBQVU7b0JBQ3hCLE9BQU8sRUFBRSxVQUFVO2lCQUNwQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYW9FcnJvclRleHRDb21wb25lbnQsXG4gIEJhb0d1aWRpbmdUZXh0Q29tcG9uZW50LFxuICBCYW9MYWJlbFRleHRDb21wb25lbnQsXG4gIEJhb1RpdGxlVGV4dENvbXBvbmVudFxufSBmcm9tICcuJztcblxuY29uc3QgRElSRUNUSVZFUyA9IFtcbiAgQmFvRXJyb3JUZXh0Q29tcG9uZW50LFxuICBCYW9HdWlkaW5nVGV4dENvbXBvbmVudCxcbiAgQmFvTGFiZWxUZXh0Q29tcG9uZW50LFxuICBCYW9UaXRsZVRleHRDb21wb25lbnRcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IERJUkVDVElWRVMsXG4gIGV4cG9ydHM6IERJUkVDVElWRVNcbn0pXG5leHBvcnQgY2xhc3MgQmFvQ29tbW9uQ29tcG9uZW50c01vZHVsZSB7fVxuIl19
@@ -7,10 +7,10 @@ import { Component, ViewEncapsulation } from '@angular/core';
7
7
  import * as i0 from "@angular/core";
8
8
  export class BaoTitleTextComponent {
9
9
  }
10
- BaoTitleTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoTitleTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
- BaoTitleTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BaoTitleTextComponent, selector: "bao-title-text, [bao-title-text]", ngImport: i0, template: '<div class="bao-title-text"><ng-content></ng-content></div>', isInline: true, styles: [".bao-title-text{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin:0rem 0rem .5rem 0;color:#212529}\n"], encapsulation: i0.ViewEncapsulation.None });
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoTitleTextComponent, decorators: [{
10
+ BaoTitleTextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoTitleTextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
+ BaoTitleTextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoTitleTextComponent, selector: "bao-title-text, [bao-title-text]", ngImport: i0, template: '<div class="bao-title-text"><ng-content></ng-content></div>', isInline: true, styles: [".bao-title-text{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin:0rem 0rem .5rem 0;color:#212529}\n"], encapsulation: i0.ViewEncapsulation.None });
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoTitleTextComponent, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'bao-title-text, [bao-title-text]', template: '<div class="bao-title-text"><ng-content></ng-content></div>', encapsulation: ViewEncapsulation.None, styles: [".bao-title-text{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin:0rem 0rem .5rem 0;color:#212529}\n"] }]
15
15
  }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGVUZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9jb21tb24tY29tcG9uZW50cy90aXRsZS10ZXh0L3RpdGxlVGV4dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTdELE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7dUdBQXJCLHFCQUFxQix3RUFKdEIsNkRBQTZEOzRGQUk1RCxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0Usa0NBQWtDLFlBQ2xDLDZEQUE2RCxpQkFFeEQsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYW8tdGl0bGUtdGV4dCwgW2Jhby10aXRsZS10ZXh0XScsXG4gIHRlbXBsYXRlOiAnPGRpdiBjbGFzcz1cImJhby10aXRsZS10ZXh0XCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvZGl2PicsXG4gIHN0eWxlVXJsczogWycuL3RpdGxlVGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEJhb1RpdGxlVGV4dENvbXBvbmVudCB7fVxuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGVUZXh0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9jb21tb24tY29tcG9uZW50cy90aXRsZS10ZXh0L3RpdGxlVGV4dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTdELE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7c0dBQXJCLHFCQUFxQix3RUFKdEIsNkRBQTZEOzJGQUk1RCxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0Usa0NBQWtDLFlBQ2xDLDZEQUE2RCxpQkFFeEQsaUJBQWlCLENBQUMsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdiYW8tdGl0bGUtdGV4dCwgW2Jhby10aXRsZS10ZXh0XScsXG4gIHRlbXBsYXRlOiAnPGRpdiBjbGFzcz1cImJhby10aXRsZS10ZXh0XCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvZGl2PicsXG4gIHN0eWxlVXJsczogWycuL3RpdGxlVGV4dC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIEJhb1RpdGxlVGV4dENvbXBvbmVudCB7fVxuIl19
@@ -112,9 +112,9 @@ export class BaoDropdownMenuItem {
112
112
  }
113
113
  }
114
114
  }
115
- BaoDropdownMenuItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuItem, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: BaoDropdownMenuComponent }], target: i0.ɵɵFactoryTarget.Directive });
116
- BaoDropdownMenuItem.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoDropdownMenuItem, selector: "bao-dropdown-menu-item, [bao-dropdown-menu-item]", inputs: { disabled: "disabled" }, host: { listeners: { "window:keyup.space": "spaceKeyEvent()", "click": "onClick($event.target)", "window:keydown.enter": "enterKeyEvent()" }, properties: { "class.bao-dropdown-menu-item-disabled": "disabled===true" }, classAttribute: "bao-dropdown-menu-item" }, usesOnChanges: true, ngImport: i0 });
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuItem, decorators: [{
115
+ BaoDropdownMenuItem.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuItem, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: BaoDropdownMenuComponent }], target: i0.ɵɵFactoryTarget.Directive });
116
+ BaoDropdownMenuItem.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuItem, selector: "bao-dropdown-menu-item, [bao-dropdown-menu-item]", inputs: { disabled: "disabled" }, host: { listeners: { "window:keyup.space": "spaceKeyEvent()", "click": "onClick($event.target)", "window:keydown.enter": "enterKeyEvent()" }, properties: { "class.bao-dropdown-menu-item-disabled": "disabled===true" }, classAttribute: "bao-dropdown-menu-item" }, usesOnChanges: true, ngImport: i0 });
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuItem, decorators: [{
118
118
  type: Directive,
119
119
  args: [{
120
120
  selector: 'bao-dropdown-menu-item, [bao-dropdown-menu-item]',
@@ -276,9 +276,9 @@ export class BaoDropdownMenuComponent {
276
276
  (currentIndex == this._listItems.length - 1 && isDown));
277
277
  }
278
278
  }
279
- BaoDropdownMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
280
- BaoDropdownMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BaoDropdownMenuComponent, selector: "bao-dropdown-menu", outputs: { isOpenChange: "isOpenChange", isClosedByKeyEvent: "isClosedByKeyEvent" }, host: { listeners: { "window:keyup.arrowup": "upKeyEvent()", "window:keyup.arrowdown": "downKeyEvent()", "window:keydown.tab": "tabKeyEvent()", "window:keydown.shift.tab": "shiftTabKeyEvent()" }, properties: { "class.bao-overlay-transparent-backdrop": "isOpen===false", "class.bao-dropdown-menu-closed": "isOpen===false", "attr.aria-expanded": "isOpen" }, classAttribute: "bao-dropdown-menu-container" }, queries: [{ propertyName: "_listItems", predicate: BaoDropdownMenuItem, descendants: true }], viewQueries: [{ propertyName: "_menuContent", first: true, predicate: ["menuContent"], descendants: true }], ngImport: i0, template: "<div #menuContent class=\"bao-dropdown-menu\" tabindex=\"-1\">\n <ng-content></ng-content>\n</div>\n", styles: [".bao-dropdown-menu-container.bao-dropdown-menu-closed{display:none}.bao-dropdown-menu{min-width:16rem;max-width:32rem;overflow-y:auto;background:#ffffff;box-shadow:0 .5rem 2rem #0000001a;border-radius:.25rem;padding-top:.5rem;padding-bottom:.5rem}.bao-dropdown-menu .bao-overlay-transparent-backdrop{background-color:#fff0;display:none}.bao-dropdown-menu ul{list-style-type:none;padding:0;margin:0}.bao-dropdown-menu h5{padding:.5rem 0 .5rem 1rem;margin:0}.bao-dropdown-menu .bao-dropdown-menu-item{display:flex;align-items:center;text-decoration:none;border-bottom:none;cursor:default}.bao-dropdown-menu .bao-dropdown-menu-item:hover{background-color:#f8f9fa}.bao-dropdown-menu .bao-dropdown-menu-item:active{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item:focus{box-shadow:inset 0 0 0 .25rem #98bcde}.bao-dropdown-menu .bao-dropdown-menu-item.active-link{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-right{padding-right:1.5rem}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-left{padding-left:1rem}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled{cursor:not-allowed;pointer-events:none}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:hover,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:active{background:#ffffff}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-label,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{color:#adb2bd}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content{display:flex;flex-direction:column;margin:.5rem 1rem;background-color:inherit}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-label{font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{font-weight:400;font-size:.875rem;line-height:1.25rem;color:#637381}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-dropdown-menu .bao-dropdown-menu-divider hr{margin-top:.5rem;margin-bottom:.5rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
281
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuComponent, decorators: [{
279
+ BaoDropdownMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
280
+ BaoDropdownMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuComponent, selector: "bao-dropdown-menu", outputs: { isOpenChange: "isOpenChange", isClosedByKeyEvent: "isClosedByKeyEvent" }, host: { listeners: { "window:keyup.arrowup": "upKeyEvent()", "window:keyup.arrowdown": "downKeyEvent()", "window:keydown.tab": "tabKeyEvent()", "window:keydown.shift.tab": "shiftTabKeyEvent()" }, properties: { "class.bao-overlay-transparent-backdrop": "isOpen===false", "class.bao-dropdown-menu-closed": "isOpen===false", "attr.aria-expanded": "isOpen" }, classAttribute: "bao-dropdown-menu-container" }, queries: [{ propertyName: "_listItems", predicate: BaoDropdownMenuItem, descendants: true }], viewQueries: [{ propertyName: "_menuContent", first: true, predicate: ["menuContent"], descendants: true }], ngImport: i0, template: "<div #menuContent class=\"bao-dropdown-menu\" tabindex=\"-1\">\n <ng-content></ng-content>\n</div>\n", styles: [".bao-dropdown-menu-container.bao-dropdown-menu-closed{display:none}.bao-dropdown-menu{min-width:16rem;max-width:32rem;overflow-y:auto;background:#ffffff;box-shadow:0 .5rem 2rem #0000001a;border-radius:.25rem;padding-top:.5rem;padding-bottom:.5rem}.bao-dropdown-menu .bao-overlay-transparent-backdrop{background-color:#fff0;display:none}.bao-dropdown-menu ul{list-style-type:none;padding:0;margin:0}.bao-dropdown-menu h5{padding:.5rem 0 .5rem 1rem;margin:0}.bao-dropdown-menu .bao-dropdown-menu-item{display:flex;align-items:center;text-decoration:none;border-bottom:none;cursor:default}.bao-dropdown-menu .bao-dropdown-menu-item:hover{background-color:#f8f9fa}.bao-dropdown-menu .bao-dropdown-menu-item:active{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item:focus{box-shadow:inset 0 0 0 .25rem #98bcde}.bao-dropdown-menu .bao-dropdown-menu-item.active-link{background-color:#eefaf8}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-right{padding-right:1.5rem}.bao-dropdown-menu .bao-dropdown-menu-item.has-element-left{padding-left:1rem}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled{cursor:not-allowed;pointer-events:none}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:hover,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled:active{background:#ffffff}.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-label,.bao-dropdown-menu .bao-dropdown-menu-item.bao-dropdown-menu-item-disabled .bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{color:#adb2bd}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content{display:flex;flex-direction:column;margin:.5rem 1rem;background-color:inherit}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-label{font-weight:400;font-size:1rem;line-height:1.5rem;color:#212529}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-dropdown-menu-item-content .bao-dropdown-menu-item-description{font-weight:400;font-size:.875rem;line-height:1.25rem;color:#637381}.bao-dropdown-menu .bao-dropdown-menu-item>.bao-icon{color:#adb2bd;flex-shrink:0}.bao-dropdown-menu .bao-dropdown-menu-divider hr{margin-top:.5rem;margin-bottom:.5rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
281
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuComponent, decorators: [{
282
282
  type: Component,
283
283
  args: [{ selector: 'bao-dropdown-menu', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
284
284
  class: 'bao-dropdown-menu-container',
@@ -410,9 +410,9 @@ export class BaoDropdownMenuTrigger {
410
410
  });
411
411
  }
412
412
  }
413
- BaoDropdownMenuTrigger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuTrigger, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
414
- BaoDropdownMenuTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoDropdownMenuTrigger, selector: "bao-dropdown-menu-trigger, [bao-dropdown-menu-trigger], [baoDropdownMenuTriggerFor]", inputs: { menu: ["baoDropdownMenuTriggerFor", "menu"] }, host: { listeners: { "window:keyup.escape": "escapeKeyEvent()", "window:keyup.enter": "enterKeyEvent()", "click": "onClick()" }, classAttribute: "bao-dropdown-menu-trigger" }, ngImport: i0 });
415
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuTrigger, decorators: [{
413
+ BaoDropdownMenuTrigger.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuTrigger, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.Overlay }], target: i0.ɵɵFactoryTarget.Directive });
414
+ BaoDropdownMenuTrigger.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuTrigger, selector: "bao-dropdown-menu-trigger, [bao-dropdown-menu-trigger], [baoDropdownMenuTriggerFor]", inputs: { menu: ["baoDropdownMenuTriggerFor", "menu"] }, host: { listeners: { "window:keyup.escape": "escapeKeyEvent()", "window:keyup.enter": "enterKeyEvent()", "click": "onClick()" }, classAttribute: "bao-dropdown-menu-trigger" }, ngImport: i0 });
415
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuTrigger, decorators: [{
416
416
  type: Directive,
417
417
  args: [{
418
418
  selector: 'bao-dropdown-menu-trigger, [bao-dropdown-menu-trigger], [baoDropdownMenuTriggerFor]',
@@ -457,9 +457,9 @@ export class BaoDropdownMenuSection {
457
457
  this.renderer.insertBefore(this.nativeElement, titleElement, children[listIndex]);
458
458
  }
459
459
  }
460
- BaoDropdownMenuSection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuSection, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
461
- BaoDropdownMenuSection.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoDropdownMenuSection, selector: "bao-dropdown-menu-section, [bao-dropdown-menu-section]", host: { classAttribute: "bao-dropdown-menu-section" }, ngImport: i0 });
462
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuSection, decorators: [{
460
+ BaoDropdownMenuSection.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuSection, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
461
+ BaoDropdownMenuSection.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuSection, selector: "bao-dropdown-menu-section, [bao-dropdown-menu-section]", host: { classAttribute: "bao-dropdown-menu-section" }, ngImport: i0 });
462
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuSection, decorators: [{
463
463
  type: Directive,
464
464
  args: [{
465
465
  selector: 'bao-dropdown-menu-section, [bao-dropdown-menu-section]',
@@ -471,9 +471,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
471
471
  */
472
472
  export class BaoDropdownMenuItemLabel {
473
473
  }
474
- BaoDropdownMenuItemLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuItemLabel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
475
- BaoDropdownMenuItemLabel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoDropdownMenuItemLabel, selector: "bao-dropdown-menu-item-label, [bao-dropdown-menu-item-label]", host: { classAttribute: "bao-dropdown-menu-item-label" }, ngImport: i0 });
476
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuItemLabel, decorators: [{
474
+ BaoDropdownMenuItemLabel.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuItemLabel, deps: [], target: i0.ɵɵFactoryTarget.Directive });
475
+ BaoDropdownMenuItemLabel.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuItemLabel, selector: "bao-dropdown-menu-item-label, [bao-dropdown-menu-item-label]", host: { classAttribute: "bao-dropdown-menu-item-label" }, ngImport: i0 });
476
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuItemLabel, decorators: [{
477
477
  type: Directive,
478
478
  args: [{
479
479
  selector: 'bao-dropdown-menu-item-label, [bao-dropdown-menu-item-label]',
@@ -485,9 +485,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
485
485
  */
486
486
  export class BaoDropdownMenuItemDescription {
487
487
  }
488
- BaoDropdownMenuItemDescription.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuItemDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
489
- BaoDropdownMenuItemDescription.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoDropdownMenuItemDescription, selector: "bao-dropdown-menu-item-description, [bao-dropdown-menu-item-description]", host: { classAttribute: "bao-dropdown-menu-item-description" }, ngImport: i0 });
490
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuItemDescription, decorators: [{
488
+ BaoDropdownMenuItemDescription.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuItemDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
489
+ BaoDropdownMenuItemDescription.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuItemDescription, selector: "bao-dropdown-menu-item-description, [bao-dropdown-menu-item-description]", host: { classAttribute: "bao-dropdown-menu-item-description" }, ngImport: i0 });
490
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuItemDescription, decorators: [{
491
491
  type: Directive,
492
492
  args: [{
493
493
  selector: 'bao-dropdown-menu-item-description, [bao-dropdown-menu-item-description]',
@@ -509,9 +509,9 @@ export class BaoDropdownMenuDivider {
509
509
  this.renderer.setAttribute(this.nativeElement, 'role', 'separator');
510
510
  }
511
511
  }
512
- BaoDropdownMenuDivider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuDivider, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
513
- BaoDropdownMenuDivider.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BaoDropdownMenuDivider, selector: "bao-dropdown-menu-divider, [bao-dropdown-menu-divider]", host: { classAttribute: "bao-dropdown-menu-divider" }, ngImport: i0, template: `<hr />`, isInline: true });
514
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuDivider, decorators: [{
512
+ BaoDropdownMenuDivider.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuDivider, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
513
+ BaoDropdownMenuDivider.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoDropdownMenuDivider, selector: "bao-dropdown-menu-divider, [bao-dropdown-menu-divider]", host: { classAttribute: "bao-dropdown-menu-divider" }, ngImport: i0, template: `<hr />`, isInline: true });
514
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuDivider, decorators: [{
515
515
  type: Component,
516
516
  args: [{
517
517
  template: `<hr />`,
@@ -519,4 +519,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
519
519
  host: { class: 'bao-dropdown-menu-divider' }
520
520
  }]
521
521
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; } });
522
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9kcm9wZG93bi1tZW51L2Ryb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFHTCxhQUFhLEVBRWQsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUdMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBSU4sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQzs7O0FBRXZCOztHQUVHO0FBQ0gsSUFBSSxvQkFBb0IsR0FBRyxDQUFDLENBQUM7QUFRN0IsTUFBTSxPQUFPLG1CQUFtQjtJQU05QixZQUNVLFFBQW1CLEVBQ25CLFVBQW1DLEVBQ25DLE9BQWlDO1FBRmpDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFSM0M7O1dBRUc7UUFDYSxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBTTlCLENBQUM7SUFFSixJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3ZDLENBQUM7SUFHRCxhQUFhO1FBQ1gsSUFBSSxRQUFRLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxL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QUFFLDhEQUE4RDtvQkFDeEUsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLDhCQUE4QixFQUFFO2lCQUNoRDs7QUFFRDs7R0FFRztBQU1ILE1BQU0sT0FBTyw4QkFBOEI7OzRIQUE5Qiw4QkFBOEI7Z0hBQTlCLDhCQUE4Qjs0RkFBOUIsOEJBQThCO2tCQUwxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiwwRUFBMEU7b0JBQzVFLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxvQ0FBb0MsRUFBRTtpQkFDdEQ7O0FBRUQ7O0dBRUc7QUFNSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQ1UsUUFBbUIsRUFDbkIsVUFBbUM7UUFEbkMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUF5QjtJQUMxQyxDQUFDO0lBRUosSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7O29IQVpVLHNCQUFzQjt3R0FBdEIsc0JBQXNCLHFKQUp2QixRQUFROzRGQUlQLHNCQUFzQjtrQkFMbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsUUFBUSxFQUFFLHdEQUF3RDtvQkFDbEUsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFO2lCQUM3QyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuXG5pbXBvcnQge1xuICBDb25uZWN0ZWRQb3NpdGlvbixcbiAgT3ZlcmxheSxcbiAgT3ZlcmxheUNvbmZpZyxcbiAgT3ZlcmxheVJlZlxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBEb21Qb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFJlbmRlcmVyMixcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBVbmlxdWUgSUQgZm9yIGVhY2ggZHJvcGRvd24gbWVudVxuICovXG5sZXQgZHJvcGRvd25NZW51VW5pcXVlSWQgPSAwO1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYmFvLWRyb3Bkb3duLW1lbnUtaXRlbSwgW2Jhby1kcm9wZG93bi1tZW51LWl0ZW1dJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYmFvLWRyb3Bkb3duLW1lbnUtaXRlbScsXG4gICAgJ1tjbGFzcy5iYW8tZHJvcGRvd24tbWVudS1pdGVtLWRpc2FibGVkXSc6ICdkaXNhYmxlZD09PXRydWUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51SXRlbSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG4gIC8qKlxuICAgKiBJcyB0aGUgbGlzdCBpdGVtIGRpc2FibGVkXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIF9wYXJlbnQ6IEJhb0Ryb3Bkb3duTWVudUNvbXBvbmVudFxuICApIHt9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5zcGFjZScpXG4gIHNwYWNlS2V5RXZlbnQoKSB7XG4gICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT0gdGhpcy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxuICBvbkNsaWNrKGVsOiBIVE1MRWxlbWVudCkge1xuICAgIGlmICh0aGlzLm5hdGl2ZUVsZW1lbnQuYXR0cmlidXRlc1snaHJlZiddKSB7XG4gICAgICB0aGlzLl9wYXJlbnQuc2V0TmF2aWdhdGlvbkF0dHJpYnV0ZSh0aGlzLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cbiAgICAvLyBQcmV2ZW50IGRvdWJsZS1jbGljayBvbiBjaGVja2JveCBpbnB1dCB0aGF0IHVuZG9lcyB0aGUgdG9nZ2xlXG4gICAgaWYgKCFlbC5jbGFzc0xpc3QuY29udGFpbnMoJ2Jhby1jaGVja2JveC1jb250ZW50LWNvbnRhaW5lcicpKSB7XG4gICAgICB0aGlzLnByb3BhZ2F0ZUNsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleWRvd24uZW50ZXInKVxuICBlbnRlcktleUV2ZW50KCkge1xuICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09IHRoaXMubmF0aXZlRWxlbWVudCkge1xuICAgICAgaWYgKHRoaXMubmF0aXZlRWxlbWVudC5hdHRyaWJ1dGVzWydocmVmJ10pIHtcbiAgICAgICAgdGhpcy5fcGFyZW50LnNldE5hdmlnYXRpb25BdHRyaWJ1dGUodGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgICAgIH1cbiAgICAgIHRoaXMucHJvcGFnYXRlQ2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWRkQ29udGVudERpdigpO1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5uYXRpdmVFbGVtZW50LCAndGFiSW5kZXgnLCAnMCcpO1xuICAgIH1cbiAgICB0aGlzLmFkZFBhZGRpbmdDbGFzcygpO1xuICAgIC8vIFJlbW92ZSBpbnB1dCBlbGVtZW50IGluc2lkZSBpdGVtIGZyb20ga2V5Ym9hcmQgbmF2aWdhdGlvbiBzZXF1ZW5jZVxuICAgIGlmICh0aGlzLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdoYXMtZWxlbWVudC1sZWZ0JykpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKFxuICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4uaXRlbSgwKS5maXJzdEVsZW1lbnRDaGlsZCxcbiAgICAgICAgJ3RhYkluZGV4JyxcbiAgICAgICAgJy0xJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydkaXNhYmxlZCddICYmIGNoYW5nZXNbJ2Rpc2FibGVkJ10uY3VycmVudFZhbHVlID09IHRydWUpIHtcbiAgICAgIHRoaXMuZGlzYWJsZUl0ZW0oKTtcbiAgICB9XG4gIH1cblxuICAvKiogUmVncm91cHMgbGFiZWwgYW5kIGRlc2NyaXB0aW9uIGluIGEgbmV3IGRpdiB0byBoZWxwIHdpdGggbGF5b3V0ICovXG4gIHByaXZhdGUgYWRkQ29udGVudERpdigpOiB2b2lkIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IEFycmF5LmZyb20odGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkcmVuKTtcbiAgICBjb25zdCBsYWJlbEluZGV4ID0gY2hpbGRyZW4uZmluZEluZGV4KFxuICAgICAgYyA9PiBjLmxvY2FsTmFtZSA9PT0gJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tbGFiZWwnXG4gICAgKTtcbiAgICBjb25zdCBsYWJlbEVsZW1lbnQgPSBjaGlsZHJlbltsYWJlbEluZGV4XTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMubmF0aXZlRWxlbWVudCwgY2hpbGRyZW5bbGFiZWxJbmRleF0pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoY29udGVudERpdiwgJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tY29udGVudCcpO1xuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5uYXRpdmVFbGVtZW50LCBjb250ZW50RGl2KTtcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGNvbnRlbnREaXYsIGxhYmVsRWxlbWVudCk7XG4gICAgY29uc3QgZGVzY3JpcHRpb25JbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChcbiAgICAgIGMgPT4gYy5sb2NhbE5hbWUgPT09ICdiYW8tZHJvcGRvd24tbWVudS1pdGVtLWRlc2NyaXB0aW9uJ1xuICAgICk7XG4gICAgaWYgKGRlc2NyaXB0aW9uSW5kZXggPiAwKSB7XG4gICAgICBjb25zdCBkZXNjcmlwdGlvbkVsZW1lbnQgPSBjaGlsZHJlbltkZXNjcmlwdGlvbkluZGV4XTtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5uYXRpdmVFbGVtZW50LCBjaGlsZHJlbltkZXNjcmlwdGlvbkluZGV4XSk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGNvbnRlbnREaXYsIGRlc2NyaXB0aW9uRWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRQYWRkaW5nQ2xhc3MoKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbik7XG4gICAgLy8gTWVudSBpdGVtIGhhcyBleHRyYSBlbGVtZW50IG5leHQgdG8gbGFiZWxcbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID4gMSkge1xuICAgICAgLy8gT25seSB0b2dnbGUgZWxlbWVudCBjYW4gYmUgb24gdGhlIHJpZ2h0XG4gICAgICBpZiAoY2hpbGRyZW4uZmluZEluZGV4KGMgPT4gYy5sb2NhbE5hbWUgPT09ICdiYW8tdG9nZ2xlJykgPiAwKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5uYXRpdmVFbGVtZW50LCAnaGFzLWVsZW1lbnQtcmlnaHQnKTtcbiAgICAgIH1cbiAgICAgIC8vIEljb24sIGNoZWNrYm94LCByYWRpbyBidXR0b24gb3IgYXZhdGFyIG11c3QgYmUgb24gdGhlIGxlZnRcbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgJ2hhcy1lbGVtZW50LWxlZnQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRpc2FibGVJdGVtKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLm5hdGl2ZUVsZW1lbnQsICdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMubmF0aXZlRWxlbWVudCwgJ3RhYkluZGV4JywgJy0xJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHByb3BhZ2F0ZXMgYSBjbGljayBldmVudCB0byBtZW51IGl0ZW0gY2hpbGRyZW4gd2l0aCBpbnB1dHMgKGNoZWNrYm94LCByYWRpbyBidXR0b24pXG4gICAqL1xuICBwcml2YXRlIHByb3BhZ2F0ZUNsaWNrKCk6IHZvaWQge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbi5pdGVtKGkpLmZpcnN0RWxlbWVudENoaWxkLmxvY2FsTmFtZSA9PVxuICAgICAgICAnaW5wdXQnXG4gICAgICApIHtcbiAgICAgICAgKFxuICAgICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbi5pdGVtKGkpLmZpcnN0RWxlbWVudENoaWxkIGFzIEhUTUxFbGVtZW50XG4gICAgICAgICkuY2xpY2soKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1kcm9wZG93bi1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tZHJvcGRvd24tbWVudS1jb250YWluZXInLFxuICAgICdbY2xhc3MuYmFvLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3BdJzogJ2lzT3Blbj09PWZhbHNlJyxcbiAgICAnW2NsYXNzLmJhby1kcm9wZG93bi1tZW51LWNsb3NlZF0nOiAnaXNPcGVuPT09ZmFsc2UnLFxuICAgICdbYXR0ci5hcmlhLWV4cGFuZGVkXSc6ICdpc09wZW4nXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKlxuICAgKiBGaXJlZCB3aGVuIHRoZSBkcm9wZG93bi1tZW51IGNoYW5nZXMgaXRzICdpc09wZW4nIHZhbHVlXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGlzT3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAvKipcbiAgICogRmlyZWQgd2hlbiBtZW51IGlzIGNsb3NlZCBieSBrZXkgZXZlbnQgdHJpZ2dlcmVkIGZyb20gbWVudSBpdGVtXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGlzQ2xvc2VkQnlLZXlFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogQ29udGVudCBvZiBtZW51IHRvIGJlIGxvYWRlZCBpbnNpZGUgT3ZlcmxheVxuICAgKi9cbiAgQFZpZXdDaGlsZCgnbWVudUNvbnRlbnQnKSBfbWVudUNvbnRlbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBBbGwgbGlzdCBpdGVtcyBpbnNpZGUgbWVudVxuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihCYW9Ecm9wZG93bk1lbnVJdGVtLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIF9saXN0SXRlbXM6IFF1ZXJ5TGlzdDxCYW9Ecm9wZG93bk1lbnVJdGVtPjtcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGRyb3Bkb3duIG1lbnVcbiAgICovXG4gIHJlYWRvbmx5IG1lbnVJZCA9IGBiYW8tZHJvcGRvd24tbWVudS0keysrZHJvcGRvd25NZW51VW5pcXVlSWR9YDtcblxuICAvKipcbiAgICogSXMgdGhlIGRyb3B3ZG93biBtZW51IGN1cnJlbnRseSBvcGVuXG4gICAqL1xuICBwcml2YXRlIF9pc09wZW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHBvcnRhbCB3aGljaCBpcyBhdHRhY2hlZCB0byBPdmVybGF5XG4gICAqL1xuICBwcml2YXRlIF9tZW51UG9ydGFsOiBEb21Qb3J0YWw7XG5cbiAgLyoqXG4gICAqIEluZGV4IG9mIGN1cnJlbnRseSBhY3RpdmUgbGlzdCBpdGVtXG4gICAqL1xuICBwcml2YXRlIF9hY3RpdmVJdGVtSW5kZXg6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzT3BlbjtcbiAgfVxuICBnZXQgYWN0aXZlSXRlbUluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUl0ZW1JbmRleDtcbiAgfVxuICBnZXQgbWVudVBvcnRhbCgpOiBEb21Qb3J0YWwge1xuICAgIHJldHVybiB0aGlzLl9tZW51UG9ydGFsO1xuICB9XG4gIGdldCBuYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbiAgc2V0IGlzT3Blbihpc09wZW46IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9pc09wZW4gPSBpc09wZW47XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHRoaXMuaXNPcGVuQ2hhbmdlLmVtaXQoaXNPcGVuKTtcbiAgfVxuICBzZXQgYWN0aXZlSXRlbUluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSBpbmRleDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5hcnJvd3VwJylcbiAgdXBLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gaXNOYU4odGhpcy5fYWN0aXZlSXRlbUluZGV4KSA/IDAgOiB0aGlzLl9hY3RpdmVJdGVtSW5kZXg7XG4gICAgICBjb25zdCBuZXh0SW5kZXggPSB0aGlzLmdldE5leHRBY3RpdmFibGVJdGVtSW5kZXgoaW5kZXgsIGZhbHNlKTtcbiAgICAgIHRoaXMuZm9jdXNOZXh0SXRlbShuZXh0SW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5hcnJvd2Rvd24nKVxuICBkb3duS2V5RXZlbnQoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICBjb25zdCBpbmRleCA9IGlzTmFOKHRoaXMuX2FjdGl2ZUl0ZW1JbmRleCkgPyAwIDogdGhpcy5fYWN0aXZlSXRlbUluZGV4O1xuICAgICAgY29uc3QgbmV4dEluZGV4ID0gdGhpcy5nZXROZXh0QWN0aXZhYmxlSXRlbUluZGV4KGluZGV4LCB0cnVlKTtcbiAgICAgIHRoaXMuZm9jdXNOZXh0SXRlbShuZXh0SW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBQcmV2ZW50cyBmb2N1cyB0byBiZSBsb3N0IHdoZW4gVEFCIGhhcyByZWFjaGVkIGVuZCBvZiBtZW51ICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bi50YWInKVxuICB0YWJLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSB0aGlzLl9saXN0SXRlbXMubGFzdC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgIHRoaXMuaXNDbG9zZWRCeUtleUV2ZW50LmVtaXQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogUHJldmVudHMgZm9jdXMgdG8gYmUgbG9zdCB3aGVuIFNISUZUICsgVEFCIGhhcyByZWFjaGVkIGJlZ2lubmluZyBvZiBtZW51ICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bi5zaGlmdC50YWInKVxuICBzaGlmdFRhYktleUV2ZW50KCkge1xuICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT09IHRoaXMuX2xpc3RJdGVtcy5maXJzdC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgIHRoaXMuaXNDbG9zZWRCeUtleUV2ZW50LmVtaXQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMubmF0aXZlRWxlbWVudCwgJ2lkJywgdGhpcy5tZW51SWQpO1xuICAgIHRoaXMuX21lbnVQb3J0YWwgPSBuZXcgRG9tUG9ydGFsKHRoaXMuX21lbnVDb250ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBmb2N1c0ZpcnN0SXRlbSgpOiB2b2lkIHtcbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSAwO1xuICAgIHRoaXMuX2xpc3RJdGVtcy5maXJzdC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLmlzT3BlbiA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgfVxuXG4gIC8qKiBNb3ZlIHRoZSBhcmlhLWN1cnJlbnQgYXR0cmlidXRlIHRvIG5ldyBhY3RpdmUgcGFnZSAqL1xuICBwdWJsaWMgc2V0TmF2aWdhdGlvbkF0dHJpYnV0ZShhY3RpdmVQYWdlRWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2aW91c0FjdGl2ZVBhZ2UgPSB0aGlzLl9saXN0SXRlbXMuZmluZChcbiAgICAgIChpdGVtOiBCYW9Ecm9wZG93bk1lbnVJdGVtKSA9PiB7XG4gICAgICAgIHJldHVybiBpdGVtLm5hdGl2ZUVsZW1lbnQuYXR0cmlidXRlc1snYXJpYS1jdXJyZW50J10gPT09ICdwYWdlJztcbiAgICAgIH1cbiAgICApO1xuICAgIGlmIChwcmV2aW91c0FjdGl2ZVBhZ2UpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKFxuICAgICAgICBwcmV2aW91c0FjdGl2ZVBhZ2UubmF0aXZlRWxlbWVudCxcbiAgICAgICAgJ2FyaWEtY3VycmVudCdcbiAgICAgICk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKFxuICAgICAgICBwcmV2aW91c0FjdGl2ZVBhZ2UubmF0aXZlRWxlbWVudCxcbiAgICAgICAgJ2FjdGl2ZS1saW5rJ1xuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoYWN0aXZlUGFnZUVsZW1lbnQsICdhcmlhLWN1cnJlbnQnLCAncGFnZScpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoYWN0aXZlUGFnZUVsZW1lbnQsICdhY3RpdmUtbGluaycpO1xuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c05leHRJdGVtKG5leHRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fYWN0aXZlSXRlbUluZGV4ID0gbmV4dEluZGV4O1xuICAgIHRoaXMuX2xpc3RJdGVtcy5nZXQobmV4dEluZGV4KS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICAvKipcbiAgICogRmluZHMgdGhlIG5leHQgYWN0aXZhYmxlIHRhYiBpbmRleCB3aGVuIG5hdmlnYXRpbmcgd2l0aCB1cCBhbmQgZG93biBhcnJvdyBvciBUQUIga2V5c1xuICAgKiBAcGFyYW0gY3VycmVudEluZGV4IExpc3QgaXRlbSBpbmRleCB3aGljaCBjdXJyZW50bHkgaGFzIGZvY3VzXG4gICAqIEBwYXJhbSBpc0Rvd24gV2hldGhlciB0aGUgbmF2aWdhdGlvbiBpcyBnb2luZyBpbiB0aGUgZG93biBkaXJlY3Rpb24gb3Igbm90XG4gICAqIEBwYXJhbSBpc0JhY2t3YXJkIElmIHJlY3Vyc2l2ZSBmdW5jdGlvbiBpcyBnb2luZyBiYWNrd2FyZCBsb29raW5nIGZvciBsYXN0IGFjdGl2YWJsZSBpdGVtIGluIGxpc3RcbiAgICogQHJldHVybnMgSW5kZXggb2YgdGhlIG5leHQgaXRlbSB0aGF0IHdpbGwgcmVjZWl2ZSBmb2N1c1xuICAgKi9cbiAgcHJpdmF0ZSBnZXROZXh0QWN0aXZhYmxlSXRlbUluZGV4KFxuICAgIGN1cnJlbnRJbmRleDogbnVtYmVyLFxuICAgIGlzRG93bjogYm9vbGVhbixcbiAgICBpc0JhY2t3YXJkID0gZmFsc2VcbiAgKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuX2xpc3RJdGVtcy5nZXQoY3VycmVudEluZGV4KS5kaXNhYmxlZCkge1xuICAgICAgaWYgKCF0aGlzLmNhbk1vdmUoY3VycmVudEluZGV4LCBpc0Rvd24pKSB7XG4gICAgICAgIHJldHVybiBjdXJyZW50SW5kZXg7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy5jYW5Nb3ZlKGN1cnJlbnRJbmRleCwgaXNEb3duKSkge1xuICAgICAgICBjb25zdCBwcmV2aW91c0luZGV4ID0gaXNEb3duID8gY3VycmVudEluZGV4IC0gMSA6IGN1cnJlbnRJbmRleCArIDE7XG4gICAgICAgIHJldHVybiB0aGlzLmdldE5leHRBY3RpdmFibGVJdGVtSW5kZXgocHJldmlvdXNJbmRleCwgaXNEb3duLCB0cnVlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgbmV4dEluZGV4ID0gaXNEb3duID8gY3VycmVudEluZGV4ICsgMSA6IGN1cnJlbnRJbmRleCAtIDE7XG4gICAgaWYgKHRoaXMuX2xpc3RJdGVtcy5nZXQobmV4dEluZGV4KS5kaXNhYmxlZCkge1xuICAgICAgaWYgKGlzQmFja3dhcmQpIHtcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRJbmRleDtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmdldE5leHRBY3RpdmFibGVJdGVtSW5kZXgobmV4dEluZGV4LCBpc0Rvd24pO1xuICAgIH1cbiAgICByZXR1cm4gbmV4dEluZGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmRzIGlmIGZvY3VzIGhhcyByZWFjaGVkIGVuZCBvciBiZWdpbm5pbmcgb2YgbGlzdFxuICAgKiBAcGFyYW0gY3VycmVudEluZGV4IExpc3QgaXRlbSBpbmRleCB3aGljaCBjdXJyZW50bHkgaGFzIGZvY3VzXG4gICAqIEBwYXJhbSBpc0Rvd24gV2hldGhlciB0aGUgbmF2aWdhdGlvbiBpcyBnb2luZyBpbiB0aGUgZG93biBkaXJlY3Rpb24gb3Igbm90XG4gICAqIEByZXR1cm5zIENhbiBmb2N1cyBtb3ZlIHRvIG5leHQgaXRlbSBvciBub3RcbiAgICovXG4gIHByaXZhdGUgY2FuTW92ZShjdXJyZW50SW5kZXg6IG51bWJlciwgaXNEb3duOiBib29sZWFuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEoXG4gICAgICAoY3VycmVudEluZGV4ID09IDAgJiYgIWlzRG93bikgfHxcbiAgICAgIChjdXJyZW50SW5kZXggPT0gdGhpcy5fbGlzdEl0ZW1zLmxlbmd0aCAtIDEgJiYgaXNEb3duKVxuICAgICk7XG4gIH1cbn1cbi8qKlxuICogRGlyZWN0aXZlIHRvIGJlIGFwcGxpZWQgb24gZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgb3BlbmluZyBhbmQgY2xvc2luZyBvZiBtZW51LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1kcm9wZG93bi1tZW51LXRyaWdnZXIsIFtiYW8tZHJvcGRvd24tbWVudS10cmlnZ2VyXSwgW2Jhb0Ryb3Bkb3duTWVudVRyaWdnZXJGb3JdJyxcbiAgaG9zdDogeyBjbGFzczogJ2Jhby1kcm9wZG93bi1tZW51LXRyaWdnZXInIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51VHJpZ2dlciBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgnYmFvRHJvcGRvd25NZW51VHJpZ2dlckZvcicpIG1lbnU6IEJhb0Ryb3Bkb3duTWVudUNvbXBvbmVudCB8IG51bGw7XG4gIHByaXZhdGUgX292ZXJsYXlSZWY6IE92ZXJsYXlSZWYgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfaXNNZW51T3BlbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheVxuICApIHt9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5lc2NhcGUnKVxuICBlc2NhcGVLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5faXNNZW51T3Blbikge1xuICAgICAgdGhpcy5jbG9zZU1lbnUoKTtcbiAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBFbnRlciBrZXkgZXZlbnQgdHJpZ2dlcnMgY2xpY2sgZXZlbnQgd2hpY2ggb3BlbnMgbWVudSxcbiAgICogIHRoZW4gZm9jdXMgaXMgcHV0IG9uIGZpcnN0IGl0ZW0gaW4gdGhlIG1lbnUgKi9cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleXVwLmVudGVyJylcbiAgZW50ZXJLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5faXNNZW51T3BlbiAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSB0aGlzLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMubWVudS5mb2N1c0ZpcnN0SXRlbSgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgb25DbGljaygpIHtcbiAgICB0aGlzLnRvZ2dsZU1lbnUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5uYXRpdmVFbGVtZW50LCAncm9sZScsICdidXR0b24nKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgIHRoaXMubmF0aXZlRWxlbWVudCxcbiAgICAgICdhcmlhLWNvbnRyb2xzJyxcbiAgICAgIGBiYW8tZHJvcGRvd24tbWVudS0ke2Ryb3Bkb3duTWVudVVuaXF1ZUlkfWBcbiAgICApO1xuICAgIHRoaXMubWVudS5pc0Nsb3NlZEJ5S2V5RXZlbnQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xvc2VNZW51KCk7XG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB0b2dnbGVNZW51KCk6IHZvaWQge1xuICAgIHJldHVybiB0aGlzLl9pc01lbnVPcGVuID8gdGhpcy5jbG9zZU1lbnUoKSA6IHRoaXMub3Blbk1lbnUoKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VNZW51KCk6IHZvaWQge1xuICAgIHRoaXMuX2lzTWVudU9wZW4gPSBmYWxzZTtcbiAgICB0aGlzLm1lbnUuY2xvc2UoKTtcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2goKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9wZW5NZW51KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5tZW51KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLmNyZWF0ZU92ZXJsYXkoKTtcbiAgICBvdmVybGF5UmVmLmF0dGFjaCh0aGlzLm1lbnUubWVudVBvcnRhbCk7XG4gICAgdGhpcy5faXNNZW51T3BlbiA9IHRydWU7XG4gICAgdGhpcy5tZW51Lm9wZW4oKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlT3ZlcmxheSgpOiBPdmVybGF5UmVmIHtcbiAgICBpZiAoIXRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuZ2V0T3ZlcmxheUNvbmZpZygpO1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgICB9XG4gICAgdGhpcy5fb3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xvc2VNZW51KCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuX292ZXJsYXlSZWY7XG4gIH1cblxuICBwcml2YXRlIGdldE92ZXJsYXlDb25maWcoKTogT3ZlcmxheUNvbmZpZyB7XG4gICAgcmV0dXJuIG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMub3ZlcmxheVxuICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsZW1lbnRSZWYpXG4gICAgICAgIC53aXRoTG9ja2VkUG9zaXRpb24oKVxuICAgICAgICAud2l0aEdyb3dBZnRlck9wZW4oKVxuICAgICAgICAud2l0aFBvc2l0aW9ucyhbXG4gICAgICAgICAge1xuICAgICAgICAgICAgLy8gdG9wLWxlZnQgb2YgdGhlIG92ZXJsYXkgaXMgY29ubmVjdGVkIHRvIGJvdHRvbS1sZWZ0IG9mIHRoZSBvcmlnaW47XG4gICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICAgIH0gYXMgQ29ubmVjdGVkUG9zaXRpb24sXG4gICAgICAgICAge1xuICAgICAgICAgICAgLy8gYm90dG9tLWxlZnQgb2YgdGhlIG92ZXJsYXkgaXMgY29ubmVjdGVkIHRvIHRvcC1sZWZ0IG9mIHRoZSBvcmlnaW47XG4gICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJ1xuICAgICAgICAgIH0gYXMgQ29ubmVjdGVkUG9zaXRpb25cbiAgICAgICAgXSksXG4gICAgICBiYWNrZHJvcENsYXNzOiAnYmFvLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnLFxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKVxuICAgIH0pO1xuICB9XG59XG4vKipcbiAqIFNlY3Rpb25zIG9mIGxpc3QgaXRlbXMgaW4gbWVudS4gQXBwbHkgcHJvcGVyIHN0eWxpbmcgdG8gc2VjdGlvbidzIHRpdGxlIGlmIHRoZXJlIGlzIG9uZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYmFvLWRyb3Bkb3duLW1lbnUtc2VjdGlvbiwgW2Jhby1kcm9wZG93bi1tZW51LXNlY3Rpb25dJyxcbiAgaG9zdDogeyBjbGFzczogJ2Jhby1kcm9wZG93bi1tZW51LXNlY3Rpb24nIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51U2VjdGlvbiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzKTtcbiAgICBjb25zdCB0ZXh0SW5kZXggPSBjaGlsZHJlbi5maW5kSW5kZXgoXG4gICAgICAoYzogQ2hpbGROb2RlKSA9PiBjLm5vZGVOYW1lID09PSAnI3RleHQnXG4gICAgKTtcbiAgICBpZiAodGV4dEluZGV4ID4gLTEpIHtcbiAgICAgIHRoaXMuaW5zZXJ0VGl0bGUoY2hpbGRyZW4sIHRleHRJbmRleCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbnNlcnRUaXRsZShjaGlsZHJlbjogQ2hpbGROb2RlW10sIHR4dElkeDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgdGl0bGVFbGVtZW50ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdoNScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkoXG4gICAgICB0aXRsZUVsZW1lbnQsXG4gICAgICAndGV4dENvbnRlbnQnLFxuICAgICAgY2hpbGRyZW5bdHh0SWR4XS5ub2RlVmFsdWVcbiAgICApO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5uYXRpdmVFbGVtZW50LCBjaGlsZHJlblt0eHRJZHhdKTtcbiAgICBjb25zdCBsaXN0SW5kZXggPSBjaGlsZHJlbi5maW5kSW5kZXgoKGM6IENoaWxkTm9kZSkgPT4gYy5ub2RlTmFtZSA9PT0gJ1VMJyk7XG4gICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUoXG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB0aXRsZUVsZW1lbnQsXG4gICAgICBjaGlsZHJlbltsaXN0SW5kZXhdXG4gICAgKTtcbiAgfVxufVxuLyoqXG4gKiBMYWJlbCBvZiBhIGxpc3QgaXRlbSwgYWRkIGNzcyBjbGFzcyB0byBhcHBseSBwcm9wZXIgc3R5bGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYmFvLWRyb3Bkb3duLW1lbnUtaXRlbS1sYWJlbCwgW2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tbGFiZWxdJyxcbiAgaG9zdDogeyBjbGFzczogJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tbGFiZWwnIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51SXRlbUxhYmVsIHt9XG4vKipcbiAqIERlc2NyaXB0aW9uIG9mIGEgbGlzdCBpdGVtLCBhZGQgY3NzIGNsYXNzIHRvIGFwcGx5IHByb3BlciBzdHlsaW5nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tZGVzY3JpcHRpb24sIFtiYW8tZHJvcGRvd24tbWVudS1pdGVtLWRlc2NyaXB0aW9uXScsXG4gIGhvc3Q6IHsgY2xhc3M6ICdiYW8tZHJvcGRvd24tbWVudS1pdGVtLWRlc2NyaXB0aW9uJyB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0Ryb3Bkb3duTWVudUl0ZW1EZXNjcmlwdGlvbiB7fVxuLyoqXG4gKiBEaXZpZGVyIHRvIHNlcGFyYXRlIHNlY3Rpb25zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGA8aHIgLz5gLFxuICBzZWxlY3RvcjogJ2Jhby1kcm9wZG93bi1tZW51LWRpdmlkZXIsIFtiYW8tZHJvcGRvd24tbWVudS1kaXZpZGVyXScsXG4gIGhvc3Q6IHsgY2xhc3M6ICdiYW8tZHJvcGRvd24tbWVudS1kaXZpZGVyJyB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0Ryb3Bkb3duTWVudURpdmlkZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIGdldCBuYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMubmF0aXZlRWxlbWVudCwgJ3JvbGUnLCAnc2VwYXJhdG9yJyk7XG4gIH1cbn1cbiIsIjxkaXYgI21lbnVDb250ZW50IGNsYXNzPVwiYmFvLWRyb3Bkb3duLW1lbnVcIiB0YWJpbmRleD1cIi0xXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
522
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tbWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLXVpL3NyYy9saWIvZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9kcm9wZG93bi1tZW51L2Ryb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFHTCxhQUFhLEVBRWQsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDaEQsT0FBTyxFQUdMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBSU4sU0FBUyxFQUNULGlCQUFpQixFQUNsQixNQUFNLGVBQWUsQ0FBQzs7O0FBRXZCOztHQUVHO0FBQ0gsSUFBSSxvQkFBb0IsR0FBRyxDQUFDLENBQUM7QUFRN0IsTUFBTSxPQUFPLG1CQUFtQjtJQU05QixZQUNVLFFBQW1CLEVBQ25CLFVBQW1DLEVBQ25DLE9BQWlDO1FBRmpDLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFDbkMsWUFBTyxHQUFQLE9BQU8sQ0FBMEI7UUFSM0M7O1dBRUc7UUFDYSxhQUFRLEdBQUcsS0FBSyxDQUFDO0lBTTlCLENBQUM7SUFFSixJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3ZDLENBQUM7SUFHRCxhQUFhO1FBQ1gsSUFBSSxRQUFRLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxL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LEVBQUUsS0FBSyxFQUFFLDhCQUE4QixFQUFFO2lCQUNoRDs7QUFFRDs7R0FFRztBQU1ILE1BQU0sT0FBTyw4QkFBOEI7OzJIQUE5Qiw4QkFBOEI7K0dBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUwxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiwwRUFBMEU7b0JBQzVFLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSxvQ0FBb0MsRUFBRTtpQkFDdEQ7O0FBRUQ7O0dBRUc7QUFNSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2pDLFlBQ1UsUUFBbUIsRUFDbkIsVUFBbUM7UUFEbkMsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixlQUFVLEdBQVYsVUFBVSxDQUF5QjtJQUMxQyxDQUFDO0lBRUosSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztJQUN2QyxDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7O21IQVpVLHNCQUFzQjt1R0FBdEIsc0JBQXNCLHFKQUp2QixRQUFROzJGQUlQLHNCQUFzQjtrQkFMbEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsUUFBUTtvQkFDbEIsUUFBUSxFQUFFLHdEQUF3RDtvQkFDbEUsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFO2lCQUM3QyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjIgVmlsbGUgZGUgTW9udHJlYWwuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBTZWUgTElDRU5TRSBmaWxlIGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGZ1bGwgbGljZW5zZSBpbmZvcm1hdGlvbi5cbiAqL1xuXG5pbXBvcnQge1xuICBDb25uZWN0ZWRQb3NpdGlvbixcbiAgT3ZlcmxheSxcbiAgT3ZlcmxheUNvbmZpZyxcbiAgT3ZlcmxheVJlZlxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBEb21Qb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBDb250ZW50Q2hpbGRyZW4sXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBRdWVyeUxpc3QsXG4gIFJlbmRlcmVyMixcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBVbmlxdWUgSUQgZm9yIGVhY2ggZHJvcGRvd24gbWVudVxuICovXG5sZXQgZHJvcGRvd25NZW51VW5pcXVlSWQgPSAwO1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYmFvLWRyb3Bkb3duLW1lbnUtaXRlbSwgW2Jhby1kcm9wZG93bi1tZW51LWl0ZW1dJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnYmFvLWRyb3Bkb3duLW1lbnUtaXRlbScsXG4gICAgJ1tjbGFzcy5iYW8tZHJvcGRvd24tbWVudS1pdGVtLWRpc2FibGVkXSc6ICdkaXNhYmxlZD09PXRydWUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51SXRlbSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uQ2hhbmdlcyB7XG4gIC8qKlxuICAgKiBJcyB0aGUgbGlzdCBpdGVtIGRpc2FibGVkXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIF9wYXJlbnQ6IEJhb0Ryb3Bkb3duTWVudUNvbXBvbmVudFxuICApIHt9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5zcGFjZScpXG4gIHNwYWNlS2V5RXZlbnQoKSB7XG4gICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT0gdGhpcy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxuICBvbkNsaWNrKGVsOiBIVE1MRWxlbWVudCkge1xuICAgIGlmICh0aGlzLm5hdGl2ZUVsZW1lbnQuYXR0cmlidXRlc1snaHJlZiddKSB7XG4gICAgICB0aGlzLl9wYXJlbnQuc2V0TmF2aWdhdGlvbkF0dHJpYnV0ZSh0aGlzLm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cbiAgICAvLyBQcmV2ZW50IGRvdWJsZS1jbGljayBvbiBjaGVja2JveCBpbnB1dCB0aGF0IHVuZG9lcyB0aGUgdG9nZ2xlXG4gICAgaWYgKCFlbC5jbGFzc0xpc3QuY29udGFpbnMoJ2Jhby1jaGVja2JveC1jb250ZW50LWNvbnRhaW5lcicpKSB7XG4gICAgICB0aGlzLnByb3BhZ2F0ZUNsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleWRvd24uZW50ZXInKVxuICBlbnRlcktleUV2ZW50KCkge1xuICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09IHRoaXMubmF0aXZlRWxlbWVudCkge1xuICAgICAgaWYgKHRoaXMubmF0aXZlRWxlbWVudC5hdHRyaWJ1dGVzWydocmVmJ10pIHtcbiAgICAgICAgdGhpcy5fcGFyZW50LnNldE5hdmlnYXRpb25BdHRyaWJ1dGUodGhpcy5uYXRpdmVFbGVtZW50KTtcbiAgICAgIH1cbiAgICAgIHRoaXMucHJvcGFnYXRlQ2xpY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYWRkQ29udGVudERpdigpO1xuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5uYXRpdmVFbGVtZW50LCAndGFiSW5kZXgnLCAnMCcpO1xuICAgIH1cbiAgICB0aGlzLmFkZFBhZGRpbmdDbGFzcygpO1xuICAgIC8vIFJlbW92ZSBpbnB1dCBlbGVtZW50IGluc2lkZSBpdGVtIGZyb20ga2V5Ym9hcmQgbmF2aWdhdGlvbiBzZXF1ZW5jZVxuICAgIGlmICh0aGlzLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdoYXMtZWxlbWVudC1sZWZ0JykpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKFxuICAgICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuY2hpbGRyZW4uaXRlbSgwKS5maXJzdEVsZW1lbnRDaGlsZCxcbiAgICAgICAgJ3RhYkluZGV4JyxcbiAgICAgICAgJy0xJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydkaXNhYmxlZCddICYmIGNoYW5nZXNbJ2Rpc2FibGVkJ10uY3VycmVudFZhbHVlID09IHRydWUpIHtcbiAgICAgIHRoaXMuZGlzYWJsZUl0ZW0oKTtcbiAgICB9XG4gIH1cblxuICAvKiogUmVncm91cHMgbGFiZWwgYW5kIGRlc2NyaXB0aW9uIGluIGEgbmV3IGRpdiB0byBoZWxwIHdpdGggbGF5b3V0ICovXG4gIHByaXZhdGUgYWRkQ29udGVudERpdigpOiB2b2lkIHtcbiAgICBjb25zdCBjaGlsZHJlbiA9IEFycmF5LmZyb20odGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkcmVuKTtcbiAgICBjb25zdCBsYWJlbEluZGV4ID0gY2hpbGRyZW4uZmluZEluZGV4KFxuICAgICAgYyA9PiBjLmxvY2FsTmFtZSA9PT0gJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tbGFiZWwnXG4gICAgKTtcbiAgICBjb25zdCBsYWJlbEVsZW1lbnQgPSBjaGlsZHJlbltsYWJlbEluZGV4XTtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNoaWxkKHRoaXMubmF0aXZlRWxlbWVudCwgY2hpbGRyZW5bbGFiZWxJbmRleF0pO1xuICAgIGNvbnN0IGNvbnRlbnREaXYgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoY29udGVudERpdiwgJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tY29udGVudCcpO1xuICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5uYXRpdmVFbGVtZW50LCBjb250ZW50RGl2KTtcbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGNvbnRlbnREaXYsIGxhYmVsRWxlbWVudCk7XG4gICAgY29uc3QgZGVzY3JpcHRpb25JbmRleCA9IGNoaWxkcmVuLmZpbmRJbmRleChcbiAgICAgIGMgPT4gYy5sb2NhbE5hbWUgPT09ICdiYW8tZHJvcGRvd24tbWVudS1pdGVtLWRlc2NyaXB0aW9uJ1xuICAgICk7XG4gICAgaWYgKGRlc2NyaXB0aW9uSW5kZXggPiAwKSB7XG4gICAgICBjb25zdCBkZXNjcmlwdGlvbkVsZW1lbnQgPSBjaGlsZHJlbltkZXNjcmlwdGlvbkluZGV4XTtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5uYXRpdmVFbGVtZW50LCBjaGlsZHJlbltkZXNjcmlwdGlvbkluZGV4XSk7XG4gICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGNvbnRlbnREaXYsIGRlc2NyaXB0aW9uRWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRQYWRkaW5nQ2xhc3MoKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbik7XG4gICAgLy8gTWVudSBpdGVtIGhhcyBleHRyYSBlbGVtZW50IG5leHQgdG8gbGFiZWxcbiAgICBpZiAoY2hpbGRyZW4ubGVuZ3RoID4gMSkge1xuICAgICAgLy8gT25seSB0b2dnbGUgZWxlbWVudCBjYW4gYmUgb24gdGhlIHJpZ2h0XG4gICAgICBpZiAoY2hpbGRyZW4uZmluZEluZGV4KGMgPT4gYy5sb2NhbE5hbWUgPT09ICdiYW8tdG9nZ2xlJykgPiAwKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5uYXRpdmVFbGVtZW50LCAnaGFzLWVsZW1lbnQtcmlnaHQnKTtcbiAgICAgIH1cbiAgICAgIC8vIEljb24sIGNoZWNrYm94LCByYWRpbyBidXR0b24gb3IgYXZhdGFyIG11c3QgYmUgb24gdGhlIGxlZnRcbiAgICAgIGVsc2Uge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMubmF0aXZlRWxlbWVudCwgJ2hhcy1lbGVtZW50LWxlZnQnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRpc2FibGVJdGVtKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLm5hdGl2ZUVsZW1lbnQsICdhcmlhLWRpc2FibGVkJywgJ3RydWUnKTtcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMubmF0aXZlRWxlbWVudCwgJ3RhYkluZGV4JywgJy0xJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRoaXMgbWV0aG9kIHByb3BhZ2F0ZXMgYSBjbGljayBldmVudCB0byBtZW51IGl0ZW0gY2hpbGRyZW4gd2l0aCBpbnB1dHMgKGNoZWNrYm94LCByYWRpbyBidXR0b24pXG4gICAqL1xuICBwcml2YXRlIHByb3BhZ2F0ZUNsaWNrKCk6IHZvaWQge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5uYXRpdmVFbGVtZW50LmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbi5pdGVtKGkpLmZpcnN0RWxlbWVudENoaWxkLmxvY2FsTmFtZSA9PVxuICAgICAgICAnaW5wdXQnXG4gICAgICApIHtcbiAgICAgICAgKFxuICAgICAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZHJlbi5pdGVtKGkpLmZpcnN0RWxlbWVudENoaWxkIGFzIEhUTUxFbGVtZW50XG4gICAgICAgICkuY2xpY2soKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1kcm9wZG93bi1tZW51JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tZHJvcGRvd24tbWVudS1jb250YWluZXInLFxuICAgICdbY2xhc3MuYmFvLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3BdJzogJ2lzT3Blbj09PWZhbHNlJyxcbiAgICAnW2NsYXNzLmJhby1kcm9wZG93bi1tZW51LWNsb3NlZF0nOiAnaXNPcGVuPT09ZmFsc2UnLFxuICAgICdbYXR0ci5hcmlhLWV4cGFuZGVkXSc6ICdpc09wZW4nXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKlxuICAgKiBGaXJlZCB3aGVuIHRoZSBkcm9wZG93bi1tZW51IGNoYW5nZXMgaXRzICdpc09wZW4nIHZhbHVlXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGlzT3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAvKipcbiAgICogRmlyZWQgd2hlbiBtZW51IGlzIGNsb3NlZCBieSBrZXkgZXZlbnQgdHJpZ2dlcmVkIGZyb20gbWVudSBpdGVtXG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIGlzQ2xvc2VkQnlLZXlFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogQ29udGVudCBvZiBtZW51IHRvIGJlIGxvYWRlZCBpbnNpZGUgT3ZlcmxheVxuICAgKi9cbiAgQFZpZXdDaGlsZCgnbWVudUNvbnRlbnQnKSBfbWVudUNvbnRlbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIC8qKlxuICAgKiBBbGwgbGlzdCBpdGVtcyBpbnNpZGUgbWVudVxuICAgKi9cbiAgQENvbnRlbnRDaGlsZHJlbihCYW9Ecm9wZG93bk1lbnVJdGVtLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIF9saXN0SXRlbXM6IFF1ZXJ5TGlzdDxCYW9Ecm9wZG93bk1lbnVJdGVtPjtcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGRyb3Bkb3duIG1lbnVcbiAgICovXG4gIHJlYWRvbmx5IG1lbnVJZCA9IGBiYW8tZHJvcGRvd24tbWVudS0keysrZHJvcGRvd25NZW51VW5pcXVlSWR9YDtcblxuICAvKipcbiAgICogSXMgdGhlIGRyb3B3ZG93biBtZW51IGN1cnJlbnRseSBvcGVuXG4gICAqL1xuICBwcml2YXRlIF9pc09wZW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHBvcnRhbCB3aGljaCBpcyBhdHRhY2hlZCB0byBPdmVybGF5XG4gICAqL1xuICBwcml2YXRlIF9tZW51UG9ydGFsOiBEb21Qb3J0YWw7XG5cbiAgLyoqXG4gICAqIEluZGV4IG9mIGN1cnJlbnRseSBhY3RpdmUgbGlzdCBpdGVtXG4gICAqL1xuICBwcml2YXRlIF9hY3RpdmVJdGVtSW5kZXg6IG51bWJlcjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzT3BlbjtcbiAgfVxuICBnZXQgYWN0aXZlSXRlbUluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2FjdGl2ZUl0ZW1JbmRleDtcbiAgfVxuICBnZXQgbWVudVBvcnRhbCgpOiBEb21Qb3J0YWwge1xuICAgIHJldHVybiB0aGlzLl9tZW51UG9ydGFsO1xuICB9XG4gIGdldCBuYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cbiAgc2V0IGlzT3Blbihpc09wZW46IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9pc09wZW4gPSBpc09wZW47XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHRoaXMuaXNPcGVuQ2hhbmdlLmVtaXQoaXNPcGVuKTtcbiAgfVxuICBzZXQgYWN0aXZlSXRlbUluZGV4KGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSBpbmRleDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5hcnJvd3VwJylcbiAgdXBLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gaXNOYU4odGhpcy5fYWN0aXZlSXRlbUluZGV4KSA/IDAgOiB0aGlzLl9hY3RpdmVJdGVtSW5kZXg7XG4gICAgICBjb25zdCBuZXh0SW5kZXggPSB0aGlzLmdldE5leHRBY3RpdmFibGVJdGVtSW5kZXgoaW5kZXgsIGZhbHNlKTtcbiAgICAgIHRoaXMuZm9jdXNOZXh0SXRlbShuZXh0SW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5hcnJvd2Rvd24nKVxuICBkb3duS2V5RXZlbnQoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICBjb25zdCBpbmRleCA9IGlzTmFOKHRoaXMuX2FjdGl2ZUl0ZW1JbmRleCkgPyAwIDogdGhpcy5fYWN0aXZlSXRlbUluZGV4O1xuICAgICAgY29uc3QgbmV4dEluZGV4ID0gdGhpcy5nZXROZXh0QWN0aXZhYmxlSXRlbUluZGV4KGluZGV4LCB0cnVlKTtcbiAgICAgIHRoaXMuZm9jdXNOZXh0SXRlbShuZXh0SW5kZXgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBQcmV2ZW50cyBmb2N1cyB0byBiZSBsb3N0IHdoZW4gVEFCIGhhcyByZWFjaGVkIGVuZCBvZiBtZW51ICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bi50YWInKVxuICB0YWJLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSB0aGlzLl9saXN0SXRlbXMubGFzdC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgIHRoaXMuaXNDbG9zZWRCeUtleUV2ZW50LmVtaXQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKiogUHJldmVudHMgZm9jdXMgdG8gYmUgbG9zdCB3aGVuIFNISUZUICsgVEFCIGhhcyByZWFjaGVkIGJlZ2lubmluZyBvZiBtZW51ICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bi5zaGlmdC50YWInKVxuICBzaGlmdFRhYktleUV2ZW50KCkge1xuICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT09IHRoaXMuX2xpc3RJdGVtcy5maXJzdC5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgIHRoaXMuaXNDbG9zZWRCeUtleUV2ZW50LmVtaXQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMubmF0aXZlRWxlbWVudCwgJ2lkJywgdGhpcy5tZW51SWQpO1xuICAgIHRoaXMuX21lbnVQb3J0YWwgPSBuZXcgRG9tUG9ydGFsKHRoaXMuX21lbnVDb250ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBmb2N1c0ZpcnN0SXRlbSgpOiB2b2lkIHtcbiAgICB0aGlzLl9hY3RpdmVJdGVtSW5kZXggPSAwO1xuICAgIHRoaXMuX2xpc3RJdGVtcy5maXJzdC5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICBwdWJsaWMgb3BlbigpOiB2b2lkIHtcbiAgICB0aGlzLmlzT3BlbiA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgfVxuXG4gIC8qKiBNb3ZlIHRoZSBhcmlhLWN1cnJlbnQgYXR0cmlidXRlIHRvIG5ldyBhY3RpdmUgcGFnZSAqL1xuICBwdWJsaWMgc2V0TmF2aWdhdGlvbkF0dHJpYnV0ZShhY3RpdmVQYWdlRWxlbWVudDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2aW91c0FjdGl2ZVBhZ2UgPSB0aGlzLl9saXN0SXRlbXMuZmluZChcbiAgICAgIChpdGVtOiBCYW9Ecm9wZG93bk1lbnVJdGVtKSA9PiB7XG4gICAgICAgIHJldHVybiBpdGVtLm5hdGl2ZUVsZW1lbnQuYXR0cmlidXRlc1snYXJpYS1jdXJyZW50J10gPT09ICdwYWdlJztcbiAgICAgIH1cbiAgICApO1xuICAgIGlmIChwcmV2aW91c0FjdGl2ZVBhZ2UpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKFxuICAgICAgICBwcmV2aW91c0FjdGl2ZVBhZ2UubmF0aXZlRWxlbWVudCxcbiAgICAgICAgJ2FyaWEtY3VycmVudCdcbiAgICAgICk7XG4gICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKFxuICAgICAgICBwcmV2aW91c0FjdGl2ZVBhZ2UubmF0aXZlRWxlbWVudCxcbiAgICAgICAgJ2FjdGl2ZS1saW5rJ1xuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoYWN0aXZlUGFnZUVsZW1lbnQsICdhcmlhLWN1cnJlbnQnLCAncGFnZScpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoYWN0aXZlUGFnZUVsZW1lbnQsICdhY3RpdmUtbGluaycpO1xuICB9XG5cbiAgcHJpdmF0ZSBmb2N1c05leHRJdGVtKG5leHRJbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5fYWN0aXZlSXRlbUluZGV4ID0gbmV4dEluZGV4O1xuICAgIHRoaXMuX2xpc3RJdGVtcy5nZXQobmV4dEluZGV4KS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gIH1cblxuICAvKipcbiAgICogRmluZHMgdGhlIG5leHQgYWN0aXZhYmxlIHRhYiBpbmRleCB3aGVuIG5hdmlnYXRpbmcgd2l0aCB1cCBhbmQgZG93biBhcnJvdyBvciBUQUIga2V5c1xuICAgKiBAcGFyYW0gY3VycmVudEluZGV4IExpc3QgaXRlbSBpbmRleCB3aGljaCBjdXJyZW50bHkgaGFzIGZvY3VzXG4gICAqIEBwYXJhbSBpc0Rvd24gV2hldGhlciB0aGUgbmF2aWdhdGlvbiBpcyBnb2luZyBpbiB0aGUgZG93biBkaXJlY3Rpb24gb3Igbm90XG4gICAqIEBwYXJhbSBpc0JhY2t3YXJkIElmIHJlY3Vyc2l2ZSBmdW5jdGlvbiBpcyBnb2luZyBiYWNrd2FyZCBsb29raW5nIGZvciBsYXN0IGFjdGl2YWJsZSBpdGVtIGluIGxpc3RcbiAgICogQHJldHVybnMgSW5kZXggb2YgdGhlIG5leHQgaXRlbSB0aGF0IHdpbGwgcmVjZWl2ZSBmb2N1c1xuICAgKi9cbiAgcHJpdmF0ZSBnZXROZXh0QWN0aXZhYmxlSXRlbUluZGV4KFxuICAgIGN1cnJlbnRJbmRleDogbnVtYmVyLFxuICAgIGlzRG93bjogYm9vbGVhbixcbiAgICBpc0JhY2t3YXJkID0gZmFsc2VcbiAgKTogbnVtYmVyIHtcbiAgICBpZiAoIXRoaXMuX2xpc3RJdGVtcy5nZXQoY3VycmVudEluZGV4KS5kaXNhYmxlZCkge1xuICAgICAgaWYgKCF0aGlzLmNhbk1vdmUoY3VycmVudEluZGV4LCBpc0Rvd24pKSB7XG4gICAgICAgIHJldHVybiBjdXJyZW50SW5kZXg7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICghdGhpcy5jYW5Nb3ZlKGN1cnJlbnRJbmRleCwgaXNEb3duKSkge1xuICAgICAgICBjb25zdCBwcmV2aW91c0luZGV4ID0gaXNEb3duID8gY3VycmVudEluZGV4IC0gMSA6IGN1cnJlbnRJbmRleCArIDE7XG4gICAgICAgIHJldHVybiB0aGlzLmdldE5leHRBY3RpdmFibGVJdGVtSW5kZXgocHJldmlvdXNJbmRleCwgaXNEb3duLCB0cnVlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgbmV4dEluZGV4ID0gaXNEb3duID8gY3VycmVudEluZGV4ICsgMSA6IGN1cnJlbnRJbmRleCAtIDE7XG4gICAgaWYgKHRoaXMuX2xpc3RJdGVtcy5nZXQobmV4dEluZGV4KS5kaXNhYmxlZCkge1xuICAgICAgaWYgKGlzQmFja3dhcmQpIHtcbiAgICAgICAgcmV0dXJuIGN1cnJlbnRJbmRleDtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmdldE5leHRBY3RpdmFibGVJdGVtSW5kZXgobmV4dEluZGV4LCBpc0Rvd24pO1xuICAgIH1cbiAgICByZXR1cm4gbmV4dEluZGV4O1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmRzIGlmIGZvY3VzIGhhcyByZWFjaGVkIGVuZCBvciBiZWdpbm5pbmcgb2YgbGlzdFxuICAgKiBAcGFyYW0gY3VycmVudEluZGV4IExpc3QgaXRlbSBpbmRleCB3aGljaCBjdXJyZW50bHkgaGFzIGZvY3VzXG4gICAqIEBwYXJhbSBpc0Rvd24gV2hldGhlciB0aGUgbmF2aWdhdGlvbiBpcyBnb2luZyBpbiB0aGUgZG93biBkaXJlY3Rpb24gb3Igbm90XG4gICAqIEByZXR1cm5zIENhbiBmb2N1cyBtb3ZlIHRvIG5leHQgaXRlbSBvciBub3RcbiAgICovXG4gIHByaXZhdGUgY2FuTW92ZShjdXJyZW50SW5kZXg6IG51bWJlciwgaXNEb3duOiBib29sZWFuKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEoXG4gICAgICAoY3VycmVudEluZGV4ID09IDAgJiYgIWlzRG93bikgfHxcbiAgICAgIChjdXJyZW50SW5kZXggPT0gdGhpcy5fbGlzdEl0ZW1zLmxlbmd0aCAtIDEgJiYgaXNEb3duKVxuICAgICk7XG4gIH1cbn1cbi8qKlxuICogRGlyZWN0aXZlIHRvIGJlIGFwcGxpZWQgb24gZWxlbWVudCB0aGF0IHdpbGwgdHJpZ2dlciB0aGUgb3BlbmluZyBhbmQgY2xvc2luZyBvZiBtZW51LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1kcm9wZG93bi1tZW51LXRyaWdnZXIsIFtiYW8tZHJvcGRvd24tbWVudS10cmlnZ2VyXSwgW2Jhb0Ryb3Bkb3duTWVudVRyaWdnZXJGb3JdJyxcbiAgaG9zdDogeyBjbGFzczogJ2Jhby1kcm9wZG93bi1tZW51LXRyaWdnZXInIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51VHJpZ2dlciBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgnYmFvRHJvcGRvd25NZW51VHJpZ2dlckZvcicpIG1lbnU6IEJhb0Ryb3Bkb3duTWVudUNvbXBvbmVudCB8IG51bGw7XG4gIHByaXZhdGUgX292ZXJsYXlSZWY6IE92ZXJsYXlSZWYgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBfaXNNZW51T3BlbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheVxuICApIHt9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzprZXl1cC5lc2NhcGUnKVxuICBlc2NhcGVLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5faXNNZW51T3Blbikge1xuICAgICAgdGhpcy5jbG9zZU1lbnUoKTtcbiAgICAgIHRoaXMubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBFbnRlciBrZXkgZXZlbnQgdHJpZ2dlcnMgY2xpY2sgZXZlbnQgd2hpY2ggb3BlbnMgbWVudSxcbiAgICogIHRoZW4gZm9jdXMgaXMgcHV0IG9uIGZpcnN0IGl0ZW0gaW4gdGhlIG1lbnUgKi9cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleXVwLmVudGVyJylcbiAgZW50ZXJLZXlFdmVudCgpIHtcbiAgICBpZiAodGhpcy5faXNNZW51T3BlbiAmJiBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSB0aGlzLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMubWVudS5mb2N1c0ZpcnN0SXRlbSgpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgb25DbGljaygpIHtcbiAgICB0aGlzLnRvZ2dsZU1lbnUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5uYXRpdmVFbGVtZW50LCAncm9sZScsICdidXR0b24nKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgIHRoaXMubmF0aXZlRWxlbWVudCxcbiAgICAgICdhcmlhLWNvbnRyb2xzJyxcbiAgICAgIGBiYW8tZHJvcGRvd24tbWVudS0ke2Ryb3Bkb3duTWVudVVuaXF1ZUlkfWBcbiAgICApO1xuICAgIHRoaXMubWVudS5pc0Nsb3NlZEJ5S2V5RXZlbnQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xvc2VNZW51KCk7XG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kaXNwb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB0b2dnbGVNZW51KCk6IHZvaWQge1xuICAgIHJldHVybiB0aGlzLl9pc01lbnVPcGVuID8gdGhpcy5jbG9zZU1lbnUoKSA6IHRoaXMub3Blbk1lbnUoKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VNZW51KCk6IHZvaWQge1xuICAgIHRoaXMuX2lzTWVudU9wZW4gPSBmYWxzZTtcbiAgICB0aGlzLm1lbnUuY2xvc2UoKTtcbiAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2goKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG9wZW5NZW51KCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5tZW51KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLmNyZWF0ZU92ZXJsYXkoKTtcbiAgICBvdmVybGF5UmVmLmF0dGFjaCh0aGlzLm1lbnUubWVudVBvcnRhbCk7XG4gICAgdGhpcy5faXNNZW51T3BlbiA9IHRydWU7XG4gICAgdGhpcy5tZW51Lm9wZW4oKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlT3ZlcmxheSgpOiBPdmVybGF5UmVmIHtcbiAgICBpZiAoIXRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuZ2V0T3ZlcmxheUNvbmZpZygpO1xuICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgICB9XG4gICAgdGhpcy5fb3ZlcmxheVJlZi5iYWNrZHJvcENsaWNrKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuY2xvc2VNZW51KCk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuX292ZXJsYXlSZWY7XG4gIH1cblxuICBwcml2YXRlIGdldE92ZXJsYXlDb25maWcoKTogT3ZlcmxheUNvbmZpZyB7XG4gICAgcmV0dXJuIG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMub3ZlcmxheVxuICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmVsZW1lbnRSZWYpXG4gICAgICAgIC53aXRoTG9ja2VkUG9zaXRpb24oKVxuICAgICAgICAud2l0aEdyb3dBZnRlck9wZW4oKVxuICAgICAgICAud2l0aFBvc2l0aW9ucyhbXG4gICAgICAgICAge1xuICAgICAgICAgICAgLy8gdG9wLWxlZnQgb2YgdGhlIG92ZXJsYXkgaXMgY29ubmVjdGVkIHRvIGJvdHRvbS1sZWZ0IG9mIHRoZSBvcmlnaW47XG4gICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAndG9wJ1xuICAgICAgICAgIH0gYXMgQ29ubmVjdGVkUG9zaXRpb24sXG4gICAgICAgICAge1xuICAgICAgICAgICAgLy8gYm90dG9tLWxlZnQgb2YgdGhlIG92ZXJsYXkgaXMgY29ubmVjdGVkIHRvIHRvcC1sZWZ0IG9mIHRoZSBvcmlnaW47XG4gICAgICAgICAgICBvcmlnaW5YOiAnc3RhcnQnLFxuICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgICAgICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcbiAgICAgICAgICAgIG92ZXJsYXlZOiAnYm90dG9tJ1xuICAgICAgICAgIH0gYXMgQ29ubmVjdGVkUG9zaXRpb25cbiAgICAgICAgXSksXG4gICAgICBiYWNrZHJvcENsYXNzOiAnYmFvLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnLFxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBzY3JvbGxTdHJhdGVneTogdGhpcy5vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuYmxvY2soKVxuICAgIH0pO1xuICB9XG59XG4vKipcbiAqIFNlY3Rpb25zIG9mIGxpc3QgaXRlbXMgaW4gbWVudS4gQXBwbHkgcHJvcGVyIHN0eWxpbmcgdG8gc2VjdGlvbidzIHRpdGxlIGlmIHRoZXJlIGlzIG9uZS5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYmFvLWRyb3Bkb3duLW1lbnUtc2VjdGlvbiwgW2Jhby1kcm9wZG93bi1tZW51LXNlY3Rpb25dJyxcbiAgaG9zdDogeyBjbGFzczogJ2Jhby1kcm9wZG93bi1tZW51LXNlY3Rpb24nIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51U2VjdGlvbiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMlxuICApIHt9XG5cbiAgZ2V0IG5hdGl2ZUVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSBBcnJheS5mcm9tKHRoaXMubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzKTtcbiAgICBjb25zdCB0ZXh0SW5kZXggPSBjaGlsZHJlbi5maW5kSW5kZXgoXG4gICAgICAoYzogQ2hpbGROb2RlKSA9PiBjLm5vZGVOYW1lID09PSAnI3RleHQnXG4gICAgKTtcbiAgICBpZiAodGV4dEluZGV4ID4gLTEpIHtcbiAgICAgIHRoaXMuaW5zZXJ0VGl0bGUoY2hpbGRyZW4sIHRleHRJbmRleCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbnNlcnRUaXRsZShjaGlsZHJlbjogQ2hpbGROb2RlW10sIHR4dElkeDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgdGl0bGVFbGVtZW50ID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdoNScpO1xuICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkoXG4gICAgICB0aXRsZUVsZW1lbnQsXG4gICAgICAndGV4dENvbnRlbnQnLFxuICAgICAgY2hpbGRyZW5bdHh0SWR4XS5ub2RlVmFsdWVcbiAgICApO1xuICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQodGhpcy5uYXRpdmVFbGVtZW50LCBjaGlsZHJlblt0eHRJZHhdKTtcbiAgICBjb25zdCBsaXN0SW5kZXggPSBjaGlsZHJlbi5maW5kSW5kZXgoKGM6IENoaWxkTm9kZSkgPT4gYy5ub2RlTmFtZSA9PT0gJ1VMJyk7XG4gICAgdGhpcy5yZW5kZXJlci5pbnNlcnRCZWZvcmUoXG4gICAgICB0aGlzLm5hdGl2ZUVsZW1lbnQsXG4gICAgICB0aXRsZUVsZW1lbnQsXG4gICAgICBjaGlsZHJlbltsaXN0SW5kZXhdXG4gICAgKTtcbiAgfVxufVxuLyoqXG4gKiBMYWJlbCBvZiBhIGxpc3QgaXRlbSwgYWRkIGNzcyBjbGFzcyB0byBhcHBseSBwcm9wZXIgc3R5bGluZy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYmFvLWRyb3Bkb3duLW1lbnUtaXRlbS1sYWJlbCwgW2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tbGFiZWxdJyxcbiAgaG9zdDogeyBjbGFzczogJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tbGFiZWwnIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51SXRlbUxhYmVsIHt9XG4vKipcbiAqIERlc2NyaXB0aW9uIG9mIGEgbGlzdCBpdGVtLCBhZGQgY3NzIGNsYXNzIHRvIGFwcGx5IHByb3BlciBzdHlsaW5nLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1kcm9wZG93bi1tZW51LWl0ZW0tZGVzY3JpcHRpb24sIFtiYW8tZHJvcGRvd24tbWVudS1pdGVtLWRlc2NyaXB0aW9uXScsXG4gIGhvc3Q6IHsgY2xhc3M6ICdiYW8tZHJvcGRvd24tbWVudS1pdGVtLWRlc2NyaXB0aW9uJyB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0Ryb3Bkb3duTWVudUl0ZW1EZXNjcmlwdGlvbiB7fVxuLyoqXG4gKiBEaXZpZGVyIHRvIHNlcGFyYXRlIHNlY3Rpb25zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGA8aHIgLz5gLFxuICBzZWxlY3RvcjogJ2Jhby1kcm9wZG93bi1tZW51LWRpdmlkZXIsIFtiYW8tZHJvcGRvd24tbWVudS1kaXZpZGVyXScsXG4gIGhvc3Q6IHsgY2xhc3M6ICdiYW8tZHJvcGRvd24tbWVudS1kaXZpZGVyJyB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0Ryb3Bkb3duTWVudURpdmlkZXIgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD5cbiAgKSB7fVxuXG4gIGdldCBuYXRpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMubmF0aXZlRWxlbWVudCwgJ3JvbGUnLCAnc2VwYXJhdG9yJyk7XG4gIH1cbn1cbiIsIjxkaXYgI21lbnVDb250ZW50IGNsYXNzPVwiYmFvLWRyb3Bkb3duLW1lbnVcIiB0YWJpbmRleD1cIi0xXCI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
@@ -21,8 +21,8 @@ const DROPDOWN_MENU_DIRECTIVES = [
21
21
  ];
22
22
  export class BaoDropdownMenuModule {
23
23
  }
24
- BaoDropdownMenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
- BaoDropdownMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuModule, declarations: [BaoDropdownMenuComponent,
24
+ BaoDropdownMenuModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
25
+ BaoDropdownMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuModule, declarations: [BaoDropdownMenuComponent,
26
26
  BaoDropdownMenuTrigger,
27
27
  BaoDropdownMenuItem,
28
28
  BaoDropdownMenuSection,
@@ -35,8 +35,8 @@ BaoDropdownMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", v
35
35
  BaoDropdownMenuItemLabel,
36
36
  BaoDropdownMenuItemDescription,
37
37
  BaoDropdownMenuDivider] });
38
- BaoDropdownMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuModule, imports: [[CommonModule, ObserversModule, OverlayModule, PortalModule]] });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoDropdownMenuModule, decorators: [{
38
+ BaoDropdownMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuModule, imports: [CommonModule, ObserversModule, OverlayModule, PortalModule] });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoDropdownMenuModule, decorators: [{
40
40
  type: NgModule,
41
41
  args: [{
42
42
  imports: [CommonModule, ObserversModule, OverlayModule, PortalModule],
@@ -44,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
44
44
  exports: [...DROPDOWN_MENU_DIRECTIVES]
45
45
  }]
46
46
  }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2Ryb3Bkb3duLW1lbnUvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLHdCQUF3QixFQUN4Qiw4QkFBOEIsRUFDOUIsc0JBQXNCLEVBQ3ZCLE1BQU0sMkJBQTJCLENBQUM7O0FBRW5DLE1BQU0sd0JBQXdCLEdBQUc7SUFDL0Isd0JBQXdCO0lBQ3hCLHNCQUFzQjtJQUN0QixtQkFBbUI7SUFDbkIsc0JBQXNCO0lBQ3RCLHdCQUF3QjtJQUN4Qiw4QkFBOEI7SUFDOUIsc0JBQXNCO0NBQ3ZCLENBQUM7QUFPRixNQUFNLE9BQU8scUJBQXFCOzttSEFBckIscUJBQXFCO29IQUFyQixxQkFBcUIsaUJBZGhDLHdCQUF3QjtRQUN4QixzQkFBc0I7UUFDdEIsbUJBQW1CO1FBQ25CLHNCQUFzQjtRQUN0Qix3QkFBd0I7UUFDeEIsOEJBQThCO1FBQzlCLHNCQUFzQixhQUlaLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksYUFWcEUsd0JBQXdCO1FBQ3hCLHNCQUFzQjtRQUN0QixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLHdCQUF3QjtRQUN4Qiw4QkFBOEI7UUFDOUIsc0JBQXNCO29IQVFYLHFCQUFxQixZQUp2QixDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQzs0RkFJMUQscUJBQXFCO2tCQUxqQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQztvQkFDckUsWUFBWSxFQUFFLENBQUMsd0JBQXdCLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLEdBQUcsd0JBQXdCLENBQUM7aUJBQ3ZDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQgeyBPYnNlcnZlcnNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb2JzZXJ2ZXJzJztcbmltcG9ydCB7IE92ZXJsYXlNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBQb3J0YWxNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQmFvRHJvcGRvd25NZW51Q29tcG9uZW50LFxuICBCYW9Ecm9wZG93bk1lbnVUcmlnZ2VyLFxuICBCYW9Ecm9wZG93bk1lbnVJdGVtLFxuICBCYW9Ecm9wZG93bk1lbnVTZWN0aW9uLFxuICBCYW9Ecm9wZG93bk1lbnVJdGVtTGFiZWwsXG4gIEJhb0Ryb3Bkb3duTWVudUl0ZW1EZXNjcmlwdGlvbixcbiAgQmFvRHJvcGRvd25NZW51RGl2aWRlclxufSBmcm9tICcuL2Ryb3Bkb3duLW1lbnUuY29tcG9uZW50JztcblxuY29uc3QgRFJPUERPV05fTUVOVV9ESVJFQ1RJVkVTID0gW1xuICBCYW9Ecm9wZG93bk1lbnVDb21wb25lbnQsXG4gIEJhb0Ryb3Bkb3duTWVudVRyaWdnZXIsXG4gIEJhb0Ryb3Bkb3duTWVudUl0ZW0sXG4gIEJhb0Ryb3Bkb3duTWVudVNlY3Rpb24sXG4gIEJhb0Ryb3Bkb3duTWVudUl0ZW1MYWJlbCxcbiAgQmFvRHJvcGRvd25NZW51SXRlbURlc2NyaXB0aW9uLFxuICBCYW9Ecm9wZG93bk1lbnVEaXZpZGVyXG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBPYnNlcnZlcnNNb2R1bGUsIE92ZXJsYXlNb2R1bGUsIFBvcnRhbE1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0RST1BET1dOX01FTlVfRElSRUNUSVZFU10sXG4gIGV4cG9ydHM6IFsuLi5EUk9QRE9XTl9NRU5VX0RJUkVDVElWRVNdXG59KVxuZXhwb3J0IGNsYXNzIEJhb0Ryb3Bkb3duTWVudU1vZHVsZSB7fVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2Ryb3Bkb3duLW1lbnUvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0QixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLHdCQUF3QixFQUN4Qiw4QkFBOEIsRUFDOUIsc0JBQXNCLEVBQ3ZCLE1BQU0sMkJBQTJCLENBQUM7O0FBRW5DLE1BQU0sd0JBQXdCLEdBQUc7SUFDL0Isd0JBQXdCO0lBQ3hCLHNCQUFzQjtJQUN0QixtQkFBbUI7SUFDbkIsc0JBQXNCO0lBQ3RCLHdCQUF3QjtJQUN4Qiw4QkFBOEI7SUFDOUIsc0JBQXNCO0NBQ3ZCLENBQUM7QUFPRixNQUFNLE9BQU8scUJBQXFCOztrSEFBckIscUJBQXFCO21IQUFyQixxQkFBcUIsaUJBZGhDLHdCQUF3QjtRQUN4QixzQkFBc0I7UUFDdEIsbUJBQW1CO1FBQ25CLHNCQUFzQjtRQUN0Qix3QkFBd0I7UUFDeEIsOEJBQThCO1FBQzlCLHNCQUFzQixhQUlaLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksYUFWcEUsd0JBQXdCO1FBQ3hCLHNCQUFzQjtRQUN0QixtQkFBbUI7UUFDbkIsc0JBQXNCO1FBQ3RCLHdCQUF3QjtRQUN4Qiw4QkFBOEI7UUFDOUIsc0JBQXNCO21IQVFYLHFCQUFxQixZQUp0QixZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxZQUFZOzJGQUl6RCxxQkFBcUI7a0JBTGpDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsWUFBWSxDQUFDO29CQUNyRSxZQUFZLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztvQkFDeEMsT0FBTyxFQUFFLENBQUMsR0FBRyx3QkFBd0IsQ0FBQztpQkFDdkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDIyIFZpbGxlIGRlIE1vbnRyZWFsLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogU2VlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcHJvamVjdCByb290IGZvciBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24uXG4gKi9cbmltcG9ydCB7IE9ic2VydmVyc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vYnNlcnZlcnMnO1xuaW1wb3J0IHsgT3ZlcmxheU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IFBvcnRhbE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCYW9Ecm9wZG93bk1lbnVDb21wb25lbnQsXG4gIEJhb0Ryb3Bkb3duTWVudVRyaWdnZXIsXG4gIEJhb0Ryb3Bkb3duTWVudUl0ZW0sXG4gIEJhb0Ryb3Bkb3duTWVudVNlY3Rpb24sXG4gIEJhb0Ryb3Bkb3duTWVudUl0ZW1MYWJlbCxcbiAgQmFvRHJvcGRvd25NZW51SXRlbURlc2NyaXB0aW9uLFxuICBCYW9Ecm9wZG93bk1lbnVEaXZpZGVyXG59IGZyb20gJy4vZHJvcGRvd24tbWVudS5jb21wb25lbnQnO1xuXG5jb25zdCBEUk9QRE9XTl9NRU5VX0RJUkVDVElWRVMgPSBbXG4gIEJhb0Ryb3Bkb3duTWVudUNvbXBvbmVudCxcbiAgQmFvRHJvcGRvd25NZW51VHJpZ2dlcixcbiAgQmFvRHJvcGRvd25NZW51SXRlbSxcbiAgQmFvRHJvcGRvd25NZW51U2VjdGlvbixcbiAgQmFvRHJvcGRvd25NZW51SXRlbUxhYmVsLFxuICBCYW9Ecm9wZG93bk1lbnVJdGVtRGVzY3JpcHRpb24sXG4gIEJhb0Ryb3Bkb3duTWVudURpdmlkZXJcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE9ic2VydmVyc01vZHVsZSwgT3ZlcmxheU1vZHVsZSwgUG9ydGFsTW9kdWxlXSxcbiAgZGVjbGFyYXRpb25zOiBbRFJPUERPV05fTUVOVV9ESVJFQ1RJVkVTXSxcbiAgZXhwb3J0czogWy4uLkRST1BET1dOX01FTlVfRElSRUNUSVZFU11cbn0pXG5leHBvcnQgY2xhc3MgQmFvRHJvcGRvd25NZW51TW9kdWxlIHt9XG4iXX0=
@@ -24,9 +24,9 @@ export class BaoHeaderInfoComponent {
24
24
  this.brandBorder = false;
25
25
  }
26
26
  }
27
- BaoHeaderInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- BaoHeaderInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BaoHeaderInfoComponent, selector: "bao-header-info", inputs: { notch: "notch", imageUrl: "imageUrl", brandBorder: "brandBorder" }, host: { properties: { "class.document-heading-left-notch": "notch === \"left\"" }, classAttribute: "bao-document-heading" }, ngImport: i0, template: "<div *ngIf=\"imageUrl\" class=\"document-heading-image-container\">\n <div\n [ngStyle]=\"{\n 'background-image': 'url(\\'' + imageUrl + '\\')'}\"\n class=\"document-heading-background\"\n ></div>\n</div>\n\n<div class=\"bao-container document-heading-header-container\">\n <div class=\"bao-row document-heading-header\">\n <div class=\"bao-col-12 bao-col-lg-7\">\n <ng-content select=\"bao-header-info-title-group\"></ng-content>\n <div class=\"bao-header-content\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"brandBorder\" class=\"brand-border-bottom\"></div>\n </div>\n </div>\n <div *ngIf=\"notch\" class=\"document-heading-wrapper notch\">\n <div class=\"document-heading-content-wrapper\">\n <div class=\"document-heading-content\"></div>\n </div>\n </div>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 576px){.bao-container{max-width:576px}}@media (min-width: 768px){.bao-container{max-width:768px}}@media (min-width: 992px){.bao-container{max-width:992px}}@media (min-width: 1200px){.bao-container{max-width:1200px}}.bao-row{display:flex;flex-wrap:wrap;margin-right:-16px;margin-left:-16px}.bao-col-12,.bao-col-lg-7{position:relative;width:100%;padding-right:1rem;padding-left:1rem}@media (min-width: 992px){.bao-col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}}.bao-header-info-title-group,.bao-header-info-content,.document-heading-subtitle,.document-heading-surtitle{display:block}.document-heading-header-container{position:relative!important}.bao-document-heading{display:block;padding:2rem 0;position:relative;width:100%}.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2rem;line-height:2.5rem;margin-bottom:0}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1rem;line-height:1.5rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1rem;line-height:1.5rem;color:#000}.bao-document-heading .bao-header-info-title-group>*:not(:first-child){margin-top:1rem}.bao-document-heading .bao-header-content:not(:empty){margin-top:2rem}.bao-document-heading .brand-border-bottom{margin-top:2rem}.bao-document-heading .document-heading-background{background-color:#f8f9fa;background-position:center center;background-repeat:no-repeat;background-size:cover;height:100%;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.bao-document-heading .document-heading-content{background-color:#fff;height:2rem;padding-left:1rem;padding-right:1rem;position:relative;bottom:-2rem}@media (min-width: 768px){.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2.5rem;line-height:3.5rem}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1.25rem;line-height:1.75rem;color:#000}}@media (min-width: 992px){.bao-document-heading{padding-top:4rem;padding-bottom:4rem}.bao-document-heading .document-heading-content{bottom:-4rem;height:3.5rem;margin:auto}.bao-document-heading.document-heading-left-notch .document-heading-content{max-width:66.66667%;margin:0}.bao-document-heading.document-heading-left-notch .document-heading-content:before{content:\"\";background:#ffffff;width:1000px;height:100%;position:absolute;left:-1000px}.bao-document-heading.document-heading-left-notch .document-heading-content:after{content:\"\";background:#ffffff;width:1rem;height:100%;position:absolute}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoComponent, decorators: [{
27
+ BaoHeaderInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
+ BaoHeaderInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoHeaderInfoComponent, selector: "bao-header-info", inputs: { notch: "notch", imageUrl: "imageUrl", brandBorder: "brandBorder" }, host: { properties: { "class.document-heading-left-notch": "notch === \"left\"" }, classAttribute: "bao-document-heading" }, ngImport: i0, template: "<div *ngIf=\"imageUrl\" class=\"document-heading-image-container\">\n <div\n [ngStyle]=\"{\n 'background-image': 'url(\\'' + imageUrl + '\\')'}\"\n class=\"document-heading-background\"\n ></div>\n</div>\n\n<div class=\"bao-container document-heading-header-container\">\n <div class=\"bao-row document-heading-header\">\n <div class=\"bao-col-12 bao-col-lg-7\">\n <ng-content select=\"bao-header-info-title-group\"></ng-content>\n <div class=\"bao-header-content\">\n <ng-content></ng-content>\n </div>\n <div *ngIf=\"brandBorder\" class=\"brand-border-bottom\"></div>\n </div>\n </div>\n <div *ngIf=\"notch\" class=\"document-heading-wrapper notch\">\n <div class=\"document-heading-content-wrapper\">\n <div class=\"document-heading-content\"></div>\n </div>\n </div>\n</div>\n", styles: [".bao-container{padding-right:16px;padding-left:16px;margin-right:auto;margin-left:auto;width:100%}@media (min-width: 576px){.bao-container{max-width:576px}}@media (min-width: 768px){.bao-container{max-width:768px}}@media (min-width: 992px){.bao-container{max-width:992px}}@media (min-width: 1200px){.bao-container{max-width:1200px}}.bao-row{display:flex;flex-wrap:wrap;margin-right:-16px;margin-left:-16px}.bao-col-12,.bao-col-lg-7{position:relative;width:100%;padding-right:1rem;padding-left:1rem}@media (min-width: 992px){.bao-col-lg-7{flex:0 0 58.33333%;max-width:58.33333%}}.bao-header-info-title-group,.bao-header-info-content,.document-heading-subtitle,.document-heading-surtitle{display:block}.document-heading-header-container{position:relative!important}.bao-document-heading{display:block;padding:2rem 0;position:relative;width:100%}.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2rem;line-height:2.5rem;margin-bottom:0}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1rem;line-height:1.5rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1rem;line-height:1.5rem;color:#000}.bao-document-heading .bao-header-info-title-group>*:not(:first-child){margin-top:1rem}.bao-document-heading .bao-header-content:not(:empty){margin-top:2rem}.bao-document-heading .brand-border-bottom{margin-top:2rem}.bao-document-heading .document-heading-background{background-color:#f8f9fa;background-position:center center;background-repeat:no-repeat;background-size:cover;height:100%;overflow:hidden;position:absolute;top:0;width:100%;z-index:0}.bao-document-heading .document-heading-content{background-color:#fff;height:2rem;padding-left:1rem;padding-right:1rem;position:relative;bottom:-2rem}@media (min-width: 768px){.bao-document-heading .document-heading-title{font-weight:700;color:#212529;font-size:2.5rem;line-height:3.5rem}.bao-document-heading .document-heading-surtitle{font-weight:700;font-size:1.25rem;line-height:1.75rem;margin-bottom:1rem;color:#212529}.bao-document-heading .document-heading-subtitle{font-weight:400;font-size:1.25rem;line-height:1.75rem;color:#000}}@media (min-width: 992px){.bao-document-heading{padding-top:4rem;padding-bottom:4rem}.bao-document-heading .document-heading-content{bottom:-4rem;height:3.5rem;margin:auto}.bao-document-heading.document-heading-left-notch .document-heading-content{max-width:66.66667%;margin:0}.bao-document-heading.document-heading-left-notch .document-heading-content:before{content:\"\";background:#ffffff;width:1000px;height:100%;position:absolute;left:-1000px}.bao-document-heading.document-heading-left-notch .document-heading-content:after{content:\"\";background:#ffffff;width:1rem;height:100%;position:absolute}}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{ selector: 'bao-header-info', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
32
32
  class: 'bao-document-heading',
@@ -41,9 +41,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
41
41
  }] } });
42
42
  export class BaoHeaderInfoTitleGroupComponent {
43
43
  }
44
- BaoHeaderInfoTitleGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
45
- BaoHeaderInfoTitleGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BaoHeaderInfoTitleGroupComponent, selector: "bao-header-info-title-group", host: { classAttribute: "bao-header-info-title-group" }, ngImport: i0, template: "<ng-content></ng-content>\n<ng-content\n select=\"bao-header-surtitle, [bao-header-surtitle], [baoHeaderSurtitle], \n bao-header-title, [bao-header-title], [baoHeaderTitle],\n bao-header-subtitle, [bao-header-subtitle], [baoHeaderSubtitle]\"\n></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, decorators: [{
44
+ BaoHeaderInfoTitleGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
45
+ BaoHeaderInfoTitleGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.1", type: BaoHeaderInfoTitleGroupComponent, selector: "bao-header-info-title-group", host: { classAttribute: "bao-header-info-title-group" }, ngImport: i0, template: "<ng-content></ng-content>\n<ng-content\n select=\"bao-header-surtitle, [bao-header-surtitle], [baoHeaderSurtitle], \n bao-header-title, [bao-header-title], [baoHeaderTitle],\n bao-header-subtitle, [bao-header-subtitle], [baoHeaderSubtitle]\"\n></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoTitleGroupComponent, decorators: [{
47
47
  type: Component,
48
48
  args: [{ selector: 'bao-header-info-title-group', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
49
49
  class: 'bao-header-info-title-group'
@@ -51,9 +51,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
51
51
  }] });
52
52
  export class BaoHeaderInfoContent {
53
53
  }
54
- BaoHeaderInfoContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
55
- BaoHeaderInfoContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoHeaderInfoContent, selector: "bao-header-info-content", host: { classAttribute: "bao-header-info-content" }, ngImport: i0 });
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoContent, decorators: [{
54
+ BaoHeaderInfoContent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
55
+ BaoHeaderInfoContent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoHeaderInfoContent, selector: "bao-header-info-content", host: { classAttribute: "bao-header-info-content" }, ngImport: i0 });
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoContent, decorators: [{
57
57
  type: Directive,
58
58
  args: [{
59
59
  selector: 'bao-header-info-content',
@@ -64,9 +64,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
64
64
  }] });
65
65
  export class BaoHeaderInfoSurtitle {
66
66
  }
67
- BaoHeaderInfoSurtitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoSurtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
68
- BaoHeaderInfoSurtitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoHeaderInfoSurtitle, selector: "bao-header-info-surtitle, [bao-header-info-surtitle], [baoHeaderInfoSurtitle]", host: { classAttribute: "document-heading-surtitle" }, ngImport: i0 });
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoSurtitle, decorators: [{
67
+ BaoHeaderInfoSurtitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoSurtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
68
+ BaoHeaderInfoSurtitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoHeaderInfoSurtitle, selector: "bao-header-info-surtitle, [bao-header-info-surtitle], [baoHeaderInfoSurtitle]", host: { classAttribute: "document-heading-surtitle" }, ngImport: i0 });
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoSurtitle, decorators: [{
70
70
  type: Directive,
71
71
  args: [{
72
72
  selector: 'bao-header-info-surtitle, [bao-header-info-surtitle], [baoHeaderInfoSurtitle]',
@@ -77,9 +77,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
77
77
  }] });
78
78
  export class BaoHeaderInfoSubtitle {
79
79
  }
80
- BaoHeaderInfoSubtitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoSubtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
81
- BaoHeaderInfoSubtitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoHeaderInfoSubtitle, selector: "bao-header-info-subtitle, [bao-header-info-subtitle], [baoHeaderInfoSubtitle]", host: { classAttribute: "document-heading-subtitle" }, ngImport: i0 });
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoSubtitle, decorators: [{
80
+ BaoHeaderInfoSubtitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoSubtitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
81
+ BaoHeaderInfoSubtitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoHeaderInfoSubtitle, selector: "bao-header-info-subtitle, [bao-header-info-subtitle], [baoHeaderInfoSubtitle]", host: { classAttribute: "document-heading-subtitle" }, ngImport: i0 });
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoSubtitle, decorators: [{
83
83
  type: Directive,
84
84
  args: [{
85
85
  selector: 'bao-header-info-subtitle, [bao-header-info-subtitle], [baoHeaderInfoSubtitle]',
@@ -90,9 +90,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
90
90
  }] });
91
91
  export class BaoHeaderInfoTitle {
92
92
  }
93
- BaoHeaderInfoTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
94
- BaoHeaderInfoTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: BaoHeaderInfoTitle, selector: "bao-header-info-title, [bao-header-info-title], [baoHeaderInfoTitle]", host: { classAttribute: "document-heading-title" }, ngImport: i0 });
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BaoHeaderInfoTitle, decorators: [{
93
+ BaoHeaderInfoTitle.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
94
+ BaoHeaderInfoTitle.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.1", type: BaoHeaderInfoTitle, selector: "bao-header-info-title, [bao-header-info-title], [baoHeaderInfoTitle]", host: { classAttribute: "document-heading-title" }, ngImport: i0 });
95
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.1", ngImport: i0, type: BaoHeaderInfoTitle, decorators: [{
96
96
  type: Directive,
97
97
  args: [{
98
98
  selector: 'bao-header-info-title, [bao-header-info-title], [baoHeaderInfoTitle]',
@@ -101,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
101
101
  }
102
102
  }]
103
103
  }] });
104
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9oZWFkZXItaW5mby9oZWFkZXItaW5mby5odG1sIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLXRpdGxlLWdyb3VwLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7QUFFdkI7Ozs7Ozs7Ozs7R0FVRztBQVlILE1BQU0sT0FBTyxzQkFBc0I7SUFYbkM7UUFZa0IsVUFBSyxHQUEyQixFQUFFLENBQUM7UUFDbkMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0tBQ3JDOztvSEFKWSxzQkFBc0I7d0dBQXRCLHNCQUFzQixrUUNuQ25DLDIwQkF3QkE7NEZEV2Esc0JBQXNCO2tCQVhsQyxTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxzQkFBc0I7d0JBQzdCLHFDQUFxQyxFQUFFLGtCQUFrQjtxQkFDMUQ7OEJBR2UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7O0FBWVIsTUFBTSxPQUFPLGdDQUFnQzs7OEhBQWhDLGdDQUFnQztrSEFBaEMsZ0NBQWdDLDRIRWxEN0Msd1FBTUE7NEZGNENhLGdDQUFnQztrQkFUNUMsU0FBUzsrQkFDRSw2QkFBNkIsaUJBRXhCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLDZCQUE2QjtxQkFDckM7O0FBVUgsTUFBTSxPQUFPLG9CQUFvQjs7a0hBQXBCLG9CQUFvQjtzR0FBcEIsb0JBQW9COzRGQUFwQixvQkFBb0I7a0JBTmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx5QkFBeUI7cUJBQ2pDO2lCQUNGOztBQVVELE1BQU0sT0FBTyxxQkFBcUI7O21IQUFyQixxQkFBcUI7dUdBQXJCLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQVBqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiwrRUFBK0U7b0JBQ2pGLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsMkJBQTJCO3FCQUNuQztpQkFDRjs7QUFVRCxNQUFNLE9BQU8scUJBQXFCOzttSEFBckIscUJBQXFCO3VHQUFyQixxQkFBcUI7NEZBQXJCLHFCQUFxQjtrQkFQakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQ04sK0VBQStFO29CQUNqRixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLDJCQUEyQjtxQkFDbkM7aUJBQ0Y7O0FBVUQsTUFBTSxPQUFPLGtCQUFrQjs7Z0hBQWxCLGtCQUFrQjtvR0FBbEIsa0JBQWtCOzRGQUFsQixrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUNOLHNFQUFzRTtvQkFDeEUsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx3QkFBd0I7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBBIGJhc2ljIGNvbnRlbnQgY29udGFpbmVyIGNvbXBvbmVudCB0aGF0IGFkZHMgdGhlIHN0eWxlcyBvZiBhIEJBTyBoZWFkZXItaW5mb1xuICpcbiAqIFdoaWxlIHRoaXMgY29tcG9uZW50IGNhbiBiZSB1c2VkIGFsb25lLCBpdCBhbHNvIHByb3ZpZGVzIGEgbnVtYmVyXG4gKiBvZiBwcmVzZXQgc3R5bGVzIGZvciBjb21tb24gaGVhZGVyLWluZm8gc2VjdGlvbnMsIGluY2x1ZGluZzpcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwXG4gKiAtIGJhby1oZWFkZXItaW5mby1jb250ZW50XG4gKiAtIGJhby1oZWFkZXItaW5mby10aXRsZVxuICogLSBiYW8taGVhZGVyLWluZm8tc3VydGl0bGVcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXN1YnRpdGxlXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1oZWFkZXItaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnaGVhZGVyLWluZm8uaHRtbCcsXG4gIHN0eWxlVXJsczogWydoZWFkZXItaW5mby5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tZG9jdW1lbnQtaGVhZGluZycsXG4gICAgJ1tjbGFzcy5kb2N1bWVudC1oZWFkaW5nLWxlZnQtbm90Y2hdJzogJ25vdGNoID09PSBcImxlZnRcIidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIG5vdGNoOiAnJyB8ICdsZWZ0JyB8ICdjZW50ZXInID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbWFnZVVybCA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgYnJhbmRCb3JkZXIgPSBmYWxzZTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICdoZWFkZXItaW5mby10aXRsZS1ncm91cC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby10aXRsZS1ncm91cCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvVGl0bGVHcm91cENvbXBvbmVudCB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdiYW8taGVhZGVyLWluZm8tY29udGVudCcsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby1jb250ZW50J1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9Db250ZW50IHt9XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlLCBbYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlXSwgW2Jhb0hlYWRlckluZm9TdXJ0aXRsZV0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdkb2N1bWVudC1oZWFkaW5nLXN1cnRpdGxlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9TdXJ0aXRsZSB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZSwgW2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJJbmZvU3VidGl0bGVdJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZG9jdW1lbnQtaGVhZGluZy1zdWJ0aXRsZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvU3VidGl0bGUge31cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOlxuICAgICdiYW8taGVhZGVyLWluZm8tdGl0bGUsIFtiYW8taGVhZGVyLWluZm8tdGl0bGVdLCBbYmFvSGVhZGVySW5mb1RpdGxlXScsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2RvY3VtZW50LWhlYWRpbmctdGl0bGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvSGVhZGVySW5mb1RpdGxlIHt9XG4iLCI8ZGl2ICpuZ0lmPVwiaW1hZ2VVcmxcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctaW1hZ2UtY29udGFpbmVyXCI+XG4gIDxkaXZcbiAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAnYmFja2dyb3VuZC1pbWFnZSc6ICd1cmwoXFwnJyArIGltYWdlVXJsICsgJ1xcJyknfVwiXG4gICAgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWJhY2tncm91bmRcIlxuICA+PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImJhby1jb250YWluZXIgZG9jdW1lbnQtaGVhZGluZy1oZWFkZXItY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJiYW8tcm93IGRvY3VtZW50LWhlYWRpbmctaGVhZGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImJhby1jb2wtMTIgYmFvLWNvbC1sZy03XCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJiYW8taGVhZGVyLWluZm8tdGl0bGUtZ3JvdXBcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiYmFvLWhlYWRlci1jb250ZW50XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImJyYW5kQm9yZGVyXCIgY2xhc3M9XCJicmFuZC1ib3JkZXItYm90dG9tXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibm90Y2hcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctd3JhcHBlciBub3RjaFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWNvbnRlbnQtd3JhcHBlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctY29udGVudFwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPG5nLWNvbnRlbnRcbiAgc2VsZWN0PVwiYmFvLWhlYWRlci1zdXJ0aXRsZSwgW2Jhby1oZWFkZXItc3VydGl0bGVdLCBbYmFvSGVhZGVyU3VydGl0bGVdLCBcbiAgYmFvLWhlYWRlci10aXRsZSwgW2Jhby1oZWFkZXItdGl0bGVdLCBbYmFvSGVhZGVyVGl0bGVdLFxuICBiYW8taGVhZGVyLXN1YnRpdGxlLCBbYmFvLWhlYWRlci1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJTdWJ0aXRsZV1cIlxuPjwvbmctY29udGVudD5cbiJdfQ==
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLWluZm8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItdWkvc3JjL2xpYi9oZWFkZXItaW5mby9oZWFkZXItaW5mby5odG1sIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci11aS9zcmMvbGliL2hlYWRlci1pbmZvL2hlYWRlci1pbmZvLXRpdGxlLWdyb3VwLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFNBQVMsRUFDVCxLQUFLLEVBQ0wsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7QUFFdkI7Ozs7Ozs7Ozs7R0FVRztBQVlILE1BQU0sT0FBTyxzQkFBc0I7SUFYbkM7UUFZa0IsVUFBSyxHQUEyQixFQUFFLENBQUM7UUFDbkMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUNkLGdCQUFXLEdBQUcsS0FBSyxDQUFDO0tBQ3JDOzttSEFKWSxzQkFBc0I7dUdBQXRCLHNCQUFzQixrUUNuQ25DLDIwQkF3QkE7MkZEV2Esc0JBQXNCO2tCQVhsQyxTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNKLEtBQUssRUFBRSxzQkFBc0I7d0JBQzdCLHFDQUFxQyxFQUFFLGtCQUFrQjtxQkFDMUQ7OEJBR2UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7O0FBWVIsTUFBTSxPQUFPLGdDQUFnQzs7NkhBQWhDLGdDQUFnQztpSEFBaEMsZ0NBQWdDLDRIRWxEN0Msd1FBTUE7MkZGNENhLGdDQUFnQztrQkFUNUMsU0FBUzsrQkFDRSw2QkFBNkIsaUJBRXhCLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLDZCQUE2QjtxQkFDckM7O0FBVUgsTUFBTSxPQUFPLG9CQUFvQjs7aUhBQXBCLG9CQUFvQjtxR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBTmhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx5QkFBeUI7cUJBQ2pDO2lCQUNGOztBQVVELE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7c0dBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQVBqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFDTiwrRUFBK0U7b0JBQ2pGLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsMkJBQTJCO3FCQUNuQztpQkFDRjs7QUFVRCxNQUFNLE9BQU8scUJBQXFCOztrSEFBckIscUJBQXFCO3NHQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFQakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQ04sK0VBQStFO29CQUNqRixJQUFJLEVBQUU7d0JBQ0osS0FBSyxFQUFFLDJCQUEyQjtxQkFDbkM7aUJBQ0Y7O0FBVUQsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjttR0FBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBUDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUNOLHNFQUFzRTtvQkFDeEUsSUFBSSxFQUFFO3dCQUNKLEtBQUssRUFBRSx3QkFBd0I7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAyMiBWaWxsZSBkZSBNb250cmVhbC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIFNlZSBMSUNFTlNFIGZpbGUgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uLlxuICovXG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBBIGJhc2ljIGNvbnRlbnQgY29udGFpbmVyIGNvbXBvbmVudCB0aGF0IGFkZHMgdGhlIHN0eWxlcyBvZiBhIEJBTyBoZWFkZXItaW5mb1xuICpcbiAqIFdoaWxlIHRoaXMgY29tcG9uZW50IGNhbiBiZSB1c2VkIGFsb25lLCBpdCBhbHNvIHByb3ZpZGVzIGEgbnVtYmVyXG4gKiBvZiBwcmVzZXQgc3R5bGVzIGZvciBjb21tb24gaGVhZGVyLWluZm8gc2VjdGlvbnMsIGluY2x1ZGluZzpcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwXG4gKiAtIGJhby1oZWFkZXItaW5mby1jb250ZW50XG4gKiAtIGJhby1oZWFkZXItaW5mby10aXRsZVxuICogLSBiYW8taGVhZGVyLWluZm8tc3VydGl0bGVcbiAqIC0gYmFvLWhlYWRlci1pbmZvLXN1YnRpdGxlXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Jhby1oZWFkZXItaW5mbycsXG4gIHRlbXBsYXRlVXJsOiAnaGVhZGVyLWluZm8uaHRtbCcsXG4gIHN0eWxlVXJsczogWydoZWFkZXItaW5mby5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdiYW8tZG9jdW1lbnQtaGVhZGluZycsXG4gICAgJ1tjbGFzcy5kb2N1bWVudC1oZWFkaW5nLWxlZnQtbm90Y2hdJzogJ25vdGNoID09PSBcImxlZnRcIidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvQ29tcG9uZW50IHtcbiAgQElucHV0KCkgcHVibGljIG5vdGNoOiAnJyB8ICdsZWZ0JyB8ICdjZW50ZXInID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbWFnZVVybCA9ICcnO1xuICBASW5wdXQoKSBwdWJsaWMgYnJhbmRCb3JkZXIgPSBmYWxzZTtcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYmFvLWhlYWRlci1pbmZvLXRpdGxlLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICdoZWFkZXItaW5mby10aXRsZS1ncm91cC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby10aXRsZS1ncm91cCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvVGl0bGVHcm91cENvbXBvbmVudCB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdiYW8taGVhZGVyLWluZm8tY29udGVudCcsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2Jhby1oZWFkZXItaW5mby1jb250ZW50J1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9Db250ZW50IHt9XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjpcbiAgICAnYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlLCBbYmFvLWhlYWRlci1pbmZvLXN1cnRpdGxlXSwgW2Jhb0hlYWRlckluZm9TdXJ0aXRsZV0nLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdkb2N1bWVudC1oZWFkaW5nLXN1cnRpdGxlJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIEJhb0hlYWRlckluZm9TdXJ0aXRsZSB7fVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6XG4gICAgJ2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZSwgW2Jhby1oZWFkZXItaW5mby1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJJbmZvU3VidGl0bGVdJyxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZG9jdW1lbnQtaGVhZGluZy1zdWJ0aXRsZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCYW9IZWFkZXJJbmZvU3VidGl0bGUge31cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOlxuICAgICdiYW8taGVhZGVyLWluZm8tdGl0bGUsIFtiYW8taGVhZGVyLWluZm8tdGl0bGVdLCBbYmFvSGVhZGVySW5mb1RpdGxlXScsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2RvY3VtZW50LWhlYWRpbmctdGl0bGUnXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQmFvSGVhZGVySW5mb1RpdGxlIHt9XG4iLCI8ZGl2ICpuZ0lmPVwiaW1hZ2VVcmxcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctaW1hZ2UtY29udGFpbmVyXCI+XG4gIDxkaXZcbiAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAnYmFja2dyb3VuZC1pbWFnZSc6ICd1cmwoXFwnJyArIGltYWdlVXJsICsgJ1xcJyknfVwiXG4gICAgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWJhY2tncm91bmRcIlxuICA+PC9kaXY+XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImJhby1jb250YWluZXIgZG9jdW1lbnQtaGVhZGluZy1oZWFkZXItY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJiYW8tcm93IGRvY3VtZW50LWhlYWRpbmctaGVhZGVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImJhby1jb2wtMTIgYmFvLWNvbC1sZy03XCI+XG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJiYW8taGVhZGVyLWluZm8tdGl0bGUtZ3JvdXBcIj48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiYmFvLWhlYWRlci1jb250ZW50XCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiAqbmdJZj1cImJyYW5kQm9yZGVyXCIgY2xhc3M9XCJicmFuZC1ib3JkZXItYm90dG9tXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwibm90Y2hcIiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctd3JhcHBlciBub3RjaFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkb2N1bWVudC1oZWFkaW5nLWNvbnRlbnQtd3JhcHBlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cImRvY3VtZW50LWhlYWRpbmctY29udGVudFwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPG5nLWNvbnRlbnRcbiAgc2VsZWN0PVwiYmFvLWhlYWRlci1zdXJ0aXRsZSwgW2Jhby1oZWFkZXItc3VydGl0bGVdLCBbYmFvSGVhZGVyU3VydGl0bGVdLCBcbiAgYmFvLWhlYWRlci10aXRsZSwgW2Jhby1oZWFkZXItdGl0bGVdLCBbYmFvSGVhZGVyVGl0bGVdLFxuICBiYW8taGVhZGVyLXN1YnRpdGxlLCBbYmFvLWhlYWRlci1zdWJ0aXRsZV0sIFtiYW9IZWFkZXJTdWJ0aXRsZV1cIlxuPjwvbmctY29udGVudD5cbiJdfQ==