@colijnit/sharedcomponents 257.1.18 → 257.1.20

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 (28) hide show
  1. package/bundles/colijnit-sharedcomponents.umd.js +159 -99
  2. package/bundles/colijnit-sharedcomponents.umd.js.map +1 -1
  3. package/colijnit-sharedcomponents.d.ts +7 -7
  4. package/colijnit-sharedcomponents.metadata.json +1 -1
  5. package/esm2015/colijnit-sharedcomponents.js +8 -8
  6. package/esm2015/lib/components/custom-pdf/custom-pdf-dialog.component.js +20 -23
  7. package/esm2015/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.component.js +15 -3
  8. package/esm2015/lib/components/send-method-dialog/components/pdf-preview/pdf-preview.component.js +2 -2
  9. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.js +47 -25
  10. package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.js +4 -2
  11. package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.js +54 -44
  12. package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +129 -99
  13. package/esm2015/lib/enum/icon.enum.js +2 -1
  14. package/esm2015/lib/model/icon-svg.js +2 -1
  15. package/esm2015/lib/res/dictionary/dictionaries.js +2 -2
  16. package/fesm2015/colijnit-sharedcomponents.js +330 -256
  17. package/fesm2015/colijnit-sharedcomponents.js.map +1 -1
  18. package/lib/components/custom-pdf/custom-pdf-dialog.component.d.ts +7 -4
  19. package/lib/components/send-method-dialog/components/additional-file-button/additional-file-button.component.d.ts +4 -0
  20. package/lib/components/send-method-dialog/components/additional-file-button/style/_layout.scss +2 -2
  21. package/lib/components/send-method-dialog/components/additional-file-button/style/_material-definition.scss +2 -2
  22. package/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.d.ts +9 -0
  23. package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.d.ts +4 -0
  24. package/lib/components/send-method-dialog/components/send-method-printer/style/_layout.scss +6 -0
  25. package/lib/components/send-method-dialog/components/signature-button/style/_layout.scss +6 -4
  26. package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +7 -0
  27. package/lib/enum/icon.enum.d.ts +1 -0
  28. package/package.json +1 -1
@@ -6,6 +6,7 @@ import { LayoutSelectionModule } from '../layout-selection/layout-selection.modu
6
6
  import { SignatureButtonModule } from "../signature-button/signature-button.module";
7
7
  import { PdfPreviewModule } from '../pdf-preview/pdf-preview.module';
8
8
  import { SharedComponentsTranslationModule } from "../../../../translation/shared-components-translation.module";
9
+ import { AdditionalFileButtonModule } from "../additional-file-button/additional-file-button.module";
9
10
  export class SendMethodEmailModule {
10
11
  }
11
12
  SendMethodEmailModule.decorators = [
@@ -17,7 +18,8 @@ SendMethodEmailModule.decorators = [
17
18
  IconModule,
18
19
  SignatureButtonModule,
19
20
  PdfPreviewModule,
20
- SharedComponentsTranslationModule
21
+ SharedComponentsTranslationModule,
22
+ AdditionalFileButtonModule
21
23
  ],
22
24
  declarations: [
23
25
  SendMethodEmailComponent
@@ -27,4 +29,4 @@ SendMethodEmailModule.decorators = [
27
29
  ]
28
30
  },] }
