@igo2/integration 16.0.0-rc.1 → 16.0.0-rc.3

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 (111) hide show
  1. package/esm2022/lib/about/about-tool/about-tool.component.mjs +20 -16
  2. package/esm2022/lib/about/about.module.mjs +4 -4
  3. package/esm2022/lib/analytics/analytics-listener.service.mjs +4 -4
  4. package/esm2022/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.mjs +6 -6
  5. package/esm2022/lib/catalog/catalog-browser-tool/catalog-browser-tool.module.mjs +2 -2
  6. package/esm2022/lib/catalog/catalog-library-tool/catalog-library-tool.component.mjs +5 -5
  7. package/esm2022/lib/catalog/catalog-library-tool/catalog-library-tool.module.mjs +2 -2
  8. package/esm2022/lib/catalog/catalog.module.mjs +2 -2
  9. package/esm2022/lib/catalog/catalog.state.mjs +1 -1
  10. package/esm2022/lib/context/context-editor-tool/context-editor-tool.component.mjs +1 -1
  11. package/esm2022/lib/context/context-manager-tool/context-manager-tool.component.mjs +3 -3
  12. package/esm2022/lib/context/context-share-tool/context-share-tool.component.mjs +3 -3
  13. package/esm2022/lib/context/context.module.mjs +2 -2
  14. package/esm2022/lib/context/context.state.mjs +3 -3
  15. package/esm2022/lib/directions/directions-tool/directions-tool.component.mjs +2 -2
  16. package/esm2022/lib/directions/directions.module.mjs +2 -2
  17. package/esm2022/lib/directions/directions.state.mjs +2 -2
  18. package/esm2022/lib/draw/draw.module.mjs +1 -1
  19. package/esm2022/lib/draw/draw.state.mjs +1 -1
  20. package/esm2022/lib/draw/drawing-tool/drawing-tool.component.mjs +3 -3
  21. package/esm2022/lib/draw/drawing-tool/drawing-tool.module.mjs +2 -2
  22. package/esm2022/lib/draw/index.mjs +1 -1
  23. package/esm2022/lib/environment/environment.interface.mjs +2 -0
  24. package/esm2022/lib/environment/index.mjs +2 -0
  25. package/esm2022/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.animation.mjs +2 -2
  26. package/esm2022/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.mjs +2 -2
  27. package/esm2022/lib/filter/active-time-filter-tool/active-time-filter-tool.animation.mjs +2 -2
  28. package/esm2022/lib/filter/active-time-filter-tool/active-time-filter-tool.component.mjs +2 -2
  29. package/esm2022/lib/filter/filter.module.mjs +5 -5
  30. package/esm2022/lib/filter/ogc-filter-tool/ogc-filter-tool.component.mjs +2 -2
  31. package/esm2022/lib/filter/spatial-filter-tool/spatial-filter-tool.component.mjs +9 -9
  32. package/esm2022/lib/import-export/import-export-tool/import-export-tool.component.mjs +5 -5
  33. package/esm2022/lib/import-export/import-export.module.mjs +5 -5
  34. package/esm2022/lib/import-export/import-export.state.mjs +1 -1
  35. package/esm2022/lib/integration.module.mjs +5 -5
  36. package/esm2022/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.mjs +32 -17
  37. package/esm2022/lib/map/advanced-map-tool/advanced-map-tool.component.mjs +2 -2
  38. package/esm2022/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.mjs +3 -3
  39. package/esm2022/lib/map/layer-list-tool.state.mjs +1 -1
  40. package/esm2022/lib/map/map-details-tool/map-details-tool.component.mjs +5 -5
  41. package/esm2022/lib/map/map-legend/map-legend-tool.component.mjs +5 -5
  42. package/esm2022/lib/map/map-proximity-tool/map-proximity-tool.component.mjs +3 -3
  43. package/esm2022/lib/map/map-proximity.state.mjs +8 -8
  44. package/esm2022/lib/map/map-tool/map-tool.component.mjs +4 -4
  45. package/esm2022/lib/map/map-tools/map-tools.component.mjs +8 -8
  46. package/esm2022/lib/map/map.module.mjs +22 -22
  47. package/esm2022/lib/map/map.state.mjs +2 -2
  48. package/esm2022/lib/measure/measure.module.mjs +1 -1
  49. package/esm2022/lib/measure/measure.state.mjs +1 -1
  50. package/esm2022/lib/measure/measurer-tool/measurer-tool.component.mjs +2 -2
  51. package/esm2022/lib/measure/measurer-tool/measurer-tool.module.mjs +2 -2
  52. package/esm2022/lib/print/print.module.mjs +2 -2
  53. package/esm2022/lib/search/query.state.mjs +1 -1
  54. package/esm2022/lib/search/search-bar/search-bar-binding.directive.mjs +2 -2
  55. package/esm2022/lib/search/search-bar/search-bar.module.mjs +1 -1
  56. package/esm2022/lib/search/search-results-tool/search-results-tool.component.mjs +12 -12
  57. package/esm2022/lib/search/search-results-tool/search-results-tool.module.mjs +5 -5
  58. package/esm2022/lib/search/search.module.mjs +1 -1
  59. package/esm2022/lib/search/search.state.mjs +3 -3
  60. package/esm2022/lib/tool/tool.state.mjs +1 -1
  61. package/esm2022/lib/workspace/shared/edition-actions.service.mjs +5 -5
  62. package/esm2022/lib/workspace/shared/feature-actions.service.mjs +4 -4
  63. package/esm2022/lib/workspace/shared/index.mjs +1 -1
  64. package/esm2022/lib/workspace/shared/wfs-actions.service.mjs +5 -5
  65. package/esm2022/lib/workspace/shared/workspace.utils.mjs +2 -2
  66. package/esm2022/lib/workspace/workspace-button/workspace-button.component.mjs +4 -4
  67. package/esm2022/lib/workspace/workspace.module.mjs +4 -4
  68. package/esm2022/lib/workspace/workspace.state.mjs +5 -5
  69. package/esm2022/public_api.mjs +2 -1
  70. package/fesm2022/igo2-integration.mjs +4687 -4668
  71. package/fesm2022/igo2-integration.mjs.map +1 -1
  72. package/lib/about/about-tool/about-tool.component.d.ts +5 -4
  73. package/lib/analytics/analytics-listener.service.d.ts +2 -2
  74. package/lib/catalog/catalog-browser-tool/catalog-browser-tool.component.d.ts +4 -4
  75. package/lib/catalog/catalog-library-tool/catalog-library-tool.component.d.ts +1 -1
  76. package/lib/context/context-manager-tool/context-manager-tool.component.d.ts +2 -2
  77. package/lib/context/context-share-tool/context-share-tool.component.d.ts +1 -1
  78. package/lib/context/context.state.d.ts +2 -2
  79. package/lib/directions/directions-tool/directions-tool.component.d.ts +1 -1
  80. package/lib/directions/directions.state.d.ts +1 -1
  81. package/lib/draw/drawing-tool/drawing-tool.component.d.ts +1 -1
  82. package/lib/environment/environment.interface.d.ts +27 -0
  83. package/lib/environment/index.d.ts +1 -0
  84. package/lib/filter/active-ogc-filter-tool/active-ogc-filter-tool.component.d.ts +1 -1
  85. package/lib/filter/active-time-filter-tool/active-time-filter-tool.component.d.ts +1 -1
  86. package/lib/filter/spatial-filter-tool/spatial-filter-tool.component.d.ts +4 -4
  87. package/lib/import-export/import-export-tool/import-export-tool.component.d.ts +3 -3
  88. package/lib/import-export/import-export.state.d.ts +1 -1
  89. package/lib/map/advanced-map-tool/advanced-coordinates/advanced-coordinates.component.d.ts +3 -3
  90. package/lib/map/advanced-map-tool/advanced-swipe/advanced-swipe.component.d.ts +2 -2
  91. package/lib/map/layer-list-tool.state.d.ts +1 -1
  92. package/lib/map/map-details-tool/map-details-tool.component.d.ts +3 -3
  93. package/lib/map/map-legend/map-legend-tool.component.d.ts +3 -3
  94. package/lib/map/map-proximity.state.d.ts +2 -2
  95. package/lib/map/map-tool/map-tool.component.d.ts +2 -2
  96. package/lib/map/map-tools/map-tools.component.d.ts +5 -5
  97. package/lib/map/map.state.d.ts +1 -1
  98. package/lib/search/search-bar/search-bar-binding.directive.d.ts +1 -1
  99. package/lib/search/search-results-tool/search-results-tool.component.d.ts +6 -6
  100. package/lib/search/search.state.d.ts +2 -2
  101. package/lib/tool/tool.state.d.ts +1 -1
  102. package/lib/workspace/shared/edition-actions.service.d.ts +3 -3
  103. package/lib/workspace/shared/feature-actions.service.d.ts +3 -3
  104. package/lib/workspace/shared/wfs-actions.service.d.ts +3 -3
  105. package/lib/workspace/shared/workspace.utils.d.ts +4 -4
  106. package/lib/workspace/workspace-button/workspace-button.component.d.ts +2 -2
  107. package/lib/workspace/workspace.state.d.ts +3 -3
  108. package/locale/en.integration.json +126 -126
  109. package/locale/fr.integration.json +126 -126
  110. package/package.json +3 -3
  111. package/public_api.d.ts +1 -0
@@ -1,13 +1,13 @@
1
1
  import { ChangeDetectorRef, Component, Input } from '@angular/core';
2
+ import { UntypedFormBuilder, Validators } from '@angular/forms';
3
+ import { ConfigService, LanguageService, MessageService, StorageScope, StorageService } from '@igo2/core';
2
4
  import { formatScale } from '@igo2/geo';
3
- import { MapState } from '../../map.state';
5
+ import { computeProjectionsConstraints, zoneMtm, zoneUtm } from '@igo2/geo';
4
6
  import { Clipboard } from '@igo2/utils';
5
- import { MessageService, LanguageService, StorageService, StorageScope, ConfigService } from '@igo2/core';
7
+ import * as olproj from 'ol/proj';
6
8
  import { BehaviorSubject, combineLatest } from 'rxjs';
7
- import { UntypedFormBuilder, Validators } from '@angular/forms';
8
9
  import { debounceTime } from 'rxjs/operators';
9
- import { zoneMtm, zoneUtm, computeProjectionsConstraints } from '@igo2/geo';
10
- import * as olproj from 'ol/proj';
10
+ import { MapState } from '../../map.state';
11
11
  import * as i0 from "@angular/core";
12
12
  import * as i1 from "../../map.state";
13
13
  import * as i2 from "@igo2/core";
@@ -135,7 +135,9 @@ export class AdvancedCoordinatesComponent {
135
135
  translateKey: 'wgs84',
136
136
  alias: 'WGS84',
137
137
  code: 'EPSG:4326',
138
- zone: ''
138
+ zone: '',
139
+ def: undefined,
140
+ extent: undefined
139
141
  };
140
142
  this.center = this.storageService.get('centerToggle');
141
143
  this.computeProjections();
@@ -287,7 +289,9 @@ export class AdvancedCoordinatesComponent {
287
289
  translateKey: 'wgs84',
288
290
  alias: 'WGS84',
289
291
  code: 'EPSG:4326',
290
- zone: ''
292
+ zone: '',
293
+ def: undefined,
294
+ extent: undefined
291
295
  });
292
296
  }
293
297
  if (this.projectionsConstraints.nad83) {
@@ -296,7 +300,9 @@ export class AdvancedCoordinatesComponent {
296
300
  translateKey: 'nad83',
297
301
  alias: 'NAD83',
298
302
  code: 'EPSG:4269',
299
- zone: ''
303
+ zone: '',
304
+ def: undefined,
305
+ extent: undefined
300
306
  });
301
307
  }
302
308
  if (this.projectionsConstraints.webMercator) {
@@ -305,7 +311,9 @@ export class AdvancedCoordinatesComponent {
305
311
  translateKey: 'webMercator',
306
312
  alias: 'Web Mercator',
307
313
  code: 'EPSG:3857',
308
- zone: ''
314
+ zone: '',
315
+ def: undefined,
316
+ extent: undefined
309
317
  });
310
318
  }
311
319
  if (this.projectionsConstraints.mtm) {
@@ -319,7 +327,9 @@ export class AdvancedCoordinatesComponent {
319
327
  translateKey: 'mtm',
320
328
  alias: `MTM ${zone}`,
321
329
  code,
322
- zone: `${zone}`
330
+ zone: `${zone}`,
331
+ def: undefined,
332
+ extent: undefined
323
333
  });
324
334
  }
325
335
  else {
@@ -335,14 +345,17 @@ export class AdvancedCoordinatesComponent {
335
345
  translateKey: 'utm',
336
346
  alias: `UTM ${zone}`,
337
347
  code,
338
- zone: `${zone}`
348
+ zone: `${zone}`,
349
+ def: undefined,
350
+ extent: undefined
339
351
  });
340
352
  }
341
353
  let configProjection = [];
342
354
  if (this.projectionsConstraints.projFromConfig) {
343
- configProjection = this.config.getConfig('projections') || [];
355
+ configProjection = (this.config.getConfig('projections') ||
356
+ []);
344
357
  }
345
- this.projections$.next(projections.concat(configProjection));
358
+ this.projections$.next(configProjection.concat(projections));
346
359
  }
347
360
  /**
348
361
  * Push the MTM in the array of systeme of coordinates
@@ -357,7 +370,9 @@ export class AdvancedCoordinatesComponent {
357
370
  translateKey: 'mtm',
358
371
  alias: `MTM ${zone}`,
359
372
  code,
360
- zone: `${zone}`
373
+ zone: `${zone}`,
374
+ def: undefined,
375
+ extent: undefined
361
376
  });
362
377
  }
363
378
  }
@@ -420,7 +435,7 @@ export class AdvancedCoordinatesComponent {
420
435
  * @param coordinates An array of numbers, longitude and latitude
421
436
  */
422
437
  checkLambert(coordinates) {
423
- const lambertProjections = this.config.getConfig('projections');
438
+ const lambertProjections = this.config.getConfig('projections') || [];
424
439
  lambertProjections.forEach((projection) => {
425
440
  let modifiedProj = this.projections$.value;
426
441
  const extent = projection.extent;
@@ -517,8 +532,8 @@ export class AdvancedCoordinatesComponent {
517
532
  }
518
533
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdvancedCoordinatesComponent, [{
519
534
  type: Component,
520
- args: [{ selector: 'igo-advanced-coordinates', template: "<div class=\"advanced-coordinates__coordinates-container\">\n <div class=\"advanced-coordinates__coordinates-container__inner\">\n <mat-form-field *ngIf=\"units; else elseBlock\" class=\"coordinates\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon' | translate\n }}</mat-label>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\n | translate\n \"\n [value]=\"coordinates[0]\"\n ></textarea>\n </mat-form-field>\n <ng-template #elseBlock>\n <mat-form-field class=\"coordinates\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.est'\n | translate\n \"\n [value]=\"coordinates[0]\"\n ></textarea>\n </mat-form-field>\n </ng-template>\n\n <mat-form-field *ngIf=\"units; else elseBlock2\" class=\"coordinates2\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat' | translate\n }}</mat-label>\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\n | translate\n \"\n [value]=\"coordinates[1]\"\n ></textarea>\n </mat-form-field>\n <ng-template #elseBlock2>\n <mat-form-field class=\"coordinates2\">\n <textarea\n #textArea\n matInput\n readonly\n rows=\"1\"\n [placeholder]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.nord'\n | translate\n \"\n [value]=\"coordinates[1]\"\n ></textarea>\n </mat-form-field>\n </ng-template>\n </div>\n\n <button\n mat-icon-button\n [attr.aria-label]=\"\n 'igo.integration.advanced-map-tool.advanced-coordinates.copy' | translate\n \"\n class=\"igo-form-button-group advanced-coordinates__copy-coordinates\"\n (click)=\"copyTextToClipboard()\"\n >\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\n </button>\n</div>\n<form class=\"igo-form advanced-coordinates__form\" [formGroup]=\"form\">\n <mat-form-field class=\"igo-input-container\">\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem'\n | translate\n }}</mat-label>\n <mat-select [(value)]=\"inputProj\">\n <mat-option\n matTooltipShowDelay=\"500\"\n *ngFor=\"let projection of projections$ | async\"\n [value]=\"projection\"\n (click)=\"$event.stopPropagation()\"\n >\n {{ projection.translatedValue || projection.alias }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n <mat-slide-toggle\n class=\"center-toggle mat-typography\"\n [checked]=\"center\"\n [labelPosition]=\"'before'\"\n (change)=\"displayCenter($event.checked)\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.center'\n | translate\n }}\n </mat-slide-toggle>\n</form>\n\n<p class=\"igo-zoom mat-typography\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate\n }}\n {{ map.viewController.getZoom() }}\n</p>\n<p class=\"igo-zoom mat-typography\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate\n }}\n {{ formattedScale$ | async }}\n</p>\n<p class=\"igo-zoom mat-typography\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.resolution'\n | translate\n }}\n {{ map.viewController.getResolution() | number: '1.0-0' }}\n</p>\n", styles: ["textarea{resize:none}mat-form-field{padding:10px 15px}mat-form-field.coordinates2{padding:0 10px 0 3px}mat-form-field.igo-input-container{width:100%;padding:0 15px}.igo-form-button-group{padding:0 10px;margin:0 10px}.igo-zoom{padding:0 15px}.advanced-coordinates__coordinates-container{display:flex;flex-direction:row;align-items:center}.advanced-coordinates__coordinates-container__inner{flex:1 1 0}.advanced-coordinates__coordinates-container__inner .mat-mdc-form-field{width:50%}.advanced-coordinates__form ::ng-deep .mat-mdc-slide-toggle{padding:10px 15px 35px;width:100%}mat-slide-toggle{width:100%;padding:0 8px}mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}\n"] }]
535
+ args: [{ selector: 'igo-advanced-coordinates', template: "<div class=\"advanced-coordinates__coordinates-container\">\r\n <div class=\"advanced-coordinates__coordinates-container__inner\">\r\n <mat-form-field *ngIf=\"units; else elseBlock\" class=\"coordinates\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon' | translate\r\n }}</mat-label>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lon'\r\n | translate\r\n \"\r\n [value]=\"coordinates[0]\"\r\n ></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock>\r\n <mat-form-field class=\"coordinates\">\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.est'\r\n | translate\r\n \"\r\n [value]=\"coordinates[0]\"\r\n ></textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <mat-form-field *ngIf=\"units; else elseBlock2\" class=\"coordinates2\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat' | translate\r\n }}</mat-label>\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.lat'\r\n | translate\r\n \"\r\n [value]=\"coordinates[1]\"\r\n ></textarea>\r\n </mat-form-field>\r\n <ng-template #elseBlock2>\r\n <mat-form-field class=\"coordinates2\">\r\n <textarea\r\n #textArea\r\n matInput\r\n readonly\r\n rows=\"1\"\r\n [placeholder]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.nord'\r\n | translate\r\n \"\r\n [value]=\"coordinates[1]\"\r\n ></textarea>\r\n </mat-form-field>\r\n </ng-template>\r\n </div>\r\n\r\n <button\r\n mat-icon-button\r\n [attr.aria-label]=\"\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.copy' | translate\r\n \"\r\n class=\"igo-form-button-group advanced-coordinates__copy-coordinates\"\r\n (click)=\"copyTextToClipboard()\"\r\n >\r\n <mat-icon svgIcon=\"content-copy\"></mat-icon>\r\n </button>\r\n</div>\r\n<form class=\"igo-form advanced-coordinates__form\" [formGroup]=\"form\">\r\n <mat-form-field class=\"igo-input-container\">\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordSystem'\r\n | translate\r\n }}</mat-label>\r\n <mat-select [(value)]=\"inputProj\">\r\n <mat-option\r\n matTooltipShowDelay=\"500\"\r\n *ngFor=\"let projection of projections$ | async\"\r\n [value]=\"projection\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n {{ projection.translatedValue || projection.alias }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-slide-toggle\r\n class=\"center-toggle mat-typography\"\r\n [checked]=\"center\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"displayCenter($event.checked)\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.center'\r\n | translate\r\n }}\r\n </mat-slide-toggle>\r\n</form>\r\n\r\n<p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.zoom' | translate\r\n }}\r\n {{ map.viewController.getZoom() }}\r\n</p>\r\n<p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.scale' | translate\r\n }}\r\n {{ formattedScale$ | async }}\r\n</p>\r\n<p class=\"igo-zoom mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.resolution'\r\n | translate\r\n }}\r\n {{ map.viewController.getResolution() | number: '1.0-0' }}\r\n</p>\r\n", styles: ["textarea{resize:none}mat-form-field{padding:10px 15px}mat-form-field.coordinates2{padding:0 10px 0 3px}mat-form-field.igo-input-container{width:100%;padding:0 15px}.igo-form-button-group{padding:0 10px;margin:0 10px}.igo-zoom{padding:0 15px}.advanced-coordinates__coordinates-container{display:flex;flex-direction:row;align-items:center}.advanced-coordinates__coordinates-container__inner{flex:1 1 0}.advanced-coordinates__coordinates-container__inner .mat-mdc-form-field{width:50%}.advanced-coordinates__form ::ng-deep .mat-mdc-slide-toggle{padding:10px 15px 35px;width:100%}mat-slide-toggle{width:100%;padding:0 8px}mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}\n"] }]
521
536
  }], function () { return [{ type: i1.MapState }, { type: i2.LanguageService }, { type: i2.MessageService }, { type: i0.ChangeDetectorRef }, { type: i2.StorageService }, { type: i2.ConfigService }, { type: i3.UntypedFormBuilder }]; }, { projectionsLimitations: [{
522
537
  type: Input
523
538
  }] }); })();
