@loxia/mst-viewer 8.1.3-202512032157 → 8.1.3-202512061923

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 (122) hide show
  1. package/esm2022/generated/openapi/api/api.mjs +2 -5
  2. package/esm2022/generated/openapi/api/appConfigController.service.mjs +4 -4
  3. package/esm2022/generated/openapi/api/bewegingController.service.mjs +4 -4
  4. package/esm2022/generated/openapi/api/class0BuildProperties.service.mjs +4 -4
  5. package/esm2022/generated/openapi/api/connectorController.service.mjs +4 -4
  6. package/esm2022/generated/openapi/api/logController.service.mjs +4 -4
  7. package/esm2022/generated/openapi/api/p21Controller.service.mjs +4 -4
  8. package/esm2022/generated/openapi/api/sbController.service.mjs +4 -4
  9. package/esm2022/generated/openapi/api.module.mjs +5 -5
  10. package/esm2022/generated/openapi/model/models.mjs +1 -10
  11. package/esm2022/lib/atomic-components/message/message.component.mjs +4 -4
  12. package/esm2022/lib/atomic-components/messages/messages.component.mjs +4 -4
  13. package/esm2022/lib/atomic-components/overlay/overlay.component.mjs +4 -4
  14. package/esm2022/lib/atomic-components/progress-indicator/progress-indicator.component.mjs +4 -4
  15. package/esm2022/lib/atomic-components/services/messages.service.mjs +4 -4
  16. package/esm2022/lib/components/carousel-controls/carousel-controls.component.mjs +4 -4
  17. package/esm2022/lib/components/mstviewer/mstviewer.component.mjs +4 -4
  18. package/esm2022/lib/components/ritdelen-lijst/ritdelen-lijst.component.mjs +4 -4
  19. package/esm2022/lib/components/ritdelen-view/ritdelen-view.component.mjs +4 -4
  20. package/esm2022/lib/components/rpe/rpe.component.mjs +4 -4
  21. package/esm2022/lib/components/svg-visualisatie/svg-visualisatie.component.mjs +5 -6
  22. package/esm2022/lib/components/viewer-controls/viewer-controls.component.mjs +5 -5
  23. package/esm2022/lib/mst-viewer.module.mjs +5 -5
  24. package/esm2022/lib/resources/mstlogging.resource.mjs +4 -4
  25. package/esm2022/lib/resources/signaleringsbeeldinfo.resource.mjs +5 -26
  26. package/esm2022/lib/services/base-rest.service.mjs +4 -4
  27. package/esm2022/lib/services/beweging-utils.service.mjs +4 -4
  28. package/esm2022/lib/services/beweging-verrijker.service.mjs +4 -4
  29. package/esm2022/lib/services/connector.service.mjs +4 -4
  30. package/esm2022/lib/services/debug.service.mjs +4 -4
  31. package/esm2022/lib/services/editor.service.mjs +4 -4
  32. package/esm2022/lib/services/print-beweging.service.mjs +4 -4
  33. package/esm2022/lib/services/rit-lezer.service.mjs +4 -4
  34. package/esm2022/lib/services/signalerings-beeld-manager.service.mjs +4 -4
  35. package/esm2022/lib/services/viewer-control.service.mjs +27 -5
  36. package/esm2022/lib/state/actions/actions.mjs +2 -8
  37. package/esm2022/lib/state/effect/bepaal-ongeplande-acties.effect.mjs +4 -4
  38. package/esm2022/lib/state/effect/bepaal-sb-infos.effect.mjs +4 -4
  39. package/esm2022/lib/state/effect/beweging-invoegen.effect.mjs +4 -4
  40. package/esm2022/lib/state/effect/delete-ongeplande-actie.effect.mjs +4 -4
  41. package/esm2022/lib/state/effect/focus-effect.mjs +4 -4
  42. package/esm2022/lib/state/effect/laad-route-files.effect.mjs +4 -4
  43. package/esm2022/lib/state/effect/laad-signaleringsbeelden.effect.mjs +4 -4
  44. package/esm2022/lib/state/effect/rit-goedkeuren.effect.mjs +4 -4
  45. package/esm2022/lib/state/effect/ritdelen.effect.mjs +4 -4
  46. package/esm2022/lib/state/effect/svg-view.effect.mjs +19 -60
  47. package/esm2022/lib/state/mst-editor-state.mjs +1 -3
  48. package/esm2022/lib/util/actie-helper.mjs +4 -4
  49. package/esm2022/lib/util/date.service.mjs +4 -4
  50. package/esm2022/lib/util/logging-helper.mjs +8 -16
  51. package/esm2022/lib/util/zone-util.mjs +4 -4
  52. package/esm2022/src/generated/openapi/api/api.mjs +2 -5
  53. package/esm2022/src/generated/openapi/api/appConfigController.service.mjs +4 -4
  54. package/esm2022/src/generated/openapi/api/bewegingController.service.mjs +4 -4
  55. package/esm2022/src/generated/openapi/api/class0BuildProperties.service.mjs +4 -4
  56. package/esm2022/src/generated/openapi/api/connectorController.service.mjs +4 -4
  57. package/esm2022/src/generated/openapi/api/logController.service.mjs +4 -4
  58. package/esm2022/src/generated/openapi/api/p21Controller.service.mjs +4 -4
  59. package/esm2022/src/generated/openapi/api/sbController.service.mjs +4 -4
  60. package/esm2022/src/generated/openapi/api.module.mjs +5 -5
  61. package/esm2022/src/generated/openapi/model/models.mjs +1 -10
  62. package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs +28 -220
  63. package/fesm2022/loxia-mst-viewer-src-generated-openapi.mjs.map +1 -1
  64. package/fesm2022/loxia-mst-viewer.mjs +188 -436
  65. package/fesm2022/loxia-mst-viewer.mjs.map +1 -1
  66. package/generated/openapi/api/api.d.ts +1 -4
  67. package/generated/openapi/model/models.d.ts +0 -9
  68. package/lib/components/svg-visualisatie/svg-visualisatie.component.d.ts +0 -1
  69. package/lib/resources/signaleringsbeeldinfo.resource.d.ts +1 -11
  70. package/lib/services/viewer-control.service.d.ts +3 -0
  71. package/lib/state/actions/actions.d.ts +2 -10
  72. package/lib/state/effect/svg-view.effect.d.ts +6 -12
  73. package/lib/state/mst-editor-state.d.ts +1 -3
  74. package/lib/util/logging-helper.d.ts +0 -2
  75. package/package.json +1 -1
  76. package/src/generated/openapi/api/api.d.ts +1 -4
  77. package/src/generated/openapi/model/models.d.ts +0 -9
  78. package/tailwind.scss +1 -1
  79. package/esm2022/generated/openapi/api/svgController.service.mjs +0 -155
  80. package/esm2022/generated/openapi/api/svgController.serviceInterface.mjs +0 -2
  81. package/esm2022/generated/openapi/model/kilometrering.mjs +0 -13
  82. package/esm2022/generated/openapi/model/sein.mjs +0 -10
  83. package/esm2022/generated/openapi/model/signaleringsElement.mjs +0 -13
  84. package/esm2022/generated/openapi/model/spoornummer.mjs +0 -13
  85. package/esm2022/generated/openapi/model/spoortakFragment.mjs +0 -2
  86. package/esm2022/generated/openapi/model/svgInfoDto.mjs +0 -2
  87. package/esm2022/generated/openapi/model/svgTopology.mjs +0 -2
  88. package/esm2022/generated/openapi/model/topologyElement.mjs +0 -2
  89. package/esm2022/generated/openapi/model/wissel.mjs +0 -2
  90. package/esm2022/src/generated/openapi/api/svgController.service.mjs +0 -155
  91. package/esm2022/src/generated/openapi/api/svgController.serviceInterface.mjs +0 -2
  92. package/esm2022/src/generated/openapi/model/kilometrering.mjs +0 -13
  93. package/esm2022/src/generated/openapi/model/sein.mjs +0 -10
  94. package/esm2022/src/generated/openapi/model/signaleringsElement.mjs +0 -13
  95. package/esm2022/src/generated/openapi/model/spoornummer.mjs +0 -13
  96. package/esm2022/src/generated/openapi/model/spoortakFragment.mjs +0 -2
  97. package/esm2022/src/generated/openapi/model/svgInfoDto.mjs +0 -2
  98. package/esm2022/src/generated/openapi/model/svgTopology.mjs +0 -2
  99. package/esm2022/src/generated/openapi/model/topologyElement.mjs +0 -2
  100. package/esm2022/src/generated/openapi/model/wissel.mjs +0 -2
  101. package/generated/openapi/api/svgController.service.d.ts +0 -40
  102. package/generated/openapi/api/svgController.serviceInterface.d.ts +0 -27
  103. package/generated/openapi/model/kilometrering.d.ts +0 -15
  104. package/generated/openapi/model/sein.d.ts +0 -46
  105. package/generated/openapi/model/signaleringsElement.d.ts +0 -16
  106. package/generated/openapi/model/spoornummer.d.ts +0 -17
  107. package/generated/openapi/model/spoortakFragment.d.ts +0 -26
  108. package/generated/openapi/model/svgInfoDto.d.ts +0 -16
  109. package/generated/openapi/model/svgTopology.d.ts +0 -21
  110. package/generated/openapi/model/topologyElement.d.ts +0 -18
  111. package/generated/openapi/model/wissel.d.ts +0 -31
  112. package/src/generated/openapi/api/svgController.service.d.ts +0 -40
  113. package/src/generated/openapi/api/svgController.serviceInterface.d.ts +0 -27
  114. package/src/generated/openapi/model/kilometrering.d.ts +0 -15
  115. package/src/generated/openapi/model/sein.d.ts +0 -46
  116. package/src/generated/openapi/model/signaleringsElement.d.ts +0 -16
  117. package/src/generated/openapi/model/spoornummer.d.ts +0 -17
  118. package/src/generated/openapi/model/spoortakFragment.d.ts +0 -26
  119. package/src/generated/openapi/model/svgInfoDto.d.ts +0 -16
  120. package/src/generated/openapi/model/svgTopology.d.ts +0 -21
  121. package/src/generated/openapi/model/topologyElement.d.ts +0 -18
  122. package/src/generated/openapi/model/wissel.d.ts +0 -31
@@ -14,10 +14,10 @@ export class RitGoedkeurenEffect {
14
14
  this.bewegingVerrijker = bewegingVerrijker;
15
15
  this.keurAllesGoed$ = createEffect(() => this.actions$.pipe(ofType(KeurAlleActiesGoed), withLatestFrom(this.store), switchMap(([action, _store]) => from(this.bewegingVerrijker.getBewegingen(action.bewegingen, action.ongeplandeActies))), map((bewegingen) => UpdateRit(bewegingen))));
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitGoedkeurenEffect, deps: [{ token: i1.Actions }, { token: i2.Store }, { token: i3.BewegingVerrijkerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
18
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitGoedkeurenEffect }); }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitGoedkeurenEffect, deps: [{ token: i1.Actions }, { token: i2.Store }, { token: i3.BewegingVerrijkerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
18
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitGoedkeurenEffect }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitGoedkeurenEffect, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitGoedkeurenEffect, decorators: [{
21
21
  type: Injectable
22
22
  }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.Store }, { type: i3.BewegingVerrijkerService }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicml0LWdvZWRrZXVyZW4uZWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3N0YXRlL2VmZmVjdC9yaXQtZ29lZGtldXJlbi5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFJbkUsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixZQUFvQixRQUFpQixFQUNqQixLQUE0QixFQUM1QixpQkFBMkM7UUFGM0MsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUM1QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO1FBRy9ELG1CQUFjLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNsRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsRUFDMUIsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFDMUIsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQ3pGLEVBQ0QsR0FBRyxDQUFDLENBQUMsVUFBc0IsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ3pELENBQUMsQ0FBQztJQVRILENBQUM7K0dBTFEsbUJBQW1CO21IQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBmcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCZXdlZ2luZyB9IGZyb20gJy4uLy4uL29wdGltbyc7XG5pbXBvcnQgeyBCZXdlZ2luZ1ZlcnJpamtlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9iZXdlZ2luZy12ZXJyaWprZXIuc2VydmljZSc7XG5pbXBvcnQgeyBLZXVyQWxsZUFjdGllc0dvZWQsIFVwZGF0ZVJpdCB9IGZyb20gJy4uL2FjdGlvbnMvYWN0aW9ucyc7XG5pbXBvcnQgeyBNc3RFZGl0b3JTdGF0ZSB9IGZyb20gJy4uL21zdC1lZGl0b3Itc3RhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUml0R29lZGtldXJlbkVmZmVjdCB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPE1zdEVkaXRvclN0YXRlPixcbiAgICAgICAgICAgICAgICBwcml2YXRlIGJld2VnaW5nVmVycmlqa2VyOiBCZXdlZ2luZ1ZlcnJpamtlclNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBrZXVyQWxsZXNHb2VkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShLZXVyQWxsZUFjdGllc0dvZWQpLFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlKSxcbiAgICAgICAgc3dpdGNoTWFwKChbYWN0aW9uLCBfc3RvcmVdKSA9PlxuICAgICAgICAgICAgZnJvbSh0aGlzLmJld2VnaW5nVmVycmlqa2VyLmdldEJld2VnaW5nZW4oYWN0aW9uLmJld2VnaW5nZW4sIGFjdGlvbi5vbmdlcGxhbmRlQWN0aWVzKSksXG4gICAgICAgICksXG4gICAgICAgIG1hcCgoYmV3ZWdpbmdlbjogQmV3ZWdpbmdbXSkgPT4gVXBkYXRlUml0KGJld2VnaW5nZW4pKVxuICAgICkpO1xufVxuIl19
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicml0LWdvZWRrZXVyZW4uZWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3N0YXRlL2VmZmVjdC9yaXQtZ29lZGtldXJlbi5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVCLE9BQU8sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7QUFJbkUsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixZQUFvQixRQUFpQixFQUNqQixLQUE0QixFQUM1QixpQkFBMkM7UUFGM0MsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUM1QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQTBCO1FBRy9ELG1CQUFjLEdBQUcsWUFBWSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUNsRCxNQUFNLENBQUMsa0JBQWtCLENBQUMsRUFDMUIsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFDMUIsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQ3pGLEVBQ0QsR0FBRyxDQUFDLENBQUMsVUFBc0IsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQ3pELENBQUMsQ0FBQztJQVRILENBQUM7OEdBTFEsbUJBQW1CO2tIQUFuQixtQkFBbUI7OzJGQUFuQixtQkFBbUI7a0JBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25zLCBjcmVhdGVFZmZlY3QsIG9mVHlwZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBmcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCwgd2l0aExhdGVzdEZyb20gfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCZXdlZ2luZyB9IGZyb20gJy4uLy4uL29wdGltbyc7XG5pbXBvcnQgeyBCZXdlZ2luZ1ZlcnJpamtlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9iZXdlZ2luZy12ZXJyaWprZXIuc2VydmljZSc7XG5pbXBvcnQgeyBLZXVyQWxsZUFjdGllc0dvZWQsIFVwZGF0ZVJpdCB9IGZyb20gJy4uL2FjdGlvbnMvYWN0aW9ucyc7XG5pbXBvcnQgeyBNc3RFZGl0b3JTdGF0ZSB9IGZyb20gJy4uL21zdC1lZGl0b3Itc3RhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUml0R29lZGtldXJlbkVmZmVjdCB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFjdGlvbnMkOiBBY3Rpb25zLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlPE1zdEVkaXRvclN0YXRlPixcbiAgICAgICAgICAgICAgICBwcml2YXRlIGJld2VnaW5nVmVycmlqa2VyOiBCZXdlZ2luZ1ZlcnJpamtlclNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBrZXVyQWxsZXNHb2VkJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShLZXVyQWxsZUFjdGllc0dvZWQpLFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlKSxcbiAgICAgICAgc3dpdGNoTWFwKChbYWN0aW9uLCBfc3RvcmVdKSA9PlxuICAgICAgICAgICAgZnJvbSh0aGlzLmJld2VnaW5nVmVycmlqa2VyLmdldEJld2VnaW5nZW4oYWN0aW9uLmJld2VnaW5nZW4sIGFjdGlvbi5vbmdlcGxhbmRlQWN0aWVzKSksXG4gICAgICAgICksXG4gICAgICAgIG1hcCgoYmV3ZWdpbmdlbjogQmV3ZWdpbmdbXSkgPT4gVXBkYXRlUml0KGJld2VnaW5nZW4pKVxuICAgICkpO1xufVxuIl19
@@ -104,10 +104,10 @@ export class RitdelenEffect {
104
104
  const idx = ritdelen.indexOf(naRitdeelPositie);
105
105
  ritdelen.splice(idx + 1, 0, newRitdeel);
106
106
  }
107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitdelenEffect, deps: [{ token: i1.Actions }, { token: i2.Store }, { token: i3.SignaleringsBeeldManagerService }, { token: i4.EditorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
108
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitdelenEffect }); }
107
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenEffect, deps: [{ token: i1.Actions }, { token: i2.Store }, { token: i3.SignaleringsBeeldManagerService }, { token: i4.EditorService }], target: i0.ɵɵFactoryTarget.Injectable }); }
108
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenEffect }); }
109
109
  }