29
31
  ];
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtZW1haWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtZGlhbG9nL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtZW1haWwvc2VuZC1tZXRob2QtZW1haWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxVQUFVLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNsRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNsRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQW1CL0csTUFBTSxPQUFPLHFCQUFxQjs7O1lBakJqQyxRQUFRLFNBQUM7Z0JBQ04sT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osbUJBQW1CO29CQUNuQixxQkFBcUI7b0JBQ3JCLFVBQVU7b0JBQ1YscUJBQXFCO29CQUNyQixnQkFBZ0I7b0JBQ2hCLGlDQUFpQztpQkFDcEM7Z0JBQ0gsWUFBWSxFQUFFO29CQUNaLHdCQUF3QjtpQkFDekI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLHdCQUF3QjtpQkFDekI7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TmdNb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtTZW5kTWV0aG9kRW1haWxDb21wb25lbnR9IGZyb20gJy4vc2VuZC1tZXRob2QtZW1haWwuY29tcG9uZW50JztcclxuaW1wb3J0IHtJY29uTW9kdWxlLCBJbnB1dENoZWNrYm94TW9kdWxlfSBmcm9tICdAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyJztcclxuaW1wb3J0IHtMYXlvdXRTZWxlY3Rpb25Nb2R1bGV9IGZyb20gJy4uL2xheW91dC1zZWxlY3Rpb24vbGF5b3V0LXNlbGVjdGlvbi5tb2R1bGUnO1xyXG5pbXBvcnQge1NpZ25hdHVyZUJ1dHRvbk1vZHVsZX0gZnJvbSBcIi4uL3NpZ25hdHVyZS1idXR0b24vc2lnbmF0dXJlLWJ1dHRvbi5tb2R1bGVcIjtcclxuaW1wb3J0IHtQZGZQcmV2aWV3TW9kdWxlfSBmcm9tICcuLi9wZGYtcHJldmlldy9wZGYtcHJldmlldy5tb2R1bGUnO1xyXG5pbXBvcnQge1NoYXJlZENvbXBvbmVudHNUcmFuc2xhdGlvbk1vZHVsZX0gZnJvbSBcIi4uLy4uLy4uLy4uL3RyYW5zbGF0aW9uL3NoYXJlZC1jb21wb25lbnRzLXRyYW5zbGF0aW9uLm1vZHVsZVwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtcclxuICAgICAgICBDb21tb25Nb2R1bGUsXHJcbiAgICAgICAgSW5wdXRDaGVja2JveE1vZHVsZSxcclxuICAgICAgICBMYXlvdXRTZWxlY3Rpb25Nb2R1bGUsXHJcbiAgICAgICAgSWNvbk1vZHVsZSxcclxuICAgICAgICBTaWduYXR1cmVCdXR0b25Nb2R1bGUsXHJcbiAgICAgICAgUGRmUHJldmlld01vZHVsZSxcclxuICAgICAgICBTaGFyZWRDb21wb25lbnRzVHJhbnNsYXRpb25Nb2R1bGVcclxuICAgIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBTZW5kTWV0aG9kRW1haWxDb21wb25lbnRcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFNlbmRNZXRob2RFbWFpbENvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbmRNZXRob2RFbWFpbE1vZHVsZSB7XHJcbn1cclxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtZW1haWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtZGlhbG9nL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtZW1haWwvc2VuZC1tZXRob2QtZW1haWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxVQUFVLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNsRixPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNsRixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSw4REFBOEQsQ0FBQztBQUMvRyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQW9CbkcsTUFBTSxPQUFPLHFCQUFxQjs7O1lBbEJqQyxRQUFRLFNBQUM7Z0JBQ04sT0FBTyxFQUFFO29CQUNMLFlBQVk7b0JBQ1osbUJBQW1CO29CQUNuQixxQkFBcUI7b0JBQ3JCLFVBQVU7b0JBQ1YscUJBQXFCO29CQUNyQixnQkFBZ0I7b0JBQ2hCLGlDQUFpQztvQkFDakMsMEJBQTBCO2lCQUM3QjtnQkFDSCxZQUFZLEVBQUU7b0JBQ1osd0JBQXdCO2lCQUN6QjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1Asd0JBQXdCO2lCQUN6QjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQge1NlbmRNZXRob2RFbWFpbENvbXBvbmVudH0gZnJvbSAnLi9zZW5kLW1ldGhvZC1lbWFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQge0ljb25Nb2R1bGUsIElucHV0Q2hlY2tib3hNb2R1bGV9IGZyb20gJ0Bjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTInO1xyXG5pbXBvcnQge0xheW91dFNlbGVjdGlvbk1vZHVsZX0gZnJvbSAnLi4vbGF5b3V0LXNlbGVjdGlvbi9sYXlvdXQtc2VsZWN0aW9uLm1vZHVsZSc7XHJcbmltcG9ydCB7U2lnbmF0dXJlQnV0dG9uTW9kdWxlfSBmcm9tIFwiLi4vc2lnbmF0dXJlLWJ1dHRvbi9zaWduYXR1cmUtYnV0dG9uLm1vZHVsZVwiO1xyXG5pbXBvcnQge1BkZlByZXZpZXdNb2R1bGV9IGZyb20gJy4uL3BkZi1wcmV2aWV3L3BkZi1wcmV2aWV3Lm1vZHVsZSc7XHJcbmltcG9ydCB7U2hhcmVkQ29tcG9uZW50c1RyYW5zbGF0aW9uTW9kdWxlfSBmcm9tIFwiLi4vLi4vLi4vLi4vdHJhbnNsYXRpb24vc2hhcmVkLWNvbXBvbmVudHMtdHJhbnNsYXRpb24ubW9kdWxlXCI7XHJcbmltcG9ydCB7QWRkaXRpb25hbEZpbGVCdXR0b25Nb2R1bGV9IGZyb20gXCIuLi9hZGRpdGlvbmFsLWZpbGUtYnV0dG9uL2FkZGl0aW9uYWwtZmlsZS1idXR0b24ubW9kdWxlXCI7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW1xyXG4gICAgICAgIENvbW1vbk1vZHVsZSxcclxuICAgICAgICBJbnB1dENoZWNrYm94TW9kdWxlLFxyXG4gICAgICAgIExheW91dFNlbGVjdGlvbk1vZHVsZSxcclxuICAgICAgICBJY29uTW9kdWxlLFxyXG4gICAgICAgIFNpZ25hdHVyZUJ1dHRvbk1vZHVsZSxcclxuICAgICAgICBQZGZQcmV2aWV3TW9kdWxlLFxyXG4gICAgICAgIFNoYXJlZENvbXBvbmVudHNUcmFuc2xhdGlvbk1vZHVsZSxcclxuICAgICAgICBBZGRpdGlvbmFsRmlsZUJ1dHRvbk1vZHVsZVxyXG4gICAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNlbmRNZXRob2RFbWFpbENvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgU2VuZE1ldGhvZEVtYWlsQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VuZE1ldGhvZEVtYWlsTW9kdWxlIHtcclxufVxyXG4iXX0=
@@ -1,4 +1,4 @@
1
- import { Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation } from '@angular/core';
1
+ import { Component, EventEmitter, HostBinding, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
2
  import { SendMethodService } from '../../service/send-method.service';
3
3
  import { Icon } from '../../../../enum/icon.enum';
4
4
  import { IconCacheService } from '../../../../service/icon-cache.service';
@@ -30,54 +30,63 @@ export class SendMethodPrinterComponent {
30
30
  this.sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForAllUsers = checked;
31
31
  this.sendMethodService.reportingDocumentPrintSignDocBaseRequestChanged.next(this.sendMethodService.reportingDocumentPrintSignDocBaseRequest);
32
32
  }
33
+ openAdditionalFileDialog() {
34
+ var _a;
35
+ (_a = this.additionalFileButtonRef) === null || _a === void 0 ? void 0 : _a.openForSave();
36
+ }
37
+ isAdditionalFileActive() {
38
+ var _a, _b;
39
+ return (_b = (_a = this.additionalFileButtonRef) === null || _a === void 0 ? void 0 : _a.isActive) !== null && _b !== void 0 ? _b : false;
40
+ }
33
41
  }
