@oneuptime/common 12.0.23 → 12.0.24

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 (294) hide show
  1. package/Models/DatabaseModels/DetectionRule.ts +55 -0
  2. package/Models/DatabaseModels/NetworkDeviceAutoImportRule.ts +27 -7
  3. package/Models/DatabaseModels/NetworkDeviceDiscoveryScan.ts +67 -0
  4. package/Models/DatabaseModels/Project.ts +68 -0
  5. package/Models/DatabaseModels/User.ts +68 -0
  6. package/Server/API/TelemetryAPI.ts +29 -0
  7. package/Server/Infrastructure/Postgres/SchemaMigrations/1789400000000-AddNameToNetworkDeviceDiscoveryScan.ts +28 -0
  8. package/Server/Infrastructure/Postgres/SchemaMigrations/1789500000000-AddCampaignUtmFields.ts +49 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/1789512000000-AddDetectionRuleDistinctCountColumns.ts +33 -0
  10. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +6 -0
  11. package/Server/Middleware/GzipRequestBody.ts +311 -0
  12. package/Server/Middleware/MultipartFormData.ts +87 -3
  13. package/Server/Services/DetectionRuleService.ts +73 -6
  14. package/Server/Services/Index.ts +205 -0
  15. package/Server/Services/NetworkDeviceDiscoveryScanService.ts +59 -0
  16. package/Server/Services/NetworkDeviceService.ts +148 -0
  17. package/Server/Services/OnCallDutyPolicyEscalationRuleScheduleService.ts +65 -0
  18. package/Server/Services/OnCallDutyPolicyFeedService.ts +1 -1
  19. package/Server/Services/ProjectService.ts +29 -19
  20. package/Server/Services/SecurityEventService.ts +90 -13
  21. package/Server/Services/StatusPageResourceService.ts +223 -0
  22. package/Server/Services/TelemetryAttributeService.ts +17 -0
  23. package/Server/Services/UserService.ts +4 -6
  24. package/Server/Types/Markdown.ts +161 -67
  25. package/Server/Utils/AI/Toolbox/OnCallTools.ts +12 -4
  26. package/Server/Utils/AnalyticsDatabase/Statement.ts +13 -1
  27. package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +297 -6
  28. package/Server/Utils/Attribution.ts +4 -0
  29. package/Server/Utils/Marketing/MarketingEventUtil.ts +45 -7
  30. package/Server/Utils/SecurityEvent/DetectionRuleEvaluator.ts +55 -3
  31. package/Server/Utils/SecurityEvent/Sigma/SigmaClickhouseCompiler.ts +21 -0
  32. package/Server/Utils/StartServer.ts +12 -32
  33. package/Server/Utils/Telemetry/LlmCostBudgetEvaluator.ts +101 -4
  34. package/Server/Utils/Telemetry/LlmMetricSpend.ts +130 -0
  35. package/Server/Views/Partials/AnalyticsConsent.ejs +159 -102
  36. package/Server/Views/Partials/Head.ejs +2 -1
  37. package/Tests/App/Dashboard/AdminUserNotificationMethodsPage.test.tsx +776 -38
  38. package/Tests/App/Dashboard/CorrelateFilterBuilder.test.tsx +359 -0
  39. package/Tests/App/Dashboard/CorrelateGraph.test.tsx +865 -0
  40. package/Tests/App/Dashboard/CorrelationGraph.test.ts +346 -0
  41. package/Tests/App/Dashboard/CriteriaFilterConditionDropdown.test.tsx +256 -0
  42. package/Tests/App/Dashboard/CriteriaFilterDefaults.test.ts +738 -0
  43. package/Tests/App/Dashboard/CriteriaFilterMonitorTypeChange.test.ts +1122 -0
  44. package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +283 -0
  45. package/Tests/App/Dashboard/ExternalStatusPageCriteriaFilter.test.ts +407 -0
  46. package/Tests/App/Dashboard/MetricSeriesInvestigateMenu.test.tsx +5 -14
  47. package/Tests/App/Dashboard/MonitorCriteriaActionToggles.test.tsx +426 -0
  48. package/Tests/App/Dashboard/MonitorStepsCriteriaAlignmentWiring.test.tsx +352 -0
  49. package/Tests/App/Dashboard/OnCallLayerCardOverrides.test.tsx +278 -0
  50. package/Tests/App/Dashboard/OnCallLayerShiftPreviewOverrides.test.ts +237 -0
  51. package/Tests/App/Dashboard/OnCallReadinessSurfaces.test.tsx +2 -2
  52. package/Tests/App/Dashboard/OnCallSchedulePreviewOverrides.test.tsx +460 -0
  53. package/Tests/App/Dashboard/SecurityEventAttributeUtil.test.ts +171 -0
  54. package/Tests/App/Dashboard/SecurityEventCorrelation.test.ts +857 -0
  55. package/Tests/App/Dashboard/SecurityEventDetailObservables.test.tsx +194 -0
  56. package/Tests/App/Dashboard/SecurityEventsDetectionRulesPage.test.tsx +124 -0
  57. package/Tests/App/Dashboard/SecurityEventsMonitorStepForm.test.tsx +79 -19
  58. package/Tests/App/Dashboard/SecurityEventsTableColumns.test.tsx +382 -0
  59. package/Tests/App/StatusPage/BulkAddStatusPageMonitors.test.ts +216 -0
  60. package/Tests/App/StatusPage/BulkAddStatusPageMonitorsModal.test.tsx +590 -11
  61. package/Tests/App/StatusPage/StatusPageResourceExplorer.test.tsx +757 -0
  62. package/Tests/Models/DiscoveryScanNameColumn.test.ts +293 -0
  63. package/Tests/Server/API/SecurityEventAttributesAPI.test.ts +564 -0
  64. package/Tests/Server/Infrastructure/Postgres/SchemaMigrationsOrdering.test.ts +120 -4
  65. package/Tests/Server/Middleware/GzipRequestBody.test.ts +725 -0
  66. package/Tests/Server/Middleware/MultipartFormData.test.ts +298 -0
  67. package/Tests/Server/Services/AddDetectionRuleDistinctCountColumnsMigration.test.ts +311 -0
  68. package/Tests/Server/Services/DetectionRuleService.test.ts +134 -2
  69. package/Tests/Server/Services/DiscoveryScanClaimHookFreeSafety.test.ts +7 -1
  70. package/Tests/Server/Services/FeedRetentionConsistency.test.ts +131 -0
  71. package/Tests/Server/Services/NetworkDeviceDiscoveryScanService.test.ts +194 -0
  72. package/Tests/Server/Services/NetworkDeviceMonitorStatusStamp.test.ts +800 -0
  73. package/Tests/Server/Services/OnCallScheduleAttachRosterRefresh.test.ts +244 -0
  74. package/Tests/Server/Services/SecurityEventService.test.ts +376 -0
  75. package/Tests/Server/Services/StatusPageResourceDuplicates.test.ts +703 -0
  76. package/Tests/Server/Services/TelemetryAttributeServiceSecurityEvent.test.ts +256 -0
  77. package/Tests/Server/Types/Workflow/Components/ComponentRegistryParity.test.ts +417 -0
  78. package/Tests/Server/Utils/AnalyticsDatabase/StatementGeneratorWhereOperators.test.ts +677 -0
  79. package/Tests/Server/Utils/Marketing/MarketingEventUtil.test.ts +43 -0
  80. package/Tests/Server/Utils/Monitor/Criteria/ProfileMonitorCriteria.test.ts +15 -11
  81. package/Tests/Server/Utils/SecurityEvent/DetectionRuleEvaluator.test.ts +369 -8
  82. package/Tests/Server/Utils/SecurityEvent/SigmaClickhouseCompiler.test.ts +35 -0
  83. package/Tests/Server/Utils/Telemetry/LlmCostBudgetEvaluator.test.ts +368 -4
  84. package/Tests/Server/Utils/Telemetry/LlmMetricSpend.test.ts +245 -0
  85. package/Tests/Server/Views/AnalyticsConsentPartial.test.ts +48 -5
  86. package/Tests/Types/Code/YamlSyntax.test.ts +396 -0
  87. package/Tests/Types/Monitor/MetricAndProfileDefaultCriteria.test.ts +957 -0
  88. package/Tests/Types/Monitor/MonitorCriteriaActionValidation.test.ts +598 -0
  89. package/Tests/Types/Monitor/MonitorCriteriaInstance.test.ts +49 -0
  90. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +6 -6
  91. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.test.ts +4 -4
  92. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationUtil.test.ts +4 -3
  93. package/Tests/Types/Telemetry/LlmMetricConventions.test.ts +193 -0
  94. package/Tests/UI/Components/AiInvestigationSettingsCard.test.tsx +0 -12
  95. package/Tests/UI/Components/CardModelDetailEdit.test.tsx +1 -17
  96. package/Tests/UI/Components/CodeEditor.test.tsx +474 -10
  97. package/Tests/UI/Components/Detail/YamlField.test.tsx +105 -0
  98. package/Tests/UI/Components/EntityDropdownLabelsBulkAdd.test.tsx +319 -0
  99. package/Tests/UI/Components/Forms/FormFieldYaml.test.tsx +231 -0
  100. package/Tests/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.test.ts +1 -0
  101. package/Tests/UI/Components/Forms/ValidationYAML.test.ts +234 -0
  102. package/Tests/UI/Components/ModelTable/AttributeColumns.test.tsx +573 -0
  103. package/Tests/UI/Components/ModelTable/BaseModelTableAttributeColumns.test.tsx +824 -0
  104. package/Tests/UI/Components/ModelTable/ColumnCustomizationModalAddableColumns.test.tsx +707 -0
  105. package/Tests/UI/Components/SideOver.test.tsx +1 -1
  106. package/Tests/UI/Components/StatusPage/ResourceGridSelection.test.tsx +294 -0
  107. package/Tests/UI/Components/StatusPage/ResourceListSelection.test.tsx +436 -0
  108. package/Tests/UI/Components/TableBulkCsvExport.test.tsx +6 -2
  109. package/Tests/UI/Components/Toggle.test.tsx +25 -0
  110. package/Tests/UI/Components/YamlEditor.test.tsx +847 -0
  111. package/Tests/Utils/NetworkDevice/DeviceReachabilityUtil.test.ts +252 -0
  112. package/Tests/Utils/NetworkDiscovery/DiscoveredHostUtil.test.ts +221 -0
  113. package/Tests/Utils/NetworkDiscovery/ScanNameUtil.test.ts +312 -0
  114. package/Tests/Utils/StatusPage/ResourceExplorer.test.ts +468 -0
  115. package/Tests/Utils/Telemetry/LlmMetricQuery.test.ts +472 -0
  116. package/Types/Code/YamlSyntax.ts +396 -0
  117. package/Types/Exception/ExceptionCode.ts +1 -0
  118. package/Types/Exception/PayloadTooLargeException.ts +8 -0
  119. package/Types/Marketing/Attribution.ts +10 -0
  120. package/Types/Marketing/MarketingEvent.ts +4 -0
  121. package/Types/Monitor/MonitorCriteriaInstance.ts +116 -56
  122. package/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.ts +2 -1
  123. package/Types/SecurityEvent/DetectionFindingConstants.ts +11 -0
  124. package/Types/Telemetry/LlmMetricConventions.ts +124 -0
  125. package/UI/Components/AutocompleteTextInput/AutocompleteTextInput.tsx +3 -0
  126. package/UI/Components/BulkUpdate/BulkUpdateForm.tsx +10 -1
  127. package/UI/Components/CodeEditor/CodeEditor.tsx +241 -79
  128. package/UI/Components/CodeEditor/YamlEditor.tsx +369 -0
  129. package/UI/Components/Detail/Detail.tsx +10 -0
  130. package/UI/Components/EntityDropdown/EntityDropdown.tsx +33 -0
  131. package/UI/Components/Forms/Fields/FormField.tsx +31 -0
  132. package/UI/Components/Forms/Types/Field.ts +8 -0
  133. package/UI/Components/Forms/Types/FormFieldSchemaType.ts +1 -0
  134. package/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.ts +2 -0
  135. package/UI/Components/Forms/Validation.ts +46 -0
  136. package/UI/Components/Input/Input.tsx +3 -0
  137. package/UI/Components/ModelTable/AttributeColumns.tsx +321 -0
  138. package/UI/Components/ModelTable/BaseModelTable.tsx +263 -14
  139. package/UI/Components/ModelTable/Column.ts +8 -0
  140. package/UI/Components/ModelTable/ColumnCustomizationModal.tsx +310 -0
  141. package/UI/Components/ModelTable/ColumnPreference.ts +13 -1
  142. package/UI/Components/MonitorTemplateVariables/TemplateVariablesModal.tsx +2 -2
  143. package/UI/Components/SideOver/SideOver.tsx +5 -5
  144. package/UI/Components/StatusPage/ResourceGrid.tsx +82 -2
  145. package/UI/Components/StatusPage/ResourceList.tsx +197 -38
  146. package/UI/Components/Toggle/Toggle.tsx +9 -1
  147. package/UI/Components/Types/FieldType.ts +1 -0
  148. package/Utils/NetworkDevice/DeviceReachabilityUtil.ts +73 -1
  149. package/Utils/NetworkDiscovery/ScanNameUtil.ts +181 -0
  150. package/Utils/StatusPage/ResourceExplorer.ts +258 -0
  151. package/Utils/Telemetry/LlmMetricQuery.ts +204 -0
  152. package/build/dist/Models/DatabaseModels/DetectionRule.js +57 -0
  153. package/build/dist/Models/DatabaseModels/DetectionRule.js.map +1 -1
  154. package/build/dist/Models/DatabaseModels/NetworkDeviceAutoImportRule.js +27 -7
  155. package/build/dist/Models/DatabaseModels/NetworkDeviceAutoImportRule.js.map +1 -1
  156. package/build/dist/Models/DatabaseModels/NetworkDeviceDiscoveryScan.js +69 -0
  157. package/build/dist/Models/DatabaseModels/NetworkDeviceDiscoveryScan.js.map +1 -1
  158. package/build/dist/Models/DatabaseModels/Project.js +76 -0
  159. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  160. package/build/dist/Models/DatabaseModels/User.js +76 -0
  161. package/build/dist/Models/DatabaseModels/User.js.map +1 -1
  162. package/build/dist/Server/API/TelemetryAPI.js +17 -0
  163. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  164. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1789400000000-AddNameToNetworkDeviceDiscoveryScan.js +21 -0
  165. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1789400000000-AddNameToNetworkDeviceDiscoveryScan.js.map +1 -0
  166. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1789500000000-AddCampaignUtmFields.js +42 -0
  167. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1789500000000-AddCampaignUtmFields.js.map +1 -0
  168. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1789512000000-AddDetectionRuleDistinctCountColumns.js +22 -0
  169. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1789512000000-AddDetectionRuleDistinctCountColumns.js.map +1 -0
  170. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +6 -0
  171. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  172. package/build/dist/Server/Middleware/GzipRequestBody.js +224 -0
  173. package/build/dist/Server/Middleware/GzipRequestBody.js.map +1 -0
  174. package/build/dist/Server/Middleware/MultipartFormData.js +71 -2
  175. package/build/dist/Server/Middleware/MultipartFormData.js.map +1 -1
  176. package/build/dist/Server/Services/DetectionRuleService.js +49 -4
  177. package/build/dist/Server/Services/DetectionRuleService.js.map +1 -1
  178. package/build/dist/Server/Services/Index.js +204 -0
  179. package/build/dist/Server/Services/Index.js.map +1 -1
  180. package/build/dist/Server/Services/NetworkDeviceDiscoveryScanService.js +50 -0
  181. package/build/dist/Server/Services/NetworkDeviceDiscoveryScanService.js.map +1 -1
  182. package/build/dist/Server/Services/NetworkDeviceService.js +124 -0
  183. package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
  184. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleScheduleService.js +68 -13
  185. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleScheduleService.js.map +1 -1
  186. package/build/dist/Server/Services/OnCallDutyPolicyFeedService.js +1 -1
  187. package/build/dist/Server/Services/OnCallDutyPolicyFeedService.js.map +1 -1
  188. package/build/dist/Server/Services/ProjectService.js +25 -45
  189. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  190. package/build/dist/Server/Services/SecurityEventService.js +57 -5
  191. package/build/dist/Server/Services/SecurityEventService.js.map +1 -1
  192. package/build/dist/Server/Services/StatusPageResourceService.js +140 -0
  193. package/build/dist/Server/Services/StatusPageResourceService.js.map +1 -1
  194. package/build/dist/Server/Services/TelemetryAttributeService.js +17 -0
  195. package/build/dist/Server/Services/TelemetryAttributeService.js.map +1 -1
  196. package/build/dist/Server/Services/UserService.js +2 -12
  197. package/build/dist/Server/Services/UserService.js.map +1 -1
  198. package/build/dist/Server/Types/Markdown.js +147 -61
  199. package/build/dist/Server/Types/Markdown.js.map +1 -1
  200. package/build/dist/Server/Utils/AI/Toolbox/OnCallTools.js +12 -4
  201. package/build/dist/Server/Utils/AI/Toolbox/OnCallTools.js.map +1 -1
  202. package/build/dist/Server/Utils/AnalyticsDatabase/Statement.js +12 -1
  203. package/build/dist/Server/Utils/AnalyticsDatabase/Statement.js.map +1 -1
  204. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +246 -9
  205. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
  206. package/build/dist/Server/Utils/Attribution.js.map +1 -1
  207. package/build/dist/Server/Utils/Marketing/MarketingEventUtil.js +27 -7
  208. package/build/dist/Server/Utils/Marketing/MarketingEventUtil.js.map +1 -1
  209. package/build/dist/Server/Utils/SecurityEvent/DetectionRuleEvaluator.js +42 -7
  210. package/build/dist/Server/Utils/SecurityEvent/DetectionRuleEvaluator.js.map +1 -1
  211. package/build/dist/Server/Utils/SecurityEvent/Sigma/SigmaClickhouseCompiler.js +18 -0
  212. package/build/dist/Server/Utils/SecurityEvent/Sigma/SigmaClickhouseCompiler.js.map +1 -1
  213. package/build/dist/Server/Utils/StartServer.js +12 -21
  214. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  215. package/build/dist/Server/Utils/Telemetry/LlmCostBudgetEvaluator.js +76 -5
  216. package/build/dist/Server/Utils/Telemetry/LlmCostBudgetEvaluator.js.map +1 -1
  217. package/build/dist/Server/Utils/Telemetry/LlmMetricSpend.js +102 -0
  218. package/build/dist/Server/Utils/Telemetry/LlmMetricSpend.js.map +1 -0
  219. package/build/dist/Types/Code/YamlSyntax.js +212 -0
  220. package/build/dist/Types/Code/YamlSyntax.js.map +1 -0
  221. package/build/dist/Types/Exception/ExceptionCode.js +1 -0
  222. package/build/dist/Types/Exception/ExceptionCode.js.map +1 -1
  223. package/build/dist/Types/Exception/PayloadTooLargeException.js +8 -0
  224. package/build/dist/Types/Exception/PayloadTooLargeException.js.map +1 -0
  225. package/build/dist/Types/Marketing/Attribution.js +10 -0
  226. package/build/dist/Types/Marketing/Attribution.js.map +1 -1
  227. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +112 -51
  228. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  229. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js +2 -1
  230. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js.map +1 -1
  231. package/build/dist/Types/SecurityEvent/DetectionFindingConstants.js +9 -0
  232. package/build/dist/Types/SecurityEvent/DetectionFindingConstants.js.map +1 -1
  233. package/build/dist/Types/Telemetry/LlmMetricConventions.js +98 -0
  234. package/build/dist/Types/Telemetry/LlmMetricConventions.js.map +1 -0
  235. package/build/dist/UI/Components/AutocompleteTextInput/AutocompleteTextInput.js +1 -1
  236. package/build/dist/UI/Components/AutocompleteTextInput/AutocompleteTextInput.js.map +1 -1
  237. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js +5 -2
  238. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js.map +1 -1
  239. package/build/dist/UI/Components/CodeEditor/CodeEditor.js +206 -76
  240. package/build/dist/UI/Components/CodeEditor/CodeEditor.js.map +1 -1
  241. package/build/dist/UI/Components/CodeEditor/YamlEditor.js +201 -0
  242. package/build/dist/UI/Components/CodeEditor/YamlEditor.js.map +1 -0
  243. package/build/dist/UI/Components/Detail/Detail.js +9 -0
  244. package/build/dist/UI/Components/Detail/Detail.js.map +1 -1
  245. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js +16 -1
  246. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js.map +1 -1
  247. package/build/dist/UI/Components/Forms/Fields/FormField.js +14 -1
  248. package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
  249. package/build/dist/UI/Components/Forms/Types/Field.js.map +1 -1
  250. package/build/dist/UI/Components/Forms/Types/FormFieldSchemaType.js +1 -0
  251. package/build/dist/UI/Components/Forms/Types/FormFieldSchemaType.js.map +1 -1
  252. package/build/dist/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.js +2 -0
  253. package/build/dist/UI/Components/Forms/Utils/FormFieldSchemaTypeUtil.js.map +1 -1
  254. package/build/dist/UI/Components/Forms/Validation.js +27 -0
  255. package/build/dist/UI/Components/Forms/Validation.js.map +1 -1
  256. package/build/dist/UI/Components/Input/Input.js +1 -1
  257. package/build/dist/UI/Components/Input/Input.js.map +1 -1
  258. package/build/dist/UI/Components/ModelTable/AttributeColumns.js +159 -0
  259. package/build/dist/UI/Components/ModelTable/AttributeColumns.js.map +1 -0
  260. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +179 -17
  261. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  262. package/build/dist/UI/Components/ModelTable/ColumnCustomizationModal.js +133 -2
  263. package/build/dist/UI/Components/ModelTable/ColumnCustomizationModal.js.map +1 -1
  264. package/build/dist/UI/Components/ModelTable/ColumnPreference.js +7 -1
  265. package/build/dist/UI/Components/ModelTable/ColumnPreference.js.map +1 -1
  266. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesModal.js +2 -2
  267. package/build/dist/UI/Components/SideOver/SideOver.js +5 -5
  268. package/build/dist/UI/Components/StatusPage/ResourceGrid.js +28 -2
  269. package/build/dist/UI/Components/StatusPage/ResourceGrid.js.map +1 -1
  270. package/build/dist/UI/Components/StatusPage/ResourceList.js +87 -20
  271. package/build/dist/UI/Components/StatusPage/ResourceList.js.map +1 -1
  272. package/build/dist/UI/Components/Toggle/Toggle.js +9 -1
  273. package/build/dist/UI/Components/Toggle/Toggle.js.map +1 -1
  274. package/build/dist/UI/Components/Types/FieldType.js +1 -0
  275. package/build/dist/UI/Components/Types/FieldType.js.map +1 -1
  276. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js +37 -1
  277. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js.map +1 -1
  278. package/build/dist/Utils/NetworkDiscovery/ScanNameUtil.js +120 -0
  279. package/build/dist/Utils/NetworkDiscovery/ScanNameUtil.js.map +1 -0
  280. package/build/dist/Utils/StatusPage/ResourceExplorer.js +171 -0
  281. package/build/dist/Utils/StatusPage/ResourceExplorer.js.map +1 -1
  282. package/build/dist/Utils/Telemetry/LlmMetricQuery.js +119 -0
  283. package/build/dist/Utils/Telemetry/LlmMetricQuery.js.map +1 -0
  284. package/jest.config.json +2 -0
  285. package/package.json +1 -1
  286. package/tsconfig.json +2 -1
  287. package/Tests/UI/Components/Toast.test.tsx +0 -197
  288. package/Tests/UI/Components/ToastStacking.test.tsx +0 -198
  289. package/UI/Components/Toast/Toast.tsx +0 -189
  290. package/UI/Components/Toast/ToastInit.tsx +0 -110
  291. package/build/dist/UI/Components/Toast/Toast.js +0 -123
  292. package/build/dist/UI/Components/Toast/Toast.js.map +0 -1
  293. package/build/dist/UI/Components/Toast/ToastInit.js +0 -53
  294. package/build/dist/UI/Components/Toast/ToastInit.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectService.js","sourceRoot":"","sources":["../../../../Server/Services/ProjectService.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EACL,gBAAgB,EAChB,uCAAuC,EACvC,uCAAuC,EACvC,4CAA4C,EAC5C,aAAa,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,eAAe,MAAM,8CAA8C,CAAC;AAK3E,OAAO,WAAW,MAAM,+BAA+B,CAAC;AAExD,OAAO,MAAyB,MAAM,iBAAiB,CAAC;AACxD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,gBAAgB,MAAM,2BAA2B,CAAC;AACzD,OAAO,kBAAkB,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,2BAA2B,MAAM,oDAAoD,CAAC;AAC7F,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAC9D,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AACxE,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,gBAEN,MAAM,sCAAsC,CAAC;AAC9C,OAAO,kBAAkB,MAAM,wCAAwC,CAAC;AACxE,OAAO,kBAAkB,MAAM,wCAAwC,CAAC;AACxE,OAAO,qBAAqB,MAAM,2CAA2C,CAAC;AAC9E,OAAO,EACL,KAAK,EACL,OAAO,EACP,OAAO,EACP,KAAK,EACL,SAAS,EACT,SAAS,EACT,GAAG,EACH,OAAO,EACP,MAAM,EACN,SAAS,GACV,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,MAAM,mBAAmB,CAAC;AACtC,OAAO,SAAS,MAAM,+BAA+B,CAAC;AAEtD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,iBAAiB,MAAM,qCAAqC,CAAC;AACpE,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AACtE,OAAO,sBAAsB,MAAM,8CAA8C,CAAC;AAClF,OAAO,QAAQ,MAAM,2BAA2B,CAAC;AAEjD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,gBAAgB,MAAM,8CAA8C,CAAC;AAC5E,OAAO,aAAa,MAAM,2CAA2C,CAAC;AACtE,OAAO,YAAY,MAAM,0CAA0C,CAAC;AACpE,OAAO,aAAa,MAAM,2CAA2C,CAAC;AACtE,OAAO,eAAe,MAAM,6CAA6C,CAAC;AAC1E,OAAO,sBAAsB,MAAM,gDAAgD,CAAC;AACpF,OAAO,KAAK,MAAM,qCAAqC,CAAC;AAGxD,OAAO,yBAAyB,MAAM,uDAAuD,CAAC;AAC9F,OAAO,IAAI,MAAM,kCAAkC,CAAC;AACpD,OAAO,UAAU,MAAM,wCAAwC,CAAC;AAChE,OAAO,cAAc,MAAM,4CAA4C,CAAC;AAIxE,OAAO,aAAa,MAAM,2CAA2C,CAAC;AACtE,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,UAAU,MAAM,wCAAwC,CAAC;AAChE,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,SAAS,MAAM,gCAAgC,CAAC;AACvD,OAAO,GAAG,MAAM,qBAAqB,CAAC;AAEtC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAG/C,OAAO,SAA6B,MAAM,6BAA6B,CAAC;AACxE,OAAO,gBAAgB,MAAM,oCAAoC,CAAC;AAiBlE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAW,KAAM,GAAG,GAAG,CAAC;AAExE,MAAM,OAAO,cAAe,SAAQ,eAAsB;IAiCxD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QAjCf;;;WAGG;QACK,oBAAe,GAA2B,IAAI,gBAAgB,CACpE,KAAM,CACP,CAAC;QACF;;;WAGG;QACK,4BAAuB,GAC7B,IAAI,gBAAgB,CAAC,KAAM,CAAC,CAAC;QAC/B;;;;;WAKG;QACK,qCAAgC,GACtC,IAAI,gBAAgB,CAAC,KAAM,CAAC,CAAC;QAC/B;;;;;;;WAOG;QACK,qBAAgB,GACtB,IAAI,gBAAgB,CAAC,KAAM,CAAC,CAAC;IAI/B,CAAC;IAEM,WAAW,CAAC,MAAc;QAC/B,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,IAAqB;;QAErB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAChD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,sBAAsB,CAC9B,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,4BAA4B,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7D,MAAM,EAAE,MAAA,IAAI,CAAC,KAAK,CAAC,MAAM,0CAAE,QAAQ,EAAE;SACrB,CAAC,CAAC;QAEpB,MAAM,IAAI,GAAgB,MAAM,WAAW,CAAC,WAAW,CAAC;YACtD,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;YACrB,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI;gBACX,aAAa,EAAE,IAAI;gBACnB,kBAAkB,EAAE,IAAI;gBACxB,WAAW,EAAE,IAAI;gBACjB,WAAW,EAAE,IAAI;gBACjB,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,qBAAqB,EAAE,IAAI;aAC5B;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAChD,CAAC;QAED,yDAAyD;QACzD,MAAM,4BAA4B,GAChC,MAAM,cAAc,CAAC,gCAAgC,EAAE,CAAC;QAC1D,IAAI,4BAA4B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxD,MAAM,IAAI,sBAAsB,CAC9B,gHAAgH,CACjH,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACrC,MAAM,IAAI,gBAAgB,CAAC,sCAAsC,CAAC,CAAC;YACrE,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAEvE,IAAI,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;gBACvC;;;;;mBAKG;gBAEH,MAAM,SAAS,GAAqB,MAAM,gBAAgB,CAAC,SAAS,CAAC;oBACnE,KAAK,EAAE;wBACL,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,wBAAwB;qBAChD;oBACD,MAAM,EAAE;wBACN,eAAe,EAAE,IAAI;wBACrB,SAAS,EAAE,IAAI;wBACf,YAAY,EAAE;4BACZ,GAAG,EAAE,IAAI;4BACT,QAAQ,EAAE,IAAI;4BACd,YAAY,EAAE,IAAI;4BAClB,eAAe,EAAE,IAAI;yBACE;wBACzB,UAAU,EAAE,IAAI;wBAChB,iBAAiB,EAAE,IAAI;wBACvB,QAAQ,EAAE,IAAI;wBACd,cAAc,EAAE,IAAI;qBACrB;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEH,IAAI,SAAS,EAAE,CAAC;oBACd,kDAAkD;oBAClD,IAAI,CAAA,MAAA,SAAS,CAAC,SAAS,0CAAE,QAAQ,EAAE,OAAK,MAAA,IAAI,CAAC,KAAK,0CAAE,QAAQ,EAAE,CAAA,EAAE,CAAC;wBAC/D,MAAM,IAAI,gBAAgB,CACxB,oEAAoE,CACrE,CAAC;oBACJ,CAAC;oBAED,IAAI,SAAS,CAAC,eAAe,EAAE,CAAC;wBAC9B,MAAM,IAAI,gBAAgB,CAAC,uCAAuC,CAAC,CAAC;oBACtE,CAAC;oBAED,IAAI,MAAA,SAAS,CAAC,YAAY,0CAAE,YAAY,EAAE,CAAC;wBACzC,IAAI,CAAC,IAAI,CAAC,mBAAmB;4BAC3B,MAAA,SAAS,CAAC,YAAY,0CAAE,YAAY,CAAC;oBACzC,CAAC;oBAED,IAAI,MAAA,SAAS,CAAC,YAAY,0CAAE,eAAe,EAAE,CAAC;wBAC5C,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,MAAA,SAAS,CAAC,YAAY,0CAAE,eAAe,CAAC;oBAChE,CAAC;oBAED,IAAI,SAAS,CAAC,QAAQ,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;wBAC9C,MAAM,IAAI,gBAAgB,CACxB,0DAA0D;4BACxD,SAAS,CAAC,QAAQ;4BAClB,QAAQ,CACX,CAAC;oBACJ,CAAC;oBAED,IAAI,SAAS,CAAC,iBAAiB,EAAE,CAAC;wBAChC,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC,iBAAiB,CAAC;oBAC5D,CAAC;oBAED,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;wBACzB,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;oBAC9C,CAAC;oBAED,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;wBAC7B,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC;oBACtD,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IACE,IAAI,CAAC,IAAI,CAAC,wBAAwB;gBAClC,CAAC,CAAC,MAAM,cAAc,CAAC,gBAAgB,CACrC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CACnC,CAAC,EACF,CAAC;gBACD,MAAM,IAAI,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;YACvD,CAAC;YAED,+BAA+B;QACjC,CAAC;QAED,wEAAwE;QAExE,IAAI,gCAAgC,GAAW,CAAC,CAAC;QACjD,IACE,IAAI,CAAC,KAAK,CAAC,0BAA0B;YACrC,CAAA,MAAA,IAAI,CAAC,KAAK,CAAC,0BAA0B,0CAAE,UAAU,CAAC,MAAM,IAAG,CAAC,EAC5D,CAAC;YACD,gCAAgC,GAAG,CACjC,MAAM,IAAI,CAAC,OAAO,CAAC;gBACjB,KAAK,EAAE;oBACL,GAAG,EAAE,WAAW,CAAC,GAAG,CAClB,CAAA,MAAA,IAAI,CAAC,KAAK,CAAC,0BAA0B,0CAAE,UAAU,CAAC,GAAG,CACnD,CAAC,IAAc,EAAE,EAAE;wBACjB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACzB,CAAC,CACF,KAAI,EAAE,CACR;oBACD,IAAI,EAAE,WAAW,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC;iBACpD;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CACH,CAAC,QAAQ,EAAE,CAAC;QACf,CAAC;QAED,IAAI,gCAAgC,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,gBAAgB,CAAC,2CAA2C,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAK,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,KAAM,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAmB,CAAC;QACvD,IAAI,CAAC,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,WAAY,CAAC;QAEtD,YAAY;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAY,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAU,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAU,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAQ,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAW,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAO,CAAC;QAEhC,iDAAiD;QACjD,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAS,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAsB,CAAC;QAE9D,+BAA+B;QAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,EAAE,CAAC;YAChD,IAAI,CAAC,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC;YAC3C,IAAI,CAAC,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC;QAChD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,wBAAwB,GAAG,KAAK,CAAC;QAC7C,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IAEsB,AAAN,KAAK,CAAC,eAAe,CACtC,QAAyB,EACzB,cAA+B;QAE/B,MAAM,UAAU,GAA4B,QAAQ,CAAC,QAAQ;aAC1D,IAA0C,CAAC;QAE9C,IAAI,CAAC,CAAC,wBAAwB,IAAI,UAAU,CAAC,EAAE,CAAC;YAC9C,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,YAAY,GAAY,UAAU,CAAC,wBAAwB,CAAC,KAAK,IAAI,CAAC;QAE5E,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,2BAA2B,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBAElD,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,2BAA2B,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBACnE,CAAC;qBAAM,CAAC;oBACN;;;uBAGG;oBACH,MAAM,2BAA2B,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CACT,kFAAkF,SAAS,CAAC,QAAQ,EAAE,EAAE,CACzG,CAAC;gBACF,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;;QAEzB;;;WAGG;QACH,IAAI,QAAQ,CAAC,IAAI,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACnD,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;QACvC,CAAC;QAED,IAAI,QAAQ,CAAC,IAAI,CAAC,2BAA2B,KAAK,SAAS,EAAE,CAAC;YAC5D,IAAI,CAAC,gCAAgC,CAAC,KAAK,EAAE,CAAC;QAChD,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,IACE,QAAQ,CAAC,IAAI,CAAC,eAAe;gBAC7B,QAAQ,CAAC,IAAI,CAAC,sBAAsB;gBACpC,QAAQ,CAAC,IAAI,CAAC,sBAAsB;gBACpC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAC/C,CAAC;gBACD,MAAM,CAAC,KAAK,CACV,mFAAmF,CACpF,CAAC;gBACF,MAAM,CAAC,KAAK,CACV,2DAA2D,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,6BAA6B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,6BAA6B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,0BAA0B,QAAQ,CAAC,IAAI,CAAC,mBAAmB,EAAE,CACnT,CAAC;gBAEF,kBAAkB;gBAClB,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;oBACnD,EAAE,EAAE,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAc,CAAC;oBAC/C,MAAM,EAAE;wBACN,yBAAyB,EAAE,IAAI;wBAC/B,sBAAsB,EAAE,IAAI;wBAC5B,mBAAmB,EAAE,IAAI;qBAC1B;oBACD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;iBACxB,CAAC,CAAC;gBAEH,MAAM,CAAC,KAAK,CACV,8DAA8D,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,yBAAyB,mCAAoC,OAAe,aAAf,OAAO,uBAAP,OAAO,CAAU,mBAAmB,EAAE,CAC3K,CAAC;gBAEF,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,yBAAyB,EAAE,CAAC;oBACvC,IAAI,CAAC;wBACH,MAAM,wBAAwB,GAC5B,QAAQ,CAAC,IAAI,CAAC,mBAAmB,KAAK,SAAS;4BAC7C,CAAC,CAAE,QAAQ,CAAC,IAAI,CAAC,mBAA+B;4BAChD,CAAC,CAAE,OAAe,CAAC,mBAAmB,IAAI,IAAI,CAAC;wBAEnD,MAAM,CAAC,KAAK,CACV,kGAAkG,wBAAwB,EAAE,CAC7H,CAAC;wBAEF,MAAM,cAAc,CAAC,6BAA6B,CAChD,OAAO,CAAC,yBAAyB,EAChC,QAAQ,CAAC,IAAI,CAAC,eAA0B,IAAI,EAAE,EAC9C,QAAQ,CAAC,IAAI,CAAC,sBAAiC,IAAI,IAAI,EACvD,QAAQ,CAAC,IAAI,CAAC,sBAAiC;4BAC7C,OAAe,CAAC,sBAAsB;4BACvC,IAAI,EACN,wBAAwB,CACzB,CAAC;wBAEF,MAAM,CAAC,KAAK,CACV,8EAA8E,OAAO,CAAC,yBAAyB,EAAE,CAClH,CAAC;oBACJ,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,CAAC,KAAK,CACV,sEAAsE,GAAG,EAAE,EAC3E,EAAE,SAAS,EAAE,MAAA,QAAQ,CAAC,KAAK,CAAC,GAAG,0CAAE,QAAQ,EAAE,EAAmB,CAC/D,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CACV,0EAA0E,CAC3E,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,CAAC,IAAI,CAAC,kCAAkC,EAAE,CAAC;gBACrD,MAAM,mBAAmB,CAAC,sBAAsB,CAC9C,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAc,CAAC,EAC3C;oBACE,mCAAmC,EAAE,QAAQ,CAAC,IAAI;yBAC/C,mCAA6C;oBAChD,iDAAiD,EAAE,QAAQ,CAAC,IAAI;yBAC7D,iDAA2D;oBAC9D,kCAAkC,EAAE,QAAQ,CAAC,IAAI;yBAC9C,kCAA6C;iBACjD,CACF,CAAC;YACJ,CAAC;YAED,IACE,QAAQ,CAAC,IAAI,CAAC,qBAAqB;gBACnC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW;gBAC3B,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,EACtB,CAAC;gBACD,MAAM,IAAI,gBAAgB,CACxB,0EAA0E,CAC3E,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;IACxC,CAAC;IAGY,AAAN,KAAK,CAAC,UAAU,CAAC,MAIvB;;QACC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YACnD,EAAE,EAAE,MAAM,CAAC,SAAS;YACpB,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,6BAA6B,EAAE,IAAI;gBACnC,oCAAoC,EAAE,IAAI;gBAC1C,gCAAgC,EAAE,IAAI;gBACtC,qBAAqB,EAAE,IAAI;gBAC3B,WAAW,EAAE,IAAI;gBACjB,yBAAyB,EAAE,IAAI;gBAC/B,iBAAiB,EAAE,IAAI;gBACvB;;;;;;mBAMG;gBACH,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;gBACd,qBAAqB,EAAE,IAAI;aAC5B;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;YAC3C,MAAM,IAAI,gBAAgB,CAAC,yCAAyC,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,oCAAoC,EAAE,CAAC;YAClD,MAAM,IAAI,gBAAgB,CACxB,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC;YACvC,MAAM,IAAI,gBAAgB,CAAC,qCAAqC,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,iBAAiB,GAAY,MAAM,cAAc,CAAC,iBAAiB,CACvE,OAAO,CAAC,yBAAyB,CAClC,CAAC;QAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,IAAI,GACR,gBAAgB,CAAC,uBAAuB,CACtC,MAAM,CAAC,qBAAqB,EAC5B,aAAa,EAAE,CAChB,CAAC;QAEJ,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,gBAAgB,CAAC,cAAc,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,KAAK,GAAuB,OAAO,CAAC,gCAAgC,CAAC;QAEzE,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACzB,KAAK,GAAG,MAAM,iBAAiB,CAAC,iCAAiC,CAC/D,OAAO,CAAC,EAAG,CACZ,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,KAAK,CACV,6BAA6B,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,OAAO,IAAI,CAAC,OAAO,EAAE,eAAe,KAAK,EAAE,EAC9F,EAAE,SAAS,EAAE,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,EAAmB,CACvD,CAAC;QAEF,MAAM,UAAU,GACd,MAAM,CAAC,UAAU,KAAK,SAAS;YAC7B,CAAC,CAAC,MAAM,CAAC,UAAU,IAAI,SAAS;YAChC,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,SAAS,CAAC;QAEvC,MAAM,YAAY,GAKd,MAAM,cAAc,CAAC,UAAU,CAAC;YAClC,SAAS,EAAE,OAAO,CAAC,EAAG;YACtB,cAAc,EAAE,OAAO,CAAC,6BAA6B;YACrD,qBAAqB,EAAE,OAAO,CAAC,oCAAoC;YACnE,kBAAkB,EAAE,eAAe;YACnC,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,MAAM,CAAC,qBAAqB;YACjE,UAAU,EAAE,UAAU;SACvB,CAAC,CAAC;QAEH,MAAM,iBAAiB,GACrB,MAAM,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;QAEjE,MAAM,wBAAwB,GAC5B,MAAM,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC;QAExE,MAAM,UAAU,GAAkC;YAChD,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;YACnD,6BAA6B,EAAE,YAAY,CAAC,cAAc;YAC1D,oCAAoC,EAAE,YAAY,CAAC,qBAAqB;YACxE,gCAAgC,EAAE,KAAK;YACvC,WAAW,EAAE,YAAY,CAAC,WAAW,IAAI,UAAU,IAAI,IAAI,IAAI,EAAE;YACjE,QAAQ,EAAE,gBAAgB,CAAC,WAAW,CACpC,MAAM,CAAC,qBAAqB,EAC5B,aAAa,EAAE,CAChB;SACF,CAAC;QAEF,IAAI,wBAAwB,EAAE,CAAC;YAC7B,UAAU,CAAC,wCAAwC;gBACjD,wBAAwB,CAAC;QAC7B,CAAC;QAED,IAAI,iBAAiB,EAAE,CAAC;YACtB,UAAU,CAAC,iCAAiC,GAAG,iBAAiB,CAAC;QACnE,CAAC;QAED,MAAM,IAAI,CAAC,aAAa,CAAC;YACvB,EAAE,EAAE,OAAO,CAAC,EAAG;YACf,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH;;;WAGG;QACH,IAAI,CAAC,uCAAuC,CAAC;YAC3C,SAAS,EAAE,OAAO,CAAC,EAAG;YACtB,eAAe,EAAE,YAAY,CAAC,kCAAkC;SACjE,CAAC,CAAC;QAEH,IAAI,CAAC,0BAA0B,CAAC;YAC9B,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAM,CAAC,qBAAqB;YACvC,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,8CAA8C,CAAC,OAAO,CAAC,EAAG,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,KAAK,CAAC,sBAAsB,CAClC,cAAsB;QAEtB,IAAI,CAAC;YACH,OAAO,MAAM,cAAc,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;QACpE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,cAAc,EAAmB,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACK,uCAAuC,CAAC,IAG/C;QACC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/D,OAAO;QACT,CAAC;QAED,MAAM,CAAC,KAAK,CACV,wEAAwE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,mFAAmF,IAAI,CAAC,eAAe,CAAC,IAAI,CAC3M,IAAI,CACL,EAAE,EACH;YACE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;SACpB,CACnB,CAAC;QAEF,IAAI,CAAC,4CAA4C,EAAE,CAAC;YAClD,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAW;gBACjB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;sDACa,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;;CAEpF,CAAC;QAEE;;;;;;;WAOG;QACH,IAAI,CAAC;YACH,SAAS,CAAC,sCAAsC,CAAC;gBAC/C,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,4CAA4C,CAAC;gBACjE,IAAI,EAAE,YAAY;aACnB,CAAC,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;gBACxB,MAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,KAAK,EAAE;oBACpD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;iBACpB,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,KAAK,EAAE;gBACpD,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;aACpB,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IAEU,AAAN,KAAK,CAAC,WAAW,CAAC,MAIxB;;QACC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YACnD,EAAE,EAAE,MAAM,CAAC,SAAS;YACpB,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,WAAW,EAAE,IAAI;gBACjB,6BAA6B,EAAE,IAAI;gBACnC,oCAAoC,EAAE,IAAI;aAC3C;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;YAC3C,MAAM,IAAI,gBAAgB,CAAC,yCAAyC,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,oCAAoC,EAAE,CAAC;YAClD,MAAM,IAAI,gBAAgB,CACxB,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,CAAC,WAAW,CAAC;YAC/B,cAAc,EAAE,OAAO,CAAC,6BAA6B;YACrD,qBAAqB,EAAE,OAAO,CAAC,oCAAoC;YACnE,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC,CAAC;QAEH;;;;WAIG;QACH,MAAM,kBAAkB,GACtB,MAAM,cAAc,CAAC,qBAAqB,CACxC,OAAO,CAAC,6BAA6B,CACtC,CAAC;QAEJ,MAAM,yBAAyB,GAC7B,MAAM,cAAc,CAAC,qBAAqB,CACxC,OAAO,CAAC,oCAAoC,CAC7C,CAAC;QAEJ,MAAM,IAAI,CAAC,aAAa,CAAC;YACvB,EAAE,EAAE,OAAO,CAAC,EAAG;YACf,IAAI,EAAE;gBACJ,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,iCAAiC,EAAE,kBAAkB;gBACrD,wCAAwC,EAAE,yBAAyB;aACpE;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH;;;WAGG;QACH,MAAM,CAAC,IAAI,CACT,qBAAqB,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,kBACzC,CAAA,MAAA,OAAO,CAAC,WAAW,0CAAE,WAAW,EAAE,KAAI,MACxC,OAAO,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,oBACrC,CAAA,MAAA,MAAM,CAAC,gBAAgB,0CAAE,QAAQ,EAAE,KAAI,SACzC,EAAE,CACH,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,mCAAmC,CAAC,IAK3C;;QACC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,0EAA0E;QAC1E,MAAM,kBAAkB,GAAkB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACnE,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,MAAM;gBAC3C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,EAAE;gBAC9C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;QAEpD,MAAM,UAAU,GACd,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAC3B,CAAC,kBAAkB,KAAK,IAAI,IAAI,kBAAkB,GAAG,CAAC,CAAC,CAAC;QAE1D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAe;YAC7B,UAAU,EAAE,CAAA,MAAA,IAAI,CAAC,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,EAAE;YAC7C,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB;;;eAGG;YACH,kBAAkB,EAAE,IAAI;YACxB,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAC/C,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE;YACxC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE;YACxC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE;YAC5C,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE;YACpC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE;YAC1C,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE;SACvC,CAAC;QAEF,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;YAChC,UAAU,CAAC,2BAA2B,CAAC,GAAG,kBAAkB,CAAC;YAC7D,oEAAoE;YACpE,UAAU,CAAC,OAAO,CAAC,GAAG,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC;YACtD,UAAU,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;QACjC,CAAC;QAED,gBAAgB,CAAC,OAAO,CAAC;YACvB,KAAK,EAAE,6BAA6B;YACpC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE;YACrD,UAAU,EAAE,UAAU;SACvB,CAAC,CAAC;QAEH,kBAAkB,CAAC,gBAAgB,CACjC,kBAAkB,CAAC,UAAU,CAAC;YAC5B,SAAS,EAAE,kBAAkB,CAAC,mBAAmB;YACjD;;;;;eAKG;YACH,OAAO,EAAE,GAAG,kBAAkB,CAAC,mBAAmB,IAAI,MAAA,IAAI,CAAC,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,EAAE;YACnF,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE;YAChD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE;YAChD,iBAAiB,EAAE,IAAI,CAAC,OAAO;YAC/B,IAAI,EAAE,UAAU;SACjB,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACK,0BAA0B,CAAC,IAKlC;;QACC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GACb,IAAI,CAAC,OAAO,CAAC,qBAAqB,IAAI,SAAS,CAAC;QAElD,yEAAyE;QACzE,IAAI,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAiC,SAAS;YACrD,CAAC,CAAC,gBAAgB,CAAC,uBAAuB,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC;YACtE,CAAC,CAAC,SAAS,CAAC;QAEd,0EAA0E;QAC1E,MAAM,qBAAqB,GAGN,CACnB,IAAkC,EAClC,MAA0B,EACX,EAAE;YACjB,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC/C,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,IAAI,CAAC,eAAe,EAAE,KAAK,MAAM;gBACtC,CAAC,CAAC,IAAI,CAAC,gCAAgC,EAAE;gBACzC,CAAC,CAAC,IAAI,CAAC,iCAAiC,EAAE,CAAC;QAC/C,CAAC,CAAC;QAEF,MAAM,qBAAqB,GAAkB,qBAAqB,CAChE,OAAO,EACP,SAAS,CACV,CAAC;QACF,MAAM,qBAAqB,GAAkB,qBAAqB,CAChE,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,SAAS,CACf,CAAC;QAEF,MAAM,YAAY,GAAkB,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,MAAM,YAAY,GAAW,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAEzD,MAAM,aAAa,GACjB,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAC9B,CAAC,qBAAqB,KAAK,IAAI,IAAI,qBAAqB,GAAG,CAAC,CAAC,CAAC;QAEhE,MAAM,UAAU,GAAe;YAC7B,UAAU,EAAE,CAAA,MAAA,IAAI,CAAC,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,EAAE;YAC7C,QAAQ,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,EAAE,KAAI,EAAE;YAClC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE;YAChC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,YAAY,KAAK,IAAI,IAAI,YAAY,GAAG,YAAY;YAChE,YAAY,EAAE,YAAY,KAAK,IAAI,IAAI,YAAY,GAAG,YAAY;YAClE,iEAAiE;YACjE,kBAAkB,EAChB,YAAY,KAAK,IAAI,IAAI,YAAY,KAAK,YAAY;YACxD,kBAAkB,EAAE,qBAAqB,KAAK,CAAC,IAAI,aAAa;YAChE,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;YAClD,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE;YACxC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE;YACxC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE;YAC5C,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE;SACvC,CAAC;QAEF,IAAI,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACnC,UAAU,CAAC,2BAA2B,CAAC,GAAG,qBAAqB,CAAC;QAClE,CAAC;QAED,IAAI,qBAAqB,KAAK,IAAI,EAAE,CAAC;YACnC,UAAU,CAAC,2BAA2B,CAAC,GAAG,qBAAqB,CAAC;YAChE,wEAAwE;YACxE,UAAU,CAAC,OAAO,CAAC,GAAG,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC;YACzD,UAAU,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;QACjC,CAAC;QAED,gBAAgB,CAAC,OAAO,CAAC;YACvB,KAAK,EAAE,kCAAkC;YACzC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE;YACrD,UAAU,EAAE,UAAU;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,4BAA4B,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,UAAU,EAAE,UAAU;YACtB,SAAS,EAAE,UAAU,CAAC,YAAY,CAAC,KAAK,IAAI;YAC5C,WAAW,EAAE,UAAU,CAAC,cAAc,CAAC,KAAK,IAAI;SACjD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,4BAA4B,CAAC,IAKpC;;QACC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAuB,IAAI,CAAC,SAAS;YAClD,CAAC,CAAC,kBAAkB,CAAC,oBAAoB;YACzC,CAAC,CAAC,kBAAkB,CAAC,sBAAsB,CAAC;QAE9C,MAAM,UAAU,GAAS,IAAI,IAAI,EAAE,CAAC;QAEpC,kBAAkB,CAAC,gBAAgB,CACjC,kBAAkB,CAAC,UAAU,CAAC;YAC5B,SAAS,EAAE,SAAS;YACpB;;;;eAIG;YACH,OAAO,EAAE,GAAG,SAAS,IAAI,MAAA,IAAI,CAAC,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,IAAI,UAAU,CAAC,WAAW,EAAE,EAAE;YAClF,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,MAAA,IAAI,CAAC,OAAO,CAAC,iBAAiB,0CAAE,QAAQ,EAAE;YACjD,iBAAiB,EAAE,IAAI,CAAC,OAAO;YAC/B,IAAI,EAAE,IAAI,CAAC,UAAU;SACtB,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,8CAA8C,CAC1D,SAAmB;;QAEnB,IAAI,4CAA4C,EAAE,CAAC;YACjD,uBAAuB;YACvB,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,IAAI,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACtC,MAAM,EAAE;oBACN,IAAI,EAAE,IAAI;oBACV,GAAG,EAAE,IAAI;oBACT,gBAAgB,EAAE,IAAI;oBACtB,iBAAiB,EAAE,IAAI;oBACvB,QAAQ,EAAE,IAAI;oBACd,eAAe,EAAE,IAAI;oBACrB,iCAAiC,EAAE,IAAI;iBACxC;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,YAAY,GAAW;kBACf,CAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,QAAQ,EAAE,KAAI,KAAK;gBACnC,CAAA,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,KAAK;CAC9C,CAAC;YAEI,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC1D,YAAY,IAAI,yBAAyB,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,0CAAE,QAAQ,EAAE,IAAG,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI,KAAK;CAClJ,CAAC;YACI,CAAC;YAED,IAAI,gBAAgB,EAAE,CAAC;gBACrB,cAAc;gBACd,YAAY,IAAI,WAAW,CAAA,MAAA,OAAO,CAAC,QAAQ,0CAAE,QAAQ,EAAE,KAAI,KAAK;yBAC/C,CAAA,MAAA,OAAO,CAAC,iCAAiC,0CAAE,QAAQ,EAAE,KAAI,KAAK;CACtF,CAAC;YACI,CAAC;YAED,SAAS,CAAC,sCAAsC,CAAC;gBAC/C,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,4CAA4C,CAAC;gBACjE,IAAI,EAAE,YAAY;aACnB,CAAC,CAAC,KAAK,CAAC,CAAC,KAAgB,EAAE,EAAE;;gBAC5B,MAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,KAAK,EAAE;oBACpD,SAAS,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE,0CAAE,QAAQ,EAAE;iBAClB,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,6BAA6B,CACzC,OAAoC,EACpC,SAAmB;QAEnB,MAAM,KAAK,GAAsB,MAAM,OAAO,CAAC,MAAM,CAAC;YACpD,KAAK,EAAE;gBACL,SAAS,EAAE,SAAS;aACA;YACtB,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI;aACW;YACvB,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,SAAS;YAChB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,GAAG,CACZ,KAAK,CAAC,GAAG,CAAC,CAAC,IAAgB,EAAsB,EAAE;YACjD,OAAQ,IAAsC,CAAC,IAAI,CAAC;QACtD,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,mCAAmC,CAC/C,WAAkB;QAElB,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CACtC,gCAAgC,EAChC,SAAS,CACV,CAAC;QAEJ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,MAAM,gCAAgC,GACpC,IAAI,yBAAyB,EAAE,CAAC;YAClC,gCAAgC,CAAC,IAAI,GAAG,WAAW,CAAC;YACpD,gCAAgC,CAAC,WAAW;gBAC1C,sDAAsD,CAAC;YACzD,gCAAgC,CAAC,KAAK,GAAG,KAAK,CAAC;YAC/C,gCAAgC,CAAC,gBAAgB,GAAG,IAAI,CAAC;YACzD,gCAAgC,CAAC,SAAS,GAAG,SAAS,CAAC;YACvD,gCAAgC,CAAC,KAAK,GAAG,CAAC,CAAC;YAE3C,MAAM,gCAAgC,CAAC,MAAM,CAAC;gBAC5C,IAAI,EAAE,gCAAgC;gBACtC,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,MAAM,gCAAgC,GACpC,IAAI,yBAAyB,EAAE,CAAC;YAClC,gCAAgC,CAAC,IAAI,GAAG,SAAS,CAAC;YAClD,gCAAgC,CAAC,WAAW;gBAC1C,qDAAqD,CAAC;YACxD,gCAAgC,CAAC,KAAK,GAAG,MAAM,CAAC;YAChD,gCAAgC,CAAC,cAAc,GAAG,IAAI,CAAC;YACvD,gCAAgC,CAAC,SAAS,GAAG,SAAS,CAAC;YACvD,gCAAgC,CAAC,KAAK,GAAG,CAAC,CAAC;YAE3C,MAAM,gCAAgC,CAAC,MAAM,CAAC;gBAC5C,IAAI,EAAE,gCAAgC;gBACtC,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,MAAM,8BAA8B,GAClC,IAAI,yBAAyB,EAAE,CAAC;YAClC,8BAA8B,CAAC,IAAI,GAAG,OAAO,CAAC;YAC9C,8BAA8B,CAAC,WAAW;gBACxC,kEAAkE,CAAC;YACrE,8BAA8B,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;YAC5D,8BAA8B,CAAC,YAAY,GAAG,IAAI,CAAC;YACnD,8BAA8B,CAAC,SAAS,GAAG,SAAS,CAAC;YACrD,8BAA8B,CAAC,KAAK,GAAG,CAAC,CAAC;YAEzC,MAAM,gCAAgC,CAAC,MAAM,CAAC;gBAC5C,IAAI,EAAE,8BAA8B;gBACpC,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,MAAM,kCAAkC,GACtC,IAAI,yBAAyB,EAAE,CAAC;YAClC,kCAAkC,CAAC,IAAI,GAAG,WAAW,CAAC;YACtD,kCAAkC,CAAC,WAAW;gBAC5C,uDAAuD,CAAC;YAC1D,kCAAkC,CAAC,KAAK,GAAG,KAAK,CAAC;YACjD,kCAAkC,CAAC,eAAe,GAAG,IAAI,CAAC;YAC1D,kCAAkC,CAAC,SAAS,GAAG,SAAS,CAAC;YACzD,kCAAkC,CAAC,KAAK,GAAG,CAAC,CAAC;YAE7C,MAAM,gCAAgC,CAAC,MAAM,CAAC;gBAC5C,IAAI,EAAE,kCAAkC;gBACxC,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAGwB,AAAN,KAAK,CAAC,eAAe,CACtC,SAA0B,EAC1B,WAAkB;QAElB,kBAAkB;;QAElB,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,UAAU,GAAW,MAAM,cAAc,CAAC,cAAc,CAAC;gBAC7D,IAAI,EAAE,WAAW,CAAC,IAAK;gBACvB,KAAK,EAAE,WAAW,CAAC,iBAAkB;gBACrC,EAAE,EAAE,WAAW,CAAC,EAAG;aACpB,CAAC,CAAC;YAEH,MAAM,IAAI,GACR,gBAAgB,CAAC,uBAAuB,CACtC,WAAW,CAAC,qBAAsB,EAClC,aAAa,EAAE,CAChB,CAAC;YAEJ,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,gBAAgB,CAAC,eAAe,CAAC,CAAC;YAC9C,CAAC;YACD,qCAAqC;YAErC,MAAM,EAAE,cAAc,EAAE,qBAAqB,EAAE,WAAW,EAAE,GAC1D,MAAM,cAAc,CAAC,eAAe,CAAC;gBACnC,SAAS,EAAE,WAAW,CAAC,EAAG;gBAC1B,UAAU;gBACV,kBAAkB,EAAE,eAAe;gBACnC,IAAI;gBACJ,QAAQ,EAAE,CAAC;gBACX,QAAQ,EACN,IAAI,CAAC,eAAe,EAAE,KAAK,WAAW,CAAC,qBAAsB;gBAC/D,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,WAAW,CAAC,wBAAwB;aAChD,CAAC,CAAC;YAEL,MAAM,IAAI,CAAC,aAAa,CAAC;gBACvB,EAAE,EAAE,WAAW,CAAC,EAAG;gBACnB,IAAI,EAAE;oBACJ,yBAAyB,EAAE,UAAU;oBACrC,6BAA6B,EAAE,cAAc;oBAC7C,oCAAoC,EAAE,qBAAqB;oBAC3D,gCAAgC,EAAE,CAAC;oBACnC,WAAW,EAAE,CAAC,WAAW,IAAI,IAAI,CAAQ;iBAC1C;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH;;;;eAIG;YACH,IAAI,CAAC,mCAAmC,CAAC;gBACvC,OAAO,EAAE,WAAW;gBACpB,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,WAAW,CAAC,qBAAsB;gBAC1C,KAAK,EAAE,CAAC;aACT,CAAC,CAAC;YAEH,4CAA4C;YAE5C,IAAI,WAAW,CAAC,wBAAwB,EAAE,CAAC;gBACzC,MAAM,gBAAgB,CAAC,WAAW,CAAC;oBACjC,KAAK,EAAE;wBACL,WAAW,EAAE,WAAW,CAAC,wBAAwB;qBAClD;oBACD,IAAI,EAAE;wBACJ,eAAe,EAAE,IAAI;wBACrB,eAAe,EAAE,aAAa,CAAC,cAAc,EAAE;wBAC/C,SAAS,EAAE,WAAW,CAAC,EAAG;qBAC3B;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED;;;;;;WAMG;QACH,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC;YAC5C,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;YACzC,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC;YACxC,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;YACzC,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;YACzC,IAAI,CAAC,mCAAmC,CAAC,WAAW,CAAC;YACrD,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;YACzC,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC;SAC7C,CAAC,CAAC;QAEH,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;YAClC,gBAAgB,CAAC,OAAO,CAAC;gBACvB,KAAK,EAAE,wBAAwB;gBAC/B,UAAU,EAAE,WAAW,CAAC,iBAAiB,CAAC,QAAQ,EAAE;gBACpD,UAAU,EAAE;oBACV,UAAU,EAAE,CAAA,MAAA,WAAW,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,EAAE;oBAC5C,YAAY,EAAE,CAAA,MAAA,WAAW,CAAC,IAAI,0CAAE,QAAQ,EAAE,KAAI,EAAE;oBAChD,IAAI,EAAE,CAAA,MAAA,WAAW,CAAC,QAAQ,0CAAE,QAAQ,EAAE,KAAI,EAAE;oBAC5C,UAAU,EAAE,WAAW,CAAC,SAAS,IAAI,EAAE;oBACvC,UAAU,EAAE,WAAW,CAAC,SAAS,IAAI,EAAE;oBACvC,YAAY,EAAE,WAAW,CAAC,WAAW,IAAI,EAAE;oBAC3C,SAAS,EAAE,WAAW,CAAC,QAAQ,IAAI,EAAE;iBACtC;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,uCAAuC,EAAE,CAAC;YAC5C,uBAAuB;YACvB,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,WAAW,CAAC,EAAG;gBACnB,MAAM,EAAE;oBACN,IAAI,EAAE,IAAI;oBACV,GAAG,EAAE,IAAI;oBACT,gBAAgB,EAAE,IAAI;oBACtB,iBAAiB,EAAE,IAAI;oBACvB,QAAQ,EAAE,IAAI;oBACd,eAAe,EAAE,IAAI;oBACrB,iCAAiC,EAAE,IAAI;iBACxC;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;YAClD,CAAC;YAED,IAAI,YAAY,GAAW;kBACf,CAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,QAAQ,EAAE,KAAI,KAAK;gBACnC,CAAA,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,KAAI,KAAK;CAC9C,CAAC;YAEI,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC1D,YAAY,IAAI,iBAAiB,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,0CAAE,QAAQ,EAAE,IAAG,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI,KAAK;CAC1I,CAAC;gBAEM,IAAI,gBAAgB,EAAE,CAAC;oBACrB,cAAc;oBACd,YAAY,IAAI,WAAW,CAAA,MAAA,OAAO,CAAC,QAAQ,0CAAE,QAAQ,EAAE,KAAI,KAAK;yBACjD,CAAA,MAAA,OAAO,CAAC,iCAAiC,0CAAE,QAAQ,EAAE,KAAI,KAAK;CACtF,CAAC;gBACM,CAAC;gBAED,SAAS,CAAC,sCAAsC,CAAC;oBAC/C,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,uCAAuC,CAAC;oBAC5D,IAAI,EAAE,YAAY;iBACnB,CAAC,CAAC,KAAK,CAAC,CAAC,KAAgB,EAAE,EAAE;;oBAC5B,MAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,KAAK,EAAE;wBACpD,SAAS,EAAE,MAAA,WAAW,CAAC,EAAE,0CAAE,QAAQ,EAAE;qBACrB,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,WAAkB;QACtD,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QAE5E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACrC,MAAM,oBAAoB,GAAkB,IAAI,aAAa,EAAE,CAAC;YAChE,oBAAoB,CAAC,IAAI,GAAG,YAAY,CAAC;YACzC,oBAAoB,CAAC,WAAW;gBAC9B,uDAAuD,CAAC;YAC1D,oBAAoB,CAAC,KAAK,GAAG,GAAG,CAAC;YACjC,oBAAoB,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3C,oBAAoB,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3C,oBAAoB,CAAC,KAAK,GAAG,CAAC,CAAC;YAE/B,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,oBAAoB;gBAC1B,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACvC,MAAM,yBAAyB,GAAkB,IAAI,aAAa,EAAE,CAAC;YACrE,yBAAyB,CAAC,IAAI,GAAG,cAAc,CAAC;YAChD,yBAAyB,CAAC,WAAW;gBACnC,6DAA6D,CAAC;YAChE,yBAAyB,CAAC,KAAK,GAAG,MAAM,CAAC;YACzC,yBAAyB,CAAC,mBAAmB,GAAG,IAAI,CAAC;YACrD,yBAAyB,CAAC,SAAS,GAAG,SAAS,CAAC;YAChD,yBAAyB,CAAC,KAAK,GAAG,CAAC,CAAC;YAEpC,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,yBAAyB;gBAC/B,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,MAAM,qBAAqB,GAAkB,IAAI,aAAa,EAAE,CAAC;YACjE,qBAAqB,CAAC,IAAI,GAAG,UAAU,CAAC;YACxC,qBAAqB,CAAC,WAAW;gBAC/B,yDAAyD,CAAC;YAC5D,qBAAqB,CAAC,KAAK,GAAG,KAAK,CAAC;YACpC,qBAAqB,CAAC,eAAe,GAAG,IAAI,CAAC;YAC7C,qBAAqB,CAAC,SAAS,GAAG,SAAS,CAAC;YAC5C,qBAAqB,CAAC,KAAK,GAAG,CAAC,CAAC;YAEhC,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAGY,AAAN,KAAK,CAAC,oBAAoB,CAAC,WAAkB;QAClD,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;QAEzE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACrC,MAAM,iBAAiB,GAAe,IAAI,UAAU,EAAE,CAAC;YACvD,iBAAiB,CAAC,IAAI,GAAG,YAAY,CAAC;YACtC,iBAAiB,CAAC,WAAW;gBAC3B,oDAAoD,CAAC;YACvD,iBAAiB,CAAC,KAAK,GAAG,GAAG,CAAC;YAC9B,iBAAiB,CAAC,cAAc,GAAG,IAAI,CAAC;YACxC,iBAAiB,CAAC,SAAS,GAAG,SAAS,CAAC;YACxC,iBAAiB,CAAC,KAAK,GAAG,CAAC,CAAC;YAE5B,MAAM,iBAAiB,CAAC,MAAM,CAAC;gBAC7B,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACvC,MAAM,sBAAsB,GAAe,IAAI,UAAU,EAAE,CAAC;YAC5D,sBAAsB,CAAC,IAAI,GAAG,cAAc,CAAC;YAC7C,sBAAsB,CAAC,WAAW;gBAChC,0DAA0D,CAAC;YAC7D,sBAAsB,CAAC,KAAK,GAAG,MAAM,CAAC;YACtC,sBAAsB,CAAC,mBAAmB,GAAG,IAAI,CAAC;YAClD,sBAAsB,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7C,sBAAsB,CAAC,KAAK,GAAG,CAAC,CAAC;YAEjC,MAAM,iBAAiB,CAAC,MAAM,CAAC;gBAC7B,IAAI,EAAE,sBAAsB;gBAC5B,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,MAAM,kBAAkB,GAAe,IAAI,UAAU,EAAE,CAAC;YACxD,kBAAkB,CAAC,IAAI,GAAG,UAAU,CAAC;YACrC,kBAAkB,CAAC,WAAW;gBAC5B,yDAAyD,CAAC;YAC5D,kBAAkB,CAAC,KAAK,GAAG,KAAK,CAAC;YACjC,kBAAkB,CAAC,eAAe,GAAG,IAAI,CAAC;YAC1C,kBAAkB,CAAC,SAAS,GAAG,SAAS,CAAC;YACzC,kBAAkB,CAAC,KAAK,GAAG,CAAC,CAAC;YAE7B,MAAM,iBAAiB,CAAC,MAAM,CAAC;gBAC7B,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAGY,AAAN,KAAK,CAAC,uBAAuB,CAAC,WAAkB;QACrD,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QAE5E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,MAAM,YAAY,GAAkB,IAAI,aAAa,EAAE,CAAC;YACxD,YAAY,CAAC,IAAI,GAAG,MAAM,CAAC;YAC3B,YAAY,CAAC,WAAW;gBACtB,gFAAgF,CAAC;YACnF,YAAY,CAAC,KAAK,GAAG,SAAS,CAAC;YAC/B,YAAY,CAAC,SAAS,GAAG,SAAS,CAAC;YACnC,YAAY,CAAC,KAAK,GAAG,CAAC,CAAC;YAEvB,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAkB,IAAI,aAAa,EAAE,CAAC;YACvD,WAAW,CAAC,IAAI,GAAG,KAAK,CAAC;YACzB,WAAW,CAAC,WAAW,GAAG,yCAAyC,CAAC;YACpE,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC;YAC9B,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;YAClC,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC;YAEtB,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,WAAkB;QACzD,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CACtC,uBAAuB,EACvB,SAAS,CACV,CAAC;QAEJ,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC5C,MAAM,gBAAgB,GAAqB,IAAI,gBAAgB,EAAE,CAAC;YAClE,gBAAgB,CAAC,IAAI,GAAG,mBAAmB,CAAC;YAC5C,gBAAgB,CAAC,WAAW;gBAC1B,iIAAiI,CAAC;YACpI,gBAAgB,CAAC,KAAK,GAAG,SAAS,CAAC;YACnC,gBAAgB,CAAC,SAAS,GAAG,SAAS,CAAC;YACvC,gBAAgB,CAAC,KAAK,GAAG,CAAC,CAAC;YAE3B,MAAM,uBAAuB,CAAC,MAAM,CAAC;gBACnC,IAAI,EAAE,gBAAgB;gBACtB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACzC,MAAM,aAAa,GAAqB,IAAI,gBAAgB,EAAE,CAAC;YAC/D,aAAa,CAAC,IAAI,GAAG,gBAAgB,CAAC;YACtC,aAAa,CAAC,WAAW;gBACvB,oMAAoM,CAAC;YACvM,aAAa,CAAC,KAAK,GAAG,GAAG,CAAC;YAC1B,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;YACpC,aAAa,CAAC,KAAK,GAAG,CAAC,CAAC;YAExB,MAAM,uBAAuB,CAAC,MAAM,CAAC;gBACnC,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACzC,MAAM,aAAa,GAAqB,IAAI,gBAAgB,EAAE,CAAC;YAC/D,aAAa,CAAC,IAAI,GAAG,gBAAgB,CAAC;YACtC,aAAa,CAAC,WAAW;gBACvB,2LAA2L,CAAC;YAC9L,aAAa,CAAC,KAAK,GAAG,MAAM,CAAC;YAC7B,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;YACpC,aAAa,CAAC,KAAK,GAAG,CAAC,CAAC;YAExB,MAAM,uBAAuB,CAAC,MAAM,CAAC;gBACnC,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,uBAAuB,CAAC,WAAkB;QACrD,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAE3E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC7C,MAAM,iBAAiB,GAAiB,IAAI,YAAY,EAAE,CAAC;YAC3D,iBAAiB,CAAC,IAAI,GAAG,oBAAoB,CAAC;YAC9C,iBAAiB,CAAC,WAAW;gBAC3B,kHAAkH,CAAC;YACrH,iBAAiB,CAAC,KAAK,GAAG,SAAS,CAAC;YACpC,iBAAiB,CAAC,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC;YAClD,iBAAiB,CAAC,SAAS,GAAG,SAAS,CAAC;YACxC,iBAAiB,CAAC,aAAa,GAAG,IAAI,CAAC;YACvC,iBAAiB,CAAC,YAAY,GAAG,KAAK,CAAC;YAEvC,MAAM,mBAAmB,CAAC,MAAM,CAAC;gBAC/B,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,MAAM,SAAS,GAAiB,IAAI,YAAY,EAAE,CAAC;YACnD,SAAS,CAAC,IAAI,GAAG,WAAW,CAAC;YAC7B,SAAS,CAAC,WAAW;gBACnB,4FAA4F,CAAC;YAC/F,SAAS,CAAC,KAAK,GAAG,OAAO,CAAC;YAC1B,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;YACrC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;YAEhC,MAAM,mBAAmB,CAAC,MAAM,CAAC;gBAC/B,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAC9C,MAAM,kBAAkB,GAAiB,IAAI,YAAY,EAAE,CAAC;YAC5D,kBAAkB,CAAC,IAAI,GAAG,qBAAqB,CAAC;YAChD,kBAAkB,CAAC,WAAW;gBAC5B,0EAA0E,CAAC;YAC7E,kBAAkB,CAAC,KAAK,GAAG,OAAO,CAAC;YACnC,kBAAkB,CAAC,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC;YACpD,kBAAkB,CAAC,SAAS,GAAG,SAAS,CAAC;YAEzC,MAAM,mBAAmB,CAAC,MAAM,CAAC;gBAC/B,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAiB,IAAI,YAAY,EAAE,CAAC;YAClD,QAAQ,CAAC,IAAI,GAAG,UAAU,CAAC;YAC3B,QAAQ,CAAC,WAAW;gBAClB,6EAA6E,CAAC;YAChF,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC;YACzB,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;YACtC,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;YAC/B,QAAQ,CAAC,sBAAsB,GAAG,IAAI,CAAC;YAEvC,MAAM,mBAAmB,CAAC,MAAM,CAAC;gBAC/B,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,WAAkB;QACtD,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;QAE5E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACtC,MAAM,iBAAiB,GAAkB,IAAI,aAAa,EAAE,CAAC;YAC7D,iBAAiB,CAAC,IAAI,GAAG,aAAa,CAAC;YACvC,iBAAiB,CAAC,WAAW,GAAG,4BAA4B,CAAC;YAC7D,iBAAiB,CAAC,SAAS,GAAG,SAAS,CAAC;YACxC,iBAAiB,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC/B,iBAAiB,CAAC,kBAAkB,GAAG,IAAI,CAAC;YAC5C,iBAAiB,CAAC,KAAK,GAAG,KAAK,CAAC;YAEhC,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,iBAAiB;gBACvB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,MAAM,cAAc,GAAkB,IAAI,aAAa,EAAE,CAAC;YAC1D,cAAc,CAAC,IAAI,GAAG,UAAU,CAAC;YACjC,cAAc,CAAC,WAAW;gBACxB,8CAA8C,CAAC;YACjD,cAAc,CAAC,QAAQ,GAAG,CAAC,CAAC;YAC5B,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;YACrC,cAAc,CAAC,KAAK,GAAG,MAAM,CAAC;YAE9B,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,cAAc;gBACpB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,MAAM,UAAU,GAAkB,IAAI,aAAa,EAAE,CAAC;YACtD,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC;YAC5B,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC;YAC/C,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC;YACjC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;YACjC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAC;YACxB,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC;YAEvB,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;;OAYG;IAEU,AAAN,KAAK,CAAC,0BAA0B,CAAC,WAAkB;QACxD,MAAM,SAAS,GAAa,WAAW,CAAC,EAAG,CAAC;QAE5C,kDAAkD;QAClD,MAAM,aAAa,GACjB,MAAM,IAAI,CAAC,6BAA6B,CACtC,sBAAsB,EACtB,SAAS,CACV,CAAC;QAEJ;;;;;;;;;;;WAWG;QACH,MAAM,uBAAuB,GAIxB;YACH;gBACE,IAAI,EAAE,sBAAsB,CAAC,WAAW;gBACxC,WAAW,EACT,6EAA6E;gBAC/E,WAAW,EAAE,KAAK;aACnB;YACD;gBACE,IAAI,EAAE,sBAAsB,CAAC,MAAM;gBACnC,WAAW,EACT,0EAA0E;gBAC5E,WAAW,EAAE,KAAK;aACnB;YACD;gBACE,IAAI,EAAE,sBAAsB,CAAC,UAAU;gBACvC,WAAW,EACT,oEAAoE;gBACtE,WAAW,EAAE,KAAK;aACnB;YACD;gBACE,IAAI,EAAE,sBAAsB,CAAC,MAAM;gBACnC,WAAW,EAAE,wDAAwD;gBACrE,WAAW,EAAE,KAAK;aACnB;YACD;gBACE,IAAI,EAAE,sBAAsB,CAAC,IAAI;gBACjC,WAAW,EACT,uFAAuF;gBACzF,WAAW,EAAE,IAAI;aAClB;YACD;gBACE,IAAI,EAAE,sBAAsB,CAAC,UAAU;gBACvC,WAAW,EACT,kEAAkE;gBACpE,WAAW,EAAE,KAAK;aACnB;YACD;gBACE,IAAI,EAAE,sBAAsB,CAAC,KAAK;gBAClC,WAAW,EAAE,8CAA8C;gBAC3D,WAAW,EAAE,KAAK;aACnB;SACF,CAAC;QAEF,KACE,IAAI,KAAK,GAAW,CAAC,EACrB,KAAK,GAAG,uBAAuB,CAAC,MAAM,EACtC,KAAK,EAAE,EACP,CAAC;YACD,MAAM,sBAAsB,GAIxB,uBAAuB,CAAC,KAAK,CAAE,CAAC;YAEpC,IAAI,aAAa,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnD,SAAS;YACX,CAAC;YAED,MAAM,eAAe,GAAoB,IAAI,eAAe,EAAE,CAAC;YAC/D,eAAe,CAAC,IAAI,GAAG,sBAAsB,CAAC,IAAI,CAAC;YACnD,eAAe,CAAC,WAAW,GAAG,sBAAsB,CAAC,WAAW,CAAC;YACjE,eAAe,CAAC,WAAW,GAAG,sBAAsB,CAAC,WAAW,CAAC;YACjE,eAAe,CAAC,SAAS,GAAG,SAAS,CAAC;YACtC,eAAe,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;YAElC,MAAM,sBAAsB,CAAC,MAAM,CAAC;gBAClC,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,WAAkB;QACrD,qBAAqB;QAErB,cAAc;QACd,IAAI,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;QACjC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,EAAG,CAAC;QACtC,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC;QAC1B,SAAS,CAAC,0BAA0B,GAAG,IAAI,CAAC;QAC5C,SAAS,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACxC,SAAS,CAAC,cAAc,GAAG,KAAK,CAAC;QACjC,SAAS,CAAC,gBAAgB,GAAG,KAAK,CAAC;QACnC,SAAS,CAAC,WAAW;YACnB,0GAA0G,CAAC;QAE7G,SAAS,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC;YACnC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,mCAAmC;QAEnC,IAAI,eAAe,GAAe,IAAI,UAAU,EAAE,CAAC;QACnD,eAAe,CAAC,SAAS,GAAG,WAAW,CAAC,EAAG,CAAC;QAC5C,eAAe,CAAC,MAAM,GAAG,WAAW,CAAC,eAAgB,CAAC;QACtD,eAAe,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAC7C,eAAe,CAAC,oBAAoB,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC;QACtE,eAAe,CAAC,MAAM,GAAG,SAAS,CAAC,EAAG,CAAC;QAEvC,eAAe,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC;YAC/C,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH,iCAAiC;QAEjC,MAAM,gBAAgB,GAAmB,IAAI,cAAc,EAAE,CAAC;QAC9D,gBAAgB,CAAC,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC;QACtD,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC,EAAG,CAAC;QACxC,gBAAgB,CAAC,SAAS,GAAG,WAAW,CAAC,EAAG,CAAC;QAE7C,MAAM,qBAAqB,CAAC,MAAM,CAAC;YACjC,IAAI,EAAE,gBAAgB;YACtB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH,cAAc;QACd,MAAM,SAAS,GAAS,IAAI,IAAI,EAAE,CAAC;QACnC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC,EAAG,CAAC;QACtC,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC;QACzB,SAAS,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACxC,SAAS,CAAC,gBAAgB,GAAG,KAAK,CAAC;QACnC,SAAS,CAAC,cAAc,GAAG,KAAK,CAAC;QACjC,SAAS,CAAC,WAAW;YACnB,sGAAsG,CAAC;QAEzG,MAAM,WAAW,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,MAAM,gBAAgB,GAAmB,IAAI,cAAc,EAAE,CAAC;QAC9D,gBAAgB,CAAC,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC;QACtD,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC,EAAG,CAAC;QACxC,gBAAgB,CAAC,SAAS,GAAG,WAAW,CAAC,EAAG,CAAC;QAE7C,MAAM,qBAAqB,CAAC,MAAM,CAAC;YACjC,IAAI,EAAE,gBAAgB;YACtB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH,gBAAgB;QAChB,MAAM,UAAU,GAAS,IAAI,IAAI,EAAE,CAAC;QACpC,UAAU,CAAC,SAAS,GAAG,WAAW,CAAC,EAAG,CAAC;QACvC,UAAU,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACxC,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC;QAC5B,UAAU,CAAC,gBAAgB,GAAG,IAAI,CAAC;QACnC,UAAU,CAAC,WAAW;YACpB,kHAAkH,CAAC;QAErH,MAAM,WAAW,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAmB,IAAI,cAAc,EAAE,CAAC;QAC/D,iBAAiB,CAAC,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC;QACxD,iBAAiB,CAAC,MAAM,GAAG,UAAU,CAAC,EAAG,CAAC;QAC1C,iBAAiB,CAAC,SAAS,GAAG,WAAW,CAAC,EAAG,CAAC;QAE9C,MAAM,qBAAqB,CAAC,MAAM,CAAC;YACjC,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH,MAAM,kBAAkB,CAAC,yBAAyB,CAChD,WAAW,CAAC,eAAgB,CAC7B,CAAC;QAEF,MAAM,IAAI,GAAgB,MAAM,WAAW,CAAC,WAAW,CAAC;YACtD,EAAE,EAAE,WAAW,CAAC,eAAgB;YAChC,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,MAAM,EAAE;gBACN,eAAe,EAAE,IAAI;gBACrB,KAAK,EAAE,IAAI;aACZ;SACF,CAAC,CAAC;QAEH,IAAI,IAAI,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACjC,MAAM,2BAA2B,CAAC,iCAAiC,CACjE,WAAW,CAAC,EAAG,EACf,IAAI,CAAC,EAAG,EACR,IAAI,CAAC,KAAM,CACZ,CAAC;YAEF,MAAM,8BAA8B,CAAC,qCAAqC,CACxE,IAAI,CAAC,EAAG,EACR,WAAW,CAAC,EAAG,CAChB,CAAC;QACJ,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAGY,AAAN,KAAK,CAAC,gBAAgB,CAAC,SAAmB;QAC/C,MAAM,GAAG,GAAW,SAAS,CAAC,QAAQ,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QACD;;;WAGG;QACH,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,KAAM,CAAC,CAAC;QAE5C;;;WAGG;QACH,KAAK,IAAI,CAAC,aAAa,CAAC;YACtB,EAAE,EAAE,SAAS;YACb,IAAI,EAAE;gBACJ,UAAU,EAAE,aAAa,CAAC,cAAc,EAAE;aAC3C;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;YACtB,uEAAuE;YACvE,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjC,MAAM,CAAC,KAAK,CACV,2CAA2C,GAAG,KAAK,GAAG,CAAC,OAAO,EAAE,CACjE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IAEU,AAAN,KAAK,CAAC,qBAAqB,CAAC,SAAmB;QACpD,MAAM,GAAG,GAAW,SAAS,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,MAAM,GAAwB,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YACnD,EAAE,EAAE,SAAS;YACb,MAAM,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,2BAA2B,EAAE,IAAI,EAAE;YACvE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,oEAAoE;YACpE,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,KAAK,GAAY,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC3D,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,KAAM,CAAC,CAAC;QACrD,IAAI,CAAC,gCAAgC,CAAC,GAAG,CACvC,GAAG,EACH,OAAO,CAAC,2BAA2B;YACjC,CAAC,CAAC,OAAO,CAAC,2BAA2B,CAAC,QAAQ,EAAE;YAChD,CAAC,CAAC,IAAI,EACR,KAAM,CACP,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IAEU,AAAN,KAAK,CAAC,8BAA8B,CACzC,SAAmB;QAEnB,MAAM,GAAG,GAAW,SAAS,CAAC,QAAQ,EAAE,CAAC;QACzC,MAAM,MAAM,GACV,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9C,CAAC;QAED,2DAA2D;QAC3D,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QAE5C,MAAM,SAAS,GACb,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjD,OAAO,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,CAAC;IAGY,AAAN,KAAK,CAAC,SAAS,CAAC,SAAmB;QACxC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,gBAAgB,CAAC,wBAAwB,CAAC,CAAC;QACvD,CAAC;QAED,4CAA4C;QAC5C,MAAM,eAAe,GACnB,MAAM,qBAAqB,CAAC,MAAM,CAAC;YACjC,KAAK,EAAE;gBACL,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,UAAU,CAAC,YAAY;aACpC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAoB,eAAe,CAAC,GAAG,CAClD,CAAC,IAAoB,EAAE,EAAE;YACvB,OAAO,IAAI,CAAC,MAAO,CAAC;QACtB,CAAC,CACF,CAAC;QAEF,OAAO,iBAAiB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAGwB,AAAN,KAAK,CAAC,YAAY,CACnC,MAAqB;;QAErB;;;WAGG;QACH,IACE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM;YACpB,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa;YAC3B,CAAC,CAAC,CAAA,MAAA,MAAM,CAAC,KAAK,CAAC,0BAA0B,0CAAE,UAAU,CAAA;gBACnD,CAAA,MAAA,MAAM,CAAC,KAAK,CAAC,0BAA0B,0CAAE,UAAU,CAAC,MAAM,MAAK,CAAC,CAAC,EACnE,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;YAC3B,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,QAAQ,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,+BAA+B;QAC3F,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IACxC,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB;;;;;WAKG;QACH,MAAM,QAAQ,GAAiB,MAAM,IAAI,CAAC,MAAM,CAAC;YAC/C,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,6BAA6B,EAAE,IAAI;gBACnC,oCAAoC,EAAE,IAAI;gBAC1C,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,IAAI;gBACd,qBAAqB,EAAE,IAAI;gBAC3B,yBAAyB,EAAE,IAAI;gBAC/B,iCAAiC,EAAE,IAAI;gBACvC,gCAAgC,EAAE,IAAI;gBACtC,WAAW,EAAE,IAAI;gBACjB,0BAA0B,EAAE,IAAI;gBAChC,SAAS,EAAE,IAAI;gBACf,eAAe,EAAE,IAAI;gBACrB,aAAa,EAAE;oBACb,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,IAAI;oBACX,WAAW,EAAE,IAAI;oBACjB,kBAAkB,EAAE,IAAI;oBACxB,WAAW,EAAE,IAAI;oBACjB,OAAO,EAAE,IAAI;iBACd;aACF;SACF,CAAC,CAAC;QAEH,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;IAC9C,CAAC;IAGwB,AAAN,KAAK,CAAC,eAAe,CACtC,QAAyB,EACzB,mBAA+B;;QAE/B;;;;;;;;WAQG;QACH,MAAM,iBAAiB,GAAgB,IAAI,GAAG,CAC5C,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAY,EAAE,EAAE;YACvC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC,CAAC,CACH,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC5C,IAAI,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAChE,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,qBAAqB,CAAC,kBAAkB,CAAC;oBAC7C,OAAO,EAAE,OAAO;oBAChB,eAAe,EACb,CAAA,MAAA,QAAQ,CAAC,QAAQ,CAAC,aAAa,0CAAE,EAAE;wBACnC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM;oBAChC,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc;iBACjD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb;;;mBAGG;gBACH,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,IAAI,uCAAuC,EAAE,CAAC;YAC5C,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;gBAC5C,IAAI,kBAAkB,GAA8B,IAAI,CAAC;gBAEzD,IAAI,gBAAgB,EAAE,CAAC;oBACrB,kBAAkB,GAAG,MAAM,cAAc,CAAC,qBAAqB,CAC7D,OAAO,CAAC,6BAA8B,CACvC,CAAC;gBACJ,CAAC;gBAED,IAAI,YAAY,GAAW;kBACjB,CAAA,MAAA,OAAO,CAAC,IAAI,0CAAE,QAAQ,EAAE,KAAI,KAAK;gBACnC,CAAA,MAAA,OAAO,CAAC,GAAG,0CAAE,QAAQ,EAAE,KAAI,KAAK;0BACtB,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK;uBACxE,CAAA,MAAA,OAAO,CAAC,QAAQ,0CAAE,QAAQ,EAAE,KAAI,KAAK;CAC3D,CAAC;gBAEM,IAAI,kBAAkB,EAAE,CAAC;oBACvB,YAAY,IAAI,kCAAkC,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,QAAQ,EAAE,KAAI,KAAK;CAClG,CAAC;gBACM,CAAC;gBAED,IACE,OAAO,CAAC,aAAa;oBACrB,OAAO,CAAC,aAAa,CAAC,IAAI;oBAC1B,OAAO,CAAC,aAAa,CAAC,KAAK,EAC3B,CAAC;oBACD,YAAY,IAAI,iBAAiB,CAAA,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,aAAa,CAAC,IAAI,0CAAE,QAAQ,EAAE,IAAG,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI,KAAK;CAChJ,CAAC;gBACM,CAAC;gBAED,SAAS,CAAC,sCAAsC,CAAC;oBAC/C,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,uCAAuC,CAAC;oBAC5D,IAAI,EAAE,YAAY;iBACnB,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;;oBACtB,gFAAgF;oBAChF,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;wBAChB,SAAS,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE,0CAAE,QAAQ,EAAE;qBAClB,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,IAAI,gBAAgB,EAAE,CAAC;YACrB,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;gBAC5C,IAAI,OAAO,CAAC,6BAA6B,EAAE,CAAC;oBAC1C,MAAM,cAAc,CAAC,kBAAkB,CACrC,OAAO,CAAC,6BAA6B,CACtC,CAAC;gBACJ,CAAC;gBAED,IAAI,OAAO,CAAC,oCAAoC,EAAE,CAAC;oBACjD,MAAM,cAAc,CAAC,kBAAkB,CACrC,OAAO,CAAC,oCAAoC,CAC7C,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGY,AAAN,KAAK,CAAC,cAAc,CAAC,SAAmB;QAC7C,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAW,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC9C,MAAM,MAAM,GAA4B,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YACnD,EAAE,EAAE,SAAS;YACb,MAAM,EAAE;gBACN,qBAAqB,EAAE,IAAI;gBAC3B,iCAAiC,EAAE,IAAI;gBACvC,wCAAwC,EAAE,IAAI;aAC/C;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,kEAAkE;YAClE,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YACnC,6DAA6D;YAC7D,MAAM,IAAI,gBAAgB,CAAC,iCAAiC,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,GAAa,gBAAgB,CAAC,WAAW,CACjD,OAAO,CAAC,qBAAqB,EAC7B,aAAa,EAAE,CAChB,CAAC;QAEF,MAAM,MAAM,GAAgB;YAC1B,IAAI,EAAE,IAAI;YACV,oBAAoB,EAClB,CAAC,cAAc,CAAC,oBAAoB,CAClC,OAAO,CAAC,iCAAkC,CAC3C;gBACD,CAAC,cAAc,CAAC,oBAAoB,CAClC,OAAO,CAAC,wCAAyC,CAClD;SACJ,CAAC;QACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAM,CAAC,CAAC;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC;IAGY,AAAN,KAAK,CAAC,wBAAwB,CACnC,SAAmB,EACnB,OAAe,EACf,OAAe;QAEf,MAAM,MAAM,GAAgB,MAAM,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAE5D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,WAAW,CAAC,QAAQ,CAClB;gBACE,OAAO,EAAE,KAAK,CAAC,KAAM;gBACrB,YAAY,EAAE,iBAAiB,CAAC,aAAa;gBAC7C,IAAI,EAAE;oBACJ,OAAO,EAAE,OAAO;oBAChB,OAAO,EAAE,OAAO;iBACjB;gBACD,OAAO,EAAE,OAAO;aACjB,EACD;gBACE,SAAS;gBACT,MAAM,EAAE,KAAK,CAAC,EAAG;aAClB,CACF,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;gBACrB,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;oBAChB,SAAS,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,EAAE;iBAChB,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,oBAAoB,CAAC,SAAmB;QACnD,MAAM,CAAC,KAAK,CAAC,wCAAwC,GAAG,SAAS,EAAE;YACjE,SAAS,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,EAAE;SAChB,CAAC,CAAC;QAEpB,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YACnD,EAAE,EAAE,SAAU;YACd,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,yBAAyB,EAAE,IAAI;gBAC/B,6BAA6B,EAAE,IAAI;gBACnC,oCAAoC,EAAE,IAAI;gBAC1C,gCAAgC,EAAE,IAAI;gBACtC,qBAAqB,EAAE,IAAI;gBAC3B,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,yBAAyB,EAAE,CAAC;YACvC,MAAM,IAAI,gBAAgB,CAAC,qCAAqC,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC;YAC3C,MAAM,IAAI,gBAAgB,CAAC,yCAAyC,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,oCAAoC,EAAE,CAAC;YAClD,MAAM,IAAI,gBAAgB,CACxB,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE,CAAC;YAC9C,MAAM,IAAI,gBAAgB,CACxB,+CAA+C,CAChD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;YACnC,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,gBAAgB,GACpB,gBAAgB,CAAC,uBAAuB,CACtC,OAAO,CAAC,qBAAqB,EAC7B,aAAa,EAAE,CAChB,CAAC;QAEJ,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;QAC5D,CAAC;QAED;;;;;;;;;;;WAWG;QACH,MAAM,UAAU,GACd,OAAO,CAAC,WAAW,IAAI,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC;YACrE,CAAC,CAAC,OAAO,CAAC,WAAW;YACrB,CAAC,CAAC,SAAS,CAAC;QAEhB,MAAM,MAAM,GAKR,MAAM,cAAc,CAAC,UAAU,CAAC;YAClC,SAAS,EAAE,OAAO,CAAC,EAAc;YACjC,cAAc,EAAE,OAAO,CAAC,6BAA6B;YACrD,qBAAqB,EAAE,OAAO,CAAC,oCAAoC;YACnE,kBAAkB,EAAE,eAAe;YACnC,OAAO,EAAE,gBAAgB;YACzB,QAAQ,EAAE,OAAO,CAAC,gCAAgC;YAClD,QAAQ,EAAE,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,qBAAqB,CAAC;YACtE,UAAU,EAAE,UAAU;SACvB,CAAC,CAAC;QAEH,+BAA+B;QAC/B,MAAM,iBAAiB,GACrB,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,cAAwB,CAAC,CAAC;QAErE;;;;;WAKG;QACH,MAAM,wBAAwB,GAC5B,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,qBAA+B,CAAC,CAAC;QAE5E,+CAA+C;QAE/C,MAAM,UAAU,GAAkC;YAChD,6BAA6B,EAAE,MAAM,CAAC,cAAc;YACpD,oCAAoC,EAAE,MAAM,CAAC,qBAAqB;SACnE,CAAC;QAEF,IAAI,iBAAiB,EAAE,CAAC;YACtB,UAAU,CAAC,iCAAiC,GAAG,iBAAiB,CAAC;QACnE,CAAC;QAED,IAAI,wBAAwB,EAAE,CAAC;YAC7B,UAAU,CAAC,wCAAwC;gBACjD,wBAAwB,CAAC;QAC7B,CAAC;QAED;;;;;WAKG;QACH,MAAM,cAAc,GAAqB,MAAM,CAAC,WAAW,IAAI,UAAU,CAAC;QAE1E,IAAI,cAAc,EAAE,CAAC;YACnB,UAAU,CAAC,WAAW,GAAG,cAAc,CAAC;QAC1C,CAAC;QAED,MAAM,IAAI,CAAC,aAAa,CAAC;YACvB,EAAE,EAAE,OAAO,CAAC,EAAG;YACf,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,uCAAuC,CAAC;YAC3C,SAAS,EAAE,OAAO,CAAC,EAAG;YACtB,eAAe,EAAE,MAAM,CAAC,kCAAkC;SAC3D,CAAC,CAAC;QAEH,qCAAqC;QACrC,MAAM,IAAI,CAAC,8CAA8C,CAAC,SAAS,CAAC,CAAC;IACvE,CAAC;IAEM,2BAA2B;QAChC,OAAO;YACL,2BAA2B;YAC3B,iCAAiC,EAAE,WAAW,CAAC,aAAa,CAAC;gBAC3D,kBAAkB,CAAC,MAAM;gBACzB,kBAAkB,CAAC,QAAQ;aAC5B,CAAC;YACF,wCAAwC,EAAE,WAAW,CAAC,aAAa,CAAC;gBAClE,kBAAkB,CAAC,MAAM;gBACzB,kBAAkB,CAAC,QAAQ;aAC5B,CAAC;SACH,CAAC;IACJ,CAAC;IAGY,AAAN,KAAK,CAAC,oBAAoB,CAAC,MAKjC;QACC,MAAM,MAAM,GACV,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,KAAK,EAAE,GAAG,EAAE,IAAI,EAAoB,CAAC;QACrD,MAAM,KAAK,GAAmC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,KAAI;YAC7D,MAAM,EAAE,IAAI;SACb,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC;YAC1B,KAAK,EAAE,IAAI,CAAC,2BAA2B,EAAE;YACzC,MAAM;YACN,KAAK;YACL,IAAI,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI;YAClB,KAAK,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK;SACrB,CAAC,CAAC;IACL,CAAC;IAGY,AAAN,KAAK,CAAC,yBAAyB,CAAC,SAAmB;QACxD,MAAM,YAAY,GAAQ,MAAM,cAAc,CAAC,eAAe,EAAE,CAAC;QAEjE,OAAO,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CACrD,IAAI,SAAS,CAAC,QAAQ,EAAE,EAAE,CAC3B,CAAC;IACJ,CAAC;IAWY,AAAN,KAAK,CAAC,yBAAyB,CAAC,IAGtC;QACC,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC;YACzD,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,4BAA4B,CAAC;YACtC,EAAE,EAAE,IAAI,CAAC,SAAS;YAClB,UAAU,EAAE,4BAA4B;YACxC,KAAK,EAAE,IAAI,CAAC,gBAAgB;SAC7B,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IAEU,AAAN,KAAK,CAAC,aAAa,CAAC,IAO1B;;QACC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,IAAI,gBAAgB,CAAC,wCAAwC,CAAC,CAAC;QACvE,CAAC;QAED,IACE,OAAO,IAAI,CAAC,gBAAgB,KAAK,QAAQ;YACzC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,EACvC,CAAC;YACD,MAAM,IAAI,gBAAgB,CAAC,yCAAyC,CAAC,CAAC;QACxE,CAAC;QAED;;;WAGG;QACH,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,gBAAgB,CACxB,mDAAmD,CACpD,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,gBAAgB,CAAC,sCAAsC,CAAC,CAAC;QACrE,CAAC;QAED;;;WAGG;QACH,IACE,IAAI,CAAC,cAAc,KAAK,qBAAqB,CAAC,GAAG;YACjD,IAAI,CAAC,gBAAgB,KAAK,CAAC,EAC3B,CAAC;YACD,MAAM,IAAI,gBAAgB,CAAC,6CAA6C,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,IAAI,CAAC,gBAAgB,GAAG,mCAAmC,EAAE,CAAC;YAChE,MAAM,IAAI,gBAAgB,CACxB,yCACE,mCAAmC,GAAG,GACxC,6BAA6B,CAC9B,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAW,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAElD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,gBAAgB,CAAC,4CAA4C,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,iBAAiB,GACrB,cAAc,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAExD,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YACnD,EAAE,EAAE,IAAI,CAAC,SAAS;YAClB,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,CAAC,iBAAiB,CAAC,EAAE,IAAI;aACT;YAClB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,yBAAyB,GAAW,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAE1E,IAAI,oBAAoB,GAAW,yBAAyB,CAAC;QAE7D,IAAI,IAAI,CAAC,cAAc,KAAK,qBAAqB,CAAC,GAAG,EAAE,CAAC;YACtD,oBAAoB,GAAG,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC3E,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,KAAK,qBAAqB,CAAC,MAAM,EAAE,CAAC;YACzD,oBAAoB,GAAG,yBAAyB,GAAG,IAAI,CAAC,gBAAgB,CAAC;YAEzE;;;;;eAKG;YACH,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,gBAAgB,CACxB,iBAAiB,IAAI,CAAC,gBAAgB,GAAG,GAAG,8BAC1C,yBAAyB,GAAG,GAC9B,MAAM,CACP,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,KAAK,qBAAqB,CAAC,GAAG,EAAE,CAAC;YACtD,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QAC/C,CAAC;QAED;;;;;WAKG;QACH,MAAM,GAAG,GACP,oBAAoB,GAAG,yBAAyB;YAC9C,CAAC,CAAC,cAAc,CAAC,gCAAgC,CAAC,IAAI,CAAC,WAAW,CAAC;YACnE,CAAC,CAAC,EAAE,CAAC;QAET,IAAI,IAAI,CAAC,cAAc,KAAK,qBAAqB,CAAC,GAAG,EAAE,CAAC;YACtD,MAAM,IAAI,CAAC,kCAAkC,CAAC;gBAC5C,EAAE,EAAE,IAAI,CAAC,SAAS;gBAClB,GAAG,EAAE,EAAE;gBACP,GAAG,EAAE,gCACA,GAAG,KACN,CAAC,iBAAiB,CAAC,EAAE,oBAAoB,GACT;aACnC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GACT,IAAI,CAAC,cAAc,KAAK,qBAAqB,CAAC,GAAG;gBAC/C,CAAC,CAAC,IAAI,CAAC,gBAAgB;gBACvB,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAE7B,MAAM,IAAI,CAAC,kCAAkC,CAAC;gBAC5C,EAAE,EAAE,IAAI,CAAC,SAAS;gBAClB,GAAG,EAAE;oBACH,CAAC,iBAAiB,CAAC,EAAE,KAAK;iBACa;gBACzC,GAAG,EAAE,GAAG;aACT,CAAC,CAAC;QACL,CAAC;QAED;;;;WAIG;QACH,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,WAAW,wBAAwB,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,cAClE,IAAI,CAAC,cACP,IAAI,IAAI,CAAC,gBAAgB,gBAAgB,yBAAyB,OAAO,oBAAoB,0BAC3F,CAAA,MAAA,IAAI,CAAC,gBAAgB,0CAAE,QAAQ,EAAE,KAAI,SACvC,aAAa,MAAM,EAAE,CACtB,CAAC;QAEF,OAAO;YACL,yBAAyB,EAAE,yBAAyB;YACpD,oBAAoB,EAAE,oBAAoB;SAC3C,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,oBAAoB,CACjC,WAA+B;QAE/B,IAAI,WAAW,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;YACjD,OAAO,mCAAmC,CAAC;QAC7C,CAAC;QAED,IAAI,WAAW,KAAK,kBAAkB,CAAC,EAAE,EAAE,CAAC;YAC1C,OAAO,4BAA4B,CAAC;QACtC,CAAC;QAED,MAAM,IAAI,gBAAgB,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,gCAAgC,CAC7C,WAA+B;QAE/B,IAAI,WAAW,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;YACjD,OAAO;gBACL,4CAA4C,EAAE,KAAK;gBACnD,qDAAqD,EAAE,KAAK;gBAC5D,2CAA2C,EAAE,KAAK;aACnD,CAAC;QACJ,CAAC;QAED,IAAI,WAAW,KAAK,kBAAkB,CAAC,EAAE,EAAE,CAAC;YAC1C,OAAO;gBACL,oCAAoC,EAAE,KAAK;gBAC3C,6CAA6C,EAAE,KAAK;gBACpD,oCAAoC,EAAE,KAAK;aAC5C,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,gBAAgB,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;IAGY,AAAN,KAAK,CAAC,8BAA8B,CACzC,SAAmB;QAEnB,MAAM,KAAK,GAAmB,MAAM,SAAS,CAAC,IAAI,CAAC;YACjD,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE;YACzB,SAAS,EAAE,gCAAgC;SAC5C,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACzC,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,iBAAiB;aAC9B,CAAC,CAAC;YAEH,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE;oBACN,eAAe,EAAE,IAAI;oBACrB,oBAAoB,EAAE,IAAI;iBAC3B;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBACtD,MAAM,IAAI,gBAAgB,CACxB,8CAA8C,SAAS,CAAC,QAAQ,EAAE,EAAE,CACrE,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,eAAe;gBAChC,MAAM,EAAE,OAAO,CAAC,oBAAoB;aACrC,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,2BAA2B,CACtC,SAAmB;QAEnB,MAAM,KAAK,GAAmB,MAAM,SAAS,CAAC,IAAI,CAAC;YACjD,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE;YACzB,SAAS,EAAE,6BAA6B;SACzC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACzC,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,cAAc;aAC3B,CAAC,CAAC;YAEH,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE;oBACN,YAAY,EAAE,IAAI;oBAClB,iBAAiB,EAAE,IAAI;iBACxB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACnD,MAAM,IAAI,gBAAgB,CACxB,2CAA2C,SAAS,CAAC,QAAQ,EAAE,EAAE,CAClE,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,YAAY;gBAC7B,MAAM,EAAE,OAAO,CAAC,iBAAiB;aAClC,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,0CAA0C,CACrD,SAAmB;QAEnB,MAAM,KAAK,GAAmB,MAAM,SAAS,CAAC,IAAI,CAAC;YACjD,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE;YACzB,SAAS,EAAE,4CAA4C;SACxD,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACzC,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,6BAA6B;aAC1C,CAAC,CAAC;YAEH,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE;oBACN,2BAA2B,EAAE,IAAI;oBACjC,gCAAgC,EAAE,IAAI;iBACvC;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,2BAA2B,KAAK,SAAS,EAAE,CAAC;gBAClE,MAAM,IAAI,gBAAgB,CACxB,0DAA0D,SAAS,CAAC,QAAQ,EAAE,EAAE,CACjF,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,2BAA2B;gBAC5C,MAAM,EAAE,OAAO,CAAC,gCAAgC;aACjD,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,qCAAqC,CAChD,SAAmB;QAEnB,MAAM,KAAK,GAAmB,MAAM,SAAS,CAAC,IAAI,CAAC;YACjD,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE;YACzB,SAAS,EAAE,uCAAuC;SACnD,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACzC,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,wBAAwB;aACrC,CAAC,CAAC;YAEH,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE;oBACN,sBAAsB,EAAE,IAAI;oBAC5B,2BAA2B,EAAE,IAAI;iBAClC;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;gBAC7D,MAAM,IAAI,gBAAgB,CACxB,qDAAqD,SAAS,CAAC,QAAQ,EAAE,EAAE,CAC5E,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,sBAAsB;gBACvC,MAAM,EAAE,OAAO,CAAC,2BAA2B;aAC5C,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,kCAAkC,CAC7C,SAAmB;QAEnB,MAAM,KAAK,GAAmB,MAAM,SAAS,CAAC,IAAI,CAAC;YACjD,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE;YACzB,SAAS,EAAE,oCAAoC;SAChD,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACzC,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,qBAAqB;aAClC,CAAC,CAAC;YAEH,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE;oBACN,mBAAmB,EAAE,IAAI;oBACzB,wBAAwB,EAAE,IAAI;iBAC/B;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBAC1D,MAAM,IAAI,gBAAgB,CACxB,kDAAkD,SAAS,CAAC,QAAQ,EAAE,EAAE,CACzE,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,OAAO,EAAE,OAAO,CAAC,mBAAmB;gBACpC,MAAM,EAAE,OAAO,CAAC,wBAAwB;aACzC,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;;;OAIG;IAEU,AAAN,KAAK,CAAC,2BAA2B,CACtC,SAAmB;QAEnB,MAAM,KAAK,GAAmB,MAAM,SAAS,CAAC,IAAI,CAAC;YACjD,GAAG,EAAE,SAAS,CAAC,QAAQ,EAAE;YACzB,SAAS,EAAE,6BAA6B;SACzC,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,+BAA+B,CAAC;gBACzC,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,cAAc;aAC3B,CAAC,CAAC;YAEH,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBACnD,EAAE,EAAE,SAAS;gBACb,MAAM,EAAE;oBACN,YAAY,EAAE,IAAI;iBACnB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACnD,MAAM,IAAI,gBAAgB,CACxB,2CAA2C,SAAS,CAAC,QAAQ,EAAE,EAAE,CAClE,CAAC;YACJ,CAAC;YAED,OAAO,OAAO,CAAC,YAAY,CAAC;QAC9B,CAAC;gBAAS,CAAC;YACT,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,yBAAyB,CACpC,SAAmB;QAEnB,MAAM,OAAO,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YACnD,EAAE,EAAE,SAAS;YACb,MAAM,EAAE;gBACN,sBAAsB,EAAE,IAAI;aAC7B;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACjD,CAAC;CACF;AAx/F0B;IADxB,WAAW,EAAE;;;;oDAyNb;AAWwB;IADxB,WAAW,EAAE;;6CAGI,KAAK;;qDAiCtB;AAGwB;IADxB,WAAW,EAAE;;;;oDA2Gb;AAGY;IADZ,WAAW,EAAE;;;;gDAsKb;AA6GY;IADZ,WAAW,EAAE;;;;iDAkFb;AAgbwB;IADxB,WAAW,EAAE;;6CAGC,KAAK;;qDAqKnB;AAmEY;IADZ,WAAW,EAAE;;qCACiC,KAAK;;0DA8DnD;AAGY;IADZ,WAAW,EAAE;;qCACoC,KAAK;;6DAyCtD;AA8NY;IADZ,WAAW,EAAE;;qCACuC,KAAK;;gEAoGzD;AAkJY;IADZ,WAAW,EAAE;;qCAC2B,QAAQ;;sDA8BhD;AAOY;IADZ,WAAW,EAAE;;qCACgC,QAAQ;;2DA4BrD;AAQY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;oEAepB;AAGY;IADZ,WAAW,EAAE;;qCACoB,QAAQ;;+CAiCzC;AAGwB;IADxB,WAAW,EAAE;;;;kDAmBb;AAGwB;IADxB,WAAW,EAAE;;;;oDA6Cb;AAGwB;IADxB,WAAW,EAAE;;;;qDAuGb;AAGY;IADZ,WAAW,EAAE;;qCACyB,QAAQ;;oDAmD9C;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;8DA+BpB;AAGY;IADZ,WAAW,EAAE;;qCAC+B,QAAQ;;0DAoJpD;AAiBY;IADZ,WAAW,EAAE;;;;0DAoBb;AAGY;IADZ,WAAW,EAAE;;qCACoC,QAAQ;;+DAMzD;AAWY;IATZ,WAAW,EAAE;IACd;;;;;;OAMG;;IACF,WAAW,EAAE;;;;+DAcb;AAoBY;IADZ,WAAW,EAAE;;;;mDA+Jb;AA4CY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;oEAqCpB;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;iEAqCpB;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;gFAqCpB;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;2EAqCpB;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;wEAqCpB;AAQY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;iEAiCpB;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;;+DAiBpB;AAEH,eAAe,IAAI,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"ProjectService.js","sourceRoot":"","sources":["../../../../Server/Services/ProjectService.ts"],"names":[],"mappings":"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"}
