@eo-sdk/client 11.0.0-beta.1 → 11.0.0-rc.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 (68) hide show
  1. package/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
  2. package/app/eo-client/dashboard/dashboard.component.d.ts.map +1 -1
  3. package/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.d.ts.map +1 -1
  4. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts +2 -0
  5. package/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.d.ts.map +1 -1
  6. package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts +2 -0
  7. package/app/eo-client/dashboard/widgets/charts-widget/icharts.d.ts.map +1 -1
  8. package/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.d.ts.map +1 -1
  9. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.d.ts +21 -0
  10. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.d.ts.map +1 -0
  11. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.d.ts +14 -7
  12. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.d.ts.map +1 -1
  13. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.d.ts +7 -0
  14. package/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.d.ts.map +1 -0
  15. package/app/eo-client/eo-client.module.d.ts +18 -17
  16. package/app/eo-client/eo-client.module.d.ts.map +1 -1
  17. package/app/eo-client/settings/settings.component.d.ts +2 -11
  18. package/app/eo-client/settings/settings.component.d.ts.map +1 -1
  19. package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts +7 -3
  20. package/app/eo-framework/app-shell/app-bar/app-search/app-search.component.d.ts.map +1 -1
  21. package/app/eo-framework/app-shell/app-shell.module.d.ts +17 -16
  22. package/app/eo-framework/app-shell/app-shell.module.d.ts.map +1 -1
  23. package/app/eo-framework/app-shell/index.d.ts +1 -0
  24. package/app/eo-framework/app-shell/index.d.ts.map +1 -1
  25. package/app/eo-framework/app-shell/license-warning/license-warning.component.d.ts +10 -0
  26. package/app/eo-framework/app-shell/license-warning/license-warning.component.d.ts.map +1 -0
  27. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts +1 -0
  28. package/app/eo-framework/form-elements/datetime-range/datetime-range.component.d.ts.map +1 -1
  29. package/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.d.ts.map +1 -1
  30. package/app/eo-framework/prepare-details/prepare-details.component.d.ts.map +1 -1
  31. package/app/eo-framework/result-list/result-list.component.d.ts.map +1 -1
  32. package/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.d.ts.map +1 -1
  33. package/app/eo-framework-core/api/grid.service.d.ts.map +1 -1
  34. package/app/eo-framework-core/error-handler/error-handler.service.d.ts.map +1 -1
  35. package/assets/_default/i18n/de.json +11 -6
  36. package/assets/_default/i18n/en.json +13 -8
  37. package/esm2022/app/eo-client/about-state/about-state.component.mjs +3 -3
  38. package/esm2022/app/eo-client/dashboard/dashboard.component.mjs +3 -1
  39. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-setup/charts-setup.component.mjs +11 -3
  40. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/charts-widget.component.mjs +39 -8
  41. package/esm2022/app/eo-client/dashboard/widgets/charts-widget/icharts.mjs +1 -1
  42. package/esm2022/app/eo-client/dashboard/widgets/hitlist-widget/hitlist-setup/hitlist-setup.component.mjs +12 -11
  43. package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component.mjs +69 -0
  44. package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.component.mjs +91 -22
  45. package/esm2022/app/eo-client/dashboard/widgets/last-edited-widget/last-edited-and-created.mjs +2 -0
  46. package/esm2022/app/eo-client/eo-client.module.mjs +6 -3
  47. package/esm2022/app/eo-client/settings/settings.component.mjs +28 -40
  48. package/esm2022/app/eo-framework/actions/actions/signature-action/signature/signature.component.mjs +3 -3
  49. package/esm2022/app/eo-framework/app-shell/app-bar/app-bar.component.mjs +4 -3
  50. package/esm2022/app/eo-framework/app-shell/app-bar/app-search/app-search.component.mjs +34 -22
  51. package/esm2022/app/eo-framework/app-shell/app-shell.module.mjs +13 -7
  52. package/esm2022/app/eo-framework/app-shell/index.mjs +2 -1
  53. package/esm2022/app/eo-framework/app-shell/license-warning/license-warning.component.mjs +26 -0
  54. package/esm2022/app/eo-framework/form-elements/datetime-range/datetime-range.component.mjs +19 -15
  55. package/esm2022/app/eo-framework/form-elements/dynamic-list/dynamic-list.component.mjs +4 -1
  56. package/esm2022/app/eo-framework/inbox-details/inbox-details.component.mjs +3 -3
  57. package/esm2022/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +2 -2
  58. package/esm2022/app/eo-framework/object-form/object-form/form-element-table/row-edit/row-edit.component.mjs +2 -2
  59. package/esm2022/app/eo-framework/prepare-details/prepare-details.component.mjs +15 -4
  60. package/esm2022/app/eo-framework/result-list/result-list.component.mjs +16 -1
  61. package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.mjs +10 -1
  62. package/esm2022/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.mjs +2 -2
  63. package/esm2022/app/eo-framework/ui/overlay/overlay.component.mjs +2 -2
  64. package/esm2022/app/eo-framework-core/api/grid.service.mjs +15 -19
  65. package/esm2022/app/eo-framework-core/error-handler/error-handler.service.mjs +6 -6
  66. package/fesm2022/eo-sdk-client.mjs +374 -146
  67. package/fesm2022/eo-sdk-client.mjs.map +1 -1
  68. package/package.json +2 -2
@@ -12,8 +12,7 @@
12
12
  "eo.state.settings.localSettings": "Lokale Einstellungen",
13
13
  "eo.state.settings.localSettings.save": "Im System speichern",
14
14
  "eo.state.settings.localSettings.load": "Aus dem System laden",
15
- "eo.state.settings.cache": "Cache",
16
- "eo.state.settings.cache.clear": "Anwendungscache leeren",
15
+ "eo.state.settings.localSettings.clear": "Zurücksetzen auf Standard",
17
16
  "eo.state.settings.cache.clear.success": "Der Anwendungscache wurde geleert",
18
17
  "eo.state.settings.cache.clear.error": "Der Anwendungscache konnte nicht geleert werden",
19
18
  "eo.state.settings.agent.connected": "Trennen",
@@ -103,6 +102,10 @@
103
102
  "eo.state.object.frontpage.lastchanges": "Letzte Änderungen",
104
103
  "eo.state.object.frontpage.lastseen": "Zuletzt gesehen",
105
104
  "eo.state.settings.permission": "Berechtigungen",
105
+ "eo.license.warning.type": "{{type}}-Lizenz",
106
+ "eo.license.warning.expirationDate": "Ihre {{type}}-Lizenz läuft am {{date}} ab.",
107
+ "eo.license.warning.type.production.expiration": "Ihre Lizenz läuft am {{date}} ab.",
108
+ "eo.license.warning.expired": "Ihre Lizenz ist abgelaufen. Sie können keine neuen Objekte erstellen oder vorhandene ändern.",
106
109
  "eo.search.type.abstract": "abstrakt",
107
110
  "eo.search.mode.expert": "Expertenmodus",
108
111
  "eo.search.mode.expert.close": "Expertenmodus beenden",
@@ -333,6 +336,7 @@
333
336
  "eo.error.connection.interrupted.title": "Ein schwerwiegender Fehler ist aufgetreten",
334
337
  "eo.error.attachments.title": "Die Vorschau kann nicht angezeigt werden.",
335
338
  "eo.error.structure.tree.not.available": "Der Strukturbaum ist momentan nicht verfügbar.",
339
+ "eo.error.license.expired.message": "Ihre Lizenz ist abgelaufen. Sie dürfen keine Objekte mehr erstellen oder ändern.",
336
340
  "eo.object.indexdata.save.success": "Das Dokument wurde gespeichert.",
337
341
  "eo.object.indexdata.save.error": "Das Dokument kann im Moment nicht gespeichert werden.",
338
342
  "eo.object.indexdata.save.cancel": "Abbrechen",
@@ -620,6 +624,7 @@
620
624
  "eo.prepare.list.item.location.set": "Ablageort festgelegt",
621
625
  "eo.prepare.list.item.location.notset": "im allgemeinen Ablageort",
622
626
  "eo.prepare.details.item.gone.remove": "Aus Ablagekorb entfernen",
627
+ "eo.prepare.commit.error.indexFailed": "Die Anzeige der Metadaten kann sich verzögern.",
623
628
  "eo.process.details.tab.task": "Aufgabe",
624
629
  "eo.process.details.tab.task.description": "Beschreibung",
625
630
  "eo.process.details.tab.task.indexdata": "Prozessdaten",
@@ -865,6 +870,8 @@
865
870
  "eo.workspace.widget.form.label.secondLabel": "Zweite Beschriftung",
866
871
  "eo.workspace.widget.form.label.thirdLabel": "Dritte Beschriftung",
867
872
  "eo.workspace.widget.form.label.sortRevert": "Sortierung umkehren",
873
+ "eo.workspace.widget.form.label.edited": "Zuletzt bearbeitete Objekte anzeigen",
874
+ "eo.workspace.widget.form.label.created": "Zuletzt erstellte Objekte anzeigen",
868
875
  "eo.widget.hitlist.tooltip.openinresultlist": "Öffnen in der Trefferliste",
869
876
  "eo.widget.hitlist.tooltip.savedSearchIcon": "Im Suchdialog öffnen",
870
877
  "eo.workspace.widget.form.sortField": "Auswahl der Objekteigenschaft für die Sortierung",
@@ -881,11 +888,12 @@
881
888
  "eo.workspace.widget.charts.type.lineStraight": "Linie - Gerade",
882
889
  "eo.workspace.widget.charts.type.lineCurve": "Linie - Kurve",
883
890
  "eo.workspace.widget.form.label.histogram": "Histogramm",
884
- "eo.workspace.widget.charts.histogram.standard": "Standard",
885
891
  "eo.workspace.widget.charts.histogram.yearly": "Jahr",
886
892
  "eo.workspace.widget.charts.histogram.monthly": "Monat",
887
893
  "eo.workspace.widget.charts.histogram.weekly": "Woche",
888
894
  "eo.workspace.widget.charts.histogram.daily": "Tag",
895
+ "eo.workspace.widget.charts.interval": "Intervall",
896
+ "eo.workspace.widget.charts.startingpoint": "Startpunkt",
889
897
  "eo.workspace.widget.list.empty": "Es wurden keine Daten gefunden.",
890
898
  "eo.recyclebin.list.title": "Papierkorb",
891
899
  "eo.workspace.widget.configuration.notOk" : "Konfigurieren Sie zuerst das Widget.",
@@ -1089,9 +1097,6 @@
1089
1097
  "eo.sort.desc": "absteigend",
1090
1098
  "eo.sort.clear": "{{value}} Sortierung entfernen",
1091
1099
  "eo.state.settings.storageinfo": "Speicherinformationen",
1092
- "eo.state.settings.config.cache.system": "System",
1093
- "eo.state.settings.config.cache.history": "Historie",
1094
- "eo.state.settings.config.cache.layout": "Layout",
1095
1100
  "eo.object.storageinfo.permanence": "Speicherbereich",
1096
1101
  "eo.object.storageinfo.storagename": "Medium",
1097
1102
  "eo.object.storageinfo.setname": "Set-Name",
@@ -12,8 +12,7 @@
12
12
  "eo.state.settings.localSettings": "Local settings",
13
13
  "eo.state.settings.localSettings.save": "Save in the system",
14
14
  "eo.state.settings.localSettings.load": "Load from the system",
15
- "eo.state.settings.cache": "Cache",
16
- "eo.state.settings.cache.clear": "Clear application cache",
15
+ "eo.state.settings.localSettings.clear": "Reset to default",
17
16
  "eo.state.settings.cache.clear.success": "The application cache was cleared",
18
17
  "eo.state.settings.cache.clear.error": "Failed to clear application cache",
19
18
  "eo.state.settings.agent.connected": "Disconnect",
@@ -108,6 +107,10 @@
108
107
  "eo.state.object.frontpage.lastchanges": "Most recent changes",
109
108
  "eo.state.object.frontpage.lastseen": "Last viewed",
110
109
  "eo.state.settings.permission": "Permissions",
110
+ "eo.license.warning.type": "{{type}} license",
111
+ "eo.license.warning.expirationDate": "Your {{type}} license expires on {{date}}.",
112
+ "eo.license.warning.type.production.expiration": "Your license expires on {{date}}.",
113
+ "eo.license.warning.expired": "Your license has expired: You can't create new objects or edit existing ones.",
111
114
  "eo.search.type.abstract": "abstract",
112
115
  "eo.search.mode.expert": "Expert mode",
113
116
  "eo.search.mode.expert.close": "Exit expert mode",
@@ -339,6 +342,7 @@
339
342
  "eo.error.connection.interrupted.title": "A fatal error has occurred.",
340
343
  "eo.error.attachments.title": "Unable to display preview.",
341
344
  "eo.error.structure.tree.not.available": "The structure tree is not available currently.",
345
+ "eo.error.license.expired.message": "Your license has expired. You are no longer allowed to create or change objects.",
342
346
  "eo.object.indexdata.save.success": "The document was saved.",
343
347
  "eo.object.indexdata.save.error": "The document cannot be saved currently.",
344
348
  "eo.object.indexdata.save.cancel": "Cancel",
@@ -625,6 +629,7 @@
625
629
  "eo.prepare.list.item.location.set": "filing location specified",
626
630
  "eo.prepare.list.item.location.notset": "in the general filing location",
627
631
  "eo.prepare.details.item.gone.remove": "Remove from in-tray",
632
+ "eo.prepare.commit.error.indexFailed": "The display of the metadata may be delayed.",
628
633
  "eo.process.details.tab.task": "Task",
629
634
  "eo.process.details.tab.task.description": "Description",
630
635
  "eo.process.details.tab.task.indexdata": "Process data",
@@ -871,6 +876,8 @@
871
876
  "eo.workspace.widget.form.label.secondLabel": "Second label",
872
877
  "eo.workspace.widget.form.label.thirdLabel": "Third label",
873
878
  "eo.workspace.widget.form.label.sortRevert": "Reverse sorting",
879
+ "eo.workspace.widget.form.label.edited": "Show recently edited objects",
880
+ "eo.workspace.widget.form.label.created": "Show recently created objects",
874
881
  "eo.widget.hitlist.tooltip.openinresultlist": "Open in hit list",
