@kando-env/kando-ui 1.2.412-alpha.6 → 1.2.412-alpha.7
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 +42 -37
- package/lib/Widgets/EventsCarousel/EventsCarousel.js +5 -4
- package/lib/Widgets/EventsRow/EventsRow.js +5 -4
- package/lib/Widgets/Map/GraphUtils.js +5 -3
- package/lib/Widgets/Map/Map.js +23 -45
- package/lib/Widgets/Map/MapUtils.js +51 -28
- package/lib/Widgets/Map/areas/AreaPolygon.js +36 -33
- package/lib/Widgets/Map/areas/AreaPolygons.js +5 -4
- package/lib/Widgets/Map/areas/AreaUtils.js +13 -7
- package/lib/Widgets/Map/areas/Patterns.js +3 -2
- package/lib/Widgets/Map/edges/Edge.js +5 -4
- package/lib/Widgets/Map/edges/Edges.js +5 -4
- package/lib/Widgets/Map/edges/arrows/Arrows.js +3 -2
- package/lib/Widgets/Map/events/Event.js +5 -4
- package/lib/Widgets/Map/events/EventIndicator.js +5 -4
- package/lib/Widgets/Map/events/EventPath.js +5 -4
- package/lib/Widgets/Map/events/EventUtils.js +34 -21
- package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +5 -4
- package/lib/Widgets/Map/events/PointOfEvent.js +5 -4
- package/lib/Widgets/Map/events/PointsForSpecificEvent.js +5 -4
- package/lib/Widgets/Map/events/Snail.js +5 -4
- package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +7 -5
- package/lib/Widgets/Map/map/FloatingGraph.js +3 -2
- package/lib/Widgets/Map/map/GraphDateButton.js +3 -2
- package/lib/Widgets/Map/matchGraph/MatchGraph.js +3 -2
- package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +3 -2
- package/lib/Widgets/Map/points/PointIcon.js +5 -3
- package/lib/Widgets/Map/points/PointMarker.js +44 -34
- package/lib/Widgets/Map/points/PointMarkers.js +11 -13
- package/lib/Widgets/Map/points/PointUtils.js +79 -43
- package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +5 -4
- package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +5 -4
- package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +5 -4
- package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +5 -3
- package/lib/Widgets/MostPolluting/Areas/Areas.js +5 -4
- package/lib/Widgets/MostPolluting/Areas/areas.mock.js +3 -2
- package/lib/Widgets/MostPolluting/Areas/areasResponse.interface.js +1 -1
- package/lib/Widgets/MostPolluting/Areas/styles.js +5 -3
- package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +3 -2
- package/lib/Widgets/MostPolluting/Factories/Factories.js +5 -4
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +3 -2
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +3 -2
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +5 -3
- package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +5 -3
- package/lib/Widgets/MostPolluting/Factories/factories.mock.js +3 -2
- package/lib/Widgets/MostPolluting/Factories/factoriesResponse.interface.js +1 -1
- package/lib/Widgets/MostPolluting/Factories/styles.js +5 -3
- package/lib/Widgets/MostPolluting/MostPolluting.js +5 -4
- package/lib/Widgets/MostPolluting/MostPolluting.stories.js +11 -6
- package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +3 -2
- package/lib/Widgets/MostPolluting/ShowMore/styles.js +3 -2
- package/lib/Widgets/MostPolluting/assets/index.js +1 -1
- package/lib/Widgets/MostPolluting/components/ChangePercent.js +3 -2
- package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +1 -1
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +5 -4
- package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +1 -1
- package/lib/Widgets/MostPolluting/components/PotentialImpact.js +3 -2
- package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +1 -1
- package/lib/Widgets/MostPolluting/models.js +1 -1
- package/lib/Widgets/MostPolluting/styles.js +5 -3
- package/lib/Widgets/PotentialImpactSummary/Back/Back.js +3 -2
- package/lib/Widgets/PotentialImpactSummary/Icon.js +5 -4
- package/lib/Widgets/PotentialImpactSummary/index.js +3 -2
- package/lib/Widgets/PotentialImpactSummary/index.test.js +1 -1
- package/lib/Widgets/PotentialImpactSummary/styles.js +11 -6
- package/lib/Widgets/PotentialImpactSummary/useCasesResponse.interface.js +1 -1
- package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +3 -2
- package/lib/Widgets/QualitySummary/PieChart/PieChart.js +3 -2
- package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +1 -1
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +3 -2
- package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +3 -3
- package/lib/Widgets/QualitySummary/QualitySummary.js +3 -2
- package/lib/Widgets/QualitySummary/qualitySummary.mock.js +7 -4
- package/lib/Widgets/QualitySummary/qualitySummaryResponse.interface.js +1 -1
- package/lib/Widgets/QualitySummary/styles.js +11 -6
- package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +5 -4
- package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +5 -4
- package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +3 -2
- package/lib/Widgets/UtilityInformation/UtilityInformation.js +5 -4
- package/lib/Widgets/UtilityInformation/UtilityInformationResponse.interface.js +1 -1
- package/lib/Widgets/UtilityInformation/styles.js +15 -9
- package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +5 -3
- package/lib/assets/icons/TopNavbar/index.js +1 -1
- package/lib/assets/icons/TrendSvg.js +3 -2
- package/lib/assets/icons/index.js +1 -1
- package/lib/assets/icons/kandoStepper/index.js +1 -1
- package/lib/assets/icons/siteTypes/index.js +1 -1
- package/lib/components/ApplyButton/ApplyButton.js +3 -2
- package/lib/components/ApplyButton/index.js +3 -2
- package/lib/components/Backdrop/Backdrop.js +3 -2
- package/lib/components/ContentLoader/ContentLoader.js +3 -2
- package/lib/components/ContentLoader/index.js +1 -1
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +5 -3
- package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +5 -3
- package/lib/components/CustomInputs/DoubleTabs/styles.js +7 -4
- package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +5 -4
- package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +3 -2
- package/lib/components/CustomInputs/Search/Search.js +5 -4
- package/lib/components/CustomInputs/Search/index.js +3 -2
- package/lib/components/CustomInputs/Select/Select.js +5 -4
- package/lib/components/CustomInputs/Select/Select.stories.js +5 -3
- package/lib/components/DamageType/DamageType.js +5 -4
- package/lib/components/DamageType/index.js +3 -2
- package/lib/components/DataLoaderError/DataLoaderError.js +3 -2
- package/lib/components/DischargeHeatmap/DischargeHeatmap.js +3 -2
- package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +1 -1
- package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +5 -4
- package/lib/components/DischargeHeatmap/HighchartsOptions.js +3 -2
- package/lib/components/DischargeHeatmap/index.js +3 -2
- package/lib/components/DischargeHeatmap/mocks/handlers.js +3 -2
- package/lib/components/DischargeHeatmap/popupText.js +3 -2
- package/lib/components/DischargeHeatmap/titles.js +5 -3
- package/lib/components/DischargeHeatmap/types.js +1 -1
- package/lib/components/ErrorBoundary.js +9 -9
- package/lib/components/Events/Events.js +5 -4
- package/lib/components/Events/index.js +3 -2
- package/lib/components/Graph/Graph.js +8 -7
- package/lib/components/Graph/index.js +3 -2
- package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +3 -2
- package/lib/components/Header/Breadcrumbs/index.js +3 -2
- package/lib/components/Header/DoubleTabs/DoubleTabs.js +7 -5
- package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +5 -3
- package/lib/components/Header/DoubleTabs/styles.js +7 -4
- package/lib/components/Header/Header.js +3 -2
- package/lib/components/Header/Header.stories.js +5 -3
- package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +17 -15
- package/lib/components/Header/InfoBar/InfoBar.js +34 -31
- package/lib/components/Header/InfoBar/Search/Control.js +3 -2
- package/lib/components/Header/InfoBar/Search/GroupLabel.js +3 -2
- package/lib/components/Header/InfoBar/Search/Search.js +5 -4
- package/lib/components/Header/InfoBar/Search/SearchContainer.js +5 -4
- package/lib/components/Header/InfoBar/Search/index.js +3 -2
- package/lib/components/Header/InfoBar/Search/searchStyle.js +3 -2
- package/lib/components/Header/InfoBar/TimeFilter.js +3 -2
- package/lib/components/Header/InfoBar/types.js +1 -1
- package/lib/components/Header/KandoNavbar/KandoNavbar.js +8 -7
- package/lib/components/Header/KandoNavbar/index.js +3 -2
- package/lib/components/Header/Slideshow/Slideshow.js +5 -4
- package/lib/components/Header/Slideshow/index.js +3 -2
- package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +3 -2
- package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +3 -2
- package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +6 -5
- package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +3 -2
- package/lib/components/Header/Toolbar/Toolbar.js +5 -4
- package/lib/components/InfoBar/InfoBar.js +5 -4
- package/lib/components/InfoBar/InfoBar.stories.js +5 -3
- package/lib/components/KandoModal/KandoModal.js +5 -4
- package/lib/components/KandoModal/index.js +3 -2
- package/lib/components/Link.js +3 -2
- package/lib/components/Links/CustomRedirect/CustomRedirect.js +3 -2
- package/lib/components/Links/StyledLink/StyledLink.js +5 -3
- package/lib/components/Links/StyledNavLink/StyledNavLink.js +3 -2
- package/lib/components/LiveEvents/CarouselSlide.js +3 -2
- package/lib/components/LiveEvents/LiveEvents.js +3 -2
- package/lib/components/LiveEvents/index.js +3 -2
- package/lib/components/LoaderByPercent/LoaderByPercent.js +5 -3
- package/lib/components/Map/Map.js +10 -8
- package/lib/components/Map/index.js +3 -2
- package/lib/components/Modal/Modal.js +3 -2
- package/lib/components/NarrowHeader.js +9 -9
- package/lib/components/PointInfo/PointInfo.js +3 -2
- package/lib/components/PointInfo/index.js +3 -2
- package/lib/components/PopupModal/PopupModal.js +3 -2
- package/lib/components/PopupModal/PopupModal.stories.js +7 -4
- package/lib/components/Sector/Sector.js +3 -2
- package/lib/components/Sector/Sector.test.js +1 -1
- package/lib/components/Sector/SectorIconsNew.js +3 -2
- package/lib/components/Sector/index.js +3 -2
- package/lib/components/Sector/sectorIcons.js +3 -2
- package/lib/components/SevereEvent/Eta/Eta.js +5 -4
- package/lib/components/SevereEvent/Eta/styles.js +3 -2
- package/lib/components/SevereEvent/SevereEvent.js +5 -4
- package/lib/components/Spinner/Spinner.js +3 -2
- package/lib/components/Spinner/Spinner.stories.js +7 -4
- package/lib/components/Spinner/index.js +3 -2
- package/lib/components/Spinner/styles.js +7 -4
- package/lib/components/Tabs/Tabs.js +7 -5
- package/lib/components/Tabs/Tabs.stories.js +5 -3
- package/lib/components/Tabs/assets/index.js +1 -1
- package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +5 -4
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +5 -4
- package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +5 -4
- package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +3 -2
- package/lib/components/TimeRangeSelector/TimeRangeHelper.js +9 -5
- package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +3 -2
- package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +3 -2
- package/lib/components/TimeRangeSelector/TimeRangeList.js +5 -4
- package/lib/components/TimeRangeSelector/TimeRangeOptions.js +5 -4
- package/lib/components/TimeRangeSelector/TimeRangeSelector.js +7 -5
- package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +5 -3
- package/lib/components/TimeRangeSelector/constants.js +5 -3
- package/lib/components/TimeRangeSelector/index.js +3 -2
- package/lib/components/Toggle/Toggle.js +5 -4
- package/lib/components/Toggle/index.js +3 -2
- package/lib/components/TrendGraph/TrendGraph.js +5 -4
- package/lib/components/TrendGraph/index.js +3 -2
- package/lib/components/TrendGraphNVL/TrendGraphNVL.js +5 -4
- package/lib/components/TrendGraphNVL/index.js +3 -2
- package/lib/development-environment/index.js +3 -2
- package/lib/development-environment/mock/browser.js +3 -2
- package/lib/development-environment/mock/get.js +3 -2
- package/lib/development-environment/mock/handlers.js +3 -2
- package/lib/development-environment/mock/mockBus.js +5 -3
- package/lib/development-environment/mock/mockObjects/area-trends-graph.js +3 -2
- package/lib/development-environment/mock/mockObjects/areaInformation.js +3 -2
- package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +3 -2
- package/lib/development-environment/mock/mockObjects/areaSitesData.js +3 -2
- package/lib/development-environment/mock/mockObjects/areasJson.js +3 -2
- package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +3 -2
- package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +3 -2
- package/lib/development-environment/mock/mockObjects/data-menuData.js +3 -2
- package/lib/development-environment/mock/mockObjects/data-search.js +3 -2
- package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +3 -2
- package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +3 -2
- package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +3 -2
- package/lib/development-environment/mock/mockObjects/eventsJson.js +3 -2
- package/lib/development-environment/mock/mockObjects/metascore.js +3 -2
- package/lib/development-environment/mock/mockObjects/permissionsJson.js +3 -2
- package/lib/development-environment/mock/mockObjects/pointsJson.js +3 -2
- package/lib/development-environment/mock/mockObjects/site-info.js +3 -2
- package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +3 -2
- package/lib/development-environment/togly/ToglyDashboard.js +5 -4
- package/lib/development-environment/togly/ToglyItem.js +5 -4
- package/lib/development-environment/togly/flags.js +1 -1
- package/lib/development-environment/togly/init.js +1 -1
- package/lib/development-environment/togly/macro.js +1 -1
- package/lib/development-environment/togly/useDoubleKeyDown.js +3 -2
- package/lib/development-environment/togly/useLocalStorage.js +3 -2
- package/lib/hooks/useApi.js +32 -30
- package/lib/hooks/useApiWithDashboardQuery.js +5 -3
- package/lib/hooks/useClickOutside.js +3 -2
- package/lib/hooks/useInitializeHeaders.js +3 -2
- package/lib/hooks/useKandoFetch.js +3 -2
- package/lib/hooks/useMap.js +3 -2
- package/lib/hooks/useNavContext.js +3 -2
- package/lib/hooks/useQueryURL.js +3 -2
- package/lib/hooks/useRemoveExistingLayers.js +3 -2
- package/lib/hooks/useUpdateEventBodyTail.js +3 -2
- package/lib/hooks/useUserTimeZone.js +15 -8
- package/lib/hooks/useUserTimeZone.test.js +3 -3
- package/lib/hooks/useWindowSize.js +1 -1
- package/lib/index.js +5 -4
- package/lib/macros/getVersion.js +2 -2
- package/lib/models/IAction.js +1 -1
- package/lib/models/IAppState.js +1 -1
- package/lib/pages/AreaPage/AreaPage.js +31 -28
- package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +5 -4
- package/lib/pages/AreaPage/Dashboard/Dashboard.js +5 -4
- package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +5 -4
- package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +3 -2
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +3 -2
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +3 -2
- package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +5 -3
- package/lib/pages/AreaPage/Dashboard/Sites/SitesResponse.interface.js +1 -1
- package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +3 -2
- package/lib/pages/AreaPage/Dashboard/Sites/styles.js +7 -4
- package/lib/pages/AssessmentPage/AssessmentPage.js +5 -4
- package/lib/pages/CannyWidget/Feedback.js +8 -7
- package/lib/pages/CovidPage/CovidPage.js +5 -4
- package/lib/pages/CovidPage/components/Body.js +5 -4
- package/lib/pages/CovidPage/components/Map.js +5 -4
- package/lib/pages/CovidPage/components/Sidebar.js +5 -4
- package/lib/pages/CovidPage/components/Summary.js +5 -4
- package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +5 -4
- package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +3 -2
- package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +5 -4
- package/lib/pages/CovidPage/components/TrendPopupContent/index.js +3 -2
- package/lib/pages/CovidPage/components/areas/Area.js +5 -4
- package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +5 -4
- package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +5 -4
- package/lib/pages/CovidPage/components/areas/AreasList.js +5 -4
- package/lib/pages/CovidPage/components/areas/Sort.js +5 -4
- package/lib/pages/CovidPage/components/nvlStatusHelper.js +9 -5
- package/lib/pages/DashboardMap/AreaCard.js +3 -2
- package/lib/pages/DashboardMap/AssessmentIcon.js +3 -2
- package/lib/pages/DashboardMap/Capacity.js +45 -39
- package/lib/pages/DashboardMap/FactoryCard.js +3 -2
- package/lib/pages/DashboardMap/HighchartsOptions.js +3 -2
- package/lib/pages/DashboardMap/List.js +5 -4
- package/lib/pages/DashboardMap/ListContext.js +7 -5
- package/lib/pages/DashboardMap/Loader.js +3 -2
- package/lib/pages/DashboardMap/SeverityBadge.js +3 -2
- package/lib/pages/DashboardMap/WWTPMap.js +5 -4
- package/lib/pages/DashboardMap/WaterDischarge.js +3 -2
- package/lib/pages/DashboardMap/Widget.js +7 -5
- package/lib/pages/DashboardMap/index.js +3 -2
- package/lib/pages/DashboardMap/utils.js +23 -12
- package/lib/pages/EventsPage/Body/Body.js +19 -18
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +3 -3
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +9 -5
- package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +3 -2
- package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +3 -2
- package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +1 -1
- package/lib/pages/EventsPage/DragAndDropArea/index.js +3 -2
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +6 -6
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +9 -5
- package/lib/pages/EventsPage/EventsPage.js +5 -4
- package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +5 -4
- package/lib/pages/EventsPage/events/MoreInfo.js +5 -4
- package/lib/pages/EventsPage/events/Sidebar.js +5 -4
- package/lib/pages/EventsPage/events/event_info/Contaminants/Contaminants.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Contaminants/ContaminantsList.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Contaminants/index.js +3 -2
- package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +5 -4
- package/lib/pages/EventsPage/events/event_info/EventDetails.js +3 -2
- package/lib/pages/EventsPage/events/event_info/EventInfo.js +5 -4
- package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +3 -2
- package/lib/pages/EventsPage/events/event_info/EventSection.js +3 -2
- package/lib/pages/EventsPage/events/event_info/EventSection.test.js +1 -1
- package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +5 -4
- package/lib/pages/EventsPage/events/event_info/Header/Header.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +5 -4
- package/lib/pages/EventsPage/events/event_info/Header/index.js +3 -2
- package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +3 -2
- package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +5 -4
- package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +3 -2
- package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionAssessment.js +3 -2
- package/lib/pages/EventsPage/events/event_info/PollutionAssessment /PollutionTypesList.js +3 -2
- package/lib/pages/EventsPage/events/event_info/PollutionAssessment /index.js +3 -2
- package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +5 -4
- package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResult.js +5 -4
- package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/LabResultButton.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SamplingList/LabResult/index.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +5 -4
- package/lib/pages/EventsPage/events/event_info/SamplingList/index.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +1 -1
- package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +5 -3
- package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +3 -2
- package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.test.js +3 -3
- package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterDischarge.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +1 -1
- package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/index.js +3 -2
- package/lib/pages/EventsPage/events/event_info/Timelines/style.js +5 -3
- package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +5 -4
- package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +5 -4
- package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +3 -2
- package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +3 -2
- package/lib/pages/EventsPage/events/event_info/sources/Source.js +3 -2
- package/lib/pages/EventsPage/events/event_info/sources/Sources.js +5 -4
- package/lib/pages/EventsPage/events/event_info/styles.js +5 -3
- package/lib/pages/EventsPage/events/events_list/EventItem.js +5 -4
- package/lib/pages/EventsPage/events/events_list/EventUtils.js +7 -4
- package/lib/pages/EventsPage/events/events_list/EventsList.js +5 -4
- package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +5 -4
- package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +5 -4
- package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +5 -4
- package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +5 -4
- package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +5 -4
- package/lib/pages/EventsPage/events/events_list/Sort.js +5 -4
- package/lib/pages/ImportFileWizard/FileUploadRespones.js +3 -2
- package/lib/pages/ImportFileWizard/ImportButtomButtons.js +3 -2
- package/lib/pages/ImportFileWizard/ImportFile.js +5 -4
- package/lib/pages/ImportFileWizard/ResponseBody.js +3 -2
- package/lib/pages/ImportFileWizard/ValidationForm.js +3 -2
- package/lib/pages/ImportFileWizard/ValidationResponse.js +5 -4
- package/lib/pages/ImportFileWizard/importFileUtils.js +5 -4
- package/lib/pages/ImportFileWizard/index.js +3 -2
- package/lib/pages/ImportGisPage/ImportGisContainer.js +7 -5
- package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +3 -2
- package/lib/pages/ImportGisPage/importGisUtils.js +7 -5
- package/lib/pages/ImportGisProcess/index.js +3 -2
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +5 -4
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +3 -2
- package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +3 -2
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +5 -4
- package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +5 -3
- package/lib/pages/NotificationsPage/Notification/Notification.js +3 -2
- package/lib/pages/NotificationsPage/Notifications.interface.js +1 -1
- package/lib/pages/NotificationsPage/Notifications.mock.js +3 -2
- package/lib/pages/NotificationsPage/Notifications.stories.js +5 -3
- package/lib/pages/NotificationsPage/NotificationsPage.js +5 -4
- package/lib/pages/NotificationsPage/assets/index.js +1 -1
- package/lib/pages/NotificationsPageV2/NotificationsPage.js +7 -5
- package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +3 -2
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/EventType.js +3 -2
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSendVia.js +3 -2
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSensors.js +3 -2
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationSources.js +3 -2
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationTags.js +3 -2
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +7 -5
- package/lib/pages/NotificationsPageV2/components/NotificationsForm/WaterAuthoritySelection.js +3 -2
- package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +5 -4
- package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +33 -17
- package/lib/pages/NotificationsPageV2/notificationUtils.js +15 -9
- package/lib/pages/OldSitePage/IDashboardData.js +1 -1
- package/lib/pages/OldSitePage/OldSitePage.js +56 -51
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +9 -5
- package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +3 -2
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +3 -2
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -5
- package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +5 -4
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +9 -5
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +5 -4
- package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +3 -2
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +5 -4
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +7 -4
- package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +11 -6
- package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +5 -4
- package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +5 -4
- package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +5 -3
- package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +3 -2
- package/lib/pages/OldSitePage/SamplingParameters/models.js +1 -1
- package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +7 -4
- package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +5 -3
- package/lib/pages/OperationsPage/LeftPanel.js +5 -4
- package/lib/pages/OperationsPage/Map/Map.js +5 -4
- package/lib/pages/OperationsPage/Map/useMap.js +6 -5
- package/lib/pages/OperationsPage/OperationsPage.js +5 -4
- package/lib/pages/OperationsPage/RightPanel.js +3 -2
- package/lib/pages/OperationsPage/index.js +3 -2
- package/lib/pages/PollutionRiskAssessment/FactoryDetails.js +31 -28
- package/lib/pages/PollutionRiskAssessment/FilterBehaviors.js +5 -4
- package/lib/pages/PollutionRiskAssessment/FilterButton.js +3 -2
- package/lib/pages/PollutionRiskAssessment/Map.js +5 -4
- package/lib/pages/PollutionRiskAssessment/SearchButton.js +3 -2
- package/lib/pages/PollutionRiskAssessment/SearchField.js +5 -4
- package/lib/pages/PollutionRiskAssessment/TotalSavings.js +3 -2
- package/lib/pages/PollutionRiskAssessment/UseCases.js +3 -2
- package/lib/pages/PollutionRiskAssessment/index.js +31 -28
- package/lib/pages/PollutionRiskAssessment/useMap.js +5 -4
- package/lib/pages/PollutionRiskAssessment/utils.js +3 -2
- package/lib/pages/ProfilePage/Container.js +3 -2
- package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +5 -4
- package/lib/pages/ProfilePage/ProfilePage.js +5 -4
- package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +5 -4
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +7 -4
- package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +3 -3
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +74 -69
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +5 -4
- package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +3 -2
- package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +7 -4
- package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +3 -2
- package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +3 -2
- package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +3 -2
- package/lib/pages/SamplingsPage/DesktopActions/index.js +3 -2
- package/lib/pages/SamplingsPage/NavigationDropdown.js +5 -3
- package/lib/pages/SamplingsPage/NewSamplingAction.js +23 -20
- package/lib/pages/SamplingsPage/SamplingMobileModal.js +3 -2
- package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +3 -2
- package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +3 -2
- package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +5 -4
- package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +5 -4
- package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +3 -2
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +92 -85
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +5 -4
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +5 -4
- package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +5 -4
- package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +21 -12
- package/lib/pages/SamplingsPage/SamplingProperties/styles.js +5 -3
- package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +3 -2
- package/lib/pages/SamplingsPage/SamplingsMobileItem.js +5 -4
- package/lib/pages/SamplingsPage/SamplingsMobileList.js +5 -4
- package/lib/pages/SamplingsPage/SamplingsPage.js +7 -5
- package/lib/pages/SamplingsPage/SamplingsPageContainer.js +5 -4
- package/lib/pages/SamplingsPage/index.js +3 -2
- package/lib/pages/SamplingsPage/samplingsPageUtils.js +39 -20
- package/lib/pages/SitePage/DischargePattern/DischargePattern.js +5 -3
- package/lib/pages/SitePage/PollutionContributor/PollutionContributor.js +3 -2
- package/lib/pages/SitePage/PollutionContributor/PollutionContributorContainer.js +3 -2
- package/lib/pages/SitePage/PollutionContributor/contributorUtils.js +5 -3
- package/lib/pages/SitePage/PollutionContributor/index.js +3 -2
- package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +9 -5
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +3 -2
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +3 -2
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +9 -5
- package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +5 -4
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +9 -5
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +5 -4
- package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +3 -2
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +5 -4
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +9 -5
- package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +11 -6
- package/lib/pages/SitePage/SamplingParameters/body/Body.js +3 -2
- package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +5 -4
- package/lib/pages/SitePage/SamplingParameters/body/index.js +3 -2
- package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +5 -4
- package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +5 -4
- package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +5 -3
- package/lib/pages/SitePage/SamplingParameters/dataParser.js +3 -2
- package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/models.js +1 -1
- package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +7 -4
- package/lib/pages/SitePage/SamplingParameters/styles/styles.js +5 -3
- package/lib/pages/SitePage/SiteInformation/EmptyState.js +3 -2
- package/lib/pages/SitePage/SiteInformation/SiteInformation.js +5 -5
- package/lib/pages/SitePage/SitePage.js +31 -28
- package/lib/pages/UploadLabResult/index.js +3 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +5 -4
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +7 -4
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +11 -6
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +5 -3
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +5 -4
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +3 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +3 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +3 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +3 -2
- package/lib/pages/UtilityDashboardPage/MostSevereEvents/models.js +1 -1
- package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +3 -2
- package/lib/pages/UtilityDashboardPage/TopBar/constants.js +3 -2
- package/lib/pages/UtilityDashboardPage/TopBar/styles.js +3 -2
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +7 -5
- package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +11 -6
- package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +5 -4
- package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +5 -4
- package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +5 -4
- package/lib/pages/WbeDashboard/ExpandableComponent.js +5 -4
- package/lib/pages/WbeDashboard/GraphWrapper.js +5 -4
- package/lib/pages/WbeDashboard/IndividualTinyGraph.js +5 -4
- package/lib/pages/WbeDashboard/SearchInput.js +5 -4
- package/lib/pages/WbeDashboard/SummaryGraph.js +26 -23
- package/lib/pages/WbeDashboard/SummaryGraphModal.js +3 -2
- package/lib/pages/WbeDashboard/Tabs.js +3 -2
- package/lib/pages/WbeDashboard/WbeDashboardPage.js +5 -4
- package/lib/pages/WbeDashboard/WbeSummaryBar.js +5 -4
- package/lib/pages/WwtpPage/DashboardCard.js +3 -2
- package/lib/pages/WwtpPage/DischargePatternCard.js +7 -5
- package/lib/pages/WwtpPage/InletsCard/InletsBar.js +3 -2
- package/lib/pages/WwtpPage/InletsCard/InletsCard.js +3 -2
- package/lib/pages/WwtpPage/InletsCard/index.js +3 -2
- package/lib/pages/WwtpPage/Map.js +4 -4
- package/lib/pages/WwtpPage/OrganicCard.js +3 -2
- package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +3 -2
- package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +3 -2
- package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +3 -2
- package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +3 -2
- package/lib/pages/WwtpPage/PotentialSaving/index.js +3 -2
- package/lib/pages/WwtpPage/PotentialSaving/types.js +1 -1
- package/lib/pages/WwtpPage/PredictionCard.js +3 -2
- package/lib/pages/WwtpPage/TrendCard.js +3 -2
- package/lib/pages/WwtpPage/UpgradeBox.js +3 -2
- package/lib/pages/WwtpPage/WwtpPage.js +3 -2
- package/lib/pages/WwtpPage/WwtpPageContainer.js +3 -2
- package/lib/pages/WwtpPage/index.js +3 -2
- package/lib/providers/Slideshow/SlideshowContext.js +7 -4
- package/lib/providers/Slideshow/SlideshowProvider.js +5 -4
- package/lib/providers/Slideshow/SlideshowRunner.js +3 -2
- package/lib/providers/UrlHistory/UrlHistoryContext.js +7 -4
- package/lib/providers/UrlHistory/UrlHistoryProvider.js +5 -4
- package/lib/providers/UrlHistory/index.js +1 -1
- package/lib/providers/UrlHistory/useLastVisited.js +3 -2
- package/lib/react-app-env.d.js +1 -1
- package/lib/store/ImportGis/action.js +1 -1
- package/lib/store/ImportGis/actionTypes.js +5 -4
- package/lib/store/ImportGis/actionsCreator.js +1 -1
- package/lib/store/ImportGis/models/gisImports.js +1 -1
- package/lib/store/ImportGis/reducer.js +1 -1
- package/lib/store/WBE/actionTypes.js +3 -2
- package/lib/store/WBE/actions.js +1 -1
- package/lib/store/WBE/models/IAreaWBE.js +1 -1
- package/lib/store/WBE/models/IWBE.js +1 -1
- package/lib/store/WBE/models/IWBEState.js +1 -1
- package/lib/store/WBE/reducer.js +1 -1
- package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +9 -5
- package/lib/store/WWTPDashboard/types.js +1 -1
- package/lib/store/areas/actionTypes.js +7 -4
- package/lib/store/areas/actions.js +1 -1
- package/lib/store/areas/models/IArea.js +1 -1
- package/lib/store/areas/models/IAreasState.js +1 -1
- package/lib/store/areas/reducer.js +1 -1
- package/lib/store/context/actionTypes.js +5 -3
- package/lib/store/context/actions.js +1 -1
- package/lib/store/context/contextMiddlewares.js +3 -2
- package/lib/store/context/models/INavContext.js +1 -1
- package/lib/store/context/models/INavContextState.js +1 -1
- package/lib/store/context/reducer.js +1 -1
- package/lib/store/dashboard/dashboardSlice.js +5 -3
- package/lib/store/dashboard/periodType.js +1 -1
- package/lib/store/edges/actionTypes.js +9 -5
- package/lib/store/edges/actions.js +1 -1
- package/lib/store/edges/models/IEdge.js +1 -1
- package/lib/store/edges/models/IEdgesState.js +1 -1
- package/lib/store/edges/reducer.js +1 -1
- package/lib/store/events/actionTypes.js +33 -17
- package/lib/store/events/actions.js +1 -1
- package/lib/store/events/models/IEvent.js +1 -1
- package/lib/store/events/models/IEventsState.js +1 -1
- package/lib/store/events/models/ISource.js +1 -1
- package/lib/store/events/reducer.js +1 -1
- package/lib/store/filters/IFilter.js +1 -1
- package/lib/store/filters/IFilterItem.js +1 -1
- package/lib/store/global/actionTypes.js +21 -11
- package/lib/store/global/actions.js +1 -1
- package/lib/store/global/models/IGlobalState.js +1 -1
- package/lib/store/global/reducer.js +1 -1
- package/lib/store/permissions/permissionsSlice.js +3 -2
- package/lib/store/points/actionTypes.js +5 -3
- package/lib/store/points/actions.js +1 -1
- package/lib/store/points/models/IGeoPoint.js +1 -1
- package/lib/store/points/models/IGroup.js +1 -1
- package/lib/store/points/models/IIssue.js +1 -1
- package/lib/store/points/models/IPoint.js +1 -1
- package/lib/store/points/models/IPointsState.js +1 -1
- package/lib/store/points/reducer.js +1 -1
- package/lib/store/rootActionTypes.js +3 -2
- package/lib/store/rootActions.js +1 -1
- package/lib/store/rootReducer.js +3 -2
- package/lib/store/rootStore.js +1 -1
- package/lib/store/samplings/action.js +1 -1
- package/lib/store/samplings/actionTypes.js +5 -4
- package/lib/store/samplings/actionsCreator.js +1 -1
- package/lib/store/samplings/models/Samplings.js +1 -1
- package/lib/store/samplings/reducer.js +1 -1
- package/lib/styles/StylesLayout.js +3 -2
- package/lib/styles/theme/theme.js +7 -4
- package/lib/test/mocks/browser.js +3 -2
- package/lib/test/test-utils.js +1 -1
- package/lib/ui-kit/Alert/KandoAlert.js +3 -2
- package/lib/ui-kit/Button/Button.js +7 -4
- package/lib/ui-kit/Button/Button.test.js +3 -3
- package/lib/ui-kit/Button/ButtonUtils.js +1 -1
- package/lib/ui-kit/Checkbox/Checkbox.js +5 -3
- package/lib/ui-kit/ContentCard/ContentCard.js +3 -2
- package/lib/ui-kit/Dashboard/Dashboard.js +5 -4
- package/lib/ui-kit/Dashboard/index.js +3 -2
- package/lib/ui-kit/DropDown/DropDown.js +3 -2
- package/lib/ui-kit/DropDown/DropDown.test.js +1 -1
- package/lib/ui-kit/DropDown/DropDownItem.js +5 -3
- package/lib/ui-kit/DropDown/DropdownToggle.js +5 -3
- package/lib/ui-kit/EmptyState/EmptyState.js +3 -2
- package/lib/ui-kit/IconAction/IconAction.js +3 -2
- package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +5 -4
- package/lib/ui-kit/InfoTooltip/InfoTooltip.js +3 -2
- package/lib/ui-kit/InletsPie/InletsPie.js +3 -2
- package/lib/ui-kit/InletsPie/index.js +3 -2
- package/lib/ui-kit/InletsPie/options.js +5 -3
- package/lib/ui-kit/KandoBottomSheet/KandoBottomSheet.js +5 -4
- package/lib/ui-kit/KandoFilter/KandoFilter.js +3 -2
- package/lib/ui-kit/KandoList/KandoList.js +5 -4
- package/lib/ui-kit/KandoList/kandoListUtils.js +1 -1
- package/lib/ui-kit/KandoTable/KandoTable.js +5 -4
- package/lib/ui-kit/KandoTable/KandoTable.test.js +1 -1
- package/lib/ui-kit/KandoTable/kandoTableUtils.js +1 -1
- package/lib/ui-kit/Layout/Layout.js +3 -2
- package/lib/ui-kit/MobileInput/MobileInput.js +3 -2
- package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +3 -2
- package/lib/ui-kit/ModalConfirmation/index.js +3 -2
- package/lib/ui-kit/OrganicEvents/GaugeChart.js +3 -2
- package/lib/ui-kit/OrganicEvents/OrganicEvents.js +3 -2
- package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +3 -2
- package/lib/ui-kit/OrganicEvents/TextInfo.js +3 -2
- package/lib/ui-kit/OrganicEvents/index.js +3 -2
- package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +3 -2
- package/lib/ui-kit/SamplingStatus/SamplingStatus.js +3 -2
- package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +5 -3
- package/lib/ui-kit/ScoreGauge/ScoreGauge.js +5 -3
- package/lib/ui-kit/ScoreGauge/constant.js +3 -2
- package/lib/ui-kit/ScoreGauge/index.js +3 -2
- package/lib/ui-kit/TimeLineChart/TrendChart.js +3 -2
- package/lib/ui-kit/TimeLineChart/index.js +3 -2
- package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +5 -3
- package/lib/ui-kit/Tooltip/Tooltip.js +3 -2
- package/lib/ui-kit/index.js +1 -1
- package/lib/ui-kit/kandoStepper/KandoStepper.js +3 -2
- package/lib/ui-kit/siteName/SiteName.js +3 -2
- package/lib/utilities/ActionUtility.js +1 -1
- package/lib/utilities/Alert.js +3 -2
- package/lib/utilities/Analytics.js +3 -2
- package/lib/utilities/Array.js +5 -3
- package/lib/utilities/Enum.js +27 -24
- package/lib/utilities/ErrorBoundary.js +9 -9
- package/lib/utilities/File.js +48 -42
- package/lib/utilities/GetDir.js +3 -2
- package/lib/utilities/KandoDate.js +5 -3
- package/lib/utilities/KandoModal.js +5 -4
- package/lib/utilities/LocalStorage.js +9 -5
- package/lib/utilities/ThousandsToK.js +3 -2
- package/lib/utilities/TimeFormat.js +5 -4
- package/lib/utilities/Truncate.js +5 -4
- package/lib/utilities/edgesMath.js +7 -6
- package/lib/utilities/i18n.js +3 -2
- package/lib/utilities/kql.js +5 -3
- package/lib/utilities/map/icons.js +3 -2
- package/lib/utilities/polylinedecorator.js +5 -3
- package/lib/utilities/scoreToData.js +11 -6
- package/lib/utilities/scoreToData.test.js +1 -1
- package/lib/utilities/time.js +7 -4
- package/lib/utilities/uploadToS3.js +3 -2
- package/lib/utilities/urls.js +7 -4
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.SummaryGraph = void 0;
|
|
9
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
10
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
10
11
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/asyncToGenerator"));
|
|
11
12
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
@@ -15,10 +16,9 @@ var _highcharts = _interopRequireDefault(require("highcharts"));
|
|
|
15
16
|
var _highchartsReactOfficial = _interopRequireDefault(require("highcharts-react-official"));
|
|
16
17
|
var _theme = require("../../styles/theme/theme");
|
|
17
18
|
var _urls = require("../../utilities/urls");
|
|
18
|
-
function _getRequireWildcardCache(
|
|
19
|
-
function _interopRequireWildcard(
|
|
20
|
-
|
|
21
|
-
var SummaryGraph = exports.SummaryGraph = function SummaryGraph(props) {
|
|
19
|
+
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); }
|
|
20
|
+
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; }
|
|
21
|
+
var SummaryGraph = function SummaryGraph(props) {
|
|
22
22
|
var waterAuthorityId = props.waterAuthorityId,
|
|
23
23
|
weeksForGovFetch = props.weeksForGovFetch,
|
|
24
24
|
pathogen = props.pathogen,
|
|
@@ -77,25 +77,27 @@ var SummaryGraph = exports.SummaryGraph = function SummaryGraph(props) {
|
|
|
77
77
|
var fetchAndSetClinicalData = function fetchAndSetClinicalData() {
|
|
78
78
|
var results = {};
|
|
79
79
|
weeksForGovFetch.weeks.forEach( /*#__PURE__*/function () {
|
|
80
|
-
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/
|
|
81
|
-
return
|
|
82
|
-
while (1)
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
80
|
+
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(week) {
|
|
81
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
82
|
+
while (1) {
|
|
83
|
+
switch (_context.prev = _context.next) {
|
|
84
|
+
case 0:
|
|
85
|
+
results[week] = {};
|
|
86
|
+
_context.next = 3;
|
|
87
|
+
return _axios.default.get((0, _urls.urls)({
|
|
88
|
+
week: week
|
|
89
|
+
}).wbeDashboard.govData.url).then(function (response) {
|
|
90
|
+
var records = response.data.result.records;
|
|
91
|
+
records.forEach(function (record) {
|
|
92
|
+
results[record.Week] = Math.round(Math.log10(aggregateRecordData(record)) * 10) / 10;
|
|
93
|
+
});
|
|
94
|
+
}).then(function () {
|
|
95
|
+
setClinicalResults(results);
|
|
92
96
|
});
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
case "end":
|
|
98
|
-
return _context.stop();
|
|
97
|
+
case 3:
|
|
98
|
+
case "end":
|
|
99
|
+
return _context.stop();
|
|
100
|
+
}
|
|
99
101
|
}
|
|
100
102
|
}, _callee);
|
|
101
103
|
}));
|
|
@@ -180,4 +182,5 @@ var SummaryGraph = exports.SummaryGraph = function SummaryGraph(props) {
|
|
|
180
182
|
options: options
|
|
181
183
|
}) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
|
|
182
184
|
};
|
|
183
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2hpZ2hjaGFydHMiLCJfaGlnaGNoYXJ0c1JlYWN0T2ZmaWNpYWwiLCJfdGhlbWUiLCJfdXJscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJfcmVnZW5lcmF0b3JSdW50aW1lIiwicHJvdG90eXBlIiwibyIsInZhbHVlIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJjIiwiYXN5bmNJdGVyYXRvciIsInRvU3RyaW5nVGFnIiwiZGVmaW5lIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwid3JhcCIsIkdlbmVyYXRvciIsImNyZWF0ZSIsIkNvbnRleHQiLCJtYWtlSW52b2tlTWV0aG9kIiwidHJ5Q2F0Y2giLCJ0eXBlIiwiYXJnIiwiaCIsImwiLCJmIiwicyIsInkiLCJHZW5lcmF0b3JGdW5jdGlvbiIsIkdlbmVyYXRvckZ1bmN0aW9uUHJvdG90eXBlIiwicCIsImQiLCJnZXRQcm90b3R5cGVPZiIsInYiLCJ2YWx1ZXMiLCJnIiwiZGVmaW5lSXRlcmF0b3JNZXRob2RzIiwiZm9yRWFjaCIsIl9pbnZva2UiLCJBc3luY0l0ZXJhdG9yIiwiaW52b2tlIiwicmVzb2x2ZSIsIl9fYXdhaXQiLCJ0aGVuIiwiY2FsbEludm9rZVdpdGhNZXRob2RBbmRBcmciLCJFcnJvciIsImRvbmUiLCJtZXRob2QiLCJkZWxlZ2F0ZSIsIm1heWJlSW52b2tlRGVsZWdhdGUiLCJzZW50IiwiX3NlbnQiLCJkaXNwYXRjaEV4Y2VwdGlvbiIsImFicnVwdCIsInJldHVybiIsIlR5cGVFcnJvciIsInJlc3VsdE5hbWUiLCJuZXh0IiwibmV4dExvYyIsInB1c2hUcnlFbnRyeSIsInRyeUxvYyIsImNhdGNoTG9jIiwiZmluYWxseUxvYyIsImFmdGVyTG9jIiwidHJ5RW50cmllcyIsInB1c2giLCJyZXNldFRyeUVudHJ5IiwiY29tcGxldGlvbiIsInJlc2V0IiwiaXNOYU4iLCJsZW5ndGgiLCJkaXNwbGF5TmFtZSIsImlzR2VuZXJhdG9yRnVuY3Rpb24iLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJtYXJrIiwic2V0UHJvdG90eXBlT2YiLCJhd3JhcCIsImFzeW5jIiwiUHJvbWlzZSIsImtleXMiLCJyZXZlcnNlIiwicG9wIiwicHJldiIsImNoYXJBdCIsInNsaWNlIiwic3RvcCIsInJ2YWwiLCJoYW5kbGUiLCJjb21wbGV0ZSIsImZpbmlzaCIsImNhdGNoIiwiX2NhdGNoIiwiZGVsZWdhdGVZaWVsZCIsIlN1bW1hcnlHcmFwaCIsImV4cG9ydHMiLCJwcm9wcyIsIndhdGVyQXV0aG9yaXR5SWQiLCJ3ZWVrc0ZvckdvdkZldGNoIiwicGF0aG9nZW4iLCJfcHJvcHMkbWluaSIsIm1pbmkiLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsInhfYXhpcyIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJncmFwaERhdGEiLCJzZXRHcmFwaERhdGEiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImNsaW5pY2FsRGF0YSIsInNldENsaW5pY2FsRGF0YSIsImlzRGF0YVByZXNlbnQiLCJ1bmRlZmluZWQiLCJmZXRjaEFuZFNldERhdGEiLCJmZXRjaENsaW5pY2FsIiwiYXJndW1lbnRzIiwiYXhpb3MiLCJ1cmxzIiwid2JlRGFzaGJvYXJkIiwidHJlbmRHcmFwaCIsInVybCIsInJlc3BvbnNlIiwiZGF0YSIsImZldGNoQW5kU2V0Q2xpbmljYWxEYXRhIiwic2V0Q2xpbmljYWxSZXN1bHRzIiwicmVzdWx0cyIsInZhbHVlc0Zvcm1hdHRlZFdpdGhOdWxscyIsImdvdkRhdGUiLCJpbmRleE9mIiwiYWdncmVnYXRlUmVjb3JkRGF0YSIsInJlY29yZCIsInBhcnNlQW5kQ2hlY2tWYWxpZGl0eSIsIkNhc2VzX2Ftb25nX3JlY292ZXJkX3dpdGhfdmFjYyIsIkNhc2VzX2Ftb25nX3JlY292ZXJlZF93aXRob3V0X3ZhY2MiLCJOb3RfcmVjb3ZlcmVkX2F0X2xlYXN0XzJfZG9zZXMiLCJOb3RfcmVjb3ZlcmVkX25vdF92YWNjaW5hdGVkIiwiTm90X3JlY292ZXJlZF9wYXJ0aWFsbHlfdmFjY2luYXRlZCIsInBhcnNlSW50Iiwid2Vla3MiLCJfcmVmIiwiX2FzeW5jVG9HZW5lcmF0b3IyIiwiX2NhbGxlZSIsIndlZWsiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwiZ292RGF0YSIsInJlY29yZHMiLCJyZXN1bHQiLCJXZWVrIiwiTWF0aCIsInJvdW5kIiwibG9nMTAiLCJfeCIsImFwcGx5IiwibWluTWF4R3JhcGhWYWx1ZXMiLCJkZWx0YSIsIm1pbiIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJtYXgiLCJzZXJpZXMiLCJ5QXhpcyIsImNvbG9yIiwidGhlbWUiLCJjb2xvclNjaGVtZSIsInByaW1hcnkiLCJwMSIsInRpdGxlIiwiZW5hYmxlZCIsInRleHQiLCJuYXR1cmFsIiwibjYwIiwib3B0aW9ucyIsImNoYXJ0IiwiaGVpZ2h0IiwibGVnZW5kIiwibWFyZ2luIiwicGFkZGluZyIsImNyZWRpdHMiLCJ4QXhpcyIsImNhdGVnb3JpZXMiLCJsYWJlbHMiLCJzdGVwIiwic3R5bGUiLCJmb250U2l6ZSIsInVzZUVmZmVjdCIsImNyZWF0ZUVsZW1lbnQiLCJoaWdoY2hhcnRzIiwiSGlnaGNoYXJ0cyIsIkZyYWdtZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL1diZURhc2hib2FyZC9TdW1tYXJ5R3JhcGgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMnO1xuaW1wb3J0IEhpZ2hjaGFydHNSZWFjdCBmcm9tICdoaWdoY2hhcnRzLXJlYWN0LW9mZmljaWFsJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvdXJscyc7XG5cbnR5cGUgUHJvcHMgPSB7XG4gIHdhdGVyQXV0aG9yaXR5SWQ6IG51bWJlcjtcbiAgd2Vla3NGb3JHb3ZGZXRjaDogeyB3ZWVrczogc3RyaW5nW107IHhfYXhpczogc3RyaW5nW10gfTtcbiAgbWluaT86IGJvb2xlYW47XG4gIHBhdGhvZ2VuOiBzdHJpbmc7XG59O1xuXG50eXBlIFN1bW1hcnlEYXRhVHlwZSA9IHtcbiAgdmFsdWVzOiBhbnlbXTtcbiAgeF9heGlzOiBzdHJpbmdbXTtcbn07XG5cbnR5cGUgQ2xpbmljYWxEYXRhVHlwZSA9IHN0cmluZ1tdO1xuXG5leHBvcnQgY29uc3QgU3VtbWFyeUdyYXBoOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eUlkLCB3ZWVrc0ZvckdvdkZldGNoLCBwYXRob2dlbiwgbWluaSA9IHRydWUgfSA9IHByb3BzO1xuICBjb25zdCBbZ3JhcGhEYXRhLCBzZXRHcmFwaERhdGFdID0gdXNlU3RhdGU8U3VtbWFyeURhdGFUeXBlPih7XG4gICAgdmFsdWVzOiBbXSxcbiAgICB4X2F4aXM6IFtdLFxuICB9KTtcbiAgY29uc3QgW2NsaW5pY2FsRGF0YSwgc2V0Q2xpbmljYWxEYXRhXSA9IHVzZVN0YXRlPENsaW5pY2FsRGF0YVR5cGU+KFtdKTtcblxuICBjb25zdCBpc0RhdGFQcmVzZW50ID0gKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBncmFwaERhdGE/LnZhbHVlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBncmFwaERhdGE/LnZhbHVlcy5sZW5ndGggIT09IDAgJiZcbiAgICAgIGdyYXBoRGF0YT8ueF9heGlzLmxlbmd0aCAhPT0gMFxuICAgICk7XG4gIH07XG4gIGNvbnN0IGZldGNoQW5kU2V0RGF0YSA9IChmZXRjaENsaW5pY2FsID0gZmFsc2UpID0+IHtcbiAgICBheGlvc1xuICAgICAgLmdldChcbiAgICAgICAgdXJscyh7IHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsIHBhdGhvZ2VuIH0pLndiZURhc2hib2FyZFxuICAgICAgICAgIC50cmVuZEdyYXBoLnVybCxcbiAgICAgIClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBzZXRHcmFwaERhdGEocmVzcG9uc2UuZGF0YSk7XG4gICAgICAgIGZldGNoQ2xpbmljYWwgJiYgZmV0Y2hBbmRTZXRDbGluaWNhbERhdGEoKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHNldENsaW5pY2FsUmVzdWx0cyA9IChyZXN1bHRzKSA9PiB7XG4gICAgaWYgKFxuICAgICAgT2JqZWN0LmtleXMocmVzdWx0cykubGVuZ3RoID4gZ3JhcGhEYXRhLnZhbHVlcy5sZW5ndGggJiZcbiAgICAgIGdyYXBoRGF0YS54X2F4aXMubGVuZ3RoICE9PSAwXG4gICAgKSB7XG4gICAgICBsZXQgdmFsdWVzRm9ybWF0dGVkV2l0aE51bGxzOiBhbnkgPSBbXTtcbiAgICAgIHdlZWtzRm9yR292RmV0Y2gueF9heGlzLmZvckVhY2goKGdvdkRhdGUpID0+IHtcbiAgICAgICAgaWYgKGdyYXBoRGF0YS54X2F4aXMuaW5kZXhPZihnb3ZEYXRlKSA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdmFsdWVzRm9ybWF0dGVkV2l0aE51bGxzLnB1c2goXG4gICAgICAgICAgICBncmFwaERhdGEudmFsdWVzW2dyYXBoRGF0YS54X2F4aXMuaW5kZXhPZihnb3ZEYXRlKV0sXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHNldEdyYXBoRGF0YSh7XG4gICAgICAgIHZhbHVlczogdmFsdWVzRm9ybWF0dGVkV2l0aE51bGxzLFxuICAgICAgICB4X2F4aXM6IGdyYXBoRGF0YS54X2F4aXMsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXRDbGluaWNhbERhdGEoT2JqZWN0LnZhbHVlcyhyZXN1bHRzKSk7XG4gIH07XG5cbiAgY29uc3QgYWdncmVnYXRlUmVjb3JkRGF0YSA9IChyZWNvcmQpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgcGFyc2VBbmRDaGVja1ZhbGlkaXR5KHJlY29yZC5DYXNlc19hbW9uZ19yZWNvdmVyZF93aXRoX3ZhY2MpICtcbiAgICAgIHBhcnNlQW5kQ2hlY2tWYWxpZGl0eShyZWNvcmQuQ2FzZXNfYW1vbmdfcmVjb3ZlcmVkX3dpdGhvdXRfdmFjYykgK1xuICAgICAgcGFyc2VBbmRDaGVja1ZhbGlkaXR5KHJlY29yZC5Ob3RfcmVjb3ZlcmVkX2F0X2xlYXN0XzJfZG9zZXMpICtcbiAgICAgIHBhcnNlQW5kQ2hlY2tWYWxpZGl0eShyZWNvcmQuTm90X3JlY292ZXJlZF9ub3RfdmFjY2luYXRlZCkgK1xuICAgICAgcGFyc2VBbmRDaGVja1ZhbGlkaXR5KHJlY29yZC5Ob3RfcmVjb3ZlcmVkX3BhcnRpYWxseV92YWNjaW5hdGVkKVxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgcGFyc2VBbmRDaGVja1ZhbGlkaXR5ID0gKHZhbHVlKSA9PiB7XG4gICAgaWYgKHZhbHVlID09PSAnPDUnKSB7XG4gICAgICByZXR1cm4gNTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUpO1xuICB9O1xuXG4gIGNvbnN0IGZldGNoQW5kU2V0Q2xpbmljYWxEYXRhID0gKCkgPT4ge1xuICAgIGxldCByZXN1bHRzID0ge307XG5cbiAgICB3ZWVrc0ZvckdvdkZldGNoLndlZWtzLmZvckVhY2goYXN5bmMgKHdlZWspID0+IHtcbiAgICAgIHJlc3VsdHNbd2Vla10gPSB7fTtcbiAgICAgIGF3YWl0IGF4aW9zXG4gICAgICAgIC5nZXQodXJscyh7IHdlZWs6IHdlZWsgfSkud2JlRGFzaGJvYXJkLmdvdkRhdGEudXJsKVxuICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBsZXQgcmVjb3JkcyA9IHJlc3BvbnNlLmRhdGEucmVzdWx0LnJlY29yZHM7XG5cbiAgICAgICAgICByZWNvcmRzLmZvckVhY2goKHJlY29yZCkgPT4ge1xuICAgICAgICAgICAgcmVzdWx0c1tyZWNvcmQuV2Vla10gPVxuICAgICAgICAgICAgICBNYXRoLnJvdW5kKE1hdGgubG9nMTAoYWdncmVnYXRlUmVjb3JkRGF0YShyZWNvcmQpKSAqIDEwKSAvIDEwO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgc2V0Q2xpbmljYWxSZXN1bHRzKHJlc3VsdHMpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBtaW5NYXhHcmFwaFZhbHVlcyA9IChkZWx0YTogbnVtYmVyLCBtaW46IGJvb2xlYW4pID0+IHtcbiAgICBpZiAoZ3JhcGhEYXRhPy52YWx1ZXMgPT09IHVuZGVmaW5lZCkgcmV0dXJuIDA7XG4gICAgaWYgKG1pbikgcmV0dXJuIE1hdGgubWluKC4uLmdyYXBoRGF0YS52YWx1ZXMpIC0gZGVsdGE7XG4gICAgcmV0dXJuIE1hdGgubWF4KC4uLmdyYXBoRGF0YS52YWx1ZXMpICsgZGVsdGE7XG4gIH07XG5cbiAgLy8gU2hvdyBjbGluaWNhbCBkYXRhIG9ubHkgaWYgaXQgZXhpc3RzXG4gIGNvbnN0IHNlcmllcyA9IFtcbiAgICB7XG4gICAgICBuYW1lOiAnV2Vla2x5IE5WTCcsXG4gICAgICB5QXhpczogMCxcbiAgICAgIGRhdGE6IGdyYXBoRGF0YT8udmFsdWVzLFxuICAgICAgY29sb3I6IHRoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucDEsXG4gICAgfSxcbiAgXTtcbiAgY29uc3QgeUF4aXMgPSBbXG4gICAge1xuICAgICAgbWluOiBtaW5NYXhHcmFwaFZhbHVlcygwLjUsIHRydWUpLFxuICAgICAgbWF4OiBtaW5NYXhHcmFwaFZhbHVlcygwLjUsIGZhbHNlKSxcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgIHRleHQ6ICdOVkwnLFxuICAgICAgfSxcbiAgICB9LFxuICBdO1xuXG4gIGlmIChjbGluaWNhbERhdGEubGVuZ3RoID4gMCkge1xuICAgIHNlcmllcy5wdXNoKHtcbiAgICAgIHlBeGlzOiAxLFxuICAgICAgbmFtZTogJ0NsaW5pY2FsJyxcbiAgICAgIGRhdGE6IGNsaW5pY2FsRGF0YSxcbiAgICAgIGNvbG9yOiB0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm42MCxcbiAgICB9KTtcbiAgICB5QXhpcy5wdXNoKHtcbiAgICAgIG1pbjogbWluTWF4R3JhcGhWYWx1ZXMoMC41LCB0cnVlKSxcbiAgICAgIG1heDogbWluTWF4R3JhcGhWYWx1ZXMoMC41LCBmYWxzZSksXG4gICAgICB0aXRsZToge1xuICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICB0ZXh0OiAnQ2xpbmljYWwnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBjb25zdCBvcHRpb25zID0ge1xuICAgIHRpdGxlOiB7XG4gICAgICB0ZXh0OiBudWxsLFxuICAgIH0sXG4gICAgY2hhcnQ6IHtcbiAgICAgIGhlaWdodDogbWluaSA/IDExNSA6IDQ3MCxcbiAgICAgIHR5cGU6ICdzcGxpbmUnLFxuICAgIH0sXG4gICAgbGVnZW5kOiB7XG4gICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgbWFyZ2luOiA5LFxuICAgICAgcGFkZGluZzogMCxcbiAgICB9LFxuICAgIGNyZWRpdHM6IHtcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgIH0sXG4gICAgeUF4aXMsXG4gICAgeEF4aXM6IHtcbiAgICAgIGNhdGVnb3JpZXM6IGdyYXBoRGF0YT8ueF9heGlzLFxuICAgICAgbGFiZWxzOiB7XG4gICAgICAgIHN0ZXA6IDIsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgZm9udFNpemU6ICc5cHgnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHNlcmllcyxcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBmZXRjaENsaW5pY2FsID0gZmFsc2U7XG5cbiAgICBpZiAocGF0aG9nZW4pIHtcbiAgICAgIGZldGNoQW5kU2V0RGF0YShmZXRjaENsaW5pY2FsKTtcbiAgICB9XG4gIH0sIFt3YXRlckF1dGhvcml0eUlkLCB3ZWVrc0ZvckdvdkZldGNoLCBwYXRob2dlbl0pO1xuXG4gIHJldHVybiBpc0RhdGFQcmVzZW50KCkgPyAoXG4gICAgPEhpZ2hjaGFydHNSZWFjdCBoaWdoY2hhcnRzPXtIaWdoY2hhcnRzfSBvcHRpb25zPXtvcHRpb25zfSAvPlxuICApIDogKFxuICAgIDw+PC8+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUQsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFJLHdCQUFBLEdBQUFGLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSyxNQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxLQUFBLEdBQUFOLE9BQUE7QUFBNEMsU0FBQU8seUJBQUFDLENBQUEsNkJBQUFDLE9BQUEsbUJBQUFDLENBQUEsT0FBQUQsT0FBQSxJQUFBRSxDQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLENBQUEsV0FBQUEsQ0FBQSxHQUFBRyxDQUFBLEdBQUFELENBQUEsS0FBQUYsQ0FBQTtBQUFBLFNBQUFULHdCQUFBUyxDQUFBLEVBQUFFLENBQUEsU0FBQUEsQ0FBQSxJQUFBRixDQUFBLElBQUFB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
|
|
185
|
+
exports.SummaryGraph = SummaryGraph;
|
|
186
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2hpZ2hjaGFydHMiLCJfaGlnaGNoYXJ0c1JlYWN0T2ZmaWNpYWwiLCJfdGhlbWUiLCJfdXJscyIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiU3VtbWFyeUdyYXBoIiwicHJvcHMiLCJ3YXRlckF1dGhvcml0eUlkIiwid2Vla3NGb3JHb3ZGZXRjaCIsInBhdGhvZ2VuIiwiX3Byb3BzJG1pbmkiLCJtaW5pIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJ2YWx1ZXMiLCJ4X2F4aXMiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwiZ3JhcGhEYXRhIiwic2V0R3JhcGhEYXRhIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJjbGluaWNhbERhdGEiLCJzZXRDbGluaWNhbERhdGEiLCJpc0RhdGFQcmVzZW50IiwidW5kZWZpbmVkIiwibGVuZ3RoIiwiZmV0Y2hBbmRTZXREYXRhIiwiZmV0Y2hDbGluaWNhbCIsImFyZ3VtZW50cyIsImF4aW9zIiwidXJscyIsIndiZURhc2hib2FyZCIsInRyZW5kR3JhcGgiLCJ1cmwiLCJ0aGVuIiwicmVzcG9uc2UiLCJkYXRhIiwiZmV0Y2hBbmRTZXRDbGluaWNhbERhdGEiLCJzZXRDbGluaWNhbFJlc3VsdHMiLCJyZXN1bHRzIiwia2V5cyIsInZhbHVlc0Zvcm1hdHRlZFdpdGhOdWxscyIsImZvckVhY2giLCJnb3ZEYXRlIiwiaW5kZXhPZiIsInB1c2giLCJhZ2dyZWdhdGVSZWNvcmREYXRhIiwicmVjb3JkIiwicGFyc2VBbmRDaGVja1ZhbGlkaXR5IiwiQ2FzZXNfYW1vbmdfcmVjb3ZlcmRfd2l0aF92YWNjIiwiQ2FzZXNfYW1vbmdfcmVjb3ZlcmVkX3dpdGhvdXRfdmFjYyIsIk5vdF9yZWNvdmVyZWRfYXRfbGVhc3RfMl9kb3NlcyIsIk5vdF9yZWNvdmVyZWRfbm90X3ZhY2NpbmF0ZWQiLCJOb3RfcmVjb3ZlcmVkX3BhcnRpYWxseV92YWNjaW5hdGVkIiwidmFsdWUiLCJwYXJzZUludCIsIndlZWtzIiwiX3JlZiIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwid2VlayIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJnb3ZEYXRhIiwicmVjb3JkcyIsInJlc3VsdCIsIldlZWsiLCJNYXRoIiwicm91bmQiLCJsb2cxMCIsInN0b3AiLCJfeCIsImFwcGx5IiwibWluTWF4R3JhcGhWYWx1ZXMiLCJkZWx0YSIsIm1pbiIsIl90b0NvbnN1bWFibGVBcnJheTIiLCJtYXgiLCJzZXJpZXMiLCJuYW1lIiwieUF4aXMiLCJjb2xvciIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJwcmltYXJ5IiwicDEiLCJ0aXRsZSIsImVuYWJsZWQiLCJ0ZXh0IiwibmF0dXJhbCIsIm42MCIsIm9wdGlvbnMiLCJjaGFydCIsImhlaWdodCIsInR5cGUiLCJsZWdlbmQiLCJtYXJnaW4iLCJwYWRkaW5nIiwiY3JlZGl0cyIsInhBeGlzIiwiY2F0ZWdvcmllcyIsImxhYmVscyIsInN0ZXAiLCJzdHlsZSIsImZvbnRTaXplIiwidXNlRWZmZWN0IiwiY3JlYXRlRWxlbWVudCIsImhpZ2hjaGFydHMiLCJIaWdoY2hhcnRzIiwiRnJhZ21lbnQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL1diZURhc2hib2FyZC9TdW1tYXJ5R3JhcGgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMnO1xuaW1wb3J0IEhpZ2hjaGFydHNSZWFjdCBmcm9tICdoaWdoY2hhcnRzLXJlYWN0LW9mZmljaWFsJztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvdXJscyc7XG5cbnR5cGUgUHJvcHMgPSB7XG4gIHdhdGVyQXV0aG9yaXR5SWQ6IG51bWJlcjtcbiAgd2Vla3NGb3JHb3ZGZXRjaDogeyB3ZWVrczogc3RyaW5nW107IHhfYXhpczogc3RyaW5nW10gfTtcbiAgbWluaT86IGJvb2xlYW47XG4gIHBhdGhvZ2VuOiBzdHJpbmc7XG59O1xuXG50eXBlIFN1bW1hcnlEYXRhVHlwZSA9IHtcbiAgdmFsdWVzOiBhbnlbXTtcbiAgeF9heGlzOiBzdHJpbmdbXTtcbn07XG5cbnR5cGUgQ2xpbmljYWxEYXRhVHlwZSA9IHN0cmluZ1tdO1xuXG5leHBvcnQgY29uc3QgU3VtbWFyeUdyYXBoOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyB3YXRlckF1dGhvcml0eUlkLCB3ZWVrc0ZvckdvdkZldGNoLCBwYXRob2dlbiwgbWluaSA9IHRydWUgfSA9IHByb3BzO1xuICBjb25zdCBbZ3JhcGhEYXRhLCBzZXRHcmFwaERhdGFdID0gdXNlU3RhdGU8U3VtbWFyeURhdGFUeXBlPih7XG4gICAgdmFsdWVzOiBbXSxcbiAgICB4X2F4aXM6IFtdLFxuICB9KTtcbiAgY29uc3QgW2NsaW5pY2FsRGF0YSwgc2V0Q2xpbmljYWxEYXRhXSA9IHVzZVN0YXRlPENsaW5pY2FsRGF0YVR5cGU+KFtdKTtcblxuICBjb25zdCBpc0RhdGFQcmVzZW50ID0gKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBncmFwaERhdGE/LnZhbHVlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBncmFwaERhdGE/LnZhbHVlcy5sZW5ndGggIT09IDAgJiZcbiAgICAgIGdyYXBoRGF0YT8ueF9heGlzLmxlbmd0aCAhPT0gMFxuICAgICk7XG4gIH07XG4gIGNvbnN0IGZldGNoQW5kU2V0RGF0YSA9IChmZXRjaENsaW5pY2FsID0gZmFsc2UpID0+IHtcbiAgICBheGlvc1xuICAgICAgLmdldChcbiAgICAgICAgdXJscyh7IHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsIHBhdGhvZ2VuIH0pLndiZURhc2hib2FyZFxuICAgICAgICAgIC50cmVuZEdyYXBoLnVybCxcbiAgICAgIClcbiAgICAgIC50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICBzZXRHcmFwaERhdGEocmVzcG9uc2UuZGF0YSk7XG4gICAgICAgIGZldGNoQ2xpbmljYWwgJiYgZmV0Y2hBbmRTZXRDbGluaWNhbERhdGEoKTtcbiAgICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHNldENsaW5pY2FsUmVzdWx0cyA9IChyZXN1bHRzKSA9PiB7XG4gICAgaWYgKFxuICAgICAgT2JqZWN0LmtleXMocmVzdWx0cykubGVuZ3RoID4gZ3JhcGhEYXRhLnZhbHVlcy5sZW5ndGggJiZcbiAgICAgIGdyYXBoRGF0YS54X2F4aXMubGVuZ3RoICE9PSAwXG4gICAgKSB7XG4gICAgICBsZXQgdmFsdWVzRm9ybWF0dGVkV2l0aE51bGxzOiBhbnkgPSBbXTtcbiAgICAgIHdlZWtzRm9yR292RmV0Y2gueF9heGlzLmZvckVhY2goKGdvdkRhdGUpID0+IHtcbiAgICAgICAgaWYgKGdyYXBoRGF0YS54X2F4aXMuaW5kZXhPZihnb3ZEYXRlKSA9PT0gLTEpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdmFsdWVzRm9ybWF0dGVkV2l0aE51bGxzLnB1c2goXG4gICAgICAgICAgICBncmFwaERhdGEudmFsdWVzW2dyYXBoRGF0YS54X2F4aXMuaW5kZXhPZihnb3ZEYXRlKV0sXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG5cbiAgICAgIHNldEdyYXBoRGF0YSh7XG4gICAgICAgIHZhbHVlczogdmFsdWVzRm9ybWF0dGVkV2l0aE51bGxzLFxuICAgICAgICB4X2F4aXM6IGdyYXBoRGF0YS54X2F4aXMsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXRDbGluaWNhbERhdGEoT2JqZWN0LnZhbHVlcyhyZXN1bHRzKSk7XG4gIH07XG5cbiAgY29uc3QgYWdncmVnYXRlUmVjb3JkRGF0YSA9IChyZWNvcmQpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgcGFyc2VBbmRDaGVja1ZhbGlkaXR5KHJlY29yZC5DYXNlc19hbW9uZ19yZWNvdmVyZF93aXRoX3ZhY2MpICtcbiAgICAgIHBhcnNlQW5kQ2hlY2tWYWxpZGl0eShyZWNvcmQuQ2FzZXNfYW1vbmdfcmVjb3ZlcmVkX3dpdGhvdXRfdmFjYykgK1xuICAgICAgcGFyc2VBbmRDaGVja1ZhbGlkaXR5KHJlY29yZC5Ob3RfcmVjb3ZlcmVkX2F0X2xlYXN0XzJfZG9zZXMpICtcbiAgICAgIHBhcnNlQW5kQ2hlY2tWYWxpZGl0eShyZWNvcmQuTm90X3JlY292ZXJlZF9ub3RfdmFjY2luYXRlZCkgK1xuICAgICAgcGFyc2VBbmRDaGVja1ZhbGlkaXR5KHJlY29yZC5Ob3RfcmVjb3ZlcmVkX3BhcnRpYWxseV92YWNjaW5hdGVkKVxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgcGFyc2VBbmRDaGVja1ZhbGlkaXR5ID0gKHZhbHVlKSA9PiB7XG4gICAgaWYgKHZhbHVlID09PSAnPDUnKSB7XG4gICAgICByZXR1cm4gNTtcbiAgICB9XG5cbiAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUpO1xuICB9O1xuXG4gIGNvbnN0IGZldGNoQW5kU2V0Q2xpbmljYWxEYXRhID0gKCkgPT4ge1xuICAgIGxldCByZXN1bHRzID0ge307XG5cbiAgICB3ZWVrc0ZvckdvdkZldGNoLndlZWtzLmZvckVhY2goYXN5bmMgKHdlZWspID0+IHtcbiAgICAgIHJlc3VsdHNbd2Vla10gPSB7fTtcbiAgICAgIGF3YWl0IGF4aW9zXG4gICAgICAgIC5nZXQodXJscyh7IHdlZWs6IHdlZWsgfSkud2JlRGFzaGJvYXJkLmdvdkRhdGEudXJsKVxuICAgICAgICAudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBsZXQgcmVjb3JkcyA9IHJlc3BvbnNlLmRhdGEucmVzdWx0LnJlY29yZHM7XG5cbiAgICAgICAgICByZWNvcmRzLmZvckVhY2goKHJlY29yZCkgPT4ge1xuICAgICAgICAgICAgcmVzdWx0c1tyZWNvcmQuV2Vla10gPVxuICAgICAgICAgICAgICBNYXRoLnJvdW5kKE1hdGgubG9nMTAoYWdncmVnYXRlUmVjb3JkRGF0YShyZWNvcmQpKSAqIDEwKSAvIDEwO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgc2V0Q2xpbmljYWxSZXN1bHRzKHJlc3VsdHMpO1xuICAgICAgICB9KTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBtaW5NYXhHcmFwaFZhbHVlcyA9IChkZWx0YTogbnVtYmVyLCBtaW46IGJvb2xlYW4pID0+IHtcbiAgICBpZiAoZ3JhcGhEYXRhPy52YWx1ZXMgPT09IHVuZGVmaW5lZCkgcmV0dXJuIDA7XG4gICAgaWYgKG1pbikgcmV0dXJuIE1hdGgubWluKC4uLmdyYXBoRGF0YS52YWx1ZXMpIC0gZGVsdGE7XG4gICAgcmV0dXJuIE1hdGgubWF4KC4uLmdyYXBoRGF0YS52YWx1ZXMpICsgZGVsdGE7XG4gIH07XG5cbiAgLy8gU2hvdyBjbGluaWNhbCBkYXRhIG9ubHkgaWYgaXQgZXhpc3RzXG4gIGNvbnN0IHNlcmllcyA9IFtcbiAgICB7XG4gICAgICBuYW1lOiAnV2Vla2x5IE5WTCcsXG4gICAgICB5QXhpczogMCxcbiAgICAgIGRhdGE6IGdyYXBoRGF0YT8udmFsdWVzLFxuICAgICAgY29sb3I6IHRoZW1lLmNvbG9yU2NoZW1lLnByaW1hcnkucDEsXG4gICAgfSxcbiAgXTtcbiAgY29uc3QgeUF4aXMgPSBbXG4gICAge1xuICAgICAgbWluOiBtaW5NYXhHcmFwaFZhbHVlcygwLjUsIHRydWUpLFxuICAgICAgbWF4OiBtaW5NYXhHcmFwaFZhbHVlcygwLjUsIGZhbHNlKSxcbiAgICAgIHRpdGxlOiB7XG4gICAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICAgIHRleHQ6ICdOVkwnLFxuICAgICAgfSxcbiAgICB9LFxuICBdO1xuXG4gIGlmIChjbGluaWNhbERhdGEubGVuZ3RoID4gMCkge1xuICAgIHNlcmllcy5wdXNoKHtcbiAgICAgIHlBeGlzOiAxLFxuICAgICAgbmFtZTogJ0NsaW5pY2FsJyxcbiAgICAgIGRhdGE6IGNsaW5pY2FsRGF0YSxcbiAgICAgIGNvbG9yOiB0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm42MCxcbiAgICB9KTtcbiAgICB5QXhpcy5wdXNoKHtcbiAgICAgIG1pbjogbWluTWF4R3JhcGhWYWx1ZXMoMC41LCB0cnVlKSxcbiAgICAgIG1heDogbWluTWF4R3JhcGhWYWx1ZXMoMC41LCBmYWxzZSksXG4gICAgICB0aXRsZToge1xuICAgICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgICB0ZXh0OiAnQ2xpbmljYWwnLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuICBjb25zdCBvcHRpb25zID0ge1xuICAgIHRpdGxlOiB7XG4gICAgICB0ZXh0OiBudWxsLFxuICAgIH0sXG4gICAgY2hhcnQ6IHtcbiAgICAgIGhlaWdodDogbWluaSA/IDExNSA6IDQ3MCxcbiAgICAgIHR5cGU6ICdzcGxpbmUnLFxuICAgIH0sXG4gICAgbGVnZW5kOiB7XG4gICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgbWFyZ2luOiA5LFxuICAgICAgcGFkZGluZzogMCxcbiAgICB9LFxuICAgIGNyZWRpdHM6IHtcbiAgICAgIGVuYWJsZWQ6IGZhbHNlLFxuICAgIH0sXG4gICAgeUF4aXMsXG4gICAgeEF4aXM6IHtcbiAgICAgIGNhdGVnb3JpZXM6IGdyYXBoRGF0YT8ueF9heGlzLFxuICAgICAgbGFiZWxzOiB7XG4gICAgICAgIHN0ZXA6IDIsXG4gICAgICAgIHN0eWxlOiB7XG4gICAgICAgICAgZm9udFNpemU6ICc5cHgnLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9LFxuICAgIHNlcmllcyxcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBmZXRjaENsaW5pY2FsID0gZmFsc2U7XG5cbiAgICBpZiAocGF0aG9nZW4pIHtcbiAgICAgIGZldGNoQW5kU2V0RGF0YShmZXRjaENsaW5pY2FsKTtcbiAgICB9XG4gIH0sIFt3YXRlckF1dGhvcml0eUlkLCB3ZWVrc0ZvckdvdkZldGNoLCBwYXRob2dlbl0pO1xuXG4gIHJldHVybiBpc0RhdGFQcmVzZW50KCkgPyAoXG4gICAgPEhpZ2hjaGFydHNSZWFjdCBoaWdoY2hhcnRzPXtIaWdoY2hhcnRzfSBvcHRpb25zPXtvcHRpb25zfSAvPlxuICApIDogKFxuICAgIDw+PC8+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxXQUFBLEdBQUFELHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBSSx3QkFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sS0FBQSxHQUFBTixPQUFBO0FBQTRDLFNBQUFPLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3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
|
|
@@ -11,7 +11,7 @@ var _reactFontawesome = require("@fortawesome/react-fontawesome");
|
|
|
11
11
|
var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
|
|
12
12
|
var _theme = require("../../styles/theme/theme");
|
|
13
13
|
var _reactRedux = require("react-redux");
|
|
14
|
-
var SummaryGraphModal =
|
|
14
|
+
var SummaryGraphModal = function SummaryGraphModal(props) {
|
|
15
15
|
var setOpen = props.setOpen;
|
|
16
16
|
var locale = (0, _reactRedux.useSelector)(function (state) {
|
|
17
17
|
return state.nav_context_data.navContext.locale;
|
|
@@ -26,6 +26,7 @@ var SummaryGraphModal = exports.SummaryGraphModal = function SummaryGraphModal(p
|
|
|
26
26
|
}
|
|
27
27
|
})), props.children));
|
|
28
28
|
};
|
|
29
|
+
exports.SummaryGraphModal = SummaryGraphModal;
|
|
29
30
|
var Backdrop = _styledComponents.default.div.withConfig({
|
|
30
31
|
displayName: "SummaryGraphModal__Backdrop",
|
|
31
32
|
componentId: "sc-1qvz9ay-0"
|
|
@@ -44,4 +45,4 @@ var XIcon = _styledComponents.default.div.withConfig({
|
|
|
44
45
|
displayName: "SummaryGraphModal__XIcon",
|
|
45
46
|
componentId: "sc-1qvz9ay-2"
|
|
46
47
|
})(["position:absolute;z-index:9;top:9px;border:1px solid ", ";width:25px;height:25px;padding:1px;cursor:pointer;display:flex;justify-content:center;align-items:center;&:hover{svg{color:", ";}border-color:", ";}[dir='ltr'] &{right:9px;}[dir='rtl'] &{left:9px;}svg{color:", ";}"], _theme.theme.colorScheme.natural.n40, _theme.theme.colorScheme.primary.p1, _theme.theme.colorScheme.primary.p1, _theme.theme.colorScheme.natural.n60);
|
|
47
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9zdHlsZWRDb21wb25lbnRzIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJfdGhlbWUiLCJfcmVhY3RSZWR1eCIsIlN1bW1hcnlHcmFwaE1vZGFsIiwicHJvcHMiLCJzZXRPcGVuIiwibG9jYWxlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJuYXZDb250ZXh0IiwiZGlyIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJCYWNrZHJvcCIsIk1vZGFsIiwiWEljb24iLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFUaW1lcyIsIm9uQ2xpY2siLCJjaGlsZHJlbiIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIl9yZWYiLCJ0aGVtZSIsInNhbXBsaW5nc1BhZ2UiLCJtb2JpbGUiLCJtb2RhbE92ZXJsYXlCYWNrZ3JvdW5kIiwiX3JlZjIiLCJ6SW5kZXhlcyIsIm1vZGFsIiwiY29sb3JTY2hlbWUiLCJuYXR1cmFsIiwibjQwIiwicHJpbWFyeSIsInAxIiwibjYwIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL1diZURhc2hib2FyZC9TdW1tYXJ5R3JhcGhNb2RhbC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCB7IGZhVGltZXMgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhcHBSZWR1Y2VyIH0gZnJvbSAnLi4vLi4vc3RvcmUvcm9vdFJlZHVjZXInO1xuXG50eXBlIFByb3BzID0ge1xuICBzZXRPcGVuOiBSZWFjdC5EaXNwYXRjaDxSZWFjdC5TZXRTdGF0ZUFjdGlvbjxib29sZWFuPj47XG59O1xuXG5leHBvcnQgY29uc3QgU3VtbWFyeUdyYXBoTW9kYWw6IFJlYWN0LkZDPFByb3BzPiA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IHNldE9wZW4gfSA9IHByb3BzO1xuICBjb25zdCBsb2NhbGUgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PlxuICAgICAgc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZSxcbiAgKTtcbiAgY29uc3QgZGlyID0gbG9jYWxlID09PSAnaGUnID8gJ3J0bCcgOiAnbHRyJztcblxuICByZXR1cm4gKFxuICAgIDxCYWNrZHJvcD5cbiAgICAgIDxNb2RhbCBkaXI9e2Rpcn0+XG4gICAgICAgIDxYSWNvbj5cbiAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIGljb249e2ZhVGltZXN9IG9uQ2xpY2s9eygpID0+IHNldE9wZW4oZmFsc2UpfSAvPlxuICAgICAgICA8L1hJY29uPlxuICAgICAgICB7cHJvcHMuY2hpbGRyZW59XG4gICAgICA8L01vZGFsPlxuICAgIDwvQmFja2Ryb3A+XG4gICk7XG59O1xuXG5jb25zdCBCYWNrZHJvcCA9IHN0eWxlZC5kaXZgXG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PlxuICAgIHRoZW1lLnNhbXBsaW5nc1BhZ2UubW9iaWxlLm1vZGFsT3ZlcmxheUJhY2tncm91bmR9O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS56SW5kZXhlcy5tb2RhbH07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuYDtcblxuY29uc3QgTW9kYWwgPSBzdHlsZWQuZGl2YFxuICB6LWluZGV4OiAke3RoZW1lLnpJbmRleGVzLm1vZGFsfTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAxMXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtaW4td2lkdGg6IDcwMHB4O1xuICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgd2lkdGg6IDYwdnc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR7dGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNDB9O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcGFkZGluZzogMTVweDtcblxuICBoMyB7XG4gICAgbWFyZ2luOiAxMnB4IDA7XG4gIH1cbmA7XG5cbmNvbnN0IFhJY29uID0gc3R5bGVkLmRpdmBcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5O1xuICB0b3A6IDlweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHt0aGVtZS5jb2xvclNjaGVtZS5uYXR1cmFsLm40MH07XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIHBhZGRpbmc6IDFweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAmOmhvdmVyIHtcbiAgICBzdmcge1xuICAgICAgY29sb3I6ICR7dGhlbWUuY29sb3JTY2hlbWUucHJpbWFyeS5wMX07XG4gICAgfVxuICAgIGJvcmRlci1jb2xvcjogJHt0aGVtZS5jb2xvclNjaGVtZS5wcmltYXJ5LnAxfTtcbiAgfVxuXG4gIFtkaXI9J2x0ciddICYge1xuICAgIHJpZ2h0OiA5cHg7XG4gIH1cblxuICBbZGlyPSdydGwnXSAmIHtcbiAgICBsZWZ0OiA5cHg7XG4gIH1cblxuICBzdmcge1xuICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwfTtcbiAgfVxuYDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGlCQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxpQkFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsa0JBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFdBQUEsR0FBQUwsT0FBQTtBQU9PLElBQU1NLGlCQUFrQyxHQUFHLFNBQXJDQSxpQkFBa0NBLENBQUlDLEtBQUssRUFBSztFQUMzRCxJQUFRQyxPQUFPLEdBQUtELEtBQUssQ0FBakJDLE9BQU87RUFDZixJQUFNQyxNQUFNLEdBQUcsSUFBQUMsdUJBQVcsRUFDeEIsVUFBQ0MsS0FBb0M7SUFBQSxPQUNuQ0EsS0FBSyxDQUFDQyxnQkFBZ0IsQ0FBQ0MsVUFBVSxDQUFDSixNQUFNO0VBQUEsQ0FDNUMsQ0FBQztFQUNELElBQU1LLEdBQUcsR0FBR0wsTUFBTSxLQUFLLElBQUksR0FBRyxLQUFLLEdBQUcsS0FBSztFQUUzQyxvQkFDRVgsTUFBQSxDQUFBaUIsT0FBQSxDQUFBQyxhQUFBLENBQUNDLFFBQVEscUJBQ1BuQixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUEsQ0FBQ0UsS0FBSztJQUFDSixHQUFHLEVBQUVBO0VBQUksZ0JBQ2RoQixNQUFBLENBQUFpQixPQUFBLENBQUFDLGFBQUEsQ0FBQ0csS0FBSyxxQkFDSnJCLE1BQUEsQ0FBQWlCLE9BQUEsQ0FBQUMsYUFBQSxDQUFDZCxpQkFBQSxDQUFBa0IsZUFBZTtJQUFDQyxJQUFJLEVBQUVDLDBCQUFRO0lBQUNDLE9BQU8sRUFBRSxTQUFBQSxRQUFBO01BQUEsT0FBTWYsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUFBO0VBQUMsQ0FBRSxDQUMzRCxDQUFDLEVBQ1BELEtBQUssQ0FBQ2lCLFFBQ0YsQ0FDQyxDQUFDO0FBRWYsQ0FBQztBQUFDQyxPQUFBLENBQUFuQixpQkFBQSxHQUFBQSxpQkFBQTtBQUVGLElBQU1XLFFBQVEsR0FBR1MseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDJKQUdMLFVBQUFDLElBQUE7RUFBQSxJQUFHQyxLQUFLLEdBQUFELElBQUEsQ0FBTEMsS0FBSztFQUFBLE9BQzFCQSxLQUFLLENBQUNDLGFBQWEsQ0FBQ0MsTUFBTSxDQUFDQyxzQkFBc0I7QUFBQSxHQUl4QyxVQUFBQyxLQUFBO0VBQUEsSUFBR0osS0FBSyxHQUFBSSxLQUFBLENBQUxKLEtBQUs7RUFBQSxPQUFPQSxLQUFLLENBQUNLLFFBQVEsQ0FBQ0MsS0FBSztBQUFBLEVBSS9DO0FBRUQsSUFBTXBCLEtBQUssR0FBR1EseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHNPQUNYRSxZQUFLLENBQUNLLFFBQVEsQ0FBQ0MsS0FBSyxFQVNYTixZQUFLLENBQUNPLFdBQVcsQ0FBQ0MsT0FBTyxDQUFDQyxHQUFHLENBT2xEO0FBRUQsSUFBTXRCLEtBQUssR0FBR08seUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHdSQUlGRSxZQUFLLENBQUNPLFdBQVcsQ0FBQ0MsT0FBTyxDQUFDQyxHQUFHLEVBV3BDVCxZQUFLLENBQUNPLFdBQVcsQ0FBQ0csT0FBTyxDQUFDQyxFQUFFLEVBRXZCWCxZQUFLLENBQUNPLFdBQVcsQ0FBQ0csT0FBTyxDQUFDQyxFQUFFLEVBWW5DWCxZQUFLLENBQUNPLFdBQVcsQ0FBQ0MsT0FBTyxDQUFDSSxHQUFHLENBRXpDIn0=
|
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.Tabs = void 0;
|
|
8
8
|
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
9
9
|
var _react = _interopRequireDefault(require("react"));
|
|
10
|
-
var Tabs =
|
|
10
|
+
var Tabs = function Tabs(props) {
|
|
11
11
|
var tabs = props.tabs,
|
|
12
12
|
selectedTab = props.selectedTab,
|
|
13
13
|
handleOnClick = props.handleOnClick;
|
|
@@ -22,8 +22,9 @@ var Tabs = exports.Tabs = function Tabs(props) {
|
|
|
22
22
|
}, /*#__PURE__*/_react.default.createElement("span", null, tab));
|
|
23
23
|
}));
|
|
24
24
|
};
|
|
25
|
+
exports.Tabs = Tabs;
|
|
25
26
|
var TabsContainer = _styledComponents.default.div.withConfig({
|
|
26
27
|
displayName: "Tabs__TabsContainer",
|
|
27
28
|
componentId: "sc-26wq66-0"
|
|
28
29
|
})(["display:flex;margin:30px 20px;width:max-content;.tab{padding:11px 50px;border-bottom:2px solid rgb(196,196,196);cursor:pointer;font-weight:300;&--selected{border-color:#e10036;color:black;font-weight:600;}}"]);
|
|
29
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIlRhYnMiLCJwcm9wcyIsInRhYnMiLCJzZWxlY3RlZFRhYiIsImhhbmRsZU9uQ2xpY2siLCJkZWZhdWx0IiwiY3JlYXRlRWxlbWVudCIsIlRhYnNDb250YWluZXIiLCJtYXAiLCJ0YWIiLCJrZXkiLCJjbGFzc05hbWUiLCJjb25jYXQiLCJpZCIsIm9uQ2xpY2siLCJleHBvcnRzIiwic3R5bGVkIiwiZGl2Iiwid2l0aENvbmZpZyIsImRpc3BsYXlOYW1lIiwiY29tcG9uZW50SWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGFnZXMvV2JlRGFzaGJvYXJkL1RhYnMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcblxudHlwZSBQcm9wcyA9IHtcbiAgdGFiczogc3RyaW5nW107XG4gIHNlbGVjdGVkVGFiOiBzdHJpbmc7XG4gIGhhbmRsZU9uQ2xpY2s6ICh0YWI6IHN0cmluZykgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCBjb25zdCBUYWJzOiBSZWFjdC5GQzxQcm9wcz4gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyB0YWJzLCBzZWxlY3RlZFRhYiwgaGFuZGxlT25DbGljayB9ID0gcHJvcHM7XG5cbiAgcmV0dXJuIChcbiAgICA8VGFic0NvbnRhaW5lcj5cbiAgICAgIHt0YWJzLm1hcCgodGFiKSA9PiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAga2V5PXt0YWJ9XG4gICAgICAgICAgICBjbGFzc05hbWU9e2B0YWIgJHtzZWxlY3RlZFRhYiA9PT0gdGFiICYmICd0YWItLXNlbGVjdGVkJ31gfVxuICAgICAgICAgICAgaWQ9e3RhYn1cbiAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IGhhbmRsZU9uQ2xpY2sodGFiKX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c3Bhbj57dGFifTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKTtcbiAgICAgIH0pfVxuICAgIDwvVGFic0NvbnRhaW5lcj5cbiAgKTtcbn07XG5cbmNvbnN0IFRhYnNDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDMwcHggMjBweDtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuXG4gIC50YWIge1xuICAgIHBhZGRpbmc6IDExcHggNTBweDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmdiKDE5NiwgMTk2LCAxOTYpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgJi0tc2VsZWN0ZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZTEwMDM2O1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBU08sSUFBTUMsSUFBcUIsR0FBRyxTQUF4QkEsSUFBcUJBLENBQUlDLEtBQUssRUFBSztFQUM5QyxJQUFRQyxJQUFJLEdBQWlDRCxLQUFLLENBQTFDQyxJQUFJO0lBQUVDLFdBQVcsR0FBb0JGLEtBQUssQ0FBcENFLFdBQVc7SUFBRUMsYUFBYSxHQUFLSCxLQUFLLENBQXZCRyxhQUFhO0VBRXhDLG9CQUNFUCxNQUFBLENBQUFRLE9BQUEsQ0FBQUMsYUFBQSxDQUFDQyxhQUFhLFFBQ1hMLElBQUksQ0FBQ00sR0FBRyxDQUFDLFVBQUNDLEdBQUcsRUFBSztJQUNqQixvQkFDRVosTUFBQSxDQUFBUSxPQUFBLENBQUFDLGFBQUE7TUFDRUksR0FBRyxFQUFFRCxHQUFJO01BQ1RFLFNBQVMsU0FBQUMsTUFBQSxDQUFTVCxXQUFXLEtBQUtNLEdBQUcsSUFBSSxlQUFlLENBQUc7TUFDM0RJLEVBQUUsRUFBRUosR0FBSTtNQUNSSyxPQUFPLEVBQUUsU0FBQUEsUUFBQTtRQUFBLE9BQU1WLGFBQWEsQ0FBQ0ssR0FBRyxDQUFDO01BQUE7SUFBQyxnQkFFbENaLE1BQUEsQ0FBQVEsT0FBQSxDQUFBQyxhQUFBLGVBQU9HLEdBQVUsQ0FDZCxDQUFDO0VBRVYsQ0FBQyxDQUNZLENBQUM7QUFFcEIsQ0FBQztBQUFDTSxPQUFBLENBQUFmLElBQUEsR0FBQUEsSUFBQTtBQUVGLElBQU1PLGFBQWEsR0FBR1MseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHNOQWlCL0IifQ==
|
|
@@ -41,11 +41,11 @@ var _theme = require("../../styles/theme/theme");
|
|
|
41
41
|
var _useKandoFetch3 = _interopRequireDefault(require("hooks/useKandoFetch"));
|
|
42
42
|
var _urls = require("utilities/urls");
|
|
43
43
|
var _useUserTimeZone = require("hooks/useUserTimeZone");
|
|
44
|
-
function _getRequireWildcardCache(
|
|
45
|
-
function _interopRequireWildcard(
|
|
44
|
+
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); }
|
|
45
|
+
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; }
|
|
46
46
|
var TABLE_ROWS_PER_PAGE = 25;
|
|
47
47
|
var MAPBOX_WBE_DASHBOARD_STYLE = 'ckzzkjsi7005f14o9im0mczs9';
|
|
48
|
-
var WbeDashboardPage =
|
|
48
|
+
var WbeDashboardPage = function WbeDashboardPage() {
|
|
49
49
|
var getWAId = function getWAId() {
|
|
50
50
|
return query.get('water_authority_id');
|
|
51
51
|
};
|
|
@@ -399,6 +399,7 @@ var WbeDashboardPage = exports.WbeDashboardPage = function WbeDashboardPage() {
|
|
|
399
399
|
defaultSortFieldId: 3
|
|
400
400
|
})))));
|
|
401
401
|
};
|
|
402
|
+
exports.WbeDashboardPage = WbeDashboardPage;
|
|
402
403
|
var RowName = _styledComponents.default.div.withConfig({
|
|
403
404
|
displayName: "WbeDashboardPage__RowName",
|
|
404
405
|
componentId: "sc-14f81cv-0"
|
|
@@ -425,4 +426,4 @@ var Content = _styledComponents.default.div.withConfig({
|
|
|
425
426
|
displayName: "WbeDashboardPage__Content",
|
|
426
427
|
componentId: "sc-14f81cv-5"
|
|
427
428
|
})(["@media (max-width:576px){padding:20px;}h1{font-weight:bold;}padding:60px 60px;"]);
|
|
428
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfaTE4biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIl9BbmFseXRpY3MiLCJfU2VhcmNoSW5wdXQiLCJfcmVhY3RGb250YXdlc29tZSIsIl9HcmFwaFdyYXBwZXIiLCJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJfYWN0aW9ucyIsIl9UaG91c2FuZHNUb0siLCJfRHJpbGxEb3duSWNvbiIsIl9CYXNlTGV2ZWwiLCJfcmVhY3REYXRhVGFibGVDb21wb25lbnQiLCJfbnZsU3RhdHVzSGVscGVyIiwiX01hcCIsIl9LYW5kb1RhYmxlIiwiX1RhYnMiLCJfdXNlS2FuZG9GZXRjaDIiLCJfdXNlUXVlcnlVUkwiLCJfRHJvcGRvd24iLCJfRHJvcGRvd25CdXR0b24iLCJfYXhpb3MiLCJfVHJ1bmNhdGUiLCJfRXhwYW5kYWJsZUNvbXBvbmVudCIsIl9TcGlubmVyIiwiX1diZVN1bW1hcnlCYXIiLCJfRXJyb3JCb3VuZGFyeSIsIl90aGVtZSIsIl91c2VLYW5kb0ZldGNoMyIsIl91cmxzIiwiX3VzZVVzZXJUaW1lWm9uZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsImUiLCJXZWFrTWFwIiwiciIsInQiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJUQUJMRV9ST1dTX1BFUl9QQUdFIiwiTUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEUiLCJXYmVEYXNoYm9hcmRQYWdlIiwiZXhwb3J0cyIsImdldFdBSWQiLCJxdWVyeSIsImZldGNoVXJsIiwiZmlyc3RQYXJhbSIsImNvbmNhdCIsInNlbGVjdGVkUGF0aG9nZW4iLCJwYXRob2dlbnNVcmwiLCJ1cmxzIiwid2F0ZXJBdXRob3JpdHlJZCIsIndiZURhc2hib2FyZCIsInBhdGhvZ2VucyIsInVybCIsIkRFRkFVTFRfVEFCUyIsImkxOG4iLCJjb252ZXJ0VGFiTmFtZVRvUGFyYW0iLCJ0YWJfbmFtZSIsInVzZVF1ZXJ5VVJMIiwiZ2V0UGF0aG9nZW5OYW1lIiwicGF0aG9nZW4iLCJnZXRQYXRob2dlbiIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImN1cnJlbnREYXRhIiwic2V0Q3VycmVudERhdGEiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsIm1hcEFyZWFzIiwic2V0TWFwQXJlYXMiLCJfdXNlU3RhdGU1IiwiX3VzZVN0YXRlNiIsIm1hcFpvb20iLCJzZXRNYXBab29tIiwiX3VzZVN0YXRlNyIsIl91c2VTdGF0ZTgiLCJyb3dzIiwic2V0Um93cyIsIl91c2VTdGF0ZTkiLCJfdXNlU3RhdGUxMCIsInRhYnMiLCJzZXRUYWJzIiwiX3VzZVN0YXRlMTEiLCJfdXNlU3RhdGUxMiIsInNlbGVjdGVkVGFiIiwic2V0U2VsZWN0ZWRUYWIiLCJfdXNlU3RhdGUxMyIsIl91c2VTdGF0ZTE0Iiwic2V0U2VsZWN0ZWRQYXRob2dlbiIsIl91c2VLYW5kb0ZldGNoIiwidXNlS2FuZG9GZXRjaCIsImRhdGEiLCJpc0ZldGNoaW5nIiwic2V0RmV0Y2hpbmciLCJfVXNlS2FuZG9GZXRjaCIsIlVzZUthbmRvRmV0Y2giLCJpc0ZldGNoaW5nUGF0aG9nZW5zIiwiZGlzcGF0Y2giLCJ1c2VEaXNwYXRjaCIsIm5hdkNvbnRleHQiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwibmF2X2NvbnRleHRfZGF0YSIsImdsb2JhbERhdGEiLCJnbG9iYWxfZGF0YSIsImlzUnRsIiwibG9jYWxlIiwiY29sb3JGb3JSb3ciLCJyb3ciLCJxdWFsaXR5Iiwic2FtcGxlX2FjdGl2ZSIsImlzSW5mZWN0ZWQiLCJudmwiLCJ1c2VyRm9ybWF0IiwidXNlVXNlclNlbGVjdGVkRGF0ZUZvcm1hdCIsImNvbHVtbnMiLCJSZWFjdCIsInVzZU1lbW8iLCJuYW1lIiwic2VsZWN0b3IiLCJzb3J0YWJsZSIsImNlbGwiLCJjcmVhdGVFbGVtZW50IiwiUm93TmFtZSIsImNsYXNzTmFtZSIsIm9uQ2xpY2siLCJoYW5kbGVBcmVhQ2xpY2siLCJoYXNfY2hpbGRyZW4iLCJSZWFjdENvbXBvbmVudCIsImNoYXJhY3RlcnMiLCJpbmhlcml0VGV4dEFsaWduIiwibnZsX2NoYW5nZSIsInN0eWxlIiwiZGlyZWN0aW9uIiwiY29sb3IiLCJtYXJnaW4iLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFDaGV2cm9uVXAiLCJmYUNoZXZyb25Eb3duIiwibGFzdF91cGRhdGVkIiwiZGF5Rm9ybWF0RnJvbVRpbWUiLCJHcmFwaFdyYXBwZXIiLCJrZXkiLCJpZCIsIndhdGVyX2F1dGhvcml0eV9pZCIsInBvcHVsYXRpb24iLCJrRm9ybWF0dGVyIiwicGFyc2VJbnQiLCJpbml0aWFsaXplTWFwQXJlYXMiLCJhcmVhcyIsIm1hcHBlZFdpdGhDb2xvciIsIm1hcCIsIndiZV9kYXNoYm9hcmRfbmFtZSIsInNob3dDb2xvck9ubHlJbkJvcmRlcnMiLCJ0aGVtZSIsImNvbG9yU2NoZW1lIiwibmF0dXJhbCIsIm42MCIsIlIxMDAiLCJHMTAwIiwiem9vbVRvQXJlYSIsImFyZWEiLCJzaGFwZV9kYXRhIiwidW5kZWZpbmVkIiwiem9vbUFsbEFyZWFzIiwic2hhcGVEYXRhIiwiZGF0dW0iLCJsZXZlbE5WTCIsImhpc3RvcnkiLCJ1c2VIaXN0b3J5IiwiZGlyIiwiRGlyZWN0aW9uIiwiUlRMIiwiTFRSIiwiZmlsdGVyUmVzdWx0c0FuZFNldFJvd3MiLCJ0ZXh0IiwicmVzdWx0cyIsImZpbHRlciIsImVsIiwidG9Mb3dlckNhc2UiLCJpbmNsdWRlcyIsImhhbmRsZU9uUm93RXhwYW5kIiwiZXhwYW5kZWQiLCJ3YXRlckF1dGhvcml0eU5hbWUiLCJoYW5kbGVTZWxlY3RQYXRob2dlbkNsaWNrIiwiYW5hbHl0aWNzVHJhY2siLCJ1dGlsaXR5X25hbWUiLCJwdXNoIiwiZmV0Y2hGb3JUYWJTZWxlY3Rpb24iLCJ0YWIiLCJheGlvcyIsInRoZW4iLCJyZXNwb25zZSIsInJlc3BvbnNlRGF0YSIsImhhbmRsZVRhYlNlbGVjdGlvbkNsaWNrIiwiaW5pdGlhbGl6ZURyaWxsZWRBcmVhIiwiX3RvQ29uc3VtYWJsZUFycmF5MiIsImluaXRpYWxpemVDb21wb25lbnQiLCJ1cGRhdGVOYXZDb250ZXh0IiwidXNlRWZmZWN0IiwicGF0aG9nZW5UaXRsZSIsImZpbmQiLCJpdGVtIiwiZHJvcERvd25UaXRsZSIsIkZyYWdtZW50IiwiQ29udGVudCIsImxlbmd0aCIsIkFjdGlvbnNDb250YWluZXIiLCJ0aXRsZSIsInZhcmlhbnQiLCJJdGVtIiwiaHJlZiIsInRleHRBbGlnbiIsIkZpcnN0U2VjdGlvbiIsIldiZVN1bW1hcnlCYXIiLCJTZWNvbmRTZWN0aW9uIiwiU2VhcmNoSW5wdXQiLCJvbkNoYW5nZUJlaGF2aW9yIiwiVGFicyIsImhhbmRsZU9uQ2xpY2siLCJNYXBUYWJsZUNvbnRhaW5lciIsIlNwaW5uZXIiLCJNYXAiLCJhcmVhVG9DZW50ZXJCeSIsImVkZ2VzIiwicG9pbnRzIiwibWFwQm94U3R5bGUiLCJLYW5kb1RhYmxlIiwib25Sb3dFeHBhbmRUb2dnbGVkIiwiZXhwYW5kYWJsZVJvd3MiLCJwYWdpbmF0aW9uUGVyUGFnZSIsInJvd0NvbXBvbmVudCIsIkV4cGFuZGVkQ29tcG9uZW50IiwiZXhwYW5kYWJsZVJvd3NDb21wb25lbnRQcm9wcyIsImRlZmF1bHRTb3J0RmllbGRJZCIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwicCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCB7IFNlYXJjaElucHV0IH0gZnJvbSAnLi9TZWFyY2hJbnB1dCc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgR3JhcGhXcmFwcGVyIH0gZnJvbSAnLi9HcmFwaFdyYXBwZXInO1xuaW1wb3J0IHsgZmFDaGV2cm9uRG93biwgZmFDaGV2cm9uVXAgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IHVwZGF0ZU5hdkNvbnRleHQgfSBmcm9tICcuLi8uLi9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IHsga0Zvcm1hdHRlciB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9UaG91c2FuZHNUb0snO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRHJpbGxEb3duSWNvbiB9IGZyb20gJy4vRHJpbGxEb3duSWNvbi5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQmFzZUxldmVsIH0gZnJvbSAnLi9CYXNlTGV2ZWwuc3ZnJztcbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ3JlYWN0LWRhdGEtdGFibGUtY29tcG9uZW50JztcbmltcG9ydCB7IGxldmVsTlZMIH0gZnJvbSAnLi4vQ292aWRQYWdlL2NvbXBvbmVudHMvbnZsU3RhdHVzSGVscGVyJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJy4uLy4uL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgeyBLYW5kb1RhYmxlIH0gZnJvbSAnc3JjL3VpLWtpdC9LYW5kb1RhYmxlL0thbmRvVGFibGUnO1xuaW1wb3J0IHsgVGFicyB9IGZyb20gJy4vVGFicyc7XG5pbXBvcnQgdXNlS2FuZG9GZXRjaCBmcm9tICcuLi8uLi9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICcuLi8uLi9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCBEcm9wZG93biBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duJztcbmltcG9ydCBEcm9wZG93bkJ1dHRvbiBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duQnV0dG9uJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgVHJ1bmNhdGUgZnJvbSAnLi4vLi4vdXRpbGl0aWVzL1RydW5jYXRlJztcbmltcG9ydCB7IEV4cGFuZGVkQ29tcG9uZW50IH0gZnJvbSAnLi9FeHBhbmRhYmxlQ29tcG9uZW50JztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyBXYmVTdW1tYXJ5QmFyIH0gZnJvbSAnLi9XYmVTdW1tYXJ5QmFyJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJy4uLy4uL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBVc2VLYW5kb0ZldGNoIGZyb20gJ3NyYy9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHtcbiAgZGF5Rm9ybWF0RnJvbVRpbWUsXG4gIHVzZVVzZXJTZWxlY3RlZERhdGVGb3JtYXQsXG59IGZyb20gJ3NyYy9ob29rcy91c2VVc2VyVGltZVpvbmUnO1xuY29uc3QgVEFCTEVfUk9XU19QRVJfUEFHRSA9IDI1O1xuY29uc3QgTUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEUgPSAnY2t6emtqc2k3MDA1ZjE0bzlpbTBtY3pzOSc7XG5cbmV4cG9ydCBjb25zdCBXYmVEYXNoYm9hcmRQYWdlID0gKCkgPT4ge1xuICBjb25zdCBnZXRXQUlkID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpO1xuICB9O1xuICBjb25zdCBmZXRjaFVybCA9IChmaXJzdFBhcmFtKSA9PiB7XG4gICAgcmV0dXJuIGAvYXBpX3VpL3diZV9kYXNoYm9hcmQvJHtzZWxlY3RlZFBhdGhvZ2VufS8ke2ZpcnN0UGFyYW19P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dldFdBSWQoKX1gO1xuICB9O1xuICBjb25zdCBwYXRob2dlbnNVcmwgPSAoKSA9PlxuICAgIHVybHMoeyB3YXRlckF1dGhvcml0eUlkOiBnZXRXQUlkKCkgfSkud2JlRGFzaGJvYXJkLnBhdGhvZ2Vucy51cmw7XG4gIGNvbnN0IERFRkFVTFRfVEFCUyA9IFtcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jaXRpZXMnKSxcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5tb25pdG9yZWRfYXJlYXMnKSxcbiAgXTtcbiAgY29uc3QgY29udmVydFRhYk5hbWVUb1BhcmFtID0gKHRhYl9uYW1lOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodGFiX25hbWUgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmNpdGllcycpKSB7XG4gICAgICByZXR1cm4gJ2NpdHknO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0YWJfbmFtZSA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJylcbiAgICApIHtcbiAgICAgIHJldHVybiAnbW9uaXRvcmVkJztcbiAgICB9XG5cbiAgICByZXR1cm4gJ2NpdHknO1xuICB9O1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG5cbiAgY29uc3QgZ2V0UGF0aG9nZW5OYW1lID0gKHBhdGhvZ2VuKSA9PiB7XG4gICAgcmV0dXJuIHBhdGhvZ2VuID09PSAnQ292aWQgSGFjaCcgPyAnU0FSUy1Db1YtMicgOiBwYXRob2dlbjtcbiAgfTtcblxuICBjb25zdCBnZXRQYXRob2dlbiA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdwYXRob2dlbicpIHx8ICdjb3ZpZCc7XG4gIH07XG5cbiAgY29uc3QgW2N1cnJlbnREYXRhLCBzZXRDdXJyZW50RGF0YV0gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFttYXBBcmVhcywgc2V0TWFwQXJlYXNdID0gdXNlU3RhdGU8YW55W10+KFtdKTtcbiAgY29uc3QgW21hcFpvb20sIHNldE1hcFpvb21dID0gdXNlU3RhdGU8YW55W10+KFtdKTtcbiAgY29uc3QgW3Jvd3MsIHNldFJvd3NdID0gdXNlU3RhdGU8YW55PihbXSk7XG4gIGNvbnN0IFt0YWJzLCBzZXRUYWJzXSA9IHVzZVN0YXRlPHN0cmluZ1tdPihERUZBVUxUX1RBQlMpO1xuICBjb25zdCBbc2VsZWN0ZWRUYWIsIHNldFNlbGVjdGVkVGFiXSA9IHVzZVN0YXRlPHN0cmluZz4odGFic1swXSk7XG4gIGNvbnN0IFtzZWxlY3RlZFBhdGhvZ2VuLCBzZXRTZWxlY3RlZFBhdGhvZ2VuXSA9IHVzZVN0YXRlPHN0cmluZz4oXG4gICAgZ2V0UGF0aG9nZW4oKSxcbiAgKTtcbiAgY29uc3QgeyBkYXRhLCBpc0ZldGNoaW5nLCBzZXRGZXRjaGluZyB9ID0gdXNlS2FuZG9GZXRjaChcbiAgICBmZXRjaFVybChjb252ZXJ0VGFiTmFtZVRvUGFyYW0oc2VsZWN0ZWRUYWIpKSxcbiAgKTtcbiAgY29uc3QgeyBkYXRhOiBwYXRob2dlbnMsIGlzRmV0Y2hpbmc6IGlzRmV0Y2hpbmdQYXRob2dlbnMgfSA9IFVzZUthbmRvRmV0Y2goXG4gICAgcGF0aG9nZW5zVXJsKCksXG4gICk7XG5cbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuICBjb25zdCBnbG9iYWxEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZ2xvYmFsX2RhdGEsXG4gICk7XG4gIGNvbnN0IGlzUnRsOiBib29sZWFuID0gbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyB0cnVlIDogZmFsc2U7XG4gIGNvbnN0IGNvbG9yRm9yUm93ID0gKHJvdykgPT4ge1xuICAgIGxldCBxdWFsaXR5O1xuICAgIGlmICghcm93LnNhbXBsZV9hY3RpdmUpIHtcbiAgICAgIHF1YWxpdHkgPSAnaW5hY3RpdmUtc2FtcGxpbmcnO1xuICAgIH0gZWxzZSBpZiAoaXNJbmZlY3RlZChyb3cubnZsKSkge1xuICAgICAgcXVhbGl0eSA9ICdpbmZlY3RlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHF1YWxpdHkgPSAnY2xlYW4nO1xuICAgIH1cblxuICAgIHJldHVybiBgcm93X25hbWUtLSR7cXVhbGl0eX1gO1xuICB9O1xuXG4gIGNvbnN0IHVzZXJGb3JtYXQgPSB1c2VVc2VyU2VsZWN0ZWREYXRlRm9ybWF0KCk7XG4gIGNvbnN0IGNvbHVtbnM6IGFueSA9IFJlYWN0LnVzZU1lbW8oXG4gICAgKCkgPT4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5uYW1lJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubmFtZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbmFtZTogc3RyaW5nOyBudmw6IG51bWJlcjsgaGFzX2NoaWxkcmVuOiBib29sZWFuIH0pID0+IChcbiAgICAgICAgICA8Um93TmFtZSBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgcm93X25hbWUgJHtjb2xvckZvclJvdyhyb3cpfWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICBoYW5kbGVBcmVhQ2xpY2socm93KTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydleHBhbmRhYmxlLWljb24nfT5cbiAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgIHtyb3cuaGFzX2NoaWxkcmVuICYmIDxEcmlsbERvd25JY29uIC8+fVxuICAgICAgICAgICAgICAgICAgeyFyb3cuaGFzX2NoaWxkcmVuICYmIDxCYXNlTGV2ZWwgLz59XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnbmFtZSd9PlxuICAgICAgICAgICAgICAgIDxUcnVuY2F0ZSBjaGFyYWN0ZXJzPXszfSBpbmhlcml0VGV4dEFsaWduPXt0cnVlfT5cbiAgICAgICAgICAgICAgICAgIHtyb3cubmFtZX1cbiAgICAgICAgICAgICAgICA8L1RydW5jYXRlPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1Jvd05hbWU+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5udmxfc2NvcmUnKSxcbiAgICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5udmwsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IG52bDogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj57cm93Lm52bH08L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnBlcmNlbnRhZ2VfZnJvbV9sYXN0X3NhbXBsaW5nJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubnZsX2NoYW5nZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbnZsX2NoYW5nZTogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2x0cicsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGNvbG9yOiAnIzAwMDAwMCcsIG1hcmdpbjogJzAgNnB4JyB9fT5cbiAgICAgICAgICAgICAge3Jvdy5udmxfY2hhbmdlfSVcbiAgICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgICAgICAgaWNvbj17cm93Lm52bF9jaGFuZ2UgPiAwID8gZmFDaGV2cm9uVXAgOiBmYUNoZXZyb25Eb3dufVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubGFzdF9zYW1wbGVkJyksXG4gICAgICAgIHNlbGVjdG9yOiAnbGFzdF9zYW1wbGVkJyxcbiAgICAgICAgc29ydGFibGU6IChyb3cpID0+IHJvdy5sYXN0X3VwZGF0ZWQsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbGFzdF91cGRhdGVkOiBzdHJpbmcgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPlxuICAgICAgICAgICAge3Jvdy5sYXN0X3VwZGF0ZWQgPT09IG51bGxcbiAgICAgICAgICAgICAgPyAnLSdcbiAgICAgICAgICAgICAgOiBkYXlGb3JtYXRGcm9tVGltZShyb3cubGFzdF91cGRhdGVkLCB1c2VyRm9ybWF0KX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnRyZW5kX2dyYXBoJyksXG4gICAgICAgIHNlbGVjdG9yOiAndHJlbmRfZ3JhcGgnLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgY2VsbDogKHJvdzogeyBpZDogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj5cbiAgICAgICAgICAgIDxHcmFwaFdyYXBwZXJcbiAgICAgICAgICAgICAga2V5PXtyb3cuaWR9XG4gICAgICAgICAgICAgIHJvdz17cm93fVxuICAgICAgICAgICAgICB3YXRlcl9hdXRob3JpdHlfaWQ9e2dldFdBSWQoKX1cbiAgICAgICAgICAgICAgcGF0aG9nZW49e3NlbGVjdGVkUGF0aG9nZW59XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQucG9wdWxhdGlvbicpLFxuICAgICAgICBzZWxlY3RvcjogKHJvdykgPT4gcm93LnBvcHVsYXRpb24sXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IHBvcHVsYXRpb246IHN0cmluZyB9KSA9PiAoXG4gICAgICAgICAgPGRpdiBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCI+XG4gICAgICAgICAgICB7a0Zvcm1hdHRlcihwYXJzZUludChyb3cucG9wdWxhdGlvbikpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFtpc1J0bCwgc2VsZWN0ZWRQYXRob2dlbiwgdXNlckZvcm1hdF0sXG4gICk7XG5cbiAgY29uc3QgaW5pdGlhbGl6ZU1hcEFyZWFzID0gKGFyZWFzKSA9PiB7XG4gICAgY29uc3QgbWFwcGVkV2l0aENvbG9yID0gYXJlYXMubWFwKChhOiBhbnkpID0+IHtcbiAgICAgIGEud2JlX2Rhc2hib2FyZF9uYW1lID0gYS5uYW1lO1xuICAgICAgYS5zaG93Q29sb3JPbmx5SW5Cb3JkZXJzID0gdHJ1ZTtcblxuICAgICAgaWYgKCFhLnNhbXBsZV9hY3RpdmUpIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwO1xuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzSW5mZWN0ZWQoYS5udmwpKSB7XG4gICAgICAgIGEuY29sb3IgPSB0aGVtZS5jb2xvclNjaGVtZS5kYXRhLlIxMDA7XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLmRhdGEuRzEwMDtcbiAgICAgICAgcmV0dXJuIGE7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBzZXRNYXBBcmVhcyhtYXBwZWRXaXRoQ29sb3IpO1xuICB9O1xuXG4gIGNvbnN0IHpvb21Ub0FyZWEgPSAoYXJlYSkgPT4ge1xuICAgIGFyZWEuc2hhcGVfZGF0YSAhPT0gdW5kZWZpbmVkICYmIHNldE1hcFpvb20oYXJlYS5zaGFwZV9kYXRhKTtcbiAgfTtcblxuICBjb25zdCB6b29tQWxsQXJlYXMgPSAoZGF0YSkgPT4ge1xuICAgIGNvbnN0IHNoYXBlRGF0YSA9IGRhdGEubWFwKChkYXR1bSkgPT4ge1xuICAgICAgcmV0dXJuIGRhdHVtLnNoYXBlX2RhdGE7XG4gICAgfSk7XG5cbiAgICBzZXRNYXBab29tKHNoYXBlRGF0YSk7XG4gIH07XG5cbiAgY29uc3QgaXNJbmZlY3RlZCA9IChudmw6IG51bWJlcikgPT4ge1xuICAgIGlmIChsZXZlbE5WTChudmwpID09PSAnY2xlYW4nKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxldmVsTlZMKG52bCkgPT09ICdsb3cnIHx8XG4gICAgICBsZXZlbE5WTChudmwpID09PSAnbWVkaXVtJyB8fFxuICAgICAgbGV2ZWxOVkwobnZsKSA9PT0gJ2hpZ2gnXG4gICAgKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PlxuICAgICAgc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgKTtcblxuICBjb25zdCBkaXI6IERpcmVjdGlvbiA9XG4gICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyBEaXJlY3Rpb24uUlRMIDogRGlyZWN0aW9uLkxUUjtcblxuICBjb25zdCBmaWx0ZXJSZXN1bHRzQW5kU2V0Um93cyA9ICh0ZXh0OiBzdHJpbmcpID0+IHtcbiAgICBsZXQgcmVzdWx0cyA9IGN1cnJlbnREYXRhLmZpbHRlcihmdW5jdGlvbiAoZWw6IGFueSkge1xuICAgICAgcmV0dXJuIGVsLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXh0LnRvTG93ZXJDYXNlKCkpO1xuICAgIH0pO1xuXG4gICAgc2V0Um93cyhyZXN1bHRzKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVPblJvd0V4cGFuZCA9IChleHBhbmRlZCwgcm93KSA9PiB7XG4gICAgZXhwYW5kZWQgJiYgem9vbVRvQXJlYShyb3cpO1xuICAgICFleHBhbmRlZCAmJiB6b29tQWxsQXJlYXMoZGF0YSk7XG4gIH07XG5cbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlOYW1lID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayA9IChwYXRob2dlbikgPT4ge1xuICAgIGFuYWx5dGljc1RyYWNrKCdXQkUgU3RhdHVzIFJlcG9ydCAtIFBhdGhvZ2VuIGNoYW5nZSBjbGlja2VkJywge1xuICAgICAgcGF0aG9nZW46IHBhdGhvZ2VuLFxuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgc2V0U2VsZWN0ZWRQYXRob2dlbihwYXRob2dlbik7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC93YmVfZGFzaGJvYXJkL2luZGV4P2xvY2FsZT0ke25hdkNvbnRleHQubG9jYWxlfSZ3YXRlcl9hdXRob3JpdHlfaWQ9JHt3YXRlckF1dGhvcml0eUlkfSZwYXRob2dlbj0ke3BhdGhvZ2VufWAsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBmZXRjaEZvclRhYlNlbGVjdGlvbiA9ICh0YWIpID0+IHtcbiAgICBzZXRGZXRjaGluZyh0cnVlKTtcbiAgICBheGlvcy5nZXQoZmV0Y2hVcmwodGFiKSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGxldCByZXNwb25zZURhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG5cbiAgICAgIHNldEZldGNoaW5nKGZhbHNlKTtcbiAgICAgIHNldFRhYnMoREVGQVVMVF9UQUJTKTtcbiAgICAgIHNldFJvd3MocmVzcG9uc2VEYXRhKTtcbiAgICAgIHNldEN1cnJlbnREYXRhKHJlc3BvbnNlRGF0YSk7XG4gICAgICBpbml0aWFsaXplTWFwQXJlYXMocmVzcG9uc2VEYXRhKTtcbiAgICAgIHpvb21BbGxBcmVhcyhyZXNwb25zZURhdGEpO1xuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVRhYlNlbGVjdGlvbkNsaWNrID0gKHRhYikgPT4ge1xuICAgIGlmICghaXNGZXRjaGluZykge1xuICAgICAgc2V0U2VsZWN0ZWRUYWIodGFiKTtcblxuICAgICAgaWYgKHRhYiAhPT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY3VzdG9tJykpIHtcbiAgICAgICAgdGFiID1cbiAgICAgICAgICB0YWIgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmNpdGllcycpXG4gICAgICAgICAgICA/ICdjaXR5J1xuICAgICAgICAgICAgOiB0YWIgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLm1vbml0b3JlZF9hcmVhcycpXG4gICAgICAgICAgICA/ICdtb25pdG9yZWQnXG4gICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgIGZldGNoRm9yVGFiU2VsZWN0aW9uKHRhYik7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGluaXRpYWxpemVEcmlsbGVkQXJlYSA9IChyZXNwb25zZSkgPT4ge1xuICAgIGxldCBkYXRhID0gcmVzcG9uc2UuZGF0YS5kYXRhO1xuICAgIHNldFJvd3MoZGF0YSk7XG4gICAgc2V0Q3VycmVudERhdGEoZGF0YSk7XG4gICAgaW5pdGlhbGl6ZU1hcEFyZWFzKGRhdGEpO1xuICAgIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVBcmVhQ2xpY2sgPSAoYXJlYSkgPT4ge1xuICAgIHpvb21Ub0FyZWEoYXJlYSk7XG5cbiAgICBpZiAoYXJlYS5oYXNfY2hpbGRyZW4pIHtcbiAgICAgIHNldFRhYnMoWy4uLnRhYnMsIGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmN1c3RvbScpXSk7XG4gICAgICBzZXRTZWxlY3RlZFRhYihpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jdXN0b20nKSk7XG5cbiAgICAgIGF4aW9zLmdldChmZXRjaFVybChhcmVhLmlkKSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgaW5pdGlhbGl6ZURyaWxsZWRBcmVhKHJlc3BvbnNlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBpbml0aWFsaXplQ29tcG9uZW50ID0gKCkgPT4ge1xuICAgIHNldEN1cnJlbnREYXRhKGRhdGEpO1xuICAgIHNldFJvd3MoZGF0YSk7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1dCRSBTdGF0dXMgUmVwb3J0Jywge1xuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgZGlzcGF0Y2godXBkYXRlTmF2Q29udGV4dCh7IG5hbWU6ICd3YmVfZGFzaGJvYXJkJyB9KSk7XG5cbiAgICBheGlvcy5nZXQoZmV0Y2hVcmwoJ21vbml0b3JlZCcpKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgbGV0IGRhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG5cbiAgICAgIGluaXRpYWxpemVNYXBBcmVhcyhkYXRhKTtcbiAgICAgIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgICB9KTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNGZXRjaGluZyAmJiBkYXRhICE9PSBudWxsKSB7XG4gICAgICBpbml0aWFsaXplQ29tcG9uZW50KCk7XG4gICAgfVxuICB9LCBbaXNGZXRjaGluZywgc2VsZWN0ZWRQYXRob2dlbiwgZGF0YV0pO1xuXG4gIGNvbnN0IHBhdGhvZ2VuVGl0bGUgPVxuICAgICghaXNGZXRjaGluZ1BhdGhvZ2VucyAmJlxuICAgICAgcGF0aG9nZW5zPy5maW5kKFxuICAgICAgICAoaXRlbSkgPT4gaXRlbS50b0xvd2VyQ2FzZSgpID09PSBzZWxlY3RlZFBhdGhvZ2VuLnRvTG93ZXJDYXNlKCksXG4gICAgICApKSB8fFxuICAgICcnO1xuICBjb25zdCBkcm9wRG93blRpdGxlID1cbiAgICBnZXRQYXRob2dlbk5hbWUocGF0aG9nZW5UaXRsZSkgfHxcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8Q29udGVudD5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8aDE+XG4gICAgICAgICAgICB7YCR7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQudGFibGVfbmFtZScpfSAoJHtcbiAgICAgICAgICAgICAgZ2V0UGF0aG9nZW5OYW1lKHBhdGhvZ2VuVGl0bGUpIHx8IGdldFBhdGhvZ2VuTmFtZShnZXRQYXRob2dlbigpKVxuICAgICAgICAgICAgfSlgfVxuICAgICAgICAgIDwvaDE+XG4gICAgICAgICAgeyFpc0ZldGNoaW5nUGF0aG9nZW5zICYmIHBhdGhvZ2Vucy5sZW5ndGggPT09IDAgJiYgKFxuICAgICAgICAgICAgPGgzPntpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKX08L2gzPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7IWlzRmV0Y2hpbmdQYXRob2dlbnMgJiYgcGF0aG9nZW5zLmxlbmd0aCA+IDEgJiYgKFxuICAgICAgICAgICAgICA8RHJvcGRvd25CdXR0b25cbiAgICAgICAgICAgICAgICBpZD1cImRyb3Bkb3duLWJhc2ljLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYnV0dG9uIGJ1dHRvbi0tc29ydCd9XG4gICAgICAgICAgICAgICAgdGl0bGU9e2Ryb3BEb3duVGl0bGUgKyAnICd9XG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7cGF0aG9nZW5zLm1hcCgocGF0aG9nZW4pID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtwYXRob2dlbn1cbiAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayhwYXRob2dlbil9XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHRBbGlnbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyAncmlnaHQnIDogJ2xlZnQnLFxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7Z2V0UGF0aG9nZW5OYW1lKHBhdGhvZ2VuKX1cbiAgICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5JdGVtPlxuICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgPC9Ecm9wZG93bkJ1dHRvbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9BY3Rpb25zQ29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPEZpcnN0U2VjdGlvbj5cbiAgICAgICAgICA8V2JlU3VtbWFyeUJhclxuICAgICAgICAgICAgcGF0aG9nZW49e3NlbGVjdGVkUGF0aG9nZW59XG4gICAgICAgICAgICB3YXRlckF1dGhvcml0eUlkPXt3YXRlckF1dGhvcml0eUlkfVxuICAgICAgICAgICAgaXNSdGw9e2lzUnRsfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvRmlyc3RTZWN0aW9uPlxuXG4gICAgICAgIDxTZWNvbmRTZWN0aW9uPlxuICAgICAgICAgIDxTZWFyY2hJbnB1dCBvbkNoYW5nZUJlaGF2aW9yPXtmaWx0ZXJSZXN1bHRzQW5kU2V0Um93c30gLz5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3RhYnMtY29udGFpbmVyJ30+XG4gICAgICAgICAgICA8VGFic1xuICAgICAgICAgICAgICB0YWJzPXt0YWJzfVxuICAgICAgICAgICAgICBzZWxlY3RlZFRhYj17c2VsZWN0ZWRUYWJ9XG4gICAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2s9e2hhbmRsZVRhYlNlbGVjdGlvbkNsaWNrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8TWFwVGFibGVDb250YWluZXIgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIHtpc0ZldGNoaW5nICYmIDxTcGlubmVyIC8+fVxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydtYXAtY29udGFpbmVyJ30+XG4gICAgICAgICAgICAgIHshaXNGZXRjaGluZyAmJiByb3dzICE9PSBudWxsICYmIG1hcFpvb20gIT09IG51bGwgJiYgKFxuICAgICAgICAgICAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICAgICAgICAgICAgPE1hcFxuICAgICAgICAgICAgICAgICAgICBhcmVhcz17bWFwQXJlYXN9XG4gICAgICAgICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXttYXBab29tfVxuICAgICAgICAgICAgICAgICAgICBlZGdlcz17W119XG4gICAgICAgICAgICAgICAgICAgIHBvaW50cz17W119XG4gICAgICAgICAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxEYXRhfVxuICAgICAgICAgICAgICAgICAgICBtYXBCb3hTdHlsZT17TUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEV9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgeyFpc0ZldGNoaW5nICYmIHJvd3MgIT09IG51bGwgJiYgKFxuICAgICAgICAgICAgICA8S2FuZG9UYWJsZVxuICAgICAgICAgICAgICAgIG9uUm93RXhwYW5kVG9nZ2xlZD17aGFuZGxlT25Sb3dFeHBhbmR9XG4gICAgICAgICAgICAgICAgZGF0YT17cm93c31cbiAgICAgICAgICAgICAgICBjb2x1bW5zPXtjb2x1bW5zfVxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbj17ZGlyfVxuICAgICAgICAgICAgICAgIGV4cGFuZGFibGVSb3dzPXt0cnVlfVxuICAgICAgICAgICAgICAgIHBhZ2luYXRpb25QZXJQYWdlPXtUQUJMRV9ST1dTX1BFUl9QQUdFfVxuICAgICAgICAgICAgICAgIHJvd0NvbXBvbmVudD17RXhwYW5kZWRDb21wb25lbnR9XG4gICAgICAgICAgICAgICAgZXhwYW5kYWJsZVJvd3NDb21wb25lbnRQcm9wcz17eyBwYXRob2dlbjogc2VsZWN0ZWRQYXRob2dlbiB9fVxuICAgICAgICAgICAgICAgIGRlZmF1bHRTb3J0RmllbGRJZD17M31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9NYXBUYWJsZUNvbnRhaW5lcj5cbiAgICAgICAgPC9TZWNvbmRTZWN0aW9uPlxuICAgICAgPC9Db250ZW50PlxuICAgIDwvPlxuICApO1xufTtcblxuY29uc3QgUm93TmFtZSA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgICB3aWR0aDogMTAwJTtcbiAgICAgIFxuICAgIC5yb3dfbmFtZSB7XG4gICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW47ICAgICAgXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCA0cHg7XG4gICAgICAgIFxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLWNsZWFuIHtcbiAgICAgICAgIGNvbG9yOiAjMjdhNjNhOyBcbiAgICAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzI3YTYzYTsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi0taW5mZWN0ZWQge1xuICAgICAgICAgIGNvbG9yOiAjZTEwMDM2O1xuICAgICAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2UxMDAzNjsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi0taW5hY3RpdmUtc2FtcGxpbmcge1xuICAgICAgICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwfTtcbiAgICAgICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7dGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9OyAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgJHsocCkgPT4gKHAuaXNSdGwgPyAncmlnaHQ6IDUxcHg7JyA6ICdsZWZ0OiA1MXB4OycpfVxuICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgICB3aWR0aDogNy41ZW07XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBgO1xuXG5jb25zdCBBY3Rpb25zQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbmNvbnN0IEZpcnN0U2VjdGlvbiA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbjogODVweCAwIDIwcHggMDtcbmA7XG5cbmNvbnN0IFNlY29uZFNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmNmY2ZjO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTdlN2U3O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG5gO1xuXG5jb25zdCBNYXBUYWJsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAubWFwLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgLmV2ZW50LXRpbWVyYW5nZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjbWFwIHtcbiAgICAgIGhlaWdodDogNjl2aDtcbiAgICAgIHdpZHRoOiAzMHZ3O1xuICAgIH1cbiAgfVxuICBbZGF0YS10ZXN0aWQ9J2thbmRvLXRhYmxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIFtkYXRhLWNvbHVtbi1pZD0nMSddIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgLm5hbWUge1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICB3aWR0aDogY2FsYygxMjBweCArIDF2dyk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuMnMgY3ViaWMtYmV6aWVyKDAuNjUsIDAuMDUsIDAuMzYsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zcGlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuYDtcblxuY29uc3QgQ29udGVudCA9IHN0eWxlZC5kaXZgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICBwYWRkaW5nOiA2MHB4IDYwcHg7XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLGVBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFVBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGlCQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxhQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxrQkFBQSxHQUFBVCxPQUFBO0FBRUEsSUFBQVUsUUFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsYUFBQSxHQUFBWCxPQUFBO0FBQTBELElBQUFZLGNBQUEsR0FBQVosT0FBQTtBQUFBLElB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
|
|
429
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfaTE4biIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdFJvdXRlckRvbSIsIl9BbmFseXRpY3MiLCJfU2VhcmNoSW5wdXQiLCJfcmVhY3RGb250YXdlc29tZSIsIl9HcmFwaFdyYXBwZXIiLCJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJfYWN0aW9ucyIsIl9UaG91c2FuZHNUb0siLCJfRHJpbGxEb3duSWNvbiIsIl9CYXNlTGV2ZWwiLCJfcmVhY3REYXRhVGFibGVDb21wb25lbnQiLCJfbnZsU3RhdHVzSGVscGVyIiwiX01hcCIsIl9LYW5kb1RhYmxlIiwiX1RhYnMiLCJfdXNlS2FuZG9GZXRjaDIiLCJfdXNlUXVlcnlVUkwiLCJfRHJvcGRvd24iLCJfRHJvcGRvd25CdXR0b24iLCJfYXhpb3MiLCJfVHJ1bmNhdGUiLCJfRXhwYW5kYWJsZUNvbXBvbmVudCIsIl9TcGlubmVyIiwiX1diZVN1bW1hcnlCYXIiLCJfRXJyb3JCb3VuZGFyeSIsIl90aGVtZSIsIl91c2VLYW5kb0ZldGNoMyIsIl91cmxzIiwiX3VzZVVzZXJUaW1lWm9uZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiVEFCTEVfUk9XU19QRVJfUEFHRSIsIk1BUEJPWF9XQkVfREFTSEJPQVJEX1NUWUxFIiwiV2JlRGFzaGJvYXJkUGFnZSIsImdldFdBSWQiLCJxdWVyeSIsImZldGNoVXJsIiwiZmlyc3RQYXJhbSIsImNvbmNhdCIsInNlbGVjdGVkUGF0aG9nZW4iLCJwYXRob2dlbnNVcmwiLCJ1cmxzIiwid2F0ZXJBdXRob3JpdHlJZCIsIndiZURhc2hib2FyZCIsInBhdGhvZ2VucyIsInVybCIsIkRFRkFVTFRfVEFCUyIsImkxOG4iLCJ0IiwiY29udmVydFRhYk5hbWVUb1BhcmFtIiwidGFiX25hbWUiLCJ1c2VRdWVyeVVSTCIsImdldFBhdGhvZ2VuTmFtZSIsInBhdGhvZ2VuIiwiZ2V0UGF0aG9nZW4iLCJfdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl91c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheTIiLCJjdXJyZW50RGF0YSIsInNldEN1cnJlbnREYXRhIiwiX3VzZVN0YXRlMyIsIl91c2VTdGF0ZTQiLCJtYXBBcmVhcyIsInNldE1hcEFyZWFzIiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJtYXBab29tIiwic2V0TWFwWm9vbSIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4Iiwicm93cyIsInNldFJvd3MiLCJfdXNlU3RhdGU5IiwiX3VzZVN0YXRlMTAiLCJ0YWJzIiwic2V0VGFicyIsIl91c2VTdGF0ZTExIiwiX3VzZVN0YXRlMTIiLCJzZWxlY3RlZFRhYiIsInNldFNlbGVjdGVkVGFiIiwiX3VzZVN0YXRlMTMiLCJfdXNlU3RhdGUxNCIsInNldFNlbGVjdGVkUGF0aG9nZW4iLCJfdXNlS2FuZG9GZXRjaCIsInVzZUthbmRvRmV0Y2giLCJkYXRhIiwiaXNGZXRjaGluZyIsInNldEZldGNoaW5nIiwiX1VzZUthbmRvRmV0Y2giLCJVc2VLYW5kb0ZldGNoIiwiaXNGZXRjaGluZ1BhdGhvZ2VucyIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJuYXZDb250ZXh0IiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsIm5hdl9jb250ZXh0X2RhdGEiLCJnbG9iYWxEYXRhIiwiZ2xvYmFsX2RhdGEiLCJpc1J0bCIsImxvY2FsZSIsImNvbG9yRm9yUm93Iiwicm93IiwicXVhbGl0eSIsInNhbXBsZV9hY3RpdmUiLCJpc0luZmVjdGVkIiwibnZsIiwidXNlckZvcm1hdCIsInVzZVVzZXJTZWxlY3RlZERhdGVGb3JtYXQiLCJjb2x1bW5zIiwiUmVhY3QiLCJ1c2VNZW1vIiwibmFtZSIsInNlbGVjdG9yIiwic29ydGFibGUiLCJjZWxsIiwiY3JlYXRlRWxlbWVudCIsIlJvd05hbWUiLCJjbGFzc05hbWUiLCJvbkNsaWNrIiwiaGFuZGxlQXJlYUNsaWNrIiwiaGFzX2NoaWxkcmVuIiwiUmVhY3RDb21wb25lbnQiLCJjaGFyYWN0ZXJzIiwiaW5oZXJpdFRleHRBbGlnbiIsIm52bF9jaGFuZ2UiLCJzdHlsZSIsImRpcmVjdGlvbiIsImNvbG9yIiwibWFyZ2luIiwiRm9udEF3ZXNvbWVJY29uIiwiaWNvbiIsImZhQ2hldnJvblVwIiwiZmFDaGV2cm9uRG93biIsImxhc3RfdXBkYXRlZCIsImRheUZvcm1hdEZyb21UaW1lIiwiR3JhcGhXcmFwcGVyIiwiaWQiLCJ3YXRlcl9hdXRob3JpdHlfaWQiLCJwb3B1bGF0aW9uIiwia0Zvcm1hdHRlciIsInBhcnNlSW50IiwiaW5pdGlhbGl6ZU1hcEFyZWFzIiwiYXJlYXMiLCJtYXBwZWRXaXRoQ29sb3IiLCJtYXAiLCJhIiwid2JlX2Rhc2hib2FyZF9uYW1lIiwic2hvd0NvbG9yT25seUluQm9yZGVycyIsInRoZW1lIiwiY29sb3JTY2hlbWUiLCJuYXR1cmFsIiwibjYwIiwiUjEwMCIsIkcxMDAiLCJ6b29tVG9BcmVhIiwiYXJlYSIsInNoYXBlX2RhdGEiLCJ1bmRlZmluZWQiLCJ6b29tQWxsQXJlYXMiLCJzaGFwZURhdGEiLCJkYXR1bSIsImxldmVsTlZMIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJkaXIiLCJEaXJlY3Rpb24iLCJSVEwiLCJMVFIiLCJmaWx0ZXJSZXN1bHRzQW5kU2V0Um93cyIsInRleHQiLCJyZXN1bHRzIiwiZmlsdGVyIiwiZWwiLCJ0b0xvd2VyQ2FzZSIsImluY2x1ZGVzIiwiaGFuZGxlT25Sb3dFeHBhbmQiLCJleHBhbmRlZCIsIndhdGVyQXV0aG9yaXR5TmFtZSIsImhhbmRsZVNlbGVjdFBhdGhvZ2VuQ2xpY2siLCJhbmFseXRpY3NUcmFjayIsInV0aWxpdHlfbmFtZSIsInB1c2giLCJmZXRjaEZvclRhYlNlbGVjdGlvbiIsInRhYiIsImF4aW9zIiwidGhlbiIsInJlc3BvbnNlIiwicmVzcG9uc2VEYXRhIiwiaGFuZGxlVGFiU2VsZWN0aW9uQ2xpY2siLCJpbml0aWFsaXplRHJpbGxlZEFyZWEiLCJfdG9Db25zdW1hYmxlQXJyYXkyIiwiaW5pdGlhbGl6ZUNvbXBvbmVudCIsInVwZGF0ZU5hdkNvbnRleHQiLCJ1c2VFZmZlY3QiLCJwYXRob2dlblRpdGxlIiwiZmluZCIsIml0ZW0iLCJkcm9wRG93blRpdGxlIiwiRnJhZ21lbnQiLCJDb250ZW50IiwibGVuZ3RoIiwiQWN0aW9uc0NvbnRhaW5lciIsInRpdGxlIiwidmFyaWFudCIsIkl0ZW0iLCJocmVmIiwidGV4dEFsaWduIiwiRmlyc3RTZWN0aW9uIiwiV2JlU3VtbWFyeUJhciIsIlNlY29uZFNlY3Rpb24iLCJTZWFyY2hJbnB1dCIsIm9uQ2hhbmdlQmVoYXZpb3IiLCJUYWJzIiwiaGFuZGxlT25DbGljayIsIk1hcFRhYmxlQ29udGFpbmVyIiwiU3Bpbm5lciIsIk1hcCIsImFyZWFUb0NlbnRlckJ5IiwiZWRnZXMiLCJwb2ludHMiLCJtYXBCb3hTdHlsZSIsIkthbmRvVGFibGUiLCJvblJvd0V4cGFuZFRvZ2dsZWQiLCJleHBhbmRhYmxlUm93cyIsInBhZ2luYXRpb25QZXJQYWdlIiwicm93Q29tcG9uZW50IiwiRXhwYW5kZWRDb21wb25lbnQiLCJleHBhbmRhYmxlUm93c0NvbXBvbmVudFByb3BzIiwiZGVmYXVsdFNvcnRGaWVsZElkIiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwicCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZS50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgdXNlSGlzdG9yeSB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCB7IFNlYXJjaElucHV0IH0gZnJvbSAnLi9TZWFyY2hJbnB1dCc7XG5pbXBvcnQgeyBGb250QXdlc29tZUljb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvcmVhY3QtZm9udGF3ZXNvbWUnO1xuaW1wb3J0IHsgR3JhcGhXcmFwcGVyIH0gZnJvbSAnLi9HcmFwaFdyYXBwZXInO1xuaW1wb3J0IHsgZmFDaGV2cm9uRG93biwgZmFDaGV2cm9uVXAgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJy4uLy4uL3N0b3JlL3Jvb3RSZWR1Y2VyJztcbmltcG9ydCB7IHVwZGF0ZU5hdkNvbnRleHQgfSBmcm9tICcuLi8uLi9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IHsga0Zvcm1hdHRlciB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9UaG91c2FuZHNUb0snO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgRHJpbGxEb3duSWNvbiB9IGZyb20gJy4vRHJpbGxEb3duSWNvbi5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQmFzZUxldmVsIH0gZnJvbSAnLi9CYXNlTGV2ZWwuc3ZnJztcbmltcG9ydCB7IERpcmVjdGlvbiB9IGZyb20gJ3JlYWN0LWRhdGEtdGFibGUtY29tcG9uZW50JztcbmltcG9ydCB7IGxldmVsTlZMIH0gZnJvbSAnLi4vQ292aWRQYWdlL2NvbXBvbmVudHMvbnZsU3RhdHVzSGVscGVyJztcbmltcG9ydCB7IE1hcCB9IGZyb20gJy4uLy4uL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgeyBLYW5kb1RhYmxlIH0gZnJvbSAnc3JjL3VpLWtpdC9LYW5kb1RhYmxlL0thbmRvVGFibGUnO1xuaW1wb3J0IHsgVGFicyB9IGZyb20gJy4vVGFicyc7XG5pbXBvcnQgdXNlS2FuZG9GZXRjaCBmcm9tICcuLi8uLi9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICcuLi8uLi9ob29rcy91c2VRdWVyeVVSTCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCBEcm9wZG93biBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duJztcbmltcG9ydCBEcm9wZG93bkJ1dHRvbiBmcm9tICdyZWFjdC1ib290c3RyYXAvY2pzL0Ryb3Bkb3duQnV0dG9uJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgVHJ1bmNhdGUgZnJvbSAnLi4vLi4vdXRpbGl0aWVzL1RydW5jYXRlJztcbmltcG9ydCB7IEV4cGFuZGVkQ29tcG9uZW50IH0gZnJvbSAnLi9FeHBhbmRhYmxlQ29tcG9uZW50JztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL1NwaW5uZXIvU3Bpbm5lcic7XG5pbXBvcnQgeyBXYmVTdW1tYXJ5QmFyIH0gZnJvbSAnLi9XYmVTdW1tYXJ5QmFyJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJy4uLy4uL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCB7IHRoZW1lIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3RoZW1lL3RoZW1lJztcbmltcG9ydCBVc2VLYW5kb0ZldGNoIGZyb20gJ3NyYy9ob29rcy91c2VLYW5kb0ZldGNoJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHtcbiAgZGF5Rm9ybWF0RnJvbVRpbWUsXG4gIHVzZVVzZXJTZWxlY3RlZERhdGVGb3JtYXQsXG59IGZyb20gJ3NyYy9ob29rcy91c2VVc2VyVGltZVpvbmUnO1xuY29uc3QgVEFCTEVfUk9XU19QRVJfUEFHRSA9IDI1O1xuY29uc3QgTUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEUgPSAnY2t6emtqc2k3MDA1ZjE0bzlpbTBtY3pzOSc7XG5cbmV4cG9ydCBjb25zdCBXYmVEYXNoYm9hcmRQYWdlID0gKCkgPT4ge1xuICBjb25zdCBnZXRXQUlkID0gKCkgPT4ge1xuICAgIHJldHVybiBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpO1xuICB9O1xuICBjb25zdCBmZXRjaFVybCA9IChmaXJzdFBhcmFtKSA9PiB7XG4gICAgcmV0dXJuIGAvYXBpX3VpL3diZV9kYXNoYm9hcmQvJHtzZWxlY3RlZFBhdGhvZ2VufS8ke2ZpcnN0UGFyYW19P3dhdGVyX2F1dGhvcml0eV9pZD0ke2dldFdBSWQoKX1gO1xuICB9O1xuICBjb25zdCBwYXRob2dlbnNVcmwgPSAoKSA9PlxuICAgIHVybHMoeyB3YXRlckF1dGhvcml0eUlkOiBnZXRXQUlkKCkgfSkud2JlRGFzaGJvYXJkLnBhdGhvZ2Vucy51cmw7XG4gIGNvbnN0IERFRkFVTFRfVEFCUyA9IFtcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jaXRpZXMnKSxcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5tb25pdG9yZWRfYXJlYXMnKSxcbiAgXTtcbiAgY29uc3QgY29udmVydFRhYk5hbWVUb1BhcmFtID0gKHRhYl9uYW1lOiBzdHJpbmcpID0+IHtcbiAgICBpZiAodGFiX25hbWUgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmNpdGllcycpKSB7XG4gICAgICByZXR1cm4gJ2NpdHknO1xuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0YWJfbmFtZSA9PT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubW9uaXRvcmVkX2FyZWFzJylcbiAgICApIHtcbiAgICAgIHJldHVybiAnbW9uaXRvcmVkJztcbiAgICB9XG5cbiAgICByZXR1cm4gJ2NpdHknO1xuICB9O1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG5cbiAgY29uc3QgZ2V0UGF0aG9nZW5OYW1lID0gKHBhdGhvZ2VuKSA9PiB7XG4gICAgcmV0dXJuIHBhdGhvZ2VuID09PSAnQ292aWQgSGFjaCcgPyAnU0FSUy1Db1YtMicgOiBwYXRob2dlbjtcbiAgfTtcblxuICBjb25zdCBnZXRQYXRob2dlbiA9ICgpID0+IHtcbiAgICByZXR1cm4gcXVlcnkuZ2V0KCdwYXRob2dlbicpIHx8ICdjb3ZpZCc7XG4gIH07XG5cbiAgY29uc3QgW2N1cnJlbnREYXRhLCBzZXRDdXJyZW50RGF0YV0gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFttYXBBcmVhcywgc2V0TWFwQXJlYXNdID0gdXNlU3RhdGU8YW55W10+KFtdKTtcbiAgY29uc3QgW21hcFpvb20sIHNldE1hcFpvb21dID0gdXNlU3RhdGU8YW55W10+KFtdKTtcbiAgY29uc3QgW3Jvd3MsIHNldFJvd3NdID0gdXNlU3RhdGU8YW55PihbXSk7XG4gIGNvbnN0IFt0YWJzLCBzZXRUYWJzXSA9IHVzZVN0YXRlPHN0cmluZ1tdPihERUZBVUxUX1RBQlMpO1xuICBjb25zdCBbc2VsZWN0ZWRUYWIsIHNldFNlbGVjdGVkVGFiXSA9IHVzZVN0YXRlPHN0cmluZz4odGFic1swXSk7XG4gIGNvbnN0IFtzZWxlY3RlZFBhdGhvZ2VuLCBzZXRTZWxlY3RlZFBhdGhvZ2VuXSA9IHVzZVN0YXRlPHN0cmluZz4oXG4gICAgZ2V0UGF0aG9nZW4oKSxcbiAgKTtcbiAgY29uc3QgeyBkYXRhLCBpc0ZldGNoaW5nLCBzZXRGZXRjaGluZyB9ID0gdXNlS2FuZG9GZXRjaChcbiAgICBmZXRjaFVybChjb252ZXJ0VGFiTmFtZVRvUGFyYW0oc2VsZWN0ZWRUYWIpKSxcbiAgKTtcbiAgY29uc3QgeyBkYXRhOiBwYXRob2dlbnMsIGlzRmV0Y2hpbmc6IGlzRmV0Y2hpbmdQYXRob2dlbnMgfSA9IFVzZUthbmRvRmV0Y2goXG4gICAgcGF0aG9nZW5zVXJsKCksXG4gICk7XG5cbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuICBjb25zdCBnbG9iYWxEYXRhID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUuZ2xvYmFsX2RhdGEsXG4gICk7XG4gIGNvbnN0IGlzUnRsOiBib29sZWFuID0gbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyB0cnVlIDogZmFsc2U7XG4gIGNvbnN0IGNvbG9yRm9yUm93ID0gKHJvdykgPT4ge1xuICAgIGxldCBxdWFsaXR5O1xuICAgIGlmICghcm93LnNhbXBsZV9hY3RpdmUpIHtcbiAgICAgIHF1YWxpdHkgPSAnaW5hY3RpdmUtc2FtcGxpbmcnO1xuICAgIH0gZWxzZSBpZiAoaXNJbmZlY3RlZChyb3cubnZsKSkge1xuICAgICAgcXVhbGl0eSA9ICdpbmZlY3RlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHF1YWxpdHkgPSAnY2xlYW4nO1xuICAgIH1cblxuICAgIHJldHVybiBgcm93X25hbWUtLSR7cXVhbGl0eX1gO1xuICB9O1xuXG4gIGNvbnN0IHVzZXJGb3JtYXQgPSB1c2VVc2VyU2VsZWN0ZWREYXRlRm9ybWF0KCk7XG4gIGNvbnN0IGNvbHVtbnM6IGFueSA9IFJlYWN0LnVzZU1lbW8oXG4gICAgKCkgPT4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5uYW1lJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubmFtZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbmFtZTogc3RyaW5nOyBudmw6IG51bWJlcjsgaGFzX2NoaWxkcmVuOiBib29sZWFuIH0pID0+IChcbiAgICAgICAgICA8Um93TmFtZSBpc1J0bD17aXNSdGx9PlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPXtgcm93X25hbWUgJHtjb2xvckZvclJvdyhyb3cpfWB9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICBoYW5kbGVBcmVhQ2xpY2socm93KTtcbiAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydleHBhbmRhYmxlLWljb24nfT5cbiAgICAgICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICAgIHtyb3cuaGFzX2NoaWxkcmVuICYmIDxEcmlsbERvd25JY29uIC8+fVxuICAgICAgICAgICAgICAgICAgeyFyb3cuaGFzX2NoaWxkcmVuICYmIDxCYXNlTGV2ZWwgLz59XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPXsnbmFtZSd9PlxuICAgICAgICAgICAgICAgIDxUcnVuY2F0ZSBjaGFyYWN0ZXJzPXszfSBpbmhlcml0VGV4dEFsaWduPXt0cnVlfT5cbiAgICAgICAgICAgICAgICAgIHtyb3cubmFtZX1cbiAgICAgICAgICAgICAgICA8L1RydW5jYXRlPlxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L1Jvd05hbWU+XG4gICAgICAgICksXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5udmxfc2NvcmUnKSxcbiAgICAgICAgc2VsZWN0b3I6IChyb3cpID0+IHJvdy5udmwsXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IG52bDogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj57cm93Lm52bH08L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnBlcmNlbnRhZ2VfZnJvbV9sYXN0X3NhbXBsaW5nJyksXG4gICAgICAgIHNlbGVjdG9yOiAocm93KSA9PiByb3cubnZsX2NoYW5nZSxcbiAgICAgICAgc29ydGFibGU6IHRydWUsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbnZsX2NoYW5nZTogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCJcbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGRpcmVjdGlvbjogJ2x0cicsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuIHN0eWxlPXt7IGNvbG9yOiAnIzAwMDAwMCcsIG1hcmdpbjogJzAgNnB4JyB9fT5cbiAgICAgICAgICAgICAge3Jvdy5udmxfY2hhbmdlfSVcbiAgICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICA8Rm9udEF3ZXNvbWVJY29uXG4gICAgICAgICAgICAgICAgaWNvbj17cm93Lm52bF9jaGFuZ2UgPiAwID8gZmFDaGV2cm9uVXAgOiBmYUNoZXZyb25Eb3dufVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQubGFzdF9zYW1wbGVkJyksXG4gICAgICAgIHNlbGVjdG9yOiAnbGFzdF9zYW1wbGVkJyxcbiAgICAgICAgc29ydGFibGU6IChyb3cpID0+IHJvdy5sYXN0X3VwZGF0ZWQsXG4gICAgICAgIGNlbGw6IChyb3c6IHsgbGFzdF91cGRhdGVkOiBzdHJpbmcgfSkgPT4gKFxuICAgICAgICAgIDxkaXYgZGF0YS10YWc9XCJhbGxvd1Jvd0V2ZW50c1wiPlxuICAgICAgICAgICAge3Jvdy5sYXN0X3VwZGF0ZWQgPT09IG51bGxcbiAgICAgICAgICAgICAgPyAnLSdcbiAgICAgICAgICAgICAgOiBkYXlGb3JtYXRGcm9tVGltZShyb3cubGFzdF91cGRhdGVkLCB1c2VyRm9ybWF0KX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgKSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLnRyZW5kX2dyYXBoJyksXG4gICAgICAgIHNlbGVjdG9yOiAndHJlbmRfZ3JhcGgnLFxuICAgICAgICBzb3J0YWJsZTogdHJ1ZSxcbiAgICAgICAgY2VsbDogKHJvdzogeyBpZDogbnVtYmVyIH0pID0+IChcbiAgICAgICAgICA8ZGl2IGRhdGEtdGFnPVwiYWxsb3dSb3dFdmVudHNcIj5cbiAgICAgICAgICAgIDxHcmFwaFdyYXBwZXJcbiAgICAgICAgICAgICAga2V5PXtyb3cuaWR9XG4gICAgICAgICAgICAgIHJvdz17cm93fVxuICAgICAgICAgICAgICB3YXRlcl9hdXRob3JpdHlfaWQ9e2dldFdBSWQoKX1cbiAgICAgICAgICAgICAgcGF0aG9nZW49e3NlbGVjdGVkUGF0aG9nZW59XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQucG9wdWxhdGlvbicpLFxuICAgICAgICBzZWxlY3RvcjogKHJvdykgPT4gcm93LnBvcHVsYXRpb24sXG4gICAgICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgICAgICBjZWxsOiAocm93OiB7IHBvcHVsYXRpb246IHN0cmluZyB9KSA9PiAoXG4gICAgICAgICAgPGRpdiBkYXRhLXRhZz1cImFsbG93Um93RXZlbnRzXCI+XG4gICAgICAgICAgICB7a0Zvcm1hdHRlcihwYXJzZUludChyb3cucG9wdWxhdGlvbikpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApLFxuICAgICAgfSxcbiAgICBdLFxuICAgIFtpc1J0bCwgc2VsZWN0ZWRQYXRob2dlbiwgdXNlckZvcm1hdF0sXG4gICk7XG5cbiAgY29uc3QgaW5pdGlhbGl6ZU1hcEFyZWFzID0gKGFyZWFzKSA9PiB7XG4gICAgY29uc3QgbWFwcGVkV2l0aENvbG9yID0gYXJlYXMubWFwKChhOiBhbnkpID0+IHtcbiAgICAgIGEud2JlX2Rhc2hib2FyZF9uYW1lID0gYS5uYW1lO1xuICAgICAgYS5zaG93Q29sb3JPbmx5SW5Cb3JkZXJzID0gdHJ1ZTtcblxuICAgICAgaWYgKCFhLnNhbXBsZV9hY3RpdmUpIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwO1xuICAgICAgICByZXR1cm4gYTtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzSW5mZWN0ZWQoYS5udmwpKSB7XG4gICAgICAgIGEuY29sb3IgPSB0aGVtZS5jb2xvclNjaGVtZS5kYXRhLlIxMDA7XG4gICAgICAgIHJldHVybiBhO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYS5jb2xvciA9IHRoZW1lLmNvbG9yU2NoZW1lLmRhdGEuRzEwMDtcbiAgICAgICAgcmV0dXJuIGE7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBzZXRNYXBBcmVhcyhtYXBwZWRXaXRoQ29sb3IpO1xuICB9O1xuXG4gIGNvbnN0IHpvb21Ub0FyZWEgPSAoYXJlYSkgPT4ge1xuICAgIGFyZWEuc2hhcGVfZGF0YSAhPT0gdW5kZWZpbmVkICYmIHNldE1hcFpvb20oYXJlYS5zaGFwZV9kYXRhKTtcbiAgfTtcblxuICBjb25zdCB6b29tQWxsQXJlYXMgPSAoZGF0YSkgPT4ge1xuICAgIGNvbnN0IHNoYXBlRGF0YSA9IGRhdGEubWFwKChkYXR1bSkgPT4ge1xuICAgICAgcmV0dXJuIGRhdHVtLnNoYXBlX2RhdGE7XG4gICAgfSk7XG5cbiAgICBzZXRNYXBab29tKHNoYXBlRGF0YSk7XG4gIH07XG5cbiAgY29uc3QgaXNJbmZlY3RlZCA9IChudmw6IG51bWJlcikgPT4ge1xuICAgIGlmIChsZXZlbE5WTChudmwpID09PSAnY2xlYW4nKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGxldmVsTlZMKG52bCkgPT09ICdsb3cnIHx8XG4gICAgICBsZXZlbE5WTChudmwpID09PSAnbWVkaXVtJyB8fFxuICAgICAgbGV2ZWxOVkwobnZsKSA9PT0gJ2hpZ2gnXG4gICAgKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICByZXR1cm47XG4gIH07XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PlxuICAgICAgc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgKTtcblxuICBjb25zdCBkaXI6IERpcmVjdGlvbiA9XG4gICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyBEaXJlY3Rpb24uUlRMIDogRGlyZWN0aW9uLkxUUjtcblxuICBjb25zdCBmaWx0ZXJSZXN1bHRzQW5kU2V0Um93cyA9ICh0ZXh0OiBzdHJpbmcpID0+IHtcbiAgICBsZXQgcmVzdWx0cyA9IGN1cnJlbnREYXRhLmZpbHRlcihmdW5jdGlvbiAoZWw6IGFueSkge1xuICAgICAgcmV0dXJuIGVsLm5hbWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0ZXh0LnRvTG93ZXJDYXNlKCkpO1xuICAgIH0pO1xuXG4gICAgc2V0Um93cyhyZXN1bHRzKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVPblJvd0V4cGFuZCA9IChleHBhbmRlZCwgcm93KSA9PiB7XG4gICAgZXhwYW5kZWQgJiYgem9vbVRvQXJlYShyb3cpO1xuICAgICFleHBhbmRlZCAmJiB6b29tQWxsQXJlYXMoZGF0YSk7XG4gIH07XG5cbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlOYW1lID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayA9IChwYXRob2dlbikgPT4ge1xuICAgIGFuYWx5dGljc1RyYWNrKCdXQkUgU3RhdHVzIFJlcG9ydCAtIFBhdGhvZ2VuIGNoYW5nZSBjbGlja2VkJywge1xuICAgICAgcGF0aG9nZW46IHBhdGhvZ2VuLFxuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgc2V0U2VsZWN0ZWRQYXRob2dlbihwYXRob2dlbik7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC93YmVfZGFzaGJvYXJkL2luZGV4P2xvY2FsZT0ke25hdkNvbnRleHQubG9jYWxlfSZ3YXRlcl9hdXRob3JpdHlfaWQ9JHt3YXRlckF1dGhvcml0eUlkfSZwYXRob2dlbj0ke3BhdGhvZ2VufWAsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBmZXRjaEZvclRhYlNlbGVjdGlvbiA9ICh0YWIpID0+IHtcbiAgICBzZXRGZXRjaGluZyh0cnVlKTtcbiAgICBheGlvcy5nZXQoZmV0Y2hVcmwodGFiKSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgIGxldCByZXNwb25zZURhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG5cbiAgICAgIHNldEZldGNoaW5nKGZhbHNlKTtcbiAgICAgIHNldFRhYnMoREVGQVVMVF9UQUJTKTtcbiAgICAgIHNldFJvd3MocmVzcG9uc2VEYXRhKTtcbiAgICAgIHNldEN1cnJlbnREYXRhKHJlc3BvbnNlRGF0YSk7XG4gICAgICBpbml0aWFsaXplTWFwQXJlYXMocmVzcG9uc2VEYXRhKTtcbiAgICAgIHpvb21BbGxBcmVhcyhyZXNwb25zZURhdGEpO1xuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVRhYlNlbGVjdGlvbkNsaWNrID0gKHRhYikgPT4ge1xuICAgIGlmICghaXNGZXRjaGluZykge1xuICAgICAgc2V0U2VsZWN0ZWRUYWIodGFiKTtcblxuICAgICAgaWYgKHRhYiAhPT0gaTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQuY3VzdG9tJykpIHtcbiAgICAgICAgdGFiID1cbiAgICAgICAgICB0YWIgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmNpdGllcycpXG4gICAgICAgICAgICA/ICdjaXR5J1xuICAgICAgICAgICAgOiB0YWIgPT09IGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLm1vbml0b3JlZF9hcmVhcycpXG4gICAgICAgICAgICA/ICdtb25pdG9yZWQnXG4gICAgICAgICAgICA6ICcnO1xuXG4gICAgICAgIGZldGNoRm9yVGFiU2VsZWN0aW9uKHRhYik7XG4gICAgICB9XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGluaXRpYWxpemVEcmlsbGVkQXJlYSA9IChyZXNwb25zZSkgPT4ge1xuICAgIGxldCBkYXRhID0gcmVzcG9uc2UuZGF0YS5kYXRhO1xuICAgIHNldFJvd3MoZGF0YSk7XG4gICAgc2V0Q3VycmVudERhdGEoZGF0YSk7XG4gICAgaW5pdGlhbGl6ZU1hcEFyZWFzKGRhdGEpO1xuICAgIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVBcmVhQ2xpY2sgPSAoYXJlYSkgPT4ge1xuICAgIHpvb21Ub0FyZWEoYXJlYSk7XG5cbiAgICBpZiAoYXJlYS5oYXNfY2hpbGRyZW4pIHtcbiAgICAgIHNldFRhYnMoWy4uLnRhYnMsIGkxOG4udCgnY29tcG9uZW50cy53YmVfZGFzaGJvYXJkLmN1c3RvbScpXSk7XG4gICAgICBzZXRTZWxlY3RlZFRhYihpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5jdXN0b20nKSk7XG5cbiAgICAgIGF4aW9zLmdldChmZXRjaFVybChhcmVhLmlkKSkudGhlbigocmVzcG9uc2UpID0+IHtcbiAgICAgICAgaW5pdGlhbGl6ZURyaWxsZWRBcmVhKHJlc3BvbnNlKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBpbml0aWFsaXplQ29tcG9uZW50ID0gKCkgPT4ge1xuICAgIHNldEN1cnJlbnREYXRhKGRhdGEpO1xuICAgIHNldFJvd3MoZGF0YSk7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1dCRSBTdGF0dXMgUmVwb3J0Jywge1xuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgZGlzcGF0Y2godXBkYXRlTmF2Q29udGV4dCh7IG5hbWU6ICd3YmVfZGFzaGJvYXJkJyB9KSk7XG5cbiAgICBheGlvcy5nZXQoZmV0Y2hVcmwoJ21vbml0b3JlZCcpKS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgbGV0IGRhdGEgPSByZXNwb25zZS5kYXRhLmRhdGE7XG5cbiAgICAgIGluaXRpYWxpemVNYXBBcmVhcyhkYXRhKTtcbiAgICAgIHpvb21BbGxBcmVhcyhkYXRhKTtcbiAgICB9KTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNGZXRjaGluZyAmJiBkYXRhICE9PSBudWxsKSB7XG4gICAgICBpbml0aWFsaXplQ29tcG9uZW50KCk7XG4gICAgfVxuICB9LCBbaXNGZXRjaGluZywgc2VsZWN0ZWRQYXRob2dlbiwgZGF0YV0pO1xuXG4gIGNvbnN0IHBhdGhvZ2VuVGl0bGUgPVxuICAgICghaXNGZXRjaGluZ1BhdGhvZ2VucyAmJlxuICAgICAgcGF0aG9nZW5zPy5maW5kKFxuICAgICAgICAoaXRlbSkgPT4gaXRlbS50b0xvd2VyQ2FzZSgpID09PSBzZWxlY3RlZFBhdGhvZ2VuLnRvTG93ZXJDYXNlKCksXG4gICAgICApKSB8fFxuICAgICcnO1xuICBjb25zdCBkcm9wRG93blRpdGxlID1cbiAgICBnZXRQYXRob2dlbk5hbWUocGF0aG9nZW5UaXRsZSkgfHxcbiAgICBpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8Q29udGVudD5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8aDE+XG4gICAgICAgICAgICB7YCR7aTE4bi50KCdjb21wb25lbnRzLndiZV9kYXNoYm9hcmQudGFibGVfbmFtZScpfSAoJHtcbiAgICAgICAgICAgICAgZ2V0UGF0aG9nZW5OYW1lKHBhdGhvZ2VuVGl0bGUpIHx8IGdldFBhdGhvZ2VuTmFtZShnZXRQYXRob2dlbigpKVxuICAgICAgICAgICAgfSlgfVxuICAgICAgICAgIDwvaDE+XG4gICAgICAgICAgeyFpc0ZldGNoaW5nUGF0aG9nZW5zICYmIHBhdGhvZ2Vucy5sZW5ndGggPT09IDAgJiYgKFxuICAgICAgICAgICAgPGgzPntpMThuLnQoJ2NvbXBvbmVudHMud2JlX2Rhc2hib2FyZC5wYXRob2dlbl9ub3RfZm91bmQnKX08L2gzPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPEFjdGlvbnNDb250YWluZXI+XG4gICAgICAgICAgICB7IWlzRmV0Y2hpbmdQYXRob2dlbnMgJiYgcGF0aG9nZW5zLmxlbmd0aCA+IDEgJiYgKFxuICAgICAgICAgICAgICA8RHJvcGRvd25CdXR0b25cbiAgICAgICAgICAgICAgICBpZD1cImRyb3Bkb3duLWJhc2ljLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsnYnV0dG9uIGJ1dHRvbi0tc29ydCd9XG4gICAgICAgICAgICAgICAgdGl0bGU9e2Ryb3BEb3duVGl0bGUgKyAnICd9XG4gICAgICAgICAgICAgICAgdmFyaWFudD1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7cGF0aG9nZW5zLm1hcCgocGF0aG9nZW4pID0+IHtcbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIDxEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICAgICAgICAgICAga2V5PXtwYXRob2dlbn1cbiAgICAgICAgICAgICAgICAgICAgICBocmVmPVwiI1wiXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gaGFuZGxlU2VsZWN0UGF0aG9nZW5DbGljayhwYXRob2dlbil9XG4gICAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHRBbGlnbjpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbmF2Q29udGV4dC5sb2NhbGUgPT09ICdoZScgPyAncmlnaHQnIDogJ2xlZnQnLFxuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7Z2V0UGF0aG9nZW5OYW1lKHBhdGhvZ2VuKX1cbiAgICAgICAgICAgICAgICAgICAgPC9Ecm9wZG93bi5JdGVtPlxuICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgPC9Ecm9wZG93bkJ1dHRvbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9BY3Rpb25zQ29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPEZpcnN0U2VjdGlvbj5cbiAgICAgICAgICA8V2JlU3VtbWFyeUJhclxuICAgICAgICAgICAgcGF0aG9nZW49e3NlbGVjdGVkUGF0aG9nZW59XG4gICAgICAgICAgICB3YXRlckF1dGhvcml0eUlkPXt3YXRlckF1dGhvcml0eUlkfVxuICAgICAgICAgICAgaXNSdGw9e2lzUnRsfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvRmlyc3RTZWN0aW9uPlxuXG4gICAgICAgIDxTZWNvbmRTZWN0aW9uPlxuICAgICAgICAgIDxTZWFyY2hJbnB1dCBvbkNoYW5nZUJlaGF2aW9yPXtmaWx0ZXJSZXN1bHRzQW5kU2V0Um93c30gLz5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3RhYnMtY29udGFpbmVyJ30+XG4gICAgICAgICAgICA8VGFic1xuICAgICAgICAgICAgICB0YWJzPXt0YWJzfVxuICAgICAgICAgICAgICBzZWxlY3RlZFRhYj17c2VsZWN0ZWRUYWJ9XG4gICAgICAgICAgICAgIGhhbmRsZU9uQ2xpY2s9e2hhbmRsZVRhYlNlbGVjdGlvbkNsaWNrfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8TWFwVGFibGVDb250YWluZXIgaXNSdGw9e2lzUnRsfT5cbiAgICAgICAgICAgIHtpc0ZldGNoaW5nICYmIDxTcGlubmVyIC8+fVxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydtYXAtY29udGFpbmVyJ30+XG4gICAgICAgICAgICAgIHshaXNGZXRjaGluZyAmJiByb3dzICE9PSBudWxsICYmIG1hcFpvb20gIT09IG51bGwgJiYgKFxuICAgICAgICAgICAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICAgICAgICAgICAgPE1hcFxuICAgICAgICAgICAgICAgICAgICBhcmVhcz17bWFwQXJlYXN9XG4gICAgICAgICAgICAgICAgICAgIGFyZWFUb0NlbnRlckJ5PXttYXBab29tfVxuICAgICAgICAgICAgICAgICAgICBlZGdlcz17W119XG4gICAgICAgICAgICAgICAgICAgIHBvaW50cz17W119XG4gICAgICAgICAgICAgICAgICAgIGdsb2JhbF9kYXRhPXtnbG9iYWxEYXRhfVxuICAgICAgICAgICAgICAgICAgICBtYXBCb3hTdHlsZT17TUFQQk9YX1dCRV9EQVNIQk9BUkRfU1RZTEV9XG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvRXJyb3JCb3VuZGFyeT5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgeyFpc0ZldGNoaW5nICYmIHJvd3MgIT09IG51bGwgJiYgKFxuICAgICAgICAgICAgICA8S2FuZG9UYWJsZVxuICAgICAgICAgICAgICAgIG9uUm93RXhwYW5kVG9nZ2xlZD17aGFuZGxlT25Sb3dFeHBhbmR9XG4gICAgICAgICAgICAgICAgZGF0YT17cm93c31cbiAgICAgICAgICAgICAgICBjb2x1bW5zPXtjb2x1bW5zfVxuICAgICAgICAgICAgICAgIGRpcmVjdGlvbj17ZGlyfVxuICAgICAgICAgICAgICAgIGV4cGFuZGFibGVSb3dzPXt0cnVlfVxuICAgICAgICAgICAgICAgIHBhZ2luYXRpb25QZXJQYWdlPXtUQUJMRV9ST1dTX1BFUl9QQUdFfVxuICAgICAgICAgICAgICAgIHJvd0NvbXBvbmVudD17RXhwYW5kZWRDb21wb25lbnR9XG4gICAgICAgICAgICAgICAgZXhwYW5kYWJsZVJvd3NDb21wb25lbnRQcm9wcz17eyBwYXRob2dlbjogc2VsZWN0ZWRQYXRob2dlbiB9fVxuICAgICAgICAgICAgICAgIGRlZmF1bHRTb3J0RmllbGRJZD17M31cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9NYXBUYWJsZUNvbnRhaW5lcj5cbiAgICAgICAgPC9TZWNvbmRTZWN0aW9uPlxuICAgICAgPC9Db250ZW50PlxuICAgIDwvPlxuICApO1xufTtcblxuY29uc3QgUm93TmFtZSA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgICB3aWR0aDogMTAwJTtcbiAgICAgIFxuICAgIC5yb3dfbmFtZSB7XG4gICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW47ICAgICAgXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCA0cHg7XG4gICAgICAgIFxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICYtLWNsZWFuIHtcbiAgICAgICAgIGNvbG9yOiAjMjdhNjNhOyBcbiAgICAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzI3YTYzYTsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi0taW5mZWN0ZWQge1xuICAgICAgICAgIGNvbG9yOiAjZTEwMDM2O1xuICAgICAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2UxMDAzNjsgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi0taW5hY3RpdmUtc2FtcGxpbmcge1xuICAgICAgICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLm5hdHVyYWwubjYwfTtcbiAgICAgICAgICAuZXhwYW5kYWJsZS1pY29uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR7dGhlbWUuY29sb3JTY2hlbWUubmF0dXJhbC5uNjB9OyAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgJHsocCkgPT4gKHAuaXNSdGwgPyAncmlnaHQ6IDUxcHg7JyA6ICdsZWZ0OiA1MXB4OycpfVxuICAgICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgICB3aWR0aDogNy41ZW07XG4gICAgICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICBgO1xuXG5jb25zdCBBY3Rpb25zQ29udGFpbmVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbmA7XG5cbmNvbnN0IEZpcnN0U2VjdGlvbiA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbjogODVweCAwIDIwcHggMDtcbmA7XG5cbmNvbnN0IFNlY29uZFNlY3Rpb24gPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmNmY2ZjO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTdlN2U3O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG5gO1xuXG5jb25zdCBNYXBUYWJsZUNvbnRhaW5lciA9IHN0eWxlZC5kaXY8eyBpc1J0bDogYm9vbGVhbiB9PmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAubWFwLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgLmV2ZW50LXRpbWVyYW5nZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAjbWFwIHtcbiAgICAgIGhlaWdodDogNjl2aDtcbiAgICAgIHdpZHRoOiAzMHZ3O1xuICAgIH1cbiAgfVxuICBbZGF0YS10ZXN0aWQ9J2thbmRvLXRhYmxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIFtkYXRhLWNvbHVtbi1pZD0nMSddIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgLm5hbWUge1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5leHBhbmRhYmxlLWljb24ge1xuICAgICAgICB3aWR0aDogY2FsYygxMjBweCArIDF2dyk7XG4gICAgICAgIHRyYW5zaXRpb246IDAuMnMgY3ViaWMtYmV6aWVyKDAuNjUsIDAuMDUsIDAuMzYsIDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zcGlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuYDtcblxuY29uc3QgQ29udGVudCA9IHN0eWxlZC5kaXZgXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICBwYWRkaW5nOiA2MHB4IDYwcHg7XG5gO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLEtBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLGVBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFVBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLFlBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLGlCQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxhQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxrQkFBQSxHQUFBVCxPQUFBO0FBRUEsSUFBQVUsUUFBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsYUFBQSxHQUFBWCxPQUFBO0FBQTBELElBQUFZLGNBQUEsR0FBQVosT0FBQTtBQUFBLElBQUFhLFVBQUEsR0FBQWIsT0FBQTtBQUcxRCxJQUFBYyx3QkFBQSxHQUFBZCxPQUFBO0FBQ0EsSUFBQWUsZ0JBQUEsR0FBQWYsT0FBQTtBQUNBLElBQUFnQixJQUFBLEdBQUFoQixPQUFBO0FBQ0EsSUFBQWlCLFdBQUEsR0FBQWpCLE9BQUE7QUFDQSxJQUFBa0IsS0FBQSxHQUFBbEIsT0FBQTtBQUNBLElBQUFtQixlQUFBLEdBQUFqQixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQW9CLFlBQUEsR0FBQWxCLHNCQUFBLENBQUFGLE9BQUE7QUFFQSxJQUFBcUIsU0FBQSxHQUFBbkIsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFzQixlQUFBLEdBQUFwQixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQXVCLE1BQUEsR0FBQXJCLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBd0IsU0FBQSxHQUFBdEIsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUF5QixvQkFBQSxHQUFBekIsT0FBQTtBQUNBLElBQUEwQixRQUFBLEdBQUExQixPQUFBO0FBQ0EsSUFBQTJCLGNBQUEsR0FBQTNCLE9BQUE7QUFDQSxJQUFBNEIsY0FBQSxHQUFBMUIsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUE2QixNQUFBLEdBQUE3QixPQUFBO0FBQ0EsSUFBQThCLGVBQUEsR0FBQTVCLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBK0IsS0FBQSxHQUFBL0IsT0FBQTtBQUNBLElBQUFnQyxnQkFBQSxHQUFBaEMsT0FBQTtBQUdtQyxTQUFBaUMseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFuQyx3QkFBQXVDLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFaLEdBQUEsQ0FBQVksR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUgsR0FBQSxNQUFBSSxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBakIsR0FBQSxFQUFBTyxNQUFBLFlBQUFBLE1BQUE7QUFDbkMsSUFBTVcsbUJBQW1CLEdBQUcsRUFBRTtBQUM5QixJQUFNQywwQkFBMEIsR0FBRywyQkFBMkI7QUFFdkQsSUFBTUMsZ0JBQWdCLEdBQUcsU0FBbkJBLGdCQUFnQkEsQ0FBQSxFQUFTO0VBQ3BDLElBQU1DLE9BQU8sR0FBRyxTQUFWQSxPQUFPQSxDQUFBLEVBQVM7SUFDcEIsT0FBT0MsS0FBSyxDQUFDaEIsR0FBRyxDQUFDLG9CQUFvQixDQUFDO0VBQ3hDLENBQUM7RUFDRCxJQUFNaUIsUUFBUSxHQUFHLFNBQVhBLFFBQVFBLENBQUlDLFVBQVUsRUFBSztJQUMvQixnQ0FBQUMsTUFBQSxDQUFnQ0MsZ0JBQWdCLE9BQUFELE1BQUEsQ0FBSUQsVUFBVSwwQkFBQUMsTUFBQSxDQUF1QkosT0FBTyxDQUFDLENBQUM7RUFDaEcsQ0FBQztFQUNELElBQU1NLFlBQVksR0FBRyxTQUFmQSxZQUFZQSxDQUFBO0lBQUEsT0FDaEIsSUFBQUMsVUFBSSxFQUFDO01BQUVDLGdCQUFnQixFQUFFUixPQUFPLENBQUM7SUFBRSxDQUFDLENBQUMsQ0FBQ1MsWUFBWSxDQUFDQyxTQUFTLENBQUNDLEdBQUc7RUFBQTtFQUNsRSxJQUFNQyxZQUFZLEdBQUcsQ0FDbkJDLGFBQUksQ0FBQ0MsQ0FBQyxDQUFDLGlDQUFpQyxDQUFDLEVBQ3pDRCxhQUFJLENBQUNDLENBQUMsQ0FBQywwQ0FBMEMsQ0FBQyxDQUNuRDtFQUNELElBQU1DLHFCQUFxQixHQUFHLFNBQXhCQSxxQkFBcUJBLENBQUlDLFFBQWdCLEVBQUs7SUFDbEQsSUFBSUEsUUFBUSxLQUFLSCxhQUFJLENBQUNDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFFO01BQzFELE9BQU8sTUFBTTtJQUNmLENBQUMsTUFBTSxJQUNMRSxRQUFRLEtBQUtILGFBQUksQ0FBQ0MsQ0FBQyxDQUFDLDBDQUEwQyxDQUFDLEVBQy9EO01BQ0EsT0FBTyxXQUFXO0lBQ3BCO0lBRUEsT0FBTyxNQUFNO0VBQ2YsQ0FBQztFQUNELElBQU1iLEtBQUssR0FBRyxJQUFBZ0Isb0JBQVcsRUFBQyxDQUFDO0VBRTNCLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBSUMsUUFBUSxFQUFLO0lBQ3BDLE9BQU9BLFFBQVEsS0FBSyxZQUFZLEdBQUcsWUFBWSxHQUFHQSxRQUFRO0VBQzVELENBQUM7RUFFRCxJQUFNQyxXQUFXLEdBQUcsU0FBZEEsV0FBV0EsQ0FBQSxFQUFTO0lBQ3hCLE9BQU9uQixLQUFLLENBQUNoQixHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksT0FBTztFQUN6QyxDQUFDO0VBRUQsSUFBQW9DLFNBQUEsR0FBc0MsSUFBQUMsZUFBUSxFQUFDLEVBQUUsQ0FBQztJQUFBQyxVQUFBLE9BQUFDLGVBQUEsQ0FBQTFDLE9BQUEsRUFBQXVDLFNBQUE7SUFBM0NJLFdBQVcsR0FBQUYsVUFBQTtJQUFFRyxjQUFjLEdBQUFILFVBQUE7RUFDbEMsSUFBQUksVUFBQSxHQUFnQyxJQUFBTCxlQUFRLEVBQVEsRUFBRSxDQUFDO0lBQUFNLFVBQUEsT0FBQUosZUFBQSxDQUFBMUMsT0FBQSxFQUFBNkMsVUFBQTtJQUE1Q0UsUUFBUSxHQUFBRCxVQUFBO0lBQUVFLFdBQVcsR0FBQUYsVUFBQTtFQUM1QixJQUFBRyxVQUFBLEdBQThCLElBQUFULGVBQVEsRUFBUSxFQUFFLENBQUM7SUFBQVUsVUFBQSxPQUFBUixlQUFBLENBQUExQyxPQUFBLEVBQUFpRCxVQUFBO0lBQTFDRSxPQUFPLEdBQUFELFVBQUE7SUFBRUUsVUFBVSxHQUFBRixVQUFBO0VBQzFCLElBQUFHLFVBQUEsR0FBd0IsSUFBQWIsZUFBUSxFQUFNLEVBQUUsQ0FBQztJQUFBYyxVQUFBLE9BQUFaLGVBQUEsQ0FBQTFDLE9BQUEsRUFBQXFELFVBQUE7SUFBbENFLElBQUksR0FBQUQsVUFBQTtJQUFFRSxPQUFPLEdBQUFGLFVBQUE7RUFDcEIsSUFBQUcsVUFBQSxHQUF3QixJQUFBakIsZUFBUSxFQUFXVixZQUFZLENBQUM7SUFBQTRCLFdBQUEsT0FBQWhCLGVBQUEsQ0FBQTFDLE9BQUEsRUFBQXlELFVBQUE7SUFBakRFLElBQUksR0FBQUQsV0FBQTtJQUFFRSxPQUFPLEdBQUFGLFdBQUE7RUFDcEIsSUFBQUcsV0FBQSxHQUFzQyxJQUFBckIsZUFBUSxFQUFTbUIsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQUFHLFdBQUEsT0FBQXBCLGVBQUEsQ0FBQTFDLE9BQUEsRUFBQTZELFdBQUE7SUFBeERFLFdBQVcsR0FBQUQsV0FBQTtJQUFFRSxjQUFjLEdBQUFGLFdBQUE7RUFDbEMsSUFBQUcsV0FBQSxHQUFnRCxJQUFBekIsZUFBUSxFQUN0REYsV0FBVyxDQUFDLENBQ2QsQ0FBQztJQUFBNEIsV0FBQSxPQUFBeEIsZUFBQSxDQUFBMUMsT0FBQSxFQUFBaUUsV0FBQTtJQUZNMUMsZ0JBQWdCLEdBQUEyQyxXQUFBO0lBQUVDLG1CQUFtQixHQUFBRCxXQUFBO0VBRzVDLElBQUFFLGNBQUEsR0FBMEMsSUFBQUMsdUJBQWEsRUFDckRqRCxRQUFRLENBQUNhLHFCQUFxQixDQUFDOEIsV0FBVyxDQUFDLENBQzdDLENBQUM7SUFGT08sSUFBSSxHQUFBRixjQUFBLENBQUpFLElBQUk7SUFBRUMsVUFBVSxHQUFBSCxjQUFBLENBQVZHLFVBQVU7SUFBRUMsV0FBVyxHQUFBSixjQUFBLENBQVhJLFdBQVc7RUFHckMsSUFBQUMsY0FBQSxHQUE2RCxJQUFBQyx1QkFBYSxFQUN4RWxELFlBQVksQ0FBQyxDQUNmLENBQUM7SUFGYUksU0FBUyxHQUFBNkMsY0FBQSxDQUFmSCxJQUFJO0lBQXlCSyxtQkFBbUIsR0FBQUYsY0FBQSxDQUEvQkYsVUFBVTtFQUluQyxJQUFNSyxRQUFRLEdBQUcsSUFBQUMsdUJBQVcsRUFBQyxDQUFDO0VBQzlCLElBQU1DLFVBQVUsR0FBRyxJQUFBQyx1QkFBVyxFQUM1QixVQUFDQyxLQUFvQztJQUFBLE9BQUtBLEtBQUssQ0FBQ0MsZ0JBQWdCLENBQUNILFVBQVU7RUFBQSxDQUM3RSxDQUFDO0VBQ0QsSUFBTUksVUFBVSxHQUFHLElBQUFILHVCQUFXLEVBQzVCLFVBQUNDLEtBQW9DO0lBQUEsT0FBS0EsS0FBSyxDQUFDRyxXQUFXO0VBQUEsQ0FDN0QsQ0FBQztFQUNELElBQU1DLEtBQWMsR0FBR04sVUFBVSxDQUFDTyxNQUFNLEtBQUssSUFBSSxHQUFHLElBQUksR0FBRyxLQUFLO0VBQ2hFLElBQU1DLFdBQVcsR0FBRyxTQUFkQSxXQUFXQSxDQUFJQyxHQUFHLEVBQUs7SUFDM0IsSUFBSUMsT0FBTztJQUNYLElBQUksQ0FBQ0QsR0FBRyxDQUFDRSxhQUFhLEVBQUU7TUFDdEJELE9BQU8sR0FBRyxtQkFBbUI7SUFDL0IsQ0FBQyxNQUFNLElBQUlFLFVBQVUsQ0FBQ0gsR0FBRyxDQUFDSSxHQUFHLENBQUMsRUFBRTtNQUM5QkgsT0FBTyxHQUFHLFVBQVU7SUFDdEIsQ0FBQyxNQUFNO01BQ0xBLE9BQU8sR0FBRyxPQUFPO0lBQ25CO0lBRUEsb0JBQUFsRSxNQUFBLENBQW9Ca0UsT0FBTztFQUM3QixDQUFDO0VBRUQsSUFBTUksVUFBVSxHQUFHLElBQUFDLDBDQUF5QixFQUFDLENBQUM7RUFDOUMsSUFBTUMsT0FBWSxHQUFHQyxjQUFLLENBQUNDLE9BQU8sQ0FDaEM7SUFBQSxPQUFNLENBQ0o7TUFDRUMsSUFBSSxFQUFFbEUsYUFBSSxDQUFDQyxDQUFDLENBQUMsK0JBQStCLENBQUM7TUFDN0NrRSxRQUFRLEVBQUUsU0FBQUEsU0FBQ1gsR0FBRztRQUFBLE9BQUtBLEdBQUcsQ0FBQ1UsSUFBSTtNQUFBO01BQzNCRSxRQUFRLEVBQUUsSUFBSTtNQUNkQyxJQUFJLEVBQUUsU0FBQUEsS0FBQ2IsR0FBeUQ7UUFBQSxvQkFDOURsSSxNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBLENBQUNDLE9BQU87VUFBQ2xCLEtBQUssRUFBRUE7UUFBTSxnQkFDcEIvSCxNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBO1VBQ0UsWUFBUyxnQkFBZ0I7VUFDekJFLFNBQVMsY0FBQWpGLE1BQUEsQ0FBY2dFLFdBQVcsQ0FBQ0MsR0FBRyxDQUFDLENBQUc7VUFDMUNpQixPQUFPLEVBQUUsU0FBQUEsUUFBQSxFQUFNO1lBQ2JDLGVBQWUsQ0FBQ2xCLEdBQUcsQ0FBQztVQUN0QjtRQUFFLGdCQUVGbEksTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQTtVQUFLRSxTQUFTLEVBQUU7UUFBa0IsZ0JBQ2hDbEosTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxlQUNHZCxHQUFHLENBQUNtQixZQUFZLGlCQUFJckosTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDbEksY0FBQSxDQUFBd0ksY0FBYSxNQUFFLENBQUMsRUFDckMsQ0FBQ3BCLEdBQUcsQ0FBQ21CLFlBQVksaUJBQUlySixNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBLENBQUNqSSxVQUFBLENBQUF1SSxjQUFTLE1BQUUsQ0FDOUIsQ0FDSCxDQUFDLGVBQ050SixNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBO1VBQU1FLFNBQVMsRUFBRTtRQUFPLGdCQUN0QmxKLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQ3RILFNBQUEsQ0FBQWlCLE9BQVE7VUFBQzRHLFVBQVUsRUFBRSxDQUFFO1VBQUNDLGdCQUFnQixFQUFFO1FBQUssR0FDN0N0QixHQUFHLENBQUNVLElBQ0csQ0FDTixDQUNILENBQ0UsQ0FBQztNQUFBO0lBRWQsQ0FBQyxFQUNEO01BQ0VBLElBQUksRUFBRWxFLGFBQUksQ0FBQ0MsQ0FBQyxDQUFDLG9DQUFvQyxDQUFDO01BQ2xEa0UsUUFBUSxFQUFFLFNBQUFBLFNBQUNYLEdBQUc7UUFBQSxPQUFLQSxHQUFHLENBQUNJLEdBQUc7TUFBQTtNQUMxQlEsUUFBUSxFQUFFLElBQUk7TUFDZEMsSUFBSSxFQUFFLFNBQUFBLEtBQUNiLEdBQW9CO1FBQUEsb0JBQ3pCbEksTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQTtVQUFLLFlBQVM7UUFBZ0IsR0FBRWQsR0FBRyxDQUFDSSxHQUFTLENBQUM7TUFBQTtJQUVsRCxDQUFDLEVBQ0Q7TUFDRU0sSUFBSSxFQUFFbEUsYUFBSSxDQUFDQyxDQUFDLENBQUMsd0RBQXdELENBQUM7TUFDdEVrRSxRQUFRLEVBQUUsU0FBQUEsU0FBQ1gsR0FBRztRQUFBLE9BQUtBLEdBQUcsQ0FBQ3VCLFVBQVU7TUFBQTtNQUNqQ1gsUUFBUSxFQUFFLElBQUk7TUFDZEMsSUFBSSxFQUFFLFNBQUFBLEtBQUNiLEdBQTJCO1FBQUEsb0JBQ2hDbEksTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQTtVQUNFLFlBQVMsZ0JBQWdCO1VBQ3pCVSxLQUFLLEVBQUU7WUFDTEMsU0FBUyxFQUFFO1VBQ2I7UUFBRSxnQkFFRjNKLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUE7VUFBTVUsS0FBSyxFQUFFO1lBQUVFLEtBQUssRUFBRSxTQUFTO1lBQUVDLE1BQU0sRUFBRTtVQUFRO1FBQUUsR0FDaEQzQixHQUFHLENBQUN1QixVQUFVLEVBQUMsR0FDWixDQUFDLGVBR0x6SixNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBLENBQUN2SSxpQkFBQSxDQUFBcUosZUFBZTtVQUNkQyxJQUFJLEVBQUU3QixHQUFHLENBQUN1QixVQUFVLEdBQUcsQ0FBQyxHQUFHTyw4QkFBVyxHQUFHQztRQUFjLENBQ3hELENBRUEsQ0FBQztNQUFBO0lBRVYsQ0FBQyxFQUNEO01BQ0VyQixJQUFJLEVBQUVsRSxhQUFJLENBQUNDLENBQUMsQ0FBQyx1Q0FBdUMsQ0FBQztNQUNyRGtFLFFBQVEsRUFBRSxjQUFjO01BQ3hCQyxRQUFRLEVBQUUsU0FBQUEsU0FBQ1osR0FBRztRQUFBLE9BQUtBLEdBQUcsQ0FBQ2dDLFlBQVk7TUFBQTtNQUNuQ25CLElBQUksRUFBRSxTQUFBQSxLQUFDYixHQUE2QjtRQUFBLG9CQUNsQ2xJLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUE7VUFBSyxZQUFTO1FBQWdCLEdBQzNCZCxHQUFHLENBQUNnQyxZQUFZLEtBQUssSUFBSSxHQUN0QixHQUFHLEdBQ0gsSUFBQUMsa0NBQWlCLEVBQUNqQyxHQUFHLENBQUNnQyxZQUFZLEVBQUUzQixVQUFVLENBQy9DLENBQUM7TUFBQTtJQUVWLENBQUMsRUFDRDtNQUNFSyxJQUFJLEVBQUVsRSxhQUFJLENBQUNDLENBQUMsQ0FBQyxzQ0FBc0MsQ0FBQztNQUNwRGtFLFFBQVEsRUFBRSxhQUFhO01BQ3ZCQyxRQUFRLEVBQUUsSUFBSTtNQUNkQyxJQUFJLEVBQUUsU0FBQUEsS0FBQ2IsR0FBbUI7UUFBQSxvQkFDeEJsSSxNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBO1VBQUssWUFBUztRQUFnQixnQkFDNUJoSixNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBLENBQUN0SSxhQUFBLENBQUEwSixZQUFZO1VBQ1hoSCxHQUFHLEVBQUU4RSxHQUFHLENBQUNtQyxFQUFHO1VBQ1puQyxHQUFHLEVBQUVBLEdBQUk7VUFDVG9DLGtCQUFrQixFQUFFekcsT0FBTyxDQUFDLENBQUU7VUFDOUJtQixRQUFRLEVBQUVkO1FBQWlCLENBQzVCLENBQ0UsQ0FBQztNQUFBO0lBRVYsQ0FBQyxFQUNEO01BQ0UwRSxJQUFJLEVBQUVsRSxhQUFJLENBQUNDLENBQUMsQ0FBQyxxQ0FBcUMsQ0FBQztNQUNuRGtFLFFBQVEsRUFBRSxTQUFBQSxTQUFDWCxHQUFHO1FBQUEsT0FBS0EsR0FBRyxDQUFDcUMsVUFBVTtNQUFBO01BQ2pDekIsUUFBUSxFQUFFLElBQUk7TUFDZEMsSUFBSSxFQUFFLFNBQUFBLEtBQUNiLEdBQTJCO1FBQUEsb0JBQ2hDbEksTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQTtVQUFLLFlBQVM7UUFBZ0IsR0FDM0IsSUFBQXdCLHdCQUFVLEVBQUNDLFFBQVEsQ0FBQ3ZDLEdBQUcsQ0FBQ3FDLFVBQVUsQ0FBQyxDQUNqQyxDQUFDO01BQUE7SUFFVixDQUFDLENBQ0Y7RUFBQSxHQUNELENBQUN4QyxLQUFLLEVBQUU3RCxnQkFBZ0IsRUFBRXFFLFVBQVUsQ0FDdEMsQ0FBQztFQUVELElBQU1tQyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFJQyxLQUFLLEVBQUs7SUFDcEMsSUFBTUMsZUFBZSxHQUFHRCxLQUFLLENBQUNFLEdBQUcsQ0FBQyxVQUFDQyxDQUFNLEVBQUs7TUFDNUNBLENBQUMsQ0FBQ0Msa0JBQWtCLEdBQUdELENBQUMsQ0FBQ2xDLElBQUk7TUFDN0JrQyxDQUFDLENBQUNFLHNCQUFzQixHQUFHLElBQUk7TUFFL0IsSUFBSSxDQUFDRixDQUFDLENBQUMxQyxhQUFhLEVBQUU7UUFDcEIwQyxDQUFDLENBQUNsQixLQUFLLEdBQUdxQixZQUFLLENBQUNDLFdBQVcsQ0FBQ0MsT0FBTyxDQUFDQyxHQUFHO1FBQ3ZDLE9BQU9OLENBQUM7TUFDVjtNQUVBLElBQUl6QyxVQUFVLENBQUN5QyxDQUFDLENBQUN4QyxHQUFHLENBQUMsRUFBRTtRQUNyQndDLENBQUMsQ0FBQ2xCLEtBQUssR0FBR3FCLFlBQUssQ0FBQ0MsV0FBVyxDQUFDakUsSUFBSSxDQUFDb0UsSUFBSTtRQUNyQyxPQUFPUCxDQUFDO01BQ1YsQ0FBQyxNQUFNO1FBQ0xBLENBQUMsQ0FBQ2xCLEtBQUssR0FBR3FCLFlBQUssQ0FBQ0MsV0FBVyxDQUFDakUsSUFBSSxDQUFDcUUsSUFBSTtRQUNyQyxPQUFPUixDQUFDO01BQ1Y7SUFDRixDQUFDLENBQUM7SUFFRm5GLFdBQVcsQ0FBQ2lGLGVBQWUsQ0FBQztFQUM5QixDQUFDO0VBRUQsSUFBTVcsVUFBVSxHQUFHLFNBQWJBLFVBQVVBLENBQUlDLElBQUksRUFBSztJQUMzQkEsSUFBSSxDQUFDQyxVQUFVLEtBQUtDLFNBQVMsSUFBSTNGLFVBQVUsQ0FBQ3lGLElBQUksQ0FBQ0MsVUFBVSxDQUFDO0VBQzlELENBQUM7RUFFRCxJQUFNRSxZQUFZLEdBQUcsU0FBZkEsWUFBWUEsQ0FBSTFFLElBQUksRUFBSztJQUM3QixJQUFNMkUsU0FBUyxHQUFHM0UsSUFBSSxDQUFDNEQsR0FBRyxDQUFDLFVBQUNnQixLQUFLLEVBQUs7TUFDcEMsT0FBT0EsS0FBSyxDQUFDSixVQUFVO0lBQ3pCLENBQUMsQ0FBQztJQUVGMUYsVUFBVSxDQUFDNkYsU0FBUyxDQUFDO0VBQ3ZCLENBQUM7RUFFRCxJQUFNdkQsVUFBVSxHQUFHLFNBQWJBLFVBQVVBLENBQUlDLEdBQVcsRUFBSztJQUNsQyxJQUFJLElBQUF3RCx5QkFBUSxFQUFDeEQsR0FBRyxDQUFDLEtBQUssT0FBTyxFQUFFO01BQzdCLE9BQU8sS0FBSztJQUNkLENBQUMsTUFBTSxJQUNMLElBQUF3RCx5QkFBUSxFQUFDeEQsR0FBRyxDQUFDLEtBQUssS0FBSyxJQUN2QixJQUFBd0QseUJBQVEsRUFBQ3hELEdBQUcsQ0FBQyxLQUFLLFFBQVEsSUFDMUIsSUFBQXdELHlCQUFRLEVBQUN4RCxHQUFHLENBQUMsS0FBSyxNQUFNLEVBQ3hCO01BQ0EsT0FBTyxJQUFJO0lBQ2I7SUFFQTtFQUNGLENBQUM7RUFDRCxJQUFNeUQsT0FBTyxHQUFHLElBQUFDLDBCQUFVLEVBQUMsQ0FBQztFQUM1QixJQUFNM0gsZ0JBQWdCLEdBQUcsSUFBQXFELHVCQUFXLEVBQ2xDLFVBQUNDLEtBQW9DO0lBQUEsT0FDbkNBLEtBQUssQ0FBQ0csV0FBVyxDQUFDekQsZ0JBQWdCO0VBQUEsQ0FDdEMsQ0FBQztFQUVELElBQU00SCxHQUFjLEdBQ2xCeEUsVUFBVSxDQUFDTyxNQUFNLEtBQUssSUFBSSxHQUFHa0Usa0NBQVMsQ0FBQ0MsR0FBRyxHQUFHRCxrQ0FBUyxDQUFDRSxHQUFHO0VBRTVELElBQU1DLHVCQUF1QixHQUFHLFNBQTFCQSx1QkFBdUJBLENBQUlDLElBQVksRUFBSztJQUNoRCxJQUFJQyxPQUFPLEdBQUdqSCxXQUFXLENBQUNrSCxNQUFNLENBQUMsVUFBVUMsRUFBTyxFQUFFO01BQ2xELE9BQU9BLEVBQUUsQ0FBQzdELElBQUksQ0FBQzhELFdBQVcsQ0FBQyxDQUFDLENBQUNDLFFBQVEsQ0FBQ0wsSUFBSSxDQUFDSSxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzNELENBQUMsQ0FBQztJQUVGdkcsT0FBTyxDQUFDb0csT0FBTyxDQUFDO0VBQ2xCLENBQUM7RUFFRCxJQUFNSyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFJQyxRQUFRLEVBQUUzRSxHQUFHLEVBQUs7SUFDM0MyRSxRQUFRLElBQUl0QixVQUFVLENBQUNyRCxHQUFHLENBQUM7SUFDM0IsQ0FBQzJFLFFBQVEsSUFBSWxCLFlBQVksQ0FBQzFFLElBQUksQ0FBQztFQUNqQyxDQUFDO0VBRUQsSUFBTTZGLGtCQUFrQixHQUFHLElBQUFwRix1QkFBVyxFQUNwQyxVQUFDQyxLQUFLO0lBQUEsT0FBS0EsS0FBSyxDQUFDRyxXQUFXLENBQUNnRixrQkFBa0I7RUFBQSxDQUNqRCxDQUFDO0VBRUQsSUFBTUMseUJBQXlCLEdBQUcsU0FBNUJBLHlCQUF5QkEsQ0FBSS9ILFFBQVEsRUFBSztJQUM5QyxJQUFBZ0kseUJBQWMsRUFBQyw2Q0FBNkMsRUFBRTtNQUM1RGhJLFFBQVEsRUFBRUEsUUFBUTtNQUNsQmlJLFlBQVksRUFBRUg7SUFDaEIsQ0FBQyxDQUFDO0lBQ0ZoRyxtQkFBbUIsQ0FBQzlCLFFBQVEsQ0FBQztJQUM3QitHLE9BQU8sQ0FBQ21CLElBQUksZ0NBQUFqSixNQUFBLENBQ3FCd0QsVUFBVSxDQUFDTyxNQUFNLDBCQUFBL0QsTUFBQSxDQUF1QkksZ0JBQWdCLGdCQUFBSixNQUFBLENBQWFlLFFBQVEsQ0FDOUcsQ0FBQztFQUNILENBQUM7RUFFRCxJQUFNbUksb0JBQW9CLEdBQUcsU0FBdkJBLG9CQUFvQkEsQ0FBSUMsR0FBRyxFQUFLO0lBQ3BDakcsV0FBVyxDQUFDLElBQUksQ0FBQztJQUNqQmtHLGNBQUssQ0FBQ3ZLLEdBQUcsQ0FBQ2lCLFFBQVEsQ0FBQ3FKLEdBQUcsQ0FBQyxDQUFDLENBQUNFLElBQUksQ0FBQyxVQUFDQyxRQUFRLEVBQUs7TUFDMUMsSUFBSUMsWUFBWSxHQUFHRCxRQUFRLENBQUN0RyxJQUFJLENBQUNBLElBQUk7TUFFckNFLFdBQVcsQ0FBQyxLQUFLLENBQUM7TUFDbEJaLE9BQU8sQ0FBQzlCLFlBQVksQ0FBQztNQUNyQjBCLE9BQU8sQ0FBQ3FILFlBQVksQ0FBQztNQUNyQmpJLGNBQWMsQ0FBQ2lJLFlBQVksQ0FBQztNQUM1QjlDLGtCQUFrQixDQUFDOEMsWUFBWSxDQUFDO01BQ2hDN0IsWUFBWSxDQUFDNkIsWUFBWSxDQUFDO0lBQzVCLENBQUMsQ0FBQztFQUNKLENBQUM7RUFFRCxJQUFNQyx1QkFBdUIsR0FBRyxTQUExQkEsdUJBQXVCQSxDQUFJTCxHQUFHLEVBQUs7SUFDdkMsSUFBSSxDQUFDbEcsVUFBVSxFQUFFO01BQ2ZQLGNBQWMsQ0FBQ3lHLEdBQUcsQ0FBQztNQUVuQixJQUFJQSxHQUFHLEtBQUsxSSxhQUFJLENBQUNDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFFO1FBQ3JEeUksR0FBRyxHQUNEQSxHQUFHLEtBQUsxSSxhQUFJLENBQUNDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQyxHQUM3QyxNQUFNLEdBQ055SSxHQUFHLEtBQUsxSSxhQUFJLENBQUNDLENBQUMsQ0FBQywwQ0FBMEMsQ0FBQyxHQUMxRCxXQUFXLEdBQ1gsRUFBRTtRQUVSd0ksb0JBQW9CLENBQUNDLEdBQUcsQ0FBQztNQUMzQjtJQUNGO0VBQ0YsQ0FBQztFQUVELElBQU1NLHFCQUFxQixHQUFHLFNBQXhCQSxxQkFBcUJBLENBQUlILFFBQVEsRUFBSztJQUMxQyxJQUFJdEcsSUFBSSxHQUFHc0csUUFBUSxDQUFDdEcsSUFBSSxDQUFDQSxJQUFJO0lBQzdCZCxPQUFPLENBQUNjLElBQUksQ0FBQztJQUNiMUIsY0FBYyxDQUFDMEIsSUFBSSxDQUFDO0lBQ3BCeUQsa0JBQWtCLENBQUN6RCxJQUFJLENBQUM7SUFDeEIwRSxZQUFZLENBQUMxRSxJQUFJLENBQUM7RUFDcEIsQ0FBQztFQUVELElBQU1tQyxlQUFlLEdBQUcsU0FBbEJBLGVBQWVBLENBQUlvQyxJQUFJLEVBQUs7SUFDaENELFVBQVUsQ0FBQ0MsSUFBSSxDQUFDO0lBRWhCLElBQUlBLElBQUksQ0FBQ25DLFlBQVksRUFBRTtNQUNyQjlDLE9BQU8sSUFBQXRDLE1BQUEsS0FBQTBKLG1CQUFBLENBQUFoTCxPQUFBLEVBQUsyRCxJQUFJLElBQUU1QixhQUFJLENBQUNDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFDLENBQUM7TUFDN0RnQyxjQUFjLENBQUNqQyxhQUFJLENBQUNDLENBQUMsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO01BRXpEMEksY0FBSyxDQUFDdkssR0FBRyxDQUFDaUIsUUFBUSxDQUFDeUgsSUFBSSxDQUFDbkIsRUFBRSxDQUFDLENBQUMsQ0FBQ2lELElBQUksQ0FBQyxVQUFDQyxRQUFRLEVBQUs7UUFDOUNHLHFCQUFxQixDQUFDSCxRQUFRLENBQUM7TUFDakMsQ0FBQyxDQUFDO0lBQ0o7RUFDRixDQUFDO0VBRUQsSUFBTUssbUJBQW1CLEdBQUcsU0FBdEJBLG1CQUFtQkEsQ0FBQSxFQUFTO0lBQ2hDckksY0FBYyxDQUFDMEIsSUFBSSxDQUFDO0lBQ3BCZCxPQUFPLENBQUNjLElBQUksQ0FBQztJQUNiLElBQUErRix5QkFBYyxFQUFDLG1CQUFtQixFQUFFO01BQ2xDQyxZQUFZLEVBQUVIO0lBQ2hCLENBQUMsQ0FBQztJQUNGdkYsUUFBUSxDQUFDLElBQUFzRyx5QkFBZ0IsRUFBQztNQUFFakYsSUFBSSxFQUFFO0lBQWdCLENBQUMsQ0FBQyxDQUFDO0lBRXJEeUUsY0FBSyxDQUFDdkssR0FBRyxDQUFDaUIsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUN1SixJQUFJLENBQUMsVUFBQ0MsUUFBUSxFQUFLO01BQ2xELElBQUl0RyxJQUFJLEdBQUdzRyxRQUFRLENBQUN0RyxJQUFJLENBQUNBLElBQUk7TUFFN0J5RCxrQkFBa0IsQ0FBQ3pELElBQUksQ0FBQztNQUN4QjBFLFlBQVksQ0FBQzFFLElBQUksQ0FBQztJQUNwQixDQUFDLENBQUM7RUFDSixDQUFDO0VBRUQsSUFBQTZHLGdCQUFTLEVBQUMsWUFBTTtJQUNkLElBQUksQ0FBQzVHLFVBQVUsSUFBSUQsSUFBSSxLQUFLLElBQUksRUFBRTtNQUNoQzJHLG1CQUFtQixDQUFDLENBQUM7SUFDdkI7RUFDRixDQUFDLEVBQUUsQ0FBQzFHLFVBQVUsRUFBRWhELGdCQUFnQixFQUFFK0MsSUFBSSxDQUFDLENBQUM7RUFFeEMsSUFBTThHLGFBQWEsR0FDaEIsQ0FBQ3pHLG1CQUFtQixLQUNuQi9DLFNBQVMsYUFBVEEsU0FBUyx1QkFBVEEsU0FBUyxDQUFFeUosSUFBSSxDQUNiLFVBQUNDLElBQUk7SUFBQSxPQUFLQSxJQUFJLENBQUN2QixXQUFXLENBQUMsQ0FBQyxLQUFLeEksZ0JBQWdCLENBQUN3SSxXQUFXLENBQUMsQ0FBQztFQUFBLENBQ2pFLENBQUMsS0FDSCxFQUFFO0VBQ0osSUFBTXdCLGFBQWEsR0FDakJuSixlQUFlLENBQUNnSixhQUFhLENBQUMsSUFDOUJySixhQUFJLENBQUNDLENBQUMsQ0FBQyw2Q0FBNkMsQ0FBQztFQUV2RCxvQkFDRTNFLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQWhKLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXdMLFFBQUEscUJBQ0VuTyxNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBLENBQUNvRixPQUFPLHFCQUNOcE8sTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSwyQkFDRWhKLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUEsZ0JBQUEvRSxNQUFBLENBQ01TLGFBQUksQ0FBQ0MsQ0FBQyxDQUFDLHFDQUFxQyxDQUFDLFFBQUFWLE1BQUEsQ0FDL0NjLGVBQWUsQ0FBQ2dKLGFBQWEsQ0FBQyxJQUFJaEosZUFBZSxDQUFDRSxXQUFXLENBQUMsQ0FBQyxDQUFDLE1BRWhFLENBQUMsRUFDSixDQUFDcUMsbUJBQW1CLElBQUkvQyxTQUFTLENBQUM4SixNQUFNLEtBQUssQ0FBQyxpQkFDN0NyTyxNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBLGFBQUt0RSxhQUFJLENBQUNDLENBQUMsQ0FBQyw2Q0FBNkMsQ0FBTSxDQUNoRSxlQUNEM0UsTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDc0YsZ0JBQWdCLFFBQ2QsQ0FBQ2hILG1CQUFtQixJQUFJL0MsU0FBUyxDQUFDOEosTUFBTSxHQUFHLENBQUMsaUJBQzNDck8sTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDeEgsZUFBQSxDQUFBbUIsT0FBYztJQUNiMEgsRUFBRSxFQUFDLHVCQUF1QjtJQUMxQm5CLFNBQVMsRUFBRSxxQkFBc0I7SUFDakNxRixLQUFLLEVBQUVMLGFBQWEsR0FBRyxHQUFJO0lBQzNCTSxPQUFPLEVBQUM7RUFBVyxHQUVsQmpLLFNBQVMsQ0FBQ3NHLEdBQUcsQ0FBQyxVQUFDN0YsUUFBUSxFQUFLO0lBQzNCLG9CQUNFaEYsTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDekgsU0FBQSxDQUFBb0IsT0FBUSxDQUFDOEwsSUFBSTtNQUNackwsR0FBRyxFQUFFNEIsUUFBUztNQUNkMEosSUFBSSxFQUFDLEdBQUc7TUFDUnZGLE9BQU8sRUFBRSxTQUFBQSxRQUFBO1FBQUEsT0FBTTRELHlCQUF5QixDQUFDL0gsUUFBUSxDQUFDO01BQUEsQ0FBQztNQUNuRDBFLEtBQUssRUFBRTtRQUNMaUYsU0FBUyxFQUNQbEgsVUFBVSxDQUFDTyxNQUFNLEtBQUssSUFBSSxHQUFHLE9BQU8sR0FBRztNQUMzQztJQUFFLEdBRURqRCxlQUFlLENBQUNDLFFBQVEsQ0FDWixDQUFDO0VBRXBCLENBQUMsQ0FDYSxDQUVGLENBQ2YsQ0FBQyxlQUNOaEYsTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDNEYsWUFBWSxxQkFDWDVPLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQ25ILGNBQUEsQ0FBQWdOLGFBQWE7SUFDWjdKLFFBQVEsRUFBRWQsZ0JBQWlCO0lBQzNCRyxnQkFBZ0IsRUFBRUEsZ0JBQWlCO0lBQ25DMEQsS0FBSyxFQUFFQTtFQUFNLENBQ2QsQ0FDVyxDQUFDLGVBRWYvSCxNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBLENBQUM4RixhQUFhLHFCQUNaOU8sTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDeEksWUFBQSxDQUFBdU8sV0FBVztJQUFDQyxnQkFBZ0IsRUFBRTNDO0VBQXdCLENBQUUsQ0FBQyxlQUMxRHJNLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUE7SUFBS0UsU0FBUyxFQUFFO0VBQWlCLGdCQUMvQmxKLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQzVILEtBQUEsQ0FBQTZOLElBQUk7SUFDSDNJLElBQUksRUFBRUEsSUFBSztJQUNYSSxXQUFXLEVBQUVBLFdBQVk7SUFDekJ3SSxhQUFhLEVBQUV6QjtFQUF3QixDQUN4QyxDQUNFLENBQUMsZUFDTnpOLE1BQUEsQ0FBQTJDLE9BQUEsQ0FBQXFHLGFBQUEsQ0FBQ21HLGlCQUFpQjtJQUFDcEgsS0FBSyxFQUFFQTtFQUFNLEdBQzdCYixVQUFVLGlCQUFJbEgsTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDcEgsUUFBQSxDQUFBd04sT0FBTyxNQUFFLENBQUMsZUFDMUJwUCxNQUFBLENBQUEyQyxPQUFBLENBQUFxRyxhQUFBO0lBQUtFLFNBQVMsRUFBRTtFQUFnQixHQUM3QixDQUFDaEMsVUFBVSxJQUFJaEIsSUFBSSxLQUFLLElBQUksSUFBSUosT0FBTyxLQUFLLElBQUksaUJBQy9DOUYsTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDbEgsY0FBQSxDQUFBYSxPQUFhLHFCQUNaM0MsTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDOUgsSUFBQSxDQUFBbU8sR0FBRztJQUNGMUUsS0FBSyxFQUFFakYsUUFBUztJQUNoQjRKLGNBQWMsRUFBRXhKLE9BQVE7SUFDeEJ5SixLQUFLLEVBQUUsRUFBRztJQUNWQyxNQUFNLEVBQUUsRUFBRztJQUNYMUgsV0FBVyxFQUFFRCxVQUFXO0lBQ3hCNEgsV0FBVyxFQUFFOUw7RUFBMkIsQ0FDekMsQ0FDWSxDQUVkLENBQUMsRUFDTCxDQUFDdUQsVUFBVSxJQUFJaEIsSUFBSSxLQUFLLElBQUksaUJBQzNCbEcsTUFBQSxDQUFBMkMsT0FBQSxDQUFBcUcsYUFBQSxDQUFDN0gsV0FBQSxDQUFBdU8sVUFBVTtJQUNUQyxrQkFBa0IsRUFBRS9DLGlCQUFrQjtJQUN0QzNGLElBQUksRUFBRWYsSUFBSztJQUNYdUMsT0FBTyxFQUFFQSxPQUFRO0lBQ2pCa0IsU0FBUyxFQUFFc0MsR0FBSTtJQUNmMkQsY0FBYyxFQUFFLElBQUs7SUFDckJDLGlCQUFpQixFQUFFbk0sbUJBQW9CO0lBQ3ZDb00sWUFBWSxFQUFFQyxzQ0FBa0I7SUFDaENDLDRCQUE0QixFQUFFO01BQUVoTCxRQUFRLEVBQUVkO0lBQWlCLENBQUU7SUFDN0QrTCxrQkFBa0IsRUFBRTtFQUFFLENBQ3ZCLENBRWMsQ0FDTixDQUNSLENBQ1QsQ0FBQztBQUVQLENBQUM7QUFBQ0MsT0FBQSxDQUFBdE0sZ0JBQUEsR0FBQUEsZ0JBQUE7QUFFRixJQUFNcUYsT0FBTyxHQUFHa0gseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHlkQWlDUHRGLFlBQUssQ0FBQ0MsV0FBVyxDQUFDQyxPQUFPLENBQUNDLEdBQUcsRUFFdEJILFlBQUssQ0FBQ0MsV0FBVyxDQUFDQyxPQUFPLENBQUNDLEdBQUcsRUFPM0MsVUFBQ29GLENBQUM7RUFBQSxPQUFNQSxDQUFDLENBQUN6SSxLQUFLLEdBQUcsY0FBYyxHQUFHLGFBQWE7QUFBQSxDQUFDLENBTzFEO0FBRUgsSUFBTXVHLGdCQUFnQixHQUFHNkIseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLDhEQUlsQztBQUVELElBQU0zQixZQUFZLEdBQUd1Qix5QkFBTSxDQUFDQyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsNkJBRTlCO0FBRUQsSUFBTXpCLGFBQWEsR0FBR3FCLHlCQUFNLENBQUNDLEdBQUcsQ0FBQUMsVUFBQTtFQUFBQyxXQUFBO0VBQUFDLFdBQUE7QUFBQSxtRkFLL0I7QUFFRCxJQUFNcEIsaUJBQWlCLEdBQUdnQix5QkFBTSxDQUFDQyxHQUFHLENBQUFDLFVBQUE7RUFBQUMsV0FBQTtFQUFBQyxXQUFBO0FBQUEsa2dCQXNDbkM7QUFFRCxJQUFNbkMsT0FBTyxHQUFHK0IseUJBQU0sQ0FBQ0MsR0FBRyxDQUFBQyxVQUFBO0VBQUFDLFdBQUE7RUFBQUMsV0FBQTtBQUFBLHNGQVV6QiJ9
|