@@ -3,15 +3,38 @@ import SecurityEvent from "../../Models/AnalyticsModels/SecurityEvent";
3
3
  import TableColumnType from "../../Types/AnalyticsDatabase/TableColumnType";
4
4
  import { SQL } from "../Utils/AnalyticsDatabase/Statement";
5
5
  import { getQuerySettings } from "../Utils/AnalyticsDatabase/QuerySettingsHelper";
6
+ /*
7
+ * The in-process twin of the HAVING clause findDetectionMatches emits —
8
+ * exported so the evaluator's re-filter and the SQL builder live in one
9
+ * file, and a change to either side of the firing predicate is reviewed
10
+ * next to the other.
11
+ */
12
+ export function doesGroupMeetDetectionThreshold(data) {
13
+ if (data.group.matchCount <= 0) {
14
+ return false;
15
+ }
16
+ const effectiveCount = data.usesDistinctCount
17
+ ? data.group.distinctCount
18
+ : data.group.matchCount;
19
+ return effectiveCount >= Math.max(1, data.minMatchCount);
20
+ }
6
21
  export class SecurityEventService extends AnalyticsDatabaseService {
7
22
  constructor(clickhouseDatabase) {
8
23
  super({ modelType: SecurityEvent, database: clickhouseDatabase });
9
24
  }
10
25
  /*
11
26
  * Detection-engine query: count matching events in a window, grouped by
12
- * an optional field expression. `whereFragment` and
13
- * `groupByExpression` are Statements built by SigmaClickhouseCompiler —
14
- * every rule-controlled value inside them is a bound parameter.
27
+ * an optional field expression. `whereFragment`, `groupByExpression`
28
+ * and `distinctCountExpression` are Statements built by
29
+ * SigmaClickhouseCompiler — every rule-controlled value inside them is
30
+ * a bound parameter.
31
+ *
32
+ * When distinctCountExpression is set, the threshold applies to
33
+ * uniqExact of that field, not the raw match count — and empty values
34
+ * are excluded via nullIf, so "5 distinct usernames" never counts rows
35
+ * that carry no username. The threshold is enforced in HAVING so the
36
+ * maxGroups LIMIT keeps only qualifying groups instead of letting
37
+ * noisy-but-under-threshold groups crowd out real ones.
15
38
  */
16
39
  async findDetectionMatches(data) {
17
40
  if (!this.database) {
@@ -25,7 +48,16 @@ export class SecurityEventService extends AnalyticsDatabaseService {
25
48
  else {
26
49
  statement.append("''");
27
50
  }
28
- statement.append(` AS groupValue, count() AS matchCount, any(message) AS sampleMessage, arrayDistinct(arrayFlatten(groupArray(20)(observables))) AS sampleObservables FROM ${databaseName}.${this.model.tableName} WHERE `);
51
+ statement.append(" AS groupValue, count() AS matchCount, ");
52
+ if (data.distinctCountExpression) {
53
+ statement.append("uniqExact(nullIf(");
54
+ statement.append(data.distinctCountExpression);
55
+ statement.append(", ''))");
56
+ }
57
+ else {
58
+ statement.append("0");
59
+ }
60
+ statement.append(` AS distinctCount, any(message) AS sampleMessage, arrayDistinct(arrayFlatten(groupArray(20)(observables))) AS sampleObservables FROM ${databaseName}.${this.model.tableName} WHERE `);
29
61
  statement.append(SQL `projectId = ${{
30
62
  type: TableColumnType.ObjectID,
31
63
  value: data.projectId,
@@ -37,7 +69,26 @@ export class SecurityEventService extends AnalyticsDatabaseService {
37
69
  value: data.endTime,
38
70
  }} AND (`);
39
71
  statement.append(data.whereFragment);
40
- statement.append(") GROUP BY groupValue ORDER BY matchCount DESC LIMIT ");
72
+ statement.append(") GROUP BY groupValue");
73
+ /*
74
+ * The effective count — what the rule's threshold means — is the
75
+ * distinct count when a distinct expression was given, else the raw
76
+ * match count. A distinct-count rule always gets a HAVING clause,
77
+ * even at threshold 1: a group whose matches all lack the counted
78
+ * field has distinctCount 0 and must not fire.
79
+ */
80
+ const effectiveCountColumn = data.distinctCountExpression
81
+ ? "distinctCount"
82
+ : "matchCount";
83
+ const minMatchCount = Math.max(1, data.minMatchCount);
84
+ if (data.distinctCountExpression || minMatchCount > 1) {
85
+ statement.append(` HAVING ${effectiveCountColumn} >= `);
86
+ statement.append(SQL `${{
87
+ type: TableColumnType.Number,
88
+ value: minMatchCount,
89
+ }}`);
90
+ }
91
+ statement.append(` ORDER BY ${effectiveCountColumn} DESC LIMIT `);
41
92
  statement.append(SQL `${{
42
93
  type: TableColumnType.Number,
43
94
  value: data.maxGroups,
@@ -50,6 +101,7 @@ export class SecurityEventService extends AnalyticsDatabaseService {
50
101
  return {
51
102
  groupValue: String((_a = row["groupValue"]) !== null && _a !== void 0 ? _a : ""),
52
103
  matchCount: Number(row["matchCount"] || 0),
104
+ distinctCount: Number(row["distinctCount"] || 0),
53
105
  sampleMessage: String((_b = row["sampleMessage"]) !== null && _b !== void 0 ? _b : ""),
54
106
  sampleObservables: Array.isArray(row["sampleObservables"])
55
107
  ? row["sampleObservables"].map((value) => {
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityEventService.js","sourceRoot":"","sources":["../../../../Server/Services/SecurityEventService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecurityEventService.js","sourceRoot":"","sources":["../../../../Server/Services/SecurityEventService.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,30 @@ import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
16
16
  import BadDataException from "../../Types/Exception/BadDataException";
17
17
  import ObjectID from "../../Types/ObjectID";
18
18
  import Model from "../../Models/DatabaseModels/StatusPageResource";
19
+ function toTargetObjectID(value) {
20
+ if (!value) {
21
+ return null;
22
+ }
23
+ if (value instanceof ObjectID) {
24
+ return value;
25
+ }
26
+ if (typeof value === "string") {
27
+ return new ObjectID(value);
28
+ }
29
+ if (typeof value === "object") {
30
+ return (toTargetObjectID(value.id) ||
31
+ toTargetObjectID(value._id));
32
+ }
33
+ return null;
34
+ }
35
+ /**
36
+ * Named after what the operator sees rather than what the column is, because
37
+ * this reads back to them on the resource form.
38
+ */
39
+ function duplicateResourceException(target) {
40
+ const thing = target.monitorId ? "monitor" : "monitor group";
41
+ return new BadDataException(`This ${thing} is already added to this status page. A ${thing} can only be added once so it is not shown twice to your customers.`);
42
+ }
19
43
  export class Service extends DatabaseService {
20
44
  constructor() {
21
45
  super(Model);
@@ -100,10 +124,72 @@ export class Service extends DatabaseService {
100
124
  }
101
125
  return statusPageResources;
102
126
  }
127
+ /**
128
+ * The id of the thing a resource points at, whichever way the caller
129
+ * expressed it. The dashboard's resource form posts the relation
130
+ * (`monitor: { _id }`) while everything server side sets the foreign key
131
+ * column, and both mean the same resource.
132
+ */
133
+ getResourceMonitorTarget(data) {
134
+ return {
135
+ monitorId: toTargetObjectID(data.monitorId) || toTargetObjectID(data.monitor),
136
+ monitorGroupId: toTargetObjectID(data.monitorGroupId) ||
137
+ toTargetObjectID(data.monitorGroup),
138
+ };
139
+ }
140
+ /**
141
+ * A status page lists a monitor once.
142
+ *
143
+ * Nothing stopped the same monitor being added twice, so re-adding a label's
144
+ * monitors after a new one joined that label created a second resource for
145
+ * every monitor already there, and the public page listed each of them twice
146
+ * (issue #3420). The rule engine has always refused to add a monitor that is
147
+ * already on the page for exactly this reason; this makes the same promise
148
+ * hold for every other way a resource is created - the resource form, the
149
+ * bulk add modal, and the API.
150
+ *
151
+ * The check is status-page-wide rather than per group: a monitor in two
152
+ * groups is still a monitor a visitor sees twice.
153
+ */
154
+ async isResourceAlreadyOnStatusPage(data) {
155
+ if (!data.monitorId && !data.monitorGroupId) {
156
+ return false;
157
+ }
158
+ const query = {
159
+ statusPageId: data.statusPageId,
160
+ };
161
+ if (data.monitorId) {
162
+ query.monitorId = data.monitorId;
163
+ }
164
+ else {
165
+ query.monitorGroupId = data.monitorGroupId;
166
+ }
167
+ if (data.excludeResourceId) {
168
+ query._id = QueryHelper.notEquals(data.excludeResourceId.toString());
169
+ }
170
+ const existingResource = await this.findOneBy({
171
+ query: query,
172
+ select: {
173
+ _id: true,
174
+ },
175
+ props: {
176
+ isRoot: true,
177
+ },
178
+ });
179
+ return Boolean(existingResource);
180
+ }
103
181
  async onBeforeCreate(createBy) {
104
182
  if (!createBy.data.statusPageId) {
105
183
  throw new BadDataException("Status Page Resource statusPageId is required");
106
184
  }
185
+ const target = this.getResourceMonitorTarget(createBy.data);
186
+ if (await this.isResourceAlreadyOnStatusPage({
187
+ statusPageId: createBy.data.statusPageId,
188
+ monitorId: target.monitorId,
189
+ monitorGroupId: target.monitorGroupId,
190
+ })) {
191
+ throw duplicateResourceException(target);
192
+ }
107
193
  if (!createBy.data.order) {
108
194
  const query = {
109
195
  statusPageId: createBy.data.statusPageId,
@@ -166,6 +252,54 @@ export class Service extends DatabaseService {
166
252
  };
167
253
  }
168
254
  async onBeforeUpdate(updateBy) {
255
+ var _a, _b;
256
+ /*
257
+ * Pointing an existing resource at a monitor the page already lists is the
258
+ * same duplicate onBeforeCreate refuses, just reached from the edit form.
259
+ */
260
+ const updatedTarget = this.getResourceMonitorTarget(updateBy.data);
261
+ if ((updatedTarget.monitorId || updatedTarget.monitorGroupId) &&
262
+ updateBy.query._id) {
263
+ const resourceBeingUpdated = await this.findOneBy({
264
+ query: {
265
+ _id: updateBy.query._id,
266
+ },
267
+ props: {
268
+ isRoot: true,
269
+ },
270
+ select: {
271
+ _id: true,
272
+ statusPageId: true,
273
+ monitorId: true,
274
+ monitorGroupId: true,
275
+ },
276
+ });
277
+ const currentTarget = this.getResourceMonitorTarget((resourceBeingUpdated ||
278
+ {}));
279
+ /*
280
+ * The edit form is a ModelForm, so it posts every field it collects -
281
+ * the monitor included - even when all the operator changed was the
282
+ * display name. Checking an unchanged target would refuse those saves
283
+ * on a status page that already carries a duplicate from before this
284
+ * rule existed, which would leave both of its rows uneditable.
285
+ */
286
+ const isTargetUnchanged = (!updatedTarget.monitorId ||
287
+ updatedTarget.monitorId.toString() ===
288
+ ((_a = currentTarget.monitorId) === null || _a === void 0 ? void 0 : _a.toString())) &&
289
+ (!updatedTarget.monitorGroupId ||
290
+ updatedTarget.monitorGroupId.toString() ===
291
+ ((_b = currentTarget.monitorGroupId) === null || _b === void 0 ? void 0 : _b.toString()));
292
+ if ((resourceBeingUpdated === null || resourceBeingUpdated === void 0 ? void 0 : resourceBeingUpdated.statusPageId) &&
293
+ !isTargetUnchanged &&
294
+ (await this.isResourceAlreadyOnStatusPage({
295
+ statusPageId: resourceBeingUpdated.statusPageId,
296
+ monitorId: updatedTarget.monitorId,
297
+ monitorGroupId: updatedTarget.monitorGroupId,
298
+ excludeResourceId: resourceBeingUpdated.id,
299
+ }))) {
300
+ throw duplicateResourceException(updatedTarget);
301
+ }
302
+ }
169
303
  if (updateBy.data.order && !updateBy.props.isRoot && updateBy.query._id) {
170
304
  const resource = await this.findOneBy({
171
305
  query: {
@@ -292,6 +426,12 @@ __decorate([
292
426
  __metadata("design:paramtypes", [Object]),
293
427
  __metadata("design:returntype", Promise)
294
428
  ], Service.prototype, "findByMonitors", null);
429
+ __decorate([
430
+ CaptureSpan(),
431
+ __metadata("design:type", Function),
432
+ __metadata("design:paramtypes", [Object]),
433
+ __metadata("design:returntype", Promise)
434
+ ], Service.prototype, "isResourceAlreadyOnStatusPage", null);
295
435
  __decorate([
296
436
  CaptureSpan(),
297
437
  __metadata("design:type", Function),