524
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtY29vcmRpbmF0ZXMvYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtY29vcmRpbmF0ZXMvYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBR1QsS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxXQUFXLEVBSVosTUFBTSxXQUFXLENBQUM7QUFDbkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEMsT0FBTyxFQUNMLGNBQWMsRUFDZCxlQUFlLEVBQ2YsY0FBYyxFQUNkLFlBQVksRUFDWixhQUFhLEVBQ2QsTUFBTSxZQUFZLENBQUM7QUFDcEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFDTCxrQkFBa0IsRUFFbEIsVUFBVSxFQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzVFLE9BQU8sS0FBSyxNQUFNLE1BQU0sU0FBUyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7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Rjs7O3VGRHZGYSw0QkFBNEI7Y0FMeEMsU0FBUzsyQkFDRSwwQkFBMEI7Z1BBbUNoQyxzQkFBc0I7a0JBRHpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgSW5wdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBmb3JtYXRTY2FsZSxcbiAgSWdvTWFwLFxuICBJbnB1dFByb2plY3Rpb25zLFxuICBQcm9qZWN0aW9uc0xpbWl0YXRpb25zT3B0aW9uc1xufSBmcm9tICdAaWdvMi9nZW8nO1xuaW1wb3J0IHsgTWFwU3RhdGUgfSBmcm9tICcuLi8uLi9tYXAuc3RhdGUnO1xuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuaW1wb3J0IHtcbiAgTWVzc2FnZVNlcnZpY2UsXG4gIExhbmd1YWdlU2VydmljZSxcbiAgU3RvcmFnZVNlcnZpY2UsXG4gIFN0b3JhZ2VTY29wZSxcbiAgQ29uZmlnU2VydmljZVxufSBmcm9tICdAaWdvMi9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gIFVudHlwZWRGb3JtR3JvdXAsXG4gIFZhbGlkYXRvcnNcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgem9uZU10bSwgem9uZVV0bSwgY29tcHV0ZVByb2plY3Rpb25zQ29uc3RyYWludHMgfSBmcm9tICdAaWdvMi9nZW8nO1xuaW1wb3J0ICogYXMgb2xwcm9qIGZyb20gJ29sL3Byb2onO1xuLyoqXG4gKiBUb29sIHRvIGRpc3BsYXkgdGhlIGNvb3JkaW5hdGVzIGFuZCBhIGN1cnNvciBvZiB0aGUgY2VudGVyIG9mIHRoZSBtYXBcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWFkdmFuY2VkLWNvb3JkaW5hdGVzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FkdmFuY2VkLWNvb3JkaW5hdGVzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBBZHZhbmNlZENvb3JkaW5hdGVzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgZm9ybWF0dGVkU2NhbGUkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpO1xuICBwdWJsaWMgcHJvamVjdGlvbnMkOiBCZWhhdmlvclN1YmplY3Q8SW5wdXRQcm9qZWN0aW9uc1tdPiA9XG4gICAgbmV3IEJlaGF2aW9yU3ViamVjdChbXSk7XG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBwdWJsaWMgY29vcmRpbmF0ZXM6IHN0cmluZ1tdO1xuICBwcml2YXRlIGN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvajogW251bWJlciwgbnVtYmVyXTtcbiAgcHVibGljIGNlbnRlcjogYm9vbGVhbjtcbiAgcHJpdmF0ZSBpbk10bVpvbmU6IGJvb2xlYW4gPSB0cnVlO1xuICBwcml2YXRlIGluTGFtYmVydDIgPSB7IDMyMTk4OiB0cnVlLCAzNzk4OiB0cnVlIH07XG4gIHByaXZhdGUgbWFwU3RhdGUkJDogU3Vic2NyaXB0aW9uO1xuICBwcml2YXRlIF9wcm9qZWN0aW9uc0xpbWl0YXRpb25zOiBQcm9qZWN0aW9uc0xpbWl0YXRpb25zT3B0aW9ucyA9IHt9O1xuICBwcml2YXRlIHByb2plY3Rpb25zQ29uc3RyYWludHM6IFByb2plY3Rpb25zTGltaXRhdGlvbnNPcHRpb25zO1xuICBwcml2YXRlIGRlZmF1bHRQcm9qOiBJbnB1dFByb2plY3Rpb25zO1xuICBwcml2YXRlIGN1cnJlbnRab25lcyA9IHsgdXRtOiB1bmRlZmluZWQsIG10bTogdW5kZWZpbmVkIH07XG4gIHB1YmxpYyB1bml0czogYm9vbGVhbiA9IHRydWU7XG4gIGdldCBtYXAoKTogSWdvTWFwIHtcbiAgICByZXR1cm4gdGhpcy5tYXBTdGF0ZS5tYXA7XG4gIH1cblxuICBnZXQgaW5wdXRQcm9qKCk6IElucHV0UHJvamVjdGlvbnMge1xuICAgIHJldHVybiB0aGlzLmZvcm0uZ2V0KCdpbnB1dFByb2onKS52YWx1ZTtcbiAgfVxuICBzZXQgaW5wdXRQcm9qKHZhbHVlOiBJbnB1dFByb2plY3Rpb25zKSB7XG4gICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoeyBpbnB1dFByb2o6IHZhbHVlIH0pO1xuICB9XG4gIGdldCBwcm9qZWN0aW9uc0xpbWl0YXRpb25zKCk6IFByb2plY3Rpb25zTGltaXRhdGlvbnNPcHRpb25zIHtcbiAgICByZXR1cm4gdGhpcy5fcHJvamVjdGlvbnNMaW1pdGF0aW9ucyB8fCB7fTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHNldCBwcm9qZWN0aW9uc0xpbWl0YXRpb25zKHZhbHVlOiBQcm9qZWN0aW9uc0xpbWl0YXRpb25zT3B0aW9ucykge1xuICAgIHRoaXMuX3Byb2plY3Rpb25zTGltaXRhdGlvbnMgPSB2YWx1ZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBtYXBTdGF0ZTogTWFwU3RhdGUsXG4gICAgcHJpdmF0ZSBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXJcbiAgKSB7XG4gICAgdGhpcy5kZWZhdWx0UHJvaiA9IHtcbiAgICAgIHRyYW5zbGF0ZWRWYWx1ZTogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMud2dzODQnLFxuICAgICAgICB7IGNvZGU6ICdFUFNHOjQzMjYnIH1cbiAgICAgICksXG4gICAgICB0cmFuc2xhdGVLZXk6ICd3Z3M4NCcsXG4gICAgICBhbGlhczogJ1dHUzg0JyxcbiAgICAgIGNvZGU6ICdFUFNHOjQzMjYnLFxuICAgICAgem9uZTogJydcbiAgICB9O1xuICAgIHRoaXMuY2VudGVyID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ2NlbnRlclRvZ2dsZScpIGFzIGJvb2xlYW47XG4gICAgdGhpcy5jb21wdXRlUHJvamVjdGlvbnMoKTtcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiBhIHN0YXRlIG9mIHRoZSBtYXAsIGEgc3RhdGUgb2YgYSBmb3JtLCB1cGRhdGUgdGhlIGNvb3JkaW5hdGVzXG4gICAqL1xuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm1hcFN0YXRlJCQgPSBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMubWFwLnZpZXdDb250cm9sbGVyLnN0YXRlJC5waXBlKGRlYm91bmNlVGltZSg1MCkpLFxuICAgICAgdGhpcy5mb3JtLnZhbHVlQ2hhbmdlc1xuICAgIF0pLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnNldFNjYWxlVmFsdWUodGhpcy5tYXApO1xuICAgICAgdGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2ogPSB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5nZXRDZW50ZXIoXG4gICAgICAgIHRoaXMuZGVmYXVsdFByb2ouY29kZVxuICAgICAgKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRNdG1ab25lID0gem9uZU10bSh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvalswXSk7XG4gICAgICBjb25zdCBjdXJyZW50VXRtWm9uZSA9IHpvbmVVdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xuICAgICAgaWYgKCF0aGlzLmluTXRtWm9uZSAmJiBjdXJyZW50TXRtWm9uZSAhPT0gdGhpcy5jdXJyZW50Wm9uZXMubXRtKSB7XG4gICAgICAgIHRoaXMuYmFjazJxdWViZWMoKTtcbiAgICAgIH1cbiAgICAgIGxldCB6b25lQ2hhbmdlID0gZmFsc2U7XG4gICAgICBpZiAoY3VycmVudE10bVpvbmUgIT09IHRoaXMuY3VycmVudFpvbmVzLm10bSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRab25lcy5tdG0gPSBjdXJyZW50TXRtWm9uZTtcbiAgICAgICAgem9uZUNoYW5nZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAoY3VycmVudFV0bVpvbmUgIT09IHRoaXMuY3VycmVudFpvbmVzLnV0bSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRab25lcy51dG0gPSBjdXJyZW50VXRtWm9uZTtcbiAgICAgICAgem9uZUNoYW5nZSA9IHRydWU7XG4gICAgICB9XG4gICAgICBpZiAoem9uZUNoYW5nZSkge1xuICAgICAgICB0aGlzLnVwZGF0ZVByb2plY3Rpb25zWm9uZUNoYW5nZSgpO1xuICAgICAgfVxuICAgICAgdGhpcy5jaGVja0xhbWJlcnQodGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2opO1xuICAgICAgdGhpcy5jb29yZGluYXRlcyA9IHRoaXMuZ2V0Q29vcmRpbmF0ZXMoKTtcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXQoXG4gICAgICAgICdjdXJyZW50UHJvamVjdGlvbicsXG4gICAgICAgIHRoaXMuaW5wdXRQcm9qLFxuICAgICAgICBTdG9yYWdlU2NvcGUuU0VTU0lPTlxuICAgICAgKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHRlbXBJbnB1dFByb2ogPSB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmdldChcbiAgICAgICdjdXJyZW50UHJvamVjdGlvbidcbiAgICApIGFzIElucHV0UHJvamVjdGlvbnM7XG4gICAgdGhpcy5pbnB1dFByb2ogPSB0aGlzLnByb2plY3Rpb25zJC52YWx1ZVswXTtcbiAgICBpZiAodGVtcElucHV0UHJvaiAhPT0gbnVsbCkge1xuICAgICAgY29uc3QgcG9zID0gdGhpcy5wb3NpdGlvbkluTGlzdCh0ZW1wSW5wdXRQcm9qKTtcbiAgICAgIHRoaXMuaW5wdXRQcm9qID0gdGhpcy5wcm9qZWN0aW9ucyQudmFsdWVbcG9zXTtcbiAgICAgIHRoaXMudXBkYXRlWm9uZU10bVV0bSgpO1xuICAgIH1cbiAgICB0aGlzLm1hcC5tYXBDZW50ZXIkLm5leHQodGhpcy5jZW50ZXIpO1xuICAgIHRoaXMuY29vcmRpbmF0ZXMgPSB0aGlzLmdldENvb3JkaW5hdGVzKCk7XG4gICAgdGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2ogPSB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5nZXRDZW50ZXIoXG4gICAgICB0aGlzLmRlZmF1bHRQcm9qLmNvZGVcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5tYXAubWFwQ2VudGVyJC5uZXh0KGZhbHNlKTtcbiAgICB0aGlzLm1hcFN0YXRlJCQudW5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIHNldFNjYWxlVmFsdWUobWFwOiBJZ29NYXApIHtcbiAgICB0aGlzLmZvcm1hdHRlZFNjYWxlJC5uZXh0KFxuICAgICAgJzogfiAxIC8gJyArIGZvcm1hdFNjYWxlKG1hcC52aWV3Q29udHJvbGxlci5nZXRTY2FsZSgpKVxuICAgICk7XG4gIH1cbiAgLyoqXG4gICAqIENvb3JkaW5hdGVzIG9mIHRoZSBjZW50ZXIgb2YgdGhlIG1hcCBvbiB0aGUgYXBwcm9wcmlhdGUgc3lzdGVtZSBvZiBjb29yZGluYXRlc1xuICAgKiBAcmV0dXJucyBBcnJheSBvZiB0d28gbnVtYmVyc1xuICAgKi9cbiAgZ2V0Q29vcmRpbmF0ZXMoKTogc3RyaW5nW10ge1xuICAgIHRoaXMuY3VycmVudFpvbmVzLm10bSA9IHpvbmVNdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xuICAgIHRoaXMuY3VycmVudFpvbmVzLnV0bSA9IHpvbmVVdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xuICAgIGxldCBjb29yZDtcbiAgICBjb25zdCBjb2RlID0gdGhpcy5pbnB1dFByb2ouY29kZTtcbiAgICBsZXQgZGVjaW1hbCA9IDI7XG4gICAgaWYgKGNvZGUuaW5jbHVkZXMoJ0VQU0c6NDMyNicpIHx8IGNvZGUuaW5jbHVkZXMoJ0VQU0c6NDI2OScpKSB7XG4gICAgICBkZWNpbWFsID0gNTtcbiAgICB9XG4gICAgdGhpcy51bml0cyA9IGNvZGUgPT09ICdFUFNHOjQzMjYnIHx8IGNvZGUgPT09ICdFUFNHOjQyNjknO1xuICAgIGNvb3JkID0gdGhpcy5tYXAudmlld0NvbnRyb2xsZXJcbiAgICAgIC5nZXRDZW50ZXIoY29kZSlcbiAgICAgIC5tYXAoKGMpID0+IGMudG9GaXhlZChkZWNpbWFsKSk7XG4gICAgcmV0dXJuIGNvb3JkO1xuICB9XG5cbiAgLyoqXG4gICAqIENvcHkgdGhlIGNvb3JkaW5hdGVzIHRvIGEgY2xpcGJvYXJkXG4gICAqL1xuICBjb3B5VGV4dFRvQ2xpcGJvYXJkKCk6IHZvaWQge1xuICAgIGNvbnN0IHN1Y2Nlc3NmdWwgPSBDbGlwYm9hcmQuY29weSh0aGlzLmNvb3JkaW5hdGVzLnRvU3RyaW5nKCkpO1xuICAgIGlmIChzdWNjZXNzZnVsKSB7XG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnN1Y2Nlc3MoXG4gICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29weU1zZycsXG4gICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29weVRpdGxlJ1xuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRGlzcGxheSBhIGN1cnNvciBvbiB0aGUgY2VudGVyIG9mIHRoZSBtYXBcbiAgICovXG4gIGRpc3BsYXlDZW50ZXIodG9nZ2xlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5jZW50ZXIgPSB0b2dnbGU7XG4gICAgdGhpcy5tYXAubWFwQ2VudGVyJC5uZXh0KHRvZ2dsZSk7XG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXQoJ2NlbnRlclRvZ2dsZScsIHRvZ2dsZSwgU3RvcmFnZVNjb3BlLlNFU1NJT04pO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkZXIgb2YgdGhlIGZvcm1cbiAgICovXG4gIHByaXZhdGUgYnVpbGRGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgaW5wdXRQcm9qOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgbGlzdCBvZiBwcm9qZWN0aW9ucyBhZnRlciBjaGFuZ2luZyBvZiB0aGUgc3RhdGUgb2YgdGhlIG1hcFxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVQcm9qZWN0aW9uc1pvbmVDaGFuZ2UoKTogdm9pZCB7XG4gICAgbGV0IG1vZGlmaWVkUHJvaiA9IHRoaXMucHJvamVjdGlvbnMkLnZhbHVlO1xuICAgIGNvbnN0IHRyYW5zbGF0ZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZTtcbiAgICBtb2RpZmllZFByb2oubWFwKChwKSA9PiB7XG4gICAgICBpZiAocC50cmFuc2xhdGVLZXkgPT09ICdtdG0nKSB7XG4gICAgICAgIGNvbnN0IHpvbmUgPSB6b25lTXRtKHRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qWzBdKTtcbiAgICAgICAgaWYgKHpvbmUpIHtcbiAgICAgICAgICBjb25zdCBjb2RlID0gem9uZSA8IDEwID8gYEVQU0c6MzIxOCR7em9uZX1gIDogYEVQU0c6MzIxJHs4MCArIHpvbmV9YDtcbiAgICAgICAgICBwLmFsaWFzID0gYE1UTSAke3pvbmV9YDtcbiAgICAgICAgICBwLmNvZGUgPSBjb2RlO1xuICAgICAgICAgIHAuem9uZSA9IGAke3pvbmV9YDtcbiAgICAgICAgICBwLnRyYW5zbGF0ZWRWYWx1ZSA9IHRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICAgJ2lnby5nZW8uaW1wb3J0RXhwb3J0Rm9ybS5wcm9qZWN0aW9ucy5tdG0nLFxuICAgICAgICAgICAgcFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcC5hbGlhcyA9ICcnO1xuICAgICAgICAgIHRoaXMuaW5NdG1ab25lID0gZmFsc2U7XG4gICAgICAgICAgaWYgKHRoaXMuaW5wdXRQcm9qLnRyYW5zbGF0ZUtleSA9PT0gJ210bScpIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXRQcm9qID0gdGhpcy5wcm9qZWN0aW9ucyQudmFsdWVbMF07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAocC50cmFuc2xhdGVLZXkgPT09ICd1dG0nKSB7XG4gICAgICAgIGNvbnN0IHpvbmUgPSB6b25lVXRtKHRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qWzBdKTtcbiAgICAgICAgY29uc3QgY29kZSA9IGBFUFNHOjMyNiR7em9uZX1gO1xuICAgICAgICBwLmFsaWFzID0gYFVUTSAke3pvbmV9YDtcbiAgICAgICAgcC5jb2RlID0gY29kZTtcbiAgICAgICAgcC56b25lID0gYCR7em9uZX1gO1xuICAgICAgICBwLnRyYW5zbGF0ZWRWYWx1ZSA9IHRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMudXRtJyxcbiAgICAgICAgICBwXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgbW9kaWZpZWRQcm9qID0gbW9kaWZpZWRQcm9qLmZpbHRlcigocCkgPT4gcC5hbGlhcyAhPT0gJycpO1xuICAgIHRoaXMucHJvamVjdGlvbnMkLm5leHQobW9kaWZpZWRQcm9qKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBsaXN0IG9mIGN1cnJlbnRzIHByb2plY3Rpb25zXG4gICAqL1xuICBwcml2YXRlIGNvbXB1dGVQcm9qZWN0aW9ucygpOiB2b2lkIHtcbiAgICB0aGlzLnByb2plY3Rpb25zQ29uc3RyYWludHMgPSBjb21wdXRlUHJvamVjdGlvbnNDb25zdHJhaW50cyhcbiAgICAgIHRoaXMucHJvamVjdGlvbnNMaW1pdGF0aW9uc1xuICAgICk7XG4gICAgY29uc3QgcHJvamVjdGlvbnM6IElucHV0UHJvamVjdGlvbnNbXSA9IFtdO1xuXG4gICAgaWYgKCF0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvaikge1xuICAgICAgdGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2ogPSB0aGlzLm1hcC52aWV3Q29udHJvbGxlci5nZXRDZW50ZXIoXG4gICAgICAgIHRoaXMuZGVmYXVsdFByb2ouY29kZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCB0cmFuc2xhdGUgPSB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGU7XG4gICAgaWYgKHRoaXMucHJvamVjdGlvbnNDb25zdHJhaW50cy53Z3M4NCkge1xuICAgICAgcHJvamVjdGlvbnMucHVzaCh7XG4gICAgICAgIHRyYW5zbGF0ZWRWYWx1ZTogdHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgJ2lnby5nZW8uaW1wb3J0RXhwb3J0Rm9ybS5wcm9qZWN0aW9ucy53Z3M4NCcsXG4gICAgICAgICAgeyBjb2RlOiAnRVBTRzo0MzI2JyB9XG4gICAgICAgICksXG4gICAgICAgIHRyYW5zbGF0ZUtleTogJ3dnczg0JyxcbiAgICAgICAgYWxpYXM6ICdXR1M4NCcsXG4gICAgICAgIGNvZGU6ICdFUFNHOjQzMjYnLFxuICAgICAgICB6b25lOiAnJ1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJvamVjdGlvbnNDb25zdHJhaW50cy5uYWQ4Mykge1xuICAgICAgcHJvamVjdGlvbnMucHVzaCh7XG4gICAgICAgIHRyYW5zbGF0ZWRWYWx1ZTogdHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgJ2lnby5nZW8uaW1wb3J0RXhwb3J0Rm9ybS5wcm9qZWN0aW9ucy5uYWQ4MycsXG4gICAgICAgICAgeyBjb2RlOiAnRVBTRzo0MjY5JyB9XG4gICAgICAgICksXG4gICAgICAgIHRyYW5zbGF0ZUtleTogJ25hZDgzJyxcbiAgICAgICAgYWxpYXM6ICdOQUQ4MycsXG4gICAgICAgIGNvZGU6ICdFUFNHOjQyNjknLFxuICAgICAgICB6b25lOiAnJ1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMucHJvamVjdGlvbnNDb25zdHJhaW50cy53ZWJNZXJjYXRvcikge1xuICAgICAgcHJvamVjdGlvbnMucHVzaCh7XG4gICAgICAgIHRyYW5zbGF0ZWRWYWx1ZTogdHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgJ2lnby5nZW8uaW1wb3J0RXhwb3J0Rm9ybS5wcm9qZWN0aW9ucy53ZWJNZXJjYXRvcicsXG4gICAgICAgICAgeyBjb2RlOiAnRVBTRzozODU3JyB9XG4gICAgICAgICksXG4gICAgICAgIHRyYW5zbGF0ZUtleTogJ3dlYk1lcmNhdG9yJyxcbiAgICAgICAgYWxpYXM6ICdXZWIgTWVyY2F0b3InLFxuICAgICAgICBjb2RlOiAnRVBTRzozODU3JyxcbiAgICAgICAgem9uZTogJydcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAodGhpcy5wcm9qZWN0aW9uc0NvbnN0cmFpbnRzLm10bSkge1xuICAgICAgLy8gUXVlYmVjXG4gICAgICBjb25zdCB6b25lID0gem9uZU10bSh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvalswXSk7XG4gICAgICBpZiAoem9uZSkge1xuICAgICAgICB0aGlzLmluTXRtWm9uZSA9IHRydWU7XG4gICAgICAgIGNvbnN0IGNvZGUgPSB6b25lIDwgMTAgPyBgRVBTRzozMjE4JHt6b25lfWAgOiBgRVBTRzozMjEkezgwICsgem9uZX1gO1xuICAgICAgICBwcm9qZWN0aW9ucy5zcGxpY2UoMywgMCwge1xuICAgICAgICAgIHRyYW5zbGF0ZWRWYWx1ZTogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICAgICAnaWdvLmdlby5pbXBvcnRFeHBvcnRGb3JtLnByb2plY3Rpb25zLm10bScsXG4gICAgICAgICAgICB7IGNvZGUsIHpvbmUgfVxuICAgICAgICAgICksXG4gICAgICAgICAgdHJhbnNsYXRlS2V5OiAnbXRtJyxcbiAgICAgICAgICBhbGlhczogYE1UTSAke3pvbmV9YCxcbiAgICAgICAgICBjb2RlLFxuICAgICAgICAgIHpvbmU6IGAke3pvbmV9YFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaW5NdG1ab25lID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0aGlzLnByb2plY3Rpb25zQ29uc3RyYWludHMudXRtKSB7XG4gICAgICBjb25zdCBvcmRlciA9IHRoaXMuaW5NdG1ab25lID8gNCA6IDM7XG4gICAgICBjb25zdCB6b25lID0gem9uZVV0bSh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvalswXSk7XG4gICAgICBjb25zdCBjb2RlID0gem9uZSA8IDEwID8gYEVQU0c6MzI2MCR7em9uZX1gIDogYEVQU0c6MzI2JHt6b25lfWA7XG4gICAgICBwcm9qZWN0aW9ucy5zcGxpY2Uob3JkZXIsIDAsIHtcbiAgICAgICAgdHJhbnNsYXRlZFZhbHVlOiB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAnaWdvLmdlby5pbXBvcnRFeHBvcnRGb3JtLnByb2plY3Rpb25zLnV0bScsXG4gICAgICAgICAgeyBjb2RlLCB6b25lIH1cbiAgICAgICAgKSxcbiAgICAgICAgdHJhbnNsYXRlS2V5OiAndXRtJyxcbiAgICAgICAgYWxpYXM6IGBVVE0gJHt6b25lfWAsXG4gICAgICAgIGNvZGUsXG4gICAgICAgIHpvbmU6IGAke3pvbmV9YFxuICAgICAgfSk7XG4gICAgfVxuICAgIGxldCBjb25maWdQcm9qZWN0aW9uID0gW107XG4gICAgaWYgKHRoaXMucHJvamVjdGlvbnNDb25zdHJhaW50cy5wcm9qRnJvbUNvbmZpZykge1xuICAgICAgY29uZmlnUHJvamVjdGlvbiA9IHRoaXMuY29uZmlnLmdldENvbmZpZygncHJvamVjdGlvbnMnKSB8fCBbXTtcbiAgICB9XG4gICAgdGhpcy5wcm9qZWN0aW9ucyQubmV4dChwcm9qZWN0aW9ucy5jb25jYXQoY29uZmlnUHJvamVjdGlvbikpO1xuICB9XG5cbiAgLyoqXG4gICAqIFB1c2ggdGhlIE1UTSBpbiB0aGUgYXJyYXkgb2Ygc3lzdGVtZSBvZiBjb29yZGluYXRlc1xuICAgKiBAcGFyYW0gcHJvamVjdGlvbnMgQXJyYXkgb2YgdGhlIElucHV0UHJvamVjdGlvbnNcbiAgICovXG4gIHByaXZhdGUgcHVzaE10bShwcm9qZWN0aW9uczogQXJyYXk8SW5wdXRQcm9qZWN0aW9ucz4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcm9qZWN0aW9uc0NvbnN0cmFpbnRzLm10bSkge1xuICAgICAgY29uc3Qgem9uZSA9IHpvbmVNdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xuICAgICAgY29uc3QgY29kZSA9IHpvbmUgPCAxMCA/IGBFUFNHOjMyMTgke3pvbmV9YCA6IGBFUFNHOjMyMSR7ODAgKyB6b25lfWA7XG4gICAgICBwcm9qZWN0aW9ucy5zcGxpY2UoMywgMCwge1xuICAgICAgICB0cmFuc2xhdGVkVmFsdWU6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMubXRtJyxcbiAgICAgICAgICB7IGNvZGUsIHpvbmUgfVxuICAgICAgICApLFxuICAgICAgICB0cmFuc2xhdGVLZXk6ICdtdG0nLFxuICAgICAgICBhbGlhczogYE1UTSAke3pvbmV9YCxcbiAgICAgICAgY29kZSxcbiAgICAgICAgem9uZTogYCR7em9uZX1gXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgbGlzdCBvZiBzeXN0ZW1zIG9mIGNvb3JkaW5hdGVzIGZvciB0ZXJyaXRvcnkgb2YgUXVlYmVjXG4gICAqIHB1c2ggTVRNIGFuZCBVVE0gaW4gdGhlIEFycmF5XG4gICAqL1xuICBwcml2YXRlIGJhY2sycXVlYmVjKCk6IHZvaWQge1xuICAgIGNvbnN0IHByb2plY3Rpb25zID0gdGhpcy5wcm9qZWN0aW9ucyQudmFsdWU7XG4gICAgdGhpcy5wdXNoTXRtKHByb2plY3Rpb25zKTtcbiAgICB0aGlzLmluTXRtWm9uZSA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIHRoZSBudW1iZXJzIG9mIHRoZSB6b25lcyB3aGVuIGFwcGxpY2F0aW9uIGlzIHJlc3RhcnRlZFxuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVab25lTXRtVXRtKCkge1xuICAgIGlmICh0aGlzLmlucHV0UHJvai50cmFuc2xhdGVLZXkgPT09ICdtdG0nKSB7XG4gICAgICBjb25zdCB6b25lID0gem9uZU10bSh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvalswXSk7XG4gICAgICB0aGlzLmlucHV0UHJvai5hbGlhcyA9IGBNVE0gJHt6b25lfWA7XG4gICAgICBjb25zdCBjb2RlID0gem9uZSA8IDEwID8gYEVQU0c6MzIxOCR7em9uZX1gIDogYEVQU0c6MzIxJHs4MCArIHpvbmV9YDtcbiAgICAgIHRoaXMuaW5wdXRQcm9qLmNvZGUgPSBjb2RlO1xuICAgICAgdGhpcy5pbnB1dFByb2ouem9uZSA9IGAke3pvbmV9YDtcbiAgICAgIHRoaXMuaW5wdXRQcm9qLnRyYW5zbGF0ZWRWYWx1ZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxuICAgICAgICAnaWdvLmdlby5pbXBvcnRFeHBvcnRGb3JtLnByb2plY3Rpb25zLm10bScsXG4gICAgICAgIHsgY29kZSwgem9uZSB9XG4gICAgICApO1xuICAgIH1cbiAgICBpZiAodGhpcy5pbnB1dFByb2oudHJhbnNsYXRlS2V5ID09PSAndXRtJykge1xuICAgICAgY29uc3Qgem9uZSA9IHpvbmVVdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xuICAgICAgdGhpcy5pbnB1dFByb2ouYWxpYXMgPSBgVVRNICR7em9uZX1gO1xuICAgICAgY29uc3QgY29kZSA9IHpvbmUgPCAxMCA/IGBFUFNHOjMyNjAke3pvbmV9YCA6IGBFUFNHOjMyNiR7em9uZX1gO1xuICAgICAgdGhpcy5pbnB1dFByb2ouY29kZSA9IGNvZGU7XG4gICAgICB0aGlzLmlucHV0UHJvai56b25lID0gYCR7em9uZX1gO1xuICAgICAgdGhpcy5pbnB1dFByb2oudHJhbnNsYXRlZFZhbHVlID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXG4gICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMudXRtJyxcbiAgICAgICAgeyBjb2RlLCB6b25lIH1cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENvbXB1dGUgdGhlIHBvc2l0aW9uIG9mIGEgY3VycmVudCBwcm9qZWN0aW9uIGluIGEgbGlzdC4gMCBpZiB0aGUgcHJvamVjdGlvbiBpcyBub3QgaW4gdGhlIGxpc3RcbiAgICogQHBhcmFtIHRyYW5zbGF0ZUtleSBzdHJpbmcsIHRyYW5zbGF0ZSBrZXkgb2YgYSBwcm9qZWN0aW9uXG4gICAqIEByZXR1cm5zIG51bWVyaWMsIHBvc2l0aW9uIG9mIGFuIGVsZW1lbnQgaW4gdGhlIGFycmF5XG4gICAqL1xuICBwb3NpdGlvbkluTGlzdCh0ZW1wSW5wdXRQcm9qOiBJbnB1dFByb2plY3Rpb25zKTogbnVtYmVyIHtcbiAgICBjb25zdCB0ayA9IHRlbXBJbnB1dFByb2oudHJhbnNsYXRlS2V5O1xuICAgIGNvbnN0IGFsaWFzID0gdGVtcElucHV0UHJvai5hbGlhcztcbiAgICBsZXQgcG9zaXRpb247IC8vID0gdW5kZWZpbmVkO1xuICAgIGxldCBpdGVyID0gMDtcbiAgICB0aGlzLnByb2plY3Rpb25zJC52YWx1ZS5tYXAoKHByb2plY3Rpb24pID0+IHtcbiAgICAgIGlmICh0aykge1xuICAgICAgICBpZiAodGsgPT09IHByb2plY3Rpb24udHJhbnNsYXRlS2V5KSB7XG4gICAgICAgICAgcG9zaXRpb24gPSBpdGVyO1xuICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKGFsaWFzID09PSBwcm9qZWN0aW9uLmFsaWFzKSB7XG4gICAgICAgIHBvc2l0aW9uID0gaXRlcjtcbiAgICAgIH1cbiAgICAgIGl0ZXIrKztcbiAgICB9KTtcbiAgICBwb3NpdGlvbiA9IHBvc2l0aW9uID8gcG9zaXRpb24gOiAwO1xuICAgIHJldHVybiBwb3NpdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGFuZ2UgdGhlIGxpc3Qgb2YgcHJvamVjdGlvbnMgZGVwZW5kaW5nIG9uIHRoZSBwcm9qZWN0aW9ucyBvZiBMYW1iZXJ0XG4gICAqIEBwYXJhbSBjb29yZGluYXRlcyBBbiBhcnJheSBvZiBudW1iZXJzLCBsb25naXR1ZGUgYW5kIGxhdGl0dWRlXG4gICAqL1xuICBjaGVja0xhbWJlcnQoY29vcmRpbmF0ZXM6IFtudW1iZXIsIG51bWJlcl0pIHtcbiAgICBjb25zdCBsYW1iZXJ0UHJvamVjdGlvbnMgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ3Byb2plY3Rpb25zJyk7XG4gICAgbGFtYmVydFByb2plY3Rpb25zLmZvckVhY2goKHByb2plY3Rpb24pID0+IHtcbiAgICAgIGxldCBtb2RpZmllZFByb2ogPSB0aGlzLnByb2plY3Rpb25zJC52YWx1ZTtcbiAgICAgIGNvbnN0IGV4dGVudCA9IHByb2plY3Rpb24uZXh0ZW50O1xuICAgICAgY29uc3QgY29kZSA9IHByb2plY3Rpb24uY29kZS5tYXRjaCgvXFxkKy8pO1xuICAgICAgY29uc3QgY3VycmVudEV4dGVudFdHUyA9IG9scHJvai50cmFuc2Zvcm1FeHRlbnQoXG4gICAgICAgIGV4dGVudCxcbiAgICAgICAgcHJvamVjdGlvbi5jb2RlLFxuICAgICAgICB0aGlzLmRlZmF1bHRQcm9qLmNvZGVcbiAgICAgICk7XG4gICAgICBpZiAoXG4gICAgICAgIGNvb3JkaW5hdGVzWzBdIDwgY3VycmVudEV4dGVudFdHU1swXSB8fFxuICAgICAgICBjb29yZGluYXRlc1swXSA+IGN1cnJlbnRFeHRlbnRXR1NbMl0gfHxcbiAgICAgICAgY29vcmRpbmF0ZXNbMV0gPCBjdXJyZW50RXh0ZW50V0dTWzFdIHx8XG4gICAgICAgIGNvb3JkaW5hdGVzWzFdID4gY3VycmVudEV4dGVudFdHU1szXVxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuaW5MYW1iZXJ0Mltjb2RlXSA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5pbnB1dFByb2ouYWxpYXMgPT09IHByb2plY3Rpb24uYWxpYXMpIHtcbiAgICAgICAgICB0aGlzLmlucHV0UHJvaiA9IHRoaXMucHJvamVjdGlvbnMkLnZhbHVlWzBdO1xuICAgICAgICB9XG4gICAgICAgIG1vZGlmaWVkUHJvaiA9IG1vZGlmaWVkUHJvai5maWx0ZXIoKHApID0+IHAuYWxpYXMgIT09IHByb2plY3Rpb24uYWxpYXMpO1xuICAgICAgICB0aGlzLnByb2plY3Rpb25zJC5uZXh0KG1vZGlmaWVkUHJvaik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAoIXRoaXMuaW5MYW1iZXJ0Mltjb2RlXSkge1xuICAgICAgICAgIHRoaXMucHJvamVjdGlvbnMkLm5leHQobW9kaWZpZWRQcm9qLmNvbmNhdChwcm9qZWN0aW9uKSk7XG4gICAgICAgICAgdGhpcy5pbkxhbWJlcnQyW2NvZGVdID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYWR2YW5jZWQtY29vcmRpbmF0ZXNfX2Nvb3JkaW5hdGVzLWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwiYWR2YW5jZWQtY29vcmRpbmF0ZXNfX2Nvb3JkaW5hdGVzLWNvbnRhaW5lcl9faW5uZXJcIj5cbiAgICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJ1bml0czsgZWxzZSBlbHNlQmxvY2tcIiBjbGFzcz1cImNvb3JkaW5hdGVzXCI+XG4gICAgICA8bWF0LWxhYmVsPnt7XG4gICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMubG9uJyB8IHRyYW5zbGF0ZVxuICAgICAgfX08L21hdC1sYWJlbD5cbiAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAjdGV4dEFyZWFcbiAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgcm93cz1cIjFcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiXG4gICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5sb24nXG4gICAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgICBcIlxuICAgICAgICBbdmFsdWVdPVwiY29vcmRpbmF0ZXNbMF1cIlxuICAgICAgPjwvdGV4dGFyZWE+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VCbG9jaz5cbiAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImNvb3JkaW5hdGVzXCI+XG4gICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICN0ZXh0QXJlYVxuICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgICByb3dzPVwiMVwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIlxuICAgICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5lc3QnXG4gICAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbdmFsdWVdPVwiY29vcmRpbmF0ZXNbMF1cIlxuICAgICAgICA+PC90ZXh0YXJlYT5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxtYXQtZm9ybS1maWVsZCAqbmdJZj1cInVuaXRzOyBlbHNlIGVsc2VCbG9jazJcIiBjbGFzcz1cImNvb3JkaW5hdGVzMlwiPlxuICAgICAgPG1hdC1sYWJlbD57e1xuICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLmxhdCcgfCB0cmFuc2xhdGVcbiAgICAgIH19PC9tYXQtbGFiZWw+XG4gICAgICA8dGV4dGFyZWFcbiAgICAgICAgI3RleHRBcmVhXG4gICAgICAgIG1hdElucHV0XG4gICAgICAgIHJlYWRvbmx5XG4gICAgICAgIHJvd3M9XCIxXCJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIlxuICAgICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMubGF0J1xuICAgICAgICAgICAgfCB0cmFuc2xhdGVcbiAgICAgICAgXCJcbiAgICAgICAgW3ZhbHVlXT1cImNvb3JkaW5hdGVzWzFdXCJcbiAgICAgID48L3RleHRhcmVhPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPG5nLXRlbXBsYXRlICNlbHNlQmxvY2syPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiY29vcmRpbmF0ZXMyXCI+XG4gICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICN0ZXh0QXJlYVxuICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgICByb3dzPVwiMVwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIlxuICAgICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5ub3JkJ1xuICAgICAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgICAgIFwiXG4gICAgICAgICAgW3ZhbHVlXT1cImNvb3JkaW5hdGVzWzFdXCJcbiAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvZGl2PlxuXG4gIDxidXR0b25cbiAgICBtYXQtaWNvbi1idXR0b25cbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxuICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5jb3B5JyB8IHRyYW5zbGF0ZVxuICAgIFwiXG4gICAgY2xhc3M9XCJpZ28tZm9ybS1idXR0b24tZ3JvdXAgYWR2YW5jZWQtY29vcmRpbmF0ZXNfX2NvcHktY29vcmRpbmF0ZXNcIlxuICAgIChjbGljayk9XCJjb3B5VGV4dFRvQ2xpcGJvYXJkKClcIlxuICA+XG4gICAgPG1hdC1pY29uIHN2Z0ljb249XCJjb250ZW50LWNvcHlcIj48L21hdC1pY29uPlxuICA8L2J1dHRvbj5cbjwvZGl2PlxuPGZvcm0gY2xhc3M9XCJpZ28tZm9ybSBhZHZhbmNlZC1jb29yZGluYXRlc19fZm9ybVwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJpZ28taW5wdXQtY29udGFpbmVyXCI+XG4gICAgPG1hdC1sYWJlbD57e1xuICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5jb29yZFN5c3RlbSdcbiAgICAgICAgfCB0cmFuc2xhdGVcbiAgICB9fTwvbWF0LWxhYmVsPlxuICAgIDxtYXQtc2VsZWN0IFsodmFsdWUpXT1cImlucHV0UHJvalwiPlxuICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgICpuZ0Zvcj1cImxldCBwcm9qZWN0aW9uIG9mIHByb2plY3Rpb25zJCB8IGFzeW5jXCJcbiAgICAgICAgW3ZhbHVlXT1cInByb2plY3Rpb25cIlxuICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgID5cbiAgICAgICAge3sgcHJvamVjdGlvbi50cmFuc2xhdGVkVmFsdWUgfHwgcHJvamVjdGlvbi5hbGlhcyB9fVxuICAgICAgPC9tYXQtb3B0aW9uPlxuICAgIDwvbWF0LXNlbGVjdD5cbiAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPG1hdC1zbGlkZS10b2dnbGVcbiAgICBjbGFzcz1cImNlbnRlci10b2dnbGUgbWF0LXR5cG9ncmFwaHlcIlxuICAgIFtjaGVja2VkXT1cImNlbnRlclwiXG4gICAgW2xhYmVsUG9zaXRpb25dPVwiJ2JlZm9yZSdcIlxuICAgIChjaGFuZ2UpPVwiZGlzcGxheUNlbnRlcigkZXZlbnQuY2hlY2tlZClcIlxuICA+XG4gICAge3tcbiAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMuY2VudGVyJ1xuICAgICAgICB8IHRyYW5zbGF0ZVxuICAgIH19XG4gIDwvbWF0LXNsaWRlLXRvZ2dsZT5cbjwvZm9ybT5cblxuPHAgY2xhc3M9XCJpZ28tem9vbSBtYXQtdHlwb2dyYXBoeVwiPlxuICB7e1xuICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMuem9vbScgfCB0cmFuc2xhdGVcbiAgfX1cbiAge3sgbWFwLnZpZXdDb250cm9sbGVyLmdldFpvb20oKSB9fVxuPC9wPlxuPHAgY2xhc3M9XCJpZ28tem9vbSBtYXQtdHlwb2dyYXBoeVwiPlxuICB7e1xuICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMuc2NhbGUnIHwgdHJhbnNsYXRlXG4gIH19XG4gIHt7IGZvcm1hdHRlZFNjYWxlJCB8IGFzeW5jIH19XG48L3A+XG48cCBjbGFzcz1cImlnby16b29tIG1hdC10eXBvZ3JhcGh5XCI+XG4gIHt7XG4gICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5yZXNvbHV0aW9uJ1xuICAgICAgfCB0cmFuc2xhdGVcbiAgfX1cbiAge3sgbWFwLnZpZXdDb250cm9sbGVyLmdldFJlc29sdXRpb24oKSB8IG51bWJlcjogJzEuMC0wJyB9fVxuPC9wPlxuIl19
539
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtY29vcmRpbmF0ZXMvYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtY29vcmRpbmF0ZXMvYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxFQUdOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxrQkFBa0IsRUFFbEIsVUFBVSxFQUNYLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUNMLGFBQWEsRUFDYixlQUFlLEVBQ2YsY0FBYyxFQUNkLFlBQVksRUFDWixjQUFjLEVBQ2YsTUFBTSxZQUFZLENBQUM7QUFDcEIsT0FBTyxFQUlMLFdBQVcsRUFDWixNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM1RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXhDLE9BQU8sS0FBSyxNQUFNLE1BQU0sU0FBUyxDQUFDO0FBRWxDLE9BQU8sRUFBRSxlQUFlLEVBQWdCLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7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QW1DO1lBQ2pDLGFBS0Y7OztZQUFBLGlCQUFJOzs7O1lBNUhpQixlQUFhO1lBQWIsZ0NBQWEsaUJBQUE7WUFnQ2IsZUFBYTtZQUFiLGdDQUFhLGlCQUFBO1lBbUM5QixlQUVDO1lBRkQsa0hBRUM7WUFPNkMsZUFBa0I7WUFBbEIsb0NBQWtCO1lBRXJELGVBR1Q7WUFIUyxrSEFHVDtZQUNVLGVBQXFCO1lBQXJCLHFDQUFxQjtZQUdOLGVBQXVCO1lBQXZCLGtFQUF1QjtZQVVsRCxlQUFrQjtZQUFsQixvQ0FBa0IsMkJBQUE7WUFJbEIsZUFJRjtZQUpFLHdIQUlGO1lBSUEsZUFJRjtZQUpFLDhKQUlGO1lBRUUsZUFJRjtZQUpFLDBLQUlGO1lBRUUsZUFLRjtZQUxFLDJNQUtGOzs7dUZEbEZhLDRCQUE0QjtjQUx4QyxTQUFTOzJCQUNFLDBCQUEwQjtnUEFtQ2hDLHNCQUFzQjtrQkFEekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBVbnR5cGVkRm9ybUJ1aWxkZXIsXHJcbiAgVW50eXBlZEZvcm1Hcm91cCxcclxuICBWYWxpZGF0b3JzXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHtcclxuICBDb25maWdTZXJ2aWNlLFxyXG4gIExhbmd1YWdlU2VydmljZSxcclxuICBNZXNzYWdlU2VydmljZSxcclxuICBTdG9yYWdlU2NvcGUsXHJcbiAgU3RvcmFnZVNlcnZpY2VcclxufSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHtcclxuICBJZ29NYXAsXHJcbiAgSW5wdXRQcm9qZWN0aW9ucyxcclxuICBQcm9qZWN0aW9uc0xpbWl0YXRpb25zT3B0aW9ucyxcclxuICBmb3JtYXRTY2FsZVxyXG59IGZyb20gJ0BpZ28yL2dlbyc7XHJcbmltcG9ydCB7IGNvbXB1dGVQcm9qZWN0aW9uc0NvbnN0cmFpbnRzLCB6b25lTXRtLCB6b25lVXRtIH0gZnJvbSAnQGlnbzIvZ2VvJztcclxuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xyXG5cclxuaW1wb3J0ICogYXMgb2xwcm9qIGZyb20gJ29sL3Byb2onO1xyXG5cclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJzY3JpcHRpb24sIGNvbWJpbmVMYXRlc3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuaW1wb3J0IHsgTWFwU3RhdGUgfSBmcm9tICcuLi8uLi9tYXAuc3RhdGUnO1xyXG5cclxuLyoqXHJcbiAqIFRvb2wgdG8gZGlzcGxheSB0aGUgY29vcmRpbmF0ZXMgYW5kIGEgY3Vyc29yIG9mIHRoZSBjZW50ZXIgb2YgdGhlIG1hcFxyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tYWR2YW5jZWQtY29vcmRpbmF0ZXMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZHZhbmNlZC1jb29yZGluYXRlcy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWR2YW5jZWQtY29vcmRpbmF0ZXMuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWR2YW5jZWRDb29yZGluYXRlc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgZm9ybWF0dGVkU2NhbGUkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpO1xyXG4gIHB1YmxpYyBwcm9qZWN0aW9ucyQ6IEJlaGF2aW9yU3ViamVjdDxJbnB1dFByb2plY3Rpb25zW10+ID1cclxuICAgIG5ldyBCZWhhdmlvclN1YmplY3QoW10pO1xyXG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG4gIHB1YmxpYyBjb29yZGluYXRlczogc3RyaW5nW107XHJcbiAgcHJpdmF0ZSBjdXJyZW50Q2VudGVyRGVmYXVsdFByb2o6IFtudW1iZXIsIG51bWJlcl07XHJcbiAgcHVibGljIGNlbnRlcjogYm9vbGVhbjtcclxuICBwcml2YXRlIGluTXRtWm9uZTogYm9vbGVhbiA9IHRydWU7XHJcbiAgcHJpdmF0ZSBpbkxhbWJlcnQyID0geyAzMjE5ODogdHJ1ZSwgMzc5ODogdHJ1ZSB9O1xyXG4gIHByaXZhdGUgbWFwU3RhdGUkJDogU3Vic2NyaXB0aW9uO1xyXG4gIHByaXZhdGUgX3Byb2plY3Rpb25zTGltaXRhdGlvbnM6IFByb2plY3Rpb25zTGltaXRhdGlvbnNPcHRpb25zID0ge307XHJcbiAgcHJpdmF0ZSBwcm9qZWN0aW9uc0NvbnN0cmFpbnRzOiBQcm9qZWN0aW9uc0xpbWl0YXRpb25zT3B0aW9ucztcclxuICBwcml2YXRlIGRlZmF1bHRQcm9qOiBJbnB1dFByb2plY3Rpb25zO1xyXG4gIHByaXZhdGUgY3VycmVudFpvbmVzID0geyB1dG06IHVuZGVmaW5lZCwgbXRtOiB1bmRlZmluZWQgfTtcclxuICBwdWJsaWMgdW5pdHM6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGdldCBtYXAoKTogSWdvTWFwIHtcclxuICAgIHJldHVybiB0aGlzLm1hcFN0YXRlLm1hcDtcclxuICB9XHJcblxyXG4gIGdldCBpbnB1dFByb2ooKTogSW5wdXRQcm9qZWN0aW9ucyB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtLmdldCgnaW5wdXRQcm9qJykudmFsdWU7XHJcbiAgfVxyXG4gIHNldCBpbnB1dFByb2oodmFsdWU6IElucHV0UHJvamVjdGlvbnMpIHtcclxuICAgIHRoaXMuZm9ybS5wYXRjaFZhbHVlKHsgaW5wdXRQcm9qOiB2YWx1ZSB9KTtcclxuICB9XHJcbiAgZ2V0IHByb2plY3Rpb25zTGltaXRhdGlvbnMoKTogUHJvamVjdGlvbnNMaW1pdGF0aW9uc09wdGlvbnMge1xyXG4gICAgcmV0dXJuIHRoaXMuX3Byb2plY3Rpb25zTGltaXRhdGlvbnMgfHwge307XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBwcm9qZWN0aW9uc0xpbWl0YXRpb25zKHZhbHVlOiBQcm9qZWN0aW9uc0xpbWl0YXRpb25zT3B0aW9ucykge1xyXG4gICAgdGhpcy5fcHJvamVjdGlvbnNMaW1pdGF0aW9ucyA9IHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgbWFwU3RhdGU6IE1hcFN0YXRlLFxyXG4gICAgcHJpdmF0ZSBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyXHJcbiAgKSB7XHJcbiAgICB0aGlzLmRlZmF1bHRQcm9qID0ge1xyXG4gICAgICB0cmFuc2xhdGVkVmFsdWU6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMud2dzODQnLFxyXG4gICAgICAgIHsgY29kZTogJ0VQU0c6NDMyNicgfVxyXG4gICAgICApLFxyXG4gICAgICB0cmFuc2xhdGVLZXk6ICd3Z3M4NCcsXHJcbiAgICAgIGFsaWFzOiAnV0dTODQnLFxyXG4gICAgICBjb2RlOiAnRVBTRzo0MzI2JyxcclxuICAgICAgem9uZTogJycsXHJcbiAgICAgIGRlZjogdW5kZWZpbmVkLFxyXG4gICAgICBleHRlbnQ6IHVuZGVmaW5lZFxyXG4gICAgfTtcclxuICAgIHRoaXMuY2VudGVyID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoJ2NlbnRlclRvZ2dsZScpIGFzIGJvb2xlYW47XHJcbiAgICB0aGlzLmNvbXB1dGVQcm9qZWN0aW9ucygpO1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIExpc3RlbiBhIHN0YXRlIG9mIHRoZSBtYXAsIGEgc3RhdGUgb2YgYSBmb3JtLCB1cGRhdGUgdGhlIGNvb3JkaW5hdGVzXHJcbiAgICovXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLm1hcFN0YXRlJCQgPSBjb21iaW5lTGF0ZXN0KFtcclxuICAgICAgdGhpcy5tYXAudmlld0NvbnRyb2xsZXIuc3RhdGUkLnBpcGUoZGVib3VuY2VUaW1lKDUwKSksXHJcbiAgICAgIHRoaXMuZm9ybS52YWx1ZUNoYW5nZXNcclxuICAgIF0pLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0U2NhbGVWYWx1ZSh0aGlzLm1hcCk7XHJcbiAgICAgIHRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qID0gdGhpcy5tYXAudmlld0NvbnRyb2xsZXIuZ2V0Q2VudGVyKFxyXG4gICAgICAgIHRoaXMuZGVmYXVsdFByb2ouY29kZVxyXG4gICAgICApO1xyXG4gICAgICBjb25zdCBjdXJyZW50TXRtWm9uZSA9IHpvbmVNdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xyXG4gICAgICBjb25zdCBjdXJyZW50VXRtWm9uZSA9IHpvbmVVdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xyXG4gICAgICBpZiAoIXRoaXMuaW5NdG1ab25lICYmIGN1cnJlbnRNdG1ab25lICE9PSB0aGlzLmN1cnJlbnRab25lcy5tdG0pIHtcclxuICAgICAgICB0aGlzLmJhY2sycXVlYmVjKCk7XHJcbiAgICAgIH1cclxuICAgICAgbGV0IHpvbmVDaGFuZ2UgPSBmYWxzZTtcclxuICAgICAgaWYgKGN1cnJlbnRNdG1ab25lICE9PSB0aGlzLmN1cnJlbnRab25lcy5tdG0pIHtcclxuICAgICAgICB0aGlzLmN1cnJlbnRab25lcy5tdG0gPSBjdXJyZW50TXRtWm9uZTtcclxuICAgICAgICB6b25lQ2hhbmdlID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoY3VycmVudFV0bVpvbmUgIT09IHRoaXMuY3VycmVudFpvbmVzLnV0bSkge1xyXG4gICAgICAgIHRoaXMuY3VycmVudFpvbmVzLnV0bSA9IGN1cnJlbnRVdG1ab25lO1xyXG4gICAgICAgIHpvbmVDaGFuZ2UgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh6b25lQ2hhbmdlKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGVQcm9qZWN0aW9uc1pvbmVDaGFuZ2UoKTtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmNoZWNrTGFtYmVydCh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvaik7XHJcbiAgICAgIHRoaXMuY29vcmRpbmF0ZXMgPSB0aGlzLmdldENvb3JkaW5hdGVzKCk7XHJcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldChcclxuICAgICAgICAnY3VycmVudFByb2plY3Rpb24nLFxyXG4gICAgICAgIHRoaXMuaW5wdXRQcm9qLFxyXG4gICAgICAgIFN0b3JhZ2VTY29wZS5TRVNTSU9OXHJcbiAgICAgICk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCB0ZW1wSW5wdXRQcm9qID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXQoXHJcbiAgICAgICdjdXJyZW50UHJvamVjdGlvbidcclxuICAgICkgYXMgSW5wdXRQcm9qZWN0aW9ucztcclxuICAgIHRoaXMuaW5wdXRQcm9qID0gdGhpcy5wcm9qZWN0aW9ucyQudmFsdWVbMF07XHJcbiAgICBpZiAodGVtcElucHV0UHJvaiAhPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBwb3MgPSB0aGlzLnBvc2l0aW9uSW5MaXN0KHRlbXBJbnB1dFByb2opO1xyXG4gICAgICB0aGlzLmlucHV0UHJvaiA9IHRoaXMucHJvamVjdGlvbnMkLnZhbHVlW3Bvc107XHJcbiAgICAgIHRoaXMudXBkYXRlWm9uZU10bVV0bSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5tYXAubWFwQ2VudGVyJC5uZXh0KHRoaXMuY2VudGVyKTtcclxuICAgIHRoaXMuY29vcmRpbmF0ZXMgPSB0aGlzLmdldENvb3JkaW5hdGVzKCk7XHJcbiAgICB0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvaiA9IHRoaXMubWFwLnZpZXdDb250cm9sbGVyLmdldENlbnRlcihcclxuICAgICAgdGhpcy5kZWZhdWx0UHJvai5jb2RlXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLm1hcC5tYXBDZW50ZXIkLm5leHQoZmFsc2UpO1xyXG4gICAgdGhpcy5tYXBTdGF0ZSQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRTY2FsZVZhbHVlKG1hcDogSWdvTWFwKSB7XHJcbiAgICB0aGlzLmZvcm1hdHRlZFNjYWxlJC5uZXh0KFxyXG4gICAgICAnOiB+IDEgLyAnICsgZm9ybWF0U2NhbGUobWFwLnZpZXdDb250cm9sbGVyLmdldFNjYWxlKCkpXHJcbiAgICApO1xyXG4gIH1cclxuICAvKipcclxuICAgKiBDb29yZGluYXRlcyBvZiB0aGUgY2VudGVyIG9mIHRoZSBtYXAgb24gdGhlIGFwcHJvcHJpYXRlIHN5c3RlbWUgb2YgY29vcmRpbmF0ZXNcclxuICAgKiBAcmV0dXJucyBBcnJheSBvZiB0d28gbnVtYmVyc1xyXG4gICAqL1xyXG4gIGdldENvb3JkaW5hdGVzKCk6IHN0cmluZ1tdIHtcclxuICAgIHRoaXMuY3VycmVudFpvbmVzLm10bSA9IHpvbmVNdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xyXG4gICAgdGhpcy5jdXJyZW50Wm9uZXMudXRtID0gem9uZVV0bSh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvalswXSk7XHJcbiAgICBsZXQgY29vcmQ7XHJcbiAgICBjb25zdCBjb2RlID0gdGhpcy5pbnB1dFByb2ouY29kZTtcclxuICAgIGxldCBkZWNpbWFsID0gMjtcclxuICAgIGlmIChjb2RlLmluY2x1ZGVzKCdFUFNHOjQzMjYnKSB8fCBjb2RlLmluY2x1ZGVzKCdFUFNHOjQyNjknKSkge1xyXG4gICAgICBkZWNpbWFsID0gNTtcclxuICAgIH1cclxuICAgIHRoaXMudW5pdHMgPSBjb2RlID09PSAnRVBTRzo0MzI2JyB8fCBjb2RlID09PSAnRVBTRzo0MjY5JztcclxuICAgIGNvb3JkID0gdGhpcy5tYXAudmlld0NvbnRyb2xsZXJcclxuICAgICAgLmdldENlbnRlcihjb2RlKVxyXG4gICAgICAubWFwKChjKSA9PiBjLnRvRml4ZWQoZGVjaW1hbCkpO1xyXG4gICAgcmV0dXJuIGNvb3JkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29weSB0aGUgY29vcmRpbmF0ZXMgdG8gYSBjbGlwYm9hcmRcclxuICAgKi9cclxuICBjb3B5VGV4dFRvQ2xpcGJvYXJkKCk6IHZvaWQge1xyXG4gICAgY29uc3Qgc3VjY2Vzc2Z1bCA9IENsaXBib2FyZC5jb3B5KHRoaXMuY29vcmRpbmF0ZXMudG9TdHJpbmcoKSk7XHJcbiAgICBpZiAoc3VjY2Vzc2Z1bCkge1xyXG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnN1Y2Nlc3MoXHJcbiAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5jb3B5TXNnJyxcclxuICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLmNvcHlUaXRsZSdcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERpc3BsYXkgYSBjdXJzb3Igb24gdGhlIGNlbnRlciBvZiB0aGUgbWFwXHJcbiAgICovXHJcbiAgZGlzcGxheUNlbnRlcih0b2dnbGU6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuY2VudGVyID0gdG9nZ2xlO1xyXG4gICAgdGhpcy5tYXAubWFwQ2VudGVyJC5uZXh0KHRvZ2dsZSk7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldCgnY2VudGVyVG9nZ2xlJywgdG9nZ2xlLCBTdG9yYWdlU2NvcGUuU0VTU0lPTik7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBCdWlsZGVyIG9mIHRoZSBmb3JtXHJcbiAgICovXHJcbiAgcHJpdmF0ZSBidWlsZEZvcm0oKTogdm9pZCB7XHJcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgaW5wdXRQcm9qOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIGxpc3Qgb2YgcHJvamVjdGlvbnMgYWZ0ZXIgY2hhbmdpbmcgb2YgdGhlIHN0YXRlIG9mIHRoZSBtYXBcclxuICAgKi9cclxuICBwcml2YXRlIHVwZGF0ZVByb2plY3Rpb25zWm9uZUNoYW5nZSgpOiB2b2lkIHtcclxuICAgIGxldCBtb2RpZmllZFByb2ogPSB0aGlzLnByb2plY3Rpb25zJC52YWx1ZTtcclxuICAgIGNvbnN0IHRyYW5zbGF0ZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZTtcclxuICAgIG1vZGlmaWVkUHJvai5tYXAoKHApID0+IHtcclxuICAgICAgaWYgKHAudHJhbnNsYXRlS2V5ID09PSAnbXRtJykge1xyXG4gICAgICAgIGNvbnN0IHpvbmUgPSB6b25lTXRtKHRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qWzBdKTtcclxuICAgICAgICBpZiAoem9uZSkge1xyXG4gICAgICAgICAgY29uc3QgY29kZSA9IHpvbmUgPCAxMCA/IGBFUFNHOjMyMTgke3pvbmV9YCA6IGBFUFNHOjMyMSR7ODAgKyB6b25lfWA7XHJcbiAgICAgICAgICBwLmFsaWFzID0gYE1UTSAke3pvbmV9YDtcclxuICAgICAgICAgIHAuY29kZSA9IGNvZGU7XHJcbiAgICAgICAgICBwLnpvbmUgPSBgJHt6b25lfWA7XHJcbiAgICAgICAgICBwLnRyYW5zbGF0ZWRWYWx1ZSA9IHRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgICAnaWdvLmdlby5pbXBvcnRFeHBvcnRGb3JtLnByb2plY3Rpb25zLm10bScsXHJcbiAgICAgICAgICAgIHBcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHAuYWxpYXMgPSAnJztcclxuICAgICAgICAgIHRoaXMuaW5NdG1ab25lID0gZmFsc2U7XHJcbiAgICAgICAgICBpZiAodGhpcy5pbnB1dFByb2oudHJhbnNsYXRlS2V5ID09PSAnbXRtJykge1xyXG4gICAgICAgICAgICB0aGlzLmlucHV0UHJvaiA9IHRoaXMucHJvamVjdGlvbnMkLnZhbHVlWzBdO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAocC50cmFuc2xhdGVLZXkgPT09ICd1dG0nKSB7XHJcbiAgICAgICAgY29uc3Qgem9uZSA9IHpvbmVVdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xyXG4gICAgICAgIGNvbnN0IGNvZGUgPSBgRVBTRzozMjYke3pvbmV9YDtcclxuICAgICAgICBwLmFsaWFzID0gYFVUTSAke3pvbmV9YDtcclxuICAgICAgICBwLmNvZGUgPSBjb2RlO1xyXG4gICAgICAgIHAuem9uZSA9IGAke3pvbmV9YDtcclxuICAgICAgICBwLnRyYW5zbGF0ZWRWYWx1ZSA9IHRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgJ2lnby5nZW8uaW1wb3J0RXhwb3J0Rm9ybS5wcm9qZWN0aW9ucy51dG0nLFxyXG4gICAgICAgICAgcFxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgbW9kaWZpZWRQcm9qID0gbW9kaWZpZWRQcm9qLmZpbHRlcigocCkgPT4gcC5hbGlhcyAhPT0gJycpO1xyXG4gICAgdGhpcy5wcm9qZWN0aW9ucyQubmV4dChtb2RpZmllZFByb2opO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlIGEgbGlzdCBvZiBjdXJyZW50cyBwcm9qZWN0aW9uc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgY29tcHV0ZVByb2plY3Rpb25zKCk6IHZvaWQge1xyXG4gICAgdGhpcy5wcm9qZWN0aW9uc0NvbnN0cmFpbnRzID0gY29tcHV0ZVByb2plY3Rpb25zQ29uc3RyYWludHMoXHJcbiAgICAgIHRoaXMucHJvamVjdGlvbnNMaW1pdGF0aW9uc1xyXG4gICAgKTtcclxuICAgIGNvbnN0IHByb2plY3Rpb25zOiBJbnB1dFByb2plY3Rpb25zW10gPSBbXTtcclxuXHJcbiAgICBpZiAoIXRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qID0gdGhpcy5tYXAudmlld0NvbnRyb2xsZXIuZ2V0Q2VudGVyKFxyXG4gICAgICAgIHRoaXMuZGVmYXVsdFByb2ouY29kZVxyXG4gICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHRyYW5zbGF0ZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZTtcclxuICAgIGlmICh0aGlzLnByb2plY3Rpb25zQ29uc3RyYWludHMud2dzODQpIHtcclxuICAgICAgcHJvamVjdGlvbnMucHVzaCh7XHJcbiAgICAgICAgdHJhbnNsYXRlZFZhbHVlOiB0cmFuc2xhdGUuaW5zdGFudChcclxuICAgICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMud2dzODQnLFxyXG4gICAgICAgICAgeyBjb2RlOiAnRVBTRzo0MzI2JyB9XHJcbiAgICAgICAgKSxcclxuICAgICAgICB0cmFuc2xhdGVLZXk6ICd3Z3M4NCcsXHJcbiAgICAgICAgYWxpYXM6ICdXR1M4NCcsXHJcbiAgICAgICAgY29kZTogJ0VQU0c6NDMyNicsXHJcbiAgICAgICAgem9uZTogJycsXHJcbiAgICAgICAgZGVmOiB1bmRlZmluZWQsXHJcbiAgICAgICAgZXh0ZW50OiB1bmRlZmluZWRcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMucHJvamVjdGlvbnNDb25zdHJhaW50cy5uYWQ4Mykge1xyXG4gICAgICBwcm9qZWN0aW9ucy5wdXNoKHtcclxuICAgICAgICB0cmFuc2xhdGVkVmFsdWU6IHRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgJ2lnby5nZW8uaW1wb3J0RXhwb3J0Rm9ybS5wcm9qZWN0aW9ucy5uYWQ4MycsXHJcbiAgICAgICAgICB7IGNvZGU6ICdFUFNHOjQyNjknIH1cclxuICAgICAgICApLFxyXG4gICAgICAgIHRyYW5zbGF0ZUtleTogJ25hZDgzJyxcclxuICAgICAgICBhbGlhczogJ05BRDgzJyxcclxuICAgICAgICBjb2RlOiAnRVBTRzo0MjY5JyxcclxuICAgICAgICB6b25lOiAnJyxcclxuICAgICAgICBkZWY6IHVuZGVmaW5lZCxcclxuICAgICAgICBleHRlbnQ6IHVuZGVmaW5lZFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5wcm9qZWN0aW9uc0NvbnN0cmFpbnRzLndlYk1lcmNhdG9yKSB7XHJcbiAgICAgIHByb2plY3Rpb25zLnB1c2goe1xyXG4gICAgICAgIHRyYW5zbGF0ZWRWYWx1ZTogdHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgICAgICAnaWdvLmdlby5pbXBvcnRFeHBvcnRGb3JtLnByb2plY3Rpb25zLndlYk1lcmNhdG9yJyxcclxuICAgICAgICAgIHsgY29kZTogJ0VQU0c6Mzg1NycgfVxyXG4gICAgICAgICksXHJcbiAgICAgICAgdHJhbnNsYXRlS2V5OiAnd2ViTWVyY2F0b3InLFxyXG4gICAgICAgIGFsaWFzOiAnV2ViIE1lcmNhdG9yJyxcclxuICAgICAgICBjb2RlOiAnRVBTRzozODU3JyxcclxuICAgICAgICB6b25lOiAnJyxcclxuICAgICAgICBkZWY6IHVuZGVmaW5lZCxcclxuICAgICAgICBleHRlbnQ6IHVuZGVmaW5lZFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnByb2plY3Rpb25zQ29uc3RyYWludHMubXRtKSB7XHJcbiAgICAgIC8vIFF1ZWJlY1xyXG4gICAgICBjb25zdCB6b25lID0gem9uZU10bSh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvalswXSk7XHJcbiAgICAgIGlmICh6b25lKSB7XHJcbiAgICAgICAgdGhpcy5pbk10bVpvbmUgPSB0cnVlO1xyXG4gICAgICAgIGNvbnN0IGNvZGUgPSB6b25lIDwgMTAgPyBgRVBTRzozMjE4JHt6b25lfWAgOiBgRVBTRzozMjEkezgwICsgem9uZX1gO1xyXG4gICAgICAgIHByb2plY3Rpb25zLnNwbGljZSgzLCAwLCB7XHJcbiAgICAgICAgICB0cmFuc2xhdGVkVmFsdWU6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgICAnaWdvLmdlby5pbXBvcnRFeHBvcnRGb3JtLnByb2plY3Rpb25zLm10bScsXHJcbiAgICAgICAgICAgIHsgY29kZSwgem9uZSB9XHJcbiAgICAgICAgICApLFxyXG4gICAgICAgICAgdHJhbnNsYXRlS2V5OiAnbXRtJyxcclxuICAgICAgICAgIGFsaWFzOiBgTVRNICR7em9uZX1gLFxyXG4gICAgICAgICAgY29kZSxcclxuICAgICAgICAgIHpvbmU6IGAke3pvbmV9YCxcclxuICAgICAgICAgIGRlZjogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgZXh0ZW50OiB1bmRlZmluZWRcclxuICAgICAgICB9KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmluTXRtWm9uZSA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5wcm9qZWN0aW9uc0NvbnN0cmFpbnRzLnV0bSkge1xyXG4gICAgICBjb25zdCBvcmRlciA9IHRoaXMuaW5NdG1ab25lID8gNCA6IDM7XHJcbiAgICAgIGNvbnN0IHpvbmUgPSB6b25lVXRtKHRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qWzBdKTtcclxuICAgICAgY29uc3QgY29kZSA9IHpvbmUgPCAxMCA/IGBFUFNHOjMyNjAke3pvbmV9YCA6IGBFUFNHOjMyNiR7em9uZX1gO1xyXG4gICAgICBwcm9qZWN0aW9ucy5zcGxpY2Uob3JkZXIsIDAsIHtcclxuICAgICAgICB0cmFuc2xhdGVkVmFsdWU6IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICAgJ2lnby5nZW8uaW1wb3J0RXhwb3J0Rm9ybS5wcm9qZWN0aW9ucy51dG0nLFxyXG4gICAgICAgICAgeyBjb2RlLCB6b25lIH1cclxuICAgICAgICApLFxyXG4gICAgICAgIHRyYW5zbGF0ZUtleTogJ3V0bScsXHJcbiAgICAgICAgYWxpYXM6IGBVVE0gJHt6b25lfWAsXHJcbiAgICAgICAgY29kZSxcclxuICAgICAgICB6b25lOiBgJHt6b25lfWAsXHJcbiAgICAgICAgZGVmOiB1bmRlZmluZWQsXHJcbiAgICAgICAgZXh0ZW50OiB1bmRlZmluZWRcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBsZXQgY29uZmlnUHJvamVjdGlvbjogSW5wdXRQcm9qZWN0aW9uc1tdID0gW107XHJcbiAgICBpZiAodGhpcy5wcm9qZWN0aW9uc0NvbnN0cmFpbnRzLnByb2pGcm9tQ29uZmlnKSB7XHJcbiAgICAgIGNvbmZpZ1Byb2plY3Rpb24gPSAodGhpcy5jb25maWcuZ2V0Q29uZmlnKCdwcm9qZWN0aW9ucycpIHx8XHJcbiAgICAgICAgW10pIGFzIElucHV0UHJvamVjdGlvbnNbXTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnByb2plY3Rpb25zJC5uZXh0KGNvbmZpZ1Byb2plY3Rpb24uY29uY2F0KHByb2plY3Rpb25zKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBQdXNoIHRoZSBNVE0gaW4gdGhlIGFycmF5IG9mIHN5c3RlbWUgb2YgY29vcmRpbmF0ZXNcclxuICAgKiBAcGFyYW0gcHJvamVjdGlvbnMgQXJyYXkgb2YgdGhlIElucHV0UHJvamVjdGlvbnNcclxuICAgKi9cclxuICBwcml2YXRlIHB1c2hNdG0ocHJvamVjdGlvbnM6IEFycmF5PElucHV0UHJvamVjdGlvbnM+KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5wcm9qZWN0aW9uc0NvbnN0cmFpbnRzLm10bSkge1xyXG4gICAgICBjb25zdCB6b25lID0gem9uZU10bSh0aGlzLmN1cnJlbnRDZW50ZXJEZWZhdWx0UHJvalswXSk7XHJcbiAgICAgIGNvbnN0IGNvZGUgPSB6b25lIDwgMTAgPyBgRVBTRzozMjE4JHt6b25lfWAgOiBgRVBTRzozMjEkezgwICsgem9uZX1gO1xyXG4gICAgICBwcm9qZWN0aW9ucy5zcGxpY2UoMywgMCwge1xyXG4gICAgICAgIHRyYW5zbGF0ZWRWYWx1ZTogdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoXHJcbiAgICAgICAgICAnaWdvLmdlby5pbXBvcnRFeHBvcnRGb3JtLnByb2plY3Rpb25zLm10bScsXHJcbiAgICAgICAgICB7IGNvZGUsIHpvbmUgfVxyXG4gICAgICAgICksXHJcbiAgICAgICAgdHJhbnNsYXRlS2V5OiAnbXRtJyxcclxuICAgICAgICBhbGlhczogYE1UTSAke3pvbmV9YCxcclxuICAgICAgICBjb2RlLFxyXG4gICAgICAgIHpvbmU6IGAke3pvbmV9YCxcclxuICAgICAgICBkZWY6IHVuZGVmaW5lZCxcclxuICAgICAgICBleHRlbnQ6IHVuZGVmaW5lZFxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgdGhlIGxpc3Qgb2Ygc3lzdGVtcyBvZiBjb29yZGluYXRlcyBmb3IgdGVycml0b3J5IG9mIFF1ZWJlY1xyXG4gICAqIHB1c2ggTVRNIGFuZCBVVE0gaW4gdGhlIEFycmF5XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBiYWNrMnF1ZWJlYygpOiB2b2lkIHtcclxuICAgIGNvbnN0IHByb2plY3Rpb25zID0gdGhpcy5wcm9qZWN0aW9ucyQudmFsdWU7XHJcbiAgICB0aGlzLnB1c2hNdG0ocHJvamVjdGlvbnMpO1xyXG4gICAgdGhpcy5pbk10bVpvbmUgPSB0cnVlO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVXBkYXRlIHRoZSBudW1iZXJzIG9mIHRoZSB6b25lcyB3aGVuIGFwcGxpY2F0aW9uIGlzIHJlc3RhcnRlZFxyXG4gICAqL1xyXG4gIHByaXZhdGUgdXBkYXRlWm9uZU10bVV0bSgpIHtcclxuICAgIGlmICh0aGlzLmlucHV0UHJvai50cmFuc2xhdGVLZXkgPT09ICdtdG0nKSB7XHJcbiAgICAgIGNvbnN0IHpvbmUgPSB6b25lTXRtKHRoaXMuY3VycmVudENlbnRlckRlZmF1bHRQcm9qWzBdKTtcclxuICAgICAgdGhpcy5pbnB1dFByb2ouYWxpYXMgPSBgTVRNICR7em9uZX1gO1xyXG4gICAgICBjb25zdCBjb2RlID0gem9uZSA8IDEwID8gYEVQU0c6MzIxOCR7em9uZX1gIDogYEVQU0c6MzIxJHs4MCArIHpvbmV9YDtcclxuICAgICAgdGhpcy5pbnB1dFByb2ouY29kZSA9IGNvZGU7XHJcbiAgICAgIHRoaXMuaW5wdXRQcm9qLnpvbmUgPSBgJHt6b25lfWA7XHJcbiAgICAgIHRoaXMuaW5wdXRQcm9qLnRyYW5zbGF0ZWRWYWx1ZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMubXRtJyxcclxuICAgICAgICB7IGNvZGUsIHpvbmUgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuaW5wdXRQcm9qLnRyYW5zbGF0ZUtleSA9PT0gJ3V0bScpIHtcclxuICAgICAgY29uc3Qgem9uZSA9IHpvbmVVdG0odGhpcy5jdXJyZW50Q2VudGVyRGVmYXVsdFByb2pbMF0pO1xyXG4gICAgICB0aGlzLmlucHV0UHJvai5hbGlhcyA9IGBVVE0gJHt6b25lfWA7XHJcbiAgICAgIGNvbnN0IGNvZGUgPSB6b25lIDwgMTAgPyBgRVBTRzozMjYwJHt6b25lfWAgOiBgRVBTRzozMjYke3pvbmV9YDtcclxuICAgICAgdGhpcy5pbnB1dFByb2ouY29kZSA9IGNvZGU7XHJcbiAgICAgIHRoaXMuaW5wdXRQcm9qLnpvbmUgPSBgJHt6b25lfWA7XHJcbiAgICAgIHRoaXMuaW5wdXRQcm9qLnRyYW5zbGF0ZWRWYWx1ZSA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KFxyXG4gICAgICAgICdpZ28uZ2VvLmltcG9ydEV4cG9ydEZvcm0ucHJvamVjdGlvbnMudXRtJyxcclxuICAgICAgICB7IGNvZGUsIHpvbmUgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ29tcHV0ZSB0aGUgcG9zaXRpb24gb2YgYSBjdXJyZW50IHByb2plY3Rpb24gaW4gYSBsaXN0LiAwIGlmIHRoZSBwcm9qZWN0aW9uIGlzIG5vdCBpbiB0aGUgbGlzdFxyXG4gICAqIEBwYXJhbSB0cmFuc2xhdGVLZXkgc3RyaW5nLCB0cmFuc2xhdGUga2V5IG9mIGEgcHJvamVjdGlvblxyXG4gICAqIEByZXR1cm5zIG51bWVyaWMsIHBvc2l0aW9uIG9mIGFuIGVsZW1lbnQgaW4gdGhlIGFycmF5XHJcbiAgICovXHJcbiAgcG9zaXRpb25Jbkxpc3QodGVtcElucHV0UHJvajogSW5wdXRQcm9qZWN0aW9ucyk6IG51bWJlciB7XHJcbiAgICBjb25zdCB0ayA9IHRlbXBJbnB1dFByb2oudHJhbnNsYXRlS2V5O1xyXG4gICAgY29uc3QgYWxpYXMgPSB0ZW1wSW5wdXRQcm9qLmFsaWFzO1xyXG4gICAgbGV0IHBvc2l0aW9uOyAvLyA9IHVuZGVmaW5lZDtcclxuICAgIGxldCBpdGVyID0gMDtcclxuICAgIHRoaXMucHJvamVjdGlvbnMkLnZhbHVlLm1hcCgocHJvamVjdGlvbikgPT4ge1xyXG4gICAgICBpZiAodGspIHtcclxuICAgICAgICBpZiAodGsgPT09IHByb2plY3Rpb24udHJhbnNsYXRlS2V5KSB7XHJcbiAgICAgICAgICBwb3NpdGlvbiA9IGl0ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2UgaWYgKGFsaWFzID09PSBwcm9qZWN0aW9uLmFsaWFzKSB7XHJcbiAgICAgICAgcG9zaXRpb24gPSBpdGVyO1xyXG4gICAgICB9XHJcbiAgICAgIGl0ZXIrKztcclxuICAgIH0pO1xyXG4gICAgcG9zaXRpb24gPSBwb3NpdGlvbiA/IHBvc2l0aW9uIDogMDtcclxuICAgIHJldHVybiBwb3NpdGlvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIENoYW5nZSB0aGUgbGlzdCBvZiBwcm9qZWN0aW9ucyBkZXBlbmRpbmcgb24gdGhlIHByb2plY3Rpb25zIG9mIExhbWJlcnRcclxuICAgKiBAcGFyYW0gY29vcmRpbmF0ZXMgQW4gYXJyYXkgb2YgbnVtYmVycywgbG9uZ2l0dWRlIGFuZCBsYXRpdHVkZVxyXG4gICAqL1xyXG4gIGNoZWNrTGFtYmVydChjb29yZGluYXRlczogW251bWJlciwgbnVtYmVyXSkge1xyXG4gICAgY29uc3QgbGFtYmVydFByb2plY3Rpb25zID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKCdwcm9qZWN0aW9ucycpIHx8IFtdO1xyXG4gICAgbGFtYmVydFByb2plY3Rpb25zLmZvckVhY2goKHByb2plY3Rpb24pID0+IHtcclxuICAgICAgbGV0IG1vZGlmaWVkUHJvaiA9IHRoaXMucHJvamVjdGlvbnMkLnZhbHVlO1xyXG4gICAgICBjb25zdCBleHRlbnQgPSBwcm9qZWN0aW9uLmV4dGVudDtcclxuICAgICAgY29uc3QgY29kZSA9IHByb2plY3Rpb24uY29kZS5tYXRjaCgvXFxkKy8pO1xyXG4gICAgICBjb25zdCBjdXJyZW50RXh0ZW50V0dTID0gb2xwcm9qLnRyYW5zZm9ybUV4dGVudChcclxuICAgICAgICBleHRlbnQsXHJcbiAgICAgICAgcHJvamVjdGlvbi5jb2RlLFxyXG4gICAgICAgIHRoaXMuZGVmYXVsdFByb2ouY29kZVxyXG4gICAgICApO1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgY29vcmRpbmF0ZXNbMF0gPCBjdXJyZW50RXh0ZW50V0dTWzBdIHx8XHJcbiAgICAgICAgY29vcmRpbmF0ZXNbMF0gPiBjdXJyZW50RXh0ZW50V0dTWzJdIHx8XHJcbiAgICAgICAgY29vcmRpbmF0ZXNbMV0gPCBjdXJyZW50RXh0ZW50V0dTWzFdIHx8XHJcbiAgICAgICAgY29vcmRpbmF0ZXNbMV0gPiBjdXJyZW50RXh0ZW50V0dTWzNdXHJcbiAgICAgICkge1xyXG4gICAgICAgIHRoaXMuaW5MYW1iZXJ0Mltjb2RlXSA9IGZhbHNlO1xyXG4gICAgICAgIGlmICh0aGlzLmlucHV0UHJvai5hbGlhcyA9PT0gcHJvamVjdGlvbi5hbGlhcykge1xyXG4gICAgICAgICAgdGhpcy5pbnB1dFByb2ogPSB0aGlzLnByb2plY3Rpb25zJC52YWx1ZVswXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbW9kaWZpZWRQcm9qID0gbW9kaWZpZWRQcm9qLmZpbHRlcigocCkgPT4gcC5hbGlhcyAhPT0gcHJvamVjdGlvbi5hbGlhcyk7XHJcbiAgICAgICAgdGhpcy5wcm9qZWN0aW9ucyQubmV4dChtb2RpZmllZFByb2opO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmICghdGhpcy5pbkxhbWJlcnQyW2NvZGVdKSB7XHJcbiAgICAgICAgICB0aGlzLnByb2plY3Rpb25zJC5uZXh0KG1vZGlmaWVkUHJvai5jb25jYXQocHJvamVjdGlvbikpO1xyXG4gICAgICAgICAgdGhpcy5pbkxhbWJlcnQyW2NvZGVdID0gdHJ1ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiYWR2YW5jZWQtY29vcmRpbmF0ZXNfX2Nvb3JkaW5hdGVzLWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJhZHZhbmNlZC1jb29yZGluYXRlc19fY29vcmRpbmF0ZXMtY29udGFpbmVyX19pbm5lclwiPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwidW5pdHM7IGVsc2UgZWxzZUJsb2NrXCIgY2xhc3M9XCJjb29yZGluYXRlc1wiPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7XHJcbiAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5sb24nIHwgdHJhbnNsYXRlXHJcbiAgICAgIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDx0ZXh0YXJlYVxyXG4gICAgICAgICN0ZXh0QXJlYVxyXG4gICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgcmVhZG9ubHlcclxuICAgICAgICByb3dzPVwiMVwiXHJcbiAgICAgICAgW3BsYWNlaG9sZGVyXT1cIlxyXG4gICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5sb24nXHJcbiAgICAgICAgICAgIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgXCJcclxuICAgICAgICBbdmFsdWVdPVwiY29vcmRpbmF0ZXNbMF1cIlxyXG4gICAgICA+PC90ZXh0YXJlYT5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VCbG9jaz5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiY29vcmRpbmF0ZXNcIj5cclxuICAgICAgICA8dGV4dGFyZWFcclxuICAgICAgICAgICN0ZXh0QXJlYVxyXG4gICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgIHJlYWRvbmx5XHJcbiAgICAgICAgICByb3dzPVwiMVwiXHJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiXHJcbiAgICAgICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMuZXN0J1xyXG4gICAgICAgICAgICAgIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgICBcIlxyXG4gICAgICAgICAgW3ZhbHVlXT1cImNvb3JkaW5hdGVzWzBdXCJcclxuICAgICAgICA+PC90ZXh0YXJlYT5cclxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwidW5pdHM7IGVsc2UgZWxzZUJsb2NrMlwiIGNsYXNzPVwiY29vcmRpbmF0ZXMyXCI+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3tcclxuICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLmxhdCcgfCB0cmFuc2xhdGVcclxuICAgICAgfX08L21hdC1sYWJlbD5cclxuICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgI3RleHRBcmVhXHJcbiAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICByZWFkb25seVxyXG4gICAgICAgIHJvd3M9XCIxXCJcclxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwiXHJcbiAgICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLmxhdCdcclxuICAgICAgICAgICAgfCB0cmFuc2xhdGVcclxuICAgICAgICBcIlxyXG4gICAgICAgIFt2YWx1ZV09XCJjb29yZGluYXRlc1sxXVwiXHJcbiAgICAgID48L3RleHRhcmVhPlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgIDxuZy10ZW1wbGF0ZSAjZWxzZUJsb2NrMj5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiY29vcmRpbmF0ZXMyXCI+XHJcbiAgICAgICAgPHRleHRhcmVhXHJcbiAgICAgICAgICAjdGV4dEFyZWFcclxuICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICByZWFkb25seVxyXG4gICAgICAgICAgcm93cz1cIjFcIlxyXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIlxyXG4gICAgICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLm5vcmQnXHJcbiAgICAgICAgICAgICAgfCB0cmFuc2xhdGVcclxuICAgICAgICAgIFwiXHJcbiAgICAgICAgICBbdmFsdWVdPVwiY29vcmRpbmF0ZXNbMV1cIlxyXG4gICAgICAgID48L3RleHRhcmVhPlxyXG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGJ1dHRvblxyXG4gICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIlxyXG4gICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLmNvcHknIHwgdHJhbnNsYXRlXHJcbiAgICBcIlxyXG4gICAgY2xhc3M9XCJpZ28tZm9ybS1idXR0b24tZ3JvdXAgYWR2YW5jZWQtY29vcmRpbmF0ZXNfX2NvcHktY29vcmRpbmF0ZXNcIlxyXG4gICAgKGNsaWNrKT1cImNvcHlUZXh0VG9DbGlwYm9hcmQoKVwiXHJcbiAgPlxyXG4gICAgPG1hdC1pY29uIHN2Z0ljb249XCJjb250ZW50LWNvcHlcIj48L21hdC1pY29uPlxyXG4gIDwvYnV0dG9uPlxyXG48L2Rpdj5cclxuPGZvcm0gY2xhc3M9XCJpZ28tZm9ybSBhZHZhbmNlZC1jb29yZGluYXRlc19fZm9ybVwiIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxyXG4gIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImlnby1pbnB1dC1jb250YWluZXJcIj5cclxuICAgIDxtYXQtbGFiZWw+e3tcclxuICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5jb29yZFN5c3RlbSdcclxuICAgICAgICB8IHRyYW5zbGF0ZVxyXG4gICAgfX08L21hdC1sYWJlbD5cclxuICAgIDxtYXQtc2VsZWN0IFsodmFsdWUpXT1cImlucHV0UHJvalwiPlxyXG4gICAgICA8bWF0LW9wdGlvblxyXG4gICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBwcm9qZWN0aW9uIG9mIHByb2plY3Rpb25zJCB8IGFzeW5jXCJcclxuICAgICAgICBbdmFsdWVdPVwicHJvamVjdGlvblwiXHJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiXHJcbiAgICAgID5cclxuICAgICAgICB7eyBwcm9qZWN0aW9uLnRyYW5zbGF0ZWRWYWx1ZSB8fCBwcm9qZWN0aW9uLmFsaWFzIH19XHJcbiAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgIDwvbWF0LXNlbGVjdD5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDxtYXQtc2xpZGUtdG9nZ2xlXHJcbiAgICBjbGFzcz1cImNlbnRlci10b2dnbGUgbWF0LXR5cG9ncmFwaHlcIlxyXG4gICAgW2NoZWNrZWRdPVwiY2VudGVyXCJcclxuICAgIFtsYWJlbFBvc2l0aW9uXT1cIidiZWZvcmUnXCJcclxuICAgIChjaGFuZ2UpPVwiZGlzcGxheUNlbnRlcigkZXZlbnQuY2hlY2tlZClcIlxyXG4gID5cclxuICAgIHt7XHJcbiAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMuY2VudGVyJ1xyXG4gICAgICAgIHwgdHJhbnNsYXRlXHJcbiAgICB9fVxyXG4gIDwvbWF0LXNsaWRlLXRvZ2dsZT5cclxuPC9mb3JtPlxyXG5cclxuPHAgY2xhc3M9XCJpZ28tem9vbSBtYXQtdHlwb2dyYXBoeVwiPlxyXG4gIHt7XHJcbiAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLnpvb20nIHwgdHJhbnNsYXRlXHJcbiAgfX1cclxuICB7eyBtYXAudmlld0NvbnRyb2xsZXIuZ2V0Wm9vbSgpIH19XHJcbjwvcD5cclxuPHAgY2xhc3M9XCJpZ28tem9vbSBtYXQtdHlwb2dyYXBoeVwiPlxyXG4gIHt7XHJcbiAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLWNvb3JkaW5hdGVzLnNjYWxlJyB8IHRyYW5zbGF0ZVxyXG4gIH19XHJcbiAge3sgZm9ybWF0dGVkU2NhbGUkIHwgYXN5bmMgfX1cclxuPC9wPlxyXG48cCBjbGFzcz1cImlnby16b29tIG1hdC10eXBvZ3JhcGh5XCI+XHJcbiAge3tcclxuICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtY29vcmRpbmF0ZXMucmVzb2x1dGlvbidcclxuICAgICAgfCB0cmFuc2xhdGVcclxuICB9fVxyXG4gIHt7IG1hcC52aWV3Q29udHJvbGxlci5nZXRSZXNvbHV0aW9uKCkgfCBudW1iZXI6ICcxLjAtMCcgfX1cclxuPC9wPlxyXG4iXX0=
@@ -87,6 +87,6 @@ AdvancedMapToolComponent = __decorate([
87
87
  ], AdvancedMapToolComponent);
