@igo2/geo 1.15.4 → 1.15.6
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.
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-group.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-browser/catalog-browser-layer.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-browser/catalog-browser.module.mjs +1 -1
- package/esm2020/lib/catalog/catalog-library/add-catalog-dialog.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-library/catalog-library-item.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-library/catalog-library.component.mjs +2 -2
- package/esm2020/lib/catalog/catalog-library/catalog-library.module.mjs +1 -1
- package/esm2020/lib/catalog/catalog.module.mjs +1 -1
- package/esm2020/lib/catalog/index.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.abstract.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.enum.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.interface.mjs +1 -1
- package/esm2020/lib/catalog/shared/catalog.service.mjs +1 -1
- package/esm2020/lib/datasource/datasource.module.mjs +1 -1
- package/esm2020/lib/datasource/shared/capabilities.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasource.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/any-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/any-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/carto-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/carto-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/cluster-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/cluster-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/data.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/feature-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/feature-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/mvt-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/mvt-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/osm-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/osm-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/tiledebug-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/websocket-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/websocket-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wfs-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wfs-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wfs.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wms-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wms-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wms-wfs.utils.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wmts-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/wmts-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/xyz-datasource.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/datasources/xyz-datasource.mjs +1 -1
- package/esm2020/lib/datasource/shared/index.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/index.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options-api.interface.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options-api.providers.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options-api.service.mjs +1 -1
- package/esm2020/lib/datasource/shared/options/options.service.mjs +1 -1
- package/esm2020/lib/datasource/utils/index.mjs +1 -1
- package/esm2020/lib/datasource/utils/tilegrid.mjs +1 -1
- package/esm2020/lib/directions/directions-buttons/directions-buttons.component.mjs +2 -2
- package/esm2020/lib/directions/directions-inputs/directions-inputs.component.mjs +2 -2
- package/esm2020/lib/directions/directions-results/directions-results.component.mjs +2 -2
- package/esm2020/lib/directions/directions-sources/directions-source.interface.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/directions-source.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/directions-source.provider.mjs +1 -1
- package/esm2020/lib/directions/directions-sources/osrm-directions-source.mjs +1 -1
- package/esm2020/lib/directions/directions.component.mjs +2 -2
- package/esm2020/lib/directions/directions.module.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.interface.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.service.mjs +1 -1
- package/esm2020/lib/directions/shared/directions.utils.mjs +1 -1
- package/esm2020/lib/directions/shared/store.mjs +1 -1
- package/esm2020/lib/download/download-button/download-button.component.mjs +2 -2
- package/esm2020/lib/download/download.module.mjs +1 -1
- package/esm2020/lib/download/shared/download.service.mjs +1 -1
- package/esm2020/lib/draw/draw/draw-layer-popup.component.mjs +2 -2
- package/esm2020/lib/draw/draw/draw-popup.component.mjs +2 -2
- package/esm2020/lib/draw/draw/draw-shorcuts.component.mjs +2 -2
- package/esm2020/lib/draw/draw/draw.component.mjs +2 -2
- package/esm2020/lib/draw/draw/draw.module.mjs +1 -1
- package/esm2020/lib/draw/drawingTool.module.mjs +1 -1
- package/esm2020/lib/draw/shared/draw-icon.service.mjs +1 -1
- package/esm2020/lib/draw/shared/draw.enum.mjs +1 -1
- package/esm2020/lib/draw/shared/draw.interface.mjs +1 -1
- package/esm2020/lib/draw/shared/draw.utils.mjs +1 -1
- package/esm2020/lib/draw/shared/index.mjs +1 -1
- package/esm2020/lib/feature/feature-details/feature-details.component.mjs +2 -2
- package/esm2020/lib/feature/feature-details/feature-details.directive.mjs +1 -1
- package/esm2020/lib/feature/feature-details/feature-details.module.mjs +1 -1
- package/esm2020/lib/feature/feature-form/feature-form.component.mjs +2 -2
- package/esm2020/lib/feature/feature-form/feature-form.module.mjs +1 -1
- package/esm2020/lib/feature/feature.module.mjs +1 -1
- package/esm2020/lib/feature/index.mjs +1 -1
- package/esm2020/lib/feature/shared/feature.interfaces.mjs +1 -1
- package/esm2020/lib/feature/shared/feature.utils.mjs +1 -1
- package/esm2020/lib/feature/shared/index.mjs +1 -1
- package/esm2020/lib/feature/shared/store.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/in-map-extent.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/in-map-resolution.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/index.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/loading-layer.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/loading.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/search.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies/selection.mjs +1 -1
- package/esm2020/lib/feature/shared/strategies.utils.mjs +1 -1
- package/esm2020/lib/filter/filter.module.mjs +1 -1
- package/esm2020/lib/filter/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-button/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-button/ogc-filter-button.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-form/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-form/ogc-filter-form.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-selection/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-selection/ogc-filter-selection.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-time/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time-slider.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filter-time/ogc-filter-time.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filterable-form/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-form/ogc-filterable-form.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filterable-item/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-item/ogc-filterable-item.component.mjs +2 -2
- package/esm2020/lib/filter/ogc-filterable-list/index.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list-binding.directive.mjs +1 -1
- package/esm2020/lib/filter/ogc-filterable-list/ogc-filterable-list.component.mjs +2 -2
- package/esm2020/lib/filter/shared/filterable-datasource.pipe.mjs +1 -1
- package/esm2020/lib/filter/shared/index.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter-time.service.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.enum.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.mjs +1 -1
- package/esm2020/lib/filter/shared/ogc-filter.service.mjs +1 -1
- package/esm2020/lib/filter/shared/spatial-filter.enum.mjs +1 -1
- package/esm2020/lib/filter/shared/spatial-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/spatial-filter.service.mjs +1 -1
- package/esm2020/lib/filter/shared/time-filter.enum.mjs +1 -1
- package/esm2020/lib/filter/shared/time-filter.interface.mjs +1 -1
- package/esm2020/lib/filter/shared/time-filter.service.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-item/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-item/spatial-filter-item.component.mjs +2 -2
- package/esm2020/lib/filter/spatial-filter/spatial-filter-list/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-list/spatial-filter-list.component.mjs +2 -2
- package/esm2020/lib/filter/spatial-filter/spatial-filter-type/index.mjs +1 -1
- package/esm2020/lib/filter/spatial-filter/spatial-filter-type/spatial-filter-type.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-button/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-button/time-filter-button.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-form/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-form/time-filter-form.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-item/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-item/time-filter-item.component.mjs +2 -2
- package/esm2020/lib/filter/time-filter-list/index.mjs +1 -1
- package/esm2020/lib/filter/time-filter-list/time-filter-list-binding.directive.mjs +1 -1
- package/esm2020/lib/filter/time-filter-list/time-filter-list.component.mjs +2 -2
- package/esm2020/lib/geo.module.mjs +1 -1
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field-input.component.mjs +1 -1
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.component.mjs +2 -2
- package/esm2020/lib/geometry/geometry-form-field/geometry-form-field.module.mjs +1 -1
- package/esm2020/lib/geometry/geometry.module.mjs +1 -1
- package/esm2020/lib/geometry/index.mjs +1 -1
- package/esm2020/lib/geometry/shared/controls/draw.mjs +1 -1
- package/esm2020/lib/geometry/shared/controls/modify.mjs +1 -1
- package/esm2020/lib/geometry/shared/controls/slice.mjs +1 -1
- package/esm2020/lib/geometry/shared/geometry.errors.mjs +1 -1
- package/esm2020/lib/geometry/shared/geometry.interfaces.mjs +1 -1
- package/esm2020/lib/geometry/shared/geometry.utils.mjs +1 -1
- package/esm2020/lib/import-export/export-button/export-button.component.mjs +2 -2
- package/esm2020/lib/import-export/import-export/import-export.component.mjs +8 -8
- package/esm2020/lib/import-export/import-export.module.mjs +1 -1
- package/esm2020/lib/import-export/index.mjs +1 -1
- package/esm2020/lib/import-export/shared/drop-geo-file.directive.mjs +7 -7
- package/esm2020/lib/import-export/shared/export.interface.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.service.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.type.mjs +1 -1
- package/esm2020/lib/import-export/shared/export.utils.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.errors.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.interface.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.service.mjs +1 -1
- package/esm2020/lib/import-export/shared/import.utils.mjs +1 -1
- package/esm2020/lib/layer/index.mjs +1 -1
- package/esm2020/lib/layer/layer-item/index.mjs +1 -1
- package/esm2020/lib/layer/layer-item/layer-item.component.mjs +2 -2
- package/esm2020/lib/layer/layer-legend/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend/layer-legend.component.mjs +2 -2
- package/esm2020/lib/layer/layer-legend-item/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend-item/layer-legend-item.component.mjs +2 -2
- package/esm2020/lib/layer/layer-legend-list/index.mjs +1 -1
- package/esm2020/lib/layer/layer-legend-list/layer-legend-list-binding.directive.mjs +1 -1
- package/esm2020/lib/layer/layer-legend-list/layer-legend-list.component.mjs +2 -2
- package/esm2020/lib/layer/layer-list/index.mjs +1 -1
- package/esm2020/lib/layer/layer-list/layer-list-binding.directive.mjs +1 -1
- package/esm2020/lib/layer/layer-list/layer-list.component.mjs +2 -2
- package/esm2020/lib/layer/layer-list/layer-list.enum.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/index.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.component.mjs +2 -2
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.enum.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.interface.mjs +1 -1
- package/esm2020/lib/layer/layer-list-tool/layer-list-tool.service.mjs +1 -1
- package/esm2020/lib/layer/layer.module.mjs +1 -1
- package/esm2020/lib/layer/shared/clusterParam.mjs +1 -1
- package/esm2020/lib/layer/shared/index.mjs +1 -1
- package/esm2020/lib/layer/shared/layer.enums.mjs +1 -1
- package/esm2020/lib/layer/shared/layer.service.mjs +6 -6
- package/esm2020/lib/layer/shared/layers/any-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/any-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/image-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/image-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/tile-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/tile-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vector-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vector-layer.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vectortile-layer.interface.mjs +1 -1
- package/esm2020/lib/layer/shared/layers/vectortile-layer.mjs +1 -1
- package/esm2020/lib/layer/track-feature-button/index.mjs +1 -1
- package/esm2020/lib/layer/track-feature-button/track-feature-button.component.mjs +2 -2
- package/esm2020/lib/layer/utils/image-watcher.mjs +1 -1
- package/esm2020/lib/layer/utils/index.mjs +1 -1
- package/esm2020/lib/layer/utils/layer.utils.mjs +1 -1
- package/esm2020/lib/layer/utils/outputLegend.mjs +1 -1
- package/esm2020/lib/layer/utils/tile-watcher.mjs +1 -1
- package/esm2020/lib/layer/utils/vector-watcher.mjs +1 -1
- package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.animation.mjs +1 -1
- package/esm2020/lib/map/baselayers-switcher/baselayers-switcher.component.mjs +2 -2
- package/esm2020/lib/map/baselayers-switcher/index.mjs +1 -1
- package/esm2020/lib/map/baselayers-switcher/mini-basemap.component.mjs +11 -12
- package/esm2020/lib/map/geolocate-button/geolocate-button.component.mjs +2 -2
- package/esm2020/lib/map/geolocate-button/index.mjs +1 -1
- package/esm2020/lib/map/index.mjs +1 -1
- package/esm2020/lib/map/info-section/index.mjs +1 -1
- package/esm2020/lib/map/info-section/info-section.component.mjs +2 -2
- package/esm2020/lib/map/map-browser/index.mjs +1 -1
- package/esm2020/lib/map/map-browser/map-browser.component.mjs +2 -2
- package/esm2020/lib/map/map-center/index.mjs +1 -1
- package/esm2020/lib/map/map-center/map-center.component.mjs +2 -2
- package/esm2020/lib/map/map.module.mjs +1 -1
- package/esm2020/lib/map/menu-button/index.mjs +1 -1
- package/esm2020/lib/map/menu-button/menu-button.component.mjs +2 -2
- package/esm2020/lib/map/offline-button/index.mjs +1 -1
- package/esm2020/lib/map/offline-button/offline-button.component.mjs +2 -2
- package/esm2020/lib/map/rotation-button/index.mjs +1 -1
- package/esm2020/lib/map/rotation-button/rotation-button.component.mjs +2 -2
- package/esm2020/lib/map/shared/controllers/controller.mjs +1 -1
- package/esm2020/lib/map/shared/controllers/geolocation.mjs +1 -1
- package/esm2020/lib/map/shared/controllers/index.mjs +1 -1
- package/esm2020/lib/map/shared/controllers/view.mjs +1 -1
- package/esm2020/lib/map/shared/hover-feature.directive.mjs +1 -1
- package/esm2020/lib/map/shared/index.mjs +1 -1
- package/esm2020/lib/map/shared/linkedLayers.utils.mjs +3 -3
- package/esm2020/lib/map/shared/map-pointer-position.directive.mjs +1 -1
- package/esm2020/lib/map/shared/map.enums.mjs +1 -1
- package/esm2020/lib/map/shared/map.interface.mjs +1 -1
- package/esm2020/lib/map/shared/map.mjs +1 -1
- package/esm2020/lib/map/shared/map.service.mjs +1 -1
- package/esm2020/lib/map/shared/map.utils.mjs +1 -1
- package/esm2020/lib/map/shared/mapOffline.directive.mjs +1 -1
- package/esm2020/lib/map/shared/projection.interfaces.mjs +1 -1
- package/esm2020/lib/map/shared/projection.service.mjs +1 -1
- package/esm2020/lib/map/shared/projection.utils.mjs +1 -1
- package/esm2020/lib/map/swipe-control/index.mjs +1 -1
- package/esm2020/lib/map/swipe-control/swipe-control.component.mjs +2 -2
- package/esm2020/lib/map/utils/layer-watcher.mjs +1 -1
- package/esm2020/lib/map/wake-lock-button/index.mjs +1 -1
- package/esm2020/lib/map/wake-lock-button/wake-lock-button.component.mjs +2 -2
- package/esm2020/lib/map/zoom-button/index.mjs +1 -1
- package/esm2020/lib/map/zoom-button/zoom-button.component.mjs +2 -2
- package/esm2020/lib/measure/index.mjs +1 -1
- package/esm2020/lib/measure/measure.module.mjs +1 -1
- package/esm2020/lib/measure/measurer/measure-format.pipe.mjs +1 -1
- package/esm2020/lib/measure/measurer/measurer-dialog.component.mjs +2 -2
- package/esm2020/lib/measure/measurer/measurer-item.component.mjs +2 -2
- package/esm2020/lib/measure/measurer/measurer.component.mjs +2 -2
- package/esm2020/lib/measure/measurer/measurer.module.mjs +1 -1
- package/esm2020/lib/measure/shared/measure.enum.mjs +1 -1
- package/esm2020/lib/measure/shared/measure.interfaces.mjs +1 -1
- package/esm2020/lib/measure/shared/measure.utils.mjs +1 -1
- package/esm2020/lib/metadata/index.mjs +1 -1
- package/esm2020/lib/metadata/metadata-button/metadata-button.component.mjs +2 -2
- package/esm2020/lib/metadata/metadata.module.mjs +1 -1
- package/esm2020/lib/metadata/shared/metadata.interface.mjs +1 -1
- package/esm2020/lib/offline/geoDB/configFileToGeoDB.service.mjs +1 -1
- package/esm2020/lib/offline/geoDB/geoDB.enums.mjs +1 -1
- package/esm2020/lib/offline/geoDB/geoDB.interface.mjs +1 -1
- package/esm2020/lib/offline/geoDB/geoDB.service.mjs +1 -1
- package/esm2020/lib/offline/index.mjs +1 -1
- package/esm2020/lib/offline/layerDB/index.mjs +1 -1
- package/esm2020/lib/offline/layerDB/layerDB.interface.mjs +1 -1
- package/esm2020/lib/offline/layerDB/layerDB.service.mjs +1 -1
- package/esm2020/lib/offline/shared/geo-network.service.mjs +1 -1
- package/esm2020/lib/overlay/overlay.module.mjs +1 -1
- package/esm2020/lib/overlay/shared/index.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.directive.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.enum.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.service.mjs +1 -1
- package/esm2020/lib/overlay/shared/overlay.utils.mjs +1 -1
- package/esm2020/lib/print/print/print.component.mjs +2 -2
- package/esm2020/lib/print/print-form/print-form.component.mjs +2 -2
- package/esm2020/lib/print/print.module.mjs +1 -1
- package/esm2020/lib/print/shared/geopdf.mjs +1 -1
- package/esm2020/lib/print/shared/print.interface.mjs +1 -1
- package/esm2020/lib/print/shared/print.service.mjs +1 -1
- package/esm2020/lib/print/shared/print.type.mjs +1 -1
- package/esm2020/lib/query/query.module.mjs +1 -1
- package/esm2020/lib/query/shared/query-search-source.mjs +1 -1
- package/esm2020/lib/query/shared/query-search-source.providers.mjs +1 -1
- package/esm2020/lib/query/shared/query.directive.mjs +1 -1
- package/esm2020/lib/query/shared/query.interfaces.mjs +1 -1
- package/esm2020/lib/query/shared/query.service.mjs +1 -1
- package/esm2020/lib/query/shared/query.utils.mjs +1 -1
- package/esm2020/lib/search/index.mjs +1 -1
- package/esm2020/lib/search/search-bar/search-bar.component.mjs +2 -2
- package/esm2020/lib/search/search-bar/search-bar.module.mjs +1 -1
- package/esm2020/lib/search/search-bar/search-url-param.directive.mjs +1 -1
- package/esm2020/lib/search/search-results/save-feature-dialog.component.mjs +2 -2
- package/esm2020/lib/search/search-results/search-results-add-button.component.mjs +2 -2
- package/esm2020/lib/search/search-results/search-results-item.component.mjs +2 -2
- package/esm2020/lib/search/search-results/search-results.component.mjs +2 -2
- package/esm2020/lib/search/search-results/search-results.module.mjs +1 -1
- package/esm2020/lib/search/search-selector/search-selector.component.mjs +2 -2
- package/esm2020/lib/search/search-selector/search-selector.module.mjs +1 -1
- package/esm2020/lib/search/search-settings/search-settings.component.mjs +2 -2
- package/esm2020/lib/search/search-settings/search-settings.module.mjs +1 -1
- package/esm2020/lib/search/search.module.mjs +1 -1
- package/esm2020/lib/search/shared/search-pointer-summary.directive.mjs +1 -1
- package/esm2020/lib/search/shared/search-source-service.providers.mjs +1 -1
- package/esm2020/lib/search/shared/search-source.service.mjs +1 -1
- package/esm2020/lib/search/shared/search.enums.mjs +1 -1
- package/esm2020/lib/search/shared/search.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/search.service.mjs +1 -1
- package/esm2020/lib/search/shared/search.utils.mjs +1 -1
- package/esm2020/lib/search/shared/sources/cadastre.mjs +1 -1
- package/esm2020/lib/search/shared/sources/cadastre.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/coordinates.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/coordinates.mjs +1 -1
- package/esm2020/lib/search/shared/sources/coordinates.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/icherche.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/icherche.mjs +1 -1
- package/esm2020/lib/search/shared/sources/icherche.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/ilayer.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/ilayer.mjs +1 -1
- package/esm2020/lib/search/shared/sources/ilayer.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/index.mjs +1 -1
- package/esm2020/lib/search/shared/sources/nominatim.mjs +2 -2
- package/esm2020/lib/search/shared/sources/nominatim.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/source.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/source.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.mjs +1 -1
- package/esm2020/lib/search/shared/sources/storedqueries.providers.mjs +1 -1
- package/esm2020/lib/search/shared/sources/workspace.interfaces.mjs +1 -1
- package/esm2020/lib/search/shared/sources/workspace.mjs +1 -1
- package/esm2020/lib/search/shared/sources/workspace.providers.mjs +1 -1
- package/esm2020/lib/style/index.mjs +1 -1
- package/esm2020/lib/style/shared/datasource/esri-style-generator.mjs +1 -1
- package/esm2020/lib/style/shared/datasource/index.mjs +1 -1
- package/esm2020/lib/style/shared/feature/feature-style.mjs +1 -1
- package/esm2020/lib/style/shared/feature/index.mjs +1 -1
- package/esm2020/lib/style/shared/font.enum.mjs +1 -1
- package/esm2020/lib/style/shared/index.mjs +1 -1
- package/esm2020/lib/style/shared/overlay/index.mjs +1 -1
- package/esm2020/lib/style/shared/overlay/overlay-marker-style.utils.mjs +1 -1
- package/esm2020/lib/style/shared/overlay/overlay-style.utils.mjs +1 -1
- package/esm2020/lib/style/shared/vector/commonVectorStyle.mjs +1 -1
- package/esm2020/lib/style/shared/vector/conversion.utils.mjs +1 -1
- package/esm2020/lib/style/shared/vector/index.mjs +1 -1
- package/esm2020/lib/style/shared/vector/vector-style.interface.mjs +1 -1
- package/esm2020/lib/style/style-list/index.mjs +1 -1
- package/esm2020/lib/style/style-list/style-list.interface.mjs +1 -1
- package/esm2020/lib/style/style-list/style-list.module.mjs +1 -1
- package/esm2020/lib/style/style-list/style-list.provider.mjs +1 -1
- package/esm2020/lib/style/style-list/style-list.service.mjs +1 -1
- package/esm2020/lib/style/style-modal/drawing/index.mjs +1 -1
- package/esm2020/lib/style/style-modal/drawing/style-modal-drawing.component.mjs +2 -2
- package/esm2020/lib/style/style-modal/index.mjs +1 -1
- package/esm2020/lib/style/style-modal/layer/index.mjs +1 -1
- package/esm2020/lib/style/style-modal/layer/style-modal-layer.component.mjs +2 -2
- package/esm2020/lib/style/style-modal/layer-button/index.mjs +1 -1
- package/esm2020/lib/style/style-modal/layer-button/style-modal-layer-button.component.mjs +2 -2
- package/esm2020/lib/style/style-modal/shared/index.mjs +1 -1
- package/esm2020/lib/style/style-modal/shared/style-modal.interface.mjs +1 -1
- package/esm2020/lib/style/style-service/draw-style.service.mjs +1 -1
- package/esm2020/lib/style/style-service/index.mjs +1 -1
- package/esm2020/lib/style/style-service/style.service.mjs +1 -1
- package/esm2020/lib/style/style.module.mjs +1 -1
- package/esm2020/lib/toast/toast.component.mjs +2 -2
- package/esm2020/lib/toast/toast.module.mjs +1 -1
- package/esm2020/lib/utils/googleLinks.mjs +1 -1
- package/esm2020/lib/utils/id-generator.mjs +1 -1
- package/esm2020/lib/utils/index.mjs +1 -1
- package/esm2020/lib/utils/osmLinks.mjs +1 -1
- package/esm2020/lib/wkt/shared/wkt.service.mjs +15 -15
- package/esm2020/lib/wkt/wkt.module.mjs +1 -1
- package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.component.mjs +2 -2
- package/esm2020/lib/workspace/confirmation-popup/confirmation-popup.module.mjs +1 -1
- package/esm2020/lib/workspace/confirmation-popup/index.mjs +1 -1
- package/esm2020/lib/workspace/shared/edition-workspace.mjs +1 -1
- package/esm2020/lib/workspace/shared/edition-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/feature-workspace.mjs +1 -1
- package/esm2020/lib/workspace/shared/feature-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/wfs-workspace.mjs +1 -1
- package/esm2020/lib/workspace/shared/wfs-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/wms-workspace.service.mjs +1 -1
- package/esm2020/lib/workspace/shared/workspace.utils.mjs +1 -1
- package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.component.mjs +2 -2
- package/esm2020/lib/workspace/widgets/ogc-filter/ogc-filter.module.mjs +1 -1
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.directive.mjs +1 -1
- package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +1 -1
- package/esm2020/lib/workspace/workspace-updator/workspace-updator.directive.mjs +1 -1
- package/esm2020/lib/workspace/workspace-updator/workspace-updator.module.mjs +1 -1
- package/esm2020/lib/workspace/workspace.module.mjs +1 -1
- package/esm2020/public_api.mjs +1 -1
- package/fesm2015/igo2-geo.mjs +116 -116
- package/fesm2015/igo2-geo.mjs.map +1 -1
- package/fesm2020/igo2-geo.mjs +115 -116
- package/fesm2020/igo2-geo.mjs.map +1 -1
- package/lib/layer/shared/layers/layer.interface.d.ts +2 -0
- package/lib/map/baselayers-switcher/mini-basemap.component.d.ts +1 -1
- package/ngcc.config.js +3 -3
- package/package.json +4 -4
- package/style/geo.theming.scss +12 -12
|
@@ -278,11 +278,11 @@ StyleModalDrawingComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type:
|
|
|
278
278
|
} }, dependencies: [i4.ColorPickerDirective, i5.NgForOf, i5.NgIf, i2.ɵNgNoValidate, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i6.MatFormField, i6.MatLabel, i6.MatSuffix, i7.MatIcon, i8.MatButton, i9.MatInput, i10.MatSelect, i11.MatOption, i12.MatTooltip, i2.FormGroupDirective, i2.FormControlName, i13.TranslatePipe], styles: ["h2[_ngcontent-%COMP%]{font-weight:700;font-size:large}.igo-form[_ngcontent-%COMP%]{padding:10px}.fill-field[_ngcontent-%COMP%], .stroke-field[_ngcontent-%COMP%]{width:130px}.fill-color-picker[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{position:relative;top:7px}.fill-color-picker[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{left:8px}.stroke-color-picker[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{position:relative;top:7px}.stroke-color-picker[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{left:35px}.box[_ngcontent-%COMP%]{width:25px;height:25px}.edition-drawing[_ngcontent-%COMP%]{padding:10px 0}.igo-input-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%] + .mat-form-field[_ngcontent-%COMP%]{margin-left:8px}.igo-form-input-box[_ngcontent-%COMP%]{width:150px}button[_ngcontent-%COMP%]{margin-right:5px}"] });
|
|
279
279
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StyleModalDrawingComponent, [{
|
|
280
280
|
type: Component,
|
|
281
|
-
args: [{ selector: 'igo-style-modal-drawing', template: "<div mat-dialog-content>\
|
|
281
|
+
args: [{ selector: 'igo-style-modal-drawing', template: "<div mat-dialog-content>\n <h2 mat-dialog-title class=\"mat-typography\">{{ 'igo.geo.style.styleModal' | translate }}</h2>\n <div\n class=\"edition-drawing mat-typography\"\n [hidden]=\"data.features.length === 0\">\n <form\n class=\"igo-form\"\n [formGroup]=\"form\">\n <div class=\"fill-color-picker mat-typography\" *ngIf=\"linestringOnly !== true\">\n <span>\n <mat-icon class=\"stroke-palette-icon\" svgIcon=\"square\"></mat-icon>\n {{ 'igo.geo.style.fill' | translate }}\n </span>\n\n <mat-form-field\n class=\"fill-field\"\n appearance=\"outline\"\n floatLabel=\"always\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.style.colorPicker' | translate\">\n <mat-label>{{ getFeatureFillColor() }}</mat-label>\n <input\n #fillColorInput\n formControlName=\"fill\"\n matInput\n type=\"text\"\n [style.background]=\"getFeatureFillColor()\"\n [readonly]=\"true\"\n [colorPicker]=\"getFeatureFillColor()\"\n [cpWidth]=\"'200px'\"\n [cpOutputFormat]=\"'rgba'\"\n [cpPosition]=\"'bottom'\"\n [cpPositionOffset]=\"'-75%'\"\n [cpCancelButton]=\"true\"\n [cpCancelButtonText]=\"'igo.geo.style.cancel' | translate\"\n [cpOKButton]=\"true\"\n (colorPickerChange)=\"styleModalData.fillColor = $event\">\n </mat-form-field>\n </div>\n\n <div class=\"stroke-color-picker mat-typography\">\n <span>\n <mat-icon\n class=\"stroke-palette-icon\"\n svgIcon=\"square-outline\">\n </mat-icon>\n {{'igo.geo.style.stroke' | translate}}\n </span>\n\n <mat-form-field\n class=\"stroke-field\"\n appearance=\"outline\"\n floatLabel=\"always\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.style.colorPicker' | translate\">\n <mat-label>{{ getFeatureStrokeColor() }}</mat-label>\n <input\n #strokeColorInput\n formControlName=\"stroke\"\n matInput\n type=\"text\"\n [style.background]=\"getFeatureStrokeColor()\"\n [readonly]=\"true\"\n [colorPicker]=\"getFeatureStrokeColor()\"\n [cpWidth]=\"'200px'\"\n [cpPosition]=\"'bottom'\"\n [cpPositionOffset]=\"'-75%'\"\n [cpOutputFormat]=\"'rgba'\"\n [cpCancelButton]=\"true\"\n [cpCancelButtonText]=\"'igo.geo.style.cancel' | translate\"\n [cpOKButton]=\"true\"\n (colorPickerChange)=\"styleModalData.strokeColor = $event\">\n </mat-form-field>\n </div>\n\n <div class=\"igo-input-container\">\n <mat-form-field appearance=\"outline\" class=\"igo-form-input-box\">\n <mat-label>{{ 'igo.geo.style.fontSize' | translate }}</mat-label>\n <input\n matInput\n #testFontSize\n type=\"number\"\n placeholder=\"10\"\n min=\"10\"\n onkeydown=\"return event.keyCode !== 69\"\n [value]=\"getFeatureFontSize()\"\n (input)=\"styleModalData.fontSize = $event.target.value\">\n <span matSuffix>px</span>\n </mat-form-field>\n <mat-form-field appearance=\"outline\" class=\"igo-form-input-box\">\n <mat-label>{{ 'igo.geo.style.fontStyle' | translate }}</mat-label>\n <mat-select\n #testFontStyle\n [value]=\"getFeatureFontStyle()\"\n (selectionChange)=\"styleModalData.fontStyle = $event.value\">\n <mat-option\n *ngFor=\"let fontSelect of allFontStyles\"\n [value]=\"fontSelect\">\n {{ fontSelect }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <div class=\"igo-input-container\">\n <mat-form-field appearance=\"outline\" class=\"igo-form-input-box\">\n <mat-label>{{ 'igo.geo.style.offsetX' | translate }}</mat-label>\n <input\n matInput\n #offsetXInput\n type=\"number\"\n onkeydown=\"return event.keyCode !== 69\"\n [value]=\"getFeatureOffsetX()\"\n (input)=\"styleModalData.offsetX = $event.target.value\">\n </mat-form-field>\n <mat-form-field appearance=\"outline\" class=\"igo-form-input-box\">\n <mat-label>{{ 'igo.geo.style.offsetY' | translate }}</mat-label>\n <input\n matInput\n #offsetYInput\n type=\"number\"\n onkeydown=\"return event.keyCode !== 69\"\n [value]=\"getFeatureOffsetY()\"\n (input)=\"styleModalData.offsetY= $event.target.value\">\n </mat-form-field>\n </div>\n </form>\n </div>\n</div>\n<div mat-dialog-actions>\n <button \n mat-raised-button \n (click)=\"cancelDrawing()\">{{'igo.geo.style.cancel' | translate}}\n </button>\n <button \n mat-raised-button \n color=\"primary\" \n (click)=\"confirm()\">OK\n </button>\n</div>\n", styles: ["h2{font-weight:700;font-size:large}.igo-form{padding:10px}.fill-field,.stroke-field{width:130px}.fill-color-picker mat-icon{position:relative;top:7px}.fill-color-picker mat-form-field{left:8px}.stroke-color-picker mat-icon{position:relative;top:7px}.stroke-color-picker mat-form-field{left:35px}.box{width:25px;height:25px}.edition-drawing{padding:10px 0}.igo-input-container .mat-form-field+.mat-form-field{margin-left:8px}.igo-form-input-box{width:150px}button{margin-right:5px}\n"] }]
|
|
282
282
|
}], function () { return [{ type: i1.MatDialogRef }, { type: i2.UntypedFormBuilder }, { type: i3.DrawStyleService }, { type: undefined, decorators: [{
|
|
283
283
|
type: Inject,
|
|
284
284
|
args: [MAT_DIALOG_DATA]
|
|
285
285
|
}] }]; }, { confirmFlag: [{
|
|
286
286
|
type: Input
|
|
287
287
|
}] }); })();
|
|
288
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtZHJhd2luZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zdHlsZS9zdHlsZS1tb2RhbC9kcmF3aW5nL3N0eWxlLW1vZGFsLWRyYXdpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvZHJhd2luZy9zdHlsZS1tb2RhbC1kcmF3aW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBSXpFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNHNUMsK0JBQThFLFdBQUE7SUFFMUUsK0JBQWtFO0lBQ2xFLFlBQ0Y7O0lBQUEsaUJBQU87SUFFUCwwQ0FNeUQ7O0lBQ3ZELGlDQUFXO0lBQUEsWUFBMkI7SUFBQSxpQkFBWTtJQUNsRCxxQ0FlMEQ7SUFBeEQsb01BQXFCLHdEQUFpQyxJQUFDOztJQWZ6RCxpQkFlMEQsRUFBQSxFQUFBOzs7SUExQjFELGVBQ0Y7SUFERSw0RUFDRjtJQVFFLGVBQXNEO0lBQXRELCtFQUFzRDtJQUMzQyxlQUEyQjtJQUEzQixrREFBMkI7SUFNcEMsZUFBMEM7SUFBMUMsMERBQTBDO0lBQzFDLCtCQUFpQiw2Q0FBQSxvQkFBQSwwQkFBQSx3QkFBQSw0QkFBQSx3QkFBQSxzRUFBQSxvQkFBQTs7O0lBcUVqQixzQ0FFdUI7SUFDckIsWUFDRjtJQUFBLGlCQUFhOzs7SUFGWCxzQ0FBb0I7SUFDcEIsZUFDRjtJQURFLCtDQUNGOztBRHhGWixNQUFNLE9BQU8sMEJBQTBCO0lB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QUE3QiwrQ0FBNkI7UUFJcEIsZUFBeUM7UUFBekMscUVBQXlDO1FBTWxELGVBQTZCO1FBQTdCLCtDQUE2QjtRQVVYLGVBQzVCO1FBRDRCLDhFQUM1Qjs7dUZEMUhXLDBCQUEwQjtjQUx0QyxTQUFTOzJCQUNFLHlCQUF5Qjs7c0JBZ0JoQyxNQUFNO3VCQUFDLGVBQWU7d0JBWGhCLFdBQVc7a0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAsIFVudHlwZWRGb3JtQnVpbGRlciB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IERyYXdTdHlsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zdHlsZS1zZXJ2aWNlL2RyYXctc3R5bGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEZvbnRUeXBlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2ZvbnQuZW51bSc7XHJcbmltcG9ydCB7IERyYXdpbmdNYXREaWFsb2dEYXRhLCBTdHlsZU1vZGFsRGF0YSB9IGZyb20gJy4uL3NoYXJlZC9zdHlsZS1tb2RhbC5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tc3R5bGUtbW9kYWwtZHJhd2luZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3N0eWxlLW1vZGFsLWRyYXdpbmcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLW1vZGFsLWRyYXdpbmcuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3R5bGVNb2RhbERyYXdpbmdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIGNvbmZpcm1GbGFnOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBwdWJsaWMgc3R5bGVNb2RhbERhdGE6IFN0eWxlTW9kYWxEYXRhO1xyXG4gIHB1YmxpYyBsaW5lc3RyaW5nT25seTogYm9vbGVhbjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U3R5bGVNb2RhbERyYXdpbmdDb21wb25lbnQ+LFxyXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBkcmF3U3R5bGVTZXJ2aWNlOiBEcmF3U3R5bGVTZXJ2aWNlLFxyXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBEcmF3aW5nTWF0RGlhbG9nRGF0YSkge1xyXG4gICAgICB0aGlzLmJ1aWxkRm9ybSgpO1xyXG4gICAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMubGluZXN0cmluZ09ubHkgPSB0cnVlO1xyXG4gICAgZm9yIChjb25zdCBmZWF0dXJlIG9mIHRoaXMuZGF0YS5mZWF0dXJlcykge1xyXG4gICAgICBpZiAoZmVhdHVyZS5nZW9tZXRyeS50eXBlICE9PSAnTGluZVN0cmluZycpIHtcclxuICAgICAgICB0aGlzLmxpbmVzdHJpbmdPbmx5ID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuYnVpbGRTdHlsZURhdGEoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgIGZpbGw6IFsnJ10sXHJcbiAgICAgIHN0cm9rZTogWycnXVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkU3R5bGVEYXRhKCkge1xyXG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YSA9IHtcclxuICAgICAgZmlsbENvbG9yOlxyXG4gICAgICAgIHRoaXMuZGF0YS5mZWF0dXJlcy5sZW5ndGggPiAwXHJcbiAgICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5kcmF3aW5nU3R5bGUuZmlsbFxyXG4gICAgICAgIDogJ3JnYmEoMjU1LDI1NSwyNTUsMC40KScsXHJcbiAgICAgIHN0cm9rZUNvbG9yOlxyXG4gICAgICAgIHRoaXMuZGF0YS5mZWF0dXJlcy5sZW5ndGggPiAwXHJcbiAgICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5kcmF3aW5nU3R5bGUuc3Ryb2tlXHJcbiAgICAgICAgOiAncmdiYSgxNDMsNyw3LDEpJyxcclxuICAgICAgZm9udFNpemU6XHJcbiAgICAgICAgdGhpcy5kYXRhLmZlYXR1cmVzLmxlbmd0aCA+IDBcclxuICAgICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLmZvbnRTdHlsZVxyXG4gICAgICAgICAgICAuc3BsaXQoJyAnKVswXVxyXG4gICAgICAgICAgICAucmVwbGFjZSgncHgnLCAnJylcclxuICAgICAgICA6ICcyMCcsXHJcbiAgICAgIGZvbnRTdHlsZTpcclxuICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxyXG4gICAgICAgID8gdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMuZm9udFN0eWxlLnN1YnN0cmluZyhcclxuICAgICAgICAgICAgdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMuZm9udFN0eWxlLmluZGV4T2YoJyAnKSArIDEpXHJcbiAgICAgICAgOiBGb250VHlwZS5BcmlhbCxcclxuICAgICAgb2Zmc2V0WDpcclxuICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxyXG4gICAgICAgID8gdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMub2Zmc2V0WFxyXG4gICAgICAgIDogdGhpcy5kcmF3U3R5bGVTZXJ2aWNlLmdldE9mZnNldFgoKSxcclxuICAgICAgb2Zmc2V0WTpcclxuICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxyXG4gICAgICAgID8gdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMub2Zmc2V0WVxyXG4gICAgICAgIDogdGhpcy5kcmF3U3R5bGVTZXJ2aWNlLmdldE9mZnNldFkoKVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGdldCBhbGxGb250U3R5bGVzKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiBPYmplY3QudmFsdWVzKEZvbnRUeXBlKTtcclxuICB9XHJcblxyXG4gIGdldEZlYXR1cmVGb250U2l6ZSgpOiBzdHJpbmcge1xyXG4gICAgaWYgKCF0aGlzLnN0eWxlTW9kYWxEYXRhLmZvbnRTaXplKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxyXG4gICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLmZvbnRTdHlsZVxyXG4gICAgICAgICAgLnNwbGl0KCcgJylbMF1cclxuICAgICAgICAgIC5yZXBsYWNlKCdweCcsICcnKVxyXG4gICAgICA6ICcyMCc7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5zdHlsZU1vZGFsRGF0YS5mb250U2l6ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEZlYXR1cmVGb250U3R5bGUoKSB7XHJcbiAgICBpZiAoIXRoaXMuc3R5bGVNb2RhbERhdGEuZm9udFN0eWxlKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxyXG4gICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLmZvbnRTdHlsZS5zdWJzdHJpbmcoXHJcbiAgICAgICAgdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMuZm9udFN0eWxlLmluZGV4T2YoJyAnKSArIDFcclxuICAgICAgICApXHJcbiAgICAgIDogRm9udFR5cGUuQXJpYWw7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5zdHlsZU1vZGFsRGF0YS5mb250U3R5bGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRGZWF0dXJlRmlsbENvbG9yKCkge1xyXG4gICAgaWYgKCF0aGlzLnN0eWxlTW9kYWxEYXRhLmZpbGxDb2xvcikge1xyXG4gICAgICByZXR1cm4gdGhpcy5kYXRhLmZlYXR1cmVzLmxlbmd0aCA+IDBcclxuICAgICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLmRyYXdpbmdTdHlsZS5maWxsXHJcbiAgICAgICAgOiAncmdiYSgyNTUsMjU1LDI1NSwwLjQpJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnN0eWxlTW9kYWxEYXRhLmZpbGxDb2xvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldEZlYXR1cmVTdHJva2VDb2xvcigpIHtcclxuICAgIGlmICghdGhpcy5zdHlsZU1vZGFsRGF0YS5zdHJva2VDb2xvcikge1xyXG4gICAgICByZXR1cm4gdGhpcy5kYXRhLmZlYXR1cmVzLmxlbmd0aCA+IDBcclxuICAgICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLmRyYXdpbmdTdHlsZS5zdHJva2VcclxuICAgICAgICA6ICdyZ2JhKDE0Myw3LDcsMSknO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc3R5bGVNb2RhbERhdGEuc3Ryb2tlQ29sb3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRGZWF0dXJlT2Zmc2V0WCgpIHtcclxuICAgIGlmICghdGhpcy5zdHlsZU1vZGFsRGF0YS5vZmZzZXRYKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxyXG4gICAgICAgID8gdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMub2Zmc2V0WFxyXG4gICAgICAgIDogdGhpcy5kcmF3U3R5bGVTZXJ2aWNlLmdldE9mZnNldFgoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLnN0eWxlTW9kYWxEYXRhLm9mZnNldFg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRGZWF0dXJlT2Zmc2V0WSgpIHtcclxuICAgIGlmICghdGhpcy5zdHlsZU1vZGFsRGF0YS5vZmZzZXRZKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxyXG4gICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLm9mZnNldFlcclxuICAgICAgOiB0aGlzLmRyYXdTdHlsZVNlcnZpY2UuZ2V0T2Zmc2V0WSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc3R5bGVNb2RhbERhdGEub2Zmc2V0WTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNhbmNlbERyYXdpbmcoKSB7XHJcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xyXG4gIH1cclxuXHJcbiAgY29uZmlybSgpIHtcclxuICAgIHRoaXMuY29uZmlybUZsYWcgPSB0cnVlO1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UodGhpcy5zdHlsZU1vZGFsRGF0YSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgbWF0LWRpYWxvZy1jb250ZW50PlxyXG4gIDxoMiBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj57eyAnaWdvLmdlby5zdHlsZS5zdHlsZU1vZGFsJyB8IHRyYW5zbGF0ZSB9fTwvaDI+XHJcbiAgPGRpdlxyXG4gIGNsYXNzPVwiZWRpdGlvbi1kcmF3aW5nIG1hdC10eXBvZ3JhcGh5XCJcclxuICBbaGlkZGVuXT1cImRhdGEuZmVhdHVyZXMubGVuZ3RoID09PSAwXCI+XHJcbiAgICA8Zm9ybVxyXG4gICAgICBjbGFzcz1cImlnby1mb3JtXCJcclxuICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmaWxsLWNvbG9yLXBpY2tlciBtYXQtdHlwb2dyYXBoeVwiICpuZ0lmPVwibGluZXN0cmluZ09ubHkgIT09IHRydWVcIj5cclxuICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInN0cm9rZS1wYWxldHRlLWljb25cIiBzdmdJY29uPVwic3F1YXJlXCI+PC9tYXQtaWNvbj5cclxuICAgICAgICAgIHt7ICdpZ28uZ2VvLnN0eWxlLmZpbGwnIHwgdHJhbnNsYXRlIH19XHJcbiAgICAgICAgPC9zcGFuPlxyXG5cclxuICAgICAgICA8bWF0LWZvcm0tZmllbGRcclxuICAgICAgICAgIGNsYXNzPVwiZmlsbC1maWVsZFwiXHJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXHJcbiAgICAgICAgICBmbG9hdExhYmVsPVwiYWx3YXlzXCJcclxuICAgICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXHJcbiAgICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcclxuICAgICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uZ2VvLnN0eWxlLmNvbG9yUGlja2VyJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgPG1hdC1sYWJlbD57eyBnZXRGZWF0dXJlRmlsbENvbG9yKCkgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAjZmlsbENvbG9ySW5wdXRcclxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZmlsbFwiXHJcbiAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRdPVwiZ2V0RmVhdHVyZUZpbGxDb2xvcigpXCJcclxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICBbY29sb3JQaWNrZXJdPVwiZ2V0RmVhdHVyZUZpbGxDb2xvcigpXCJcclxuICAgICAgICAgICAgW2NwV2lkdGhdPVwiJzIwMHB4J1wiXHJcbiAgICAgICAgICAgIFtjcE91dHB1dEZvcm1hdF09XCIncmdiYSdcIlxyXG4gICAgICAgICAgICBbY3BQb3NpdGlvbl09XCInYm90dG9tJ1wiXHJcbiAgICAgICAgICAgIFtjcFBvc2l0aW9uT2Zmc2V0XT1cIictNzUlJ1wiXHJcbiAgICAgICAgICAgIFtjcENhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2NwQ2FuY2VsQnV0dG9uVGV4dF09XCInaWdvLmdlby5zdHlsZS5jYW5jZWwnIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgW2NwT0tCdXR0b25dPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIChjb2xvclBpY2tlckNoYW5nZSk9XCJzdHlsZU1vZGFsRGF0YS5maWxsQ29sb3IgPSAkZXZlbnRcIj5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UtY29sb3ItcGlja2VyIG1hdC10eXBvZ3JhcGh5XCI+XHJcbiAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICA8bWF0LWljb25cclxuICAgICAgICAgICAgY2xhc3M9XCJzdHJva2UtcGFsZXR0ZS1pY29uXCJcclxuICAgICAgICAgICAgc3ZnSWNvbj1cInNxdWFyZS1vdXRsaW5lXCI+XHJcbiAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAge3snaWdvLmdlby5zdHlsZS5zdHJva2UnIHwgdHJhbnNsYXRlfX1cclxuICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZFxyXG4gICAgICAgICAgY2xhc3M9XCJzdHJva2UtZmllbGRcIlxyXG4gICAgICAgICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxyXG4gICAgICAgICAgZmxvYXRMYWJlbD1cImFsd2F5c1wiXHJcbiAgICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxyXG4gICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgICAgICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5zdHlsZS5jb2xvclBpY2tlcicgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgZ2V0RmVhdHVyZVN0cm9rZUNvbG9yKCkgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAjc3Ryb2tlQ29sb3JJbnB1dFxyXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJzdHJva2VcIlxyXG4gICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kXT1cImdldEZlYXR1cmVTdHJva2VDb2xvcigpXCJcclxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxyXG4gICAgICAgICAgICBbY29sb3JQaWNrZXJdPVwiZ2V0RmVhdHVyZVN0cm9rZUNvbG9yKClcIlxyXG4gICAgICAgICAgICBbY3BXaWR0aF09XCInMjAwcHgnXCJcclxuICAgICAgICAgICAgW2NwUG9zaXRpb25dPVwiJ2JvdHRvbSdcIlxyXG4gICAgICAgICAgICBbY3BQb3NpdGlvbk9mZnNldF09XCInLTc1JSdcIlxyXG4gICAgICAgICAgICBbY3BPdXRwdXRGb3JtYXRdPVwiJ3JnYmEnXCJcclxuICAgICAgICAgICAgW2NwQ2FuY2VsQnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbY3BDYW5jZWxCdXR0b25UZXh0XT1cIidpZ28uZ2VvLnN0eWxlLmNhbmNlbCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBbY3BPS0J1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgKGNvbG9yUGlja2VyQ2hhbmdlKT1cInN0eWxlTW9kYWxEYXRhLnN0cm9rZUNvbG9yID0gJGV2ZW50XCI+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiaWdvLWZvcm0taW5wdXQtYm94XCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uZ2VvLnN0eWxlLmZvbnRTaXplJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICN0ZXN0Rm9udFNpemVcclxuICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiMTBcIlxyXG4gICAgICAgICAgICBtaW49XCIxMFwiXHJcbiAgICAgICAgICAgIG9ua2V5ZG93bj1cInJldHVybiBldmVudC5rZXlDb2RlICE9PSA2OVwiXHJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJnZXRGZWF0dXJlRm9udFNpemUoKVwiXHJcbiAgICAgICAgICAgIChpbnB1dCk9XCJzdHlsZU1vZGFsRGF0YS5mb250U2l6ZSA9ICRldmVudC50YXJnZXQudmFsdWVcIj5cclxuICAgICAgICAgIDxzcGFuIG1hdFN1ZmZpeD5weDwvc3Bhbj5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiaWdvLWZvcm0taW5wdXQtYm94XCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uZ2VvLnN0eWxlLmZvbnRTdHlsZScgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxtYXQtc2VsZWN0XHJcbiAgICAgICAgICAgICN0ZXN0Rm9udFN0eWxlXHJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJnZXRGZWF0dXJlRm9udFN0eWxlKClcIlxyXG4gICAgICAgICAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cInN0eWxlTW9kYWxEYXRhLmZvbnRTdHlsZSA9ICRldmVudC52YWx1ZVwiPlxyXG4gICAgICAgICAgICA8bWF0LW9wdGlvblxyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBmb250U2VsZWN0IG9mIGFsbEZvbnRTdHlsZXNcIlxyXG4gICAgICAgICAgICAgIFt2YWx1ZV09XCJmb250U2VsZWN0XCI+XHJcbiAgICAgICAgICAgICAge3sgZm9udFNlbGVjdCB9fVxyXG4gICAgICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiaWdvLWZvcm0taW5wdXQtYm94XCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uZ2VvLnN0eWxlLm9mZnNldFgnIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgI29mZnNldFhJbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDY5XCJcclxuICAgICAgICAgICAgW3ZhbHVlXT1cImdldEZlYXR1cmVPZmZzZXRYKClcIlxyXG4gICAgICAgICAgICAoaW5wdXQpPVwic3R5bGVNb2RhbERhdGEub2Zmc2V0WCA9ICRldmVudC50YXJnZXQudmFsdWVcIj5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiaWdvLWZvcm0taW5wdXQtYm94XCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uZ2VvLnN0eWxlLm9mZnNldFknIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgI29mZnNldFlJbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgb25rZXlkb3duPVwicmV0dXJuIGV2ZW50LmtleUNvZGUgIT09IDY5XCJcclxuICAgICAgICAgICAgW3ZhbHVlXT1cImdldEZlYXR1cmVPZmZzZXRZKClcIlxyXG4gICAgICAgICAgICAoaW5wdXQpPVwic3R5bGVNb2RhbERhdGEub2Zmc2V0WT0gJGV2ZW50LnRhcmdldC52YWx1ZVwiPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9mb3JtPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnM+XHJcbiAgPGJ1dHRvbiBcclxuICAgIG1hdC1yYWlzZWQtYnV0dG9uIFxyXG4gICAgKGNsaWNrKT1cImNhbmNlbERyYXdpbmcoKVwiPnt7J2lnby5nZW8uc3R5bGUuY2FuY2VsJyB8IHRyYW5zbGF0ZX19XHJcbiAgPC9idXR0b24+XHJcbiAgPGJ1dHRvbiBcclxuICAgIG1hdC1yYWlzZWQtYnV0dG9uIFxyXG4gICAgY29sb3I9XCJwcmltYXJ5XCIgXHJcbiAgICAoY2xpY2spPVwiY29uZmlybSgpXCI+T0tcclxuICA8L2J1dHRvbj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
288
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtZHJhd2luZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zdHlsZS9zdHlsZS1tb2RhbC9kcmF3aW5nL3N0eWxlLW1vZGFsLWRyYXdpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvZHJhd2luZy9zdHlsZS1tb2RhbC1kcmF3aW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBSXpFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNHNUMsK0JBQThFLFdBQUE7SUFFMUUsK0JBQWtFO0lBQ2xFLFlBQ0Y7O0lBQUEsaUJBQU87SUFFUCwwQ0FNeUQ7O0lBQ3ZELGlDQUFXO0lBQUEsWUFBMkI7SUFBQSxpQkFBWTtJQUNsRCxxQ0FlMEQ7SUFBeEQsb01BQXFCLHdEQUFpQyxJQUFDOztJQWZ6RCxpQkFlMEQsRUFBQSxFQUFBOzs7SUExQjFELGVBQ0Y7SUFERSw0RUFDRjtJQVFFLGVBQXNEO0lBQXRELCtFQUFzRDtJQUMzQyxlQUEyQjtJQUEzQixrREFBMkI7SUFNcEMsZUFBMEM7SUFBMUMsMERBQTBDO0lBQzFDLCtCQUFpQiw2Q0FBQSxvQkFBQSwwQkFBQSx3QkFBQSw0QkFBQSx3QkFBQSxzRUFBQSxvQkFBQTs7O0lBcUVqQixzQ0FFdUI7SUFDckIsWUFDRjtJQUFBLGlCQUFhOzs7SUFGWCxzQ0FBb0I7SUFDcEIsZUFDRjtJQURFLCtDQUNGOztBRHhGWixNQUFNLE9BQU8sMEJBQTBCO0lB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QUE3QiwrQ0FBNkI7UUFJcEIsZUFBeUM7UUFBekMscUVBQXlDO1FBTWxELGVBQTZCO1FBQTdCLCtDQUE2QjtRQVVYLGVBQzVCO1FBRDRCLDhFQUM1Qjs7dUZEMUhXLDBCQUEwQjtjQUx0QyxTQUFTOzJCQUNFLHlCQUF5Qjs7c0JBZ0JoQyxNQUFNO3VCQUFDLGVBQWU7d0JBWGhCLFdBQVc7a0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBEcmF3U3R5bGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc3R5bGUtc2VydmljZS9kcmF3LXN0eWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9udFR5cGUgfSBmcm9tICcuLi8uLi9zaGFyZWQvZm9udC5lbnVtJztcbmltcG9ydCB7IERyYXdpbmdNYXREaWFsb2dEYXRhLCBTdHlsZU1vZGFsRGF0YSB9IGZyb20gJy4uL3NoYXJlZC9zdHlsZS1tb2RhbC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tc3R5bGUtbW9kYWwtZHJhd2luZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9zdHlsZS1tb2RhbC1kcmF3aW5nLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUtbW9kYWwtZHJhd2luZy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFN0eWxlTW9kYWxEcmF3aW5nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgY29uZmlybUZsYWc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcblxuICBwdWJsaWMgc3R5bGVNb2RhbERhdGE6IFN0eWxlTW9kYWxEYXRhO1xuICBwdWJsaWMgbGluZXN0cmluZ09ubHk6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFN0eWxlTW9kYWxEcmF3aW5nQ29tcG9uZW50PixcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXG4gICAgcHJpdmF0ZSBkcmF3U3R5bGVTZXJ2aWNlOiBEcmF3U3R5bGVTZXJ2aWNlLFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogRHJhd2luZ01hdERpYWxvZ0RhdGEpIHtcbiAgICAgIHRoaXMuYnVpbGRGb3JtKCk7XG4gICAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMubGluZXN0cmluZ09ubHkgPSB0cnVlO1xuICAgIGZvciAoY29uc3QgZmVhdHVyZSBvZiB0aGlzLmRhdGEuZmVhdHVyZXMpIHtcbiAgICAgIGlmIChmZWF0dXJlLmdlb21ldHJ5LnR5cGUgIT09ICdMaW5lU3RyaW5nJykge1xuICAgICAgICB0aGlzLmxpbmVzdHJpbmdPbmx5ID0gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuYnVpbGRTdHlsZURhdGEoKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRGb3JtKCkge1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgZmlsbDogWycnXSxcbiAgICAgIHN0cm9rZTogWycnXVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFN0eWxlRGF0YSgpIHtcbiAgICB0aGlzLnN0eWxlTW9kYWxEYXRhID0ge1xuICAgICAgZmlsbENvbG9yOlxuICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxuICAgICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLmRyYXdpbmdTdHlsZS5maWxsXG4gICAgICAgIDogJ3JnYmEoMjU1LDI1NSwyNTUsMC40KScsXG4gICAgICBzdHJva2VDb2xvcjpcbiAgICAgICAgdGhpcy5kYXRhLmZlYXR1cmVzLmxlbmd0aCA+IDBcbiAgICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5kcmF3aW5nU3R5bGUuc3Ryb2tlXG4gICAgICAgIDogJ3JnYmEoMTQzLDcsNywxKScsXG4gICAgICBmb250U2l6ZTpcbiAgICAgICAgdGhpcy5kYXRhLmZlYXR1cmVzLmxlbmd0aCA+IDBcbiAgICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5mb250U3R5bGVcbiAgICAgICAgICAgIC5zcGxpdCgnICcpWzBdXG4gICAgICAgICAgICAucmVwbGFjZSgncHgnLCAnJylcbiAgICAgICAgOiAnMjAnLFxuICAgICAgZm9udFN0eWxlOlxuICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxuICAgICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLmZvbnRTdHlsZS5zdWJzdHJpbmcoXG4gICAgICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5mb250U3R5bGUuaW5kZXhPZignICcpICsgMSlcbiAgICAgICAgOiBGb250VHlwZS5BcmlhbCxcbiAgICAgIG9mZnNldFg6XG4gICAgICAgIHRoaXMuZGF0YS5mZWF0dXJlcy5sZW5ndGggPiAwXG4gICAgICAgID8gdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMub2Zmc2V0WFxuICAgICAgICA6IHRoaXMuZHJhd1N0eWxlU2VydmljZS5nZXRPZmZzZXRYKCksXG4gICAgICBvZmZzZXRZOlxuICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxuICAgICAgICA/IHRoaXMuZGF0YS5mZWF0dXJlc1swXS5wcm9wZXJ0aWVzLm9mZnNldFlcbiAgICAgICAgOiB0aGlzLmRyYXdTdHlsZVNlcnZpY2UuZ2V0T2Zmc2V0WSgpXG4gICAgfTtcbiAgfVxuXG4gIGdldCBhbGxGb250U3R5bGVzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyhGb250VHlwZSk7XG4gIH1cblxuICBnZXRGZWF0dXJlRm9udFNpemUoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuc3R5bGVNb2RhbERhdGEuZm9udFNpemUpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxuICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5mb250U3R5bGVcbiAgICAgICAgICAuc3BsaXQoJyAnKVswXVxuICAgICAgICAgIC5yZXBsYWNlKCdweCcsICcnKVxuICAgICAgOiAnMjAnO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5zdHlsZU1vZGFsRGF0YS5mb250U2l6ZTtcbiAgICB9XG4gIH1cblxuICBnZXRGZWF0dXJlRm9udFN0eWxlKCkge1xuICAgIGlmICghdGhpcy5zdHlsZU1vZGFsRGF0YS5mb250U3R5bGUpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxuICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5mb250U3R5bGUuc3Vic3RyaW5nKFxuICAgICAgICB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5mb250U3R5bGUuaW5kZXhPZignICcpICsgMVxuICAgICAgICApXG4gICAgICA6IEZvbnRUeXBlLkFyaWFsO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5zdHlsZU1vZGFsRGF0YS5mb250U3R5bGU7XG4gICAgfVxuICB9XG5cbiAgZ2V0RmVhdHVyZUZpbGxDb2xvcigpIHtcbiAgICBpZiAoIXRoaXMuc3R5bGVNb2RhbERhdGEuZmlsbENvbG9yKSB7XG4gICAgICByZXR1cm4gdGhpcy5kYXRhLmZlYXR1cmVzLmxlbmd0aCA+IDBcbiAgICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5kcmF3aW5nU3R5bGUuZmlsbFxuICAgICAgICA6ICdyZ2JhKDI1NSwyNTUsMjU1LDAuNCknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5zdHlsZU1vZGFsRGF0YS5maWxsQ29sb3I7XG4gICAgfVxuICB9XG5cbiAgZ2V0RmVhdHVyZVN0cm9rZUNvbG9yKCkge1xuICAgIGlmICghdGhpcy5zdHlsZU1vZGFsRGF0YS5zdHJva2VDb2xvcikge1xuICAgICAgcmV0dXJuIHRoaXMuZGF0YS5mZWF0dXJlcy5sZW5ndGggPiAwXG4gICAgICAgID8gdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMuZHJhd2luZ1N0eWxlLnN0cm9rZVxuICAgICAgICA6ICdyZ2JhKDE0Myw3LDcsMSknO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5zdHlsZU1vZGFsRGF0YS5zdHJva2VDb2xvcjtcbiAgICB9XG4gIH1cblxuICBnZXRGZWF0dXJlT2Zmc2V0WCgpIHtcbiAgICBpZiAoIXRoaXMuc3R5bGVNb2RhbERhdGEub2Zmc2V0WCkge1xuICAgICAgcmV0dXJuIHRoaXMuZGF0YS5mZWF0dXJlcy5sZW5ndGggPiAwXG4gICAgICAgID8gdGhpcy5kYXRhLmZlYXR1cmVzWzBdLnByb3BlcnRpZXMub2Zmc2V0WFxuICAgICAgICA6IHRoaXMuZHJhd1N0eWxlU2VydmljZS5nZXRPZmZzZXRYKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnN0eWxlTW9kYWxEYXRhLm9mZnNldFg7XG4gICAgfVxuICB9XG5cbiAgZ2V0RmVhdHVyZU9mZnNldFkoKSB7XG4gICAgaWYgKCF0aGlzLnN0eWxlTW9kYWxEYXRhLm9mZnNldFkpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGEuZmVhdHVyZXMubGVuZ3RoID4gMFxuICAgICAgPyB0aGlzLmRhdGEuZmVhdHVyZXNbMF0ucHJvcGVydGllcy5vZmZzZXRZXG4gICAgICA6IHRoaXMuZHJhd1N0eWxlU2VydmljZS5nZXRPZmZzZXRZKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLnN0eWxlTW9kYWxEYXRhLm9mZnNldFk7XG4gICAgfVxuICB9XG5cbiAgY2FuY2VsRHJhd2luZygpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSgpO1xuICB9XG5cbiAgY29uZmlybSgpIHtcbiAgICB0aGlzLmNvbmZpcm1GbGFnID0gdHJ1ZTtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLnN0eWxlTW9kYWxEYXRhKTtcbiAgfVxufVxuIiwiPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gIDxoMiBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj57eyAnaWdvLmdlby5zdHlsZS5zdHlsZU1vZGFsJyB8IHRyYW5zbGF0ZSB9fTwvaDI+XG4gIDxkaXZcbiAgY2xhc3M9XCJlZGl0aW9uLWRyYXdpbmcgbWF0LXR5cG9ncmFwaHlcIlxuICBbaGlkZGVuXT1cImRhdGEuZmVhdHVyZXMubGVuZ3RoID09PSAwXCI+XG4gICAgPGZvcm1cbiAgICAgIGNsYXNzPVwiaWdvLWZvcm1cIlxuICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsbC1jb2xvci1waWNrZXIgbWF0LXR5cG9ncmFwaHlcIiAqbmdJZj1cImxpbmVzdHJpbmdPbmx5ICE9PSB0cnVlXCI+XG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInN0cm9rZS1wYWxldHRlLWljb25cIiBzdmdJY29uPVwic3F1YXJlXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICB7eyAnaWdvLmdlby5zdHlsZS5maWxsJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkXG4gICAgICAgICAgY2xhc3M9XCJmaWxsLWZpZWxkXCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gICAgICAgICAgZmxvYXRMYWJlbD1cImFsd2F5c1wiXG4gICAgICAgICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5zdHlsZS5jb2xvclBpY2tlcicgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICA8bWF0LWxhYmVsPnt7IGdldEZlYXR1cmVGaWxsQ29sb3IoKSB9fTwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2ZpbGxDb2xvcklucHV0XG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJmaWxsXCJcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJnZXRGZWF0dXJlRmlsbENvbG9yKClcIlxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxuICAgICAgICAgICAgW2NvbG9yUGlja2VyXT1cImdldEZlYXR1cmVGaWxsQ29sb3IoKVwiXG4gICAgICAgICAgICBbY3BXaWR0aF09XCInMjAwcHgnXCJcbiAgICAgICAgICAgIFtjcE91dHB1dEZvcm1hdF09XCIncmdiYSdcIlxuICAgICAgICAgICAgW2NwUG9zaXRpb25dPVwiJ2JvdHRvbSdcIlxuICAgICAgICAgICAgW2NwUG9zaXRpb25PZmZzZXRdPVwiJy03NSUnXCJcbiAgICAgICAgICAgIFtjcENhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtjcENhbmNlbEJ1dHRvblRleHRdPVwiJ2lnby5nZW8uc3R5bGUuY2FuY2VsJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgICAgICBbY3BPS0J1dHRvbl09XCJ0cnVlXCJcbiAgICAgICAgICAgIChjb2xvclBpY2tlckNoYW5nZSk9XCJzdHlsZU1vZGFsRGF0YS5maWxsQ29sb3IgPSAkZXZlbnRcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlLWNvbG9yLXBpY2tlciBtYXQtdHlwb2dyYXBoeVwiPlxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgIGNsYXNzPVwic3Ryb2tlLXBhbGV0dGUtaWNvblwiXG4gICAgICAgICAgICBzdmdJY29uPVwic3F1YXJlLW91dGxpbmVcIj5cbiAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgIHt7J2lnby5nZW8uc3R5bGUuc3Ryb2tlJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8bWF0LWZvcm0tZmllbGRcbiAgICAgICAgICBjbGFzcz1cInN0cm9rZS1maWVsZFwiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxuICAgICAgICAgIGZsb2F0TGFiZWw9XCJhbHdheXNcIlxuICAgICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uc3R5bGUuY29sb3JQaWNrZXInIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD57eyBnZXRGZWF0dXJlU3Ryb2tlQ29sb3IoKSB9fTwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI3N0cm9rZUNvbG9ySW5wdXRcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInN0cm9rZVwiXG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRdPVwiZ2V0RmVhdHVyZVN0cm9rZUNvbG9yKClcIlxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxuICAgICAgICAgICAgW2NvbG9yUGlja2VyXT1cImdldEZlYXR1cmVTdHJva2VDb2xvcigpXCJcbiAgICAgICAgICAgIFtjcFdpZHRoXT1cIicyMDBweCdcIlxuICAgICAgICAgICAgW2NwUG9zaXRpb25dPVwiJ2JvdHRvbSdcIlxuICAgICAgICAgICAgW2NwUG9zaXRpb25PZmZzZXRdPVwiJy03NSUnXCJcbiAgICAgICAgICAgIFtjcE91dHB1dEZvcm1hdF09XCIncmdiYSdcIlxuICAgICAgICAgICAgW2NwQ2FuY2VsQnV0dG9uXT1cInRydWVcIlxuICAgICAgICAgICAgW2NwQ2FuY2VsQnV0dG9uVGV4dF09XCInaWdvLmdlby5zdHlsZS5jYW5jZWwnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgIFtjcE9LQnV0dG9uXT1cInRydWVcIlxuICAgICAgICAgICAgKGNvbG9yUGlja2VyQ2hhbmdlKT1cInN0eWxlTW9kYWxEYXRhLnN0cm9rZUNvbG9yID0gJGV2ZW50XCI+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImlnby1pbnB1dC1jb250YWluZXJcIj5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJpZ28tZm9ybS1pbnB1dC1ib3hcIj5cbiAgICAgICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uZ2VvLnN0eWxlLmZvbnRTaXplJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgICN0ZXN0Rm9udFNpemVcbiAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCIxMFwiXG4gICAgICAgICAgICBtaW49XCIxMFwiXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gNjlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImdldEZlYXR1cmVGb250U2l6ZSgpXCJcbiAgICAgICAgICAgIChpbnB1dCk9XCJzdHlsZU1vZGFsRGF0YS5mb250U2l6ZSA9ICRldmVudC50YXJnZXQudmFsdWVcIj5cbiAgICAgICAgICA8c3BhbiBtYXRTdWZmaXg+cHg8L3NwYW4+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwib3V0bGluZVwiIGNsYXNzPVwiaWdvLWZvcm0taW5wdXQtYm94XCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD57eyAnaWdvLmdlby5zdHlsZS5mb250U3R5bGUnIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG4gICAgICAgICAgPG1hdC1zZWxlY3RcbiAgICAgICAgICAgICN0ZXN0Rm9udFN0eWxlXG4gICAgICAgICAgICBbdmFsdWVdPVwiZ2V0RmVhdHVyZUZvbnRTdHlsZSgpXCJcbiAgICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwic3R5bGVNb2RhbERhdGEuZm9udFN0eWxlID0gJGV2ZW50LnZhbHVlXCI+XG4gICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgZm9udFNlbGVjdCBvZiBhbGxGb250U3R5bGVzXCJcbiAgICAgICAgICAgICAgW3ZhbHVlXT1cImZvbnRTZWxlY3RcIj5cbiAgICAgICAgICAgICAge3sgZm9udFNlbGVjdCB9fVxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiaWdvLWlucHV0LWNvbnRhaW5lclwiPlxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBjbGFzcz1cImlnby1mb3JtLWlucHV0LWJveFwiPlxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgJ2lnby5nZW8uc3R5bGUub2Zmc2V0WCcgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICAjb2Zmc2V0WElucHV0XG4gICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgIG9ua2V5ZG93bj1cInJldHVybiBldmVudC5rZXlDb2RlICE9PSA2OVwiXG4gICAgICAgICAgICBbdmFsdWVdPVwiZ2V0RmVhdHVyZU9mZnNldFgoKVwiXG4gICAgICAgICAgICAoaW5wdXQpPVwic3R5bGVNb2RhbERhdGEub2Zmc2V0WCA9ICRldmVudC50YXJnZXQudmFsdWVcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgY2xhc3M9XCJpZ28tZm9ybS1pbnB1dC1ib3hcIj5cbiAgICAgICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uZ2VvLnN0eWxlLm9mZnNldFknIHwgdHJhbnNsYXRlIH19PC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgI29mZnNldFlJbnB1dFxuICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICBvbmtleWRvd249XCJyZXR1cm4gZXZlbnQua2V5Q29kZSAhPT0gNjlcIlxuICAgICAgICAgICAgW3ZhbHVlXT1cImdldEZlYXR1cmVPZmZzZXRZKClcIlxuICAgICAgICAgICAgKGlucHV0KT1cInN0eWxlTW9kYWxEYXRhLm9mZnNldFk9ICRldmVudC50YXJnZXQudmFsdWVcIj5cbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZm9ybT5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zPlxuICA8YnV0dG9uIFxuICAgIG1hdC1yYWlzZWQtYnV0dG9uIFxuICAgIChjbGljayk9XCJjYW5jZWxEcmF3aW5nKClcIj57eydpZ28uZ2VvLnN0eWxlLmNhbmNlbCcgfCB0cmFuc2xhdGV9fVxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiBcbiAgICBtYXQtcmFpc2VkLWJ1dHRvbiBcbiAgICBjb2xvcj1cInByaW1hcnlcIiBcbiAgICAoY2xpY2spPVwiY29uZmlybSgpXCI+T0tcbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -2,4 +2,4 @@ export * from './drawing';
|
|
|
2
2
|
export * from './layer';
|
|
3
3
|
export * from './layer-button';
|
|
4
4
|
export * from './shared';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zdHlsZS9zdHlsZS1tb2RhbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kcmF3aW5nJztcbmV4cG9ydCAqIGZyb20gJy4vbGF5ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9sYXllci1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQnO1xuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './style-modal-layer.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zdHlsZS9zdHlsZS1tb2RhbC9sYXllci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zdHlsZS1tb2RhbC1sYXllci5jb21wb25lbnQnO1xuIl19
|
|
@@ -177,11 +177,11 @@ StyleModalLayerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: St
|
|
|
177
177
|
} }, dependencies: [i3.ColorPickerDirective, i4.NgIf, i2.ɵNgNoValidate, i2.DefaultValueAccessor, i2.NgControlStatus, i2.NgControlStatusGroup, i5.MatFormField, i5.MatLabel, i6.MatIcon, i7.MatButton, i8.MatInput, i9.MatTooltip, i2.FormGroupDirective, i2.FormControlName, i10.TranslatePipe], styles: ["h2[_ngcontent-%COMP%]{font-weight:700;font-size:large}.igo-form[_ngcontent-%COMP%]{padding:10px}.fill-field[_ngcontent-%COMP%], .stroke-field[_ngcontent-%COMP%]{width:130px}.fill-color-picker[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{position:relative;top:7px}.fill-color-picker[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{left:8px}.stroke-color-picker[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{position:relative;top:7px}.stroke-color-picker[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{left:35px}.box[_ngcontent-%COMP%]{width:25px;height:25px}.edition-drawing[_ngcontent-%COMP%]{padding:10px 0}.igo-input-container[_ngcontent-%COMP%] .mat-form-field[_ngcontent-%COMP%] + .mat-form-field[_ngcontent-%COMP%]{margin-left:8px}.igo-form-input-box[_ngcontent-%COMP%]{width:150px}button[_ngcontent-%COMP%]{margin-right:5px}"] });
|
|
178
178
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StyleModalLayerComponent, [{
|
|
179
179
|
type: Component,
|
|
180
|
-
args: [{ selector: 'igo-style-modal-layer', template: "<div mat-dialog-content>\
|
|
180
|
+
args: [{ selector: 'igo-style-modal-layer', template: "<div mat-dialog-content>\n <h2 mat-dialog-title class=\"mat-typography\">{{ 'igo.geo.style.styleModal' | translate }}</h2>\n <div\n class=\"edition-drawing mat-typography\">\n <!-- [hidden]=\"data.features.length === 0\"> -->\n <form\n class=\"igo-form\"\n [formGroup]=\"form\">\n <div class=\"fill-color-picker mat-typography\" *ngIf=\"linestringOnly !== true\">\n <span>\n <mat-icon class=\"stroke-palette-icon\" svgIcon=\"square\"></mat-icon>\n {{ 'igo.geo.style.fill' | translate }}\n </span>\n\n <mat-form-field\n class=\"fill-field\"\n appearance=\"outline\"\n floatLabel=\"always\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.style.colorPicker' | translate\">\n <mat-label>{{ getLayerFillColor() }}</mat-label>\n <input\n #fillColorInput\n formControlName=\"fill\"\n matInput\n type=\"text\"\n [style.background]=\"getLayerFillColor()\"\n [readonly]=\"true\"\n [colorPicker]=\"getLayerFillColor()\"\n [cpWidth]=\"'200px'\"\n [cpOutputFormat]=\"'rgba'\"\n [cpPosition]=\"'bottom'\"\n [cpPositionOffset]=\"'-75%'\"\n [cpCancelButton]=\"true\"\n [cpCancelButtonText]=\"'igo.geo.style.cancel' | translate\"\n [cpOKButton]=\"true\"\n (colorPickerChange)=\"setLayerFillColor($event)\">\n </mat-form-field>\n </div>\n\n <div class=\"stroke-color-picker mat-typography\">\n <span>\n <mat-icon\n class=\"stroke-palette-icon\"\n svgIcon=\"square-outline\">\n </mat-icon>\n {{'igo.geo.style.stroke' | translate}}\n </span>\n\n <mat-form-field\n class=\"stroke-field\"\n appearance=\"outline\"\n floatLabel=\"always\"\n tooltip-position=\"below\"\n matTooltipShowDelay=\"500\"\n [matTooltip]=\"'igo.geo.style.colorPicker' | translate\">\n <mat-label>{{ getLayerStrokeColor() }}</mat-label>\n <input\n #strokeColorInput\n formControlName=\"stroke\"\n matInput\n type=\"text\"\n [style.background]=\"getLayerStrokeColor()\"\n [readonly]=\"true\"\n [colorPicker]=\"getLayerStrokeColor()\"\n [cpWidth]=\"'200px'\"\n [cpPosition]=\"'bottom'\"\n [cpPositionOffset]=\"'-75%'\"\n [cpOutputFormat]=\"'rgba'\"\n [cpCancelButton]=\"true\"\n [cpCancelButtonText]=\"'igo.geo.style.cancel' | translate\"\n [cpOKButton]=\"true\"\n (colorPickerChange)=\"setLayerStrokeColor($event)\">\n </mat-form-field>\n </div>\n </form>\n </div>\n</div>\n<div mat-dialog-actions>\n <button \n mat-raised-button \n (click)=\"cancel()\">{{'igo.geo.style.cancel' | translate}}\n </button>\n <button \n mat-raised-button \n color=\"primary\" \n (click)=\"confirm()\">OK\n </button>\n</div>\n", styles: ["h2{font-weight:700;font-size:large}.igo-form{padding:10px}.fill-field,.stroke-field{width:130px}.fill-color-picker mat-icon{position:relative;top:7px}.fill-color-picker mat-form-field{left:8px}.stroke-color-picker mat-icon{position:relative;top:7px}.stroke-color-picker mat-form-field{left:35px}.box{width:25px;height:25px}.edition-drawing{padding:10px 0}.igo-input-container .mat-form-field+.mat-form-field{margin-left:8px}.igo-form-input-box{width:150px}button{margin-right:5px}\n"] }]
|
|
181
181
|
}], function () { return [{ type: i1.MatDialogRef }, { type: i2.UntypedFormBuilder }, { type: undefined, decorators: [{
|
|
182
182
|
type: Inject,
|
|
183
183
|
args: [MAT_DIALOG_DATA]
|
|
184
184
|
}] }]; }, { confirmFlag: [{
|
|
185
185
|
type: Input
|
|
186
186
|
}] }); })();
|
|
187
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHekUsT0FBTyxFQUFFLE9BQU8sSUFBSSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7Ozs7Ozs7O0lDSTdDLCtCQUE4RSxXQUFBO0lBRTFFLCtCQUFrRTtJQUNsRSxZQUNGOztJQUFBLGlCQUFPO0lBRVAsMENBTXlEOztJQUN2RCxpQ0FBVztJQUFBLFlBQXlCO0lBQUEsaUJBQVk7SUFDaEQscUNBZWtEO0lBQWhELGtNQUFxQixlQUFBLGdDQUF5QixDQUFBLElBQUM7O0lBZmpELGlCQWVrRCxFQUFBLEVBQUE7OztJQTFCbEQsZUFDRjtJQURFLDRFQUNGO0lBUUUsZUFBc0Q7SUFBdEQsK0VBQXNEO0lBQzNDLGVBQXlCO0lBQXpCLGdEQUF5QjtJQU1sQyxlQUF3QztJQUF4Qyx3REFBd0M7SUFDeEMsK0JBQWlCLDJDQUFBLG9CQUFBLDBCQUFBLHdCQUFBLDRCQUFBLHdCQUFBLHNFQUFBLG9CQUFBOztBRGY3QixNQUFNLE9BQU8sd0JBQXdCO0lBb0JuQyxZQUNTLFNBQWlELEVBQ2hELFdBQStCLEVBQ1AsSUFBd0I7UUFGakQsY0FBUyxHQUFULFNBQVMsQ0FBd0M7UUFD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Y0FMcEMsU0FBUzsyQkFDRSx1QkFBdUI7O3NCQTJCOUIsTUFBTTt1QkFBQyxlQUFlO3dCQXRCaEIsV0FBVztrQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCwgVW50eXBlZEZvcm1CdWlsZGVyIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgYXNBcnJheSBhcyBDb2xvckFzQXJyYXkgfSBmcm9tICdvbC9jb2xvcic7XHJcbmltcG9ydCBvbFN0eWxlIGZyb20gJ29sL3N0eWxlL1N0eWxlJztcclxuaW1wb3J0IHsgTGF5ZXJNYXREaWFsb2dEYXRhLCBTdHlsZU1vZGFsRGF0YSB9IGZyb20gJy4uL3NoYXJlZC9zdHlsZS1tb2RhbC5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tc3R5bGUtbW9kYWwtbGF5ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdHlsZS1tb2RhbC1sYXllci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3R5bGVNb2RhbExheWVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBjb25maXJtRmxhZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwdWJsaWMgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbiAgcHVibGljIHN0eWxlTW9kYWxEYXRhOiBTdHlsZU1vZGFsRGF0YTtcclxuICBwdWJsaWMgbGluZXN0cmluZ09ubHk6IGJvb2xlYW47XHJcblxyXG4gIHByaXZhdGUgaW5pdGlhbFZhbHVlczogU3R5bGVNb2RhbERhdGE7XHJcblxyXG4gIHByaXZhdGUgZGVmYXVsdFZhbHVlczogU3R5bGVNb2RhbERhdGEgPSB7XHJcbiAgICBmaWxsQ29sb3I6ICdyZ2JhKDI1NSwyNTUsMjU1LDAuNCknLFxyXG4gICAgc3Ryb2tlQ29sb3I6ICdyZ2JhKDE0Myw3LDcsMSknXHJcbiAgfTtcclxuXHJcbiAgZ2V0IGxheWVyT2xTdHlsZSgpOiBvbFN0eWxlIHtcclxuICAgIGNvbnN0IHN0eWxlID0gdGhpcy5kYXRhLmxheWVyLm9sLmdldFN0eWxlKCk7XHJcbiAgICByZXR1cm4gc3R5bGUgaW5zdGFuY2VvZiBGdW5jdGlvbiA/IHVuZGVmaW5lZCA6IChzdHlsZSBhcyBvbFN0eWxlKS5jbG9uZSgpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U3R5bGVNb2RhbExheWVyQ29tcG9uZW50PixcclxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlcixcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogTGF5ZXJNYXREaWFsb2dEYXRhKSB7XHJcbiAgICAgIHRoaXMuYnVpbGRGb3JtKCk7XHJcbiAgICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5saW5lc3RyaW5nT25seSA9IHRydWU7XHJcbiAgICBmb3IgKGNvbnN0IGZlYXR1cmUgb2YgdGhpcy5kYXRhLmxheWVyLm9sLmdldFNvdXJjZSgpLmdldEZlYXR1cmVzKCkpIHtcclxuICAgICAgaWYgKGZlYXR1cmUuZ2V0R2VvbWV0cnkoKS5nZXRUeXBlKCkgIT09ICdMaW5lU3RyaW5nJykge1xyXG4gICAgICAgIHRoaXMubGluZXN0cmluZ09ubHkgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5idWlsZFN0eWxlRGF0YSgpO1xyXG5cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XHJcbiAgICAgIGZpbGw6IFsnJ10sXHJcbiAgICAgIHN0cm9rZTogWycnXVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGJ1aWxkU3R5bGVEYXRhKCkge1xyXG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YSA9IHtcclxuICAgICAgZmlsbENvbG9yOiB0aGlzLmdldExheWVyRmlsbENvbG9yKCksXHJcbiAgICAgIHN0cm9rZUNvbG9yOiB0aGlzLmdldExheWVyU3Ryb2tlQ29sb3IoKVxyXG4gICAgfTtcclxuICAgIHRoaXMuaW5pdGlhbFZhbHVlcyA9e1xyXG4gICAgICBmaWxsQ29sb3I6IHRoaXMuZ2V0TGF5ZXJGaWxsQ29sb3IoKSxcclxuICAgICAgc3Ryb2tlQ29sb3I6IHRoaXMuZ2V0TGF5ZXJTdHJva2VDb2xvcigpXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgZ2V0TGF5ZXJGaWxsQ29sb3IoKSB7XHJcbiAgICBsZXQgZmlsbENvbG9yID0gdGhpcy5kZWZhdWx0VmFsdWVzLmZpbGxDb2xvcjtcclxuICAgIGNvbnN0IHN0eWxlID0gdGhpcy5sYXllck9sU3R5bGU7XHJcbiAgICBpZiAoc3R5bGU/LmdldEZpbGwoKT8uZ2V0Q29sb3IoKSkge1xyXG4gICAgICBjb25zdCBhcnJheUNvbG9yID0gc3R5bGUuZ2V0RmlsbCgpLmdldENvbG9yKCk7XHJcbiAgICAgIGZpbGxDb2xvciA9IGByZ2JhKCR7YXJyYXlDb2xvclswXX0sJHthcnJheUNvbG9yWzFdfSwke2FycmF5Q29sb3JbMl19LCR7YXJyYXlDb2xvclszXXx8IDAuNH0pYDtcclxuICAgIH1cclxuICAgIHJldHVybiBmaWxsQ29sb3I7XHJcbiAgfVxyXG5cclxuICBnZXRMYXllclN0cm9rZUNvbG9yKCkge1xyXG4gICAgbGV0IHN0cm9rZUNvbG9yID0gdGhpcy5kZWZhdWx0VmFsdWVzLnN0cm9rZUNvbG9yO1xyXG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmxheWVyT2xTdHlsZTtcclxuICAgIGlmIChzdHlsZT8uZ2V0U3Ryb2tlKCk/LmdldENvbG9yKCkpIHtcclxuICAgICAgY29uc3QgYXJyYXlDb2xvciA9IHN0eWxlLmdldFN0cm9rZSgpLmdldENvbG9yKCk7XHJcbiAgICAgIHN0cm9rZUNvbG9yID0gYHJnYmEoJHthcnJheUNvbG9yWzBdfSwke2FycmF5Q29sb3JbMV19LCR7YXJyYXlDb2xvclsyXX0sJHthcnJheUNvbG9yWzNdfHwgMX0pYDtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHJva2VDb2xvcjtcclxuICB9XHJcblxyXG4gIHNldExheWVyRmlsbENvbG9yKGV2ZW50KSB7XHJcbiAgICBjb25zdCBjQUEgPSBDb2xvckFzQXJyYXkoZXZlbnQpO1xyXG4gICAgY29uc3QgcyA9IHRoaXMubGF5ZXJPbFN0eWxlLmNsb25lKCk7XHJcbiAgICAocy5nZXRJbWFnZSgpIGFzIGFueSkuZ2V0RmlsbCgpLnNldENvbG9yKGNBQSk7XHJcbiAgICBzLmdldEZpbGwoKS5zZXRDb2xvcihjQUEpO1xyXG4gICAgdGhpcy5kYXRhLmxheWVyLm9sLnNldFN0eWxlKHMpO1xyXG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5maWxsQ29sb3IgPSBldmVudDtcclxuICB9XHJcblxyXG4gIHNldExheWVyU3Ryb2tlQ29sb3IoZXZlbnQpIHtcclxuICAgIGNvbnN0IGNBQSA9IENvbG9yQXNBcnJheShldmVudCk7XHJcbiAgICBjb25zdCBzID0gdGhpcy5sYXllck9sU3R5bGUuY2xvbmUoKTtcclxuICAgIChzLmdldEltYWdlKCkgYXMgYW55KS5nZXRTdHJva2UoKS5zZXRDb2xvcihjQUEpO1xyXG4gICAgcy5nZXRTdHJva2UoKS5zZXRDb2xvcihjQUEpO1xyXG4gICAgdGhpcy5kYXRhLmxheWVyLm9sLnNldFN0eWxlKHMpO1xyXG4gICAgdGhpcy5zdHlsZU1vZGFsRGF0YS5zdHJva2VDb2xvciA9IGV2ZW50O1xyXG4gIH1cclxuXHJcbiAgY2FuY2VsKCkge1xyXG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcclxuICAgIHRoaXMuc2V0TGF5ZXJGaWxsQ29sb3IodGhpcy5pbml0aWFsVmFsdWVzLmZpbGxDb2xvcik7XHJcbiAgICB0aGlzLnNldExheWVyU3Ryb2tlQ29sb3IodGhpcy5pbml0aWFsVmFsdWVzLnN0cm9rZUNvbG9yKTtcclxuICB9XHJcblxyXG4gIGNvbmZpcm0oKSB7XHJcbiAgICB0aGlzLmNvbmZpcm1GbGFnID0gdHJ1ZTtcclxuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKHRoaXMuc3R5bGVNb2RhbERhdGEpO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cclxuICA8aDIgbWF0LWRpYWxvZy10aXRsZSBjbGFzcz1cIm1hdC10eXBvZ3JhcGh5XCI+e3sgJ2lnby5nZW8uc3R5bGUuc3R5bGVNb2RhbCcgfCB0cmFuc2xhdGUgfX08L2gyPlxyXG4gIDxkaXZcclxuICBjbGFzcz1cImVkaXRpb24tZHJhd2luZyBtYXQtdHlwb2dyYXBoeVwiPlxyXG4gIDwhLS0gW2hpZGRlbl09XCJkYXRhLmZlYXR1cmVzLmxlbmd0aCA9PT0gMFwiPiAtLT5cclxuICAgIDxmb3JtXHJcbiAgICAgIGNsYXNzPVwiaWdvLWZvcm1cIlxyXG4gICAgICBbZm9ybUdyb3VwXT1cImZvcm1cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImZpbGwtY29sb3ItcGlja2VyIG1hdC10eXBvZ3JhcGh5XCIgKm5nSWY9XCJsaW5lc3RyaW5nT25seSAhPT0gdHJ1ZVwiPlxyXG4gICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwic3Ryb2tlLXBhbGV0dGUtaWNvblwiIHN2Z0ljb249XCJzcXVhcmVcIj48L21hdC1pY29uPlxyXG4gICAgICAgICAge3sgJ2lnby5nZW8uc3R5bGUuZmlsbCcgfCB0cmFuc2xhdGUgfX1cclxuICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZFxyXG4gICAgICAgICAgY2xhc3M9XCJmaWxsLWZpZWxkXCJcclxuICAgICAgICAgIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCJcclxuICAgICAgICAgIGZsb2F0TGFiZWw9XCJhbHdheXNcIlxyXG4gICAgICAgICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcclxuICAgICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxyXG4gICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uc3R5bGUuY29sb3JQaWNrZXInIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsPnt7IGdldExheWVyRmlsbENvbG9yKCkgfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAjZmlsbENvbG9ySW5wdXRcclxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwiZmlsbFwiXHJcbiAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRdPVwiZ2V0TGF5ZXJGaWxsQ29sb3IoKVwiXHJcbiAgICAgICAgICAgIFtyZWFkb25seV09XCJ0cnVlXCJcclxuICAgICAgICAgICAgW2NvbG9yUGlja2VyXT1cImdldExheWVyRmlsbENvbG9yKClcIlxyXG4gICAgICAgICAgICBbY3BXaWR0aF09XCInMjAwcHgnXCJcclxuICAgICAgICAgICAgW2NwT3V0cHV0Rm9ybWF0XT1cIidyZ2JhJ1wiXHJcbiAgICAgICAgICAgIFtjcFBvc2l0aW9uXT1cIidib3R0b20nXCJcclxuICAgICAgICAgICAgW2NwUG9zaXRpb25PZmZzZXRdPVwiJy03NSUnXCJcclxuICAgICAgICAgICAgW2NwQ2FuY2VsQnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbY3BDYW5jZWxCdXR0b25UZXh0XT1cIidpZ28uZ2VvLnN0eWxlLmNhbmNlbCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBbY3BPS0J1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgKGNvbG9yUGlja2VyQ2hhbmdlKT1cInNldExheWVyRmlsbENvbG9yKCRldmVudClcIj5cclxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UtY29sb3ItcGlja2VyIG1hdC10eXBvZ3JhcGh5XCI+XHJcbiAgICAgICAgPHNwYW4+XHJcbiAgICAgICAgICA8bWF0LWljb25cclxuICAgICAgICAgICAgY2xhc3M9XCJzdHJva2UtcGFsZXR0ZS1pY29uXCJcclxuICAgICAgICAgICAgc3ZnSWNvbj1cInNxdWFyZS1vdXRsaW5lXCI+XHJcbiAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgICAge3snaWdvLmdlby5zdHlsZS5zdHJva2UnIHwgdHJhbnNsYXRlfX1cclxuICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZFxyXG4gICAgICAgICAgY2xhc3M9XCJzdHJva2UtZmllbGRcIlxyXG4gICAgICAgICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxyXG4gICAgICAgICAgZmxvYXRMYWJlbD1cImFsd2F5c1wiXHJcbiAgICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxyXG4gICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgICAgICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5zdHlsZS5jb2xvclBpY2tlcicgfCB0cmFuc2xhdGVcIj5cclxuICAgICAgICAgIDxtYXQtbGFiZWw+e3sgZ2V0TGF5ZXJTdHJva2VDb2xvcigpIH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgI3N0cm9rZUNvbG9ySW5wdXRcclxuICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwic3Ryb2tlXCJcclxuICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICBbc3R5bGUuYmFja2dyb3VuZF09XCJnZXRMYXllclN0cm9rZUNvbG9yKClcIlxyXG4gICAgICAgICAgICBbcmVhZG9ubHldPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgIFtjb2xvclBpY2tlcl09XCJnZXRMYXllclN0cm9rZUNvbG9yKClcIlxyXG4gICAgICAgICAgICBbY3BXaWR0aF09XCInMjAwcHgnXCJcclxuICAgICAgICAgICAgW2NwUG9zaXRpb25dPVwiJ2JvdHRvbSdcIlxyXG4gICAgICAgICAgICBbY3BQb3NpdGlvbk9mZnNldF09XCInLTc1JSdcIlxyXG4gICAgICAgICAgICBbY3BPdXRwdXRGb3JtYXRdPVwiJ3JnYmEnXCJcclxuICAgICAgICAgICAgW2NwQ2FuY2VsQnV0dG9uXT1cInRydWVcIlxyXG4gICAgICAgICAgICBbY3BDYW5jZWxCdXR0b25UZXh0XT1cIidpZ28uZ2VvLnN0eWxlLmNhbmNlbCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBbY3BPS0J1dHRvbl09XCJ0cnVlXCJcclxuICAgICAgICAgICAgKGNvbG9yUGlja2VyQ2hhbmdlKT1cInNldExheWVyU3Ryb2tlQ29sb3IoJGV2ZW50KVwiPlxyXG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9mb3JtPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnM+XHJcbiAgPGJ1dHRvbiBcclxuICAgIG1hdC1yYWlzZWQtYnV0dG9uIFxyXG4gICAgKGNsaWNrKT1cImNhbmNlbCgpXCI+e3snaWdvLmdlby5zdHlsZS5jYW5jZWwnIHwgdHJhbnNsYXRlfX1cclxuICA8L2J1dHRvbj5cclxuICA8YnV0dG9uIFxyXG4gICAgbWF0LXJhaXNlZC1idXR0b24gXHJcbiAgICBjb2xvcj1cInByaW1hcnlcIiBcclxuICAgIChjbGljayk9XCJjb25maXJtKClcIj5PS1xyXG4gIDwvYnV0dG9uPlxyXG48L2Rpdj5cclxuIl19
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXIvc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFHekUsT0FBTyxFQUFFLE9BQU8sSUFBSSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7Ozs7Ozs7O0lDSTdDLCtCQUE4RSxXQUFBO0lBRTFFLCtCQUFrRTtJQUNsRSxZQUNGOztJQUFBLGlCQUFPO0lBRVAsMENBTXlEOztJQUN2RCxpQ0FBVztJQUFBLFlBQXlCO0lBQUEsaUJBQVk7SUFDaEQscUNBZWtEO0lBQWhELGtNQUFxQixlQUFBLGdDQUF5QixDQUFBLElBQUM7O0lBZmpELGlCQWVrRCxFQUFBLEVBQUE7OztJQTFCbEQsZUFDRjtJQURFLDRFQUNGO0lBUUUsZUFBc0Q7SUFBdEQsK0VBQXNEO0lBQzNDLGVBQXlCO0lBQXpCLGdEQUF5QjtJQU1sQyxlQUF3QztJQUF4Qyx3REFBd0M7SUFDeEMsK0JBQWlCLDJDQUFBLG9CQUFBLDBCQUFBLHdCQUFBLDRCQUFBLHdCQUFBLHNFQUFBLG9CQUFBOztBRGY3QixNQUFNLE9BQU8sd0JBQXdCO0lBb0JuQyxZQUNTLFNBQWlELEVBQ2hELFdBQStCLEVBQ1AsSUFBd0I7UUFGakQsY0FBUyxHQUFULFNBQVMsQ0FBd0M7UUFD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Y0FMcEMsU0FBUzsyQkFDRSx1QkFBdUI7O3NCQTJCOUIsTUFBTTt1QkFBQyxlQUFlO3dCQXRCaEIsV0FBVztrQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwLCBVbnR5cGVkRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IGFzQXJyYXkgYXMgQ29sb3JBc0FycmF5IH0gZnJvbSAnb2wvY29sb3InO1xuaW1wb3J0IG9sU3R5bGUgZnJvbSAnb2wvc3R5bGUvU3R5bGUnO1xuaW1wb3J0IHsgTGF5ZXJNYXREaWFsb2dEYXRhLCBTdHlsZU1vZGFsRGF0YSB9IGZyb20gJy4uL3NoYXJlZC9zdHlsZS1tb2RhbC5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tc3R5bGUtbW9kYWwtbGF5ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc3R5bGUtbW9kYWwtbGF5ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdHlsZS1tb2RhbC1sYXllci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFN0eWxlTW9kYWxMYXllckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGNvbmZpcm1GbGFnOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG5cbiAgcHVibGljIHN0eWxlTW9kYWxEYXRhOiBTdHlsZU1vZGFsRGF0YTtcbiAgcHVibGljIGxpbmVzdHJpbmdPbmx5OiBib29sZWFuO1xuXG4gIHByaXZhdGUgaW5pdGlhbFZhbHVlczogU3R5bGVNb2RhbERhdGE7XG5cbiAgcHJpdmF0ZSBkZWZhdWx0VmFsdWVzOiBTdHlsZU1vZGFsRGF0YSA9IHtcbiAgICBmaWxsQ29sb3I6ICdyZ2JhKDI1NSwyNTUsMjU1LDAuNCknLFxuICAgIHN0cm9rZUNvbG9yOiAncmdiYSgxNDMsNyw3LDEpJ1xuICB9O1xuXG4gIGdldCBsYXllck9sU3R5bGUoKTogb2xTdHlsZSB7XG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmRhdGEubGF5ZXIub2wuZ2V0U3R5bGUoKTtcbiAgICByZXR1cm4gc3R5bGUgaW5zdGFuY2VvZiBGdW5jdGlvbiA/IHVuZGVmaW5lZCA6IChzdHlsZSBhcyBvbFN0eWxlKS5jbG9uZSgpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFN0eWxlTW9kYWxMYXllckNvbXBvbmVudD4sXG4gICAgcHJpdmF0ZSBmb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyLFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogTGF5ZXJNYXREaWFsb2dEYXRhKSB7XG4gICAgICB0aGlzLmJ1aWxkRm9ybSgpO1xuICAgIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmxpbmVzdHJpbmdPbmx5ID0gdHJ1ZTtcbiAgICBmb3IgKGNvbnN0IGZlYXR1cmUgb2YgdGhpcy5kYXRhLmxheWVyLm9sLmdldFNvdXJjZSgpLmdldEZlYXR1cmVzKCkpIHtcbiAgICAgIGlmIChmZWF0dXJlLmdldEdlb21ldHJ5KCkuZ2V0VHlwZSgpICE9PSAnTGluZVN0cmluZycpIHtcbiAgICAgICAgdGhpcy5saW5lc3RyaW5nT25seSA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmJ1aWxkU3R5bGVEYXRhKCk7XG5cbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRGb3JtKCkge1xuICAgIHRoaXMuZm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgZmlsbDogWycnXSxcbiAgICAgIHN0cm9rZTogWycnXVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZFN0eWxlRGF0YSgpIHtcbiAgICB0aGlzLnN0eWxlTW9kYWxEYXRhID0ge1xuICAgICAgZmlsbENvbG9yOiB0aGlzLmdldExheWVyRmlsbENvbG9yKCksXG4gICAgICBzdHJva2VDb2xvcjogdGhpcy5nZXRMYXllclN0cm9rZUNvbG9yKClcbiAgICB9O1xuICAgIHRoaXMuaW5pdGlhbFZhbHVlcyA9e1xuICAgICAgZmlsbENvbG9yOiB0aGlzLmdldExheWVyRmlsbENvbG9yKCksXG4gICAgICBzdHJva2VDb2xvcjogdGhpcy5nZXRMYXllclN0cm9rZUNvbG9yKClcbiAgICB9O1xuICB9XG5cbiAgZ2V0TGF5ZXJGaWxsQ29sb3IoKSB7XG4gICAgbGV0IGZpbGxDb2xvciA9IHRoaXMuZGVmYXVsdFZhbHVlcy5maWxsQ29sb3I7XG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmxheWVyT2xTdHlsZTtcbiAgICBpZiAoc3R5bGU/LmdldEZpbGwoKT8uZ2V0Q29sb3IoKSkge1xuICAgICAgY29uc3QgYXJyYXlDb2xvciA9IHN0eWxlLmdldEZpbGwoKS5nZXRDb2xvcigpO1xuICAgICAgZmlsbENvbG9yID0gYHJnYmEoJHthcnJheUNvbG9yWzBdfSwke2FycmF5Q29sb3JbMV19LCR7YXJyYXlDb2xvclsyXX0sJHthcnJheUNvbG9yWzNdfHwgMC40fSlgO1xuICAgIH1cbiAgICByZXR1cm4gZmlsbENvbG9yO1xuICB9XG5cbiAgZ2V0TGF5ZXJTdHJva2VDb2xvcigpIHtcbiAgICBsZXQgc3Ryb2tlQ29sb3IgPSB0aGlzLmRlZmF1bHRWYWx1ZXMuc3Ryb2tlQ29sb3I7XG4gICAgY29uc3Qgc3R5bGUgPSB0aGlzLmxheWVyT2xTdHlsZTtcbiAgICBpZiAoc3R5bGU/LmdldFN0cm9rZSgpPy5nZXRDb2xvcigpKSB7XG4gICAgICBjb25zdCBhcnJheUNvbG9yID0gc3R5bGUuZ2V0U3Ryb2tlKCkuZ2V0Q29sb3IoKTtcbiAgICAgIHN0cm9rZUNvbG9yID0gYHJnYmEoJHthcnJheUNvbG9yWzBdfSwke2FycmF5Q29sb3JbMV19LCR7YXJyYXlDb2xvclsyXX0sJHthcnJheUNvbG9yWzNdfHwgMX0pYDtcbiAgICB9XG4gICAgcmV0dXJuIHN0cm9rZUNvbG9yO1xuICB9XG5cbiAgc2V0TGF5ZXJGaWxsQ29sb3IoZXZlbnQpIHtcbiAgICBjb25zdCBjQUEgPSBDb2xvckFzQXJyYXkoZXZlbnQpO1xuICAgIGNvbnN0IHMgPSB0aGlzLmxheWVyT2xTdHlsZS5jbG9uZSgpO1xuICAgIChzLmdldEltYWdlKCkgYXMgYW55KS5nZXRGaWxsKCkuc2V0Q29sb3IoY0FBKTtcbiAgICBzLmdldEZpbGwoKS5zZXRDb2xvcihjQUEpO1xuICAgIHRoaXMuZGF0YS5sYXllci5vbC5zZXRTdHlsZShzKTtcbiAgICB0aGlzLnN0eWxlTW9kYWxEYXRhLmZpbGxDb2xvciA9IGV2ZW50O1xuICB9XG5cbiAgc2V0TGF5ZXJTdHJva2VDb2xvcihldmVudCkge1xuICAgIGNvbnN0IGNBQSA9IENvbG9yQXNBcnJheShldmVudCk7XG4gICAgY29uc3QgcyA9IHRoaXMubGF5ZXJPbFN0eWxlLmNsb25lKCk7XG4gICAgKHMuZ2V0SW1hZ2UoKSBhcyBhbnkpLmdldFN0cm9rZSgpLnNldENvbG9yKGNBQSk7XG4gICAgcy5nZXRTdHJva2UoKS5zZXRDb2xvcihjQUEpO1xuICAgIHRoaXMuZGF0YS5sYXllci5vbC5zZXRTdHlsZShzKTtcbiAgICB0aGlzLnN0eWxlTW9kYWxEYXRhLnN0cm9rZUNvbG9yID0gZXZlbnQ7XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgICB0aGlzLnNldExheWVyRmlsbENvbG9yKHRoaXMuaW5pdGlhbFZhbHVlcy5maWxsQ29sb3IpO1xuICAgIHRoaXMuc2V0TGF5ZXJTdHJva2VDb2xvcih0aGlzLmluaXRpYWxWYWx1ZXMuc3Ryb2tlQ29sb3IpO1xuICB9XG5cbiAgY29uZmlybSgpIHtcbiAgICB0aGlzLmNvbmZpcm1GbGFnID0gdHJ1ZTtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLnN0eWxlTW9kYWxEYXRhKTtcbiAgfVxufVxuIiwiPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XG4gIDxoMiBtYXQtZGlhbG9nLXRpdGxlIGNsYXNzPVwibWF0LXR5cG9ncmFwaHlcIj57eyAnaWdvLmdlby5zdHlsZS5zdHlsZU1vZGFsJyB8IHRyYW5zbGF0ZSB9fTwvaDI+XG4gIDxkaXZcbiAgY2xhc3M9XCJlZGl0aW9uLWRyYXdpbmcgbWF0LXR5cG9ncmFwaHlcIj5cbiAgPCEtLSBbaGlkZGVuXT1cImRhdGEuZmVhdHVyZXMubGVuZ3RoID09PSAwXCI+IC0tPlxuICAgIDxmb3JtXG4gICAgICBjbGFzcz1cImlnby1mb3JtXCJcbiAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZpbGwtY29sb3ItcGlja2VyIG1hdC10eXBvZ3JhcGh5XCIgKm5nSWY9XCJsaW5lc3RyaW5nT25seSAhPT0gdHJ1ZVwiPlxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJzdHJva2UtcGFsZXR0ZS1pY29uXCIgc3ZnSWNvbj1cInNxdWFyZVwiPjwvbWF0LWljb24+XG4gICAgICAgICAge3sgJ2lnby5nZW8uc3R5bGUuZmlsbCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZFxuICAgICAgICAgIGNsYXNzPVwiZmlsbC1maWVsZFwiXG4gICAgICAgICAgYXBwZWFyYW5jZT1cIm91dGxpbmVcIlxuICAgICAgICAgIGZsb2F0TGFiZWw9XCJhbHdheXNcIlxuICAgICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXG4gICAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uc3R5bGUuY29sb3JQaWNrZXInIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbD57eyBnZXRMYXllckZpbGxDb2xvcigpIH19PC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAjZmlsbENvbG9ySW5wdXRcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cImZpbGxcIlxuICAgICAgICAgICAgbWF0SW5wdXRcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIFtzdHlsZS5iYWNrZ3JvdW5kXT1cImdldExheWVyRmlsbENvbG9yKClcIlxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRydWVcIlxuICAgICAgICAgICAgW2NvbG9yUGlja2VyXT1cImdldExheWVyRmlsbENvbG9yKClcIlxuICAgICAgICAgICAgW2NwV2lkdGhdPVwiJzIwMHB4J1wiXG4gICAgICAgICAgICBbY3BPdXRwdXRGb3JtYXRdPVwiJ3JnYmEnXCJcbiAgICAgICAgICAgIFtjcFBvc2l0aW9uXT1cIidib3R0b20nXCJcbiAgICAgICAgICAgIFtjcFBvc2l0aW9uT2Zmc2V0XT1cIictNzUlJ1wiXG4gICAgICAgICAgICBbY3BDYW5jZWxCdXR0b25dPVwidHJ1ZVwiXG4gICAgICAgICAgICBbY3BDYW5jZWxCdXR0b25UZXh0XT1cIidpZ28uZ2VvLnN0eWxlLmNhbmNlbCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgW2NwT0tCdXR0b25dPVwidHJ1ZVwiXG4gICAgICAgICAgICAoY29sb3JQaWNrZXJDaGFuZ2UpPVwic2V0TGF5ZXJGaWxsQ29sb3IoJGV2ZW50KVwiPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UtY29sb3ItcGlja2VyIG1hdC10eXBvZ3JhcGh5XCI+XG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgY2xhc3M9XCJzdHJva2UtcGFsZXR0ZS1pY29uXCJcbiAgICAgICAgICAgIHN2Z0ljb249XCJzcXVhcmUtb3V0bGluZVwiPlxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAge3snaWdvLmdlby5zdHlsZS5zdHJva2UnIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgPC9zcGFuPlxuXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZFxuICAgICAgICAgIGNsYXNzPVwic3Ryb2tlLWZpZWxkXCJcbiAgICAgICAgICBhcHBlYXJhbmNlPVwib3V0bGluZVwiXG4gICAgICAgICAgZmxvYXRMYWJlbD1cImFsd2F5c1wiXG4gICAgICAgICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgICBbbWF0VG9vbHRpcF09XCInaWdvLmdlby5zdHlsZS5jb2xvclBpY2tlcicgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgICA8bWF0LWxhYmVsPnt7IGdldExheWVyU3Ryb2tlQ29sb3IoKSB9fTwvbWF0LWxhYmVsPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI3N0cm9rZUNvbG9ySW5wdXRcbiAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInN0cm9rZVwiXG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgW3N0eWxlLmJhY2tncm91bmRdPVwiZ2V0TGF5ZXJTdHJva2VDb2xvcigpXCJcbiAgICAgICAgICAgIFtyZWFkb25seV09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtjb2xvclBpY2tlcl09XCJnZXRMYXllclN0cm9rZUNvbG9yKClcIlxuICAgICAgICAgICAgW2NwV2lkdGhdPVwiJzIwMHB4J1wiXG4gICAgICAgICAgICBbY3BQb3NpdGlvbl09XCInYm90dG9tJ1wiXG4gICAgICAgICAgICBbY3BQb3NpdGlvbk9mZnNldF09XCInLTc1JSdcIlxuICAgICAgICAgICAgW2NwT3V0cHV0Rm9ybWF0XT1cIidyZ2JhJ1wiXG4gICAgICAgICAgICBbY3BDYW5jZWxCdXR0b25dPVwidHJ1ZVwiXG4gICAgICAgICAgICBbY3BDYW5jZWxCdXR0b25UZXh0XT1cIidpZ28uZ2VvLnN0eWxlLmNhbmNlbCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgW2NwT0tCdXR0b25dPVwidHJ1ZVwiXG4gICAgICAgICAgICAoY29sb3JQaWNrZXJDaGFuZ2UpPVwic2V0TGF5ZXJTdHJva2VDb2xvcigkZXZlbnQpXCI+XG4gICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Zvcm0+XG4gIDwvZGl2PlxuPC9kaXY+XG48ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucz5cbiAgPGJ1dHRvbiBcbiAgICBtYXQtcmFpc2VkLWJ1dHRvbiBcbiAgICAoY2xpY2spPVwiY2FuY2VsKClcIj57eydpZ28uZ2VvLnN0eWxlLmNhbmNlbCcgfCB0cmFuc2xhdGV9fVxuICA8L2J1dHRvbj5cbiAgPGJ1dHRvbiBcbiAgICBtYXQtcmFpc2VkLWJ1dHRvbiBcbiAgICBjb2xvcj1cInByaW1hcnlcIiBcbiAgICAoY2xpY2spPVwiY29uZmlybSgpXCI+T0tcbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './style-modal-layer-button.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zdHlsZS9zdHlsZS1tb2RhbC9sYXllci1idXR0b24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxzQ0FBc0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3R5bGUtbW9kYWwtbGF5ZXItYnV0dG9uLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -37,8 +37,8 @@ StyleModalLayerButtonComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ ty
|
|
|
37
37
|
} }, dependencies: [i2.MatIcon, i3.MatButton, i4.MatTooltip, i5.TranslatePipe], changeDetection: 0 });
|
|
38
38
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(StyleModalLayerButtonComponent, [{
|
|
39
39
|
type: Component,
|
|
40
|
-
args: [{ selector: 'igo-style-modal-layer-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button \
|
|
40
|
+
args: [{ selector: 'igo-style-modal-layer-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button \n mat-icon-button \n color=\"primary\" \n (click)=\"openStyleModalDialog()\"\n [matTooltip]=\"'igo.geo.style.styleModalTooltipLayer' | translate\">\n <mat-icon \n class=\"style-icon\"\n svgIcon=\"palette\">\n </mat-icon>\n</button>" }]
|
|
41
41
|
}], function () { return [{ type: i1.MatDialog }]; }, { layer: [{
|
|
42
42
|
type: Input
|
|
43
43
|
}] }); })();
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwtbGF5ZXItYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3N0eWxlL3N0eWxlLW1vZGFsL2xheWVyLWJ1dHRvbi9zdHlsZS1tb2RhbC1sYXllci1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvbGF5ZXItYnV0dG9uL3N0eWxlLW1vZGFsLWxheWVyLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUkxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7Ozs7OztBQVVoRixNQUFNLE9BQU8sOEJBQThCO0lBRXpDLFlBQW9CLE1BQWlCO1FBQWpCLFdBQU0sR0FBTixNQUFNLENBQVc7SUFBSSxDQUFDO0lBRTFDOztPQUVHO0lBQ0gsb0JBQW9CO1FBQ2xCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZCw2Q0FBNkM7WUFDN0MsTUFBTSxJQUFJLEdBQXVCLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUN2RCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsRUFBRTtnQkFDM0QsWUFBWSxFQUFFLEtBQUs7Z0JBQ25CLElBQUk7Z0JBQ0osU0FBUyxFQUFFLEtBQUs7YUFDakIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQzs7NEdBakJVLDhCQUE4QjtpRkFBOUIsOEJBQThCO1FDZDNDLGlDQUlzRTtRQURsRSwyR0FBUywwQkFBc0IsSUFBQzs7UUFFaEMsOEJBR1c7UUFDZixpQkFBUzs7UUFMTCx5RkFBaUU7O3VGRFV4RCw4QkFBOEI7Y0FOMUMsU0FBUzsyQkFDRSw4QkFBOEIsbUJBR3ZCLHVCQUF1QixDQUFDLE1BQU07NERBR3RDLEtBQUs7a0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgVmVjdG9yTGF5ZXIgfSBmcm9tICcuLi8uLi8uLi9sYXllci9zaGFyZWQvbGF5ZXJzL3ZlY3Rvci1sYXllcic7XG5cbmltcG9ydCB7IFN0eWxlTW9kYWxMYXllckNvbXBvbmVudCB9IGZyb20gJy4uL2xheWVyL3N0eWxlLW1vZGFsLWxheWVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMYXllck1hdERpYWxvZ0RhdGEgfSBmcm9tICcuLi9zaGFyZWQvc3R5bGUtbW9kYWwuaW50ZXJmYWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tc3R5bGUtbW9kYWwtbGF5ZXItYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0eWxlLW1vZGFsLWxheWVyLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLW1vZGFsLWxheWVyLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBTdHlsZU1vZGFsTGF5ZXJCdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSBsYXllcjogVmVjdG9yTGF5ZXI7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2cpIHsgfVxuXG4gIC8qKlxuICAgKiBPcGVuIHRoZSBzdHlsZSBtb2RhbCBkaWFsb2cgYm94XG4gICAqL1xuICBvcGVuU3R5bGVNb2RhbERpYWxvZygpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIC8vIG9wZW4gdGhlIGRpYWxvZyBib3ggdXNlZCB0byBzdHlsZSBmZWF0dXJlc1xuICAgICAgY29uc3QgZGF0YTogTGF5ZXJNYXREaWFsb2dEYXRhID0geyBsYXllcjogdGhpcy5sYXllciB9O1xuICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihTdHlsZU1vZGFsTGF5ZXJDb21wb25lbnQsIHtcbiAgICAgICAgZGlzYWJsZUNsb3NlOiBmYWxzZSxcbiAgICAgICAgZGF0YSxcbiAgICAgICAgYXV0b0ZvY3VzOiBmYWxzZVxuICAgICAgfSk7XG4gICAgfSwgMjUwKTtcbiAgfVxuXG59XG4iLCI8YnV0dG9uIFxuICAgIG1hdC1pY29uLWJ1dHRvbiBcbiAgICBjb2xvcj1cInByaW1hcnlcIiBcbiAgICAoY2xpY2spPVwib3BlblN0eWxlTW9kYWxEaWFsb2coKVwiXG4gICAgW21hdFRvb2x0aXBdPVwiJ2lnby5nZW8uc3R5bGUuc3R5bGVNb2RhbFRvb2x0aXBMYXllcicgfCB0cmFuc2xhdGVcIj5cbiAgICA8bWF0LWljb24gXG4gICAgICAgIGNsYXNzPVwic3R5bGUtaWNvblwiXG4gICAgICAgIHN2Z0ljb249XCJwYWxldHRlXCI+XG4gICAgPC9tYXQtaWNvbj5cbjwvYnV0dG9uPiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './style-modal.interface';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zdHlsZS9zdHlsZS1tb2RhbC9zaGFyZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3R5bGUtbW9kYWwuaW50ZXJmYWNlJztcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUtbW9kYWwuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtbW9kYWwvc2hhcmVkL3N0eWxlLW1vZGFsLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZSB9IGZyb20gXCIuLi8uLi8uLi9mZWF0dXJlL3NoYXJlZC9mZWF0dXJlLmludGVyZmFjZXNcIjtcbmltcG9ydCB7IFZlY3RvckxheWVyIH0gZnJvbSBcIi4uLy4uLy4uL2xheWVyL3NoYXJlZC9sYXllcnMvdmVjdG9yLWxheWVyXCI7XG5pbXBvcnQgeyBGb250VHlwZSB9IGZyb20gXCIuLi8uLi9zaGFyZWQvZm9udC5lbnVtXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3R5bGVNb2RhbERhdGEge1xuICAgIGZpbGxDb2xvcj86IHN0cmluZztcbiAgICBzdHJva2VDb2xvcj86IHN0cmluZztcbiAgICBmb250U2l6ZT86IHN0cmluZztcbiAgICBmb250U3R5bGU/OiBGb250VHlwZTtcbiAgICBvZmZzZXRYPzogbnVtYmVyO1xuICAgIG9mZnNldFk/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGF5ZXJNYXREaWFsb2dEYXRhIHtcbiAgICBsYXllcjogVmVjdG9yTGF5ZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEcmF3aW5nTWF0RGlhbG9nRGF0YSB7XG4gICAgZmVhdHVyZXM6IEZlYXR1cmVbXVxufVxuIl19
|
|
@@ -184,4 +184,4 @@ DrawStyleService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DrawSty
|
|
|
184
184
|
providedIn: 'root'
|
|
185
185
|
}]
|
|
186
186
|
}], function () { return []; }, null); })();
|
|
187
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhdy1zdHlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtc2VydmljZS9kcmF3LXN0eWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEtBQUssT0FBTyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFrQixTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU0vQyxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCO1FBVlEsY0FBUyxHQUFHLHVCQUF1QixDQUFDO1FBQ3BDLGdCQUFXLEdBQUcsaUJBQWlCLENBQUM7UUFDaEMsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFFdEIsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4QixjQUFTLEdBQVcsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5QyxZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFlBQU8sR0FBVyxDQUFDLENBQUM7SUFFYixDQUFDO0lBRWhCLFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYyxDQUFDLFdBQW1CO1FBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxjQUFjO1FB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Q0FBQyxJQUFJLENBQUM7b0JBQ3JCLEtBQUssRUFBRSxTQUFTO2lCQUNqQixDQUFDO2dCQUVGLEtBQUssRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUM7b0JBQ3hCLE1BQU0sRUFBRSxDQUFDO29CQUNULE1BQU0sRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUM7d0JBQ3pCLEtBQUssRUFBRSxXQUFXO3dCQUNsQixLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVc7cUJBQ3hCLENBQUM7b0JBQ0YsSUFBSSxFQUFFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQzt3QkFDckIsS0FBSyxFQUFFLFNBQVM7cUJBQ2pCLENBQUM7aUJBQ0gsQ0FBQzthQUNILENBQUMsQ0FBQztZQUNILE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDOztnRkFwTlUsZ0JBQWdCO3NFQUFoQixnQkFBZ0IsV0FBaEIsZ0JBQWdCLG1CQUZmLE1BQU07dUZBRVAsZ0JBQWdCO2NBSDVCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCAqIGFzIE9sU3R5bGUgZnJvbSAnb2wvc3R5bGUnO1xyXG5pbXBvcnQgT2xQb2ludCBmcm9tICdvbC9nZW9tL1BvaW50JztcclxuaW1wb3J0IHsgUHJvamVjdGlvbkxpa2UsIHRyYW5zZm9ybSB9IGZyb20gJ29sL3Byb2onO1xyXG5pbXBvcnQgeyBGb250VHlwZSB9IGZyb20gJy4uL3NoYXJlZC9mb250LmVudW0nO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIERyYXdTdHlsZVNlcnZpY2Uge1xyXG4gIHByaXZhdGUgZmlsbENvbG9yID0gJ3JnYmEoMjU1LDI1NSwyNTUsMC40KSc7XHJcbiAgcHJpdmF0ZSBzdHJva2VDb2xvciA9ICdyZ2JhKDE0Myw3LDcsMSknO1xyXG4gIHByaXZhdGUgc3Ryb2tlV2lkdGg6IG51bWJlciA9IDE7XHJcbiAgcHJpdmF0ZSBsYWJlbHNBcmVTaG93biA9IHRydWU7XHJcbiAgcHJpdmF0ZSBpY29uOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBmb250U2l6ZTogc3RyaW5nID0gJzE1JztcclxuICBwcml2YXRlIGZvbnRTdHlsZTogc3RyaW5nID0gRm9udFR5cGUuQXJpYWwudG9TdHJpbmcoKTtcclxuICBwcml2YXRlIG9mZnNldFg6IG51bWJlciA9IDA7XHJcbiAgcHJpdmF0ZSBvZmZzZXRZOiBudW1iZXIgPSAwO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIGdldEZpbGxDb2xvcigpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMuZmlsbENvbG9yO1xyXG4gIH1cclxuXHJcbiAgc2V0RmlsbENvbG9yKGZpbGxDb2xvcjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmZpbGxDb2xvciA9IGZpbGxDb2xvcjtcclxuICB9XHJcblxyXG4gIGdldFN0cm9rZUNvbG9yKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHJva2VDb2xvcjtcclxuICB9XHJcblxyXG4gIHNldFN0cm9rZUNvbG9yKHN0cm9rZUNvbG9yOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc3Ryb2tlQ29sb3IgPSBzdHJva2VDb2xvcjtcclxuICB9XHJcblxyXG4gIGdldFN0cm9rZVdpZHRoKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5zdHJva2VXaWR0aDtcclxuICB9XHJcblxyXG4gIGdldExhYmVsc0FyZVNob3duKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubGFiZWxzQXJlU2hvd247XHJcbiAgfVxyXG5cclxuICB0b2dnbGVMYWJlbHNBcmVTaG93bigpIHtcclxuICAgIHRoaXMubGFiZWxzQXJlU2hvd24gPSAhdGhpcy5sYWJlbHNBcmVTaG93bjtcclxuICB9XHJcblxyXG4gIHNldEljb24oaWNvbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmljb24gPSBpY29uO1xyXG4gIH1cclxuXHJcbiAgZ2V0SWNvbigpIHtcclxuICAgIHJldHVybiB0aGlzLmljb247XHJcbiAgfVxyXG5cclxuICAvLyBUbyBlZGl0IHRoZSBsYWJlbCBvZiBkcmF3aW5nXHJcbiAgZ2V0Rm9udFNpemUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5mb250U2l6ZTtcclxuICB9XHJcblxyXG4gIHNldEZvbnRTaXplKGZvbnRTaXplOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuZm9udFNpemUgPSBmb250U2l6ZTtcclxuICB9XHJcblxyXG4gIGdldEZvbnRTdHlsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvbnRTdHlsZTtcclxuICB9XHJcblxyXG4gIHNldEZvbnRTdHlsZShmb250U3R5bGU6IHN0cmluZykge1xyXG4gICAgdGhpcy5mb250U3R5bGUgPSBmb250U3R5bGU7XHJcbiAgfVxyXG5cclxuICBnZXRPZmZzZXRYKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5vZmZzZXRYO1xyXG4gIH1cclxuXHJcbiAgc2V0T2Zmc2V0WChvZmZzZXRYOiBudW1iZXIpIHtcclxuICAgIHRoaXMub2Zmc2V0WCA9IG9mZnNldFg7XHJcbiAgfVxyXG5cclxuICBnZXRPZmZzZXRZKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5vZmZzZXRZO1xyXG4gIH1cclxuXHJcbiAgc2V0T2Zmc2V0WShvZmZzZXRZOiBudW1iZXIpIHtcclxuICAgIHRoaXMub2Zmc2V0WSA9IG9mZnNldFk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVJbmRpdmlkdWFsRWxlbWVudFN0eWxlKFxyXG4gICAgZmVhdHVyZSxcclxuICAgIHJlc29sdXRpb24sXHJcbiAgICBsYWJlbHNBcmVTaG93bjogYm9vbGVhbixcclxuICAgIGZvbnRTaXplQW5kU3R5bGU6IHN0cmluZyxcclxuICAgIGZpbGxDb2xvcjogc3RyaW5nLFxyXG4gICAgc3Ryb2tlQ29sb3I6IHN0cmluZyxcclxuICAgIG9mZnNldFg6IG51bWJlcixcclxuICAgIG9mZnNldFk6IG51bWJlcixcclxuICAgIHByb2o6IFByb2plY3Rpb25MaWtlLFxyXG4gICAgaWNvbj86IHN0cmluZ1xyXG4gICk6IE9sU3R5bGUuU3R5bGUge1xyXG4gICAgbGV0IHN0eWxlO1xyXG4gICAgbGV0IGxhYmVsc0FyZU9mZnNldDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgY29uc3QgZ2VvbSA9IGZlYXR1cmUuZ2V0R2VvbWV0cnkoKTtcclxuXHJcbiAgICBpZiAoZ2VvbSBpbnN0YW5jZW9mIE9sUG9pbnQpIHtcclxuICAgICAgbGFiZWxzQXJlT2Zmc2V0ID0gIWxhYmVsc0FyZU9mZnNldDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBpZiBmZWF0dXJlIGlzIGEgY2lyY2xlXHJcbiAgICBpZiAoZmVhdHVyZS5nZXQoJ3JhZCcpKSB7XHJcbiAgICAgIGNvbnN0IGNvb3JkaW5hdGVzID0gdHJhbnNmb3JtKGZlYXR1cmUuZ2V0R2VvbWV0cnkoKS5mbGF0Q29vcmRpbmF0ZXMsIHByb2osICdFUFNHOjQzMjYnKTtcclxuXHJcbiAgICAgIHN0eWxlID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xyXG4gICAgICAgIHRleHQ6IG5ldyBPbFN0eWxlLlRleHQoe1xyXG4gICAgICAgICAgdGV4dDogbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJycsXHJcbiAgICAgICAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XHJcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxyXG4gICAgICAgICAgICB3aWR0aDogMC43NVxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgY29sb3I6ICdibGFjaydcclxuICAgICAgICAgIH0pLFxyXG5cclxuICAgICAgICAgIGZvbnQ6IGZvbnRTaXplQW5kU3R5bGUsXHJcbiAgICAgICAgICBvdmVyZmxvdzogdHJ1ZSxcclxuICAgICAgICAgIG9mZnNldFg6IG9mZnNldFgsXHJcbiAgICAgICAgICBvZmZzZXRZOiBvZmZzZXRZXHJcbiAgICAgICAgfSksXHJcblxyXG4gICAgICAgIGltYWdlOiBuZXcgT2xTdHlsZS5DaXJjbGUoe1xyXG4gICAgICAgICAgcmFkaXVzOiBmZWF0dXJlLmdldCgncmFkJykgLyBNYXRoLmNvcygoTWF0aC5QSSAvIDE4MCkgKiBjb29yZGluYXRlc1sxXSkgLyByZXNvbHV0aW9uLFxyXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xyXG4gICAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IgPyBzdHJva2VDb2xvciA6IHRoaXMuc3Ryb2tlQ29sb3IsXHJcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLnN0cm9rZVdpZHRoXHJcbiAgICAgICAgICB9KSxcclxuICAgICAgICAgIGZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoe1xyXG4gICAgICAgICAgICBjb2xvcjogZmlsbENvbG9yXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gc3R5bGU7XHJcblxyXG4gICAgICAvLyBpZiBmZWF0dXJlIGlzIGFuIGljb25cclxuICAgIH0gZWxzZSBpZiAoaWNvbikge1xyXG4gICAgICB0aGlzLm9mZnNldFkgPSAtMjY7XHJcbiAgICAgIHN0eWxlID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xyXG4gICAgICAgIHRleHQ6IG5ldyBPbFN0eWxlLlRleHQoe1xyXG4gICAgICAgICAgdGV4dDogbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJycsXHJcbiAgICAgICAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XHJcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxyXG4gICAgICAgICAgICB3aWR0aDogMC43NVxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgY29sb3I6ICdibGFjaydcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgZm9udDogZm9udFNpemVBbmRTdHlsZSxcclxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlLFxyXG4gICAgICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcclxuICAgICAgICAgIG9mZnNldFk6IG9mZnNldFlcclxuICAgICAgICB9KSxcclxuXHJcbiAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xyXG4gICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yLFxyXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcclxuICAgICAgICB9KSxcclxuXHJcbiAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XHJcbiAgICAgICAgICBjb2xvcjogZmlsbENvbG9yXHJcbiAgICAgICAgfSksXHJcblxyXG4gICAgICAgIGltYWdlOiBuZXcgT2xTdHlsZS5JY29uKHtcclxuICAgICAgICAgIHNyYzogaWNvblxyXG4gICAgICAgIH0pXHJcbiAgICAgIH0pO1xyXG4gICAgICByZXR1cm4gc3R5bGU7XHJcblxyXG4gICAgICAvLyBpZiBmZWF0dXJlIGlzIGEgcG9pbnQsIGEgbGluZXN0cmluZyBvciBhIHBvbHlnb25cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMub2Zmc2V0WSA9IGxhYmVsc0FyZU9mZnNldCA/IC0xNSA6IDA7XHJcbiAgICAgIHN0eWxlID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xyXG4gICAgICAgIHRleHQ6IG5ldyBPbFN0eWxlLlRleHQoe1xyXG4gICAgICAgICAgdGV4dDogbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJycsXHJcbiAgICAgICAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XHJcbiAgICAgICAgICAgIGNvbG9yOiAnd2hpdGUnLFxyXG4gICAgICAgICAgICB3aWR0aDogMC43NVxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgY29sb3I6ICdibGFjaydcclxuICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgZm9udDogZm9udFNpemVBbmRTdHlsZSxcclxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlLFxyXG5cclxuICAgICAgICAgIG9mZnNldFg6IG9mZnNldFgsXHJcbiAgICAgICAgICBvZmZzZXRZOiBvZmZzZXRZXHJcbiAgICAgICAgfSksXHJcblxyXG4gICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcclxuICAgICAgICAgIGNvbG9yOiBzdHJva2VDb2xvcixcclxuICAgICAgICAgIHdpZHRoOiB0aGlzLnN0cm9rZVdpZHRoXHJcbiAgICAgICAgfSksXHJcblxyXG4gICAgICAgIGZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoe1xyXG4gICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxyXG4gICAgICAgIH0pLFxyXG5cclxuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcclxuICAgICAgICAgIHJhZGl1czogNSxcclxuICAgICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcclxuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yLFxyXG4gICAgICAgICAgICB3aWR0aDogdGhpcy5zdHJva2VXaWR0aFxyXG4gICAgICAgICAgfSksXHJcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9KVxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHN0eWxlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhdy1zdHlsZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvc3R5bGUvc3R5bGUtc2VydmljZS9kcmF3LXN0eWxlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEtBQUssT0FBTyxNQUFNLFVBQVUsQ0FBQztBQUNwQyxPQUFPLE9BQU8sTUFBTSxlQUFlLENBQUM7QUFDcEMsT0FBTyxFQUFrQixTQUFTLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU0vQyxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCO1FBVlEsY0FBUyxHQUFHLHVCQUF1QixDQUFDO1FBQ3BDLGdCQUFXLEdBQUcsaUJBQWlCLENBQUM7UUFDaEMsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFDeEIsbUJBQWMsR0FBRyxJQUFJLENBQUM7UUFFdEIsYUFBUSxHQUFXLElBQUksQ0FBQztRQUN4QixjQUFTLEdBQVcsUUFBUSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5QyxZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBQ3BCLFlBQU8sR0FBVyxDQUFDLENBQUM7SUFFYixDQUFDO0lBRWhCLFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQsY0FBYyxDQUFDLFdBQW1CO1FBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixJQUFJLENBQUMsY0FBYyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsT0FBTyxDQUFDLElBQVk7UUFDbEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELCtCQUErQjtJQUMvQixXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXLENBQUMsUUFBZ0I7UUFDMUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRUQsVUFBVSxDQUFDLE9BQWU7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7SUFDekIsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxPQUFlO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ3pCLENBQUM7SUFFRCw0QkFBNEIsQ0FDMUIsT0FBTyxFQUNQLFVBQVUsRUFDVixjQUF1QixFQUN2QixnQkFBd0IsRUFDeEIsU0FBaUIsRUFDakIsV0FBbUIsRUFDbkIsT0FBZSxFQUNmLE9BQWUsRUFDZixJQUFvQixFQUNwQixJQUFhO1FBRWIsSUFBSSxLQUFLLENBQUM7UUFDVixJQUFJLGVBQWUsR0FBWSxLQUFLLENBQUM7UUFDckMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRW5DLElBQUksSUFBSSxZQUFZLE9BQU8sRUFBRTtZQUMzQixlQUFlLEdBQUcsQ0FBQyxlQUFlLENBQUM7U0FDcEM7UUFFRCx5QkFBeUI7UUFDekIsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3RCLE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsZUFBZSxFQUFFLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztZQUV4RixLQUFLLEdBQUcsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDO2dCQUN4QixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO29CQUNyQixJQUFJLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUMvQyxNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDO3dCQUN6QixLQUFLLEVBQUUsT0FBTzt3QkFDZCxLQUFLLEVBQUUsSUFBSTtxQkFDWixDQUFDO29CQUNGLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7d0JBQ3JCLEtBQUssRUFBRSxPQUFPO3FCQUNmLENBQUM7b0JBRUYsSUFBSSxFQUFFLGdCQUFnQjtvQkFDdEIsUUFBUSxFQUFFLElBQUk7b0JBQ2QsT0FBTyxFQUFFLE9BQU87b0JBQ2hCLE9BQU8sRUFBRSxPQUFPO2lCQUNqQixDQUFDO2dCQUVGLEtBQUssRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUM7b0JBQ3hCLE1BQU0sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxHQUFHLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFVBQVU7b0JBQ3BGLE1BQU0sRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUM7d0JBQ3pCLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVc7d0JBQ25ELEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVztxQkFDeEIsQ0FBQztvQkFDRixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO3dCQUNyQixLQUFLLEVBQUUsU0FBUztxQkFDakIsQ0FBQztpQkFDSCxDQUFDO2FBQ0gsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxLQUFLLENBQUM7WUFFYix3QkFBd0I7U0FDekI7YUFBTSxJQUFJLElBQUksRUFBRTtZQUNmLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDbkIsS0FBSyxHQUFHLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDeEIsSUFBSSxFQUFFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQztvQkFDckIsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDL0MsTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQzt3QkFDekIsS0FBSyxFQUFFLE9BQU87d0JBQ2QsS0FBSyxFQUFFLElBQUk7cUJBQ1osQ0FBQztvQkFDRixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO3dCQUNyQixLQUFLLEVBQUUsT0FBTztxQkFDZixDQUFDO29CQUNGLElBQUksRUFBRSxnQkFBZ0I7b0JBQ3RCLFFBQVEsRUFBRSxJQUFJO29CQUNkLE9BQU8sRUFBRSxPQUFPO29CQUNoQixPQUFPLEVBQUUsT0FBTztpQkFDakIsQ0FBQztnQkFFRixNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDO29CQUN6QixLQUFLLEVBQUUsV0FBVztvQkFDbEIsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXO2lCQUN4QixDQUFDO2dCQUVGLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7b0JBQ3JCLEtBQUssRUFBRSxTQUFTO2lCQUNqQixDQUFDO2dCQUVGLEtBQUssRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7b0JBQ3RCLEdBQUcsRUFBRSxJQUFJO2lCQUNWLENBQUM7YUFDSCxDQUFDLENBQUM7WUFDSCxPQUFPLEtBQUssQ0FBQztZQUViLG1EQUFtRDtTQUNwRDthQUFNO1lBQ0wsSUFBSSxDQUFDLE9BQU8sR0FBRyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekMsS0FBSyxHQUFHLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDeEIsSUFBSSxFQUFFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQztvQkFDckIsSUFBSSxFQUFFLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDL0MsTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQzt3QkFDekIsS0FBSyxFQUFFLE9BQU87d0JBQ2QsS0FBSyxFQUFFLElBQUk7cUJBQ1osQ0FBQztvQkFDRixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO3dCQUNyQixLQUFLLEVBQUUsT0FBTztxQkFDZixDQUFDO29CQUNGLElBQUksRUFBRSxnQkFBZ0I7b0JBQ3RCLFFBQVEsRUFBRSxJQUFJO29CQUVkLE9BQU8sRUFBRSxPQUFPO29CQUNoQixPQUFPLEVBQUUsT0FBTztpQkFDakIsQ0FBQztnQkFFRixNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDO29CQUN6QixLQUFLLEVBQUUsV0FBVztvQkFDbEIsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXO2lCQUN4QixDQUFDO2dCQUVGLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7b0JBQ3JCLEtBQUssRUFBRSxTQUFTO2lCQUNqQixDQUFDO2dCQUVGLEtBQUssRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUM7b0JBQ3hCLE1BQU0sRUFBRSxDQUFDO29CQUNULE1BQU0sRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUM7d0JBQ3pCLEtBQUssRUFBRSxXQUFXO3dCQUNsQixLQUFLLEVBQUUsSUFBSSxDQUFDLFdBQVc7cUJBQ3hCLENBQUM7b0JBQ0YsSUFBSSxFQUFFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQzt3QkFDckIsS0FBSyxFQUFFLFNBQVM7cUJBQ2pCLENBQUM7aUJBQ0gsQ0FBQzthQUNILENBQUMsQ0FBQztZQUNILE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDOztnRkFwTlUsZ0JBQWdCO3NFQUFoQixnQkFBZ0IsV0FBaEIsZ0JBQWdCLG1CQUZmLE1BQU07dUZBRVAsZ0JBQWdCO2NBSDVCLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0ICogYXMgT2xTdHlsZSBmcm9tICdvbC9zdHlsZSc7XG5pbXBvcnQgT2xQb2ludCBmcm9tICdvbC9nZW9tL1BvaW50JztcbmltcG9ydCB7IFByb2plY3Rpb25MaWtlLCB0cmFuc2Zvcm0gfSBmcm9tICdvbC9wcm9qJztcbmltcG9ydCB7IEZvbnRUeXBlIH0gZnJvbSAnLi4vc2hhcmVkL2ZvbnQuZW51bSc7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRHJhd1N0eWxlU2VydmljZSB7XG4gIHByaXZhdGUgZmlsbENvbG9yID0gJ3JnYmEoMjU1LDI1NSwyNTUsMC40KSc7XG4gIHByaXZhdGUgc3Ryb2tlQ29sb3IgPSAncmdiYSgxNDMsNyw3LDEpJztcbiAgcHJpdmF0ZSBzdHJva2VXaWR0aDogbnVtYmVyID0gMTtcbiAgcHJpdmF0ZSBsYWJlbHNBcmVTaG93biA9IHRydWU7XG4gIHByaXZhdGUgaWNvbjogc3RyaW5nO1xuICBwcml2YXRlIGZvbnRTaXplOiBzdHJpbmcgPSAnMTUnO1xuICBwcml2YXRlIGZvbnRTdHlsZTogc3RyaW5nID0gRm9udFR5cGUuQXJpYWwudG9TdHJpbmcoKTtcbiAgcHJpdmF0ZSBvZmZzZXRYOiBudW1iZXIgPSAwO1xuICBwcml2YXRlIG9mZnNldFk6IG51bWJlciA9IDA7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIGdldEZpbGxDb2xvcigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZpbGxDb2xvcjtcbiAgfVxuXG4gIHNldEZpbGxDb2xvcihmaWxsQ29sb3I6IHN0cmluZykge1xuICAgIHRoaXMuZmlsbENvbG9yID0gZmlsbENvbG9yO1xuICB9XG5cbiAgZ2V0U3Ryb2tlQ29sb3IoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5zdHJva2VDb2xvcjtcbiAgfVxuXG4gIHNldFN0cm9rZUNvbG9yKHN0cm9rZUNvbG9yOiBzdHJpbmcpIHtcbiAgICB0aGlzLnN0cm9rZUNvbG9yID0gc3Ryb2tlQ29sb3I7XG4gIH1cblxuICBnZXRTdHJva2VXaWR0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0cm9rZVdpZHRoO1xuICB9XG5cbiAgZ2V0TGFiZWxzQXJlU2hvd24oKSB7XG4gICAgcmV0dXJuIHRoaXMubGFiZWxzQXJlU2hvd247XG4gIH1cblxuICB0b2dnbGVMYWJlbHNBcmVTaG93bigpIHtcbiAgICB0aGlzLmxhYmVsc0FyZVNob3duID0gIXRoaXMubGFiZWxzQXJlU2hvd247XG4gIH1cblxuICBzZXRJY29uKGljb246IHN0cmluZykge1xuICAgIHRoaXMuaWNvbiA9IGljb247XG4gIH1cblxuICBnZXRJY29uKCkge1xuICAgIHJldHVybiB0aGlzLmljb247XG4gIH1cblxuICAvLyBUbyBlZGl0IHRoZSBsYWJlbCBvZiBkcmF3aW5nXG4gIGdldEZvbnRTaXplKCkge1xuICAgIHJldHVybiB0aGlzLmZvbnRTaXplO1xuICB9XG5cbiAgc2V0Rm9udFNpemUoZm9udFNpemU6IHN0cmluZykge1xuICAgIHRoaXMuZm9udFNpemUgPSBmb250U2l6ZTtcbiAgfVxuXG4gIGdldEZvbnRTdHlsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5mb250U3R5bGU7XG4gIH1cblxuICBzZXRGb250U3R5bGUoZm9udFN0eWxlOiBzdHJpbmcpIHtcbiAgICB0aGlzLmZvbnRTdHlsZSA9IGZvbnRTdHlsZTtcbiAgfVxuXG4gIGdldE9mZnNldFgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5vZmZzZXRYO1xuICB9XG5cbiAgc2V0T2Zmc2V0WChvZmZzZXRYOiBudW1iZXIpIHtcbiAgICB0aGlzLm9mZnNldFggPSBvZmZzZXRYO1xuICB9XG5cbiAgZ2V0T2Zmc2V0WSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm9mZnNldFk7XG4gIH1cblxuICBzZXRPZmZzZXRZKG9mZnNldFk6IG51bWJlcikge1xuICAgIHRoaXMub2Zmc2V0WSA9IG9mZnNldFk7XG4gIH1cblxuICBjcmVhdGVJbmRpdmlkdWFsRWxlbWVudFN0eWxlKFxuICAgIGZlYXR1cmUsXG4gICAgcmVzb2x1dGlvbixcbiAgICBsYWJlbHNBcmVTaG93bjogYm9vbGVhbixcbiAgICBmb250U2l6ZUFuZFN0eWxlOiBzdHJpbmcsXG4gICAgZmlsbENvbG9yOiBzdHJpbmcsXG4gICAgc3Ryb2tlQ29sb3I6IHN0cmluZyxcbiAgICBvZmZzZXRYOiBudW1iZXIsXG4gICAgb2Zmc2V0WTogbnVtYmVyLFxuICAgIHByb2o6IFByb2plY3Rpb25MaWtlLFxuICAgIGljb24/OiBzdHJpbmdcbiAgKTogT2xTdHlsZS5TdHlsZSB7XG4gICAgbGV0IHN0eWxlO1xuICAgIGxldCBsYWJlbHNBcmVPZmZzZXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBjb25zdCBnZW9tID0gZmVhdHVyZS5nZXRHZW9tZXRyeSgpO1xuXG4gICAgaWYgKGdlb20gaW5zdGFuY2VvZiBPbFBvaW50KSB7XG4gICAgICBsYWJlbHNBcmVPZmZzZXQgPSAhbGFiZWxzQXJlT2Zmc2V0O1xuICAgIH1cblxuICAgIC8vIGlmIGZlYXR1cmUgaXMgYSBjaXJjbGVcbiAgICBpZiAoZmVhdHVyZS5nZXQoJ3JhZCcpKSB7XG4gICAgICBjb25zdCBjb29yZGluYXRlcyA9IHRyYW5zZm9ybShmZWF0dXJlLmdldEdlb21ldHJ5KCkuZmxhdENvb3JkaW5hdGVzLCBwcm9qLCAnRVBTRzo0MzI2Jyk7XG5cbiAgICAgIHN0eWxlID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xuICAgICAgICB0ZXh0OiBuZXcgT2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICB0ZXh0OiBsYWJlbHNBcmVTaG93biA/IGZlYXR1cmUuZ2V0KCdkcmF3JykgOiAnJyxcbiAgICAgICAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICBjb2xvcjogJ3doaXRlJyxcbiAgICAgICAgICAgIHdpZHRoOiAwLjc1XG4gICAgICAgICAgfSksXG4gICAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICBjb2xvcjogJ2JsYWNrJ1xuICAgICAgICAgIH0pLFxuXG4gICAgICAgICAgZm9udDogZm9udFNpemVBbmRTdHlsZSxcbiAgICAgICAgICBvdmVyZmxvdzogdHJ1ZSxcbiAgICAgICAgICBvZmZzZXRYOiBvZmZzZXRYLFxuICAgICAgICAgIG9mZnNldFk6IG9mZnNldFlcbiAgICAgICAgfSksXG5cbiAgICAgICAgaW1hZ2U6IG5ldyBPbFN0eWxlLkNpcmNsZSh7XG4gICAgICAgICAgcmFkaXVzOiBmZWF0dXJlLmdldCgncmFkJykgLyBNYXRoLmNvcygoTWF0aC5QSSAvIDE4MCkgKiBjb29yZGluYXRlc1sxXSkgLyByZXNvbHV0aW9uLFxuICAgICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgIGNvbG9yOiBzdHJva2VDb2xvciA/IHN0cm9rZUNvbG9yIDogdGhpcy5zdHJva2VDb2xvcixcbiAgICAgICAgICAgIHdpZHRoOiB0aGlzLnN0cm9rZVdpZHRoXG4gICAgICAgICAgfSksXG4gICAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICBjb2xvcjogZmlsbENvbG9yXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHN0eWxlO1xuXG4gICAgICAvLyBpZiBmZWF0dXJlIGlzIGFuIGljb25cbiAgICB9IGVsc2UgaWYgKGljb24pIHtcbiAgICAgIHRoaXMub2Zmc2V0WSA9IC0yNjtcbiAgICAgIHN0eWxlID0gbmV3IE9sU3R5bGUuU3R5bGUoe1xuICAgICAgICB0ZXh0OiBuZXcgT2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICB0ZXh0OiBsYWJlbHNBcmVTaG93biA/IGZlYXR1cmUuZ2V0KCdkcmF3JykgOiAnJyxcbiAgICAgICAgICBzdHJva2U6IG5ldyBPbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICBjb2xvcjogJ3doaXRlJyxcbiAgICAgICAgICAgIHdpZHRoOiAwLjc1XG4gICAgICAgICAgfSksXG4gICAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICBjb2xvcjogJ2JsYWNrJ1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIGZvbnQ6IGZvbnRTaXplQW5kU3R5bGUsXG4gICAgICAgICAgb3ZlcmZsb3c6IHRydWUsXG4gICAgICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgICAgICBvZmZzZXRZOiBvZmZzZXRZXG4gICAgICAgIH0pLFxuXG4gICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSksXG5cbiAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxuICAgICAgICB9KSxcblxuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuSWNvbih7XG4gICAgICAgICAgc3JjOiBpY29uXG4gICAgICAgIH0pXG4gICAgICB9KTtcbiAgICAgIHJldHVybiBzdHlsZTtcblxuICAgICAgLy8gaWYgZmVhdHVyZSBpcyBhIHBvaW50LCBhIGxpbmVzdHJpbmcgb3IgYSBwb2x5Z29uXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub2Zmc2V0WSA9IGxhYmVsc0FyZU9mZnNldCA/IC0xNSA6IDA7XG4gICAgICBzdHlsZSA9IG5ldyBPbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgdGV4dDogbmV3IE9sU3R5bGUuVGV4dCh7XG4gICAgICAgICAgdGV4dDogbGFiZWxzQXJlU2hvd24gPyBmZWF0dXJlLmdldCgnZHJhdycpIDogJycsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6ICd3aGl0ZScsXG4gICAgICAgICAgICB3aWR0aDogMC43NVxuICAgICAgICAgIH0pLFxuICAgICAgICAgIGZpbGw6IG5ldyBPbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgY29sb3I6ICdibGFjaydcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmb250OiBmb250U2l6ZUFuZFN0eWxlLFxuICAgICAgICAgIG92ZXJmbG93OiB0cnVlLFxuXG4gICAgICAgICAgb2Zmc2V0WDogb2Zmc2V0WCxcbiAgICAgICAgICBvZmZzZXRZOiBvZmZzZXRZXG4gICAgICAgIH0pLFxuXG4gICAgICAgIHN0cm9rZTogbmV3IE9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICBjb2xvcjogc3Ryb2tlQ29sb3IsXG4gICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgfSksXG5cbiAgICAgICAgZmlsbDogbmV3IE9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgY29sb3I6IGZpbGxDb2xvclxuICAgICAgICB9KSxcblxuICAgICAgICBpbWFnZTogbmV3IE9sU3R5bGUuQ2lyY2xlKHtcbiAgICAgICAgICByYWRpdXM6IDUsXG4gICAgICAgICAgc3Ryb2tlOiBuZXcgT2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgY29sb3I6IHN0cm9rZUNvbG9yLFxuICAgICAgICAgICAgd2lkdGg6IHRoaXMuc3Ryb2tlV2lkdGhcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBmaWxsOiBuZXcgT2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgIGNvbG9yOiBmaWxsQ29sb3JcbiAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgICAgfSk7XG4gICAgICByZXR1cm4gc3R5bGU7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export * from './style.service';
|
|
2
2
|
export * from './draw-style.service';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9zdHlsZS9zdHlsZS1zZXJ2aWNlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3R5bGUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2RyYXctc3R5bGUuc2VydmljZSc7XG4iXX0=
|
|
@@ -353,4 +353,4 @@ StyleService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: StyleServic
|
|
|
353
353
|
providedIn: 'root'
|
|
354
354
|
}]
|
|
355
355
|
}], null, null); })();
|
|
356
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3N0eWxlL3N0eWxlLXNlcnZpY2Uvc3R5bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUVuQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUV4RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFPcEUsTUFBTSxPQUFPLFlBQVk7SUFHdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FrQ0c7SUFDSCxXQUFXLENBQUMsT0FBK0IsRUFBRSxPQUErQyxFQUFFLFVBQW1CO1FBRS9HLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPLHdCQUF3QixFQUFFLENBQUM7U0FDbkM7UUFDRCxJQUFJLE9BQU8sT0FBTyxLQUFLLFVBQVUsSUFBSSxPQUFPLFlBQVksT0FBTyxDQUFDLEtBQUssRUFBRTtZQUNyRSxPQUFPLE9BQU8sQ0FBQztTQUNoQjtRQUNELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3RELElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3pCLElBQUksa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO1lBQzNCLElBQUksa0JBQWtCLEdBQUcsUUFBUSxDQUFDO1lBQ2xDLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtnQkFDaEIsTUFBTSwyQkFBMkIsR0FDL0IsT0FBTyxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFD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QztTQUMvQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLGdCQUFnQixDQUFDLE9BQU87UUFDOUIsUUFBUSxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDdkMsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLFlBQVksQ0FBQztZQUNsQixLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxRQUFRLENBQUM7WUFDbEI7Z0JBQ0UsT0FBTyxTQUFTLENBQUM7U0FDcEI7SUFDSCxDQUFDOzt3RUEvV1UsWUFBWTtrRUFBWixZQUFZLFdBQVosWUFBWSxtQkFGWCxNQUFNO3VGQUVQLFlBQVk7Y0FIeEIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHR5cGUgeyBkZWZhdWx0IGFzIE9sR2VvbWV0cnkgfSBmcm9tICdvbC9nZW9tL0dlb21ldHJ5JztcclxuaW1wb3J0ICogYXMgb2xTdHlsZSBmcm9tICdvbC9zdHlsZSc7XHJcbmltcG9ydCBPbEZlYXR1cmUgZnJvbSAnb2wvRmVhdHVyZSc7XHJcblxyXG5pbXBvcnQgeyBjcmVhdGVPdmVybGF5TWFya2VyU3R5bGUgfSBmcm9tICcuLi9zaGFyZWQvb3ZlcmxheS9vdmVybGF5LW1hcmtlci1zdHlsZS51dGlscyc7XHJcbmltcG9ydCBSZW5kZXJGZWF0dXJlIGZyb20gJ29sL3JlbmRlci9GZWF0dXJlJztcclxuaW1wb3J0IHsgZ2V0UmVzb2x1dGlvbkZyb21TY2FsZSB9IGZyb20gJy4uLy4uL21hcC9zaGFyZWQvbWFwLnV0aWxzJztcclxuaW1wb3J0IHsgU3R5bGVCeUF0dHJpYnV0ZSB9IGZyb20gJy4uL3NoYXJlZC92ZWN0b3IvdmVjdG9yLXN0eWxlLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IENsdXN0ZXJQYXJhbSB9IGZyb20gJy4uLy4uL2xheWVyL3NoYXJlZC9jbHVzdGVyUGFyYW0nO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU3R5bGVTZXJ2aWNlIHtcclxuICBwdWJsaWMgc3R5bGU6IG9sU3R5bGUuU3R5bGU7XHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZSBhIHN0eWxlIGJhc2VkIG9uIGEgb2JqZWN0IGFzXHJcbiAgICogc3R5bGU6IHtcclxuICAgKiAgICAgICBcInN0cm9rZVwiOiB7XHJcbiAgICogICAgICAgICBcImNvbG9yXCI6IFwiYmx1ZVwiLFxyXG4gICAqICAgICAgICAgXCJsaW5lRGFzaFwiOiBbMTAsIDVdXHJcbiAgICogICAgICAgfSxcclxuICAgKiAgICAgICBcInRleHRcIjoge1xyXG4gICAqICAgICAgICAgXCJtaW5TY2FsZURlbm9tXCI6IDUwMDAwLFxyXG4gICAqICAgICAgICAgXCJtYXhTY2FsZURlbm9tXCI6IDIwMDAwMCxcclxuICAgKiAgICAgICAgIFwibWluUmVzb2x1dGlvblwiOiAxMDAsXHJcbiAgICogICAgICAgICBcIm1heFJlc29sdXRpb25cIjogNDAwLFxyXG4gICAqICAgICAgICAgXCJhdHRyaWJ1dGVcIjogXCJUSEUgQ09MVU1OIE5BTUUgVE8gUkVUUklFVkUgVEhFIExBQkVMIFZBTFVFXCIsXHJcbiAgICogICAgICAgICBcInRleHRcIjogXCJNWSBIQVJDT0RFRCBURVhUXCIsXHJcbiAgICogICAgICAgICBcInN0cm9rZVwiOiB7XHJcbiAgICogICAgICAgICAgIFwiY29sb3JcIjogXCJibHVlXCIsXHJcbiAgICogICAgICAgICAgIFwid2lkdGhcIjogMC43NVxyXG4gICAqICAgICAgICAgfSxcclxuICAgKiAgICAgICAgIFwiZmlsbFwiOiB7XHJcbiAgICogICAgICAgICAgIFwiY29sb3JcIjogXCJibGFja1wiXHJcbiAgICogICAgICAgICB9LFxyXG4gICAqICAgICAgICAgXCJmb250XCI6IFwiMjBweCBzYW5zLXNlcmlmXCIsXHJcbiAgICogICAgICAgICBcIm92ZXJmbG93XCI6IHRydWUsXHJcbiAgICogICAgICAgICBcIm9mZnNldFhcIjogMTAsXHJcbiAgICogICAgICAgICBcIm9mZnNldFlcIjogMjAsXHJcbiAgICogICAgICAgICBcInBhZGRpbmdcIjogWzIuNSwgMi41LCAyLjUsIDIuNV1cclxuICAgKiAgICAgICB9LFxyXG4gICAqICAgICAgIFwid2lkdGhcIjogNVxyXG4gICAqICAgICB9XHJcbiAgICpcclxuICAgKiBAcGFyYW0gb3B0aW9uc1xyXG4gICAqIEBwYXJhbSBmZWF0dXJlIGZlYXR1cmUgdG8gYXBwbHkgc3R5bGUgb25cclxuICAgKiBAcGFyYW0gcmVzb2x1dGlvbiBjdXJyZW50IG1hcCByZXNvbHV0aW9uLCB0byBjb250cm9sIGxhYmVsIHJlc29sdXRpb24gcmFuZ2VcclxuICAgKiBAcmV0dXJuc1xyXG4gICAqL1xyXG4gIGNyZWF0ZVN0eWxlKG9wdGlvbnM6IHsgW2tleTogc3RyaW5nXTogYW55IH0sIGZlYXR1cmU/OiBSZW5kZXJGZWF0dXJlIHwgT2xGZWF0dXJlPE9sR2VvbWV0cnk+LCByZXNvbHV0aW9uPzogbnVtYmVyKSB7XHJcblxyXG4gICAgaWYgKCFvcHRpb25zKSB7XHJcbiAgICAgIHJldHVybiBjcmVhdGVPdmVybGF5TWFya2VyU3R5bGUoKTtcclxuICAgIH1cclxuICAgIGlmICh0eXBlb2Ygb3B0aW9ucyA9PT0gJ2Z1bmN0aW9uJyB8fCBvcHRpb25zIGluc3RhbmNlb2Ygb2xTdHlsZS5TdHlsZSkge1xyXG4gICAgICByZXR1cm4gb3B0aW9ucztcclxuICAgIH1cclxuICAgIGNvbnN0IHBhcnNlZFN0eWxlID0gdGhpcy5wYXJzZVN0eWxlKCdzdHlsZScsIG9wdGlvbnMpO1xyXG4gICAgaWYgKHBhcnNlZFN0eWxlLmdldFRleHQoKSkge1xyXG4gICAgICBsZXQgbGFiZWxNaW5SZXNvbHV0aW9uID0gMDtcclxuICAgICAgbGV0IGxhYmVsTWF4UmVzb2x1dGlvbiA9IEluZmluaXR5O1xyXG4gICAgICBpZiAob3B0aW9ucy50ZXh0KSB7XHJcbiAgICAgICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID1cclxuICAgICAgICAgIG9wdGlvbnMudGV4dD8ubWluU2NhbGVEZW5vbSA/IGdldFJlc29sdXRpb25Gcm9tU2NhbGUoTnVtYmVyKG9wdGlvbnMudGV4dC5taW5TY2FsZURlbm9tKSkgOiB1bmRlZmluZWQ7XHJcbiAgICAgICAgY29uc3QgbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlID1cclxuICAgICAgICAgIG9wdGlvbnMudGV4dD8ubWF4U2NhbGVEZW5vbSA/IGdldFJlc29sdXRpb25Gcm9tU2NhbGUoTnVtYmVyKG9wdGlvbnMudGV4dC5tYXhTY2FsZURlbm9tKSkgOiB1bmRlZmluZWQ7XHJcbiAgICAgICAgY29uc3QgbWluUmVzb2x1dGlvbiA9IG9wdGlvbnMudGV4dD8ubWluUmVzb2x1dGlvbiA/IG9wdGlvbnMudGV4dC5taW5SZXNvbHV0aW9uIDogMDtcclxuICAgICAgICBjb25zdCBtYXhSZXNvbHV0aW9uID0gb3B0aW9ucy50ZXh0Py5tYXhSZXNvbHV0aW9uID8gb3B0aW9ucy50ZXh0Lm1heFJlc29sdXRpb24gOiBJbmZpbml0eTtcclxuXHJcbiAgICAgICAgbGFiZWxNaW5SZXNvbHV0aW9uID0gbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1pblJlc29sdXRpb247XHJcbiAgICAgICAgbGFiZWxNYXhSZXNvbHV0aW9uID0gbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1heFJlc29sdXRpb247XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGZlYXR1cmUgJiYgcmVzb2x1dGlvbiA+PSBsYWJlbE1pblJlc29sdXRpb24gJiYgcmVzb2x1dGlvbiA8PSBsYWJlbE1heFJlc29sdXRpb24pIHtcclxuICAgICAgICBpZiAoZmVhdHVyZSAmJiBvcHRpb25zLnRleHQuYXR0cmlidXRlKSB7XHJcbiAgICAgICAgICBwYXJzZWRTdHlsZS5nZXRUZXh0KCkuc2V0VGV4dCh0aGlzLmdldExhYmVsKGZlYXR1cmUsIG9wdGlvbnMudGV4dC5hdHRyaWJ1dGUpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcGFyc2VkU3R5bGUuc2V0VGV4dCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcGFyc2VkU3R5bGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcGFyc2VTdHlsZShrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgY29uc3Qgc3R5bGVPcHRpb25zID0ge307XHJcbiAgICBjb25zdCBvbENscyA9IHRoaXMuZ2V0T2xDbHMoa2V5KTtcclxuXHJcbiAgICBpZiAob2xDbHMgJiYgdmFsdWUgaW5zdGFuY2VvZiBPYmplY3QpIHtcclxuICAgICAgT2JqZWN0LmtleXModmFsdWUpLmZvckVhY2goX2tleSA9PiB7XHJcbiAgICAgICAgY29uc3Qgb2xLZXkgPSB0aGlzLmdldE9sS2V5KF9rZXkpO1xyXG4gICAgICAgIHN0eWxlT3B0aW9uc1tvbEtleV0gPSB0aGlzLnBhcnNlU3R5bGUoX2tleSwgdmFsdWVbX2tleV0pO1xyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIG5ldyBvbENscyhzdHlsZU9wdGlvbnMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRPbEtleShrZXk6IGFueSkge1xyXG4gICAgbGV0IG9sS2V5O1xyXG4gICAgc3dpdGNoIChrZXkudG9Mb3dlckNhc2UoKSkge1xyXG4gICAgICBjYXNlICdjaXJjbGUnOlxyXG4gICAgICBjYXNlICdyZWd1bGFyc2hhcGUnOlxyXG4gICAgICBjYXNlICdpY29uJzpcclxuICAgICAgICBvbEtleSA9ICdpbWFnZSc7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9sS2V5IHx8IGtleTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0T2xDbHMoa2V5OiBhbnkpIHtcclxuICAgIGxldCBvbENscyA9IG9sU3R5bGVba2V5LmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsga2V5LnNsaWNlKDEpXTtcclxuICAgIGlmIChrZXkgPT09ICdyZWd1bGFyc2hhcGUnKSB7XHJcbiAgICAgIG9sQ2xzID0gb2xTdHlsZS5SZWd1bGFyU2hhcGU7XHJcbiAgICB9XHJcbiAgICBpZiAoa2V5ID09PSAnYmFja2dyb3VuZEZpbGwnKSB7XHJcbiAgICAgIG9sQ2xzID0gb2xTdHlsZS5GaWxsO1xyXG4gICAgfVxyXG4gICAgaWYgKGtleSA9PT0gJ2JhY2tncm91bmRTdHJva2UnKSB7XHJcbiAgICAgIG9sQ2xzID0gb2xTdHlsZS5TdHJva2U7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG9sQ2xzO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlU3R5bGVCeUF0dHJpYnV0ZShmZWF0dXJlOiBSZW5kZXJGZWF0dXJlIHwgT2xGZWF0dXJlPE9sR2VvbWV0cnk+LCBzdHlsZUJ5QXR0cmlidXRlOiBTdHlsZUJ5QXR0cmlidXRlLCByZXNvbHV0aW9uOiBudW1iZXIpIHtcclxuXHJcbiAgICBsZXQgc3R5bGU7XHJcbiAgICBjb25zdCB0eXBlID0gc3R5bGVCeUF0dHJpYnV0ZS50eXBlID8gc3R5bGVCeUF0dHJpYnV0ZS50eXBlIDogdGhpcy5ndWVzc1R5cGVGZWF0dXJlKGZlYXR1cmUpO1xyXG4gICAgY29uc3QgYXR0cmlidXRlID0gc3R5bGVCeUF0dHJpYnV0ZS5hdHRyaWJ1dGU7XHJcbiAgICBjb25zdCBkYXRhID0gc3R5bGVCeUF0dHJpYnV0ZS5kYXRhO1xyXG4gICAgY29uc3Qgc3Ryb2tlID0gc3R5bGVCeUF0dHJpYnV0ZS5zdHJva2U7XHJcbiAgICBjb25zdCB3aWR0aCA9IHN0eWxlQnlBdHRyaWJ1dGUud2lkdGg7XHJcbiAgICBjb25zdCBmaWxsID0gc3R5bGVCeUF0dHJpYnV0ZS5maWxsO1xyXG4gICAgY29uc3QgYW5jaG9yID0gc3R5bGVCeUF0dHJpYnV0ZS5hbmNob3I7XHJcbiAgICBjb25zdCByYWRpdXMgPSBzdHlsZUJ5QXR0cmlidXRlLnJhZGl1cztcclxuICAgIGNvbnN0IGljb24gPSBzdHlsZUJ5QXR0cmlidXRlLmljb247XHJcbiAgICBjb25zdCBzY2FsZSA9IHN0eWxlQnlBdHRyaWJ1dGUuc2NhbGU7XHJcbiAgICBjb25zdCBzaXplID0gZGF0YSA/IGRhdGEubGVuZ3RoIDogMDtcclxuICAgIGNvbnN0IGxhYmVsID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbCA/IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWwuYXR0cmlidXRlIDogdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID1cclxuICAgICAgc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWluU2NhbGVEZW5vbSA/IGdldFJlc29sdXRpb25Gcm9tU2NhbGUoTnVtYmVyKHN0eWxlQnlBdHRyaWJ1dGUubGFiZWwubWluU2NhbGVEZW5vbSkpIDogdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlID1cclxuICAgICAgc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWF4U2NhbGVEZW5vbSA/IGdldFJlc29sdXRpb25Gcm9tU2NhbGUoTnVtYmVyKHN0eWxlQnlBdHRyaWJ1dGUubGFiZWwubWF4U2NhbGVEZW5vbSkpIDogdW5kZWZpbmVkO1xyXG4gICAgY29uc3QgbWluUmVzb2x1dGlvbiA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/Lm1pblJlc29sdXRpb24gPyBzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLm1pblJlc29sdXRpb24gOiAwO1xyXG4gICAgY29uc3QgbWF4UmVzb2x1dGlvbiA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/Lm1heFJlc29sdXRpb24gPyBzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLm1heFJlc29sdXRpb24gOiBJbmZpbml0eTtcclxuXHJcbiAgICBjb25zdCBsYWJlbE1pblJlc29sdXRpb24gPSBsYWJlbE1pblJlc29sdXRpb25Gcm9tU2NhbGUgfHwgbWluUmVzb2x1dGlvbjtcclxuICAgIGNvbnN0IGxhYmVsTWF4UmVzb2x1dGlvbiA9IGxhYmVsTWF4UmVzb2x1dGlvbkZyb21TY2FsZSB8fCBtYXhSZXNvbHV0aW9uO1xyXG5cclxuICAgIGxldCBsYWJlbFN0eWxlID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8uc3R5bGUgPyB0aGlzLnBhcnNlU3R5bGUoJ3RleHQnLCBzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLnN0eWxlKSA6IHVuZGVmaW5lZDtcclxuICAgIGlmICghbGFiZWxTdHlsZSAmJiBsYWJlbCkge1xyXG4gICAgICAgIGxhYmVsU3R5bGUgPSBuZXcgb2xTdHlsZS5UZXh0KCk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBiYXNlU3R5bGUgPSBzdHlsZUJ5QXR0cmlidXRlLmJhc2VTdHlsZTtcclxuXHJcbiAgICBpZiAobGFiZWxTdHlsZSkge1xyXG4gICAgICBpZiAocmVzb2x1dGlvbiA+PSBsYWJlbE1pblJlc29sdXRpb24gJiYgcmVzb2x1dGlvbiA8PSBsYWJlbE1heFJlc29sdXRpb24pIHtcclxuICAgICAgICBsYWJlbFN0eWxlLnNldFRleHQodGhpcy5nZXRMYWJlbChmZWF0dXJlLCBsYWJlbCkpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGxhYmVsU3R5bGUuc2V0VGV4dCgnJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAodHlwZSA9PT0gJ2NpcmNsZScpIHtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHtcclxuICAgICAgICBjb25zdCB2YWwgPVxyXG4gICAgICAgICAgdHlwZW9mIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09ICd1bmRlZmluZWQnICYmIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09IG51bGxcclxuICAgICAgICAgICAgPyBmZWF0dXJlLmdldChhdHRyaWJ1dGUpXHJcbiAgICAgICAgICAgIDogJyc7XHJcbiAgICAgICAgaWYgKHZhbCA9PT0gZGF0YVtpXSB8fCB2YWwudG9TdHJpbmcoKS5tYXRjaChuZXcgUmVnRXhwKGRhdGFbaV0sICdnbWknKSkpIHtcclxuICAgICAgICAgIGlmIChpY29uKSB7XHJcbiAgICAgICAgICAgIHN0eWxlID0gW1xyXG4gICAgICAgICAgICAgIG5ldyBvbFN0eWxlLlN0eWxlKHtcclxuICAgICAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5JY29uKHtcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IGZpbGwgPyBmaWxsW2ldIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAgICBzcmM6IGljb25baV0sXHJcbiAgICAgICAgICAgICAgICAgIHNjYWxlOiBzY2FsZSA/IHNjYWxlW2ldIDogMSxcclxuICAgICAgICAgICAgICAgICAgYW5jaG9yOiBhbmNob3IgPyBhbmNob3JbaV0gOiBbMC41LCAwLjVdXHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgIHRleHQ6IGxhYmVsU3R5bGUgaW5zdGFuY2VvZiBvbFN0eWxlLlRleHQgPyBsYWJlbFN0eWxlIDogdW5kZWZpbmVkXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgXTtcclxuICAgICAgICAgICAgcmV0dXJuIHN0eWxlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgc3R5bGUgPSBbXHJcbiAgICAgICAgICAgIG5ldyBvbFN0eWxlLlN0eWxlKHtcclxuICAgICAgICAgICAgICBpbWFnZTogbmV3IG9sU3R5bGUuQ2lyY2xlKHtcclxuICAgICAgICAgICAgICAgIHJhZGl1czogcmFkaXVzID8gcmFkaXVzW2ldIDogNCxcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogbmV3IG9sU3R5bGUuU3Ryb2tlKHtcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IHN0cm9rZSA/IHN0cm9rZVtpXSA6ICdibGFjaycsXHJcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiB3aWR0aCA/IHdpZHRoW2ldIDogMVxyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IGZpbGwgPyBmaWxsW2ldIDogJ2JsYWNrJ1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICB0ZXh0OiBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgXTtcclxuICAgICAgICAgIHJldHVybiBzdHlsZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKCEoZmVhdHVyZSBhcyBPbEZlYXR1cmU8T2xHZW9tZXRyeT4pLmdldFN0eWxlKCkpIHtcclxuICAgICAgICBpZiAoYmFzZVN0eWxlKSB7XHJcbiAgICAgICAgICBzdHlsZSA9IHRoaXMuY3JlYXRlU3R5bGUoYmFzZVN0eWxlLCBmZWF0dXJlLCByZXNvbHV0aW9uKTtcclxuICAgICAgICAgIGlmIChsYWJlbFN0eWxlKSB7XHJcbiAgICAgICAgICAgIHN0eWxlLnNldFRleHQobGFiZWxTdHlsZSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gc3R5bGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN0eWxlID0gW1xyXG4gICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xyXG4gICAgICAgICAgICBpbWFnZTogbmV3IG9sU3R5bGUuQ2lyY2xlKHtcclxuICAgICAgICAgICAgICByYWRpdXM6IDQsXHJcbiAgICAgICAgICAgICAgc3Ryb2tlOiBuZXcgb2xTdHlsZS5TdHJva2Uoe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICdibGFjaydcclxuICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAnI2JiYmJmMidcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICBdO1xyXG4gICAgICAgIHJldHVybiBzdHlsZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0eXBlID09PSAncmVndWxhcicpIHtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHtcclxuICAgICAgICBjb25zdCB2YWwgPVxyXG4gICAgICAgIHR5cGVvZiBmZWF0dXJlLmdldChhdHRyaWJ1dGUpICE9PSAndW5kZWZpbmVkJyAmJiBmZWF0dXJlLmdldChhdHRyaWJ1dGUpICE9PSBudWxsXHJcbiAgICAgICAgICAgID8gZmVhdHVyZS5nZXQoYXR0cmlidXRlKVxyXG4gICAgICAgICAgICA6ICcnO1xyXG4gICAgICAgIGlmICh2YWwgPT09IGRhdGFbaV0gfHwgdmFsLnRvU3RyaW5nKCkubWF0Y2gobmV3IFJlZ0V4cChkYXRhW2ldLCAnZ21pJykpKSB7XHJcbiAgICAgICAgICBzdHlsZSA9IFtcclxuICAgICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xyXG4gICAgICAgICAgICAgIHN0cm9rZTogbmV3IG9sU3R5bGUuU3Ryb2tlKHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiBzdHJva2UgPyBzdHJva2VbaV0gOiAnYmxhY2snLFxyXG4gICAgICAgICAgICAgICAgd2lkdGg6IHdpZHRoID8gd2lkdGhbaV0gOiAxXHJcbiAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgZmlsbDogbmV3IG9sU3R5bGUuRmlsbCh7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogZmlsbCA/IGZpbGxbaV0gOiAncmdiYSgyNTUsMjU1LDI1NSwwLjQpJ1xyXG4gICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgIHRleHQ6IGxhYmVsU3R5bGUgaW5zdGFuY2VvZiBvbFN0eWxlLlRleHQgPyBsYWJlbFN0eWxlIDogdW5kZWZpbmVkXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICBdO1xyXG4gICAgICAgICAgcmV0dXJuIHN0eWxlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoZmVhdHVyZSBpbnN0YW5jZW9mIE9sRmVhdHVyZSkge1xyXG4gICAgICAgIGlmICghZmVhdHVyZS5nZXRTdHlsZSgpKSB7XHJcbiAgICAgICAgICBpZiAoYmFzZVN0eWxlKSB7XHJcbiAgICAgICAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShiYXNlU3R5bGUsIGZlYXR1cmUsIHJlc29sdXRpb24pO1xyXG4gICAgICAgICAgICBpZiAobGFiZWxTdHlsZSkge1xyXG4gICAgICAgICAgICAgIHN0eWxlLnNldFRleHQobGFiZWxTdHlsZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIHN0eWxlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgc3R5bGUgPSBbXHJcbiAgICAgICAgICAgIG5ldyBvbFN0eWxlLlN0eWxlKHtcclxuICAgICAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJ2JsYWNrJ1xyXG4gICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICcjYmJiYmYyJ1xyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICBdO1xyXG4gICAgICAgICAgcmV0dXJuIHN0eWxlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlQ2x1c3RlclN0eWxlKGZlYXR1cmU6IFJlbmRlckZlYXR1cmUgfCBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sIHJlc29sdXRpb246IG51bWJlciwgY2x1c3RlclBhcmFtOiBDbHVzdGVyUGFyYW0gPSB7fSwgbGF5ZXJTdHlsZSkge1xyXG4gICAgbGV0IHN0eWxlO1xyXG4gICAgY29uc3Qgc2l6ZSA9IGZlYXR1cmUuZ2V0KCdmZWF0dXJlcycpLmxlbmd0aDtcclxuICAgIGlmIChzaXplICE9PSAxKSB7XHJcbiAgICAgIGlmIChjbHVzdGVyUGFyYW0uY2x1c3RlclJhbmdlcykge1xyXG4gICAgICAgIGZvciAoY29uc3QgciBvZiBjbHVzdGVyUGFyYW0uY2x1c3RlclJhbmdlcykge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAoIXIubWluUmFkaXVzIHx8IHIubWluUmFkaXVzIDw9IHNpemUpICYmXHJcbiAgICAgICAgICAgICghci5tYXhSYWRpdXMgfHwgci5tYXhSYWRpdXMgPj0gc2l6ZSlcclxuICAgICAgICAgICkge1xyXG4gICAgICAgICAgICBzdHlsZSA9IHRoaXMuY3JlYXRlU3R5bGUoci5zdHlsZSkgYXMgb2xTdHlsZS5DaXJjbGU7XHJcblxyXG4gICAgICAgICAgICBpZiAoci5zaG93UmFuZ2UpIHtcclxuICAgICAgICAgICAgICBjb25zdCB0ZXh0ID0gbmV3IG9sU3R5bGUuVGV4dCh7XHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBzaXplLnRvU3RyaW5nKCksXHJcbiAgICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgICAgICAgY29sb3I6ICcjZmZmJ1xyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICBzdHlsZS5zZXRUZXh0KHRleHQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpZiAoci5keW5hbWljUmFkaXVzKSB7XHJcbiAgICAgICAgICAgICAgbGV0IGNsdXN0ZXJSYWRpdXM6IG51bWJlcjtcclxuICAgICAgICAgICAgICBjb25zdCByYWRpdXNNaW4gPSBzdHlsZS5nZXRSYWRpdXMoKTtcclxuICAgICAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gNSAqIE1hdGgubG9nKHNpemUpO1xyXG4gICAgICAgICAgICAgIGlmIChjbHVzdGVyUmFkaXVzIDwgcmFkaXVzTWluKSB7XHJcbiAgICAgICAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gcmFkaXVzTWluO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICBzdHlsZS5pbWFnZV8uc2V0UmFkaXVzKGNsdXN0ZXJSYWRpdXMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFzdHlsZSkge1xyXG4gICAgICAgIGxldCBjbHVzdGVyUmFkaXVzOiBudW1iZXI7XHJcbiAgICAgICAgaWYgKGNsdXN0ZXJQYXJhbS5yYWRpdXNDYWxjKSB7XHJcbiAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gY2x1c3RlclBhcmFtLnJhZGl1c0NhbGMoc2l6ZSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IHJhZGl1c01pbiA9IDY7XHJcbiAgICAgICAgICBjbHVzdGVyUmFkaXVzID0gNSAqIE1hdGgubG9nKHNpemUpO1xyXG4gICAgICAgICAgaWYgKGNsdXN0ZXJSYWRpdXMgPCByYWRpdXNNaW4pIHtcclxuICAgICAgICAgICAgY2x1c3RlclJhZGl1cyA9IHJhZGl1c01pbjtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHN0eWxlID0gW1xyXG4gICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xyXG4gICAgICAgICAgICBpbWFnZTogbmV3IG9sU3R5bGUuQ2lyY2xlKHtcclxuICAgICAgICAgICAgICByYWRpdXM6IGNsdXN0ZXJSYWRpdXMsXHJcbiAgICAgICAgICAgICAgc3Ryb2tlOiBuZXcgb2xTdHlsZS5TdHJva2Uoe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICdibGFjaydcclxuICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAncmdiYSgyNCwgMTM0LCA0NSwgMC41KSdcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgdGV4dDogbmV3IG9sU3R5bGUuVGV4dCh7XHJcbiAgICAgICAgICAgICAgdGV4dDogc2l6ZS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICcjZmZmJ1xyXG4gICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIF07XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShsYXllclN0eWxlLCBmZWF0dXJlLCByZXNvbHV0aW9uKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzdHlsZTtcclxuICB9XHJcblxyXG4gIGdldExhYmVsKGZlYXR1cmUsIGxhYmVsTWF0Y2gpOiBzdHJpbmcge1xyXG4gICAgbGV0IGxhYmVsID0gbGFiZWxNYXRjaDtcclxuICAgIGlmICghbGFiZWwpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgY29uc3QgbGFiZWxUb0dldCA9IEFycmF5LmZyb20obGFiZWxNYXRjaC5tYXRjaEFsbCgvXFwkXFx7KFteXFx7XFx9XSspXFx9L2cpKTtcclxuXHJcbiAgICBsYWJlbFRvR2V0LmZvckVhY2godiA9PiB7XHJcbiAgICAgIGxhYmVsID0gbGFiZWwucmVwbGFjZSh2WzBdLCBmZWF0dXJlLmdldCh2WzFdKSk7XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBOb3RoaW5nIGRvbmU/IGNoZWNrIGZlYXR1cmUncyBhdHRyaWJ1dGVcclxuICAgIGlmIChsYWJlbFRvR2V0Lmxlbmd0aCA9PT0gMCAmJiBsYWJlbCA9PT0gbGFiZWxNYXRjaCkge1xyXG4gICAgICBsYWJlbCA9IGZlYXR1cmUuZ2V0KGxhYmVsTWF0Y2gpIHx8IGxhYmVsTWF0Y2g7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGxhYmVsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBndWVzc1R5cGVGZWF0dXJlKGZlYXR1cmUpIHtcclxuICAgIHN3aXRjaCAoZmVhdHVyZS5nZXRHZW9tZXRyeSgpLmdldFR5cGUoKSkge1xyXG4gICAgICBjYXNlICdQb2ludCc6XHJcbiAgICAgIGNhc2UgJ011bHRpUG9pbnQnOlxyXG4gICAgICBjYXNlICdDaXJjbGUnOlxyXG4gICAgICAgIHJldHVybiAnY2lyY2xlJztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gJ3JlZ3VsYXInO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
356
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL3N0eWxlL3N0eWxlLXNlcnZpY2Uvc3R5bGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzNDLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBQ3BDLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUVuQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUV4RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFPcEUsTUFBTSxPQUFPLFlBQVk7SUFHdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FrQ0c7SUFDSCxXQUFXLENBQUMsT0FBK0IsRUFBRSxPQUErQyxFQUFFLFVBQW1CO1FBRS9HLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDWixPQUFPLHdCQUF3QixFQUFFLENBQUM7U0FDbkM7UUFDRCxJQUFJLE9BQU8sT0FBTyxLQUFLLFVBQVUsSUFBSSxPQUFPLFlBQVksT0FBTyxDQUFDLEtBQUssRUFBRTtZQUNyRSxPQUFPLE9BQU8sQ0FBQztTQUNoQjtRQUNELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3RELElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3pCLElBQUksa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO1lBQzNCLElBQUksa0JBQWtCLEdBQUcsUUFBUSxDQUFDO1lBQ2xDLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtnQkFDaEIsTUFBTSwyQkFBMkIsR0FDL0IsT0FBTyxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDdkcsTUFBTSwyQkFBMkIsR0FDL0IsT0FBTyxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztnQkFDdkcsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ25GLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO2dCQUUxRixrQkFBa0IsR0FBRywyQkFBMkIsSUFBSSxhQUFhLENBQUM7Z0JBQ2xFLGtCQUFrQixHQUFHLDJCQUEyQixJQUFJLGFBQWEsQ0FBQzthQUNuRTtZQUNELElBQUksT0FBTyxJQUFJLFVBQVUsSUFBSSxrQkFBa0IsSUFBSSxVQUFVLElBQUksa0JBQWtCLEVBQUU7Z0JBQ25GLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO29CQUNyQyxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztpQkFDL0U7YUFDRjtpQkFBTTtnQkFDTCxXQUFXLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDdkI7U0FDRjtRQUNELE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUFFTSxVQUFVLENBQUMsR0FBVyxFQUFFLEtBQVU7UUFDdkMsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFakMsSUFBSSxLQUFLLElBQUksS0FBSyxZQUFZLE1BQU0sRUFBRTtZQUNwQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDaEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBQzNELENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNoQzthQUFNO1lBQ0wsT0FBTyxLQUFLLENBQUM7U0FDZDtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsR0FBUTtRQUN2QixJQUFJLEtBQUssQ0FBQztRQUNWLFFBQVEsR0FBRyxDQUFDLFdBQVcsRUFBRSxFQUFFO1lBQ3pCLEtBQUssUUFBUSxDQUFDO1lBQ2QsS0FBSyxjQUFjLENBQUM7WUFDcEIsS0FBSyxNQUFNO2dCQUNULEtBQUssR0FBRyxPQUFPLENBQUM7Z0JBQ2hCLE1BQU07WUFDUjtnQkFDRSxNQUFNO1NBQ1Q7UUFFRCxPQUFPLEtBQUssSUFBSSxHQUFHLENBQUM7SUFDdEIsQ0FBQztJQUVPLFFBQVEsQ0FBQyxHQUFRO1FBQ3ZCLElBQUksS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoRSxJQUFJLEdBQUcsS0FBSyxjQUFjLEVBQUU7WUFDMUIsS0FBSyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUM7U0FDOUI7UUFDRCxJQUFJLEdBQUcsS0FBSyxnQkFBZ0IsRUFBRTtZQUM1QixLQUFLLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztTQUN0QjtRQUNELElBQUksR0FBRyxLQUFLLGtCQUFrQixFQUFFO1lBQzlCLEtBQUssR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDO1NBQ3hCO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsc0JBQXNCLENBQUMsT0FBOEMsRUFBRSxnQkFBa0MsRUFBRSxVQUFrQjtRQUUzSCxJQUFJLEtBQUssQ0FBQztRQUNWLE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUYsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUNuQyxNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7UUFDdkMsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDO1FBQ3JDLE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUNuQyxNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUM7UUFDdkMsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDO1FBQ3ZDLE1BQU0sSUFBSSxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUNuQyxNQUFNLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7UUFDckMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEMsTUFBTSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDcEYsTUFBTSwyQkFBMkIsR0FDL0IsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDM0gsTUFBTSwyQkFBMkIsR0FDL0IsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDM0gsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLE1BQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUU5RyxNQUFNLGtCQUFrQixHQUFHLDJCQUEyQixJQUFJLGFBQWEsQ0FBQztRQUN4RSxNQUFNLGtCQUFrQixHQUFHLDJCQUEyQixJQUFJLGFBQWEsQ0FBQztRQUV4RSxJQUFJLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUNuSCxJQUFJLENBQUMsVUFBVSxJQUFJLEtBQUssRUFBRTtZQUN0QixVQUFVLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbkM7UUFDRCxNQUFNLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUM7UUFFN0MsSUFBSSxVQUFVLEVBQUU7WUFDZCxJQUFJLFVBQVUsSUFBSSxrQkFBa0IsSUFBSSxVQUFVLElBQUksa0JBQWtCLEVBQUU7Z0JBQ3hFLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUNuRDtpQkFBTTtnQkFDTCxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ3hCO1NBQ0Y7UUFFRCxJQUFJLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDckIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDN0IsTUFBTSxHQUFHLEdBQ1AsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLFdBQVcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLElBQUk7b0JBQzlFLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQztvQkFDeEIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDVCxJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRTtvQkFDdkUsSUFBSSxJQUFJLEVBQUU7d0JBQ1IsS0FBSyxHQUFHOzRCQUNOLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQztnQ0FDaEIsS0FBSyxFQUFFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQztvQ0FDdEIsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO29DQUNqQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztvQ0FDWixLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7b0NBQzNCLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDO2lDQUN4QyxDQUFDO2dDQUNGLElBQUksRUFBRSxVQUFVLFlBQVksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxTQUFTOzZCQUNsRSxDQUFDO3lCQUNILENBQUM7d0JBQ0YsT0FBTyxLQUFLLENBQUM7cUJBQ2Q7b0JBQ0QsS0FBSyxHQUFHO3dCQUNOLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQzs0QkFDaEIsS0FBSyxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQztnQ0FDeEIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dDQUM5QixNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDO29DQUN6QixLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87b0NBQ25DLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQ0FDNUIsQ0FBQztnQ0FDRixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO29DQUNyQixLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU87aUNBQ2hDLENBQUM7NkJBQ0gsQ0FBQzs0QkFDRixJQUFJLEVBQUUsVUFBVSxZQUFZLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUzt5QkFDbEUsQ0FBQztxQkFDSCxDQUFDO29CQUNGLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2FBQ0Y7WUFDRCxJQUFJLENBQUUsT0FBaUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDbEQsSUFBSSxTQUFTLEVBQUU7b0JBQ2IsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztvQkFDekQsSUFBSSxVQUFVLEVBQUU7d0JBQ2QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztxQkFDM0I7b0JBQ0QsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsS0FBSyxHQUFHO29CQUNOLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQzt3QkFDaEIsS0FBSyxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQzs0QkFDeEIsTUFBTSxFQUFFLENBQUM7NEJBQ1QsTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQztnQ0FDekIsS0FBSyxFQUFFLE9BQU87NkJBQ2YsQ0FBQzs0QkFDRixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO2dDQUNyQixLQUFLLEVBQUUsU0FBUzs2QkFDakIsQ0FBQzt5QkFDSCxDQUFDO3FCQUNILENBQUM7aUJBQ0gsQ0FBQztnQkFDRixPQUFPLEtBQUssQ0FBQzthQUNkO1NBQ0Y7YUFBTSxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDN0IsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDN0IsTUFBTSxHQUFHLEdBQ1QsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLFdBQVcsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxLQUFLLElBQUk7b0JBQzVFLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQztvQkFDeEIsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDVCxJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRTtvQkFDdkUsS0FBSyxHQUFHO3dCQUNOLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQzs0QkFDaEIsTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQztnQ0FDekIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPO2dDQUNuQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7NkJBQzVCLENBQUM7NEJBQ0YsSUFBSSxFQUFFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQztnQ0FDckIsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyx1QkFBdUI7NkJBQ2hELENBQUM7NEJBQ0YsSUFBSSxFQUFFLFVBQVUsWUFBWSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVM7eUJBQ2xFLENBQUM7cUJBQ0gsQ0FBQztvQkFDRixPQUFPLEtBQUssQ0FBQztpQkFDZDthQUNGO1lBQ0QsSUFBSSxPQUFPLFlBQVksU0FBUyxFQUFFO2dCQUNoQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFO29CQUN2QixJQUFJLFNBQVMsRUFBRTt3QkFDYixLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO3dCQUN6RCxJQUFJLFVBQVUsRUFBRTs0QkFDZCxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO3lCQUMzQjt3QkFDRCxPQUFPLEtBQUssQ0FBQztxQkFDZDtvQkFDRCxLQUFLLEdBQUc7d0JBQ04sSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDOzRCQUNoQixNQUFNLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDO2dDQUN6QixLQUFLLEVBQUUsT0FBTzs2QkFDZixDQUFDOzRCQUNGLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0NBQ3JCLEtBQUssRUFBRSxTQUFTOzZCQUNqQixDQUFDO3lCQUNILENBQUM7cUJBQ0gsQ0FBQztvQkFDRixPQUFPLEtBQUssQ0FBQztpQkFDZDthQUNGO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsa0JBQWtCLENBQUMsT0FBOEMsRUFBRSxVQUFrQixFQUFFLGVBQTZCLEVBQUUsRUFBRSxVQUFVO1FBQ2hJLElBQUksS0FBSyxDQUFDO1FBQ1YsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDNUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxFQUFFO1lBQ2QsSUFBSSxZQUFZLENBQUMsYUFBYSxFQUFFO2dCQUM5QixLQUFLLE1BQU0sQ0FBQyxJQUFJLFlBQVksQ0FBQyxhQUFhLEVBQUU7b0JBQzFDLElBQ0UsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLElBQUksQ0FBQyxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUM7d0JBQ3JDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLEVBQ3JDO3dCQUNBLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQW1CLENBQUM7d0JBRXBELElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRTs0QkFDZixNQUFNLElBQUksR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0NBQzVCLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO2dDQUNyQixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO29DQUNyQixLQUFLLEVBQUUsTUFBTTtpQ0FDZCxDQUFDOzZCQUNILENBQUMsQ0FBQzs0QkFDSCxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO3lCQUNyQjt3QkFFRCxJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQUU7NEJBQ25CLElBQUksYUFBcUIsQ0FBQzs0QkFDMUIsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsRUFBRSxDQUFDOzRCQUNwQyxhQUFhLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7NEJBQ25DLElBQUksYUFBYSxHQUFHLFNBQVMsRUFBRTtnQ0FDN0IsYUFBYSxHQUFHLFNBQVMsQ0FBQzs2QkFDM0I7NEJBQ0QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUM7eUJBQ3ZDO3dCQUNELE1BQU07cUJBQ1A7aUJBQ0Y7YUFDRjtZQUVELElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ1YsSUFBSSxhQUFxQixDQUFDO2dCQUMxQixJQUFJLFlBQVksQ0FBQyxVQUFVLEVBQUU7b0JBQzNCLGFBQWEsR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUMvQztxQkFBTTtvQkFDTCxNQUFNLFNBQVMsR0FBRyxDQUFDLENBQUM7b0JBQ3BCLGFBQWEsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDbkMsSUFBSSxhQUFhLEdBQUcsU0FBUyxFQUFFO3dCQUM3QixhQUFhLEdBQUcsU0FBUyxDQUFDO3FCQUMzQjtpQkFDRjtnQkFFRCxLQUFLLEdBQUc7b0JBQ04sSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDO3dCQUNoQixLQUFLLEVBQUUsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDOzRCQUN4QixNQUFNLEVBQUUsYUFBYTs0QkFDckIsTUFBTSxFQUFFLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQztnQ0FDekIsS0FBSyxFQUFFLE9BQU87NkJBQ2YsQ0FBQzs0QkFDRixJQUFJLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO2dDQUNyQixLQUFLLEVBQUUsd0JBQXdCOzZCQUNoQyxDQUFDO3lCQUNILENBQUM7d0JBQ0YsSUFBSSxFQUFFLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQzs0QkFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7NEJBQ3JCLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0NBQ3JCLEtBQUssRUFBRSxNQUFNOzZCQUNkLENBQUM7eUJBQ0gsQ0FBQztxQkFDSCxDQUFDO2lCQUNILENBQUM7YUFDSDtTQUNGO2FBQU07WUFDTCxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQzNEO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsUUFBUSxDQUFDLE9BQU8sRUFBRSxVQUFVO1FBQzFCLElBQUksS0FBSyxHQUFHLFVBQVUsQ0FBQztRQUN2QixJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsT0FBTztTQUNSO1FBQ0QsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQztRQUV4RSxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ3JCLEtBQUssR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDakQsQ0FBQyxDQUFDLENBQUM7UUFFSCwwQ0FBMEM7UUFDMUMsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxLQUFLLEtBQUssVUFBVSxFQUFFO1lBQ25ELEtBQUssR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsQ0FBQztTQUMvQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLGdCQUFnQixDQUFDLE9BQU87UUFDOUIsUUFBUSxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDdkMsS0FBSyxPQUFPLENBQUM7WUFDYixLQUFLLFlBQVksQ0FBQztZQUNsQixLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxRQUFRLENBQUM7WUFDbEI7Z0JBQ0UsT0FBTyxTQUFTLENBQUM7U0FDcEI7SUFDSCxDQUFDOzt3RUEvV1UsWUFBWTtrRUFBWixZQUFZLFdBQVosWUFBWSxtQkFGWCxNQUFNO3VGQUVQLFlBQVk7Y0FIeEIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgdHlwZSB7IGRlZmF1bHQgYXMgT2xHZW9tZXRyeSB9IGZyb20gJ29sL2dlb20vR2VvbWV0cnknO1xuaW1wb3J0ICogYXMgb2xTdHlsZSBmcm9tICdvbC9zdHlsZSc7XG5pbXBvcnQgT2xGZWF0dXJlIGZyb20gJ29sL0ZlYXR1cmUnO1xuXG5pbXBvcnQgeyBjcmVhdGVPdmVybGF5TWFya2VyU3R5bGUgfSBmcm9tICcuLi9zaGFyZWQvb3ZlcmxheS9vdmVybGF5LW1hcmtlci1zdHlsZS51dGlscyc7XG5pbXBvcnQgUmVuZGVyRmVhdHVyZSBmcm9tICdvbC9yZW5kZXIvRmVhdHVyZSc7XG5pbXBvcnQgeyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlIH0gZnJvbSAnLi4vLi4vbWFwL3NoYXJlZC9tYXAudXRpbHMnO1xuaW1wb3J0IHsgU3R5bGVCeUF0dHJpYnV0ZSB9IGZyb20gJy4uL3NoYXJlZC92ZWN0b3IvdmVjdG9yLXN0eWxlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDbHVzdGVyUGFyYW0gfSBmcm9tICcuLi8uLi9sYXllci9zaGFyZWQvY2x1c3RlclBhcmFtJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU3R5bGVTZXJ2aWNlIHtcbiAgcHVibGljIHN0eWxlOiBvbFN0eWxlLlN0eWxlO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBzdHlsZSBiYXNlZCBvbiBhIG9iamVjdCBhc1xuICAgKiBzdHlsZToge1xuICAgKiAgICAgICBcInN0cm9rZVwiOiB7XG4gICAqICAgICAgICAgXCJjb2xvclwiOiBcImJsdWVcIixcbiAgICogICAgICAgICBcImxpbmVEYXNoXCI6IFsxMCwgNV1cbiAgICogICAgICAgfSxcbiAgICogICAgICAgXCJ0ZXh0XCI6IHtcbiAgICogICAgICAgICBcIm1pblNjYWxlRGVub21cIjogNTAwMDAsXG4gICAqICAgICAgICAgXCJtYXhTY2FsZURlbm9tXCI6IDIwMDAwMCxcbiAgICogICAgICAgICBcIm1pblJlc29sdXRpb25cIjogMTAwLFxuICAgKiAgICAgICAgIFwibWF4UmVzb2x1dGlvblwiOiA0MDAsXG4gICAqICAgICAgICAgXCJhdHRyaWJ1dGVcIjogXCJUSEUgQ09MVU1OIE5BTUUgVE8gUkVUUklFVkUgVEhFIExBQkVMIFZBTFVFXCIsXG4gICAqICAgICAgICAgXCJ0ZXh0XCI6IFwiTVkgSEFSQ09ERUQgVEVYVFwiLFxuICAgKiAgICAgICAgIFwic3Ryb2tlXCI6IHtcbiAgICogICAgICAgICAgIFwiY29sb3JcIjogXCJibHVlXCIsXG4gICAqICAgICAgICAgICBcIndpZHRoXCI6IDAuNzVcbiAgICogICAgICAgICB9LFxuICAgKiAgICAgICAgIFwiZmlsbFwiOiB7XG4gICAqICAgICAgICAgICBcImNvbG9yXCI6IFwiYmxhY2tcIlxuICAgKiAgICAgICAgIH0sXG4gICAqICAgICAgICAgXCJmb250XCI6IFwiMjBweCBzYW5zLXNlcmlmXCIsXG4gICAqICAgICAgICAgXCJvdmVyZmxvd1wiOiB0cnVlLFxuICAgKiAgICAgICAgIFwib2Zmc2V0WFwiOiAxMCxcbiAgICogICAgICAgICBcIm9mZnNldFlcIjogMjAsXG4gICAqICAgICAgICAgXCJwYWRkaW5nXCI6IFsyLjUsIDIuNSwgMi41LCAyLjVdXG4gICAqICAgICAgIH0sXG4gICAqICAgICAgIFwid2lkdGhcIjogNVxuICAgKiAgICAgfVxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9uc1xuICAgKiBAcGFyYW0gZmVhdHVyZSBmZWF0dXJlIHRvIGFwcGx5IHN0eWxlIG9uXG4gICAqIEBwYXJhbSByZXNvbHV0aW9uIGN1cnJlbnQgbWFwIHJlc29sdXRpb24sIHRvIGNvbnRyb2wgbGFiZWwgcmVzb2x1dGlvbiByYW5nZVxuICAgKiBAcmV0dXJuc1xuICAgKi9cbiAgY3JlYXRlU3R5bGUob3B0aW9uczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSwgZmVhdHVyZT86IFJlbmRlckZlYXR1cmUgfCBPbEZlYXR1cmU8T2xHZW9tZXRyeT4sIHJlc29sdXRpb24/OiBudW1iZXIpIHtcblxuICAgIGlmICghb3B0aW9ucykge1xuICAgICAgcmV0dXJuIGNyZWF0ZU92ZXJsYXlNYXJrZXJTdHlsZSgpO1xuICAgIH1cbiAgICBpZiAodHlwZW9mIG9wdGlvbnMgPT09ICdmdW5jdGlvbicgfHwgb3B0aW9ucyBpbnN0YW5jZW9mIG9sU3R5bGUuU3R5bGUpIHtcbiAgICAgIHJldHVybiBvcHRpb25zO1xuICAgIH1cbiAgICBjb25zdCBwYXJzZWRTdHlsZSA9IHRoaXMucGFyc2VTdHlsZSgnc3R5bGUnLCBvcHRpb25zKTtcbiAgICBpZiAocGFyc2VkU3R5bGUuZ2V0VGV4dCgpKSB7XG4gICAgICBsZXQgbGFiZWxNaW5SZXNvbHV0aW9uID0gMDtcbiAgICAgIGxldCBsYWJlbE1heFJlc29sdXRpb24gPSBJbmZpbml0eTtcbiAgICAgIGlmIChvcHRpb25zLnRleHQpIHtcbiAgICAgICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID1cbiAgICAgICAgICBvcHRpb25zLnRleHQ/Lm1pblNjYWxlRGVub20gPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihvcHRpb25zLnRleHQubWluU2NhbGVEZW5vbSkpIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBsYWJlbE1heFJlc29sdXRpb25Gcm9tU2NhbGUgPVxuICAgICAgICAgIG9wdGlvbnMudGV4dD8ubWF4U2NhbGVEZW5vbSA/IGdldFJlc29sdXRpb25Gcm9tU2NhbGUoTnVtYmVyKG9wdGlvbnMudGV4dC5tYXhTY2FsZURlbm9tKSkgOiB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IG1pblJlc29sdXRpb24gPSBvcHRpb25zLnRleHQ/Lm1pblJlc29sdXRpb24gPyBvcHRpb25zLnRleHQubWluUmVzb2x1dGlvbiA6IDA7XG4gICAgICAgIGNvbnN0IG1heFJlc29sdXRpb24gPSBvcHRpb25zLnRleHQ/Lm1heFJlc29sdXRpb24gPyBvcHRpb25zLnRleHQubWF4UmVzb2x1dGlvbiA6IEluZmluaXR5O1xuXG4gICAgICAgIGxhYmVsTWluUmVzb2x1dGlvbiA9IGxhYmVsTWluUmVzb2x1dGlvbkZyb21TY2FsZSB8fCBtaW5SZXNvbHV0aW9uO1xuICAgICAgICBsYWJlbE1heFJlc29sdXRpb24gPSBsYWJlbE1heFJlc29sdXRpb25Gcm9tU2NhbGUgfHwgbWF4UmVzb2x1dGlvbjtcbiAgICAgIH1cbiAgICAgIGlmIChmZWF0dXJlICYmIHJlc29sdXRpb24gPj0gbGFiZWxNaW5SZXNvbHV0aW9uICYmIHJlc29sdXRpb24gPD0gbGFiZWxNYXhSZXNvbHV0aW9uKSB7XG4gICAgICAgIGlmIChmZWF0dXJlICYmIG9wdGlvbnMudGV4dC5hdHRyaWJ1dGUpIHtcbiAgICAgICAgICBwYXJzZWRTdHlsZS5nZXRUZXh0KCkuc2V0VGV4dCh0aGlzLmdldExhYmVsKGZlYXR1cmUsIG9wdGlvbnMudGV4dC5hdHRyaWJ1dGUpKTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcGFyc2VkU3R5bGUuc2V0VGV4dCgpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcGFyc2VkU3R5bGU7XG4gIH1cblxuICBwdWJsaWMgcGFyc2VTdHlsZShrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xuICAgIGNvbnN0IHN0eWxlT3B0aW9ucyA9IHt9O1xuICAgIGNvbnN0IG9sQ2xzID0gdGhpcy5nZXRPbENscyhrZXkpO1xuXG4gICAgaWYgKG9sQ2xzICYmIHZhbHVlIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICBPYmplY3Qua2V5cyh2YWx1ZSkuZm9yRWFjaChfa2V5ID0+IHtcbiAgICAgICAgY29uc3Qgb2xLZXkgPSB0aGlzLmdldE9sS2V5KF9rZXkpO1xuICAgICAgICBzdHlsZU9wdGlvbnNbb2xLZXldID0gdGhpcy5wYXJzZVN0eWxlKF9rZXksIHZhbHVlW19rZXldKTtcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIG5ldyBvbENscyhzdHlsZU9wdGlvbnMpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRPbEtleShrZXk6IGFueSkge1xuICAgIGxldCBvbEtleTtcbiAgICBzd2l0Y2ggKGtleS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICBjYXNlICdjaXJjbGUnOlxuICAgICAgY2FzZSAncmVndWxhcnNoYXBlJzpcbiAgICAgIGNhc2UgJ2ljb24nOlxuICAgICAgICBvbEtleSA9ICdpbWFnZSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9sS2V5IHx8IGtleTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0T2xDbHMoa2V5OiBhbnkpIHtcbiAgICBsZXQgb2xDbHMgPSBvbFN0eWxlW2tleS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGtleS5zbGljZSgxKV07XG4gICAgaWYgKGtleSA9PT0gJ3JlZ3VsYXJzaGFwZScpIHtcbiAgICAgIG9sQ2xzID0gb2xTdHlsZS5SZWd1bGFyU2hhcGU7XG4gICAgfVxuICAgIGlmIChrZXkgPT09ICdiYWNrZ3JvdW5kRmlsbCcpIHtcbiAgICAgIG9sQ2xzID0gb2xTdHlsZS5GaWxsO1xuICAgIH1cbiAgICBpZiAoa2V5ID09PSAnYmFja2dyb3VuZFN0cm9rZScpIHtcbiAgICAgIG9sQ2xzID0gb2xTdHlsZS5TdHJva2U7XG4gICAgfVxuXG4gICAgcmV0dXJuIG9sQ2xzO1xuICB9XG5cbiAgY3JlYXRlU3R5bGVCeUF0dHJpYnV0ZShmZWF0dXJlOiBSZW5kZXJGZWF0dXJlIHwgT2xGZWF0dXJlPE9sR2VvbWV0cnk+LCBzdHlsZUJ5QXR0cmlidXRlOiBTdHlsZUJ5QXR0cmlidXRlLCByZXNvbHV0aW9uOiBudW1iZXIpIHtcblxuICAgIGxldCBzdHlsZTtcbiAgICBjb25zdCB0eXBlID0gc3R5bGVCeUF0dHJpYnV0ZS50eXBlID8gc3R5bGVCeUF0dHJpYnV0ZS50eXBlIDogdGhpcy5ndWVzc1R5cGVGZWF0dXJlKGZlYXR1cmUpO1xuICAgIGNvbnN0IGF0dHJpYnV0ZSA9IHN0eWxlQnlBdHRyaWJ1dGUuYXR0cmlidXRlO1xuICAgIGNvbnN0IGRhdGEgPSBzdHlsZUJ5QXR0cmlidXRlLmRhdGE7XG4gICAgY29uc3Qgc3Ryb2tlID0gc3R5bGVCeUF0dHJpYnV0ZS5zdHJva2U7XG4gICAgY29uc3Qgd2lkdGggPSBzdHlsZUJ5QXR0cmlidXRlLndpZHRoO1xuICAgIGNvbnN0IGZpbGwgPSBzdHlsZUJ5QXR0cmlidXRlLmZpbGw7XG4gICAgY29uc3QgYW5jaG9yID0gc3R5bGVCeUF0dHJpYnV0ZS5hbmNob3I7XG4gICAgY29uc3QgcmFkaXVzID0gc3R5bGVCeUF0dHJpYnV0ZS5yYWRpdXM7XG4gICAgY29uc3QgaWNvbiA9IHN0eWxlQnlBdHRyaWJ1dGUuaWNvbjtcbiAgICBjb25zdCBzY2FsZSA9IHN0eWxlQnlBdHRyaWJ1dGUuc2NhbGU7XG4gICAgY29uc3Qgc2l6ZSA9IGRhdGEgPyBkYXRhLmxlbmd0aCA6IDA7XG4gICAgY29uc3QgbGFiZWwgPSBzdHlsZUJ5QXR0cmlidXRlLmxhYmVsID8gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbC5hdHRyaWJ1dGUgOiB1bmRlZmluZWQ7XG4gICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlID1cbiAgICAgIHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/Lm1pblNjYWxlRGVub20gPyBnZXRSZXNvbHV0aW9uRnJvbVNjYWxlKE51bWJlcihzdHlsZUJ5QXR0cmlidXRlLmxhYmVsLm1pblNjYWxlRGVub20pKSA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCBsYWJlbE1heFJlc29sdXRpb25Gcm9tU2NhbGUgPVxuICAgICAgc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWF4U2NhbGVEZW5vbSA/IGdldFJlc29sdXRpb25Gcm9tU2NhbGUoTnVtYmVyKHN0eWxlQnlBdHRyaWJ1dGUubGFiZWwubWF4U2NhbGVEZW5vbSkpIDogdW5kZWZpbmVkO1xuICAgIGNvbnN0IG1pblJlc29sdXRpb24gPSBzdHlsZUJ5QXR0cmlidXRlLmxhYmVsPy5taW5SZXNvbHV0aW9uID8gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbC5taW5SZXNvbHV0aW9uIDogMDtcbiAgICBjb25zdCBtYXhSZXNvbHV0aW9uID0gc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbD8ubWF4UmVzb2x1dGlvbiA/IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWwubWF4UmVzb2x1dGlvbiA6IEluZmluaXR5O1xuXG4gICAgY29uc3QgbGFiZWxNaW5SZXNvbHV0aW9uID0gbGFiZWxNaW5SZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1pblJlc29sdXRpb247XG4gICAgY29uc3QgbGFiZWxNYXhSZXNvbHV0aW9uID0gbGFiZWxNYXhSZXNvbHV0aW9uRnJvbVNjYWxlIHx8IG1heFJlc29sdXRpb247XG5cbiAgICBsZXQgbGFiZWxTdHlsZSA9IHN0eWxlQnlBdHRyaWJ1dGUubGFiZWw/LnN0eWxlID8gdGhpcy5wYXJzZVN0eWxlKCd0ZXh0Jywgc3R5bGVCeUF0dHJpYnV0ZS5sYWJlbC5zdHlsZSkgOiB1bmRlZmluZWQ7XG4gICAgaWYgKCFsYWJlbFN0eWxlICYmIGxhYmVsKSB7XG4gICAgICAgIGxhYmVsU3R5bGUgPSBuZXcgb2xTdHlsZS5UZXh0KCk7XG4gICAgfVxuICAgIGNvbnN0IGJhc2VTdHlsZSA9IHN0eWxlQnlBdHRyaWJ1dGUuYmFzZVN0eWxlO1xuXG4gICAgaWYgKGxhYmVsU3R5bGUpIHtcbiAgICAgIGlmIChyZXNvbHV0aW9uID49IGxhYmVsTWluUmVzb2x1dGlvbiAmJiByZXNvbHV0aW9uIDw9IGxhYmVsTWF4UmVzb2x1dGlvbikge1xuICAgICAgICBsYWJlbFN0eWxlLnNldFRleHQodGhpcy5nZXRMYWJlbChmZWF0dXJlLCBsYWJlbCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbGFiZWxTdHlsZS5zZXRUZXh0KCcnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodHlwZSA9PT0gJ2NpcmNsZScpIHtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc2l6ZTsgaSsrKSB7XG4gICAgICAgIGNvbnN0IHZhbCA9XG4gICAgICAgICAgdHlwZW9mIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09ICd1bmRlZmluZWQnICYmIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09IG51bGxcbiAgICAgICAgICAgID8gZmVhdHVyZS5nZXQoYXR0cmlidXRlKVxuICAgICAgICAgICAgOiAnJztcbiAgICAgICAgaWYgKHZhbCA9PT0gZGF0YVtpXSB8fCB2YWwudG9TdHJpbmcoKS5tYXRjaChuZXcgUmVnRXhwKGRhdGFbaV0sICdnbWknKSkpIHtcbiAgICAgICAgICBpZiAoaWNvbikge1xuICAgICAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgICAgIG5ldyBvbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgICAgICAgICBpbWFnZTogbmV3IG9sU3R5bGUuSWNvbih7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogZmlsbCA/IGZpbGxbaV0gOiB1bmRlZmluZWQsXG4gICAgICAgICAgICAgICAgICBzcmM6IGljb25baV0sXG4gICAgICAgICAgICAgICAgICBzY2FsZTogc2NhbGUgPyBzY2FsZVtpXSA6IDEsXG4gICAgICAgICAgICAgICAgICBhbmNob3I6IGFuY2hvciA/IGFuY2hvcltpXSA6IFswLjUsIDAuNV1cbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB0ZXh0OiBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgICBuZXcgb2xTdHlsZS5TdHlsZSh7XG4gICAgICAgICAgICAgIGltYWdlOiBuZXcgb2xTdHlsZS5DaXJjbGUoe1xuICAgICAgICAgICAgICAgIHJhZGl1czogcmFkaXVzID8gcmFkaXVzW2ldIDogNCxcbiAgICAgICAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogc3Ryb2tlID8gc3Ryb2tlW2ldIDogJ2JsYWNrJyxcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiB3aWR0aCA/IHdpZHRoW2ldIDogMVxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgICAgY29sb3I6IGZpbGwgPyBmaWxsW2ldIDogJ2JsYWNrJ1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICB0ZXh0OiBsYWJlbFN0eWxlIGluc3RhbmNlb2Ygb2xTdHlsZS5UZXh0ID8gbGFiZWxTdHlsZSA6IHVuZGVmaW5lZFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdO1xuICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKCEoZmVhdHVyZSBhcyBPbEZlYXR1cmU8T2xHZW9tZXRyeT4pLmdldFN0eWxlKCkpIHtcbiAgICAgICAgaWYgKGJhc2VTdHlsZSkge1xuICAgICAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShiYXNlU3R5bGUsIGZlYXR1cmUsIHJlc29sdXRpb24pO1xuICAgICAgICAgIGlmIChsYWJlbFN0eWxlKSB7XG4gICAgICAgICAgICBzdHlsZS5zZXRUZXh0KGxhYmVsU3R5bGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc3R5bGU7XG4gICAgICAgIH1cbiAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgbmV3IG9sU3R5bGUuU3R5bGUoe1xuICAgICAgICAgICAgaW1hZ2U6IG5ldyBvbFN0eWxlLkNpcmNsZSh7XG4gICAgICAgICAgICAgIHJhZGl1czogNCxcbiAgICAgICAgICAgICAgc3Ryb2tlOiBuZXcgb2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAnYmxhY2snXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICBmaWxsOiBuZXcgb2xTdHlsZS5GaWxsKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJyNiYmJiZjInXG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIH0pXG4gICAgICAgIF07XG4gICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdyZWd1bGFyJykge1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHtcbiAgICAgICAgY29uc3QgdmFsID1cbiAgICAgICAgdHlwZW9mIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09ICd1bmRlZmluZWQnICYmIGZlYXR1cmUuZ2V0KGF0dHJpYnV0ZSkgIT09IG51bGxcbiAgICAgICAgICAgID8gZmVhdHVyZS5nZXQoYXR0cmlidXRlKVxuICAgICAgICAgICAgOiAnJztcbiAgICAgICAgaWYgKHZhbCA9PT0gZGF0YVtpXSB8fCB2YWwudG9TdHJpbmcoKS5tYXRjaChuZXcgUmVnRXhwKGRhdGFbaV0sICdnbWknKSkpIHtcbiAgICAgICAgICBzdHlsZSA9IFtcbiAgICAgICAgICAgIG5ldyBvbFN0eWxlLlN0eWxlKHtcbiAgICAgICAgICAgICAgc3Ryb2tlOiBuZXcgb2xTdHlsZS5TdHJva2Uoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiBzdHJva2UgPyBzdHJva2VbaV0gOiAnYmxhY2snLFxuICAgICAgICAgICAgICAgIHdpZHRoOiB3aWR0aCA/IHdpZHRoW2ldIDogMVxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgZmlsbDogbmV3IG9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICAgICAgY29sb3I6IGZpbGwgPyBmaWxsW2ldIDogJ3JnYmEoMjU1LDI1NSwyNTUsMC40KSdcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIHRleHQ6IGxhYmVsU3R5bGUgaW5zdGFuY2VvZiBvbFN0eWxlLlRleHQgPyBsYWJlbFN0eWxlIDogdW5kZWZpbmVkXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF07XG4gICAgICAgICAgcmV0dXJuIHN0eWxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoZmVhdHVyZSBpbnN0YW5jZW9mIE9sRmVhdHVyZSkge1xuICAgICAgICBpZiAoIWZlYXR1cmUuZ2V0U3R5bGUoKSkge1xuICAgICAgICAgIGlmIChiYXNlU3R5bGUpIHtcbiAgICAgICAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShiYXNlU3R5bGUsIGZlYXR1cmUsIHJlc29sdXRpb24pO1xuICAgICAgICAgICAgaWYgKGxhYmVsU3R5bGUpIHtcbiAgICAgICAgICAgICAgc3R5bGUuc2V0VGV4dChsYWJlbFN0eWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3R5bGUgPSBbXG4gICAgICAgICAgICBuZXcgb2xTdHlsZS5TdHlsZSh7XG4gICAgICAgICAgICAgIHN0cm9rZTogbmV3IG9sU3R5bGUuU3Ryb2tlKHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJ2JsYWNrJ1xuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgZmlsbDogbmV3IG9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICAgICAgY29sb3I6ICcjYmJiYmYyJ1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdO1xuICAgICAgICAgIHJldHVybiBzdHlsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNyZWF0ZUNsdXN0ZXJTdHlsZShmZWF0dXJlOiBSZW5kZXJGZWF0dXJlIHwgT2xGZWF0dXJlPE9sR2VvbWV0cnk+LCByZXNvbHV0aW9uOiBudW1iZXIsIGNsdXN0ZXJQYXJhbTogQ2x1c3RlclBhcmFtID0ge30sIGxheWVyU3R5bGUpIHtcbiAgICBsZXQgc3R5bGU7XG4gICAgY29uc3Qgc2l6ZSA9IGZlYXR1cmUuZ2V0KCdmZWF0dXJlcycpLmxlbmd0aDtcbiAgICBpZiAoc2l6ZSAhPT0gMSkge1xuICAgICAgaWYgKGNsdXN0ZXJQYXJhbS5jbHVzdGVyUmFuZ2VzKSB7XG4gICAgICAgIGZvciAoY29uc3QgciBvZiBjbHVzdGVyUGFyYW0uY2x1c3RlclJhbmdlcykge1xuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICghci5taW5SYWRpdXMgfHwgci5taW5SYWRpdXMgPD0gc2l6ZSkgJiZcbiAgICAgICAgICAgICghci5tYXhSYWRpdXMgfHwgci5tYXhSYWRpdXMgPj0gc2l6ZSlcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHN0eWxlID0gdGhpcy5jcmVhdGVTdHlsZShyLnN0eWxlKSBhcyBvbFN0eWxlLkNpcmNsZTtcblxuICAgICAgICAgICAgaWYgKHIuc2hvd1JhbmdlKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHRleHQgPSBuZXcgb2xTdHlsZS5UZXh0KHtcbiAgICAgICAgICAgICAgICB0ZXh0OiBzaXplLnRvU3RyaW5nKCksXG4gICAgICAgICAgICAgICAgZmlsbDogbmV3IG9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJyNmZmYnXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIHN0eWxlLnNldFRleHQodGV4dCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChyLmR5bmFtaWNSYWRpdXMpIHtcbiAgICAgICAgICAgICAgbGV0IGNsdXN0ZXJSYWRpdXM6IG51bWJlcjtcbiAgICAgICAgICAgICAgY29uc3QgcmFkaXVzTWluID0gc3R5bGUuZ2V0UmFkaXVzKCk7XG4gICAgICAgICAgICAgIGNsdXN0ZXJSYWRpdXMgPSA1ICogTWF0aC5sb2coc2l6ZSk7XG4gICAgICAgICAgICAgIGlmIChjbHVzdGVyUmFkaXVzIDwgcmFkaXVzTWluKSB7XG4gICAgICAgICAgICAgICAgY2x1c3RlclJhZGl1cyA9IHJhZGl1c01pbjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzdHlsZS5pbWFnZV8uc2V0UmFkaXVzKGNsdXN0ZXJSYWRpdXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlmICghc3R5bGUpIHtcbiAgICAgICAgbGV0IGNsdXN0ZXJSYWRpdXM6IG51bWJlcjtcbiAgICAgICAgaWYgKGNsdXN0ZXJQYXJhbS5yYWRpdXNDYWxjKSB7XG4gICAgICAgICAgY2x1c3RlclJhZGl1cyA9IGNsdXN0ZXJQYXJhbS5yYWRpdXNDYWxjKHNpemUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHJhZGl1c01pbiA9IDY7XG4gICAgICAgICAgY2x1c3RlclJhZGl1cyA9IDUgKiBNYXRoLmxvZyhzaXplKTtcbiAgICAgICAgICBpZiAoY2x1c3RlclJhZGl1cyA8IHJhZGl1c01pbikge1xuICAgICAgICAgICAgY2x1c3RlclJhZGl1cyA9IHJhZGl1c01pbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzdHlsZSA9IFtcbiAgICAgICAgICBuZXcgb2xTdHlsZS5TdHlsZSh7XG4gICAgICAgICAgICBpbWFnZTogbmV3IG9sU3R5bGUuQ2lyY2xlKHtcbiAgICAgICAgICAgICAgcmFkaXVzOiBjbHVzdGVyUmFkaXVzLFxuICAgICAgICAgICAgICBzdHJva2U6IG5ldyBvbFN0eWxlLlN0cm9rZSh7XG4gICAgICAgICAgICAgICAgY29sb3I6ICdibGFjaydcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgIGZpbGw6IG5ldyBvbFN0eWxlLkZpbGwoe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAncmdiYSgyNCwgMTM0LCA0NSwgMC41KSdcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGV4dDogbmV3IG9sU3R5bGUuVGV4dCh7XG4gICAgICAgICAgICAgIHRleHQ6IHNpemUudG9TdHJpbmcoKSxcbiAgICAgICAgICAgICAgZmlsbDogbmV3IG9sU3R5bGUuRmlsbCh7XG4gICAgICAgICAgICAgICAgY29sb3I6ICcjZmZmJ1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICB9KVxuICAgICAgICBdO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBzdHlsZSA9IHRoaXMuY3JlYXRlU3R5bGUobGF5ZXJTdHlsZSwgZmVhdHVyZSwgcmVzb2x1dGlvbik7XG4gICAgfVxuICAgIHJldHVybiBzdHlsZTtcbiAgfVxuXG4gIGdldExhYmVsKGZlYXR1cmUsIGxhYmVsTWF0Y2gpOiBzdHJpbmcge1xuICAgIGxldCBsYWJlbCA9IGxhYmVsTWF0Y2g7XG4gICAgaWYgKCFsYWJlbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBsYWJlbFRvR2V0ID0gQXJyYXkuZnJvbShsYWJlbE1hdGNoLm1hdGNoQWxsKC9cXCRcXHsoW15cXHtcXH1dKylcXH0vZykpO1xuXG4gICAgbGFiZWxUb0dldC5mb3JFYWNoKHYgPT4ge1xuICAgICAgbGFiZWwgPSBsYWJlbC5yZXBsYWNlKHZbMF0sIGZlYXR1cmUuZ2V0KHZbMV0pKTtcbiAgICB9KTtcblxuICAgIC8vIE5vdGhpbmcgZG9uZT8gY2hlY2sgZmVhdHVyZSdzIGF0dHJpYnV0ZVxuICAgIGlmIChsYWJlbFRvR2V0Lmxlbmd0aCA9PT0gMCAmJiBsYWJlbCA9PT0gbGFiZWxNYXRjaCkge1xuICAgICAgbGFiZWwgPSBmZWF0dXJlLmdldChsYWJlbE1hdGNoKSB8fCBsYWJlbE1hdGNoO1xuICAgIH1cblxuICAgIHJldHVybiBsYWJlbDtcbiAgfVxuXG4gIHByaXZhdGUgZ3Vlc3NUeXBlRmVhdHVyZShmZWF0dXJlKSB7XG4gICAgc3dpdGNoIChmZWF0dXJlLmdldEdlb21ldHJ5KCkuZ2V0VHlwZSgpKSB7XG4gICAgICBjYXNlICdQb2ludCc6XG4gICAgICBjYXNlICdNdWx0aVBvaW50JzpcbiAgICAgIGNhc2UgJ0NpcmNsZSc6XG4gICAgICAgIHJldHVybiAnY2lyY2xlJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAncmVndWxhcic7XG4gICAgfVxuICB9XG59XG4iXX0=
|