875
882
  "eo.widget.hitlist.tooltip.savedSearchIcon": "Open in search dialog",
876
883
  "eo.workspace.widget.form.sortField": "Selection of the object property for sorting",
@@ -884,14 +891,15 @@
884
891
  "eo.workspace.widget.charts.type.bar": "Bar",
885
892
  "eo.workspace.widget.charts.type.pie": "Pie",
886
893
  "eo.workspace.widget.charts.type.donut": "Ring",
887
- "eo.workspace.widget.charts.type.lineStraight": "Line - straight",
888
- "eo.workspace.widget.charts.type.lineCurve": "Line - curve",
894
+ "eo.workspace.widget.charts.type.lineStraight": "Line straight",
895
+ "eo.workspace.widget.charts.type.lineCurve": "Line curve",
889
896
  "eo.workspace.widget.form.label.histogram": "Histogram",
890
- "eo.workspace.widget.charts.histogram.standard": "Default",
891
897
  "eo.workspace.widget.charts.histogram.yearly": "Year",
892
898
  "eo.workspace.widget.charts.histogram.monthly": "Month",
893
899
  "eo.workspace.widget.charts.histogram.weekly": "Week",
894
900
  "eo.workspace.widget.charts.histogram.daily": "Day",
901
+ "eo.workspace.widget.charts.interval": "Interval",
902
+ "eo.workspace.widget.charts.startingpoint": "Starting point",
895
903
  "eo.workspace.widget.list.empty": "No data was found.",
896
904
  "eo.recyclebin.list.title": "Recycle bin",
897
905
  "eo.workspace.widget.configuration.notOk": "You need to first configure the widget.",
@@ -1089,9 +1097,6 @@
1089
1097
  "eo.sort.desc": "descending",
1090
1098
  "eo.sort.clear": "Clear {{value}} sorting",
1091
1099
  "eo.state.settings.storageinfo": "Storage information",
1092
- "eo.state.settings.config.cache.system": "System",
1093
- "eo.state.settings.config.cache.history": "History",
1094
- "eo.state.settings.config.cache.layout": "Layout",
1095
1100
  "eo.object.storageinfo.permanence": "Storage area",
1096
1101
  "eo.object.storageinfo.storagename": "Storage",
1097
1102
  "eo.object.storageinfo.setname": "Set name",