110
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RitdelenEffect, decorators: [{
110
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: RitdelenEffect, decorators: [{
111
111
  type: Injectable
112
112
  }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.Store }, { type: i3.SignaleringsBeeldManagerService }, { type: i4.EditorService }] });
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicml0ZGVsZW4uZWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3N0YXRlL2VmZmVjdC9yaXRkZWxlbi5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFXLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHOUMsT0FBTyxLQUFLLGVBQWUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7O0FBSy9ELE1BQU0sT0FBTyxjQUFjO0lBRXZCLFlBQTZCLFFBQWlCLEVBQ2pCLEtBQTRCLEVBQzVCLFVBQTJDLEVBQzNDLGFBQTRCO1FBSDVCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBdUI7UUFDNUIsZUFBVSxHQUFWLFVBQVUsQ0FBaUM7UUFDM0Msa0JBQWEsR0FBYixhQUFhLENBQWU7UUFHekQsb0JBQWUsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ25ELE1BQU0sQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLEVBQ3RDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQzFCLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7WUFDekIsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLFFB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UyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFTyxhQUFhLENBQUMsUUFBbUIsRUFBRSxnQkFBeUIsRUFBRSxVQUFtQjtRQUNyRixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDL0MsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM1QyxDQUFDOytHQWxJUSxjQUFjO21IQUFkLGNBQWM7OzRGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkb21laW4sIEpzSmF2YVV0aWwgfSBmcm9tICdAbG94aWEvcmlqd2VnZW4nO1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgbWFwLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE5pZXV3ZVJvdXRlIH0gZnJvbSAnLi4vLi4vbW9kZWwvbmlldXdlLXJvdXRlJztcbmltcG9ydCB7IFJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpbmF0aWUgfSBmcm9tICcuLi8uLi9tb2RlbC9yaWp3ZWdwbGFuLXJpandlZy1kd2FuZy1jb21iaW5hdGllJztcbmltcG9ydCB7IFJpdGRlZWwgfSBmcm9tICcuLi8uLi9tb2RlbC9yaXRkZWVsJztcbmltcG9ydCB7IEVkaXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBTaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2lnbmFsZXJpbmdzLWJlZWxkLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBSaXRkZWxlbkFjdGlvbnMgZnJvbSAnLi4vYWN0aW9ucy9yaXRkZWxlbi5hY3Rpb25zJztcbmltcG9ydCB7IE1zdEVkaXRvclN0YXRlIH0gZnJvbSAnLi4vbXN0LWVkaXRvci1zdGF0ZSc7XG5pbXBvcnQgVnJpamViYWFuUmlqd2VncGxhbiA9IGRvbWVpbi5WcmlqZWJhYW5SaWp3ZWdwbGFuO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUml0ZGVsZW5FZmZlY3Qge1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlOiBTdG9yZTxNc3RFZGl0b3JTdGF0ZT4sXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzYm1TZXJ2aWNlOiBTaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSkge1xuICAgIH1cblxuICAgIHVwZGF0ZVJpdERlbGVuJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShSaXRkZWxlbkFjdGlvbnMudXBkYXRlUml0RGVsZW4pLFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlKSxcbiAgICAgICAgbWFwKChbYWN0aWUsIF9zdG9yZVN0YXRlXSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmlldXdlUml0RGVsZW4gPSBhY3RpZS5yaXREZWxlbi5tYXAocml0RGVlbCA9PiByaXREZWVsLmlzWmljaHRiYWFyKCkgP1xuICAgICAgICAgICAgICAgIHJpdERlZWwuY29weU1ldEFsdGVybmF0aWV2ZVJvdXRlcyh0aGlzLnNibVNlcnZpY2UuYmVwYWFsQWx0ZXJuYXRpdmVSb3V0ZXMocml0RGVlbC5nZXRSaWp3ZWcoKSkpIDogcml0RGVlbCk7XG4gICAgICAgICAgICByZXR1cm4gUml0ZGVsZW5BY3Rpb25zLnNldFJpdGRlbGVuQWZ0ZXJVcGRhdGUobmlldXdlUml0RGVsZW4pO1xuICAgICAgICB9KSlcbiAgICApO1xuXG4gICAgc2V0QWx0ZXJuYXRpZXZlUml0RGVsZW4kID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKFJpdGRlbGVuQWN0aW9ucy5zZXRBbHRlcm5hdGlldmVSaXREZWxlbiksXG4gICAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuc3RvcmUpLFxuICAgICAgICBtYXAoKFthY3RpZSwgc3RvcmVTdGF0ZV0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFsdGVybmF0aWV2ZVJpdERlZWwgPSBhY3RpZS5hbHRlcm5hdGlldmVSaXREZWVsO1xuICAgICAgICAgICAgY29uc3Qgcml0RGVsZW4gPSBzdG9yZVN0YXRlLnJpdERlbGVuO1xuICAgICAgICAgICAgY29uc3Qgb3JnUml0ZGVlbCA9IGFsdGVybmF0aWV2ZVJpdERlZWwucml0RGVlbDtcbiAgICAgICAgICAgIGxldCBuZXdSaXREZWVsID0gb3JnUml0ZGVlbC5jb3B5TWV0RHdhbmcoYWx0ZXJuYXRpZXZlUml0RGVlbC5hbHRlcm5hdGlldmVSb3V0ZS5nZXREd2FuZygpKTtcbiAgICAgICAgICAgIGNvbnN0IGFsdGVyUm91dGVzID0gdGhpcy5zYm1TZXJ2aWNlLmJlcGFhbEFsdGVybmF0aXZlUm91dGVzKGFsdGVybmF0aWV2ZVJpdERlZWwucml0RGVlbC5nZXRSaWp3ZWcoKSk7XG4gICAgICAgICAgICBuZXdSaXREZWVsID0gbmV3Uml0RGVlbC5jb3B5TWV0QWx0ZXJuYXRpZXZlUm91dGVzWm9uZGVyQWN0aWVzKGFsdGVyUm91dGVzKTtcbiAgICAgICAgICAgIG5ld1JpdERlZWwuYmVwYWFsVG9wb2xvZ2llRWxlbWVudGVuKHRoaXMuc2JtU2VydmljZSk7XG4gICAgICAgICAgICB0aGlzLnZlcnZhbmdSaXRkZWVsKHJpdERlbGVuLCBvcmdSaXRkZWVsLCBuZXdSaXREZWVsKTtcblxuICAgICAgICAgICAgcmV0dXJuIFJpdGRlbGVuQWN0aW9ucy5zZXRSaXRkZWxlbkFmdGVyVXBkYXRlKHJpdERlbGVuKTtcbiAgICAgICAgfSkpXG4gICAgKTtcblxuICAgIHJpdGRlZWxJbnZvZWdlbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUoUml0ZGVsZW5BY3Rpb25zLnJpdGRlZWxJbnZvZWdlbiksXG4gICAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuc3RvcmUpLFxuICAgICAgICBtYXAoKFthY3RpZSwgc3RvcmVTdGF0ZV0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJpdERlbGVuID0gdGhpcy5yaXRkZWVsSW52b2VnZW5GdW5jKHN0b3JlU3RhdGUucml0RGVsZW4sIGFjdGllLm5pZXV3ZVJvdXRlKTtcbiAgICAgICAgICAgIHJldHVybiBSaXRkZWxlbkFjdGlvbnMuc2V0Uml0ZGVsZW5BZnRlclVwZGF0ZShyaXREZWxlbik7XG4gICAgICAgIH0pKVxuICAgICk7XG5cbiAgICBwcml2YXRlIHJpdGRlZWxJbnZvZWdlbkZ1bmMocml0RGVsZW46IFJpdGRlZWxbXSwgIG5pZXV3ZVJvdXRlOiBOaWV1d2VSb3V0ZSk6IFJpdGRlZWxbXSB7XG4gICAgICAgIGNvbnN0IG9yaWdpbmVlbFJpdGRlZWwgPSBuaWV1d2VSb3V0ZS5iZWdpblNlaW5PcFJpdGRlZWwucml0ZGVlbDtcbiAgICAgICAgY29uc3QgYmVnaW5TZWluID0gbmlldXdlUm91dGUuYmVnaW5TZWluT3BSaXRkZWVsLnNlaW47XG4gICAgICAgIGNvbnN0IHJpandlZ3BsYW4gPSB0aGlzLmVkaXRvclNlcnZpY2UuZ2V0Umlqd2VncGxhbihiZWdpblNlaW4uZ2V0UFBMRygpKTtcbiAgICAgICAgY29uc3QgZHdhbmdlbjogZG9tZWluLkR3YW5nW10gPSBKc0phdmFVdGlsLmxpc3RUb0FycmF5KHJpandlZ3BsYW4uZ2V0T25kZXJsaWdnZW5kZUR3YW5nZW5Ub3RFblZhblNlaW4ob3JpZ2luZWVsUml0ZGVlbC5nZXREd2FuZygpLCBiZWdpblNlaW4pKTtcbiAgICAgICAgY29uc3QgaXNTYW1lbmdlc3RlbGRlUm91dGUgPSBkd2FuZ2VuWzBdICYmIGR3YW5nZW5bMV07XG5cbiAgICAgICAgbGV0IG5ld1JpdGRlZWwxID0gb3JpZ2luZWVsUml0ZGVlbDtcblxuICAgICAgICBpZiAoaXNTYW1lbmdlc3RlbGRlUm91dGUpIHtcbiAgICAgICAgICAgIG5ld1JpdGRlZWwxID0gdGhpcy52ZXJ3ZXJrU2FtZW5nZXN0ZWxkZVJvdXRlKG9yaWdpbmVlbFJpdGRlZWwsIHJpandlZ3BsYW4sIGR3YW5nZW4sIHJpdERlbGVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuaWV1d2VSb3V0ZS5jb21iaW5hdGllVm9vckVpbmRzZWluPy5pc1ZyaWplQmFhblJpandlZygpKSB7XG4gICAgICAgICAgICB0aGlzLmV4dGVuZFJpdGRlZWxNZXRWcmlqZWJhYW5JbmZvKG5ld1JpdGRlZWwxLCBuaWV1d2VSb3V0ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1hYWtOaWV1d1JpdGRlZWwobmV3Uml0ZGVlbDEsIG5pZXV3ZVJvdXRlLCByaXREZWxlbik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNTYW1lbmdlc3RlbGRlUm91dGUpIHtcbiAgICAgICAgICAgIHJpdERlbGVuLnNwbGljZShyaXREZWxlbi5pbmRleE9mKG9yaWdpbmVlbFJpdGRlZWwpLCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbLi4ucml0RGVsZW5dO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSB2ZXJ2YW5nUml0ZGVlbChyaXRkZWxlbjogUml0ZGVlbFtdLCBvcmdSaXRkZWVsOiBSaXRkZWVsLCBuZXdSaXRkZWVsOiBSaXRkZWVsKTogdm9pZCB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcml0ZGVsZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChyaXRkZWxlbltpXSA9PT0gb3JnUml0ZGVlbCkge1xuICAgICAgICAgICAgICAgIHJpdGRlbGVuW2ldID0gbmV3Uml0ZGVlbDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdmVyd2Vya1NhbWVuZ2VzdGVsZGVSb3V0ZShvcmlnaW5lZWxSaXRkZWVsOiBSaXRkZWVsLCByaWp3ZWdwbGFuOiBkb21laW4uUmlqd2VncGxhbiwgZHdhbmdlbjogZG9tZWluLkR3YW5nW10sIHJpdERlbGVuOiBSaXRkZWVsW10pOiBSaXRkZWVsIHtcbiAgICAgICAgLy8gZHdhbmdlbiBpbiAyIG5pZXV3ZSByaXRkZWxlbiB2ZXJ3ZXJrZW4gdm9vciBkZSBrbmlwXG4gICAgICAgIGNvbnN0IG5pZXV3ZVJpandlZzEgPVxuICAgICAgICAgICAgcmlqd2VncGxhbi5nZXRSaWp3ZWdWb29yU2VpbmVuKGR3YW5nZW5bMF0uZ2V0Um91dGUoKS5nZXRCZWdpblNlaW4oKSwgZHdhbmdlblswXS5nZXRSb3V0ZSgpLmdldEVpbmRTZWluKCkpO1xuICAgICAgICBjb25zdCBkd2FuZ0luZm8xID0gbmV3IFJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpbmF0aWUocmlqd2VncGxhbiwgbmlldXdlUmlqd2VnMSwgZHdhbmdlblswXSk7XG4gICAgICAgIGNvbnN0IG5ld1JpdGRlZWwxID0gbmV3IFJpdGRlZWwoZHdhbmdJbmZvMSwgW10sIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIFtdKTtcblxuICAgICAgICAvLyByZW1vdmUgdnJpamJhYW4gaW5mbyB1aXQgcml0ZGVlbFxuICAgICAgICBuZXdSaXRkZWVsMS52cmlqZWJhYW5SaWp3ZWdwbGFuUmlqd2VnRHdhbmdDb21iaSA9IHVuZGVmaW5lZDtcbiAgICAgICAgbmV3Uml0ZGVlbDEudmVydm9sZ1Nwb29yID0gdW5kZWZpbmVkO1xuXG4gICAgICAgIG5ld1JpdGRlZWwxLmJlcGFhbFRvcG9sb2dpZUVsZW1lbnRlbih0aGlzLnNibVNlcnZpY2UpO1xuICAgICAgICB0aGlzLmluc2VydFJpdGRlZWwocml0RGVsZW4sIG9yaWdpbmVlbFJpdGRlZWwsIG5ld1JpdGRlZWwxKTtcblxuICAgICAgICBjb25zdCBuaWV1d2VSaWp3ZWcyID1cbiAgICAgICAgICAgIHJpandlZ3BsYW4uZ2V0Umlqd2VnVm9vclNlaW5lbihkd2FuZ2VuWzFdLmdldFJvdXRlKCkuZ2V0QmVnaW5TZWluKCksIGR3YW5nZW5bMV0uZ2V0Um91dGUoKS5nZXRFaW5kU2VpbigpKTtcbiAgICAgICAgY29uc3QgZHdhbmdJbmZvMiA9IG5ldyBSaWp3ZWdwbGFuUmlqd2VnRHdhbmdDb21iaW5hdGllKHJpandlZ3BsYW4sIG5pZXV3ZVJpandlZzIsIGR3YW5nZW5bMV0pO1xuICAgICAgICBjb25zdCBuZXdSaXRkZWVsMiA9IG5ldyBSaXRkZWVsKGR3YW5nSW5mbzIsIFtdLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBbXSk7XG5cbiAgICAgICAgbmV3Uml0ZGVlbDIuYmVwYWFsVG9wb2xvZ2llRWxlbWVudGVuKHRoaXMuc2JtU2VydmljZSk7XG4gICAgICAgIHRoaXMuaW5zZXJ0Uml0ZGVlbChyaXREZWxlbiwgbmV3Uml0ZGVlbDEsIG5ld1JpdGRlZWwyKTtcblxuICAgICAgICByZXR1cm4gbmV3Uml0ZGVlbDE7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBleHRlbmRSaXRkZWVsTWV0VnJpamViYWFuSW5mbyhuZXdSaXRkZWVsMTogUml0ZGVlbCwgbmlldXdlUm91dGU6IE5pZXV3ZVJvdXRlKTogdm9pZCB7XG4gICAgICAgIG5ld1JpdGRlZWwxLnZyaWplYmFhblJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpID0gbmlldXdlUm91dGUuY29tYmluYXRpZVZvb3JFaW5kc2VpbjtcblxuICAgICAgICBjb25zdCB2YnJ3cCA9IDxWcmlqZWJhYW5SaWp3ZWdwbGFuPm5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4/LnJpandlZ3BsYW47XG4gICAgICAgIG5ld1JpdGRlZWwxLnZlcnZvbGdTcG9vciA9IG5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4gP1xuICAgICAgICAgICAgdmJyd3AuZ2V0VmVydm9sZ1Nwb29yKG5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4/LnJpandlZykgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgbmV3Uml0ZGVlbDEuYmVwYWFsVG9wb2xvZ2llRWxlbWVudGVuKHRoaXMuc2JtU2VydmljZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtYWFrTmlldXdSaXRkZWVsKG5ld1JpdGRlZWwxOiBSaXRkZWVsLCBuaWV1d2VSb3V0ZTogTmlldXdlUm91dGUsIHJpdERlbGVuOiBSaXRkZWVsW10pOiB2b2lkIHtcbiAgICAgICAgbGV0IG5ld1JpdGRlZWwgPSB0aGlzLmNyZWF0ZVJpdGRlZWwobmlldXdlUm91dGUpO1xuICAgICAgICBjb25zdCBhbHRSb3V0ZXMgPSB0aGlzLnNibVNlcnZpY2UuYmVwYWFsQWx0ZXJuYXRpdmVSb3V0ZXMobmV3Uml0ZGVlbC5nZXRSaWp3ZWcoKSk7XG4gICAgICAgIG5ld1JpdGRlZWwgPSBuZXdSaXRkZWVsLmNvcHlNZXRBbHRlcm5hdGlldmVSb3V0ZXMoYWx0Um91dGVzKTtcbiAgICAgICAgbmV3Uml0ZGVlbC5iZXBhYWxUb3BvbG9naWVFbGVtZW50ZW4odGhpcy5zYm1TZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5pbnNlcnRSaXRkZWVsKHJpdERlbGVuLCBuZXdSaXRkZWVsMSwgbmV3Uml0ZGVlbCk7XG4gICAgfVxuXG4gICAgY3JlYXRlUml0ZGVlbChuaWV1d2VSb3V0ZTogTmlldXdlUm91dGUpOiBSaXRkZWVsIHtcbiAgICAgICAgcmV0dXJuIG5ldyBSaXRkZWVsKG5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4hLCBbXSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgW10pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5zZXJ0Uml0ZGVlbChyaXRkZWxlbjogUml0ZGVlbFtdLCBuYVJpdGRlZWxQb3NpdGllOiBSaXRkZWVsLCBuZXdSaXRkZWVsOiBSaXRkZWVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGlkeCA9IHJpdGRlbGVuLmluZGV4T2YobmFSaXRkZWVsUG9zaXRpZSk7XG4gICAgICAgIHJpdGRlbGVuLnNwbGljZShpZHggKyAxLCAwLCBuZXdSaXRkZWVsKTtcbiAgICB9XG5cbn1cbiJdfQ==
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicml0ZGVsZW4uZWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3N0YXRlL2VmZmVjdC9yaXRkZWxlbi5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQVUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDckQsT0FBTyxFQUFXLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNqRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFHOUMsT0FBTyxLQUFLLGVBQWUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7O0FBSy9ELE1BQU0sT0FBTyxjQUFjO0lBRXZCLFlBQTZCLFFBQWlCLEVBQ2pCLEtBQTRCLEVBQzVCLFVBQTJDLEVBQzNDLGFBQTRCO1FBSDVCLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBdUI7UUFDNUIsZUFBVSxHQUFWLFVBQVUsQ0FBaUM7UUFDM0Msa0JBQWEsR0FBYixhQUFhLENBQWU7UUFHekQsb0JBQWUsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ25ELE1BQU0sQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLEVBQ3RDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQzFCLEdBQUcsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7WUFDekIsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLFFB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UyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3JHLENBQUM7SUFFTyxhQUFhLENBQUMsUUFBbUIsRUFBRSxnQkFBeUIsRUFBRSxVQUFtQjtRQUNyRixNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDL0MsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztJQUM1QyxDQUFDOzhHQWxJUSxjQUFjO2tIQUFkLGNBQWM7OzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBkb21laW4sIEpzSmF2YVV0aWwgfSBmcm9tICdAbG94aWEvcmlqd2VnZW4nO1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgbWFwLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE5pZXV3ZVJvdXRlIH0gZnJvbSAnLi4vLi4vbW9kZWwvbmlldXdlLXJvdXRlJztcbmltcG9ydCB7IFJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpbmF0aWUgfSBmcm9tICcuLi8uLi9tb2RlbC9yaWp3ZWdwbGFuLXJpandlZy1kd2FuZy1jb21iaW5hdGllJztcbmltcG9ydCB7IFJpdGRlZWwgfSBmcm9tICcuLi8uLi9tb2RlbC9yaXRkZWVsJztcbmltcG9ydCB7IEVkaXRvclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBTaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2lnbmFsZXJpbmdzLWJlZWxkLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgKiBhcyBSaXRkZWxlbkFjdGlvbnMgZnJvbSAnLi4vYWN0aW9ucy9yaXRkZWxlbi5hY3Rpb25zJztcbmltcG9ydCB7IE1zdEVkaXRvclN0YXRlIH0gZnJvbSAnLi4vbXN0LWVkaXRvci1zdGF0ZSc7XG5pbXBvcnQgVnJpamViYWFuUmlqd2VncGxhbiA9IGRvbWVpbi5WcmlqZWJhYW5SaWp3ZWdwbGFuO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUml0ZGVsZW5FZmZlY3Qge1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHN0b3JlOiBTdG9yZTxNc3RFZGl0b3JTdGF0ZT4sXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzYm1TZXJ2aWNlOiBTaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSkge1xuICAgIH1cblxuICAgIHVwZGF0ZVJpdERlbGVuJCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShSaXRkZWxlbkFjdGlvbnMudXBkYXRlUml0RGVsZW4pLFxuICAgICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLnN0b3JlKSxcbiAgICAgICAgbWFwKChbYWN0aWUsIF9zdG9yZVN0YXRlXSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbmlldXdlUml0RGVsZW4gPSBhY3RpZS5yaXREZWxlbi5tYXAocml0RGVlbCA9PiByaXREZWVsLmlzWmljaHRiYWFyKCkgP1xuICAgICAgICAgICAgICAgIHJpdERlZWwuY29weU1ldEFsdGVybmF0aWV2ZVJvdXRlcyh0aGlzLnNibVNlcnZpY2UuYmVwYWFsQWx0ZXJuYXRpdmVSb3V0ZXMocml0RGVlbC5nZXRSaWp3ZWcoKSkpIDogcml0RGVlbCk7XG4gICAgICAgICAgICByZXR1cm4gUml0ZGVsZW5BY3Rpb25zLnNldFJpdGRlbGVuQWZ0ZXJVcGRhdGUobmlldXdlUml0RGVsZW4pO1xuICAgICAgICB9KSlcbiAgICApO1xuXG4gICAgc2V0QWx0ZXJuYXRpZXZlUml0RGVsZW4kID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKFJpdGRlbGVuQWN0aW9ucy5zZXRBbHRlcm5hdGlldmVSaXREZWxlbiksXG4gICAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuc3RvcmUpLFxuICAgICAgICBtYXAoKFthY3RpZSwgc3RvcmVTdGF0ZV0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGFsdGVybmF0aWV2ZVJpdERlZWwgPSBhY3RpZS5hbHRlcm5hdGlldmVSaXREZWVsO1xuICAgICAgICAgICAgY29uc3Qgcml0RGVsZW4gPSBzdG9yZVN0YXRlLnJpdERlbGVuO1xuICAgICAgICAgICAgY29uc3Qgb3JnUml0ZGVlbCA9IGFsdGVybmF0aWV2ZVJpdERlZWwucml0RGVlbDtcbiAgICAgICAgICAgIGxldCBuZXdSaXREZWVsID0gb3JnUml0ZGVlbC5jb3B5TWV0RHdhbmcoYWx0ZXJuYXRpZXZlUml0RGVlbC5hbHRlcm5hdGlldmVSb3V0ZS5nZXREd2FuZygpKTtcbiAgICAgICAgICAgIGNvbnN0IGFsdGVyUm91dGVzID0gdGhpcy5zYm1TZXJ2aWNlLmJlcGFhbEFsdGVybmF0aXZlUm91dGVzKGFsdGVybmF0aWV2ZVJpdERlZWwucml0RGVlbC5nZXRSaWp3ZWcoKSk7XG4gICAgICAgICAgICBuZXdSaXREZWVsID0gbmV3Uml0RGVlbC5jb3B5TWV0QWx0ZXJuYXRpZXZlUm91dGVzWm9uZGVyQWN0aWVzKGFsdGVyUm91dGVzKTtcbiAgICAgICAgICAgIG5ld1JpdERlZWwuYmVwYWFsVG9wb2xvZ2llRWxlbWVudGVuKHRoaXMuc2JtU2VydmljZSk7XG4gICAgICAgICAgICB0aGlzLnZlcnZhbmdSaXRkZWVsKHJpdERlbGVuLCBvcmdSaXRkZWVsLCBuZXdSaXREZWVsKTtcblxuICAgICAgICAgICAgcmV0dXJuIFJpdGRlbGVuQWN0aW9ucy5zZXRSaXRkZWxlbkFmdGVyVXBkYXRlKHJpdERlbGVuKTtcbiAgICAgICAgfSkpXG4gICAgKTtcblxuICAgIHJpdGRlZWxJbnZvZWdlbiQgPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUoUml0ZGVsZW5BY3Rpb25zLnJpdGRlZWxJbnZvZWdlbiksXG4gICAgICAgIHdpdGhMYXRlc3RGcm9tKHRoaXMuc3RvcmUpLFxuICAgICAgICBtYXAoKFthY3RpZSwgc3RvcmVTdGF0ZV0pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJpdERlbGVuID0gdGhpcy5yaXRkZWVsSW52b2VnZW5GdW5jKHN0b3JlU3RhdGUucml0RGVsZW4sIGFjdGllLm5pZXV3ZVJvdXRlKTtcbiAgICAgICAgICAgIHJldHVybiBSaXRkZWxlbkFjdGlvbnMuc2V0Uml0ZGVsZW5BZnRlclVwZGF0ZShyaXREZWxlbik7XG4gICAgICAgIH0pKVxuICAgICk7XG5cbiAgICBwcml2YXRlIHJpdGRlZWxJbnZvZWdlbkZ1bmMocml0RGVsZW46IFJpdGRlZWxbXSwgIG5pZXV3ZVJvdXRlOiBOaWV1d2VSb3V0ZSk6IFJpdGRlZWxbXSB7XG4gICAgICAgIGNvbnN0IG9yaWdpbmVlbFJpdGRlZWwgPSBuaWV1d2VSb3V0ZS5iZWdpblNlaW5PcFJpdGRlZWwucml0ZGVlbDtcbiAgICAgICAgY29uc3QgYmVnaW5TZWluID0gbmlldXdlUm91dGUuYmVnaW5TZWluT3BSaXRkZWVsLnNlaW47XG4gICAgICAgIGNvbnN0IHJpandlZ3BsYW4gPSB0aGlzLmVkaXRvclNlcnZpY2UuZ2V0Umlqd2VncGxhbihiZWdpblNlaW4uZ2V0UFBMRygpKTtcbiAgICAgICAgY29uc3QgZHdhbmdlbjogZG9tZWluLkR3YW5nW10gPSBKc0phdmFVdGlsLmxpc3RUb0FycmF5KHJpandlZ3BsYW4uZ2V0T25kZXJsaWdnZW5kZUR3YW5nZW5Ub3RFblZhblNlaW4ob3JpZ2luZWVsUml0ZGVlbC5nZXREd2FuZygpLCBiZWdpblNlaW4pKTtcbiAgICAgICAgY29uc3QgaXNTYW1lbmdlc3RlbGRlUm91dGUgPSBkd2FuZ2VuWzBdICYmIGR3YW5nZW5bMV07XG5cbiAgICAgICAgbGV0IG5ld1JpdGRlZWwxID0gb3JpZ2luZWVsUml0ZGVlbDtcblxuICAgICAgICBpZiAoaXNTYW1lbmdlc3RlbGRlUm91dGUpIHtcbiAgICAgICAgICAgIG5ld1JpdGRlZWwxID0gdGhpcy52ZXJ3ZXJrU2FtZW5nZXN0ZWxkZVJvdXRlKG9yaWdpbmVlbFJpdGRlZWwsIHJpandlZ3BsYW4sIGR3YW5nZW4sIHJpdERlbGVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuaWV1d2VSb3V0ZS5jb21iaW5hdGllVm9vckVpbmRzZWluPy5pc1ZyaWplQmFhblJpandlZygpKSB7XG4gICAgICAgICAgICB0aGlzLmV4dGVuZFJpdGRlZWxNZXRWcmlqZWJhYW5JbmZvKG5ld1JpdGRlZWwxLCBuaWV1d2VSb3V0ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1hYWtOaWV1d1JpdGRlZWwobmV3Uml0ZGVlbDEsIG5pZXV3ZVJvdXRlLCByaXREZWxlbik7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNTYW1lbmdlc3RlbGRlUm91dGUpIHtcbiAgICAgICAgICAgIHJpdERlbGVuLnNwbGljZShyaXREZWxlbi5pbmRleE9mKG9yaWdpbmVlbFJpdGRlZWwpLCAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBbLi4ucml0RGVsZW5dO1xuICAgIH1cblxuXG4gICAgcHJpdmF0ZSB2ZXJ2YW5nUml0ZGVlbChyaXRkZWxlbjogUml0ZGVlbFtdLCBvcmdSaXRkZWVsOiBSaXRkZWVsLCBuZXdSaXRkZWVsOiBSaXRkZWVsKTogdm9pZCB7XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcml0ZGVsZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChyaXRkZWxlbltpXSA9PT0gb3JnUml0ZGVlbCkge1xuICAgICAgICAgICAgICAgIHJpdGRlbGVuW2ldID0gbmV3Uml0ZGVlbDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdmVyd2Vya1NhbWVuZ2VzdGVsZGVSb3V0ZShvcmlnaW5lZWxSaXRkZWVsOiBSaXRkZWVsLCByaWp3ZWdwbGFuOiBkb21laW4uUmlqd2VncGxhbiwgZHdhbmdlbjogZG9tZWluLkR3YW5nW10sIHJpdERlbGVuOiBSaXRkZWVsW10pOiBSaXRkZWVsIHtcbiAgICAgICAgLy8gZHdhbmdlbiBpbiAyIG5pZXV3ZSByaXRkZWxlbiB2ZXJ3ZXJrZW4gdm9vciBkZSBrbmlwXG4gICAgICAgIGNvbnN0IG5pZXV3ZVJpandlZzEgPVxuICAgICAgICAgICAgcmlqd2VncGxhbi5nZXRSaWp3ZWdWb29yU2VpbmVuKGR3YW5nZW5bMF0uZ2V0Um91dGUoKS5nZXRCZWdpblNlaW4oKSwgZHdhbmdlblswXS5nZXRSb3V0ZSgpLmdldEVpbmRTZWluKCkpO1xuICAgICAgICBjb25zdCBkd2FuZ0luZm8xID0gbmV3IFJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpbmF0aWUocmlqd2VncGxhbiwgbmlldXdlUmlqd2VnMSwgZHdhbmdlblswXSk7XG4gICAgICAgIGNvbnN0IG5ld1JpdGRlZWwxID0gbmV3IFJpdGRlZWwoZHdhbmdJbmZvMSwgW10sIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIFtdKTtcblxuICAgICAgICAvLyByZW1vdmUgdnJpamJhYW4gaW5mbyB1aXQgcml0ZGVlbFxuICAgICAgICBuZXdSaXRkZWVsMS52cmlqZWJhYW5SaWp3ZWdwbGFuUmlqd2VnRHdhbmdDb21iaSA9IHVuZGVmaW5lZDtcbiAgICAgICAgbmV3Uml0ZGVlbDEudmVydm9sZ1Nwb29yID0gdW5kZWZpbmVkO1xuXG4gICAgICAgIG5ld1JpdGRlZWwxLmJlcGFhbFRvcG9sb2dpZUVsZW1lbnRlbih0aGlzLnNibVNlcnZpY2UpO1xuICAgICAgICB0aGlzLmluc2VydFJpdGRlZWwocml0RGVsZW4sIG9yaWdpbmVlbFJpdGRlZWwsIG5ld1JpdGRlZWwxKTtcblxuICAgICAgICBjb25zdCBuaWV1d2VSaWp3ZWcyID1cbiAgICAgICAgICAgIHJpandlZ3BsYW4uZ2V0Umlqd2VnVm9vclNlaW5lbihkd2FuZ2VuWzFdLmdldFJvdXRlKCkuZ2V0QmVnaW5TZWluKCksIGR3YW5nZW5bMV0uZ2V0Um91dGUoKS5nZXRFaW5kU2VpbigpKTtcbiAgICAgICAgY29uc3QgZHdhbmdJbmZvMiA9IG5ldyBSaWp3ZWdwbGFuUmlqd2VnRHdhbmdDb21iaW5hdGllKHJpandlZ3BsYW4sIG5pZXV3ZVJpandlZzIsIGR3YW5nZW5bMV0pO1xuICAgICAgICBjb25zdCBuZXdSaXRkZWVsMiA9IG5ldyBSaXRkZWVsKGR3YW5nSW5mbzIsIFtdLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgdW5kZWZpbmVkLCBbXSk7XG5cbiAgICAgICAgbmV3Uml0ZGVlbDIuYmVwYWFsVG9wb2xvZ2llRWxlbWVudGVuKHRoaXMuc2JtU2VydmljZSk7XG4gICAgICAgIHRoaXMuaW5zZXJ0Uml0ZGVlbChyaXREZWxlbiwgbmV3Uml0ZGVlbDEsIG5ld1JpdGRlZWwyKTtcblxuICAgICAgICByZXR1cm4gbmV3Uml0ZGVlbDE7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBleHRlbmRSaXRkZWVsTWV0VnJpamViYWFuSW5mbyhuZXdSaXRkZWVsMTogUml0ZGVlbCwgbmlldXdlUm91dGU6IE5pZXV3ZVJvdXRlKTogdm9pZCB7XG4gICAgICAgIG5ld1JpdGRlZWwxLnZyaWplYmFhblJpandlZ3BsYW5SaWp3ZWdEd2FuZ0NvbWJpID0gbmlldXdlUm91dGUuY29tYmluYXRpZVZvb3JFaW5kc2VpbjtcblxuICAgICAgICBjb25zdCB2YnJ3cCA9IDxWcmlqZWJhYW5SaWp3ZWdwbGFuPm5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4/LnJpandlZ3BsYW47XG4gICAgICAgIG5ld1JpdGRlZWwxLnZlcnZvbGdTcG9vciA9IG5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4gP1xuICAgICAgICAgICAgdmJyd3AuZ2V0VmVydm9sZ1Nwb29yKG5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4/LnJpandlZykgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgbmV3Uml0ZGVlbDEuYmVwYWFsVG9wb2xvZ2llRWxlbWVudGVuKHRoaXMuc2JtU2VydmljZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBtYWFrTmlldXdSaXRkZWVsKG5ld1JpdGRlZWwxOiBSaXRkZWVsLCBuaWV1d2VSb3V0ZTogTmlldXdlUm91dGUsIHJpdERlbGVuOiBSaXRkZWVsW10pOiB2b2lkIHtcbiAgICAgICAgbGV0IG5ld1JpdGRlZWwgPSB0aGlzLmNyZWF0ZVJpdGRlZWwobmlldXdlUm91dGUpO1xuICAgICAgICBjb25zdCBhbHRSb3V0ZXMgPSB0aGlzLnNibVNlcnZpY2UuYmVwYWFsQWx0ZXJuYXRpdmVSb3V0ZXMobmV3Uml0ZGVlbC5nZXRSaWp3ZWcoKSk7XG4gICAgICAgIG5ld1JpdGRlZWwgPSBuZXdSaXRkZWVsLmNvcHlNZXRBbHRlcm5hdGlldmVSb3V0ZXMoYWx0Um91dGVzKTtcbiAgICAgICAgbmV3Uml0ZGVlbC5iZXBhYWxUb3BvbG9naWVFbGVtZW50ZW4odGhpcy5zYm1TZXJ2aWNlKTtcbiAgICAgICAgdGhpcy5pbnNlcnRSaXRkZWVsKHJpdERlbGVuLCBuZXdSaXRkZWVsMSwgbmV3Uml0ZGVlbCk7XG4gICAgfVxuXG4gICAgY3JlYXRlUml0ZGVlbChuaWV1d2VSb3V0ZTogTmlldXdlUm91dGUpOiBSaXRkZWVsIHtcbiAgICAgICAgcmV0dXJuIG5ldyBSaXRkZWVsKG5pZXV3ZVJvdXRlLmNvbWJpbmF0aWVWb29yRWluZHNlaW4hLCBbXSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgW10pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5zZXJ0Uml0ZGVlbChyaXRkZWxlbjogUml0ZGVlbFtdLCBuYVJpdGRlZWxQb3NpdGllOiBSaXRkZWVsLCBuZXdSaXRkZWVsOiBSaXRkZWVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGlkeCA9IHJpdGRlbGVuLmluZGV4T2YobmFSaXRkZWVsUG9zaXRpZSk7XG4gICAgICAgIHJpdGRlbGVuLnNwbGljZShpZHggKyAxLCAwLCBuZXdSaXRkZWVsKTtcbiAgICB9XG5cbn1cbiJdfQ==
@@ -1,66 +1,37 @@
1
1
  import { Injectable } from '@angular/core';