88
88
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdvancedMapToolComponent, [{
89
89
  type: Component,
90
- args: [{ selector: 'igo-advanced-map-tool', template: "<h4 class=\"nameOfTool\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-tool' | translate\n }}\n</h4>\n<igo-advanced-swipe></igo-advanced-swipe>\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\n<h4 class=\"nameOfTool\">\n {{\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordinates'\n | translate\n }}\n</h4>\n<igo-advanced-coordinates></igo-advanced-coordinates>\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\n\n<h4 class=\"nameOfTool\">\n {{ 'igo.integration.advanced-map-tool.geolocation.title' | translate }}\n</h4>\n\n<div class=\"igo-input-container\">\n <div class=\"geolocation-slide-toggle-container mat-typography\">\n <mat-slide-toggle\n class=\"geolocation-option mat-typography\"\n [checked]=\"tracking$ | async\"\n [labelPosition]=\"'before'\"\n (change)=\"toggleTracking($event.checked)\"\n >\n {{ 'igo.integration.advanced-map-tool.geolocation.tracking' | translate }}\n </mat-slide-toggle>\n\n <mat-slide-toggle\n class=\"geolocation-option mat-typography\"\n [disabled]=\"(tracking$ | async) !== true\"\n [labelPosition]=\"'before'\"\n [checked]=\"followPosition$ | async\"\n (change)=\"toggleFollow($event.checked)\"\n >\n {{ 'igo.integration.advanced-map-tool.geolocation.follow' | translate }}\n </mat-slide-toggle>\n </div>\n</div>\n", styles: [".nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.advanced-tool-line{height:2px;background-color:gray}.geolocation-slide-toggle-container{margin-top:8px}.geolocation-slide-toggle-container mat-slide-toggle{width:100%;padding:0 8px}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}.geolocation-option{display:block;margin-right:10px;margin-bottom:15px}\n"] }]
90
+ args: [{ selector: 'igo-advanced-map-tool', template: "<h4 class=\"nameOfTool\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-tool' | translate\r\n }}\r\n</h4>\r\n<igo-advanced-swipe></igo-advanced-swipe>\r\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\r\n<h4 class=\"nameOfTool\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-coordinates.coordinates'\r\n | translate\r\n }}\r\n</h4>\r\n<igo-advanced-coordinates></igo-advanced-coordinates>\r\n<mat-divider class=\"advanced-tool-line\"></mat-divider>\r\n\r\n<h4 class=\"nameOfTool\">\r\n {{ 'igo.integration.advanced-map-tool.geolocation.title' | translate }}\r\n</h4>\r\n\r\n<div class=\"igo-input-container\">\r\n <div class=\"geolocation-slide-toggle-container mat-typography\">\r\n <mat-slide-toggle\r\n class=\"geolocation-option mat-typography\"\r\n [checked]=\"tracking$ | async\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"toggleTracking($event.checked)\"\r\n >\r\n {{ 'igo.integration.advanced-map-tool.geolocation.tracking' | translate }}\r\n </mat-slide-toggle>\r\n\r\n <mat-slide-toggle\r\n class=\"geolocation-option mat-typography\"\r\n [disabled]=\"(tracking$ | async) !== true\"\r\n [labelPosition]=\"'before'\"\r\n [checked]=\"followPosition$ | async\"\r\n (change)=\"toggleFollow($event.checked)\"\r\n >\r\n {{ 'igo.integration.advanced-map-tool.geolocation.follow' | translate }}\r\n </mat-slide-toggle>\r\n </div>\r\n</div>\r\n", styles: [".nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}.advanced-tool-line{height:2px;background-color:gray}.geolocation-slide-toggle-container{margin-top:8px}.geolocation-slide-toggle-container mat-slide-toggle{width:100%;padding:0 8px}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}.geolocation-slide-toggle-container mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}.geolocation-option{display:block;margin-right:10px;margin-bottom:15px}\n"] }]
91
91
  }], function () { return [{ type: i1.MapState }]; }, null); })();
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtbWFwLXRvb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtbWFwLXRvb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtbWFwLXRvb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7Ozs7QUFlakMsV0FBTSx3QkFBd0IsR0FBOUIsTUFBTSx3QkFBd0I7SUFRaEI7SUFQbkIsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUM7SUFDM0QsQ0FBQztJQUNELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQztJQUNqRSxDQUFDO0lBRUQsWUFBbUIsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUFHLENBQUM7SUFFekMsY0FBYyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUMzRCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQUs7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUNqRSxDQUFDO2tGQWhCVSx3QkFBd0I7NkRBQXhCLHdCQUF3QjtZQ2pCckMsNkJBQXVCO1lBQ3JCLFlBR0Y7O1lBQUEsaUJBQUs7WUFDTCxxQ0FBeUMscUJBQUE7WUFFekMsNkJBQXVCO1lBQ3JCLFlBSUY7O1lBQUEsaUJBQUs7WUFDTCwyQ0FBcUQscUJBQUE7WUFHckQsOEJBQXVCO1lBQ3JCLGFBQ0Y7O1lBQUEsaUJBQUs7WUFFTCwrQkFBaUMsY0FBQSwyQkFBQTtZQU0zQix3SEFBVSxrQ0FBOEIsSUFBQzs7WUFFekMsYUFDRjs7WUFBQSxpQkFBbUI7WUFFbkIsNENBTUM7WUFEQyx3SEFBVSxnQ0FBNEIsSUFBQzs7O1lBRXZDLGFBQ0Y7O1lBQUEsaUJBQW1CLEVBQUEsRUFBQTs7WUF0Q3JCLGVBR0Y7WUFIRSxzSEFHRjtZQUlFLGVBSUY7WUFKRSw2SEFJRjtZQUtFLGVBQ0Y7WUFERSwrR0FDRjtZQU1NLGVBQTZCO1lBQTdCLCtEQUE2QiwyQkFBQTtZQUk3QixlQUNGO1lBREUsaUhBQ0Y7WUFJRSxlQUF5QztZQUF6Qyx5RUFBeUMsMkJBQUEsd0RBQUE7WUFLekMsZUFDRjtZQURFLCtHQUNGOzs7QUR0QlMsd0JBQXdCO0lBYnBDLGFBQWEsQ0FBQztRQUNiLElBQUksRUFBRSxhQUFhO1FBQ25CLEtBQUssRUFBRSxtQ0FBbUM7UUFDMUMsSUFBSSxFQUFFLFNBQVM7S0FDaEIsQ0FBQztJQUNGOztPQUVHOztxQ0FjNEIsUUFBUTtHQVIxQix3QkFBd0IsQ0FpQnBDO3VGQWpCWSx3QkFBd0I7Y0FMcEMsU0FBUzsyQkFDRSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvb2xDb21wb25lbnQgfSBmcm9tICdAaWdvMi9jb21tb24nO1xuaW1wb3J0IHsgTWFwU3RhdGUgfSBmcm9tICcuLi9tYXAuc3RhdGUnO1xuXG5AVG9vbENvbXBvbmVudCh7XG4gIG5hbWU6ICdhZHZhbmNlZE1hcCcsXG4gIHRpdGxlOiAnaWdvLmludGVncmF0aW9uLnRvb2xzLmFkdmFuY2VkTWFwJyxcbiAgaWNvbjogJ3Rvb2xib3gnXG59KVxuLyoqXG4gKiBUb29sIHRvIGhhbmRsZSB0aGUgYWR2YW5jZWQgbWFwIHRvb2xzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1hZHZhbmNlZC1tYXAtdG9vbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hZHZhbmNlZC1tYXAtdG9vbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FkdmFuY2VkLW1hcC10b29sLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQWR2YW5jZWRNYXBUb29sQ29tcG9uZW50IHtcbiAgZ2V0IHRyYWNraW5nJCgpIHtcbiAgICByZXR1cm4gdGhpcy5tYXBTdGF0ZS5tYXAuZ2VvbG9jYXRpb25Db250cm9sbGVyLnRyYWNraW5nJDtcbiAgfVxuICBnZXQgZm9sbG93UG9zaXRpb24kKCkge1xuICAgIHJldHVybiB0aGlzLm1hcFN0YXRlLm1hcC5nZW9sb2NhdGlvbkNvbnRyb2xsZXIuZm9sbG93UG9zaXRpb24kO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIG1hcFN0YXRlOiBNYXBTdGF0ZSkge31cblxuICB0b2dnbGVUcmFja2luZyh2YWx1ZSkge1xuICAgIHRoaXMubWFwU3RhdGUubWFwLmdlb2xvY2F0aW9uQ29udHJvbGxlci50cmFja2luZyA9IHZhbHVlO1xuICB9XG5cbiAgdG9nZ2xlRm9sbG93KHZhbHVlKSB7XG4gICAgdGhpcy5tYXBTdGF0ZS5tYXAuZ2VvbG9jYXRpb25Db250cm9sbGVyLmZvbGxvd1Bvc2l0aW9uID0gdmFsdWU7XG4gIH1cbn1cbiIsIjxoNCBjbGFzcz1cIm5hbWVPZlRvb2xcIj5cbiAge3tcbiAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLXN3aXBlLnN3aXBlLXRvb2wnIHwgdHJhbnNsYXRlXG4gIH19XG48L2g0PlxuPGlnby1hZHZhbmNlZC1zd2lwZT48L2lnby1hZHZhbmNlZC1zd2lwZT5cbjxtYXQtZGl2aWRlciBjbGFzcz1cImFkdmFuY2VkLXRvb2wtbGluZVwiPjwvbWF0LWRpdmlkZXI+XG48aDQgY2xhc3M9XCJuYW1lT2ZUb29sXCI+XG4gIHt7XG4gICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5jb29yZGluYXRlcydcbiAgICAgIHwgdHJhbnNsYXRlXG4gIH19XG48L2g0PlxuPGlnby1hZHZhbmNlZC1jb29yZGluYXRlcz48L2lnby1hZHZhbmNlZC1jb29yZGluYXRlcz5cbjxtYXQtZGl2aWRlciBjbGFzcz1cImFkdmFuY2VkLXRvb2wtbGluZVwiPjwvbWF0LWRpdmlkZXI+XG5cbjxoNCBjbGFzcz1cIm5hbWVPZlRvb2xcIj5cbiAge3sgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5nZW9sb2NhdGlvbi50aXRsZScgfCB0cmFuc2xhdGUgfX1cbjwvaDQ+XG5cbjxkaXYgY2xhc3M9XCJpZ28taW5wdXQtY29udGFpbmVyXCI+XG4gIDxkaXYgY2xhc3M9XCJnZW9sb2NhdGlvbi1zbGlkZS10b2dnbGUtY29udGFpbmVyIG1hdC10eXBvZ3JhcGh5XCI+XG4gICAgPG1hdC1zbGlkZS10b2dnbGVcbiAgICAgIGNsYXNzPVwiZ2VvbG9jYXRpb24tb3B0aW9uIG1hdC10eXBvZ3JhcGh5XCJcbiAgICAgIFtjaGVja2VkXT1cInRyYWNraW5nJCB8IGFzeW5jXCJcbiAgICAgIFtsYWJlbFBvc2l0aW9uXT1cIidiZWZvcmUnXCJcbiAgICAgIChjaGFuZ2UpPVwidG9nZ2xlVHJhY2tpbmcoJGV2ZW50LmNoZWNrZWQpXCJcbiAgICA+XG4gICAgICB7eyAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmdlb2xvY2F0aW9uLnRyYWNraW5nJyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cblxuICAgIDxtYXQtc2xpZGUtdG9nZ2xlXG4gICAgICBjbGFzcz1cImdlb2xvY2F0aW9uLW9wdGlvbiBtYXQtdHlwb2dyYXBoeVwiXG4gICAgICBbZGlzYWJsZWRdPVwiKHRyYWNraW5nJCB8IGFzeW5jKSAhPT0gdHJ1ZVwiXG4gICAgICBbbGFiZWxQb3NpdGlvbl09XCInYmVmb3JlJ1wiXG4gICAgICBbY2hlY2tlZF09XCJmb2xsb3dQb3NpdGlvbiQgfCBhc3luY1wiXG4gICAgICAoY2hhbmdlKT1cInRvZ2dsZUZvbGxvdygkZXZlbnQuY2hlY2tlZClcIlxuICAgID5cbiAgICAgIHt7ICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuZ2VvbG9jYXRpb24uZm9sbG93JyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtbWFwLXRvb2wuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtbWFwLXRvb2wuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtbWFwLXRvb2wuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU3QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7Ozs7QUFlakMsV0FBTSx3QkFBd0IsR0FBOUIsTUFBTSx3QkFBd0I7SUFRaEI7SUFQbkIsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUM7SUFDM0QsQ0FBQztJQUNELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLGVBQWUsQ0FBQztJQUNqRSxDQUFDO0lBRUQsWUFBbUIsUUFBa0I7UUFBbEIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtJQUFHLENBQUM7SUFFekMsY0FBYyxDQUFDLEtBQUs7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUMzRCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQUs7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUNqRSxDQUFDO2tGQWhCVSx3QkFBd0I7NkRBQXhCLHdCQUF3QjtZQ25CckMsNkJBQXVCO1lBQ3JCLFlBR0Y7O1lBQUEsaUJBQUs7WUFDTCxxQ0FBeUMscUJBQUE7WUFFekMsNkJBQXVCO1lBQ3JCLFlBSUY7O1lBQUEsaUJBQUs7WUFDTCwyQ0FBcUQscUJBQUE7WUFHckQsOEJBQXVCO1lBQ3JCLGFBQ0Y7O1lBQUEsaUJBQUs7WUFFTCwrQkFBaUMsY0FBQSwyQkFBQTtZQU0zQix3SEFBVSxrQ0FBOEIsSUFBQzs7WUFFekMsYUFDRjs7WUFBQSxpQkFBbUI7WUFFbkIsNENBTUM7WUFEQyx3SEFBVSxnQ0FBNEIsSUFBQzs7O1lBRXZDLGFBQ0Y7O1lBQUEsaUJBQW1CLEVBQUEsRUFBQTs7WUF0Q3JCLGVBR0Y7WUFIRSxzSEFHRjtZQUlFLGVBSUY7WUFKRSw2SEFJRjtZQUtFLGVBQ0Y7WUFERSwrR0FDRjtZQU1NLGVBQTZCO1lBQTdCLCtEQUE2QiwyQkFBQTtZQUk3QixlQUNGO1lBREUsaUhBQ0Y7WUFJRSxlQUF5QztZQUF6Qyx5RUFBeUMsMkJBQUEsd0RBQUE7WUFLekMsZUFDRjtZQURFLCtHQUNGOzs7QURwQlMsd0JBQXdCO0lBYnBDLGFBQWEsQ0FBQztRQUNiLElBQUksRUFBRSxhQUFhO1FBQ25CLEtBQUssRUFBRSxtQ0FBbUM7UUFDMUMsSUFBSSxFQUFFLFNBQVM7S0FDaEIsQ0FBQztJQUNGOztPQUVHOztxQ0FjNEIsUUFBUTtHQVIxQix3QkFBd0IsQ0FpQnBDO3VGQWpCWSx3QkFBd0I7Y0FMcEMsU0FBUzsyQkFDRSx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IFRvb2xDb21wb25lbnQgfSBmcm9tICdAaWdvMi9jb21tb24nO1xyXG5cclxuaW1wb3J0IHsgTWFwU3RhdGUgfSBmcm9tICcuLi9tYXAuc3RhdGUnO1xyXG5cclxuQFRvb2xDb21wb25lbnQoe1xyXG4gIG5hbWU6ICdhZHZhbmNlZE1hcCcsXHJcbiAgdGl0bGU6ICdpZ28uaW50ZWdyYXRpb24udG9vbHMuYWR2YW5jZWRNYXAnLFxyXG4gIGljb246ICd0b29sYm94J1xyXG59KVxyXG4vKipcclxuICogVG9vbCB0byBoYW5kbGUgdGhlIGFkdmFuY2VkIG1hcCB0b29sc1xyXG4gKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tYWR2YW5jZWQtbWFwLXRvb2wnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZHZhbmNlZC1tYXAtdG9vbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWR2YW5jZWQtbWFwLXRvb2wuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWR2YW5jZWRNYXBUb29sQ29tcG9uZW50IHtcclxuICBnZXQgdHJhY2tpbmckKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubWFwU3RhdGUubWFwLmdlb2xvY2F0aW9uQ29udHJvbGxlci50cmFja2luZyQ7XHJcbiAgfVxyXG4gIGdldCBmb2xsb3dQb3NpdGlvbiQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tYXBTdGF0ZS5tYXAuZ2VvbG9jYXRpb25Db250cm9sbGVyLmZvbGxvd1Bvc2l0aW9uJDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBtYXBTdGF0ZTogTWFwU3RhdGUpIHt9XHJcblxyXG4gIHRvZ2dsZVRyYWNraW5nKHZhbHVlKSB7XHJcbiAgICB0aGlzLm1hcFN0YXRlLm1hcC5nZW9sb2NhdGlvbkNvbnRyb2xsZXIudHJhY2tpbmcgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHRvZ2dsZUZvbGxvdyh2YWx1ZSkge1xyXG4gICAgdGhpcy5tYXBTdGF0ZS5tYXAuZ2VvbG9jYXRpb25Db250cm9sbGVyLmZvbGxvd1Bvc2l0aW9uID0gdmFsdWU7XHJcbiAgfVxyXG59XHJcbiIsIjxoNCBjbGFzcz1cIm5hbWVPZlRvb2xcIj5cclxuICB7e1xyXG4gICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5zd2lwZS10b29sJyB8IHRyYW5zbGF0ZVxyXG4gIH19XHJcbjwvaDQ+XHJcbjxpZ28tYWR2YW5jZWQtc3dpcGU+PC9pZ28tYWR2YW5jZWQtc3dpcGU+XHJcbjxtYXQtZGl2aWRlciBjbGFzcz1cImFkdmFuY2VkLXRvb2wtbGluZVwiPjwvbWF0LWRpdmlkZXI+XHJcbjxoNCBjbGFzcz1cIm5hbWVPZlRvb2xcIj5cclxuICB7e1xyXG4gICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1jb29yZGluYXRlcy5jb29yZGluYXRlcydcclxuICAgICAgfCB0cmFuc2xhdGVcclxuICB9fVxyXG48L2g0PlxyXG48aWdvLWFkdmFuY2VkLWNvb3JkaW5hdGVzPjwvaWdvLWFkdmFuY2VkLWNvb3JkaW5hdGVzPlxyXG48bWF0LWRpdmlkZXIgY2xhc3M9XCJhZHZhbmNlZC10b29sLWxpbmVcIj48L21hdC1kaXZpZGVyPlxyXG5cclxuPGg0IGNsYXNzPVwibmFtZU9mVG9vbFwiPlxyXG4gIHt7ICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuZ2VvbG9jYXRpb24udGl0bGUnIHwgdHJhbnNsYXRlIH19XHJcbjwvaDQ+XHJcblxyXG48ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gIDxkaXYgY2xhc3M9XCJnZW9sb2NhdGlvbi1zbGlkZS10b2dnbGUtY29udGFpbmVyIG1hdC10eXBvZ3JhcGh5XCI+XHJcbiAgICA8bWF0LXNsaWRlLXRvZ2dsZVxyXG4gICAgICBjbGFzcz1cImdlb2xvY2F0aW9uLW9wdGlvbiBtYXQtdHlwb2dyYXBoeVwiXHJcbiAgICAgIFtjaGVja2VkXT1cInRyYWNraW5nJCB8IGFzeW5jXCJcclxuICAgICAgW2xhYmVsUG9zaXRpb25dPVwiJ2JlZm9yZSdcIlxyXG4gICAgICAoY2hhbmdlKT1cInRvZ2dsZVRyYWNraW5nKCRldmVudC5jaGVja2VkKVwiXHJcbiAgICA+XHJcbiAgICAgIHt7ICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuZ2VvbG9jYXRpb24udHJhY2tpbmcnIHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L21hdC1zbGlkZS10b2dnbGU+XHJcblxyXG4gICAgPG1hdC1zbGlkZS10b2dnbGVcclxuICAgICAgY2xhc3M9XCJnZW9sb2NhdGlvbi1vcHRpb24gbWF0LXR5cG9ncmFwaHlcIlxyXG4gICAgICBbZGlzYWJsZWRdPVwiKHRyYWNraW5nJCB8IGFzeW5jKSAhPT0gdHJ1ZVwiXHJcbiAgICAgIFtsYWJlbFBvc2l0aW9uXT1cIidiZWZvcmUnXCJcclxuICAgICAgW2NoZWNrZWRdPVwiZm9sbG93UG9zaXRpb24kIHwgYXN5bmNcIlxyXG4gICAgICAoY2hhbmdlKT1cInRvZ2dsZUZvbGxvdygkZXZlbnQuY2hlY2tlZClcIlxyXG4gICAgPlxyXG4gICAgICB7eyAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmdlb2xvY2F0aW9uLmZvbGxvdycgfCB0cmFuc2xhdGUgfX1cclxuICAgIDwvbWF0LXNsaWRlLXRvZ2dsZT5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,8 +1,8 @@
1
1
  import { Component } from '@angular/core';
