@oneuptime/common 11.7.1 → 11.7.2

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 (237) hide show
  1. package/Models/DatabaseModels/DashboardDomain.ts +1 -0
  2. package/Models/DatabaseModels/Incident.ts +2 -0
  3. package/Models/DatabaseModels/IncidentEpisode.ts +1 -0
  4. package/Models/DatabaseModels/IncidentEpisodePublicNote.ts +1 -0
  5. package/Models/DatabaseModels/IncidentEpisodeStateTimeline.ts +1 -0
  6. package/Models/DatabaseModels/IncidentPublicNote.ts +1 -0
  7. package/Models/DatabaseModels/IncidentStateTimeline.ts +1 -0
  8. package/Models/DatabaseModels/Monitor.ts +1 -0
  9. package/Models/DatabaseModels/MonitorStatusTimeline.ts +1 -0
  10. package/Models/DatabaseModels/NetworkSite.ts +1 -0
  11. package/Models/DatabaseModels/NetworkSiteStatusTimeline.ts +1 -0
  12. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +1 -0
  13. package/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +2 -0
  14. package/Models/DatabaseModels/Probe.ts +13 -13
  15. package/Models/DatabaseModels/ScheduledMaintenance.ts +1 -0
  16. package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +1 -0
  17. package/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.ts +1 -0
  18. package/Models/DatabaseModels/ScheduledMaintenanceTemplate.ts +1 -0
  19. package/Models/DatabaseModels/StatusPage.ts +1 -0
  20. package/Models/DatabaseModels/StatusPageAnnouncement.ts +1 -0
  21. package/Models/DatabaseModels/StatusPageDomain.ts +1 -0
  22. package/Models/DatabaseModels/WorkspaceNotificationSummary.ts +1 -0
  23. package/Models/DatabaseModels/WorkspaceProjectAuthToken.ts +11 -0
  24. package/Server/API/BaseAPI.ts +17 -1
  25. package/Server/API/CommonAPI.ts +32 -0
  26. package/Server/API/MicrosoftTeamsAPI.ts +99 -2
  27. package/Server/API/ProbeAPI.ts +2 -0
  28. package/Server/API/SlackAPI.ts +62 -0
  29. package/Server/API/StatusPageAPI.ts +157 -192
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/1785140242697-AddHotQueryIndexes.ts +89 -0
  31. package/Server/Infrastructure/Postgres/SchemaMigrations/1785148065137-AddHotQueryIndexesSecondPass.ts +61 -0
  32. package/Server/Infrastructure/Postgres/SchemaMigrations/1785240000000-RepairCrossProjectMonitorStatusReferences.ts +280 -0
  33. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +6 -0
  34. package/Server/Services/DatabaseService.ts +11 -3
  35. package/Server/Services/MonitorGroupService.ts +145 -0
  36. package/Server/Services/MonitorService.ts +231 -30
  37. package/Server/Services/ProbeService.ts +319 -16
  38. package/Server/Services/StatusPageService.ts +72 -42
  39. package/Server/Services/WorkspaceNotificationRuleService.ts +232 -2
  40. package/Server/Utils/Database/PostgresErrorTranslator.ts +131 -0
  41. package/Server/Utils/Monitor/MonitorResource.ts +88 -35
  42. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +21 -1
  43. package/Server/Utils/Monitor/MonitorStepsProjectValidator.ts +158 -0
  44. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +706 -6
  45. package/Tests/Models/DatabaseModels/ProbeColumnAccessControl.test.ts +103 -0
  46. package/Tests/Server/API/BaseAPIUpdateNoOp.test.ts +135 -0
  47. package/Tests/Server/API/CommonAPIAuthGuard.test.ts +317 -0
  48. package/Tests/Server/API/MicrosoftTeamsManifest.test.ts +228 -0
  49. package/Tests/Server/API/ProbeAPI.test.ts +6 -0
  50. package/Tests/Server/API/ZZVerifyChatsAuth.test.ts +167 -0
  51. package/Tests/Server/Services/AddHotQueryIndexesMigration.test.ts +255 -0
  52. package/Tests/Server/Services/AddHotQueryIndexesSecondPassMigration.test.ts +258 -0
  53. package/Tests/Server/Services/DatabaseServiceSanitizeUpdateData.test.ts +1 -1
  54. package/Tests/Server/Services/DiscoveryScanClaimHookFreeSafety.test.ts +121 -0
  55. package/Tests/Server/Services/HeartbeatWriteFastPathSafety.test.ts +200 -0
  56. package/Tests/Server/Services/HookFreeWriteSafetySecondPass.test.ts +181 -0
  57. package/Tests/Server/Services/MonitorGroupServiceBatchedStatuses.test.ts +513 -0
  58. package/Tests/Server/Services/MonitorResourceProbeAgreementReuse.test.ts +492 -0
  59. package/Tests/Server/Services/MonitorServiceProbeSelection.test.ts +401 -0
  60. package/Tests/Server/Services/MonitorStatusTimelineFastPath.test.ts +453 -0
  61. package/Tests/Server/Services/ProbeAuthKeyCacheAndHeartbeat.test.ts +679 -0
  62. package/Tests/Server/Services/ServiceLevelObjectiveService.test.ts +3 -3
  63. package/Tests/Server/Services/StatusPageDomainResolutionCache.test.ts +245 -0
  64. package/Tests/Server/Services/StatusPageOverviewTimelineWindow.test.ts +283 -0
  65. package/Tests/Server/Services/StatusPageServiceMcp.test.ts +17 -1
  66. package/Tests/Server/Services/StatusPageServiceMonitorGroupBatching.test.ts +331 -0
  67. package/Tests/Server/Services/UserOnCallLogClaimNotificationRule.test.ts +12 -12
  68. package/Tests/Server/Services/WorkspaceNotificationRuleChats.test.ts +1390 -0
  69. package/Tests/Server/Utils/AI/Insights/InsightFixRouting.test.ts +4 -4
  70. package/Tests/Server/Utils/AI/Insights/InsightScanner.test.ts +2 -2
  71. package/Tests/Server/Utils/AI/Insights/InsightStore.test.ts +1 -3
  72. package/Tests/Server/Utils/AI/Insights/InsightStoreHardening.test.ts +1 -3
  73. package/Tests/Server/Utils/AI/Insights/InsightTriage.test.ts +1 -1
  74. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +5 -5
  75. package/Tests/Server/Utils/Alert/AlertPrivacyFilter.test.ts +187 -0
  76. package/Tests/Server/Utils/AlertEpisode/AlertEpisodePrivacyFilter.test.ts +170 -0
  77. package/Tests/Server/Utils/Database/PostgresErrorTranslator.test.ts +125 -0
  78. package/Tests/Server/Utils/Incident/IncidentPrivacyFilter.test.ts +264 -0
  79. package/Tests/Server/Utils/IncidentEpisode/IncidentEpisodePrivacyFilter.test.ts +175 -0
  80. package/Tests/Server/Utils/Monitor/MonitorStepsProjectValidator.test.ts +181 -0
  81. package/Tests/Server/Utils/Monitor/NetworkDeviceWalkUtil.test.ts +1 -1
  82. package/Tests/Server/Utils/Monitor/NetworkInventoryUtil.test.ts +2 -2
  83. package/Tests/Server/Utils/Workspace/MicrosoftTeamsChannelsList.test.ts +341 -0
  84. package/Tests/Server/Utils/Workspace/MicrosoftTeamsChats.test.ts +2175 -0
  85. package/Tests/Server/Utils/Workspace/SlackChannelsList.test.ts +585 -0
  86. package/Tests/Types/Billing/MeteredPlan.test.ts +46 -0
  87. package/Tests/Types/Workspace/NotificationRules/NotificationRuleCondition.test.ts +219 -1
  88. package/Tests/UI/Components/BulkUpdateForm.test.tsx +174 -0
  89. package/Tests/UI/Components/CardModelDetailEdit.test.tsx +315 -0
  90. package/Tests/UI/Components/ModelDetailSelect.test.tsx +229 -0
  91. package/Tests/UI/Components/ModelTable/BaseModelTableBulkSelectAll.test.tsx +1258 -0
  92. package/Tests/UI/Components/ModelTableExportFromColumns.test.ts +153 -0
  93. package/Tests/UI/Components/MonacoLoader.test.ts +67 -0
  94. package/Tests/UI/Components/MonacoRuntime.test.ts +121 -0
  95. package/Tests/UI/Components/TableBulkCsvExport.test.tsx +212 -3
  96. package/Tests/UI/Utils/Project.test.ts +809 -0
  97. package/Tests/UI/Utils/TableColumnsToCsv.test.ts +360 -0
  98. package/Tests/Utils/Alerts/AlertMetricType.test.ts +143 -0
  99. package/Tests/Utils/Dashboard/VariableUrlState.test.ts +219 -0
  100. package/Tests/Utils/Incident/IncidentMetricType.test.ts +174 -0
  101. package/Tests/Utils/Monitor/MonitorProbeSelectionUtil.test.ts +145 -0
  102. package/Tests/Utils/StatusPage/ResourceUptime.test.ts +263 -0
  103. package/Types/Workspace/NotificationRules/BaseNotificationRule.ts +4 -0
  104. package/Types/Workspace/NotificationRules/NotificationRuleCondition.ts +25 -10
  105. package/Types/Workspace/WorkspaceMessagePayload.ts +1 -0
  106. package/UI/Components/BulkUpdate/BulkUpdateForm.tsx +63 -8
  107. package/UI/Components/CodeEditor/CodeEditor.tsx +3 -0
  108. package/UI/Components/CodeEditor/MonacoLoader.ts +36 -0
  109. package/UI/Components/Forms/ModelForm.tsx +41 -18
  110. package/UI/Components/ModelDetail/CardModelDetail.tsx +23 -1
  111. package/UI/Components/ModelDetail/ModelDetail.tsx +46 -1
  112. package/UI/Components/ModelTable/BaseModelTable.tsx +300 -30
  113. package/UI/Components/ModelTable/Column.ts +12 -0
  114. package/UI/Components/ModelTable/ExportFromColumns.ts +57 -0
  115. package/UI/Components/Navbar/NavBar.tsx +66 -1
  116. package/UI/Components/Table/Table.tsx +52 -13
  117. package/UI/Components/Table/Types/Column.ts +18 -0
  118. package/UI/Utils/Project.ts +214 -18
  119. package/UI/Utils/TableColumnsToCsv.ts +86 -6
  120. package/UI/esbuild-config.js +34 -0
  121. package/Utils/Monitor/MonitorProbeSelectionUtil.ts +72 -0
  122. package/build/dist/Models/DatabaseModels/DashboardDomain.js +1 -0
  123. package/build/dist/Models/DatabaseModels/DashboardDomain.js.map +1 -1
  124. package/build/dist/Models/DatabaseModels/Incident.js +2 -0
  125. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  126. package/build/dist/Models/DatabaseModels/IncidentEpisode.js +1 -0
  127. package/build/dist/Models/DatabaseModels/IncidentEpisode.js.map +1 -1
  128. package/build/dist/Models/DatabaseModels/IncidentEpisodePublicNote.js +1 -0
  129. package/build/dist/Models/DatabaseModels/IncidentEpisodePublicNote.js.map +1 -1
  130. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js +1 -0
  131. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js.map +1 -1
  132. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +1 -0
  133. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -1
  134. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js +1 -0
  135. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js.map +1 -1
  136. package/build/dist/Models/DatabaseModels/Monitor.js +1 -0
  137. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  138. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js +1 -0
  139. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js.map +1 -1
  140. package/build/dist/Models/DatabaseModels/NetworkSite.js +1 -0
  141. package/build/dist/Models/DatabaseModels/NetworkSite.js.map +1 -1
  142. package/build/dist/Models/DatabaseModels/NetworkSiteStatusTimeline.js +1 -0
  143. package/build/dist/Models/DatabaseModels/NetworkSiteStatusTimeline.js.map +1 -1
  144. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +1 -0
  145. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  146. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +2 -0
  147. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -1
  148. package/build/dist/Models/DatabaseModels/Probe.js +13 -13
  149. package/build/dist/Models/DatabaseModels/Probe.js.map +1 -1
  150. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +1 -0
  151. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
  152. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +1 -0
  153. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -1
  154. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js +1 -0
  155. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js.map +1 -1
  156. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js +1 -0
  157. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js.map +1 -1
  158. package/build/dist/Models/DatabaseModels/StatusPage.js +1 -0
  159. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
  160. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +1 -0
  161. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -1
  162. package/build/dist/Models/DatabaseModels/StatusPageDomain.js +1 -0
  163. package/build/dist/Models/DatabaseModels/StatusPageDomain.js.map +1 -1
  164. package/build/dist/Models/DatabaseModels/WorkspaceNotificationSummary.js +1 -0
  165. package/build/dist/Models/DatabaseModels/WorkspaceNotificationSummary.js.map +1 -1
  166. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js.map +1 -1
  167. package/build/dist/Server/API/BaseAPI.js +12 -1
  168. package/build/dist/Server/API/BaseAPI.js.map +1 -1
  169. package/build/dist/Server/API/CommonAPI.js +21 -0
  170. package/build/dist/Server/API/CommonAPI.js.map +1 -1
  171. package/build/dist/Server/API/MicrosoftTeamsAPI.js +72 -2
  172. package/build/dist/Server/API/MicrosoftTeamsAPI.js.map +1 -1
  173. package/build/dist/Server/API/ProbeAPI.js +2 -0
  174. package/build/dist/Server/API/ProbeAPI.js.map +1 -1
  175. package/build/dist/Server/API/SlackAPI.js +44 -0
  176. package/build/dist/Server/API/SlackAPI.js.map +1 -1
  177. package/build/dist/Server/API/StatusPageAPI.js +98 -152
  178. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  179. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785140242697-AddHotQueryIndexes.js +36 -0
  180. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785140242697-AddHotQueryIndexes.js.map +1 -0
  181. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785148065137-AddHotQueryIndexesSecondPass.js +26 -0
  182. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785148065137-AddHotQueryIndexesSecondPass.js.map +1 -0
  183. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785240000000-RepairCrossProjectMonitorStatusReferences.js +254 -0
  184. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785240000000-RepairCrossProjectMonitorStatusReferences.js.map +1 -0
  185. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +6 -0
  186. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  187. package/build/dist/Server/Services/DatabaseService.js +10 -2
  188. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  189. package/build/dist/Server/Services/MonitorGroupService.js +118 -0
  190. package/build/dist/Server/Services/MonitorGroupService.js.map +1 -1
  191. package/build/dist/Server/Services/MonitorService.js +198 -24
  192. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  193. package/build/dist/Server/Services/ProbeService.js +238 -9
  194. package/build/dist/Server/Services/ProbeService.js.map +1 -1
  195. package/build/dist/Server/Services/StatusPageService.js +46 -39
  196. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  197. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js +178 -3
  198. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js.map +1 -1
  199. package/build/dist/Server/Utils/Database/PostgresErrorTranslator.js +80 -0
  200. package/build/dist/Server/Utils/Database/PostgresErrorTranslator.js.map +1 -0
  201. package/build/dist/Server/Utils/Monitor/MonitorResource.js +67 -29
  202. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  203. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +31 -14
  204. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
  205. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js +117 -0
  206. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js.map +1 -0
  207. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +549 -7
  208. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  209. package/build/dist/Types/Workspace/NotificationRules/NotificationRuleCondition.js +17 -7
  210. package/build/dist/Types/Workspace/NotificationRules/NotificationRuleCondition.js.map +1 -1
  211. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js +37 -11
  212. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js.map +1 -1
  213. package/build/dist/UI/Components/CodeEditor/CodeEditor.js +2 -0
  214. package/build/dist/UI/Components/CodeEditor/CodeEditor.js.map +1 -1
  215. package/build/dist/UI/Components/CodeEditor/MonacoLoader.js +34 -0
  216. package/build/dist/UI/Components/CodeEditor/MonacoLoader.js.map +1 -0
  217. package/build/dist/UI/Components/Forms/ModelForm.js +37 -17
  218. package/build/dist/UI/Components/Forms/ModelForm.js.map +1 -1
  219. package/build/dist/UI/Components/ModelDetail/CardModelDetail.js +22 -1
  220. package/build/dist/UI/Components/ModelDetail/CardModelDetail.js.map +1 -1
  221. package/build/dist/UI/Components/ModelDetail/ModelDetail.js +31 -1
  222. package/build/dist/UI/Components/ModelDetail/ModelDetail.js.map +1 -1
  223. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +234 -21
  224. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  225. package/build/dist/UI/Components/ModelTable/ExportFromColumns.js +30 -0
  226. package/build/dist/UI/Components/ModelTable/ExportFromColumns.js.map +1 -0
  227. package/build/dist/UI/Components/Navbar/NavBar.js +39 -1
  228. package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
  229. package/build/dist/UI/Components/Table/Table.js +31 -11
  230. package/build/dist/UI/Components/Table/Table.js.map +1 -1
  231. package/build/dist/UI/Utils/Project.js +161 -15
  232. package/build/dist/UI/Utils/Project.js.map +1 -1
  233. package/build/dist/UI/Utils/TableColumnsToCsv.js +67 -6
  234. package/build/dist/UI/Utils/TableColumnsToCsv.js.map +1 -1
  235. package/build/dist/Utils/Monitor/MonitorProbeSelectionUtil.js +52 -0
  236. package/build/dist/Utils/Monitor/MonitorProbeSelectionUtil.js.map +1 -0
  237. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"file":"MonitorResource.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorResource.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,mBAAmB,MAAM,oCAAoC,CAAC;AACrE,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,4BAA4B,EAAE,EACnC,6CAA6C,EAC7C,0CAA0C,GAC3C,MAAM,6CAA6C,CAAC;AACrD,OAAO,eAAe,MAAM,0CAA0C,CAAC;AACvE,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,OAAO,SAAS,MAAM,uCAAuC,CAAC;AAE9D,OAAO,gBAAgB,MAAM,2CAA2C,CAAC;AACzE,OAAO,SAA6B,MAAM,gCAAgC,CAAC;AAM3E,OAAO,WAAW,EAAE,EAClB,iBAAiB,GAClB,MAAM,oCAAoC,CAAC;AAQ5C,OAAO,qBAAqB,MAAM,sDAAsD,CAAC;AACzF,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAGhD,OAAO,aAAa,MAAM,wCAAwC,CAAC;AAInE,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,+BAA+B,MAAM,mCAAmC,CAAC;AAChF,OAAO,6BAA6B,MAAM,iCAAiC,CAAC;AAC5E,OAAO,yBAAyB,MAAM,yBAAyB,CAAC;AAChE,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,iBAAiB,MAAM,4CAA4C,CAAC;AAE3E,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAYrE,MAAM,CAAC,OAAO,OAAO,mBAAmB;IAElB,AAAb,MAAM,CAAC,KAAK,CAAC,eAAe,CACjC,aAA4B;;QAE5B,IAAI,QAAQ,GAA2B;YACrC,SAAS,EAAE,aAAa,CAAC,SAAS;YAClC,aAAa,EAAE,SAAS;YACxB,SAAS,EAAE,IAAI;SAChB,CAAC;QAEF,MAAM,iBAAiB,GAA6B;YAClD,WAAW,EAAE,aAAa,CAAC,cAAc,EAAE;YAC3C,eAAe,EAAE,EAAE;YACnB,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC/C,aAAa,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAEpD,MAAM,sBAAsB,GAA8B,EAAE,CAAC;QAE7D,MAAM,oBAAoB,GAEI,KAAK,EACjC,QAAqC,EACb,EAAE;;YAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,QAAQ,GAAW,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAE7C,IAAI,sBAAsB,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;gBACnD,OAAO,MAAA,sBAAsB,CAAC,QAAQ,CAAC,mCAAI,IAAI,CAAC;YAClD,CAAC;YAED,MAAM,aAAa,GACjB,MAAM,oBAAoB,CAAC,SAAS,CAAC;gBACnC,KAAK,EAAE;oBACL,GAAG,EAAE,QAAQ;iBACd;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,IAAI;iBACX;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEL,MAAM,UAAU,GAAkB,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,KAAI,IAAI,CAAC;YAC9D,sBAAsB,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;YAE9C,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC;QAEF,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAEpC,gBAAgB;QAChB,MAAM,OAAO,GAAmB,MAAM,cAAc,CAAC,WAAW,CAAC;YAC/D,EAAE,EAAE,aAAa,CAAC,SAAS;YAC3B,MAAM,EAAE;gBACN,YAAY,EAAE,IAAI;gBAClB,WAAW,EAAE,IAAI;gBACjB,SAAS,EAAE,IAAI;gBACf,uBAAuB,EAAE,IAAI;gBAC7B,8CAA8C,EAAE,IAAI;gBACpD,yDAAyD,EAAE,IAAI;gBAC/D,sBAAsB,EAAE,IAAI;gBAC5B,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;gBACV,qBAAqB,EAAE,IAAI;aAC5B;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QAEvD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;YACxE,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oCAAoC,CAC1E,CAAC;YACF,MAAM,IAAI,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;QAClE,CAAC;QAED,aAAa,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QAE5C,IAAI,OAAO,CAAC,uBAAuB,EAAE,CAAC;YACpC,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mEAAmE,CACzG,CAAC;YAEF,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,OAAO,CAAC,8CAA8C,EAAE,CAAC;YAC3D,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,4IAA4I,CAClL,CAAC;YAEF,MAAM,IAAI,gBAAgB,CACxB,2IAA2I,CAC5I,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,yDAAyD,EAAE,CAAC;YACtE,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sLAAsL,CAC5N,CAAC;YAEF,MAAM,IAAI,gBAAgB,CACxB,qLAAqL,CACtL,CAAC;QACJ,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;WAyBG;QACH,IAAI,KAAK,GAA0B,IAAI,CAAC;QAExC,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC;gBAC3B,GAAG,EAAE,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACvC,SAAS,EAAE,qCAAqC;gBAChD,cAAc,EAAE,IAAI;gBACpB,aAAa,EAAE,GAAG;gBAClB,oBAAoB,EAAE,EAAE;aACzB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sKAAsK,CAC5M,CAAC;YACF,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,MAAM,YAAY,GAAwB,KAAK,IAAmB,EAAE;YAClE,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC;oBACH,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC;gBACD,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,IAAI,SAAS,GAAuB,SAAS,CAAC;YAC9C,MAAM,WAAW,GAAuB,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;YAElE;;;;;eAKG;YACH,MAAM,eAAe,GAAY,OAAO,CACrC,aAAsC,CAAC,gBAAgB,CACzD,CAAC;YAEF,qCAAqC;YAErC,+FAA+F;YAC/F,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mBACnC,OAAO,CAAC,WACV,EAAE,CACH,CAAC;YAEF,IACE,OAAO,CAAC,WAAW;gBACnB,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC,EACxD,CAAC;gBACD,aAAa,GAAG,aAAqC,CAAC;gBACtD,IAAK,aAAsC,CAAC,OAAO,EAAE,CAAC;oBACpD,MAAM,YAAY,GAChB,MAAM,mBAAmB,CAAC,SAAS,CAAC;wBAClC,KAAK,EAAE;4BACL,SAAS,EAAE,OAAO,CAAC,EAAG;4BACtB,OAAO,EAAG,aAAsC,CAAC,OAAQ;yBAC1D;wBACD,MAAM,EAAE;4BACN,iBAAiB,EAAE,IAAI;4BACvB,KAAK,EAAE;gCACL,IAAI,EAAE,IAAI;6BACX;yBACF;wBACD,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC,CAAC;oBAEL,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,MAAM,IAAI,gBAAgB,CAAC,uCAAuC,CAAC,CAAC;oBACtE,CAAC;oBAED,SAAS,GAAG,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,KAAI,SAAS,CAAC;oBAElD;;;;;uBAKG;oBAEH,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,MAAM,mBAAmB,CAAC,WAAW,CAAC;4BACpC,KAAK,EAAE;gCACL,SAAS,EAAE,OAAO,CAAC,EAAG;gCACtB,OAAO,EAAG,aAAsC,CAAC,OAAQ;6BAC1D;4BACD,IAAI,EAAE;gCACJ,iBAAiB,EAAE,gCACd,CAAC,YAAY,CAAC,iBAAiB,IAAI,EAAE,CAAC,KACzC,CACE,aACD,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,kCACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,KAC5C,WAAW,EAAE,aAAa,CAAC,cAAc,EAAE,MAEvC;6BACT;4BACD,KAAK,EAAE;gCACL,MAAM,EAAE,IAAI;6BACb;yBACF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,qBAAqB,GACzB,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,MAAM;gBACzC,aAAuC,CAAC,iBAAiB;gBACxD,CAAC,CAAE,aAAuC;gBAC1C,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,sBAAsB,GAC1B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;gBAClD,aAAwC,CAAC,yBAAyB;gBACnE,CAAE,aAAwC;qBACvC,qCAAqC;gBACtC,CAAC,CAAE,aAAwC;gBAC3C,CAAC,CAAC,SAAS,CAAC;YAEhB,IAAI,uBAAuB,GAAY,KAAK,CAAC;YAE7C,MAAM,2BAA2B,GAAwB,KAAK,IAAI,EAAE;gBAClE,IAAI,uBAAuB,EAAE,CAAC;oBAC5B,OAAO;gBACT,CAAC;gBAED,IAAI,qBAAqB,EAAE,CAAC;oBAC1B,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,iCAAiC,qBAAqB,CAAC,iBAAiB,EAAE,CAChH,CAAC;oBAEF,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBAE5B;;;;;;;uBAOG;oBACH,IAAI,CAAC,qBAAqB,CAAC,0BAA0B,EAAE,CAAC;wBACtD;;;;;;;;;;;;;2BAaG;wBACH,MAAM,cAAc,CAAC,6BAA6B,CAAC;4BACjD,EAAE,EAAE,OAAO,CAAC,EAAG;4BACf,IAAI,EAAE;gCACJ,8BAA8B,EAC5B,qBAAqB,CAAC,iBAAkB;gCAC1C,qBAAqB;6BACtB;yBACF,CAAC,CAAC;wBAEH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oCAAoC,CAC1E,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mEAAmE,CACzG,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,sBAAsB,EAAE,CAAC;oBAC3B,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mCAAmC,sBAAsB,CAAC,yBAAyB,EAAE,CAC3H,CAAC;oBAEF;;;;;;;uBAOG;oBACH,MAAM,cAAc,CAAC,6BAA6B,CAAC;wBACjD,EAAE,EAAE,OAAO,CAAC,EAAG;wBACf,IAAI,EAAE;4BACJ,wCAAwC,EACtC,aAAa,CAAC,cAAc,EAAE;4BAChC,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAChC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,CACb;yBACrB;qBACT,CAAC,CAAC;oBAEH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,qCAAqC,CAC3E,CAAC;gBACJ,CAAC;gBAED,uBAAuB,GAAG,IAAI,CAAC;YACjC,CAAC,CAAC;YAEF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,2BAA2B,CACjE,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,iBAAiB,CAAC,kBAAkB,CAAC;oBACzC,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,SAAS,EAAE,SAAS,IAAI,SAAS;oBACjC,WAAW,EAAE,WAAW,IAAI,SAAS;iBACtC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBACvC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;YAED,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,0BAA0B,CAChE,CAAC;YAEF;;;;;;;eAOG;YACH,MAAM,YAAY,GAA6B,OAAO,CAAC,YAAY,CAAC;YAEpE,IACE,CAAC,YAAY;gBACb,CAAC,CAAA,MAAA,YAAY,CAAC,IAAI,0CAAE,yBAAyB,CAAA;gBAC7C,CAAA,MAAA,YAAY,CAAC,IAAI,0CAAE,yBAAyB,CAAC,MAAM,MAAK,CAAC,EACzD,CAAC;gBACD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,yBAAyB,CAC/D,CAAC;gBACF,MAAM,2BAA2B,EAAE,CAAC;gBAEpC,cAAc,CAAC,cAAc,CAAC;oBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,aAAa,EAAE,aAAa;iBAC7B,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,uCAAuC,CAC7E,CAAC;YAEF,MAAM,iBAAiB,GACrB,YAAY,CAAC,IAAI,CAAC,yBAAyB;iBACxC,GAAG,CAAC,CAAC,IAAiB,EAAE,EAAE;;gBACzB,OAAO,MAAA,IAAI,CAAC,IAAI,0CAAE,eAAe,CAAC;YACpC,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,QAAqC,EAAE,EAAE;gBAChD,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,QAAqC,EAAE,EAAE;;gBAC7C,OAAO,CAAC,GAAG,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,4BAA4B,KAAI,EAAE,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC;iBACD,IAAI,EAAE,CAAC;YAEZ,MAAM,kDAAkD,GAEpD,EAAE,CAAC;YAEP,MAAM,mBAAmB,GAAwC,EAAE,CAAC;YAEpE,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;gBACjD,mBAAmB,CAAC,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC,GAAG,gBAAgB,CAAC;gBAExE,IACE,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,SAAS;oBAChC,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,SAAS,CAAC,MAAM,IAAG,CAAC,EAC3C,CAAC;oBACD,KAAK,MAAM,gBAAgB,IAAI,gBAAgB,CAAC,IAAK,CAAC,SAAS,EAAE,CAAC;wBAChE,IAAI,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;4BACzC,IACE,CAAC,kDAAkD,CACjD,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,EACD,CAAC;gCACD,kDAAkD,CAChD,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,GAAG,EAAE,CAAC;4BACT,CAAC;4BAED,MAAA,kDAAkD,CAChD,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,0CAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,UAAU;YAEV,MAAM,+CAA+C,GAEjD,EAAE,CAAC;YAEP,MAAM,wBAAwB,GAAwC,EAAE,CAAC;YAEzE,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;gBACjD,wBAAwB,CAAC,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC;oBACvD,gBAAgB,CAAC;gBAEnB,IACE,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,MAAM;oBAC7B,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,MAAM,CAAC,MAAM,IAAG,CAAC,EACxC,CAAC;oBACD,KAAK,MAAM,aAAa,IAAI,gBAAgB,CAAC,IAAK,CAAC,MAAM,EAAE,CAAC;wBAC1D,IAAI,aAAa,CAAC,gBAAgB,EAAE,CAAC;4BACnC,IACE,CAAC,+CAA+C,CAC9C,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,EACD,CAAC;gCACD,+CAA+C,CAC7C,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,GAAG,EAAE,CAAC;4BACT,CAAC;4BAED,MAAA,+CAA+C,CAC7C,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,0CAAE,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;wBAC5B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,WAAW,GACf,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;YAEjD,MAAM,CAAC,KAAK,CACV,iBAAiB,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAC9D,CAAC;YAEF,IAAK,aAAsC,CAAC,aAAa,EAAE,CAAC;gBAC1D,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAC9C,CAAC,WAAwB,EAAE,EAAE;oBAC3B,OAAO,CACL,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE;wBACxB,aAAsC,CAAC,aAAa,CAAC,QAAQ,EAAE,CACjE,CAAC;gBACJ,CAAC,CACF,CAAC;gBACF,MAAM,CAAC,KAAK,CACV,0BAA2B,aAAsC,CAAC,aAAa,EAAE,CAClF,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;gBACrD,MAAM,2BAA2B,EAAE,CAAC;gBAEpC,cAAc,CAAC,cAAc,CAAC;oBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,aAAa,EAAE,aAAa;iBAC7B,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,+BAA+B;YAC/B,QAAQ,CAAC,qBAAqB,GAAG,WAAW,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,KAAK,CAAC,6BAA6B,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAE5D,wCAAwC;YACxC,MAAM,oBAAoB,GACxB,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CACnD,CAAC,IAAiB,EAAE,EAAE;gBACpB,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC1D,CAAC,CACF,CAAC;YAEJ,QAAQ,CAAC,iBAAiB;gBACxB,MAAA,YAAY,CAAC,IAAI,CAAC,yBAAyB,CACzC,oBAAoB,GAAG,CAAC,CACzB,0CAAE,EAAE,CAAC;YAER,MAAM,CAAC,KAAK,CAAC,yBAAyB,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAEpE,sCAAsC;YACtC,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,+BAA+B,CACrE,CAAC;YAEF,QAAQ,GAAG,MAAM,wBAAwB,CAAC,kBAAkB,CAAC;gBAC3D,aAAa,EAAE,aAAa;gBAC5B,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,OAAO;gBAChB,sBAAsB,EAAE,QAAQ;gBAChC,iBAAiB,EAAE,iBAAiB;aACrC,CAAC,CAAC;YAEH,iDAAiD;YACjD,IACE,OAAO,CAAC,WAAW;gBACnB,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC;gBACxD;;;mBAGG;gBACH,CAAC,eAAe,EAChB,CAAC;gBACD,MAAM,oBAAoB,GACxB,MAAM,mBAAmB,CAAC,mBAAmB,CAAC;oBAC5C,OAAO,EAAE,OAAO;oBAChB,WAAW,EAAE,WAAW;oBACxB,oBAAoB,EAAE,QAAQ,CAAC,aAAa,IAAI,IAAI;oBACpD,gBAAgB,EAAE,QAAQ,CAAC,SAAS,IAAI,IAAI;iBAC7C,CAAC,CAAC;gBAEL,kDAAkD;gBAClD,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC5B,IAAI,EAAE,iBAAiB;oBACvB,KAAK,EAAE,uBAAuB;oBAC9B,OAAO,EAAE,oBAAoB,CAAC,YAAY;wBACxC,CAAC,CAAC,4BAA4B,oBAAoB,CAAC,cAAc,IAAI,oBAAoB,CAAC,aAAa,kBAAkB,oBAAoB,CAAC,iBAAiB,wBAAwB;wBACvL,CAAC,CAAC,gCAAgC,oBAAoB,CAAC,cAAc,IAAI,oBAAoB,CAAC,aAAa,kBAAkB,oBAAoB,CAAC,iBAAiB,gDAAgD;oBACrN,EAAE,EAAE,aAAa,CAAC,cAAc,EAAE;iBACnC,CAAC,CAAC;gBAEH,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;oBACvC,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,+BAA+B,oBAAoB,CAAC,cAAc,IAAI,oBAAoB,CAAC,aAAa,wCAAwC,CACtL,CAAC;oBAEF,mDAAmD;oBACnD,MAAM,YAAY,EAAE,CAAC;oBAErB,MAAM,2BAA2B,EAAE,CAAC;oBAEpC,cAAc,CAAC,cAAc,CAAC;wBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;wBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;wBAC7B,aAAa,EAAE,aAAa;qBAC7B,CAAC,CAAC;oBAEH,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;oBAC/C,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,iCAAiC;gBACjC,QAAQ,CAAC,aAAa,GAAG,oBAAoB,CAAC,gBAAgB;oBAC5D,CAAC,CAAC,oBAAoB,CAAC,gBAAgB;oBACvC,CAAC,CAAC,SAAS,CAAC;gBACd,QAAQ,CAAC,SAAS,GAAG,oBAAoB,CAAC,eAAe,CAAC;gBAE1D,iDAAiD;gBACjD,IACE,QAAQ,CAAC,SAAS;oBAClB,oBAAoB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAChD,CAAC;oBACD,QAAQ,CAAC,SAAS,IAAI;2BACL,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;CAC1E,CAAC;gBACM,CAAC;YACH,CAAC;YAED;;;;;;;eAOG;YACH,IACE,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;gBACnD,iBAAiB,CAAC,IAAI,CAAC,CAAC,gBAAyC,EAAE,EAAE;oBACnE,OAAO,+BAA+B,CAAC,oBAAoB,CACzD,gBAAgB,CACjB,CAAC;gBACJ,CAAC,CAAC,EACF,CAAC;gBACD,MAAM,oBAAoB,GACxB,+BAA+B,CAAC,2BAA2B,CAAC;oBAC1D,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,iBAAiB;iBACrC,CAAC,CAAC;gBAEL,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,MAAM,eAAe,CAAC,mCAAmC,CAAC;wBACxD,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,oBAAoB;wBAClC,SAAS,EAAE,iDAAiD;wBAC5D,aAAa,EAAE,aAAa;wBAC5B,kDAAkD;wBAClD,iBAAiB,EAAE,iBAAiB;qBACrC,CAAC,CAAC;oBAEH,MAAM,YAAY,CAAC,gCAAgC,CAAC;wBAClD,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,oBAAoB;wBAClC,SAAS,EAAE,iDAAiD;wBAC5D,aAAa,EAAE,aAAa;wBAC5B,+CAA+C;wBAC/C,iBAAiB,EAAE,iBAAiB;qBACrC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACjD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oBACnC,QAAQ,CAAC,aACX,EAAE,CACH,CAAC;gBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,kBACnC,QAAQ,CAAC,SACX,EAAE,CACH,CAAC;gBAEF,IAAI,cAAc,GAA+B,SAAS,CAAC;gBAE3D,IAAI,aAAa,IAAK,aAAoC,CAAC,QAAQ,EAAE,CAAC;oBACpE,cAAc,GAAG;wBACf,cAAc,EAAG,aAAoC,CAAC,QAAQ;wBAC9D,aAAa,EAAE,aAAa,CAAC,GAAG;wBAChC,cAAc,EAAE,IAAI;qBACrB,CAAC;oBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,qBAAqB,CAC3D,CAAC;gBACJ,CAAC;gBAED,IACE,aAAa;oBACZ,aAAsC,CAAC,SAAS,EACjD,CAAC;oBACD,cAAc,GAAG;wBACf,cAAc,EAAG,aAAsC,CAAC,SAAS;wBACjE,aAAa,EAAE,aAAa,CAAC,KAAK;wBAClC,cAAc,EAAE,IAAI;qBACrB,CAAC;oBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sBAAsB,CAC5D,CAAC;gBACJ,CAAC;gBAED,IACE,aAAa;oBACZ,aAAuC,CAAC,gBAAgB;oBACxD,aAAuC,CAAC,eAAe,EACxD,CAAC;oBACD,cAAc,GAAG;wBACf,cAAc,EAAE,IAAI;wBACpB,aAAa,EAAE,aAAa,CAAC,MAAM;wBACnC,cAAc,EAAE;4BACd,eAAe,EACZ,aAAuC,CAAC,eAAe;gCACxD,IAAI;4BACN,YAAY,EAAG,aAAuC;iCACnD,gBAAgB,CAAC,YAAY;4BAChC,cAAc,EAAG,aAAuC;iCACrD,gBAAgB,CAAC,cAAc;yBACnC;qBACF,CAAC;oBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sBAAsB,CAC5D,CAAC;gBACJ,CAAC;gBAED,IACE,aAAa;oBACZ,aAA0C,CAAC,cAAc,EAC1D,CAAC;oBACD,MAAM,iBAAiB,GACrB,aAAyC,CAAC;oBAC5C,cAAc,GAAG;wBACf,cAAc,EAAE,iBAAiB,CAAC,cAAc;wBAChD,aAAa,EAAE,aAAa,CAAC,SAAS;wBACtC,cAAc,EAAE,IAAI;qBACrB,CAAC;oBAEF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,2BAA2B,CACjE,CAAC;gBACJ,CAAC;gBAED,MAAM,uBAAuB,GAC3B,mBAAmB,CAAC,QAAQ,CAAC,aAAc,CAAE,CAAC;gBAEhD,MAAM,2BAA2B,GAC/B,MAAM,yBAAyB,CAAC,2BAA2B,CAAC;oBAC1D,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,gBAAgB,EAAE,uBAAuB;oBACzC,KAAK,EAAE;wBACL,cAAc,EAAE,cAAc;qBAC/B;iBACF,CAAC,CAAC;gBAEL,IAAI,2BAA2B,EAAE,CAAC;oBAChC,MAAM,iBAAiB,GAAkB,MAAM,oBAAoB,CACjE,CAAA,MAAA,uBAAuB,CAAC,IAAI,0CAAE,eAAe;wBAC3C,2BAA2B,CAAC,eAAe,CAC9C,CAAC;oBAEF,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;wBAC5B,IAAI,EAAE,wBAAwB;wBAC9B,KAAK,EAAE,wBAAwB;wBAC/B,OAAO,EAAE,iBAAiB;4BACxB,CAAC,CAAC,8BAA8B,iBAAiB,uBAAuB,CAAA,MAAA,uBAAuB,CAAC,IAAI,0CAAE,IAAI,KAAI,kBAAkB,YAAY;4BAC5I,CAAC,CAAC,4CAA4C,CAAA,MAAA,uBAAuB,CAAC,IAAI,0CAAE,IAAI,KAAI,kBAAkB,YAAY;wBACpH,iBAAiB,EAAE,MAAA,uBAAuB,CAAC,IAAI,0CAAE,EAAE;wBACnD,EAAE,EAAE,aAAa,CAAC,cAAc,EAAE;qBACnC,CAAC,CAAC;gBACL,CAAC;gBAED;;;;;;;;mBAQG;gBACH,MAAM,4BAA4B,GAChC,MAAM,6BAA6B,CAAC,+BAA+B,CAAC;oBAClE,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;iBAC5C,CAAC,CAAC;gBAEL,MAAM,eAAe,CAAC,gDAAgD,CAAC;oBACrE,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,kDAAkD;oBAClD,gBAAgB,EAAE,uBAAuB;oBACzC,iBAAiB,EAAE,iBAAiB;oBACpC,KAAK,EAAE;wBACL,cAAc,EAAE,cAAc;qBAC/B;oBACD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;oBAC3C,4BAA4B;oBAC5B;;;;;;uBAMG;oBACH,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;gBAEH,MAAM,YAAY,CAAC,6CAA6C,CAAC;oBAC/D,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,+CAA+C;oBAC/C,gBAAgB,EAAE,wBAAwB,CAAC,QAAQ,CAAC,aAAc,CAAE;oBACpE,iBAAiB,EAAE,iBAAiB;oBACpC,KAAK,EAAE;wBACL,cAAc,EAAE,cAAc;qBAC/B;oBACD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;oBAC3C,4BAA4B;oBAC5B;;;;;uBAKG;oBACH,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;YACL,CAAC;iBAAM,IACL,CAAC,QAAQ,CAAC,aAAa;gBACvB;;;;mBAIG;gBACH,CAAC,eAAe;gBAChB,YAAY,CAAC,IAAI,CAAC,sBAAsB;gBACxC,CAAA,MAAA,OAAO,CAAC,sBAAsB,0CAAE,QAAQ,EAAE;oBACxC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EACrD,CAAC;gBACD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,+CAA+C,CACrF,CAAC;gBAEF,MAAM,eAAe,CAAC,oCAAoC,CAAC;oBACzD,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,kDAAkD;oBAClD,SAAS,EAAE,uDAAuD;oBAClE,gBAAgB,EAAE,IAAI,EAAE,mBAAmB;oBAC3C,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,iBAAiB;oBACpC;;;;;;;;uBAQG;oBACH,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;gBAEH,MAAM,YAAY,CAAC,iCAAiC,CAAC;oBACnD,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,+CAA+C;oBAC/C,SAAS,EAAE,uDAAuD;oBAClE,gBAAgB,EAAE,IAAI,EAAE,mBAAmB;oBAC3C,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,iBAAiB;oBACpC,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;gBAEH,oCAAoC;gBACpC,MAAM,yBAAyB,GAC7B,MAAM,4BAA4B,CAAC,SAAS,CAAC;oBAC3C,KAAK,EAAE;wBACL,SAAS,EAAE,OAAO,CAAC,EAAG;wBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;qBAC9B;oBACD,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,eAAe,EAAE,IAAI;qBACtB;oBACD,IAAI,EAAE;wBACJ,QAAQ,EAAE,SAAS,CAAC,UAAU;qBAC/B;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IACE,yBAAyB;oBACzB,yBAAyB,CAAC,eAAe;oBACzC,yBAAyB,CAAC,eAAe,CAAC,QAAQ,EAAE;wBAClD,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EACrD,CAAC;oBACD;;;uBAGG;gBACL,CAAC;qBAAM,CAAC;oBACN,8DAA8D;oBAC9D,MAAM,qBAAqB,GACzB,IAAI,qBAAqB,EAAE,CAAC;oBAC9B,qBAAqB,CAAC,SAAS,GAAG,OAAO,CAAC,EAAG,CAAC;oBAC9C,qBAAqB,CAAC,eAAe;wBACnC,YAAY,CAAC,IAAI,CAAC,sBAAuB,CAAC;oBAC5C,qBAAqB,CAAC,SAAS,GAAG,OAAO,CAAC,SAAU,CAAC;oBACrD,qBAAqB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,qDAAqD;oBACnG,qBAAqB,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAChD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAC9B,CAAC;oBACF,qBAAqB,CAAC,SAAS;wBAC7B,wDAAwD,CAAC;oBAE3D;;;;;;uBAMG;oBACH,IAAI,uBAAuB,GAAY,IAAI,CAAC;oBAE5C,IAAI,CAAC;wBACH,MAAM,4BAA4B,CAAC,MAAM,CAAC;4BACxC,IAAI,EAAE,qBAAqB;4BAC3B,KAAK,EAAE;gCACL,MAAM,EAAE,IAAI;6BACb;yBACF,CAAC,CAAC;wBACH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,uCAAuC,CAC7E,CAAC;oBACJ,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb;;;;;;2BAMG;wBACH,IACE,GAAG,YAAY,gBAAgB;4BAC/B,GAAG,CAAC,OAAO,KAAK,6CAA6C,EAC7D,CAAC;4BACD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,6FAA6F,CACnI,CAAC;wBACJ,CAAC;6BAAM,IACL,GAAG,YAAY,eAAe;4BAC9B,GAAG,CAAC,OAAO,KAAK,0CAA0C,EAC1D,CAAC;4BACD;;;;;;+BAMG;4BACH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,wIAAwI,CAC9K,CAAC;4BACF,uBAAuB,GAAG,KAAK,CAAC;wBAClC,CAAC;6BAAM,CAAC;4BACN,MAAM,GAAG,CAAC;wBACZ,CAAC;oBACH,CAAC;oBAED,IAAI,uBAAuB,EAAE,CAAC;wBAC5B,MAAM,iBAAiB,GAAkB,MAAM,oBAAoB,CACjE,YAAY,CAAC,IAAI,CAAC,sBAAsB,CACzC,CAAC;wBAEF,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;4BAC5B,IAAI,EAAE,wBAAwB;4BAC9B,KAAK,EAAE,yBAAyB;4BAChC,OAAO,EAAE,iBAAiB;gCACxB,CAAC,CAAC,+BAA+B,iBAAiB,4CAA4C;gCAC9F,CAAC,CAAC,uFAAuF;4BAC3F,EAAE,EAAE,aAAa,CAAC,cAAc,EAAE;yBACnC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,YAAY,EAAE,CAAC;YAErB,MAAM,2BAA2B,EAAE,CAAC;YAEpC,cAAc,CAAC,cAAc,CAAC;gBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;gBAC7B,aAAa,EAAE,aAAa;aAC7B,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,YAAY,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAGoB,AAAb,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAKxC;;QACC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,GACpE,KAAK,CAAC;QAER;;;WAGG;QACH,MAAM,aAAa,GAAwB,MAAM,mBAAmB,CAAC,MAAM,CACzE;YACE,KAAK,EAAE;gBACL,SAAS,EAAE,OAAO,CAAC,EAAG;aACvB;YACD,MAAM,EAAE;gBACN,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI;gBACf,iBAAiB,EAAE,IAAI;gBACvB,KAAK,EAAE;oBACL,gBAAgB,EAAE,IAAI;oBACtB,IAAI,EAAE,IAAI;iBACX;aACF;YACD,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CACF,CAAC;QAEF,uDAAuD;QACvD,MAAM,YAAY,GAAwB,aAAa,CAAC,MAAM,CAC5D,CAAC,EAAgB,EAAE,EAAE;;YACnB,OAAO,CACL,EAAE,CAAC,SAAS;gBACZ,CAAA,MAAA,EAAE,CAAC,KAAK,0CAAE,gBAAgB,MAAK,qBAAqB,CAAC,SAAS,CAC/D,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,mEAAmE;QACnE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,CACV,GAAG,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,uDAAuD,CACjF,CAAC;YACF,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,cAAc,EAAE,CAAC;gBACjB,aAAa,EAAE,CAAC;gBAChB,iBAAiB,EAAE,CAAC;gBACpB,gBAAgB,EAAE,oBAAoB;gBACtC,eAAe,EAAE,gBAAgB;gBACjC,gBAAgB,EAAE,EAAE;aACrB,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,MAAM,aAAa,GACjB,MAAA,OAAO,CAAC,qBAAqB,mCAAI,YAAY,CAAC,MAAM,CAAC;QACvD,4DAA4D;QAC5D,MAAM,kBAAkB,GAAW,IAAI,CAAC,GAAG,CACzC,aAAa,EACb,YAAY,CAAC,MAAM,CACpB,CAAC;QAEF;;;;WAIG;QACH,MAAM,kBAAkB,GAGpB,IAAI,GAAG,EAAE,CAAC;QAEd,MAAM,MAAM,GAAW,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;QAEjD,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;YACxC,MAAM,aAAa,GACjB,MAAA,YAAY,CAAC,iBAAiB,0CAAG,MAAM,CAAC,CAAC;YAE3C,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,uDAAuD;gBACvD,MAAM,CAAC,KAAK,CACV,GAAG,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,YAAY,MAAA,YAAY,CAAC,OAAO,0CAAE,QAAQ,EAAE,6BAA6B,MAAM,aAAa,CACtH,CAAC;gBACF,SAAS;YACX,CAAC;YAED,kDAAkD;YAClD,MAAM,YAAY,GAA2B;gBAC3C,SAAS,EAAE,OAAO,CAAC,EAAG;gBACtB,aAAa,EAAE,SAAS;gBACxB,SAAS,EAAE,IAAI;aAChB,CAAC;YAEF,MAAM,qBAAqB,GAA6B;gBACtD,WAAW,EAAE,aAAa,CAAC,cAAc,EAAE;gBAC3C,eAAe,EAAE,EAAE;gBACnB,MAAM,EAAE,EAAE;aACX,CAAC;YAEF,MAAM,iBAAiB,GACrB,MAAM,wBAAwB,CAAC,kBAAkB,CAAC;gBAChD,aAAa,EAAE,aAA8B;gBAC7C,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,OAAO;gBAChB,sBAAsB,EAAE,YAAY;gBACpC,iBAAiB,EAAE,qBAAqB;aACzC,CAAC,CAAC;YAEL,oBAAoB;YACpB,MAAM,WAAW,GAAW,iBAAiB,CAAC,aAAa,IAAI,MAAM,CAAC;YACtE,MAAM,QAAQ,GAEE,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAEpD,wCAAwC;YACxC,MAAM,SAAS,GAAW,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,KAAI,eAAe,CAAC;YAEtE,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;gBACpB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE;oBAClC,KAAK,EAAE,CAAC;oBACR,SAAS,EAAE,iBAAiB,CAAC,SAAS;oBACtC,UAAU,EAAE,CAAC,SAAS,CAAC;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,QAAQ,GAAW,CAAC,CAAC;QACzB,IAAI,iBAAiB,GAAkB,IAAI,CAAC;QAC5C,IAAI,gBAAgB,GAAkB,IAAI,CAAC;QAC3C,IAAI,iBAAiB,GAAkB,EAAE,CAAC;QAE1C,KAAK,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,kBAAkB,EAAE,CAAC;YACpD,IAAI,IAAI,CAAC,KAAK,GAAG,QAAQ,EAAE,CAAC;gBAC1B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;gBACtB,iBAAiB,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;gBAC9D,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;gBAClC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC;YACtC,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,MAAM,YAAY,GAAY,QAAQ,IAAI,kBAAkB,CAAC;QAE7D,MAAM,CAAC,KAAK,CACV,GAAG,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,6BAA6B,QAAQ,IAAI,kBAAkB,8BAA8B,iBAAiB,IAAI,MAAM,gBAAgB,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,GAAG,CACzM,CAAC;QAEF,OAAO;YACL,YAAY;YACZ,cAAc,EAAE,QAAQ;YACxB,aAAa,EAAE,kBAAkB;YACjC,iBAAiB,EAAE,YAAY,CAAC,MAAM;YACtC,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI;YACzD,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI;YACvD,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE;SACxD,CAAC;IACJ,CAAC;CACF;AAnqCqB;IADnB,WAAW,EAAE;;;;gDAw/Bb;AAGoB;IADpB,WAAW,EAAE;;;;oDAyKb"}