@@ -8,10 +8,10 @@ export class AboutStateComponent {
8
8
  this.backend = backend;
9
9
  this.userService = userService;
10
10
  this.config = config;
11
- this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/styles", "version": "31.0.3", "license": "MIT" }, { "name": "@angular/animations", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/cdk", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/common", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/compiler", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/core", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/forms", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/router", "version": "17.1.2", "license": "MIT" }, { "name": "@carbon/charts-angular", "version": "1.13.32", "license": "Apache-2.0" }, { "name": "@eo-sdk/core", "version": "11.0.0-beta.1", "license": "MIT" }, { "name": "@ngneat/until-destroy", "version": "10.0.0", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "17.0.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "15.0.0", "license": "SEE LICENSE IN LICENSE" }, { "name": "@types/lodash", "version": "4.14.202", "license": "MIT" }, { "name": "@yuuvis/components", "version": "2.0.0", "license": "MIT" }, { "name": "@yuuvis/widget-grid", "version": "2.0.0", "license": "MIT" }, { "name": "core-js", "version": "2.6.12", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "moment", "version": "2.30.1", "license": "MIT" }, { "name": "ngx-toastr", "version": "18.0.0", "license": "MIT" }, { "name": "rxjs", "version": "7.8.1", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.6.2", "license": "0BSD" }, { "name": "zone.js", "version": "0.14.3", "license": "MIT" }];
11
+ this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "31.0.3", "license": "MIT" }, { "name": "@ag-grid-community/styles", "version": "31.0.3", "license": "MIT" }, { "name": "@angular/animations", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/cdk", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/common", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/compiler", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/core", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/forms", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "17.1.2", "license": "MIT" }, { "name": "@angular/router", "version": "17.1.2", "license": "MIT" }, { "name": "@carbon/charts-angular", "version": "1.13.32", "license": "Apache-2.0" }, { "name": "@eo-sdk/core", "version": "11.0.0-rc.1", "license": "MIT" }, { "name": "@ngneat/until-destroy", "version": "10.0.0", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "17.0.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "15.0.0", "license": "SEE LICENSE IN LICENSE" }, { "name": "@types/lodash", "version": "4.14.202", "license": "MIT" }, { "name": "@yuuvis/components", "version": "2.0.0", "license": "MIT" }, { "name": "@yuuvis/widget-grid", "version": "2.0.0", "license": "MIT" }, { "name": "core-js", "version": "2.6.12", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "moment", "version": "2.30.1", "license": "MIT" }, { "name": "ngx-toastr", "version": "18.0.0", "license": "MIT" }, { "name": "rxjs", "version": "7.8.1", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.6.2", "license": "0BSD" }, { "name": "zone.js", "version": "0.14.4", "license": "MIT" }];
12
12
  this.ctrl = {
13
13
  componentName: 'yuuvis® RAD client',
14
- componentVersion: '11.0.0-beta.1',
14
+ componentVersion: '11.0.0-rc.1',
15
15
  productName: '',
16
16
  productVersion: ''
17
17
  };
@@ -78,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
78
78
  type: Component,
79
79
  args: [{ selector: 'eo-about-state', template: "<div class=\"eo-about-state\">\n\n <div class=\"about\">\n <div class=\"header\" [style.background-image]=\"backgroundImage\">\n <img [src]=\"headerLogo\"/>\n </div>\n\n <div class=\"body\">\n <div class=\"claim\" translate>eo.help.about.claim</div>\n\n <div class=\"wrap\">\n <table>\n <tbody>\n <tr>\n <th translate>eo.help.about.component.label</th>\n <td>{{ctrl.componentName}}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.component.version.label</th>\n <td>{{ctrl.componentVersion}}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.product.label</th>\n <td>{{ ctrl.productName }}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.product.version.label</th>\n <td>{{ ctrl.productVersion }}</td>\n </tr>\n <tr>\n <th translate>eo.help.about.producer.label</th>\n <td translate>eo.help.about.producer.text</td>\n </tr>\n </tbody>\n </table>\n </div>\n\n\n <h2 translate>eo.help.license.title</h2>\n <p translate>eo.help.license.intro</p>\n <div class=\"showLic\" (click)=\"licenseShow = !licenseShow\">\n <span class=\"toggle\"><span translate>eo.help.license.title</span><span class=\"toggle-indicator\">{{licenseShow ? '-' : '+'}}</span></span></div>\n <div class=\"licenses\" *ngIf=\"licenseShow\">\n <div class=\"lib\" *ngFor=\"let lib of __libraries__; trackBy: trackByFn\">\n <div class=\"name\">{{lib.name}}</div>\n <div class=\"lic\" *ngIf=\"licenses[lib.license]\">\n <a href=\"{{licenses[lib.license].url}}\" target=\"_blank\" *ngIf=\"licenses[lib.license].url\">{{licenses[lib.license].label}}</a>\n <span *ngIf=\"!licenses[lib.license].url\">{{licenses[lib.license].label}}</span>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n</div>\n", styles: [":host{--about-header-height: 300px;position:absolute;inset:0;display:flex;flex-flow:row;justify-content:center;overflow-y:auto}.eo-about-state{box-sizing:border-box;width:800px;display:flex;flex-flow:column}@media screen and (max-width: 832px){.eo-about-state{margin:0;min-width:inherit;width:100%}}.eo-about-state .about{box-shadow:0 2px 5px #0003;background:var(--panel-background);margin:var(--app-pane-padding)}.eo-about-state .about .header{position:relative;height:var(--about-header-height);background-size:cover}.eo-about-state .about .header:after{content:\"\";position:absolute;inset:0;background-color:rgba(var(--color-accent-rgb),.8)}.eo-about-state .about .header img{right:8%;bottom:18%;position:absolute;z-index:20;width:40%}.eo-about-state .about .body{padding:var(--app-pane-padding)}.eo-about-state .about .body .claim{padding:var(--app-pane-padding) 0}.eo-about-state .about .body h2{margin:1.5em 0 0;color:var(--text-color-caption);font-weight:var(--font-weight-light);font-size:var(--font-title)}.eo-about-state .about .body .wrap{display:flex;flex-flow:row wrap}.eo-about-state .about .body ul.links{color:var(--color-accent);list-style-type:none}.eo-about-state .about .body ul.links li{padding:2px 0}.eo-about-state .about .body ul.links a{text-decoration:none;color:var(--color-accent)}.eo-about-state .about .body ul.links a:hover{text-decoration:underline}.eo-about-state .about .body table{margin:var(--app-pane-padding);padding:calc(var(--app-pane-padding) / 4) 0;background-color:rgba(var(--color-black-rgb),.06);border-radius:2px}.eo-about-state .about .body table th{display:flex;flex-flow:column;align-items:flex-start;justify-content:center;font-size:var(--font-hint);color:var(--text-color-caption)}.eo-about-state .about .body table th,.eo-about-state .about .body table td{padding:calc(var(--app-pane-padding) / 8) calc(var(--app-pane-padding) / 2)}.eo-about-state .about .body .showLic span.toggle{color:var(--color-accent);display:inline-block;padding:0 4px 2px;border-radius:4px;border:1px solid var(--color-accent);cursor:pointer}.eo-about-state .about .body .showLic .toggle-indicator{padding:0 4px}.eo-about-state .about .body .licenses{padding-top:var(--app-pane-padding)}.eo-about-state .about .body .licenses .lib{display:flex;flex-flow:row nowrap;padding:calc(var(--app-pane-padding) / 4);border-top:1px solid var(--list-item-border-color)}.eo-about-state .about .body .licenses .lib .name{flex:1 1 auto}.eo-about-state .about .body .licenses .lib .lic{flex:0 0 auto;font-size:var(--font-hint);color:var(--text-color-caption)}.eo-about-state .about .body .licenses .lib .lic a{text-decoration:none;border-radius:2px;border:1px solid var(--color-accent);color:var(--color-accent);display:inline-block;padding:2px 4px;background-color:rgba(var(--color-black-rgb),.06);line-height:1em}\n"] }]
80
80
  }], ctorParameters: () => [{ type: i1.BackendService }, { type: i1.UserService }, { type: i1.Config }] });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvdXQtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFReEMsTUFBTSxPQUFPLG1CQUFtQjtJQXNEOUIsWUFBb0IsT0FBdUIsRUFBVSxXQUF3QixFQUFVLE1BQWM7UUFBakYsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFqRHJHLGtCQUFhLEdBQUcsQ0FBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywwQ0FBMEMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx5QkFBeUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywrQkFBK0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywyQkFBMkIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsaUJBQWlCLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsbUJBQW1CLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsZUFBZSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGdCQUFnQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLDJCQUEyQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLG1DQUFtQyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGlCQUFpQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLHdCQUF3QixFQUFDLFNBQVMsRUFBQyxTQUFTLEVBQUMsU0FBUyxFQUFDLFlBQVksRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsZUFBZSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx1QkFBdUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx3QkFBd0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFD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LFNBQVMsQ0FBQyxDQUFDO1FBQ2xELENBQUM7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSzthQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs4R0E1RVUsbUJBQW1CO2tHQUFuQixtQkFBbUIsc0RDUmhDLG8rREF1REE7OzJGRC9DYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtVc2VyU2VydmljZSwgQ29uZmlnLCBCYWNrZW5kU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tYWJvdXQtc3RhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hYm91dC1zdGF0ZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFib3V0U3RhdGVDb21wb25lbnQge1xuXG4gIGJhY2tncm91bmRJbWFnZTogc3RyaW5nO1xuICBoZWFkZXJMb2dvOiBzdHJpbmc7XG4gIGxpY2Vuc2VTaG93OiBib29sZWFuO1xuICBfX2xpYnJhcmllc19fID0gW3tcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIzMS4wLjNcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY2xpZW50LXNpZGUtcm93LW1vZGVsXCIsXCJ2ZXJzaW9uXCI6XCIzMS4wLjNcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY29yZVwiLFwidmVyc2lvblwiOlwiMzEuMC4zXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFnLWdyaWQtY29tbXVuaXR5L2Nzdi1leHBvcnRcIixcInZlcnNpb25cIjpcIjMxLjAuM1wiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9zdHlsZXNcIixcInZlcnNpb25cIjpcIjMxLjAuM1wiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2FuaW1hdGlvbnNcIixcInZlcnNpb25cIjpcIjE3LjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2Nka1wiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29tbW9uXCIsXCJ2ZXJzaW9uXCI6XCIxNy4xLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb21waWxlclwiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29yZVwiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvZm9ybXNcIixcInZlcnNpb25cIjpcIjE3LjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIixcInZlcnNpb25cIjpcIjE3LjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXItZHluYW1pY1wiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcm91dGVyXCIsXCJ2ZXJzaW9uXCI6XCIxNy4xLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAY2FyYm9uL2NoYXJ0cy1hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIxLjEzLjMyXCIsXCJsaWNlbnNlXCI6XCJBcGFjaGUtMi4wXCJ9LHtcIm5hbWVcIjpcIkBlby1zZGsvY29yZVwiLFwidmVyc2lvblwiOlwiMTEuMC4wLWJldGEuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBuZ25lYXQvdW50aWwtZGVzdHJveVwiLFwidmVyc2lvblwiOlwiMTAuMC4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQG5neC1wd2EvbG9jYWwtc3RvcmFnZVwiLFwidmVyc2lvblwiOlwiMTcuMC4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQG5neC10cmFuc2xhdGUvY29yZVwiLFwidmVyc2lvblwiOlwiMTUuMC4wXCIsXCJsaWNlbnNlXCI6XCJTRUUgTElDRU5TRSBJTiBMSUNFTlNFXCJ9LHtcIm5hbWVcIjpcIkB0eXBlcy9sb2Rhc2hcIixcInZlcnNpb25cIjpcIjQuMTQuMjAyXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQHl1dXZpcy9jb21wb25lbnRzXCIsXCJ2ZXJzaW9uXCI6XCIyLjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkB5dXV2aXMvd2lkZ2V0LWdyaWRcIixcInZlcnNpb25cIjpcIjIuMC4wXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiY29yZS1qc1wiLFwidmVyc2lvblwiOlwiMi42LjEyXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiZmlsZS1zYXZlclwiLFwidmVyc2lvblwiOlwiMi4wLjVcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJmb250LWF3ZXNvbWVcIixcInZlcnNpb25cIjpcIjQuNy4wXCIsXCJsaWNlbnNlXCI6XCIoT0ZMLTEuMSBBTkQgTUlUKVwifSx7XCJuYW1lXCI6XCJtb21lbnRcIixcInZlcnNpb25cIjpcIjIuMzAuMVwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIm5neC10b2FzdHJcIixcInZlcnNpb25cIjpcIjE4LjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcInJ4anNcIixcInZlcnNpb25cIjpcIjcuOC4xXCIsXCJsaWNlbnNlXCI6XCJBcGFjaGUtMi4wXCJ9LHtcIm5hbWVcIjpcInRzbGliXCIsXCJ2ZXJzaW9uXCI6XCIyLjYuMlwiLFwibGljZW5zZVwiOlwiMEJTRFwifSx7XCJuYW1lXCI6XCJ6b25lLmpzXCIsXCJ2ZXJzaW9uXCI6XCIwLjE0LjNcIixcImxpY2Vuc2VcIjpcIk1JVFwifV07XG4gIHVzZXJMYW5nOiBzdHJpbmc7XG5cbiAgY3RybCA9IHtcbiAgICBjb21wb25lbnROYW1lOiAneXV1dmlzwq4gUkFEIGNsaWVudCcsXG4gICAgY29tcG9uZW50VmVyc2lvbjogJzExLjAuMC1iZXRhLjEnLFxuICAgIHByb2R1Y3ROYW1lOiAnJyxcbiAgICBwcm9kdWN0VmVyc2lvbjogJydcbiAgfTtcblxuICBsaWNlbnNlcyA9IHtcbiAgICAnTUlUJzoge1xuICAgICAgJ2xhYmVsJzogJ01JVCcsXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVQnXG4gICAgfSxcbiAgICAnQXBhY2hlLTIuMCc6IHtcbiAgICAgICdsYWJlbCc6ICdBcGFjaGUgMi4wJyxcbiAgICAgICd1cmwnOiAnaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wJ1xuICAgIH0sXG4gICAgJ0JTRC0zLUNsYXVzZS1DbGVhcic6IHtcbiAgICAgICdsYWJlbCc6ICdCU0QgMy1DbGF1c2UnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlJ1xuICAgIH0sXG4gICAgJ0NDMC0xLjAnOiB7XG4gICAgICAnbGFiZWwnOiAnQ0MwIDEuMCcsXG4gICAgICAndXJsJzogJ2h0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9wdWJsaWNkb21haW4vemVyby8xLjAvJ1xuICAgIH0sXG4gICAgJyhPRkwtMS4xIEFORCBNSVQpJzoge1xuICAgICAgJ2xhYmVsJzogJ01JVCcsXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVQnXG4gICAgfSxcbiAgICAnU0lMT0ZMLTEuMSc6IHtcbiAgICAgICdsYWJlbCc6ICdTSUwgT3BlbiBGb250IExpY2Vuc2UgMS4xJyxcbiAgICAgICd1cmwnOiAnaHR0cDovL3NjcmlwdHMuc2lsLm9yZy9PRkxfd2ViJ1xuICAgIH0sXG4gICAgJ0NvbW1lcmNpYWwnOiB7XG4gICAgICAnbGFiZWwnOiAnQ29tbWVyY2lhbCdcbiAgICB9LFxuICAgICdhZy1ncmlkJzoge1xuICAgICAgJ2xhYmVsJzogJ2FnLUdyaWQtRW50ZXJwcmlzZSBTb2Z0d2FyZSBMaWNlbmNlIEFncmVlbWVudCBWZXJzaW9uIDEuNycsXG4gICAgICAndXJsJzogJ2h0dHBzOi8vZ2l0aHViLmNvbS9jZW9sdGVyL2FnLWdyaWQtZW50ZXJwcmlzZS9ibG9iL21hc3Rlci9MSUNFTlNFLm1kJ1xuICAgIH0sXG4gICAgJzBCU0QnOiB7XG4gICAgICAnbGFiZWwnOiAnWmVyby1DbGF1c2UgQlNEJyxcbiAgICAgICd1cmwnOiAnaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzLzBCU0QnXG4gICAgfVxuICB9O1xuXG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBiYWNrZW5kOiBCYWNrZW5kU2VydmljZSwgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsIHByaXZhdGUgY29uZmlnOiBDb25maWcpIHtcbiAgICB0aGlzLmdldFVzZXJMYW5nKCk7XG4gICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dGhpcy5jb25maWcuZ2V0RGFzaGJvYXJkQmFja2dyb3VuZEltYWdlKCl9KWA7XG4gICAgdGhpcy5oZWFkZXJMb2dvID0gdGhpcy5jb25maWcuZ2V0UmF3KCdhYm91dC5oZWFkZXJMb2dvJyk7XG4gICAgaWYgKCF0aGlzLmhlYWRlckxvZ28pIHtcbiAgICAgIHRoaXMuaGVhZGVyTG9nbyA9IHRoaXMuY29uZmlnLmdldFJhdygnYXBwTG9nbycpO1xuICAgIH1cblxuICAgIHRoaXMuYmFja2VuZC5nZXRKc29uKCcvc3lzdGVtL2luZm8nKS5zdWJzY3JpYmUoaW5mbyA9PiB7XG4gICAgICB0aGlzLmN0cmwucHJvZHVjdE5hbWUgPSBpbmZvLnByb2R1Y3QubmFtZTtcbiAgICAgIHRoaXMuY3RybC5wcm9kdWN0VmVyc2lvbiA9IGluZm8ucHJvZHVjdC5wcm9kdWN0dmVyc2lvbjtcbiAgICB9KTtcbiAgfVxuXG4gIGdldFVzZXJMYW5nKCkge1xuICAgIHRoaXMudXNlclNlcnZpY2VcbiAgICAgIC51c2VyJFxuICAgICAgLnN1YnNjcmliZShkYXRhID0+IHRoaXMudXNlckxhbmcgPSBkYXRhLnVzZXJTZXR0aW5ncy5jbGllbnRsb2NhbGUpO1xuICB9XG5cbiAgdHJhY2tCeUZuKGluZGV4LCBpdGVtKTogbnVtYmVyIHtcbiAgICByZXR1cm4gaW5kZXg7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJlby1hYm91dC1zdGF0ZVwiPlxuXG4gIDxkaXYgY2xhc3M9XCJhYm91dFwiPlxuICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIiBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCJiYWNrZ3JvdW5kSW1hZ2VcIj5cbiAgICAgIDxpbWcgW3NyY109XCJoZWFkZXJMb2dvXCIvPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImJvZHlcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjbGFpbVwiIHRyYW5zbGF0ZT5lby5oZWxwLmFib3V0LmNsYWltPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwXCI+XG4gICAgICAgIDx0YWJsZT5cbiAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIHRyYW5zbGF0ZT5lby5oZWxwLmFib3V0LmNvbXBvbmVudC5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3tjdHJsLmNvbXBvbmVudE5hbWV9fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQuY29tcG9uZW50LnZlcnNpb24ubGFiZWw8L3RoPlxuICAgICAgICAgICAgPHRkPnt7Y3RybC5jb21wb25lbnRWZXJzaW9ufX08L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIHRyYW5zbGF0ZT5lby5oZWxwLmFib3V0LnByb2R1Y3QubGFiZWw8L3RoPlxuICAgICAgICAgICAgPHRkPnt7IGN0cmwucHJvZHVjdE5hbWUgfX08L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIHRyYW5zbGF0ZT5lby5oZWxwLmFib3V0LnByb2R1Y3QudmVyc2lvbi5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3sgY3RybC5wcm9kdWN0VmVyc2lvbiB9fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjZXIubGFiZWw8L3RoPlxuICAgICAgICAgICAgPHRkIHRyYW5zbGF0ZT5lby5oZWxwLmFib3V0LnByb2R1Y2VyLnRleHQ8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgPC90YWJsZT5cbiAgICAgIDwvZGl2PlxuXG5cbiAgICAgIDxoMiB0cmFuc2xhdGU+ZW8uaGVscC5saWNlbnNlLnRpdGxlPC9oMj5cbiAgICAgIDxwIHRyYW5zbGF0ZT5lby5oZWxwLmxpY2Vuc2UuaW50cm88L3A+XG4gICAgICA8ZGl2IGNsYXNzPVwic2hvd0xpY1wiIChjbGljayk9XCJsaWNlbnNlU2hvdyA9ICFsaWNlbnNlU2hvd1wiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInRvZ2dsZVwiPjxzcGFuIHRyYW5zbGF0ZT5lby5oZWxwLmxpY2Vuc2UudGl0bGU8L3NwYW4+PHNwYW4gY2xhc3M9XCJ0b2dnbGUtaW5kaWNhdG9yXCI+e3tsaWNlbnNlU2hvdyA/ICctJyA6ICcrJ319PC9zcGFuPjwvc3Bhbj48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsaWNlbnNlc1wiICpuZ0lmPVwibGljZW5zZVNob3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpYlwiICpuZ0Zvcj1cImxldCBsaWIgb2YgX19saWJyYXJpZXNfXzsgdHJhY2tCeTogdHJhY2tCeUZuXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIj57e2xpYi5uYW1lfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibGljXCIgKm5nSWY9XCJsaWNlbnNlc1tsaWIubGljZW5zZV1cIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCJ7e2xpY2Vuc2VzW2xpYi5saWNlbnNlXS51cmx9fVwiIHRhcmdldD1cIl9ibGFua1wiICpuZ0lmPVwibGljZW5zZXNbbGliLmxpY2Vuc2VdLnVybFwiPnt7bGljZW5zZXNbbGliLmxpY2Vuc2VdLmxhYmVsfX08L2E+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFsaWNlbnNlc1tsaWIubGljZW5zZV0udXJsXCI+e3tsaWNlbnNlc1tsaWIubGljZW5zZV0ubGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbjwvZGl2PlxuIl19
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJvdXQtc3RhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvYWJvdXQtc3RhdGUvYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFReEMsTUFBTSxPQUFPLG1CQUFtQjtJQXNEOUIsWUFBb0IsT0FBdUIsRUFBVSxXQUF3QixFQUFVLE1BQWM7UUFBakYsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFqRHJHLGtCQUFhLEdBQUcsQ0FBQyxFQUFDLE1BQU0sRUFBQyw0QkFBNEIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywwQ0FBMEMsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx5QkFBeUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywrQkFBK0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQywyQkFBMkIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxjQUFjLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsaUJBQWlCLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsbUJBQW1CLEVBQUMsU0FBUyxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUMsS0FBSyxFQUFDLEVBQUMsRUFBQyxNQUFNLEVBQUMsZUFBZSxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGdCQUFnQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLDJCQUEyQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLG1DQUFtQyxFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGlCQUFpQixFQUFDLFNBQVMsRUFBQyxRQUFRLEVBQUMsU0FBUyxFQUFDLEtBQUssRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLHdCQUF3QixFQUFDLFNBQVMsRUFBQyxTQUFTLEVBQUMsU0FBUyxFQUFDLFlBQVksRUFBQyxFQUFDLEVBQUMsTUFBTSxFQUFDLGNBQWMsRUFBQyxTQUFTLEVBQUMsYUFBYSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx1QkFBdUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyx3QkFBd0IsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFDLFNBQVMsRUFBQyxLQUFLLEVBQUMsRUFBQyxFQUFDLE1BQU0sRUFBQyxxQkFBcUIsRUFBQyxTQUFTLEVBQUMsUUFBUSxFQUFD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LFNBQVMsQ0FBQyxDQUFDO1FBQ2xELENBQUM7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxXQUFXO2FBQ2IsS0FBSzthQUNMLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs4R0E1RVUsbUJBQW1CO2tHQUFuQixtQkFBbUIsc0RDUmhDLG8rREF1REE7OzJGRC9DYSxtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtVc2VyU2VydmljZSwgQ29uZmlnLCBCYWNrZW5kU2VydmljZX0gZnJvbSAnQGVvLXNkay9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tYWJvdXQtc3RhdGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWJvdXQtc3RhdGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hYm91dC1zdGF0ZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFib3V0U3RhdGVDb21wb25lbnQge1xuXG4gIGJhY2tncm91bmRJbWFnZTogc3RyaW5nO1xuICBoZWFkZXJMb2dvOiBzdHJpbmc7XG4gIGxpY2Vuc2VTaG93OiBib29sZWFuO1xuICBfX2xpYnJhcmllc19fID0gW3tcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIzMS4wLjNcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY2xpZW50LXNpZGUtcm93LW1vZGVsXCIsXCJ2ZXJzaW9uXCI6XCIzMS4wLjNcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYWctZ3JpZC1jb21tdW5pdHkvY29yZVwiLFwidmVyc2lvblwiOlwiMzEuMC4zXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFnLWdyaWQtY29tbXVuaXR5L2Nzdi1leHBvcnRcIixcInZlcnNpb25cIjpcIjMxLjAuM1wiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhZy1ncmlkLWNvbW11bml0eS9zdHlsZXNcIixcInZlcnNpb25cIjpcIjMxLjAuM1wiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2FuaW1hdGlvbnNcIixcInZlcnNpb25cIjpcIjE3LjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL2Nka1wiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29tbW9uXCIsXCJ2ZXJzaW9uXCI6XCIxNy4xLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAYW5ndWxhci9jb21waWxlclwiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvY29yZVwiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvZm9ybXNcIixcInZlcnNpb25cIjpcIjE3LjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXJcIixcInZlcnNpb25cIjpcIjE3LjEuMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXItZHluYW1pY1wiLFwidmVyc2lvblwiOlwiMTcuMS4yXCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiQGFuZ3VsYXIvcm91dGVyXCIsXCJ2ZXJzaW9uXCI6XCIxNy4xLjJcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAY2FyYm9uL2NoYXJ0cy1hbmd1bGFyXCIsXCJ2ZXJzaW9uXCI6XCIxLjEzLjMyXCIsXCJsaWNlbnNlXCI6XCJBcGFjaGUtMi4wXCJ9LHtcIm5hbWVcIjpcIkBlby1zZGsvY29yZVwiLFwidmVyc2lvblwiOlwiMTEuMC4wLXJjLjFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAbmduZWF0L3VudGlsLWRlc3Ryb3lcIixcInZlcnNpb25cIjpcIjEwLjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBuZ3gtcHdhL2xvY2FsLXN0b3JhZ2VcIixcInZlcnNpb25cIjpcIjE3LjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIixcInZlcnNpb25cIjpcIjE1LjAuMFwiLFwibGljZW5zZVwiOlwiU0VFIExJQ0VOU0UgSU4gTElDRU5TRVwifSx7XCJuYW1lXCI6XCJAdHlwZXMvbG9kYXNoXCIsXCJ2ZXJzaW9uXCI6XCI0LjE0LjIwMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcIkB5dXV2aXMvY29tcG9uZW50c1wiLFwidmVyc2lvblwiOlwiMi4wLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJAeXV1dmlzL3dpZGdldC1ncmlkXCIsXCJ2ZXJzaW9uXCI6XCIyLjAuMFwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImNvcmUtanNcIixcInZlcnNpb25cIjpcIjIuNi4xMlwiLFwibGljZW5zZVwiOlwiTUlUXCJ9LHtcIm5hbWVcIjpcImZpbGUtc2F2ZXJcIixcInZlcnNpb25cIjpcIjIuMC41XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn0se1wibmFtZVwiOlwiZm9udC1hd2Vzb21lXCIsXCJ2ZXJzaW9uXCI6XCI0LjcuMFwiLFwibGljZW5zZVwiOlwiKE9GTC0xLjEgQU5EIE1JVClcIn0se1wibmFtZVwiOlwibW9tZW50XCIsXCJ2ZXJzaW9uXCI6XCIyLjMwLjFcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJuZ3gtdG9hc3RyXCIsXCJ2ZXJzaW9uXCI6XCIxOC4wLjBcIixcImxpY2Vuc2VcIjpcIk1JVFwifSx7XCJuYW1lXCI6XCJyeGpzXCIsXCJ2ZXJzaW9uXCI6XCI3LjguMVwiLFwibGljZW5zZVwiOlwiQXBhY2hlLTIuMFwifSx7XCJuYW1lXCI6XCJ0c2xpYlwiLFwidmVyc2lvblwiOlwiMi42LjJcIixcImxpY2Vuc2VcIjpcIjBCU0RcIn0se1wibmFtZVwiOlwiem9uZS5qc1wiLFwidmVyc2lvblwiOlwiMC4xNC40XCIsXCJsaWNlbnNlXCI6XCJNSVRcIn1dO1xuICB1c2VyTGFuZzogc3RyaW5nO1xuXG4gIGN0cmwgPSB7XG4gICAgY29tcG9uZW50TmFtZTogJ3l1dXZpc8KuIFJBRCBjbGllbnQnLFxuICAgIGNvbXBvbmVudFZlcnNpb246ICcxMS4wLjAtcmMuMScsXG4gICAgcHJvZHVjdE5hbWU6ICcnLFxuICAgIHByb2R1Y3RWZXJzaW9uOiAnJ1xuICB9O1xuXG4gIGxpY2Vuc2VzID0ge1xuICAgICdNSVQnOiB7XG4gICAgICAnbGFiZWwnOiAnTUlUJyxcbiAgICAgICd1cmwnOiAnaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVCdcbiAgICB9LFxuICAgICdBcGFjaGUtMi4wJzoge1xuICAgICAgJ2xhYmVsJzogJ0FwYWNoZSAyLjAnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAnXG4gICAgfSxcbiAgICAnQlNELTMtQ2xhdXNlLUNsZWFyJzoge1xuICAgICAgJ2xhYmVsJzogJ0JTRCAzLUNsYXVzZScsXG4gICAgICAndXJsJzogJ2h0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UnXG4gICAgfSxcbiAgICAnQ0MwLTEuMCc6IHtcbiAgICAgICdsYWJlbCc6ICdDQzAgMS4wJyxcbiAgICAgICd1cmwnOiAnaHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL3B1YmxpY2RvbWFpbi96ZXJvLzEuMC8nXG4gICAgfSxcbiAgICAnKE9GTC0xLjEgQU5EIE1JVCknOiB7XG4gICAgICAnbGFiZWwnOiAnTUlUJyxcbiAgICAgICd1cmwnOiAnaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVCdcbiAgICB9LFxuICAgICdTSUxPRkwtMS4xJzoge1xuICAgICAgJ2xhYmVsJzogJ1NJTCBPcGVuIEZvbnQgTGljZW5zZSAxLjEnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vc2NyaXB0cy5zaWwub3JnL09GTF93ZWInXG4gICAgfSxcbiAgICAnQ29tbWVyY2lhbCc6IHtcbiAgICAgICdsYWJlbCc6ICdDb21tZXJjaWFsJ1xuICAgIH0sXG4gICAgJ2FnLWdyaWQnOiB7XG4gICAgICAnbGFiZWwnOiAnYWctR3JpZC1FbnRlcnByaXNlIFNvZnR3YXJlIExpY2VuY2UgQWdyZWVtZW50IFZlcnNpb24gMS43JyxcbiAgICAgICd1cmwnOiAnaHR0cHM6Ly9naXRodWIuY29tL2Nlb2x0ZXIvYWctZ3JpZC1lbnRlcnByaXNlL2Jsb2IvbWFzdGVyL0xJQ0VOU0UubWQnXG4gICAgfSxcbiAgICAnMEJTRCc6IHtcbiAgICAgICdsYWJlbCc6ICdaZXJvLUNsYXVzZSBCU0QnLFxuICAgICAgJ3VybCc6ICdodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvMEJTRCdcbiAgICB9XG4gIH07XG5cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJhY2tlbmQ6IEJhY2tlbmRTZXJ2aWNlLCBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSwgcHJpdmF0ZSBjb25maWc6IENvbmZpZykge1xuICAgIHRoaXMuZ2V0VXNlckxhbmcoKTtcbiAgICB0aGlzLmJhY2tncm91bmRJbWFnZSA9IGB1cmwoJHt0aGlzLmNvbmZpZy5nZXREYXNoYm9hcmRCYWNrZ3JvdW5kSW1hZ2UoKX0pYDtcbiAgICB0aGlzLmhlYWRlckxvZ28gPSB0aGlzLmNvbmZpZy5nZXRSYXcoJ2Fib3V0LmhlYWRlckxvZ28nKTtcbiAgICBpZiAoIXRoaXMuaGVhZGVyTG9nbykge1xuICAgICAgdGhpcy5oZWFkZXJMb2dvID0gdGhpcy5jb25maWcuZ2V0UmF3KCdhcHBMb2dvJyk7XG4gICAgfVxuXG4gICAgdGhpcy5iYWNrZW5kLmdldEpzb24oJy9zeXN0ZW0vaW5mbycpLnN1YnNjcmliZShpbmZvID0+IHtcbiAgICAgIHRoaXMuY3RybC5wcm9kdWN0TmFtZSA9IGluZm8ucHJvZHVjdC5uYW1lO1xuICAgICAgdGhpcy5jdHJsLnByb2R1Y3RWZXJzaW9uID0gaW5mby5wcm9kdWN0LnByb2R1Y3R2ZXJzaW9uO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0VXNlckxhbmcoKSB7XG4gICAgdGhpcy51c2VyU2VydmljZVxuICAgICAgLnVzZXIkXG4gICAgICAuc3Vic2NyaWJlKGRhdGEgPT4gdGhpcy51c2VyTGFuZyA9IGRhdGEudXNlclNldHRpbmdzLmNsaWVudGxvY2FsZSk7XG4gIH1cblxuICB0cmFja0J5Rm4oaW5kZXgsIGl0ZW0pOiBudW1iZXIge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImVvLWFib3V0LXN0YXRlXCI+XG5cbiAgPGRpdiBjbGFzcz1cImFib3V0XCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlclwiIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgICAgPGltZyBbc3JjXT1cImhlYWRlckxvZ29cIi8+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNsYWltXCIgdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQuY2xhaW08L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cIndyYXBcIj5cbiAgICAgICAgPHRhYmxlPlxuICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQuY29tcG9uZW50LmxhYmVsPC90aD5cbiAgICAgICAgICAgIDx0ZD57e2N0cmwuY29tcG9uZW50TmFtZX19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCB0cmFuc2xhdGU+ZW8uaGVscC5hYm91dC5jb21wb25lbnQudmVyc2lvbi5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3tjdHJsLmNvbXBvbmVudFZlcnNpb259fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjdC5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQ+e3sgY3RybC5wcm9kdWN0TmFtZSB9fTwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjdC52ZXJzaW9uLmxhYmVsPC90aD5cbiAgICAgICAgICAgIDx0ZD57eyBjdHJsLnByb2R1Y3RWZXJzaW9uIH19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCB0cmFuc2xhdGU+ZW8uaGVscC5hYm91dC5wcm9kdWNlci5sYWJlbDwvdGg+XG4gICAgICAgICAgICA8dGQgdHJhbnNsYXRlPmVvLmhlbHAuYWJvdXQucHJvZHVjZXIudGV4dDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8L3RhYmxlPlxuICAgICAgPC9kaXY+XG5cblxuICAgICAgPGgyIHRyYW5zbGF0ZT5lby5oZWxwLmxpY2Vuc2UudGl0bGU8L2gyPlxuICAgICAgPHAgdHJhbnNsYXRlPmVvLmhlbHAubGljZW5zZS5pbnRybzwvcD5cbiAgICAgIDxkaXYgY2xhc3M9XCJzaG93TGljXCIgKGNsaWNrKT1cImxpY2Vuc2VTaG93ID0gIWxpY2Vuc2VTaG93XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidG9nZ2xlXCI+PHNwYW4gdHJhbnNsYXRlPmVvLmhlbHAubGljZW5zZS50aXRsZTwvc3Bhbj48c3BhbiBjbGFzcz1cInRvZ2dsZS1pbmRpY2F0b3JcIj57e2xpY2Vuc2VTaG93ID8gJy0nIDogJysnfX08L3NwYW4+PC9zcGFuPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImxpY2Vuc2VzXCIgKm5nSWY9XCJsaWNlbnNlU2hvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGliXCIgKm5nRm9yPVwibGV0IGxpYiBvZiBfX2xpYnJhcmllc19fOyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZVwiPnt7bGliLm5hbWV9fTwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaWNcIiAqbmdJZj1cImxpY2Vuc2VzW2xpYi5saWNlbnNlXVwiPlxuICAgICAgICAgICAgPGEgaHJlZj1cInt7bGljZW5zZXNbbGliLmxpY2Vuc2VdLnVybH19XCIgdGFyZ2V0PVwiX2JsYW5rXCIgKm5nSWY9XCJsaWNlbnNlc1tsaWIubGljZW5zZV0udXJsXCI+e3tsaWNlbnNlc1tsaWIubGljZW5zZV0ubGFiZWx9fTwvYT5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWxpY2Vuc2VzW2xpYi5saWNlbnNlXS51cmxcIj57e2xpY2Vuc2VzW2xpYi5saWNlbnNlXS5sYWJlbH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuPC9kaXY+XG4iXX0=
@@ -19,6 +19,7 @@ import { ChartsWidgetComponent } from './widgets/charts-widget/charts-widget.com
19
19
  import { ChartsSetupComponent } from './widgets/charts-widget/charts-setup/charts-setup.component';