2
2
  import { UntypedFormBuilder, Validators } from '@angular/forms';
3
3
  import { ContextService } from '@igo2/context';
4
- import { MapState } from '../../map.state';
5
4
  import { ToolState } from '../../../tool/tool.state';
5
+ import { MapState } from '../../map.state';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "../../map.state";
8
8
  import * as i2 from "@igo2/context";
@@ -226,6 +226,6 @@ export class AdvancedSwipeComponent {
226
226
  }
227
227
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AdvancedSwipeComponent, [{
228
228
  type: Component,
229
- args: [{ selector: 'igo-advanced-swipe', template: "<div\n *ngIf=\"userControlledLayerList.length; else noLayersBlock\"\n class=\"igo-swipe-select-container\"\n>\n <form class=\"igo-form\" [formGroup]=\"form\">\n <mat-form-field>\n <mat-label>{{\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-select'\n | translate\n }}</mat-label>\n <mat-select formControlName=\"layers\" multiple>\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.selectAll'\n | translate\n }}\n </mat-option>\n <mat-divider></mat-divider>\n <mat-option\n *ngFor=\"let layer of userControlledLayerList\"\n [value]=\"layer\"\n (click)=\"applyNewLayers(e)\"\n >{{ layer.title }}</mat-option\n >\n </mat-select>\n </mat-form-field>\n </form>\n\n <mat-slide-toggle\n class=\"swipe-toggle mat-typography\"\n [checked]=\"swipe\"\n [labelPosition]=\"'before'\"\n (change)=\"startSwipe($event.checked)\"\n >\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate }}\n </mat-slide-toggle>\n</div>\n\n<ng-template #noLayersBlock>\n <mat-list>\n <p class=\"map-empty mat-typography\">\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.empty' | translate }}\n </p>\n <p class=\"map-empty mat-typography\">\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate\n }}\n </p>\n <mat-list-item>\n <mat-icon matListItemIcon svgIcon=\"magnify\"></mat-icon>\n <span\n matListItemTitle\n class=\"search-tool mat-typography\"\n (click)=\"searchEmit()\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.search-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n <mat-list-item>\n <mat-icon matListItemIcon svgIcon=\"layers-plus\"></mat-icon>\n <span\n matListItemTitle\n class=\"catalog-tool mat-typography\"\n (click)=\"catalogEmit()\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n <mat-list-item>\n <mat-icon matListItemIcon svgIcon=\"star\"></mat-icon>\n <span\n matListItemTitle\n class=\"context-tool mat-typography\"\n (click)=\"contextEmit()\"\n >\n {{\n 'igo.integration.advanced-map-tool.advanced-swipe.context-tool'\n | translate\n }}\n </span>\n </mat-list-item>\n </mat-list>\n</ng-template>\n", styles: [":host .nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}:host .igo-swipe-select-container{padding:10px}:host .igo-swipe-select-container mat-form-field{width:100%}:host .igo-form{padding:1px 5px;width:100%}:host mat-slide-toggle{width:100%;padding:0 8px}:host mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}:host mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}:host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:5px}:host .map-empty{padding:10px;text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:15px}:host .advanced-tool-line{height:2px;background-color:gray}\n"] }]
229
+ args: [{ selector: 'igo-advanced-swipe', template: "<div\r\n *ngIf=\"userControlledLayerList.length; else noLayersBlock\"\r\n class=\"igo-swipe-select-container\"\r\n>\r\n <form class=\"igo-form\" [formGroup]=\"form\">\r\n <mat-form-field>\r\n <mat-label>{{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.swipe-select'\r\n | translate\r\n }}</mat-label>\r\n <mat-select formControlName=\"layers\" multiple>\r\n <mat-option [value]=\"1\" (click)=\"selectAll(e)\" #e>\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.selectAll'\r\n | translate\r\n }}\r\n </mat-option>\r\n <mat-divider></mat-divider>\r\n <mat-option\r\n *ngFor=\"let layer of userControlledLayerList\"\r\n [value]=\"layer\"\r\n (click)=\"applyNewLayers(e)\"\r\n >{{ layer.title }}</mat-option\r\n >\r\n </mat-select>\r\n </mat-form-field>\r\n </form>\r\n\r\n <mat-slide-toggle\r\n class=\"swipe-toggle mat-typography\"\r\n [checked]=\"swipe\"\r\n [labelPosition]=\"'before'\"\r\n (change)=\"startSwipe($event.checked)\"\r\n >\r\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.swipe' | translate }}\r\n </mat-slide-toggle>\r\n</div>\r\n\r\n<ng-template #noLayersBlock>\r\n <mat-list>\r\n <p class=\"map-empty mat-typography\">\r\n {{ 'igo.integration.advanced-map-tool.advanced-swipe.empty' | translate }}\r\n </p>\r\n <p class=\"map-empty mat-typography\">\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.customize' | translate\r\n }}\r\n </p>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"magnify\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"search-tool mat-typography\"\r\n (click)=\"searchEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.search-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"layers-plus\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"catalog-tool mat-typography\"\r\n (click)=\"catalogEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.catalog-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n <mat-list-item>\r\n <mat-icon matListItemIcon svgIcon=\"star\"></mat-icon>\r\n <span\r\n matListItemTitle\r\n class=\"context-tool mat-typography\"\r\n (click)=\"contextEmit()\"\r\n >\r\n {{\r\n 'igo.integration.advanced-map-tool.advanced-swipe.context-tool'\r\n | translate\r\n }}\r\n </span>\r\n </mat-list-item>\r\n </mat-list>\r\n</ng-template>\r\n", styles: [":host .nameOfTool{text-align:center;font-weight:700;font-size:small;margin:15px 10px 0}:host .igo-swipe-select-container{padding:10px}:host .igo-swipe-select-container mat-form-field{width:100%}:host .igo-form{padding:1px 5px;width:100%}:host mat-slide-toggle{width:100%;padding:0 8px}:host mat-slide-toggle ::ng-deep .mdc-form-field{width:100%}:host mat-slide-toggle ::ng-deep .mdc-label{margin-left:0;width:calc(100% - 60px)}:host .map-empty,:host .search-tool,:host .catalog-tool,:host .context-tool{margin:5px}:host .map-empty{padding:10px;text-align:justify}:host .search-tool,:host .catalog-tool,:host .context-tool{cursor:pointer}:host mat-list mat-list-item h4{font-weight:700}:host mat-list-item ::ng-deep .mdc-list-item__primary-text{font-size:smaller}:host mat-list.mat-mdc-list-base mat-list-item.mat-mdc-list-item ::ng-deep div.mdc-list-item__content div.mdc-list-item__primary-text{padding-left:15px}:host .advanced-tool-line{height:2px;background-color:gray}\n"] }]
230
230
  }], function () { return [{ type: i1.MapState }, { type: i2.ContextService }, { type: i3.UntypedFormBuilder }, { type: i4.ToolState }]; }, null); })();
