@kando-env/kando-ui 1.2.300-alpha.6 → 1.2.300-alpha.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (614) hide show
  1. package/lib/Router.js +75 -36
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +35 -24
  3. package/lib/Widgets/EventsRow/EventsRow.js +39 -26
  4. package/lib/Widgets/Map/GraphUtils.js +6 -4
  5. package/lib/Widgets/Map/Map.js +81 -65
  6. package/lib/Widgets/Map/MapUtils.js +41 -41
  7. package/lib/Widgets/Map/areas/AreaPolygon.js +93 -52
  8. package/lib/Widgets/Map/areas/AreaPolygons.js +31 -25
  9. package/lib/Widgets/Map/areas/AreaUtils.js +45 -45
  10. package/lib/Widgets/Map/edges/Edge.js +33 -24
  11. package/lib/Widgets/Map/edges/Edges.js +26 -20
  12. package/lib/Widgets/Map/edges/arrows/Arrows.js +45 -24
  13. package/lib/Widgets/Map/events/Event.js +18 -17
  14. package/lib/Widgets/Map/events/EventIndicator.js +55 -58
  15. package/lib/Widgets/Map/events/EventPath.js +25 -25
  16. package/lib/Widgets/Map/events/EventUtils.js +80 -56
  17. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +16 -16
  18. package/lib/Widgets/Map/events/PointOfEvent.js +31 -26
  19. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +36 -28
  20. package/lib/Widgets/Map/events/Snail.js +21 -19
  21. package/lib/Widgets/Map/graphDNDArea/GraphDNDArea.js +90 -94
  22. package/lib/Widgets/Map/map/FloatingGraph.js +21 -24
  23. package/lib/Widgets/Map/map/GraphDateButton.js +20 -27
  24. package/lib/Widgets/Map/matchGraph/MatchGraph.js +14 -14
  25. package/lib/Widgets/Map/matchGraph/createFloatingGraph.js +16 -17
  26. package/lib/Widgets/Map/points/PointIcon.js +16 -17
  27. package/lib/Widgets/Map/points/PointMarker.js +97 -67
  28. package/lib/Widgets/Map/points/PointMarkers.js +67 -45
  29. package/lib/Widgets/Map/points/PointUtils.js +65 -55
  30. package/lib/Widgets/MostPolluting/Areas/AreaBox/AreaBox.js +45 -27
  31. package/lib/Widgets/MostPolluting/Areas/AreaBox/Map/Map.js +18 -14
  32. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +12 -10
  33. package/lib/Widgets/MostPolluting/Areas/AreaBox/styles.js +6 -4
  34. package/lib/Widgets/MostPolluting/Areas/Areas.js +58 -28
  35. package/lib/Widgets/MostPolluting/Areas/areas.mock.js +4 -3
  36. package/lib/Widgets/MostPolluting/Areas/styles.js +6 -4
  37. package/lib/Widgets/MostPolluting/EmptyState/EmptyState.js +9 -12
  38. package/lib/Widgets/MostPolluting/Factories/Factories.js +65 -33
  39. package/lib/Widgets/MostPolluting/Factories/FactoryBox/FactoryBox.js +18 -15
  40. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +8 -8
  41. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PollutionScore.js +11 -13
  42. package/lib/Widgets/MostPolluting/Factories/FactoryBox/styles.js +6 -4
  43. package/lib/Widgets/MostPolluting/Factories/factories.mock.js +3 -2
  44. package/lib/Widgets/MostPolluting/Factories/styles.js +6 -4
  45. package/lib/Widgets/MostPolluting/MostPolluting.js +24 -18
  46. package/lib/Widgets/MostPolluting/MostPolluting.stories.js +32 -20
  47. package/lib/Widgets/MostPolluting/ShowMore/ShowMore.js +5 -7
  48. package/lib/Widgets/MostPolluting/ShowMore/styles.js +6 -7
  49. package/lib/Widgets/MostPolluting/assets/index.js +11 -11
  50. package/lib/Widgets/MostPolluting/components/ChangePercent.js +14 -20
  51. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +31 -36
  52. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.js +34 -44
  53. package/lib/Widgets/MostPolluting/components/PollutionScorePercent.test.js +36 -40
  54. package/lib/Widgets/MostPolluting/components/PotentialImpact.js +27 -28
  55. package/lib/Widgets/MostPolluting/components/PotentialImpact.test.js +49 -53
  56. package/lib/Widgets/MostPolluting/styles.js +6 -4
  57. package/lib/Widgets/PotentialImpactSummary/Back/Back.js +6 -8
  58. package/lib/Widgets/PotentialImpactSummary/Icon.js +6 -8
  59. package/lib/Widgets/PotentialImpactSummary/index.js +28 -20
  60. package/lib/Widgets/PotentialImpactSummary/index.test.js +54 -48
  61. package/lib/Widgets/PotentialImpactSummary/styles.js +13 -8
  62. package/lib/Widgets/QualitySummary/PieChart/LegendMenu/LegendMenu.js +8 -10
  63. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +18 -23
  64. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +33 -36
  65. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +25 -27
  66. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +38 -35
  67. package/lib/Widgets/QualitySummary/QualitySummary.js +14 -10
  68. package/lib/Widgets/QualitySummary/qualitySummary.mock.js +7 -4
  69. package/lib/Widgets/QualitySummary/styles.js +19 -20
  70. package/lib/Widgets/UtilityInformation/MapModal/MapModal.js +14 -12
  71. package/lib/Widgets/UtilityInformation/PopupWithMap/Map/Map.js +25 -25
  72. package/lib/Widgets/UtilityInformation/PopupWithMap/PopupWithMap.js +26 -30
  73. package/lib/Widgets/UtilityInformation/UtilityInformation.js +43 -25
  74. package/lib/Widgets/UtilityInformation/styles.js +29 -31
  75. package/lib/Widgets/UtilityInformation/utilityInformation.mock.js +5 -3
  76. package/lib/assets/icons/TopNavbar/index.js +6 -6
  77. package/lib/assets/icons/TrendSvg.js +7 -7
  78. package/lib/assets/icons/index.js +14 -14
  79. package/lib/assets/icons/kandoStepper/index.js +5 -5
  80. package/lib/assets/icons/siteTypes/index.js +1 -1
  81. package/lib/components/ApplyButton/ApplyButton.js +11 -10
  82. package/lib/components/ApplyButton/index.js +4 -3
  83. package/lib/components/Backdrop/Backdrop.js +5 -7
  84. package/lib/components/ContentLoader/ContentLoader.js +10 -12
  85. package/lib/components/ContentLoader/index.js +1 -1
  86. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.js +12 -12
  87. package/lib/components/CustomInputs/DoubleTabs/DoubleTabs.stories.js +9 -5
  88. package/lib/components/CustomInputs/DoubleTabs/styles.js +16 -21
  89. package/lib/components/CustomInputs/PasswordInput/PasswordInput.js +20 -12
  90. package/lib/components/CustomInputs/PrimaryButton/PrimaryButton.js +6 -7
  91. package/lib/components/CustomInputs/Search/Search.js +63 -40
  92. package/lib/components/CustomInputs/Search/index.js +4 -3
  93. package/lib/components/CustomInputs/Select/Select.js +56 -42
  94. package/lib/components/CustomInputs/Select/Select.stories.js +10 -6
  95. package/lib/components/DamageType/DamageType.js +60 -35
  96. package/lib/components/DamageType/index.js +4 -3
  97. package/lib/components/DataLoaderError/DataLoaderError.js +7 -9
  98. package/lib/components/DischargeHeatmap/DischargeHeatmap.js +13 -11
  99. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +72 -71
  100. package/lib/components/DischargeHeatmap/DischargeHeatmapContainer.js +40 -28
  101. package/lib/components/DischargeHeatmap/HighchartsOptions.js +16 -12
  102. package/lib/components/DischargeHeatmap/index.js +4 -3
  103. package/lib/components/DischargeHeatmap/mocks/handlers.js +4 -3
  104. package/lib/components/DischargeHeatmap/popupText.js +12 -11
  105. package/lib/components/DischargeHeatmap/titles.js +6 -4
  106. package/lib/components/ErrorBoundary.js +42 -27
  107. package/lib/components/Events/Events.js +48 -29
  108. package/lib/components/Events/index.js +4 -3
  109. package/lib/components/Graph/Graph.js +91 -70
  110. package/lib/components/Graph/index.js +4 -3
  111. package/lib/components/Header/Breadcrumbs/Breadcrumbs.js +24 -19
  112. package/lib/components/Header/Breadcrumbs/index.js +4 -3
  113. package/lib/components/Header/DoubleTabs/DoubleTabs.js +28 -18
  114. package/lib/components/Header/DoubleTabs/DoubleTabs.stories.js +9 -5
  115. package/lib/components/Header/DoubleTabs/styles.js +8 -5
  116. package/lib/components/Header/Header.js +3 -3
  117. package/lib/components/Header/Header.stories.js +9 -5
  118. package/lib/components/Header/InfoBar/Breadcrumbs/Breadcrumbs.js +24 -24
  119. package/lib/components/Header/InfoBar/InfoBar.js +35 -42
  120. package/lib/components/Header/InfoBar/Search/Control.js +12 -11
  121. package/lib/components/Header/InfoBar/Search/GroupLabel.js +7 -8
  122. package/lib/components/Header/InfoBar/Search/Search.js +22 -15
  123. package/lib/components/Header/InfoBar/Search/SearchContainer.js +30 -16
  124. package/lib/components/Header/InfoBar/Search/index.js +4 -3
  125. package/lib/components/Header/InfoBar/Search/searchStyle.js +51 -42
  126. package/lib/components/Header/InfoBar/TimeFilter.js +17 -13
  127. package/lib/components/Header/KandoNavbar/KandoNavbar.js +90 -63
  128. package/lib/components/Header/KandoNavbar/index.js +4 -3
  129. package/lib/components/Header/Slideshow/Slideshow.js +91 -67
  130. package/lib/components/Header/Slideshow/index.js +4 -3
  131. package/lib/components/Header/Toolbar/ClientImg/ClientImg.js +5 -7
  132. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +24 -22
  133. package/lib/components/Header/Toolbar/MenuCreator/MenuCreator.js +14 -14
  134. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +33 -27
  135. package/lib/components/Header/Toolbar/Toolbar.js +76 -56
  136. package/lib/components/InfoBar/InfoBar.js +24 -10
  137. package/lib/components/InfoBar/InfoBar.stories.js +9 -5
  138. package/lib/components/KandoModal/KandoModal.js +40 -24
  139. package/lib/components/KandoModal/index.js +4 -3
  140. package/lib/components/Link.js +8 -9
  141. package/lib/components/Links/CustomRedirect/CustomRedirect.js +9 -10
  142. package/lib/components/Links/StyledLink/StyledLink.js +14 -13
  143. package/lib/components/Links/StyledNavLink/StyledNavLink.js +12 -12
  144. package/lib/components/LiveEvents/CarouselSlide.js +10 -11
  145. package/lib/components/LiveEvents/LiveEvents.js +6 -7
  146. package/lib/components/LiveEvents/index.js +4 -3
  147. package/lib/components/LoaderByPercent/LoaderByPercent.js +30 -37
  148. package/lib/components/Map/Map.js +25 -20
  149. package/lib/components/Map/index.js +4 -3
  150. package/lib/components/Modal/Modal.js +10 -10
  151. package/lib/components/NarrowHeader.js +32 -18
  152. package/lib/components/PointInfo/PointInfo.js +19 -20
  153. package/lib/components/PointInfo/index.js +4 -3
  154. package/lib/components/PopupModal/PopupModal.js +17 -13
  155. package/lib/components/PopupModal/PopupModal.stories.js +24 -17
  156. package/lib/components/Sector/Sector.js +9 -10
  157. package/lib/components/Sector/Sector.test.js +21 -20
  158. package/lib/components/Sector/index.js +4 -3
  159. package/lib/components/Sector/sectorIcons.js +5 -4
  160. package/lib/components/SevereEvent/Eta/Eta.js +54 -49
  161. package/lib/components/SevereEvent/Eta/styles.js +8 -11
  162. package/lib/components/SevereEvent/SevereEvent.js +35 -27
  163. package/lib/components/Spinner/Spinner.js +8 -8
  164. package/lib/components/Spinner/Spinner.stories.js +11 -6
  165. package/lib/components/Spinner/index.js +4 -3
  166. package/lib/components/Spinner/styles.js +16 -21
  167. package/lib/components/Tabs/Tabs.js +29 -18
  168. package/lib/components/Tabs/Tabs.stories.js +10 -6
  169. package/lib/components/Tabs/assets/index.js +5 -5
  170. package/lib/components/TimeRangeSelector/KandoRangePicker/ComparisonSelect.js +18 -13
  171. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePicker.js +48 -35
  172. package/lib/components/TimeRangeSelector/KandoRangePicker/KandoRangePickerContainer.js +34 -20
  173. package/lib/components/TimeRangeSelector/KandoRangePicker/index.js +4 -3
  174. package/lib/components/TimeRangeSelector/TimeRangeHelper.js +22 -17
  175. package/lib/components/TimeRangeSelector/TimeRangeItem/TimeRangeItem.js +14 -13
  176. package/lib/components/TimeRangeSelector/TimeRangeItem/index.js +4 -3
  177. package/lib/components/TimeRangeSelector/TimeRangeList.js +27 -24
  178. package/lib/components/TimeRangeSelector/TimeRangeOptions.js +27 -17
  179. package/lib/components/TimeRangeSelector/TimeRangeSelector.js +32 -29
  180. package/lib/components/TimeRangeSelector/TimeRangeSelector.stories.js +10 -6
  181. package/lib/components/TimeRangeSelector/constants.js +5 -3
  182. package/lib/components/TimeRangeSelector/index.js +4 -3
  183. package/lib/components/Toggle/Toggle.js +18 -11
  184. package/lib/components/Toggle/index.js +4 -3
  185. package/lib/components/TrendGraph/TrendGraph.js +42 -24
  186. package/lib/components/TrendGraph/index.js +4 -3
  187. package/lib/components/TrendGraphNVL/TrendGraphNVL.js +33 -26
  188. package/lib/components/TrendGraphNVL/index.js +4 -3
  189. package/lib/development-environment/index.js +13 -9
  190. package/lib/development-environment/mock/browser.js +5 -2
  191. package/lib/development-environment/mock/get.js +10 -8
  192. package/lib/development-environment/mock/handlers.js +3 -2
  193. package/lib/development-environment/mock/mockBus.js +5 -4
  194. package/lib/development-environment/mock/mockObjects/area-trends-graph.js +3 -2
  195. package/lib/development-environment/mock/mockObjects/areaInformation.js +3 -2
  196. package/lib/development-environment/mock/mockObjects/areaQualitySummary.js +3 -2
  197. package/lib/development-environment/mock/mockObjects/areaSitesData.js +3 -2
  198. package/lib/development-environment/mock/mockObjects/areasJson.js +3 -2
  199. package/lib/development-environment/mock/mockObjects/controlRoomNetworkEdges.js +3 -2
  200. package/lib/development-environment/mock/mockObjects/covidView-areasData-24.js +3 -2
  201. package/lib/development-environment/mock/mockObjects/data-menuData.js +3 -2
  202. package/lib/development-environment/mock/mockObjects/data-search.js +3 -2
  203. package/lib/development-environment/mock/mockObjects/discharge_effluent_quality.js +3 -2
  204. package/lib/development-environment/mock/mockObjects/discharge_pattern_overtime.js +3 -2
  205. package/lib/development-environment/mock/mockObjects/eventFiltersJson.js +3 -2
  206. package/lib/development-environment/mock/mockObjects/eventsJson.js +3 -2
  207. package/lib/development-environment/mock/mockObjects/metascore.js +3 -2
  208. package/lib/development-environment/mock/mockObjects/permissionsJson.js +3 -2
  209. package/lib/development-environment/mock/mockObjects/pointsJson.js +3 -2
  210. package/lib/development-environment/mock/mockObjects/site-info.js +3 -2
  211. package/lib/development-environment/mock/mockObjects/trend-graph-component-data-907.js +3 -2
  212. package/lib/development-environment/togly/ToglyDashboard.js +23 -13
  213. package/lib/development-environment/togly/ToglyItem.js +29 -25
  214. package/lib/development-environment/togly/init.js +3 -3
  215. package/lib/development-environment/togly/macro.js +9 -13
  216. package/lib/development-environment/togly/useDoubleKeyDown.js +9 -7
  217. package/lib/development-environment/togly/useLocalStorage.js +18 -13
  218. package/lib/hooks/useApi.js +56 -20
  219. package/lib/hooks/useApiWithDashboardQuery.js +48 -29
  220. package/lib/hooks/useClickOutside.js +5 -4
  221. package/lib/hooks/useInitializeHeaders.js +6 -6
  222. package/lib/hooks/useKandoFetch.js +31 -17
  223. package/lib/hooks/useMap.js +37 -25
  224. package/lib/hooks/useNavContext.js +26 -22
  225. package/lib/hooks/useQueryURL.js +3 -2
  226. package/lib/hooks/useRemoveExistingLayers.js +8 -7
  227. package/lib/hooks/useUpdateEventBodyTail.js +19 -14
  228. package/lib/hooks/useUserTimeZone.js +29 -32
  229. package/lib/hooks/useUserTimeZone.test.js +23 -19
  230. package/lib/hooks/useWindowSize.js +14 -7
  231. package/lib/i18n/he.json +1 -2
  232. package/lib/index.js +13 -11
  233. package/lib/macros/getVersion.js +2 -2
  234. package/lib/pages/AreaPage/AreaPage.js +64 -28
  235. package/lib/pages/AreaPage/Dashboard/AreaMapContainer/AreaMapContainer.js +16 -14
  236. package/lib/pages/AreaPage/Dashboard/Dashboard.js +19 -16
  237. package/lib/pages/AreaPage/Dashboard/LineChart/LineChart.js +28 -16
  238. package/lib/pages/AreaPage/Dashboard/LineChart/options/options.js +7 -7
  239. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +68 -34
  240. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/PieChart/PieChart.js +8 -8
  241. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/SiteBox.js +10 -10
  242. package/lib/pages/AreaPage/Dashboard/Sites/SitesBox/styles.js +6 -4
  243. package/lib/pages/AreaPage/Dashboard/Sites/factories.mock.js +3 -2
  244. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +8 -5
  245. package/lib/pages/AssessmentPage/AssessmentPage.js +46 -38
  246. package/lib/pages/CannyWidget/Feedback.js +16 -14
  247. package/lib/pages/CovidPage/CovidPage.js +16 -9
  248. package/lib/pages/CovidPage/components/Body.js +30 -26
  249. package/lib/pages/CovidPage/components/Map.js +40 -28
  250. package/lib/pages/CovidPage/components/Sidebar.js +16 -15
  251. package/lib/pages/CovidPage/components/Summary.js +29 -20
  252. package/lib/pages/CovidPage/components/TrendGraphNVL/TrendGraphNVL.js +33 -26
  253. package/lib/pages/CovidPage/components/TrendGraphNVL/index.js +4 -3
  254. package/lib/pages/CovidPage/components/TrendPopupContent/TrendPopupContent.js +76 -52
  255. package/lib/pages/CovidPage/components/TrendPopupContent/index.js +4 -3
  256. package/lib/pages/CovidPage/components/areas/Area.js +36 -24
  257. package/lib/pages/CovidPage/components/areas/AreaPolygonWBE.js +46 -45
  258. package/lib/pages/CovidPage/components/areas/AreaPolygonsWBE.js +36 -32
  259. package/lib/pages/CovidPage/components/areas/AreasList.js +42 -29
  260. package/lib/pages/CovidPage/components/areas/Sort.js +17 -12
  261. package/lib/pages/CovidPage/components/nvlStatusHelper.js +11 -11
  262. package/lib/pages/DashboardMap/AreaCard.js +26 -25
  263. package/lib/pages/DashboardMap/FactoryCard.js +20 -24
  264. package/lib/pages/DashboardMap/HighchartsOptions.js +5 -6
  265. package/lib/pages/DashboardMap/List.js +54 -42
  266. package/lib/pages/DashboardMap/ListContext.js +19 -14
  267. package/lib/pages/DashboardMap/Loader.js +3 -3
  268. package/lib/pages/DashboardMap/WWTPMap.js +57 -42
  269. package/lib/pages/DashboardMap/Widget.js +74 -61
  270. package/lib/pages/DashboardMap/index.js +4 -3
  271. package/lib/pages/DashboardMap/utils.js +24 -19
  272. package/lib/pages/EventsPage/Body/Body.js +18 -21
  273. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropContainer.js +20 -17
  274. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropUtils.js +36 -27
  275. package/lib/pages/EventsPage/DragAndDropArea/DragAndDropWrapper.js +9 -10
  276. package/lib/pages/EventsPage/DragAndDropArea/DraggableItem.js +10 -13
  277. package/lib/pages/EventsPage/DragAndDropArea/DraggableList.js +31 -22
  278. package/lib/pages/EventsPage/DragAndDropArea/index.js +4 -3
  279. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +64 -52
  280. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainerHelpers.js +23 -17
  281. package/lib/pages/EventsPage/EventsPage.js +13 -8
  282. package/lib/pages/EventsPage/FloatingGraph/FloatingGraph.js +41 -27
  283. package/lib/pages/EventsPage/events/MoreInfo.js +19 -18
  284. package/lib/pages/EventsPage/events/Sidebar.js +19 -22
  285. package/lib/pages/EventsPage/events/event_info/EarlyWarnings.js +38 -31
  286. package/lib/pages/EventsPage/events/event_info/EventDetails.js +32 -34
  287. package/lib/pages/EventsPage/events/event_info/EventInfo.js +43 -42
  288. package/lib/pages/EventsPage/events/event_info/EventPath/EventPath.js +5 -5
  289. package/lib/pages/EventsPage/events/event_info/EventSection.js +18 -15
  290. package/lib/pages/EventsPage/events/event_info/EventSection.test.js +39 -44
  291. package/lib/pages/EventsPage/events/event_info/EventTimeRange.js +50 -39
  292. package/lib/pages/EventsPage/events/event_info/Header/Header.js +7 -8
  293. package/lib/pages/EventsPage/events/event_info/Header/HeaderContainer.js +34 -29
  294. package/lib/pages/EventsPage/events/event_info/Header/index.js +4 -3
  295. package/lib/pages/EventsPage/events/event_info/HistoricalInformation.js +7 -6
  296. package/lib/pages/EventsPage/events/event_info/MiniEventTree.js +39 -30
  297. package/lib/pages/EventsPage/events/event_info/MobileEventPath.js +9 -6
  298. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/LineChartYear/LineChartYear.js +25 -16
  299. package/lib/pages/EventsPage/events/event_info/MockHistoryInformation/MockHistoryInformation.js +4 -4
  300. package/lib/pages/EventsPage/events/event_info/PollutionDischarge.js +24 -23
  301. package/lib/pages/EventsPage/events/event_info/SamplingList/SamplingDetails.js +11 -12
  302. package/lib/pages/EventsPage/events/event_info/SamplingList/Samplings.js +10 -11
  303. package/lib/pages/EventsPage/events/event_info/SamplingList/index.js +4 -3
  304. package/lib/pages/EventsPage/events/event_info/SeverityScore/ScoreExplanation.js +10 -13
  305. package/lib/pages/EventsPage/events/event_info/SeverityScore/SeverityScore.js +9 -8
  306. package/lib/pages/EventsPage/events/event_info/SeverityScore/index.js +4 -3
  307. package/lib/pages/EventsPage/events/event_info/SourceDetails/Confidence.js +4 -6
  308. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.js +15 -11
  309. package/lib/pages/EventsPage/events/event_info/SourceDetails/Discharging.test.js +22 -0
  310. package/lib/pages/EventsPage/events/event_info/SourceDetails/IconAndTitles.js +5 -7
  311. package/lib/pages/EventsPage/events/event_info/SourceDetails/MoreInfoButton.js +13 -11
  312. package/lib/pages/EventsPage/events/event_info/SourceDetails/OtherSources.js +6 -7
  313. package/lib/pages/EventsPage/events/event_info/SourceDetails/PotentialSources.js +8 -9
  314. package/lib/pages/EventsPage/events/event_info/SourceDetails/SingleSource.js +10 -13
  315. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceCardBody.js +7 -8
  316. package/lib/pages/EventsPage/events/event_info/SourceDetails/SourceDetails.js +12 -13
  317. package/lib/pages/EventsPage/events/event_info/SourceDetails/WaterConsumptionPerDay.js +7 -7
  318. package/lib/pages/EventsPage/events/event_info/Timelines/DischargeBox.js +8 -9
  319. package/lib/pages/EventsPage/events/event_info/Timelines/EarlyWarning.js +18 -19
  320. package/lib/pages/EventsPage/events/event_info/Timelines/LiveStatusBadge.js +7 -6
  321. package/lib/pages/EventsPage/events/event_info/Timelines/SeenBox.js +11 -12
  322. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.js +13 -15
  323. package/lib/pages/EventsPage/events/event_info/Timelines/Timelines.test.js +27 -0
  324. package/lib/pages/EventsPage/events/event_info/Timelines/Titles.js +5 -4
  325. package/lib/pages/EventsPage/events/event_info/Timelines/index.js +4 -3
  326. package/lib/pages/EventsPage/events/event_info/Timelines/style.js +6 -4
  327. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsLineChart.js +26 -17
  328. package/lib/pages/EventsPage/events/event_info/charts/EventDetailsPieChart.js +40 -25
  329. package/lib/pages/EventsPage/events/event_info/damage_type/DamageType.js +39 -30
  330. package/lib/pages/EventsPage/events/event_info/samplingsOld/Sampling.js +12 -13
  331. package/lib/pages/EventsPage/events/event_info/samplingsOld/Samplings.js +20 -17
  332. package/lib/pages/EventsPage/events/event_info/sources/Source.js +31 -27
  333. package/lib/pages/EventsPage/events/event_info/sources/Sources.js +27 -22
  334. package/lib/pages/EventsPage/events/event_info/styles.js +15 -21
  335. package/lib/pages/EventsPage/events/events_list/EventItem.js +21 -18
  336. package/lib/pages/EventsPage/events/events_list/EventUtils.js +11 -11
  337. package/lib/pages/EventsPage/events/events_list/EventsList.js +139 -115
  338. package/lib/pages/EventsPage/events/events_list/Filter/Filter.js +56 -39
  339. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +111 -73
  340. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +72 -53
  341. package/lib/pages/EventsPage/events/events_list/Filter/FiltersDropDown.js +44 -39
  342. package/lib/pages/EventsPage/events/events_list/Filter/OptionsDropDown.js +39 -30
  343. package/lib/pages/EventsPage/events/events_list/Sort.js +19 -14
  344. package/lib/pages/ImportFileWizard/FileUploadRespones.js +22 -14
  345. package/lib/pages/ImportFileWizard/ImportButtomButtons.js +8 -9
  346. package/lib/pages/ImportFileWizard/ImportFile.js +25 -21
  347. package/lib/pages/ImportFileWizard/ResponseBody.js +36 -26
  348. package/lib/pages/ImportFileWizard/ValidationForm.js +22 -22
  349. package/lib/pages/ImportFileWizard/ValidationResponse.js +25 -23
  350. package/lib/pages/ImportFileWizard/importFileUtils.js +5 -4
  351. package/lib/pages/ImportFileWizard/index.js +4 -3
  352. package/lib/pages/ImportGisPage/ImportGisContainer.js +27 -22
  353. package/lib/pages/ImportGisPage/ImportedGisFilesPage.js +26 -23
  354. package/lib/pages/ImportGisPage/importGisUtils.js +24 -15
  355. package/lib/pages/ImportGisProcess/index.js +18 -14
  356. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/MultiChoiceTabs.js +13 -7
  357. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/RadioTabs.js +20 -18
  358. package/lib/pages/NotificationsPage/EditNotificationModal/Buttons/SeverityButtons.js +4 -4
  359. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.js +58 -28
  360. package/lib/pages/NotificationsPage/EditNotificationModal/EditNotificationModal.stories.js +12 -8
  361. package/lib/pages/NotificationsPage/Notification/Notification.js +13 -17
  362. package/lib/pages/NotificationsPage/Notifications.mock.js +3 -2
  363. package/lib/pages/NotificationsPage/Notifications.stories.js +10 -6
  364. package/lib/pages/NotificationsPage/NotificationsPage.js +38 -19
  365. package/lib/pages/NotificationsPage/assets/index.js +9 -9
  366. package/lib/pages/NotificationsPageV2/NotificationsPage.js +97 -71
  367. package/lib/pages/NotificationsPageV2/components/NotificationsCard.js +65 -95
  368. package/lib/pages/NotificationsPageV2/components/NotificationsForm/NotificationsFormContent.js +140 -127
  369. package/lib/pages/NotificationsPageV2/components/NotificationsSidebar.js +74 -72
  370. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +87 -90
  371. package/lib/pages/NotificationsPageV2/notificationUtils.js +39 -40
  372. package/lib/pages/OldSitePage/OldSitePage.js +132 -56
  373. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.js +10 -6
  374. package/lib/pages/OldSitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -5
  375. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +7 -9
  376. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +21 -19
  377. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +12 -10
  378. package/lib/pages/OldSitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +19 -12
  379. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +13 -17
  380. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +9 -5
  381. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +16 -18
  382. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +64 -51
  383. package/lib/pages/OldSitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +8 -10
  384. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.js +54 -29
  385. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.mock.js +7 -4
  386. package/lib/pages/OldSitePage/SamplingParameters/SamplingParameters.stories.js +19 -12
  387. package/lib/pages/OldSitePage/SamplingParameters/charts/ParametersChart.js +11 -11
  388. package/lib/pages/OldSitePage/SamplingParameters/charts/SamplingChart.js +12 -10
  389. package/lib/pages/OldSitePage/SamplingParameters/charts/options/options.js +23 -27
  390. package/lib/pages/OldSitePage/SamplingParameters/dataParser.js +30 -28
  391. package/lib/pages/OldSitePage/SamplingParameters/styles/samplingParameters.js +8 -5
  392. package/lib/pages/OldSitePage/SamplingParameters/styles/styles.js +12 -16
  393. package/lib/pages/ProfilePage/Container.js +4 -3
  394. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +40 -23
  395. package/lib/pages/ProfilePage/ProfilePage.js +200 -111
  396. package/lib/pages/ProfilePage/TelegramModal/TelegramModal.js +34 -25
  397. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +20 -20
  398. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +26 -23
  399. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +119 -57
  400. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +23 -18
  401. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +13 -14
  402. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +43 -39
  403. package/lib/pages/SamplingsPage/DesktopActions/DesktopActions.js +29 -27
  404. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +19 -18
  405. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +18 -15
  406. package/lib/pages/SamplingsPage/DesktopActions/index.js +4 -3
  407. package/lib/pages/SamplingsPage/NavigationDropdown.js +31 -43
  408. package/lib/pages/SamplingsPage/NewSamplingAction.js +102 -75
  409. package/lib/pages/SamplingsPage/SamplingMobileModal.js +98 -124
  410. package/lib/pages/SamplingsPage/SamplingProperties/ImageDeleteModal.js +25 -23
  411. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +25 -36
  412. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +59 -34
  413. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +21 -16
  414. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +9 -10
  415. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +192 -107
  416. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +54 -47
  417. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +39 -42
  418. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +39 -42
  419. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +28 -21
  420. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +6 -4
  421. package/lib/pages/SamplingsPage/SamplingSiteTableCell.js +7 -11
  422. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +52 -50
  423. package/lib/pages/SamplingsPage/SamplingsMobileList.js +31 -22
  424. package/lib/pages/SamplingsPage/SamplingsPage.js +33 -25
  425. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +58 -49
  426. package/lib/pages/SamplingsPage/index.js +3 -2
  427. package/lib/pages/SamplingsPage/samplingsPageUtils.js +92 -68
  428. package/lib/pages/SitePage/DischargePattern/DischargePattern.js +5 -7
  429. package/lib/pages/SitePage/SamplingParameters/NoResults/NoResults.stories.js +9 -5
  430. package/lib/pages/SitePage/SamplingParameters/NoResults/index.js +15 -15
  431. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.js +9 -10
  432. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParameterButton/ParameterButton.test.js +24 -27
  433. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.js +18 -15
  434. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/ParametersButtons.test.js +33 -37
  435. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersButtons/styles.js +12 -10
  436. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +25 -15
  437. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.js +13 -17
  438. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/ExceptionBar.stories.js +9 -5
  439. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExceptionBar/styles.js +16 -18
  440. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/ExpandableSamplingTable/ExpandableSamplingTable.js +71 -58
  441. package/lib/pages/SitePage/SamplingParameters/SamplingContainer/SamplingContainer.js +8 -10
  442. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.js +27 -15
  443. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.mock.js +9 -5
  444. package/lib/pages/SitePage/SamplingParameters/SamplingParameters.stories.js +19 -12
  445. package/lib/pages/SitePage/SamplingParameters/body/Body.js +11 -10
  446. package/lib/pages/SitePage/SamplingParameters/body/BodyContainer.js +40 -30
  447. package/lib/pages/SitePage/SamplingParameters/body/index.js +4 -3
  448. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +12 -11
  449. package/lib/pages/SitePage/SamplingParameters/charts/SamplingChart.js +12 -10
  450. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +54 -54
  451. package/lib/pages/SitePage/SamplingParameters/dataParser.js +40 -31
  452. package/lib/pages/SitePage/SamplingParameters/dataParser.test.js +9 -11
  453. package/lib/pages/SitePage/SamplingParameters/styles/samplingParameters.js +8 -5
  454. package/lib/pages/SitePage/SamplingParameters/styles/styles.js +12 -16
  455. package/lib/pages/SitePage/SiteInformation/ContributorItem.js +10 -11
  456. package/lib/pages/SitePage/SiteInformation/EmptyState.js +10 -13
  457. package/lib/pages/SitePage/SiteInformation/PollutionContributor.js +13 -13
  458. package/lib/pages/SitePage/SiteInformation/SiteInformation.js +46 -34
  459. package/lib/pages/SitePage/SiteInformation/style.js +12 -16
  460. package/lib/pages/SitePage/SitePage.js +70 -29
  461. package/lib/pages/UploadLabResult/index.js +16 -15
  462. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +37 -27
  463. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.stories.js +13 -8
  464. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.js +15 -11
  465. package/lib/pages/UtilityDashboardPage/MostSevereEvents/NoEvents/NoEvents.stories.js +9 -5
  466. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/Eta.js +50 -47
  467. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/Eta/styles.js +8 -11
  468. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/LinkedSevereEvent.js +5 -4
  469. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/OptionalLinkedSevereEvent.js +9 -6
  470. package/lib/pages/UtilityDashboardPage/MostSevereEvents/SevereEvent/SevereEvent.js +10 -11
  471. package/lib/pages/UtilityDashboardPage/TopBar/TopBar.js +13 -16
  472. package/lib/pages/UtilityDashboardPage/TopBar/constants.js +9 -8
  473. package/lib/pages/UtilityDashboardPage/TopBar/styles.js +4 -3
  474. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +23 -15
  475. package/lib/pages/UtilityDashboardPage/UtilityDashboard.stories.js +40 -28
  476. package/lib/pages/UtilityDashboardPage/UtilityDashboardMapContainer/UtilityDashboardMapContainer.js +16 -14
  477. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +14 -6
  478. package/lib/pages/UtilityDashboardPage/VirtualAreaDashboardPage.js +32 -23
  479. package/lib/pages/WbeDashboard/ExpandableComponent.js +9 -9
  480. package/lib/pages/WbeDashboard/GraphWrapper.js +35 -28
  481. package/lib/pages/WbeDashboard/IndividualTinyGraph.js +19 -16
  482. package/lib/pages/WbeDashboard/SearchInput.js +21 -15
  483. package/lib/pages/WbeDashboard/SummaryGraph.js +77 -50
  484. package/lib/pages/WbeDashboard/SummaryGraphModal.js +18 -20
  485. package/lib/pages/WbeDashboard/Tabs.js +11 -11
  486. package/lib/pages/WbeDashboard/WbeDashboardPage.js +211 -145
  487. package/lib/pages/WbeDashboard/WbeSummaryBar.js +48 -39
  488. package/lib/pages/WwtpPage/ContaminateCard.js +5 -4
  489. package/lib/pages/WwtpPage/DashboardCard.js +28 -29
  490. package/lib/pages/WwtpPage/DischargePatternCard.js +26 -16
  491. package/lib/pages/WwtpPage/InletsCard.js +17 -19
  492. package/lib/pages/WwtpPage/Map.js +6 -7
  493. package/lib/pages/WwtpPage/OrganicCard.js +5 -4
  494. package/lib/pages/WwtpPage/PotentialSaving/ImpactCard.js +5 -4
  495. package/lib/pages/WwtpPage/PotentialSaving/PotentialItem.js +7 -8
  496. package/lib/pages/WwtpPage/PotentialSaving/PotentialSaving.js +11 -11
  497. package/lib/pages/WwtpPage/PotentialSaving/PotentialSavingContainer.js +17 -20
  498. package/lib/pages/WwtpPage/PotentialSaving/index.js +4 -3
  499. package/lib/pages/WwtpPage/PredictionCard.js +5 -4
  500. package/lib/pages/WwtpPage/TrendCard.js +34 -26
  501. package/lib/pages/WwtpPage/TrendChart.js +12 -12
  502. package/lib/pages/WwtpPage/UpgradeBox.js +5 -4
  503. package/lib/pages/WwtpPage/WwtpPage.js +10 -9
  504. package/lib/pages/WwtpPage/WwtpPageContainer.js +19 -23
  505. package/lib/pages/WwtpPage/index.js +4 -3
  506. package/lib/providers/Slideshow/SlideshowContext.js +10 -11
  507. package/lib/providers/Slideshow/SlideshowProvider.js +40 -22
  508. package/lib/providers/Slideshow/SlideshowRunner.js +21 -18
  509. package/lib/providers/UrlHistory/UrlHistoryContext.js +6 -7
  510. package/lib/providers/UrlHistory/UrlHistoryProvider.js +13 -12
  511. package/lib/providers/UrlHistory/index.js +3 -3
  512. package/lib/providers/UrlHistory/useLastVisited.js +6 -5
  513. package/lib/store/ImportGis/actionTypes.js +5 -4
  514. package/lib/store/ImportGis/actionsCreator.js +5 -7
  515. package/lib/store/ImportGis/reducer.js +30 -41
  516. package/lib/store/WBE/actionTypes.js +3 -2
  517. package/lib/store/WBE/reducer.js +10 -14
  518. package/lib/store/WWTPDashboard/WWTPDashboardSlice.js +15 -24
  519. package/lib/store/areas/actionTypes.js +7 -4
  520. package/lib/store/areas/actions.js +12 -6
  521. package/lib/store/areas/reducer.js +6 -8
  522. package/lib/store/context/actionTypes.js +5 -3
  523. package/lib/store/context/actions.js +3 -3
  524. package/lib/store/context/contextMiddlewares.js +18 -15
  525. package/lib/store/context/reducer.js +10 -14
  526. package/lib/store/dashboard/dashboardSlice.js +11 -18
  527. package/lib/store/edges/actionTypes.js +9 -5
  528. package/lib/store/edges/actions.js +8 -4
  529. package/lib/store/edges/reducer.js +17 -13
  530. package/lib/store/events/actionTypes.js +33 -17
  531. package/lib/store/events/actions.js +7 -3
  532. package/lib/store/events/models/IEvent.js +1 -1
  533. package/lib/store/events/reducer.js +49 -42
  534. package/lib/store/global/actionTypes.js +21 -11
  535. package/lib/store/global/actions.js +4 -6
  536. package/lib/store/global/reducer.js +10 -11
  537. package/lib/store/permissions/permissionsSlice.js +9 -12
  538. package/lib/store/points/actionTypes.js +5 -3
  539. package/lib/store/points/actions.js +7 -3
  540. package/lib/store/points/reducer.js +5 -7
  541. package/lib/store/rootActionTypes.js +3 -2
  542. package/lib/store/rootReducer.js +13 -17
  543. package/lib/store/rootStore.js +6 -6
  544. package/lib/store/samplings/actionTypes.js +5 -4
  545. package/lib/store/samplings/reducer.js +14 -16
  546. package/lib/styles/StylesLayout.js +6 -7
  547. package/lib/styles/theme/theme.js +30 -26
  548. package/lib/test/mocks/browser.js +5 -2
  549. package/lib/test/test-utils.js +16 -18
  550. package/lib/ui-kit/Button/Button.js +83 -129
  551. package/lib/ui-kit/Button/Button.test.js +30 -24
  552. package/lib/ui-kit/Checkbox/Checkbox.js +24 -32
  553. package/lib/ui-kit/ContentCard/ContentCard.js +27 -19
  554. package/lib/ui-kit/Dashboard/Dashboard.js +22 -23
  555. package/lib/ui-kit/Dashboard/index.js +4 -3
  556. package/lib/ui-kit/DropDown/DropDown.js +20 -18
  557. package/lib/ui-kit/DropDown/DropDown.test.js +13 -13
  558. package/lib/ui-kit/DropDown/DropDownItem.js +25 -26
  559. package/lib/ui-kit/DropDown/DropdownToggle.js +10 -13
  560. package/lib/ui-kit/EmptyState/EmptyState.js +6 -7
  561. package/lib/ui-kit/IconAction/IconAction.js +8 -9
  562. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +64 -47
  563. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +49 -58
  564. package/lib/ui-kit/InletsPie/InletsPie.js +16 -17
  565. package/lib/ui-kit/InletsPie/index.js +4 -3
  566. package/lib/ui-kit/InletsPie/options.js +8 -7
  567. package/lib/ui-kit/KandoList/KandoList.js +12 -13
  568. package/lib/ui-kit/KandoTable/KandoTable.js +41 -48
  569. package/lib/ui-kit/KandoTable/KandoTable.test.js +23 -17
  570. package/lib/ui-kit/Layout/Layout.js +7 -8
  571. package/lib/ui-kit/MobileInput/MobileInput.js +50 -56
  572. package/lib/ui-kit/ModalConfirmation/ModalConfirmation.js +17 -14
  573. package/lib/ui-kit/ModalConfirmation/index.js +3 -2
  574. package/lib/ui-kit/OrganicEvents/GaugeChart.js +8 -9
  575. package/lib/ui-kit/OrganicEvents/OrganicEvents.js +9 -8
  576. package/lib/ui-kit/OrganicEvents/OrganicEventsContainer.js +23 -29
  577. package/lib/ui-kit/OrganicEvents/TextInfo.js +13 -17
  578. package/lib/ui-kit/OrganicEvents/index.js +4 -3
  579. package/lib/ui-kit/RadioButtons/RadioButtonGroup.js +11 -12
  580. package/lib/ui-kit/SamplingStatus/SamplingStatus.js +18 -14
  581. package/lib/ui-kit/SamplingStatus/SamplingStatusHelper.js +4 -3
  582. package/lib/ui-kit/ScoreGauge/ScoreGauge.js +24 -21
  583. package/lib/ui-kit/ScoreGauge/constant.js +4 -3
  584. package/lib/ui-kit/ScoreGauge/index.js +4 -3
  585. package/lib/ui-kit/TitleAndCloseHeader/TitleAndCloseHeader.js +11 -10
  586. package/lib/ui-kit/Tooltip/Tooltip.js +9 -15
  587. package/lib/ui-kit/index.js +8 -8
  588. package/lib/ui-kit/kandoStepper/KandoStepper.js +14 -13
  589. package/lib/ui-kit/siteName/SiteName.js +11 -13
  590. package/lib/utilities/ActionUtility.js +7 -7
  591. package/lib/utilities/Alert.js +20 -23
  592. package/lib/utilities/Analytics.js +12 -12
  593. package/lib/utilities/Array.js +5 -4
  594. package/lib/utilities/Enum.js +51 -15
  595. package/lib/utilities/ErrorBoundary.js +42 -27
  596. package/lib/utilities/File.js +70 -41
  597. package/lib/utilities/GetDir.js +10 -10
  598. package/lib/utilities/KandoDate.js +15 -7
  599. package/lib/utilities/KandoModal.js +28 -16
  600. package/lib/utilities/LocalStorage.js +7 -5
  601. package/lib/utilities/ThousandsToK.js +2 -2
  602. package/lib/utilities/TimeFormat.js +21 -20
  603. package/lib/utilities/Truncate.js +27 -17
  604. package/lib/utilities/edgesMath.js +16 -15
  605. package/lib/utilities/i18n.js +6 -5
  606. package/lib/utilities/kql.js +12 -10
  607. package/lib/utilities/map/icons.js +4 -4
  608. package/lib/utilities/polylinedecorator.js +113 -88
  609. package/lib/utilities/scoreToData.js +11 -11
  610. package/lib/utilities/scoreToData.test.js +5 -5
  611. package/lib/utilities/time.js +10 -9
  612. package/lib/utilities/uploadToS3.js +12 -12
  613. package/lib/utilities/urls.js +16 -17
  614. package/package.json +1 -1