20
20
  import { CountObjectsWidgetComponent } from './widgets/count-objects-widget/count-objects-widget.component';
21
21
  import { CountObjectsSetupComponent } from './widgets/count-objects-widget/count-objects-setup/count-objects-setup.component';
22
+ import { LastEditedAndCreatedSetupComponent } from './widgets/last-edited-widget/last-edited-and-created-setup/last-edited-and-created-setup.component';
22
23
  import * as i0 from "@angular/core";
23
24
  import * as i1 from "@eo-sdk/core";
24
25
  import * as i2 from "@yuuvis/widget-grid";
@@ -116,6 +117,7 @@ let DashboardComponent = class DashboardComponent {
116
117
  name: 'yuv.widget.LastEdited',
117
118
  label: this.translate.instant('eo.workspace.widget.lastEditedOrLastCreated.label'),
118
119
  widgetComponent: LastEditedAndCreatedComponent,
120
+ setupComponent: LastEditedAndCreatedSetupComponent,
119
121
  },
120
122
  {
121
123
  name: 'yuv.widget.iframe',
@@ -302,4 +304,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
302
304
  type: HostListener,
303
305
  args: ['window:keyup', ['$event']]
304
306
  }] } });
305
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQVUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpFLE9BQU8sRUFVTCxLQUFLLEVBQ04sTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUNMLHNCQUFzQixFQUN0QiwyQkFBMkIsRUFDM0IsbUJBQW1CLEVBQ25CLHdCQUF3QixFQUl6QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFHakQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFFdEYsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDakcsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDN0csT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdEYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDcEcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNEVBQTRFLENBQUM7QUFDcEgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUVBQXlFLENBQUM7QUFDaEgsT0FBTyxFQUFDLFlBQVks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O1lBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDckosQ0FBQztJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFlO1FBQ2pDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdkQsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEQsQ0FBQztJQUNILENBQUM7OEdBeFJVLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDROQ3hEL0IsZ3BCQWFBLHF3RkR1Q2M7WUFDVixhQUFhO1NBQ2Q7O0FBRVUsa0JBQWtCO0lBVDlCLFlBQVksRUFBRTtHQVNGLGtCQUFrQixDQXlSOUI7OzJGQXpSWSxrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsY0FBYyxjQUdaO3dCQUNWLGFBQWE7cUJBQ2Q7NlhBeUJ5QixhQUFhO3NCQUF0QyxTQUFTO3VCQUFDLGFBQWE7Z0JBR3hCLEtBQUs7c0JBREosWUFBWTt1QkFBQyxjQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7Q29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmF2aWdhdGlvbkV4dHJhcywgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQ2FwYWJpbGl0aWVzLFxuICBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxuICBDb25maWcsXG4gIEVvVXNlcixcbiAgTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgU3RvcmVkUXVlcmllc1NlcnZpY2UsXG4gIFN0b3JlZFF1ZXJ5LFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxuICBVc2VyU2VydmljZSxcbiAgVXRpbHNcbn0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7XG4gIFBpY3R1cmVXaWRnZXRDb21wb25lbnQsXG4gIFBpY3R1cmVXaWRnZXRTZXR1cENvbXBvbmVudCxcbiAgVG9kb1dpZGdldENvbXBvbmVudCxcbiAgVG9kb1dpZGdldFNldHVwQ29tcG9uZW50LFxuICBXaWRnZXRHcmlkUmVnaXN0cnksXG4gIFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcsXG4gIFdpZGdldEdyaWRXb3Jrc3BhY2VPcHRpb25zXG59IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7UGFnZVRpdGxlU2VydmljZSwgUGVuZGluZ0NoYW5nZXNTZXJ2aWNlfSBmcm9tICcuLi8uLi9lby1mcmFtZXdvcmstY29yZSc7XG5pbXBvcnQge2xpc3RBbmltYXRpb259IGZyb20gJy4uLy4uL2VvLWZyYW1ld29yayc7XG5pbXBvcnQge1F1aWNrU2VhcmNoUmVzdWx0fSBmcm9tICcuLi8uLi9lby1mcmFtZXdvcmsnO1xuaW1wb3J0IHtRdWlja1NlYXJjaENvbXBvbmVudH0gZnJvbSAnLi4vLi4vZW8tZnJhbWV3b3JrJztcbmltcG9ydCB7U2VhcmNoV2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvc2VhcmNoLXdpZGdldC9zZWFyY2gtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge1RyZWVOb2RlfSBmcm9tICcuLi8uLi9lby1mcmFtZXdvcmsnO1xuaW1wb3J0IHtJZnJhbWVTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2lmcmFtZS13aWRnZXQvaWZyYW1lLXNldHVwL2lmcmFtZS1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtMYXN0RWRpdGVkQW5kQ3JlYXRlZENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2xhc3QtZWRpdGVkLXdpZGdldC9sYXN0LWVkaXRlZC1hbmQtY3JlYXRlZC5jb21wb25lbnQnO1xuaW1wb3J0IHtJZnJhbWVXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9pZnJhbWUtd2lkZ2V0L2lmcmFtZS13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0ludHJheVdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2luZm8taW50cmF5LXdpZGdldC9pbmZvLWludHJheS13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0ludHJheVNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbnRyYXktd2lkZ2V0L2luZm8taW50cmF5LXNldHVwL2luZm8taW50cmF5LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge0luZm9JbmJveFdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2luZm8taW5ib3gtd2lkZ2V0L2luZm8taW5ib3gtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge0luZm9JbmJveFNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbmJveC13aWRnZXQvaW5mby1pbmJveC1zZXR1cC9pbmZvLWluYm94LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge0hpdGxpc3RTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2hpdGxpc3Qtd2lkZ2V0L2hpdGxpc3Qtc2V0dXAvaGl0bGlzdC1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtIaXRsaXN0V2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7QWZ0ZXJWaWV3SW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYXJ0c1dpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtDaGFydHNTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXNldHVwL2NoYXJ0cy1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtDb3VudE9iamVjdHNXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9jb3VudC1vYmplY3RzLXdpZGdldC9jb3VudC1vYmplY3RzLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtDb3VudE9iamVjdHNTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NvdW50LW9iamVjdHMtd2lkZ2V0L2NvdW50LW9iamVjdHMtc2V0dXAvY291bnQtb2JqZWN0cy1zZXR1cC5jb21wb25lbnQnO1xuXG5AVW50aWxEZXN0cm95KClcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VvLWRhc2hib2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXNoYm9hcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXNoYm9hcmQuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW1xuICAgIGxpc3RBbmltYXRpb25cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBEYXNoYm9hcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIHdvcmtzcGFjZUNvbmZpZzogV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZyB8IHVuZGVmaW5lZDtcbiAgd29ya3NwYWNlT3B0aW9uczogV2lkZ2V0R3JpZFdvcmtzcGFjZU9wdGlvbnMgPSB7XG4gICAgZ3JpZENvbmZpZzoge1xuICAgICAgcm93czogMzAsXG4gICAgICBuZXdJdGVtV2lkdGg6IDIsXG4gICAgICBuZXdJdGVtSGVpZ2h0OiA1XG4gICAgfVxuICB9O1xuICBiYWNrZ3JvdW5kSW1hZ2U6IHN0cmluZztcbiAgY2FwYWJpbGl0aWVzOiBDYXBhYmlsaXRpZXM7XG4gIHN0b3JlZFF1ZXJpZXM6IFN0b3JlZFF1ZXJ5W10gPSBbXTtcbiAgc2VsZWN0ZWRRdWVyeTogU3RvcmVkUXVlcnk7XG4gIHF1aWNrU2VhcmNoUmVzdWx0OiBRdWlja1NlYXJjaFJlc3VsdDtcbiAgdHJlZSA9IHt9O1xuICBTVE9SQUdFX0tFWSA9ICdlby5jbGllbnQuZGFzaGJvYXJkLmN1cnJlbnRXb3Jrc3BhY2UnO1xuICB0b29sYmFyVmlzaWJsZTogYm9vbGVhbjtcbiAgdG9vbGJhckljb25TcmM6IHN0cmluZztcbiAgdG9vbGJhckljb25Ub29sdGlwOiBzdHJpbmc7XG4gIHBlbmRpbmdUYXNrSUQgPSAnJztcblxuICB1c2VyOiBFb1VzZXI7XG4gIEBWaWV3Q2hpbGQoJ3F1aWNrU2VhcmNoJykgcXVpY2tTZWFyY2hFbDogUXVpY2tTZWFyY2hDb21wb25lbnQ7XG5cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OmtleXVwJywgWyckZXZlbnQnXSlcbiAgb25LZXkoZXZlbnQpIHtcbiAgICBpZiAoZXZlbnQud2hpY2ggPT09IDI3KSB7XG4gICAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSB3aWRnZXRHcmlkUmVnaXN0cnk6IFdpZGdldEdyaWRSZWdpc3RyeSxcbiAgICBwcml2YXRlIHRpdGxlU2VydmljZTogUGFnZVRpdGxlU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlnLFxuICAgIHByaXZhdGUgc3RvcmFnZVNlcnZpY2U6IExvY2FsU3RvcmFnZVNlcnZpY2UsXG4gICAgcHVibGljIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIGNhcGFiaWxpdHlTZXJ2aWNlOiBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgc3RvcmVkUXVlcmllc1NlcnZpY2U6IFN0b3JlZFF1ZXJpZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcGVuZGluZ0NoYW5nZXM6IFBlbmRpbmdDaGFuZ2VzU2VydmljZSkge1xuICAgIHRoaXMudGl0bGVTZXJ2aWNlLnNldERlZmF1bHRUaXRsZSgpO1xuICAgIHRoaXMuYmFja2dyb3VuZEltYWdlID0gYHVybCgke3RoaXMuY29uZmlnLmdldERhc2hib2FyZEJhY2tncm91bmRJbWFnZSgpfSlgO1xuICAgIHRoaXMuc2V0V2lkZ2V0R3JpZExhYmVscygpO1xuICAgIHRoaXMudHJhbnNsYXRlLm9uTGFuZ0NoYW5nZS5waXBlKHVudGlsRGVzdHJveWVkKHRoaXMpKS5zdWJzY3JpYmUoKF8pID0+IHtcbiAgICAgIHRoaXMuc2V0V2lkZ2V0R3JpZExhYmVscygpO1xuICAgIH0pO1xuICB9XG5cbiAgb25Xb3Jrc3BhY2VzQ29uZmlnQ2hhbmdlKGM6IFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcpIHtcbiAgICB0aGlzLnNhdmVXb3Jrc3BhY2VzQ29uZmlnKGMpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRXaWRnZXRHcmlkTGFiZWxzKCkge1xuICAgIHRoaXMud2lkZ2V0R3JpZFJlZ2lzdHJ5LnVwZGF0ZVJlZ2lzdGVyZWRXaWRnZXRzTGFiZWxzKHtcbiAgICAgIFwieXV2LndpZGdldC5waWN0dXJlXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucGljdHVyZS5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LnRvZG9cIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5MYXN0RWRpdGVkXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQubGFzdEVkaXRlZE9yTGFzdENyZWF0ZWQubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5pZnJhbWVcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5pZnJhbWUubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5pbmZvSW50cmF5XCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaW5mb0ludHJheS5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmluZm9JbmJveFwiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmluZm9JbmJveC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LnF1aWNrU2VhcmNoXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucXVpY2tzZWFyY2gubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5oaXRsaXN0XCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaGl0bGlzdC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmNvdW50T2JqZWN0c1wiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmNvdW50T2JqZWN0LmxhYmVsJyksXG4gICAgICBcInl1di53aWRnZXQuY2hhcnRcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5jaGFydC5sYWJlbCcpLFxuICAgIH0pO1xuXG4gICAgdGhpcy53aWRnZXRHcmlkUmVnaXN0cnkudXBkYXRlV2lkZ2V0R3JpZExhYmVscyh7XG4gICAgICB3aWRnZXRQaWNrZXJUaXRsZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0UGlja2VyVGl0bGUnKSxcbiAgICAgIGFkZFdvcmtzcGFjZVRvb2x0aXA6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLmFkZFdvcmtzcGFjZScpLFxuICAgICAgbm9vcFdpZGdldExhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5ub29wV2lkZ2V0TGFiZWwnKSxcbiAgICAgIHdvcmtzcGFjZXNFbXB0eU1lc3NhZ2U6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndvcmtzcGFjZXNFbXB0eU1lc3NhZ2UnKSxcbiAgICAgIG5ld1dvcmtzcGFjZURlZmF1bHRMYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQubmV3V29ya3NwYWNlRGVmYXVsdExhYmVsJyksXG4gICAgICB3b3Jrc3BhY2VMYWJlbFBsYWNlaG9sZGVyOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5uZXdXb3Jrc3BhY2VEZWZhdWx0TGFiZWwnKSxcbiAgICAgIHdvcmtzcGFjZVJlbW92ZUNvbmZpcm1NZXNzYWdlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC53b3Jrc3BhY2VSZW1vdmVDb25maXJtTWVzc2FnZScpLFxuICAgICAgd29ya3NwYWNlRWRpdERvbmU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndvcmtzcGFjZUVkaXREb25lJyksXG4gICAgICB3b3Jrc3BhY2VFZGl0Q2FuY2VsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5jYW5jZWwnKSxcbiAgICAgIHNhdmU6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLnNhdmUnKSxcbiAgICAgIGNhbmNlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQuY2FuY2VsJyksXG4gICAgICBjb25maXJtOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5jb25maXJtJyksXG4gICAgICB3aWRnZXRUb2RvSGVhZGxpbmVMYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWwnKSxcbiAgICAgIHdpZGdldFRvZG9UYXNrVGl0bGVMYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0VGl0bGVMYWJlbCcpXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlZ2lzdGVyV2lkZ2V0cygpIHtcblxuICAgIHRoaXMud2lkZ2V0R3JpZFJlZ2lzdHJ5LnJlZ2lzdGVyR3JpZFdpZGdldHMoW1xuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5waWN0dXJlJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQucGljdHVyZS5sYWJlbCcpLFxuICAgICAgICBzZXR1cENvbXBvbmVudDogUGljdHVyZVdpZGdldFNldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IFBpY3R1cmVXaWRnZXRDb21wb25lbnQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC50b2RvJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndpZGdldFRvZG9IZWFkbGluZUxhYmVsJyksXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBUb2RvV2lkZ2V0U2V0dXBDb21wb25lbnQsXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogVG9kb1dpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0Lkxhc3RFZGl0ZWQnLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5sYXN0RWRpdGVkT3JMYXN0Q3JlYXRlZC5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IExhc3RFZGl0ZWRBbmRDcmVhdGVkQ29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuaWZyYW1lJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaWZyYW1lLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogSWZyYW1lV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgICBzZXR1cENvbXBvbmVudDogSWZyYW1lU2V0dXBDb21wb25lbnQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5pbmZvSW50cmF5JyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaW5mb0ludHJheS5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IEluZm9JbnRyYXlXaWRnZXRDb21wb25lbnQsXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBJbmZvSW50cmF5U2V0dXBDb21wb25lbnRcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmluZm9JbmJveCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmluZm9JbmJveC5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IEluZm9JbmJveFdpZGdldENvbXBvbmVudCxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IEluZm9JbmJveFNldHVwQ29tcG9uZW50XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5xdWlja1NlYXJjaCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LnF1aWNrc2VhcmNoLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogU2VhcmNoV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuaGl0bGlzdCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmhpdGxpc3QubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IEhpdGxpc3RTZXR1cENvbXBvbmVudCxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBIaXRsaXN0V2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuY291bnRPYmplY3RzJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuY291bnRPYmplY3QubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IENvdW50T2JqZWN0c1NldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IENvdW50T2JqZWN0c1dpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmNoYXJ0JyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnQubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IENoYXJ0c1NldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IENoYXJ0c1dpZGdldENvbXBvbmVudCxcbiAgICAgIH1cbiAgICBdLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnbGFiZWwnKSkpO1xuICB9XG5cbiAgc2VsZWN0U3RvcmVkUXVlcnkocTogU3RvcmVkUXVlcnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkUXVlcnkgPSBxO1xuICB9XG5cbiAgLy8gdXNlciBjaGFuZ2VkIGlucHV0IG9mIHF1aWNrU2VhcmNoIGNvbXBvbmVudFxuICBvblF1aWNrU2VhcmNoSW5wdXRDaGFuZ2UodGVybSkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSBudWxsO1xuICB9XG5cbiAgLy8gcXVpY2tTZWFyY2ggY29tcG9uZW50IGlzIHJldHVybmluZyByZXN1bHRzXG4gIG9uUXVpY2tTZWFyY2hSZXN1bHQocmVzdWx0OiBRdWlja1NlYXJjaFJlc3VsdCkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSByZXN1bHQ7XG4gICAgT2JqZWN0LmtleXModGhpcy5xdWlja1NlYXJjaFJlc3VsdC5ncm91cHMpLm1hcChrZXkgPT4gKHRoaXMudHJlZVtrZXldID0gdGhpcy5nZXRUcmVlTm9kZXMoa2V5KSkpO1xuICB9XG5cbiAgb25TdG9yZWRRdWVyeUxvYWRlZCgpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7b3V0bGV0czoge21vZGFsOiAnc2VhcmNoJ319XSk7XG4gIH1cblxuICBvblN0b3JlZFF1ZXJ5RXhlY3V0ZShldnQpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIGNvbnN0IHVyaVBhcmFtID0gZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KGV2dC5xdWVyeUpzb24pKTtcbiAgICBjb25zdCB1cmlQYXJhbVF1ZXJ5OiBOYXZpZ2F0aW9uRXh0cmFzID0ge3F1ZXJ5UGFyYW1zOiB7J3F1ZXJ5JzogdXJpUGFyYW19fTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9yZXN1bHQnXSwgdXJpUGFyYW1RdWVyeSk7XG4gIH1cbiAgZ2V0VHJlZU5vZGVzKGtleSk6IFRyZWVOb2RlW10ge1xuICAgIHJldHVybiB0aGlzLnF1aWNrU2VhcmNoUmVzdWx0Lmdyb3Vwc1trZXldLm1hcChncm91cCA9PiAoe1xuICAgICAgaWQ6IGdyb3VwLmRhdGEuaWQsXG4gICAgICBuYW1lOiBncm91cC5sYWJlbCxcbiAgICAgIHNlbGVjdGFibGU6IHRydWUsXG4gICAgICBkYXRhOiBncm91cC5kYXRhLFxuICAgICAgYmFkZ2VzOiBbe3ZhbHVlOiBncm91cC5jb3VudH1dXG4gICAgfSkpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5sb2FkV29ya3NwYWNlc0NvbmZpZygpO1xuICAgIHRoaXMucmVnaXN0ZXJXaWRnZXRzKCk7XG4gICAgdGhpcy5jYXBhYmlsaXRpZXMgPSB0aGlzLmNhcGFiaWxpdHlTZXJ2aWNlLmdldENhcGFiaWxpdGllcygpO1xuICAgIGlmICh0aGlzLmNhcGFiaWxpdGllcy5zdG9yZWRxdWVyaWVzKSB7XG4gICAgICB0aGlzLnN0b3JlZFF1ZXJpZXNTZXJ2aWNlLmdldFN0b3JlZFF1ZXJpZXMkKClcbiAgICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgIC5zdWJzY3JpYmUocXVlcmllc1N1YnNjcmlwdGlvbiA9PiB0aGlzLnN0b3JlZFF1ZXJpZXMgPSBxdWVyaWVzU3Vic2NyaXB0aW9uLnF1ZXJpZXMuZmlsdGVyKHEgPT4gcS5mYXZvcml0ZSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCduYW1lJykpKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMudG9vbGJhclZpc2libGUgPSB0aGlzLnVzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCkudXNlclNldHRpbmdzLnRvb2xiYXJWaXNpYmlsaXR5O1xuICAgICAgY29uc3QgdG9vbGJhciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy50b29sYmFyJykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICBpZiAodGhpcy50b29sYmFyVmlzaWJsZSA9PT0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy5oaWRlVG9vbGJhcih0b29sYmFyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2hvd1Rvb2xiYXIodG9vbGJhcik7XG4gICAgICB9XG4gICAgICBjb25zdCBzaG93RGFzaGJvYXJkQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Rhc2hib2FyZEJ1dHRvbicpO1xuICAgICAgc2hvd0Rhc2hib2FyZEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgdGhpcy5oaWRlT3JTaG93T25DbGljayh0b29sYmFyKTtcbiAgICAgIH0pO1xuICAgIH0sIDIwMCk7XG5cbiAgfVxuXG4gIHByaXZhdGUgaGlkZVRvb2xiYXIodG9vbGJhcjogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLnRvb2xiYXJJY29uU3JjID0gJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfYXJyb3dfdXAuc3ZnJztcbiAgICB0aGlzLnRvb2xiYXJJY29uVG9vbHRpcCA9ICdlby5kYXNoYm9hcmQuYnV0dG9uLnNob3cuZm9vdGVyLnRvb2x0aXAnO1xuICAgIHRvb2xiYXIuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICB0aGlzLnRvb2xiYXJWaXNpYmxlID0gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIHNob3dUb29sYmFyKHRvb2xiYXI6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy50b29sYmFySWNvblNyYyA9ICdhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2Fycm93X2Rvd24uc3ZnJztcbiAgICB0aGlzLnRvb2xiYXJJY29uVG9vbHRpcCA9ICdlby5kYXNoYm9hcmQuYnV0dG9uLmhpZGUuZm9vdGVyLnRvb2x0aXAnO1xuICAgIHRvb2xiYXIuc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcbiAgICB0aGlzLnRvb2xiYXJWaXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgaGlkZU9yU2hvd09uQ2xpY2sodG9vbGJhcjogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy50b29sYmFyVmlzaWJsZSkge1xuICAgICAgdGhpcy5oaWRlVG9vbGJhcih0b29sYmFyKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2Uuc2F2ZVRvb2xiYXJTdGF0ZSh0aGlzLnRvb2xiYXJWaXNpYmxlKS5zdWJzY3JpYmUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93VG9vbGJhcih0b29sYmFyKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2Uuc2F2ZVRvb2xiYXJTdGF0ZSh0aGlzLnRvb2xiYXJWaXNpYmxlKS5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxvYWRXb3Jrc3BhY2VzQ29uZmlnKCkge1xuICAgIGlmICghdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpLnVzZXJTZXR0aW5ncy53b3Jrc3BhY2VPcHRpb25zIHx8IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS51c2VyU2V0dGluZ3Mud29ya3NwYWNlT3B0aW9ucy53b3Jrc3BhY2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5odHRwLmdldCgnYXNzZXRzL2Rhc2hib2FyZC5qc29uJykuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlczogV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZykgPT4ge1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnID0gcmVzO1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0ubGFiZWwgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0ubGFiZWwpO1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0uZ3JpZC5mb3JFYWNoKGdyaWQgPT4ge1xuICAgICAgICAgICAgaWYgKGdyaWQud2lkZ2V0Q29uZmlnKSB7XG4gICAgICAgICAgICAgIGdyaWQud2lkZ2V0Q29uZmlnLnRpdGxlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChncmlkLndpZGdldENvbmZpZy50aXRsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgLy8gbm8gY29uZmlnIGZpbGUgZm91bmRcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnID0gdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpLnVzZXJTZXR0aW5ncy53b3Jrc3BhY2VPcHRpb25zO1xuICAgICAgY29uc3QgY3VycmVudFdvcmtzcGFjZSA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSh0aGlzLlNUT1JBR0VfS0VZKTtcbiAgICAgIGlmIChjdXJyZW50V29ya3NwYWNlICYmIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXMubWFwKCh3KSA9PiB3LmlkKS5pbmNsdWRlcyhjdXJyZW50V29ya3NwYWNlKSkge1xuICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy5jdXJyZW50V29ya3NwYWNlID0gY3VycmVudFdvcmtzcGFjZTtcbiAgICAgIH0gZWxzZSBpZiAoISF0aGlzLndvcmtzcGFjZUNvbmZpZy53b3Jrc3BhY2VzLmxlbmd0aCkge1xuICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy5jdXJyZW50V29ya3NwYWNlID0gdGhpcy53b3Jrc3BhY2VDb25maWcud29ya3NwYWNlc1swXS5pZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNhdmVXb3Jrc3BhY2VzQ29uZmlnKGM6IFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcpIHtcbiAgICAvLyB0aGUgc2VsZWN0ZWQgd29ya3NwYWNlIGlzIHNhdmVkIG9uIHRoZSBkZXZpY2Ugd2hpbGUgdGhlIHdvcmtzcGFjZXMgdGhlbXNlbHZlcyBhcmUgc3RvcmVkIG9uIHRoZSB1c2VyIHNlcnZpY2VcbiAgICBpZiAoYykge1xuICAgICAgdGhpcy51c2VyU2VydmljZS5zYXZlQ2hhbmdlV29ya3NwYWNlKGMpLnBpcGUoc3dpdGNoTWFwKGFzeW5jICgpID0+IHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSh0aGlzLlNUT1JBR0VfS0VZLCBjLmN1cnJlbnRXb3Jrc3BhY2UpKSkuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgb25Xb3Jrc3BhY2VFZGl0TW9kZShvbkVkaXQ6IGJvb2xlYW4pIHtcbiAgICBpZiAob25FZGl0KSB7XG4gICAgICB0aGlzLnBlbmRpbmdUYXNrSUQgPSB0aGlzLnBlbmRpbmdDaGFuZ2VzLnN0YXJ0VGFzaygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBlbmRpbmdDaGFuZ2VzLmZpbmlzaFRhc2sodGhpcy5wZW5kaW5nVGFza0lEKVxuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPGRpdiBjbGFzcz1cImZhZGVcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJmb290ZXJCdXR0b25cIiBlb1J0bEF3YXJlPVwiZnVsbFwiPlxuICAgICAgPGVvLWljb24gaWQ9XCJkYXNoYm9hcmRCdXR0b25cIiBbaWNvblNyY109XCJ0b29sYmFySWNvblNyY1wiIFtpY29uVGl0bGVdPVwidG9vbGJhckljb25Ub29sdGlwIHwgdHJhbnNsYXRlXCI+PC9lby1pY29uPlxuICAgIDwvZGl2PlxuICAgIDx5dXYtd2lkZ2V0LWdyaWQtd29ya3NwYWNlcyAqbmdJZj1cIndvcmtzcGFjZUNvbmZpZ1wiXG4gICAgW3dvcmtzcGFjZUxhYmVsTWF4TGVuZ3RoXT1cIjUwXCJcbiAgICBbd29ya3NwYWNlQ29uZmlnXT1cIndvcmtzcGFjZUNvbmZpZ1wiXG4gICAgICAoY29uZmlnQ2hhbmdlKT1cIm9uV29ya3NwYWNlc0NvbmZpZ0NoYW5nZSgkZXZlbnQpXCIgKGVkaXRNb2RlQ2hhbmdlKT1cIm9uV29ya3NwYWNlRWRpdE1vZGUoJGV2ZW50KVwiIFtvcHRpb25zXT1cIndvcmtzcGFjZU9wdGlvbnNcIj5cbiAgICA8L3l1di13aWRnZXQtZ3JpZC13b3Jrc3BhY2VzPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
307
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvZW8tY2xpZW50L2Rhc2hib2FyZC9kYXNoYm9hcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9lby1jbGllbnQvZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQVUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXpFLE9BQU8sRUFVTCxLQUFLLEVBQ04sTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUNMLHNCQUFzQixFQUN0QiwyQkFBMkIsRUFDM0IsbUJBQW1CLEVBQ25CLHdCQUF3QixFQUl6QixNQUFNLHFCQUFxQixDQUFDO0FBQzdCLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6QyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFHakQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFFdEYsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDakcsT0FBTyxFQUFDLDZCQUE2QixFQUFDLE1BQU0sZ0VBQWdFLENBQUM7QUFDN0csT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDdEYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFDcEcsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sNEVBQTRFLENBQUM7QUFDcEgsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUVBQXlFLENBQUM7QUFDaEgsT0FBTyxFQUFDLFlBQVks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Q0gsQ0FBQztJQUVPLG9CQUFvQixDQUFDLENBQTRCO1FBQ3ZELCtHQUErRztRQUMvRyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDckosQ0FBQztJQUNILENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFlO1FBQ2pDLElBQUksTUFBTSxFQUFFLENBQUM7WUFDWCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDdkQsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7UUFDcEQsQ0FBQztJQUNILENBQUM7OEdBelJVLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDROQ3pEL0IsZ3BCQWFBLHF3RkR3Q2M7WUFDVixhQUFhO1NBQ2Q7O0FBRVUsa0JBQWtCO0lBVDlCLFlBQVksRUFBRTtHQVNGLGtCQUFrQixDQTBSOUI7OzJGQTFSWSxrQkFBa0I7a0JBUjlCLFNBQVM7K0JBQ0UsY0FBYyxjQUdaO3dCQUNWLGFBQWE7cUJBQ2Q7NlhBeUJ5QixhQUFhO3NCQUF0QyxTQUFTO3VCQUFDLGFBQWE7Z0JBR3hCLEtBQUs7c0JBREosWUFBWTt1QkFBQyxjQUFjLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7Q29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TmF2aWdhdGlvbkV4dHJhcywgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtcbiAgQ2FwYWJpbGl0aWVzLFxuICBDYXBhYmlsaXRpZXNTZXJ2aWNlLFxuICBDb25maWcsXG4gIEVvVXNlcixcbiAgTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgU3RvcmVkUXVlcmllc1NlcnZpY2UsXG4gIFN0b3JlZFF1ZXJ5LFxuICBUcmFuc2xhdGVTZXJ2aWNlLFxuICBVc2VyU2VydmljZSxcbiAgVXRpbHNcbn0gZnJvbSAnQGVvLXNkay9jb3JlJztcbmltcG9ydCB7XG4gIFBpY3R1cmVXaWRnZXRDb21wb25lbnQsXG4gIFBpY3R1cmVXaWRnZXRTZXR1cENvbXBvbmVudCxcbiAgVG9kb1dpZGdldENvbXBvbmVudCxcbiAgVG9kb1dpZGdldFNldHVwQ29tcG9uZW50LFxuICBXaWRnZXRHcmlkUmVnaXN0cnksXG4gIFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcsXG4gIFdpZGdldEdyaWRXb3Jrc3BhY2VPcHRpb25zXG59IGZyb20gJ0B5dXV2aXMvd2lkZ2V0LWdyaWQnO1xuaW1wb3J0IHtzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7UGFnZVRpdGxlU2VydmljZSwgUGVuZGluZ0NoYW5nZXNTZXJ2aWNlfSBmcm9tICcuLi8uLi9lby1mcmFtZXdvcmstY29yZSc7XG5pbXBvcnQge2xpc3RBbmltYXRpb259IGZyb20gJy4uLy4uL2VvLWZyYW1ld29yayc7XG5pbXBvcnQge1F1aWNrU2VhcmNoUmVzdWx0fSBmcm9tICcuLi8uLi9lby1mcmFtZXdvcmsnO1xuaW1wb3J0IHtRdWlja1NlYXJjaENvbXBvbmVudH0gZnJvbSAnLi4vLi4vZW8tZnJhbWV3b3JrJztcbmltcG9ydCB7U2VhcmNoV2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvc2VhcmNoLXdpZGdldC9zZWFyY2gtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge1RyZWVOb2RlfSBmcm9tICcuLi8uLi9lby1mcmFtZXdvcmsnO1xuaW1wb3J0IHtJZnJhbWVTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2lmcmFtZS13aWRnZXQvaWZyYW1lLXNldHVwL2lmcmFtZS1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtMYXN0RWRpdGVkQW5kQ3JlYXRlZENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2xhc3QtZWRpdGVkLXdpZGdldC9sYXN0LWVkaXRlZC1hbmQtY3JlYXRlZC5jb21wb25lbnQnO1xuaW1wb3J0IHtJZnJhbWVXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9pZnJhbWUtd2lkZ2V0L2lmcmFtZS13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0ludHJheVdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2luZm8taW50cmF5LXdpZGdldC9pbmZvLWludHJheS13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7SW5mb0ludHJheVNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbnRyYXktd2lkZ2V0L2luZm8taW50cmF5LXNldHVwL2luZm8taW50cmF5LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge0luZm9JbmJveFdpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2luZm8taW5ib3gtd2lkZ2V0L2luZm8taW5ib3gtd2lkZ2V0LmNvbXBvbmVudCc7XG5pbXBvcnQge0luZm9JbmJveFNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaW5mby1pbmJveC13aWRnZXQvaW5mby1pbmJveC1zZXR1cC9pbmZvLWluYm94LXNldHVwLmNvbXBvbmVudCc7XG5pbXBvcnQge1VudGlsRGVzdHJveSwgdW50aWxEZXN0cm95ZWR9IGZyb20gJ0BuZ25lYXQvdW50aWwtZGVzdHJveSc7XG5pbXBvcnQge0hpdGxpc3RTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2hpdGxpc3Qtd2lkZ2V0L2hpdGxpc3Qtc2V0dXAvaGl0bGlzdC1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtIaXRsaXN0V2lkZ2V0Q29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvaGl0bGlzdC13aWRnZXQvaGl0bGlzdC13aWRnZXQuY29tcG9uZW50JztcbmltcG9ydCB7QWZ0ZXJWaWV3SW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NoYXJ0c1dpZGdldENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtDaGFydHNTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NoYXJ0cy13aWRnZXQvY2hhcnRzLXNldHVwL2NoYXJ0cy1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtDb3VudE9iamVjdHNXaWRnZXRDb21wb25lbnR9IGZyb20gJy4vd2lkZ2V0cy9jb3VudC1vYmplY3RzLXdpZGdldC9jb3VudC1vYmplY3RzLXdpZGdldC5jb21wb25lbnQnO1xuaW1wb3J0IHtDb3VudE9iamVjdHNTZXR1cENvbXBvbmVudH0gZnJvbSAnLi93aWRnZXRzL2NvdW50LW9iamVjdHMtd2lkZ2V0L2NvdW50LW9iamVjdHMtc2V0dXAvY291bnQtb2JqZWN0cy1zZXR1cC5jb21wb25lbnQnO1xuaW1wb3J0IHtMYXN0RWRpdGVkQW5kQ3JlYXRlZFNldHVwQ29tcG9uZW50fSBmcm9tICcuL3dpZGdldHMvbGFzdC1lZGl0ZWQtd2lkZ2V0L2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkLXNldHVwL2xhc3QtZWRpdGVkLWFuZC1jcmVhdGVkLXNldHVwLmNvbXBvbmVudCc7XG5cbkBVbnRpbERlc3Ryb3koKVxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW8tZGFzaGJvYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Rhc2hib2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Rhc2hib2FyZC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgbGlzdEFuaW1hdGlvblxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERhc2hib2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgd29ya3NwYWNlQ29uZmlnOiBXaWRnZXRHcmlkV29ya3NwYWNlQ29uZmlnIHwgdW5kZWZpbmVkO1xuICB3b3Jrc3BhY2VPcHRpb25zOiBXaWRnZXRHcmlkV29ya3NwYWNlT3B0aW9ucyA9IHtcbiAgICBncmlkQ29uZmlnOiB7XG4gICAgICByb3dzOiAzMCxcbiAgICAgIG5ld0l0ZW1XaWR0aDogMixcbiAgICAgIG5ld0l0ZW1IZWlnaHQ6IDVcbiAgICB9XG4gIH07XG4gIGJhY2tncm91bmRJbWFnZTogc3RyaW5nO1xuICBjYXBhYmlsaXRpZXM6IENhcGFiaWxpdGllcztcbiAgc3RvcmVkUXVlcmllczogU3RvcmVkUXVlcnlbXSA9IFtdO1xuICBzZWxlY3RlZFF1ZXJ5OiBTdG9yZWRRdWVyeTtcbiAgcXVpY2tTZWFyY2hSZXN1bHQ6IFF1aWNrU2VhcmNoUmVzdWx0O1xuICB0cmVlID0ge307XG4gIFNUT1JBR0VfS0VZID0gJ2VvLmNsaWVudC5kYXNoYm9hcmQuY3VycmVudFdvcmtzcGFjZSc7XG4gIHRvb2xiYXJWaXNpYmxlOiBib29sZWFuO1xuICB0b29sYmFySWNvblNyYzogc3RyaW5nO1xuICB0b29sYmFySWNvblRvb2x0aXA6IHN0cmluZztcbiAgcGVuZGluZ1Rhc2tJRCA9ICcnO1xuXG4gIHVzZXI6IEVvVXNlcjtcbiAgQFZpZXdDaGlsZCgncXVpY2tTZWFyY2gnKSBxdWlja1NlYXJjaEVsOiBRdWlja1NlYXJjaENvbXBvbmVudDtcblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5dXAnLCBbJyRldmVudCddKVxuICBvbktleShldmVudCkge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gMjcpIHtcbiAgICAgIHRoaXMuc2VsZWN0U3RvcmVkUXVlcnkobnVsbCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICBwcml2YXRlIHdpZGdldEdyaWRSZWdpc3RyeTogV2lkZ2V0R3JpZFJlZ2lzdHJ5LFxuICAgIHByaXZhdGUgdGl0bGVTZXJ2aWNlOiBQYWdlVGl0bGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWcsXG4gICAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZSxcbiAgICBwdWJsaWMgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgY2FwYWJpbGl0eVNlcnZpY2U6IENhcGFiaWxpdGllc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBzdG9yZWRRdWVyaWVzU2VydmljZTogU3RvcmVkUXVlcmllc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwZW5kaW5nQ2hhbmdlczogUGVuZGluZ0NoYW5nZXNTZXJ2aWNlKSB7XG4gICAgdGhpcy50aXRsZVNlcnZpY2Uuc2V0RGVmYXVsdFRpdGxlKCk7XG4gICAgdGhpcy5iYWNrZ3JvdW5kSW1hZ2UgPSBgdXJsKCR7dGhpcy5jb25maWcuZ2V0RGFzaGJvYXJkQmFja2dyb3VuZEltYWdlKCl9KWA7XG4gICAgdGhpcy5zZXRXaWRnZXRHcmlkTGFiZWxzKCk7XG4gICAgdGhpcy50cmFuc2xhdGUub25MYW5nQ2hhbmdlLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgdGhpcy5zZXRXaWRnZXRHcmlkTGFiZWxzKCk7XG4gICAgfSk7XG4gIH1cblxuICBvbldvcmtzcGFjZXNDb25maWdDaGFuZ2UoYzogV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZykge1xuICAgIHRoaXMuc2F2ZVdvcmtzcGFjZXNDb25maWcoYyk7XG4gIH1cblxuICBwcml2YXRlIHNldFdpZGdldEdyaWRMYWJlbHMoKSB7XG4gICAgdGhpcy53aWRnZXRHcmlkUmVnaXN0cnkudXBkYXRlUmVnaXN0ZXJlZFdpZGdldHNMYWJlbHMoe1xuICAgICAgXCJ5dXYud2lkZ2V0LnBpY3R1cmVcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5waWN0dXJlLmxhYmVsJyksXG4gICAgICBcInl1di53aWRnZXQudG9kb1wiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC53aWRnZXRUb2RvSGVhZGxpbmVMYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0Lkxhc3RFZGl0ZWRcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5sYXN0RWRpdGVkT3JMYXN0Q3JlYXRlZC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmlmcmFtZVwiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmlmcmFtZS5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmluZm9JbnRyYXlcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5pbmZvSW50cmF5LmxhYmVsJyksXG4gICAgICBcInl1di53aWRnZXQuaW5mb0luYm94XCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaW5mb0luYm94LmxhYmVsJyksXG4gICAgICBcInl1di53aWRnZXQucXVpY2tTZWFyY2hcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5xdWlja3NlYXJjaC5sYWJlbCcpLFxuICAgICAgXCJ5dXYud2lkZ2V0LmhpdGxpc3RcIjogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5oaXRsaXN0LmxhYmVsJyksXG4gICAgICBcInl1di53aWRnZXQuY291bnRPYmplY3RzXCI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuY291bnRPYmplY3QubGFiZWwnKSxcbiAgICAgIFwieXV2LndpZGdldC5jaGFydFwiOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmNoYXJ0LmxhYmVsJyksXG4gICAgfSk7XG5cbiAgICB0aGlzLndpZGdldEdyaWRSZWdpc3RyeS51cGRhdGVXaWRnZXRHcmlkTGFiZWxzKHtcbiAgICAgIHdpZGdldFBpY2tlclRpdGxlOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC53aWRnZXRQaWNrZXJUaXRsZScpLFxuICAgICAgYWRkV29ya3NwYWNlVG9vbHRpcDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQuYWRkV29ya3NwYWNlJyksXG4gICAgICBub29wV2lkZ2V0TGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLm5vb3BXaWRnZXRMYWJlbCcpLFxuICAgICAgd29ya3NwYWNlc0VtcHR5TWVzc2FnZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud29ya3NwYWNlc0VtcHR5TWVzc2FnZScpLFxuICAgICAgbmV3V29ya3NwYWNlRGVmYXVsdExhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5uZXdXb3Jrc3BhY2VEZWZhdWx0TGFiZWwnKSxcbiAgICAgIHdvcmtzcGFjZUxhYmVsUGxhY2Vob2xkZXI6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLm5ld1dvcmtzcGFjZURlZmF1bHRMYWJlbCcpLFxuICAgICAgd29ya3NwYWNlUmVtb3ZlQ29uZmlybU1lc3NhZ2U6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLndvcmtzcGFjZVJlbW92ZUNvbmZpcm1NZXNzYWdlJyksXG4gICAgICB3b3Jrc3BhY2VFZGl0RG9uZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud29ya3NwYWNlRWRpdERvbmUnKSxcbiAgICAgIHdvcmtzcGFjZUVkaXRDYW5jZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLmNhbmNlbCcpLFxuICAgICAgc2F2ZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQuc2F2ZScpLFxuICAgICAgY2FuY2VsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC5jYW5jZWwnKSxcbiAgICAgIGNvbmZpcm06IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXRHcmlkLmNvbmZpcm0nKSxcbiAgICAgIHdpZGdldFRvZG9IZWFkbGluZUxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC53aWRnZXRUb2RvSGVhZGxpbmVMYWJlbCcpLFxuICAgICAgd2lkZ2V0VG9kb1Rhc2tUaXRsZUxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0R3JpZC53aWRnZXRUaXRsZUxhYmVsJylcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVnaXN0ZXJXaWRnZXRzKCkge1xuXG4gICAgdGhpcy53aWRnZXRHcmlkUmVnaXN0cnkucmVnaXN0ZXJHcmlkV2lkZ2V0cyhbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LnBpY3R1cmUnLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldC5waWN0dXJlLmxhYmVsJyksXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBQaWN0dXJlV2lkZ2V0U2V0dXBDb21wb25lbnQsXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogUGljdHVyZVdpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LnRvZG8nLFxuICAgICAgICBsYWJlbDogdGhpcy50cmFuc2xhdGUuaW5zdGFudCgnZW8ud29ya3NwYWNlLndpZGdldEdyaWQud2lkZ2V0VG9kb0hlYWRsaW5lTGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IFRvZG9XaWRnZXRTZXR1cENvbXBvbmVudCxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBUb2RvV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuTGFzdEVkaXRlZCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0Lmxhc3RFZGl0ZWRPckxhc3RDcmVhdGVkLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogTGFzdEVkaXRlZEFuZENyZWF0ZWRDb21wb25lbnQsXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBMYXN0RWRpdGVkQW5kQ3JlYXRlZFNldHVwQ29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuaWZyYW1lJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaWZyYW1lLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogSWZyYW1lV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgICBzZXR1cENvbXBvbmVudDogSWZyYW1lU2V0dXBDb21wb25lbnQsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5pbmZvSW50cmF5JyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuaW5mb0ludHJheS5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IEluZm9JbnRyYXlXaWRnZXRDb21wb25lbnQsXG4gICAgICAgIHNldHVwQ29tcG9uZW50OiBJbmZvSW50cmF5U2V0dXBDb21wb25lbnRcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmluZm9JbmJveCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmluZm9JbmJveC5sYWJlbCcpLFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IEluZm9JbmJveFdpZGdldENvbXBvbmVudCxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IEluZm9JbmJveFNldHVwQ29tcG9uZW50XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAneXV2LndpZGdldC5xdWlja1NlYXJjaCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LnF1aWNrc2VhcmNoLmxhYmVsJyksXG4gICAgICAgIHdpZGdldENvbXBvbmVudDogU2VhcmNoV2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuaGl0bGlzdCcsXG4gICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KCdlby53b3Jrc3BhY2Uud2lkZ2V0LmhpdGxpc3QubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IEhpdGxpc3RTZXR1cENvbXBvbmVudCxcbiAgICAgICAgd2lkZ2V0Q29tcG9uZW50OiBIaXRsaXN0V2lkZ2V0Q29tcG9uZW50LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3l1di53aWRnZXQuY291bnRPYmplY3RzJyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuY291bnRPYmplY3QubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IENvdW50T2JqZWN0c1NldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IENvdW50T2JqZWN0c1dpZGdldENvbXBvbmVudCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICd5dXYud2lkZ2V0LmNoYXJ0JyxcbiAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ2VvLndvcmtzcGFjZS53aWRnZXQuY2hhcnQubGFiZWwnKSxcbiAgICAgICAgc2V0dXBDb21wb25lbnQ6IENoYXJ0c1NldHVwQ29tcG9uZW50LFxuICAgICAgICB3aWRnZXRDb21wb25lbnQ6IENoYXJ0c1dpZGdldENvbXBvbmVudCxcbiAgICAgIH1cbiAgICBdLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnbGFiZWwnKSkpO1xuICB9XG5cbiAgc2VsZWN0U3RvcmVkUXVlcnkocTogU3RvcmVkUXVlcnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkUXVlcnkgPSBxO1xuICB9XG5cbiAgLy8gdXNlciBjaGFuZ2VkIGlucHV0IG9mIHF1aWNrU2VhcmNoIGNvbXBvbmVudFxuICBvblF1aWNrU2VhcmNoSW5wdXRDaGFuZ2UodGVybSkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSBudWxsO1xuICB9XG5cbiAgLy8gcXVpY2tTZWFyY2ggY29tcG9uZW50IGlzIHJldHVybmluZyByZXN1bHRzXG4gIG9uUXVpY2tTZWFyY2hSZXN1bHQocmVzdWx0OiBRdWlja1NlYXJjaFJlc3VsdCkge1xuICAgIHRoaXMucXVpY2tTZWFyY2hSZXN1bHQgPSByZXN1bHQ7XG4gICAgT2JqZWN0LmtleXModGhpcy5xdWlja1NlYXJjaFJlc3VsdC5ncm91cHMpLm1hcChrZXkgPT4gKHRoaXMudHJlZVtrZXldID0gdGhpcy5nZXRUcmVlTm9kZXMoa2V5KSkpO1xuICB9XG5cbiAgb25TdG9yZWRRdWVyeUxvYWRlZCgpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt7b3V0bGV0czoge21vZGFsOiAnc2VhcmNoJ319XSk7XG4gIH1cblxuICBvblN0b3JlZFF1ZXJ5RXhlY3V0ZShldnQpIHtcbiAgICB0aGlzLnNlbGVjdFN0b3JlZFF1ZXJ5KG51bGwpO1xuICAgIGNvbnN0IHVyaVBhcmFtID0gZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KGV2dC5xdWVyeUpzb24pKTtcbiAgICBjb25zdCB1cmlQYXJhbVF1ZXJ5OiBOYXZpZ2F0aW9uRXh0cmFzID0ge3F1ZXJ5UGFyYW1zOiB7J3F1ZXJ5JzogdXJpUGFyYW19fTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9yZXN1bHQnXSwgdXJpUGFyYW1RdWVyeSk7XG4gIH1cbiAgZ2V0VHJlZU5vZGVzKGtleSk6IFRyZWVOb2RlW10ge1xuICAgIHJldHVybiB0aGlzLnF1aWNrU2VhcmNoUmVzdWx0Lmdyb3Vwc1trZXldLm1hcChncm91cCA9PiAoe1xuICAgICAgaWQ6IGdyb3VwLmRhdGEuaWQsXG4gICAgICBuYW1lOiBncm91cC5sYWJlbCxcbiAgICAgIHNlbGVjdGFibGU6IHRydWUsXG4gICAgICBkYXRhOiBncm91cC5kYXRhLFxuICAgICAgYmFkZ2VzOiBbe3ZhbHVlOiBncm91cC5jb3VudH1dXG4gICAgfSkpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5sb2FkV29ya3NwYWNlc0NvbmZpZygpO1xuICAgIHRoaXMucmVnaXN0ZXJXaWRnZXRzKCk7XG4gICAgdGhpcy5jYXBhYmlsaXRpZXMgPSB0aGlzLmNhcGFiaWxpdHlTZXJ2aWNlLmdldENhcGFiaWxpdGllcygpO1xuICAgIGlmICh0aGlzLmNhcGFiaWxpdGllcy5zdG9yZWRxdWVyaWVzKSB7XG4gICAgICB0aGlzLnN0b3JlZFF1ZXJpZXNTZXJ2aWNlLmdldFN0b3JlZFF1ZXJpZXMkKClcbiAgICAgICAgLnBpcGUodW50aWxEZXN0cm95ZWQodGhpcykpXG4gICAgICAgIC5zdWJzY3JpYmUocXVlcmllc1N1YnNjcmlwdGlvbiA9PiB0aGlzLnN0b3JlZFF1ZXJpZXMgPSBxdWVyaWVzU3Vic2NyaXB0aW9uLnF1ZXJpZXMuZmlsdGVyKHEgPT4gcS5mYXZvcml0ZSkuc29ydChVdGlscy5zb3J0VmFsdWVzKCduYW1lJykpKTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMudG9vbGJhclZpc2libGUgPSB0aGlzLnVzZXJTZXJ2aWNlLmdldEN1cnJlbnRVc2VyKCkudXNlclNldHRpbmdzLnRvb2xiYXJWaXNpYmlsaXR5O1xuICAgICAgY29uc3QgdG9vbGJhciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy50b29sYmFyJykgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICBpZiAodGhpcy50b29sYmFyVmlzaWJsZSA9PT0gZmFsc2UpIHtcbiAgICAgICAgdGhpcy5oaWRlVG9vbGJhcih0b29sYmFyKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2hvd1Rvb2xiYXIodG9vbGJhcik7XG4gICAgICB9XG4gICAgICBjb25zdCBzaG93RGFzaGJvYXJkQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2Rhc2hib2FyZEJ1dHRvbicpO1xuICAgICAgc2hvd0Rhc2hib2FyZEJ1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgdGhpcy5oaWRlT3JTaG93T25DbGljayh0b29sYmFyKTtcbiAgICAgIH0pO1xuICAgIH0sIDIwMCk7XG5cbiAgfVxuXG4gIHByaXZhdGUgaGlkZVRvb2xiYXIodG9vbGJhcjogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLnRvb2xiYXJJY29uU3JjID0gJ2Fzc2V0cy9fZGVmYXVsdC9zdmcvaWNfYXJyb3dfdXAuc3ZnJztcbiAgICB0aGlzLnRvb2xiYXJJY29uVG9vbHRpcCA9ICdlby5kYXNoYm9hcmQuYnV0dG9uLnNob3cuZm9vdGVyLnRvb2x0aXAnO1xuICAgIHRvb2xiYXIuc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICB0aGlzLnRvb2xiYXJWaXNpYmxlID0gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIHNob3dUb29sYmFyKHRvb2xiYXI6IEhUTUxFbGVtZW50KSB7XG4gICAgdGhpcy50b29sYmFySWNvblNyYyA9ICdhc3NldHMvX2RlZmF1bHQvc3ZnL2ljX2Fycm93X2Rvd24uc3ZnJztcbiAgICB0aGlzLnRvb2xiYXJJY29uVG9vbHRpcCA9ICdlby5kYXNoYm9hcmQuYnV0dG9uLmhpZGUuZm9vdGVyLnRvb2x0aXAnO1xuICAgIHRvb2xiYXIuc3R5bGUuZGlzcGxheSA9ICdmbGV4JztcbiAgICB0aGlzLnRvb2xiYXJWaXNpYmxlID0gdHJ1ZTtcbiAgfVxuXG4gIHByaXZhdGUgaGlkZU9yU2hvd09uQ2xpY2sodG9vbGJhcjogSFRNTEVsZW1lbnQpIHtcbiAgICBpZiAodGhpcy50b29sYmFyVmlzaWJsZSkge1xuICAgICAgdGhpcy5oaWRlVG9vbGJhcih0b29sYmFyKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2Uuc2F2ZVRvb2xiYXJTdGF0ZSh0aGlzLnRvb2xiYXJWaXNpYmxlKS5zdWJzY3JpYmUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93VG9vbGJhcih0b29sYmFyKTtcbiAgICAgIHRoaXMudXNlclNlcnZpY2Uuc2F2ZVRvb2xiYXJTdGF0ZSh0aGlzLnRvb2xiYXJWaXNpYmxlKS5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGxvYWRXb3Jrc3BhY2VzQ29uZmlnKCkge1xuICAgIGlmICghdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpLnVzZXJTZXR0aW5ncy53b3Jrc3BhY2VPcHRpb25zIHx8IHRoaXMudXNlclNlcnZpY2UuZ2V0Q3VycmVudFVzZXIoKS51c2VyU2V0dGluZ3Mud29ya3NwYWNlT3B0aW9ucy53b3Jrc3BhY2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5odHRwLmdldCgnYXNzZXRzL2Rhc2hib2FyZC5qc29uJykuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlczogV2lkZ2V0R3JpZFdvcmtzcGFjZUNvbmZpZykgPT4ge1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnID0gcmVzO1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0ubGFiZWwgPSB0aGlzLnRyYW5zbGF0ZS5pbnN0YW50KHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0ubGFiZWwpO1xuICAgICAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXNbMF0uZ3JpZC5mb3JFYWNoKGdyaWQgPT4ge1xuICAgICAgICAgICAgaWYgKGdyaWQud2lkZ2V0Q29uZmlnKSB7XG4gICAgICAgICAgICAgIGdyaWQud2lkZ2V0Q29uZmlnLnRpdGxlID0gdGhpcy50cmFuc2xhdGUuaW5zdGFudChncmlkLndpZGdldENvbmZpZy50aXRsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoKSA9PiB7XG4gICAgICAgICAgLy8gbm8gY29uZmlnIGZpbGUgZm91bmRcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud29ya3NwYWNlQ29uZmlnID0gdGhpcy51c2VyU2VydmljZS5nZXRDdXJyZW50VXNlcigpLnVzZXJTZXR0aW5ncy53b3Jrc3BhY2VPcHRpb25zO1xuICAgICAgY29uc3QgY3VycmVudFdvcmtzcGFjZSA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0SXRlbSh0aGlzLlNUT1JBR0VfS0VZKTtcbiAgICAgIGlmIChjdXJyZW50V29ya3NwYWNlICYmIHRoaXMud29ya3NwYWNlQ29uZmlnLndvcmtzcGFjZXMubWFwKCh3KSA9PiB3LmlkKS5pbmNsdWRlcyhjdXJyZW50V29ya3NwYWNlKSkge1xuICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy5jdXJyZW50V29ya3NwYWNlID0gY3VycmVudFdvcmtzcGFjZTtcbiAgICAgIH0gZWxzZSBpZiAoISF0aGlzLndvcmtzcGFjZUNvbmZpZy53b3Jrc3BhY2VzLmxlbmd0aCkge1xuICAgICAgICB0aGlzLndvcmtzcGFjZUNvbmZpZy5jdXJyZW50V29ya3NwYWNlID0gdGhpcy53b3Jrc3BhY2VDb25maWcud29ya3NwYWNlc1swXS5pZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNhdmVXb3Jrc3BhY2VzQ29uZmlnKGM6IFdpZGdldEdyaWRXb3Jrc3BhY2VDb25maWcpIHtcbiAgICAvLyB0aGUgc2VsZWN0ZWQgd29ya3NwYWNlIGlzIHNhdmVkIG9uIHRoZSBkZXZpY2Ugd2hpbGUgdGhlIHdvcmtzcGFjZXMgdGhlbXNlbHZlcyBhcmUgc3RvcmVkIG9uIHRoZSB1c2VyIHNlcnZpY2VcbiAgICBpZiAoYykge1xuICAgICAgdGhpcy51c2VyU2VydmljZS5zYXZlQ2hhbmdlV29ya3NwYWNlKGMpLnBpcGUoc3dpdGNoTWFwKGFzeW5jICgpID0+IHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSh0aGlzLlNUT1JBR0VfS0VZLCBjLmN1cnJlbnRXb3Jrc3BhY2UpKSkuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgb25Xb3Jrc3BhY2VFZGl0TW9kZShvbkVkaXQ6IGJvb2xlYW4pIHtcbiAgICBpZiAob25FZGl0KSB7XG4gICAgICB0aGlzLnBlbmRpbmdUYXNrSUQgPSB0aGlzLnBlbmRpbmdDaGFuZ2VzLnN0YXJ0VGFzaygpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBlbmRpbmdDaGFuZ2VzLmZpbmlzaFRhc2sodGhpcy5wZW5kaW5nVGFza0lEKVxuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPGRpdiBjbGFzcz1cImZhZGVcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImRhc2hib2FyZFwiIFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cImJhY2tncm91bmRJbWFnZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJmb290ZXJCdXR0b25cIiBlb1J0bEF3YXJlPVwiZnVsbFwiPlxuICAgICAgPGVvLWljb24gaWQ9XCJkYXNoYm9hcmRCdXR0b25cIiBbaWNvblNyY109XCJ0b29sYmFySWNvblNyY1wiIFtpY29uVGl0bGVdPVwidG9vbGJhckljb25Ub29sdGlwIHwgdHJhbnNsYXRlXCI+PC9lby1pY29uPlxuICAgIDwvZGl2PlxuICAgIDx5dXYtd2lkZ2V0LWdyaWQtd29ya3NwYWNlcyAqbmdJZj1cIndvcmtzcGFjZUNvbmZpZ1wiXG4gICAgW3dvcmtzcGFjZUxhYmVsTWF4TGVuZ3RoXT1cIjUwXCJcbiAgICBbd29ya3NwYWNlQ29uZmlnXT1cIndvcmtzcGFjZUNvbmZpZ1wiXG4gICAgICAoY29uZmlnQ2hhbmdlKT1cIm9uV29ya3NwYWNlc0NvbmZpZ0NoYW5nZSgkZXZlbnQpXCIgKGVkaXRNb2RlQ2hhbmdlKT1cIm9uV29ya3NwYWNlRWRpdE1vZGUoJGV2ZW50KVwiIFtvcHRpb25zXT1cIndvcmtzcGFjZU9wdGlvbnNcIj5cbiAgICA8L3l1di13aWRnZXQtZ3JpZC13b3Jrc3BhY2VzPlxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19