2
- import { SelectieInfo } from '@loxia/imx-viewer';
3
2
  import { createEffect, ofType } from '@ngrx/effects';
4
- import { combineLatest } from 'rxjs';
5
- import { filter, map, switchMap, take, tap, withLatestFrom } from 'rxjs/operators';
3
+ import { map } from 'rxjs/operators';
6
4
  import * as MstActions from '../actions/actions';
7
- import { SetConnectorenClickableIds, svgUpdateFinished } from '../actions/actions';
5
+ import { SetConnectorenClickableIds } from '../actions/actions';
8
6
  import * as i0 from "@angular/core";
9
7
  import * as i1 from "@ngrx/effects";
10
8
  import * as i2 from "@ngrx/store";
11
- import * as i3 from "@loxia/rijwegen";
12
- import * as i4 from "../../../generated/openapi";
9
+ import * as i3 from "../../services/signalerings-beeld-manager.service";
10
+ import * as i4 from "@loxia/rijwegen";
13
11
  export class SvgViewEffect {
14
- constructor(actions$, store, sbSvgUtilService, svgService) {
12
+ constructor(actions$, store, signaleringsBeeldManagerService, sbSvgUtilService) {
15
13
  this.actions$ = actions$;
16
14
  this.store = store;
15
+ this.signaleringsBeeldManagerService = signaleringsBeeldManagerService;
17
16
  this.sbSvgUtilService = sbSvgUtilService;
18
- this.svgService = svgService;
19
- this.updateSvgView$ = createEffect(() => this.actions$.pipe(ofType(MstActions.SetSvgInfos), withLatestFrom(this.store), switchMap(([_actie, storeState]) => this.svgService.getSvgInfo(storeState.iaVersie.versie, storeState.signaleringsbeeldInfoDtos)), map((svgInfo) => {
17
+ this.updateSvgView$ = createEffect(() => this.actions$.pipe(ofType(MstActions.SetSvgInfos), map((_actie) => {
20
18
  setTimeout(() => {
21
- const svgTopology = svgInfo.topology;
22
- if (!svgTopology) {
23
- return;
24
- }
25
19
  this.sbSvgUtilService.addSvgDefs();
26
20
  const wisselEnStoringskaderPuicMap = new Map();
27
- svgTopology.alleSoortenWissels
28
- ?.forEach(wissel => wisselEnStoringskaderPuicMap.set(wissel.puic, wissel.storingSymboolPuic));
21
+ this.signaleringsBeeldManagerService.getAlleSoortenWissels()
22
+ .forEach(wissel => wisselEnStoringskaderPuicMap.set(wissel.getPuic(), wissel.getStoringSymboolPuic()));
29
23
  this.sbSvgUtilService.zetClassOpStoringSymbolenMetMap(wisselEnStoringskaderPuicMap);
30
- this.sbSvgUtilService.zetClassOpSpoornummers(svgTopology.puicVoorSpoorNummers ?? []);
24
+ this.sbSvgUtilService.zetClassOpSpoornummers(this.signaleringsBeeldManagerService.getPuicsVoorSpoornummers());
31
25
  this.sbSvgUtilService.maakOngewensteElementenOnzichtbaar();
32
26
  this.sbSvgUtilService.zetClassOpLangeText();
33
- const seinen = svgTopology.seinen?.map(this.toSbSein) ?? [];
34
- this.sbSvgUtilService.maakOngewensteSeindelenOnzichtbaar(seinen);
35
- this.sbSvgUtilService.maakSignaleringsElementenOnzichtbaar(svgTopology.signaleringsElementen
36
- ?.map(signaleringsElement => this.toSbSignaleringsElement(signaleringsElement)) ?? []);
37
- const puicsVoorRanden = svgTopology.puicVoorRanden ?? [];
27
+ this.sbSvgUtilService.maakOngewensteSeindelenOnzichtbaar(this.signaleringsBeeldManagerService.getSeinen());
28
+ this.sbSvgUtilService.maakSignaleringsElementenOnzichtbaar(this.signaleringsBeeldManagerService.getSignaleringsElementen());
29
+ const puicsVoorRanden = this.signaleringsBeeldManagerService.getPuicsVoorRanden();
38
30
  this.zetClassOpRanden(puicsVoorRanden);
39
- this.sbSvgUtilService.zetClassOpRijrichtingen(seinen);
31
+ this.sbSvgUtilService.zetClassOpRijrichtingen(this.signaleringsBeeldManagerService.getSeinen());
40
32
  this.store.dispatch(SetConnectorenClickableIds(puicsVoorRanden));
41
- this.store.dispatch(MstActions.svgUpdateFinished());
42
33
  }, 0);
43
34
  })), { dispatch: false });
44
- this.updateSelectieInfos$ = createEffect(() => this.actions$.pipe(ofType(svgUpdateFinished), switchMap(() => combineLatest([
45
- this.store.select('ritSelectieIds'),
46
- this.store.select('actieOpRitSelectieIds'),
47
- this.store.select('ongeplandeActieSelectieIds'),
48
- this.store.select('gebrokenRitSelectieIds'),
49
- this.store.select('alternatievenSelectieIds'),
50
- this.store.select('beginSeinSelectieIds'),
51
- this.store.select('eindSeinSelectieIds')
52
- ]).pipe(map(([rit, actieOpRitSelectieIds, ongeplandeActieSelectieIds, gebrokenRit, alternatieven, begin, eind]) => {
53
- return MstActions.setSelectieInfos([
54
- new SelectieInfo(rit, 'rit'),
55
- new SelectieInfo(actieOpRitSelectieIds, 'actieoprit'),
56
- new SelectieInfo(ongeplandeActieSelectieIds, 'ongeplandeActie'),
57
- new SelectieInfo(gebrokenRit, 'gebrokenrit'),
58
- new SelectieInfo(alternatieven, 'alternatieveRoute'),
59
- new SelectieInfo(begin, 'zigzagVan'),
60
- new SelectieInfo(eind, 'zigzagNaar')
61
- ]);
62
- })))));
63
- this.store.select('baseUrl').pipe(filter(baseUrl => !!baseUrl), take(1), tap(baseUrl => svgService.configuration.basePath = baseUrl + '/mst')).subscribe();
64
35
  }
65
36
  zetClassOpRanden(puics) {
66
37
  puics.forEach(element => {
@@ -68,22 +39,10 @@ export class SvgViewEffect {
68
39
  rand?.classList.add('connector');
69
40
  });
70
41
  }
71
- toSbSein(sein) {
72
- return {
73
- getPuic: () => sein.puic,
74
- isBediend: () => sein.bediend,
75
- getType: () => sein.type
76
- };
77
- }
78
- toSbSignaleringsElement(signaleringsElement) {
79
- return {
80
- getPuic: () => signaleringsElement.puic
81
- };
82
- }
83
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SvgViewEffect, deps: [{ token: i1.Actions }, { token: i2.Store }, { token: i3.SignaleringsbeeldSvgUtilityService }, { token: i4.SvgControllerService }], target: i0.ɵɵFactoryTarget.Injectable }); }
84
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SvgViewEffect }); }
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgViewEffect, deps: [{ token: i1.Actions }, { token: i2.Store }, { token: i3.SignaleringsBeeldManagerService }, { token: i4.SignaleringsbeeldSvgUtilityService }], target: i0.ɵɵFactoryTarget.Injectable }); }
43
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgViewEffect }); }
85
44
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SvgViewEffect, decorators: [{
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: SvgViewEffect, decorators: [{
87
46
  type: Injectable
88
- }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.Store }, { type: i3.SignaleringsbeeldSvgUtilityService }, { type: i4.SvgControllerService }] });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLXZpZXcuZWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3N0YXRlL2VmZmVjdC9zdmctdmlldy5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsT0FBTyxFQUFXLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVuRixPQUFPLEtBQUssVUFBVSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7QUFJbkYsTUFBTSxPQUFPLGFBQWE7SUFFdEIsWUFBNkIsUUFBaUIsRUFDakIsS0FBNEIsRUFDNUIsZ0JBQW9ELEVBQ3BELFVBQWdDO1FBSGhDLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsVUFBSyxHQUFMLEtBQUssQ0FBdUI7UUFDNUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQztRQUNwRCxlQUFVLEdBQVYsVUFBVSxDQUFzQjtRQVE3RCxtQkFBYyxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDbEQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFDOUIsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFDMUIsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLEVBQ2pJLEdBQUcsQ0FBQyxDQUFDLE9BQW1CLEVBQUUsRUFBRTtZQUN4QixVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNaLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7Z0JBQ3JDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDZixPQUFPO2dCQUNYLENBQUM7Z0JBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQyxNQUFNLDRCQUE0QixHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO2dCQUMvRCxXQUFXLENBQUMsa0JBQWtCO29CQUNuQixFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLDRCQUE0QixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSyxFQUFFLE1BQU0sQ0FBQyxrQkFBbUIsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQywrQkFBK0IsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2dCQUNwRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsV0FBVyxDQUFDLG9CQUFvQixJQUFJLEVBQUUsQ0FBQyxDQUFDO2dCQUVyRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsa0NBQWtDLEVBQUUsQ0FBQztnQkFDM0QsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixFQUFFLENBQUM7Z0JBRTVDLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQzVELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxrQ0FBa0MsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDakUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLG9DQUFvQyxDQUN0RCxXQUFXLENBQUMscUJBQXFCO29CQUN0QixFQUFFLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxFQUFFLENBQ25HLENBQUM7Z0JBRUYsTUFBTSxlQUFlLEdBQUcsV0FBVyxDQUFDLGNBQWMsSUFBSSxFQUFFLENBQUM7Z0JBQ3pELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDdkMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN0RCxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO2dCQUNqRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1lBRXhELENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNWLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBQyxRQUFRLEVBQUUsS0FBSyxFQUFDLENBQ3pCLENBQUM7UUFFRix5QkFBb0IsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3hELE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxFQUN6QixTQUFTLENBQUMsR0FBRyxFQUFFLENBQ1gsYUFBYSxDQUFDO1lBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7WUFDbkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsdUJBQXVCLENBQUM7WUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsNEJBQTRCLENBQUM7WUFDL0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsd0JBQXdCLENBQUM7WUFDM0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsMEJBQTBCLENBQUM7WUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsc0JBQXNCLENBQUM7WUFDekMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUM7U0FDM0MsQ0FBQyxDQUFDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsRUFBRSwwQkFBMEIsRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ3RHLE9BQU8sVUFBVSxDQUFDLGdCQUFnQixDQUFDO2dCQUMvQixJQUFJLFlBQVksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDO2dCQUM1QixJQUFJLFlBQVksQ0FBQyxxQkFBcUIsRUFBRSxZQUFZLENBQUM7Z0JBQ3JELElBQUksWUFBWSxDQUFDLDBCQUEwQixFQUFFLGlCQUFpQixDQUFDO2dCQUMvRCxJQUFJLFlBQVksQ0FBQyxXQUFXLEVBQUUsYUFBYSxDQUFDO2dCQUM1QyxJQUFJLFlBQVksQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLENBQUM7Z0JBQ3BELElBQUksWUFBWSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUM7Z0JBQ3BDLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUM7YUFDdkMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQ0wsQ0FDSixDQUNKLENBQUMsQ0FBQztRQXRFQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQzdCLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFDNUIsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsUUFBUSxHQUFHLE9BQU8sR0FBRyxNQUFNLENBQUMsQ0FDdkUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBbUVPLGdCQUFnQixDQUFDLEtBQWU7UUFDcEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNwQixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsQ0FBQztZQUNwRCxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxRQUFRLENBQUMsSUFBVTtRQUN2QixPQUFPO1lBQ0gsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJO1lBQ3hCLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTztZQUM3QixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUk7U0FDWixDQUFDO0lBQ3JCLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxtQkFBd0I7UUFDcEQsT0FBTztZQUNILE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJO1NBQ1osQ0FBQztJQUNwQyxDQUFDOytHQWpHUSxhQUFhO21IQUFiLGFBQWE7OzRGQUFiLGFBQWE7a0JBRHpCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTZWxlY3RpZUluZm8gfSBmcm9tICdAbG94aWEvaW14LXZpZXdlcic7XG5pbXBvcnQgeyBzYmJsYWQsIFNpZ25hbGVyaW5nc2JlZWxkU3ZnVXRpbGl0eVNlcnZpY2UgfSBmcm9tICdAbG94aWEvcmlqd2VnZW4nO1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHN3aXRjaE1hcCwgdGFrZSwgdGFwLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFNlaW4sIFN2Z0NvbnRyb2xsZXJTZXJ2aWNlLCBTdmdJbmZvRHRvIH0gZnJvbSAnLi4vLi4vLi4vZ2VuZXJhdGVkL29wZW5hcGknO1xuaW1wb3J0ICogYXMgTXN0QWN0aW9ucyBmcm9tICcuLi9hY3Rpb25zL2FjdGlvbnMnO1xuaW1wb3J0IHsgU2V0Q29ubmVjdG9yZW5DbGlja2FibGVJZHMsIHN2Z1VwZGF0ZUZpbmlzaGVkIH0gZnJvbSAnLi4vYWN0aW9ucy9hY3Rpb25zJztcbmltcG9ydCB7IE1zdEVkaXRvclN0YXRlIH0gZnJvbSAnLi4vbXN0LWVkaXRvci1zdGF0ZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTdmdWaWV3RWZmZWN0IHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYWN0aW9ucyQ6IEFjdGlvbnMsXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzdG9yZTogU3RvcmU8TXN0RWRpdG9yU3RhdGU+LFxuICAgICAgICAgICAgICAgIHByaXZhdGUgcmVhZG9ubHkgc2JTdmdVdGlsU2VydmljZTogU2lnbmFsZXJpbmdzYmVlbGRTdmdVdGlsaXR5U2VydmljZSxcbiAgICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHN2Z1NlcnZpY2U6IFN2Z0NvbnRyb2xsZXJTZXJ2aWNlKSB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KCdiYXNlVXJsJykucGlwZShcbiAgICAgICAgICAgIGZpbHRlcihiYXNlVXJsID0+ICEhYmFzZVVybCksXG4gICAgICAgICAgICB0YWtlKDEpLFxuICAgICAgICAgICAgdGFwKGJhc2VVcmwgPT4gc3ZnU2VydmljZS5jb25maWd1cmF0aW9uLmJhc2VQYXRoID0gYmFzZVVybCArICcvbXN0JylcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICB1cGRhdGVTdmdWaWV3JCA9IGNyZWF0ZUVmZmVjdCgoKSA9PiB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShNc3RBY3Rpb25zLlNldFN2Z0luZm9zKSxcbiAgICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5zdG9yZSksXG4gICAgICAgIHN3aXRjaE1hcCgoW19hY3RpZSwgc3RvcmVTdGF0ZV0pID0+IHRoaXMuc3ZnU2VydmljZS5nZXRTdmdJbmZvKHN0b3JlU3RhdGUuaWFWZXJzaWUudmVyc2llLCBzdG9yZVN0YXRlLnNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b3MpKSxcbiAgICAgICAgbWFwKChzdmdJbmZvOiBTdmdJbmZvRHRvKSA9PiB7XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdmdUb3BvbG9neSA9IHN2Z0luZm8udG9wb2xvZ3k7XG4gICAgICAgICAgICAgICAgaWYgKCFzdmdUb3BvbG9neSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLmFkZFN2Z0RlZnMoKTtcbiAgICAgICAgICAgICAgICBjb25zdCB3aXNzZWxFblN0b3Jpbmdza2FkZXJQdWljTWFwID0gbmV3IE1hcDxzdHJpbmcsIHN0cmluZz4oKTtcbiAgICAgICAgICAgICAgICBzdmdUb3BvbG9neS5hbGxlU29vcnRlbldpc3NlbHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgID8uZm9yRWFjaCh3aXNzZWwgPT4gd2lzc2VsRW5TdG9yaW5nc2thZGVyUHVpY01hcC5zZXQod2lzc2VsLnB1aWMhLCB3aXNzZWwuc3RvcmluZ1N5bWJvb2xQdWljISkpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2JTdmdVdGlsU2VydmljZS56ZXRDbGFzc09wU3RvcmluZ1N5bWJvbGVuTWV0TWFwKHdpc3NlbEVuU3RvcmluZ3NrYWRlclB1aWNNYXApO1xuICAgICAgICAgICAgICAgIHRoaXMuc2JTdmdVdGlsU2VydmljZS56ZXRDbGFzc09wU3Bvb3JudW1tZXJzKHN2Z1RvcG9sb2d5LnB1aWNWb29yU3Bvb3JOdW1tZXJzID8/IFtdKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuc2JTdmdVdGlsU2VydmljZS5tYWFrT25nZXdlbnN0ZUVsZW1lbnRlbk9uemljaHRiYWFyKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLnpldENsYXNzT3BMYW5nZVRleHQoKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHNlaW5lbiA9IHN2Z1RvcG9sb2d5LnNlaW5lbj8ubWFwKHRoaXMudG9TYlNlaW4pID8/IFtdO1xuICAgICAgICAgICAgICAgIHRoaXMuc2JTdmdVdGlsU2VydmljZS5tYWFrT25nZXdlbnN0ZVNlaW5kZWxlbk9uemljaHRiYWFyKHNlaW5lbik7XG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLm1hYWtTaWduYWxlcmluZ3NFbGVtZW50ZW5PbnppY2h0YmFhcihcbiAgICAgICAgICAgICAgICAgICAgc3ZnVG9wb2xvZ3kuc2lnbmFsZXJpbmdzRWxlbWVudGVuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPy5tYXAoc2lnbmFsZXJpbmdzRWxlbWVudCA9PiB0aGlzLnRvU2JTaWduYWxlcmluZ3NFbGVtZW50KHNpZ25hbGVyaW5nc0VsZW1lbnQpKSA/PyBbXVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBjb25zdCBwdWljc1Zvb3JSYW5kZW4gPSBzdmdUb3BvbG9neS5wdWljVm9vclJhbmRlbiA/PyBbXTtcbiAgICAgICAgICAgICAgICB0aGlzLnpldENsYXNzT3BSYW5kZW4ocHVpY3NWb29yUmFuZGVuKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNiU3ZnVXRpbFNlcnZpY2UuemV0Q2xhc3NPcFJpanJpY2h0aW5nZW4oc2VpbmVuKTtcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKFNldENvbm5lY3RvcmVuQ2xpY2thYmxlSWRzKHB1aWNzVm9vclJhbmRlbikpO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goTXN0QWN0aW9ucy5zdmdVcGRhdGVGaW5pc2hlZCgpKTtcblxuICAgICAgICAgICAgfSwgMCk7XG4gICAgICAgIH0pKSwge2Rpc3BhdGNoOiBmYWxzZX1cbiAgICApO1xuXG4gICAgdXBkYXRlU2VsZWN0aWVJbmZvcyQgPSBjcmVhdGVFZmZlY3QoKCkgPT4gdGhpcy5hY3Rpb25zJC5waXBlKFxuICAgICAgICBvZlR5cGUoc3ZnVXBkYXRlRmluaXNoZWQpLFxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT5cbiAgICAgICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KCdyaXRTZWxlY3RpZUlkcycpLFxuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KCdhY3RpZU9wUml0U2VsZWN0aWVJZHMnKSxcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdCgnb25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHMnKSxcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdCgnZ2Vicm9rZW5SaXRTZWxlY3RpZUlkcycpLFxuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuc2VsZWN0KCdhbHRlcm5hdGlldmVuU2VsZWN0aWVJZHMnKSxcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdCgnYmVnaW5TZWluU2VsZWN0aWVJZHMnKSxcbiAgICAgICAgICAgICAgICB0aGlzLnN0b3JlLnNlbGVjdCgnZWluZFNlaW5TZWxlY3RpZUlkcycpXG4gICAgICAgICAgICBdKS5waXBlKFxuICAgICAgICAgICAgICAgIG1hcCgoW3JpdCwgYWN0aWVPcFJpdFNlbGVjdGllSWRzLCBvbmdlcGxhbmRlQWN0aWVTZWxlY3RpZUlkcywgZ2Vicm9rZW5SaXQsIGFsdGVybmF0aWV2ZW4sIGJlZ2luLCBlaW5kXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gTXN0QWN0aW9ucy5zZXRTZWxlY3RpZUluZm9zKFtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBTZWxlY3RpZUluZm8ocml0LCAncml0JyksXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgU2VsZWN0aWVJbmZvKGFjdGllT3BSaXRTZWxlY3RpZUlkcywgJ2FjdGllb3ByaXQnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBTZWxlY3RpZUluZm8ob25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHMsICdvbmdlcGxhbmRlQWN0aWUnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBTZWxlY3RpZUluZm8oZ2Vicm9rZW5SaXQsICdnZWJyb2tlbnJpdCcpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFNlbGVjdGllSW5mbyhhbHRlcm5hdGlldmVuLCAnYWx0ZXJuYXRpZXZlUm91dGUnKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBTZWxlY3RpZUluZm8oYmVnaW4sICd6aWd6YWdWYW4nKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBTZWxlY3RpZUluZm8oZWluZCwgJ3ppZ3phZ05hYXInKVxuICAgICAgICAgICAgICAgICAgICBdKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICApXG4gICAgKSk7XG5cbiAgICBwcml2YXRlIHpldENsYXNzT3BSYW5kZW4ocHVpY3M6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgICAgIHB1aWNzLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgICAgICBjb25zdCByYW5kID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3AnICsgZWxlbWVudCk7XG4gICAgICAgICAgICByYW5kPy5jbGFzc0xpc3QuYWRkKCdjb25uZWN0b3InKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0b1NiU2VpbihzZWluOiBTZWluKTogc2JibGFkLlNlaW4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZ2V0UHVpYzogKCkgPT4gc2Vpbi5wdWljLFxuICAgICAgICAgICAgaXNCZWRpZW5kOiAoKSA9PiBzZWluLmJlZGllbmQsXG4gICAgICAgICAgICBnZXRUeXBlOiAoKSA9PiBzZWluLnR5cGVcbiAgICAgICAgfSBhcyBzYmJsYWQuU2VpbjtcbiAgICB9XG5cbiAgICBwcml2YXRlIHRvU2JTaWduYWxlcmluZ3NFbGVtZW50KHNpZ25hbGVyaW5nc0VsZW1lbnQ6IGFueSk6IHNiYmxhZC5TaWduYWxlcmluZ3NFbGVtZW50IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGdldFB1aWM6ICgpID0+IHNpZ25hbGVyaW5nc0VsZW1lbnQucHVpY1xuICAgICAgICB9IGFzIHNiYmxhZC5TaWduYWxlcmluZ3NFbGVtZW50O1xuICAgIH1cbn1cbiJdfQ==
47
+ }], ctorParameters: () => [{ type: i1.Actions }, { type: i2.Store }, { type: i3.SignaleringsBeeldManagerService }, { type: i4.SignaleringsbeeldSvgUtilityService }] });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnLXZpZXcuZWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbXN0LXZpZXdlci9zcmMvbGliL3N0YXRlL2VmZmVjdC9zdmctdmlldy5lZmZlY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQVcsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU5RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxLQUFLLFVBQVUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7O0FBSWhFLE1BQU0sT0FBTyxhQUFhO0lBRXRCLFlBQW9CLFFBQWlCLEVBQ2pCLEtBQTRCLEVBQzVCLCtCQUFnRSxFQUNoRSxnQkFBb0Q7UUFIcEQsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUM1QixvQ0FBK0IsR0FBL0IsK0JBQStCLENBQWlDO1FBQ2hFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBb0M7UUFHeEUsbUJBQWMsR0FBRyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2xELE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQzlCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ1gsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBRW5DLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7Z0JBQy9ELElBQUksQ0FBQywrQkFBK0IsQ0FBQyxxQkFBcUIsRUFBRTtxQkFDdkQsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsNEJBQTRCLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsRUFBRSxNQUFNLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzNHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQywrQkFBK0IsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2dCQUNwRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLCtCQUErQixDQUFDLHdCQUF3QixFQUFFLENBQUMsQ0FBQztnQkFFOUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGtDQUFrQyxFQUFFLENBQUM7Z0JBQzNELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUU1QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsa0NBQWtDLENBQUMsSUFBSSxDQUFDLCtCQUErQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7Z0JBQzNHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQ0FBb0MsQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsd0JBQXdCLEVBQUUsQ0FBQyxDQUFDO2dCQUU1SCxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsK0JBQStCLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDbEYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUN2QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLCtCQUErQixDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7Z0JBQ2hHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLDBCQUEwQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7WUFFckUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ1YsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUMsQ0FDekIsQ0FBQztJQTNCRixDQUFDO0lBNkJPLGdCQUFnQixDQUFDLEtBQWU7UUFDcEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNwQixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLEdBQUcsR0FBRyxPQUFPLENBQUMsQ0FBQztZQUNwRCxJQUFJLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBeENRLGFBQWE7a0hBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNpZ25hbGVyaW5nc2JlZWxkU3ZnVXRpbGl0eVNlcnZpY2UgfSBmcm9tICdAbG94aWEvcmlqd2VnZW4nO1xuaW1wb3J0IHsgQWN0aW9ucywgY3JlYXRlRWZmZWN0LCBvZlR5cGUgfSBmcm9tICdAbmdyeC9lZmZlY3RzJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NpZ25hbGVyaW5ncy1iZWVsZC1tYW5hZ2VyLnNlcnZpY2UnO1xuaW1wb3J0ICogYXMgTXN0QWN0aW9ucyBmcm9tICcuLi9hY3Rpb25zL2FjdGlvbnMnO1xuaW1wb3J0IHsgU2V0Q29ubmVjdG9yZW5DbGlja2FibGVJZHMgfSBmcm9tICcuLi9hY3Rpb25zL2FjdGlvbnMnO1xuaW1wb3J0IHsgTXN0RWRpdG9yU3RhdGUgfSBmcm9tICcuLi9tc3QtZWRpdG9yLXN0YXRlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFN2Z1ZpZXdFZmZlY3Qge1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucyxcbiAgICAgICAgICAgICAgICBwcml2YXRlIHN0b3JlOiBTdG9yZTxNc3RFZGl0b3JTdGF0ZT4sXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBzaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlOiBTaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByaXZhdGUgc2JTdmdVdGlsU2VydmljZTogU2lnbmFsZXJpbmdzYmVlbGRTdmdVdGlsaXR5U2VydmljZSkge1xuICAgIH1cblxuICAgIHVwZGF0ZVN2Z1ZpZXckID0gY3JlYXRlRWZmZWN0KCgpID0+IHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKE1zdEFjdGlvbnMuU2V0U3ZnSW5mb3MpLFxuICAgICAgICBtYXAoKF9hY3RpZSkgPT4ge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLmFkZFN2Z0RlZnMoKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHdpc3NlbEVuU3RvcmluZ3NrYWRlclB1aWNNYXAgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuICAgICAgICAgICAgICAgIHRoaXMuc2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZS5nZXRBbGxlU29vcnRlbldpc3NlbHMoKVxuICAgICAgICAgICAgICAgICAgICAuZm9yRWFjaCh3aXNzZWwgPT4gd2lzc2VsRW5TdG9yaW5nc2thZGVyUHVpY01hcC5zZXQod2lzc2VsLmdldFB1aWMoKSwgd2lzc2VsLmdldFN0b3JpbmdTeW1ib29sUHVpYygpKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLnpldENsYXNzT3BTdG9yaW5nU3ltYm9sZW5NZXRNYXAod2lzc2VsRW5TdG9yaW5nc2thZGVyUHVpY01hcCk7XG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLnpldENsYXNzT3BTcG9vcm51bW1lcnModGhpcy5zaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlLmdldFB1aWNzVm9vclNwb29ybnVtbWVycygpKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuc2JTdmdVdGlsU2VydmljZS5tYWFrT25nZXdlbnN0ZUVsZW1lbnRlbk9uemljaHRiYWFyKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLnpldENsYXNzT3BMYW5nZVRleHQoKTtcblxuICAgICAgICAgICAgICAgIHRoaXMuc2JTdmdVdGlsU2VydmljZS5tYWFrT25nZXdlbnN0ZVNlaW5kZWxlbk9uemljaHRiYWFyKHRoaXMuc2lnbmFsZXJpbmdzQmVlbGRNYW5hZ2VyU2VydmljZS5nZXRTZWluZW4oKSk7XG4gICAgICAgICAgICAgICAgdGhpcy5zYlN2Z1V0aWxTZXJ2aWNlLm1hYWtTaWduYWxlcmluZ3NFbGVtZW50ZW5PbnppY2h0YmFhcih0aGlzLnNpZ25hbGVyaW5nc0JlZWxkTWFuYWdlclNlcnZpY2UuZ2V0U2lnbmFsZXJpbmdzRWxlbWVudGVuKCkpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgcHVpY3NWb29yUmFuZGVuID0gdGhpcy5zaWduYWxlcmluZ3NCZWVsZE1hbmFnZXJTZXJ2aWNlLmdldFB1aWNzVm9vclJhbmRlbigpO1xuICAgICAgICAgICAgICAgIHRoaXMuemV0Q2xhc3NPcFJhbmRlbihwdWljc1Zvb3JSYW5kZW4pO1xuICAgICAgICAgICAgICAgIHRoaXMuc2JTdmdVdGlsU2VydmljZS56ZXRDbGFzc09wUmlqcmljaHRpbmdlbih0aGlzLnNpZ25hbGVyaW5nc0JlZWxkTWFuYWdlclNlcnZpY2UuZ2V0U2VpbmVuKCkpO1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goU2V0Q29ubmVjdG9yZW5DbGlja2FibGVJZHMocHVpY3NWb29yUmFuZGVuKSk7XG5cbiAgICAgICAgICAgIH0sIDApO1xuICAgICAgICB9KSksIHtkaXNwYXRjaDogZmFsc2V9XG4gICAgKTtcblxuICAgIHByaXZhdGUgemV0Q2xhc3NPcFJhbmRlbihwdWljczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICAgICAgcHVpY3MuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJhbmQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncCcgKyBlbGVtZW50KTtcbiAgICAgICAgICAgIHJhbmQ/LmNsYXNzTGlzdC5hZGQoJ2Nvbm5lY3RvcicpO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
@@ -11,7 +11,6 @@ export const progressIndicatorReducer = createReducer({}, on(MstActions.ShowProg
11
11
  export const svgInfoReducer = createReducer([], on(MstActions.SetSvgInfos, (_, { svgInfos }) => svgInfos));
12
12
  export const debugReducer = createReducer(false, on(MstActions.SetDebug, (_, { debug }) => debug));
13
13
  export const ritSelectieIdsReducer = createIdsReducer(MstActions.SetRitSelectieIds);
14
- export const selectieInfosReducer = createReducer([], on(MstActions.setSelectieInfos, (_, { selectieInfos }) => selectieInfos));
15
14
  export const actieOpRitReducer = createReducer(new ArrayMultimap(), on(MstActions.SetGeplandeActies, (_, { geplandeActiesMap }) => geplandeActiesMap), on(MstActions.AddGeplandeActie, (geplandeActies, { actie, puics }) => {
16
15
  geplandeActies.putAll(actie, puics);
17
16
  return new ArrayMultimap(geplandeActies);
@@ -83,6 +82,5 @@ export const storeReducers = {
83
82
  nieuweBewegingen: nieuweBewegingReducer,
84
83
  baseUrl: baseUrlReducer,
85
84
  focusIds: focusIdsReducer,
86
- selectieInfos: selectieInfosReducer
87
85
  };
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXN0LWVkaXRvci1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdC12aWV3ZXIvc3JjL2xpYi9zdGF0ZS9tc3QtZWRpdG9yLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBbUMsYUFBYSxFQUFFLEVBQUUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVqRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUN0RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxVQUFVLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBaUQ5RCxNQUFNLGtCQUFrQixHQUFHLENBQUMsTUFBd0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQVcsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNuRyxNQUFNLGdCQUFnQixHQUFHLENBQUMsTUFBd0IsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFXLEVBQUUsRUFBRSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBRS9HLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxhQUFhLENBQVUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7QUFFdkgsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsYUFBYSxDQUNqRCxFQUFvQixFQUNwQixFQUFFLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUUs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QUFFLHlCQUF5QjtJQUM3QyxRQUFRLEVBQUUsY0FBYztJQUN4QixLQUFLLEVBQUUsWUFBWTtJQUNuQixRQUFRLEVBQUUsZUFBZTtJQUN6Qix1QkFBdUIsRUFBRSw4QkFBOEI7SUFDdkQsYUFBYSxFQUFFLHdCQUF3QjtJQUN2QyxnQkFBZ0IsRUFBRSxxQkFBcUI7SUFDdkMsT0FBTyxFQUFFLGNBQWM7SUFDdkIsUUFBUSxFQUFFLGVBQWU7SUFDekIsYUFBYSxFQUFFLG9CQUFvQjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWxlY3RpZUluZm8sIFN2Z0luZm8gfSBmcm9tICdAbG94aWEvaW14LXZpZXdlcic7XG5pbXBvcnQgeyBBY3Rpb25DcmVhdG9yLCBBY3Rpb25SZWR1Y2VyTWFwLCBjcmVhdGVSZWR1Y2VyLCBvbiB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEFsZ2VtZW5lUml0RHRvLCBTaWduYWxlcmluZ3NiZWVsZER0byB9IGZyb20gJy4uLy4uL2dlbmVyYXRlZC9vcGVuYXBpJztcbmltcG9ydCB7IFByb2dyZXNzSW5kaWNhdG9yIH0gZnJvbSAnLi4vYXRvbWljLWNvbXBvbmVudHMvcHJvZ3Jlc3MtaW5kaWNhdG9yL3Byb2dyZXNzLWluZGljYXRvci5lbnRpdHknO1xuaW1wb3J0IHsgTmlldXdlUm91dGUgfSBmcm9tICcuLi9tb2RlbC9uaWV1d2Utcm91dGUnO1xuaW1wb3J0IHsgT25nZXBsYW5kZUFjdGllIH0gZnJvbSAnLi4vbW9kZWwvb25nZXBsYW5kZS1hY3RpZSc7XG5pbXBvcnQgeyBSaXRkZWVsIH0gZnJvbSAnLi4vbW9kZWwvcml0ZGVlbCc7XG5pbXBvcnQgeyBBY3RpZSwgQmV3ZWdpbmcsIEluZnJhTW9kZWwgfSBmcm9tICcuLi9vcHRpbW8nO1xuaW1wb3J0IHsgQXJyYXlNdWx0aW1hcCB9IGZyb20gJy4uL3V0aWwvbXVsdGktbWFwJztcbmltcG9ydCAqIGFzIE1zdEFjdGlvbnMgZnJvbSAnLi9hY3Rpb25zL2FjdGlvbnMnO1xuaW1wb3J0IHsgcml0ZGVsZW5SZWR1Y2VyIH0gZnJvbSAnLi9yZWR1Y2VyL3JpdC1kZWxlbi5yZWR1Y2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBNc3RFZGl0b3JTdGF0ZSB7XG4gICAgcml0RGVsZW46IFJpdGRlZWxbXTsgLy8gb25zIG1vZGVsIHZhbiB0cmVpbnBhZFxuXG4gICAgLy8gcHVpY3Mgdm9vciBTZWxlY3RpZUluZm9zXG4gICAgcml0U2VsZWN0aWVJZHM6IHN0cmluZ1tdO1xuICAgIGFjdGllT3BSaXRTZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgZ2Vicm9rZW5SaXRTZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgYWx0ZXJuYXRpZXZlblNlbGVjdGllSWRzOiBzdHJpbmdbXTtcbiAgICBiZWdpblNlaW5TZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgZWluZFNlaW5TZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgb25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHM6IHN0cmluZ1tdO1xuICAgIHNlbGVjdGllSW5mb3M6IFNlbGVjdGllSW5mb1tdO1xuICAgIG9uZ2VwbGFuZGVBY3RpZXM6IEFycmF5TXVsdGltYXA8c3RyaW5nLCBPbmdlcGxhbmRlQWN0aWU+O1xuICAgIGdlcGxhbmRlQWN0aWVzOiBBcnJheU11bHRpbWFwPEFjdGllLCBzdHJpbmc+O1xuXG4gICAgLy8gcHVpY3Mgdm9vciBjbGlja3NcbiAgICBhbHRlcm5hdGlldmVuQ2xpY2thYmxlSWRzOiBzdHJpbmdbXTtcbiAgICBlaW5kU2VpbmVuQ2xpY2thYmxlSWRzOiBzdHJpbmdbXTtcbiAgICBjb25uZWN0b3JDbGlja2FibGVJZHM6IHN0cmluZ1tdO1xuXG4gICAgLy8gcHVpY3Mgdm9vciByaWdodGNsaWNrc1xuICAgIGJlZ2luU2VpblJpZ2h0Q2xpY2thYmxlSWRzOiBzdHJpbmdbXTtcblxuICAgIG5pZXV3ZVJvdXRlPzogTmlldXdlUm91dGU7XG5cbiAgICBzaWduYWxlcmluZ3NiZWVsZEluZm9EdG9zOiBTaWduYWxlcmluZ3NiZWVsZER0b1tdO1xuICAgIHZpc2libGVTYkluZm9EdG9zOiBTaWduYWxlcmluZ3NiZWVsZER0b1tdO1xuICAgIGFsZ2VtZW5lUml0SW5mb0R0bzogQWxnZW1lbmVSaXREdG87XG4gICAgaWFWZXJzaWU6IEluZnJhTW9kZWw7XG4gICAgc3ZnSW5mb3M6IFN2Z0luZm9bXTtcbiAgICBkZWJ1ZzogYm9vbGVhbjtcbiAgICBlZGl0YWJsZTogYm9vbGVhbjtcbiAgICBvbmdlcGxhbmRlQWN0aWVzQmVwYWFsZDogYm9vbGVhbjtcbiAgICBwcm9ncmVzc1N0YXRlOiBQcm9ncmVzc1N0YXRlO1xuICAgIG5pZXV3ZUJld2VnaW5nZW46IEJld2VnaW5nW107XG4gICAgYmFzZVVybDogc3RyaW5nO1xuICAgIGZvY3VzSWRzOiBzdHJpbmdbXTtcbn1cblxuaW50ZXJmYWNlIFByb2dyZXNzU3RhdGUge1xuICAgIHByb2dyZXNzSW5kaWNhdG9yPzogUHJvZ3Jlc3NJbmRpY2F0b3I7XG59XG5cbnR5cGUgSWRzQWN0aW9uQ3JlYXRvciA9IEFjdGlvbkNyZWF0b3I8XG4gICAgc3RyaW5nLFxuICAgIChpZHM6IHN0cmluZ1tdKSA9PiB7IGlkczogc3RyaW5nW10gfSAmIHsgdHlwZTogc3RyaW5nIH0+O1xuXG5jb25zdCBvbklkc0FjdGlvbkhhbmRsZXIgPSAoYWN0aW9uOiBJZHNBY3Rpb25DcmVhdG9yKSA9PiBvbihhY3Rpb24sIChfOiBzdHJpbmdbXSwgeyBpZHMgfSkgPT4gaWRzKTtcbmNvbnN0IGNyZWF0ZUlkc1JlZHVjZXIgPSAoYWN0aW9uOiBJZHNBY3Rpb25DcmVhdG9yKSA9PiBjcmVhdGVSZWR1Y2VyPHN0cmluZ1tdPihbXSwgb25JZHNBY3Rpb25IYW5kbGVyKGFjdGlvbikpO1xuXG5leHBvcnQgY29uc3QgZWRpdGFibGVSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxib29sZWFuPih0cnVlLCBvbihNc3RBY3Rpb25zLnNldEVkaXRhYmxlLCAoXywgeyBlZGl0YWJsZSB9KSA9PiBlZGl0YWJsZSkpO1xuXG5leHBvcnQgY29uc3QgcHJvZ3Jlc3NJbmRpY2F0b3JSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxQcm9ncmVzc1N0YXRlPihcbiAgICB7IH0gYXMgUHJvZ3Jlc3NTdGF0ZSxcbiAgICBvbihNc3RBY3Rpb25zLlNob3dQcm9ncmVzcywgKCkgPT4gKHsgcHJvZ3Jlc3NJbmRpY2F0b3I6IG5ldyBQcm9ncmVzc0luZGljYXRvcigpIH0gYXMgUHJvZ3Jlc3NTdGF0ZSkpLFxuICAgIG9uKE1zdEFjdGlvbnMuQ2xlYXJQcm9ncmVzcywgKCkgPT4gKHsgfSkpXG4pO1xuXG5leHBvcnQgY29uc3Qgc3ZnSW5mb1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPFN2Z0luZm9bXT4oW10sIG9uKE1zdEFjdGlvbnMuU2V0U3ZnSW5mb3MsIChfLCB7IHN2Z0luZm9zIH0pID0+IHN2Z0luZm9zKSk7XG5leHBvcnQgY29uc3QgZGVidWdSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxib29sZWFuPihmYWxzZSwgb24oTXN0QWN0aW9ucy5TZXREZWJ1ZywgKF8sIHsgZGVidWcgfSkgPT4gZGVidWcpKTtcbmV4cG9ydCBjb25zdCByaXRTZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0Uml0U2VsZWN0aWVJZHMpO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0aWVJbmZvc1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPFNlbGVjdGllSW5mb1tdPihbXSwgb24oTXN0QWN0aW9ucy5zZXRTZWxlY3RpZUluZm9zLCAoXywgeyBzZWxlY3RpZUluZm9zIH0pID0+IHNlbGVjdGllSW5mb3MpKVxuXG5leHBvcnQgY29uc3QgYWN0aWVPcFJpdFJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPEFycmF5TXVsdGltYXA8QWN0aWUsIHN0cmluZz4+KFxuICAgIG5ldyBBcnJheU11bHRpbWFwPEFjdGllLCBzdHJpbmc+KCksXG4gICAgb24oTXN0QWN0aW9ucy5TZXRHZXBsYW5kZUFjdGllcywgKF8sIHsgZ2VwbGFuZGVBY3RpZXNNYXAgfSkgPT4gZ2VwbGFuZGVBY3RpZXNNYXApLFxuICAgIG9uKE1zdEFjdGlvbnMuQWRkR2VwbGFuZGVBY3RpZSwgKGdlcGxhbmRlQWN0aWVzLCB7IGFjdGllLCBwdWljcyB9KSA9PiB7XG4gICAgICAgIGdlcGxhbmRlQWN0aWVzLnB1dEFsbChhY3RpZSwgcHVpY3MpO1xuICAgICAgICByZXR1cm4gbmV3IEFycmF5TXVsdGltYXAoZ2VwbGFuZGVBY3RpZXMpO1xuICAgIH0pLFxuICAgIG9uKE1zdEFjdGlvbnMuRGVsZXRlR2VwbGFuZGVBY3RpZSwgKGdlcGxhbmRlQWN0aWVzLCB7IGFjdGllIH0pID0+IHtcbiAgICAgICAgZ2VwbGFuZGVBY3RpZXMuZGVsZXRlKGFjdGllKTtcbiAgICAgICAgcmV0dXJuIG5ldyBBcnJheU11bHRpbWFwKGdlcGxhbmRlQWN0aWVzKTtcbiAgICB9KVxuKTtcblxuZXhwb3J0IGNvbnN0IGFjdGllT3BSaXRTZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPHN0cmluZ1tdPihcbiAgICBbXSxcbiAgICBvbklkc0FjdGlvbkhhbmRsZXIoTXN0QWN0aW9ucy5TZXRBY3RpZU9wUml0U2VsZWN0aWVJZHMpLFxuICAgIG9uKE1zdEFjdGlvbnMuQWRkR2VwbGFuZGVBY3RpZSwgKGlkczogc3RyaW5nW10sIHsgcHVpY3MgfSkgPT4ge1xuICAgICAgICBwdWljcy5maWx0ZXIocHVpYyA9PiAhaWRzLmluY2x1ZGVzKHB1aWMpKS5mb3JFYWNoKHB1aWMgPT4gaWRzLnB1c2gocHVpYykpO1xuICAgICAgICByZXR1cm4gWy4uLmlkc107XG4gICAgfSksXG4gICAgb24oTXN0QWN0aW9ucy5EZWxldGVHZXBsYW5kZUFjdGllLCAoaWRzOiBzdHJpbmdbXSwgeyBwdWljcyB9KSA9PiB7XG4gICAgICAgIHB1aWNzLmZpbHRlcihwdWljID0+IGlkcy5pbmNsdWRlcyhwdWljKSkuZm9yRWFjaChwdWljID0+IGlkcyA9IGlkcy5maWx0ZXIocCA9PiBwICE9PSBwdWljKSk7XG4gICAgICAgIHJldHVybiBbLi4uaWRzXTtcbiAgICB9KVxuKTtcblxuZXhwb3J0IGNvbnN0IG9uZ2VwbGFuZGVBY3RpZVJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPEFycmF5TXVsdGltYXA8c3RyaW5nLCBPbmdlcGxhbmRlQWN0aWU+PihcbiAgICBuZXcgQXJyYXlNdWx0aW1hcDxzdHJpbmcsIE9uZ2VwbGFuZGVBY3RpZT4oKSxcbiAgICBvbihNc3RBY3Rpb25zLlNldE9uZ2VwbGFuZGVBY3RpZXMsIChfLCB7IG9uZ2VwbGFuZGVBY3RpZXNNYXAgfSkgPT4gb25nZXBsYW5kZUFjdGllc01hcCksXG4gICAgb24oTXN0QWN0aW9ucy5BZGRPbmdlcGxhbmRlQWN0aWUsIChvbmdlcGxhbmRlQWN0aWVzLCB7IG9uZ2VwbGFuZGVBY3RpZSB9KSA9PiB7XG4gICAgICAgIG9uZ2VwbGFuZGVBY3RpZS5wdWljcy5maWx0ZXIocHVpYyA9PiAhb25nZXBsYW5kZUFjdGllcy5jb250YWluc0VudHJ5KHB1aWMsIG9uZ2VwbGFuZGVBY3RpZSkpXG4gICAgICAgICAgICAgICAgICAgICAgIC5mb3JFYWNoKHB1aWMgPT4gb25nZXBsYW5kZUFjdGllcy5wdXQocHVpYywgb25nZXBsYW5kZUFjdGllKSk7XG4gICAgICAgIHJldHVybiBuZXcgQXJyYXlNdWx0aW1hcChvbmdlcGxhbmRlQWN0aWVzKTtcbiAgICB9KSxcbiAgICBvbihNc3RBY3Rpb25zLkRlbGV0ZU9uZ2VwbGFuZGVBY3RpZSwgKG9uZ2VwbGFuZGVBY3RpZXMsIHsgb25nZXBsYW5kZUFjdGllIH0pID0+IHtcbiAgICAgICAgb25nZXBsYW5kZUFjdGllLnB1aWNzLmZvckVhY2gocHVpYyA9PiBvbmdlcGxhbmRlQWN0aWVzLmRlbGV0ZShwdWljLCBvbmdlcGxhbmRlQWN0aWUpKTtcbiAgICAgICAgcmV0dXJuIG5ldyBBcnJheU11bHRpbWFwKG9uZ2VwbGFuZGVBY3RpZXMpO1xuICAgIH0pXG4pO1xuXG5leHBvcnQgY29uc3Qgb25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHNSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxzdHJpbmdbXT4oXG4gICAgW10sXG4gICAgb25JZHNBY3Rpb25IYW5kbGVyKE1zdEFjdGlvbnMuU2V0T25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHMpLFxuICAgIG9uKE1zdEFjdGlvbnMuQWRkT25nZXBsYW5kZUFjdGllLCAoaWRzOiBzdHJpbmdbXSwgeyBvbmdlcGxhbmRlQWN0aWUgfSkgPT4ge1xuICAgICAgICBvbmdlcGxhbmRlQWN0aWUucHVpY3MuZmlsdGVyKHB1aWMgPT4gIWlkcy5pbmNsdWRlcyhwdWljKSkuZm9yRWFjaChwdWljID0+IGlkcy5wdXNoKHB1aWMpKTtcbiAgICAgICAgcmV0dXJuIFsuLi5pZHNdO1xuICAgIH0pLFxuICAgIG9uKE1zdEFjdGlvbnMuRGVsZXRlT25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZCwgKGlkczogc3RyaW5nW10sIHsgaWQgfSkgPT4gaWRzLmluY2x1ZGVzKGlkKSA/IGlkcy5maWx0ZXIoX2lkID0+IF9pZCAhPT0gaWQpIDogaWRzKVxuKTtcblxuZXhwb3J0IGNvbnN0IGdlYnJva2VuUml0U2VsZWN0aWVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEdlYnJva2VuUml0U2VsZWN0aWVJZHMpO1xuZXhwb3J0IGNvbnN0IGFsdGVybmF0aWV2ZW5TZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0QWx0ZXJuYXRpZXZlblNlbGVjdGllSWRzKTtcbmV4cG9ydCBjb25zdCBiZWdpblNlaW5TZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0QmVnaW5TZWluU2VsZWN0aWVJZHMpO1xuZXhwb3J0IGNvbnN0IGVpbmRTZWluU2VsZWN0aWVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEVpbmRTZWluU2VsZWN0aWVJZHMpO1xuZXhwb3J0IGNvbnN0IGFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHMpO1xuZXhwb3J0IGNvbnN0IGVpbmRTZWluZW5DbGlja2FibGVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEVpbmRTZWluZW5DbGlja2FibGVJZHMpO1xuZXhwb3J0IGNvbnN0IGNvbm5lY3RvckNsaWNrYWJsZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0Q29ubmVjdG9yZW5DbGlja2FibGVJZHMpO1xuZXhwb3J0IGNvbnN0IGJlZ2luU2VpblJpZ2h0Q2xpY2thYmxlSWRzUmVkdWNlciA9IGNyZWF0ZUlkc1JlZHVjZXIoTXN0QWN0aW9ucy5TZXRCZWdpblNlaW5SaWdodENsaWNrYWJsZUlkcyk7XG5cbmV4cG9ydCBjb25zdCBuaWV1d2VSb3V0ZVJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPE5pZXV3ZVJvdXRlIHwgdW5kZWZpbmVkPihcbiAgICB1bmRlZmluZWQsXG4gICAgb24oTXN0QWN0aW9ucy5TZXROaWV1d1JvdXRlQmVnaW5TZWluLCAoXywgeyBzdGFydFNlaW5PcFJpdGRlZWwgfSkgPT4gbmV3IE5pZXV3ZVJvdXRlKHN0YXJ0U2Vpbk9wUml0ZGVlbCwgdW5kZWZpbmVkKSksXG4gICAgb24oTXN0QWN0aW9ucy5TZXROaWV1d1JvdXRlRWluZFNlaW4sIChuaWV1d2VSb3V0ZSwgeyBjb21iaW5hdGllVm9vckVpbmRzZWluIH0pID0+IG5pZXV3ZVJvdXRlID8gbmV3IE5pZXV3ZVJvdXRlKG5pZXV3ZVJvdXRlLmJlZ2luU2Vpbk9wUml0ZGVlbCwgY29tYmluYXRpZVZvb3JFaW5kc2Vpbik6IHVuZGVmaW5lZCksXG4gICAgb24oTXN0QWN0aW9ucy5SZXNldE5pZXV3ZVJvdXRlLCAoKSA9PiB1bmRlZmluZWQpXG4pO1xuXG5leHBvcnQgY29uc3Qgc2lnbmFsZXJpbmdzYmVlbGRJbmZvRHRvc1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPFNpZ25hbGVyaW5nc2JlZWxkRHRvW10+KFxuICAgIFtdLFxuICAgIG9uKE1zdEFjdGlvbnMuU2V0U2lnbmFsZXJpbmdzYmVlbGRJbmZvRHRvcywgKF8sIHsgZHRvcyB9KSA9PiBkdG9zKSxcbiAgICBvbihNc3RBY3Rpb25zLlVwZGF0ZVNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b3MsIChfLCB7IGR0b3MgfSkgPT4gWy4uLmR0b3NdKVxuKTtcblxuZXhwb3J0IGNvbnN0IHZpc2libGVTYkluZm9EdG9zUmVkdWNlciA9IGNyZWF0ZVJlZHVjZXI8U2lnbmFsZXJpbmdzYmVlbGREdG9bXT4oXG4gICAgW10sXG4gICAgb24oTXN0QWN0aW9ucy5TZXRWaXNpYmxlU2lnbmFsZXJpbmdzYmVlbGRJbmZvRHRvcywgKF8sIHsgZHRvcyB9KSA9PiBkdG9zKSxcbiAgICBvbihNc3RBY3Rpb25zLlVwZGF0ZVZpc2libGVTaWduYWxlcmluZ3NiZWVsZEluZm9EdG9zLCAoXywgeyBkdG9zIH0pID0+IFsuLi5kdG9zXSlcbik7XG5cbmV4cG9ydCBjb25zdCBpYVZlcnNpZVJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPEluZnJhTW9kZWw+KHt2ZXJzaWU6ICd1bmtub3duJywgaW5nYW5nc0RhdHVtOiBuZXcgRGF0ZSgpfSBhcyBJbmZyYU1vZGVsLFxuICAgIG9uKE1zdEFjdGlvbnMuU2V0SWFWZXJzaWUsXG4gICAgICAgIChfLCB7IGlhVmVyc2llIH0pID0+IE9iamVjdC5hc3NpZ24oe30sIGlhVmVyc2llLCB7IHZlcnNpZTogaWFWZXJzaWUudmVyc2llLnRvVXBwZXJDYXNlKCkgfSkpKTtcbmV4cG9ydCBjb25zdCBhbGdlbWVuZVJpdEluZm9EdG9SZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxBbGdlbWVuZVJpdER0bz4oeyB9IGFzIEFsZ2VtZW5lUml0RHRvLCBvbihNc3RBY3Rpb25zLlNldEFsZ2VtZW5lUml0SW5mbywgKF8sIHsgYWxnZW1lbmVSaXRJbmZvRHRvIH0pID0+IGFsZ2VtZW5lUml0SW5mb0R0bykpO1xuZXhwb3J0IGNvbnN0IG9uZ2VwbGFuZGVBY3RpZXNCZXBhYWxkUmVkdWNlciA9IGNyZWF0ZVJlZHVjZXI8Ym9vbGVhbj4oZmFsc2UsIG9uKE1zdEFjdGlvbnMuU2V0T25nZXBsYW5kZUFjdGllc0JlcGFhbGQsIChfLCB7IGJlcGFhbGQgfSkgPT4gYmVwYWFsZCkpO1xuXG5leHBvcnQgY29uc3QgbmlldXdlQmV3ZWdpbmdSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxCZXdlZ2luZ1tdPihbXSwgb24oTXN0QWN0aW9ucy5VcGRhdGVSaXQsIChfLCB7IGJld2VnaW5nZW4gfSkgPT4gYmV3ZWdpbmdlbikpO1xuXG5leHBvcnQgY29uc3QgYmFzZVVybFJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPHN0cmluZz4oJycsIG9uKE1zdEFjdGlvbnMuU2V0QmFzZVVybCwgKF8sIHsgYmFzZVVybCB9KSA9PiBiYXNlVXJsKSk7XG5cbmV4cG9ydCBjb25zdCBmb2N1c0lkc1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPHN0cmluZ1tdPihbXSwgb24oTXN0QWN0aW9ucy5mb2N1c09wSWRzLCAoXywgeyBwdWljcyB9KSA9PiBwdWljcykpO1xuXG5cbmV4cG9ydCBjb25zdCBzdG9yZVJlZHVjZXJzID0ge1xuICAgIHJpdERlbGVuOiByaXRkZWxlblJlZHVjZXIsXG4gICAgcml0U2VsZWN0aWVJZHM6IHJpdFNlbGVjdGllSWRzUmVkdWNlcixcbiAgICBhY3RpZU9wUml0U2VsZWN0aWVJZHM6IGFjdGllT3BSaXRTZWxlY3RpZUlkc1JlZHVjZXIsXG4gICAgb25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHM6IG9uZ2VwbGFuZGVBY3RpZVNlbGVjdGllSWRzUmVkdWNlcixcbiAgICBvbmdlcGxhbmRlQWN0aWVzOiBvbmdlcGxhbmRlQWN0aWVSZWR1Y2VyLFxuICAgIGdlYnJva2VuUml0U2VsZWN0aWVJZHM6IGdlYnJva2VuUml0U2VsZWN0aWVJZHNSZWR1Y2VyLFxuICAgIGFsdGVybmF0aWV2ZW5TZWxlY3RpZUlkczogYWx0ZXJuYXRpZXZlblNlbGVjdGllSWRzUmVkdWNlcixcbiAgICBiZWdpblNlaW5TZWxlY3RpZUlkczogYmVnaW5TZWluU2VsZWN0aWVJZHNSZWR1Y2VyLFxuICAgIGVpbmRTZWluU2VsZWN0aWVJZHM6IGVpbmRTZWluU2VsZWN0aWVJZHNSZWR1Y2VyLFxuICAgIGFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHM6IGFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHNSZWR1Y2VyLFxuICAgIGVpbmRTZWluZW5DbGlja2FibGVJZHM6IGVpbmRTZWluZW5DbGlja2FibGVJZHNSZWR1Y2VyLFxuICAgIGNvbm5lY3RvckNsaWNrYWJsZUlkczogY29ubmVjdG9yQ2xpY2thYmxlSWRzUmVkdWNlcixcbiAgICBiZWdpblNlaW5SaWdodENsaWNrYWJsZUlkczogYmVnaW5TZWluUmlnaHRDbGlja2FibGVJZHNSZWR1Y2VyLFxuICAgIG5pZXV3ZVJvdXRlOiBuaWV1d2VSb3V0ZVJlZHVjZXIsXG4gICAgZ2VwbGFuZGVBY3RpZXM6IGFjdGllT3BSaXRSZWR1Y2VyLFxuICAgIHNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b3M6IHNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b3NSZWR1Y2VyLFxuICAgIHZpc2libGVTYkluZm9EdG9zOiB2aXNpYmxlU2JJbmZvRHRvc1JlZHVjZXIsXG4gICAgaWFWZXJzaWU6IGlhVmVyc2llUmVkdWNlcixcbiAgICBhbGdlbWVuZVJpdEluZm9EdG86IGFsZ2VtZW5lUml0SW5mb0R0b1JlZHVjZXIsXG4gICAgc3ZnSW5mb3M6IHN2Z0luZm9SZWR1Y2VyLFxuICAgIGRlYnVnOiBkZWJ1Z1JlZHVjZXIsXG4gICAgZWRpdGFibGU6IGVkaXRhYmxlUmVkdWNlcixcbiAgICBvbmdlcGxhbmRlQWN0aWVzQmVwYWFsZDogb25nZXBsYW5kZUFjdGllc0JlcGFhbGRSZWR1Y2VyLFxuICAgIHByb2dyZXNzU3RhdGU6IHByb2dyZXNzSW5kaWNhdG9yUmVkdWNlcixcbiAgICBuaWV1d2VCZXdlZ2luZ2VuOiBuaWV1d2VCZXdlZ2luZ1JlZHVjZXIsXG4gICAgYmFzZVVybDogYmFzZVVybFJlZHVjZXIsXG4gICAgZm9jdXNJZHM6IGZvY3VzSWRzUmVkdWNlcixcbiAgICBzZWxlY3RpZUluZm9zOiBzZWxlY3RpZUluZm9zUmVkdWNlclxufSBhcyBBY3Rpb25SZWR1Y2VyTWFwPE1zdEVkaXRvclN0YXRlPjtcbiJdfQ==
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXN0LWVkaXRvci1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21zdC12aWV3ZXIvc3JjL2xpYi9zdGF0ZS9tc3QtZWRpdG9yLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBa0MsYUFBYSxFQUFFLEVBQUUsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUUvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUN0RyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJcEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sS0FBSyxVQUFVLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBZ0Q5RCxNQUFNLGtCQUFrQixHQUFHLENBQUMsTUFBd0IsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQVcsRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNuRyxNQUFNLGdCQUFnQixHQUFHLENBQUMsTUFBd0IsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFXLEVBQUUsRUFBRSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBRS9HLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxhQUFhLENBQVUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7QUFFdkgsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsYUFBYSxDQUNqRCxFQUFvQixFQUNwQixFQUFFLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUUs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QyxPQUFPLEVBQUUsY0FBYztJQUN2QixRQUFRLEVBQUUsZUFBZTtDQUNRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTdmdJbmZvIH0gZnJvbSAnQGxveGlhL2lteC12aWV3ZXInO1xuaW1wb3J0IHtBY3Rpb25DcmVhdG9yLCBBY3Rpb25SZWR1Y2VyTWFwLCBjcmVhdGVSZWR1Y2VyLCBvbn0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHtBbGdlbWVuZVJpdER0bywgU2lnbmFsZXJpbmdzYmVlbGREdG99IGZyb20gJy4uLy4uL2dlbmVyYXRlZC9vcGVuYXBpJztcbmltcG9ydCB7IFByb2dyZXNzSW5kaWNhdG9yIH0gZnJvbSAnLi4vYXRvbWljLWNvbXBvbmVudHMvcHJvZ3Jlc3MtaW5kaWNhdG9yL3Byb2dyZXNzLWluZGljYXRvci5lbnRpdHknO1xuaW1wb3J0IHsgTmlldXdlUm91dGUgfSBmcm9tICcuLi9tb2RlbC9uaWV1d2Utcm91dGUnO1xuaW1wb3J0IHsgT25nZXBsYW5kZUFjdGllIH0gZnJvbSAnLi4vbW9kZWwvb25nZXBsYW5kZS1hY3RpZSc7XG5pbXBvcnQgeyBSaXRkZWVsIH0gZnJvbSAnLi4vbW9kZWwvcml0ZGVlbCc7XG5pbXBvcnQgeyBBY3RpZSwgQmV3ZWdpbmcsIEluZnJhTW9kZWwgfSBmcm9tICcuLi9vcHRpbW8nO1xuaW1wb3J0IHsgQXJyYXlNdWx0aW1hcCB9IGZyb20gJy4uL3V0aWwvbXVsdGktbWFwJztcbmltcG9ydCAqIGFzIE1zdEFjdGlvbnMgZnJvbSAnLi9hY3Rpb25zL2FjdGlvbnMnO1xuaW1wb3J0IHsgcml0ZGVsZW5SZWR1Y2VyIH0gZnJvbSAnLi9yZWR1Y2VyL3JpdC1kZWxlbi5yZWR1Y2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBNc3RFZGl0b3JTdGF0ZSB7XG4gICAgcml0RGVsZW46IFJpdGRlZWxbXTsgLy8gb25zIG1vZGVsIHZhbiB0cmVpbnBhZFxuXG4gICAgLy8gcHVpY3Mgdm9vciBTZWxlY3RpZUluZm9zXG4gICAgcml0U2VsZWN0aWVJZHM6IHN0cmluZ1tdO1xuICAgIGFjdGllT3BSaXRTZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgZ2Vicm9rZW5SaXRTZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgYWx0ZXJuYXRpZXZlblNlbGVjdGllSWRzOiBzdHJpbmdbXTtcbiAgICBiZWdpblNlaW5TZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgZWluZFNlaW5TZWxlY3RpZUlkczogc3RyaW5nW107XG4gICAgb25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHM6IHN0cmluZ1tdO1xuICAgIG9uZ2VwbGFuZGVBY3RpZXM6IEFycmF5TXVsdGltYXA8c3RyaW5nLCBPbmdlcGxhbmRlQWN0aWU+O1xuICAgIGdlcGxhbmRlQWN0aWVzOiBBcnJheU11bHRpbWFwPEFjdGllLCBzdHJpbmc+O1xuXG4gICAgLy8gcHVpY3Mgdm9vciBjbGlja3NcbiAgICBhbHRlcm5hdGlldmVuQ2xpY2thYmxlSWRzOiBzdHJpbmdbXTtcbiAgICBlaW5kU2VpbmVuQ2xpY2thYmxlSWRzOiBzdHJpbmdbXTtcbiAgICBjb25uZWN0b3JDbGlja2FibGVJZHM6IHN0cmluZ1tdO1xuXG4gICAgLy8gcHVpY3Mgdm9vciByaWdodGNsaWNrc1xuICAgIGJlZ2luU2VpblJpZ2h0Q2xpY2thYmxlSWRzOiBzdHJpbmdbXTtcblxuICAgIG5pZXV3ZVJvdXRlPzogTmlldXdlUm91dGU7XG5cbiAgICBzaWduYWxlcmluZ3NiZWVsZEluZm9EdG9zOiBTaWduYWxlcmluZ3NiZWVsZER0b1tdO1xuICAgIHZpc2libGVTYkluZm9EdG9zOiBTaWduYWxlcmluZ3NiZWVsZER0b1tdO1xuICAgIGFsZ2VtZW5lUml0SW5mb0R0bzogQWxnZW1lbmVSaXREdG87XG4gICAgaWFWZXJzaWU6IEluZnJhTW9kZWw7XG4gICAgc3ZnSW5mb3M6IFN2Z0luZm9bXTtcbiAgICBkZWJ1ZzogYm9vbGVhbjtcbiAgICBlZGl0YWJsZTogYm9vbGVhbjtcbiAgICBvbmdlcGxhbmRlQWN0aWVzQmVwYWFsZDogYm9vbGVhbjtcbiAgICBwcm9ncmVzc1N0YXRlOiBQcm9ncmVzc1N0YXRlO1xuICAgIG5pZXV3ZUJld2VnaW5nZW46IEJld2VnaW5nW107XG4gICAgYmFzZVVybDogc3RyaW5nO1xuICAgIGZvY3VzSWRzOiBzdHJpbmdbXTtcbn1cblxuaW50ZXJmYWNlIFByb2dyZXNzU3RhdGUge1xuICAgIHByb2dyZXNzSW5kaWNhdG9yPzogUHJvZ3Jlc3NJbmRpY2F0b3I7XG59XG5cbnR5cGUgSWRzQWN0aW9uQ3JlYXRvciA9IEFjdGlvbkNyZWF0b3I8XG4gICAgc3RyaW5nLFxuICAgIChpZHM6IHN0cmluZ1tdKSA9PiB7IGlkczogc3RyaW5nW10gfSAmIHsgdHlwZTogc3RyaW5nIH0+O1xuXG5jb25zdCBvbklkc0FjdGlvbkhhbmRsZXIgPSAoYWN0aW9uOiBJZHNBY3Rpb25DcmVhdG9yKSA9PiBvbihhY3Rpb24sIChfOiBzdHJpbmdbXSwgeyBpZHMgfSkgPT4gaWRzKTtcbmNvbnN0IGNyZWF0ZUlkc1JlZHVjZXIgPSAoYWN0aW9uOiBJZHNBY3Rpb25DcmVhdG9yKSA9PiBjcmVhdGVSZWR1Y2VyPHN0cmluZ1tdPihbXSwgb25JZHNBY3Rpb25IYW5kbGVyKGFjdGlvbikpO1xuXG5leHBvcnQgY29uc3QgZWRpdGFibGVSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxib29sZWFuPih0cnVlLCBvbihNc3RBY3Rpb25zLnNldEVkaXRhYmxlLCAoXywgeyBlZGl0YWJsZSB9KSA9PiBlZGl0YWJsZSkpO1xuXG5leHBvcnQgY29uc3QgcHJvZ3Jlc3NJbmRpY2F0b3JSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxQcm9ncmVzc1N0YXRlPihcbiAgICB7IH0gYXMgUHJvZ3Jlc3NTdGF0ZSxcbiAgICBvbihNc3RBY3Rpb25zLlNob3dQcm9ncmVzcywgKCkgPT4gKHsgcHJvZ3Jlc3NJbmRpY2F0b3I6IG5ldyBQcm9ncmVzc0luZGljYXRvcigpIH0gYXMgUHJvZ3Jlc3NTdGF0ZSkpLFxuICAgIG9uKE1zdEFjdGlvbnMuQ2xlYXJQcm9ncmVzcywgKCkgPT4gKHsgfSkpXG4pO1xuXG5leHBvcnQgY29uc3Qgc3ZnSW5mb1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPFN2Z0luZm9bXT4oW10sIG9uKE1zdEFjdGlvbnMuU2V0U3ZnSW5mb3MsIChfLCB7IHN2Z0luZm9zIH0pID0+IHN2Z0luZm9zKSk7XG5leHBvcnQgY29uc3QgZGVidWdSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxib29sZWFuPihmYWxzZSwgb24oTXN0QWN0aW9ucy5TZXREZWJ1ZywgKF8sIHsgZGVidWcgfSkgPT4gZGVidWcpKTtcbmV4cG9ydCBjb25zdCByaXRTZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0Uml0U2VsZWN0aWVJZHMpO1xuXG5leHBvcnQgY29uc3QgYWN0aWVPcFJpdFJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPEFycmF5TXVsdGltYXA8QWN0aWUsIHN0cmluZz4+KFxuICAgIG5ldyBBcnJheU11bHRpbWFwPEFjdGllLCBzdHJpbmc+KCksXG4gICAgb24oTXN0QWN0aW9ucy5TZXRHZXBsYW5kZUFjdGllcywgKF8sIHsgZ2VwbGFuZGVBY3RpZXNNYXAgfSkgPT4gZ2VwbGFuZGVBY3RpZXNNYXApLFxuICAgIG9uKE1zdEFjdGlvbnMuQWRkR2VwbGFuZGVBY3RpZSwgKGdlcGxhbmRlQWN0aWVzLCB7IGFjdGllLCBwdWljcyB9KSA9PiB7XG4gICAgICAgIGdlcGxhbmRlQWN0aWVzLnB1dEFsbChhY3RpZSwgcHVpY3MpO1xuICAgICAgICByZXR1cm4gbmV3IEFycmF5TXVsdGltYXAoZ2VwbGFuZGVBY3RpZXMpO1xuICAgIH0pLFxuICAgIG9uKE1zdEFjdGlvbnMuRGVsZXRlR2VwbGFuZGVBY3RpZSwgKGdlcGxhbmRlQWN0aWVzLCB7IGFjdGllIH0pID0+IHtcbiAgICAgICAgZ2VwbGFuZGVBY3RpZXMuZGVsZXRlKGFjdGllKTtcbiAgICAgICAgcmV0dXJuIG5ldyBBcnJheU11bHRpbWFwKGdlcGxhbmRlQWN0aWVzKTtcbiAgICB9KVxuKTtcblxuZXhwb3J0IGNvbnN0IGFjdGllT3BSaXRTZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPHN0cmluZ1tdPihcbiAgICBbXSxcbiAgICBvbklkc0FjdGlvbkhhbmRsZXIoTXN0QWN0aW9ucy5TZXRBY3RpZU9wUml0U2VsZWN0aWVJZHMpLFxuICAgIG9uKE1zdEFjdGlvbnMuQWRkR2VwbGFuZGVBY3RpZSwgKGlkczogc3RyaW5nW10sIHsgcHVpY3MgfSkgPT4ge1xuICAgICAgICBwdWljcy5maWx0ZXIocHVpYyA9PiAhaWRzLmluY2x1ZGVzKHB1aWMpKS5mb3JFYWNoKHB1aWMgPT4gaWRzLnB1c2gocHVpYykpO1xuICAgICAgICByZXR1cm4gWy4uLmlkc107XG4gICAgfSksXG4gICAgb24oTXN0QWN0aW9ucy5EZWxldGVHZXBsYW5kZUFjdGllLCAoaWRzOiBzdHJpbmdbXSwgeyBwdWljcyB9KSA9PiB7XG4gICAgICAgIHB1aWNzLmZpbHRlcihwdWljID0+IGlkcy5pbmNsdWRlcyhwdWljKSkuZm9yRWFjaChwdWljID0+IGlkcyA9IGlkcy5maWx0ZXIocCA9PiBwICE9PSBwdWljKSk7XG4gICAgICAgIHJldHVybiBbLi4uaWRzXTtcbiAgICB9KVxuKTtcblxuZXhwb3J0IGNvbnN0IG9uZ2VwbGFuZGVBY3RpZVJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPEFycmF5TXVsdGltYXA8c3RyaW5nLCBPbmdlcGxhbmRlQWN0aWU+PihcbiAgICBuZXcgQXJyYXlNdWx0aW1hcDxzdHJpbmcsIE9uZ2VwbGFuZGVBY3RpZT4oKSxcbiAgICBvbihNc3RBY3Rpb25zLlNldE9uZ2VwbGFuZGVBY3RpZXMsIChfLCB7IG9uZ2VwbGFuZGVBY3RpZXNNYXAgfSkgPT4gb25nZXBsYW5kZUFjdGllc01hcCksXG4gICAgb24oTXN0QWN0aW9ucy5BZGRPbmdlcGxhbmRlQWN0aWUsIChvbmdlcGxhbmRlQWN0aWVzLCB7IG9uZ2VwbGFuZGVBY3RpZSB9KSA9PiB7XG4gICAgICAgIG9uZ2VwbGFuZGVBY3RpZS5wdWljcy5maWx0ZXIocHVpYyA9PiAhb25nZXBsYW5kZUFjdGllcy5jb250YWluc0VudHJ5KHB1aWMsIG9uZ2VwbGFuZGVBY3RpZSkpXG4gICAgICAgICAgICAgICAgICAgICAgIC5mb3JFYWNoKHB1aWMgPT4gb25nZXBsYW5kZUFjdGllcy5wdXQocHVpYywgb25nZXBsYW5kZUFjdGllKSk7XG4gICAgICAgIHJldHVybiBuZXcgQXJyYXlNdWx0aW1hcChvbmdlcGxhbmRlQWN0aWVzKTtcbiAgICB9KSxcbiAgICBvbihNc3RBY3Rpb25zLkRlbGV0ZU9uZ2VwbGFuZGVBY3RpZSwgKG9uZ2VwbGFuZGVBY3RpZXMsIHsgb25nZXBsYW5kZUFjdGllIH0pID0+IHtcbiAgICAgICAgb25nZXBsYW5kZUFjdGllLnB1aWNzLmZvckVhY2gocHVpYyA9PiBvbmdlcGxhbmRlQWN0aWVzLmRlbGV0ZShwdWljLCBvbmdlcGxhbmRlQWN0aWUpKTtcbiAgICAgICAgcmV0dXJuIG5ldyBBcnJheU11bHRpbWFwKG9uZ2VwbGFuZGVBY3RpZXMpO1xuICAgIH0pXG4pO1xuXG5leHBvcnQgY29uc3Qgb25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHNSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxzdHJpbmdbXT4oXG4gICAgW10sXG4gICAgb25JZHNBY3Rpb25IYW5kbGVyKE1zdEFjdGlvbnMuU2V0T25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHMpLFxuICAgIG9uKE1zdEFjdGlvbnMuQWRkT25nZXBsYW5kZUFjdGllLCAoaWRzOiBzdHJpbmdbXSwgeyBvbmdlcGxhbmRlQWN0aWUgfSkgPT4ge1xuICAgICAgICBvbmdlcGxhbmRlQWN0aWUucHVpY3MuZmlsdGVyKHB1aWMgPT4gIWlkcy5pbmNsdWRlcyhwdWljKSkuZm9yRWFjaChwdWljID0+IGlkcy5wdXNoKHB1aWMpKTtcbiAgICAgICAgcmV0dXJuIFsuLi5pZHNdO1xuICAgIH0pLFxuICAgIG9uKE1zdEFjdGlvbnMuRGVsZXRlT25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZCwgKGlkczogc3RyaW5nW10sIHsgaWQgfSkgPT4gaWRzLmluY2x1ZGVzKGlkKSA/IGlkcy5maWx0ZXIoX2lkID0+IF9pZCAhPT0gaWQpIDogaWRzKVxuKTtcblxuZXhwb3J0IGNvbnN0IGdlYnJva2VuUml0U2VsZWN0aWVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEdlYnJva2VuUml0U2VsZWN0aWVJZHMpO1xuZXhwb3J0IGNvbnN0IGFsdGVybmF0aWV2ZW5TZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0QWx0ZXJuYXRpZXZlblNlbGVjdGllSWRzKTtcbmV4cG9ydCBjb25zdCBiZWdpblNlaW5TZWxlY3RpZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0QmVnaW5TZWluU2VsZWN0aWVJZHMpO1xuZXhwb3J0IGNvbnN0IGVpbmRTZWluU2VsZWN0aWVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEVpbmRTZWluU2VsZWN0aWVJZHMpO1xuZXhwb3J0IGNvbnN0IGFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHMpO1xuZXhwb3J0IGNvbnN0IGVpbmRTZWluZW5DbGlja2FibGVJZHNSZWR1Y2VyID0gY3JlYXRlSWRzUmVkdWNlcihNc3RBY3Rpb25zLlNldEVpbmRTZWluZW5DbGlja2FibGVJZHMpO1xuZXhwb3J0IGNvbnN0IGNvbm5lY3RvckNsaWNrYWJsZUlkc1JlZHVjZXIgPSBjcmVhdGVJZHNSZWR1Y2VyKE1zdEFjdGlvbnMuU2V0Q29ubmVjdG9yZW5DbGlja2FibGVJZHMpO1xuZXhwb3J0IGNvbnN0IGJlZ2luU2VpblJpZ2h0Q2xpY2thYmxlSWRzUmVkdWNlciA9IGNyZWF0ZUlkc1JlZHVjZXIoTXN0QWN0aW9ucy5TZXRCZWdpblNlaW5SaWdodENsaWNrYWJsZUlkcyk7XG5cbmV4cG9ydCBjb25zdCBuaWV1d2VSb3V0ZVJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPE5pZXV3ZVJvdXRlIHwgdW5kZWZpbmVkPihcbiAgICB1bmRlZmluZWQsXG4gICAgb24oTXN0QWN0aW9ucy5TZXROaWV1d1JvdXRlQmVnaW5TZWluLCAoXywgeyBzdGFydFNlaW5PcFJpdGRlZWwgfSkgPT4gbmV3IE5pZXV3ZVJvdXRlKHN0YXJ0U2Vpbk9wUml0ZGVlbCwgdW5kZWZpbmVkKSksXG4gICAgb24oTXN0QWN0aW9ucy5TZXROaWV1d1JvdXRlRWluZFNlaW4sIChuaWV1d2VSb3V0ZSwgeyBjb21iaW5hdGllVm9vckVpbmRzZWluIH0pID0+IG5pZXV3ZVJvdXRlID8gbmV3IE5pZXV3ZVJvdXRlKG5pZXV3ZVJvdXRlLmJlZ2luU2Vpbk9wUml0ZGVlbCwgY29tYmluYXRpZVZvb3JFaW5kc2Vpbik6IHVuZGVmaW5lZCksXG4gICAgb24oTXN0QWN0aW9ucy5SZXNldE5pZXV3ZVJvdXRlLCAoKSA9PiB1bmRlZmluZWQpXG4pO1xuXG5leHBvcnQgY29uc3Qgc2lnbmFsZXJpbmdzYmVlbGRJbmZvRHRvc1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPFNpZ25hbGVyaW5nc2JlZWxkRHRvW10+KFxuICAgIFtdLFxuICAgIG9uKE1zdEFjdGlvbnMuU2V0U2lnbmFsZXJpbmdzYmVlbGRJbmZvRHRvcywgKF8sIHsgZHRvcyB9KSA9PiBkdG9zKSxcbiAgICBvbihNc3RBY3Rpb25zLlVwZGF0ZVNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b3MsIChfLCB7IGR0b3MgfSkgPT4gWy4uLmR0b3NdKVxuKTtcblxuZXhwb3J0IGNvbnN0IHZpc2libGVTYkluZm9EdG9zUmVkdWNlciA9IGNyZWF0ZVJlZHVjZXI8U2lnbmFsZXJpbmdzYmVlbGREdG9bXT4oXG4gICAgW10sXG4gICAgb24oTXN0QWN0aW9ucy5TZXRWaXNpYmxlU2lnbmFsZXJpbmdzYmVlbGRJbmZvRHRvcywgKF8sIHsgZHRvcyB9KSA9PiBkdG9zKSxcbiAgICBvbihNc3RBY3Rpb25zLlVwZGF0ZVZpc2libGVTaWduYWxlcmluZ3NiZWVsZEluZm9EdG9zLCAoXywgeyBkdG9zIH0pID0+IFsuLi5kdG9zXSlcbik7XG5cbmV4cG9ydCBjb25zdCBpYVZlcnNpZVJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPEluZnJhTW9kZWw+KHt2ZXJzaWU6ICd1bmtub3duJywgaW5nYW5nc0RhdHVtOiBuZXcgRGF0ZSgpfSBhcyBJbmZyYU1vZGVsLFxuICAgIG9uKE1zdEFjdGlvbnMuU2V0SWFWZXJzaWUsXG4gICAgICAgIChfLCB7IGlhVmVyc2llIH0pID0+IE9iamVjdC5hc3NpZ24oe30sIGlhVmVyc2llLCB7IHZlcnNpZTogaWFWZXJzaWUudmVyc2llLnRvVXBwZXJDYXNlKCkgfSkpKTtcbmV4cG9ydCBjb25zdCBhbGdlbWVuZVJpdEluZm9EdG9SZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxBbGdlbWVuZVJpdER0bz4oeyB9IGFzIEFsZ2VtZW5lUml0RHRvLCBvbihNc3RBY3Rpb25zLlNldEFsZ2VtZW5lUml0SW5mbywgKF8sIHsgYWxnZW1lbmVSaXRJbmZvRHRvIH0pID0+IGFsZ2VtZW5lUml0SW5mb0R0bykpO1xuZXhwb3J0IGNvbnN0IG9uZ2VwbGFuZGVBY3RpZXNCZXBhYWxkUmVkdWNlciA9IGNyZWF0ZVJlZHVjZXI8Ym9vbGVhbj4oZmFsc2UsIG9uKE1zdEFjdGlvbnMuU2V0T25nZXBsYW5kZUFjdGllc0JlcGFhbGQsIChfLCB7IGJlcGFhbGQgfSkgPT4gYmVwYWFsZCkpO1xuXG5leHBvcnQgY29uc3QgbmlldXdlQmV3ZWdpbmdSZWR1Y2VyID0gY3JlYXRlUmVkdWNlcjxCZXdlZ2luZ1tdPihbXSwgb24oTXN0QWN0aW9ucy5VcGRhdGVSaXQsIChfLCB7IGJld2VnaW5nZW4gfSkgPT4gYmV3ZWdpbmdlbikpO1xuXG5leHBvcnQgY29uc3QgYmFzZVVybFJlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPHN0cmluZz4oJycsIG9uKE1zdEFjdGlvbnMuU2V0QmFzZVVybCwgKF8sIHsgYmFzZVVybCB9KSA9PiBiYXNlVXJsKSk7XG5cbmV4cG9ydCBjb25zdCBmb2N1c0lkc1JlZHVjZXIgPSBjcmVhdGVSZWR1Y2VyPHN0cmluZ1tdPihbXSwgb24oTXN0QWN0aW9ucy5mb2N1c09wSWRzLCAoXywgeyBwdWljcyB9KSA9PiBwdWljcykpO1xuXG5cbmV4cG9ydCBjb25zdCBzdG9yZVJlZHVjZXJzID0ge1xuICAgIHJpdERlbGVuOiByaXRkZWxlblJlZHVjZXIsXG4gICAgcml0U2VsZWN0aWVJZHM6IHJpdFNlbGVjdGllSWRzUmVkdWNlcixcbiAgICBhY3RpZU9wUml0U2VsZWN0aWVJZHM6IGFjdGllT3BSaXRTZWxlY3RpZUlkc1JlZHVjZXIsXG4gICAgb25nZXBsYW5kZUFjdGllU2VsZWN0aWVJZHM6IG9uZ2VwbGFuZGVBY3RpZVNlbGVjdGllSWRzUmVkdWNlcixcbiAgICBvbmdlcGxhbmRlQWN0aWVzOiBvbmdlcGxhbmRlQWN0aWVSZWR1Y2VyLFxuICAgIGdlYnJva2VuUml0U2VsZWN0aWVJZHM6IGdlYnJva2VuUml0U2VsZWN0aWVJZHNSZWR1Y2VyLFxuICAgIGFsdGVybmF0aWV2ZW5TZWxlY3RpZUlkczogYWx0ZXJuYXRpZXZlblNlbGVjdGllSWRzUmVkdWNlcixcbiAgICBiZWdpblNlaW5TZWxlY3RpZUlkczogYmVnaW5TZWluU2VsZWN0aWVJZHNSZWR1Y2VyLFxuICAgIGVpbmRTZWluU2VsZWN0aWVJZHM6IGVpbmRTZWluU2VsZWN0aWVJZHNSZWR1Y2VyLFxuICAgIGFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHM6IGFsdGVybmF0aWV2ZW5DbGlja2FibGVJZHNSZWR1Y2VyLFxuICAgIGVpbmRTZWluZW5DbGlja2FibGVJZHM6IGVpbmRTZWluZW5DbGlja2FibGVJZHNSZWR1Y2VyLFxuICAgIGNvbm5lY3RvckNsaWNrYWJsZUlkczogY29ubmVjdG9yQ2xpY2thYmxlSWRzUmVkdWNlcixcbiAgICBiZWdpblNlaW5SaWdodENsaWNrYWJsZUlkczogYmVnaW5TZWluUmlnaHRDbGlja2FibGVJZHNSZWR1Y2VyLFxuICAgIG5pZXV3ZVJvdXRlOiBuaWV1d2VSb3V0ZVJlZHVjZXIsXG4gICAgZ2VwbGFuZGVBY3RpZXM6IGFjdGllT3BSaXRSZWR1Y2VyLFxuICAgIHNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b3M6IHNpZ25hbGVyaW5nc2JlZWxkSW5mb0R0b3NSZWR1Y2VyLFxuICAgIHZpc2libGVTYkluZm9EdG9zOiB2aXNpYmxlU2JJbmZvRHRvc1JlZHVjZXIsXG4gICAgaWFWZXJzaWU6IGlhVmVyc2llUmVkdWNlcixcbiAgICBhbGdlbWVuZVJpdEluZm9EdG86IGFsZ2VtZW5lUml0SW5mb0R0b1JlZHVjZXIsXG4gICAgc3ZnSW5mb3M6IHN2Z0luZm9SZWR1Y2VyLFxuICAgIGRlYnVnOiBkZWJ1Z1JlZHVjZXIsXG4gICAgZWRpdGFibGU6IGVkaXRhYmxlUmVkdWNlcixcbiAgICBvbmdlcGxhbmRlQWN0aWVzQmVwYWFsZDogb25nZXBsYW5kZUFjdGllc0JlcGFhbGRSZWR1Y2VyLFxuICAgIHByb2dyZXNzU3RhdGU6IHByb2dyZXNzSW5kaWNhdG9yUmVkdWNlcixcbiAgICBuaWV1d2VCZXdlZ2luZ2VuOiBuaWV1d2VCZXdlZ2luZ1JlZHVjZXIsXG4gICAgYmFzZVVybDogYmFzZVVybFJlZHVjZXIsXG4gICAgZm9jdXNJZHM6IGZvY3VzSWRzUmVkdWNlcixcbn0gYXMgQWN0aW9uUmVkdWNlck1hcDxNc3RFZGl0b3JTdGF0ZT47XG4iXX0=