@kando-env/kando-ui 1.2.228-alpha.32 → 1.2.228-alpha.35
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/lib/Router.js +41 -35
- package/lib/Widgets/EventsCarousel/EventsCarousel.js +6 -4
- package/lib/Widgets/EventsRow/EventsRow.js +6 -4
- package/lib/Widgets/Map/GraphUtils.js +1 -1
- package/lib/Widgets/Map/Map.js +24 -33
- package/lib/Widgets/Map/MapUtils.js +1 -1
- package/lib/Widgets/Map/areas/AreaPolygon.js +5 -3
- package/lib/Widgets/Map/areas/AreaPolygons.js +5 -3
- package/lib/Widgets/Map/edges/Edge.js +5 -3
- package/lib/Widgets/Map/edges/Edges.js +5 -3
- package/lib/Widgets/Map/edges/arrows/Arrows.js +3 -3
- package/lib/Widgets/Map/events/Event.js +5 -3
- package/lib/Widgets/Map/events/EventIndicator.js +5 -3
- package/lib/Widgets/Map/events/EventPath.js +5 -3
- package/lib/Widgets/Map/events/EventUtils.js +1 -1
- package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +5 -3
- package/lib/Widgets/Map/events/PointOfEvent.js +5 -3
- package/lib/Widgets/Map/events/PointsForSpecificEvent.js +4 -2
- package/lib/Widgets/Map/events/Snail.js +5 -3
- package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +5 -3
- package/lib/Widgets/Map/map/FloatingGraph.js +1 -1
- package/lib/Widgets/Map/map/GraphDateButton.js +1 -1
- package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +1 -1
- package/lib/Widgets/Map/points/PointIcon.js +1 -1
- package/lib/Widgets/Map/points/PointMarker.js +4 -2
- package/lib/Widgets/Map/points/PointMarkers.js +5 -3
- package/lib/Widgets/Map/points/PointUtils.js +1 -1
- package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +5 -3
- package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +5 -3
- package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +5 -3
- package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +1 -1
- package/lib/Widgets/MostPolluting/Areas/Areas.js +5 -3
- package/lib/Widgets/MostPolluting/Areas/styles.js +1 -1
- package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/Factories.js +5 -3
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/styles.js +1 -1
- package/lib/Widgets/MostPolluting/MostPolluting.js +5 -3
- package/lib/Widgets/MostPolluting/MostPolluting.stories.js +1 -1
- package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +1 -1
- package/lib/Widgets/MostPolluting/ShowMore/styles.js +1 -1
- package/lib/Widgets/MostPolluting/assets/index.js +1 -1
- package/lib/Widgets/MostPolluting/components/ChangePercent.js +1 -1
- package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +1 -1
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +1 -1
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +1 -1
- package/lib/Widgets/MostPolluting/components/PotentialImpact.js +1 -1
- package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +1 -1
- package/lib/Widgets/MostPolluting/styles.js +1 -1
- package/lib/Widgets/PotentialImpactSummary/Back/Back.js +1 -1
- package/lib/Widgets/PotentialImpactSummary/Icon.js +1 -1
- package/lib/Widgets/PotentialImpactSummary/index.js +3 -3
- package/lib/Widgets/PotentialImpactSummary/index.test.js +1 -1
- package/lib/Widgets/PotentialImpactSummary/styles.js +1 -1
- package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +1 -1
- package/lib/Widgets/QualitySummary/PieChart/PieChart.js +1 -1
- package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +1 -1
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +1 -1
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +5 -3
- package/lib/Widgets/QualitySummary/QualitySummary.js +1 -1
- package/lib/Widgets/QualitySummary/styles.js +1 -1
- package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +5 -3
- package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +5 -3
- package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +1 -1
- package/lib/Widgets/UtilityInformation/UtilityInformation.js +7 -5
- package/lib/Widgets/UtilityInformation/styles.js +5 -3
- package/lib/components/ApplyButton/ApplyButton.js +1 -1
- package/lib/components/ApplyButton/index.js +1 -1
- package/lib/components/Backdrop/Backdrop.js +1 -1
- package/lib/components/ContentLoader/ContentLoader.js +1 -1
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +1 -1
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +1 -1
- package/lib/components/CustomInputs/DoubleTabs/styles.js +1 -1
- package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +5 -3
- package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +1 -1
- package/lib/components/CustomInputs/Search/Search.js +5 -3
- package/lib/components/CustomInputs/Search/index.js +1 -1
- package/lib/components/CustomInputs/Select/Select.js +5 -3
- package/lib/components/CustomInputs/Select/Select.stories.js +1 -1
- package/lib/components/DamageType/DamageType.js +5 -3
- package/lib/components/DamageType/index.js +1 -1
- package/lib/components/DataLoaderError/DataLoaderError.js +1 -1
- package/lib/components/DischargeHeatmap/DischargeHeatmap.js +1 -1
- package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +1 -1
- package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +5 -3
- package/lib/components/DischargeHeatmap/HighchartsOptions.js +1 -1
- package/lib/components/DischargeHeatmap/index.js +1 -1
- package/lib/components/DischargeHeatmap/popupText.js +1 -1
- package/lib/components/DischargeHeatmap/titles.js +1 -1
- package/lib/components/ErrorBoundary.js +1 -1
- package/lib/components/Events/Events.js +5 -3
- package/lib/components/Events/index.js +1 -1
- package/lib/components/Graph/Graph.js +7 -5
- package/lib/components/Graph/index.js +1 -1
- package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +1 -1
- package/lib/components/Header/Breadcrumbs/index.js +1 -1
- package/lib/components/Header/DoubleTabs/DoubleTabs.js +5 -3
- package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +1 -1
- package/lib/components/Header/DoubleTabs/styles.js +1 -1
- package/lib/components/Header/Header.js +1 -1
- package/lib/components/Header/Header.stories.js +1 -1
- package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +1 -1
- package/lib/components/Header/InfoBar/InfoBar.js +5 -3
- package/lib/components/Header/InfoBar/Search/Control.js +1 -1
- package/lib/components/Header/InfoBar/Search/GroupLabel.js +1 -1
- package/lib/components/Header/InfoBar/Search/Search.js +5 -3
- package/lib/components/Header/InfoBar/Search/SearchContainer.js +5 -3
- package/lib/components/Header/InfoBar/Search/index.js +1 -1
- package/lib/components/Header/InfoBar/Search/searchStyle.js +1 -1
- package/lib/components/Header/KandoNavbar/KandoNavbar.js +5 -3
- package/lib/components/Header/KandoNavbar/index.js +1 -1
- package/lib/components/Header/Slideshow/Slideshow.js +5 -3
- package/lib/components/Header/Slideshow/index.js +1 -1
- package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +1 -1
- package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +1 -1
- package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +1 -1
- package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +1 -1
- package/lib/components/Header/Toolbar/Toolbar.js +6 -4
- package/lib/components/InfoBar/InfoBar.js +5 -3
- package/lib/components/InfoBar/InfoBar.stories.js +1 -1
- package/lib/components/KandoModal/KandoModal.js +5 -3
- package/lib/components/KandoModal/index.js +1 -1
- package/lib/components/Link.js +1 -1
- package/lib/components/Links/CustomRedirect/CustomRedirect.js +1 -1
- package/lib/components/Links/StyledLink/StyledLink.js +1 -1
- package/lib/components/Links/StyledNavLink/StyledNavLink.js +1 -1
- package/lib/components/LiveEvents/CarouselSlide.js +1 -1
- package/lib/components/LiveEvents/LiveEvents.js +1 -1
- package/lib/components/LiveEvents/index.js +1 -1
- package/lib/components/LoaderByPercent/LoaderByPercent.js +1 -1
- package/lib/components/Map/Map.js +5 -3
- package/lib/components/Map/index.js +1 -1
- package/lib/components/Modal/Modal.js +1 -1
- package/lib/components/NarrowHeader.js +1 -1
- package/lib/components/PointInfo/PointInfo.js +1 -1
- package/lib/components/PointInfo/index.js +1 -1
- package/lib/components/PopupModal/PopupModal.js +1 -1
- package/lib/components/PopupModal/PopupModal.stories.js +1 -1
- package/lib/components/Sector/Sector.js +1 -1
- package/lib/components/Sector/Sector.test.js +1 -1
- package/lib/components/Sector/index.js +1 -1
- package/lib/components/Sector/sectorIcons.js +1 -1
- package/lib/components/SevereEvent/Eta/Eta.js +5 -3
- package/lib/components/SevereEvent/Eta/styles.js +1 -1
- package/lib/components/SevereEvent/SevereEvent.js +5 -3
- package/lib/components/Spinner/Spinner.js +1 -1
- package/lib/components/Spinner/Spinner.stories.js +1 -1
- package/lib/components/Spinner/index.js +1 -1
- package/lib/components/Spinner/styles.js +1 -1
- package/lib/components/Tabs/Tabs.js +6 -4
- package/lib/components/Tabs/Tabs.stories.js +1 -1
- package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +5 -3
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +5 -3
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +5 -3
- package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +1 -1
- package/lib/components/TimeRangeSelector/TimeRangeHelper.js +1 -1
- package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +1 -1
- package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +1 -1
- package/lib/components/TimeRangeSelector/TimeRangeList.js +5 -3
- package/lib/components/TimeRangeSelector/TimeRangeOptions.js +5 -3
- package/lib/components/TimeRangeSelector/TimeRangeSelector.js +5 -3
- package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +1 -1
- package/lib/components/TimeRangeSelector/index.js +1 -1
- package/lib/components/Toggle/Toggle.js +5 -3
- package/lib/components/Toggle/index.js +1 -1
- package/lib/components/TrendGraph/TrendGraph.js +6 -4
- package/lib/components/TrendGraph/index.js +1 -1
- package/lib/components/TrendGraphNVL/TrendGraphNVL.js +5 -3
- package/lib/components/TrendGraphNVL/index.js +1 -1
- package/lib/development-environment/index.js +1 -1
- package/lib/development-environment/mock/browser.js +1 -1
- package/lib/development-environment/togly/ToglyDashboard.js +5 -3
- package/lib/development-environment/togly/ToglyItem.js +5 -3
- package/lib/development-environment/togly/init.js +1 -1
- package/lib/development-environment/togly/useLocalStorage.js +1 -1
- package/lib/hooks/useApi.js +31 -29
- package/lib/hooks/useApiWithDashboardQuery.js +1 -1
- package/lib/hooks/useInitializeHeaders.js +1 -1
- package/lib/hooks/useKandoFetch.js +1 -1
- package/lib/hooks/useMap.js +4 -4
- package/lib/hooks/useNavContext.js +1 -1
- package/lib/hooks/useUserTimeZone.test.js +5 -3
- package/lib/hooks/useWindowSize.js +1 -1
- package/lib/index.js +1 -1
- package/lib/macros/getVersion.js +1 -1
- package/lib/pages/AreaPage/AreaPage.js +31 -27
- package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +4 -2
- package/lib/pages/AreaPage/Dashboard/Dashboard.js +5 -3
- package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +5 -3
- package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +1 -1
- package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +5 -3
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +1 -1
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +1 -1
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +1 -1
- package/lib/pages/AreaPage/Dashboard/Sites/styles.js +1 -1
- package/lib/pages/AssessmentPage/AssessmentPage.js +5 -3
- package/lib/pages/CannyWidget/Feedback.js +5 -3
- package/lib/pages/CovidPage/CovidPage.js +5 -3
- package/lib/pages/CovidPage/components/Body.js +5 -3
- package/lib/pages/CovidPage/components/Map.js +5 -3
- package/lib/pages/CovidPage/components/Sidebar.js +5 -3
- package/lib/pages/CovidPage/components/Summary.js +5 -3
- package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +5 -3
- package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +1 -1
- package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +5 -3
- package/lib/pages/CovidPage/components/TrendPopupContent/index.js +1 -1
- package/lib/pages/CovidPage/components/areas/Area.js +5 -3
- package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +5 -3
- package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +5 -3
- package/lib/pages/CovidPage/components/areas/AreasList.js +5 -3
- package/lib/pages/CovidPage/components/areas/Sort.js +5 -3
- package/lib/pages/EventsPage/Body/Body.js +5 -3
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +5 -3
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +1 -1
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +1 -1
- package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +1 -1
- package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +1 -1
- package/lib/pages/EventsPage/DragAndDropArea/index.js +1 -1
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +5 -3
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +1 -1
- package/lib/pages/EventsPage/EventsPage.js +5 -3
- package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +6 -4
- package/lib/pages/EventsPage/events/MoreInfo.js +5 -3
- package/lib/pages/EventsPage/events/Sidebar.js +5 -3
- package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +5 -3
- package/lib/pages/EventsPage/events/event_info/EventDetails.js +1 -1
- package/lib/pages/EventsPage/events/event_info/EventInfo.js +5 -3
- package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +1 -1
- package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +5 -3
- package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +1 -1
- package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +5 -3
- package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +1 -1
- package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/LineChartYear/LineChartYear.js +5 -3
- package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/MockHistoryInformation.js +1 -1
- package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +5 -3
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsLineChart.js +5 -3
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +5 -3
- package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +5 -3
- package/lib/pages/EventsPage/events/event_info/samplings/Sampling.js +1 -1
- package/lib/pages/EventsPage/events/event_info/samplings/Samplings.js +1 -1
- package/lib/pages/EventsPage/events/event_info/sources/Source.js +1 -1
- package/lib/pages/EventsPage/events/event_info/sources/Sources.js +5 -3
- package/lib/pages/EventsPage/events/events_list/EventItem.js +5 -3
- package/lib/pages/EventsPage/events/events_list/EventUtils.js +1 -1
- package/lib/pages/EventsPage/events/events_list/EventsList.js +6 -4
- package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +5 -3
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +5 -3
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +5 -3
- package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +5 -3
- package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +5 -3
- package/lib/pages/EventsPage/events/events_list/Sort.js +5 -3
- package/lib/pages/ImportFileWizard/FileUploadRespones.js +1 -1
- package/lib/pages/ImportFileWizard/ImportButtomButtons.js +3 -3
- package/lib/pages/ImportFileWizard/ImportFile.js +5 -3
- package/lib/pages/ImportFileWizard/ResponseBody.js +1 -1
- package/lib/pages/ImportFileWizard/ValidationForm.js +1 -1
- package/lib/pages/ImportFileWizard/ValidationResponse.js +6 -4
- package/lib/pages/ImportFileWizard/importFileUtils.js +5 -5
- package/lib/pages/ImportFileWizard/index.js +1 -1
- package/lib/pages/ImportGisPage/ImportGisContainer.js +5 -3
- package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +1 -1
- package/lib/pages/ImportGisPage/importGisUtils.js +6 -6
- package/lib/pages/ImportGisProcess/index.js +1 -1
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +5 -3
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +1 -1
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +1 -1
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +5 -3
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +1 -1
- package/lib/pages/NotificationsPage/Notification/Notification.js +1 -1
- package/lib/pages/NotificationsPage/Notifications.stories.js +1 -1
- package/lib/pages/NotificationsPage/NotificationsPage.js +6 -4
- package/lib/pages/NotificationsPageV2/NotificationsPage.js +5 -3
- package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +1 -1
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +5 -3
- package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +5 -3
- package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +1 -1
- package/lib/pages/NotificationsPageV2/notificationUtils.js +1 -1
- package/lib/pages/OldSitePage/OldSitePage.js +56 -50
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +3 -3
- package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +1 -1
- package/lib/pages/ProfilePage/Container.js +1 -1
- package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +5 -3
- package/lib/pages/ProfilePage/ProfilePage.js +5 -3
- package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +5 -3
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +1 -1
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +5 -3
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +69 -63
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +5 -3
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +1 -1
- package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +1 -1
- package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +1 -1
- package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +1 -1
- package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +1 -1
- package/lib/pages/SamplingsPage/DesktopActions/index.js +1 -1
- package/lib/pages/SamplingsPage/NavigationDropdown.js +1 -1
- package/lib/pages/SamplingsPage/NewSamplingAction.js +24 -20
- package/lib/pages/SamplingsPage/SamplingMobileModal.js +1 -1
- package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +1 -1
- package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +1 -1
- package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +5 -3
- package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +5 -3
- package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +1 -1
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +88 -82
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +5 -3
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +5 -3
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +5 -3
- package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +5 -3
- package/lib/pages/SamplingsPage/SamplingProperties/styles.js +1 -1
- package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +1 -1
- package/lib/pages/SamplingsPage/SamplingsMobileItem.js +5 -3
- package/lib/pages/SamplingsPage/SamplingsMobileList.js +5 -3
- package/lib/pages/SamplingsPage/SamplingsPage.js +5 -3
- package/lib/pages/SamplingsPage/SamplingsPageContainer.js +5 -3
- package/lib/pages/SamplingsPage/samplingsPageUtils.js +1 -1
- package/lib/pages/SitePage/DischargePattern/DischargePattern.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/dataParser.js +3 -3
- package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/styles/styles.js +1 -1
- package/lib/pages/SitePage/SiteInformation/ContributorItem.js +1 -1
- package/lib/pages/SitePage/SiteInformation/EmptyState.js +1 -1
- package/lib/pages/SitePage/SiteInformation/PollutionContributor.js +1 -1
- package/lib/pages/SitePage/SiteInformation/SiteInformation.js +5 -3
- package/lib/pages/SitePage/SiteInformation/style.js +1 -1
- package/lib/pages/SitePage/SitePage.js +31 -27
- package/lib/pages/UploadLabResult/index.js +1 -1
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +6 -4
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +1 -1
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +1 -1
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +1 -1
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +5 -3
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +1 -1
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +1 -1
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +1 -1
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +1 -1
- package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +1 -1
- package/lib/pages/UtilityDashboardPage/TopBar/styles.js +1 -1
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +5 -3
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +1 -1
- package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +4 -2
- package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +5 -3
- package/lib/pages/WbeDashboard/ExpandableComponent.js +5 -3
- package/lib/pages/WbeDashboard/GraphWrapper.js +5 -3
- package/lib/pages/WbeDashboard/IndividualTinyGraph.js +5 -3
- package/lib/pages/WbeDashboard/SearchInput.js +5 -3
- package/lib/pages/WbeDashboard/SummaryGraph.js +26 -22
- package/lib/pages/WbeDashboard/SummaryGraphModal.js +1 -1
- package/lib/pages/WbeDashboard/Tabs.js +1 -1
- package/lib/pages/WbeDashboard/WbeDashboardPage.js +5 -3
- package/lib/pages/WbeDashboard/WbeSummaryBar.js +5 -3
- package/lib/providers/Slideshow/SlideshowProvider.js +5 -3
- package/lib/providers/UrlHistory/UrlHistoryContext.js +1 -1
- package/lib/providers/UrlHistory/UrlHistoryProvider.js +4 -2
- package/lib/providers/UrlHistory/index.js +1 -1
- package/lib/store/ImportGis/actionTypes.js +5 -5
- package/lib/store/ImportGis/reducer.js +3 -3
- package/lib/store/WBE/reducer.js +1 -1
- package/lib/store/areas/actions.js +1 -1
- package/lib/store/context/reducer.js +1 -1
- package/lib/store/edges/reducer.js +1 -1
- package/lib/store/events/reducer.js +1 -1
- package/lib/store/global/reducer.js +1 -1
- package/lib/store/rootReducer.js +1 -1
- package/lib/store/rootStore.js +1 -1
- package/lib/store/samplings/actionTypes.js +5 -5
- package/lib/store/samplings/reducer.js +1 -1
- package/lib/styles/StylesLayout.js +1 -1
- package/lib/test/mocks/browser.js +1 -1
- package/lib/test/test-utils.js +1 -1
- package/lib/ui-kit/Button/Button.js +1 -1
- package/lib/ui-kit/Button/Button.test.js +5 -3
- package/lib/ui-kit/Checkbox/Checkbox.js +1 -1
- package/lib/ui-kit/DropDown/DropDown.js +1 -1
- package/lib/ui-kit/DropDown/DropDown.test.js +1 -1
- package/lib/ui-kit/DropDown/DropDownItem.js +1 -1
- package/lib/ui-kit/DropDown/DropdownToggle.js +1 -1
- package/lib/ui-kit/IconAction/IconAction.js +1 -1
- package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +6 -4
- package/lib/ui-kit/InfoTooltip/InfoTooltip.js +1 -1
- package/lib/ui-kit/KandoList/KandoList.js +4 -2
- package/lib/ui-kit/KandoTable/KandoTable.js +5 -3
- package/lib/ui-kit/KandoTable/KandoTable.test.js +1 -1
- package/lib/ui-kit/Layout/Layout.js +1 -1
- package/lib/ui-kit/MobileInput/MobileInput.js +1 -1
- package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +1 -1
- package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +1 -1
- package/lib/ui-kit/SamplingStatus/SamplingStatus.js +1 -1
- package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +1 -1
- package/lib/ui-kit/Tooltip/Tooltip.js +1 -1
- package/lib/ui-kit/kandoStepper/KandoStepper.js +1 -1
- package/lib/utilities/Alert.js +1 -1
- package/lib/utilities/Analytics.js +1 -1
- package/lib/utilities/Enum.js +24 -22
- package/lib/utilities/ErrorBoundary.js +1 -1
- package/lib/utilities/File.js +43 -39
- package/lib/utilities/GetDir.js +1 -1
- package/lib/utilities/KandoDate.js +1 -1
- package/lib/utilities/KandoModal.js +5 -3
- package/lib/utilities/TimeFormat.js +5 -3
- package/lib/utilities/Truncate.js +5 -3
- package/lib/utilities/edgesMath.js +4 -5
- package/lib/utilities/i18n.js +1 -1
- package/lib/utilities/map/icons.js +1 -1
- package/lib/utilities/time.js +1 -1
- package/lib/utilities/uploadToS3.js +1 -1
- package/lib/utilities/urls.js +1 -1
- package/package.json +1 -2
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.SamplingProperties = void 0;
|
|
9
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
10
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
10
|
-
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/regeneratorRuntime"));
|
|
11
11
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
|
|
12
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
13
13
|
var _react = _interopRequireWildcard(require("react"));
|
|
@@ -28,6 +28,8 @@ var _SamplingPropertiesHead = require("./SamplingPropertiesHead");
|
|
|
28
28
|
var _SamplingPropertiesHeadMobile = require("./SamplingPropertiesHeadMobile");
|
|
29
29
|
var _samplingPropertiesUtils = require("./samplingPropertiesUtils");
|
|
30
30
|
var _SamplerInProcess = _interopRequireDefault(require("./SamplerInProcess"));
|
|
31
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
32
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
33
|
/*
|
|
32
34
|
* Properties and Cancelling forms.
|
|
33
35
|
**/
|
|
@@ -113,7 +115,7 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
113
115
|
}
|
|
114
116
|
return isCanceled;
|
|
115
117
|
};
|
|
116
|
-
var fetchSamplingProperties = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/
|
|
118
|
+
var fetchSamplingProperties = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
117
119
|
var samplingId,
|
|
118
120
|
op,
|
|
119
121
|
response,
|
|
@@ -121,28 +123,30 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
121
123
|
samplingProperties,
|
|
122
124
|
isCanceled,
|
|
123
125
|
_args = arguments;
|
|
124
|
-
return
|
|
125
|
-
while (1)
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
126
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
127
|
+
while (1) {
|
|
128
|
+
switch (_context.prev = _context.next) {
|
|
129
|
+
case 0:
|
|
130
|
+
samplingId = _args.length > 0 && _args[0] !== undefined ? _args[0] : sampleId;
|
|
131
|
+
op = _args.length > 1 ? _args[1] : undefined;
|
|
132
|
+
_context.next = 4;
|
|
133
|
+
return _axios.default.get((0, _urls.urls)({
|
|
134
|
+
samplingId: samplingId
|
|
135
|
+
}).samplingProperties.fetchSampling.url);
|
|
136
|
+
case 4:
|
|
137
|
+
response = _context.sent;
|
|
138
|
+
sampling = response.data;
|
|
139
|
+
samplingProperties = sampling.sampling_properties;
|
|
140
|
+
pageType.current = detectPageType(samplingProperties.sampling.is_canceled, op);
|
|
141
|
+
setCollectionTime(determineCollectionTime((0, _samplingPropertiesUtils.collectionTimeFormat)(samplingProperties.sampling.collection_time, sampling.sampling_plan.time_zone), op));
|
|
142
|
+
isCanceled = isCancelledLayout(samplingProperties.sampling.is_canceled);
|
|
143
|
+
initFormikValues(samplingProperties, isCanceled, sampling.sampling_plan.time_zone, userInfo);
|
|
144
|
+
setSamplingProperties(samplingProperties);
|
|
145
|
+
setSamplingPlan(sampling.sampling_plan);
|
|
146
|
+
case 13:
|
|
147
|
+
case "end":
|
|
148
|
+
return _context.stop();
|
|
149
|
+
}
|
|
146
150
|
}
|
|
147
151
|
}, _callee);
|
|
148
152
|
})), []);
|
|
@@ -198,65 +202,67 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
198
202
|
return formData;
|
|
199
203
|
};
|
|
200
204
|
var updateOrCreate = /*#__PURE__*/function () {
|
|
201
|
-
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/
|
|
205
|
+
var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(formData) {
|
|
202
206
|
var _samplingProperties$s;
|
|
203
207
|
var updateOrCreateSuccess, samplingID;
|
|
204
|
-
return
|
|
205
|
-
while (1)
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
208
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
209
|
+
while (1) {
|
|
210
|
+
switch (_context2.prev = _context2.next) {
|
|
211
|
+
case 0:
|
|
212
|
+
updateOrCreateSuccess = function updateOrCreateSuccess(msg) {
|
|
213
|
+
setSavingMsg(_i18n.default.t(msg));
|
|
214
|
+
setSamplingUpdated(true);
|
|
215
|
+
setOriginalSaveMessageWithTimeout();
|
|
216
|
+
handleClose();
|
|
217
|
+
};
|
|
218
|
+
samplingID = samplingProperties === null || samplingProperties === void 0 ? void 0 : (_samplingProperties$s = samplingProperties.sampling) === null || _samplingProperties$s === void 0 ? void 0 : _samplingProperties$s.id;
|
|
219
|
+
if (!(samplingID === null)) {
|
|
220
|
+
_context2.next = 16;
|
|
221
|
+
break;
|
|
222
|
+
}
|
|
223
|
+
// create
|
|
224
|
+
formData.append("sampling[date]", collectionTime);
|
|
225
|
+
_context2.prev = 4;
|
|
226
|
+
_context2.next = 7;
|
|
227
|
+
return _axios.default.post((0, _urls.urls)({
|
|
228
|
+
waterAuthorityId: waterAuthorityId
|
|
229
|
+
}).samplingProperties.createSampling.url, formData);
|
|
230
|
+
case 7:
|
|
231
|
+
updateOrCreateSuccess('buttons.created');
|
|
232
|
+
_context2.next = 14;
|
|
233
|
+
break;
|
|
234
|
+
case 10:
|
|
235
|
+
_context2.prev = 10;
|
|
236
|
+
_context2.t0 = _context2["catch"](4);
|
|
237
|
+
setSavingMsg(_i18n.default.t('buttons.error'));
|
|
210
238
|
setOriginalSaveMessageWithTimeout();
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
samplingID = samplingProperties === null || samplingProperties === void 0 ? void 0 : (_samplingProperties$s = samplingProperties.sampling) === null || _samplingProperties$s === void 0 ? void 0 : _samplingProperties$s.id;
|
|
214
|
-
if (!(samplingID === null)) {
|
|
215
|
-
_context2.next = 16;
|
|
239
|
+
case 14:
|
|
240
|
+
_context2.next = 27;
|
|
216
241
|
break;
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
// update
|
|
242
|
-
_context2.prev = 17;
|
|
243
|
-
_context2.next = 20;
|
|
244
|
-
return _axios.default.put((0, _urls.urls)({
|
|
245
|
-
samplingId: samplingID,
|
|
246
|
-
waterAuthorityId: waterAuthorityId
|
|
247
|
-
}).samplingProperties.updateSampling.url, formData);
|
|
248
|
-
case 20:
|
|
249
|
-
updateOrCreateSuccess('buttons.updated');
|
|
250
|
-
_context2.next = 27;
|
|
251
|
-
break;
|
|
252
|
-
case 23:
|
|
253
|
-
_context2.prev = 23;
|
|
254
|
-
_context2.t1 = _context2["catch"](17);
|
|
255
|
-
setSavingMsg(_i18n.default.t('buttons.error'));
|
|
256
|
-
setOriginalSaveMessageWithTimeout();
|
|
257
|
-
case 27:
|
|
258
|
-
case "end":
|
|
259
|
-
return _context2.stop();
|
|
242
|
+
case 16:
|
|
243
|
+
if (pageType.current === 'revert_cancel') {
|
|
244
|
+
formData.append("sampling[collection_time]", collectionTime);
|
|
245
|
+
}
|
|
246
|
+
// update
|
|
247
|
+
_context2.prev = 17;
|
|
248
|
+
_context2.next = 20;
|
|
249
|
+
return _axios.default.put((0, _urls.urls)({
|
|
250
|
+
samplingId: samplingID,
|
|
251
|
+
waterAuthorityId: waterAuthorityId
|
|
252
|
+
}).samplingProperties.updateSampling.url, formData);
|
|
253
|
+
case 20:
|
|
254
|
+
updateOrCreateSuccess('buttons.updated');
|
|
255
|
+
_context2.next = 27;
|
|
256
|
+
break;
|
|
257
|
+
case 23:
|
|
258
|
+
_context2.prev = 23;
|
|
259
|
+
_context2.t1 = _context2["catch"](17);
|
|
260
|
+
setSavingMsg(_i18n.default.t('buttons.error'));
|
|
261
|
+
setOriginalSaveMessageWithTimeout();
|
|
262
|
+
case 27:
|
|
263
|
+
case "end":
|
|
264
|
+
return _context2.stop();
|
|
265
|
+
}
|
|
260
266
|
}
|
|
261
267
|
}, _callee2, null, [[4, 10], [17, 23]]);
|
|
262
268
|
}));
|
|
@@ -344,4 +350,4 @@ var SamplingProperties = function SamplingProperties() {
|
|
|
344
350
|
}))));
|
|
345
351
|
};
|
|
346
352
|
exports.SamplingProperties = SamplingProperties;
|
|
347
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0RGV2aWNlRGV0ZWN0IiwiX2Zvcm1payIsIl9yZWFjdFJvdXRlckRvbSIsIl9yZWFjdFJlZHV4IiwiX0xheW91dCIsIl9pMThuIiwiX3VzZVF1ZXJ5VVJMIiwiX1NwaW5uZXIiLCJfdXJscyIsIl9zdHlsZXMiLCJfc2FtcGxpbmdzUGFnZVV0aWxzIiwiX1NhbXBsaW5nUHJvcGVydGllc0Zvcm0iLCJfU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCIsIl9TYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlIiwiX3NhbXBsaW5nUHJvcGVydGllc1V0aWxzIiwiX1NhbXBsZXJJblByb2Nlc3MiLCJpc1Byb3BlcnRpZXNQYWdlIiwicGFnZVR5cGUiLCJTYW1wbGluZ1Byb3BlcnRpZXMiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIkRhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwiZGVmYXVsdCIsImNvbGxlY3Rpb25UaW1lIiwic2V0Q29sbGVjdGlvblRpbWUiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInBob3RvcyIsInNldFBob3RvcyIsIl91c2VTdGF0ZTUiLCJfdXNlU3RhdGU2IiwicGhvdG9zVG9EZWxldGUiLCJzZXRQaG90b3NUb0RlbGV0ZSIsIl91c2VTdGF0ZTciLCJpMThuIiwidCIsIl91c2VTdGF0ZTgiLCJzYXZpbmdNc2ciLCJzZXRTYXZpbmdNc2ciLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMTAiLCJzYW1wbGluZ1VwZGF0ZWQiLCJzZXRTYW1wbGluZ1VwZGF0ZWQiLCJfdXNlU3RhdGUxMSIsInVuZGVmaW5lZCIsIl91c2VTdGF0ZTEyIiwic2FtcGxpbmdQbGFuIiwic2V0U2FtcGxpbmdQbGFuIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJsb2NhdGlvbiIsInVzZUxvY2F0aW9uIiwicXVlcnkiLCJ1c2VRdWVyeVVSTCIsInVzZXJJbmZvIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsInBlcm1pc3Npb25zIiwidXNlcl9pbmZvIiwiZGF0ZUZvcm1hdCIsImRhdGVfdGltZV9mb3JtYXQiLCJ1c2VSZWYiLCJfdXNlU3RhdGUxMyIsIl91c2VTdGF0ZTE0Iiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwic2V0U2FtcGxpbmdQcm9wZXJ0aWVzIiwiX3VzZVBhcmFtcyIsInVzZVBhcmFtcyIsInNhbXBsZUlkIiwid2F0ZXJBdXRob3JpdHlJZCIsImdsb2JhbF9kYXRhIiwibG9jYWxlIiwibmF2X2NvbnRleHRfZGF0YSIsIm5hdkNvbnRleHQiLCJpbml0Rm9ybWlrVmFsdWVzIiwiaXNDYW5jZWxlZCIsInRpbWVab25lIiwicGFnZUNvbGxlY3Rpb25UaW1lIiwiaXNDb2xsZWN0TGF5b3V0IiwiY3VycmVudCIsImNvbGxlY3Rpb25UaW1lRm9ybWF0Iiwic2FtcGxpbmciLCJjb2xsZWN0aW9uX3RpbWUiLCJzYW0iLCJmb3JtaWtWYWx1ZXMiLCJsYWJfaWQiLCJwdW1wX3NhbXBsaW5nX3ZvbHVtZSIsInB1bXBfYmF0dGVyeV9sZXZlbCIsImRlc2NyaXB0aW9uIiwia2FuZG9fcmVwIiwic2FtcGxpbmdfcGxhbl9pZCIsImNhbmNlbGxhdGlvbl9yZWFzb24iLCJpc19jYW5jZWxlZCIsImlzQ2FuY2VsbGVkTGF5b3V0IiwiY2FuY2VsZWRfYnlfaWQiLCJuYW1lIiwiZmlyc3RfbmFtZSIsImxhc3RfbmFtZSIsImlkIiwidXNlcl9pZCIsImZvcm1payIsInNldFZhbHVlcyIsInBhZ2VUeXBlMmlzQ2FuY2VsbGVkIiwiY2FuY2VsIiwiY29sbGVjdCIsInJldmVydF9jYW5jZWwiLCJmZXRjaFNhbXBsaW5nUHJvcGVydGllcyIsInVzZUNhbGxiYWNrIiwiX2FzeW5jVG9HZW5lcmF0b3IyIiwiX3JlZ2VuZXJhdG9yUnVudGltZTIiLCJtYXJrIiwiX2NhbGxlZSIsInNhbXBsaW5nSWQiLCJvcCIsInJlc3BvbnNlIiwiX2FyZ3MiLCJhcmd1bWVudHMiLCJ3cmFwIiwiX2NhbGxlZSQiLCJfY29udGV4dCIsInByZXYiLCJuZXh0IiwibGVuZ3RoIiwiYXhpb3MiLCJnZXQiLCJ1cmxzIiwiZmV0Y2hTYW1wbGluZyIsInVybCIsInNlbnQiLCJkYXRhIiwic2FtcGxpbmdfcHJvcGVydGllcyIsImRldGVjdFBhZ2VUeXBlIiwiZGV0ZXJtaW5lQ29sbGVjdGlvblRpbWUiLCJzYW1wbGluZ19wbGFuIiwidGltZV96b25lIiwic3RvcCIsInVzZUVmZmVjdCIsImdldFVybFF1ZXJ5T3AiLCJ2YWxpZGF0aW9uU2NoZW1hIiwicHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWEiLCJjYW5jZWxsYXRpb25WYWxpZGF0aW9uU2NoZW1hIiwidXNlRm9ybWlrIiwiZW5hYmxlUmVpbml0aWFsaXplIiwiaW5pdGlhbFZhbHVlcyIsInNhbXBsaW5nUHJvcGVydHkiLCJ2YWxpZGF0ZU9uQ2hhbmdlIiwidmFsaWRhdGVPbkJsdXIiLCJvblN1Ym1pdCIsInZhbHVlcyIsImhhbmRsZVN1Ym1pdCIsImhhbmRsZUNsb3NlIiwia2V5IiwiZ29CYWNrIiwicHVzaCIsInNhbXBsaW5nc1BhZ2UiLCJzYW1wbGluZ3NMaXN0Um91dGUiLCJwaWN0dXJlc19hdHRyaWJ1dGVzIiwic2F2ZUZvcm1EYXRhIiwiZm9ybURhdGFCdWlsZGVyIiwidXBkYXRlT3JDcmVhdGUiLCJzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQiLCJzZXRUaW1lb3V0IiwiZm9ybURhdGEiLCJGb3JtRGF0YSIsInZhbHVlIiwiYXBwZW5kIiwiY29uY2F0IiwidW5pcXVlUGhvdG9zVG9EZWxldGUiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiU2V0IiwiZm9yRWFjaCIsImluZGV4IiwiSlNPTiIsInN0cmluZ2lmeSIsIl9yZWYyIiwiX2NhbGxlZTIiLCJfc2FtcGxpbmdQcm9wZXJ0aWVzJHMiLCJ1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MiLCJzYW1wbGluZ0lEIiwiX2NhbGxlZTIkIiwiX2NvbnRleHQyIiwibXNnIiwicG9zdCIsImNyZWF0ZVNhbXBsaW5nIiwidDAiLCJwdXQiLCJ1cGRhdGVTYW1wbGluZyIsInQxIiwiX3giLCJhcHBseSIsImlzU2FtcGxpbmdDYW5jZWxsZWQiLCJlZGl0UGFnZVZhbHVlIiwiQ09MTEVDVF9TQU1QTElOR19PUCIsIkNBTkNFTF9TQU1QTElOR19PUCIsIlJFVkVSVF9DQU5DRUxMQVRJT04iLCJzZXJ2ZXJDb2xsZWN0aW9uVGltZSIsImN1cnJlbnRUaW1lIiwic2VydmVyVGltZSIsImluY2x1ZGVzIiwiY3JlYXRlRWxlbWVudCIsIlNwaW5uZXIiLCJpc19wdW1wX2luX3Byb2dyZXNzIiwiU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGUiLCJpc01vYmlsZSIsIlNhbXBsaW5nUHJvcGVydGllc0hlYWQiLCJpc0RhdGVQaWNrZXJEaXNhYmxlZCIsIlNhbXBsaW5nUHJvcGVydGllc0hlYWRNb2JpbGUiLCJTYW1wbGluZ1Byb3BlcnRpZXNGb3JtIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQcm9wZXJ0aWVzIGFuZCBDYW5jZWxsaW5nIGZvcm1zLlxuICoqL1xuaW1wb3J0IFJlYWN0LCB7IEZDLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IEZvcm1pa0NvbmZpZyB9IGZyb20gJ2Zvcm1pay9kaXN0L3R5cGVzJztcbmltcG9ydCB7IGlzTW9iaWxlIH0gZnJvbSAncmVhY3QtZGV2aWNlLWRldGVjdCc7XG5pbXBvcnQgeyB1c2VGb3JtaWsgfSBmcm9tICdmb3JtaWsnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSwgdXNlUGFyYW1zLCB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBMYXlvdXQgZnJvbSAnc3JjL3VpLWtpdC9MYXlvdXQvTGF5b3V0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnc3JjL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICdzcmMvY29tcG9uZW50cy9TcGlubmVyL1NwaW5uZXInO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJ3NyYy91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNTdHlsZSB9IGZyb20gJy4vc3R5bGVzJztcbmltcG9ydCB7XG4gIENBTkNFTF9TQU1QTElOR19PUCxcbiAgQ09MTEVDVF9TQU1QTElOR19PUCxcbiAgUkVWRVJUX0NBTkNFTExBVElPTixcbiAgU2FtcGxpbmdGZXRjaERhdGEsXG59IGZyb20gJy4uL3NhbXBsaW5nc1BhZ2VVdGlscyc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNGb3JtIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNGb3JtJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0hlYWQgfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0hlYWQnO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZSB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZSc7XG5pbXBvcnQge1xuICBGb3JtVHlwZSxcbiAgVFNhbXBsaW5nUHJvcGVydGllcyxcbiAgY2FuY2VsbGF0aW9uVmFsaWRhdGlvblNjaGVtYSxcbiAgaXNDb2xsZWN0TGF5b3V0LFxuICBwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYSxcbiAgc2FtcGxpbmdQcm9wZXJ0eSxcbiAgY29sbGVjdGlvblRpbWVGb3JtYXQsXG59IGZyb20gJy4vc2FtcGxpbmdQcm9wZXJ0aWVzVXRpbHMnO1xuaW1wb3J0IFNhbXBsZXJJblByb2Nlc3MgZnJvbSAnLi9TYW1wbGVySW5Qcm9jZXNzJztcblxuY29uc3QgaXNQcm9wZXJ0aWVzUGFnZSA9IChwYWdlVHlwZSkgPT4gcGFnZVR5cGUgPT09ICdlZGl0JztcblxuZXhwb3J0IGNvbnN0IFNhbXBsaW5nUHJvcGVydGllczogRkMgPSAoKSA9PiB7XG4gIGNvbnN0IFtjb2xsZWN0aW9uVGltZSwgc2V0Q29sbGVjdGlvblRpbWVdID0gdXNlU3RhdGU8c3RyaW5nIHwgRGF0ZSB8IG51bGw+KFxuICAgIG5ldyBEYXRlKCksXG4gICk7XG4gIGNvbnN0IFtwaG90b3MsIHNldFBob3Rvc10gPSB1c2VTdGF0ZTxzdHJpbmcgfCBCbG9iIHwgYW55PihbXSk7XG4gIGNvbnN0IFtwaG90b3NUb0RlbGV0ZSwgc2V0UGhvdG9zVG9EZWxldGVdID0gdXNlU3RhdGU8bnVtYmVyW10+KFtdKTtcbiAgY29uc3QgW3NhdmluZ01zZywgc2V0U2F2aW5nTXNnXSA9IHVzZVN0YXRlPHN0cmluZz4oaTE4bi50KCdidXR0b25zLnNhdmUnKSk7XG4gIGNvbnN0IFtzYW1wbGluZ1VwZGF0ZWQsIHNldFNhbXBsaW5nVXBkYXRlZF0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzYW1wbGluZ1BsYW4sIHNldFNhbXBsaW5nUGxhbl0gPSB1c2VTdGF0ZTxcbiAgICBTYW1wbGluZ0ZldGNoRGF0YSB8IHVuZGVmaW5lZFxuICA+KHVuZGVmaW5lZCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IGxvY2F0aW9uID0gdXNlTG9jYXRpb24oKTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCB1c2VySW5mbyA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUucGVybWlzc2lvbnMudXNlcl9pbmZvKTtcbiAgY29uc3QgZGF0ZUZvcm1hdCA9XG4gICAgdXNlckluZm8uZGF0ZV90aW1lX2Zvcm1hdCA9PT0gJ3VzJ1xuICAgICAgPyAnTU1NIGQsIHl5eXkgaGg6bW0gYWEnXG4gICAgICA6ICdkL01NL3l5eXkgSEg6bW0nO1xuICBjb25zdCBwYWdlVHlwZSA9IHVzZVJlZjxzdHJpbmc+KCcnKTtcbiAgY29uc3QgW3NhbXBsaW5nUHJvcGVydGllcywgc2V0U2FtcGxpbmdQcm9wZXJ0aWVzXSA9XG4gICAgdXNlU3RhdGU8VFNhbXBsaW5nUHJvcGVydGllcz4oKTtcbiAgY29uc3QgeyBzYW1wbGVJZCB9ID0gdXNlUGFyYW1zKCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGUpID0+IHN0YXRlLmdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsXG4gICk7XG4gIGNvbnN0IGxvY2FsZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZSxcbiAgKTtcblxuICBjb25zdCBpbml0Rm9ybWlrVmFsdWVzID0gKFxuICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICBpc0NhbmNlbGVkLFxuICAgIHRpbWVab25lLFxuICAgIHVzZXJJbmZvLFxuICApID0+IHtcbiAgICBjb25zdCBwYWdlQ29sbGVjdGlvblRpbWUgPSBpc0NvbGxlY3RMYXlvdXQocGFnZVR5cGUuY3VycmVudClcbiAgICAgID8gY29sbGVjdGlvblRpbWVcbiAgICAgIDogY29sbGVjdGlvblRpbWVGb3JtYXQoXG4gICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZSxcbiAgICAgICAgICB0aW1lWm9uZSxcbiAgICAgICAgKTtcbiAgICBjb25zdCBzYW0gPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmc7XG4gICAgbGV0IGZvcm1pa1ZhbHVlczogRm9ybVR5cGUgPSB7XG4gICAgICBsYWJfaWQ6IHNhbS5sYWJfaWQsXG4gICAgICBjb2xsZWN0aW9uX3RpbWU6IHBhZ2VDb2xsZWN0aW9uVGltZSxcbiAgICAgIHB1bXBfc2FtcGxpbmdfdm9sdW1lOiBzYW0ucHVtcF9zYW1wbGluZ192b2x1bWUsXG4gICAgICBwdW1wX2JhdHRlcnlfbGV2ZWw6IHNhbS5wdW1wX2JhdHRlcnlfbGV2ZWwsXG4gICAgICBkZXNjcmlwdGlvbjogc2FtLmRlc2NyaXB0aW9uLFxuICAgICAga2FuZG9fcmVwOiBzYW0ua2FuZG9fcmVwLFxuICAgICAgc2FtcGxpbmdfcGxhbl9pZDogc2FtLnNhbXBsaW5nX3BsYW5faWQsXG4gICAgICBjYW5jZWxsYXRpb25fcmVhc29uOiBzYW0uY2FuY2VsbGF0aW9uX3JlYXNvbiB8fCAnJyxcbiAgICAgIGlzX2NhbmNlbGVkOiBpc0NhbmNlbGVkLFxuICAgIH07XG5cbiAgICBpZiAoaXNDYW5jZWxsZWRMYXlvdXQoc2FtcGxpbmdQcm9wZXJ0aWVzKSlcbiAgICAgIGZvcm1pa1ZhbHVlcy5jYW5jZWxlZF9ieV9pZCA9IHtcbiAgICAgICAgbmFtZTogdXNlckluZm8uZmlyc3RfbmFtZSArICcgJyArIHVzZXJJbmZvLmxhc3RfbmFtZSxcbiAgICAgICAgaWQ6IHVzZXJJbmZvLnVzZXJfaWQsXG4gICAgICB9O1xuICAgIGZvcm1pa1ZhbHVlcy5rYW5kb19yZXAgPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcua2FuZG9fcmVwO1xuICAgIGZvcm1pay5zZXRWYWx1ZXMoZm9ybWlrVmFsdWVzKTtcbiAgfTtcblxuICBjb25zdCBpc0NhbmNlbGxlZExheW91dCA9IChzYW1wbGluZ1Byb3BlcnRpZXMpID0+IHtcbiAgICBjb25zdCBwYWdlVHlwZTJpc0NhbmNlbGxlZCA9IHtcbiAgICAgIGNhbmNlbDogdHJ1ZSxcbiAgICAgIGNvbGxlY3Q6IGZhbHNlLFxuICAgICAgcmV2ZXJ0X2NhbmNlbDogZmFsc2UsXG4gICAgfTtcbiAgICBsZXQgaXNDYW5jZWxlZCA9IHBhZ2VUeXBlMmlzQ2FuY2VsbGVkW3BhZ2VUeXBlLmN1cnJlbnRdO1xuICAgIGlmIChpc0NhbmNlbGVkID09PSBudWxsKSB7XG4gICAgICBpc0NhbmNlbGVkID0gc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkIHx8IGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gaXNDYW5jZWxlZDtcbiAgfTtcblxuICBjb25zdCBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChzYW1wbGluZ0lkID0gc2FtcGxlSWQsIG9wKSA9PiB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLmdldChcbiAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nSWQgfSkuc2FtcGxpbmdQcm9wZXJ0aWVzLmZldGNoU2FtcGxpbmcudXJsLFxuICAgICAgKTtcbiAgICAgIGNvbnN0IHNhbXBsaW5nID0gcmVzcG9uc2UuZGF0YTtcbiAgICAgIGNvbnN0IHNhbXBsaW5nUHJvcGVydGllcyA9IHNhbXBsaW5nLnNhbXBsaW5nX3Byb3BlcnRpZXM7XG4gICAgICBwYWdlVHlwZS5jdXJyZW50ID0gZGV0ZWN0UGFnZVR5cGUoXG4gICAgICAgIHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5pc19jYW5jZWxlZCxcbiAgICAgICAgb3AsXG4gICAgICApO1xuICAgICAgc2V0Q29sbGVjdGlvblRpbWUoXG4gICAgICAgIGRldGVybWluZUNvbGxlY3Rpb25UaW1lKFxuICAgICAgICAgIGNvbGxlY3Rpb25UaW1lRm9ybWF0KFxuICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmNvbGxlY3Rpb25fdGltZSxcbiAgICAgICAgICAgIHNhbXBsaW5nLnNhbXBsaW5nX3BsYW4udGltZV96b25lLFxuICAgICAgICAgICksXG4gICAgICAgICAgb3AsXG4gICAgICAgICksXG4gICAgICApO1xuICAgICAgbGV0IGlzQ2FuY2VsZWQgPSBpc0NhbmNlbGxlZExheW91dChcbiAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkLFxuICAgICAgKTtcbiAgICAgIGluaXRGb3JtaWtWYWx1ZXMoXG4gICAgICAgIHNhbXBsaW5nUHJvcGVydGllcyxcbiAgICAgICAgaXNDYW5jZWxlZCxcbiAgICAgICAgc2FtcGxpbmcuc2FtcGxpbmdfcGxhbi50aW1lX3pvbmUsXG4gICAgICAgIHVzZXJJbmZvLFxuICAgICAgKTtcbiAgICAgIHNldFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGluZ1Byb3BlcnRpZXMpO1xuICAgICAgc2V0U2FtcGxpbmdQbGFuKHNhbXBsaW5nLnNhbXBsaW5nX3BsYW4pO1xuICAgIH0sXG4gICAgW10sXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBmZXRjaFNhbXBsaW5nUHJvcGVydGllcyhzYW1wbGVJZCwgZ2V0VXJsUXVlcnlPcCgpKTtcbiAgfSwgW3NhbXBsaW5nVXBkYXRlZF0pO1xuXG4gIGNvbnN0IHZhbGlkYXRpb25TY2hlbWEgPSBpc0NvbGxlY3RMYXlvdXQocGFnZVR5cGUuY3VycmVudClcbiAgICA/IHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hXG4gICAgOiBjYW5jZWxsYXRpb25WYWxpZGF0aW9uU2NoZW1hO1xuICBjb25zdCBmb3JtaWsgPSB1c2VGb3JtaWs8Rm9ybWlrQ29uZmlnPEZvcm1UeXBlPj4oe1xuICAgIGVuYWJsZVJlaW5pdGlhbGl6ZTogdHJ1ZSxcbiAgICBpbml0aWFsVmFsdWVzOiBzYW1wbGluZ1Byb3BlcnR5LFxuICAgIHZhbGlkYXRpb25TY2hlbWE6IHZhbGlkYXRpb25TY2hlbWEsXG4gICAgdmFsaWRhdGVPbkNoYW5nZTogZmFsc2UsXG4gICAgdmFsaWRhdGVPbkJsdXI6IHRydWUsXG4gICAgb25TdWJtaXQ6ICh2YWx1ZXMpID0+IHtcbiAgICAgIGhhbmRsZVN1Ym1pdCh2YWx1ZXMpO1xuICAgIH0sXG4gIH0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsb3NlID0gKCkgPT4ge1xuICAgIGlmIChsb2NhdGlvbi5rZXkpIHtcbiAgICAgIGhpc3RvcnkuZ29CYWNrKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGhpc3RvcnkucHVzaChcbiAgICAgICAgdXJscyh7IGxvY2FsZSwgd2F0ZXJBdXRob3JpdHlJZCB9KS5zYW1wbGluZ3NQYWdlLnNhbXBsaW5nc0xpc3RSb3V0ZS51cmwsXG4gICAgICApO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAodmFsdWVzKSA9PiB7XG4gICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZpbmcnKSk7XG4gICAgdmFsdWVzLnBpY3R1cmVzX2F0dHJpYnV0ZXMgPSBwaG90b3M7XG4gICAgaWYgKHZhbHVlcy5jYW5jZWxlZF9ieV9pZCAmJiBpc0NhbmNlbGxlZExheW91dChzYW1wbGluZ1Byb3BlcnRpZXMpKVxuICAgICAgdmFsdWVzLmNhbmNlbGVkX2J5X2lkID0gdXNlckluZm8udXNlcl9pZDtcbiAgICBjb25zdCBzYXZlRm9ybURhdGEgPSBmb3JtRGF0YUJ1aWxkZXIodmFsdWVzKTtcbiAgICB1cGRhdGVPckNyZWF0ZShzYXZlRm9ybURhdGEpO1xuICB9O1xuXG4gIGNvbnN0IHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCA9ICgpID0+IHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuc2F2ZScpKTtcbiAgICB9LCAzMDAwKTtcbiAgfTtcblxuICBjb25zdCBmb3JtRGF0YUJ1aWxkZXIgPSAodmFsdWVzKSA9PiB7XG4gICAgY29uc3QgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3IgKGNvbnN0IGtleSBpbiB2YWx1ZXMpIHtcbiAgICAgIGlmIChrZXkgIT09ICdwaWN0dXJlc19hdHRyaWJ1dGVzJykge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlc1trZXldID09PSBudWxsID8gJycgOiB2YWx1ZXNba2V5XTtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1ske2tleX1dYCwgdmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgdW5pcXVlUGhvdG9zVG9EZWxldGUgPSBbLi4ubmV3IFNldChwaG90b3NUb0RlbGV0ZSldO1xuICAgIHVuaXF1ZVBob3Rvc1RvRGVsZXRlLmxlbmd0aCAhPT0gMCAmJlxuICAgICAgdW5pcXVlUGhvdG9zVG9EZWxldGUuZm9yRWFjaCgoaWQsIGluZGV4KSA9PiB7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICAgICBgc2FtcGxpbmdbcGljdHVyZXNfYXR0cmlidXRlc11bJHtpbmRleH1dW2lkXWAsXG4gICAgICAgICAgSlNPTi5zdHJpbmdpZnkoaWQpLFxuICAgICAgICApO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoXG4gICAgICAgICAgYHNhbXBsaW5nW3BpY3R1cmVzX2F0dHJpYnV0ZXNdWyR7aW5kZXh9XVtfZGVzdHJveV1gLFxuICAgICAgICAgICd0cnVlJyxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIHJldHVybiBmb3JtRGF0YTtcbiAgfTtcblxuICBjb25zdCB1cGRhdGVPckNyZWF0ZSA9IGFzeW5jIChmb3JtRGF0YSkgPT4ge1xuICAgIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyA9IChtc2cpID0+IHtcbiAgICAgIHNldFNhdmluZ01zZyhpMThuLnQobXNnKSk7XG4gICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQodHJ1ZSk7XG4gICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgIGhhbmRsZUNsb3NlKCk7XG4gICAgfTtcblxuICAgIGNvbnN0IHNhbXBsaW5nSUQgPSBzYW1wbGluZ1Byb3BlcnRpZXM/LnNhbXBsaW5nPy5pZDtcbiAgICBpZiAoc2FtcGxpbmdJRCA9PT0gbnVsbCkge1xuICAgICAgLy8gY3JlYXRlXG4gICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nW2RhdGVdYCwgY29sbGVjdGlvblRpbWUpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgYXhpb3MucG9zdChcbiAgICAgICAgICB1cmxzKHtcbiAgICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAgICAgfSkuc2FtcGxpbmdQcm9wZXJ0aWVzLmNyZWF0ZVNhbXBsaW5nLnVybCxcbiAgICAgICAgICBmb3JtRGF0YSxcbiAgICAgICAgKTtcbiAgICAgICAgdXBkYXRlT3JDcmVhdGVTdWNjZXNzKCdidXR0b25zLmNyZWF0ZWQnKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5lcnJvcicpKTtcbiAgICAgICAgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0KCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmIChwYWdlVHlwZS5jdXJyZW50ID09PSAncmV2ZXJ0X2NhbmNlbCcpIHtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKGBzYW1wbGluZ1tjb2xsZWN0aW9uX3RpbWVdYCwgY29sbGVjdGlvblRpbWUpO1xuICAgICAgfVxuICAgICAgLy8gdXBkYXRlXG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBheGlvcy5wdXQoXG4gICAgICAgICAgdXJscyh7IHNhbXBsaW5nSWQ6IHNhbXBsaW5nSUQsIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQgfSlcbiAgICAgICAgICAgIC5zYW1wbGluZ1Byb3BlcnRpZXMudXBkYXRlU2FtcGxpbmcudXJsLFxuICAgICAgICAgIGZvcm1EYXRhLFxuICAgICAgICApO1xuICAgICAgICB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MoJ2J1dHRvbnMudXBkYXRlZCcpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLmVycm9yJykpO1xuICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZGV0ZWN0UGFnZVR5cGUgPSAoaXNTYW1wbGluZ0NhbmNlbGxlZCwgb3ApID0+IHtcbiAgICBjb25zdCBlZGl0UGFnZVZhbHVlID0gaXNTYW1wbGluZ0NhbmNlbGxlZCA/ICdjYW5jZWwnIDogJ2NvbGxlY3QnO1xuICAgIGlmIChvcCA9PT0gJ2VkaXQnKSB7XG4gICAgICByZXR1cm4gZWRpdFBhZ2VWYWx1ZTtcbiAgICB9IGVsc2UgaWYgKG9wID09PSBDT0xMRUNUX1NBTVBMSU5HX09QKSB7XG4gICAgICByZXR1cm4gJ2NvbGxlY3QnO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IENBTkNFTF9TQU1QTElOR19PUCkge1xuICAgICAgcmV0dXJuICdjYW5jZWwnO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IFJFVkVSVF9DQU5DRUxMQVRJT04pIHtcbiAgICAgIHJldHVybiAncmV2ZXJ0X2NhbmNlbCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkZXRlcm1pbmVDb2xsZWN0aW9uVGltZSA9IChzZXJ2ZXJDb2xsZWN0aW9uVGltZSwgb3ApID0+IHtcbiAgICBjb25zdCBjdXJyZW50VGltZSA9IG5ldyBEYXRlKCk7XG4gICAgY29uc3Qgc2VydmVyVGltZSA9IHNlcnZlckNvbGxlY3Rpb25UaW1lXG4gICAgICA/IG5ldyBEYXRlKHNlcnZlckNvbGxlY3Rpb25UaW1lKVxuICAgICAgOiBjdXJyZW50VGltZTtcbiAgICBjb25zdCBlZGl0UGFnZVZhbHVlID0gc2VydmVyQ29sbGVjdGlvblRpbWUgPyBzZXJ2ZXJUaW1lIDogY3VycmVudFRpbWU7XG4gICAgaWYgKG9wID09PSAnZWRpdCcpIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IENPTExFQ1RfU0FNUExJTkdfT1ApIHtcbiAgICAgIHJldHVybiBjdXJyZW50VGltZTtcbiAgICB9IGVsc2UgaWYgKFtDQU5DRUxfU0FNUExJTkdfT1AsIFJFVkVSVF9DQU5DRUxMQVRJT05dLmluY2x1ZGVzKG9wKSkge1xuICAgICAgcmV0dXJuIHNlcnZlclRpbWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBnZXRVcmxRdWVyeU9wID0gKCkgPT4ge1xuICAgIGxldCBvcCA9IHF1ZXJ5LmdldCgnb3AnKTtcbiAgICAvLyBpZiBub3QgcHJlc2VudCB0aGVuIGRlZmF1bHQgb3AgaXMgJ2NvbGxlY3RpbmcnXG4gICAgaWYgKFt1bmRlZmluZWQsIG51bGwsICcnXS5pbmNsdWRlcyhvcCkpIHtcbiAgICAgIHJldHVybiBDT0xMRUNUX1NBTVBMSU5HX09QO1xuICAgIH1cbiAgICByZXR1cm4gb3A7XG4gIH07XG5cbiAgaWYgKCFzYW1wbGluZ1BsYW4gfHwgIXNhbXBsaW5nUHJvcGVydGllcykge1xuICAgIHJldHVybiA8U3Bpbm5lciAvPjtcbiAgfVxuXG4gIGlmIChzYW1wbGluZ1Byb3BlcnRpZXMuaXNfcHVtcF9pbl9wcm9ncmVzcykge1xuICAgIHJldHVybiA8U2FtcGxlckluUHJvY2VzcyBoYW5kbGVDbG9zZT17aGFuZGxlQ2xvc2V9IC8+O1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8Zm9ybSBvblN1Ym1pdD17Zm9ybWlrLmhhbmRsZVN1Ym1pdH0+XG4gICAgICA8TGF5b3V0PlxuICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGU+XG4gICAgICAgICAgeyFpc01vYmlsZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzSGVhZFxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgZm9ybWlrPXtmb3JtaWt9XG4gICAgICAgICAgICAgIHBhZ2VUeXBlPXtwYWdlVHlwZS5jdXJyZW50fVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uVGltZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25UaW1lPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlKHBhZ2VUeXBlKX1cbiAgICAgICAgICAgICAgZGF0ZUZvcm1hdD17ZGF0ZUZvcm1hdH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cblxuICAgICAgICAgIHtpc01vYmlsZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgZm9ybWlrPXtmb3JtaWt9XG4gICAgICAgICAgICAgIHBhZ2VUeXBlPXtwYWdlVHlwZS5jdXJyZW50fVxuICAgICAgICAgICAgICBjb2xsZWN0aW9uVGltZT17Y29sbGVjdGlvblRpbWV9XG4gICAgICAgICAgICAgIHNldENvbGxlY3Rpb25UaW1lPXtzZXRDb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0U2FtcGxpbmdVcGRhdGVkPXtzZXRTYW1wbGluZ1VwZGF0ZWR9XG4gICAgICAgICAgICAgIGlzRGF0ZVBpY2tlckRpc2FibGVkPXtpc1Byb3BlcnRpZXNQYWdlKHBhZ2VUeXBlKX1cbiAgICAgICAgICAgICAgZGF0ZUZvcm1hdD17ZGF0ZUZvcm1hdH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cblxuICAgICAgICAgIHtzYW1wbGluZ1Byb3BlcnRpZXMgJiYgcGFnZVR5cGUgJiYgKFxuICAgICAgICAgICAgPFNhbXBsaW5nUHJvcGVydGllc0Zvcm1cbiAgICAgICAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzPXtzYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgIHNhbXBsaW5nPXtzYW1wbGluZ1BsYW59XG4gICAgICAgICAgICAgIHBhZ2VUeXBlPXtwYWdlVHlwZS5jdXJyZW50fVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgc2F2aW5nTXNnPXtzYXZpbmdNc2d9XG4gICAgICAgICAgICAgIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgc2V0UGhvdG9zVG9EZWxldGU9e3NldFBob3Rvc1RvRGVsZXRlfVxuICAgICAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICAgICAgcGhvdG9zPXtwaG90b3N9XG4gICAgICAgICAgICAgIGZvcm1paz17Zm9ybWlrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L1NhbXBsaW5nUHJvcGVydGllc1N0eWxlPlxuICAgICAgPC9MYXlvdXQ+XG4gICAgPC9mb3JtPlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBRUEsSUFBQUcsa0JBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE9BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGVBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFdBQUEsR0FBQU4sT0FBQTtBQUVBLElBQUFPLE9BQUEsR0FBQUwsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFRLEtBQUEsR0FBQU4sc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFTLFlBQUEsR0FBQVAsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFVLFFBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLEtBQUEsR0FBQVgsT0FBQTtB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
|
|
353
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0RGV2aWNlRGV0ZWN0IiwiX2Zvcm1payIsIl9yZWFjdFJvdXRlckRvbSIsIl9yZWFjdFJlZHV4IiwiX0xheW91dCIsIl9pMThuIiwiX3VzZVF1ZXJ5VVJMIiwiX1NwaW5uZXIiLCJfdXJscyIsIl9zdHlsZXMiLCJfc2FtcGxpbmdzUGFnZVV0aWxzIiwiX1NhbXBsaW5nUHJvcGVydGllc0Zvcm0iLCJfU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCIsIl9TYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlIiwiX3NhbXBsaW5nUHJvcGVydGllc1V0aWxzIiwiX1NhbXBsZXJJblByb2Nlc3MiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsImlzUHJvcGVydGllc1BhZ2UiLCJwYWdlVHlwZSIsIlNhbXBsaW5nUHJvcGVydGllcyIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiRGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJjb2xsZWN0aW9uVGltZSIsInNldENvbGxlY3Rpb25UaW1lIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJwaG90b3MiLCJzZXRQaG90b3MiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsInBob3Rvc1RvRGVsZXRlIiwic2V0UGhvdG9zVG9EZWxldGUiLCJfdXNlU3RhdGU3IiwiaTE4biIsInQiLCJfdXNlU3RhdGU4Iiwic2F2aW5nTXNnIiwic2V0U2F2aW5nTXNnIiwiX3VzZVN0YXRlOSIsIl91c2VTdGF0ZTEwIiwic2FtcGxpbmdVcGRhdGVkIiwic2V0U2FtcGxpbmdVcGRhdGVkIiwiX3VzZVN0YXRlMTEiLCJ1bmRlZmluZWQiLCJfdXNlU3RhdGUxMiIsInNhbXBsaW5nUGxhbiIsInNldFNhbXBsaW5nUGxhbiIsImhpc3RvcnkiLCJ1c2VIaXN0b3J5IiwibG9jYXRpb24iLCJ1c2VMb2NhdGlvbiIsInF1ZXJ5IiwidXNlUXVlcnlVUkwiLCJ1c2VySW5mbyIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJwZXJtaXNzaW9ucyIsInVzZXJfaW5mbyIsImRhdGVGb3JtYXQiLCJkYXRlX3RpbWVfZm9ybWF0IiwidXNlUmVmIiwiX3VzZVN0YXRlMTMiLCJfdXNlU3RhdGUxNCIsInNhbXBsaW5nUHJvcGVydGllcyIsInNldFNhbXBsaW5nUHJvcGVydGllcyIsIl91c2VQYXJhbXMiLCJ1c2VQYXJhbXMiLCJzYW1wbGVJZCIsIndhdGVyQXV0aG9yaXR5SWQiLCJnbG9iYWxfZGF0YSIsImxvY2FsZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJuYXZDb250ZXh0IiwiaW5pdEZvcm1pa1ZhbHVlcyIsImlzQ2FuY2VsZWQiLCJ0aW1lWm9uZSIsInBhZ2VDb2xsZWN0aW9uVGltZSIsImlzQ29sbGVjdExheW91dCIsImN1cnJlbnQiLCJjb2xsZWN0aW9uVGltZUZvcm1hdCIsInNhbXBsaW5nIiwiY29sbGVjdGlvbl90aW1lIiwic2FtIiwiZm9ybWlrVmFsdWVzIiwibGFiX2lkIiwicHVtcF9zYW1wbGluZ192b2x1bWUiLCJwdW1wX2JhdHRlcnlfbGV2ZWwiLCJkZXNjcmlwdGlvbiIsImthbmRvX3JlcCIsInNhbXBsaW5nX3BsYW5faWQiLCJjYW5jZWxsYXRpb25fcmVhc29uIiwiaXNfY2FuY2VsZWQiLCJpc0NhbmNlbGxlZExheW91dCIsImNhbmNlbGVkX2J5X2lkIiwibmFtZSIsImZpcnN0X25hbWUiLCJsYXN0X25hbWUiLCJpZCIsInVzZXJfaWQiLCJmb3JtaWsiLCJzZXRWYWx1ZXMiLCJwYWdlVHlwZTJpc0NhbmNlbGxlZCIsImNhbmNlbCIsImNvbGxlY3QiLCJyZXZlcnRfY2FuY2VsIiwiZmV0Y2hTYW1wbGluZ1Byb3BlcnRpZXMiLCJ1c2VDYWxsYmFjayIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwic2FtcGxpbmdJZCIsIm9wIiwicmVzcG9uc2UiLCJfYXJncyIsImFyZ3VtZW50cyIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJsZW5ndGgiLCJheGlvcyIsInVybHMiLCJmZXRjaFNhbXBsaW5nIiwidXJsIiwic2VudCIsImRhdGEiLCJzYW1wbGluZ19wcm9wZXJ0aWVzIiwiZGV0ZWN0UGFnZVR5cGUiLCJkZXRlcm1pbmVDb2xsZWN0aW9uVGltZSIsInNhbXBsaW5nX3BsYW4iLCJ0aW1lX3pvbmUiLCJzdG9wIiwidXNlRWZmZWN0IiwiZ2V0VXJsUXVlcnlPcCIsInZhbGlkYXRpb25TY2hlbWEiLCJwcm9wZXJ0aWVzVmFsaWRhdGlvblNjaGVtYSIsImNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWEiLCJ1c2VGb3JtaWsiLCJlbmFibGVSZWluaXRpYWxpemUiLCJpbml0aWFsVmFsdWVzIiwic2FtcGxpbmdQcm9wZXJ0eSIsInZhbGlkYXRlT25DaGFuZ2UiLCJ2YWxpZGF0ZU9uQmx1ciIsIm9uU3VibWl0IiwidmFsdWVzIiwiaGFuZGxlU3VibWl0IiwiaGFuZGxlQ2xvc2UiLCJnb0JhY2siLCJwdXNoIiwic2FtcGxpbmdzUGFnZSIsInNhbXBsaW5nc0xpc3RSb3V0ZSIsInBpY3R1cmVzX2F0dHJpYnV0ZXMiLCJzYXZlRm9ybURhdGEiLCJmb3JtRGF0YUJ1aWxkZXIiLCJ1cGRhdGVPckNyZWF0ZSIsInNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCIsInNldFRpbWVvdXQiLCJmb3JtRGF0YSIsIkZvcm1EYXRhIiwidmFsdWUiLCJhcHBlbmQiLCJjb25jYXQiLCJ1bmlxdWVQaG90b3NUb0RlbGV0ZSIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJTZXQiLCJmb3JFYWNoIiwiaW5kZXgiLCJKU09OIiwic3RyaW5naWZ5IiwiX3JlZjIiLCJfY2FsbGVlMiIsIl9zYW1wbGluZ1Byb3BlcnRpZXMkcyIsInVwZGF0ZU9yQ3JlYXRlU3VjY2VzcyIsInNhbXBsaW5nSUQiLCJfY2FsbGVlMiQiLCJfY29udGV4dDIiLCJtc2ciLCJwb3N0IiwiY3JlYXRlU2FtcGxpbmciLCJ0MCIsInB1dCIsInVwZGF0ZVNhbXBsaW5nIiwidDEiLCJfeCIsImFwcGx5IiwiaXNTYW1wbGluZ0NhbmNlbGxlZCIsImVkaXRQYWdlVmFsdWUiLCJDT0xMRUNUX1NBTVBMSU5HX09QIiwiQ0FOQ0VMX1NBTVBMSU5HX09QIiwiUkVWRVJUX0NBTkNFTExBVElPTiIsInNlcnZlckNvbGxlY3Rpb25UaW1lIiwiY3VycmVudFRpbWUiLCJzZXJ2ZXJUaW1lIiwiaW5jbHVkZXMiLCJjcmVhdGVFbGVtZW50IiwiU3Bpbm5lciIsImlzX3B1bXBfaW5fcHJvZ3Jlc3MiLCJTYW1wbGluZ1Byb3BlcnRpZXNTdHlsZSIsImlzTW9iaWxlIiwiU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCIsImlzRGF0ZVBpY2tlckRpc2FibGVkIiwiU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZE1vYmlsZSIsIlNhbXBsaW5nUHJvcGVydGllc0Zvcm0iLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL1NhbXBsaW5nc1BhZ2UvU2FtcGxpbmdQcm9wZXJ0aWVzL1NhbXBsaW5nUHJvcGVydGllcy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFByb3BlcnRpZXMgYW5kIENhbmNlbGxpbmcgZm9ybXMuXG4gKiovXG5pbXBvcnQgUmVhY3QsIHsgRkMsIHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHsgRm9ybWlrQ29uZmlnIH0gZnJvbSAnZm9ybWlrL2Rpc3QvdHlwZXMnO1xuaW1wb3J0IHsgaXNNb2JpbGUgfSBmcm9tICdyZWFjdC1kZXZpY2UtZGV0ZWN0JztcbmltcG9ydCB7IHVzZUZvcm1payB9IGZyb20gJ2Zvcm1payc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5LCB1c2VQYXJhbXMsIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcblxuaW1wb3J0IExheW91dCBmcm9tICdzcmMvdWkta2l0L0xheW91dC9MYXlvdXQnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc1N0eWxlIH0gZnJvbSAnLi9zdHlsZXMnO1xuaW1wb3J0IHtcbiAgQ0FOQ0VMX1NBTVBMSU5HX09QLFxuICBDT0xMRUNUX1NBTVBMSU5HX09QLFxuICBSRVZFUlRfQ0FOQ0VMTEFUSU9OLFxuICBTYW1wbGluZ0ZldGNoRGF0YSxcbn0gZnJvbSAnLi4vc2FtcGxpbmdzUGFnZVV0aWxzJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllc0Zvcm0gfSBmcm9tICcuL1NhbXBsaW5nUHJvcGVydGllc0Zvcm0nO1xuaW1wb3J0IHsgU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCB9IGZyb20gJy4vU2FtcGxpbmdQcm9wZXJ0aWVzSGVhZCc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlIH0gZnJvbSAnLi9TYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlJztcbmltcG9ydCB7XG4gIEZvcm1UeXBlLFxuICBUU2FtcGxpbmdQcm9wZXJ0aWVzLFxuICBjYW5jZWxsYXRpb25WYWxpZGF0aW9uU2NoZW1hLFxuICBpc0NvbGxlY3RMYXlvdXQsXG4gIHByb3BlcnRpZXNWYWxpZGF0aW9uU2NoZW1hLFxuICBzYW1wbGluZ1Byb3BlcnR5LFxuICBjb2xsZWN0aW9uVGltZUZvcm1hdCxcbn0gZnJvbSAnLi9zYW1wbGluZ1Byb3BlcnRpZXNVdGlscyc7XG5pbXBvcnQgU2FtcGxlckluUHJvY2VzcyBmcm9tICcuL1NhbXBsZXJJblByb2Nlc3MnO1xuXG5jb25zdCBpc1Byb3BlcnRpZXNQYWdlID0gKHBhZ2VUeXBlKSA9PiBwYWdlVHlwZSA9PT0gJ2VkaXQnO1xuXG5leHBvcnQgY29uc3QgU2FtcGxpbmdQcm9wZXJ0aWVzOiBGQyA9ICgpID0+IHtcbiAgY29uc3QgW2NvbGxlY3Rpb25UaW1lLCBzZXRDb2xsZWN0aW9uVGltZV0gPSB1c2VTdGF0ZTxzdHJpbmcgfCBEYXRlIHwgbnVsbD4oXG4gICAgbmV3IERhdGUoKSxcbiAgKTtcbiAgY29uc3QgW3Bob3Rvcywgc2V0UGhvdG9zXSA9IHVzZVN0YXRlPHN0cmluZyB8IEJsb2IgfCBhbnk+KFtdKTtcbiAgY29uc3QgW3Bob3Rvc1RvRGVsZXRlLCBzZXRQaG90b3NUb0RlbGV0ZV0gPSB1c2VTdGF0ZTxudW1iZXJbXT4oW10pO1xuICBjb25zdCBbc2F2aW5nTXNnLCBzZXRTYXZpbmdNc2ddID0gdXNlU3RhdGU8c3RyaW5nPihpMThuLnQoJ2J1dHRvbnMuc2F2ZScpKTtcbiAgY29uc3QgW3NhbXBsaW5nVXBkYXRlZCwgc2V0U2FtcGxpbmdVcGRhdGVkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3NhbXBsaW5nUGxhbiwgc2V0U2FtcGxpbmdQbGFuXSA9IHVzZVN0YXRlPFxuICAgIFNhbXBsaW5nRmV0Y2hEYXRhIHwgdW5kZWZpbmVkXG4gID4odW5kZWZpbmVkKTtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3QgbG9jYXRpb24gPSB1c2VMb2NhdGlvbigpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IHVzZXJJbmZvID0gdXNlU2VsZWN0b3IoKHN0YXRlKSA9PiBzdGF0ZS5wZXJtaXNzaW9ucy51c2VyX2luZm8pO1xuICBjb25zdCBkYXRlRm9ybWF0ID1cbiAgICB1c2VySW5mby5kYXRlX3RpbWVfZm9ybWF0ID09PSAndXMnXG4gICAgICA/ICdNTU0gZCwgeXl5eSBoaDptbSBhYSdcbiAgICAgIDogJ2QvTU0veXl5eSBISDptbSc7XG4gIGNvbnN0IHBhZ2VUeXBlID0gdXNlUmVmPHN0cmluZz4oJycpO1xuICBjb25zdCBbc2FtcGxpbmdQcm9wZXJ0aWVzLCBzZXRTYW1wbGluZ1Byb3BlcnRpZXNdID1cbiAgICB1c2VTdGF0ZTxUU2FtcGxpbmdQcm9wZXJ0aWVzPigpO1xuICBjb25zdCB7IHNhbXBsZUlkIH0gPSB1c2VQYXJhbXMoKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgKTtcbiAgY29uc3QgbG9jYWxlID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQubG9jYWxlLFxuICApO1xuXG4gIGNvbnN0IGluaXRGb3JtaWtWYWx1ZXMgPSAoXG4gICAgc2FtcGxpbmdQcm9wZXJ0aWVzLFxuICAgIGlzQ2FuY2VsZWQsXG4gICAgdGltZVpvbmUsXG4gICAgdXNlckluZm8sXG4gICkgPT4ge1xuICAgIGNvbnN0IHBhZ2VDb2xsZWN0aW9uVGltZSA9IGlzQ29sbGVjdExheW91dChwYWdlVHlwZS5jdXJyZW50KVxuICAgICAgPyBjb2xsZWN0aW9uVGltZVxuICAgICAgOiBjb2xsZWN0aW9uVGltZUZvcm1hdChcbiAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuY29sbGVjdGlvbl90aW1lLFxuICAgICAgICAgIHRpbWVab25lLFxuICAgICAgICApO1xuICAgIGNvbnN0IHNhbSA9IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZztcbiAgICBsZXQgZm9ybWlrVmFsdWVzOiBGb3JtVHlwZSA9IHtcbiAgICAgIGxhYl9pZDogc2FtLmxhYl9pZCxcbiAgICAgIGNvbGxlY3Rpb25fdGltZTogcGFnZUNvbGxlY3Rpb25UaW1lLFxuICAgICAgcHVtcF9zYW1wbGluZ192b2x1bWU6IHNhbS5wdW1wX3NhbXBsaW5nX3ZvbHVtZSxcbiAgICAgIHB1bXBfYmF0dGVyeV9sZXZlbDogc2FtLnB1bXBfYmF0dGVyeV9sZXZlbCxcbiAgICAgIGRlc2NyaXB0aW9uOiBzYW0uZGVzY3JpcHRpb24sXG4gICAgICBrYW5kb19yZXA6IHNhbS5rYW5kb19yZXAsXG4gICAgICBzYW1wbGluZ19wbGFuX2lkOiBzYW0uc2FtcGxpbmdfcGxhbl9pZCxcbiAgICAgIGNhbmNlbGxhdGlvbl9yZWFzb246IHNhbS5jYW5jZWxsYXRpb25fcmVhc29uIHx8ICcnLFxuICAgICAgaXNfY2FuY2VsZWQ6IGlzQ2FuY2VsZWQsXG4gICAgfTtcblxuICAgIGlmIChpc0NhbmNlbGxlZExheW91dChzYW1wbGluZ1Byb3BlcnRpZXMpKVxuICAgICAgZm9ybWlrVmFsdWVzLmNhbmNlbGVkX2J5X2lkID0ge1xuICAgICAgICBuYW1lOiB1c2VySW5mby5maXJzdF9uYW1lICsgJyAnICsgdXNlckluZm8ubGFzdF9uYW1lLFxuICAgICAgICBpZDogdXNlckluZm8udXNlcl9pZCxcbiAgICAgIH07XG4gICAgZm9ybWlrVmFsdWVzLmthbmRvX3JlcCA9IHNhbXBsaW5nUHJvcGVydGllcy5zYW1wbGluZy5rYW5kb19yZXA7XG4gICAgZm9ybWlrLnNldFZhbHVlcyhmb3JtaWtWYWx1ZXMpO1xuICB9O1xuXG4gIGNvbnN0IGlzQ2FuY2VsbGVkTGF5b3V0ID0gKHNhbXBsaW5nUHJvcGVydGllcykgPT4ge1xuICAgIGNvbnN0IHBhZ2VUeXBlMmlzQ2FuY2VsbGVkID0ge1xuICAgICAgY2FuY2VsOiB0cnVlLFxuICAgICAgY29sbGVjdDogZmFsc2UsXG4gICAgICByZXZlcnRfY2FuY2VsOiBmYWxzZSxcbiAgICB9O1xuICAgIGxldCBpc0NhbmNlbGVkID0gcGFnZVR5cGUyaXNDYW5jZWxsZWRbcGFnZVR5cGUuY3VycmVudF07XG4gICAgaWYgKGlzQ2FuY2VsZWQgPT09IG51bGwpIHtcbiAgICAgIGlzQ2FuY2VsZWQgPSBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuaXNfY2FuY2VsZWQgfHwgZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiBpc0NhbmNlbGVkO1xuICB9O1xuXG4gIGNvbnN0IGZldGNoU2FtcGxpbmdQcm9wZXJ0aWVzID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKHNhbXBsaW5nSWQgPSBzYW1wbGVJZCwgb3ApID0+IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MuZ2V0KFxuICAgICAgICB1cmxzKHsgc2FtcGxpbmdJZDogc2FtcGxpbmdJZCB9KS5zYW1wbGluZ1Byb3BlcnRpZXMuZmV0Y2hTYW1wbGluZy51cmwsXG4gICAgICApO1xuICAgICAgY29uc3Qgc2FtcGxpbmcgPSByZXNwb25zZS5kYXRhO1xuICAgICAgY29uc3Qgc2FtcGxpbmdQcm9wZXJ0aWVzID0gc2FtcGxpbmcuc2FtcGxpbmdfcHJvcGVydGllcztcbiAgICAgIHBhZ2VUeXBlLmN1cnJlbnQgPSBkZXRlY3RQYWdlVHlwZShcbiAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLnNhbXBsaW5nLmlzX2NhbmNlbGVkLFxuICAgICAgICBvcCxcbiAgICAgICk7XG4gICAgICBzZXRDb2xsZWN0aW9uVGltZShcbiAgICAgICAgZGV0ZXJtaW5lQ29sbGVjdGlvblRpbWUoXG4gICAgICAgICAgY29sbGVjdGlvblRpbWVGb3JtYXQoXG4gICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuY29sbGVjdGlvbl90aW1lLFxuICAgICAgICAgICAgc2FtcGxpbmcuc2FtcGxpbmdfcGxhbi50aW1lX3pvbmUsXG4gICAgICAgICAgKSxcbiAgICAgICAgICBvcCxcbiAgICAgICAgKSxcbiAgICAgICk7XG4gICAgICBsZXQgaXNDYW5jZWxlZCA9IGlzQ2FuY2VsbGVkTGF5b3V0KFxuICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXMuc2FtcGxpbmcuaXNfY2FuY2VsZWQsXG4gICAgICApO1xuICAgICAgaW5pdEZvcm1pa1ZhbHVlcyhcbiAgICAgICAgc2FtcGxpbmdQcm9wZXJ0aWVzLFxuICAgICAgICBpc0NhbmNlbGVkLFxuICAgICAgICBzYW1wbGluZy5zYW1wbGluZ19wbGFuLnRpbWVfem9uZSxcbiAgICAgICAgdXNlckluZm8sXG4gICAgICApO1xuICAgICAgc2V0U2FtcGxpbmdQcm9wZXJ0aWVzKHNhbXBsaW5nUHJvcGVydGllcyk7XG4gICAgICBzZXRTYW1wbGluZ1BsYW4oc2FtcGxpbmcuc2FtcGxpbmdfcGxhbik7XG4gICAgfSxcbiAgICBbXSxcbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGZldGNoU2FtcGxpbmdQcm9wZXJ0aWVzKHNhbXBsZUlkLCBnZXRVcmxRdWVyeU9wKCkpO1xuICB9LCBbc2FtcGxpbmdVcGRhdGVkXSk7XG5cbiAgY29uc3QgdmFsaWRhdGlvblNjaGVtYSA9IGlzQ29sbGVjdExheW91dChwYWdlVHlwZS5jdXJyZW50KVxuICAgID8gcHJvcGVydGllc1ZhbGlkYXRpb25TY2hlbWFcbiAgICA6IGNhbmNlbGxhdGlvblZhbGlkYXRpb25TY2hlbWE7XG4gIGNvbnN0IGZvcm1payA9IHVzZUZvcm1pazxGb3JtaWtDb25maWc8Rm9ybVR5cGU+Pih7XG4gICAgZW5hYmxlUmVpbml0aWFsaXplOiB0cnVlLFxuICAgIGluaXRpYWxWYWx1ZXM6IHNhbXBsaW5nUHJvcGVydHksXG4gICAgdmFsaWRhdGlvblNjaGVtYTogdmFsaWRhdGlvblNjaGVtYSxcbiAgICB2YWxpZGF0ZU9uQ2hhbmdlOiBmYWxzZSxcbiAgICB2YWxpZGF0ZU9uQmx1cjogdHJ1ZSxcbiAgICBvblN1Ym1pdDogKHZhbHVlcykgPT4ge1xuICAgICAgaGFuZGxlU3VibWl0KHZhbHVlcyk7XG4gICAgfSxcbiAgfSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoKSA9PiB7XG4gICAgaWYgKGxvY2F0aW9uLmtleSkge1xuICAgICAgaGlzdG9yeS5nb0JhY2soKTtcbiAgICB9IGVsc2Uge1xuICAgICAgaGlzdG9yeS5wdXNoKFxuICAgICAgICB1cmxzKHsgbG9jYWxlLCB3YXRlckF1dGhvcml0eUlkIH0pLnNhbXBsaW5nc1BhZ2Uuc2FtcGxpbmdzTGlzdFJvdXRlLnVybCxcbiAgICAgICk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9ICh2YWx1ZXMpID0+IHtcbiAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLnNhdmluZycpKTtcbiAgICB2YWx1ZXMucGljdHVyZXNfYXR0cmlidXRlcyA9IHBob3RvcztcbiAgICBpZiAodmFsdWVzLmNhbmNlbGVkX2J5X2lkICYmIGlzQ2FuY2VsbGVkTGF5b3V0KHNhbXBsaW5nUHJvcGVydGllcykpXG4gICAgICB2YWx1ZXMuY2FuY2VsZWRfYnlfaWQgPSB1c2VySW5mby51c2VyX2lkO1xuICAgIGNvbnN0IHNhdmVGb3JtRGF0YSA9IGZvcm1EYXRhQnVpbGRlcih2YWx1ZXMpO1xuICAgIHVwZGF0ZU9yQ3JlYXRlKHNhdmVGb3JtRGF0YSk7XG4gIH07XG5cbiAgY29uc3Qgc2V0T3JpZ2luYWxTYXZlTWVzc2FnZVdpdGhUaW1lb3V0ID0gKCkgPT4ge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udCgnYnV0dG9ucy5zYXZlJykpO1xuICAgIH0sIDMwMDApO1xuICB9O1xuXG4gIGNvbnN0IGZvcm1EYXRhQnVpbGRlciA9ICh2YWx1ZXMpID0+IHtcbiAgICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvciAoY29uc3Qga2V5IGluIHZhbHVlcykge1xuICAgICAgaWYgKGtleSAhPT0gJ3BpY3R1cmVzX2F0dHJpYnV0ZXMnKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVzW2tleV0gPT09IG51bGwgPyAnJyA6IHZhbHVlc1trZXldO1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nWyR7a2V5fV1gLCB2YWx1ZSk7XG4gICAgICB9XG4gICAgfVxuICAgIGxldCB1bmlxdWVQaG90b3NUb0RlbGV0ZSA9IFsuLi5uZXcgU2V0KHBob3Rvc1RvRGVsZXRlKV07XG4gICAgdW5pcXVlUGhvdG9zVG9EZWxldGUubGVuZ3RoICE9PSAwICYmXG4gICAgICB1bmlxdWVQaG90b3NUb0RlbGV0ZS5mb3JFYWNoKChpZCwgaW5kZXgpID0+IHtcbiAgICAgICAgZm9ybURhdGEuYXBwZW5kKFxuICAgICAgICAgIGBzYW1wbGluZ1twaWN0dXJlc19hdHRyaWJ1dGVzXVske2luZGV4fV1baWRdYCxcbiAgICAgICAgICBKU09OLnN0cmluZ2lmeShpZCksXG4gICAgICAgICk7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChcbiAgICAgICAgICBgc2FtcGxpbmdbcGljdHVyZXNfYXR0cmlidXRlc11bJHtpbmRleH1dW19kZXN0cm95XWAsXG4gICAgICAgICAgJ3RydWUnLFxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgcmV0dXJuIGZvcm1EYXRhO1xuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZU9yQ3JlYXRlID0gYXN5bmMgKGZvcm1EYXRhKSA9PiB7XG4gICAgY29uc3QgdXBkYXRlT3JDcmVhdGVTdWNjZXNzID0gKG1zZykgPT4ge1xuICAgICAgc2V0U2F2aW5nTXNnKGkxOG4udChtc2cpKTtcbiAgICAgIHNldFNhbXBsaW5nVXBkYXRlZCh0cnVlKTtcbiAgICAgIHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCgpO1xuICAgICAgaGFuZGxlQ2xvc2UoKTtcbiAgICB9O1xuXG4gICAgY29uc3Qgc2FtcGxpbmdJRCA9IHNhbXBsaW5nUHJvcGVydGllcz8uc2FtcGxpbmc/LmlkO1xuICAgIGlmIChzYW1wbGluZ0lEID09PSBudWxsKSB7XG4gICAgICAvLyBjcmVhdGVcbiAgICAgIGZvcm1EYXRhLmFwcGVuZChgc2FtcGxpbmdbZGF0ZV1gLCBjb2xsZWN0aW9uVGltZSk7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBheGlvcy5wb3N0KFxuICAgICAgICAgIHVybHMoe1xuICAgICAgICAgICAgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgICAgICB9KS5zYW1wbGluZ1Byb3BlcnRpZXMuY3JlYXRlU2FtcGxpbmcudXJsLFxuICAgICAgICAgIGZvcm1EYXRhLFxuICAgICAgICApO1xuICAgICAgICB1cGRhdGVPckNyZWF0ZVN1Y2Nlc3MoJ2J1dHRvbnMuY3JlYXRlZCcpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBzZXRTYXZpbmdNc2coaTE4bi50KCdidXR0b25zLmVycm9yJykpO1xuICAgICAgICBzZXRPcmlnaW5hbFNhdmVNZXNzYWdlV2l0aFRpbWVvdXQoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHBhZ2VUeXBlLmN1cnJlbnQgPT09ICdyZXZlcnRfY2FuY2VsJykge1xuICAgICAgICBmb3JtRGF0YS5hcHBlbmQoYHNhbXBsaW5nW2NvbGxlY3Rpb25fdGltZV1gLCBjb2xsZWN0aW9uVGltZSk7XG4gICAgICB9XG4gICAgICAvLyB1cGRhdGVcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IGF4aW9zLnB1dChcbiAgICAgICAgICB1cmxzKHsgc2FtcGxpbmdJZDogc2FtcGxpbmdJRCwgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZCB9KVxuICAgICAgICAgICAgLnNhbXBsaW5nUHJvcGVydGllcy51cGRhdGVTYW1wbGluZy51cmwsXG4gICAgICAgICAgZm9ybURhdGEsXG4gICAgICAgICk7XG4gICAgICAgIHVwZGF0ZU9yQ3JlYXRlU3VjY2VzcygnYnV0dG9ucy51cGRhdGVkJyk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIHNldFNhdmluZ01zZyhpMThuLnQoJ2J1dHRvbnMuZXJyb3InKSk7XG4gICAgICAgIHNldE9yaWdpbmFsU2F2ZU1lc3NhZ2VXaXRoVGltZW91dCgpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcblxuICBjb25zdCBkZXRlY3RQYWdlVHlwZSA9IChpc1NhbXBsaW5nQ2FuY2VsbGVkLCBvcCkgPT4ge1xuICAgIGNvbnN0IGVkaXRQYWdlVmFsdWUgPSBpc1NhbXBsaW5nQ2FuY2VsbGVkID8gJ2NhbmNlbCcgOiAnY29sbGVjdCc7XG4gICAgaWYgKG9wID09PSAnZWRpdCcpIHtcbiAgICAgIHJldHVybiBlZGl0UGFnZVZhbHVlO1xuICAgIH0gZWxzZSBpZiAob3AgPT09IENPTExFQ1RfU0FNUExJTkdfT1ApIHtcbiAgICAgIHJldHVybiAnY29sbGVjdCc7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ0FOQ0VMX1NBTVBMSU5HX09QKSB7XG4gICAgICByZXR1cm4gJ2NhbmNlbCc7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gUkVWRVJUX0NBTkNFTExBVElPTikge1xuICAgICAgcmV0dXJuICdyZXZlcnRfY2FuY2VsJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVkaXRQYWdlVmFsdWU7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRldGVybWluZUNvbGxlY3Rpb25UaW1lID0gKHNlcnZlckNvbGxlY3Rpb25UaW1lLCBvcCkgPT4ge1xuICAgIGNvbnN0IGN1cnJlbnRUaW1lID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBzZXJ2ZXJUaW1lID0gc2VydmVyQ29sbGVjdGlvblRpbWVcbiAgICAgID8gbmV3IERhdGUoc2VydmVyQ29sbGVjdGlvblRpbWUpXG4gICAgICA6IGN1cnJlbnRUaW1lO1xuICAgIGNvbnN0IGVkaXRQYWdlVmFsdWUgPSBzZXJ2ZXJDb2xsZWN0aW9uVGltZSA/IHNlcnZlclRpbWUgOiBjdXJyZW50VGltZTtcbiAgICBpZiAob3AgPT09ICdlZGl0Jykge1xuICAgICAgcmV0dXJuIGVkaXRQYWdlVmFsdWU7XG4gICAgfSBlbHNlIGlmIChvcCA9PT0gQ09MTEVDVF9TQU1QTElOR19PUCkge1xuICAgICAgcmV0dXJuIGN1cnJlbnRUaW1lO1xuICAgIH0gZWxzZSBpZiAoW0NBTkNFTF9TQU1QTElOR19PUCwgUkVWRVJUX0NBTkNFTExBVElPTl0uaW5jbHVkZXMob3ApKSB7XG4gICAgICByZXR1cm4gc2VydmVyVGltZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIGVkaXRQYWdlVmFsdWU7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldFVybFF1ZXJ5T3AgPSAoKSA9PiB7XG4gICAgbGV0IG9wID0gcXVlcnkuZ2V0KCdvcCcpO1xuICAgIC8vIGlmIG5vdCBwcmVzZW50IHRoZW4gZGVmYXVsdCBvcCBpcyAnY29sbGVjdGluZydcbiAgICBpZiAoW3VuZGVmaW5lZCwgbnVsbCwgJyddLmluY2x1ZGVzKG9wKSkge1xuICAgICAgcmV0dXJuIENPTExFQ1RfU0FNUExJTkdfT1A7XG4gICAgfVxuICAgIHJldHVybiBvcDtcbiAgfTtcblxuICBpZiAoIXNhbXBsaW5nUGxhbiB8fCAhc2FtcGxpbmdQcm9wZXJ0aWVzKSB7XG4gICAgcmV0dXJuIDxTcGlubmVyIC8+O1xuICB9XG5cbiAgaWYgKHNhbXBsaW5nUHJvcGVydGllcy5pc19wdW1wX2luX3Byb2dyZXNzKSB7XG4gICAgcmV0dXJuIDxTYW1wbGVySW5Qcm9jZXNzIGhhbmRsZUNsb3NlPXtoYW5kbGVDbG9zZX0gLz47XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxmb3JtIG9uU3VibWl0PXtmb3JtaWsuaGFuZGxlU3VibWl0fT5cbiAgICAgIDxMYXlvdXQ+XG4gICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNTdHlsZT5cbiAgICAgICAgICB7IWlzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlLmN1cnJlbnR9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25UaW1lPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvblRpbWU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2UocGFnZVR5cGUpfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge2lzTW9iaWxlICYmIChcbiAgICAgICAgICAgIDxTYW1wbGluZ1Byb3BlcnRpZXNIZWFkTW9iaWxlXG4gICAgICAgICAgICAgIHNhbXBsaW5nUHJvcGVydGllcz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQbGFufVxuICAgICAgICAgICAgICBmb3JtaWs9e2Zvcm1pa31cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlLmN1cnJlbnR9XG4gICAgICAgICAgICAgIGNvbGxlY3Rpb25UaW1lPXtjb2xsZWN0aW9uVGltZX1cbiAgICAgICAgICAgICAgc2V0Q29sbGVjdGlvblRpbWU9e3NldENvbGxlY3Rpb25UaW1lfVxuICAgICAgICAgICAgICBzZXRTYW1wbGluZ1VwZGF0ZWQ9e3NldFNhbXBsaW5nVXBkYXRlZH1cbiAgICAgICAgICAgICAgaXNEYXRlUGlja2VyRGlzYWJsZWQ9e2lzUHJvcGVydGllc1BhZ2UocGFnZVR5cGUpfVxuICAgICAgICAgICAgICBkYXRlRm9ybWF0PXtkYXRlRm9ybWF0fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuXG4gICAgICAgICAge3NhbXBsaW5nUHJvcGVydGllcyAmJiBwYWdlVHlwZSAmJiAoXG4gICAgICAgICAgICA8U2FtcGxpbmdQcm9wZXJ0aWVzRm9ybVxuICAgICAgICAgICAgICBzYW1wbGluZ1Byb3BlcnRpZXM9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUGxhbn1cbiAgICAgICAgICAgICAgcGFnZVR5cGU9e3BhZ2VUeXBlLmN1cnJlbnR9XG4gICAgICAgICAgICAgIHNldFNhbXBsaW5nVXBkYXRlZD17c2V0U2FtcGxpbmdVcGRhdGVkfVxuICAgICAgICAgICAgICBzYXZpbmdNc2c9e3NhdmluZ01zZ31cbiAgICAgICAgICAgICAgaGFuZGxlQ2xvc2U9e2hhbmRsZUNsb3NlfVxuICAgICAgICAgICAgICBzZXRQaG90b3NUb0RlbGV0ZT17c2V0UGhvdG9zVG9EZWxldGV9XG4gICAgICAgICAgICAgIHNldFBob3Rvcz17c2V0UGhvdG9zfVxuICAgICAgICAgICAgICBwaG90b3M9e3Bob3Rvc31cbiAgICAgICAgICAgICAgZm9ybWlrPXtmb3JtaWt9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvU2FtcGxpbmdQcm9wZXJ0aWVzU3R5bGU+XG4gICAgICA8L0xheW91dD5cbiAgICA8L2Zvcm0+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFHQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBRyxrQkFBQSxHQUFB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
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
@@ -19,6 +19,8 @@ var _theme = require("styles/theme/theme");
|
|
|
19
19
|
var _useInitializeHeaders = require("hooks/useInitializeHeaders");
|
|
20
20
|
var _styleModule = _interopRequireDefault(require("../style.module.scss"));
|
|
21
21
|
var _styles = require("./styles");
|
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
22
24
|
var SamplingPropertiesForm = function SamplingPropertiesForm(props) {
|
|
23
25
|
var _samplingProperties$l;
|
|
24
26
|
var _props$samplingProper = props.samplingProperties,
|
|
@@ -218,4 +220,4 @@ var BottomFormStyle = _styledComponents.default.div.withConfig({
|
|
|
218
220
|
displayName: "SamplingPropertiesForm__BottomFormStyle",
|
|
219
221
|
componentId: "sc-11w8cbo-8"
|
|
220
222
|
})(["padding:0 0 6px;"]);
|
|
221
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfcmVhY3REZXZpY2VEZXRlY3QiLCJfbG9kYXNoIiwiX3NhbXBsaW5nUHJvcGVydGllc1V0aWxzIiwiX0ltYWdlVXBsb2FkIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9pMThuIiwiX3VpS2l0IiwiX3RoZW1lIiwiX3VzZUluaXRpYWxpemVIZWFkZXJzIiwiX3N0eWxlTW9kdWxlIiwiX3N0eWxlcyIsIlNhbXBsaW5nUHJvcGVydGllc0Zvcm0iLCJwcm9wcyIsIl9zYW1wbGluZ1Byb3BlcnRpZXMkbCIsIl9wcm9wcyRzYW1wbGluZ1Byb3BlciIsInNhbXBsaW5nUHJvcGVydGllcyIsImlzX3diZSIsImZvcm1payIsInBhZ2VUeXBlIiwic2F2aW5nTXNnIiwiaGFuZGxlQ2xvc2UiLCJzZXRQaG90b3MiLCJwaG90b3MiLCJzZXRQaG90b3NUb0RlbGV0ZSIsInVzZUluaXRpYWxpemVIZWFkZXJzIiwidXNlRWZmZWN0IiwiQ2FuY2VsbGF0aW9uUmVhc29ucyIsInJlYXNvbnMiLCJhdXRvUmVhc29uc0tleXMiLCJtYXAiLCJrZXkiLCJpMThuIiwidCIsImNvbmNhdCIsIm1hY2hpbmVSZWFzb25zIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJGcmFnbWVudCIsIkZvcm0iLCJHcm91cCIsImNsYXNzTmFtZSIsIlN0eWxlIiwiY2FuY2VsbGF0aW9uUmVhc29uR3JvdXAiLCJyZWFzb24iLCJpZHgiLCJjYW5jZWxsYXRpb25SZWFzb24iLCJDaGVjayIsInZhbHVlIiwib25DaGFuZ2UiLCJoYW5kbGVDaGFuZ2UiLCJvbkJsdXIiLCJoYW5kbGVCbHVyIiwibGFiZWwiLCJuYW1lIiwidHlwZSIsImlkIiwiY2hlY2tlZCIsInZhbHVlcyIsImNhbmNlbGxhdGlvbl9yZWFzb24iLCJpbkNvbGxlY3RMYXlvdXQiLCJpc0NvbGxlY3RMYXlvdXQiLCJpbkNhbmNlbExheW91dCIsImlzQ2FuY2VsTGF5b3V0IiwiRm9ybVN0eWxlIiwiRm9ybUNvbnRhaW5lclN0eWxlIiwiRmllbGRzQ29udGFpbmVyIiwiU3RhcnQiLCJJbnB1dFdyYXBwZXIiLCJNb2JpbGVJbnB1dCIsImlucHV0VGl0bGUiLCJsYWJfaWQiLCJpc0ludmFsaWQiLCJlcnJvcnMiLCJtYW5kYXRvcnkiLCJmb3JtSW5wdXRUaXRsZSIsInVuZGVmaW5lZCIsImxhYnMiLCJsYWIiLCJkZWZhdWx0VmFsdWUiLCJ0b1NhZmVJbnRlZ2VyIiwiRm9ybVJvd1N0eWxlIiwicHVtcF9zYW1wbGluZ192b2x1bWUiLCJzeW1ib2wiLCJwdW1wX2JhdHRlcnlfbGV2ZWwiLCJFbmQiLCJrYW5kb19yZXAiLCJwbGFjZWhvbGRlciIsImNhbmNlbGVkX2J5X2lkIiwiY2FuY2VsbGF0aW9uVGl0bGUiLCJyZWFzb25zTGlzdFdyYXBwZXIiLCJyZWFzb25zV3JhcHBlciIsInRvdWNoZWQiLCJ2YWxpZGF0aW9uRXJyb3IiLCJEZXNjcmlwdGlvbiIsImRlc2NyaXB0aW9uIiwiY29sbGVjdGlvbl90aW1lIiwic2FtcGxpbmdfcGxhbl9pZCIsIkJvdHRvbUZvcm1TdHlsZSIsInNhbXBsaW5nIiwiQnV0dG9uc1JvdyIsIkJ1dHRvbiIsIm9uQ2xpY2siLCJ3aWR0aCIsInZhcmlhbnQiLCJyb3VuZGVkIiwiY2xvc2VCdG4iLCJkaXNhYmxlZCIsInN1Ym1pdEJ0biIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJkYXRhIiwiUjEwMCIsImlzTW9iaWxlIiwiYXR0cnMiLCJpc1Byb3BlcnRpZXNQYWdlIiwiUm93IiwiQ29udGFpbmVyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhZ2VzL1NhbXBsaW5nc1BhZ2UvU2FtcGxpbmdQcm9wZXJ0aWVzL1NhbXBsaW5nUHJvcGVydGllc0Zvcm0udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBGQywgdXNlRWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyBDb250YWluZXIsIEZvcm0sIFJvdyB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyBpc01vYmlsZSB9IGZyb20gJ3JlYWN0LWRldmljZS1kZXRlY3QnO1xuaW1wb3J0IHsgdG9TYWZlSW50ZWdlciB9IGZyb20gJ2xvZGFzaCc7XG5cbmltcG9ydCB7XG4gIFNhbXBsaW5nUHJvcGVydGllc1Byb3BzLFxuICBhdXRvUmVhc29uc0tleXMsXG4gIGlzQ2FuY2VsTGF5b3V0LFxuICBpc0NvbGxlY3RMYXlvdXQsXG59IGZyb20gJy4vc2FtcGxpbmdQcm9wZXJ0aWVzVXRpbHMnO1xuXG5pbXBvcnQgSW1hZ2VVcGxvYWQgZnJvbSAnc3JjL3BhZ2VzL1NhbXBsaW5nc1BhZ2UvU2FtcGxpbmdQcm9wZXJ0aWVzL0ltYWdlVXBsb2FkJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBNb2JpbGVJbnB1dCwgQnV0dG9uIH0gZnJvbSAnc3JjL3VpLWtpdCc7XG5pbXBvcnQgeyB0aGVtZSB9IGZyb20gJ3NyYy9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgdXNlSW5pdGlhbGl6ZUhlYWRlcnMgfSBmcm9tICdzcmMvaG9va3MvdXNlSW5pdGlhbGl6ZUhlYWRlcnMnO1xuXG5pbXBvcnQgU3R5bGUgZnJvbSAnLi4vc3R5bGUubW9kdWxlLnNjc3MnO1xuaW1wb3J0IHsgQnV0dG9uc1JvdyB9IGZyb20gJy4vc3R5bGVzJztcblxuZXhwb3J0IGNvbnN0IFNhbXBsaW5nUHJvcGVydGllc0Zvcm06IEZDPFNhbXBsaW5nUHJvcGVydGllc1Byb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7XG4gICAgc2FtcGxpbmdQcm9wZXJ0aWVzID0geyBpc193YmU6IGZhbHNlIH0sXG4gICAgZm9ybWlrLFxuICAgIHBhZ2VUeXBlLFxuICAgIHNhdmluZ01zZyxcbiAgICBoYW5kbGVDbG9zZSxcbiAgICBzZXRQaG90b3MsXG4gICAgcGhvdG9zLFxuICAgIHNldFBob3Rvc1RvRGVsZXRlLFxuICB9ID0gcHJvcHM7XG5cbiAgdXNlSW5pdGlhbGl6ZUhlYWRlcnMoKTtcbiAgdXNlRWZmZWN0KCgpID0+IHt9LCBbc2FtcGxpbmdQcm9wZXJ0aWVzLCBmb3JtaWtdKTtcblxuICBjb25zdCBDYW5jZWxsYXRpb25SZWFzb25zID0gKCkgPT4ge1xuICAgIGNvbnN0IHJlYXNvbnMgPSBhdXRvUmVhc29uc0tleXMubWFwKChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgcmV0dXJuIGkxOG4udChgY2FuY2VsbGF0aW9uX3JlYXNvbnMuYXV0b21hdGVkLiR7a2V5fWApO1xuICAgIH0pO1xuXG4gICAgY29uc3QgbWFjaGluZVJlYXNvbnMgPSBhdXRvUmVhc29uc0tleXM7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAgPEZvcm0uR3JvdXAgY2xhc3NOYW1lPXtTdHlsZS5jYW5jZWxsYXRpb25SZWFzb25Hcm91cH0+XG4gICAgICAgICAge3JlYXNvbnMubWFwKChyZWFzb24sIGlkeCkgPT4gKFxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBrZXk9e2BvcHQtJHtpZHh9YH1cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgbWItMyAke1N0eWxlLmNhbmNlbGxhdGlvblJlYXNvbn1gfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8Rm9ybS5DaGVja1xuICAgICAgICAgICAgICAgIHZhbHVlPXttYWNoaW5lUmVhc29uc1tpZHhdfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtmb3JtaWsuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgIG9uQmx1cj17Zm9ybWlrLmhhbmRsZUJsdXJ9XG4gICAgICAgICAgICAgICAgbGFiZWw9e3JlYXNvbn1cbiAgICAgICAgICAgICAgICBuYW1lPVwiY2FuY2VsbGF0aW9uX3JlYXNvblwiXG4gICAgICAgICAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgICAgICAgICBpZD17cmVhc29ufVxuICAgICAgICAgICAgICAgIGNoZWNrZWQ9e1xuICAgICAgICAgICAgICAgICAgbWFjaGluZVJlYXNvbnNbaWR4XSA9PT0gZm9ybWlrLnZhbHVlcy5jYW5jZWxsYXRpb25fcmVhc29uXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgKSl9XG4gICAgICAgIDwvRm9ybS5Hcm91cD5cbiAgICAgIDwvPlxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgaW5Db2xsZWN0TGF5b3V0ID0gaXNDb2xsZWN0TGF5b3V0KHBhZ2VUeXBlKTtcbiAgY29uc3QgaW5DYW5jZWxMYXlvdXQgPSBpc0NhbmNlbExheW91dChwYWdlVHlwZSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Rm9ybVN0eWxlPlxuICAgICAgPEZvcm1Db250YWluZXJTdHlsZT5cbiAgICAgICAgPEZpZWxkc0NvbnRhaW5lcj5cbiAgICAgICAgICB7aW5Db2xsZWN0TGF5b3V0ICYmIChcbiAgICAgICAgICAgIDxTdGFydD5cbiAgICAgICAgICAgICAgPElucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgICAgICAgIGhhbmRsZUNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgIGhhbmRsZUJsdXI9e2Zvcm1pay5oYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KCdhY3RpdmVyZWNvcmQubW9kZWxzLmxhYicpfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMubGFiX2lkfVxuICAgICAgICAgICAgICAgICAgaXNJbnZhbGlkPXshIWZvcm1pay5lcnJvcnMubGFiX2lkfVxuICAgICAgICAgICAgICAgICAgbmFtZT1cImxhYl9pZFwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwic2VsZWN0XCJcbiAgICAgICAgICAgICAgICAgIG1hbmRhdG9yeT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17U3R5bGUuZm9ybUlucHV0VGl0bGV9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT17dW5kZWZpbmVkfSAvPlxuICAgICAgICAgICAgICAgICAge3NhbXBsaW5nUHJvcGVydGllcz8ubGFicz8ubWFwKChsYWI6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIDxvcHRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgIGtleT17YG9wdC0ke2xhYi5pZH1gfVxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e2xhYi5pZCB8fCAnJ31cbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZT17XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxhYi5pZCA9PT0gdG9TYWZlSW50ZWdlcihmb3JtaWsudmFsdWVzLmxhYl9pZClcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7bGFiLm5hbWV9XG4gICAgICAgICAgICAgICAgICAgICAgPC9vcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgICA8L01vYmlsZUlucHV0PlxuICAgICAgICAgICAgICAgIHtmb3JtaWsuZXJyb3JzLmxhYl9pZCAmJiAoXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2hpbnQnfT57Zm9ybWlrLmVycm9ycy5sYWJfaWR9PC9kaXY+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgIHtzYW1wbGluZ1Byb3BlcnRpZXM/LmlzX3diZSAmJiAoXG4gICAgICAgICAgICAgICAgPEZvcm1Sb3dTdHlsZT5cbiAgICAgICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIDxNb2JpbGVJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLnB1bXBfc2FtcGxpbmdfdm9sdW1lfVxuICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAncHVtcF9zY2hlZHVsZWRfZGF5c19jb25maWd1cmF0aW9uLnZvbHVtZScsXG4gICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHVtcF9zYW1wbGluZ192b2x1bWVcIlxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJudW1iZXJcIlxuICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLnB1bXBfc2FtcGxpbmdfdm9sdW1lfVxuICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbD1cIm1sXCJcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1N0eWxlLmZvcm1JbnB1dFRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5wdW1wX3NhbXBsaW5nX3ZvbHVtZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50IGhpbnQtLXVwcGVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5wdW1wX3NhbXBsaW5nX3ZvbHVtZX1cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgPElucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgaXNJbnZhbGlkPXshIWZvcm1pay5lcnJvcnMucHVtcF9iYXR0ZXJ5X2xldmVsfVxuICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoJ3NhbXBsaW5nX3NjcmVlbi5wdW1wX2JhdHRlcnlfbGV2ZWwnKX1cbiAgICAgICAgICAgICAgICAgICAgICBuYW1lPVwicHVtcF9iYXR0ZXJ5X2xldmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5wdW1wX2JhdHRlcnlfbGV2ZWx9XG4gICAgICAgICAgICAgICAgICAgICAgc3ltYm9sPVwiVlwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtTdHlsZS5mb3JtSW5wdXRUaXRsZX1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMucHVtcF9iYXR0ZXJ5X2xldmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2hpbnQgaGludC0tdXBwZXInfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtmb3JtaWsuZXJyb3JzLnB1bXBfYmF0dGVyeV9sZXZlbH1cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgIDwvRm9ybVJvd1N0eWxlPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9TdGFydD5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxFbmQgaXNDb2xsZWN0TGF5b3V0PXtpbkNvbGxlY3RMYXlvdXR9PlxuICAgICAgICAgICAge2luQ29sbGVjdExheW91dCAmJiAoXG4gICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICBpc0ludmFsaWQ9eyEhZm9ybWlrLmVycm9ycy5rYW5kb19yZXB9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgIGlucHV0VGl0bGU9e2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLnJlcG9ydGVyJyxcbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICBuYW1lPVwia2FuZG9fcmVwXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICdzYW1wbGluZ3NfcGFnZS5zYW1wbGluZ3NfcHJvcGVydGllcy5wbGFjZWhvbGRlcl9yZXBvcnRlcicsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMua2FuZG9fcmVwfVxuICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtTdHlsZS5mb3JtSW5wdXRUaXRsZX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIHtmb3JtaWsuZXJyb3JzLmthbmRvX3JlcCAmJiAoXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2hpbnQnfT57Zm9ybWlrLmVycm9ycy5rYW5kb19yZXB9PC9kaXY+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgICAgICB7aW5DYW5jZWxMYXlvdXQgJiYgKFxuICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgIDxNb2JpbGVJbnB1dFxuICAgICAgICAgICAgICAgICAgaXNJbnZhbGlkPXshIWZvcm1pay5lcnJvcnMuY2FuY2VsZWRfYnlfaWR9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgIGlucHV0VGl0bGU9e2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLmNhbmNlbGVkX2J5JyxcbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICBuYW1lPVwia2FuZG9fcmVwXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICdzYW1wbGluZ3NfcGFnZS5zYW1wbGluZ3NfcHJvcGVydGllcy5wbGFjZWhvbGRlcl9jYW5jZWxlZF9ieScsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMuY2FuY2VsZWRfYnlfaWQubmFtZX1cbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17U3R5bGUuZm9ybUlucHV0VGl0bGV9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5jYW5jZWxlZF9ieV9pZCAmJiAoXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2hpbnQnfT57Zm9ybWlrLmVycm9ycy5jYW5jZWxlZF9ieV9pZH08L2Rpdj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgIHtpbkNhbmNlbExheW91dCAmJiAoXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtTdHlsZS5jYW5jZWxsYXRpb25UaXRsZX0+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnc2FtcGxpbmdzX3BhZ2UuY2FuY2VsbGF0aW9uX3RpdGxlJyl9OlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtTdHlsZS5yZWFzb25zTGlzdFdyYXBwZXJ9PlxuICAgICAgICAgICAgICB7aW5DYW5jZWxMYXlvdXQgJiYgKFxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtTdHlsZS5yZWFzb25zV3JhcHBlcn0+XG4gICAgICAgICAgICAgICAgICB7Zm9ybWlrLnRvdWNoZWQuY2FuY2VsbGF0aW9uX3JlYXNvbiAmJlxuICAgICAgICAgICAgICAgICAgICBmb3JtaWsuZXJyb3JzLmNhbmNlbGxhdGlvbl9yZWFzb24gJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXtTdHlsZS52YWxpZGF0aW9uRXJyb3J9PlxuICAgICAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZ2VuZXJhbC5wbGVhc2Vfc2VsZWN0Jyl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICA8Q2FuY2VsbGF0aW9uUmVhc29ucyAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICApfVxuXG4gICAgICAgICAgICAgIDxEZXNjcmlwdGlvbj5cbiAgICAgICAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgICAgICAgIGhhbmRsZUNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICAgIGhhbmRsZUJsdXI9e2Zvcm1pay5oYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KCd3YXRlcl9tZXRlci5kZXNjcmlwdGlvbicpfVxuICAgICAgICAgICAgICAgICAgbmFtZT1cImRlc2NyaXB0aW9uXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0YXJlYVwiXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMuZ2VuZXJhbF9kZXNjcmlwdGlvbicsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMuZGVzY3JpcHRpb259XG4gICAgICAgICAgICAgICAgICBpc0ludmFsaWQ9eyEhZm9ybWlrLmVycm9ycy5kZXNjcmlwdGlvbn1cbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17U3R5bGUuZm9ybUlucHV0VGl0bGV9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9EZXNjcmlwdGlvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvRW5kPlxuICAgICAgICA8L0ZpZWxkc0NvbnRhaW5lcj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT17J2hpZGRlbid9XG4gICAgICAgICAgbmFtZT17J2NvbGxlY3Rpb25fdGltZSd9XG4gICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMuY29sbGVjdGlvbl90aW1lIHx8ICcnfVxuICAgICAgICAvPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICB0eXBlPXsnaGlkZGVuJ31cbiAgICAgICAgICBuYW1lPXsnc2FtcGxpbmdfcGxhbl9pZCd9XG4gICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMuc2FtcGxpbmdfcGxhbl9pZCB8fCAnJ31cbiAgICAgICAgLz5cbiAgICAgICAgPEJvdHRvbUZvcm1TdHlsZSAvPlxuICAgICAgICA8SW1hZ2VVcGxvYWRcbiAgICAgICAgICBzZXRQaG90b3M9e3NldFBob3Rvc31cbiAgICAgICAgICBwaG90b3M9e3Bob3Rvc31cbiAgICAgICAgICBzYW1wbGluZz17c2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgIHNldFBob3Rvc1RvRGVsZXRlPXtzZXRQaG90b3NUb0RlbGV0ZX1cbiAgICAgICAgLz5cbiAgICAgICAgPEJ1dHRvbnNSb3c+XG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xvc2V9XG4gICAgICAgICAgICB3aWR0aD1cIjE1MHB4XCJcbiAgICAgICAgICAgIHZhcmlhbnQ9XCJub25lXCJcbiAgICAgICAgICAgIHJvdW5kZWQ9e3RydWV9XG4gICAgICAgICAgICBjbGFzc05hbWU9e1N0eWxlLmNsb3NlQnRufVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoJ2Nsb3NlJyl9XG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgdmFyaWFudD1cInByaW1hcnlcIlxuICAgICAgICAgICAgcm91bmRlZD17dHJ1ZX1cbiAgICAgICAgICAgIGRpc2FibGVkPXtmYWxzZX1cbiAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgd2lkdGg9XCIxNTBweFwiXG4gICAgICAgICAgICBjbGFzc05hbWU9e1N0eWxlLnN1Ym1pdEJ0bn1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7c2F2aW5nTXNnfVxuICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICA8L0J1dHRvbnNSb3c+XG4gICAgICA8L0Zvcm1Db250YWluZXJTdHlsZT5cbiAgICA8L0Zvcm1TdHlsZT5cbiAgKTtcbn07XG5cbmNvbnN0IElucHV0V3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC1ncm93OiAxO1xuXG4gIC5pbnB1dC1ncm91cCxcbiAgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgdG9wOiAtNHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuaGludCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTE2cHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLmRhdGEuUjEwMH07XG5cbiAgICAmLS11cHBlciB7XG4gICAgICBib3R0b206IC0xcHg7XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBGaWVsZHNDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogJHtpc01vYmlsZSA/ICdjb2x1bW47JyA6ICdyb3c7J31cbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuYDtcblxuY29uc3QgU3RhcnQgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzUwJTsnfVxuICBwYWRkaW5nLWlubGluZS1lbmQ6ICR7aXNNb2JpbGUgPyAndW5zZXQ7JyA6ICcxMHB4Oyd9XG4gIHBhZGRpbmctdG9wOiAke2lzTW9iaWxlID8gJ3Vuc2V0OycgOiAnMTBweDsnfVxuICBcbmA7XG5pbnRlcmZhY2UgRW5kUHJvcHMge1xuICBpc0NvbGxlY3RMYXlvdXQ6IGJvb2xlYW47XG59XG5jb25zdCBFbmQgPSBzdHlsZWQuZGl2LmF0dHJzKChwcm9wczogRW5kUHJvcHMpID0+ICh7XG4gIGlzUHJvcGVydGllc1BhZ2U6IHByb3BzLmlzQ29sbGVjdExheW91dCxcbn0pKWBcbiAgd2lkdGg6ICR7KHByb3BzKSA9PlxuICAgIGlzTW9iaWxlID8gJ3Vuc2V0JyA6IHByb3BzLmlzUHJvcGVydGllc1BhZ2UgPyAnNTAlJyA6ICcxMDAlJ307XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAke2lzTW9iaWxlID8gJ3Vuc2V0OycgOiAnMTBweDsnfVxuICBwYWRkaW5nLXRvcDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzEwcHg7J31cbmA7XG5cbmNvbnN0IERlc2NyaXB0aW9uID0gc3R5bGVkLmRpdmBcbiAgZmxleC1ncm93OiAxO1xuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuICAgIHRleHRhcmVhIHtcbiAgICAgIHRyYW5zaXRpb246IGN1YmljLWJlemllcigwLjY1LCAwLjA1LCAwLjM2LCAxKSAwLjJzO1xuICAgICAgaGVpZ2h0OiAke2lzTW9iaWxlID8gJzc1cHggIWltcG9ydGFudCcgOiAnMTQwcHggIWltcG9ydGFudCd9O1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgRm9ybVN0eWxlID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMCAwIDZweDtcbmA7XG5cbmNvbnN0IEZvcm1Sb3dTdHlsZSA9IHN0eWxlZChSb3cpYFxuICBtYXJnaW46IDA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZGl2IHtcbiAgICB3aWR0aDogJHtpc01vYmlsZSA/ICc0NSU7JyA6ICcxMDAlOyd9O1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAke2lzTW9iaWxlID8gJzEwcHg7JyA6ICcwOyd9O1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6ICR7aXNNb2JpbGUgPyAnMTBweDsnIDogJzA7J307XG4gICAgfVxuXG4gICAgZGl2IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgRm9ybUNvbnRhaW5lclN0eWxlID0gc3R5bGVkKENvbnRhaW5lcilgXG4gIG1hcmdpbjogMjBweCAwIDA7XG4gIHBhZGRpbmc6IDA7XG5gO1xuXG5jb25zdCBCb3R0b21Gb3JtU3R5bGUgPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiAwIDAgNnB4O1xuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUMsZUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsa0JBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLE9BQUEsR0FBQUgsT0FBQTtBQUVBLElBQUFJLHdCQUFBLEdBQUFKLE9BQUE7QUFPQSxJQUFBSyxZQUFBLEdBQUFDLHNCQUFBLENBQUFOLE9BQUE7QUFDQSxJQUFBTyxLQUFBLEdBQUFELHNCQUFBLENBQUFOLE9BQUE7QUFDQSxJQUFBUSxNQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxNQUFBLEdBQUFULE9BQUE7QUFDQSxJQUFBVSxxQkFBQSxHQUFBVixPQUFBO0FBRUEsSUFBQVcsWUFBQSxHQUFBTCxzQkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQVksT0FBQSxHQUFBWixPQUFBO0FBRU8sSUFBTWEsc0JBQW1ELEdBQUcsU0FBdERBLHNCQUFtREEsQ0FBSUMsS0FBSyxFQUFLO0VBQUEsSUFBQUMscUJBQUE7RUFDNUUsSUFBQUMscUJBQUEsR0FTSUYsS0FBSyxDQVJQRyxrQkFBa0I7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
|
|
223
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RCb290c3RyYXAiLCJfcmVhY3REZXZpY2VEZXRlY3QiLCJfbG9kYXNoIiwiX3NhbXBsaW5nUHJvcGVydGllc1V0aWxzIiwiX0ltYWdlVXBsb2FkIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9pMThuIiwiX3VpS2l0IiwiX3RoZW1lIiwiX3VzZUluaXRpYWxpemVIZWFkZXJzIiwiX3N0eWxlTW9kdWxlIiwiX3N0eWxlcyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiU2FtcGxpbmdQcm9wZXJ0aWVzRm9ybSIsInByb3BzIiwiX3NhbXBsaW5nUHJvcGVydGllcyRsIiwiX3Byb3BzJHNhbXBsaW5nUHJvcGVyIiwic2FtcGxpbmdQcm9wZXJ0aWVzIiwiaXNfd2JlIiwiZm9ybWlrIiwicGFnZVR5cGUiLCJzYXZpbmdNc2ciLCJoYW5kbGVDbG9zZSIsInNldFBob3RvcyIsInBob3RvcyIsInNldFBob3Rvc1RvRGVsZXRlIiwidXNlSW5pdGlhbGl6ZUhlYWRlcnMiLCJ1c2VFZmZlY3QiLCJDYW5jZWxsYXRpb25SZWFzb25zIiwicmVhc29ucyIsImF1dG9SZWFzb25zS2V5cyIsIm1hcCIsImkxOG4iLCJ0IiwiY29uY2F0IiwibWFjaGluZVJlYXNvbnMiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJGb3JtIiwiR3JvdXAiLCJjbGFzc05hbWUiLCJTdHlsZSIsImNhbmNlbGxhdGlvblJlYXNvbkdyb3VwIiwicmVhc29uIiwiaWR4IiwiY2FuY2VsbGF0aW9uUmVhc29uIiwiQ2hlY2siLCJ2YWx1ZSIsIm9uQ2hhbmdlIiwiaGFuZGxlQ2hhbmdlIiwib25CbHVyIiwiaGFuZGxlQmx1ciIsImxhYmVsIiwibmFtZSIsInR5cGUiLCJpZCIsImNoZWNrZWQiLCJ2YWx1ZXMiLCJjYW5jZWxsYXRpb25fcmVhc29uIiwiaW5Db2xsZWN0TGF5b3V0IiwiaXNDb2xsZWN0TGF5b3V0IiwiaW5DYW5jZWxMYXlvdXQiLCJpc0NhbmNlbExheW91dCIsIkZvcm1TdHlsZSIsIkZvcm1Db250YWluZXJTdHlsZSIsIkZpZWxkc0NvbnRhaW5lciIsIlN0YXJ0IiwiSW5wdXRXcmFwcGVyIiwiTW9iaWxlSW5wdXQiLCJpbnB1dFRpdGxlIiwibGFiX2lkIiwiaXNJbnZhbGlkIiwiZXJyb3JzIiwibWFuZGF0b3J5IiwiZm9ybUlucHV0VGl0bGUiLCJ1bmRlZmluZWQiLCJsYWJzIiwibGFiIiwiZGVmYXVsdFZhbHVlIiwidG9TYWZlSW50ZWdlciIsIkZvcm1Sb3dTdHlsZSIsInB1bXBfc2FtcGxpbmdfdm9sdW1lIiwic3ltYm9sIiwicHVtcF9iYXR0ZXJ5X2xldmVsIiwiRW5kIiwia2FuZG9fcmVwIiwicGxhY2Vob2xkZXIiLCJjYW5jZWxlZF9ieV9pZCIsImNhbmNlbGxhdGlvblRpdGxlIiwicmVhc29uc0xpc3RXcmFwcGVyIiwicmVhc29uc1dyYXBwZXIiLCJ0b3VjaGVkIiwidmFsaWRhdGlvbkVycm9yIiwiRGVzY3JpcHRpb24iLCJkZXNjcmlwdGlvbiIsImNvbGxlY3Rpb25fdGltZSIsInNhbXBsaW5nX3BsYW5faWQiLCJCb3R0b21Gb3JtU3R5bGUiLCJzYW1wbGluZyIsIkJ1dHRvbnNSb3ciLCJCdXR0b24iLCJvbkNsaWNrIiwid2lkdGgiLCJ2YXJpYW50Iiwicm91bmRlZCIsImNsb3NlQnRuIiwiZGlzYWJsZWQiLCJzdWJtaXRCdG4iLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiLCJ0aGVtZSIsImNvbG9yU2NoZW1lIiwiZGF0YSIsIlIxMDAiLCJpc01vYmlsZSIsImF0dHJzIiwiaXNQcm9wZXJ0aWVzUGFnZSIsIlJvdyIsIkNvbnRhaW5lciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXNGb3JtLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgRkMsIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgQ29udGFpbmVyLCBGb3JtLCBSb3cgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgaXNNb2JpbGUgfSBmcm9tICdyZWFjdC1kZXZpY2UtZGV0ZWN0JztcbmltcG9ydCB7IHRvU2FmZUludGVnZXIgfSBmcm9tICdsb2Rhc2gnO1xuXG5pbXBvcnQge1xuICBTYW1wbGluZ1Byb3BlcnRpZXNQcm9wcyxcbiAgYXV0b1JlYXNvbnNLZXlzLFxuICBpc0NhbmNlbExheW91dCxcbiAgaXNDb2xsZWN0TGF5b3V0LFxufSBmcm9tICcuL3NhbXBsaW5nUHJvcGVydGllc1V0aWxzJztcblxuaW1wb3J0IEltYWdlVXBsb2FkIGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9JbWFnZVVwbG9hZCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgTW9iaWxlSW5wdXQsIEJ1dHRvbiB9IGZyb20gJ3NyYy91aS1raXQnO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICdzcmMvc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCB7IHVzZUluaXRpYWxpemVIZWFkZXJzIH0gZnJvbSAnc3JjL2hvb2tzL3VzZUluaXRpYWxpemVIZWFkZXJzJztcblxuaW1wb3J0IFN0eWxlIGZyb20gJy4uL3N0eWxlLm1vZHVsZS5zY3NzJztcbmltcG9ydCB7IEJ1dHRvbnNSb3cgfSBmcm9tICcuL3N0eWxlcyc7XG5cbmV4cG9ydCBjb25zdCBTYW1wbGluZ1Byb3BlcnRpZXNGb3JtOiBGQzxTYW1wbGluZ1Byb3BlcnRpZXNQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3Qge1xuICAgIHNhbXBsaW5nUHJvcGVydGllcyA9IHsgaXNfd2JlOiBmYWxzZSB9LFxuICAgIGZvcm1payxcbiAgICBwYWdlVHlwZSxcbiAgICBzYXZpbmdNc2csXG4gICAgaGFuZGxlQ2xvc2UsXG4gICAgc2V0UGhvdG9zLFxuICAgIHBob3RvcyxcbiAgICBzZXRQaG90b3NUb0RlbGV0ZSxcbiAgfSA9IHByb3BzO1xuXG4gIHVzZUluaXRpYWxpemVIZWFkZXJzKCk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7fSwgW3NhbXBsaW5nUHJvcGVydGllcywgZm9ybWlrXSk7XG5cbiAgY29uc3QgQ2FuY2VsbGF0aW9uUmVhc29ucyA9ICgpID0+IHtcbiAgICBjb25zdCByZWFzb25zID0gYXV0b1JlYXNvbnNLZXlzLm1hcCgoa2V5OiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBpMThuLnQoYGNhbmNlbGxhdGlvbl9yZWFzb25zLmF1dG9tYXRlZC4ke2tleX1gKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IG1hY2hpbmVSZWFzb25zID0gYXV0b1JlYXNvbnNLZXlzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDw+XG4gICAgICAgIDxGb3JtLkdyb3VwIGNsYXNzTmFtZT17U3R5bGUuY2FuY2VsbGF0aW9uUmVhc29uR3JvdXB9PlxuICAgICAgICAgIHtyZWFzb25zLm1hcCgocmVhc29uLCBpZHgpID0+IChcbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAga2V5PXtgb3B0LSR7aWR4fWB9XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT17YG1iLTMgJHtTdHlsZS5jYW5jZWxsYXRpb25SZWFzb259YH1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPEZvcm0uQ2hlY2tcbiAgICAgICAgICAgICAgICB2YWx1ZT17bWFjaGluZVJlYXNvbnNbaWR4XX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17Zm9ybWlrLmhhbmRsZUNoYW5nZX1cbiAgICAgICAgICAgICAgICBvbkJsdXI9e2Zvcm1pay5oYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgIGxhYmVsPXtyZWFzb259XG4gICAgICAgICAgICAgICAgbmFtZT1cImNhbmNlbGxhdGlvbl9yZWFzb25cIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgICAgICAgICAgaWQ9e3JlYXNvbn1cbiAgICAgICAgICAgICAgICBjaGVja2VkPXtcbiAgICAgICAgICAgICAgICAgIG1hY2hpbmVSZWFzb25zW2lkeF0gPT09IGZvcm1pay52YWx1ZXMuY2FuY2VsbGF0aW9uX3JlYXNvblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICkpfVxuICAgICAgICA8L0Zvcm0uR3JvdXA+XG4gICAgICA8Lz5cbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGluQ29sbGVjdExheW91dCA9IGlzQ29sbGVjdExheW91dChwYWdlVHlwZSk7XG4gIGNvbnN0IGluQ2FuY2VsTGF5b3V0ID0gaXNDYW5jZWxMYXlvdXQocGFnZVR5cGUpO1xuXG4gIHJldHVybiAoXG4gICAgPEZvcm1TdHlsZT5cbiAgICAgIDxGb3JtQ29udGFpbmVyU3R5bGU+XG4gICAgICAgIDxGaWVsZHNDb250YWluZXI+XG4gICAgICAgICAge2luQ29sbGVjdExheW91dCAmJiAoXG4gICAgICAgICAgICA8U3RhcnQ+XG4gICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgIGlucHV0VGl0bGU9e2kxOG4udCgnYWN0aXZlcmVjb3JkLm1vZGVscy5sYWInKX1cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLmxhYl9pZH1cbiAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLmxhYl9pZH1cbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJsYWJfaWRcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cInNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICBtYW5kYXRvcnk9e3RydWV9XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1N0eWxlLmZvcm1JbnB1dFRpdGxlfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9e3VuZGVmaW5lZH0gLz5cbiAgICAgICAgICAgICAgICAgIHtzYW1wbGluZ1Byb3BlcnRpZXM/LmxhYnM/Lm1hcCgobGFiOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICA8b3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgICBrZXk9e2BvcHQtJHtsYWIuaWR9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXtsYWIuaWQgfHwgJyd9XG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsYWIuaWQgPT09IHRvU2FmZUludGVnZXIoZm9ybWlrLnZhbHVlcy5sYWJfaWQpXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xhYi5uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgPC9Nb2JpbGVJbnB1dD5cbiAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5sYWJfaWQgJiYgKFxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50J30+e2Zvcm1pay5lcnJvcnMubGFiX2lkfTwvZGl2PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICB7c2FtcGxpbmdQcm9wZXJ0aWVzPy5pc193YmUgJiYgKFxuICAgICAgICAgICAgICAgIDxGb3JtUm93U3R5bGU+XG4gICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICBpc0ludmFsaWQ9eyEhZm9ybWlrLmVycm9ycy5wdW1wX3NhbXBsaW5nX3ZvbHVtZX1cbiAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgaGFuZGxlQmx1cj17Zm9ybWlrLmhhbmRsZUJsdXJ9XG4gICAgICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgJ3B1bXBfc2NoZWR1bGVkX2RheXNfY29uZmlndXJhdGlvbi52b2x1bWUnLFxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInB1bXBfc2FtcGxpbmdfdm9sdW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17Zm9ybWlrLnZhbHVlcy5wdW1wX3NhbXBsaW5nX3ZvbHVtZX1cbiAgICAgICAgICAgICAgICAgICAgICBzeW1ib2w9XCJtbFwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtTdHlsZS5mb3JtSW5wdXRUaXRsZX1cbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMucHVtcF9zYW1wbGluZ192b2x1bWUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnaGludCBoaW50LS11cHBlcid9PlxuICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMucHVtcF9zYW1wbGluZ192b2x1bWV9XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIDxNb2JpbGVJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLnB1bXBfYmF0dGVyeV9sZXZlbH1cbiAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgaGFuZGxlQmx1cj17Zm9ybWlrLmhhbmRsZUJsdXJ9XG4gICAgICAgICAgICAgICAgICAgICAgaW5wdXRUaXRsZT17aTE4bi50KCdzYW1wbGluZ19zY3JlZW4ucHVtcF9iYXR0ZXJ5X2xldmVsJyl9XG4gICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInB1bXBfYmF0dGVyeV9sZXZlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e2Zvcm1pay52YWx1ZXMucHVtcF9iYXR0ZXJ5X2xldmVsfVxuICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbD1cIlZcIlxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17U3R5bGUuZm9ybUlucHV0VGl0bGV9XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIHtmb3JtaWsuZXJyb3JzLnB1bXBfYmF0dGVyeV9sZXZlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50IGhpbnQtLXVwcGVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5wdW1wX2JhdHRlcnlfbGV2ZWx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8L0Zvcm1Sb3dTdHlsZT5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvU3RhcnQ+XG4gICAgICAgICAgKX1cbiAgICAgICAgICA8RW5kIGlzQ29sbGVjdExheW91dD17aW5Db2xsZWN0TGF5b3V0fT5cbiAgICAgICAgICAgIHtpbkNvbGxlY3RMYXlvdXQgJiYgKFxuICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgICAgIDxNb2JpbGVJbnB1dFxuICAgICAgICAgICAgICAgICAgaXNJbnZhbGlkPXshIWZvcm1pay5lcnJvcnMua2FuZG9fcmVwfVxuICAgICAgICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXtmb3JtaWsuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgaGFuZGxlQmx1cj17Zm9ybWlrLmhhbmRsZUJsdXJ9XG4gICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICdzYW1wbGluZ3NfcGFnZS5zYW1wbGluZ3NfcHJvcGVydGllcy5yZXBvcnRlcicsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgbmFtZT1cImthbmRvX3JlcFwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMucGxhY2Vob2xkZXJfcmVwb3J0ZXInLFxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLmthbmRvX3JlcH1cbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17U3R5bGUuZm9ybUlucHV0VGl0bGV9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICB7Zm9ybWlrLmVycm9ycy5rYW5kb19yZXAgJiYgKFxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50J30+e2Zvcm1pay5lcnJvcnMua2FuZG9fcmVwfTwvZGl2PlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgIDwvSW5wdXRXcmFwcGVyPlxuICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAge2luQ2FuY2VsTGF5b3V0ICYmIChcbiAgICAgICAgICAgICAgPElucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICA8TW9iaWxlSW5wdXRcbiAgICAgICAgICAgICAgICAgIGlzSW52YWxpZD17ISFmb3JtaWsuZXJyb3JzLmNhbmNlbGVkX2J5X2lkfVxuICAgICAgICAgICAgICAgICAgaGFuZGxlQ2hhbmdlPXtmb3JtaWsuaGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgaGFuZGxlQmx1cj17Zm9ybWlrLmhhbmRsZUJsdXJ9XG4gICAgICAgICAgICAgICAgICBpbnB1dFRpdGxlPXtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICdzYW1wbGluZ3NfcGFnZS5zYW1wbGluZ3NfcHJvcGVydGllcy5jYW5jZWxlZF9ieScsXG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgbmFtZT1cImthbmRvX3JlcFwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj17aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAnc2FtcGxpbmdzX3BhZ2Uuc2FtcGxpbmdzX3Byb3BlcnRpZXMucGxhY2Vob2xkZXJfY2FuY2VsZWRfYnknLFxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLmNhbmNlbGVkX2J5X2lkLm5hbWV9XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1N0eWxlLmZvcm1JbnB1dFRpdGxlfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAge2Zvcm1pay5lcnJvcnMuY2FuY2VsZWRfYnlfaWQgJiYgKFxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydoaW50J30+e2Zvcm1pay5lcnJvcnMuY2FuY2VsZWRfYnlfaWR9PC9kaXY+XG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgICAgICB7aW5DYW5jZWxMYXlvdXQgJiYgKFxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17U3R5bGUuY2FuY2VsbGF0aW9uVGl0bGV9PlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ3NhbXBsaW5nc19wYWdlLmNhbmNlbGxhdGlvbl90aXRsZScpfTpcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICApfVxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17U3R5bGUucmVhc29uc0xpc3RXcmFwcGVyfT5cbiAgICAgICAgICAgICAge2luQ2FuY2VsTGF5b3V0ICYmIChcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17U3R5bGUucmVhc29uc1dyYXBwZXJ9PlxuICAgICAgICAgICAgICAgICAge2Zvcm1pay50b3VjaGVkLmNhbmNlbGxhdGlvbl9yZWFzb24gJiZcbiAgICAgICAgICAgICAgICAgICAgZm9ybWlrLmVycm9ycy5jYW5jZWxsYXRpb25fcmVhc29uICYmIChcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17U3R5bGUudmFsaWRhdGlvbkVycm9yfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2dlbmVyYWwucGxlYXNlX3NlbGVjdCcpfVxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgPENhbmNlbGxhdGlvblJlYXNvbnMgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICA8RGVzY3JpcHRpb24+XG4gICAgICAgICAgICAgICAgPE1vYmlsZUlucHV0XG4gICAgICAgICAgICAgICAgICBoYW5kbGVDaGFuZ2U9e2Zvcm1pay5oYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICBoYW5kbGVCbHVyPXtmb3JtaWsuaGFuZGxlQmx1cn1cbiAgICAgICAgICAgICAgICAgIGlucHV0VGl0bGU9e2kxOG4udCgnd2F0ZXJfbWV0ZXIuZGVzY3JpcHRpb24nKX1cbiAgICAgICAgICAgICAgICAgIG5hbWU9XCJkZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dGFyZWFcIlxuICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgJ3NhbXBsaW5nc19wYWdlLnNhbXBsaW5nc19wcm9wZXJ0aWVzLmdlbmVyYWxfZGVzY3JpcHRpb24nLFxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLmRlc2NyaXB0aW9ufVxuICAgICAgICAgICAgICAgICAgaXNJbnZhbGlkPXshIWZvcm1pay5lcnJvcnMuZGVzY3JpcHRpb259XG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1N0eWxlLmZvcm1JbnB1dFRpdGxlfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvRGVzY3JpcHRpb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L0VuZD5cbiAgICAgICAgPC9GaWVsZHNDb250YWluZXI+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9eydoaWRkZW4nfVxuICAgICAgICAgIG5hbWU9eydjb2xsZWN0aW9uX3RpbWUnfVxuICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLmNvbGxlY3Rpb25fdGltZSB8fCAnJ31cbiAgICAgICAgLz5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT17J2hpZGRlbid9XG4gICAgICAgICAgbmFtZT17J3NhbXBsaW5nX3BsYW5faWQnfVxuICAgICAgICAgIHZhbHVlPXtmb3JtaWsudmFsdWVzLnNhbXBsaW5nX3BsYW5faWQgfHwgJyd9XG4gICAgICAgIC8+XG4gICAgICAgIDxCb3R0b21Gb3JtU3R5bGUgLz5cbiAgICAgICAgPEltYWdlVXBsb2FkXG4gICAgICAgICAgc2V0UGhvdG9zPXtzZXRQaG90b3N9XG4gICAgICAgICAgcGhvdG9zPXtwaG90b3N9XG4gICAgICAgICAgc2FtcGxpbmc9e3NhbXBsaW5nUHJvcGVydGllc31cbiAgICAgICAgICBzZXRQaG90b3NUb0RlbGV0ZT17c2V0UGhvdG9zVG9EZWxldGV9XG4gICAgICAgIC8+XG4gICAgICAgIDxCdXR0b25zUm93PlxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfVxuICAgICAgICAgICAgd2lkdGg9XCIxNTBweFwiXG4gICAgICAgICAgICB2YXJpYW50PVwibm9uZVwiXG4gICAgICAgICAgICByb3VuZGVkPXt0cnVlfVxuICAgICAgICAgICAgY2xhc3NOYW1lPXtTdHlsZS5jbG9zZUJ0bn1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aTE4bi50KCdjbG9zZScpfVxuICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIHZhcmlhbnQ9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgIHJvdW5kZWQ9e3RydWV9XG4gICAgICAgICAgICBkaXNhYmxlZD17ZmFsc2V9XG4gICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcbiAgICAgICAgICAgIHdpZHRoPVwiMTUwcHhcIlxuICAgICAgICAgICAgY2xhc3NOYW1lPXtTdHlsZS5zdWJtaXRCdG59XG4gICAgICAgICAgPlxuICAgICAgICAgICAge3NhdmluZ01zZ31cbiAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgPC9CdXR0b25zUm93PlxuICAgICAgPC9Gb3JtQ29udGFpbmVyU3R5bGU+XG4gICAgPC9Gb3JtU3R5bGU+XG4gICk7XG59O1xuXG5jb25zdCBJbnB1dFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtZ3JvdzogMTtcblxuICAuaW5wdXQtZ3JvdXAsXG4gIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICAgIHRvcDogLTRweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLmhpbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0xNnB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogJHt0aGVtZS5jb2xvclNjaGVtZS5kYXRhLlIxMDB9O1xuXG4gICAgJi0tdXBwZXIge1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgRmllbGRzQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246ICR7aXNNb2JpbGUgPyAnY29sdW1uOycgOiAncm93Oyd9XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbmA7XG5cbmNvbnN0IFN0YXJ0ID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6ICR7aXNNb2JpbGUgPyAndW5zZXQ7JyA6ICc1MCU7J31cbiAgcGFkZGluZy1pbmxpbmUtZW5kOiAke2lzTW9iaWxlID8gJ3Vuc2V0OycgOiAnMTBweDsnfVxuICBwYWRkaW5nLXRvcDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzEwcHg7J31cbiAgXG5gO1xuaW50ZXJmYWNlIEVuZFByb3BzIHtcbiAgaXNDb2xsZWN0TGF5b3V0OiBib29sZWFuO1xufVxuY29uc3QgRW5kID0gc3R5bGVkLmRpdi5hdHRycygocHJvcHM6IEVuZFByb3BzKSA9PiAoe1xuICBpc1Byb3BlcnRpZXNQYWdlOiBwcm9wcy5pc0NvbGxlY3RMYXlvdXQsXG59KSlgXG4gIHdpZHRoOiAkeyhwcm9wcykgPT5cbiAgICBpc01vYmlsZSA/ICd1bnNldCcgOiBwcm9wcy5pc1Byb3BlcnRpZXNQYWdlID8gJzUwJScgOiAnMTAwJSd9O1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogJHtpc01vYmlsZSA/ICd1bnNldDsnIDogJzEwcHg7J31cbiAgcGFkZGluZy10b3A6ICR7aXNNb2JpbGUgPyAndW5zZXQ7JyA6ICcxMHB4Oyd9XG5gO1xuXG5jb25zdCBEZXNjcmlwdGlvbiA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtZ3JvdzogMTtcblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgaGVpZ2h0OiBtYXgtY29udGVudDtcbiAgICB0ZXh0YXJlYSB7XG4gICAgICB0cmFuc2l0aW9uOiBjdWJpYy1iZXppZXIoMC42NSwgMC4wNSwgMC4zNiwgMSkgMC4ycztcbiAgICAgIGhlaWdodDogJHtpc01vYmlsZSA/ICc3NXB4ICFpbXBvcnRhbnQnIDogJzE0MHB4ICFpbXBvcnRhbnQnfTtcbiAgICB9XG5cbiAgICBkaXYge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEZvcm1TdHlsZSA9IHN0eWxlZC5kaXZgXG4gIHBhZGRpbmc6IDAgMCA2cHg7XG5gO1xuXG5jb25zdCBGb3JtUm93U3R5bGUgPSBzdHlsZWQoUm93KWBcbiAgbWFyZ2luOiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGRpdiB7XG4gICAgd2lkdGg6ICR7aXNNb2JpbGUgPyAnNDUlOycgOiAnMTAwJTsnfTtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogJHtpc01vYmlsZSA/ICcxMHB4OycgOiAnMDsnfTtcbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAke2lzTW9iaWxlID8gJzEwcHg7JyA6ICcwOyd9O1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEZvcm1Db250YWluZXJTdHlsZSA9IHN0eWxlZChDb250YWluZXIpYFxuICBtYXJnaW46IDIwcHggMCAwO1xuICBwYWRkaW5nOiAwO1xuYDtcblxuY29uc3QgQm90dG9tRm9ybVN0eWxlID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMCAwIDZweDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLGVBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLGtCQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxPQUFBLEdBQUFILE9BQUE7QUFFQSxJQUFBSSx3QkFBQSxHQUFBSixPQUFBO0FBT0EsSUFBQUssWUFBQSxHQUFBQyxzQkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQU8sS0FBQSxHQUFBRCxzQkFBQSxDQUFBTixPQUFBO0FBQ0EsSUFBQVEsTUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsTUFBQSxHQUFBVCxPQUFBO0FBQ0EsSUFBQVUscUJBQUEsR0FBQVYsT0FBQTtBQUVBLElBQUFXLFlBQUEsR0FBQUwsc0JBQUEsQ0FBQU4sT0FBQTtBQUNBLElBQUFZLE9BQUEsR0FBQVosT0FBQTtBQUFzQyxTQUFBYSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWYsd0JBQUFtQixHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixHQUFBLEVBQUFZLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFYLEdBQUEsRUFBQVksR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWixHQUFBLENBQUFZLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFILEdBQUEsTUFBQUksS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWpCLEdBQUEsRUFBQU8sTUFBQSxZQUFBQSxNQUFBO0FBRS9CLElBQU1XLHNCQUFtRCxHQUFHLFNBQXREQSxzQkFBbURBLENBQUlDLEtBQUssRUFBSztFQUFBLElBQUFDLHFCQUFBO0VBQzVFLElBQUFDLHFCQUFBLEdBU0lGLEtBQUssQ0FSUEcsa0JBQWtCO0lBQWxCQSxrQkFBa0IsR0FBQUQscUJBQUEsY0FBRztNQUFFRSxNQUFNLEVBQUU7SUFBTSxDQUFDLEdBQUFGLHFCQUFBO0lBQ3RDRyxNQUFNLEdBT0pMLEtBQUssQ0FQUEssTUFBTTtJQUNOQyxRQUFRLEdBTU5OLEtBQUssQ0FOUE0sUUFBUTtJQUNSQyxTQUFTLEdBS1BQLEtBQUssQ0FMUE8sU0FBUztJQUNUQyxXQUFXLEdBSVRSLEtBQUssQ0FKUFEsV0FBVztJQUNYQyxTQUFTLEdBR1BULEtBQUssQ0FIUFMsU0FBUztJQUNUQyxNQUFNLEdBRUpWLEtBQUssQ0FGUFUsTUFBTTtJQUNOQyxpQkFBaUIsR0FDZlgsS0FBSyxDQURQVyxpQkFBaUI7RUFHbkIsSUFBQUMsMENBQW9CLEVBQUMsQ0FBQztFQUN0QixJQUFBQyxnQkFBUyxFQUFDLFlBQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQ1Ysa0JBQWtCLEVBQUVFLE1BQU0sQ0FBQyxDQUFDO0VBRWpELElBQU1TLG1CQUFtQixHQUFHLFNBQXRCQSxtQkFBbUJBLENBQUEsRUFBUztJQUNoQyxJQUFNQyxPQUFPLEdBQUdDLHdDQUFlLENBQUNDLEdBQUcsQ0FBQyxVQUFDeEIsR0FBVyxFQUFLO01BQ25ELE9BQU95QixhQUFJLENBQUNDLENBQUMsbUNBQUFDLE1BQUEsQ0FBbUMzQixHQUFHLENBQUUsQ0FBQztJQUN4RCxDQUFDLENBQUM7SUFFRixJQUFNNEIsY0FBYyxHQUFHTCx3Q0FBZTtJQUV0QyxvQkFDRXZELE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUEsQ0FBQTdELE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXVDLFFBQUEscUJBQ0U5RCxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUMxRCxlQUFBLENBQUE0RCxJQUFJLENBQUNDLEtBQUs7TUFBQ0MsU0FBUyxFQUFFQyxvQkFBSyxDQUFDQztJQUF3QixHQUNsRGIsT0FBTyxDQUFDRSxHQUFHLENBQUMsVUFBQ1ksTUFBTSxFQUFFQyxHQUFHO01BQUEsb0JBQ3ZCckUsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQTtRQUNFN0IsR0FBRyxTQUFBMkIsTUFBQSxDQUFTVSxHQUFHLENBQUc7UUFDbEJKLFNBQVMsVUFBQU4sTUFBQSxDQUFVTyxvQkFBSyxDQUFDSSxrQkFBa0I7TUFBRyxnQkFFOUN0RSxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUMxRCxlQUFBLENBQUE0RCxJQUFJLENBQUNRLEtBQUs7UUFDVEMsS0FBSyxFQUFFWixjQUFjLENBQUNTLEdBQUcsQ0FBRTtRQUMzQkksUUFBUSxFQUFFN0IsTUFBTSxDQUFDOEIsWUFBYTtRQUM5QkMsTUFBTSxFQUFFL0IsTUFBTSxDQUFDZ0MsVUFBVztRQUMxQkMsS0FBSyxFQUFFVCxNQUFPO1FBQ2RVLElBQUksRUFBQyxxQkFBcUI7UUFDMUJDLElBQUksRUFBQyxPQUFPO1FBQ1pDLEVBQUUsRUFBRVosTUFBTztRQUNYYSxPQUFPLEVBQ0xyQixjQUFjLENBQUNTLEdBQUcsQ0FBQyxLQUFLekIsTUFBTSxDQUFDc0MsTUFBTSxDQUFDQztNQUN2QyxDQUNGLENBQ0UsQ0FBQztJQUFBLENBQ1AsQ0FDUyxDQUNaLENBQUM7RUFFUCxDQUFDO0VBRUQsSUFBTUMsZUFBZSxHQUFHLElBQUFDLHdDQUFlLEVBQUN4QyxRQUFRLENBQUM7RUFDakQsSUFBTXlDLGNBQWMsR0FBRyxJQUFBQyx1Q0FBYyxFQUFDMUMsUUFBUSxDQUFDO0VBRS9DLG9CQUNFN0MsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDMkIsU0FBUyxxQkFDUnhGLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUEsQ0FBQzRCLGtCQUFrQixxQkFDakJ6RixNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUM2QixlQUFlLFFBQ2JOLGVBQWUsaUJBQ2RwRixNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUM4QixLQUFLLHFCQUNKM0YsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDK0IsWUFBWSxxQkFDWDVGLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUEsQ0FBQ25ELE1BQUEsQ0FBQW1GLFdBQVc7SUFDVm5CLFlBQVksRUFBRTlCLE1BQU0sQ0FBQzhCLFlBQWE7SUFDbENFLFVBQVUsRUFBRWhDLE1BQU0sQ0FBQ2dDLFVBQVc7SUFDOUJrQixVQUFVLEVBQUVyQyxhQUFJLENBQUNDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBRTtJQUM5Q2MsS0FBSyxFQUFFNUIsTUFBTSxDQUFDc0MsTUFBTSxDQUFDYSxNQUFPO0lBQzVCQyxTQUFTLEVBQUUsQ0FBQyxDQUFDcEQsTUFBTSxDQUFDcUQsTUFBTSxDQUFDRixNQUFPO0lBQ2xDakIsSUFBSSxFQUFDLFFBQVE7SUFDYkMsSUFBSSxFQUFDLFFBQVE7SUFDYm1CLFNBQVMsRUFBRSxJQUFLO0lBQ2hCakMsU0FBUyxFQUFFQyxvQkFBSyxDQUFDaUM7RUFBZSxnQkFFaENuRyxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBO0lBQVFXLEtBQUssRUFBRTRCO0VBQVUsQ0FBRSxDQUFDLEVBQzNCMUQsa0JBQWtCLGFBQWxCQSxrQkFBa0Isd0JBQUFGLHFCQUFBLEdBQWxCRSxrQkFBa0IsQ0FBRTJELElBQUksY0FBQTdELHFCQUFBLHVCQUF4QkEscUJBQUEsQ0FBMEJnQixHQUFHLENBQUMsVUFBQzhDLEdBQVEsRUFBSztJQUMzQyxvQkFDRXRHLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUE7TUFDRTdCLEdBQUcsU0FBQTJCLE1BQUEsQ0FBUzJDLEdBQUcsQ0FBQ3RCLEVBQUUsQ0FBRztNQUNyQlIsS0FBSyxFQUFFOEIsR0FBRyxDQUFDdEIsRUFBRSxJQUFJLEVBQUc7TUFDcEJ1QixZQUFZLEVBQ1ZELEdBQUcsQ0FBQ3RCLEVBQUUsS0FBSyxJQUFBd0IscUJBQWEsRUFBQzVELE1BQU0sQ0FBQ3NDLE1BQU0sQ0FBQ2EsTUFBTTtJQUM5QyxHQUVBTyxHQUFHLENBQUN4QixJQUNDLENBQUM7RUFFYixDQUFDLENBQ1UsQ0FBQyxFQUNibEMsTUFBTSxDQUFDcUQsTUFBTSxDQUFDRixNQUFNLGlCQUNuQi9GLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUE7SUFBS0ksU0FBUyxFQUFFO0VBQU8sR0FBRXJCLE1BQU0sQ0FBQ3FELE1BQU0sQ0FBQ0YsTUFBWSxDQUV6QyxDQUFDLEVBQ2QsQ0FBQXJELGtCQUFrQixhQUFsQkEsa0JBQWtCLHVCQUFsQkEsa0JBQWtCLENBQUVDLE1BQU0sa0JBQ3pCM0MsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDNEMsWUFBWSxxQkFDWHpHLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUEsQ0FBQytCLFlBQVkscUJBQ1g1RixNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUNuRCxNQUFBLENBQUFtRixXQUFXO0lBQ1ZHLFNBQVMsRUFBRSxDQUFDLENBQUNwRCxNQUFNLENBQUNxRCxNQUFNLENBQUNTLG9CQUFxQjtJQUNoRGhDLFlBQVksRUFBRTlCLE1BQU0sQ0FBQzhCLFlBQWE7SUFDbENFLFVBQVUsRUFBRWhDLE1BQU0sQ0FBQ2dDLFVBQVc7SUFDOUJrQixVQUFVLEVBQUVyQyxhQUFJLENBQUNDLENBQUMsQ0FDaEIsMENBQ0YsQ0FBRTtJQUNGb0IsSUFBSSxFQUFDLHNCQUFzQjtJQUMzQkMsSUFBSSxFQUFDLFFBQVE7SUFDYlAsS0FBSyxFQUFFNUIsTUFBTSxDQUFDc0MsTUFBTSxDQUFDd0Isb0JBQXFCO0lBQzFDQyxNQUFNLEVBQUMsSUFBSTtJQUNYMUMsU0FBUyxFQUFFQyxvQkFBSyxDQUFDaUM7RUFBZSxDQUNqQyxDQUFDLEVBQ0R2RCxNQUFNLENBQUNxRCxNQUFNLENBQUNTLG9CQUFvQixpQkFDakMxRyxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBO0lBQUtJLFNBQVMsRUFBRTtFQUFtQixHQUNoQ3JCLE1BQU0sQ0FBQ3FELE1BQU0sQ0FBQ1Msb0JBQ1osQ0FFSyxDQUFDLGVBQ2YxRyxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUMrQixZQUFZLHFCQUNYNUYsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDbkQsTUFBQSxDQUFBbUYsV0FBVztJQUNWRyxTQUFTLEVBQUUsQ0FBQyxDQUFDcEQsTUFBTSxDQUFDcUQsTUFBTSxDQUFDVyxrQkFBbUI7SUFDOUNsQyxZQUFZLEVBQUU5QixNQUFNLENBQUM4QixZQUFhO0lBQ2xDRSxVQUFVLEVBQUVoQyxNQUFNLENBQUNnQyxVQUFXO0lBQzlCa0IsVUFBVSxFQUFFckMsYUFBSSxDQUFDQyxDQUFDLENBQUMsb0NBQW9DLENBQUU7SUFDekRvQixJQUFJLEVBQUMsb0JBQW9CO0lBQ3pCQyxJQUFJLEVBQUMsUUFBUTtJQUNiUCxLQUFLLEVBQUU1QixNQUFNLENBQUNzQyxNQUFNLENBQUMwQixrQkFBbUI7SUFDeENELE1BQU0sRUFBQyxHQUFHO0lBQ1YxQyxTQUFTLEVBQUVDLG9CQUFLLENBQUNpQztFQUFlLENBQ2pDLENBQUMsRUFDRHZELE1BQU0sQ0FBQ3FELE1BQU0sQ0FBQ1csa0JBQWtCLGlCQUMvQjVHLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUE7SUFBS0ksU0FBUyxFQUFFO0VBQW1CLEdBQ2hDckIsTUFBTSxDQUFDcUQsTUFBTSxDQUFDVyxrQkFDWixDQUVLLENBQ0YsQ0FFWCxDQUNSLGVBQ0Q1RyxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUNnRCxHQUFHO0lBQUN4QixlQUFlLEVBQUVEO0VBQWdCLEdBQ25DQSxlQUFlLGlCQUNkcEYsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDK0IsWUFBWSxxQkFDWDVGLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUEsQ0FBQ25ELE1BQUEsQ0FBQW1GLFdBQVc7SUFDVkcsU0FBUyxFQUFFLENBQUMsQ0FBQ3BELE1BQU0sQ0FBQ3FELE1BQU0sQ0FBQ2EsU0FBVTtJQUNyQ3BDLFlBQVksRUFBRTlCLE1BQU0sQ0FBQzhCLFlBQWE7SUFDbENFLFVBQVUsRUFBRWhDLE1BQU0sQ0FBQ2dDLFVBQVc7SUFDOUJrQixVQUFVLEVBQUVyQyxhQUFJLENBQUNDLENBQUMsQ0FDaEIsOENBQ0YsQ0FBRTtJQUNGb0IsSUFBSSxFQUFDLFdBQVc7SUFDaEJDLElBQUksRUFBQyxNQUFNO0lBQ1hnQyxXQUFXLEVBQUV0RCxhQUFJLENBQUNDLENBQUMsQ0FDakIsMERBQ0YsQ0FBRTtJQUNGYyxLQUFLLEVBQUU1QixNQUFNLENBQUNzQyxNQUFNLENBQUM0QixTQUFVO0lBQy9CN0MsU0FBUyxFQUFFQyxvQkFBSyxDQUFDaUM7RUFBZSxDQUNqQyxDQUFDLEVBQ0R2RCxNQUFNLENBQUNxRCxNQUFNLENBQUNhLFNBQVMsaUJBQ3RCOUcsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQTtJQUFLSSxTQUFTLEVBQUU7RUFBTyxHQUFFckIsTUFBTSxDQUFDcUQsTUFBTSxDQUFDYSxTQUFlLENBRTVDLENBQ2YsRUFFQXhCLGNBQWMsaUJBQ2J0RixNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUMrQixZQUFZLHFCQUNYNUYsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDbkQsTUFBQSxDQUFBbUYsV0FBVztJQUNWRyxTQUFTLEVBQUUsQ0FBQyxDQUFDcEQsTUFBTSxDQUFDcUQsTUFBTSxDQUFDZSxjQUFlO0lBQzFDdEMsWUFBWSxFQUFFOUIsTUFBTSxDQUFDOEIsWUFBYTtJQUNsQ0UsVUFBVSxFQUFFaEMsTUFBTSxDQUFDZ0MsVUFBVztJQUM5QmtCLFVBQVUsRUFBRXJDLGFBQUksQ0FBQ0MsQ0FBQyxDQUNoQixpREFDRixDQUFFO0lBQ0ZvQixJQUFJLEVBQUMsV0FBVztJQUNoQkMsSUFBSSxFQUFDLE1BQU07SUFDWGdDLFdBQVcsRUFBRXRELGFBQUksQ0FBQ0MsQ0FBQyxDQUNqQiw2REFDRixDQUFFO0lBQ0ZjLEtBQUssRUFBRTVCLE1BQU0sQ0FBQ3NDLE1BQU0sQ0FBQzhCLGNBQWMsQ0FBQ2xDLElBQUs7SUFDekNiLFNBQVMsRUFBRUMsb0JBQUssQ0FBQ2lDO0VBQWUsQ0FDakMsQ0FBQyxFQUNEdkQsTUFBTSxDQUFDcUQsTUFBTSxDQUFDZSxjQUFjLGlCQUMzQmhILE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUE7SUFBS0ksU0FBUyxFQUFFO0VBQU8sR0FBRXJCLE1BQU0sQ0FBQ3FELE1BQU0sQ0FBQ2UsY0FBb0IsQ0FFakQsQ0FDZixFQUVBMUIsY0FBYyxpQkFDYnRGLE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUE7SUFBS0ksU0FBUyxFQUFFQyxvQkFBSyxDQUFDK0M7RUFBa0IsR0FDckN4RCxhQUFJLENBQUNDLENBQUMsQ0FBQyxtQ0FBbUMsQ0FBQyxFQUFDLEdBQzFDLENBQ04sZUFFRDFELE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUE7SUFBS0ksU0FBUyxFQUFFQyxvQkFBSyxDQUFDZ0Q7RUFBbUIsR0FDdEM1QixjQUFjLGlCQUNidEYsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQTtJQUFLSSxTQUFTLEVBQUVDLG9CQUFLLENBQUNpRDtFQUFlLEdBQ2xDdkUsTUFBTSxDQUFDd0UsT0FBTyxDQUFDakMsbUJBQW1CLElBQ2pDdkMsTUFBTSxDQUFDcUQsTUFBTSxDQUFDZCxtQkFBbUIsaUJBQy9CbkYsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQTtJQUFLSSxTQUFTLEVBQUVDLG9CQUFLLENBQUNtRDtFQUFnQixHQUNuQzVELGFBQUksQ0FBQ0MsQ0FBQyxDQUFDLHVCQUF1QixDQUM1QixDQUNOLGVBQ0gxRCxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUNSLG1CQUFtQixNQUFFLENBQ25CLENBQ04sZUFFRHJELE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUEsQ0FBQ3lELFdBQVcscUJBQ1Z0SCxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUNuRCxNQUFBLENBQUFtRixXQUFXO0lBQ1ZuQixZQUFZLEVBQUU5QixNQUFNLENBQUM4QixZQUFhO0lBQ2xDRSxVQUFVLEVBQUVoQyxNQUFNLENBQUNnQyxVQUFXO0lBQzlCa0IsVUFBVSxFQUFFckMsYUFBSSxDQUFDQyxDQUFDLENBQUMseUJBQXlCLENBQUU7SUFDOUNvQixJQUFJLEVBQUMsYUFBYTtJQUNsQkMsSUFBSSxFQUFDLFVBQVU7SUFDZmdDLFdBQVcsRUFBRXRELGFBQUksQ0FBQ0MsQ0FBQyxDQUNqQix5REFDRixDQUFFO0lBQ0ZjLEtBQUssRUFBRTVCLE1BQU0sQ0FBQ3NDLE1BQU0sQ0FBQ3FDLFdBQVk7SUFDakN2QixTQUFTLEVBQUUsQ0FBQyxDQUFDcEQsTUFBTSxDQUFDcUQsTUFBTSxDQUFDc0IsV0FBWTtJQUN2Q3RELFNBQVMsRUFBRUMsb0JBQUssQ0FBQ2lDO0VBQWUsQ0FDakMsQ0FDVSxDQUNWLENBQ0YsQ0FDVSxDQUFDLGVBQ2xCbkcsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQTtJQUNFa0IsSUFBSSxFQUFFLFFBQVM7SUFDZkQsSUFBSSxFQUFFLGlCQUFrQjtJQUN4Qk4sS0FBSyxFQUFFNUIsTUFBTSxDQUFDc0MsTUFBTSxDQUFDc0MsZUFBZSxJQUFJO0VBQUcsQ0FDNUMsQ0FBQyxlQUNGeEgsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQTtJQUNFa0IsSUFBSSxFQUFFLFFBQVM7SUFDZkQsSUFBSSxFQUFFLGtCQUFtQjtJQUN6Qk4sS0FBSyxFQUFFNUIsTUFBTSxDQUFDc0MsTUFBTSxDQUFDdUMsZ0JBQWdCLElBQUk7RUFBRyxDQUM3QyxDQUFDLGVBQ0Z6SCxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUM2RCxlQUFlLE1BQUUsQ0FBQyxlQUNuQjFILE1BQUEsQ0FBQXVCLE9BQUEsQ0FBQXNDLGFBQUEsQ0FBQ3RELFlBQUEsQ0FBQWdCLE9BQVc7SUFDVnlCLFNBQVMsRUFBRUEsU0FBVTtJQUNyQkMsTUFBTSxFQUFFQSxNQUFPO0lBQ2YwRSxRQUFRLEVBQUVqRixrQkFBbUI7SUFDN0JRLGlCQUFpQixFQUFFQTtFQUFrQixDQUN0QyxDQUFDLGVBQ0ZsRCxNQUFBLENBQUF1QixPQUFBLENBQUFzQyxhQUFBLENBQUMvQyxPQUFBLENBQUE4RyxVQUFVLHFCQUNUNUgsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDbkQsTUFBQSxDQUFBbUgsTUFBTTtJQUNMQyxPQUFPLEVBQUUvRSxXQUFZO0lBQ3JCZ0YsS0FBSyxFQUFDLE9BQU87SUFDYkMsT0FBTyxFQUFDLE1BQU07SUFDZEMsT0FBTyxFQUFFLElBQUs7SUFDZGhFLFNBQVMsRUFBRUMsb0JBQUssQ0FBQ2dFO0VBQVMsR0FFekJ6RSxhQUFJLENBQUNDLENBQUMsQ0FBQyxPQUFPLENBQ1QsQ0FBQyxlQUNUMUQsTUFBQSxDQUFBdUIsT0FBQSxDQUFBc0MsYUFBQSxDQUFDbkQsTUFBQSxDQUFBbUgsTUFBTTtJQUNMRyxPQUFPLEVBQUMsU0FBUztJQUNqQkMsT0FBTyxFQUFFLElBQUs7SUFDZEUsUUFBUSxFQUFFLEtBQU07SUFDaEJwRCxJQUFJLEVBQUMsUUFBUTtJQUNiZ0QsS0FBSyxFQUFDLE9BQU87SUFDYjlELFNBQVMsRUFBRUMsb0JBQUssQ0FBQ2tFO0VBQVUsR0FFMUJ0RixTQUNLLENBQ0UsQ0FDTSxDQUNYLENBQUM7QUFFaEIsQ0FBQztBQUFDdUYsT0FBQSxDQUFBL0Ysc0JBQUEsR0FBQUEsc0JBQUE7QUFFRixJQUFNc0QsWUFBWSxHQUFHMEMseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHFNQWdCbEJDLFlBQUssQ0FBQ0MsV0FBVyxDQUFDQyxJQUFJLENBQUNDLElBQUksQ0FNdkM7QUFFRCxJQUFNcEQsZUFBZSxHQUFHNEMseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHdFQUVkSywyQkFBUSxHQUFHLFNBQVMsR0FBRyxNQUFNLENBRWhEO0FBRUQsSUFBTXBELEtBQUssR0FBRzJDLHlCQUFNLENBQUNDLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw0REFDYkssMkJBQVEsR0FBRyxRQUFRLEdBQUcsTUFBTSxFQUNmQSwyQkFBUSxHQUFHLFFBQVEsR0FBRyxPQUFPLEVBQ3BDQSwyQkFBUSxHQUFHLFFBQVEsR0FBRyxPQUFPLENBRTdDO0FBSUQsSUFBTWxDLEdBQUcsR0FBR3lCLHlCQUFNLENBQUNDLEdBQUcsQ0FBQ1MsS0FBSyxDQUFDLFVBQUN6RyxLQUFlO0VBQUEsT0FBTTtJQUNqRDBHLGdCQUFnQixFQUFFMUcsS0FBSyxDQUFDOEM7RUFDMUIsQ0FBQztBQUFBLENBQUMsQ0FBQyxDQUFBbUQsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSw4REFDUSxVQUFDbkcsS0FBSztFQUFBLE9BQ2J3RywyQkFBUSxHQUFHLE9BQU8sR0FBR3hHLEtBQUssQ0FBQzBHLGdCQUFnQixHQUFHLEtBQUssR0FBRyxNQUFNO0FBQUEsR0FDdENGLDJCQUFRLEdBQUcsUUFBUSxHQUFHLE9BQU8sRUFDdENBLDJCQUFRLEdBQUcsUUFBUSxHQUFHLE9BQU8sQ0FDN0M7QUFFRCxJQUFNekIsV0FBVyxHQUFHZ0IseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHdMQVFkSywyQkFBUSxHQUFHLGlCQUFpQixHQUFHLGtCQUFrQixDQVFoRTtBQUVELElBQU12RCxTQUFTLEdBQUc4Qyx5QkFBTSxDQUFDQyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsd0JBRTNCO0FBRUQsSUFBTWpDLFlBQVksR0FBRyxJQUFBNkIseUJBQU0sRUFBQ1ksbUJBQUcsQ0FBQyxDQUFBVixVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLGlLQUluQkssMkJBQVEsR0FBRyxNQUFNLEdBQUcsT0FBTyxFQUdiQSwyQkFBUSxHQUFHLE9BQU8sR0FBRyxJQUFJLEVBSXZCQSwyQkFBUSxHQUFHLE9BQU8sR0FBRyxJQUFJLENBT3JEO0FBRUQsSUFBTXRELGtCQUFrQixHQUFHLElBQUE2Qyx5QkFBTSxFQUFDYSx5QkFBUyxDQUFDLENBQUFYLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsa0NBRzNDO0FBRUQsSUFBTWhCLGVBQWUsR0FBR1kseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHdCQUVqQyJ9
|