231
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtc3dpcGUvYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtc3dpcGUvYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUVMLGtCQUFrQixFQUNsQixVQUFVLEVBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsY0FBYyxFQUFtQixNQUFNLGVBQWUsQ0FBQztBQUVoRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztJQ1M3QyxxQ0FJRztJQURELHdPQUFTLGVBQUEsMEJBQWlCLENBQUEsSUFBQztJQUMxQixZQUFpQjtJQUFBLGlCQUNuQjs7O0lBSEMsZ0NBQWU7SUFFZCxlQUFpQjtJQUFqQixvQ0FBaUI7Ozs7SUF0QjVCLDhCQUdDLGNBQUEscUJBQUEsZ0JBQUE7SUFHZ0IsWUFHVDs7SUFBQSxpQkFBWTtJQUNkLHFDQUE4Qyx1QkFBQTtJQUNwQixzTUFBUyxlQUFBLHFCQUFZLENBQUEsSUFBQztJQUM1QyxZQUlGOztJQUFBLGlCQUFhO0lBQ2IsK0JBQTJCO0lBQzNCLDZGQUtDO0lBQ0gsaUJBQWEsRUFBQSxFQUFBO0lBSWpCLDRDQUtDO0lBREMsdUxBQVUsZUFBQSxrQ0FBMEIsQ0FBQSxJ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Q0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDeEM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVTtRQUNSLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN4RCxDQUFDO2dGQXZIVSxzQkFBc0I7NkRBQXRCLHNCQUFzQjtZQ2hCbkMseUVBb0NNO1lBRU4sMEhBa0RjOzs7WUF2RlgseURBQXNDLGlCQUFBOzs7dUZEZTVCLHNCQUFzQjtjQUxsQyxTQUFTOzJCQUNFLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFVudHlwZWRGb3JtR3JvdXAsXG4gIFVudHlwZWRGb3JtQnVpbGRlcixcbiAgVmFsaWRhdG9yc1xufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSwgRGV0YWlsZWRDb250ZXh0IH0gZnJvbSAnQGlnbzIvY29udGV4dCc7XG5pbXBvcnQgeyBJZ29NYXAsIExheWVyLCBWZWN0b3JMYXllciB9IGZyb20gJ0BpZ28yL2dlbyc7XG5pbXBvcnQgeyBNYXBTdGF0ZSB9IGZyb20gJy4uLy4uL21hcC5zdGF0ZSc7XG5pbXBvcnQgeyBUb29sU3RhdGUgfSBmcm9tICcuLi8uLi8uLi90b29sL3Rvb2wuc3RhdGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tYWR2YW5jZWQtc3dpcGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hZHZhbmNlZC1zd2lwZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEFkdmFuY2VkU3dpcGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHB1YmxpYyBzd2lwZTogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgbGF5ZXJMaXN0OiBMYXllcltdO1xuICBwdWJsaWMgdXNlckNvbnRyb2xsZWRMYXllckxpc3Q6IExheWVyW107XG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBwdWJsaWMgbGF5ZXJzOiBWZWN0b3JMYXllcltdO1xuICBwdWJsaWMgcmVzOiBEZXRhaWxlZENvbnRleHQ7XG4gIHB1YmxpYyBsaXN0Rm9yU3dpcGU6IExheWVyW107XG5cbiAgLyoqXG4gICAqIEdldCBhbiBhY3RpdmUgbWFwIHN0YXRlXG4gICAqL1xuICBnZXQgbWFwKCk6IElnb01hcCB7XG4gICAgcmV0dXJuIHRoaXMubWFwU3RhdGUubWFwO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIG1hcFN0YXRlOiBNYXBTdGF0ZSxcbiAgICBwcml2YXRlIGNvbnRleHRTZXJ2aWNlOiBDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSB0b29sU3RhdGU6IFRvb2xTdGF0ZVxuICApIHtcbiAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbGlzdCBvZiBsYXllcnMgZm9yIHN3aXBlXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5tYXAubGF5ZXJzJC5zdWJzY3JpYmUoXG4gICAgICAobGwpID0+XG4gICAgICAgICh0aGlzLnVzZXJDb250cm9sbGVkTGF5ZXJMaXN0ID0gbGwuZmlsdGVyKFxuICAgICAgICAgIChsYXllcikgPT5cbiAgICAgICAgICAgICFsYXllci5iYXNlTGF5ZXIgJiYgbGF5ZXIuc2hvd0luTGF5ZXJMaXN0ICYmIGxheWVyLmRpc3BsYXllZFxuICAgICAgICApKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGVzYWN0aXZhdGUgdGhlIHN3aXBlXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5zd2lwZSA9IGZhbHNlO1xuICAgIHRoaXMubWFwLnN3aXBlRW5hYmxlZCQubmV4dCh0aGlzLnN3aXBlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhIGZvcm0gZm9yIGNob2lzZSBvZiB0aGUgbGF5ZXJzXG4gICAqL1xuICBwcml2YXRlIGJ1aWxkRm9ybSgpIHtcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcbiAgICAgIGxheWVyczogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWN0aXZhdGUgdGhlIHN3aXBlLCBzZW5kIGEgbGlzdCBvZiBsYXllcnMgZm9yIGEgc3dpcGUtdG9vbFxuICAgKi9cbiAgc3RhcnRTd2lwZSh0b2dnbGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnN3aXBlID0gdG9nZ2xlO1xuICAgIHRoaXMubWFwLnN3aXBlRW5hYmxlZCQubmV4dCh0b2dnbGUpO1xuICAgIHRoaXMubGlzdEZvclN3aXBlID0gW107XG4gICAgZm9yIChjb25zdCBsYXllciBvZiB0aGlzLmZvcm0udmFsdWUubGF5ZXJzKSB7XG4gICAgICB0aGlzLmxpc3RGb3JTd2lwZS5wdXNoKGxheWVyKTtcbiAgICB9XG4gICAgdGhpcy5tYXAuc2VsZWN0ZWRGZWF0dXJlcyQubmV4dCh0aGlzLmxpc3RGb3JTd2lwZSk7XG4gIH1cblxuICAvKipcbiAgICogUmVzdGFydCBhIHN3aXBlIGZvciBhIG5ldyBsYXllcnMtbGlzdFxuICAgKi9cbiAgYXBwbHlOZXdMYXllcnMoZSkge1xuICAgIHRoaXMuc3RhcnRTd2lwZShmYWxzZSk7IC8vIGwnYXBwcm9jaGUgS0lTU1xuICAgIHRoaXMuc3RhcnRTd2lwZSh0cnVlKTtcbiAgICBpZiAoZS5fc2VsZWN0ZWQpIHtcbiAgICAgIGUuX3NlbGVjdGVkID0gZmFsc2U7XG4gICAgfVxuICAgIGNvbnN0IGFsbExheWVycyA9IHRoaXMudXNlckNvbnRyb2xsZWRMYXllckxpc3QubGVuZ3RoO1xuICAgIGNvbnN0IHNlbGVjdGVkTGF5ZXJzID0gdGhpcy5mb3JtLmNvbnRyb2xzLmxheWVycy52YWx1ZS5sZW5ndGg7XG4gICAgaWYgKHNlbGVjdGVkTGF5ZXJzID09PSBhbGxMYXllcnMpIHtcbiAgICAgIGUuX3NlbGVjdGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2VsZWN0IGFsbCBsaXN0IG9mIGxheWVycyBhbmQgcmVzdGFydCBhIHRvb2xcbiAgICovXG4gIHNlbGVjdEFsbChlKSB7XG4gICAgaWYgKGUuX3NlbGVjdGVkKSB7XG4gICAgICB0aGlzLmZvcm0uY29udHJvbHMubGF5ZXJzLnNldFZhbHVlKHRoaXMudXNlckNvbnRyb2xsZWRMYXllckxpc3QpO1xuICAgICAgZS5fc2VsZWN0ZWQgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm0uY29udHJvbHMubGF5ZXJzLnNldFZhbHVlKFtdKTtcbiAgICB9XG4gICAgdGhpcy5zdGFydFN3aXBlKGZhbHNlKTtcbiAgICB0aGlzLnN0YXJ0U3dpcGUodHJ1ZSk7XG4gIH1cblxuICAvKipcbiAgICogT3BlbiBzZWFyY2ggdG9vbFxuICAgKi9cbiAgc2VhcmNoRW1pdCgpIHtcbiAgICB0aGlzLnRvb2xTdGF0ZS50b29sYm94LmFjdGl2YXRlVG9vbCgnc2VhcmNoUmVzdWx0cycpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW4gY2F0YWxvZ1xuICAgKi9cbiAgY2F0YWxvZ0VtaXQoKSB7XG4gICAgdGhpcy50b29sU3RhdGUudG9vbGJveC5hY3RpdmF0ZVRvb2woJ2NhdGFsb2cnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVuIGNvbnRleHQgbWFuYWdlclxuICAgKi9cbiAgY29udGV4dEVtaXQoKSB7XG4gICAgdGhpcy50b29sU3RhdGUudG9vbGJveC5hY3RpdmF0ZVRvb2woJ2NvbnRleHRNYW5hZ2VyJyk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgKm5nSWY9XCJ1c2VyQ29udHJvbGxlZExheWVyTGlzdC5sZW5ndGg7IGVsc2Ugbm9MYXllcnNCbG9ja1wiXG4gIGNsYXNzPVwiaWdvLXN3aXBlLXNlbGVjdC1jb250YWluZXJcIlxuPlxuICA8Zm9ybSBjbGFzcz1cImlnby1mb3JtXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkPlxuICAgICAgPG1hdC1sYWJlbD57e1xuICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLXN3aXBlLnN3aXBlLXNlbGVjdCdcbiAgICAgICAgICB8IHRyYW5zbGF0ZVxuICAgICAgfX08L21hdC1sYWJlbD5cbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImxheWVyc1wiIG11bHRpcGxlPlxuICAgICAgICA8bWF0LW9wdGlvbiBbdmFsdWVdPVwiMVwiIChjbGljayk9XCJzZWxlY3RBbGwoZSlcIiAjZT5cbiAgICAgICAgICB7e1xuICAgICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5zZWxlY3RBbGwnXG4gICAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cbiAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAqbmdGb3I9XCJsZXQgbGF5ZXIgb2YgdXNlckNvbnRyb2xsZWRMYXllckxpc3RcIlxuICAgICAgICAgIFt2YWx1ZV09XCJsYXllclwiXG4gICAgICAgICAgKGNsaWNrKT1cImFwcGx5TmV3TGF5ZXJzKGUpXCJcbiAgICAgICAgICA+e3sgbGF5ZXIudGl0bGUgfX08L21hdC1vcHRpb25cbiAgICAgICAgPlxuICAgICAgPC9tYXQtc2VsZWN0PlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDwvZm9ybT5cblxuICA8bWF0LXNsaWRlLXRvZ2dsZVxuICAgIGNsYXNzPVwic3dpcGUtdG9nZ2xlIG1hdC10eXBvZ3JhcGh5XCJcbiAgICBbY2hlY2tlZF09XCJzd2lwZVwiXG4gICAgW2xhYmVsUG9zaXRpb25dPVwiJ2JlZm9yZSdcIlxuICAgIChjaGFuZ2UpPVwic3RhcnRTd2lwZSgkZXZlbnQuY2hlY2tlZClcIlxuICA+XG4gICAge3sgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5zd2lwZScgfCB0cmFuc2xhdGUgfX1cbiAgPC9tYXQtc2xpZGUtdG9nZ2xlPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjbm9MYXllcnNCbG9jaz5cbiAgPG1hdC1saXN0PlxuICAgIDxwIGNsYXNzPVwibWFwLWVtcHR5IG1hdC10eXBvZ3JhcGh5XCI+XG4gICAgICB7eyAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLXN3aXBlLmVtcHR5JyB8IHRyYW5zbGF0ZSB9fVxuICAgIDwvcD5cbiAgICA8cCBjbGFzcz1cIm1hcC1lbXB0eSBtYXQtdHlwb2dyYXBoeVwiPlxuICAgICAge3tcbiAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5jdXN0b21pemUnIHwgdHJhbnNsYXRlXG4gICAgICB9fVxuICAgIDwvcD5cbiAgICA8bWF0LWxpc3QtaXRlbT5cbiAgICAgIDxtYXQtaWNvbiBtYXRMaXN0SXRlbUljb24gc3ZnSWNvbj1cIm1hZ25pZnlcIj48L21hdC1pY29uPlxuICAgICAgPHNwYW5cbiAgICAgICAgbWF0TGlzdEl0ZW1UaXRsZVxuICAgICAgICBjbGFzcz1cInNlYXJjaC10b29sIG1hdC10eXBvZ3JhcGh5XCJcbiAgICAgICAgKGNsaWNrKT1cInNlYXJjaEVtaXQoKVwiXG4gICAgICA+XG4gICAgICAgIHt7XG4gICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5zZWFyY2gtdG9vbCdcbiAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgIH19XG4gICAgICA8L3NwYW4+XG4gICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgIDxtYXQtbGlzdC1pdGVtPlxuICAgICAgPG1hdC1pY29uIG1hdExpc3RJdGVtSWNvbiBzdmdJY29uPVwibGF5ZXJzLXBsdXNcIj48L21hdC1pY29uPlxuICAgICAgPHNwYW5cbiAgICAgICAgbWF0TGlzdEl0ZW1UaXRsZVxuICAgICAgICBjbGFzcz1cImNhdGFsb2ctdG9vbCBtYXQtdHlwb2dyYXBoeVwiXG4gICAgICAgIChjbGljayk9XCJjYXRhbG9nRW1pdCgpXCJcbiAgICAgID5cbiAgICAgICAge3tcbiAgICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLXN3aXBlLmNhdGFsb2ctdG9vbCdcbiAgICAgICAgICAgIHwgdHJhbnNsYXRlXG4gICAgICAgIH19XG4gICAgICA8L3NwYW4+XG4gICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgIDxtYXQtbGlzdC1pdGVtPlxuICAgICAgPG1hdC1pY29uIG1hdExpc3RJdGVtSWNvbiBzdmdJY29uPVwic3RhclwiPjwvbWF0LWljb24+XG4gICAgICA8c3BhblxuICAgICAgICBtYXRMaXN0SXRlbVRpdGxlXG4gICAgICAgIGNsYXNzPVwiY29udGV4dC10b29sIG1hdC10eXBvZ3JhcGh5XCJcbiAgICAgICAgKGNsaWNrKT1cImNvbnRleHRFbWl0KClcIlxuICAgICAgPlxuICAgICAgICB7e1xuICAgICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtc3dpcGUuY29udGV4dC10b29sJ1xuICAgICAgICAgICAgfCB0cmFuc2xhdGVcbiAgICAgICAgfX1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L21hdC1saXN0LWl0ZW0+XG4gIDwvbWF0LWxpc3Q+XG48L25nLXRlbXBsYXRlPlxuIl19
231
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtc3dpcGUvYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvYWR2YW5jZWQtbWFwLXRvb2wvYWR2YW5jZWQtc3dpcGUvYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUNMLGtCQUFrQixFQUVsQixVQUFVLEVBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsY0FBYyxFQUFtQixNQUFNLGVBQWUsQ0FBQztBQUdoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztJQ09uQyxxQ0FJRztJQURELHdPQUFTLGVBQUEsMEJBQWlCLENBQUEsSUFBQztJQUMxQixZQUFpQjtJQUFBLGlCQUNuQjs7O0lBSEMsZ0NBQWU7SUFFZCxlQUFpQjtJQUFqQixvQ0FBaUI7Ozs7SUF0QjVCLDhCQUdDLGNBQUEscUJBQUEsZ0JBQUE7SUFHZ0IsWUFHVDs7SUFBQSxpQkFBWTtJQUNkLHFDQUE4Qyx1QkFBQTtJQUNwQixzTUFBUyxlQUFBLHFCQUFZLENBQUEsSUFBQztJQUM1QyxZQUlGOztJQUFBLGlCQUFhO0lBQ2IsK0JBQTJCO0lBQzNCLDZGQUtDO0lBQ0gsaUJBQWEsRUFBQSxFQUFBO0lBSWpCLDRDQUtDO0lBREMsdUxBQVUsZUFBQSxrQ0FBMEIsQ0FBQSxJ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Q0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDeEM7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsVUFBVTtRQUNSLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUN4RCxDQUFDO2dGQXZIVSxzQkFBc0I7NkRBQXRCLHNCQUFzQjtZQ2xCbkMseUVBb0NNO1lBRU4sMEhBa0RjOzs7WUF2RlgseURBQXNDLGlCQUFBOzs7dUZEaUI1QixzQkFBc0I7Y0FMbEMsU0FBUzsyQkFDRSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gIFVudHlwZWRGb3JtR3JvdXAsXHJcbiAgVmFsaWRhdG9yc1xyXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IENvbnRleHRTZXJ2aWNlLCBEZXRhaWxlZENvbnRleHQgfSBmcm9tICdAaWdvMi9jb250ZXh0JztcclxuaW1wb3J0IHsgSWdvTWFwLCBMYXllciwgVmVjdG9yTGF5ZXIgfSBmcm9tICdAaWdvMi9nZW8nO1xyXG5cclxuaW1wb3J0IHsgVG9vbFN0YXRlIH0gZnJvbSAnLi4vLi4vLi4vdG9vbC90b29sLnN0YXRlJztcclxuaW1wb3J0IHsgTWFwU3RhdGUgfSBmcm9tICcuLi8uLi9tYXAuc3RhdGUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tYWR2YW5jZWQtc3dpcGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hZHZhbmNlZC1zd2lwZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYWR2YW5jZWQtc3dpcGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQWR2YW5jZWRTd2lwZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBwdWJsaWMgc3dpcGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBwdWJsaWMgbGF5ZXJMaXN0OiBMYXllcltdO1xyXG4gIHB1YmxpYyB1c2VyQ29udHJvbGxlZExheWVyTGlzdDogTGF5ZXJbXTtcclxuICBwdWJsaWMgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuICBwdWJsaWMgbGF5ZXJzOiBWZWN0b3JMYXllcltdO1xyXG4gIHB1YmxpYyByZXM6IERldGFpbGVkQ29udGV4dDtcclxuICBwdWJsaWMgbGlzdEZvclN3aXBlOiBMYXllcltdO1xyXG5cclxuICAvKipcclxuICAgKiBHZXQgYW4gYWN0aXZlIG1hcCBzdGF0ZVxyXG4gICAqL1xyXG4gIGdldCBtYXAoKTogSWdvTWFwIHtcclxuICAgIHJldHVybiB0aGlzLm1hcFN0YXRlLm1hcDtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIG1hcFN0YXRlOiBNYXBTdGF0ZSxcclxuICAgIHByaXZhdGUgY29udGV4dFNlcnZpY2U6IENvbnRleHRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSB0b29sU3RhdGU6IFRvb2xTdGF0ZVxyXG4gICkge1xyXG4gICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCB0aGUgbGlzdCBvZiBsYXllcnMgZm9yIHN3aXBlXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLm1hcC5sYXllcnMkLnN1YnNjcmliZShcclxuICAgICAgKGxsKSA9PlxyXG4gICAgICAgICh0aGlzLnVzZXJDb250cm9sbGVkTGF5ZXJMaXN0ID0gbGwuZmlsdGVyKFxyXG4gICAgICAgICAgKGxheWVyKSA9PlxyXG4gICAgICAgICAgICAhbGF5ZXIuYmFzZUxheWVyICYmIGxheWVyLnNob3dJbkxheWVyTGlzdCAmJiBsYXllci5kaXNwbGF5ZWRcclxuICAgICAgICApKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERlc2FjdGl2YXRlIHRoZSBzd2lwZVxyXG4gICAqIEBpbnRlcm5hbFxyXG4gICAqL1xyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5zd2lwZSA9IGZhbHNlO1xyXG4gICAgdGhpcy5tYXAuc3dpcGVFbmFibGVkJC5uZXh0KHRoaXMuc3dpcGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQnVpbGQgYSBmb3JtIGZvciBjaG9pc2Ugb2YgdGhlIGxheWVyc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgYnVpbGRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgIGxheWVyczogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGl2YXRlIHRoZSBzd2lwZSwgc2VuZCBhIGxpc3Qgb2YgbGF5ZXJzIGZvciBhIHN3aXBlLXRvb2xcclxuICAgKi9cclxuICBzdGFydFN3aXBlKHRvZ2dsZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5zd2lwZSA9IHRvZ2dsZTtcclxuICAgIHRoaXMubWFwLnN3aXBlRW5hYmxlZCQubmV4dCh0b2dnbGUpO1xyXG4gICAgdGhpcy5saXN0Rm9yU3dpcGUgPSBbXTtcclxuICAgIGZvciAoY29uc3QgbGF5ZXIgb2YgdGhpcy5mb3JtLnZhbHVlLmxheWVycykge1xyXG4gICAgICB0aGlzLmxpc3RGb3JTd2lwZS5wdXNoKGxheWVyKTtcclxuICAgIH1cclxuICAgIHRoaXMubWFwLnNlbGVjdGVkRmVhdHVyZXMkLm5leHQodGhpcy5saXN0Rm9yU3dpcGUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmVzdGFydCBhIHN3aXBlIGZvciBhIG5ldyBsYXllcnMtbGlzdFxyXG4gICAqL1xyXG4gIGFwcGx5TmV3TGF5ZXJzKGUpIHtcclxuICAgIHRoaXMuc3RhcnRTd2lwZShmYWxzZSk7IC8vIGwnYXBwcm9jaGUgS0lTU1xyXG4gICAgdGhpcy5zdGFydFN3aXBlKHRydWUpO1xyXG4gICAgaWYgKGUuX3NlbGVjdGVkKSB7XHJcbiAgICAgIGUuX3NlbGVjdGVkID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBjb25zdCBhbGxMYXllcnMgPSB0aGlzLnVzZXJDb250cm9sbGVkTGF5ZXJMaXN0Lmxlbmd0aDtcclxuICAgIGNvbnN0IHNlbGVjdGVkTGF5ZXJzID0gdGhpcy5mb3JtLmNvbnRyb2xzLmxheWVycy52YWx1ZS5sZW5ndGg7XHJcbiAgICBpZiAoc2VsZWN0ZWRMYXllcnMgPT09IGFsbExheWVycykge1xyXG4gICAgICBlLl9zZWxlY3RlZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZWxlY3QgYWxsIGxpc3Qgb2YgbGF5ZXJzIGFuZCByZXN0YXJ0IGEgdG9vbFxyXG4gICAqL1xyXG4gIHNlbGVjdEFsbChlKSB7XHJcbiAgICBpZiAoZS5fc2VsZWN0ZWQpIHtcclxuICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLmxheWVycy5zZXRWYWx1ZSh0aGlzLnVzZXJDb250cm9sbGVkTGF5ZXJMaXN0KTtcclxuICAgICAgZS5fc2VsZWN0ZWQgPSB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mb3JtLmNvbnRyb2xzLmxheWVycy5zZXRWYWx1ZShbXSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnN0YXJ0U3dpcGUoZmFsc2UpO1xyXG4gICAgdGhpcy5zdGFydFN3aXBlKHRydWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbiBzZWFyY2ggdG9vbFxyXG4gICAqL1xyXG4gIHNlYXJjaEVtaXQoKSB7XHJcbiAgICB0aGlzLnRvb2xTdGF0ZS50b29sYm94LmFjdGl2YXRlVG9vbCgnc2VhcmNoUmVzdWx0cycpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbiBjYXRhbG9nXHJcbiAgICovXHJcbiAgY2F0YWxvZ0VtaXQoKSB7XHJcbiAgICB0aGlzLnRvb2xTdGF0ZS50b29sYm94LmFjdGl2YXRlVG9vbCgnY2F0YWxvZycpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogT3BlbiBjb250ZXh0IG1hbmFnZXJcclxuICAgKi9cclxuICBjb250ZXh0RW1pdCgpIHtcclxuICAgIHRoaXMudG9vbFN0YXRlLnRvb2xib3guYWN0aXZhdGVUb29sKCdjb250ZXh0TWFuYWdlcicpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgKm5nSWY9XCJ1c2VyQ29udHJvbGxlZExheWVyTGlzdC5sZW5ndGg7IGVsc2Ugbm9MYXllcnNCbG9ja1wiXHJcbiAgY2xhc3M9XCJpZ28tc3dpcGUtc2VsZWN0LWNvbnRhaW5lclwiXHJcbj5cclxuICA8Zm9ybSBjbGFzcz1cImlnby1mb3JtXCIgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3tcclxuICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLXN3aXBlLnN3aXBlLXNlbGVjdCdcclxuICAgICAgICAgIHwgdHJhbnNsYXRlXHJcbiAgICAgIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgIDxtYXQtc2VsZWN0IGZvcm1Db250cm9sTmFtZT1cImxheWVyc1wiIG11bHRpcGxlPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCIxXCIgKGNsaWNrKT1cInNlbGVjdEFsbChlKVwiICNlPlxyXG4gICAgICAgICAge3tcclxuICAgICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5zZWxlY3RBbGwnXHJcbiAgICAgICAgICAgICAgfCB0cmFuc2xhdGVcclxuICAgICAgICAgIH19XHJcbiAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uXHJcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgbGF5ZXIgb2YgdXNlckNvbnRyb2xsZWRMYXllckxpc3RcIlxyXG4gICAgICAgICAgW3ZhbHVlXT1cImxheWVyXCJcclxuICAgICAgICAgIChjbGljayk9XCJhcHBseU5ld0xheWVycyhlKVwiXHJcbiAgICAgICAgICA+e3sgbGF5ZXIudGl0bGUgfX08L21hdC1vcHRpb25cclxuICAgICAgICA+XHJcbiAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgPC9mb3JtPlxyXG5cclxuICA8bWF0LXNsaWRlLXRvZ2dsZVxyXG4gICAgY2xhc3M9XCJzd2lwZS10b2dnbGUgbWF0LXR5cG9ncmFwaHlcIlxyXG4gICAgW2NoZWNrZWRdPVwic3dpcGVcIlxyXG4gICAgW2xhYmVsUG9zaXRpb25dPVwiJ2JlZm9yZSdcIlxyXG4gICAgKGNoYW5nZSk9XCJzdGFydFN3aXBlKCRldmVudC5jaGVja2VkKVwiXHJcbiAgPlxyXG4gICAge3sgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5zd2lwZScgfCB0cmFuc2xhdGUgfX1cclxuICA8L21hdC1zbGlkZS10b2dnbGU+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNub0xheWVyc0Jsb2NrPlxyXG4gIDxtYXQtbGlzdD5cclxuICAgIDxwIGNsYXNzPVwibWFwLWVtcHR5IG1hdC10eXBvZ3JhcGh5XCI+XHJcbiAgICAgIHt7ICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtc3dpcGUuZW1wdHknIHwgdHJhbnNsYXRlIH19XHJcbiAgICA8L3A+XHJcbiAgICA8cCBjbGFzcz1cIm1hcC1lbXB0eSBtYXQtdHlwb2dyYXBoeVwiPlxyXG4gICAgICB7e1xyXG4gICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtc3dpcGUuY3VzdG9taXplJyB8IHRyYW5zbGF0ZVxyXG4gICAgICB9fVxyXG4gICAgPC9wPlxyXG4gICAgPG1hdC1saXN0LWl0ZW0+XHJcbiAgICAgIDxtYXQtaWNvbiBtYXRMaXN0SXRlbUljb24gc3ZnSWNvbj1cIm1hZ25pZnlcIj48L21hdC1pY29uPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIG1hdExpc3RJdGVtVGl0bGVcclxuICAgICAgICBjbGFzcz1cInNlYXJjaC10b29sIG1hdC10eXBvZ3JhcGh5XCJcclxuICAgICAgICAoY2xpY2spPVwic2VhcmNoRW1pdCgpXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7XHJcbiAgICAgICAgICAnaWdvLmludGVncmF0aW9uLmFkdmFuY2VkLW1hcC10b29sLmFkdmFuY2VkLXN3aXBlLnNlYXJjaC10b29sJ1xyXG4gICAgICAgICAgICB8IHRyYW5zbGF0ZVxyXG4gICAgICAgIH19XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvbWF0LWxpc3QtaXRlbT5cclxuICAgIDxtYXQtbGlzdC1pdGVtPlxyXG4gICAgICA8bWF0LWljb24gbWF0TGlzdEl0ZW1JY29uIHN2Z0ljb249XCJsYXllcnMtcGx1c1wiPjwvbWF0LWljb24+XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgbWF0TGlzdEl0ZW1UaXRsZVxyXG4gICAgICAgIGNsYXNzPVwiY2F0YWxvZy10b29sIG1hdC10eXBvZ3JhcGh5XCJcclxuICAgICAgICAoY2xpY2spPVwiY2F0YWxvZ0VtaXQoKVwiXHJcbiAgICAgID5cclxuICAgICAgICB7e1xyXG4gICAgICAgICAgJ2lnby5pbnRlZ3JhdGlvbi5hZHZhbmNlZC1tYXAtdG9vbC5hZHZhbmNlZC1zd2lwZS5jYXRhbG9nLXRvb2wnXHJcbiAgICAgICAgICAgIHwgdHJhbnNsYXRlXHJcbiAgICAgICAgfX1cclxuICAgICAgPC9zcGFuPlxyXG4gICAgPC9tYXQtbGlzdC1pdGVtPlxyXG4gICAgPG1hdC1saXN0LWl0ZW0+XHJcbiAgICAgIDxtYXQtaWNvbiBtYXRMaXN0SXRlbUljb24gc3ZnSWNvbj1cInN0YXJcIj48L21hdC1pY29uPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIG1hdExpc3RJdGVtVGl0bGVcclxuICAgICAgICBjbGFzcz1cImNvbnRleHQtdG9vbCBtYXQtdHlwb2dyYXBoeVwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNvbnRleHRFbWl0KClcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3tcclxuICAgICAgICAgICdpZ28uaW50ZWdyYXRpb24uYWR2YW5jZWQtbWFwLXRvb2wuYWR2YW5jZWQtc3dpcGUuY29udGV4dC10b29sJ1xyXG4gICAgICAgICAgICB8IHRyYW5zbGF0ZVxyXG4gICAgICAgIH19XHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvbWF0LWxpc3QtaXRlbT5cclxuICA8L21hdC1saXN0PlxyXG48L25nLXRlbXBsYXRlPlxyXG4iXX0=
@@ -37,4 +37,4 @@ export class LayerListToolState {
37
37
  providedIn: 'root'
38
38
  }]