34
42
  SendMethodPrinterComponent.decorators = [
35
43
  { type: Component, args: [{
36
44
  selector: 'co-send-method-printer',
37
45
  template: `
38
- <span class="send-methods-label" [textContent]="'SETTINGS' | sharedLocalize"></span>
39
- <div class="printer-layout-selections-wrapper">
40
- <div class="printer-signature-wrapper">
41
- <co-printer-selection [defaultPrinter]="defaultPrinter" [printers]="printerList"></co-printer-selection>
42
- <co-signature-button [request]="sendMethodService.reportingDocumentPrintSignDocBaseRequest"></co-signature-button>
43
- </div>
44
- <div class="layout-buttons-wrapper" *ngIf="isPrinterLayoutsEnabled">
45
- <co-layout-selection
46
- [(request)]="sendMethodService.reportingDocumentPrintSignDocBaseRequest"
47
- (requestChange)="showFilePreview.emit(sendMethodService.reportingDocumentPrintSignDocBaseRequest.reportId)"
48
- (loadDefaultPrinterName)="loadDefaultPrinterName.emit($event)"
49
- [layouts]="layouts"
50
- [label]="'PRINTER_LAYOUT'"
51
- [useDefault]="false">
52
- </co-layout-selection>
53
- <div class="additional-checks">
54
- <co-input-checkbox
55
- [model]="sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForUser"
56
- [label]="'Koppeling onthouden'"
57
- (modelChange)="handleDefaultPrinterUserChange($event)">
58
- </co-input-checkbox>
59
- <co-input-checkbox
60
- [model]="sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForAllUsers"
61
- [label]="'Alle gebruikers'"
62
- (modelChange)="handleDefaultPrinterAllUsersChange($event)">
63
- </co-input-checkbox>
64
- </div>
65
- <div class="additional-buttons">
66
- <co-pdf-preview
67
- *ngIf="transactionType === 'salesOrderOverview'"
68
- [pdfDoc]="pdfDoc"
69
- [disablePdfPreview]="disablePdfPreview"
70
- (showFilePreview)="showFilePreview.emit(sendMethodService.reportingDocumentPrintSignDocBaseRequest.reportId)">
71
- </co-pdf-preview>
72
- <co-additional-file-button
73
- *ngIf="isAdditionalDocEnabled"
74
- [additionalFileContents]="additionalFileContents"
75
- [additionalFileName]="additionalFileName"
76
- (additionalFileChangeEvent)="additionalFileChangeEvent.emit($event)">
77
- </co-additional-file-button>
78
- </div>
79
- </div>
46
+ <span class="send-methods-label" [textContent]="'SETTINGS' | sharedLocalize"></span>
47
+ <div class="printer-layout-selections-wrapper">
48
+ <div class="printer-signature-wrapper">
49
+ <co-layout-selection
50
+ [(request)]="sendMethodService.reportingDocumentPrintSignDocBaseRequest"
51
+ (requestChange)="showFilePreview.emit(sendMethodService.reportingDocumentPrintSignDocBaseRequest.reportId)"
52
+ (loadDefaultPrinterName)="loadDefaultPrinterName.emit($event)"
53
+ [layouts]="layouts"
54
+ [label]="'PRINTER_LAYOUT'"
55
+ [useDefault]="false">
56
+ </co-layout-selection>
57
+ <co-additional-file-button
58
+ #additionalFileButton
59
+ *ngIf="isAdditionalDocEnabled"
60
+ [additionalFileContents]="additionalFileContents"
61
+ [additionalFileName]="additionalFileName"
62
+ (additionalFileChangeEvent)="additionalFileChangeEvent.emit($event)">
63
+ </co-additional-file-button>
64
+ <co-signature-button [request]="sendMethodService.reportingDocumentPrintSignDocBaseRequest"></co-signature-button>
65
+ </div>
66
+ <div class="layout-buttons-wrapper" *ngIf="isPrinterLayoutsEnabled">
67
+ <co-printer-selection [defaultPrinter]="defaultPrinter" [printers]="printerList"></co-printer-selection>
68
+ <div class="additional-checks">
69
+ <co-input-checkbox
70
+ [model]="sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForUser"
71
+ [label]="'Koppeling onthouden'"
72
+ (modelChange)="handleDefaultPrinterUserChange($event)">
73
+ </co-input-checkbox>
74
+ <co-input-checkbox
75
+ [model]="sendMethodService.reportingDocumentPrintSignDocBaseRequest.saveDefaultPrinterForAllUsers"
76
+ [label]="'Alle gebruikers'"
77
+ (modelChange)="handleDefaultPrinterAllUsersChange($event)">
78
+ </co-input-checkbox>
79
+ </div>
80
+ <div class="additional-buttons">
81
+ <co-pdf-preview
82
+ *ngIf="transactionType === 'salesOrderOverview'"
83
+ [pdfDoc]="pdfDoc"
84
+ [disablePdfPreview]="disablePdfPreview"
85
+ (showFilePreview)="showFilePreview.emit(sendMethodService.reportingDocumentPrintSignDocBaseRequest.reportId)">
86
+ </co-pdf-preview>
87
+ </div>
80
88
  </div>
89
+ </div>
81
90
  `,
82
91
  encapsulation: ViewEncapsulation.None
83
92
  },] }
@@ -88,6 +97,7 @@ SendMethodPrinterComponent.ctorParameters = () => [
88
97
  ];
89
98
  SendMethodPrinterComponent.propDecorators = {
90
99
  showClass: [{ type: HostBinding, args: ['class.co-send-method-printer',] }],
100
+ additionalFileButtonRef: [{ type: ViewChild, args: ['additionalFileButton',] }],
91
101
  printerList: [{ type: Input }],
92
102
  defaultPrinter: [{ type: Input }],
93
103
  layouts: [{ type: Input }],
@@ -102,4 +112,4 @@ SendMethodPrinterComponent.propDecorators = {
102
112
  showFilePreview: [{ type: Output }],
103
113
  loadDefaultPrinterName: [{ type: Output }]
104
114
  };
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtcHJpbnRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zZW5kLW1ldGhvZC1kaWFsb2cvY29tcG9uZW50cy9zZW5kLW1ldGhvZC1wcmludGVyL3NlbmQtbWV0aG9kLXByaW50ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBR3BFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQztBQW9EeEUsTUFBTSxPQUFPLDBCQUEwQjtJQStDckMsWUFDUyxpQkFBb0MsRUFDcEMsZ0JBQWtDO1FBRGxDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTFDcEMsZ0JBQVcsR0FBYyxFQUFFLENBQUM7UUFNNUIsWUFBTyxHQUFpQyxFQUFFLENBQUM7UUFHM0MsNEJBQXVCLEdBQVksSUFBSSxDQUFDO1FBR3hDLDJCQUFzQixHQUFZLEtBQUssQ0FBQztRQUd4QyxXQUFNLEdBQVEsRUFBRSxDQUFDO1FBR2pCLHNCQUFpQixHQUFZLEtBQUssQ0FBQztRQU1uQywyQkFBc0IsR0FBUSxFQUFFLENBQUM7UUFHakMsdUJBQWtCLEdBQVcsRUFBRSxDQUFDO1FBR2hDLDhCQUF5QixHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO1FBR3JGLG9CQUFlLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFHbkUsMkJBQXNCLEdBQXlCLElBQUksWUFBWSxFQUFVLENBQUM7UUFFOUQsVUFBSyxHQUFHLElBQUksQ0FBQztJQU1oQyxDQUFDO0lBakRNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFpRE0sOEJBQThCLENBQUMsT0FBZ0I7UUFDcEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdDQUF3QyxDQUFDLHlCQUF5QixHQUFHLE9BQU8sQ0FBQztRQUNwRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsK0NBQStDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO0lBQy9JLENBQUM7SUFFTSxrQ0FBa0MsQ0FBQyxPQUFnQjtRQUN4RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0NBQXdDLENBQUMsNkJBQTZCLEdBQUcsT0FBTyxDQUFDO1FBQ3hHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQywrQ0FBK0MsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFDL0ksQ0FBQzs7O1lBOUdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsd0JBQXdCO2dCQUNsQyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNENUO2dCQUNELGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2FBQ3RDOzs7WUF2RE8saUJBQWlCO1lBSWpCLGdCQUFnQjs7O3dCQXFEckIsV0FBVyxTQUFDLDhCQUE4QjswQkFLMUMsS0FBSzs2QkFHTCxLQUFLO3NCQUdMLEtBQUs7c0NBR0wsS0FBSztxQ0FHTCxLQUFLO3FCQUdMLEtBQUs7Z0NBR0wsS0FBSzs4QkFHTCxLQUFLO3FDQUdMLEtBQUs7aUNBR0wsS0FBSzt3Q0FHTCxNQUFNOzhCQUdOLE1BQU07cUNBR04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0LCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7U2VuZE1ldGhvZFNlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2Uvc2VuZC1tZXRob2Quc2VydmljZSc7XHJcbmltcG9ydCB7UmVwb3J0TGF5b3V0U2VsZWN0aW9uUHJpbnR9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL3JlcG9ydC1sYXlvdXQtc2VsZWN0aW9uLXByaW50LmJvJztcclxuaW1wb3J0IHtQcmludGVyfSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9wcmludGVyLmJvJztcclxuaW1wb3J0IHtJY29ufSBmcm9tICcuLi8uLi8uLi8uLi9lbnVtL2ljb24uZW51bSc7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2UnO1xyXG5pbXBvcnQge0NvRG9jdW1lbnR9IGZyb20gJ0Bjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY28tc2VuZC1tZXRob2QtcHJpbnRlcicsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPHNwYW4gY2xhc3M9XCJzZW5kLW1ldGhvZHMtbGFiZWxcIiBbdGV4dENvbnRlbnRdPVwiJ1NFVFRJTkdTJyB8IHNoYXJlZExvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwicHJpbnRlci1sYXlvdXQtc2VsZWN0aW9ucy13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicHJpbnRlci1zaWduYXR1cmUtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgIDxjby1wcmludGVyLXNlbGVjdGlvbiBbZGVmYXVsdFByaW50ZXJdPVwiZGVmYXVsdFByaW50ZXJcIiBbcHJpbnRlcnNdPVwicHJpbnRlckxpc3RcIj48L2NvLXByaW50ZXItc2VsZWN0aW9uPlxyXG4gICAgICAgICAgICAgIDxjby1zaWduYXR1cmUtYnV0dG9uIFtyZXF1ZXN0XT1cInNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RcIj48L2NvLXNpZ25hdHVyZS1idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYXlvdXQtYnV0dG9ucy13cmFwcGVyXCIgKm5nSWY9XCJpc1ByaW50ZXJMYXlvdXRzRW5hYmxlZFwiPlxyXG4gICAgICAgICAgICAgIDxjby1sYXlvdXQtc2VsZWN0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICBbKHJlcXVlc3QpXT1cInNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKHJlcXVlc3RDaGFuZ2UpPVwic2hvd0ZpbGVQcmV2aWV3LmVtaXQoc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5yZXBvcnRJZClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKGxvYWREZWZhdWx0UHJpbnRlck5hbWUpPVwibG9hZERlZmF1bHRQcmludGVyTmFtZS5lbWl0KCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2xheW91dHNdPVwibGF5b3V0c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ1BSSU5URVJfTEFZT1VUJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbdXNlRGVmYXVsdF09XCJmYWxzZVwiPlxyXG4gICAgICAgICAgICAgIDwvY28tbGF5b3V0LXNlbGVjdGlvbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRkaXRpb25hbC1jaGVja3NcIj5cclxuICAgICAgICAgICAgICAgICAgPGNvLWlucHV0LWNoZWNrYm94XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW21vZGVsXT1cInNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Quc2F2ZURlZmF1bHRQcmludGVyRm9yVXNlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cIidLb3BwZWxpbmcgb250aG91ZGVuJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImhhbmRsZURlZmF1bHRQcmludGVyVXNlckNoYW5nZSgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFttb2RlbF09XCJzZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0LnNhdmVEZWZhdWx0UHJpbnRlckZvckFsbFVzZXJzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ0FsbGUgZ2VicnVpa2VycydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVEZWZhdWx0UHJpbnRlckFsbFVzZXJzQ2hhbmdlKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgPC9jby1pbnB1dC1jaGVja2JveD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWRkaXRpb25hbC1idXR0b25zXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxjby1wZGYtcHJldmlld1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwidHJhbnNhY3Rpb25UeXBlID09PSAnc2FsZXNPcmRlck92ZXJ2aWV3J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW3BkZkRvY109XCJwZGZEb2NcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlUGRmUHJldmlld109XCJkaXNhYmxlUGRmUHJldmlld1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgKHNob3dGaWxlUHJldmlldyk9XCJzaG93RmlsZVByZXZpZXcuZW1pdChzZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0LnJlcG9ydElkKVwiPlxyXG4gICAgICAgICAgICAgICAgICA8L2NvLXBkZi1wcmV2aWV3PlxyXG4gICAgICAgICAgICAgICAgICA8Y28tYWRkaXRpb25hbC1maWxlLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXNBZGRpdGlvbmFsRG9jRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2FkZGl0aW9uYWxGaWxlQ29udGVudHNdPVwiYWRkaXRpb25hbEZpbGVDb250ZW50c1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2FkZGl0aW9uYWxGaWxlTmFtZV09XCJhZGRpdGlvbmFsRmlsZU5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIChhZGRpdGlvbmFsRmlsZUNoYW5nZUV2ZW50KT1cImFkZGl0aW9uYWxGaWxlQ2hhbmdlRXZlbnQuZW1pdCgkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDwvY28tYWRkaXRpb25hbC1maWxlLWJ1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbmRNZXRob2RQcmludGVyQ29tcG9uZW50IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLXNlbmQtbWV0aG9kLXByaW50ZXInKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHByaW50ZXJMaXN0OiBQcmludGVyW10gPSBbXTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZGVmYXVsdFByaW50ZXI6IFByaW50ZXI7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGxheW91dHM6IFJlcG9ydExheW91dFNlbGVjdGlvblByaW50W10gPSBbXTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaXNQcmludGVyTGF5b3V0c0VuYWJsZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBpc0FkZGl0aW9uYWxEb2NFbmFibGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHBkZkRvYzogYW55ID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRpc2FibGVQZGZQcmV2aWV3OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHRyYW5zYWN0aW9uVHlwZTogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBhZGRpdGlvbmFsRmlsZUNvbnRlbnRzOiBhbnkgPSAnJztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWRkaXRpb25hbEZpbGVOYW1lOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGFkZGl0aW9uYWxGaWxlQ2hhbmdlRXZlbnQ6IEV2ZW50RW1pdHRlcjxDb0RvY3VtZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8Q29Eb2N1bWVudD4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIHNob3dGaWxlUHJldmlldzogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGxvYWREZWZhdWx0UHJpbnRlck5hbWU6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcblxyXG4gIHByb3RlY3RlZCByZWFkb25seSBpY29ucyA9IEljb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHNlbmRNZXRob2RTZXJ2aWNlOiBTZW5kTWV0aG9kU2VydmljZSxcclxuICAgIHB1YmxpYyBpY29uQ2FjaGVTZXJ2aWNlOiBJY29uQ2FjaGVTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlRGVmYXVsdFByaW50ZXJVc2VyQ2hhbmdlKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5zYXZlRGVmYXVsdFByaW50ZXJGb3JVc2VyID0gY2hlY2tlZDtcclxuICAgIHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdENoYW5nZWQubmV4dCh0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURlZmF1bHRQcmludGVyQWxsVXNlcnNDaGFuZ2UoY2hlY2tlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0LnNhdmVEZWZhdWx0UHJpbnRlckZvckFsbFVzZXJzID0gY2hlY2tlZDtcclxuICAgIHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdENoYW5nZWQubmV4dCh0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3QpO1xyXG4gIH1cclxufVxyXG4iXX0=
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VuZC1tZXRob2QtcHJpbnRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zZW5kLW1ldGhvZC1kaWFsb2cvY29tcG9uZW50cy9zZW5kLW1ldGhvZC1wcmludGVyL3NlbmQtbWV0aG9kLXByaW50ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNoSCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUdwRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sNEJBQTRCLENBQUM7QUFDaEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFzRHhFLE1BQU0sT0FBTywwQkFBMEI7SUFrRHJDLFlBQ1MsaUJBQW9DLEVBQ3BDLGdCQUFrQztRQURsQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUExQ3BDLGdCQUFXLEdBQWMsRUFBRSxDQUFDO1FBTTVCLFlBQU8sR0FBaUMsRUFBRSxDQUFDO1FBRzNDLDRCQUF1QixHQUFZLElBQUksQ0FBQztRQUd4QywyQkFBc0IsR0FBWSxLQUFLLENBQUM7UUFHeEMsV0FBTSxHQUFRLEVBQUUsQ0FBQztRQUdqQixzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFNbkMsMkJBQXNCLEdBQVEsRUFBRSxDQUFDO1FBR2pDLHVCQUFrQixHQUFXLEVBQUUsQ0FBQztRQUdoQyw4QkFBeUIsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUdyRixvQkFBZSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBR25FLDJCQUFzQixHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBRTlELFVBQUssR0FBRyxJQUFJLENBQUM7SUFNaEMsQ0FBQztJQXBETSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBb0RNLDhCQUE4QixDQUFDLE9BQWdCO1FBQ3BELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3Q0FBd0MsQ0FBQyx5QkFBeUIsR0FBRyxPQUFPLENBQUM7UUFDcEcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLCtDQUErQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsd0NBQXdDLENBQUMsQ0FBQztJQUMvSSxDQUFDO0lBRU0sa0NBQWtDLENBQUMsT0FBZ0I7UUFDeEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLHdDQUF3QyxDQUFDLDZCQUE2QixHQUFHLE9BQU8sQ0FBQztRQUN4RyxJQUFJLENBQUMsaUJBQWlCLENBQUMsK0NBQStDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDO0lBQy9JLENBQUM7SUFFTSx3QkFBd0I7O1FBQzdCLE1BQUEsSUFBSSxDQUFDLHVCQUF1QiwwQ0FBRSxXQUFXLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRU0sc0JBQXNCOztRQUMzQixPQUFPLE1BQUEsTUFBQSxJQUFJLENBQUMsdUJBQXVCLDBDQUFFLFFBQVEsbUNBQUksS0FBSyxDQUFDO0lBQ3pELENBQUM7OztZQTFIRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHdCQUF3QjtnQkFDbEMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E2Q1Q7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQXpETyxpQkFBaUI7WUFJakIsZ0JBQWdCOzs7d0JBdURyQixXQUFXLFNBQUMsOEJBQThCO3NDQUsxQyxTQUFTLFNBQUMsc0JBQXNCOzBCQUdoQyxLQUFLOzZCQUdMLEtBQUs7c0JBR0wsS0FBSztzQ0FHTCxLQUFLO3FDQUdMLEtBQUs7cUJBR0wsS0FBSztnQ0FHTCxLQUFLOzhCQUdMLEtBQUs7cUNBR0wsS0FBSztpQ0FHTCxLQUFLO3dDQUdMLE1BQU07OEJBR04sTUFBTTtxQ0FHTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1NlbmRNZXRob2RTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL3NlbmQtbWV0aG9kLnNlcnZpY2UnO1xyXG5pbXBvcnQge1JlcG9ydExheW91dFNlbGVjdGlvblByaW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9yZXBvcnQtbGF5b3V0LXNlbGVjdGlvbi1wcmludC5ibyc7XHJcbmltcG9ydCB7UHJpbnRlcn0gZnJvbSAnQGNvbGlqbml0L21haW5hcGkvYnVpbGQvbW9kZWwvcHJpbnRlci5ibyc7XHJcbmltcG9ydCB7SWNvbn0gZnJvbSAnLi4vLi4vLi4vLi4vZW51bS9pY29uLmVudW0nO1xyXG5pbXBvcnQge0ljb25DYWNoZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtDb0RvY3VtZW50fSBmcm9tICdAY29saWpuaXQvbWFpbmFwaS9idWlsZC9tb2RlbC9jby1kb2N1bWVudCc7XHJcbmltcG9ydCB7QWRkaXRpb25hbEZpbGVCdXR0b25Db21wb25lbnR9IGZyb20gXCIuLi9hZGRpdGlvbmFsLWZpbGUtYnV0dG9uL2FkZGl0aW9uYWwtZmlsZS1idXR0b24uY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvLXNlbmQtbWV0aG9kLXByaW50ZXInLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8c3BhbiBjbGFzcz1cInNlbmQtbWV0aG9kcy1sYWJlbFwiIFt0ZXh0Q29udGVudF09XCInU0VUVElOR1MnIHwgc2hhcmVkTG9jYWxpemVcIj48L3NwYW4+XHJcbiAgICA8ZGl2IGNsYXNzPVwicHJpbnRlci1sYXlvdXQtc2VsZWN0aW9ucy13cmFwcGVyXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJwcmludGVyLXNpZ25hdHVyZS13cmFwcGVyXCI+XHJcbiAgICAgICAgPGNvLWxheW91dC1zZWxlY3Rpb25cclxuICAgICAgICAgIFsocmVxdWVzdCldPVwic2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdFwiXHJcbiAgICAgICAgICAocmVxdWVzdENoYW5nZSk9XCJzaG93RmlsZVByZXZpZXcuZW1pdChzZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0LnJlcG9ydElkKVwiXHJcbiAgICAgICAgICAobG9hZERlZmF1bHRQcmludGVyTmFtZSk9XCJsb2FkRGVmYXVsdFByaW50ZXJOYW1lLmVtaXQoJGV2ZW50KVwiXHJcbiAgICAgICAgICBbbGF5b3V0c109XCJsYXlvdXRzXCJcclxuICAgICAgICAgIFtsYWJlbF09XCInUFJJTlRFUl9MQVlPVVQnXCJcclxuICAgICAgICAgIFt1c2VEZWZhdWx0XT1cImZhbHNlXCI+XHJcbiAgICAgICAgPC9jby1sYXlvdXQtc2VsZWN0aW9uPlxyXG4gICAgICAgIDxjby1hZGRpdGlvbmFsLWZpbGUtYnV0dG9uXHJcbiAgICAgICAgICAjYWRkaXRpb25hbEZpbGVCdXR0b25cclxuICAgICAgICAgICpuZ0lmPVwiaXNBZGRpdGlvbmFsRG9jRW5hYmxlZFwiXHJcbiAgICAgICAgICBbYWRkaXRpb25hbEZpbGVDb250ZW50c109XCJhZGRpdGlvbmFsRmlsZUNvbnRlbnRzXCJcclxuICAgICAgICAgIFthZGRpdGlvbmFsRmlsZU5hbWVdPVwiYWRkaXRpb25hbEZpbGVOYW1lXCJcclxuICAgICAgICAgIChhZGRpdGlvbmFsRmlsZUNoYW5nZUV2ZW50KT1cImFkZGl0aW9uYWxGaWxlQ2hhbmdlRXZlbnQuZW1pdCgkZXZlbnQpXCI+XHJcbiAgICAgICAgPC9jby1hZGRpdGlvbmFsLWZpbGUtYnV0dG9uPlxyXG4gICAgICAgIDxjby1zaWduYXR1cmUtYnV0dG9uIFtyZXF1ZXN0XT1cInNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RcIj48L2NvLXNpZ25hdHVyZS1idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWJ1dHRvbnMtd3JhcHBlclwiICpuZ0lmPVwiaXNQcmludGVyTGF5b3V0c0VuYWJsZWRcIj5cclxuICAgICAgICA8Y28tcHJpbnRlci1zZWxlY3Rpb24gW2RlZmF1bHRQcmludGVyXT1cImRlZmF1bHRQcmludGVyXCIgW3ByaW50ZXJzXT1cInByaW50ZXJMaXN0XCI+PC9jby1wcmludGVyLXNlbGVjdGlvbj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRkaXRpb25hbC1jaGVja3NcIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICBbbW9kZWxdPVwic2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5zYXZlRGVmYXVsdFByaW50ZXJGb3JVc2VyXCJcclxuICAgICAgICAgICAgW2xhYmVsXT1cIidLb3BwZWxpbmcgb250aG91ZGVuJ1wiXHJcbiAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVEZWZhdWx0UHJpbnRlclVzZXJDaGFuZ2UoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgPC9jby1pbnB1dC1jaGVja2JveD5cclxuICAgICAgICAgIDxjby1pbnB1dC1jaGVja2JveFxyXG4gICAgICAgICAgICBbbW9kZWxdPVwic2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5zYXZlRGVmYXVsdFByaW50ZXJGb3JBbGxVc2Vyc1wiXHJcbiAgICAgICAgICAgIFtsYWJlbF09XCInQWxsZSBnZWJydWlrZXJzJ1wiXHJcbiAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJoYW5kbGVEZWZhdWx0UHJpbnRlckFsbFVzZXJzQ2hhbmdlKCRldmVudClcIj5cclxuICAgICAgICAgIDwvY28taW5wdXQtY2hlY2tib3g+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImFkZGl0aW9uYWwtYnV0dG9uc1wiPlxyXG4gICAgICAgICAgPGNvLXBkZi1wcmV2aWV3XHJcbiAgICAgICAgICAgICpuZ0lmPVwidHJhbnNhY3Rpb25UeXBlID09PSAnc2FsZXNPcmRlck92ZXJ2aWV3J1wiXHJcbiAgICAgICAgICAgIFtwZGZEb2NdPVwicGRmRG9jXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVQZGZQcmV2aWV3XT1cImRpc2FibGVQZGZQcmV2aWV3XCJcclxuICAgICAgICAgICAgKHNob3dGaWxlUHJldmlldyk9XCJzaG93RmlsZVByZXZpZXcuZW1pdChzZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0LnJlcG9ydElkKVwiPlxyXG4gICAgICAgICAgPC9jby1wZGYtcHJldmlldz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbmRNZXRob2RQcmludGVyQ29tcG9uZW50IHtcclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmNvLXNlbmQtbWV0aG9kLXByaW50ZXInKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2FkZGl0aW9uYWxGaWxlQnV0dG9uJylcclxuICBwdWJsaWMgYWRkaXRpb25hbEZpbGVCdXR0b25SZWY6IEFkZGl0aW9uYWxGaWxlQnV0dG9uQ29tcG9uZW50O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwcmludGVyTGlzdDogUHJpbnRlcltdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRlZmF1bHRQcmludGVyOiBQcmludGVyO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBsYXlvdXRzOiBSZXBvcnRMYXlvdXRTZWxlY3Rpb25QcmludFtdID0gW107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGlzUHJpbnRlckxheW91dHNFbmFibGVkOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaXNBZGRpdGlvbmFsRG9jRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwZGZEb2M6IGFueSA9ICcnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBkaXNhYmxlUGRmUHJldmlldzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0cmFuc2FjdGlvblR5cGU6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYWRkaXRpb25hbEZpbGVDb250ZW50czogYW55ID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGFkZGl0aW9uYWxGaWxlTmFtZTogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBhZGRpdGlvbmFsRmlsZUNoYW5nZUV2ZW50OiBFdmVudEVtaXR0ZXI8Q29Eb2N1bWVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPENvRG9jdW1lbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBzaG93RmlsZVByZXZpZXc6IEV2ZW50RW1pdHRlcjxudW1iZXI+ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBsb2FkRGVmYXVsdFByaW50ZXJOYW1lOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG5cclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaWNvbnMgPSBJY29uO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBzZW5kTWV0aG9kU2VydmljZTogU2VuZE1ldGhvZFNlcnZpY2UsXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURlZmF1bHRQcmludGVyVXNlckNoYW5nZShjaGVja2VkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3Quc2F2ZURlZmF1bHRQcmludGVyRm9yVXNlciA9IGNoZWNrZWQ7XHJcbiAgICB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RDaGFuZ2VkLm5leHQodGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVEZWZhdWx0UHJpbnRlckFsbFVzZXJzQ2hhbmdlKGNoZWNrZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuc2VuZE1ldGhvZFNlcnZpY2UucmVwb3J0aW5nRG9jdW1lbnRQcmludFNpZ25Eb2NCYXNlUmVxdWVzdC5zYXZlRGVmYXVsdFByaW50ZXJGb3JBbGxVc2VycyA9IGNoZWNrZWQ7XHJcbiAgICB0aGlzLnNlbmRNZXRob2RTZXJ2aWNlLnJlcG9ydGluZ0RvY3VtZW50UHJpbnRTaWduRG9jQmFzZVJlcXVlc3RDaGFuZ2VkLm5leHQodGhpcy5zZW5kTWV0aG9kU2VydmljZS5yZXBvcnRpbmdEb2N1bWVudFByaW50U2lnbkRvY0Jhc2VSZXF1ZXN0KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuQWRkaXRpb25hbEZpbGVEaWFsb2coKTogdm9pZCB7XHJcbiAgICB0aGlzLmFkZGl0aW9uYWxGaWxlQnV0dG9uUmVmPy5vcGVuRm9yU2F2ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGlzQWRkaXRpb25hbEZpbGVBY3RpdmUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5hZGRpdGlvbmFsRmlsZUJ1dHRvblJlZj8uaXNBY3RpdmUgPz8gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiJdfQ==