@kando-env/kando-ui 1.2.75-alpha.78 → 1.2.75-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 (126) hide show
  1. package/lib/Router.js +6 -5
  2. package/lib/Widgets/EventsCarousel/EventsCarousel.js +9 -7
  3. package/lib/Widgets/EventsRow/EventsRow.js +9 -7
  4. package/lib/Widgets/Map/Map.js +148 -39
  5. package/lib/Widgets/Map/areas/AreaPolygons.js +6 -1
  6. package/lib/Widgets/Map/events/EventIndicator.js +46 -21
  7. package/lib/Widgets/Map/events/EventIndicatorHover.js +252 -0
  8. package/lib/Widgets/Map/events/EventPath.js +37 -16
  9. package/lib/Widgets/Map/events/EventPathHover.js +81 -0
  10. package/lib/Widgets/Map/events/NetworkForSpecificEvent.js +102 -10
  11. package/lib/Widgets/Map/points/PointMarker.js +460 -13
  12. package/lib/Widgets/Map/points/PointMarkers.js +12 -31
  13. package/lib/Widgets/MostPolluting/Areas/AreaBox/PieChart/PieChart.js +2 -2
  14. package/lib/Widgets/MostPolluting/Factories/FactoryBox/PieChart/PieChart.js +2 -2
  15. package/lib/Widgets/MostPolluting/components/ChangePercent.js +6 -24
  16. package/lib/Widgets/QualitySummary/PieChart/PieChart.js +4 -6
  17. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.js +3 -5
  18. package/lib/Widgets/QualitySummary/QualitySummary.js +5 -10
  19. package/lib/assets/icons/index.js +0 -8
  20. package/lib/components/CustomInputs/DoubleTabs/styles.js +2 -2
  21. package/lib/components/DischargeHeatmap/DischargeHeatmap.test.js +2 -2
  22. package/lib/components/Header/InfoBar/InfoBar.js +2 -6
  23. package/lib/components/Header/KandoNavbar/KandoNavbar.js +1 -3
  24. package/lib/components/Header/Toolbar/CustomerMenu/CustomerMenu.js +2 -4
  25. package/lib/components/Header/Toolbar/SearchDropdown/SearchDropdown.js +3 -2
  26. package/lib/components/Sector/Sector.test.js +11 -4
  27. package/lib/components/SevereEvent/SevereEvent.js +7 -5
  28. package/lib/components/TimeRangeSelector/constants.js +2 -2
  29. package/lib/hooks/useApiWithDashboardQuery.js +4 -2
  30. package/lib/hooks/useUserTimeZone.js +2 -2
  31. package/lib/i18n/en.json +29 -63
  32. package/lib/i18n/fr.json +424 -655
  33. package/lib/i18n/he.json +6 -40
  34. package/lib/i18n/it.json +190 -421
  35. package/lib/index.js +1 -8
  36. package/lib/macros/getVersion.js +2 -2
  37. package/lib/pages/AreaPage/AreaPage.js +2 -4
  38. package/lib/pages/AreaPage/Dashboard/Sites/Sites.js +3 -3
  39. package/lib/pages/AreaPage/Dashboard/Sites/styles.js +3 -3
  40. package/lib/pages/CovidPage/CovidPage.js +2 -7
  41. package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +5 -2
  42. package/lib/pages/EventsPage/EventsPage.js +2 -7
  43. package/lib/pages/EventsPage/events/EventsStyle.scss +0 -5
  44. package/lib/pages/EventsPage/events/event_info/EventDetails.js +18 -74
  45. package/lib/pages/EventsPage/events/event_info/EventInfoStyle.scss +0 -16
  46. package/lib/pages/EventsPage/events/event_info/sources/Source.js +2 -2
  47. package/lib/pages/EventsPage/events/events_list/EventItem.js +19 -9
  48. package/lib/pages/EventsPage/events/events_list/EventsList.js +14 -28
  49. package/lib/pages/EventsPage/events/events_list/Filter/FilterContainer.js +2 -2
  50. package/lib/pages/EventsPage/events/events_list/Filter/FilterItem.js +1 -4
  51. package/lib/pages/EventsPage/events/events_list/Filter/FilterStyle.scss +1 -1
  52. package/lib/pages/ImportFileWizard/ValidationForm.js +12 -7
  53. package/lib/pages/NotificationsPage/NotificationsPage.js +2 -9
  54. package/lib/pages/NotificationsPageV2/components/NotificationsUtils.js +1 -5
  55. package/lib/pages/OldSitePage/OldSitePage.js +2 -4
  56. package/lib/pages/ProfilePage/PasswordModal/PasswordModal.js +8 -51
  57. package/lib/pages/ProfilePage/ProfilePage.js +2 -10
  58. package/lib/pages/SamplingsPage/DesktopActions/DownloadCSV.js +2 -3
  59. package/lib/pages/SamplingsPage/DesktopActions/UploadLabResult.js +2 -6
  60. package/lib/pages/SamplingsPage/NavigationDropdown.js +2 -9
  61. package/lib/pages/SamplingsPage/NewSamplingAction.js +4 -10
  62. package/lib/pages/SamplingsPage/SamplingActionDropdown.js +189 -0
  63. package/lib/pages/SamplingsPage/SamplingMobileModal.js +17 -1
  64. package/lib/pages/SamplingsPage/SamplingProperties/ImagePreviewModal.js +19 -41
  65. package/lib/pages/SamplingsPage/SamplingProperties/ImageUpload.js +2 -2
  66. package/lib/pages/SamplingsPage/SamplingProperties/SamplingProperties.js +12 -33
  67. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesForm.js +19 -14
  68. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHead.js +19 -26
  69. package/lib/pages/SamplingsPage/SamplingProperties/SamplingPropertiesHeadMobile.js +11 -21
  70. package/lib/pages/SamplingsPage/SamplingProperties/samplingPropertiesUtils.js +4 -14
  71. package/lib/pages/SamplingsPage/SamplingProperties/style.module.scss +1 -5
  72. package/lib/pages/SamplingsPage/SamplingsMobileItem.js +3 -12
  73. package/lib/pages/SamplingsPage/SamplingsPage.js +3 -9
  74. package/lib/pages/SamplingsPage/SamplingsPageContainer.js +6 -9
  75. package/lib/pages/SamplingsPage/samplingsPageUtils.js +34 -77
  76. package/lib/pages/SamplingsPage/style.module.scss +1 -1
  77. package/lib/pages/SamplingsPage/table.styles.scss +6 -8
  78. package/lib/pages/SitePage/SamplingParameters/ParametersContainer/ParametersContainer.js +4 -5
  79. package/lib/pages/SitePage/SamplingParameters/charts/ParametersChart.js +3 -5
  80. package/lib/pages/SitePage/SamplingParameters/charts/options/options.js +23 -90
  81. package/lib/pages/SitePage/SamplingParameters/dataParser.js +6 -18
  82. package/lib/pages/SitePage/SitePage.js +2 -4
  83. package/lib/pages/UtilityDashboardPage/MostSevereEvents/MostSevereEvents.js +9 -7
  84. package/lib/pages/UtilityDashboardPage/UtilityDashboard.js +1 -6
  85. package/lib/pages/UtilityDashboardPage/UtilityDashboardPage.js +2 -4
  86. package/lib/pages/WbeDashboard/SummaryGraph.js +6 -15
  87. package/lib/pages/WbeDashboard/WbeDashboardPage.js +3 -10
  88. package/lib/store/areas/actions.js +2 -19
  89. package/lib/store/events/reducer.js +2 -4
  90. package/lib/store/permissions/permissionsSlice.js +1 -5
  91. package/lib/styles.scss +4 -5
  92. package/lib/ui-kit/Button/Button.test.js +11 -26
  93. package/lib/ui-kit/DropDown/DropDown.js +6 -12
  94. package/lib/ui-kit/DropDown/DropDown.test.js +41 -50
  95. package/lib/ui-kit/ImageUploadButton/ImageUploadButton.js +2 -9
  96. package/lib/ui-kit/InfoTooltip/InfoTooltip.js +3 -4
  97. package/lib/ui-kit/KandoTable/KandoTable.test.js +43 -46
  98. package/lib/utilities/i18n.js +1 -6
  99. package/lib/utilities/urls.js +5 -8
  100. package/package.json +2 -6
  101. package/lib/Widgets/Map/MapUtils.js +0 -103
  102. package/lib/Widgets/Map/events/Event.js +0 -69
  103. package/lib/Widgets/Map/events/EventUtils.js +0 -211
  104. package/lib/Widgets/Map/events/PointOfEvent.js +0 -135
  105. package/lib/Widgets/Map/events/PointsForSpecificEvent.js +0 -55
  106. package/lib/Widgets/Map/events/Snail.js +0 -60
  107. package/lib/Widgets/Map/points/PointUtils.js +0 -368
  108. package/lib/Widgets/MostPolluting/components/ChangePercent.test.js +0 -62
  109. package/lib/Widgets/QualitySummary/PieChart/PieChart.test.js +0 -75
  110. package/lib/Widgets/QualitySummary/PollutedLine/PollutedLine.test.js +0 -52
  111. package/lib/assets/icons/close-modal.svg +0 -8
  112. package/lib/components/DischargeHeatmap/mocks/handlers.js +0 -19
  113. package/lib/hooks/useUserTimeZone.test.js +0 -45
  114. package/lib/i18n/en_uk.json +0 -3759
  115. package/lib/pages/EventsPage/events/events_list/EventUtils.js +0 -19
  116. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.js +0 -43
  117. package/lib/pages/SamplingsPage/ActionsDropDown/LabResultValue.test.js +0 -39
  118. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionContainer.js +0 -182
  119. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActionDropdown.js +0 -74
  120. package/lib/pages/SamplingsPage/ActionsDropDown/SamplingActions.js +0 -48
  121. package/lib/pages/SamplingsPage/ActionsDropDown/ViewLabResult.js +0 -119
  122. package/lib/pages/SamplingsPage/SamplingProperties/ManholeImageMobile.js +0 -63
  123. package/lib/pages/SamplingsPage/SamplingProperties/SamplerInProcess.js +0 -57
  124. package/lib/pages/SamplingsPage/SamplingProperties/styles.js +0 -27
  125. package/lib/test/mocks/browser.js +0 -23
  126. package/lib/test/test-utils.js +0 -61
@@ -194,9 +194,7 @@ var OldSitePage = function OldSitePage() {
194
194
  });
195
195
  }, []);
196
196
  (0, _react.useEffect)(function () {
197
- (0, _Analytics.analyticsTrack)('Viewed Old Site Page', {
198
- utility_name: waterAuthorityName
199
- });
197
+ (0, _Analytics.analyticsTrack)('Viewed Old Site Page');
200
198
  dispatch((0, _actions2.fetchEvents)(waterAuthorityId, ''));
201
199
  setSiteData(null);
202
200
  fetchSiteData("/data/point/".concat(parsedPointID), setSiteData).catch(function (e) {
@@ -361,4 +359,4 @@ var OldSitePage = function OldSitePage() {
361
359
  };
362
360
 
363
361
  exports.OldSitePage = OldSitePage;
364
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9PbGRTaXRlUGFnZS9PbGRTaXRlUGFnZS50c3giXSwibmFtZXMiOlsiZmV0Y2hTaXRlRGF0YSIsInVybCIsInNldERhdGEiLCJmZXRjaCIsInJlc3BvbnNlIiwib2siLCJqc29uIiwiZGF0YSIsIkVycm9yIiwic3RhdHVzIiwiZmV0Y2hFdmVudHNEYXRhIiwiT2xkU2l0ZVBhZ2UiLCJwb2ludElEIiwicGFyc2VkUG9pbnRJRCIsInBhcnNlSW50IiwiaGlzdG9yeSIsInNpdGVEYXRhIiwic2V0U2l0ZURhdGEiLCJldmVudHNEYXRhIiwic2V0RXZlbnRzRGF0YSIsInBlcmlvZFJhbmdlIiwic2V0UGVyaW9kUmFuZ2UiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwid2F0ZXJBdXRob3JpdHlJZCIsImV2ZW50c19kYXRhIiwibmF2Q29udGV4dCIsIm5hdl9jb250ZXh0X2RhdGEiLCJIaWdoY2hhcnRzIiwic2V0T3B0aW9ucyIsImxhbmciLCJzaG9ydE1vbnRocyIsImkxOG4iLCJ0Iiwic2xpY2UiLCJ1dGlsaXR5X25hbWUiLCJkaXNwYXRjaCIsImNhdGNoIiwiZSIsImNvbnNvbGUiLCJlcnJvciIsIm1lc3NhZ2UiLCJpc0ZldGNoaW5nIiwibmFtZSIsIml0ZW1Db250YWluZXIiLCJncm91cE5hbWUiLCJncm91cCIsImFyZWFOYW1lIiwiYXJlYSIsInBvaW50QWRkcmVzcyIsImFkZHJlc3MiLCJwb2ludE5hbWUiLCJ3d3RwX25hbWUiLCJzZWN0b3JJY29uTmFtZSIsImdlbyIsImRpc2NoYXJnaW5nIiwic2VjdG9yTmFtZSIsInNlY3Rvcl9uYW1lIiwibmF2aWdhdGVUb0V2ZW50Iiwic2V2ZXJpdHkiLCJldmVudCIsImZpbHRlciIsImZpbHRlcl9pdGVtcyIsInR5cGUiLCJzZWxlY3RlZF9vcHRpb25zIiwia3FsIiwicHVzaCIsImxvY2FsZSIsImlkIiwiaGFuZGxlRXZlbnRJdGVtQ2xpY2siLCJyZWYiLCJoYW5kbGVFdmVudEl0ZW1Ib3ZlciIsImRheXMiLCJsYWJlbCIsInZhbHVlIiwiYWxlcnQiLCJ1bmRlZmluZWQiLCJsZW5ndGgiLCJtYXAiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0E7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLGFBQWE7QUFBQSxxRkFBRyxpQkFBT0MsR0FBUCxFQUFvQkMsT0FBcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFDR0MsS0FBSyxDQUFDRixHQUFELENBRFI7O0FBQUE7QUFDZEcsWUFBQUEsUUFEYzs7QUFBQSxpQkFFaEJBLFFBQVEsQ0FBQ0MsRUFGTztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBLG1CQUdDRCxRQUFRLENBQUNFLElBQVQsRUFIRDs7QUFBQTtBQUdaQyxZQUFBQSxJQUhZO0FBSWxCTCxZQUFBQSxPQUFPLENBQUNLLElBQUksQ0FBQ0EsSUFBTixDQUFQO0FBSmtCO0FBQUE7O0FBQUE7QUFBQSxrQkFNWixJQUFJQyxLQUFKLCtCQUFpQ0osUUFBUSxDQUFDSyxNQUExQyxFQU5ZOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEdBQUg7O0FBQUEsa0JBQWJULGFBQWE7QUFBQTtBQUFBO0FBQUEsR0FBbkI7O0FBU0EsSUFBTVUsZUFBZTtBQUFBLHNGQUFHLGtCQUFPVCxHQUFQLEVBQW9CQyxPQUFwQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQUNDQyxLQUFLLENBQUNGLEdBQUQsQ0FETjs7QUFBQTtBQUNoQkcsWUFBQUEsUUFEZ0I7O0FBQUEsaUJBRWxCQSxRQUFRLENBQUNDLEVBRlM7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQSxt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QUFmLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0UsNkJBQUMsZUFBRDtBQUFRLElBQUEsT0FBTyxFQUFFM0QsYUFBakI7QUFBZ0MsSUFBQSxNQUFNLEVBQUVPO0FBQXhDLElBREYsQ0FERixlQUlFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRSw2QkFBQyxtQkFBRDtBQUNFLElBQUEsT0FBTyxFQUFFUCxhQURYO0FBRUUsSUFBQSxVQUFVLEVBQUUsdUJBQVlPLFdBQVo7QUFGZCxJQURGLENBSkYsQ0FERixlQVlFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQ0dhLGNBQUtDLENBQUwsQ0FBTyxvQkFBUCxDQURILENBREYsZUFJRSw2QkFBQyxtQkFBRDtBQUFZLElBQUEsT0FBTyxFQUFFckIsYUFBckI7QUFBb0MsSUFBQSxNQUFNLEVBQUVPO0FBQTVDLElBSkYsQ0FERixlQU9FO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRSw2QkFBQyx5QkFBRDtBQUFrQixJQUFBLE9BQU8sRUFBRVA7QUFBM0IsSUFERixDQVBGLENBWkYsQ0FuREYsQ0F2Q0YsQ0FERjtBQXVIRCxDQXBOTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBIaWdoY2hhcnRzIGZyb20gJ2hpZ2hjaGFydHMvaGlnaHN0b2NrJztcbmltcG9ydCB7IGlzRW1wdHkgfSBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IFJlYWN0LCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IENhcm91c2VsIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9DYXJvdXNlbCc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCwgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5LCB1c2VQYXJhbXMgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCAnLi4vRXZlbnRzUGFnZS9jb21wb25lbnRzL2V2ZW50cy9FdmVudHNTdHlsZS5zY3NzJztcbmltcG9ydCBCcmVhZGNydW1icyBmcm9tICdzcmMvY29tcG9uZW50cy9IZWFkZXIvQnJlYWRjcnVtYnMnO1xuaW1wb3J0IHsgUm93TG9hZGVyIH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvQ29udGVudExvYWRlcic7XG5pbXBvcnQgRGFtYWdlVHlwZSBmcm9tICdzcmMvY29tcG9uZW50cy9EYW1hZ2VUeXBlJztcbmltcG9ydCBEaXNjaGFyZ2VIZWF0bWFwIGZyb20gJ3NyYy9jb21wb25lbnRzL0Rpc2NoYXJnZUhlYXRtYXAnO1xuaW1wb3J0IEV2ZW50cyBmcm9tICdzcmMvY29tcG9uZW50cy9FdmVudHMnO1xuaW1wb3J0IEthbmRvTmF2YmFyIGZyb20gJ3NyYy9jb21wb25lbnRzL0hlYWRlci9LYW5kb05hdmJhcic7XG5pbXBvcnQgUG9pbnRJbmZvIGZyb20gJ3NyYy9jb21wb25lbnRzL1BvaW50SW5mby9Qb2ludEluZm8nO1xuaW1wb3J0IFRvZ2dsZSBmcm9tICdzcmMvY29tcG9uZW50cy9Ub2dnbGUnO1xuaW1wb3J0IFRyZW5kR3JhcGggZnJvbSAnc3JjL2NvbXBvbmVudHMvVHJlbmRHcmFwaCc7XG5pbXBvcnQgeyBidWlsZEtRTFF1ZXJ5IH0gZnJvbSAnc3JjL3V0aWxpdGllcy9rcWwnO1xuaW1wb3J0IHsgcmFuZ2VUb0RheXMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3RpbWUnO1xuaW1wb3J0IHsgdXBkYXRlTmF2Q29udGV4dCB9IGZyb20gJ3NyYy9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hFdmVudHMgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnc3JjL3N0b3JlL2V2ZW50cy9tb2RlbHMvSUV2ZW50JztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IFRpbWVSYW5nZVNlbGVjdG9yIGZyb20gJ3NyYy9jb21wb25lbnRzL1RpbWVSYW5nZVNlbGVjdG9yJztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBJU2l0ZURhdGEgfSBmcm9tICcuL0lEYXNoYm9hcmREYXRhJztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnLi4vLi4vdXRpbGl0aWVzL0FuYWx5dGljcyc7XG5pbXBvcnQgRXZlbnRJdGVtIGZyb20gJy4uL0V2ZW50c1BhZ2UvZXZlbnRzL2V2ZW50c19saXN0L0V2ZW50SXRlbSc7XG5cbmNvbnN0IGZldGNoU2l0ZURhdGEgPSBhc3luYyAodXJsOiBzdHJpbmcsIHNldERhdGE6IEZ1bmN0aW9uKSA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKTtcbiAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICBzZXREYXRhKGRhdGEuZGF0YSk7XG4gIH0gZWxzZSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBIVFRQIGVycm9yISBzdGF0dXM6ICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICB9XG59O1xuY29uc3QgZmV0Y2hFdmVudHNEYXRhID0gYXN5bmMgKHVybDogc3RyaW5nLCBzZXREYXRhOiBGdW5jdGlvbikgPT4ge1xuICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHVybCk7XG4gIGlmIChyZXNwb25zZS5vaykge1xuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByZXNwb25zZS5qc29uKCk7XG4gICAgc2V0RGF0YShkYXRhKTtcbiAgfSBlbHNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEhUVFAgZXJyb3IhIHN0YXR1czogJHtyZXNwb25zZS5zdGF0dXN9YCk7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBPbGRTaXRlUGFnZSA9ICgpID0+IHtcbiAgY29uc3QgeyBwb2ludElEIH0gPSB1c2VQYXJhbXM8eyBwb2ludElEOiBzdHJpbmcgfT4oKTtcbiAgY29uc3QgcGFyc2VkUG9pbnRJRCA9IHBhcnNlSW50KHBvaW50SUQpO1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCBbc2l0ZURhdGEsIHNldFNpdGVEYXRhXSA9IHVzZVN0YXRlPElTaXRlRGF0YSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbZXZlbnRzRGF0YSwgc2V0RXZlbnRzRGF0YV0gPSB1c2VTdGF0ZTxJRXZlbnRbXSB8IG51bGw+KG51bGwpO1xuICBjb25zdCBbcGVyaW9kUmFuZ2UsIHNldFBlcmlvZFJhbmdlXSA9IHVzZVN0YXRlPHN0cmluZz4oJzMwZCcpO1xuXG4gIGNvbnN0IFt3YXRlckF1dGhvcml0eU5hbWUsIHdhdGVyQXV0aG9yaXR5SWRdID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gW1xuICAgICAgc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgICAgc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgIHN0YXRlLmV2ZW50c19kYXRhLFxuICAgIF0sXG4gICk7XG5cbiAgY29uc3QgbmF2Q29udGV4dCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZTogUmV0dXJuVHlwZTx0eXBlb2YgYXBwUmVkdWNlcj4pID0+IHN0YXRlLm5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dCxcbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIEhpZ2hjaGFydHMuc2V0T3B0aW9ucyh7XG4gICAgICAvLyBUcmFuc2xhdGlvbnMgbXVzdCBiZSBzZXQgZ2xvYmFsbHlcbiAgICAgIGxhbmc6IHtcbiAgICAgICAgc2hvcnRNb250aHM6IGkxOG4udCgnZGF0ZS5hYmJyX21vbnRoX25hbWVzJykuc2xpY2UoLTEyKSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH0sIFtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGFuYWx5dGljc1RyYWNrKCdWaWV3ZWQgT2xkIFNpdGUgUGFnZScsIHtcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIGRpc3BhdGNoKGZldGNoRXZlbnRzKHdhdGVyQXV0aG9yaXR5SWQsICcnKSk7XG4gICAgc2V0U2l0ZURhdGEobnVsbCk7XG4gICAgZmV0Y2hTaXRlRGF0YShgL2RhdGEvcG9pbnQvJHtwYXJzZWRQb2ludElEfWAsIHNldFNpdGVEYXRhKS5jYXRjaCgoZSkgPT4ge1xuICAgICAgY29uc29sZS5lcnJvcignUmVxdWVzdCBlcnJvcjogJyArIGUubWVzc2FnZSk7XG4gICAgfSk7XG5cbiAgICBmZXRjaEV2ZW50c0RhdGEoYC9kYXRhL2V2ZW50cy8ke3BhcnNlZFBvaW50SUR9YCwgc2V0RXZlbnRzRGF0YSkuY2F0Y2goXG4gICAgICAoZSkgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdSZXF1ZXN0IGVycm9yOiAnICsgZS5tZXNzYWdlKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgfSwgW3BhcnNlZFBvaW50SURdKTtcblxuICBjb25zdCBpc0ZldGNoaW5nID0gKCkgPT4ge1xuICAgIHJldHVybiBpc0VtcHR5KHNpdGVEYXRhKTtcbiAgfTtcblxuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZGlzcGF0Y2godXBkYXRlTmF2Q29udGV4dCh7IG5hbWU6ICdkYXNoYm9hcmRfdjInIH0pKTtcbiAgfSwgW10pO1xuXG4gIGNvbnN0IGl0ZW1Db250YWluZXIgPSB1c2VSZWY8YW55PihudWxsKTtcbiAgY29uc3QgZ3JvdXBOYW1lID0gc2l0ZURhdGE/Lmdyb3VwLm5hbWUgfHwgJyc7XG4gIGNvbnN0IGFyZWFOYW1lID0gc2l0ZURhdGE/LmFyZWEubmFtZSB8fCAnJztcbiAgY29uc3QgcG9pbnRBZGRyZXNzID0gYCR7c2l0ZURhdGE/LmFkZHJlc3N9YDtcbiAgY29uc3QgcG9pbnROYW1lID0gc2l0ZURhdGE/Lnd3dHBfbmFtZSB8fCAnJztcbiAgY29uc3Qgc2VjdG9ySWNvbk5hbWUgPSBzaXRlRGF0YT8uc2VjdG9ySWNvbk5hbWUgfHwgJyc7XG4gIGNvbnN0IGdlbyA9IHNpdGVEYXRhPy5nZW8gfHwgbnVsbDtcbiAgY29uc3QgZGlzY2hhcmdpbmcgPSBzaXRlRGF0YT8uZGlzY2hhcmdpbmcgfHwgbnVsbDtcbiAgY29uc3Qgc2VjdG9yTmFtZSA9IHNpdGVEYXRhPy5zZWN0b3JfbmFtZSB8fCAnJztcblxuICBjb25zdCBuYXZpZ2F0ZVRvRXZlbnQgPSAoc2V2ZXJpdHk6IG51bWJlciB8IG51bWJlciwgZXZlbnQ6IElFdmVudCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlciA9IHtcbiAgICAgIGZpbHRlcl9pdGVtczogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ1NldmVyaXR5RmlsdGVySXRlbScsXG4gICAgICAgICAgc2VsZWN0ZWRfb3B0aW9uczogW3NldmVyaXR5XSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdJbnRlcmVzdFBvaW50RmlsdGVySXRlbScsXG4gICAgICAgICAgc2VsZWN0ZWRfb3B0aW9uczogW3BhcnNlZFBvaW50SURdLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICAgIGNvbnN0IGtxbCA9IGJ1aWxkS1FMUXVlcnkoZmlsdGVyKTtcbiAgICBoaXN0b3J5LnB1c2goXG4gICAgICBgL2V2ZW50c192aWV3L2luZGV4P3dhdGVyX2F1dGhvcml0eV9pZD0ke3dhdGVyQXV0aG9yaXR5SWR9JmxvY2FsZT0ke25hdkNvbnRleHQubG9jYWxlfSZ2YWx1ZXNGcm9tS1FMPSR7a3FsfSZldmVudElkPSR7ZXZlbnQuaWR9YCxcbiAgICApO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV2ZW50SXRlbUNsaWNrOiBGdW5jdGlvbiA9IChcbiAgICBldmVudDogSUV2ZW50LFxuICAgIHJlZjogUmVmT2JqZWN0PEhUTUxFbGVtZW50PixcbiAgKSA9PiB7XG4gICAgbmF2aWdhdGVUb0V2ZW50KHBhcnNlSW50KGV2ZW50LnNldmVyaXR5KSwgZXZlbnQpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUV2ZW50SXRlbUhvdmVyOiBGdW5jdGlvbiA9IChldmVudDogSUV2ZW50KSA9PiB7fTtcblxuICByZXR1cm4gKFxuICAgIDxkaXYgY2xhc3NOYW1lPVwibDJcIj5cbiAgICAgIDxLYW5kb05hdmJhclxuICAgICAgICB3YXRlckF1dGhvcml0eUlkPXt3YXRlckF1dGhvcml0eUlkfVxuICAgICAgICBoYXNTZWFyY2g9e3RydWV9XG4gICAgICAgIHNlbGVjdGVkTGFiZWw9e2dyb3VwTmFtZX1cbiAgICAgIC8+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19jb250cm9sc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19icmVhZGNydW1ic1wiPlxuICAgICAgICAgIDxCcmVhZGNydW1icyBwYXJ0cz17W3dhdGVyQXV0aG9yaXR5TmFtZSwgYXJlYU5hbWUsIGdyb3VwTmFtZV19IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19idXR0b25zXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0LXJhbmdlLWN0cmxcIj5cbiAgICAgICAgICAgIDxUaW1lUmFuZ2VTZWxlY3RvclxuICAgICAgICAgICAgICBzZWxlY3RlZFZhbHVlPXtwZXJpb2RSYW5nZX1cbiAgICAgICAgICAgICAgb25QZXJpb2RTZWxlY3RlZD17KGRheXM6IHN0cmluZykgPT4gc2V0UGVyaW9kUmFuZ2UoZGF5cyl9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPFRvZ2dsZVxuICAgICAgICAgICAgICBvcHRpb25zPXtbXG4gICAgICAgICAgICAgICAgeyBsYWJlbDogJ0NvbmNlbnRyYXRpb24nLCB2YWx1ZTogdHJ1ZSB9LFxuICAgICAgICAgICAgICAgIHsgbGFiZWw6ICdMb2FkJywgdmFsdWU6IGZhbHNlIH0sXG4gICAgICAgICAgICAgIF19XG4gICAgICAgICAgICAgIGhhbmRsZUJ1dHRvbnNDaGFuZ2U9eygpID0+IGFsZXJ0KCdjaGFuZ2UnKX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19yb3ctdGl0bGVcIj5cbiAgICAgICAge2lzRmV0Y2hpbmcoKSA/IChcbiAgICAgICAgICA8Um93TG9hZGVyXG4gICAgICAgICAgICB3aWR0aD1cIjMwMHB4XCJcbiAgICAgICAgICAgIGhlaWdodD1cIjYwcHhcIlxuICAgICAgICAgICAgbWFyZ2luPVwiMjBweCAwXCJcbiAgICAgICAgICAgIGJnQ29sb3I9XCIjZjJmMmYyXCJcbiAgICAgICAgICAgIGZnQ29sb3I9XCIjZmZmXCJcbiAgICAgICAgICAvPlxuICAgICAgICApIDogKFxuICAgICAgICAgIDxoMSBjbGFzc05hbWU9XCJsMl9fZ3JvdXAtbmFtZVwiPntncm91cE5hbWV9PC9oMT5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fY29udGVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19jb2wtMVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2ZhY3RvcnktaW5mb1wiPlxuICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLmluZm9ybWF0aW9uJyl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAge2lzRmV0Y2hpbmcoKSA/IChcbiAgICAgICAgICAgIDxSb3dMb2FkZXJcbiAgICAgICAgICAgICAgbWFyZ2luPVwiMjZweCAwIDBcIlxuICAgICAgICAgICAgICBoZWlnaHQ9XCIzNzBweFwiXG4gICAgICAgICAgICAgIGJnQ29sb3I9XCIjZjJmMmYyXCJcbiAgICAgICAgICAgICAgZmdDb2xvcj1cIiNmZmZcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApIDogKFxuICAgICAgICAgICAgPFBvaW50SW5mb1xuICAgICAgICAgICAgICBuYW1lPXtwb2ludE5hbWV9XG4gICAgICAgICAgICAgIGFkZHJlc3M9e3BvaW50QWRkcmVzc31cbiAgICAgICAgICAgICAgYXJlYT17YXJlYU5hbWV9XG4gICAgICAgICAgICAgIHNlY3Rvckljb25OYW1lPXtzZWN0b3JJY29uTmFtZX1cbiAgICAgICAgICAgICAgc2VjdG9yPXtzZWN0b3JOYW1lfVxuICAgICAgICAgICAgICBnZW89e2dlb31cbiAgICAgICAgICAgICAgZGlzY2hhcmdpbmc9e2Rpc2NoYXJnaW5nfVxuICAgICAgICAgICAgICB3YXRlckF1dGhvcml0eUlkPXt3YXRlckF1dGhvcml0eUlkfVxuICAgICAgICAgICAgICBwb2ludElkPXtwYXJzZWRQb2ludElEfVxuICAgICAgICAgICAgICBsb2NhbGU9e25hdkNvbnRleHQubG9jYWxlfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2xpdmUtZXZlbnRzIGV2ZW50cy1jb250YWluZXJcIiByZWY9e2l0ZW1Db250YWluZXJ9PlxuICAgICAgICAgICAge31cblxuICAgICAgICAgICAgPHVsIGNsYXNzTmFtZT17J2V2ZW50cyd9PlxuICAgICAgICAgICAgICA8Q2Fyb3VzZWwgaW5kaWNhdG9ycz17dHJ1ZX0gaW50ZXJ2YWw9e251bGx9PlxuICAgICAgICAgICAgICAgIHtldmVudHNEYXRhICE9PSBudWxsICYmXG4gICAgICAgICAgICAgICAgICBldmVudHNEYXRhICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgICAgICAgIGV2ZW50c0RhdGEubGVuZ3RoICE9PSAwICYmXG4gICAgICAgICAgICAgICAgICBldmVudHNEYXRhLm1hcCgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICA8Q2Fyb3VzZWwuSXRlbSBrZXk9e2V2ZW50LmlkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzc05hbWU9eydldmVudCd9IGtleT17ZXZlbnQuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8RXZlbnRJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQ9e2V2ZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUV2ZW50SXRlbUNsaWNrPXtoYW5kbGVFdmVudEl0ZW1DbGlja31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVFdmVudEl0ZW1Ib3Zlcj17aGFuZGxlRXZlbnRJdGVtSG92ZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgIDwvQ2Fyb3VzZWwuSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICA8L0Nhcm91c2VsPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2NvbC0yXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fcm93LTFcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2V2ZW50c1wiPlxuICAgICAgICAgICAgICA8RXZlbnRzIHBvaW50SWQ9e3BhcnNlZFBvaW50SUR9IHBlcmlvZD17cGVyaW9kUmFuZ2V9IC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2RhbWFnZVwiPlxuICAgICAgICAgICAgICA8RGFtYWdlVHlwZVxuICAgICAgICAgICAgICAgIHBvaW50SWQ9e3BhcnNlZFBvaW50SUR9XG4gICAgICAgICAgICAgICAgcGVyaW9kRGF5cz17cmFuZ2VUb0RheXMocGVyaW9kUmFuZ2UpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fcm93LTJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX3RyZW5kXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX3RyZW5kLXRpdGxlXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnRyZW5kJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8VHJlbmRHcmFwaCBwb2ludElkPXtwYXJzZWRQb2ludElEfSBwZXJpb2Q9e3BlcmlvZFJhbmdlfSAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19kaXNjaGFyZ2VcIj5cbiAgICAgICAgICAgICAgPERpc2NoYXJnZUhlYXRtYXAgcG9pbnRJZD17cGFyc2VkUG9pbnRJRH0gLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIHt9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl19
362
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9PbGRTaXRlUGFnZS9PbGRTaXRlUGFnZS50c3giXSwibmFtZXMiOlsiZmV0Y2hTaXRlRGF0YSIsInVybCIsInNldERhdGEiLCJmZXRjaCIsInJlc3BvbnNlIiwib2siLCJqc29uIiwiZGF0YSIsIkVycm9yIiwic3RhdHVzIiwiZmV0Y2hFdmVudHNEYXRhIiwiT2xkU2l0ZVBhZ2UiLCJwb2ludElEIiwicGFyc2VkUG9pbnRJRCIsInBhcnNlSW50IiwiaGlzdG9yeSIsInNpdGVEYXRhIiwic2V0U2l0ZURhdGEiLCJldmVudHNEYXRhIiwic2V0RXZlbnRzRGF0YSIsInBlcmlvZFJhbmdlIiwic2V0UGVyaW9kUmFuZ2UiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwid2F0ZXJBdXRob3JpdHlJZCIsImV2ZW50c19kYXRhIiwibmF2Q29udGV4dCIsIm5hdl9jb250ZXh0X2RhdGEiLCJIaWdoY2hhcnRzIiwic2V0T3B0aW9ucyIsImxhbmciLCJzaG9ydE1vbnRocyIsImkxOG4iLCJ0Iiwic2xpY2UiLCJkaXNwYXRjaCIsImNhdGNoIiwiZSIsImNvbnNvbGUiLCJlcnJvciIsIm1lc3NhZ2UiLCJpc0ZldGNoaW5nIiwibmFtZSIsIml0ZW1Db250YWluZXIiLCJncm91cE5hbWUiLCJncm91cCIsImFyZWFOYW1lIiwiYXJlYSIsInBvaW50QWRkcmVzcyIsImFkZHJlc3MiLCJwb2ludE5hbWUiLCJ3d3RwX25hbWUiLCJzZWN0b3JJY29uTmFtZSIsImdlbyIsImRpc2NoYXJnaW5nIiwic2VjdG9yTmFtZSIsInNlY3Rvcl9uYW1lIiwibmF2aWdhdGVUb0V2ZW50Iiwic2V2ZXJpdHkiLCJldmVudCIsImZpbHRlciIsImZpbHRlcl9pdGVtcyIsInR5cGUiLCJzZWxlY3RlZF9vcHRpb25zIiwia3FsIiwicHVzaCIsImxvY2FsZSIsImlkIiwiaGFuZGxlRXZlbnRJdGVtQ2xpY2siLCJyZWYiLCJoYW5kbGVFdmVudEl0ZW1Ib3ZlciIsImRheXMiLCJsYWJlbCIsInZhbHVlIiwiYWxlcnQiLCJ1bmRlZmluZWQiLCJsZW5ndGgiLCJtYXAiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBR0E7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLGFBQWE7QUFBQSxxRkFBRyxpQkFBT0MsR0FBUCxFQUFvQkMsT0FBcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFDR0MsS0FBSyxDQUFDRixHQUFELENBRFI7O0FBQUE7QUFDZEcsWUFBQUEsUUFEYzs7QUFBQSxpQkFFaEJBLFFBQVEsQ0FBQ0MsRUFGTztBQUFBO0FBQUE7QUFBQTs7QUFBQTtBQUFBLG1CQUdDRCxRQUFRLENBQUNFLElBQVQsRUFIRDs7QUFBQTtBQUdaQyxZQUFBQSxJQUhZO0FBSWxCTCxZQUFBQSxPQUFPLENBQUNLLElBQUksQ0FBQ0EsSUFBTixDQUFQO0FBSmtCO0FBQUE7O0FBQUE7QUFBQSxrQkFNWixJQUFJQyxLQUFKLCtCQUFpQ0osUUFBUSxDQUFDSyxNQUExQyxFQU5ZOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEdBQUg7O0FBQUEsa0JBQWJULGFBQWE7QUFBQTtBQUFBO0FBQUEsR0FBbkI7O0FBU0EsSUFBTVUsZUFBZTtBQUFBLHNGQUFHLGtCQUFPVCxHQUFQLEVBQW9CQyxPQUFwQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLG1CQUNDQyxLQUFLLENBQUNGLEdBQUQsQ0FETjs7QUFBQTtBQUNoQkcsWUFBQUEsUUFEZ0I7O0FBQUEsaUJBRWxCQSxRQUFRLENBQUNDLEVBRlM7QUFBQTtBQUFBO0FBQUE7O0FBQUE7QUFBQSxtQkFHREQsUUFBUSxDQUFD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QUM7QUFBZixrQkFDRSw2QkFBQyxlQUFEO0FBQVEsSUFBQSxPQUFPLEVBQUUxRCxhQUFqQjtBQUFnQyxJQUFBLE1BQU0sRUFBRU87QUFBeEMsSUFERixDQURGLGVBSUU7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFLDZCQUFDLG1CQUFEO0FBQ0UsSUFBQSxPQUFPLEVBQUVQLGFBRFg7QUFFRSxJQUFBLFVBQVUsRUFBRSx1QkFBWU8sV0FBWjtBQUZkLElBREYsQ0FKRixDQURGLGVBWUU7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDR2EsY0FBS0MsQ0FBTCxDQUFPLG9CQUFQLENBREgsQ0FERixlQUlFLDZCQUFDLG1CQUFEO0FBQVksSUFBQSxPQUFPLEVBQUVyQixhQUFyQjtBQUFvQyxJQUFBLE1BQU0sRUFBRU87QUFBNUMsSUFKRixDQURGLGVBT0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFLDZCQUFDLHlCQUFEO0FBQWtCLElBQUEsT0FBTyxFQUFFUDtBQUEzQixJQURGLENBUEYsQ0FaRixDQW5ERixDQXZDRixDQURGO0FBdUhELENBbE5NIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEhpZ2hjaGFydHMgZnJvbSAnaGlnaGNoYXJ0cy9oaWdoc3RvY2snO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgUmVhY3QsIHsgUmVmT2JqZWN0LCB1c2VFZmZlY3QsIHVzZVJlZiwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgQ2Fyb3VzZWwgZnJvbSAncmVhY3QtYm9vdHN0cmFwL0Nhcm91c2VsJztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IHVzZUhpc3RvcnksIHVzZVBhcmFtcyB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0ICcuLi9FdmVudHNQYWdlL2NvbXBvbmVudHMvZXZlbnRzL0V2ZW50c1N0eWxlLnNjc3MnO1xuaW1wb3J0IEJyZWFkY3J1bWJzIGZyb20gJ3NyYy9jb21wb25lbnRzL0hlYWRlci9CcmVhZGNydW1icyc7XG5pbXBvcnQgeyBSb3dMb2FkZXIgfSBmcm9tICdzcmMvY29tcG9uZW50cy9Db250ZW50TG9hZGVyJztcbmltcG9ydCBEYW1hZ2VUeXBlIGZyb20gJ3NyYy9jb21wb25lbnRzL0RhbWFnZVR5cGUnO1xuaW1wb3J0IERpc2NoYXJnZUhlYXRtYXAgZnJvbSAnc3JjL2NvbXBvbmVudHMvRGlzY2hhcmdlSGVhdG1hcCc7XG5pbXBvcnQgRXZlbnRzIGZyb20gJ3NyYy9jb21wb25lbnRzL0V2ZW50cyc7XG5pbXBvcnQgS2FuZG9OYXZiYXIgZnJvbSAnc3JjL2NvbXBvbmVudHMvSGVhZGVyL0thbmRvTmF2YmFyJztcbmltcG9ydCBQb2ludEluZm8gZnJvbSAnc3JjL2NvbXBvbmVudHMvUG9pbnRJbmZvL1BvaW50SW5mbyc7XG5pbXBvcnQgVG9nZ2xlIGZyb20gJ3NyYy9jb21wb25lbnRzL1RvZ2dsZSc7XG5pbXBvcnQgVHJlbmRHcmFwaCBmcm9tICdzcmMvY29tcG9uZW50cy9UcmVuZEdyYXBoJztcbmltcG9ydCB7IGJ1aWxkS1FMUXVlcnkgfSBmcm9tICdzcmMvdXRpbGl0aWVzL2txbCc7XG5pbXBvcnQgeyByYW5nZVRvRGF5cyB9IGZyb20gJ3NyYy91dGlsaXRpZXMvdGltZSc7XG5pbXBvcnQgeyB1cGRhdGVOYXZDb250ZXh0IH0gZnJvbSAnc3JjL3N0b3JlL2NvbnRleHQvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEV2ZW50cyB9IGZyb20gJ3NyYy9zdG9yZS9ldmVudHMvYWN0aW9ucyc7XG5pbXBvcnQgeyBJRXZlbnQgfSBmcm9tICdzcmMvc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHsgYXBwUmVkdWNlciB9IGZyb20gJ3NyYy9zdG9yZS9yb290UmVkdWNlcic7XG5pbXBvcnQgVGltZVJhbmdlU2VsZWN0b3IgZnJvbSAnc3JjL2NvbXBvbmVudHMvVGltZVJhbmdlU2VsZWN0b3InO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IElTaXRlRGF0YSB9IGZyb20gJy4vSURhc2hib2FyZERhdGEnO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcbmltcG9ydCBFdmVudEl0ZW0gZnJvbSAnLi4vRXZlbnRzUGFnZS9ldmVudHMvZXZlbnRzX2xpc3QvRXZlbnRJdGVtJztcblxuY29uc3QgZmV0Y2hTaXRlRGF0YSA9IGFzeW5jICh1cmw6IHN0cmluZywgc2V0RGF0YTogRnVuY3Rpb24pID0+IHtcbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh1cmwpO1xuICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICBjb25zdCBkYXRhID0gYXdhaXQgcmVzcG9uc2UuanNvbigpO1xuICAgIHNldERhdGEoZGF0YS5kYXRhKTtcbiAgfSBlbHNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEhUVFAgZXJyb3IhIHN0YXR1czogJHtyZXNwb25zZS5zdGF0dXN9YCk7XG4gIH1cbn07XG5jb25zdCBmZXRjaEV2ZW50c0RhdGEgPSBhc3luYyAodXJsOiBzdHJpbmcsIHNldERhdGE6IEZ1bmN0aW9uKSA9PiB7XG4gIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godXJsKTtcbiAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTtcbiAgICBzZXREYXRhKGRhdGEpO1xuICB9IGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcihgSFRUUCBlcnJvciEgc3RhdHVzOiAke3Jlc3BvbnNlLnN0YXR1c31gKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IE9sZFNpdGVQYWdlID0gKCkgPT4ge1xuICBjb25zdCB7IHBvaW50SUQgfSA9IHVzZVBhcmFtczx7IHBvaW50SUQ6IHN0cmluZyB9PigpO1xuICBjb25zdCBwYXJzZWRQb2ludElEID0gcGFyc2VJbnQocG9pbnRJRCk7XG4gIGNvbnN0IGhpc3RvcnkgPSB1c2VIaXN0b3J5KCk7XG4gIGNvbnN0IFtzaXRlRGF0YSwgc2V0U2l0ZURhdGFdID0gdXNlU3RhdGU8SVNpdGVEYXRhIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtldmVudHNEYXRhLCBzZXRFdmVudHNEYXRhXSA9IHVzZVN0YXRlPElFdmVudFtdIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtwZXJpb2RSYW5nZSwgc2V0UGVyaW9kUmFuZ2VdID0gdXNlU3RhdGU8c3RyaW5nPignMzBkJyk7XG5cbiAgY29uc3QgW3dhdGVyQXV0aG9yaXR5TmFtZSwgd2F0ZXJBdXRob3JpdHlJZF0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBbXG4gICAgICBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICAgICBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLFxuICAgICAgc3RhdGUuZXZlbnRzX2RhdGEsXG4gICAgXSxcbiAgKTtcblxuICBjb25zdCBuYXZDb250ZXh0ID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlOiBSZXR1cm5UeXBlPHR5cGVvZiBhcHBSZWR1Y2VyPikgPT4gc3RhdGUubmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgSGlnaGNoYXJ0cy5zZXRPcHRpb25zKHtcbiAgICAgIC8vIFRyYW5zbGF0aW9ucyBtdXN0IGJlIHNldCBnbG9iYWxseVxuICAgICAgbGFuZzoge1xuICAgICAgICBzaG9ydE1vbnRoczogaTE4bi50KCdkYXRlLmFiYnJfbW9udGhfbmFtZXMnKS5zbGljZSgtMTIpLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfSwgW10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYW5hbHl0aWNzVHJhY2soJ1ZpZXdlZCBPbGQgU2l0ZSBQYWdlJyk7XG4gICAgZGlzcGF0Y2goZmV0Y2hFdmVudHMod2F0ZXJBdXRob3JpdHlJZCwgJycpKTtcbiAgICBzZXRTaXRlRGF0YShudWxsKTtcbiAgICBmZXRjaFNpdGVEYXRhKGAvZGF0YS9wb2ludC8ke3BhcnNlZFBvaW50SUR9YCwgc2V0U2l0ZURhdGEpLmNhdGNoKChlKSA9PiB7XG4gICAgICBjb25zb2xlLmVycm9yKCdSZXF1ZXN0IGVycm9yOiAnICsgZS5tZXNzYWdlKTtcbiAgICB9KTtcblxuICAgIGZldGNoRXZlbnRzRGF0YShgL2RhdGEvZXZlbnRzLyR7cGFyc2VkUG9pbnRJRH1gLCBzZXRFdmVudHNEYXRhKS5jYXRjaChcbiAgICAgIChlKSA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1JlcXVlc3QgZXJyb3I6ICcgKyBlLm1lc3NhZ2UpO1xuICAgICAgfSxcbiAgICApO1xuICB9LCBbcGFyc2VkUG9pbnRJRF0pO1xuXG4gIGNvbnN0IGlzRmV0Y2hpbmcgPSAoKSA9PiB7XG4gICAgcmV0dXJuIGlzRW1wdHkoc2l0ZURhdGEpO1xuICB9O1xuXG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaXNwYXRjaCh1cGRhdGVOYXZDb250ZXh0KHsgbmFtZTogJ2Rhc2hib2FyZF92MicgfSkpO1xuICB9LCBbXSk7XG5cbiAgY29uc3QgaXRlbUNvbnRhaW5lciA9IHVzZVJlZjxhbnk+KG51bGwpO1xuICBjb25zdCBncm91cE5hbWUgPSBzaXRlRGF0YT8uZ3JvdXAubmFtZSB8fCAnJztcbiAgY29uc3QgYXJlYU5hbWUgPSBzaXRlRGF0YT8uYXJlYS5uYW1lIHx8ICcnO1xuICBjb25zdCBwb2ludEFkZHJlc3MgPSBgJHtzaXRlRGF0YT8uYWRkcmVzc31gO1xuICBjb25zdCBwb2ludE5hbWUgPSBzaXRlRGF0YT8ud3d0cF9uYW1lIHx8ICcnO1xuICBjb25zdCBzZWN0b3JJY29uTmFtZSA9IHNpdGVEYXRhPy5zZWN0b3JJY29uTmFtZSB8fCAnJztcbiAgY29uc3QgZ2VvID0gc2l0ZURhdGE/LmdlbyB8fCBudWxsO1xuICBjb25zdCBkaXNjaGFyZ2luZyA9IHNpdGVEYXRhPy5kaXNjaGFyZ2luZyB8fCBudWxsO1xuICBjb25zdCBzZWN0b3JOYW1lID0gc2l0ZURhdGE/LnNlY3Rvcl9uYW1lIHx8ICcnO1xuXG4gIGNvbnN0IG5hdmlnYXRlVG9FdmVudCA9IChzZXZlcml0eTogbnVtYmVyIHwgbnVtYmVyLCBldmVudDogSUV2ZW50KSA9PiB7XG4gICAgY29uc3QgZmlsdGVyID0ge1xuICAgICAgZmlsdGVyX2l0ZW1zOiBbXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnU2V2ZXJpdHlGaWx0ZXJJdGVtJyxcbiAgICAgICAgICBzZWxlY3RlZF9vcHRpb25zOiBbc2V2ZXJpdHldLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ0ludGVyZXN0UG9pbnRGaWx0ZXJJdGVtJyxcbiAgICAgICAgICBzZWxlY3RlZF9vcHRpb25zOiBbcGFyc2VkUG9pbnRJRF0sXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gICAgY29uc3Qga3FsID0gYnVpbGRLUUxRdWVyeShmaWx0ZXIpO1xuICAgIGhpc3RvcnkucHVzaChcbiAgICAgIGAvZXZlbnRzX3ZpZXcvaW5kZXg/d2F0ZXJfYXV0aG9yaXR5X2lkPSR7d2F0ZXJBdXRob3JpdHlJZH0mbG9jYWxlPSR7bmF2Q29udGV4dC5sb2NhbGV9JnZhbHVlc0Zyb21LUUw9JHtrcWx9JmV2ZW50SWQ9JHtldmVudC5pZH1gLFxuICAgICk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXZlbnRJdGVtQ2xpY2s6IEZ1bmN0aW9uID0gKFxuICAgIGV2ZW50OiBJRXZlbnQsXG4gICAgcmVmOiBSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+LFxuICApID0+IHtcbiAgICBuYXZpZ2F0ZVRvRXZlbnQocGFyc2VJbnQoZXZlbnQuc2V2ZXJpdHkpLCBldmVudCk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRXZlbnRJdGVtSG92ZXI6IEZ1bmN0aW9uID0gKGV2ZW50OiBJRXZlbnQpID0+IHt9O1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiBjbGFzc05hbWU9XCJsMlwiPlxuICAgICAgPEthbmRvTmF2YmFyXG4gICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ9e3dhdGVyQXV0aG9yaXR5SWR9XG4gICAgICAgIGhhc1NlYXJjaD17dHJ1ZX1cbiAgICAgICAgc2VsZWN0ZWRMYWJlbD17Z3JvdXBOYW1lfVxuICAgICAgLz5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2NvbnRyb2xzXCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2JyZWFkY3J1bWJzXCI+XG4gICAgICAgICAgPEJyZWFkY3J1bWJzIHBhcnRzPXtbd2F0ZXJBdXRob3JpdHlOYW1lLCBhcmVhTmFtZSwgZ3JvdXBOYW1lXX0gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2J1dHRvbnNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInQtcmFuZ2UtY3RybFwiPlxuICAgICAgICAgICAgPFRpbWVSYW5nZVNlbGVjdG9yXG4gICAgICAgICAgICAgIHNlbGVjdGVkVmFsdWU9e3BlcmlvZFJhbmdlfVxuICAgICAgICAgICAgICBvblBlcmlvZFNlbGVjdGVkPXsoZGF5czogc3RyaW5nKSA9PiBzZXRQZXJpb2RSYW5nZShkYXlzKX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8VG9nZ2xlXG4gICAgICAgICAgICAgIG9wdGlvbnM9e1tcbiAgICAgICAgICAgICAgICB7IGxhYmVsOiAnQ29uY2VudHJhdGlvbicsIHZhbHVlOiB0cnVlIH0sXG4gICAgICAgICAgICAgICAgeyBsYWJlbDogJ0xvYWQnLCB2YWx1ZTogZmFsc2UgfSxcbiAgICAgICAgICAgICAgXX1cbiAgICAgICAgICAgICAgaGFuZGxlQnV0dG9uc0NoYW5nZT17KCkgPT4gYWxlcnQoJ2NoYW5nZScpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX3Jvdy10aXRsZVwiPlxuICAgICAgICB7aXNGZXRjaGluZygpID8gKFxuICAgICAgICAgIDxSb3dMb2FkZXJcbiAgICAgICAgICAgIHdpZHRoPVwiMzAwcHhcIlxuICAgICAgICAgICAgaGVpZ2h0PVwiNjBweFwiXG4gICAgICAgICAgICBtYXJnaW49XCIyMHB4IDBcIlxuICAgICAgICAgICAgYmdDb2xvcj1cIiNmMmYyZjJcIlxuICAgICAgICAgICAgZmdDb2xvcj1cIiNmZmZcIlxuICAgICAgICAgIC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPGgxIGNsYXNzTmFtZT1cImwyX19ncm91cC1uYW1lXCI+e2dyb3VwTmFtZX08L2gxPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19jb250ZW50XCI+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2NvbC0xXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fZmFjdG9yeS1pbmZvXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIuaW5mb3JtYXRpb24nKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB7aXNGZXRjaGluZygpID8gKFxuICAgICAgICAgICAgPFJvd0xvYWRlclxuICAgICAgICAgICAgICBtYXJnaW49XCIyNnB4IDAgMFwiXG4gICAgICAgICAgICAgIGhlaWdodD1cIjM3MHB4XCJcbiAgICAgICAgICAgICAgYmdDb2xvcj1cIiNmMmYyZjJcIlxuICAgICAgICAgICAgICBmZ0NvbG9yPVwiI2ZmZlwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICA8UG9pbnRJbmZvXG4gICAgICAgICAgICAgIG5hbWU9e3BvaW50TmFtZX1cbiAgICAgICAgICAgICAgYWRkcmVzcz17cG9pbnRBZGRyZXNzfVxuICAgICAgICAgICAgICBhcmVhPXthcmVhTmFtZX1cbiAgICAgICAgICAgICAgc2VjdG9ySWNvbk5hbWU9e3NlY3Rvckljb25OYW1lfVxuICAgICAgICAgICAgICBzZWN0b3I9e3NlY3Rvck5hbWV9XG4gICAgICAgICAgICAgIGdlbz17Z2VvfVxuICAgICAgICAgICAgICBkaXNjaGFyZ2luZz17ZGlzY2hhcmdpbmd9XG4gICAgICAgICAgICAgIHdhdGVyQXV0aG9yaXR5SWQ9e3dhdGVyQXV0aG9yaXR5SWR9XG4gICAgICAgICAgICAgIHBvaW50SWQ9e3BhcnNlZFBvaW50SUR9XG4gICAgICAgICAgICAgIGxvY2FsZT17bmF2Q29udGV4dC5sb2NhbGV9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fbGl2ZS1ldmVudHMgZXZlbnRzLWNvbnRhaW5lclwiIHJlZj17aXRlbUNvbnRhaW5lcn0+XG4gICAgICAgICAgICB7fVxuXG4gICAgICAgICAgICA8dWwgY2xhc3NOYW1lPXsnZXZlbnRzJ30+XG4gICAgICAgICAgICAgIDxDYXJvdXNlbCBpbmRpY2F0b3JzPXt0cnVlfSBpbnRlcnZhbD17bnVsbH0+XG4gICAgICAgICAgICAgICAge2V2ZW50c0RhdGEgIT09IG51bGwgJiZcbiAgICAgICAgICAgICAgICAgIGV2ZW50c0RhdGEgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgICAgZXZlbnRzRGF0YS5sZW5ndGggIT09IDAgJiZcbiAgICAgICAgICAgICAgICAgIGV2ZW50c0RhdGEubWFwKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgIDxDYXJvdXNlbC5JdGVtIGtleT17ZXZlbnQuaWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzTmFtZT17J2V2ZW50J30ga2V5PXtldmVudC5pZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxFdmVudEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudD17ZXZlbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlRXZlbnRJdGVtQ2xpY2s9e2hhbmRsZUV2ZW50SXRlbUNsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUV2ZW50SXRlbUhvdmVyPXtoYW5kbGVFdmVudEl0ZW1Ib3Zlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgICAgICAgPC9DYXJvdXNlbC5JdGVtPlxuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgIDwvQ2Fyb3VzZWw+XG4gICAgICAgICAgICA8L3VsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fY29sLTJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19yb3ctMVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fZXZlbnRzXCI+XG4gICAgICAgICAgICAgIDxFdmVudHMgcG9pbnRJZD17cGFyc2VkUG9pbnRJRH0gcGVyaW9kPXtwZXJpb2RSYW5nZX0gLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fZGFtYWdlXCI+XG4gICAgICAgICAgICAgIDxEYW1hZ2VUeXBlXG4gICAgICAgICAgICAgICAgcG9pbnRJZD17cGFyc2VkUG9pbnRJRH1cbiAgICAgICAgICAgICAgICBwZXJpb2REYXlzPXtyYW5nZVRvRGF5cyhwZXJpb2RSYW5nZSl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImwyX19yb3ctMlwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fdHJlbmRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsMl9fdHJlbmQtdGl0bGVcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIudHJlbmQnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxUcmVuZEdyYXBoIHBvaW50SWQ9e3BhcnNlZFBvaW50SUR9IHBlcmlvZD17cGVyaW9kUmFuZ2V9IC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibDJfX2Rpc2NoYXJnZVwiPlxuICAgICAgICAgICAgICA8RGlzY2hhcmdlSGVhdG1hcCBwb2ludElkPXtwYXJzZWRQb2ludElEfSAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAge31cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG4iXX0=
@@ -23,14 +23,15 @@ var _i18n = _interopRequireDefault(require("utilities/i18n"));
23
23
 
24
24
  var _axios = _interopRequireDefault(require("axios"));
25
25
 
26
- var _passwordValidator = _interopRequireDefault(require("password-validator"));
27
-
28
- var _theme = require("../../../styles/theme/theme");
29
-
30
26
  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); }
31
27
 
32
28
  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; }
33
29
 
30
+ var Form = _styledComponents.default.form.withConfig({
31
+ displayName: "PasswordModal__Form",
32
+ componentId: "sc-1rgmhle-0"
33
+ })(["display:flex;flex-direction:column;align-items:center;color:#1d1d1d;padding-bottom:40px;.password-title{font-size:24px;font-weight:700;padding-bottom:40px;}.felid{font-size:18px;margin-bottom:30px;.title{margin-bottom:5px;[dir='rtl'] &{text-align:right;}}input{height:50px;width:300px;}}.save{border:solid 1px #f6004f;background-color:#f6004f;width:200px;height:50px;border-radius:23px;color:white;margin-bottom:20px;&[disabled]{opacity:0.5;}}.cancel{color:#f6004f;background-color:transparent;border:none;}"]);
34
+
34
35
  var PasswordModal = function PasswordModal(_ref) {
35
36
  var close = _ref.close,
36
37
  save = _ref.save;
@@ -50,42 +51,8 @@ var PasswordModal = function PasswordModal(_ref) {
50
51
  canSave = _useState6[0],
51
52
  setCanSave = _useState6[1];
52
53
 
53
- var schema = new _passwordValidator.default();
54
- schema.is().min(8, 'At least 8 characters').is().max(100, 'Maximum 100 characters').has().uppercase(1, 'At least 1 uppercase letter').has().lowercase(1, 'At least 1 lowercase letter').has().digits(1, 'At least 1 digit').has().symbols(1, 'At least 1 symbol e.g. !@#$');
55
-
56
- var _useState7 = (0, _react.useState)([]),
57
- _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
58
- validationDetails = _useState8[0],
59
- setValidationDetails = _useState8[1];
60
-
61
- var checkValidity = function checkValidity(existing) {
62
- var validationMessages = validationDetails.map(function (detail) {
63
- return detail.message;
64
- });
65
- if (validationMessages.includes(existing)) return 'invalid';
66
- return 'valid';
67
- };
68
-
69
- var validationErrors = function validationErrors() {
70
- return /*#__PURE__*/_react.default.createElement(ValidationDetails, null, /*#__PURE__*/_react.default.createElement("ul", null, /*#__PURE__*/_react.default.createElement("li", {
71
- className: checkValidity(schema.properties[1].arguments[1])
72
- }, _i18n.default.t("dashboard_v2.profile.validations.".concat(schema.properties[1].method))), /*#__PURE__*/_react.default.createElement("li", {
73
- className: checkValidity(schema.properties[5].arguments[1])
74
- }, _i18n.default.t("dashboard_v2.profile.validations.".concat(schema.properties[5].method))), /*#__PURE__*/_react.default.createElement("li", {
75
- className: checkValidity(schema.properties[7].arguments[1])
76
- }, _i18n.default.t("dashboard_v2.profile.validations.".concat(schema.properties[7].method))), /*#__PURE__*/_react.default.createElement("li", {
77
- className: checkValidity(schema.properties[9].arguments[1])
78
- }, _i18n.default.t("dashboard_v2.profile.validations.".concat(schema.properties[9].method))), /*#__PURE__*/_react.default.createElement("li", {
79
- className: checkValidity(schema.properties[11].arguments[1])
80
- }, _i18n.default.t("dashboard_v2.profile.validations.".concat(schema.properties[11].method)))));
81
- };
82
-
83
54
  (0, _react.useEffect)(function () {
84
- setValidationDetails(schema.validate(password, {
85
- details: true
86
- }));
87
-
88
- if (password === confirmPassword && schema.validate(password)) {
55
+ if (password.length >= 5 && password === confirmPassword) {
89
56
  setCanSave(true);
90
57
  } else {
91
58
  setCanSave(false);
@@ -131,7 +98,7 @@ var PasswordModal = function PasswordModal(_ref) {
131
98
  }, _i18n.default.t('dashboard_v2.profile.password-confirmation')), /*#__PURE__*/_react.default.createElement(_PasswordInput.PasswordInput, {
132
99
  value: confirmPassword,
133
100
  setValue: setConfirmPassword
134
- })), validationErrors(), /*#__PURE__*/_react.default.createElement("button", {
101
+ })), /*#__PURE__*/_react.default.createElement("button", {
135
102
  className: "save",
136
103
  type: "submit",
137
104
  disabled: !canSave
@@ -142,14 +109,4 @@ var PasswordModal = function PasswordModal(_ref) {
142
109
  };
143
110
 
144
111
  exports.PasswordModal = PasswordModal;
145
-
146
- var ValidationDetails = _styledComponents.default.div.withConfig({
147
- displayName: "PasswordModal__ValidationDetails",
148
- componentId: "sc-1rgmhle-0"
149
- })(["display:flex;align-self:start;margin-inline-start:7em;margin-bottom:15px;font-size:12px;.invalid{color:", ";&::before{content:'\uD800\uDD02';margin:0 6px;size:12px;}}.valid{color:", ";&::before{content:'\u2713';margin:0 6px;size:12px;}}"], _theme.theme.colorScheme.data.R100, _theme.theme.colorScheme.data.G100);
150
-
151
- var Form = _styledComponents.default.form.withConfig({
152
- displayName: "PasswordModal__Form",
153
- componentId: "sc-1rgmhle-1"
154
- })(["display:flex;flex-direction:column;align-items:center;color:#1d1d1d;padding-bottom:40px;.password-title{font-size:24px;font-weight:700;padding-bottom:40px;}.felid{font-size:18px;margin-bottom:30px;.title{margin-bottom:5px;[dir='rtl'] &{text-align:right;}}input{height:50px;width:300px;}}.save{border:solid 1px #f6004f;background-color:#f6004f;width:200px;height:50px;border-radius:23px;color:white;margin-bottom:20px;&[disabled]{opacity:0.5;}}.cancel{color:#f6004f;background-color:transparent;border:none;}"]);
155
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Qcm9maWxlUGFnZS9QYXNzd29yZE1vZGFsL1Bhc3N3b3JkTW9kYWwudHN4Il0sIm5hbWVzIjpbIlBhc3N3b3JkTW9kYWwiLCJjbG9zZSIsInNhdmUiLCJwYXNzd29yZCIsInNldFBhc3N3b3JkIiwiY29uZmlybVBhc3N3b3JkIiwic2V0Q29uZmlybVBhc3N3b3JkIiwiY2FuU2F2ZSIsInNldENhblNhdmUiLCJzY2hlbWEiLCJwYXNzd29yZFZhbGlkYXRvciIsImlzIiwibWluIiwibWF4IiwiaGFzIiwidXBwZXJjYXNlIiwibG93ZXJjYXNlIiwiZGlnaXRzIiwic3ltYm9scyIsInZhbGlkYXRpb25EZXRhaWxzIiwic2V0VmFsaWRhdGlvbkRldGFpbHMiLCJjaGVja1ZhbGlkaXR5IiwiZXhpc3RpbmciLCJ2YWxpZGF0aW9uTWVzc2FnZXMiLCJtYXAiLCJkZXRhaWwiLCJtZXNzYWdlIiwiaW5jbHVkZXMiLCJ2YWxpZGF0aW9uRXJyb3JzIiwicHJvcGVydGllcyIsImFyZ3VtZW50cyIsImkxOG4iLCJ0IiwibWV0aG9kIiwidmFsaWRhdGUiLCJkZXRhaWxzIiwiZSIsInByZXZlbnREZWZhdWx0IiwidG9rZW4iLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJjb250ZW50IiwiYXhpb3MiLCJkZWZhdWx0cyIsImhlYWRlcnMiLCJjb21tb24iLCJwdXQiLCJwYXNzd29yZF9jb25maXJtYXRpb24iLCJ0aGVuIiwicmVzcCIsIndpbmRvdyIsImxvY2F0aW9uIiwiaHJlZiIsImNhdGNoIiwiZXJyb3IiLCJhbGVydCIsIlZhbGlkYXRpb25EZXRhaWxzIiwic3R5bGVkIiwiZGl2IiwidGhlbWUiLCJjb2xvclNjaGVtZSIsImRhdGEiLCJSMTAwIiwiRzEwMCIsIkZvcm0iLCJmb3JtIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBT08sSUFB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QUFsQjtBQUEyQixJQUFBLE9BQU8sRUFBRS9CO0FBQXBDLEtBQ0c4QixjQUFLQyxDQUFMLENBQU8sZ0JBQVAsQ0FESCxDQTdDRixDQURGLENBREY7QUFxREQsQ0FoSU07Ozs7QUFrSVAsSUFBTXdCLGlCQUFpQixHQUFHQywwQkFBT0MsR0FBVjtBQUFBO0FBQUE7QUFBQSxxUEFRVkMsYUFBTUMsV0FBTixDQUFrQkMsSUFBbEIsQ0FBdUJDLElBUmIsRUFpQlZILGFBQU1DLFdBQU4sQ0FBa0JDLElBQWxCLENBQXVCRSxJQWpCYixDQUF2Qjs7QUEwQkEsSUFBTUMsSUFBSSxHQUFHUCwwQkFBT1EsSUFBVjtBQUFBO0FBQUE7QUFBQSxtZ0JBQVYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMvbWFjcm8nO1xuaW1wb3J0IHsgUGFzc3dvcmRJbnB1dCB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0N1c3RvbUlucHV0cy9QYXNzd29yZElucHV0L1Bhc3N3b3JkSW5wdXQnO1xuaW1wb3J0IHsgUG9wdXBNb2RhbCB9IGZyb20gJ3NyYy9jb21wb25lbnRzL1BvcHVwTW9kYWwvUG9wdXBNb2RhbCc7XG5pbXBvcnQgaTE4biBmcm9tICdzcmMvdXRpbGl0aWVzL2kxOG4nO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCBwYXNzd29yZFZhbGlkYXRvciBmcm9tICdwYXNzd29yZC12YWxpZGF0b3InO1xuaW1wb3J0IHsgdGhlbWUgfSBmcm9tICcuLi8uLi8uLi9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuXG5pbnRlcmZhY2UgUGFzc3dvcmRNb2RhbFByb3BzIHtcbiAgY2xvc2U6ICgpID0+IHZvaWQ7XG4gIHNhdmU6IChwYXNzd29yZDogc3RyaW5nKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgY29uc3QgUGFzc3dvcmRNb2RhbDogUmVhY3QuRkM8UGFzc3dvcmRNb2RhbFByb3BzPiA9ICh7XG4gIGNsb3NlLFxuICBzYXZlLFxufSkgPT4ge1xuICBjb25zdCBbcGFzc3dvcmQsIHNldFBhc3N3b3JkXSA9IHVzZVN0YXRlKCcnKTtcbiAgY29uc3QgW2NvbmZpcm1QYXNzd29yZCwgc2V0Q29uZmlybVBhc3N3b3JkXSA9IHVzZVN0YXRlKCcnKTtcbiAgY29uc3QgW2NhblNhdmUsIHNldENhblNhdmVdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdCBzY2hlbWEgPSBuZXcgcGFzc3dvcmRWYWxpZGF0b3IoKTtcbiAgc2NoZW1hXG4gICAgLmlzKClcbiAgICAubWluKDgsICdBdCBsZWFzdCA4IGNoYXJhY3RlcnMnKVxuICAgIC5pcygpXG4gICAgLm1heCgxMDAsICdNYXhpbXVtIDEwMCBjaGFyYWN0ZXJzJylcbiAgICAuaGFzKClcbiAgICAudXBwZXJjYXNlKDEsICdBdCBsZWFzdCAxIHVwcGVyY2FzZSBsZXR0ZXInKVxuICAgIC5oYXMoKVxuICAgIC5sb3dlcmNhc2UoMSwgJ0F0IGxlYXN0IDEgbG93ZXJjYXNlIGxldHRlcicpXG4gICAgLmhhcygpXG4gICAgLmRpZ2l0cygxLCAnQXQgbGVhc3QgMSBkaWdpdCcpXG4gICAgLmhhcygpXG4gICAgLnN5bWJvbHMoMSwgJ0F0IGxlYXN0IDEgc3ltYm9sIGUuZy4gIUAjJCcpO1xuICBjb25zdCBbdmFsaWRhdGlvbkRldGFpbHMsIHNldFZhbGlkYXRpb25EZXRhaWxzXSA9IHVzZVN0YXRlPGJvb2xlYW4gfCBhbnlbXT4oXG4gICAgW10sXG4gICk7XG5cbiAgY29uc3QgY2hlY2tWYWxpZGl0eSA9IChleGlzdGluZykgPT4ge1xuICAgIGxldCB2YWxpZGF0aW9uTWVzc2FnZXMgPSB2YWxpZGF0aW9uRGV0YWlscy5tYXAoKGRldGFpbCkgPT4gZGV0YWlsLm1lc3NhZ2UpO1xuICAgIGlmICh2YWxpZGF0aW9uTWVzc2FnZXMuaW5jbHVkZXMoZXhpc3RpbmcpKSByZXR1cm4gJ2ludmFsaWQnO1xuICAgIHJldHVybiAndmFsaWQnO1xuICB9O1xuXG4gIGNvbnN0IHZhbGlkYXRpb25FcnJvcnMgPSAoKSA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxWYWxpZGF0aW9uRGV0YWlscz5cbiAgICAgICAgPHVsPlxuICAgICAgICAgIDxsaSBjbGFzc05hbWU9e2NoZWNrVmFsaWRpdHkoc2NoZW1hLnByb3BlcnRpZXNbMV0uYXJndW1lbnRzWzFdKX0+XG4gICAgICAgICAgICB7aTE4bi50KFxuICAgICAgICAgICAgICBgZGFzaGJvYXJkX3YyLnByb2ZpbGUudmFsaWRhdGlvbnMuJHtzY2hlbWEucHJvcGVydGllc1sxXS5tZXRob2R9YCxcbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgY2xhc3NOYW1lPXtjaGVja1ZhbGlkaXR5KHNjaGVtYS5wcm9wZXJ0aWVzWzVdLmFyZ3VtZW50c1sxXSl9PlxuICAgICAgICAgICAge2kxOG4udChcbiAgICAgICAgICAgICAgYGRhc2hib2FyZF92Mi5wcm9maWxlLnZhbGlkYXRpb25zLiR7c2NoZW1hLnByb3BlcnRpZXNbNV0ubWV0aG9kfWAsXG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgPGxpIGNsYXNzTmFtZT17Y2hlY2tWYWxpZGl0eShzY2hlbWEucHJvcGVydGllc1s3XS5hcmd1bWVudHNbMV0pfT5cbiAgICAgICAgICAgIHtpMThuLnQoXG4gICAgICAgICAgICAgIGBkYXNoYm9hcmRfdjIucHJvZmlsZS52YWxpZGF0aW9ucy4ke3NjaGVtYS5wcm9wZXJ0aWVzWzddLm1ldGhvZH1gLFxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2xpPlxuICAgICAgICAgIDxsaSBjbGFzc05hbWU9e2NoZWNrVmFsaWRpdHkoc2NoZW1hLnByb3BlcnRpZXNbOV0uYXJndW1lbnRzWzFdKX0+XG4gICAgICAgICAgICB7aTE4bi50KFxuICAgICAgICAgICAgICBgZGFzaGJvYXJkX3YyLnByb2ZpbGUudmFsaWRhdGlvbnMuJHtzY2hlbWEucHJvcGVydGllc1s5XS5tZXRob2R9YCxcbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgICA8bGkgY2xhc3NOYW1lPXtjaGVja1ZhbGlkaXR5KHNjaGVtYS5wcm9wZXJ0aWVzWzExXS5hcmd1bWVudHNbMV0pfT5cbiAgICAgICAgICAgIHtpMThuLnQoXG4gICAgICAgICAgICAgIGBkYXNoYm9hcmRfdjIucHJvZmlsZS52YWxpZGF0aW9ucy4ke3NjaGVtYS5wcm9wZXJ0aWVzWzExXS5tZXRob2R9YCxcbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9saT5cbiAgICAgICAgPC91bD5cbiAgICAgIDwvVmFsaWRhdGlvbkRldGFpbHM+XG4gICAgKTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHNldFZhbGlkYXRpb25EZXRhaWxzKHNjaGVtYS52YWxpZGF0ZShwYXNzd29yZCwgeyBkZXRhaWxzOiB0cnVlIH0pKTtcblxuICAgIGlmIChwYXNzd29yZCA9PT0gY29uZmlybVBhc3N3b3JkICYmIHNjaGVtYS52YWxpZGF0ZShwYXNzd29yZCkpIHtcbiAgICAgIHNldENhblNhdmUodHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldENhblNhdmUoZmFsc2UpO1xuICAgIH1cbiAgfSwgW3Bhc3N3b3JkLCBjb25maXJtUGFzc3dvcmRdKTtcblxuICByZXR1cm4gKFxuICAgIDxQb3B1cE1vZGFsIHNob3c9e3RydWV9IHNldFNob3c9e2Nsb3NlfT5cbiAgICAgIDxGb3JtXG4gICAgICAgIG9uU3VibWl0PXsoZSkgPT4ge1xuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICBpZiAoY2FuU2F2ZSkge1xuICAgICAgICAgICAgc2F2ZShwYXNzd29yZCk7XG5cbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIGNvbnN0IHRva2VuID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW25hbWU9Y3NyZi10b2tlbl0nKS5jb250ZW50O1xuICAgICAgICAgICAgYXhpb3MuZGVmYXVsdHMuaGVhZGVycy5jb21tb25bJ1gtQ1NSRi1UT0tFTiddID0gdG9rZW47XG4gICAgICAgICAgICBheGlvcy5kZWZhdWx0cy5oZWFkZXJzLmNvbW1vblsnQ29udGVudC1UeXBlJ10gPSAnYXBwbGljYXRpb24vanMnO1xuICAgICAgICAgICAgYXhpb3NcbiAgICAgICAgICAgICAgLnB1dCgnL3Byb2ZpbGVzL3Bhc3N3b3JkJywge1xuICAgICAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCxcbiAgICAgICAgICAgICAgICBwYXNzd29yZF9jb25maXJtYXRpb246IGNvbmZpcm1QYXNzd29yZCxcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLnRoZW4oKHJlc3ApID0+IHtcbiAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICcvdXNlcnMvc2lnbl9pbic7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGFsZXJ0KGVycm9yKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInBhc3N3b3JkLXRpdGxlXCI+XG4gICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuY2hhbmdlLXBhc3N3b3JkJyl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZlbGlkXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPlxuICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUubmV3LXBhc3N3b3JkJyl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPFBhc3N3b3JkSW5wdXQgdmFsdWU9e3Bhc3N3b3JkfSBzZXRWYWx1ZT17c2V0UGFzc3dvcmR9IC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZlbGlkXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPlxuICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUucGFzc3dvcmQtY29uZmlybWF0aW9uJyl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPFBhc3N3b3JkSW5wdXRcbiAgICAgICAgICAgIHZhbHVlPXtjb25maXJtUGFzc3dvcmR9XG4gICAgICAgICAgICBzZXRWYWx1ZT17c2V0Q29uZmlybVBhc3N3b3JkfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICB7dmFsaWRhdGlvbkVycm9ycygpfVxuXG4gICAgICAgIDxidXR0b24gY2xhc3NOYW1lPVwic2F2ZVwiIHR5cGU9XCJzdWJtaXRcIiBkaXNhYmxlZD17IWNhblNhdmV9PlxuICAgICAgICAgIHtpMThuLnQoJ2J1dHRvbnMuc2F2ZScpfVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzc05hbWU9XCJjYW5jZWxcIiBvbkNsaWNrPXtjbG9zZX0+XG4gICAgICAgICAge2kxOG4udCgnYnV0dG9ucy5jYW5jZWwnKX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L0Zvcm0+XG4gICAgPC9Qb3B1cE1vZGFsPlxuICApO1xufTtcblxuY29uc3QgVmFsaWRhdGlvbkRldGFpbHMgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogN2VtO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBmb250LXNpemU6IDEycHg7XG5cbiAgLmludmFsaWQge1xuICAgIGNvbG9yOiAke3RoZW1lLmNvbG9yU2NoZW1lLmRhdGEuUjEwMH07XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfwkISCJztcbiAgICAgIG1hcmdpbjogMCA2cHg7XG4gICAgICBzaXplOiAxMnB4O1xuICAgIH1cbiAgfVxuXG4gIC52YWxpZCB7XG4gICAgY29sb3I6ICR7dGhlbWUuY29sb3JTY2hlbWUuZGF0YS5HMTAwfTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ+Kckyc7XG4gICAgICBtYXJnaW46IDAgNnB4O1xuICAgICAgc2l6ZTogMTJweDtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEZvcm0gPSBzdHlsZWQuZm9ybWBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICMxZDFkMWQ7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gIC5wYXNzd29yZC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cblxuICAuZmVsaWQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIFtkaXI9J3J0bCddICYge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zYXZlIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZjYwMDRmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNjAwNGY7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAyM3B4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG4gIH1cblxuICAuY2FuY2VsIHtcbiAgICBjb2xvcjogI2Y2MDA0ZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbmA7XG4iXX0=
112
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9Qcm9maWxlUGFnZS9QYXNzd29yZE1vZGFsL1Bhc3N3b3JkTW9kYWwudHN4Il0sIm5hbWVzIjpbIkZvcm0iLCJzdHlsZWQiLCJmb3JtIiwiUGFzc3dvcmRNb2RhbCIsImNsb3NlIiwic2F2ZSIsInBhc3N3b3JkIiwic2V0UGFzc3dvcmQiLCJjb25maXJtUGFzc3dvcmQiLCJzZXRDb25maXJtUGFzc3dvcmQiLCJjYW5TYXZlIiwic2V0Q2FuU2F2ZSIsImxlbmd0aCIsImUiLCJwcmV2ZW50RGVmYXVsdCIsInRva2VuIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiY29udGVudCIsImF4aW9zIiwiZGVmYXVsdHMiLCJoZWFkZXJzIiwiY29tbW9uIiwicHV0IiwicGFzc3dvcmRfY29uZmlybWF0aW9uIiwidGhlbiIsInJlc3AiLCJ3aW5kb3ciLCJsb2NhdGlvbiIsImhyZWYiLCJjYXRjaCIsImVycm9yIiwiYWxlcnQiLCJpMThuIiwidCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLElBQUksR0FBR0MsMEJBQU9DLElBQVY7QUFBQTtBQUFBO0FBQUEsbWdCQUFWOztBQXNETyxJQUFNQyxhQUEyQyxHQUFHLFNBQTlDQSxhQUE4QyxPQUdyRDtBQUFBLE1BRkpDLEtBRUksUUFGSkEsS0FFSTtBQUFBLE1BREpDLElBQ0ksUUFESkEsSUFDSTs7QUFDSixrQkFBZ0MscUJBQVMsRUFBVCxDQUFoQztBQUFBO0FBQUEsTUFBT0MsUUFBUDtBQUFBLE1BQWlCQyxXQUFqQjs7QUFDQSxtQkFBOEMscUJBQVMsRUFBVCxDQUE5QztBQUFBO0FBQUEsTUFBT0MsZUFBUDtBQUFBLE1BQXdCQyxrQkFBeEI7O0FBQ0EsbUJBQThCLHFCQUFrQixLQUFsQixDQUE5QjtBQUFBO0FBQUEsTUFBT0MsT0FBUDtBQUFBLE1BQWdCQyxVQUFoQjs7QUFFQSx3QkFBVSxZQUFNO0FBQ2QsUUFBSUwsUUFBUSxDQUFDTSxNQUFULElBQW1CLENBQW5CLElBQXdCTixRQUFRLEtBQUtFLGVBQXpDLEVBQTBEO0FBQ3hERyxNQUFBQSxVQUFVLENBQUMsSUFBRCxDQUFWO0FBQ0QsS0FGRCxNQUVPO0FBQ0xBLE1BQUFBLFVBQVUsQ0FBQyxLQUFELENBQVY7QUFDRDtBQUNGLEdBTkQsRUFNRyxDQUFDTCxRQUFELEVBQVdFLGVBQVgsQ0FOSDtBQVFBLHNCQUNFLDZCQUFDLHNCQUFEO0FBQVksSUFBQSxJQUFJLEVBQUUsSUFBbEI7QUFBd0IsSUFBQSxPQUFPLEVBQUVKO0FBQWpDLGtCQUNFLDZCQUFDLElBQUQ7QUFDRSxJQUFBLFFBQVEsRUFBRSxrQkFBQ1MsQ0FBRCxFQUFPO0FBQ2ZBLE1BQUFBLENBQUMsQ0FBQ0MsY0FBRjs7QUFDQSxVQUFJSixPQUFKLEVBQWE7QUFDWEwsUUFBQUEsSUFBSSxDQUFDQyxRQUFELENBQUosQ0FEVyxDQUdYOztBQUNBLFlBQU1TLEtBQUssR0FBR0MsUUFBUSxDQUFDQyxhQUFULENBQXVCLG1CQUF2QixFQUE0Q0MsT0FBMUQ7QUFDQUMsdUJBQU1DLFFBQU4sQ0FBZUMsT0FBZixDQUF1QkMsTUFBdkIsQ0FBOEIsY0FBOUIsSUFBZ0RQLEtBQWhEO0FBQ0FJLHVCQUFNQyxRQUFOLENBQWVDLE9BQWYsQ0FBdUJDLE1BQXZCLENBQThCLGNBQTlCLElBQWdELGdCQUFoRDs7QUFDQUgsdUJBQ0dJLEdBREgsQ0FDTyxvQkFEUCxFQUM2QjtBQUN6QmpCLFVBQUFBLFFBQVEsRUFBRUEsUUFEZTtBQUV6QmtCLFVBQUFBLHFCQUFxQixFQUFFaEI7QUFGRSxTQUQ3QixFQUtHaUIsSUFMSCxDQUtRLFVBQUNDLElBQUQsRUFBVTtBQUNkQyxVQUFBQSxNQUFNLENBQUNDLFFBQVAsQ0FBZ0JDLElBQWhCLEdBQXVCLGdCQUF2QjtBQUNELFNBUEgsRUFRR0MsS0FSSCxDQVFTLFVBQUNDLEtBQUQ7QUFBQSxpQkFBV0MsS0FBSyxDQUFDRCxLQUFELENBQWhCO0FBQUEsU0FSVDtBQVNEO0FBQ0Y7QUFwQkgsa0JBc0JFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNHRSxjQUFLQyxDQUFMLENBQU8sc0NBQVAsQ0FESCxDQXRCRixlQXlCRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQ0dELGNBQUtDLENBQUwsQ0FBTyxtQ0FBUCxDQURILENBREYsZUFJRSw2QkFBQyw0QkFBRDtBQUFlLElBQUEsS0FBSyxFQUFFNUIsUUFBdEI7QUFBZ0MsSUFBQSxRQUFRLEVBQUVDO0FBQTFDLElBSkYsQ0F6QkYsZUErQkU7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNHMEIsY0FBS0MsQ0FBTCxDQUFPLDRDQUFQLENBREgsQ0FERixlQUlFLDZCQUFDLDRCQUFEO0FBQ0UsSUFBQSxLQUFLLEVBQUUxQixlQURUO0FBRUUsSUFBQSxRQUFRLEVBQUVDO0FBRlosSUFKRixDQS9CRixlQXlDRTtBQUFRLElBQUEsU0FBUyxFQUFDLE1BQWxCO0FBQXlCLElBQUEsSUFBSSxFQUFDLFFBQTlCO0FBQXVDLElBQUEsUUFBUSxFQUFFLENBQUNDO0FBQWxELEtBQ0d1QixjQUFLQyxDQUFMLENBQU8sY0FBUCxDQURILENBekNGLGVBNENFO0FBQVEsSUFBQSxTQUFTLEVBQUMsUUFBbEI7QUFBMkIsSUFBQSxPQUFPLEVBQUU5QjtBQUFwQyxLQUNHNkIsY0FBS0MsQ0FBTCxDQUFPLGdCQUFQLENBREgsQ0E1Q0YsQ0FERixDQURGO0FBb0RELENBcEVNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IFBhc3N3b3JkSW5wdXQgfSBmcm9tICdzcmMvY29tcG9uZW50cy9DdXN0b21JbnB1dHMvUGFzc3dvcmRJbnB1dC9QYXNzd29yZElucHV0JztcbmltcG9ydCB7IFBvcHVwTW9kYWwgfSBmcm9tICdzcmMvY29tcG9uZW50cy9Qb3B1cE1vZGFsL1BvcHVwTW9kYWwnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5cbmNvbnN0IEZvcm0gPSBzdHlsZWQuZm9ybWBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICMxZDFkMWQ7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gIC5wYXNzd29yZC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cblxuICAuZmVsaWQge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIFtkaXI9J3J0bCddICYge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgd2lkdGg6IDMwMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zYXZlIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZjYwMDRmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNjAwNGY7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAyM3B4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG4gIH1cblxuICAuY2FuY2VsIHtcbiAgICBjb2xvcjogI2Y2MDA0ZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbmA7XG5cbmludGVyZmFjZSBQYXNzd29yZE1vZGFsUHJvcHMge1xuICBjbG9zZTogKCkgPT4gdm9pZDtcbiAgc2F2ZTogKHBhc3N3b3JkOiBzdHJpbmcpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBQYXNzd29yZE1vZGFsOiBSZWFjdC5GQzxQYXNzd29yZE1vZGFsUHJvcHM+ID0gKHtcbiAgY2xvc2UsXG4gIHNhdmUsXG59KSA9PiB7XG4gIGNvbnN0IFtwYXNzd29yZCwgc2V0UGFzc3dvcmRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbY29uZmlybVBhc3N3b3JkLCBzZXRDb25maXJtUGFzc3dvcmRdID0gdXNlU3RhdGUoJycpO1xuICBjb25zdCBbY2FuU2F2ZSwgc2V0Q2FuU2F2ZV0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAocGFzc3dvcmQubGVuZ3RoID49IDUgJiYgcGFzc3dvcmQgPT09IGNvbmZpcm1QYXNzd29yZCkge1xuICAgICAgc2V0Q2FuU2F2ZSh0cnVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgc2V0Q2FuU2F2ZShmYWxzZSk7XG4gICAgfVxuICB9LCBbcGFzc3dvcmQsIGNvbmZpcm1QYXNzd29yZF0pO1xuXG4gIHJldHVybiAoXG4gICAgPFBvcHVwTW9kYWwgc2hvdz17dHJ1ZX0gc2V0U2hvdz17Y2xvc2V9PlxuICAgICAgPEZvcm1cbiAgICAgICAgb25TdWJtaXQ9eyhlKSA9PiB7XG4gICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGlmIChjYW5TYXZlKSB7XG4gICAgICAgICAgICBzYXZlKHBhc3N3b3JkKTtcblxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgY29uc3QgdG9rZW4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbbmFtZT1jc3JmLXRva2VuXScpLmNvbnRlbnQ7XG4gICAgICAgICAgICBheGlvcy5kZWZhdWx0cy5oZWFkZXJzLmNvbW1vblsnWC1DU1JGLVRPS0VOJ10gPSB0b2tlbjtcbiAgICAgICAgICAgIGF4aW9zLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uWydDb250ZW50LVR5cGUnXSA9ICdhcHBsaWNhdGlvbi9qcyc7XG4gICAgICAgICAgICBheGlvc1xuICAgICAgICAgICAgICAucHV0KCcvcHJvZmlsZXMvcGFzc3dvcmQnLCB7XG4gICAgICAgICAgICAgICAgcGFzc3dvcmQ6IHBhc3N3b3JkLFxuICAgICAgICAgICAgICAgIHBhc3N3b3JkX2NvbmZpcm1hdGlvbjogY29uZmlybVBhc3N3b3JkLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAudGhlbigocmVzcCkgPT4ge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJy91c2Vycy9zaWduX2luJztcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLmNhdGNoKChlcnJvcikgPT4gYWxlcnQoZXJyb3IpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwicGFzc3dvcmQtdGl0bGVcIj5cbiAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5jaGFuZ2UtcGFzc3dvcmQnKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmVsaWRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5uZXctcGFzc3dvcmQnKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8UGFzc3dvcmRJbnB1dCB2YWx1ZT17cGFzc3dvcmR9IHNldFZhbHVlPXtzZXRQYXNzd29yZH0gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmVsaWRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5wYXNzd29yZC1jb25maXJtYXRpb24nKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8UGFzc3dvcmRJbnB1dFxuICAgICAgICAgICAgdmFsdWU9e2NvbmZpcm1QYXNzd29yZH1cbiAgICAgICAgICAgIHNldFZhbHVlPXtzZXRDb25maXJtUGFzc3dvcmR9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGJ1dHRvbiBjbGFzc05hbWU9XCJzYXZlXCIgdHlwZT1cInN1Ym1pdFwiIGRpc2FibGVkPXshY2FuU2F2ZX0+XG4gICAgICAgICAge2kxOG4udCgnYnV0dG9ucy5zYXZlJyl9XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIGNsYXNzTmFtZT1cImNhbmNlbFwiIG9uQ2xpY2s9e2Nsb3NlfT5cbiAgICAgICAgICB7aTE4bi50KCdidXR0b25zLmNhbmNlbCcpfVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvRm9ybT5cbiAgICA8L1BvcHVwTW9kYWw+XG4gICk7XG59O1xuIl19
@@ -41,8 +41,6 @@ var _momentTimezone = _interopRequireDefault(require("moment-timezone"));
41
41
 
42
42
  var _Analytics = require("../../utilities/Analytics");
43
43
 
44
- var _reactRedux = require("react-redux");
45
-
46
44
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
47
45
 
48
46
  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; }
@@ -186,10 +184,6 @@ var ProfilePage = function ProfilePage() {
186
184
  });
187
185
  };
188
186
 
189
- var waterAuthorityName = (0, _reactRedux.useSelector)(function (state) {
190
- return state.global_data.waterAuthorityName;
191
- });
192
-
193
187
  var handleSubmit = function handleSubmit(e) {
194
188
  e.preventDefault();
195
189
  setSubmitting(true);
@@ -251,9 +245,7 @@ var ProfilePage = function ProfilePage() {
251
245
  };
252
246
 
253
247
  (0, _react.useEffect)(function () {
254
- (0, _Analytics.analyticsTrack)('Viewed Profile Page', {
255
- utility_name: waterAuthorityName
256
- }); // @ts-ignore
248
+ (0, _Analytics.analyticsTrack)('Viewed Profile Page'); // @ts-ignore
257
249
 
258
250
  var token = document.querySelector('[name=csrf-token]').content;
259
251
  _axios.default.defaults.headers.common['X-CSRF-TOKEN'] = token;
@@ -481,4 +473,4 @@ var ProfilePage = function ProfilePage() {
481
473
  };
482
474
 
483
475
  exports.ProfilePage = ProfilePage;
484
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9Qcm9maWxlUGFnZS9Qcm9maWxlUGFnZS50c3giXSwibmFtZXMiOlsiUHJvZmlsZVBhZ2UiLCJ0aW1lem9uZXNBcnJheSIsIm1vbWVudCIsInR6IiwibmFtZXMiLCJkYXRlVGltZUZvcm1hdE9wdGlvbnMiLCJ2YWx1ZSIsImxhYmVsIiwiZm9ybWF0IiwibW9udGgiLCJkYXkiLCJ5ZWFyIiwiaG91ciIsIm1pbnV0ZSIsImhvdXIxMiIsInRpbWV6b25lcyIsIm1hcCIsInQiLCJsb2NhbGVPcHRpb25zIiwibG9jYWxlIiwic2V0TG9jYWxlIiwiZGF0ZVRpbWVGb3JtYXQiLCJzZXREYXRlVGltZUZvcm1hdCIsInRpbWV6b25lIiwic2V0VGltZXpvbmUiLCJpbml0aWFsUGFyYW1zU3RhdGUiLCJmaXJzdF9uYW1lIiwibGFzdF9uYW1lIiwicGhvbmUiLCJlbWFpbCIsInRpbWVfem9uZSIsImRhdGVfdGltZV9mb3JtYXQiLCJ0ZWxlZ3JhbV9uYW1lIiwiaXNUZWxlZ3JhbU9wZW4iLCJzZXRJc1RlbGVncmFtT3BlbiIsInNob3dQYXNzd29yZE1vZGFsIiwic2V0U2hvd1Bhc3N3b3JkTW9kYWwiLCJzdWJtaXR0aW5nIiwic2V0U3VibWl0dGluZyIsInNob3dTdWNjZXNzTWVzc2FnZSIsInNldFNob3dTdWNjZXNzTWVzc2FnZSIsInNob3dFcnJvck1lc3NhZ2UiLCJzZXRTaG93RXJyb3JNZXNzYWdlIiwic2hvdyIsInN0YXR1cyIsIm1lc3NhZ2UiLCJzaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2UiLCJzZXRTaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2UiLCJwYXJhbXMiLCJzZXRQYXJhbXMiLCJoYW5kbGVPbkNoYW5nZSIsImUiLCJzdGFydHNXaXRoIiwicmVwbGFjZSIsInByZXZTdGF0ZSIsInRhcmdldCIsIm5hbWUiLCJnZXRQYXJhbXNXaXRoQWdncmVnYXRlZFZhbHVlcyIsIndhdGVyQXV0aG9yaXR5TmFtZSIsInN0YXRlIiwiZ2xvYmFsX2RhdGEiLCJoYW5kbGVTdWJtaXQiLCJwcmV2ZW50RGVmYXVsdCIsImF4aW9zIiwicHV0IiwidXNlciIsInRoZW4iLCJyZXNwIiwiZGF0YSIsImVycm9ycyIsImRvY3VtZW50IiwicXVlcnlTZWxlY3RvckFsbCIsImZvckVhY2giLCJwIiwiaW5uZXJIVE1MIiwiY2xhc3NMaXN0IiwicmVtb3ZlIiwiSlNPTiIsInBhcnNlIiwiZmluZExvY2FsZSIsImZpbmQiLCJmaW5kRGF0ZVRpbWVGb3JtYXQiLCJmaW5kVGltZXpvbmUiLCJzZXRUaW1lb3V0IiwiZXJyb3IiLCJmaW5kRWxlbWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJwYXJlbnQiLCJjbG9zZXN0IiwiZmluZElucHV0IiwiYWRkIiwiaTE4biIsImNhdGNoIiwidXRpbGl0eV9uYW1lIiwidG9rZW4iLCJjb250ZW50IiwiZGVmYXVsdHMiLCJoZWFkZXJzIiwiY29tbW9uIiwiZ2V0IiwiYWxlcnQiLCJ1bmRlZmluZWQiLCJEYXRlIiwidG9Mb2NhbGVEYXRlU3RyaW5nIiwidG9VcHBlckNhc2UiLCJzdWJzdHJpbmciXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUdBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7QUFFTyxJQUFNQSxXQUFXLEdBQUcsU0FBZEEsV0FBYyxHQUFNO0FBQy9CLE1BQU1DLGNBQWMsR0FBR0Msd0JBQU9DLEVBQVAsQ0FBVUMsS0FBVixFQUF2Qjs7QUFDQSxNQUFNQyxxQkFBcUIsR0FBRyxDQUM1QjtBQUNFQyxJQUFBQSxLQUFLLEVBQUUsSUFEVDtBQUVFQyxJQUFBQSxLQUFLLEVBQUUsZUFGVDtBQUdFQyxJQUFBQSxNQUFNLEVBQUU7QUFDTkMsTUFBQUEsS0FBSyxFQUFFLE9BREQ7QUFFTkMsTUFBQUEsR0FBRyxFQUFFLFNBRkM7QUFHTkMsTUFBQUEsSUFBSSxFQUFFLFNBSEE7QUFJTkMsTUFBQUEsSUFBSSxFQUFFLFNBSkE7QUFLTkMsTUFBQUEsTUFBTSxFQUFFO0FBTEY7QUFIVixHQUQ0QixFQVk1QjtBQUNFUCxJQUFBQSxLQUFLLEVBQUUsSUFEVDtBQUVFQyxJQUFBQSxLQUFLLEVBQUUsUUFGVDtBQUdFQyxJQUFBQSxNQUFNLEVBQUU7QUFDTkUsTUFBQUEsR0FBRyxFQUFFLFNBREM7QUFFTkQsTUFBQUEsS0FBSyxFQUFFLFNBRkQ7QUFHTkUsTUFBQUEsSUFBSSxFQUFFLFNBSEE7QUFJTkMsTUFBQUEsSUFBSSxFQUFFLFNBSkE7QUFLTkMsTUFBQUEsTUFBTSxFQUFFLFNBTEY7QUFNTkMsTUFBQUEsTUFBTSxFQUFFO0FBTkY7QUFIVixHQVo0QixDQUE5QjtBQTBCQSxNQUFNQyxTQUFTLEdBQUdkLGNBQWMsQ0FBQ2UsR0FBZixDQUFtQixVQUFDQyxDQUFELEVBQU87QUFDMUMsV0FBTztBQUFFWCxNQUFBQSxLQUFLLEVBQUVXLENBQVQ7QUFBWVYsTUFBQUEsS0FBSyxFQUFFVTtBQUFuQixLQUFQO0FBQ0QsR0FGaUIsQ0FBbEI7QUFJQSxNQUFNQyxhQUFhLEdBQUcsQ0FDcEI7QUFBRVosSUFBQUEsS0FBSyxFQUFFLElBQVQ7QUFBZUMsSUFBQUEsS0FBSyxFQUFFO0FBQXRCLEdBRG9CLEVBRXBCO0FBQUVELElBQUFBLEtBQUssRUFBRSxJQUFUO0FBQWVDLElBQUFBLEtBQUssRUFBRTtBQUF0QixHQUZvQixFQUdwQjtBQUFFRCxJQUFBQSxLQUFLLEVBQUUsSUFBVDtBQUFlQyxJQUFBQSxLQUFLLEVBQUU7QUFBdEIsR0FIb0IsRUFJcEI7QUFBRUQsSUFBQUEsS0FBSyxFQUFFLElBQVQ7QUFBZUMsSUFBQUEsS0FBSyxFQUFFO0FBQXRCLEdBSm9CLENBQXRCOztBQU9BLGtCQUE0QixxQkFHekJXLGFBQWEsQ0FBQyxDQUFELENBSFksQ0FBNUI7QUFBQTtBQUFBLE1BQU9DLE1BQVA7QUFBQSxNQUFlQyxTQUFmOztBQUtBLG1CQUE0QyxxQkFJekNmLHFCQUFxQixDQUFDLENBQUQsQ0FKb0IsQ0FBNUM7QUFBQTtBQUFBLE1BQU9nQixjQUFQO0FBQUEsTUFBdUJDLGlCQUF2Qjs7QUFNQSxtQkFBZ0MscUJBRzdCUCxTQUFTLENBQUMsRUFBRCxDQUhvQixDQUFoQztBQUFBO0FBQUEsTUFBT1EsUUFBUDtBQUFBLE1BQWlCQyxXQUFqQjs7QUFLQSxNQUFNQyxrQkFBa0IsR0FBRztBQUN6QkMsSUFBQUEsVUFBVSxFQUFFLEVBRGE7QUFFekJDLElBQUFBLFNBQVMsRUFBRSxFQUZjO0FBR3pCQyxJQUFBQSxLQUFLLEVBQUUsRUFIa0I7QUFJekJDLElBQUFBLEtBQUssRUFBRSxFQUprQjtBQUt6QkMsSUFBQUEsU0FBUyxFQUFFLEVBTGM7QUFNekJDLElBQUFBLGdCQUFnQixFQUFFLEVBTk87QUFPekJaLElBQUFBLE1BQU0sRUFBRSxFQVBpQjtBQVF6QmEsSUFBQUEsYUFBYSxFQUFFO0FBUlUsR0FBM0I7O0FBV0EsbUJBQTRDLHFCQUFrQixLQUFsQixDQUE1QztBQUFBO0FBQUEsTUFBT0MsY0FBUDtBQUFBLE1BQXVCQyxpQkFBdkI7O0FBQ0EsbUJBQWtELHFCQUFrQixLQUFsQixDQUFsRDtBQUFBO0FBQUEsTUFBT0MsaUJBQVA7QUFBQSxNQUEwQkMsb0JBQTFCOztBQUNBLG9CQUFvQyxxQkFBa0IsS0FBbEIsQ0FBcEM7QUFBQTtBQUFBLE1BQU9DLFVBQVA7QUFBQSxNQUFtQkMsYUFBbkI7O0FBQ0Esb0JBQW9ELHFCQUFrQixLQUFsQixDQUFwRDtBQUFBO0FBQUEsTUFBT0Msa0JBQVA7QUFBQSxNQUEyQkMscUJBQTNCOztBQUNBLG9CQUFnRCxxQkFBa0IsS0FBbEIsQ0FBaEQ7QUFBQTtBQUFBLE1BQU9DLGdCQUFQO0FBQUEsTUFBeUJDLG1CQUF6Qjs7QUFDQSxvQkFDRSxxQkFJRztBQUNEQyxJQUFBQSxJQUFJLEVBQUUsS0FETDtBQUVEQyxJQUFBQSxNQUFNLEVBQUUsRUFGUDtBQUdEQyxJQUFBQSxPQUFPLEVBQUU7QUFIUixHQUpILENBREY7QUFBQTtBQUFBLE1BQU9DLDJCQUFQO0FBQUEsTUFBb0NDLDhCQUFwQzs7QUFVQSxvQkFBNEIscUJBU3pCdEIsa0JBVHlCLENBQTVCO0FBQUE7QUFBQSxNQUFPdUIsTUFBUDtBQUFBLE1BQWVDLFNBQWY7O0FBV0EsTUFBTUMsY0FBYyxHQUFHLFNBQWpCQSxjQUFpQixDQUFDQyxDQUFELEVBQU87QUFDNUIsUUFBSSxPQUFPQSxDQUFQLEtBQWEsUUFBakIsRUFBMkI7QUFDekIsVUFBSUEsQ0FBQyxDQUFDQyxVQUFGLENBQWEsTUFBYixDQUFKLEVBQTBCO0FBQ3hCRCxRQUFBQSxDQUFDLEdBQUdBLENBQUMsQ0FBQ0UsT0FBRixDQUFVLFNBQVYsRUFBcUIsS0FBckIsQ0FBSjtBQUNEOztBQUNESixNQUFBQSxTQUFTLENBQUMsVUFBQ0ssU0FBRDtBQUFBLDJFQUNMQSxTQURLO0FBRVIxQixVQUFBQSxLQUFLLEVBQUV1QjtBQUZDO0FBQUEsT0FBRCxDQUFUO0FBSUQsS0FSRCxNQVFPO0FBQ0wsc0JBQXdCQSxDQUFDLENBQUNJLE1BQTFCO0FBQUEsVUFBUWpELEtBQVIsYUFBUUEsS0FBUjtBQUFBLFVBQWVrRCxJQUFmLGFBQWVBLElBQWY7QUFDQVAsTUFBQUEsU0FBUyxDQUFDLFVBQUNLLFNBQUQ7QUFBQSwyRUFDTEEsU0FESyx5Q0FFUEUsSUFGTyxFQUVBbEQsS0FGQTtBQUFBLE9BQUQsQ0FBVDtBQUlEO0FBQ0YsR0FoQkQ7O0FBa0JBLE1BQU1tRCw2QkFBNkIsR0FBRyxTQUFoQ0EsNkJBQWdDLEdBQU07QUFDMUMsdUVBQ0tULE1BREw7QUFFRWpCLE1BQUFBLGdCQUFnQixFQUFFVixjQUFjLENBQUNmLEtBRm5DO0FBR0VhLE1BQUFBLE1BQU0sRUFBRUEsTUFBTSxDQUFDYixLQUhqQjtBQUlFd0IsTUFBQUEsU0FBUyxFQUFFUCxRQUFRLENBQUNqQjtBQUp0QjtBQU1ELEdBUEQ7O0FBU0EsTUFBTW9ELGtCQUFrQixHQUFHLDZCQUN6QixVQUFDQyxLQUFEO0FBQUEsV0FBV0EsS0FBSyxDQUFDQyxXQUFOLENBQWtCRixrQkFBN0I7QUFBQSxHQUR5QixDQUEzQjs7QUFJQSxNQUFNRyxZQUFZLEdBQUcsU0FBZkEsWUFBZSxDQUFDVixDQUFELEVBQU87QUFDMUJBLElBQUFBLENBQUMsQ0FBQ1csY0FBRjtBQUNBeEIsSUFBQUEsYUFBYSxDQUFDLElBQUQsQ0FBYjs7QUFDQXlCLG1CQUNHQyxHQURILENBQ08sV0FEUCxFQUNvQjtBQUFFQyxNQUFBQSxJQUFJLEVBQUVSLDZCQUE2QjtBQUFyQyxLQURwQixFQUVHUyxJQUZILENBRVEsVUFBQ0MsSUFBRCxFQUFVO0FBQ2QsVUFBSUEsSUFBSSxDQUFDQyxJQUFMLENBQVVDLE1BQVYsS0FBcUIsSUFBekIsRUFBK0I7QUFDN0JDLFFBQUFBLFFBQVEsQ0FDTEMsZ0JBREgsQ0FDb0IsZ0JBRHBCLEVBRUdDLE9BRkgsQ0FFVyxVQUFDQyxDQUFEO0FBQUEsaUJBQVFBLENBQUMsQ0FBQ0MsU0FBRixHQUFjLEVBQXRCO0FBQUEsU0FGWDtBQUlBSixRQUFBQSxRQUFRLENBQ0xDLGdCQURILENBQ29CLGdCQURwQixFQUVHQyxPQUZILENBRVcsVUFBQ0MsQ0FBRDtBQUFBLGlCQUFPQSxDQUFDLENBQUNFLFNBQUYsQ0FBWUMsTUFBWixDQUFtQixlQUFuQixDQUFQO0FBQUEsU0FGWDtBQUdBLFlBQUlYLElBQUksR0FBR1ksSUFBSSxDQUFDQyxLQUFMLENBQVdYLElBQUksQ0FBQ0MsSUFBTCxDQUFVSCxJQUFyQixDQUFYO0FBQ0EsWUFBTWMsVUFBVSxHQUFHN0QsYUFBYSxDQUFDOEQsSUFBZCxDQUFtQixVQUFDN0IsQ0FBRDtBQUFBLGlCQUFPQSxDQUFDLENBQUM3QyxLQUFGLEtBQVkyRCxJQUFJLENBQUM5QyxNQUF4QjtBQUFBLFNBQW5CLENBQW5CO0FBQ0EsWUFBTThELGtCQUFrQixHQUFHNUUscUJBQXFCLENBQUMyRSxJQUF0QixDQUN6QixVQUFDN0IsQ0FBRDtBQUFBLGlCQUFPQSxDQUFDLENBQUM3QyxLQUFGLEtBQVkyRCxJQUFJLENBQUNsQyxnQkFBeEI7QUFBQSxTQUR5QixDQUEzQjtBQUdBLFlBQU1tRCxZQUFZLEdBQUduRSxTQUFTLENBQUNpRSxJQUFWLENBQ25CLFVBQUM3QixDQUFEO0FBQUEsaUJBQU9BLENBQUMsQ0FBQzdDLEtBQUYsS0FBWTJELElBQUksQ0FBQ25DLFNBQXhCO0FBQUEsU0FEbUIsQ0FBckI7QUFJQW1CLFFBQUFBLFNBQVMsQ0FBQ2dCLElBQUQsQ0FBVDtBQUNBN0MsUUFBQUEsU0FBUyxDQUFDMkQsVUFBRCxDQUFUO0FBQ0F6RCxRQUFBQSxpQkFBaUIsQ0FBQzJELGtCQUFELENBQWpCO0FBQ0F6RCxRQUFBQSxXQUFXLENBQUMwRCxZQUFELENBQVg7QUFDQTFDLFFBQUFBLHFCQUFxQixDQUFDLElBQUQsQ0FBckI7QUFDQTJDLFFBQUFBLFVBQVUsQ0FBQyxZQUFNO0FBQ2YzQyxVQUFBQSxxQkFBcUIsQ0FBQyxLQUFELENBQXJCO0FBQ0QsU0FGUyxFQUVQLElBRk8sQ0FBVjtBQUdELE9BekJELE1BeUJPO0FBQ0w4QixRQUFBQSxRQUFRLENBQ0xDLGdCQURILENBQ29CLGdCQURwQixFQUVHQyxPQUZILENBRVcsVUFBQ0MsQ0FBRDtBQUFBLGlCQUFRQSxDQUFDLENBQUNDLFNBQUYsR0FBYyxFQUF0QjtBQUFBLFNBRlg7QUFHQSxZQUFJTCxNQUFNLEdBQUdGLElBQUksQ0FBQ0MsSUFBTCxDQUFVQyxNQUF2Qjs7QUFDQSxhQUFLLElBQU1lLEtBQVgsSUFBb0JmLE1BQXBCLEVBQTRCO0FBQzFCLGNBQUlnQixXQUFXLEdBQUdmLFFBQVEsQ0FBQ2dCLGFBQVQsdUJBQXNDRixLQUF0QyxRQUFsQjtBQUNBLGNBQUlHLE1BQU0sR0FBR0YsV0FBVyxDQUFFRyxPQUFiLENBQXFCLFFBQXJCLENBQWI7QUFDQSxjQUFJQyxTQUFTLEdBQUdGLE1BQU0sQ0FBRUQsYUFBUixDQUFzQixPQUF0QixDQUFoQjtBQUNBRyxVQUFBQSxTQUFTLENBQUVkLFNBQVgsQ0FBcUJlLEdBQXJCLENBQXlCLGVBQXpCO0FBQ0FILFVBQUFBLE1BQU0sQ0FBRUQsYUFBUixDQUFzQixnQkFBdEIsRUFBeUNaLFNBQXpDLEdBQXFEaUIsY0FBSzFFLENBQUwsdUNBQ3BCbUUsS0FEb0IsRUFBckQ7QUFHRDs7QUFDRDVDLFFBQUFBLHFCQUFxQixDQUFDLEtBQUQsQ0FBckI7QUFDRDs7QUFFREYsTUFBQUEsYUFBYSxDQUFDLEtBQUQsQ0FBYjtBQUNELEtBOUNILEVBK0NHc0QsS0EvQ0gsQ0ErQ1MsVUFBQ1IsS0FBRCxFQUFXO0FBQ2hCMUMsTUFBQUEsbUJBQW1CLENBQUMsSUFBRCxDQUFuQjtBQUNBRixNQUFBQSxxQkFBcUIsQ0FBQyxLQUFELENBQXJCO0FBQ0FGLE1BQUFBLGFBQWEsQ0FBQyxLQUFELENBQWI7QUFDQTZDLE1BQUFBLFVBQVUsQ0FBQyxZQUFNO0FBQ2Z6QyxRQUFBQSxtQkFBbUIsQ0FBQyxLQUFELENBQW5CO0FBQ0QsT0FGUyxFQUVQLElBRk8sQ0FBVjtBQUdELEtBdERIO0FBdURELEdBMUREOztBQTREQSx3QkFBVSxZQUFNO0FBQ2QsbUNBQWUscUJBQWYsRUFBc0M7QUFDcENtRCxNQUFBQSxZQUFZLEVBQUVuQztBQURzQixLQUF0QyxFQURjLENBSWQ7O0FBQ0EsUUFBTW9DLEtBQUssR0FBR3hCLFFBQVEsQ0FBQ2dCLGFBQVQsQ0FBdUIsbUJBQXZCLEVBQTZDUyxPQUEzRDtBQUNBaEMsbUJBQU1pQyxRQUFOLENBQWVDLE9BQWYsQ0FBdUJDLE1BQXZCLENBQThCLGNBQTlCLElBQWdESixLQUFoRDtBQUNBL0IsbUJBQU1pQyxRQUFOLENBQWVDLE9BQWYsQ0FBdUJDLE1BQXZCLENBQThCLGNBQTlCLElBQWdELGdCQUFoRDs7QUFDQW5DLG1CQUNHb0MsR0FESCxDQUNPLG9CQURQLEVBRUdqQyxJQUZILENBRVEsVUFBQ0MsSUFBRCxFQUFVO0FBQ2RsQixNQUFBQSxTQUFTLENBQUNrQixJQUFJLENBQUNDLElBQU4sQ0FBVDtBQUNBLFVBQU1XLFVBQVUsR0FBRzdELGFBQWEsQ0FBQzhELElBQWQsQ0FDakIsVUFBQzdCLENBQUQ7QUFBQSxlQUFPQSxDQUFDLENBQUM3QyxLQUFGLEtBQVk2RCxJQUFJLENBQUNDLElBQUwsQ0FBVWpELE1BQTdCO0FBQUEsT0FEaUIsQ0FBbkI7QUFHQSxVQUFNOEQsa0JBQWtCLEdBQUc1RSxxQkFBcUIsQ0FBQzJFLElBQXRCLENBQ3pCLFVBQUM3QixDQUFEO0FBQUEsZUFBT0EsQ0FBQyxDQUFDN0MsS0FBRixLQUFZNkQsSUFBSSxDQUFDQyxJQUFMLENBQVVyQyxnQkFBN0I7QUFBQSxPQUR5QixDQUEzQjtBQUdBLFVBQU1tRCxZQUFZLEdBQUduRSxTQUFTLENBQUNpRSxJQUFWLENBQ25CLFVBQUM3QixDQUFEO0FBQUEsZUFBT0EsQ0FBQyxDQUFDN0MsS0FBRixLQUFZNkQsSUFBSSxDQUFDQyxJQUFMLENBQVV0QyxTQUE3QjtBQUFBLE9BRG1CLENBQXJCO0FBR0FWLE1BQUFBLFNBQVMsQ0FBQzJELFVBQUQsQ0FBVDtBQUNBekQsTUFBQUEsaUJBQWlCLENBQUMyRCxrQkFBRCxDQUFqQjtBQUNBekQsTUFBQUEsV0FBVyxDQUFDMEQsWUFBRCxDQUFYO0FBQ0QsS0FoQkgsRUFpQkdVLEtBakJILENBaUJTLFVBQUNSLEtBQUQ7QUFBQSxhQUFXZ0IsS0FBSyxDQUFDaEIsS0FBRCxDQUFoQjtBQUFBLEtBakJUO0FBa0JELEdBMUJELEVBMEJHLEVBMUJIO0FBNEJBLHNCQUNFLDZCQUFDLG9CQUFELHFCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUErQk8sY0FBSzFFLENBQUwsQ0FBTyw0QkFBUCxDQUEvQixDQURGLGVBRUU7QUFBTSxJQUFBLE1BQU0sRUFBQyxFQUFiO0FBQWdCLElBQUEsUUFBUSxFQUFFLGtCQUFDa0MsQ0FBRDtBQUFBLGFBQU9VLFlBQVksQ0FBQ1YsQ0FBRCxDQUFuQjtBQUFBO0FBQTFCLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDR3dDLGNBQUsxRSxDQUFMLENBQU8sdUNBQVAsQ0FESCxDQURGLGVBSUU7QUFBUyxJQUFBLFNBQVMsRUFBQztBQUFuQixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQ0cwRSxjQUFLMUUsQ0FBTCxDQUFPLGlDQUFQLENBREgsQ0FERixlQUlFO0FBQ0UsSUFBQSxJQUFJLEVBQUMsTUFEUDtBQUVFLElBQUEsU0FBUyxFQUFDLFVBRlo7QUFHRSxJQUFBLElBQUksRUFBRSxZQUhSO0FBSUUsSUFBQSxLQUFLLEVBQUUrQixNQUFNLENBQUN0QixVQUpoQjtBQUtFLElBQUEsUUFBUSxFQUFFLGtCQUFDeUIsQ0FBRDtBQUFBLGFBQU9ELGNBQWMsQ0FBQ0MsQ0FBRCxDQUFyQjtBQUFBO0FBTFosSUFKRixlQVdFO0FBQUcsSUFBQSxTQUFTLEVBQUU7QUFBZCxJQVhGLENBREYsZUFjRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQ0d3QyxjQUFLMUUsQ0FBTCxDQUFPLGdDQUFQLENBREgsQ0FERixlQUlFO0FBQ0UsSUFBQSxJQUFJLEVBQUMsTUFEUDtBQUVFLElBQUEsU0FBUyxFQUFDLFVBRlo7QUFHRSxJQUFBLElBQUksRUFBRSxXQUhSO0FBSUUsSUFBQSxLQUFLLEVBQUUrQixNQUFNLENBQUNyQixTQUpoQjtBQUtFLElBQUEsUUFBUSxFQUFFLGtCQUFDd0IsQ0FBRDtBQUFBLGFBQU9ELGNBQWMsQ0FBQ0MsQ0FBRCxDQUFyQjtBQUFBO0FBTFosSUFKRixlQVdFO0FBQUcsSUFBQSxTQUFTLEVBQUU7QUFBZCxJQVhGLENBZEYsZUEyQkU7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNHd0MsY0FBSzFFLENBQUwsQ0FBTyw0QkFBUCxDQURILENBREYsZUFJRTtBQUNFLElBQUEsUUFBUSxFQUFFLElBRFo7QUFFRSxJQUFBLElBQUksRUFBQyxNQUZQO0FBR0UsSUFBQSxTQUFTLEVBQUMsVUFIWjtBQUlFLElBQUEsSUFBSSxFQUFFLE9BSlI7QUFLRSxJQUFBLEtBQUssRUFBRStCLE1BQU0sQ0FBQ25CO0FBTGhCLElBSkYsZUFXRTtBQUFHLElBQUEsU0FBUyxFQUFFO0FBQWQsSUFYRixDQTNCRixlQXdDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQ0c4RCxjQUFLMUUsQ0FBTCxDQUFPLDRCQUFQLENBREgsQ0FERixlQUlFLDZCQUFDLHdCQUFEO0FBQ0UsSUFBQSxPQUFPLEVBQUUsSUFEWDtBQUVFLElBQUEsWUFBWSxFQUFFMEUsY0FBSzFFLENBQUwsQ0FBTyxXQUFQLENBRmhCO0FBR0UsSUFBQSxVQUFVLEVBQUMsYUFIYjtBQUlFLElBQUEsY0FBYyxFQUFDLFVBSmpCO0FBS0UsSUFBQSxXQUFXLEVBQUMsVUFMZDtBQU1FLElBQUEsYUFBYSxFQUFDLGdCQU5oQjtBQU9FLElBQUEsS0FBSyxFQUFFK0IsTUFBTSxDQUFDcEIsS0FQaEI7QUFRRSxJQUFBLFlBQVksTUFSZDtBQVNFLElBQUEsaUJBQWlCLEVBQUUrRCxjQUFLMUUsQ0FBTCxDQUFPLFFBQVAsQ0FUckI7QUFVRSxJQUFBLG1CQUFtQixFQUFFLEtBVnZCO0FBV0UsSUFBQSxRQUFRLEVBQUUsa0JBQUNYLEtBQUQsRUFBVztBQUNuQjRDLE1BQUFBLGNBQWMsQ0FBQzVDLEtBQUQsQ0FBZDtBQUNELEtBYkg7QUFjRSxJQUFBLFVBQVUsRUFBRTtBQUFFa0QsTUFBQUEsSUFBSSxFQUFFO0FBQVI7QUFkZCxJQUpGLGVBb0JFO0FBQUcsSUFBQSxTQUFTLEVBQUU7QUFBZCxJQXBCRixDQXhDRixlQThERTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0U7QUFDRSxJQUFBLFNBQVMsRUFBQyxpQkFEWjtBQUVFLElBQUEsT0FBTyxFQUFFO0FBQUEsYUFBTXBCLG9CQUFvQixDQUFDLElBQUQsQ0FBMUI7QUFBQTtBQUZYLGtCQUlFLDZCQUFDLG1CQUFEO0FBQVEsSUFBQSxLQUFLLEVBQUMsTUFBZDtBQUFxQixJQUFBLE1BQU0sRUFBQyxNQUE1QjtBQUFtQyxJQUFBLElBQUksRUFBQztBQUF4QyxJQUpGLEVBS0csSUFMSCxFQU1HdUQsY0FBSzFFLENBQUwsQ0FBTyxzQ0FBUCxDQU5ILENBREYsQ0E5REYsQ0FKRixlQTZFRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FBd0IwRSxjQUFLMUUsQ0FBTCxDQUFPLCtCQUFQLENBQXhCLENBN0VGLGVBOEVFO0FBQVMsSUFBQSxTQUFTLEVBQUM7QUFBbkIsa0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNHMEUsY0FBSzFFLENBQUwsQ0FBTyxnQ0FBUCxDQURILE1BREYsZUFJRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0UsNkJBQUMsY0FBRDtBQUNFLElBQUEsUUFBUSxFQUFFTyxXQURaO0FBRUUsSUFBQSxLQUFLLEVBQUVELFFBRlQ7QUFHRSxJQUFBLE9BQU8sRUFBRVIsU0FIWDtBQUlFLElBQUEsZUFBZTtBQUpqQixJQURGLENBSkYsQ0FERixlQWNFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDRzRFLGNBQUsxRSxDQUFMLENBQU8sdUNBQVAsQ0FESCxNQURGLGVBSUU7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLGtCQUNFLDZCQUFDLGNBQUQ7QUFDRSxJQUFBLE9BQU8sRUFBRVoscUJBRFg7QUFFRSxJQUFBLEtBQUssRUFBRWdCLGNBRlQ7QUFHRSxJQUFBLFFBQVEsRUFBRUMsaUJBSFo7QUFJRSxJQUFBLGVBQWU7QUFKakIsSUFERixDQUpGLGVBWUU7QUFBSyxJQUFBLFNBQVMsRUFBRTtBQUFoQixLQUNHRCxjQUFjLEtBQUtnRixTQUFuQixJQUNDLElBQUlDLElBQUosR0FBV0Msa0JBQVgsQ0FBOEIsT0FBOUIsRUFBdUNsRixjQUFjLENBQUNiLE1BQXRELENBRkosQ0FaRixDQWRGLGVBK0JFO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixrQkFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDR21GLGNBQUsxRSxDQUFMLENBQU8sK0JBQVAsQ0FESCxNQURGLGVBSUU7QUFBSyxJQUFBLFNBQVMsRUFBRTtBQUFoQixrQkFDRSw2QkFBQyxjQUFEO0FBQ0UsSUFBQSxPQUFPLEVBQUVDLGFBRFg7QUFFRSxJQUFBLEtBQUssRUFBRUMsTUFGVDtBQUdFLElBQUEsUUFBUSxFQUFFQyxTQUhaO0FBSUUsSUFBQSxlQUFlO0FBSmpCLElBREYsQ0FKRixDQS9CRixlQTRDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsS0FDRzRCLE1BQU0sQ0FBQ2hCLGFBQVAsS0FBeUIsRUFBekIsaUJBQ0M7QUFBRyxJQUFBLFNBQVMsRUFBQyxVQUFiO0FBQXdCLElBQUEsT0FBTyxFQUFFO0FBQUEsYUFBTUUsaUJBQWlCLENBQUMsSUFBRCxDQUF2QjtBQUFBO0FBQWpDLEtBQ0d5RCxjQUFLMUUsQ0FBTCxDQUFPLDBDQUFQLENBREgsQ0FGSixFQU1HK0IsTUFBTSxDQUFDaEIsYUFBUCxLQUF5QixFQUF6QixpQkFDQyx5RUFDRTtBQUFLLElBQUEsU0FBUyxFQUFDO0FBQWYsa0JBQ0U7QUFBSyxJQUFBLFNBQVMsRUFBQztBQUFmLEtBQ0cyRCxjQUFLMUUsQ0FBTCxDQUFPLG9DQUFQLENBREgsZUFFRTtBQUNFLElBQUEsU0FBUyxFQUFDLE9BRFo7QUFFRSxJQUFBLE9BQU8sRUFBRTtBQUFBLGFBQU1pQixpQkFBaUIsQ0FBQyxJQUFELENBQXZCO0FBQUE7QUFGWCxrQkFJRSw2QkFBQyxtQkFBRDtBQUFRLElBQUEsS0FBSyxFQUFDLE1BQWQ7QUFBcUIsSUFBQSxNQUFNLEVBQUMsTUFBNUI7QUFBbUMsSUFBQSxJQUFJLEVBQUM7QUFBeEMsSUFKRixFQUl1RCxHQUp2RCxFQUtHeUQsY0FBSzFFLENBQUwsQ0FBTyxrQ0FBUCxDQUxILENBRkYsQ0FERixlQVdFO0FBQUssSUFBQSxTQUFTLEVBQUU7QUFBaEIsa0JBQ0U7QUFDRSxJQUFBLFFBQVEsRUFBRSxJQURaO0FBRUUsSUFBQSxJQUFJLEVBQUMsTUFGUDtBQUdFLElBQUEsU0FBUyxFQUFDLFVBSFo7QUFJRSxJQUFBLElBQUksRUFBRSxlQUpSO0FBS0UsSUFBQSxLQUFLLEVBQUUrQixNQUFNLENBQUNoQjtBQUxoQixJQURGLGVBUUU7QUFDRSxJQUFBLFNBQVMsRUFBRSx3Q0FEYjtBQUVFLElBQUEsT0FBTyxFQUFFLGlCQUFDbUIsQ0FBRCxFQUFPO0FBQ2RGLE1BQUFBLFNBQVMsQ0FBQyxVQUFDSyxTQUFEO0FBQUEsMkVBQ0xBLFNBREs7QUFFUnRCLFVBQUFBLGFBQWEsRUFBRTtBQUZQO0FBQUEsT0FBRCxDQUFUO0FBSUQ7QUFQSCxrQkFTRSw2QkFBQyxzQkFBRCxPQVRGLENBUkYsQ0FYRixlQStCRTtBQUFHLElBQUEsU0FBUyxFQUFFO0FBQWQsSUEvQkYsQ0FERixlQWtDRSx1REFDRTtBQUNFLElBQUEsU0FBUyxFQUFFLGVBRGI7QUFFRSxJQUFBLE9BQU8sRUFBRSxtQkFBTTtBQUNiK0IscUJBQ0dvQyxHQURILHFDQUVHakMsSUFGSCxDQUVRLFVBQUNDLElBQUQsRUFBVTtBQUNkcEIsUUFBQUEsOEJBQThCLENBQUM7QUFDN0JILFVBQUFBLE1BQU0sRUFDSnVCLElBQUksQ0FBQ0MsSUFBTCxDQUFVeEIsTUFBVixDQUFpQixDQUFqQixFQUFvQjRELFdBQXBCLEtBQ0FyQyxJQUFJLENBQUNDLElBQUwsQ0FBVXhCLE1BQVYsQ0FBaUI2RCxTQUFqQixDQUEyQixDQUEzQixDQUgyQjtBQUk3QjVELFVBQUFBLE9BQU8sRUFBRXNCLElBQUksQ0FBQ0MsSUFBTCxDQUFVdkIsT0FKVTtBQUs3QkYsVUFBQUEsSUFBSSxFQUFFO0FBTHVCLFNBQUQsQ0FBOUI7QUFPQXdDLFFBQUFBLFVBQVUsQ0FBQyxZQUFNO0FBQ2ZwQyxVQUFBQSw4QkFBOEIsQ0FBQztBQUM3QkgsWUFBQUEsTUFBTSxFQUFFLEVBRHFCO0FBRTdCQyxZQUFBQSxPQUFPLEVBQUUsRUFGb0I7QUFHN0JGLFlBQUFBLElBQUksRUFBRTtBQUh1QixXQUFELENBQTlCO0FBS0QsU0FOUyxFQU1QLElBTk8sQ0FBVjtBQU9ELE9BakJILEVBa0JHaUQsS0FsQkgsQ0FrQlMsVUFBQ1IsS0FBRDtBQUFBLGVBQVdnQixLQUFLLENBQUNoQixLQUFELENBQWhCO0FBQUEsT0FsQlQ7QUFtQkQ7QUF0QkgsS0F3QkcsQ0FBQ3RDLDJCQUEyQixDQUFDSCxJQUE3QixJQUNDZ0QsY0FBSzFFLENBQUwsQ0FBTyw0Q0FBUCxDQXpCSixFQTBCRzZCLDJCQUEyQixDQUFDSCxJQUE1QixJQUNDRywyQkFBMkIsQ0FBQ0YsTUEzQmhDLENBREYsQ0FsQ0YsQ0FQSixDQTVDRixDQTlFRixlQXNNRTtBQUFRLElBQUEsSUFBSSxFQUFFLFFBQWQ7QUFBd0IsSUFBQSxTQUFTLEVBQUUsTUFBbkM7QUFBMkMsSUFBQSxRQUFRLEVBQUVQO0FBQXJELEtBQ0csQ0FBQ0EsVUFBRCxJQUNDLENBQUNFLGtCQURGLElBRUMsQ0FBQ0UsZ0JBRkYsSUFHQ2tELGNBQUsxRSxDQUFMLENBQU8sNkJBQVAsQ0FKSixFQUtHb0IsVUFBVSxJQUNULENBQUNFLGtCQURGLElBRUMsQ0FBQ0UsZ0JBRkYsSUFHQ2tELGNBQUsxRSxDQUFMLENBQU8saUNBQVAsQ0FSSixFQVNHc0Isa0JBQWtCLElBQUlvRCxjQUFLMUUsQ0FBTCxDQUFPLDhCQUFQLENBVHpCLEVBVUd3QixnQkFBZ0IsSUFBSWtELGNBQUsxRSxDQUFMLENBQU8sNEJBQVAsQ0FWdkIsQ0F0TUYsQ0FERixDQUZGLEVBd05Ha0IsaUJBQWlCLGlCQUNoQiw2QkFBQyw0QkFBRDtBQUNFLElBQUEsS0FBSyxFQUFFO0FBQUEsYUFBTUMsb0JBQW9CLENBQUMsS0FBRCxDQUExQjtBQUFBLEtBRFQ7QUFFRSxJQUFBLElBQUksRUFBRSxnQkFBTSxDQUFFO0FBRmhCLElBek5KLEVBOE5HSCxjQUFjLGlCQUNiLDZCQUFDLDRCQUFEO0FBQ0UsSUFBQSxLQUFLLEVBQUU7QUFBQSxhQUFNQyxpQkFBaUIsQ0FBQyxLQUFELENBQXZCO0FBQUEsS0FEVDtBQUVFLElBQUEsY0FBYyxFQUFFZ0IsY0FGbEI7QUFHRSxJQUFBLFlBQVksRUFBRVc7QUFIaEIsSUEvTkosQ0FERjtBQXdPRCxDQTNiTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgU2VsZWN0IH0gZnJvbSAnc3JjL2NvbXBvbmVudHMvQ3VzdG9tSW5wdXRzL1NlbGVjdC9TZWxlY3QnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IFBhc3N3b3JkTW9kYWwgfSBmcm9tICcuL1Bhc3N3b3JkTW9kYWwvUGFzc3dvcmRNb2RhbCc7XG5pbXBvcnQgeyBSZWFjdENvbXBvbmVudCBhcyBQZW5TdmcgfSBmcm9tICcuL3Blbi5zdmcnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgQ2FuY2VsIH0gZnJvbSAnLi9jYW5jZWwuc3ZnJztcbmltcG9ydCBQaG9uZUlucHV0IGZyb20gJ3JlYWN0LXBob25lLWlucHV0LTInO1xuaW1wb3J0ICdyZWFjdC1waG9uZS1pbnB1dC0yL2xpYi9zdHlsZS5jc3MnO1xuaW1wb3J0IHsgVGVsZWdyYW1Nb2RhbCB9IGZyb20gJy4vVGVsZWdyYW1Nb2RhbC9UZWxlZ3JhbU1vZGFsJztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgeyBDb250YWluZXIgfSBmcm9tICcuL0NvbnRhaW5lcic7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudC10aW1lem9uZSc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJy4uLy4uL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmV4cG9ydCBjb25zdCBQcm9maWxlUGFnZSA9ICgpID0+IHtcbiAgY29uc3QgdGltZXpvbmVzQXJyYXkgPSBtb21lbnQudHoubmFtZXMoKTtcbiAgY29uc3QgZGF0ZVRpbWVGb3JtYXRPcHRpb25zID0gW1xuICAgIHtcbiAgICAgIHZhbHVlOiAndXMnLFxuICAgICAgbGFiZWw6ICdVbml0ZWQgU3RhdGVzJyxcbiAgICAgIGZvcm1hdDoge1xuICAgICAgICBtb250aDogJ3Nob3J0JyxcbiAgICAgICAgZGF5OiAnbnVtZXJpYycsXG4gICAgICAgIHllYXI6ICdudW1lcmljJyxcbiAgICAgICAgaG91cjogJ251bWVyaWMnLFxuICAgICAgICBtaW51dGU6ICdudW1lcmljJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICB2YWx1ZTogJ2V1JyxcbiAgICAgIGxhYmVsOiAnRXVyb3BlJyxcbiAgICAgIGZvcm1hdDoge1xuICAgICAgICBkYXk6ICdudW1lcmljJyxcbiAgICAgICAgbW9udGg6ICdudW1lcmljJyxcbiAgICAgICAgeWVhcjogJ251bWVyaWMnLFxuICAgICAgICBob3VyOiAnbnVtZXJpYycsXG4gICAgICAgIG1pbnV0ZTogJ251bWVyaWMnLFxuICAgICAgICBob3VyMTI6IGZhbHNlLFxuICAgICAgfSxcbiAgICB9LFxuICBdO1xuXG4gIGNvbnN0IHRpbWV6b25lcyA9IHRpbWV6b25lc0FycmF5Lm1hcCgodCkgPT4ge1xuICAgIHJldHVybiB7IHZhbHVlOiB0LCBsYWJlbDogdCB9O1xuICB9KTtcblxuICBjb25zdCBsb2NhbGVPcHRpb25zID0gW1xuICAgIHsgdmFsdWU6ICdlbicsIGxhYmVsOiAnRW5nbGlzaCcgfSxcbiAgICB7IHZhbHVlOiAnaGUnLCBsYWJlbDogJ0hlYnJldycgfSxcbiAgICB7IHZhbHVlOiAnaXQnLCBsYWJlbDogJ0l0YWx5JyB9LFxuICAgIHsgdmFsdWU6ICdmcicsIGxhYmVsOiAnRnJhbmNlJyB9LFxuICBdO1xuXG4gIGNvbnN0IFtsb2NhbGUsIHNldExvY2FsZV0gPSB1c2VTdGF0ZTx7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICB9Pihsb2NhbGVPcHRpb25zWzBdKTtcblxuICBjb25zdCBbZGF0ZVRpbWVGb3JtYXQsIHNldERhdGVUaW1lRm9ybWF0XSA9IHVzZVN0YXRlPHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgZm9ybWF0OiBvYmplY3Q7XG4gIH0+KGRhdGVUaW1lRm9ybWF0T3B0aW9uc1swXSk7XG5cbiAgY29uc3QgW3RpbWV6b25lLCBzZXRUaW1lem9uZV0gPSB1c2VTdGF0ZTx7XG4gICAgdmFsdWU6IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICB9Pih0aW1lem9uZXNbMjBdKTtcblxuICBjb25zdCBpbml0aWFsUGFyYW1zU3RhdGUgPSB7XG4gICAgZmlyc3RfbmFtZTogJycsXG4gICAgbGFzdF9uYW1lOiAnJyxcbiAgICBwaG9uZTogJycsXG4gICAgZW1haWw6ICcnLFxuICAgIHRpbWVfem9uZTogJycsXG4gICAgZGF0ZV90aW1lX2Zvcm1hdDogJycsXG4gICAgbG9jYWxlOiAnJyxcbiAgICB0ZWxlZ3JhbV9uYW1lOiAnJyxcbiAgfTtcblxuICBjb25zdCBbaXNUZWxlZ3JhbU9wZW4sIHNldElzVGVsZWdyYW1PcGVuXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3Nob3dQYXNzd29yZE1vZGFsLCBzZXRTaG93UGFzc3dvcmRNb2RhbF0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IFtzdWJtaXR0aW5nLCBzZXRTdWJtaXR0aW5nXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3Nob3dTdWNjZXNzTWVzc2FnZSwgc2V0U2hvd1N1Y2Nlc3NNZXNzYWdlXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3Nob3dFcnJvck1lc3NhZ2UsIHNldFNob3dFcnJvck1lc3NhZ2VdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdCBbc2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlLCBzZXRTaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2VdID1cbiAgICB1c2VTdGF0ZTx7XG4gICAgICBzaG93OiBib29sZWFuO1xuICAgICAgc3RhdHVzOiBzdHJpbmc7XG4gICAgICBtZXNzYWdlOiBzdHJpbmc7XG4gICAgfT4oe1xuICAgICAgc2hvdzogZmFsc2UsXG4gICAgICBzdGF0dXM6ICcnLFxuICAgICAgbWVzc2FnZTogJycsXG4gICAgfSk7XG4gIGNvbnN0IFtwYXJhbXMsIHNldFBhcmFtc10gPSB1c2VTdGF0ZTx7XG4gICAgZmlyc3RfbmFtZTogc3RyaW5nO1xuICAgIGxhc3RfbmFtZTogc3RyaW5nO1xuICAgIHBob25lOiBzdHJpbmc7XG4gICAgZW1haWw6IHN0cmluZztcbiAgICB0aW1lX3pvbmU6IHN0cmluZztcbiAgICBkYXRlX3RpbWVfZm9ybWF0OiBzdHJpbmc7XG4gICAgbG9jYWxlOiBzdHJpbmc7XG4gICAgdGVsZWdyYW1fbmFtZTogc3RyaW5nO1xuICB9Pihpbml0aWFsUGFyYW1zU3RhdGUpO1xuXG4gIGNvbnN0IGhhbmRsZU9uQ2hhbmdlID0gKGUpID0+IHtcbiAgICBpZiAodHlwZW9mIGUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoZS5zdGFydHNXaXRoKCc5NzIwJykpIHtcbiAgICAgICAgZSA9IGUucmVwbGFjZSgvKDk3MjApL2csICc5NzInKTtcbiAgICAgIH1cbiAgICAgIHNldFBhcmFtcygocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgIHBob25lOiBlLFxuICAgICAgfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBuYW1lIH0gPSBlLnRhcmdldDtcbiAgICAgIHNldFBhcmFtcygocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAuLi5wcmV2U3RhdGUsXG4gICAgICAgIFtuYW1lXTogdmFsdWUsXG4gICAgICB9KSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldFBhcmFtc1dpdGhBZ2dyZWdhdGVkVmFsdWVzID0gKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBkYXRlX3RpbWVfZm9ybWF0OiBkYXRlVGltZUZvcm1hdC52YWx1ZSxcbiAgICAgIGxvY2FsZTogbG9jYWxlLnZhbHVlLFxuICAgICAgdGltZV96b25lOiB0aW1lem9uZS52YWx1ZSxcbiAgICB9O1xuICB9O1xuXG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5TmFtZSA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlOYW1lLFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChlKSA9PiB7XG4gICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHNldFN1Ym1pdHRpbmcodHJ1ZSk7XG4gICAgYXhpb3NcbiAgICAgIC5wdXQoJy9wcm9maWxlcycsIHsgdXNlcjogZ2V0UGFyYW1zV2l0aEFnZ3JlZ2F0ZWRWYWx1ZXMoKSB9KVxuICAgICAgLnRoZW4oKHJlc3ApID0+IHtcbiAgICAgICAgaWYgKHJlc3AuZGF0YS5lcnJvcnMgPT09IG51bGwpIHtcbiAgICAgICAgICBkb2N1bWVudFxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoJy5lcnJvci1tZXNzYWdlJylcbiAgICAgICAgICAgIC5mb3JFYWNoKChwKSA9PiAocC5pbm5lckhUTUwgPSAnJykpO1xuXG4gICAgICAgICAgZG9jdW1lbnRcbiAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKCcuaW52YWxpZC1maWVsZCcpXG4gICAgICAgICAgICAuZm9yRWFjaCgocCkgPT4gcC5jbGFzc0xpc3QucmVtb3ZlKCdpbnZhbGlkLWZpZWxkJykpO1xuICAgICAgICAgIGxldCB1c2VyID0gSlNPTi5wYXJzZShyZXNwLmRhdGEudXNlcik7XG4gICAgICAgICAgY29uc3QgZmluZExvY2FsZSA9IGxvY2FsZU9wdGlvbnMuZmluZCgoZSkgPT4gZS52YWx1ZSA9PT0gdXNlci5sb2NhbGUpO1xuICAgICAgICAgIGNvbnN0IGZpbmREYXRlVGltZUZvcm1hdCA9IGRhdGVUaW1lRm9ybWF0T3B0aW9ucy5maW5kKFxuICAgICAgICAgICAgKGUpID0+IGUudmFsdWUgPT09IHVzZXIuZGF0ZV90aW1lX2Zvcm1hdCxcbiAgICAgICAgICApO1xuICAgICAgICAgIGNvbnN0IGZpbmRUaW1lem9uZSA9IHRpbWV6b25lcy5maW5kKFxuICAgICAgICAgICAgKGUpID0+IGUudmFsdWUgPT09IHVzZXIudGltZV96b25lLFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBzZXRQYXJhbXModXNlcik7XG4gICAgICAgICAgc2V0TG9jYWxlKGZpbmRMb2NhbGUhKTtcbiAgICAgICAgICBzZXREYXRlVGltZUZvcm1hdChmaW5kRGF0ZVRpbWVGb3JtYXQhKTtcbiAgICAgICAgICBzZXRUaW1lem9uZShmaW5kVGltZXpvbmUhKTtcbiAgICAgICAgICBzZXRTaG93U3VjY2Vzc01lc3NhZ2UodHJ1ZSk7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBzZXRTaG93U3VjY2Vzc01lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgIH0sIDYwMDApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGRvY3VtZW50XG4gICAgICAgICAgICAucXVlcnlTZWxlY3RvckFsbCgnLmVycm9yLW1lc3NhZ2UnKVxuICAgICAgICAgICAgLmZvckVhY2goKHApID0+IChwLmlubmVySFRNTCA9ICcnKSk7XG4gICAgICAgICAgbGV0IGVycm9ycyA9IHJlc3AuZGF0YS5lcnJvcnM7XG4gICAgICAgICAgZm9yIChjb25zdCBlcnJvciBpbiBlcnJvcnMpIHtcbiAgICAgICAgICAgIGxldCBmaW5kRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYGlucHV0W25hbWU9JyR7ZXJyb3J9J11gKTtcbiAgICAgICAgICAgIGxldCBwYXJlbnQgPSBmaW5kRWxlbWVudCEuY2xvc2VzdCgnLmZpZWxkJyk7XG4gICAgICAgICAgICBsZXQgZmluZElucHV0ID0gcGFyZW50IS5xdWVyeVNlbGVjdG9yKCdpbnB1dCcpO1xuICAgICAgICAgICAgZmluZElucHV0IS5jbGFzc0xpc3QuYWRkKCdpbnZhbGlkLWZpZWxkJyk7XG4gICAgICAgICAgICBwYXJlbnQhLnF1ZXJ5U2VsZWN0b3IoJy5lcnJvci1tZXNzYWdlJykhLmlubmVySFRNTCA9IGkxOG4udChcbiAgICAgICAgICAgICAgYGRhc2hib2FyZF92Mi5wcm9maWxlLmVycm9ycy4ke2Vycm9yfWAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzZXRTaG93U3VjY2Vzc01lc3NhZ2UoZmFsc2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgc2V0U3VibWl0dGluZyhmYWxzZSk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICBzZXRTaG93RXJyb3JNZXNzYWdlKHRydWUpO1xuICAgICAgICBzZXRTaG93U3VjY2Vzc01lc3NhZ2UoZmFsc2UpO1xuICAgICAgICBzZXRTdWJtaXR0aW5nKGZhbHNlKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgc2V0U2hvd0Vycm9yTWVzc2FnZShmYWxzZSk7XG4gICAgICAgIH0sIDYwMDApO1xuICAgICAgfSk7XG4gIH07XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBhbmFseXRpY3NUcmFjaygnVmlld2VkIFByb2ZpbGUgUGFnZScsIHtcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIC8vIEB0cy1pZ25vcmVcbiAgICBjb25zdCB0b2tlbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tuYW1lPWNzcmYtdG9rZW5dJykhLmNvbnRlbnQ7XG4gICAgYXhpb3MuZGVmYXVsdHMuaGVhZGVycy5jb21tb25bJ1gtQ1NSRi1UT0tFTiddID0gdG9rZW47XG4gICAgYXhpb3MuZGVmYXVsdHMuaGVhZGVycy5jb21tb25bJ0NvbnRlbnQtVHlwZSddID0gJ2FwcGxpY2F0aW9uL2pzJztcbiAgICBheGlvc1xuICAgICAgLmdldCgnL3Byb2ZpbGVzL3Jlc291cmNlJylcbiAgICAgIC50aGVuKChyZXNwKSA9PiB7XG4gICAgICAgIHNldFBhcmFtcyhyZXNwLmRhdGEpO1xuICAgICAgICBjb25zdCBmaW5kTG9jYWxlID0gbG9jYWxlT3B0aW9ucy5maW5kKFxuICAgICAgICAgIChlKSA9PiBlLnZhbHVlID09PSByZXNwLmRhdGEubG9jYWxlLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBmaW5kRGF0ZVRpbWVGb3JtYXQgPSBkYXRlVGltZUZvcm1hdE9wdGlvbnMuZmluZChcbiAgICAgICAgICAoZSkgPT4gZS52YWx1ZSA9PT0gcmVzcC5kYXRhLmRhdGVfdGltZV9mb3JtYXQsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGZpbmRUaW1lem9uZSA9IHRpbWV6b25lcy5maW5kKFxuICAgICAgICAgIChlKSA9PiBlLnZhbHVlID09PSByZXNwLmRhdGEudGltZV96b25lLFxuICAgICAgICApO1xuICAgICAgICBzZXRMb2NhbGUoZmluZExvY2FsZSEpO1xuICAgICAgICBzZXREYXRlVGltZUZvcm1hdChmaW5kRGF0ZVRpbWVGb3JtYXQhKTtcbiAgICAgICAgc2V0VGltZXpvbmUoZmluZFRpbWV6b25lISk7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4gYWxlcnQoZXJyb3IpKTtcbiAgfSwgW10pO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnRhaW5lcj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaGVhZGVyLXRpdGxlXCI+e2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUudGl0bGUnKX08L2Rpdj5cbiAgICAgIDxmb3JtIGFjdGlvbj1cIlwiIG9uU3VibWl0PXsoZSkgPT4gaGFuZGxlU3VibWl0KGUpfT5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJjb250ZW50XCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0aXRsZVwiPlxuICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUucGVyc29uYWwtZGV0YWlscycpfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cInBlcnNvbmFsXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5maXJzdF9uYW1lJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibXktaW5wdXRcIlxuICAgICAgICAgICAgICAgIG5hbWU9eydmaXJzdF9uYW1lJ31cbiAgICAgICAgICAgICAgICB2YWx1ZT17cGFyYW1zLmZpcnN0X25hbWV9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBoYW5kbGVPbkNoYW5nZShlKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXsnZXJyb3ItbWVzc2FnZSd9PjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUubGFzdF9uYW1lJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibXktaW5wdXRcIlxuICAgICAgICAgICAgICAgIG5hbWU9eydsYXN0X25hbWUnfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMubGFzdF9uYW1lfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsoZSkgPT4gaGFuZGxlT25DaGFuZ2UoZSl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Vycm9yLW1lc3NhZ2UnfT48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGQgZmllbGQtLXJlYWRvbmx5XCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5lbWFpbCcpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgcmVhZE9ubHk9e3RydWV9XG4gICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm15LWlucHV0XCJcbiAgICAgICAgICAgICAgICBuYW1lPXsnZW1haWwnfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMuZW1haWx9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Vycm9yLW1lc3NhZ2UnfT48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnBob25lJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8UGhvbmVJbnB1dFxuICAgICAgICAgICAgICAgIGNvdW50cnk9eydpbCd9XG4gICAgICAgICAgICAgICAgbG9jYWxpemF0aW9uPXtpMThuLnQoJ2NvdW50cmllcycpfVxuICAgICAgICAgICAgICAgIGlucHV0Q2xhc3M9XCJwaG9uZS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgY29udGFpbmVyQ2xhc3M9XCJteS1waG9uZVwiXG4gICAgICAgICAgICAgICAgYnV0dG9uQ2xhc3M9XCJkcm9wZG93blwiXG4gICAgICAgICAgICAgICAgZHJvcGRvd25DbGFzcz1cInBob25lLWRyb3Bkb3duXCJcbiAgICAgICAgICAgICAgICB2YWx1ZT17cGFyYW1zLnBob25lfVxuICAgICAgICAgICAgICAgIGVuYWJsZVNlYXJjaFxuICAgICAgICAgICAgICAgIHNlYXJjaFBsYWNlaG9sZGVyPXtpMThuLnQoJ3NlYXJjaCcpfVxuICAgICAgICAgICAgICAgIGNvdW50cnlDb2RlRWRpdGFibGU9e2ZhbHNlfVxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXsodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgICAgIGhhbmRsZU9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIGlucHV0UHJvcHM9e3sgbmFtZTogJ3Bob25lJyB9fVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9eydlcnJvci1tZXNzYWdlJ30+PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJjaGFuZ2UtcGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldFNob3dQYXNzd29yZE1vZGFsKHRydWUpfVxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPFBlblN2ZyB3aWR0aD1cIjEycHhcIiBoZWlnaHQ9XCIxMnB4XCIgZmlsbD1cIiNmMDEzNGNcIiAvPlxuICAgICAgICAgICAgICAgIHsnICAnfVxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmNoYW5nZS1wYXNzd29yZCcpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+e2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuc2V0dGluZ3MnKX08L2Rpdj5cbiAgICAgICAgICA8c2VjdGlvbiBjbGFzc05hbWU9XCJzZXR0aW5nc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUudGltZS16b25lJyl9KlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJteS1pbnB1dFwiPlxuICAgICAgICAgICAgICAgIDxTZWxlY3RcbiAgICAgICAgICAgICAgICAgIHNldFZhbHVlPXtzZXRUaW1lem9uZX1cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXt0aW1lem9uZX1cbiAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e3RpbWV6b25lc31cbiAgICAgICAgICAgICAgICAgIGNhbmNlbFRleHRXaWR0aFxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5kYXRlLXRpbWUtZm9ybWF0Jyl9KlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJteS1pbnB1dFwiPlxuICAgICAgICAgICAgICAgIDxTZWxlY3RcbiAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e2RhdGVUaW1lRm9ybWF0T3B0aW9uc31cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtkYXRlVGltZUZvcm1hdH1cbiAgICAgICAgICAgICAgICAgIHNldFZhbHVlPXtzZXREYXRlVGltZUZvcm1hdH1cbiAgICAgICAgICAgICAgICAgIGNhbmNlbFRleHRXaWR0aFxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J2RhdGUtdGltZS1mb3JtYXQnfT5cbiAgICAgICAgICAgICAgICB7ZGF0ZVRpbWVGb3JtYXQgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgICAgbmV3IERhdGUoKS50b0xvY2FsZURhdGVTdHJpbmcoJ2VuLVVTJywgZGF0ZVRpbWVGb3JtYXQuZm9ybWF0KX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmxhbmd1YWdlJyl9KlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9eydteS1pbnB1dCd9PlxuICAgICAgICAgICAgICAgIDxTZWxlY3RcbiAgICAgICAgICAgICAgICAgIG9wdGlvbnM9e2xvY2FsZU9wdGlvbnN9XG4gICAgICAgICAgICAgICAgICB2YWx1ZT17bG9jYWxlfVxuICAgICAgICAgICAgICAgICAgc2V0VmFsdWU9e3NldExvY2FsZX1cbiAgICAgICAgICAgICAgICAgIGNhbmNlbFRleHRXaWR0aFxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkIGZpZWxkLS1idXR0b25zXCI+XG4gICAgICAgICAgICAgIHtwYXJhbXMudGVsZWdyYW1fbmFtZSA9PT0gJycgJiYgKFxuICAgICAgICAgICAgICAgIDxhIGNsYXNzTmFtZT1cInRlbGVncmFtXCIgb25DbGljaz17KCkgPT4gc2V0SXNUZWxlZ3JhbU9wZW4odHJ1ZSl9PlxuICAgICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuY29ubmVjdC10by10ZWxlZ3JhbScpfVxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAge3BhcmFtcy50ZWxlZ3JhbV9uYW1lICE9PSAnJyAmJiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnRlbGVncmFtX25hbWUnKX1cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJyaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRJc1RlbGVncmFtT3Blbih0cnVlKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8UGVuU3ZnIHdpZHRoPVwiMTJweFwiIGhlaWdodD1cIjEycHhcIiBmaWxsPVwiI2YwMTM0Y1wiIC8+eycgJ31cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmNoYW5nZS1uYW1lJyl9XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J3RlbGVncmFtLWV4aXN0aW5nLWlucHV0J30+XG4gICAgICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICByZWFkT25seT17dHJ1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm15LWlucHV0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9eyd0ZWxlZ3JhbV9uYW1lJ31cbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMudGVsZWdyYW1fbmFtZX1cbiAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17J3RlbGVncmFtLWV4aXN0aW5nLWlucHV0X19jYW5jZWwtYnV0dG9uJ31cbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eyhlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldFBhcmFtcygocHJldlN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZWxlZ3JhbV9uYW1lOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q2FuY2VsIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9eydlcnJvci1tZXNzYWdlJ30+PC9wPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17J3RlbGVncmFtIG9wZW4nfVxuICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF4aW9zXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoYC90ZWxlZ3JhbS9zZW5kX3Rlc3RfbWVzc2FnZS5qc29uYClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oKHJlc3ApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRTaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwLmRhdGEuc3RhdHVzWzBdLnRvVXBwZXJDYXNlKCkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNwLmRhdGEuc3RhdHVzLnN1YnN0cmluZygxKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6IHJlc3AuZGF0YS5tZXNzYWdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hvdzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1czogJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93OiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0sIDYwMDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiBhbGVydChlcnJvcikpO1xuICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICB7IXNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZS5zaG93ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnNlbmRfdGVsZWdyYW1fbWVzc2FnZScpfVxuICAgICAgICAgICAgICAgICAgICAgIHtzaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2Uuc2hvdyAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgc2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlLnN0YXR1c31cbiAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPXsnc3VibWl0J30gY2xhc3NOYW1lPXsnc2F2ZSd9IGRpc2FibGVkPXtzdWJtaXR0aW5nfT5cbiAgICAgICAgICAgIHshc3VibWl0dGluZyAmJlxuICAgICAgICAgICAgICAhc2hvd1N1Y2Nlc3NNZXNzYWdlICYmXG4gICAgICAgICAgICAgICFzaG93RXJyb3JNZXNzYWdlICYmXG4gICAgICAgICAgICAgIGkxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuc3VibWl0Jyl9XG4gICAgICAgICAgICB7c3VibWl0dGluZyAmJlxuICAgICAgICAgICAgICAhc2hvd1N1Y2Nlc3NNZXNzYWdlICYmXG4gICAgICAgICAgICAgICFzaG93RXJyb3JNZXNzYWdlICYmXG4gICAgICAgICAgICAgIGkxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuc3VibWl0dGluZycpfVxuICAgICAgICAgICAge3Nob3dTdWNjZXNzTWVzc2FnZSAmJiBpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLnN1Y2Nlc3MnKX1cbiAgICAgICAgICAgIHtzaG93RXJyb3JNZXNzYWdlICYmIGkxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuZXJyb3InKX1cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Zvcm0+XG5cbiAgICAgIHtzaG93UGFzc3dvcmRNb2RhbCAmJiAoXG4gICAgICAgIDxQYXNzd29yZE1vZGFsXG4gICAgICAgICAgY2xvc2U9eygpID0+IHNldFNob3dQYXNzd29yZE1vZGFsKGZhbHNlKX1cbiAgICAgICAgICBzYXZlPXsoKSA9PiB7fX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgICB7aXNUZWxlZ3JhbU9wZW4gJiYgKFxuICAgICAgICA8VGVsZWdyYW1Nb2RhbFxuICAgICAgICAgIGNsb3NlPXsoKSA9PiBzZXRJc1RlbGVncmFtT3BlbihmYWxzZSl9XG4gICAgICAgICAgaGFuZGxlT25DaGFuZ2U9e2hhbmRsZU9uQ2hhbmdlfVxuICAgICAgICAgIGhhbmRsZVN1Ym1pdD17aGFuZGxlU3VibWl0fVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICA8L0NvbnRhaW5lcj5cbiAgKTtcbn07XG4iXX0=
476
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9Qcm9maWxlUGFnZS9Qcm9maWxlUGFnZS50c3giXSwibmFtZXMiOlsiUHJvZmlsZVBhZ2UiLCJ0aW1lem9uZXNBcnJheSIsIm1vbWVudCIsInR6IiwibmFtZXMiLCJkYXRlVGltZUZvcm1hdE9wdGlvbnMiLCJ2YWx1ZSIsImxhYmVsIiwiZm9ybWF0IiwibW9udGgiLCJkYXkiLCJ5ZWFyIiwiaG91ciIsIm1pbnV0ZSIsImhvdXIxMiIsInRpbWV6b25lcyIsIm1hcCIsInQiLCJsb2NhbGVPcHRpb25zIiwibG9jYWxlIiwic2V0TG9jYWxlIiwiZGF0ZVRpbWVGb3JtYXQiLCJzZXREYXRlVGltZUZvcm1hdCIsInRpbWV6b25lIiwic2V0VGltZXpvbmUiLCJpbml0aWFsUGFyYW1zU3RhdGUiLCJmaXJzdF9uYW1lIiwibGFzdF9uYW1lIiwicGhvbmUiLCJlbWFpbCIsInRpbWVfem9uZSIsImRhdGVfdGltZV9mb3JtYXQiLCJ0ZWxlZ3JhbV9uYW1lIiwiaXNUZWxlZ3JhbU9wZW4iLCJzZXRJc1RlbGVncmFtT3BlbiIsInNob3dQYXNzd29yZE1vZGFsIiwic2V0U2hvd1Bhc3N3b3JkTW9kYWwiLCJzdWJtaXR0aW5nIiwic2V0U3VibWl0dGluZyIsInNob3dTdWNjZXNzTWVzc2FnZSIsInNldFNob3dTdWNjZXNzTWVzc2FnZSIsInNob3dFcnJvck1lc3NhZ2UiLCJzZXRTaG93RXJyb3JNZXNzYWdlIiwic2hvdyIsInN0YXR1cyIsIm1lc3NhZ2UiLCJzaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2UiLCJzZXRTaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2UiLCJwYXJhbXMiLCJzZXRQYXJhbXMiLCJoYW5kbGVPbkNoYW5nZSIsImUiLCJzdGFydHNXaXRoIiwicmVwbGFjZSIsInByZXZTdGF0ZSIsInRhcmdldCIsIm5hbWUiLCJnZXRQYXJhbXNXaXRoQWdncmVnYXRlZFZhbHVlcyIsImhhbmRsZVN1Ym1pdCIsInByZXZlbnREZWZhdWx0IiwiYXhpb3MiLCJwdXQiLCJ1c2VyIiwidGhlbiIsInJlc3AiLCJkYXRhIiwiZXJyb3JzIiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yQWxsIiwiZm9yRWFjaCIsInAiLCJpbm5lckhUTUwiLCJjbGFzc0xpc3QiLCJyZW1vdmUiLCJKU09OIiwicGFyc2UiLCJmaW5kTG9jYWxlIiwiZmluZCIsImZpbmREYXRlVGltZUZvcm1hdCIsImZpbmRUaW1lem9uZSIsInNldFRpbWVvdXQiLCJlcnJvciIsImZpbmRFbGVtZW50IiwicXVlcnlTZWxlY3RvciIsInBhcmVudCIsImNsb3Nlc3QiLCJmaW5kSW5wdXQiLCJhZGQiLCJpMThuIiwiY2F0Y2giLCJ0b2tlbiIsImNvbnRlbnQiLCJkZWZhdWx0cyIsImhlYWRlcnMiLCJjb21tb24iLCJnZXQiLCJhbGVydCIsInVuZGVmaW5lZCIsIkRhdGUiLCJ0b0xvY2FsZURhdGVTdHJpbmciLCJ0b1VwcGVyQ2FzZSIsInN1YnN0cmluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBR0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVPLElBQU1BLFdBQVcsR0FBRyxTQUFkQSxXQUFjLEdBQU07QUFDL0IsTUFBTUMsY0FBYyxHQUFHQyx3QkFBT0MsRUFBUCxDQUFVQyxLQUFWLEVBQXZCOztBQUNBLE1BQU1DLHFCQUFxQixHQUFHLENBQzVCO0FBQ0VDLElBQUFBLEtBQUssRUFBRSxJQURUO0FBRUVDLElBQUFBLEtBQUssRUFBRSxlQUZUO0FBR0VDLElBQUFBLE1BQU0sRUFBRTtBQUNOQyxNQUFBQSxLQUFLLEVBQUUsT0FERDtBQUVOQyxNQUFBQSxHQUFHLEVBQUUsU0FGQztBQUdOQyxNQUFBQSxJQUFJLEVBQUUsU0FIQTtBQUlOQyxNQUFBQSxJQUFJLEVBQUUsU0FKQTtBQUtOQyxNQUFBQSxNQUFNLEVBQUU7QUFMRjtBQUhWLEdBRDRCLEVBWTVCO0FBQ0VQLElBQUFBLEtBQUss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QUFFLE1BQW5DO0FBQTJDLElBQUEsUUFBUSxFQUFFUDtBQUFyRCxLQUNHLENBQUNBLFVBQUQsSUFDQyxDQUFDRSxrQkFERixJQUVDLENBQUNFLGdCQUZGLElBR0MrQyxjQUFLdkUsQ0FBTCxDQUFPLDZCQUFQLENBSkosRUFLR29CLFVBQVUsSUFDVCxDQUFDRSxrQkFERixJQUVDLENBQUNFLGdCQUZGLElBR0MrQyxjQUFLdkUsQ0FBTCxDQUFPLGlDQUFQLENBUkosRUFTR3NCLGtCQUFrQixJQUFJaUQsY0FBS3ZFLENBQUwsQ0FBTyw4QkFBUCxDQVR6QixFQVVHd0IsZ0JBQWdCLElBQUkrQyxjQUFLdkUsQ0FBTCxDQUFPLDRCQUFQLENBVnZCLENBdE1GLENBREYsQ0FGRixFQXdOR2tCLGlCQUFpQixpQkFDaEIsNkJBQUMsNEJBQUQ7QUFDRSxJQUFBLEtBQUssRUFBRTtBQUFBLGFBQU1DLG9CQUFvQixDQUFDLEtBQUQsQ0FBMUI7QUFBQSxLQURUO0FBRUUsSUFBQSxJQUFJLEVBQUUsZ0JBQU0sQ0FBRTtBQUZoQixJQXpOSixFQThOR0gsY0FBYyxpQkFDYiw2QkFBQyw0QkFBRDtBQUNFLElBQUEsS0FBSyxFQUFFO0FBQUEsYUFBTUMsaUJBQWlCLENBQUMsS0FBRCxDQUF2QjtBQUFBLEtBRFQ7QUFFRSxJQUFBLGNBQWMsRUFBRWdCLGNBRmxCO0FBR0UsSUFBQSxZQUFZLEVBQUVRO0FBSGhCLElBL05KLENBREY7QUF3T0QsQ0FyYk0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFNlbGVjdCB9IGZyb20gJ3NyYy9jb21wb25lbnRzL0N1c3RvbUlucHV0cy9TZWxlY3QvU2VsZWN0JztcbmltcG9ydCBpMThuIGZyb20gJ3NyYy91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBQYXNzd29yZE1vZGFsIH0gZnJvbSAnLi9QYXNzd29yZE1vZGFsL1Bhc3N3b3JkTW9kYWwnO1xuaW1wb3J0IHsgUmVhY3RDb21wb25lbnQgYXMgUGVuU3ZnIH0gZnJvbSAnLi9wZW4uc3ZnJztcbmltcG9ydCB7IFJlYWN0Q29tcG9uZW50IGFzIENhbmNlbCB9IGZyb20gJy4vY2FuY2VsLnN2Zyc7XG5pbXBvcnQgUGhvbmVJbnB1dCBmcm9tICdyZWFjdC1waG9uZS1pbnB1dC0yJztcbmltcG9ydCAncmVhY3QtcGhvbmUtaW5wdXQtMi9saWIvc3R5bGUuY3NzJztcbmltcG9ydCB7IFRlbGVncmFtTW9kYWwgfSBmcm9tICcuL1RlbGVncmFtTW9kYWwvVGVsZWdyYW1Nb2RhbCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHsgQ29udGFpbmVyIH0gZnJvbSAnLi9Db250YWluZXInO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQtdGltZXpvbmUnO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMvQW5hbHl0aWNzJztcblxuZXhwb3J0IGNvbnN0IFByb2ZpbGVQYWdlID0gKCkgPT4ge1xuICBjb25zdCB0aW1lem9uZXNBcnJheSA9IG1vbWVudC50ei5uYW1lcygpO1xuICBjb25zdCBkYXRlVGltZUZvcm1hdE9wdGlvbnMgPSBbXG4gICAge1xuICAgICAgdmFsdWU6ICd1cycsXG4gICAgICBsYWJlbDogJ1VuaXRlZCBTdGF0ZXMnLFxuICAgICAgZm9ybWF0OiB7XG4gICAgICAgIG1vbnRoOiAnc2hvcnQnLFxuICAgICAgICBkYXk6ICdudW1lcmljJyxcbiAgICAgICAgeWVhcjogJ251bWVyaWMnLFxuICAgICAgICBob3VyOiAnbnVtZXJpYycsXG4gICAgICAgIG1pbnV0ZTogJ251bWVyaWMnLFxuICAgICAgfSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHZhbHVlOiAnZXUnLFxuICAgICAgbGFiZWw6ICdFdXJvcGUnLFxuICAgICAgZm9ybWF0OiB7XG4gICAgICAgIGRheTogJ251bWVyaWMnLFxuICAgICAgICBtb250aDogJ251bWVyaWMnLFxuICAgICAgICB5ZWFyOiAnbnVtZXJpYycsXG4gICAgICAgIGhvdXI6ICdudW1lcmljJyxcbiAgICAgICAgbWludXRlOiAnbnVtZXJpYycsXG4gICAgICAgIGhvdXIxMjogZmFsc2UsXG4gICAgICB9LFxuICAgIH0sXG4gIF07XG5cbiAgY29uc3QgdGltZXpvbmVzID0gdGltZXpvbmVzQXJyYXkubWFwKCh0KSA9PiB7XG4gICAgcmV0dXJuIHsgdmFsdWU6IHQsIGxhYmVsOiB0IH07XG4gIH0pO1xuXG4gIGNvbnN0IGxvY2FsZU9wdGlvbnMgPSBbXG4gICAgeyB2YWx1ZTogJ2VuJywgbGFiZWw6ICdFbmdsaXNoJyB9LFxuICAgIHsgdmFsdWU6ICdoZScsIGxhYmVsOiAnSGVicmV3JyB9LFxuICAgIHsgdmFsdWU6ICdpdCcsIGxhYmVsOiAnSXRhbHknIH0sXG4gICAgeyB2YWx1ZTogJ2ZyJywgbGFiZWw6ICdGcmFuY2UnIH0sXG4gIF07XG5cbiAgY29uc3QgW2xvY2FsZSwgc2V0TG9jYWxlXSA9IHVzZVN0YXRlPHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH0+KGxvY2FsZU9wdGlvbnNbMF0pO1xuXG4gIGNvbnN0IFtkYXRlVGltZUZvcm1hdCwgc2V0RGF0ZVRpbWVGb3JtYXRdID0gdXNlU3RhdGU8e1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBmb3JtYXQ6IG9iamVjdDtcbiAgfT4oZGF0ZVRpbWVGb3JtYXRPcHRpb25zWzBdKTtcblxuICBjb25zdCBbdGltZXpvbmUsIHNldFRpbWV6b25lXSA9IHVzZVN0YXRlPHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gIH0+KHRpbWV6b25lc1syMF0pO1xuXG4gIGNvbnN0IGluaXRpYWxQYXJhbXNTdGF0ZSA9IHtcbiAgICBmaXJzdF9uYW1lOiAnJyxcbiAgICBsYXN0X25hbWU6ICcnLFxuICAgIHBob25lOiAnJyxcbiAgICBlbWFpbDogJycsXG4gICAgdGltZV96b25lOiAnJyxcbiAgICBkYXRlX3RpbWVfZm9ybWF0OiAnJyxcbiAgICBsb2NhbGU6ICcnLFxuICAgIHRlbGVncmFtX25hbWU6ICcnLFxuICB9O1xuXG4gIGNvbnN0IFtpc1RlbGVncmFtT3Blbiwgc2V0SXNUZWxlZ3JhbU9wZW5dID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdCBbc2hvd1Bhc3N3b3JkTW9kYWwsIHNldFNob3dQYXNzd29yZE1vZGFsXSA9IHVzZVN0YXRlPGJvb2xlYW4+KGZhbHNlKTtcbiAgY29uc3QgW3N1Ym1pdHRpbmcsIHNldFN1Ym1pdHRpbmddID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdCBbc2hvd1N1Y2Nlc3NNZXNzYWdlLCBzZXRTaG93U3VjY2Vzc01lc3NhZ2VdID0gdXNlU3RhdGU8Ym9vbGVhbj4oZmFsc2UpO1xuICBjb25zdCBbc2hvd0Vycm9yTWVzc2FnZSwgc2V0U2hvd0Vycm9yTWVzc2FnZV0gPSB1c2VTdGF0ZTxib29sZWFuPihmYWxzZSk7XG4gIGNvbnN0IFtzaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2UsIHNldFNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZV0gPVxuICAgIHVzZVN0YXRlPHtcbiAgICAgIHNob3c6IGJvb2xlYW47XG4gICAgICBzdGF0dXM6IHN0cmluZztcbiAgICAgIG1lc3NhZ2U6IHN0cmluZztcbiAgICB9Pih7XG4gICAgICBzaG93OiBmYWxzZSxcbiAgICAgIHN0YXR1czogJycsXG4gICAgICBtZXNzYWdlOiAnJyxcbiAgICB9KTtcbiAgY29uc3QgW3BhcmFtcywgc2V0UGFyYW1zXSA9IHVzZVN0YXRlPHtcbiAgICBmaXJzdF9uYW1lOiBzdHJpbmc7XG4gICAgbGFzdF9uYW1lOiBzdHJpbmc7XG4gICAgcGhvbmU6IHN0cmluZztcbiAgICBlbWFpbDogc3RyaW5nO1xuICAgIHRpbWVfem9uZTogc3RyaW5nO1xuICAgIGRhdGVfdGltZV9mb3JtYXQ6IHN0cmluZztcbiAgICBsb2NhbGU6IHN0cmluZztcbiAgICB0ZWxlZ3JhbV9uYW1lOiBzdHJpbmc7XG4gIH0+KGluaXRpYWxQYXJhbXNTdGF0ZSk7XG5cbiAgY29uc3QgaGFuZGxlT25DaGFuZ2UgPSAoZSkgPT4ge1xuICAgIGlmICh0eXBlb2YgZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmIChlLnN0YXJ0c1dpdGgoJzk3MjAnKSkge1xuICAgICAgICBlID0gZS5yZXBsYWNlKC8oOTcyMCkvZywgJzk3MicpO1xuICAgICAgfVxuICAgICAgc2V0UGFyYW1zKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgcGhvbmU6IGUsXG4gICAgICB9KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIG5hbWUgfSA9IGUudGFyZ2V0O1xuICAgICAgc2V0UGFyYW1zKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgIC4uLnByZXZTdGF0ZSxcbiAgICAgICAgW25hbWVdOiB2YWx1ZSxcbiAgICAgIH0pKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZ2V0UGFyYW1zV2l0aEFnZ3JlZ2F0ZWRWYWx1ZXMgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnBhcmFtcyxcbiAgICAgIGRhdGVfdGltZV9mb3JtYXQ6IGRhdGVUaW1lRm9ybWF0LnZhbHVlLFxuICAgICAgbG9jYWxlOiBsb2NhbGUudmFsdWUsXG4gICAgICB0aW1lX3pvbmU6IHRpbWV6b25lLnZhbHVlLFxuICAgIH07XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gKGUpID0+IHtcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgc2V0U3VibWl0dGluZyh0cnVlKTtcbiAgICBheGlvc1xuICAgICAgLnB1dCgnL3Byb2ZpbGVzJywgeyB1c2VyOiBnZXRQYXJhbXNXaXRoQWdncmVnYXRlZFZhbHVlcygpIH0pXG4gICAgICAudGhlbigocmVzcCkgPT4ge1xuICAgICAgICBpZiAocmVzcC5kYXRhLmVycm9ycyA9PT0gbnVsbCkge1xuICAgICAgICAgIGRvY3VtZW50XG4gICAgICAgICAgICAucXVlcnlTZWxlY3RvckFsbCgnLmVycm9yLW1lc3NhZ2UnKVxuICAgICAgICAgICAgLmZvckVhY2goKHApID0+IChwLmlubmVySFRNTCA9ICcnKSk7XG5cbiAgICAgICAgICBkb2N1bWVudFxuICAgICAgICAgICAgLnF1ZXJ5U2VsZWN0b3JBbGwoJy5pbnZhbGlkLWZpZWxkJylcbiAgICAgICAgICAgIC5mb3JFYWNoKChwKSA9PiBwLmNsYXNzTGlzdC5yZW1vdmUoJ2ludmFsaWQtZmllbGQnKSk7XG4gICAgICAgICAgbGV0IHVzZXIgPSBKU09OLnBhcnNlKHJlc3AuZGF0YS51c2VyKTtcbiAgICAgICAgICBjb25zdCBmaW5kTG9jYWxlID0gbG9jYWxlT3B0aW9ucy5maW5kKChlKSA9PiBlLnZhbHVlID09PSB1c2VyLmxvY2FsZSk7XG4gICAgICAgICAgY29uc3QgZmluZERhdGVUaW1lRm9ybWF0ID0gZGF0ZVRpbWVGb3JtYXRPcHRpb25zLmZpbmQoXG4gICAgICAgICAgICAoZSkgPT4gZS52YWx1ZSA9PT0gdXNlci5kYXRlX3RpbWVfZm9ybWF0LFxuICAgICAgICAgICk7XG4gICAgICAgICAgY29uc3QgZmluZFRpbWV6b25lID0gdGltZXpvbmVzLmZpbmQoXG4gICAgICAgICAgICAoZSkgPT4gZS52YWx1ZSA9PT0gdXNlci50aW1lX3pvbmUsXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHNldFBhcmFtcyh1c2VyKTtcbiAgICAgICAgICBzZXRMb2NhbGUoZmluZExvY2FsZSEpO1xuICAgICAgICAgIHNldERhdGVUaW1lRm9ybWF0KGZpbmREYXRlVGltZUZvcm1hdCEpO1xuICAgICAgICAgIHNldFRpbWV6b25lKGZpbmRUaW1lem9uZSEpO1xuICAgICAgICAgIHNldFNob3dTdWNjZXNzTWVzc2FnZSh0cnVlKTtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHNldFNob3dTdWNjZXNzTWVzc2FnZShmYWxzZSk7XG4gICAgICAgICAgfSwgNjAwMCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZG9jdW1lbnRcbiAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yQWxsKCcuZXJyb3ItbWVzc2FnZScpXG4gICAgICAgICAgICAuZm9yRWFjaCgocCkgPT4gKHAuaW5uZXJIVE1MID0gJycpKTtcbiAgICAgICAgICBsZXQgZXJyb3JzID0gcmVzcC5kYXRhLmVycm9ycztcbiAgICAgICAgICBmb3IgKGNvbnN0IGVycm9yIGluIGVycm9ycykge1xuICAgICAgICAgICAgbGV0IGZpbmRFbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgaW5wdXRbbmFtZT0nJHtlcnJvcn0nXWApO1xuICAgICAgICAgICAgbGV0IHBhcmVudCA9IGZpbmRFbGVtZW50IS5jbG9zZXN0KCcuZmllbGQnKTtcbiAgICAgICAgICAgIGxldCBmaW5kSW5wdXQgPSBwYXJlbnQhLnF1ZXJ5U2VsZWN0b3IoJ2lucHV0Jyk7XG4gICAgICAgICAgICBmaW5kSW5wdXQhLmNsYXNzTGlzdC5hZGQoJ2ludmFsaWQtZmllbGQnKTtcbiAgICAgICAgICAgIHBhcmVudCEucXVlcnlTZWxlY3RvcignLmVycm9yLW1lc3NhZ2UnKSEuaW5uZXJIVE1MID0gaTE4bi50KFxuICAgICAgICAgICAgICBgZGFzaGJvYXJkX3YyLnByb2ZpbGUuZXJyb3JzLiR7ZXJyb3J9YCxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNldFNob3dTdWNjZXNzTWVzc2FnZShmYWxzZSk7XG4gICAgICAgIH1cblxuICAgICAgICBzZXRTdWJtaXR0aW5nKGZhbHNlKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgICAgIHNldFNob3dFcnJvck1lc3NhZ2UodHJ1ZSk7XG4gICAgICAgIHNldFNob3dTdWNjZXNzTWVzc2FnZShmYWxzZSk7XG4gICAgICAgIHNldFN1Ym1pdHRpbmcoZmFsc2UpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBzZXRTaG93RXJyb3JNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgfSwgNjAwMCk7XG4gICAgICB9KTtcbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGFuYWx5dGljc1RyYWNrKCdWaWV3ZWQgUHJvZmlsZSBQYWdlJyk7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGNvbnN0IHRva2VuID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW25hbWU9Y3NyZi10b2tlbl0nKSEuY29udGVudDtcbiAgICBheGlvcy5kZWZhdWx0cy5oZWFkZXJzLmNvbW1vblsnWC1DU1JGLVRPS0VOJ10gPSB0b2tlbjtcbiAgICBheGlvcy5kZWZhdWx0cy5oZWFkZXJzLmNvbW1vblsnQ29udGVudC1UeXBlJ10gPSAnYXBwbGljYXRpb24vanMnO1xuICAgIGF4aW9zXG4gICAgICAuZ2V0KCcvcHJvZmlsZXMvcmVzb3VyY2UnKVxuICAgICAgLnRoZW4oKHJlc3ApID0+IHtcbiAgICAgICAgc2V0UGFyYW1zKHJlc3AuZGF0YSk7XG4gICAgICAgIGNvbnN0IGZpbmRMb2NhbGUgPSBsb2NhbGVPcHRpb25zLmZpbmQoXG4gICAgICAgICAgKGUpID0+IGUudmFsdWUgPT09IHJlc3AuZGF0YS5sb2NhbGUsXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGZpbmREYXRlVGltZUZvcm1hdCA9IGRhdGVUaW1lRm9ybWF0T3B0aW9ucy5maW5kKFxuICAgICAgICAgIChlKSA9PiBlLnZhbHVlID09PSByZXNwLmRhdGEuZGF0ZV90aW1lX2Zvcm1hdCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgZmluZFRpbWV6b25lID0gdGltZXpvbmVzLmZpbmQoXG4gICAgICAgICAgKGUpID0+IGUudmFsdWUgPT09IHJlc3AuZGF0YS50aW1lX3pvbmUsXG4gICAgICAgICk7XG4gICAgICAgIHNldExvY2FsZShmaW5kTG9jYWxlISk7XG4gICAgICAgIHNldERhdGVUaW1lRm9ybWF0KGZpbmREYXRlVGltZUZvcm1hdCEpO1xuICAgICAgICBzZXRUaW1lem9uZShmaW5kVGltZXpvbmUhKTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGVycm9yKSA9PiBhbGVydChlcnJvcikpO1xuICB9LCBbXSk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q29udGFpbmVyPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJoZWFkZXItdGl0bGVcIj57aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS50aXRsZScpfTwvZGl2PlxuICAgICAgPGZvcm0gYWN0aW9uPVwiXCIgb25TdWJtaXQ9eyhlKSA9PiBoYW5kbGVTdWJtaXQoZSl9PlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbnRlbnRcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRpdGxlXCI+XG4gICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5wZXJzb25hbC1kZXRhaWxzJyl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHNlY3Rpb24gY2xhc3NOYW1lPVwicGVyc29uYWxcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmZpcnN0X25hbWUnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJteS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgbmFtZT17J2ZpcnN0X25hbWUnfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMuZmlyc3RfbmFtZX1cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT17KGUpID0+IGhhbmRsZU9uQ2hhbmdlKGUpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9eydlcnJvci1tZXNzYWdlJ30+PC9wPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5sYXN0X25hbWUnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJteS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgbmFtZT17J2xhc3RfbmFtZSd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy5sYXN0X25hbWV9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9eyhlKSA9PiBoYW5kbGVPbkNoYW5nZShlKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXsnZXJyb3ItbWVzc2FnZSd9PjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZCBmaWVsZC0tcmVhZG9ubHlcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmVtYWlsJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICByZWFkT25seT17dHJ1ZX1cbiAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibXktaW5wdXRcIlxuICAgICAgICAgICAgICAgIG5hbWU9eydlbWFpbCd9XG4gICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy5lbWFpbH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXsnZXJyb3ItbWVzc2FnZSd9PjwvcD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUucGhvbmUnKX1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxQaG9uZUlucHV0XG4gICAgICAgICAgICAgICAgY291bnRyeT17J2lsJ31cbiAgICAgICAgICAgICAgICBsb2NhbGl6YXRpb249e2kxOG4udCgnY291bnRyaWVzJyl9XG4gICAgICAgICAgICAgICAgaW5wdXRDbGFzcz1cInBob25lLWlucHV0XCJcbiAgICAgICAgICAgICAgICBjb250YWluZXJDbGFzcz1cIm15LXBob25lXCJcbiAgICAgICAgICAgICAgICBidXR0b25DbGFzcz1cImRyb3Bkb3duXCJcbiAgICAgICAgICAgICAgICBkcm9wZG93bkNsYXNzPVwicGhvbmUtZHJvcGRvd25cIlxuICAgICAgICAgICAgICAgIHZhbHVlPXtwYXJhbXMucGhvbmV9XG4gICAgICAgICAgICAgICAgZW5hYmxlU2VhcmNoXG4gICAgICAgICAgICAgICAgc2VhcmNoUGxhY2Vob2xkZXI9e2kxOG4udCgnc2VhcmNoJyl9XG4gICAgICAgICAgICAgICAgY291bnRyeUNvZGVFZGl0YWJsZT17ZmFsc2V9XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9eyh2YWx1ZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgaGFuZGxlT25DaGFuZ2UodmFsdWUpO1xuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgaW5wdXRQcm9wcz17eyBuYW1lOiAncGhvbmUnIH19XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Vycm9yLW1lc3NhZ2UnfT48L3A+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImNoYW5nZS1wYXNzd29yZFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gc2V0U2hvd1Bhc3N3b3JkTW9kYWwodHJ1ZSl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8UGVuU3ZnIHdpZHRoPVwiMTJweFwiIGhlaWdodD1cIjEycHhcIiBmaWxsPVwiI2YwMTM0Y1wiIC8+XG4gICAgICAgICAgICAgICAgeycgICd9XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuY2hhbmdlLXBhc3N3b3JkJyl9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidGl0bGVcIj57aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zZXR0aW5ncycpfTwvZGl2PlxuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzTmFtZT1cInNldHRpbmdzXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGFiZWxcIj5cbiAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS50aW1lLXpvbmUnKX0qXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm15LWlucHV0XCI+XG4gICAgICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICAgICAgc2V0VmFsdWU9e3NldFRpbWV6b25lfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e3RpbWV6b25lfVxuICAgICAgICAgICAgICAgICAgb3B0aW9ucz17dGltZXpvbmVzfVxuICAgICAgICAgICAgICAgICAgY2FuY2VsVGV4dFdpZHRoXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsYWJlbFwiPlxuICAgICAgICAgICAgICAgIHtpMThuLnQoJ2Rhc2hib2FyZF92Mi5wcm9maWxlLmRhdGUtdGltZS1mb3JtYXQnKX0qXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm15LWlucHV0XCI+XG4gICAgICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICAgICAgb3B0aW9ucz17ZGF0ZVRpbWVGb3JtYXRPcHRpb25zfVxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2RhdGVUaW1lRm9ybWF0fVxuICAgICAgICAgICAgICAgICAgc2V0VmFsdWU9e3NldERhdGVUaW1lRm9ybWF0fVxuICAgICAgICAgICAgICAgICAgY2FuY2VsVGV4dFdpZHRoXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsnZGF0ZS10aW1lLWZvcm1hdCd9PlxuICAgICAgICAgICAgICAgIHtkYXRlVGltZUZvcm1hdCAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICBuZXcgRGF0ZSgpLnRvTG9jYWxlRGF0ZVN0cmluZygnZW4tVVMnLCBkYXRlVGltZUZvcm1hdC5mb3JtYXQpfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUubGFuZ3VhZ2UnKX0qXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17J215LWlucHV0J30+XG4gICAgICAgICAgICAgICAgPFNlbGVjdFxuICAgICAgICAgICAgICAgICAgb3B0aW9ucz17bG9jYWxlT3B0aW9uc31cbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtsb2NhbGV9XG4gICAgICAgICAgICAgICAgICBzZXRWYWx1ZT17c2V0TG9jYWxlfVxuICAgICAgICAgICAgICAgICAgY2FuY2VsVGV4dFdpZHRoXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZmllbGQgZmllbGQtLWJ1dHRvbnNcIj5cbiAgICAgICAgICAgICAge3BhcmFtcy50ZWxlZ3JhbV9uYW1lID09PSAnJyAmJiAoXG4gICAgICAgICAgICAgICAgPGEgY2xhc3NOYW1lPVwidGVsZWdyYW1cIiBvbkNsaWNrPXsoKSA9PiBzZXRJc1RlbGVncmFtT3Blbih0cnVlKX0+XG4gICAgICAgICAgICAgICAgICB7aTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5jb25uZWN0LXRvLXRlbGVncmFtJyl9XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB7cGFyYW1zLnRlbGVncmFtX25hbWUgIT09ICcnICYmIChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJmaWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImxhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUudGVsZWdyYW1fbmFtZScpfVxuICAgICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9eygpID0+IHNldElzVGVsZWdyYW1PcGVuKHRydWUpfVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxQZW5Tdmcgd2lkdGg9XCIxMnB4XCIgaGVpZ2h0PVwiMTJweFwiIGZpbGw9XCIjZjAxMzRjXCIgLz57JyAnfVxuICAgICAgICAgICAgICAgICAgICAgICAge2kxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuY2hhbmdlLW5hbWUnKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPXsndGVsZWdyYW0tZXhpc3RpbmctaW5wdXQnfT5cbiAgICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXt0cnVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibXktaW5wdXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT17J3RlbGVncmFtX25hbWUnfVxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3BhcmFtcy50ZWxlZ3JhbV9uYW1lfVxuICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsndGVsZWdyYW0tZXhpc3RpbmctaW5wdXRfX2NhbmNlbC1idXR0b24nfVxuICAgICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0UGFyYW1zKChwcmV2U3RhdGUpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucHJldlN0YXRlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbGVncmFtX25hbWU6ICcnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxDYW5jZWwgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17J2Vycm9yLW1lc3NhZ2UnfT48L3A+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXsndGVsZWdyYW0gb3Blbid9XG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXhpb3NcbiAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldChgL3RlbGVncmFtL3NlbmRfdGVzdF9tZXNzYWdlLmpzb25gKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigocmVzcCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFNob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3AuZGF0YS5zdGF0dXNbMF0udG9VcHBlckNhc2UoKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3AuZGF0YS5zdGF0dXMuc3Vic3RyaW5nKDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogcmVzcC5kYXRhLm1lc3NhZ2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaG93OiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdHVzOiAnJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZTogJycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3c6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgNjAwMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgIC5jYXRjaCgoZXJyb3IpID0+IGFsZXJ0KGVycm9yKSk7XG4gICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIHshc2hvd1RlbGVncmFtUmVzcG9uc2VNZXNzYWdlLnNob3cgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgIGkxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuc2VuZF90ZWxlZ3JhbV9tZXNzYWdlJyl9XG4gICAgICAgICAgICAgICAgICAgICAge3Nob3dUZWxlZ3JhbVJlc3BvbnNlTWVzc2FnZS5zaG93ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBzaG93VGVsZWdyYW1SZXNwb25zZU1lc3NhZ2Uuc3RhdHVzfVxuICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgICA8YnV0dG9uIHR5cGU9eydzdWJtaXQnfSBjbGFzc05hbWU9eydzYXZlJ30gZGlzYWJsZWQ9e3N1Ym1pdHRpbmd9PlxuICAgICAgICAgICAgeyFzdWJtaXR0aW5nICYmXG4gICAgICAgICAgICAgICFzaG93U3VjY2Vzc01lc3NhZ2UgJiZcbiAgICAgICAgICAgICAgIXNob3dFcnJvck1lc3NhZ2UgJiZcbiAgICAgICAgICAgICAgaTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zdWJtaXQnKX1cbiAgICAgICAgICAgIHtzdWJtaXR0aW5nICYmXG4gICAgICAgICAgICAgICFzaG93U3VjY2Vzc01lc3NhZ2UgJiZcbiAgICAgICAgICAgICAgIXNob3dFcnJvck1lc3NhZ2UgJiZcbiAgICAgICAgICAgICAgaTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5zdWJtaXR0aW5nJyl9XG4gICAgICAgICAgICB7c2hvd1N1Y2Nlc3NNZXNzYWdlICYmIGkxOG4udCgnZGFzaGJvYXJkX3YyLnByb2ZpbGUuc3VjY2VzcycpfVxuICAgICAgICAgICAge3Nob3dFcnJvck1lc3NhZ2UgJiYgaTE4bi50KCdkYXNoYm9hcmRfdjIucHJvZmlsZS5lcnJvcicpfVxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZm9ybT5cblxuICAgICAge3Nob3dQYXNzd29yZE1vZGFsICYmIChcbiAgICAgICAgPFBhc3N3b3JkTW9kYWxcbiAgICAgICAgICBjbG9zZT17KCkgPT4gc2V0U2hvd1Bhc3N3b3JkTW9kYWwoZmFsc2UpfVxuICAgICAgICAgIHNhdmU9eygpID0+IHt9fVxuICAgICAgICAvPlxuICAgICAgKX1cbiAgICAgIHtpc1RlbGVncmFtT3BlbiAmJiAoXG4gICAgICAgIDxUZWxlZ3JhbU1vZGFsXG4gICAgICAgICAgY2xvc2U9eygpID0+IHNldElzVGVsZWdyYW1PcGVuKGZhbHNlKX1cbiAgICAgICAgICBoYW5kbGVPbkNoYW5nZT17aGFuZGxlT25DaGFuZ2V9XG4gICAgICAgICAgaGFuZGxlU3VibWl0PXtoYW5kbGVTdWJtaXR9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvQ29udGFpbmVyPlxuICApO1xufTtcbiJdfQ==
@@ -45,8 +45,7 @@ var DownloadCSV = function DownloadCSV(_ref) {
45
45
 
46
46
  var download = function download() {
47
47
  (0, _Analytics.analyticsTrack)('Sampling Operations Download', {
48
- filter: kql,
49
- utility_name: waterAuthorityName
48
+ filter: kql
50
49
  });
51
50
  var fileName = "".concat(waterAuthorityName, "-Samplings-").concat((0, _File.time_format)());
52
51
  var url = (0, _urls.urls)((0, _objectSpread2.default)((0, _objectSpread2.default)({
@@ -70,4 +69,4 @@ var DownloadCSV = function DownloadCSV(_ref) {
70
69
 
71
70
  var _default = DownloadCSV;
72
71
  exports.default = _default;
73
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL0Rlc2t0b3BBY3Rpb25zL0Rvd25sb2FkQ1NWLnRzeCJdLCJuYW1lcyI6WyJEb3dubG9hZENTViIsImtxbCIsInBhcmFtcyIsInN0YXRlIiwiZ2xvYmFsX2RhdGEiLCJ3YXRlckF1dGhvcml0eUlkIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwibG9jYWxlIiwiZG93bmxvYWQiLCJmaWx0ZXIiLCJ1dGlsaXR5X25hbWUiLCJmaWxlTmFtZSIsInVybCIsInNhbXBsaW5nc1BhZ2UiLCJmaWxlVHlwZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOzs7O0FBTUEsSUFBTUEsV0FBVyxHQUFHLFNBQWRBLFdBQWMsT0FBd0I7QUFBQSxNQUFyQkMsR0FBcUIsUUFBckJBLEdBQXFCO0FBQUEsTUFBYkMsTUFBYTs7QUFDMUMscUJBQXNELDZCQUNwRCxVQUFDQyxLQUFEO0FBQUEsV0FBMENBLEtBQUssQ0FBQ0MsV0FBaEQ7QUFBQSxHQURvRCxDQUF0RDtBQUFBLE1BQVFDLGdCQUFSLGdCQUFRQSxnQkFBUjtBQUFBLDJDQUEwQkMsa0JBQTFCO0FBQUEsTUFBMEJBLGtCQUExQixzQ0FBK0MsRUFBL0M7O0FBR0EsdUJBQW1CLG9DQUFuQjtBQUFBLE1BQVFDLE1BQVIsa0JBQVFBLE1BQVI7O0FBRUEsTUFBTUMsUUFBUSxHQUFHLFNBQVhBLFFBQVcsR0FBTTtBQUNyQixtQ0FBZSw4QkFBZixFQUErQztBQUM3Q0MsTUFBQUEsTUFBTSxFQUFFUixHQURxQztBQUU3Q1MsTUFBQUEsWUFBWSxFQUFFSjtBQUYrQixLQUEvQztBQUlBLFFBQU1LLFFBQVEsYUFBTUwsa0JBQU4sd0JBQXNDLHdCQUF0QyxDQUFkO0FBQ0EsUUFBTU0sR0FBRyxHQUFHO0FBQ1ZQLE1BQUFBLGdCQUFnQixFQUFoQkE7QUFEVSxPQUVQSCxNQUZPO0FBR1ZLLE1BQUFBLE1BQU0sRUFBTkEsTUFIVTtBQUlWTixNQUFBQSxHQUFHLEVBQUhBO0FBSlUsUUFLVFksYUFMUyxDQUtLTCxRQUxMLENBS2NJLEdBTDFCO0FBTUEsNEJBQWE7QUFBRUEsTUFBQUEsR0FBRyxFQUFIQSxHQUFGO0FBQU9ELE1BQUFBLFFBQVEsRUFBUkEsUUFBUDtBQUFpQkcsTUFBQUEsUUFBUSxFQUFFO0FBQTNCLEtBQWI7QUFDRCxHQWJEOztBQWVBLHNCQUNFLDZCQUFDLG1CQUFEO0FBQVksSUFBQSxRQUFRLEVBQUVOLFFBQXRCO0FBQWdDLElBQUEsUUFBUSxFQUFFO0FBQTFDLGtCQUNFLDZCQUFDLGtCQUFELE9BREYsQ0FERjtBQUtELENBMUJEOztlQTRCZVIsVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBJY29uQWN0aW9uIGZyb20gJ3NyYy91aS1raXQvSWNvbkFjdGlvbi9JY29uQWN0aW9uJztcbmltcG9ydCB7IERvd25sb2FkU3ZnIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJ3NyYy91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgdXNlTmF2Q29udGV4dCB9IGZyb20gJ3NyYy9ob29rcy91c2VOYXZDb250ZXh0JztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgZG93bmxvYWRGaWxlLCB0aW1lX2Zvcm1hdCB9IGZyb20gJ3NyYy91dGlsaXRpZXMvRmlsZSc7XG5leHBvcnQgdHlwZSBJRG93bmxvYWRQcm9wcyA9IHtcbiAga3FsOiBzdHJpbmcgfCBudWxsO1xuICBvcmRlckJ5Pzogc3RyaW5nO1xuICBvcmRlckRpcmVjdGlvbjogc3RyaW5nO1xufTtcbmNvbnN0IERvd25sb2FkQ1NWID0gKHsga3FsLCAuLi5wYXJhbXMgfSkgPT4ge1xuICBjb25zdCB7IHdhdGVyQXV0aG9yaXR5SWQsIHdhdGVyQXV0aG9yaXR5TmFtZSA9ICcnIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5nbG9iYWxfZGF0YSxcbiAgKTtcbiAgY29uc3QgeyBsb2NhbGUgfSA9IHVzZU5hdkNvbnRleHQoKTtcblxuICBjb25zdCBkb3dubG9hZCA9ICgpID0+IHtcbiAgICBhbmFseXRpY3NUcmFjaygnU2FtcGxpbmcgT3BlcmF0aW9ucyBEb3dubG9hZCcsIHtcbiAgICAgIGZpbHRlcjoga3FsLFxuICAgICAgdXRpbGl0eV9uYW1lOiB3YXRlckF1dGhvcml0eU5hbWUsXG4gICAgfSk7XG4gICAgY29uc3QgZmlsZU5hbWUgPSBgJHt3YXRlckF1dGhvcml0eU5hbWV9LVNhbXBsaW5ncy0ke3RpbWVfZm9ybWF0KCl9YDtcbiAgICBjb25zdCB1cmwgPSB1cmxzKHtcbiAgICAgIHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBsb2NhbGUsXG4gICAgICBrcWwsXG4gICAgfSkuc2FtcGxpbmdzUGFnZS5kb3dubG9hZC51cmw7XG4gICAgZG93bmxvYWRGaWxlKHsgdXJsLCBmaWxlTmFtZSwgZmlsZVR5cGU6ICd0ZXh0L2NzdjtjaGFyc2V0PXV0Zi04JyB9KTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxJY29uQWN0aW9uIGNhbGxiYWNrPXtkb3dubG9hZH0gdGV4dF9rZXk9eydzYW1wbGluZ3NfcGFnZS5kb3dubG9hZF9jc3YnfT5cbiAgICAgIDxEb3dubG9hZFN2ZyAvPlxuICAgIDwvSWNvbkFjdGlvbj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IERvd25sb2FkQ1NWO1xuIl19
72
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL0Rlc2t0b3BBY3Rpb25zL0Rvd25sb2FkQ1NWLnRzeCJdLCJuYW1lcyI6WyJEb3dubG9hZENTViIsImtxbCIsInBhcmFtcyIsInN0YXRlIiwiZ2xvYmFsX2RhdGEiLCJ3YXRlckF1dGhvcml0eUlkIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwibG9jYWxlIiwiZG93bmxvYWQiLCJmaWx0ZXIiLCJmaWxlTmFtZSIsInVybCIsInNhbXBsaW5nc1BhZ2UiLCJmaWxlVHlwZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQUNBOztBQUNBOzs7O0FBTUEsSUFBTUEsV0FBVyxHQUFHLFNBQWRBLFdBQWMsT0FBd0I7QUFBQSxNQUFyQkMsR0FBcUIsUUFBckJBLEdBQXFCO0FBQUEsTUFBYkMsTUFBYTs7QUFDMUMscUJBQXNELDZCQUNwRCxVQUFDQyxLQUFEO0FBQUEsV0FBMENBLEtBQUssQ0FBQ0MsV0FBaEQ7QUFBQSxHQURvRCxDQUF0RDtBQUFBLE1BQVFDLGdCQUFSLGdCQUFRQSxnQkFBUjtBQUFBLDJDQUEwQkMsa0JBQTFCO0FBQUEsTUFBMEJBLGtCQUExQixzQ0FBK0MsRUFBL0M7O0FBR0EsdUJBQW1CLG9DQUFuQjtBQUFBLE1BQVFDLE1BQVIsa0JBQVFBLE1BQVI7O0FBRUEsTUFBTUMsUUFBUSxHQUFHLFNBQVhBLFFBQVcsR0FBTTtBQUNyQixtQ0FBZSw4QkFBZixFQUErQztBQUM3Q0MsTUFBQUEsTUFBTSxFQUFFUjtBQURxQyxLQUEvQztBQUdBLFFBQU1TLFFBQVEsYUFBTUosa0JBQU4sd0JBQXNDLHdCQUF0QyxDQUFkO0FBQ0EsUUFBTUssR0FBRyxHQUFHO0FBQ1ZOLE1BQUFBLGdCQUFnQixFQUFoQkE7QUFEVSxPQUVQSCxNQUZPO0FBR1ZLLE1BQUFBLE1BQU0sRUFBTkEsTUFIVTtBQUlWTixNQUFBQSxHQUFHLEVBQUhBO0FBSlUsUUFLVFcsYUFMUyxDQUtLSixRQUxMLENBS2NHLEdBTDFCO0FBTUEsNEJBQWE7QUFBRUEsTUFBQUEsR0FBRyxFQUFIQSxHQUFGO0FBQU9ELE1BQUFBLFFBQVEsRUFBUkEsUUFBUDtBQUFpQkcsTUFBQUEsUUFBUSxFQUFFO0FBQTNCLEtBQWI7QUFDRCxHQVpEOztBQWNBLHNCQUNFLDZCQUFDLG1CQUFEO0FBQVksSUFBQSxRQUFRLEVBQUVMLFFBQXRCO0FBQWdDLElBQUEsUUFBUSxFQUFFO0FBQTFDLGtCQUNFLDZCQUFDLGtCQUFELE9BREYsQ0FERjtBQUtELENBekJEOztlQTJCZVIsVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBJY29uQWN0aW9uIGZyb20gJ3NyYy91aS1raXQvSWNvbkFjdGlvbi9JY29uQWN0aW9uJztcbmltcG9ydCB7IERvd25sb2FkU3ZnIH0gZnJvbSAnc3JjL2Fzc2V0cy9pY29ucyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXJscyB9IGZyb20gJ3NyYy91dGlsaXRpZXMvdXJscyc7XG5pbXBvcnQgeyB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IGFwcFJlZHVjZXIgfSBmcm9tICdzcmMvc3RvcmUvcm9vdFJlZHVjZXInO1xuaW1wb3J0IHsgdXNlTmF2Q29udGV4dCB9IGZyb20gJ3NyYy9ob29rcy91c2VOYXZDb250ZXh0JztcbmltcG9ydCB7IGFuYWx5dGljc1RyYWNrIH0gZnJvbSAnc3JjL3V0aWxpdGllcy9BbmFseXRpY3MnO1xuaW1wb3J0IHsgZG93bmxvYWRGaWxlLCB0aW1lX2Zvcm1hdCB9IGZyb20gJ3NyYy91dGlsaXRpZXMvRmlsZSc7XG5leHBvcnQgdHlwZSBJRG93bmxvYWRQcm9wcyA9IHtcbiAga3FsOiBzdHJpbmcgfCBudWxsO1xuICBvcmRlckJ5Pzogc3RyaW5nO1xuICBvcmRlckRpcmVjdGlvbjogc3RyaW5nO1xufTtcbmNvbnN0IERvd25sb2FkQ1NWID0gKHsga3FsLCAuLi5wYXJhbXMgfSkgPT4ge1xuICBjb25zdCB7IHdhdGVyQXV0aG9yaXR5SWQsIHdhdGVyQXV0aG9yaXR5TmFtZSA9ICcnIH0gPSB1c2VTZWxlY3RvcihcbiAgICAoc3RhdGU6IFJldHVyblR5cGU8dHlwZW9mIGFwcFJlZHVjZXI+KSA9PiBzdGF0ZS5nbG9iYWxfZGF0YSxcbiAgKTtcbiAgY29uc3QgeyBsb2NhbGUgfSA9IHVzZU5hdkNvbnRleHQoKTtcblxuICBjb25zdCBkb3dubG9hZCA9ICgpID0+IHtcbiAgICBhbmFseXRpY3NUcmFjaygnU2FtcGxpbmcgT3BlcmF0aW9ucyBEb3dubG9hZCcsIHtcbiAgICAgIGZpbHRlcjoga3FsLFxuICAgIH0pO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gYCR7d2F0ZXJBdXRob3JpdHlOYW1lfS1TYW1wbGluZ3MtJHt0aW1lX2Zvcm1hdCgpfWA7XG4gICAgY29uc3QgdXJsID0gdXJscyh7XG4gICAgICB3YXRlckF1dGhvcml0eUlkLFxuICAgICAgLi4ucGFyYW1zLFxuICAgICAgbG9jYWxlLFxuICAgICAga3FsLFxuICAgIH0pLnNhbXBsaW5nc1BhZ2UuZG93bmxvYWQudXJsO1xuICAgIGRvd25sb2FkRmlsZSh7IHVybCwgZmlsZU5hbWUsIGZpbGVUeXBlOiAndGV4dC9jc3Y7Y2hhcnNldD11dGYtOCcgfSk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8SWNvbkFjdGlvbiBjYWxsYmFjaz17ZG93bmxvYWR9IHRleHRfa2V5PXsnc2FtcGxpbmdzX3BhZ2UuZG93bmxvYWRfY3N2J30+XG4gICAgICA8RG93bmxvYWRTdmcgLz5cbiAgICA8L0ljb25BY3Rpb24+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBEb3dubG9hZENTVjtcbiJdfQ==
@@ -26,9 +26,6 @@ var UploadLabResult = function UploadLabResult() {
26
26
  var waterAuthorityId = (0, _reactRedux.useSelector)(function (state) {
27
27
  return state.global_data.waterAuthorityId;
28
28
  });
29
- var waterAuthorityName = (0, _reactRedux.useSelector)(function (state) {
30
- return state.global_data.waterAuthorityName;
31
- });
32
29
  var locale = (0, _reactRedux.useSelector)(function (_ref) {
33
30
  var nav_context_data = _ref.nav_context_data;
34
31
  return nav_context_data.navContext.locale;
@@ -36,8 +33,7 @@ var UploadLabResult = function UploadLabResult() {
36
33
 
37
34
  var uploadLabResult = function uploadLabResult() {
38
35
  (0, _Analytics.analyticsTrack)('Sampling Operations upload lab result', {
39
- waterAuthorityId: waterAuthorityId,
40
- utility_name: waterAuthorityName
36
+ waterAuthorityId: waterAuthorityId
41
37
  });
42
38
  var url = (0, _urls.urls)({
43
39
  waterAuthorityId: waterAuthorityId,
@@ -54,4 +50,4 @@ var UploadLabResult = function UploadLabResult() {
54
50
 
55
51
  var _default = UploadLabResult;
56
52
  exports.default = _default;
57
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL0Rlc2t0b3BBY3Rpb25zL1VwbG9hZExhYlJlc3VsdC50c3giXSwibmFtZXMiOlsiVXBsb2FkTGFiUmVzdWx0IiwiaGlzdG9yeSIsIndhdGVyQXV0aG9yaXR5SWQiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwid2F0ZXJBdXRob3JpdHlOYW1lIiwibG9jYWxlIiwibmF2X2NvbnRleHRfZGF0YSIsIm5hdkNvbnRleHQiLCJ1cGxvYWRMYWJSZXN1bHQiLCJ1dGlsaXR5X25hbWUiLCJ1cmwiLCJzYW1wbGluZ3NQYWdlIiwicHVzaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsSUFBTUEsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixHQUFNO0FBQzVCLE1BQU1DLE9BQU8sR0FBRyxpQ0FBaEI7QUFDQSxNQUFNQyxnQkFBZ0IsR0FBRyw2QkFDdkIsVUFBQ0MsS0FBRDtBQUFBLFdBQVdBLEtBQUssQ0FBQ0MsV0FBTixDQUFrQkYsZ0JBQTdCO0FBQUEsR0FEdUIsQ0FBekI7QUFHQSxNQUFNRyxrQkFBa0IsR0FBRyw2QkFDekIsVUFBQ0YsS0FBRDtBQUFBLFdBQVdBLEtBQUssQ0FBQ0MsV0FBTixDQUFrQkMsa0JBQTdCO0FBQUEsR0FEeUIsQ0FBM0I7QUFHQSxNQUFNQyxNQUFNLEdBQUcsNkJBQ2I7QUFBQSxRQUFHQyxnQkFBSCxRQUFHQSxnQkFBSDtBQUFBLFdBQTBCQSxnQkFBZ0IsQ0FBQ0MsVUFBakIsQ0FBNEJGLE1BQXREO0FBQUEsR0FEYSxDQUFmOztBQUdBLE1BQU1HLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsR0FBTTtBQUM1QixtQ0FBZSx1Q0FBZixFQUF3RDtBQUN0RFAsTUFBQUEsZ0JBQWdCLEVBQUVBLGdCQURvQztBQUV0RFEsTUFBQUEsWUFBWSxFQUFFTDtBQUZ3QyxLQUF4RDtBQUlBLFFBQU1NLEdBQUcsR0FBRyxnQkFBSztBQUFFVCxNQUFBQSxnQkFBZ0IsRUFBaEJBLGdCQUFGO0FBQW9CSSxNQUFBQSxNQUFNLEVBQU5BO0FBQXBCLEtBQUwsRUFBbUNNLGFBQW5DLENBQWlESCxlQUFqRCxDQUNURSxHQURIO0FBRUFWLElBQUFBLE9BQU8sQ0FBQ1ksSUFBUixDQUFhRixHQUFiO0FBQ0QsR0FSRDs7QUFVQSxzQkFDRSw2QkFBQyxtQkFBRDtBQUNFLElBQUEsUUFBUSxFQUFFRixlQURaO0FBRUUsSUFBQSxRQUFRLEVBQUU7QUFGWixrQkFJRSw2QkFBQyxnQkFBRCxPQUpGLENBREY7QUFRRCxDQTdCRDs7ZUErQmVULGUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgSWNvbkFjdGlvbiBmcm9tICdzcmMvdWkta2l0L0ljb25BY3Rpb24vSWNvbkFjdGlvbic7XG5pbXBvcnQgeyBVcGxvYWRTdmcgfSBmcm9tICdzcmMvYXNzZXRzL2ljb25zJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VIaXN0b3J5IH0gZnJvbSAncmVhY3Qtcm91dGVyLWRvbSc7XG5pbXBvcnQgeyB1cmxzIH0gZnJvbSAnc3JjL3V0aWxpdGllcy91cmxzJztcbmltcG9ydCB7IHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHsgYW5hbHl0aWNzVHJhY2sgfSBmcm9tICdzcmMvdXRpbGl0aWVzL0FuYWx5dGljcyc7XG5cbmNvbnN0IFVwbG9hZExhYlJlc3VsdCA9ICgpID0+IHtcbiAgY29uc3QgaGlzdG9yeSA9IHVzZUhpc3RvcnkoKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZCA9IHVzZVNlbGVjdG9yKFxuICAgIChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCxcbiAgKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlOYW1lID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eU5hbWUsXG4gICk7XG4gIGNvbnN0IGxvY2FsZSA9IHVzZVNlbGVjdG9yKFxuICAgICh7IG5hdl9jb250ZXh0X2RhdGEgfSkgPT4gbmF2X2NvbnRleHRfZGF0YS5uYXZDb250ZXh0LmxvY2FsZSxcbiAgKTtcbiAgY29uc3QgdXBsb2FkTGFiUmVzdWx0ID0gKCkgPT4ge1xuICAgIGFuYWx5dGljc1RyYWNrKCdTYW1wbGluZyBPcGVyYXRpb25zIHVwbG9hZCBsYWIgcmVzdWx0Jywge1xuICAgICAgd2F0ZXJBdXRob3JpdHlJZDogd2F0ZXJBdXRob3JpdHlJZCxcbiAgICAgIHV0aWxpdHlfbmFtZTogd2F0ZXJBdXRob3JpdHlOYW1lLFxuICAgIH0pO1xuICAgIGNvbnN0IHVybCA9IHVybHMoeyB3YXRlckF1dGhvcml0eUlkLCBsb2NhbGUgfSkuc2FtcGxpbmdzUGFnZS51cGxvYWRMYWJSZXN1bHRcbiAgICAgIC51cmw7XG4gICAgaGlzdG9yeS5wdXNoKHVybCk7XG4gIH07XG5cbiAgcmV0dXJuIChcbiAgICA8SWNvbkFjdGlvblxuICAgICAgY2FsbGJhY2s9e3VwbG9hZExhYlJlc3VsdH1cbiAgICAgIHRleHRfa2V5PXsnc2FtcGxpbmdzX3BhZ2UudXBsb2FkX2xhYl9yZXN1bHQnfVxuICAgID5cbiAgICAgIDxVcGxvYWRTdmcgLz5cbiAgICA8L0ljb25BY3Rpb24+XG4gICk7XG59O1xuXG5leHBvcnQgZGVmYXVsdCBVcGxvYWRMYWJSZXN1bHQ7XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL0Rlc2t0b3BBY3Rpb25zL1VwbG9hZExhYlJlc3VsdC50c3giXSwibmFtZXMiOlsiVXBsb2FkTGFiUmVzdWx0IiwiaGlzdG9yeSIsIndhdGVyQXV0aG9yaXR5SWQiLCJzdGF0ZSIsImdsb2JhbF9kYXRhIiwibG9jYWxlIiwibmF2X2NvbnRleHRfZGF0YSIsIm5hdkNvbnRleHQiLCJ1cGxvYWRMYWJSZXN1bHQiLCJ1cmwiLCJzYW1wbGluZ3NQYWdlIiwicHVzaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsSUFBTUEsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixHQUFNO0FBQzVCLE1BQU1DLE9BQU8sR0FBRyxpQ0FBaEI7QUFDQSxNQUFNQyxnQkFBZ0IsR0FBRyw2QkFDdkIsVUFBQ0MsS0FBRDtBQUFBLFdBQVdBLEtBQUssQ0FBQ0MsV0FBTixDQUFrQkYsZ0JBQTdCO0FBQUEsR0FEdUIsQ0FBekI7QUFHQSxNQUFNRyxNQUFNLEdBQUcsNkJBQ2I7QUFBQSxRQUFHQyxnQkFBSCxRQUFHQSxnQkFBSDtBQUFBLFdBQTBCQSxnQkFBZ0IsQ0FBQ0MsVUFBakIsQ0FBNEJGLE1BQXREO0FBQUEsR0FEYSxDQUFmOztBQUdBLE1BQU1HLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsR0FBTTtBQUM1QixtQ0FBZSx1Q0FBZixFQUF3RDtBQUN0RE4sTUFBQUEsZ0JBQWdCLEVBQUVBO0FBRG9DLEtBQXhEO0FBR0EsUUFBTU8sR0FBRyxHQUFHLGdCQUFLO0FBQUVQLE1BQUFBLGdCQUFnQixFQUFoQkEsZ0JBQUY7QUFBb0JHLE1BQUFBLE1BQU0sRUFBTkE7QUFBcEIsS0FBTCxFQUFtQ0ssYUFBbkMsQ0FBaURGLGVBQWpELENBQ1RDLEdBREg7QUFFQVIsSUFBQUEsT0FBTyxDQUFDVSxJQUFSLENBQWFGLEdBQWI7QUFDRCxHQVBEOztBQVNBLHNCQUNFLDZCQUFDLG1CQUFEO0FBQ0UsSUFBQSxRQUFRLEVBQUVELGVBRFo7QUFFRSxJQUFBLFFBQVEsRUFBRTtBQUZaLGtCQUlFLDZCQUFDLGdCQUFELE9BSkYsQ0FERjtBQVFELENBekJEOztlQTJCZVIsZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBJY29uQWN0aW9uIGZyb20gJ3NyYy91aS1raXQvSWNvbkFjdGlvbi9JY29uQWN0aW9uJztcbmltcG9ydCB7IFVwbG9hZFN2ZyB9IGZyb20gJ3NyYy9hc3NldHMvaWNvbnMnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUhpc3RvcnkgfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB7IHVybHMgfSBmcm9tICdzcmMvdXRpbGl0aWVzL3VybHMnO1xuaW1wb3J0IHsgdXNlU2VsZWN0b3IgfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5pbXBvcnQgeyBhbmFseXRpY3NUcmFjayB9IGZyb20gJ3NyYy91dGlsaXRpZXMvQW5hbHl0aWNzJztcblxuY29uc3QgVXBsb2FkTGFiUmVzdWx0ID0gKCkgPT4ge1xuICBjb25zdCBoaXN0b3J5ID0gdXNlSGlzdG9yeSgpO1xuICBjb25zdCB3YXRlckF1dGhvcml0eUlkID0gdXNlU2VsZWN0b3IoXG4gICAgKHN0YXRlKSA9PiBzdGF0ZS5nbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLFxuICApO1xuICBjb25zdCBsb2NhbGUgPSB1c2VTZWxlY3RvcihcbiAgICAoeyBuYXZfY29udGV4dF9kYXRhIH0pID0+IG5hdl9jb250ZXh0X2RhdGEubmF2Q29udGV4dC5sb2NhbGUsXG4gICk7XG4gIGNvbnN0IHVwbG9hZExhYlJlc3VsdCA9ICgpID0+IHtcbiAgICBhbmFseXRpY3NUcmFjaygnU2FtcGxpbmcgT3BlcmF0aW9ucyB1cGxvYWQgbGFiIHJlc3VsdCcsIHtcbiAgICAgIHdhdGVyQXV0aG9yaXR5SWQ6IHdhdGVyQXV0aG9yaXR5SWQsXG4gICAgfSk7XG4gICAgY29uc3QgdXJsID0gdXJscyh7IHdhdGVyQXV0aG9yaXR5SWQsIGxvY2FsZSB9KS5zYW1wbGluZ3NQYWdlLnVwbG9hZExhYlJlc3VsdFxuICAgICAgLnVybDtcbiAgICBoaXN0b3J5LnB1c2godXJsKTtcbiAgfTtcblxuICByZXR1cm4gKFxuICAgIDxJY29uQWN0aW9uXG4gICAgICBjYWxsYmFjaz17dXBsb2FkTGFiUmVzdWx0fVxuICAgICAgdGV4dF9rZXk9eydzYW1wbGluZ3NfcGFnZS51cGxvYWRfbGFiX3Jlc3VsdCd9XG4gICAgPlxuICAgICAgPFVwbG9hZFN2ZyAvPlxuICAgIDwvSWNvbkFjdGlvbj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFVwbG9hZExhYlJlc3VsdDtcbiJdfQ==