1
+ {"version":3,"file":"MonitorResource.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorResource.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,24 @@ import CaptureSpan from "../Telemetry/CaptureSpan";
17
17
  export default class MonitorStatusTimelineUtil {
18
18
  static async updateMonitorStatusTimeline(input) {
19
19
  // criteria filters are met, now process the actions.
20
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
20
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
21
+ /*
22
+ * Steady-state fast-path: the criteria's target status is already the
23
+ * monitor's current status (the standard "online criteria matched on a
24
+ * healthy check" case, i.e. almost every probe result). The sorted
25
+ * timeline SELECT below could only confirm what currentMonitorStatusId
26
+ * already tells us — Monitor.currentMonitorStatusId is kept in lockstep
27
+ * with the latest timeline row by MonitorStatusTimelineService — and the
28
+ * function would return null via the same-as-last-status check anyway.
29
+ * Skip the query entirely. MonitorStatusTimelineService.onBeforeCreate
30
+ * still dedupes as the concurrency backstop.
31
+ */
32
+ if (((_a = input.criteriaInstance.data) === null || _a === void 0 ? void 0 : _a.changeMonitorStatus) &&
33
+ ((_b = input.criteriaInstance.data) === null || _b === void 0 ? void 0 : _b.monitorStatusId) &&
34
+ input.criteriaInstance.data.monitorStatusId.toString() ===
35
+ ((_c = input.monitor.currentMonitorStatusId) === null || _c === void 0 ? void 0 : _c.toString())) {
36
+ return null;
37
+ }
21
38
  const lastMonitorStatusTimeline = await MonitorStatusTimelineService.findOneBy({
22
39
  query: {
23
40
  monitorId: input.monitor.id,
@@ -39,28 +56,28 @@ export default class MonitorStatusTimelineUtil {
39
56
  // if monitor does not have any status timeline, then create one.
40
57
  shouldUpdateStatus = true;
41
58
  }
42
- if (((_a = input.criteriaInstance.data) === null || _a === void 0 ? void 0 : _a.changeMonitorStatus) &&
43
- ((_b = input.criteriaInstance.data) === null || _b === void 0 ? void 0 : _b.monitorStatusId) &&
44
- ((_c = input.criteriaInstance.data) === null || _c === void 0 ? void 0 : _c.monitorStatusId.toString()) !==
45
- ((_d = lastMonitorStatusTimeline === null || lastMonitorStatusTimeline === void 0 ? void 0 : lastMonitorStatusTimeline.id) === null || _d === void 0 ? void 0 : _d.toString())) {
59
+ if (((_d = input.criteriaInstance.data) === null || _d === void 0 ? void 0 : _d.changeMonitorStatus) &&
60
+ ((_e = input.criteriaInstance.data) === null || _e === void 0 ? void 0 : _e.monitorStatusId) &&
61
+ ((_f = input.criteriaInstance.data) === null || _f === void 0 ? void 0 : _f.monitorStatusId.toString()) !==
62
+ ((_g = lastMonitorStatusTimeline === null || lastMonitorStatusTimeline === void 0 ? void 0 : lastMonitorStatusTimeline.monitorStatusId) === null || _g === void 0 ? void 0 : _g.toString())) {
46
63
  // if monitor status is changed, then create a new status timeline.
47
64
  shouldUpdateStatus = true;
48
65
  }
49
66
  // check if the current status is same as the last status.
50
- if (((_e = input.criteriaInstance.data) === null || _e === void 0 ? void 0 : _e.changeMonitorStatus) &&
51
- ((_f = input.criteriaInstance.data) === null || _f === void 0 ? void 0 : _f.monitorStatusId) &&
52
- ((_g = input.criteriaInstance.data) === null || _g === void 0 ? void 0 : _g.monitorStatusId.toString()) !==
53
- ((_h = input.monitor.currentMonitorStatusId) === null || _h === void 0 ? void 0 : _h.toString())) {
67
+ if (((_h = input.criteriaInstance.data) === null || _h === void 0 ? void 0 : _h.changeMonitorStatus) &&
68
+ ((_j = input.criteriaInstance.data) === null || _j === void 0 ? void 0 : _j.monitorStatusId) &&
69
+ ((_k = input.criteriaInstance.data) === null || _k === void 0 ? void 0 : _k.monitorStatusId.toString()) !==
70
+ ((_l = input.monitor.currentMonitorStatusId) === null || _l === void 0 ? void 0 : _l.toString())) {
54
71
  // if monitor status is changed, then create a new status timeline.
55
72
  shouldUpdateStatus = true;
56
73
  }
57
74
  if (shouldUpdateStatus) {
58
75
  const monitorLogAttributes = {
59
- projectId: (_j = input.monitor.projectId) === null || _j === void 0 ? void 0 : _j.toString(),
76
+ projectId: (_m = input.monitor.projectId) === null || _m === void 0 ? void 0 : _m.toString(),
60
77
  };
61
- logger.debug(`${(_k = input.monitor.id) === null || _k === void 0 ? void 0 : _k.toString()} - Change monitor status to ${(_m = (_l = input.criteriaInstance.data) === null || _l === void 0 ? void 0 : _l.monitorStatusId) === null || _m === void 0 ? void 0 : _m.toString()}`, monitorLogAttributes);
78
+ logger.debug(`${(_o = input.monitor.id) === null || _o === void 0 ? void 0 : _o.toString()} - Change monitor status to ${(_q = (_p = input.criteriaInstance.data) === null || _p === void 0 ? void 0 : _p.monitorStatusId) === null || _q === void 0 ? void 0 : _q.toString()}`, monitorLogAttributes);
62
79
  // change monitor status
63
- const monitorStatusId = (_o = input.criteriaInstance.data) === null || _o === void 0 ? void 0 : _o.monitorStatusId;
80
+ const monitorStatusId = (_r = input.criteriaInstance.data) === null || _r === void 0 ? void 0 : _r.monitorStatusId;
64
81
  if (!monitorStatusId) {
65
82
  throw new BadDataException("Monitor status is not defined.");
66
83
  }
@@ -103,7 +120,7 @@ export default class MonitorStatusTimelineUtil {
103
120
  */
104
121
  if (err instanceof BadDataException &&
105
122
  err.message === MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE) {
106
- logger.debug(`${(_p = input.monitor.id) === null || _p === void 0 ? void 0 : _p.toString()} - Monitor status already equals desired status; skipping duplicate status timeline (concurrent race).`);
123
+ logger.debug(`${(_s = input.monitor.id) === null || _s === void 0 ? void 0 : _s.toString()} - Monitor status already equals desired status; skipping duplicate status timeline (concurrent race).`);
107
124
  return null;
108
125
  }
109
126
  /*
@@ -119,7 +136,7 @@ export default class MonitorStatusTimelineUtil {
119
136
  */
120
137
  if (err instanceof ServerException &&
121
138
  err.message === MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE) {
122
- logger.error(`${(_q = input.monitor.id) === null || _q === void 0 ? void 0 : _q.toString()} - Could not acquire the monitor status timeline lock; skipping this status change. It will be retried on the next probe result.`);
139
+ logger.error(`${(_t = input.monitor.id) === null || _t === void 0 ? void 0 : _t.toString()} - Could not acquire the monitor status timeline lock; skipping this status change. It will be retried on the next probe result.`);
123
140
  return null;
124
141
  }
125
142
  throw err;
@@ -1 +1 @@
1
- {"version":3,"file":"MonitorStatusTimeline.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStatusTimeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MonitorStatusTimeline.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStatusTimeline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ import AlertSeverityService from "../../Services/AlertSeverityService";
2
+ import IncidentSeverityService from "../../Services/IncidentSeverityService";
3
+ import MonitorStatusService from "../../Services/MonitorStatusService";
4
+ import QueryHelper from "../../Types/Database/QueryHelper";
5
+ import { LIMIT_PER_PROJECT } from "../../../Types/Database/LimitMax";
6
+ import BadDataException from "../../../Types/Exception/BadDataException";
7
+ import MonitorSteps from "../../../Types/Monitor/MonitorSteps";
8
+ const UUID_REGEX = /[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}/g;
9
+ /*
10
+ * `monitorSteps` is a JSON blob that embeds ids of other project-scoped
11
+ * records — the default monitor status, the status each criteria switches to,
12
+ * and the severities used to open incidents and alerts. Nothing used to check
13
+ * that those ids belonged to the monitor's own project, so a status id from a
14
+ * second project could be saved and then stamped onto every
15
+ * MonitorStatusTimeline row the monitor wrote. That silently ties two projects
16
+ * together and leaves the referenced project undeletable.
17
+ *
18
+ * The check below is deliberately narrow: it only rejects an id that really is
19
+ * another project's record. monitorSteps is full of unrelated uuids (step ids,
20
+ * criteria ids, incident/alert template ids) and those never match a row here,
21
+ * so they pass through untouched. Ids that match nothing at all are also left
22
+ * alone — refusing them would block users from saving their way out of a
23
+ * monitor that already references a deleted record.
24
+ */
25
+ export default class MonitorStepsProjectValidator {
26
+ static async validateMonitorStepsBelongToProject(data) {
27
+ var _a, _b, _c, _d, _e, _f;
28
+ if (!data.monitorSteps || !data.projectId) {
29
+ return;
30
+ }
31
+ const referencedIds = this.extractUuids(data.monitorSteps);
32
+ if (referencedIds.length === 0) {
33
+ return;
34
+ }
35
+ const foreignReferences = [];
36
+ const monitorStatuses = await MonitorStatusService.findBy({
37
+ query: {
38
+ _id: QueryHelper.any(referencedIds),
39
+ },
40
+ select: { _id: true, name: true, projectId: true },
41
+ limit: LIMIT_PER_PROJECT,
42
+ skip: 0,
43
+ props: { isRoot: true },
44
+ });
45
+ for (const monitorStatus of monitorStatuses) {
46
+ if (((_a = monitorStatus.projectId) === null || _a === void 0 ? void 0 : _a.toString()) !== data.projectId.toString()) {
47
+ foreignReferences.push({
48
+ modelName: "Monitor Status",
49
+ name: monitorStatus.name || ((_b = monitorStatus.id) === null || _b === void 0 ? void 0 : _b.toString()) || "",
50
+ });
51
+ }
52
+ }
53
+ const incidentSeverities = await IncidentSeverityService.findBy({
54
+ query: {
55
+ _id: QueryHelper.any(referencedIds),
56
+ },
57
+ select: { _id: true, name: true, projectId: true },
58
+ limit: LIMIT_PER_PROJECT,
59
+ skip: 0,
60
+ props: { isRoot: true },
61
+ });
62
+ for (const incidentSeverity of incidentSeverities) {
63
+ if (((_c = incidentSeverity.projectId) === null || _c === void 0 ? void 0 : _c.toString()) !== data.projectId.toString()) {
64
+ foreignReferences.push({
65
+ modelName: "Incident Severity",
66
+ name: incidentSeverity.name || ((_d = incidentSeverity.id) === null || _d === void 0 ? void 0 : _d.toString()) || "",
67
+ });
68
+ }
69
+ }
70
+ const alertSeverities = await AlertSeverityService.findBy({
71
+ query: {
72
+ _id: QueryHelper.any(referencedIds),
73
+ },
74
+ select: { _id: true, name: true, projectId: true },
75
+ limit: LIMIT_PER_PROJECT,
76
+ skip: 0,
77
+ props: { isRoot: true },
78
+ });
79
+ for (const alertSeverity of alertSeverities) {
80
+ if (((_e = alertSeverity.projectId) === null || _e === void 0 ? void 0 : _e.toString()) !== data.projectId.toString()) {
81
+ foreignReferences.push({
82
+ modelName: "Alert Severity",
83
+ name: alertSeverity.name || ((_f = alertSeverity.id) === null || _f === void 0 ? void 0 : _f.toString()) || "",
84
+ });
85
+ }
86
+ }
87
+ if (foreignReferences.length > 0) {
88
+ const described = foreignReferences
89
+ .map((reference) => {
90
+ return `${reference.modelName} "${reference.name}"`;
91
+ })
92
+ .join(", ");
93
+ throw new BadDataException(`Monitor criteria reference records that belong to a different project: ${described}. Please pick values from this project and try again.`);
94
+ }
95
+ }
96
+ static extractUuids(monitorSteps) {
97
+ let serialized = "";
98
+ try {
99
+ serialized =
100
+ monitorSteps instanceof MonitorSteps
101
+ ? JSON.stringify(monitorSteps.toJSON())
102
+ : JSON.stringify(monitorSteps);
103
+ }
104
+ catch (_a) {
105
+ /*
106
+ * Unserializable monitorSteps is a different problem and is reported by
107
+ * MonitorSteps' own validation. Nothing to check here.
108
+ */
109
+ return [];
110
+ }
111
+ const matches = serialized.match(UUID_REGEX) || [];
112
+ return Array.from(new Set(matches.map((match) => {
113
+ return match.toLowerCase();
114
+ })));
115
+ }
116
+ }
117
+ //# sourceMappingURL=MonitorStepsProjectValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MonitorStepsProjectValidator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStepsProjectValidator.ts"],"names":[],"mappings":"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"}