@@ -1,11 +1,12 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
9
10
  var _freeSolidSvgIcons = require("@fortawesome/free-solid-svg-icons");
10
11
  var _reactFontawesome = require("@fortawesome/react-fontawesome");
11
12
  var _react = _interopRequireWildcard(require("react"));
@@ -21,61 +22,80 @@ var _actions = require("store/global/actions");
21
22
  var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
22
23
  var _i18n = _interopRequireDefault(require("utilities/i18n"));
23
24
  require("./NavbarStyle.scss");
24
- const updatePageTitle = title => document.title = "Kando - ".concat(title);
25
- const defaultProps = {
25
+ 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); }
26
+ 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; }
27
+ var updatePageTitle = function updatePageTitle(title) {
28
+ return document.title = "Kando - ".concat(title);
29
+ };
30
+ var defaultProps = {
26
31
  selectedLabel: '',
27
32
  hasSearch: false
28
33
  };
29
34
  function replaceURL(key, value) {
30
- let params = new URLSearchParams(window.location.search);
35
+ var params = new URLSearchParams(window.location.search);
31
36
  params.set(key, value);
32
37
  return window.location.protocol + '//' + window.location.host + window.location.pathname + '?' + params.toString();
33
38
  }
34
- const KandoNavbar = _ref => {
35
- let {
36
- waterAuthorityId,
37
- selectedLabel,
38
- hasSearch
39
- } = _ref;
40
- const [waterAuthorities, setWaterAuthorities] = (0, _react.useState)([]);
41
- const [localWaterAuthority, setLocalWaterAuthority] = (0, _react.useState)({
42
- photo_url: 'missing',
43
- label: ''
44
- });
45
- const [waId, setWaId] = (0, _react.useState)(waterAuthorityId);
46
- const [menu, setMenu] = (0, _react.useState)({});
47
- const dispatch = (0, _reactRedux.useDispatch)();
48
- const useQuery = () => {
39
+ var KandoNavbar = function KandoNavbar(_ref) {
40
+ var waterAuthorityId = _ref.waterAuthorityId,
41
+ selectedLabel = _ref.selectedLabel,
42
+ hasSearch = _ref.hasSearch;
43
+ var _useState = (0, _react.useState)([]),
44
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
45
+ waterAuthorities = _useState2[0],
46
+ setWaterAuthorities = _useState2[1];
47
+ var _useState3 = (0, _react.useState)({
48
+ photo_url: 'missing',
49
+ label: ''
50
+ }),
51
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
52
+ localWaterAuthority = _useState4[0],
53
+ setLocalWaterAuthority = _useState4[1];
54
+ var _useState5 = (0, _react.useState)(waterAuthorityId),
55
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
56
+ waId = _useState6[0],
57
+ setWaId = _useState6[1];
58
+ var _useState7 = (0, _react.useState)({}),
59
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
60
+ menu = _useState8[0],
61
+ setMenu = _useState8[1];
62
+ var dispatch = (0, _reactRedux.useDispatch)();
63
+ var useQuery = function useQuery() {
49
64
  return new URLSearchParams((0, _reactRouterDom.useLocation)().search);
50
65
  };
51
- const query = useQuery();
52
- const [customerMenu, setCustomerMenu] = (0, _react.useState)({
53
- edit: {
54
- link: '',
55
- label: 'main_screen.edit_account'
56
- },
57
- feedback: {
58
- link: '',
59
- label: 'main_screen.feedback'
60
- },
61
- help: {
62
- link: '',
63
- label: 'main_screen.help'
64
- },
65
- my_profile: {
66
- link: '',
67
- label: 'main_screen.my_profile'
68
- },
69
- name: undefined,
70
- sign_out: {
71
- link: '',
72
- label: 'main_screen.sign_out',
73
- method: ''
74
- }
66
+ var query = useQuery();
67
+ var _useState9 = (0, _react.useState)({
68
+ edit: {
69
+ link: '',
70
+ label: 'main_screen.edit_account'
71
+ },
72
+ feedback: {
73
+ link: '',
74
+ label: 'main_screen.feedback'
75
+ },
76
+ help: {
77
+ link: '',
78
+ label: 'main_screen.help'
79
+ },
80
+ my_profile: {
81
+ link: '',
82
+ label: 'main_screen.my_profile'
83
+ },
84
+ name: undefined,
85
+ sign_out: {
86
+ link: '',
87
+ label: 'main_screen.sign_out',
88
+ method: ''
89
+ }
90
+ }),
91
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
92
+ customerMenu = _useState10[0],
93
+ setCustomerMenu = _useState10[1];
94
+ var navContext = (0, _reactRedux.useSelector)(function (state) {
95
+ return state.nav_context_data.navContext;
75
96
  });
76
- const navContext = (0, _reactRedux.useSelector)(state => state.nav_context_data.navContext);
77
- const history = (0, _reactRouterDom.useHistory)();
78
- const handleChange = selectedOption => {
97
+ var history = (0, _reactRouterDom.useHistory)();
98
+ var handleChange = function handleChange(selectedOption) {
79
99
  setWaId(selectedOption.value);
80
100
  dispatch((0, _actions.setWaterAuthority)({
81
101
  id: selectedOption.value,
@@ -83,9 +103,9 @@ const KandoNavbar = _ref => {
83
103
  }));
84
104
  history.push("/".concat(navContext.name, "/index?locale=").concat(navContext.locale, "&water_authority_id=").concat(selectedOption.value));
85
105
  };
86
- const iterate = obj => {
87
- let items = [];
88
- for (const property in obj) {
106
+ var iterate = function iterate(obj) {
107
+ var items = [];
108
+ for (var property in obj) {
89
109
  if (obj[property].expandable) {
90
110
  items.push( /*#__PURE__*/_react.default.createElement(_reactBootstrap.NavDropdown, {
91
111
  key: obj[property].label,
@@ -110,9 +130,9 @@ const KandoNavbar = _ref => {
110
130
  }
111
131
  return items;
112
132
  };
113
- const renderClientsPhoto = () => {
133
+ var renderClientsPhoto = function renderClientsPhoto() {
114
134
  if (localWaterAuthority !== undefined) {
115
- let url = localWaterAuthority.photo_url;
135
+ var url = localWaterAuthority.photo_url;
116
136
  return /*#__PURE__*/_react.default.createElement("img", {
117
137
  alt: "missing",
118
138
  src: url.startsWith('missing') ? _authority.default : url,
@@ -125,7 +145,7 @@ const KandoNavbar = _ref => {
125
145
  return;
126
146
  }
127
147
  };
128
- const buildSwitchClient = () => {
148
+ var buildSwitchClient = function buildSwitchClient() {
129
149
  if (waterAuthorities !== undefined && waterAuthorities.length !== 0) {
130
150
  if (waterAuthorities.length === 1) {
131
151
  return /*#__PURE__*/_react.default.createElement("p", {
@@ -144,21 +164,25 @@ const KandoNavbar = _ref => {
144
164
  classNamePrefix: "select",
145
165
  isSearchable: true,
146
166
  name: "color",
147
- options: waterAuthorities.map(localWaterAuthority => {
167
+ options: waterAuthorities.map(function (localWaterAuthority) {
148
168
  return {
149
169
  value: localWaterAuthority.id,
150
170
  label: localWaterAuthority.name
151
171
  };
152
172
  }),
153
- getOptionLabel: localWaterAuthority => localWaterAuthority.label
173
+ getOptionLabel: function getOptionLabel(localWaterAuthority) {
174
+ return localWaterAuthority.label;
175
+ }
154
176
  // @ts-ignore
155
177
  ,
156
- onChange: e => handleChange(e)
178
+ onChange: function onChange(e) {
179
+ return handleChange(e);
180
+ }
157
181
  })));
158
182
  }
159
183
  return;
160
184
  };
161
- const buildCustomerMenu = contextName => {
185
+ var buildCustomerMenu = function buildCustomerMenu(contextName) {
162
186
  if (customerMenu !== undefined) {
163
187
  // @ts-ignore
164
188
  return /*#__PURE__*/_react.default.createElement(_reactBootstrap.NavDropdown, {
@@ -201,9 +225,11 @@ const KandoNavbar = _ref => {
201
225
  }
202
226
  return;
203
227
  };
204
- (0, _react.useEffect)(() => {
205
- let locale = query.get('locale') || 'en';
206
- fetch("/data/menu_data.json?water_authority_id=".concat(waId, "&locale=").concat(locale)).then(response => response.json()).then(json => {
228
+ (0, _react.useEffect)(function () {
229
+ var locale = query.get('locale') || 'en';
230
+ fetch("/data/menu_data.json?water_authority_id=".concat(waId, "&locale=").concat(locale)).then(function (response) {
231
+ return response.json();
232
+ }).then(function (json) {
207
233
  setWaterAuthorities(json.water_authorities);
208
234
  setMenu(json.menu);
209
235
  dispatch((0, _actions.setWaterAuthority)({
@@ -237,7 +263,7 @@ const KandoNavbar = _ref => {
237
263
  style: {
238
264
  color: 'blue'
239
265
  }
240
- }, iterate(menu).map(item => {
266
+ }, iterate(menu).map(function (item) {
241
267
  return item;
242
268
  }), /*#__PURE__*/_react.default.createElement("div", {
243
269
  className: 'switch-client-container'
@@ -246,5 +272,6 @@ const KandoNavbar = _ref => {
246
272
  }), buildSwitchClient()))))));
247
273
  };
248
274
  KandoNavbar.defaultProps = defaultProps;
249
- var _default = exports.default = KandoNavbar;
250
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX3JlYWN0U2VsZWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9rYW5kb19sb2dvIiwiX2F1dGhvcml0eSIsIl91c2VyIiwiX1N0eWxlZExpbmsiLCJfYWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX2kxOG4iLCJ1cGRhdGVQYWdlVGl0bGUiLCJ0aXRsZSIsImRvY3VtZW50IiwiY29uY2F0IiwiZGVmYXVsdFByb3BzIiwic2VsZWN0ZWRMYWJlbCIsImhhc1NlYXJjaCIsInJlcGxhY2VVUkwiLCJrZXkiLCJ2YWx1ZSIsInBhcmFtcyIsIlVSTFNlYXJjaFBhcmFtcyIsIndpbmRvdyIsImxvY2F0aW9uIiwic2VhcmNoIiwic2V0IiwicHJvdG9jb2wiLCJob3N0IiwicGF0aG5hbWUiLCJ0b1N0cmluZyIsIkthbmRvTmF2YmFyIiwiX3JlZiIsIndhdGVyQXV0aG9yaXR5SWQiLCJ3YXRlckF1dGhvcml0aWVzIiwic2V0V2F0ZXJBdXRob3JpdGllcyIsInVzZVN0YXRlIiwibG9jYWxXYXRlckF1dGhvcml0eSIsInNldExvY2FsV2F0ZXJBdXRob3JpdHkiLCJwaG90b191cmwiLCJsYWJlbCIsIndhSWQiLCJzZXRXYUlkIiwibWVudSIsInNldE1lbnUiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwidXNlUXVlcnkiLCJ1c2VMb2NhdGlvbiIsInF1ZXJ5IiwiY3VzdG9tZXJNZW51Iiwic2V0Q3VzdG9tZXJNZW51IiwiZWRpdCIsImxpbmsiLCJmZWVkYmFjayIsImhlbHAiLCJteV9wcm9maWxlIiwibmFtZSIsInVuZGVmaW5lZCIsInNpZ25fb3V0IiwibWV0aG9kIiwibmF2Q29udGV4dCIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJuYXZfY29udGV4dF9kYXRhIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZE9wdGlvbiIsInNldFdhdGVyQXV0aG9yaXR5IiwiaWQiLCJwdXNoIiwibG9jYWxlIiwiaXRlcmF0ZSIsIm9iaiIsIml0ZW1zIiwicHJvcGVydHkiLCJleHBhbmRhYmxlIiwiZGVmYXVsdCIsImNyZWF0ZUVsZW1lbnQiLCJOYXZEcm9wZG93biIsImkxOG4iLCJ0IiwiZXhwYW5zaW9uIiwiY2xhc3MiLCJMaW5rIiwiY2xhc3NOYW1lIiwidG8iLCJJdGVtIiwiaHJlZiIsInJlbmRlckNsaWVudHNQaG90byIsInVybCIsImFsdCIsInNyYyIsInN0YXJ0c1dpdGgiLCJXYXRlckF1dGhvcml0eU1pc3NpbmdJY29uIiwic3R5bGUiLCJoZWlnaHQiLCJ3aWR0aCIsImJ1aWxkU3dpdGNoQ2xpZW50IiwibGVuZ3RoIiwiSXRlbVRleHQiLCJjbGFzc05hbWVQcmVmaXgiLCJpc1NlYXJjaGFibGUiLCJvcHRpb25zIiwibWFwIiwiZ2V0T3B0aW9uTGFiZWwiLCJvbkNoYW5nZSIsImUiLCJidWlsZEN1c3RvbWVyTWVudSIsImNvbnRleHROYW1lIiwiYWxpZ25SaWdodCIsIkF2YXRhciIsIkRpdmlkZXIiLCJ1c2VFZmZlY3QiLCJnZXQiLCJmZXRjaCIsInRoZW4iLCJyZXNwb25zZSIsImpzb24iLCJ3YXRlcl9hdXRob3JpdGllcyIsIndhdGVyX2F1dGhvcml0eSIsImN1c3RvbWVyX21lbnUiLCJjbGVhbnVwIiwiRnJhZ21lbnQiLCJOYXZiYXIiLCJleHBhbmQiLCJUb2dnbGUiLCJCcmFuZCIsIkthbmRvTG9nbyIsIkNvbGxhcHNlIiwiTmF2IiwiY29sb3IiLCJpdGVtIiwiRm9udEF3ZXNvbWVJY29uIiwiaWNvbiIsImZhVGludCIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9LYW5kb05hdmJhci9LYW5kb05hdmJhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmFUaW50IH0gZnJvbSAnQGZvcnRhd2Vzb21lL2ZyZWUtc29saWQtc3ZnLWljb25zJztcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IE5hdiwgTmF2YmFyLCBOYXZEcm9wZG93biB9IGZyb20gJ3JlYWN0LWJvb3RzdHJhcCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5LCB1c2VMb2NhdGlvbiB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IFNlbGVjdCBmcm9tICdyZWFjdC1zZWxlY3QnO1xuaW1wb3J0IEthbmRvTG9nbyBmcm9tICdzcmMvYXNzZXRzL2thbmRvX2xvZ28ucG5nJztcbmltcG9ydCBXYXRlckF1dGhvcml0eU1pc3NpbmdJY29uIGZyb20gJ3NyYy9hc3NldHMvbWlzc2luZy9hdXRob3JpdHkucG5nJztcbmltcG9ydCBBdmF0YXIgZnJvbSAnc3JjL2Fzc2V0cy91c2VyLnN2Zyc7XG5pbXBvcnQgeyBMaW5rIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvTGlua3MvU3R5bGVkTGluay9TdHlsZWRMaW5rJztcbmltcG9ydCB7IHNldFdhdGVyQXV0aG9yaXR5IH0gZnJvbSAnc3JjL3N0b3JlL2dsb2JhbC9hY3Rpb25zJztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IEVycm9yQm91bmRhcnkgZnJvbSAnc3JjL3V0aWxpdGllcy9FcnJvckJvdW5kYXJ5JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgJy4vTmF2YmFyU3R5bGUuc2Nzcyc7XG5cbmNvbnN0IHVwZGF0ZVBhZ2VUaXRsZSA9ICh0aXRsZTogc3RyaW5nKSA9PlxuICAoZG9jdW1lbnQudGl0bGUgPSBgS2FuZG8gLSAke3RpdGxlfWApO1xuXG50eXBlIElQcm9wcyA9IHtcbiAgd2F0ZXJBdXRob3JpdHlJZDogbnVtYmVyO1xuICBzZWxlY3RlZExhYmVsPzogc3RyaW5nO1xuICBoYXNTZWFyY2g/OiBib29sZWFuO1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICBzZWxlY3RlZExhYmVsOiAnJyxcbiAgaGFzU2VhcmNoOiBmYWxzZSxcbn07XG5cbmZ1bmN0aW9uIHJlcGxhY2VVUkwoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpIHtcbiAgbGV0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7XG4gIHBhcmFtcy5zZXQoa2V5LCB2YWx1ZSk7XG4gIHJldHVybiAoXG4gICAgd2luZG93LmxvY2F0aW9uLnByb3RvY29sICtcbiAgICAnLy8nICtcbiAgICB3aW5kb3cubG9jYXRpb24uaG9zdCArXG4gICAgd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lICtcbiAgICAnPycgK1xuICAgIHBhcmFtcy50b1N0cmluZygpXG4gICk7XG59XG5cbmNvbnN0IEthbmRvTmF2YmFyID0gKHtcbiAgd2F0ZXJBdXRob3JpdHlJZCxcbiAgc2VsZWN0ZWRMYWJlbCxcbiAgaGFzU2VhcmNoLFxufTogSVByb3BzKSA9PiB7XG4gIGNvbnN0IFt3YXRlckF1dGhvcml0aWVzLCBzZXRXYXRlckF1dGhvcml0aWVzXSA9IHVzZVN0YXRlKFtdKTtcbiAgY29uc3QgW2xvY2FsV2F0ZXJBdXRob3JpdHksIHNldExvY2FsV2F0ZXJBdXRob3JpdHldID0gdXNlU3RhdGUoe1xuICAgIHBob3RvX3VybDogJ21pc3NpbmcnLFxuICAgIGxhYmVsOiAnJyxcbiAgfSk7XG4gIGNvbnN0IFt3YUlkLCBzZXRXYUlkXSA9IHVzZVN0YXRlKHdhdGVyQXV0aG9yaXR5SWQpO1xuICBjb25zdCBbbWVudSwgc2V0TWVudV0gPSB1c2VTdGF0ZSh7fSk7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcblxuICBjb25zdCB1c2VRdWVyeSA9ICgpID0+IHtcbiAgICByZXR1cm4gbmV3IFVSTFNlYXJjaFBhcmFtcyh1c2VMb2NhdGlvbigpLnNlYXJjaCk7XG4gIH07XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnkoKTtcblxuICBjb25zdCBbY3VzdG9tZXJNZW51LCBzZXRDdXN0b21lck1lbnVdID0gdXNlU3RhdGUoe1xuICAgIGVkaXQ6IHtcbiAgICAgIGxpbms6ICcnLFxuICAgICAgbGFiZWw6ICdtYWluX3NjcmVlbi5lZGl0X2FjY291bnQnLFxuICAgIH0sXG4gICAgZmVlZGJhY2s6IHtcbiAgICAgIGxpbms6ICcnLFxuICAgICAgbGFiZWw6ICdtYWluX3NjcmVlbi5mZWVkYmFjaycsXG4gICAgfSxcbiAgICBoZWxwOiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4uaGVscCcsXG4gICAgfSxcbiAgICBteV9wcm9maWxlOiB7XG4gICAgICBsaW5rOiAnJyxcbiAgICAgIGxhYmVsOiAnbWFpbl9zY3JlZW4ubXlfcHJvZmlsZScsXG4gICAgfSxcbiAgICBuYW1lOiB1bmRlZmluZWQsXG4gICAgc2lnbl9vdXQ6IHtcbiAgICAgIGxpbms6ICcnLFxuICAgICAgbGFiZWw6ICdtYWluX3NjcmVlbi5zaWduX291dCcsXG4gICAgICBtZXRob2Q6ICcnLFxuICAgIH0sXG4gIH0pO1xuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuXG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKHNlbGVjdGVkT3B0aW9uOiBhbnkpID0+IHtcbiAgICBzZXRXYUlkKHNlbGVjdGVkT3B0aW9uLnZhbHVlKTtcbiAgICBkaXNwYXRjaChzZXRXYXRlckF1dGhvcml0eSh7IGlkOiBzZWxlY3RlZE9wdGlvbi52YWx1ZSwgbmFtZTogJycgfSkpO1xuICAgIGhpc3RvcnkucHVzaChcbiAgICAgIGAvJHtuYXZDb250ZXh0Lm5hbWV9L2luZGV4P2xvY2FsZT0ke25hdkNvbnRleHQubG9jYWxlfSZ3YXRlcl9hdXRob3JpdHlfaWQ9JHtzZWxlY3RlZE9wdGlvbi52YWx1ZX1gLFxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgaXRlcmF0ZSA9IChvYmo6IGFueSkgPT4ge1xuICAgIGxldCBpdGVtczogYW55W10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIG9iaikge1xuICAgICAgaWYgKG9ialtwcm9wZXJ0eV0uZXhwYW5kYWJsZSkge1xuICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgIDxOYXZEcm9wZG93blxuICAgICAgICAgICAga2V5PXtvYmpbcHJvcGVydHldLmxhYmVsfVxuICAgICAgICAgICAgdGl0bGU9e2kxOG4udChvYmpbcHJvcGVydHldLmxhYmVsKX1cbiAgICAgICAgICAgIGlkPVwiYmFzaWMtbmF2LWRyb3Bkb3duXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aXRlcmF0ZShvYmpbcHJvcGVydHldLmV4cGFuc2lvbil9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bj4sXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAob2JqW3Byb3BlcnR5XS5jbGFzcyA9PT0gJ2pzLWlzLXJlYWN0Jykge1xuICAgICAgICAgIGl0ZW1zLnB1c2goXG4gICAgICAgICAgICA8TGlua1xuICAgICAgICAgICAgICBrZXk9e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiZHJvcGRvd24taXRlbVwiXG4gICAgICAgICAgICAgIHRvPXtvYmpbcHJvcGVydHldLmxpbmt9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQob2JqW3Byb3BlcnR5XS5sYWJlbCl9XG4gICAgICAgICAgICA8L0xpbms+LFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgaXRlbXMucHVzaChcbiAgICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICAgIGtleT17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgICBocmVmPXtvYmpbcHJvcGVydHldLmxpbmt9XG4gICAgICAgICAgICAgIGlkPVwiYmFzaWMtbmF2YmFyLW5hdlwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHtpMThuLnQob2JqW3Byb3BlcnR5XS5sYWJlbCl9XG4gICAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+LFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaXRlbXM7XG4gIH07XG5cbiAgY29uc3QgcmVuZGVyQ2xpZW50c1Bob3RvID0gKCkgPT4ge1xuICAgIGlmIChsb2NhbFdhdGVyQXV0aG9yaXR5ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGxldCB1cmwgPSBsb2NhbFdhdGVyQXV0aG9yaXR5LnBob3RvX3VybCEgYXMgc3RyaW5nO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGltZ1xuICAgICAgICAgIGFsdD1cIm1pc3NpbmdcIlxuICAgICAgICAgIHNyYz17dXJsLnN0YXJ0c1dpdGgoJ21pc3NpbmcnKSA/IFdhdGVyQXV0aG9yaXR5TWlzc2luZ0ljb24gOiB1cmx9XG4gICAgICAgICAgc3R5bGU9e3sgaGVpZ2h0OiAnNDBweCcsIHdpZHRoOiAnYXV0bycgfX1cbiAgICAgICAgLz5cbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgYnVpbGRTd2l0Y2hDbGllbnQgPSAoKSA9PiB7XG4gICAgaWYgKHdhdGVyQXV0aG9yaXRpZXMgIT09IHVuZGVmaW5lZCAmJiB3YXRlckF1dGhvcml0aWVzLmxlbmd0aCAhPT0gMCkge1xuICAgICAgaWYgKHdhdGVyQXV0aG9yaXRpZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPHAgY2xhc3NOYW1lPXsnd2F0ZXItYXV0aG9yaXR5LXNpbmdsZS1sYWJlbCd9PlxuICAgICAgICAgICAge2xvY2FsV2F0ZXJBdXRob3JpdHkubGFiZWx9XG4gICAgICAgICAgPC9wPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8TmF2RHJvcGRvd25cbiAgICAgICAgICB0aXRsZT17bG9jYWxXYXRlckF1dGhvcml0eSAhPT0gbnVsbCA/IGxvY2FsV2F0ZXJBdXRob3JpdHkubGFiZWwgOiAnJ31cbiAgICAgICAgICBpZD1cImJhc2ljLW5hdi1kcm9wZG93blwiXG4gICAgICAgID5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVRleHQgc3R5bGU9e3sgd2lkdGg6ICczMDBweCcgfX0+XG4gICAgICAgICAgICA8U2VsZWN0XG4gICAgICAgICAgICAgIGNsYXNzTmFtZT1cImJhc2ljLXNpbmdsZVwiXG4gICAgICAgICAgICAgIGNsYXNzTmFtZVByZWZpeD1cInNlbGVjdFwiXG4gICAgICAgICAgICAgIGlzU2VhcmNoYWJsZT17dHJ1ZX1cbiAgICAgICAgICAgICAgbmFtZT1cImNvbG9yXCJcbiAgICAgICAgICAgICAgb3B0aW9ucz17d2F0ZXJBdXRob3JpdGllcy5tYXAoKGxvY2FsV2F0ZXJBdXRob3JpdHk6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICB2YWx1ZTogbG9jYWxXYXRlckF1dGhvcml0eS5pZCxcbiAgICAgICAgICAgICAgICAgIGxhYmVsOiBsb2NhbFdhdGVyQXV0aG9yaXR5Lm5hbWUsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgIGdldE9wdGlvbkxhYmVsPXsobG9jYWxXYXRlckF1dGhvcml0eTogYW55KSA9PlxuICAgICAgICAgICAgICAgIGxvY2FsV2F0ZXJBdXRob3JpdHkubGFiZWxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZTogT2JqZWN0KSA9PiBoYW5kbGVDaGFuZ2UoZSl9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbVRleHQ+XG4gICAgICAgIDwvTmF2RHJvcGRvd24+XG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybjtcbiAgfTtcblxuICBjb25zdCBidWlsZEN1c3RvbWVyTWVudSA9IChjb250ZXh0TmFtZTogc3RyaW5nKSA9PiB7XG4gICAgaWYgKGN1c3RvbWVyTWVudSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8TmF2RHJvcGRvd25cbiAgICAgICAgICBhbGlnblJpZ2h0XG4gICAgICAgICAgY2xhc3NOYW1lPXsnY3VzdG9tZXItbWVudSBvcmRlci1zbS0zJ31cbiAgICAgICAgICBpZD1cImJhc2ljLW5hdi1kcm9wZG93blwiXG4gICAgICAgICAgdGl0bGU9e1xuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydjdXN0b21lci1tZW51X19jb250ZW50J30+XG4gICAgICAgICAgICAgIDxpbWcgc3JjPXtBdmF0YXJ9IGFsdD1cImF2YXRhclwiPjwvaW1nPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9eydncmVldGluZyd9PlxuICAgICAgICAgICAgICAgIHtgJHtpMThuLnQoJ21haW5fc2NyZWVuLmhlbGxvJyl9ICR7XG4gICAgICAgICAgICAgICAgICBjdXN0b21lck1lbnUubmFtZSA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgID8gaTE4bi50KCdtYWluX3NjcmVlbi50aGVyZScpXG4gICAgICAgICAgICAgICAgICAgIDogJywgJyArIGN1c3RvbWVyTWVudS5uYW1lXG4gICAgICAgICAgICAgICAgfWB9XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e2N1c3RvbWVyTWVudS5teV9wcm9maWxlLmxpbmt9PlxuICAgICAgICAgICAge2kxOG4udCgnbWFpbl9zY3JlZW4ubXlfcHJvZmlsZScpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgaHJlZj17Y3VzdG9tZXJNZW51LmVkaXQubGlua31cbiAgICAgICAgICAgIGtleT17Y3VzdG9tZXJNZW51LmVkaXQubGlua31cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aTE4bi50KCdtYWluX3NjcmVlbi5lZGl0X2FjY291bnQnKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5mZWVkYmFjay5saW5rfVxuICAgICAgICAgICAga2V5PXtjdXN0b21lck1lbnUuZmVlZGJhY2subGlua31cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aTE4bi50KCdtYWluX3NjcmVlbi5mZWVkYmFjaycpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgaHJlZj17Y3VzdG9tZXJNZW51LmhlbHAubGlua31cbiAgICAgICAgICAgIGtleT17Y3VzdG9tZXJNZW51LmhlbHAubGlua31cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7aTE4bi50KCdtYWluX3NjcmVlbi5oZWxwJyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5EaXZpZGVyIC8+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2VuJyl9PlxuICAgICAgICAgICAgeydFbmdsaXNoJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2VuX3VrJyl9PlxuICAgICAgICAgICAgeydFbmdsaXNoIChVSyknfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnaGUnKX0+XG4gICAgICAgICAgICB7J9ei15HXqNeZ16onfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnZnInKX0+XG4gICAgICAgICAgICB7J0ZyYW7Dp2Fpcyd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdpdCcpfT5cbiAgICAgICAgICAgIHsnSXRhbGlhbm8nfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uRGl2aWRlciAvPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuc2lnbl9vdXQubGlua31cbiAgICAgICAgICAgIGRhdGEtbWV0aG9kPXtjdXN0b21lck1lbnUuc2lnbl9vdXQubWV0aG9kfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoY3VzdG9tZXJNZW51LnNpZ25fb3V0LmxhYmVsKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgIDwvTmF2RHJvcGRvd24+XG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybjtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCBsb2NhbGUgPSBxdWVyeS5nZXQoJ2xvY2FsZScpIHx8ICdlbic7XG4gICAgZmV0Y2goYC9kYXRhL21lbnVfZGF0YS5qc29uP3dhdGVyX2F1dGhvcml0eV9pZD0ke3dhSWR9JmxvY2FsZT0ke2xvY2FsZX1gKVxuICAgICAgLnRoZW4oKHJlc3BvbnNlKSA9PiByZXNwb25zZS5qc29uKCkpXG4gICAgICAudGhlbigoanNvbikgPT4ge1xuICAgICAgICBzZXRXYXRlckF1dGhvcml0aWVzKGpzb24ud2F0ZXJfYXV0aG9yaXRpZXMpO1xuICAgICAgICBzZXRNZW51KGpzb24ubWVudSk7XG4gICAgICAgIGRpc3BhdGNoKFxuICAgICAgICAgIHNldFdhdGVyQXV0aG9yaXR5KHtcbiAgICAgICAgICAgIGlkOiBqc29uLndhdGVyX2F1dGhvcml0eS52YWx1ZSxcbiAgICAgICAgICAgIG5hbWU6IGpzb24ud2F0ZXJfYXV0aG9yaXR5LmxhYmVsLFxuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgICAgICBzZXRMb2NhbFdhdGVyQXV0aG9yaXR5KGpzb24ud2F0ZXJfYXV0aG9yaXR5KTsgLy8gYWRkIHRvIFN0b3JlXG4gICAgICAgIHVwZGF0ZVBhZ2VUaXRsZShqc29uLndhdGVyX2F1dGhvcml0eS5sYWJlbCk7XG4gICAgICAgIHNldEN1c3RvbWVyTWVudShqc29uLmN1c3RvbWVyX21lbnUpO1xuICAgICAgfSk7XG5cbiAgICByZXR1cm4gZnVuY3Rpb24gY2xlYW51cCgpIHtcbiAgICAgIHNldFdhdGVyQXV0aG9yaXRpZXMoW10pO1xuICAgICAgc2V0TWVudSh7fSk7XG4gICAgfTtcbiAgfSwgW3dhSWRdKTtcblxuICByZXR1cm4gKFxuICAgIDxSZWFjdC5GcmFnbWVudD5cbiAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICA8TmF2YmFyIGV4cGFuZD1cInNtXCIgY2xhc3NOYW1lPXsnanVzdGlmeS1jb250ZW50LWJldHdlZW4nfT5cbiAgICAgICAgICA8TmF2YmFyLlRvZ2dsZSBhcmlhLWNvbnRyb2xzPVwiYmFzaWMtbmF2YmFyLW5hdlwiIC8+XG4gICAgICAgICAgPE5hdmJhci5CcmFuZCBjbGFzc05hbWU9eydsb2dvJ30+XG4gICAgICAgICAgICA8aW1nIHNyYz17S2FuZG9Mb2dvfSBhbHQ9XCJrYW5kby1sb2dvXCI+PC9pbWc+XG4gICAgICAgICAgPC9OYXZiYXIuQnJhbmQ+XG4gICAgICAgICAgPE5hdmJhci5CcmFuZCBjbGFzc05hbWU9eydjbGllbnQtbG9nbyd9PlxuICAgICAgICAgICAge3JlbmRlckNsaWVudHNQaG90bygpfVxuICAgICAgICAgIDwvTmF2YmFyLkJyYW5kPlxuICAgICAgICAgIHtidWlsZEN1c3RvbWVyTWVudShuYXZDb250ZXh0Lm5hbWUpfVxuICAgICAgICAgIDxOYXZiYXIuQ29sbGFwc2UgaWQ9XCJiYXNpYy1uYXZiYXItbmF2XCI+XG4gICAgICAgICAgICA8TmF2IHN0eWxlPXt7IGNvbG9yOiAnYmx1ZScgfX0+XG4gICAgICAgICAgICAgIHtpdGVyYXRlKG1lbnUpLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBpdGVtO1xuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydzd2l0Y2gtY2xpZW50LWNvbnRhaW5lcid9PlxuICAgICAgICAgICAgICAgIDxGb250QXdlc29tZUljb24gaWNvbj17ZmFUaW50fSAvPlxuICAgICAgICAgICAgICAgIHtidWlsZFN3aXRjaENsaWVudCgpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvTmF2PlxuICAgICAgICAgIDwvTmF2YmFyLkNvbGxhcHNlPlxuICAgICAgICAgIHt9XG4gICAgICAgIDwvTmF2YmFyPlxuICAgICAgPC9FcnJvckJvdW5kYXJ5PlxuICAgIDwvUmVhY3QuRnJhZ21lbnQ+XG4gICk7XG59O1xuS2FuZG9OYXZiYXIuZGVmYXVsdFByb3BzID0gZGVmYXVsdFByb3BzO1xuXG5leHBvcnQgZGVmYXVsdCBLYW5kb05hdmJhcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxrQkFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLGVBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFdBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLGVBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFTLFdBQUEsR0FBQUQsc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFVLFVBQUEsR0FBQUYsc0JBQUEsQ0FBQVIsT0FBQTtBQUF5RSxJQUFBVyxLQUFBLEdBQUFILHNCQUFBLENBQUFSLE9BQUE7QUFFekUsSUFBQVksV0FBQSxHQUFBWixPQUFBO0FBQ0EsSUFBQWEsUUFBQSxHQUFBYixPQUFBO0FBRUEsSUFBQWMsY0FBQSxHQUFBTixzQkFBQSxDQUFBUixPQUFBO0FBQ0EsSUFBQWUsS0FBQSxHQUFBUCxzQkFBQSxDQUFBUixPQUFBO0FBQ0FBLE9BQUE7QUFFQSxNQUFNZ0IsZUFBZSxHQUFJQyxLQUFhLElBQ25DQyxRQUFRLENBQUNELEtBQUssY0FBQUUsTUFBQSxDQUFjRixLQUFLLENBQUc7QUFRdkMsTUFBTUcsWUFBWSxHQUFHO0VBQ25CQyxhQUFhLEVBQUUsRUFBRTtFQUNqQkMsU0FBUyxFQUFFO0FBQ2IsQ0FBQztBQUVELFNBQVNDLFVBQVVBLENBQUNDLEdBQVcsRUFBRUMsS0FBYSxFQUFFO0VBQzlDLElBQUlDLE1BQU0sR0FBRyxJQUFJQyxlQUFlLENBQUNDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDQyxNQUFNLENBQUM7RUFDeERKLE1BQU0sQ0FB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
275
+ var _default = KandoNavbar;
276
+ exports.default = _default;
277
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZnJlZVNvbGlkU3ZnSWNvbnMiLCJyZXF1aXJlIiwiX3JlYWN0Rm9udGF3ZXNvbWUiLCJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9yZWFjdFJlZHV4IiwiX3JlYWN0Um91dGVyRG9tIiwiX3JlYWN0U2VsZWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9rYW5kb19sb2dvIiwiX2F1dGhvcml0eSIsIl91c2VyIiwiX1N0eWxlZExpbmsiLCJfYWN0aW9ucyIsIl9FcnJvckJvdW5kYXJ5IiwiX2kxOG4iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsInVwZGF0ZVBhZ2VUaXRsZSIsInRpdGxlIiwiZG9jdW1lbnQiLCJjb25jYXQiLCJkZWZhdWx0UHJvcHMiLCJzZWxlY3RlZExhYmVsIiwiaGFzU2VhcmNoIiwicmVwbGFjZVVSTCIsInZhbHVlIiwicGFyYW1zIiwiVVJMU2VhcmNoUGFyYW1zIiwid2luZG93IiwibG9jYXRpb24iLCJzZWFyY2giLCJwcm90b2NvbCIsImhvc3QiLCJwYXRobmFtZSIsInRvU3RyaW5nIiwiS2FuZG9OYXZiYXIiLCJfcmVmIiwid2F0ZXJBdXRob3JpdHlJZCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsIndhdGVyQXV0aG9yaXRpZXMiLCJzZXRXYXRlckF1dGhvcml0aWVzIiwiX3VzZVN0YXRlMyIsInBob3RvX3VybCIsImxhYmVsIiwiX3VzZVN0YXRlNCIsImxvY2FsV2F0ZXJBdXRob3JpdHkiLCJzZXRMb2NhbFdhdGVyQXV0aG9yaXR5IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJ3YUlkIiwic2V0V2FJZCIsIl91c2VTdGF0ZTciLCJfdXNlU3RhdGU4IiwibWVudSIsInNldE1lbnUiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwidXNlUXVlcnkiLCJ1c2VMb2NhdGlvbiIsInF1ZXJ5IiwiX3VzZVN0YXRlOSIsImVkaXQiLCJsaW5rIiwiZmVlZGJhY2siLCJoZWxwIiwibXlfcHJvZmlsZSIsIm5hbWUiLCJ1bmRlZmluZWQiLCJzaWduX291dCIsIm1ldGhvZCIsIl91c2VTdGF0ZTEwIiwiY3VzdG9tZXJNZW51Iiwic2V0Q3VzdG9tZXJNZW51IiwibmF2Q29udGV4dCIsInVzZVNlbGVjdG9yIiwic3RhdGUiLCJuYXZfY29udGV4dF9kYXRhIiwiaGlzdG9yeSIsInVzZUhpc3RvcnkiLCJoYW5kbGVDaGFuZ2UiLCJzZWxlY3RlZE9wdGlvbiIsInNldFdhdGVyQXV0aG9yaXR5IiwiaWQiLCJwdXNoIiwibG9jYWxlIiwiaXRlcmF0ZSIsIml0ZW1zIiwicHJvcGVydHkiLCJleHBhbmRhYmxlIiwiY3JlYXRlRWxlbWVudCIsIk5hdkRyb3Bkb3duIiwiaTE4biIsInQiLCJleHBhbnNpb24iLCJjbGFzcyIsIkxpbmsiLCJjbGFzc05hbWUiLCJ0byIsIkl0ZW0iLCJocmVmIiwicmVuZGVyQ2xpZW50c1Bob3RvIiwidXJsIiwiYWx0Iiwic3JjIiwic3RhcnRzV2l0aCIsIldhdGVyQXV0aG9yaXR5TWlzc2luZ0ljb24iLCJzdHlsZSIsImhlaWdodCIsIndpZHRoIiwiYnVpbGRTd2l0Y2hDbGllbnQiLCJsZW5ndGgiLCJJdGVtVGV4dCIsImNsYXNzTmFtZVByZWZpeCIsImlzU2VhcmNoYWJsZSIsIm9wdGlvbnMiLCJtYXAiLCJnZXRPcHRpb25MYWJlbCIsIm9uQ2hhbmdlIiwiZSIsImJ1aWxkQ3VzdG9tZXJNZW51IiwiY29udGV4dE5hbWUiLCJhbGlnblJpZ2h0IiwiQXZhdGFyIiwiRGl2aWRlciIsInVzZUVmZmVjdCIsImZldGNoIiwidGhlbiIsInJlc3BvbnNlIiwianNvbiIsIndhdGVyX2F1dGhvcml0aWVzIiwid2F0ZXJfYXV0aG9yaXR5IiwiY3VzdG9tZXJfbWVudSIsImNsZWFudXAiLCJGcmFnbWVudCIsIk5hdmJhciIsImV4cGFuZCIsIlRvZ2dsZSIsIkJyYW5kIiwiS2FuZG9Mb2dvIiwiQ29sbGFwc2UiLCJOYXYiLCJjb2xvciIsIml0ZW0iLCJGb250QXdlc29tZUljb24iLCJpY29uIiwiZmFUaW50IiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvSGVhZGVyL0thbmRvTmF2YmFyL0thbmRvTmF2YmFyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmYVRpbnQgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xuaW1wb3J0IHsgRm9udEF3ZXNvbWVJY29uIH0gZnJvbSAnQGZvcnRhd2Vzb21lL3JlYWN0LWZvbnRhd2Vzb21lJztcbmltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTmF2LCBOYXZiYXIsIE5hdkRyb3Bkb3duIH0gZnJvbSAncmVhY3QtYm9vdHN0cmFwJztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHVzZUhpc3RvcnksIHVzZUxvY2F0aW9uIH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgU2VsZWN0IGZyb20gJ3JlYWN0LXNlbGVjdCc7XG5pbXBvcnQgS2FuZG9Mb2dvIGZyb20gJ3NyYy9hc3NldHMva2FuZG9fbG9nby5wbmcnO1xuaW1wb3J0IFdhdGVyQXV0aG9yaXR5TWlzc2luZ0ljb24gZnJvbSAnc3JjL2Fzc2V0cy9taXNzaW5nL2F1dGhvcml0eS5wbmcnO1xuaW1wb3J0IEF2YXRhciBmcm9tICdzcmMvYXNzZXRzL3VzZXIuc3ZnJztcbmltcG9ydCB7IExpbmsgfSBmcm9tICdzcmMvY29tcG9uZW50cy9MaW5rcy9TdHlsZWRMaW5rL1N0eWxlZExpbmsnO1xuaW1wb3J0IHsgc2V0V2F0ZXJBdXRob3JpdHkgfSBmcm9tICdzcmMvc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgRXJyb3JCb3VuZGFyeSBmcm9tICdzcmMvdXRpbGl0aWVzL0Vycm9yQm91bmRhcnknO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCAnLi9OYXZiYXJTdHlsZS5zY3NzJztcblxuY29uc3QgdXBkYXRlUGFnZVRpdGxlID0gKHRpdGxlOiBzdHJpbmcpID0+XG4gIChkb2N1bWVudC50aXRsZSA9IGBLYW5kbyAtICR7dGl0bGV9YCk7XG5cbnR5cGUgSVByb3BzID0ge1xuICB3YXRlckF1dGhvcml0eUlkOiBudW1iZXI7XG4gIHNlbGVjdGVkTGFiZWw/OiBzdHJpbmc7XG4gIGhhc1NlYXJjaD86IGJvb2xlYW47XG59O1xuXG5jb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gIHNlbGVjdGVkTGFiZWw6ICcnLFxuICBoYXNTZWFyY2g6IGZhbHNlLFxufTtcblxuZnVuY3Rpb24gcmVwbGFjZVVSTChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICBsZXQgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh3aW5kb3cubG9jYXRpb24uc2VhcmNoKTtcbiAgcGFyYW1zLnNldChrZXksIHZhbHVlKTtcbiAgcmV0dXJuIChcbiAgICB3aW5kb3cubG9jYXRpb24ucHJvdG9jb2wgK1xuICAgICcvLycgK1xuICAgIHdpbmRvdy5sb2NhdGlvbi5ob3N0ICtcbiAgICB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUgK1xuICAgICc/JyArXG4gICAgcGFyYW1zLnRvU3RyaW5nKClcbiAgKTtcbn1cblxuY29uc3QgS2FuZG9OYXZiYXIgPSAoe1xuICB3YXRlckF1dGhvcml0eUlkLFxuICBzZWxlY3RlZExhYmVsLFxuICBoYXNTZWFyY2gsXG59OiBJUHJvcHMpID0+IHtcbiAgY29uc3QgW3dhdGVyQXV0aG9yaXRpZXMsIHNldFdhdGVyQXV0aG9yaXRpZXNdID0gdXNlU3RhdGUoW10pO1xuICBjb25zdCBbbG9jYWxXYXRlckF1dGhvcml0eSwgc2V0TG9jYWxXYXRlckF1dGhvcml0eV0gPSB1c2VTdGF0ZSh7XG4gICAgcGhvdG9fdXJsOiAnbWlzc2luZycsXG4gICAgbGFiZWw6ICcnLFxuICB9KTtcbiAgY29uc3QgW3dhSWQsIHNldFdhSWRdID0gdXNlU3RhdGUod2F0ZXJBdXRob3JpdHlJZCk7XG4gIGNvbnN0IFttZW51LCBzZXRNZW51XSA9IHVzZVN0YXRlKHt9KTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuXG4gIGNvbnN0IHVzZVF1ZXJ5ID0gKCkgPT4ge1xuICAgIHJldHVybiBuZXcgVVJMU2VhcmNoUGFyYW1zKHVzZUxvY2F0aW9uKCkuc2VhcmNoKTtcbiAgfTtcbiAgY29uc3QgcXVlcnkgPSB1c2VRdWVyeSgpO1xuXG4gIGNvbnN0IFtjdXN0b21lck1lbnUsIHNldEN1c3RvbWVyTWVudV0gPSB1c2VTdGF0ZSh7XG4gICAgZWRpdDoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLmVkaXRfYWNjb3VudCcsXG4gICAgfSxcbiAgICBmZWVkYmFjazoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLmZlZWRiYWNrJyxcbiAgICB9LFxuICAgIGhlbHA6IHtcbiAgICAgIGxpbms6ICcnLFxuICAgICAgbGFiZWw6ICdtYWluX3NjcmVlbi5oZWxwJyxcbiAgICB9LFxuICAgIG15X3Byb2ZpbGU6IHtcbiAgICAgIGxpbms6ICcnLFxuICAgICAgbGFiZWw6ICdtYWluX3NjcmVlbi5teV9wcm9maWxlJyxcbiAgICB9LFxuICAgIG5hbWU6IHVuZGVmaW5lZCxcbiAgICBzaWduX291dDoge1xuICAgICAgbGluazogJycsXG4gICAgICBsYWJlbDogJ21haW5fc2NyZWVuLnNpZ25fb3V0JyxcbiAgICAgIG1ldGhvZDogJycsXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IG5hdkNvbnRleHQgPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5uYXZfY29udGV4dF9kYXRhLm5hdkNvbnRleHQsXG4gICk7XG5cbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoc2VsZWN0ZWRPcHRpb246IGFueSkgPT4ge1xuICAgIHNldFdhSWQoc2VsZWN0ZWRPcHRpb24udmFsdWUpO1xuICAgIGRpc3BhdGNoKHNldFdhdGVyQXV0aG9yaXR5KHsgaWQ6IHNlbGVjdGVkT3B0aW9uLnZhbHVlLCBuYW1lOiAnJyB9KSk7XG4gICAgaGlzdG9yeS5wdXNoKFxuICAgICAgYC8ke25hdkNvbnRleHQubmFtZX0vaW5kZXg/bG9jYWxlPSR7bmF2Q29udGV4dC5sb2NhbGV9JndhdGVyX2F1dGhvcml0eV9pZD0ke3NlbGVjdGVkT3B0aW9uLnZhbHVlfWAsXG4gICAgKTtcbiAgfTtcblxuICBjb25zdCBpdGVyYXRlID0gKG9iajogYW55KSA9PiB7XG4gICAgbGV0IGl0ZW1zOiBhbnlbXSA9IFtdO1xuICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gb2JqKSB7XG4gICAgICBpZiAob2JqW3Byb3BlcnR5XS5leHBhbmRhYmxlKSB7XG4gICAgICAgIGl0ZW1zLnB1c2goXG4gICAgICAgICAgPE5hdkRyb3Bkb3duXG4gICAgICAgICAgICBrZXk9e29ialtwcm9wZXJ0eV0ubGFiZWx9XG4gICAgICAgICAgICB0aXRsZT17aTE4bi50KG9ialtwcm9wZXJ0eV0ubGFiZWwpfVxuICAgICAgICAgICAgaWQ9XCJiYXNpYy1uYXYtZHJvcGRvd25cIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpdGVyYXRlKG9ialtwcm9wZXJ0eV0uZXhwYW5zaW9uKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duPixcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChvYmpbcHJvcGVydHldLmNsYXNzID09PSAnanMtaXMtcmVhY3QnKSB7XG4gICAgICAgICAgaXRlbXMucHVzaChcbiAgICAgICAgICAgIDxMaW5rXG4gICAgICAgICAgICAgIGtleT17b2JqW3Byb3BlcnR5XS5saW5rfVxuICAgICAgICAgICAgICBjbGFzc05hbWU9XCJkcm9wZG93bi1pdGVtXCJcbiAgICAgICAgICAgICAgdG89e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udChvYmpbcHJvcGVydHldLmxhYmVsKX1cbiAgICAgICAgICAgIDwvTGluaz4sXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtcy5wdXNoKFxuICAgICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgICAga2V5PXtvYmpbcHJvcGVydHldLmxpbmt9XG4gICAgICAgICAgICAgIGhyZWY9e29ialtwcm9wZXJ0eV0ubGlua31cbiAgICAgICAgICAgICAgaWQ9XCJiYXNpYy1uYXZiYXItbmF2XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAge2kxOG4udChvYmpbcHJvcGVydHldLmxhYmVsKX1cbiAgICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT4sXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBpdGVtcztcbiAgfTtcblxuICBjb25zdCByZW5kZXJDbGllbnRzUGhvdG8gPSAoKSA9PiB7XG4gICAgaWYgKGxvY2FsV2F0ZXJBdXRob3JpdHkgIT09IHVuZGVmaW5lZCkge1xuICAgICAgbGV0IHVybCA9IGxvY2FsV2F0ZXJBdXRob3JpdHkucGhvdG9fdXJsISBhcyBzdHJpbmc7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8aW1nXG4gICAgICAgICAgYWx0PVwibWlzc2luZ1wiXG4gICAgICAgICAgc3JjPXt1cmwuc3RhcnRzV2l0aCgnbWlzc2luZycpID8gV2F0ZXJBdXRob3JpdHlNaXNzaW5nSWNvbiA6IHVybH1cbiAgICAgICAgICBzdHlsZT17eyBoZWlnaHQ6ICc0MHB4Jywgd2lkdGg6ICdhdXRvJyB9fVxuICAgICAgICAvPlxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBidWlsZFN3aXRjaENsaWVudCA9ICgpID0+IHtcbiAgICBpZiAod2F0ZXJBdXRob3JpdGllcyAhPT0gdW5kZWZpbmVkICYmIHdhdGVyQXV0aG9yaXRpZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBpZiAod2F0ZXJBdXRob3JpdGllcy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8cCBjbGFzc05hbWU9eyd3YXRlci1hdXRob3JpdHktc2luZ2xlLWxhYmVsJ30+XG4gICAgICAgICAgICB7bG9jYWxXYXRlckF1dGhvcml0eS5sYWJlbH1cbiAgICAgICAgICA8L3A+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxOYXZEcm9wZG93blxuICAgICAgICAgIHRpdGxlPXtsb2NhbFdhdGVyQXV0aG9yaXR5ICE9PSBudWxsID8gbG9jYWxXYXRlckF1dGhvcml0eS5sYWJlbCA6ICcnfVxuICAgICAgICAgIGlkPVwiYmFzaWMtbmF2LWRyb3Bkb3duXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtVGV4dCBzdHlsZT17eyB3aWR0aDogJzMwMHB4JyB9fT5cbiAgICAgICAgICAgIDxTZWxlY3RcbiAgICAgICAgICAgICAgY2xhc3NOYW1lPVwiYmFzaWMtc2luZ2xlXCJcbiAgICAgICAgICAgICAgY2xhc3NOYW1lUHJlZml4PVwic2VsZWN0XCJcbiAgICAgICAgICAgICAgaXNTZWFyY2hhYmxlPXt0cnVlfVxuICAgICAgICAgICAgICBuYW1lPVwiY29sb3JcIlxuICAgICAgICAgICAgICBvcHRpb25zPXt3YXRlckF1dGhvcml0aWVzLm1hcCgobG9jYWxXYXRlckF1dGhvcml0eTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICAgIHZhbHVlOiBsb2NhbFdhdGVyQXV0aG9yaXR5LmlkLFxuICAgICAgICAgICAgICAgICAgbGFiZWw6IGxvY2FsV2F0ZXJBdXRob3JpdHkubmFtZSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9KX1cbiAgICAgICAgICAgICAgZ2V0T3B0aW9uTGFiZWw9eyhsb2NhbFdhdGVyQXV0aG9yaXR5OiBhbnkpID0+XG4gICAgICAgICAgICAgICAgbG9jYWxXYXRlckF1dGhvcml0eS5sYWJlbFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlOiBPYmplY3QpID0+IGhhbmRsZUNoYW5nZShlKX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtVGV4dD5cbiAgICAgICAgPC9OYXZEcm9wZG93bj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9O1xuXG4gIGNvbnN0IGJ1aWxkQ3VzdG9tZXJNZW51ID0gKGNvbnRleHROYW1lOiBzdHJpbmcpID0+IHtcbiAgICBpZiAoY3VzdG9tZXJNZW51ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxOYXZEcm9wZG93blxuICAgICAgICAgIGFsaWduUmlnaHRcbiAgICAgICAgICBjbGFzc05hbWU9eydjdXN0b21lci1tZW51IG9yZGVyLXNtLTMnfVxuICAgICAgICAgIGlkPVwiYmFzaWMtbmF2LWRyb3Bkb3duXCJcbiAgICAgICAgICB0aXRsZT17XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2N1c3RvbWVyLW1lbnVfX2NvbnRlbnQnfT5cbiAgICAgICAgICAgICAgPGltZyBzcmM9e0F2YXRhcn0gYWx0PVwiYXZhdGFyXCI+PC9pbWc+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT17J2dyZWV0aW5nJ30+XG4gICAgICAgICAgICAgICAge2Ake2kxOG4udCgnbWFpbl9zY3JlZW4uaGVsbG8nKX0gJHtcbiAgICAgICAgICAgICAgICAgIGN1c3RvbWVyTWVudS5uYW1lID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgICAgPyBpMThuLnQoJ21haW5fc2NyZWVuLnRoZXJlJylcbiAgICAgICAgICAgICAgICAgICAgOiAnLCAnICsgY3VzdG9tZXJNZW51Lm5hbWVcbiAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17Y3VzdG9tZXJNZW51Lm15X3Byb2ZpbGUubGlua30+XG4gICAgICAgICAgICB7aTE4bi50KCdtYWluX3NjcmVlbi5teV9wcm9maWxlJyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuZWRpdC5saW5rfVxuICAgICAgICAgICAga2V5PXtjdXN0b21lck1lbnUuZWRpdC5saW5rfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLmVkaXRfYWNjb3VudCcpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbVxuICAgICAgICAgICAgaHJlZj17Y3VzdG9tZXJNZW51LmZlZWRiYWNrLmxpbmt9XG4gICAgICAgICAgICBrZXk9e2N1c3RvbWVyTWVudS5mZWVkYmFjay5saW5rfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLmZlZWRiYWNrJyl9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtXG4gICAgICAgICAgICBocmVmPXtjdXN0b21lck1lbnUuaGVscC5saW5rfVxuICAgICAgICAgICAga2V5PXtjdXN0b21lck1lbnUuaGVscC5saW5rfVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHtpMThuLnQoJ21haW5fc2NyZWVuLmhlbHAnKX1cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkRpdmlkZXIgLz5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnZW4nKX0+XG4gICAgICAgICAgICB7J0VuZ2xpc2gnfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgICA8TmF2RHJvcGRvd24uSXRlbSBocmVmPXtyZXBsYWNlVVJMKCdsb2NhbGUnLCAnZW5fdWsnKX0+XG4gICAgICAgICAgICB7J0VuZ2xpc2ggKFVLKSd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdoZScpfT5cbiAgICAgICAgICAgIHsn16LXkdeo15nXqid9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5JdGVtIGhyZWY9e3JlcGxhY2VVUkwoJ2xvY2FsZScsICdmcicpfT5cbiAgICAgICAgICAgIHsnRnJhbsOnYWlzJ31cbiAgICAgICAgICA8L05hdkRyb3Bkb3duLkl0ZW0+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW0gaHJlZj17cmVwbGFjZVVSTCgnbG9jYWxlJywgJ2l0Jyl9PlxuICAgICAgICAgICAgeydJdGFsaWFubyd9XG4gICAgICAgICAgPC9OYXZEcm9wZG93bi5JdGVtPlxuICAgICAgICAgIDxOYXZEcm9wZG93bi5EaXZpZGVyIC8+XG4gICAgICAgICAgPE5hdkRyb3Bkb3duLkl0ZW1cbiAgICAgICAgICAgIGhyZWY9e2N1c3RvbWVyTWVudS5zaWduX291dC5saW5rfVxuICAgICAgICAgICAgZGF0YS1tZXRob2Q9e2N1c3RvbWVyTWVudS5zaWduX291dC5tZXRob2R9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2kxOG4udChjdXN0b21lck1lbnUuc2lnbl9vdXQubGFiZWwpfVxuICAgICAgICAgIDwvTmF2RHJvcGRvd24uSXRlbT5cbiAgICAgICAgPC9OYXZEcm9wZG93bj5cbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IGxvY2FsZSA9IHF1ZXJ5LmdldCgnbG9jYWxlJykgfHwgJ2VuJztcbiAgICBmZXRjaChgL2RhdGEvbWVudV9kYXRhLmpzb24/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2FJZH0mbG9jYWxlPSR7bG9jYWxlfWApXG4gICAgICAudGhlbigocmVzcG9uc2UpID0+IHJlc3BvbnNlLmpzb24oKSlcbiAgICAgIC50aGVuKChqc29uKSA9PiB7XG4gICAgICAgIHNldFdhdGVyQXV0aG9yaXRpZXMoanNvbi53YXRlcl9hdXRob3JpdGllcyk7XG4gICAgICAgIHNldE1lbnUoanNvbi5tZW51KTtcbiAgICAgICAgZGlzcGF0Y2goXG4gICAgICAgICAgc2V0V2F0ZXJBdXRob3JpdHkoe1xuICAgICAgICAgICAgaWQ6IGpzb24ud2F0ZXJfYXV0aG9yaXR5LnZhbHVlLFxuICAgICAgICAgICAgbmFtZToganNvbi53YXRlcl9hdXRob3JpdHkubGFiZWwsXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgICAgIHNldExvY2FsV2F0ZXJBdXRob3JpdHkoanNvbi53YXRlcl9hdXRob3JpdHkpOyAvLyBhZGQgdG8gU3RvcmVcbiAgICAgICAgdXBkYXRlUGFnZVRpdGxlKGpzb24ud2F0ZXJfYXV0aG9yaXR5LmxhYmVsKTtcbiAgICAgICAgc2V0Q3VzdG9tZXJNZW51KGpzb24uY3VzdG9tZXJfbWVudSk7XG4gICAgICB9KTtcblxuICAgIHJldHVybiBmdW5jdGlvbiBjbGVhbnVwKCkge1xuICAgICAgc2V0V2F0ZXJBdXRob3JpdGllcyhbXSk7XG4gICAgICBzZXRNZW51KHt9KTtcbiAgICB9O1xuICB9LCBbd2FJZF0pO1xuXG4gIHJldHVybiAoXG4gICAgPFJlYWN0LkZyYWdtZW50PlxuICAgICAgPEVycm9yQm91bmRhcnk+XG4gICAgICAgIDxOYXZiYXIgZXhwYW5kPVwic21cIiBjbGFzc05hbWU9eydqdXN0aWZ5LWNvbnRlbnQtYmV0d2Vlbid9PlxuICAgICAgICAgIDxOYXZiYXIuVG9nZ2xlIGFyaWEtY29udHJvbHM9XCJiYXNpYy1uYXZiYXItbmF2XCIgLz5cbiAgICAgICAgICA8TmF2YmFyLkJyYW5kIGNsYXNzTmFtZT17J2xvZ28nfT5cbiAgICAgICAgICAgIDxpbWcgc3JjPXtLYW5kb0xvZ299IGFsdD1cImthbmRvLWxvZ29cIj48L2ltZz5cbiAgICAgICAgICA8L05hdmJhci5CcmFuZD5cbiAgICAgICAgICA8TmF2YmFyLkJyYW5kIGNsYXNzTmFtZT17J2NsaWVudC1sb2dvJ30+XG4gICAgICAgICAgICB7cmVuZGVyQ2xpZW50c1Bob3RvKCl9XG4gICAgICAgICAgPC9OYXZiYXIuQnJhbmQ+XG4gICAgICAgICAge2J1aWxkQ3VzdG9tZXJNZW51KG5hdkNvbnRleHQubmFtZSl9XG4gICAgICAgICAgPE5hdmJhci5Db2xsYXBzZSBpZD1cImJhc2ljLW5hdmJhci1uYXZcIj5cbiAgICAgICAgICAgIDxOYXYgc3R5bGU9e3sgY29sb3I6ICdibHVlJyB9fT5cbiAgICAgICAgICAgICAge2l0ZXJhdGUobWVudSkubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGl0ZW07XG4gICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3N3aXRjaC1jbGllbnQtY29udGFpbmVyJ30+XG4gICAgICAgICAgICAgICAgPEZvbnRBd2Vzb21lSWNvbiBpY29uPXtmYVRpbnR9IC8+XG4gICAgICAgICAgICAgICAge2J1aWxkU3dpdGNoQ2xpZW50KCl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9OYXY+XG4gICAgICAgICAgPC9OYXZiYXIuQ29sbGFwc2U+XG4gICAgICAgICAge31cbiAgICAgICAgPC9OYXZiYXI+XG4gICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgPC9SZWFjdC5GcmFnbWVudD5cbiAgKTtcbn07XG5LYW5kb05hdmJhci5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5cbmV4cG9ydCBkZWZhdWx0IEthbmRvTmF2YmFyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxrQkFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsaUJBQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLGVBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFdBQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLGVBQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLFlBQUEsR0FBQUMsc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFTLFdBQUEsR0FBQUQsc0JBQUEsQ0FBQVIsT0FBQTtBQUNBLElBQUFVLFVBQUEsR0FBQUYsc0JBQUEsQ0FBQVIsT0FBQTtBQUF5RSxJQUFBVyxLQUFBLEdBQUFILHNCQUFBLENBQUFSLE9BQUE7QUFFekUsSUFBQVksV0FBQSxHQUFBWixPQUFBO0FBQ0EsSUFBQWEsUUFBQSxHQUFBYixPQUFBO0FBRUEsSUFBQWMsY0FBQSxHQUFBTixzQkFBQSxDQUFBUixPQUFBO0FBQ0EsSUFBQWUsS0FBQSxHQUFBUCxzQkFBQSxDQUFBUixPQUFBO0FBQ0FBLE9BQUE7QUFBNEIsU0FBQWdCLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSx5QkFBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBZCx3QkFBQWtCLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFaLEdBQUEsQ0FBQVksR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUgsR0FBQSxNQUFBSSxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBakIsR0FBQSxFQUFBTyxNQUFBLFlBQUFBLE1BQUE7QUFFNUIsSUFBTVcsZUFBZSxHQUFHLFNBQWxCQSxlQUFlQSxDQUFJQyxLQUFhO0VBQUEsT0FDbkNDLFFBQVEsQ0FBQ0QsS0FBSyxjQUFBRSxNQUFBLENBQWNGLEtBQUssQ0FBRTtBQUFBLENBQUM7QUFRdkMsSUFBTUcsWUFBWSxHQUFHO0VBQ25CQyxhQUFhLEVBQUUsRUFBRTtFQUNqQkMsU0FBUyxFQUFFO0FBQ2IsQ0FBQztBQUVELFNBQVNDLFVBQVVBLENBQUNiLEdBQVcsRUFBRWMsS0FBYSxFQUFFO0VBQzlDLElBQUlDLE1BQU0sR0FBRyxJQUFJQyxlQUFlLENBQUNDLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDQyxNQUFNLENBQUM7RUFDeERKLE1BQU0sQ0FBQ1YsR0FBRyxDQUFDTCxHQUFHLEVBQUVjLEtBQUssQ0FBQztFQUN0QixPQUNFRyxNQUFNLENBQUNDLFFBQVEsQ0FBQ0UsUUFBUSxHQUN4QixJQUFJLEdBQ0pILE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRyxJQUFJLEdBQ3BCSixNQUFNLENBQUNDLFFBQVEsQ0FBQ0ksUUFBUSxHQUN4QixHQUFHLEdBQ0hQLE1BQU0sQ0FBQ1EsUUFBUSxDQUFDLENBQUM7QUFFckI7QUFFQSxJQUFNQyxXQUFXLEdBQUcsU0FBZEEsV0FBV0EsQ0FBQUMsSUFBQSxFQUlIO0VBQUEsSUFIWkMsZ0JBQWdCLEdBQUFELElBQUEsQ0FBaEJDLGdCQUFnQjtJQUNoQmYsYUFBYSxHQUFBYyxJQUFBLENBQWJkLGFBQWE7SUFDYkMsU0FBUyxHQUFBYSxJQUFBLENBQVRiLFNBQVM7RUFFVCxJQUFBZSxTQUFBLEdBQWdELElBQUFDLGVBQVEsRUFBQyxFQUFFLENBQUM7SUFBQUMsVUFBQSxPQUFBQyxlQUFBLENBQUF2QyxPQUFBLEVBQUFvQyxTQUFBO0lBQXJESSxnQkFBZ0IsR0FBQUYsVUFBQTtJQUFFRyxtQkFBbUIsR0FBQUgsVUFBQTtFQUM1QyxJQUFBSSxVQUFBLEdBQXNELElBQUFMLGVBQVEsRUFBQztNQUM3RE0sU0FBUyxFQUFFLFNBQVM7TUFDcEJDLEtBQUssRUFBRTtJQUNULENBQUMsQ0FBQztJQUFBQyxVQUFBLE9BQUFOLGVBQUEsQ0FBQXZDLE9BQUEsRUFBQTBDLFVBQUE7SUFIS0ksbUJBQW1CLEdBQUFELFVBQUE7SUFBRUUsc0JBQXNCLEdBQUFGLFVBQUE7RUFJbEQsSUFBQUcsVUFBQSxHQUF3QixJQUFBWCxlQUFRLEVBQUNGLGdCQUFnQixDQUFDO0lBQUFjLFVBQUEsT0FBQVYsZUFBQSxDQUFBdkMsT0FBQSxFQUFBZ0QsVUFBQTtJQUEzQ0UsSUFBSSxHQUFBRCxVQUFBO0lBQUVFLE9BQU8sR0FBQUYsVUFBQTtFQUNwQixJQUFBRyxVQUFBLEdBQXdCLElBQUFmLGVBQVEsRUFBQyxDQUFDLENBQUMsQ0FBQztJQUFBZ0IsVUFBQSxPQUFBZCxlQUFBLENBQUF2QyxPQUFBLEVBQUFvRCxVQUFBO0lBQTdCRSxJQUFJLEdBQUFELFVBQUE7SUFBRUUsT0FBTyxHQUFBRixVQUFBO0VBQ3BCLElBQU1HLFFBQVEsR0FBRyxJQUFBQyx1QkFBVyxFQUFDLENBQUM7RUFFOUIsSUFBTUMsUUFBUSxHQUFHLFNBQVhBLFFBQVFBLENBQUEsRUFBUztJQUNyQixPQUFPLElBQUlqQyxlQUFlLENBQUMsSUFBQWtDLDJCQUFXLEVBQUMsQ0FBQyxDQUFDL0IsTUFBTSxDQUFDO0VBQ2xELENBQUM7RUFDRCxJQUFNZ0MsS0FBSyxHQUFHRixRQUFRLENBQUMsQ0FBQztFQUV4QixJQUFBRyxVQUFBLEdBQXdDLElBQUF4QixlQUFRLEVBQUM7TUFDL0N5QixJQUFJLEVBQUU7UUFDSkMsSUFBSSxFQUFFLEVBQUU7UUFDUm5CLEtBQUssRUFBRTtNQUNULENBQUM7TUFDRG9CLFFBQVEsRUFBRTtRQUNSRCxJQUFJLEVBQUUsRUFBRTtRQUNSbkIsS0FBSyxFQUFFO01BQ1QsQ0FBQztNQUNEcUIsSUFBSSxFQUFFO1FBQ0pGLElBQUksRUFBRSxFQUFFO1FBQ1JuQixLQUFLLEVBQUU7TUFDVCxDQUFDO01BQ0RzQixVQUFVLEVBQUU7UUFDVkgsSUFBSSxFQUFFLEVBQUU7UUFDUm5CLEtBQUssRUFBRTtNQUNULENBQUM7TUFDRHVCLElBQUksRUFBRUMsU0FBUztNQUNmQyxRQUFRLEVBQUU7UUFDUk4sSUFBSSxFQUFFLEVBQUU7UUFDUm5CLEtBQUssRUFBRSxzQkFBc0I7UUFDN0IwQixNQUFNLEVBQUU7TUFDVjtJQUNGLENBQUMsQ0FBQztJQUFBQyxXQUFBLE9BQUFoQyxlQUFBLENBQUF2QyxPQUFBLEVBQUE2RCxVQUFBO0lBdkJLVyxZQUFZLEdBQUFELFdBQUE7SUFBRUUsZUFBZSxHQUFBRixXQUFBO0VBd0JwQyxJQUFNRyxVQUFVLEdBQUcsSUFBQUMsdUJBQVcsRUFDNUIsVUFBQ0MsS0FBb0M7SUFBQSxPQUFLQSxLQUFLLENBQUNDLGdCQUFnQixDQUFDSCxVQUFVO0VBQUEsQ0FDN0UsQ0FBQztFQUVELElBQU1JLE9BQU8sR0FBRyxJQUFBQywwQkFBVSxFQUFDLENBQUM7RUFFNUIsSUFBTUMsWUFBWSxHQUFHLFNBQWZBLFlBQVlBLENBQUlDLGNBQW1CLEVBQUs7SUFDNUM5QixPQUFPLENBQUM4QixjQUFjLENBQUMxRCxLQUFLLENBQUM7SUFDN0JpQyxRQUFRLENBQUMsSUFBQTBCLDBCQUFpQixFQUFDO01BQUVDLEVBQUUsRUFBRUYsY0FBYyxDQUFDMUQsS0FBSztNQUFFNEMsSUFBSSxFQUFFO0lBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkVXLE9BQU8sQ0FBQ00sSUFBSSxLQUFBbEUsTUFBQSxDQUNOd0QsVUFBVSxDQUFDUCxJQUFJLG9CQUFBakQsTUFBQSxDQUFpQndELFVBQVUsQ0FBQ1csTUFBTSwwQkFBQW5FLE1BQUEsQ0FBdUIrRCxjQUFjLENBQUMxRCxLQUFLLENBQ2xHLENBQUM7RUFDSCxDQUFDO0VBRUQsSUFBTStELE9BQU8sR0FBRyxTQUFWQSxPQUFPQSxDQUFJekYsR0FBUSxFQUFLO0lBQzVCLElBQUkwRixLQUFZLEdBQUcsRUFBRTtJQUNyQixLQUFLLElBQU1DLFFBQVEsSUFBSTNGLEdBQUcsRUFBRTtNQUMxQixJQUFJQSxHQUFHLENBQUMyRixRQUFRLENBQUMsQ0FBQ0MsVUFBVSxFQUFFO1FBQzVCRixLQUFLLENBQUNILElBQUksZUFDUjFHLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVc7VUFDVmxGLEdBQUcsRUFBRVosR0FBRyxDQUFDMkYsUUFBUSxDQUFDLENBQUM1QyxLQUFNO1VBQ3pCNUIsS0FBSyxFQUFFNEUsYUFBSSxDQUFDQyxDQUFDLENBQUNoRyxHQUFHLENBQUMyRixRQUFRLENBQUMsQ0FBQzVDLEtBQUssQ0FBRTtVQUNuQ3VDLEVBQUUsRUFBQztRQUFvQixHQUV0QkcsT0FBTyxDQUFDekYsR0FBRyxDQUFDMkYsUUFBUSxDQUFDLENBQUNNLFNBQVMsQ0FDckIsQ0FDZixDQUFDO01BQ0gsQ0FBQyxNQUFNO1FBQ0wsSUFBSWpHLEdBQUcsQ0FBQzJGLFFBQVEsQ0FBQyxDQUFDTyxLQUFLLEtBQUssYUFBYSxFQUFFO1VBQ3pDUixLQUFLLENBQUNILElBQUksZUFDUjFHLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQ3RHLFdBQUEsQ0FBQTRHLElBQUk7WUFDSHZGLEdBQUcsRUFBRVosR0FBRyxDQUFDMkYsUUFBUSxDQUFDLENBQUN6QixJQUFLO1lBQ3hCa0MsU0FBUyxFQUFDLGVBQWU7WUFDekJDLEVBQUUsRUFBRXJHLEdBQUcsQ0FBQzJGLFFBQVEsQ0FBQyxDQUFDekI7VUFBSyxHQUV0QjZCLGFBQUksQ0FBQ0MsQ0FBQyxDQUFDaEcsR0FBRyxDQUFDMkYsUUFBUSxDQUFDLENBQUM1QyxLQUFLLENBQ3ZCLENBQ1IsQ0FBQztRQUNILENBQUMsTUFBTTtVQUNMMkMsS0FBSyxDQUFDSCxJQUFJLGVBQ1IxRyxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBLENBQUM5RyxlQUFBLENBQUErRyxXQUFXLENBQUNRLElBQUk7WUFDZjFGLEdBQUcsRUFBRVosR0FBRyxDQUFDMkYsUUFBUSxDQUFDLENBQUN6QixJQUFLO1lBQ3hCcUMsSUFBSSxFQUFFdkcsR0FBRyxDQUFDMkYsUUFBUSxDQUFDLENBQUN6QixJQUFLO1lBQ3pCb0IsRUFBRSxFQUFDO1VBQWtCLEdBRXBCUyxhQUFJLENBQUNDLENBQUMsQ0FBQ2hHLEdBQUcsQ0FBQzJGLFFBQVEsQ0FBQyxDQUFDNUMsS0FBSyxDQUNYLENBQ3BCLENBQUM7UUFDSDtNQUNGO0lBQ0Y7SUFFQSxPQUFPMkMsS0FBSztFQUNkLENBQUM7RUFFRCxJQUFNYyxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQWtCQSxDQUFBLEVBQVM7SUFDL0IsSUFBSXZELG1CQUFtQixLQUFLc0IsU0FBUyxFQUFFO01BQ3JDLElBQUlrQyxHQUFHLEdBQUd4RCxtQkFBbUIsQ0FBQ0gsU0FBb0I7TUFDbEQsb0JBQ0VqRSxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBO1FBQ0VhLEdBQUcsRUFBQyxTQUFTO1FBQ2JDLEdBQUcsRUFBRUYsR0FBRyxDQUFDRyxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUdDLGtCQUF5QixHQUFHSixHQUFJO1FBQ2pFSyxLQUFLLEVBQUU7VUFBRUMsTUFBTSxFQUFFLE1BQU07VUFBRUMsS0FBSyxFQUFFO1FBQU87TUFBRSxDQUMxQyxDQUFDO0lBRU4sQ0FBQyxNQUFNO01BQ0w7SUFDRjtFQUNGLENBQUM7RUFFRCxJQUFNQyxpQkFBaUIsR0FBRyxTQUFwQkEsaUJBQWlCQSxDQUFBLEVBQVM7SUFDOUIsSUFBSXRFLGdCQUFnQixLQUFLNEIsU0FBUyxJQUFJNUIsZ0JBQWdCLENBQUN1RSxNQUFNLEtBQUssQ0FBQyxFQUFFO01BQ25FLElBQUl2RSxnQkFBZ0IsQ0FBQ3VFLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDakMsb0JBQ0VySSxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBO1VBQUdPLFNBQVMsRUFBRTtRQUErQixHQUMxQ25ELG1CQUFtQixDQUFDRixLQUNwQixDQUFDO01BRVI7TUFFQSxvQkFDRWxFLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVc7UUFDVjNFLEtBQUssRUFBRThCLG1CQUFtQixLQUFLLElBQUksR0FBR0EsbUJBQW1CLENBQUNGLEtBQUssR0FBRyxFQUFHO1FBQ3JFdUMsRUFBRSxFQUFDO01BQW9CLGdCQUV2QnpHLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ3FCLFFBQVE7UUFBQ0wsS0FBSyxFQUFFO1VBQUVFLEtBQUssRUFBRTtRQUFRO01BQUUsZ0JBQzlDbkksTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDM0csWUFBQSxDQUFBaUIsT0FBTTtRQUNMaUcsU0FBUyxFQUFDLGNBQWM7UUFDeEJnQixlQUFlLEVBQUMsUUFBUTtRQUN4QkMsWUFBWSxFQUFFLElBQUs7UUFDbkIvQyxJQUFJLEVBQUMsT0FBTztRQUNaZ0QsT0FBTyxFQUFFM0UsZ0JBQWdCLENBQUM0RSxHQUFHLENBQUMsVUFBQ3RFLG1CQUF3QixFQUFLO1VBQzFELE9BQU87WUFDTHZCLEtBQUssRUFBRXVCLG1CQUFtQixDQUFDcUMsRUFBRTtZQUM3QnZDLEtBQUssRUFBRUUsbUJBQW1CLENBQUNxQjtVQUM3QixDQUFDO1FBQ0gsQ0FBQyxDQUFFO1FBQ0hrRCxjQUFjLEVBQUUsU0FBQUEsZUFBQ3ZFLG1CQUF3QjtVQUFBLE9BQ3ZDQSxtQkFBbUIsQ0FBQ0YsS0FBSztRQUFBO1FBRTNCO1FBQUE7UUFDQTBFLFFBQVEsRUFBRSxTQUFBQSxTQUFDQyxDQUFTO1VBQUEsT0FBS3ZDLFlBQVksQ0FBQ3VDLENBQUMsQ0FBQztRQUFBO01BQUMsQ0FDMUMsQ0FDbUIsQ0FDWCxDQUFDO0lBRWxCO0lBRUE7RUFDRixDQUFDO0VBRUQsSUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFpQkEsQ0FBSUMsV0FBbUIsRUFBSztJQUNqRCxJQUFJakQsWUFBWSxLQUFLSixTQUFTLEVBQUU7TUFDOUI7TUFDQSxvQkFDRTFGLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVc7UUFDVitCLFVBQVU7UUFDVnpCLFNBQVMsRUFBRSwwQkFBMkI7UUFDdENkLEVBQUUsRUFBQyxvQkFBb0I7UUFDdkJuRSxLQUFLLGVBQ0h0QyxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBO1VBQUtPLFNBQVMsRUFBRTtRQUF5QixnQkFDdkN2SCxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBO1VBQUtjLEdBQUcsRUFBRW1CLGFBQU87VUFBQ3BCLEdBQUcsRUFBQztRQUFRLENBQU0sQ0FBQyxlQUNyQzdILE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUE7VUFBTU8sU0FBUyxFQUFFO1FBQVcsTUFBQS9FLE1BQUEsQ0FDdEIwRSxhQUFJLENBQUNDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFBM0UsTUFBQSxDQUM3QnNELFlBQVksQ0FBQ0wsSUFBSSxLQUFLQyxTQUFTLEdBQzNCd0IsYUFBSSxDQUFDQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsR0FDM0IsSUFBSSxHQUFHckIsWUFBWSxDQUFDTCxJQUFJLENBRTFCLENBQ0g7TUFDTixnQkFFRHpGLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ1EsSUFBSTtRQUFDQyxJQUFJLEVBQUU1QixZQUFZLENBQUNOLFVBQVUsQ0FBQ0g7TUFBSyxHQUNsRDZCLGFBQUksQ0FBQ0MsQ0FBQyxDQUFDLHdCQUF3QixDQUNoQixDQUFDLGVBQ25CbkgsTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDOUcsZUFBQSxDQUFBK0csV0FBVyxDQUFDUSxJQUFJO1FBQ2ZDLElBQUksRUFBRTVCLFlBQVksQ0FBQ1YsSUFBSSxDQUFDQyxJQUFLO1FBQzdCdEQsR0FBRyxFQUFFK0QsWUFBWSxDQUFDVixJQUFJLENBQUNDO01BQUssR0FFM0I2QixhQUFJLENBQUNDLENBQUMsQ0FBQywwQkFBMEIsQ0FDbEIsQ0FBQyxlQUNuQm5ILE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ1EsSUFBSTtRQUNmQyxJQUFJLEVBQUU1QixZQUFZLENBQUNSLFFBQVEsQ0FBQ0QsSUFBSztRQUNqQ3RELEdBQUcsRUFBRStELFlBQVksQ0FBQ1IsUUFBUSxDQUFDRDtNQUFLLEdBRS9CNkIsYUFBSSxDQUFDQyxDQUFDLENBQUMsc0JBQXNCLENBQ2QsQ0FBQyxlQUNuQm5ILE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ1EsSUFBSTtRQUNmQyxJQUFJLEVBQUU1QixZQUFZLENBQUNQLElBQUksQ0FBQ0YsSUFBSztRQUM3QnRELEdBQUcsRUFBRStELFlBQVksQ0FBQ1AsSUFBSSxDQUFDRjtNQUFLLEdBRTNCNkIsYUFBSSxDQUFDQyxDQUFDLENBQUMsa0JBQWtCLENBQ1YsQ0FBQyxlQUNuQm5ILE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ2lDLE9BQU8sTUFBRSxDQUFDLGVBQ3ZCbEosTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDOUcsZUFBQSxDQUFBK0csV0FBVyxDQUFDUSxJQUFJO1FBQUNDLElBQUksRUFBRTlFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSTtNQUFFLEdBQ2hELFNBQ2UsQ0FBQyxlQUNuQjVDLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ1EsSUFBSTtRQUFDQyxJQUFJLEVBQUU5RSxVQUFVLENBQUMsUUFBUSxFQUFFLE9BQU87TUFBRSxHQUNuRCxjQUNlLENBQUMsZUFDbkI1QyxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBLENBQUM5RyxlQUFBLENBQUErRyxXQUFXLENBQUNRLElBQUk7UUFBQ0MsSUFBSSxFQUFFOUUsVUFBVSxDQUFDLFFBQVEsRUFBRSxJQUFJO01BQUUsR0FDaEQsT0FDZSxDQUFDLGVBQ25CNUMsTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDOUcsZUFBQSxDQUFBK0csV0FBVyxDQUFDUSxJQUFJO1FBQUNDLElBQUksRUFBRTlFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsSUFBSTtNQUFFLEdBQ2hELFVBQ2UsQ0FBQyxlQUNuQjVDLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ1EsSUFBSTtRQUFDQyxJQUFJLEVBQUU5RSxVQUFVLENBQUMsUUFBUSxFQUFFLElBQUk7TUFBRSxHQUNoRCxVQUNlLENBQUMsZUFDbkI1QyxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBLENBQUM5RyxlQUFBLENBQUErRyxXQUFXLENBQUNpQyxPQUFPLE1BQUUsQ0FBQyxlQUN2QmxKLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQStHLFdBQVcsQ0FBQ1EsSUFBSTtRQUNmQyxJQUFJLEVBQUU1QixZQUFZLENBQUNILFFBQVEsQ0FBQ04sSUFBSztRQUNqQyxlQUFhUyxZQUFZLENBQUNILFFBQVEsQ0FBQ0M7TUFBTyxHQUV6Q3NCLGFBQUksQ0FBQ0MsQ0FBQyxDQUFDckIsWUFBWSxDQUFDSCxRQUFRLENBQUN6QixLQUFLLENBQ25CLENBQ1AsQ0FBQztJQUVsQjtJQUVBO0VBQ0YsQ0FBQztFQUVELElBQUFpRixnQkFBUyxFQUFDLFlBQU07SUFDZCxJQUFJeEMsTUFBTSxHQUFHekIsS0FBSyxDQUFDekQsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUk7SUFDeEMySCxLQUFLLDRDQUFBNUcsTUFBQSxDQUE0Q2dDLElBQUksY0FBQWhDLE1BQUEsQ0FBV21FLE1BQU0sQ0FBRSxDQUFDLENBQ3RFMEMsSUFBSSxDQUFDLFVBQUNDLFFBQVE7TUFBQSxPQUFLQSxRQUFRLENBQUNDLElBQUksQ0FBQyxDQUFDO0lBQUEsRUFBQyxDQUNuQ0YsSUFBSSxDQUFDLFVBQUNFLElBQUksRUFBSztNQUNkeEYsbUJBQW1CLENBQUN3RixJQUFJLENBQUNDLGlCQUFpQixDQUFDO01BQzNDM0UsT0FBTyxDQUFDMEUsSUFBSSxDQUFDM0UsSUFBSSxDQUFDO01BQ2xCRSxRQUFRLENBQ04sSUFBQTBCLDBCQUFpQixFQUFDO1FBQ2hCQyxFQUFFLEVBQUU4QyxJQUFJLENBQUNFLGVBQWUsQ0FBQzVHLEtBQUs7UUFDOUI0QyxJQUFJLEVBQUU4RCxJQUFJLENBQUNFLGVBQWUsQ0FBQ3ZGO01BQzdCLENBQUMsQ0FDSCxDQUFDO01BQ0RHLHNCQUFzQixDQUFDa0YsSUFBSSxDQUFDRSxlQUFlLENBQUMsQ0FBQyxDQUFDO01BQzlDcEgsZUFBZSxDQUFDa0gsSUFBSSxDQUFDRSxlQUFlLENBQUN2RixLQUFLLENBQUM7TUFDM0M2QixlQUFlLENBQUN3RCxJQUFJLENBQUNHLGFBQWEsQ0FBQztJQUNyQyxDQUFDLENBQUM7SUFFSixPQUFPLFNBQVNDLE9BQU9BLENBQUEsRUFBRztNQUN4QjVGLG1CQUFtQixDQUFDLEVBQUUsQ0FBQztNQUN2QmMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2IsQ0FBQztFQUNILENBQUMsRUFBRSxDQUFDTCxJQUFJLENBQUMsQ0FBQztFQUVWLG9CQUNFeEUsTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDaEgsTUFBQSxDQUFBc0IsT0FBSyxDQUFDc0ksUUFBUSxxQkFDYjVKLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQ3BHLGNBQUEsQ0FBQVUsT0FBYSxxQkFDWnRCLE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUEsQ0FBQzlHLGVBQUEsQ0FBQTJKLE1BQU07SUFBQ0MsTUFBTSxFQUFDLElBQUk7SUFBQ3ZDLFNBQVMsRUFBRTtFQUEwQixnQkFDdkR2SCxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBLENBQUM5RyxlQUFBLENBQUEySixNQUFNLENBQUNFLE1BQU07SUFBQyxpQkFBYztFQUFrQixDQUFFLENBQUMsZUFDbEQvSixNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBLENBQUM5RyxlQUFBLENBQUEySixNQUFNLENBQUNHLEtBQUs7SUFBQ3pDLFNBQVMsRUFBRTtFQUFPLGdCQUM5QnZILE1BQUEsQ0FBQXNCLE9BQUEsQ0FBQTBGLGFBQUE7SUFBS2MsR0FBRyxFQUFFbUMsbUJBQVU7SUFBQ3BDLEdBQUcsRUFBQztFQUFZLENBQU0sQ0FDL0IsQ0FBQyxlQUNmN0gsTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDOUcsZUFBQSxDQUFBMkosTUFBTSxDQUFDRyxLQUFLO0lBQUN6QyxTQUFTLEVBQUU7RUFBYyxHQUNwQ0ksa0JBQWtCLENBQUMsQ0FDUixDQUFDLEVBQ2RtQixpQkFBaUIsQ0FBQzlDLFVBQVUsQ0FBQ1AsSUFBSSxDQUFDLGVBQ25DekYsTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDOUcsZUFBQSxDQUFBMkosTUFBTSxDQUFDSyxRQUFRO0lBQUN6RCxFQUFFLEVBQUM7RUFBa0IsZ0JBQ3BDekcsTUFBQSxDQUFBc0IsT0FBQSxDQUFBMEYsYUFBQSxDQUFDOUcsZUFBQSxDQUFBaUssR0FBRztJQUFDbEMsS0FBSyxFQUFFO01BQUVtQyxLQUFLLEVBQUU7SUFBTztFQUFFLEdBQzNCeEQsT0FBTyxDQUFDaEMsSUFBSSxDQUFDLENBQUM4RCxHQUFHLENBQUMsVUFBQzJCLElBQUksRUFBSztJQUMzQixPQUFPQSxJQUFJO0VBQ2IsQ0FBQyxDQUFDLGVBQ0ZySyxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBO0lBQUtPLFNBQVMsRUFBRTtFQUEwQixnQkFDeEN2SCxNQUFBLENBQUFzQixPQUFBLENBQUEwRixhQUFBLENBQUNqSCxpQkFBQSxDQUFBdUssZUFBZTtJQUFDQyxJQUFJLEVBQUVDO0VBQU8sQ0FBRSxDQUFDLEVBQ2hDcEMsaUJBQWlCLENBQUMsQ0FDaEIsQ0FDRixDQUNVLENBRVgsQ0FDSyxDQUNELENBQUM7QUFFckIsQ0FBQztBQUNEN0UsV0FBVyxDQUFDZCxZQUFZLEdBQUdBLFlBQVk7QUFBQyxJQUFBZ0ksUUFBQSxHQUV6QmxILFdBQVc7QUFBQW1ILE9BQUEsQ0FBQXBKLE9BQUEsR0FBQW1KLFFBQUEifQ==
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = void 0;
8
8
  var _KandoNavbar = _interopRequireDefault(require("./KandoNavbar"));
9
- var _default = exports.default = _KandoNavbar.default;
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfS2FuZG9OYXZiYXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiLCJLYW5kb05hdmJhciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9LYW5kb05hdmJhci9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgS2FuZG9OYXZiYXIgZnJvbSAnLi9LYW5kb05hdmJhcic7XG5cbmV4cG9ydCBkZWZhdWx0IEthbmRvTmF2YmFyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsWUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQXdDLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxDQUFBQyxPQUFBLEdBRXpCQyxvQkFBVyJ9
9
+ var _default = _KandoNavbar.default;
10
+ exports.default = _default;
11
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfS2FuZG9OYXZiYXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9kZWZhdWx0IiwiS2FuZG9OYXZiYXIiLCJleHBvcnRzIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0hlYWRlci9LYW5kb05hdmJhci9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgS2FuZG9OYXZiYXIgZnJvbSAnLi9LYW5kb05hdmJhcic7XG5cbmV4cG9ydCBkZWZhdWx0IEthbmRvTmF2YmFyO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsWUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQXdDLElBQUFDLFFBQUEsR0FFekJDLG9CQUFXO0FBQUFDLE9BQUEsQ0FBQUMsT0FBQSxHQUFBSCxRQUFBIn0=