39
39
  }], null, null); })();
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGlzdC10b29sLnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvbGF5ZXItbGlzdC10b29sLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHdkM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0JBQWtCO0lBQ3BCLFFBQVEsR0FBNEIsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDNUQsVUFBVSxHQUE2QixJQUFJLGVBQWUsQ0FDakUsU0FBUyxDQUNWLENBQUM7SUFDTyxZQUFZLEdBQTZCLElBQUksZUFBZSxDQUNuRSxTQUFTLENBQ1YsQ0FBQztJQUNPLFlBQVksR0FBNEIsSUFBSSxlQUFlLENBQ2xFLFNBQVMsQ0FDVixDQUFDO0lBRUYsVUFBVSxDQUFDLE9BQWU7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFhO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxjQUFjLENBQUMsV0FBb0I7UUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFXO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTztZQUNMLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUs7WUFDNUIsV0FBVyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSztZQUNwQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLO1NBQ2pDLENBQUM7SUFDSixDQUFDOzRFQWxDVSxrQkFBa0I7Z0VBQWxCLGtCQUFrQixXQUFsQixrQkFBa0IsbUJBRmpCLE1BQU07O3VGQUVQLGtCQUFrQjtjQUg5QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExheWVyTGlzdENvbnRyb2xzT3B0aW9ucyB9IGZyb20gJ0BpZ28yL2dlbyc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IGhvbGRzIHRoZSBzdGF0ZSBvZiBsYXllciBsaXN0IHRvb2wgdmFsdWVzXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIExheWVyTGlzdFRvb2xTdGF0ZSB7XG4gIHJlYWRvbmx5IGtleXdvcmQkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpO1xuICByZWFkb25seSBzb3J0QWxwaGEkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFxuICAgIHVuZGVmaW5lZFxuICApO1xuICByZWFkb25seSBvbmx5VmlzaWJsZSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoXG4gICAgdW5kZWZpbmVkXG4gICk7XG4gIHJlYWRvbmx5IHNlbGVjdGVkVGFiJDogQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KFxuICAgIHVuZGVmaW5lZFxuICApO1xuXG4gIHNldEtleXdvcmQoa2V5d29yZDogc3RyaW5nKSB7XG4gICAgdGhpcy5rZXl3b3JkJC5uZXh0KGtleXdvcmQpO1xuICB9XG5cbiAgc2V0U29ydEFscGhhKHNvcnQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLnNvcnRBbHBoYSQubmV4dChzb3J0KTtcbiAgfVxuXG4gIHNldE9ubHlWaXNpYmxlKG9ubHlWaXNpYmxlOiBib29sZWFuKSB7XG4gICAgdGhpcy5vbmx5VmlzaWJsZSQubmV4dChvbmx5VmlzaWJsZSk7XG4gIH1cblxuICBzZXRTZWxlY3RlZFRhYih0YWI6IG51bWJlcikge1xuICAgIHRoaXMuc2VsZWN0ZWRUYWIkLm5leHQodGFiKTtcbiAgfVxuXG4gIGdldExheWVyTGlzdENvbnRyb2xzKCk6IExheWVyTGlzdENvbnRyb2xzT3B0aW9ucyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGtleXdvcmQ6IHRoaXMua2V5d29yZCQudmFsdWUsXG4gICAgICBvbmx5VmlzaWJsZTogdGhpcy5vbmx5VmlzaWJsZSQudmFsdWUsXG4gICAgICBzb3J0QWxwaGE6IHRoaXMuc29ydEFscGhhJC52YWx1ZVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXItbGlzdC10b29sLnN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvaW50ZWdyYXRpb24vc3JjL2xpYi9tYXAvbGF5ZXItbGlzdC10b29sLnN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFFdkM7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0JBQWtCO0lBQ3BCLFFBQVEsR0FBNEIsSUFBSSxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDNUQsVUFBVSxHQUE2QixJQUFJLGVBQWUsQ0FDakUsU0FBUyxDQUNWLENBQUM7SUFDTyxZQUFZLEdBQTZCLElBQUksZUFBZSxDQUNuRSxTQUFTLENBQ1YsQ0FBQztJQUNPLFlBQVksR0FBNEIsSUFBSSxlQUFlLENBQ2xFLFNBQVMsQ0FDVixDQUFDO0lBRUYsVUFBVSxDQUFDLE9BQWU7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFlBQVksQ0FBQyxJQUFhO1FBQ3hCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxjQUFjLENBQUMsV0FBb0I7UUFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGNBQWMsQ0FBQyxHQUFXO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsT0FBTztZQUNMLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUs7WUFDNUIsV0FBVyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSztZQUNwQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLO1NBQ2pDLENBQUM7SUFDSixDQUFDOzRFQWxDVSxrQkFBa0I7Z0VBQWxCLGtCQUFrQixXQUFsQixrQkFBa0IsbUJBRmpCLE1BQU07O3VGQUVQLGtCQUFrQjtjQUg5QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBMYXllckxpc3RDb250cm9sc09wdGlvbnMgfSBmcm9tICdAaWdvMi9nZW8nO1xyXG5cclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG4vKipcclxuICogU2VydmljZSB0aGF0IGhvbGRzIHRoZSBzdGF0ZSBvZiBsYXllciBsaXN0IHRvb2wgdmFsdWVzXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMYXllckxpc3RUb29sU3RhdGUge1xyXG4gIHJlYWRvbmx5IGtleXdvcmQkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoJycpO1xyXG4gIHJlYWRvbmx5IHNvcnRBbHBoYSQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoXHJcbiAgICB1bmRlZmluZWRcclxuICApO1xyXG4gIHJlYWRvbmx5IG9ubHlWaXNpYmxlJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChcclxuICAgIHVuZGVmaW5lZFxyXG4gICk7XHJcbiAgcmVhZG9ubHkgc2VsZWN0ZWRUYWIkOiBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPiA9IG5ldyBCZWhhdmlvclN1YmplY3QoXHJcbiAgICB1bmRlZmluZWRcclxuICApO1xyXG5cclxuICBzZXRLZXl3b3JkKGtleXdvcmQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5rZXl3b3JkJC5uZXh0KGtleXdvcmQpO1xyXG4gIH1cclxuXHJcbiAgc2V0U29ydEFscGhhKHNvcnQ6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMuc29ydEFscGhhJC5uZXh0KHNvcnQpO1xyXG4gIH1cclxuXHJcbiAgc2V0T25seVZpc2libGUob25seVZpc2libGU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMub25seVZpc2libGUkLm5leHQob25seVZpc2libGUpO1xyXG4gIH1cclxuXHJcbiAgc2V0U2VsZWN0ZWRUYWIodGFiOiBudW1iZXIpIHtcclxuICAgIHRoaXMuc2VsZWN0ZWRUYWIkLm5leHQodGFiKTtcclxuICB9XHJcblxyXG4gIGdldExheWVyTGlzdENvbnRyb2xzKCk6IExheWVyTGlzdENvbnRyb2xzT3B0aW9ucyB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBrZXl3b3JkOiB0aGlzLmtleXdvcmQkLnZhbHVlLFxyXG4gICAgICBvbmx5VmlzaWJsZTogdGhpcy5vbmx5VmlzaWJsZSQudmFsdWUsXHJcbiAgICAgIHNvcnRBbHBoYTogdGhpcy5zb3J0QWxwaGEkLnZhbHVlXHJcbiAgICB9O1xyXG4gIH1cclxufVxyXG4iXX0=