@oneuptime/common 9.2.9 → 9.2.11

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 (66) hide show
  1. package/Models/DatabaseModels/Index.ts +4 -0
  2. package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.ts +461 -0
  3. package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.ts +400 -0
  4. package/Server/Infrastructure/Postgres/SchemaMigrations/1765195603978-MigrationName.ts +107 -0
  5. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
  6. package/Server/Services/Index.ts +4 -0
  7. package/Server/Services/ScheduledMaintenanceService.ts +184 -63
  8. package/Server/Services/StatusPageSubscriberNotificationTemplateService.ts +272 -0
  9. package/Server/Services/StatusPageSubscriberNotificationTemplateStatusPageService.ts +10 -0
  10. package/Server/Types/Workflow/Components/Discord/SendMessageToChannel.ts +108 -0
  11. package/Server/Types/Workflow/Components/Index.ts +2 -0
  12. package/Tests/UI/Components/Loader.test.tsx +2 -2
  13. package/Types/Email/EmailTemplateType.ts +1 -0
  14. package/Types/Permission.ts +82 -0
  15. package/Types/StatusPage/StatusPageSubscriberNotificationEventType.ts +22 -0
  16. package/Types/StatusPage/StatusPageSubscriberNotificationMethod.ts +14 -0
  17. package/Types/Workflow/ComponentID.ts +1 -0
  18. package/Types/Workflow/Components/Discord.ts +68 -0
  19. package/Types/Workflow/Components.ts +7 -0
  20. package/UI/Components/Forms/BasicForm.tsx +2 -0
  21. package/UI/Components/Forms/Types/Field.ts +1 -0
  22. package/UI/Components/Loader/Loader.tsx +6 -6
  23. package/build/dist/Models/DatabaseModels/Index.js +4 -0
  24. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  25. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js +482 -0
  26. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js.map +1 -0
  27. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js +413 -0
  28. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js.map +1 -0
  29. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765195603978-MigrationName.js +42 -0
  30. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1765195603978-MigrationName.js.map +1 -0
  31. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
  32. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  33. package/build/dist/Server/Services/Index.js +4 -0
  34. package/build/dist/Server/Services/Index.js.map +1 -1
  35. package/build/dist/Server/Services/ScheduledMaintenanceService.js +125 -50
  36. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  37. package/build/dist/Server/Services/StatusPageSubscriberNotificationTemplateService.js +236 -0
  38. package/build/dist/Server/Services/StatusPageSubscriberNotificationTemplateService.js.map +1 -0
  39. package/build/dist/Server/Services/StatusPageSubscriberNotificationTemplateStatusPageService.js +9 -0
  40. package/build/dist/Server/Services/StatusPageSubscriberNotificationTemplateStatusPageService.js.map +1 -0
  41. package/build/dist/Server/Types/Workflow/Components/Discord/SendMessageToChannel.js +92 -0
  42. package/build/dist/Server/Types/Workflow/Components/Discord/SendMessageToChannel.js.map +1 -0
  43. package/build/dist/Server/Types/Workflow/Components/Index.js +2 -0
  44. package/build/dist/Server/Types/Workflow/Components/Index.js.map +1 -1
  45. package/build/dist/Tests/UI/Components/Loader.test.js +2 -2
  46. package/build/dist/Tests/UI/Components/Loader.test.js.map +1 -1
  47. package/build/dist/Types/Email/EmailTemplateType.js +1 -0
  48. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  49. package/build/dist/Types/Permission.js +66 -0
  50. package/build/dist/Types/Permission.js.map +1 -1
  51. package/build/dist/Types/StatusPage/StatusPageSubscriberNotificationEventType.js +20 -0
  52. package/build/dist/Types/StatusPage/StatusPageSubscriberNotificationEventType.js.map +1 -0
  53. package/build/dist/Types/StatusPage/StatusPageSubscriberNotificationMethod.js +14 -0
  54. package/build/dist/Types/StatusPage/StatusPageSubscriberNotificationMethod.js.map +1 -0
  55. package/build/dist/Types/Workflow/ComponentID.js +1 -0
  56. package/build/dist/Types/Workflow/ComponentID.js.map +1 -1
  57. package/build/dist/Types/Workflow/Components/Discord.js +61 -0
  58. package/build/dist/Types/Workflow/Components/Discord.js.map +1 -0
  59. package/build/dist/Types/Workflow/Components.js +7 -0
  60. package/build/dist/Types/Workflow/Components.js.map +1 -1
  61. package/build/dist/UI/Components/Forms/BasicForm.js +3 -1
  62. package/build/dist/UI/Components/Forms/BasicForm.js.map +1 -1
  63. package/build/dist/UI/Components/Loader/Loader.js +2 -2
  64. package/build/dist/UI/Components/Loader/Loader.js.map +1 -1
  65. package/jest.config.json +1 -1
  66. package/package.json +1 -1
@@ -49,6 +49,9 @@ import { Gray500, Red500 } from "../../Types/BrandColors";
49
49
  import LabelService from "./LabelService";
50
50
  import ScheduledMaintenanceWorkspaceMessages from "../Utils/Workspace/WorkspaceMessages/ScheduledMaintenance";
51
51
  import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
52
+ import StatusPageSubscriberNotificationTemplateService, { Service as StatusPageSubscriberNotificationTemplateServiceClass, } from "./StatusPageSubscriberNotificationTemplateService";
53
+ import StatusPageSubscriberNotificationEventType from "../../Types/StatusPage/StatusPageSubscriberNotificationEventType";
54
+ import StatusPageSubscriberNotificationMethod from "../../Types/StatusPage/StatusPageSubscriberNotificationMethod";
52
55
  export class Service extends DatabaseService {
53
56
  constructor() {
54
57
  super(Model);
@@ -148,6 +151,24 @@ export class Service extends DatabaseService {
148
151
  const resourcesAffected = ((_f = statusPageToResources[statuspage._id]) === null || _f === void 0 ? void 0 : _f.map((r) => {
149
152
  return r.displayName;
150
153
  }).join(", ")) || "";
154
+ // Fetch custom templates for each notification method
155
+ const [emailTemplate, smsTemplate, slackTemplate,] = await Promise.all([
156
+ StatusPageSubscriberNotificationTemplateService.getTemplateForStatusPage({
157
+ statusPageId: statuspage.id,
158
+ eventType: StatusPageSubscriberNotificationEventType.SubscriberScheduledMaintenanceCreated,
159
+ notificationMethod: StatusPageSubscriberNotificationMethod.Email,
160
+ }),
161
+ StatusPageSubscriberNotificationTemplateService.getTemplateForStatusPage({
162
+ statusPageId: statuspage.id,
163
+ eventType: StatusPageSubscriberNotificationEventType.SubscriberScheduledMaintenanceCreated,
164
+ notificationMethod: StatusPageSubscriberNotificationMethod.SMS,
165
+ }),
166
+ StatusPageSubscriberNotificationTemplateService.getTemplateForStatusPage({
167
+ statusPageId: statuspage.id,
168
+ eventType: StatusPageSubscriberNotificationEventType.SubscriberScheduledMaintenanceCreated,
169
+ notificationMethod: StatusPageSubscriberNotificationMethod.Slack,
170
+ }),
171
+ ]);
151
172
  for (const subscriber of subscribers) {
152
173
  if (!subscriber._id) {
153
174
  continue;
@@ -162,21 +183,35 @@ export class Service extends DatabaseService {
162
183
  continue;
163
184
  }
164
185
  const unsubscribeUrl = StatusPageSubscriberService.getUnsubscribeLink(URL.fromString(statusPageURL), subscriber.id).toString();
186
+ // Create template variables for custom templates
187
+ const templateVariables = {
188
+ statusPageName: statusPageName,
189
+ statusPageUrl: statusPageURL,
190
+ detailsUrl: scheduledEventDetailsUrl,
191
+ scheduledMaintenanceTitle: event.title || "",
192
+ scheduledMaintenanceDescription: event.description || "",
193
+ scheduledStartTime: OneUptimeDate.getDateAsUserFriendlyFormattedString(event.startsAt),
194
+ scheduledEndTime: event.endsAt
195
+ ? OneUptimeDate.getDateAsUserFriendlyFormattedString(event.endsAt)
196
+ : "",
197
+ resourcesAffected: resourcesAffected,
198
+ unsubscribeUrl: unsubscribeUrl,
199
+ };
165
200
  if (subscriber.subscriberPhone) {
201
+ let smsMessage;
202
+ if (smsTemplate &&
203
+ smsTemplate.templateBody &&
204
+ statuspage.callSmsConfig) {
205
+ // Use custom template only when custom Twilio is configured
206
+ smsMessage =
207
+ StatusPageSubscriberNotificationTemplateServiceClass.compileTemplate(smsTemplate.templateBody, templateVariables);
208
+ }
209
+ else {
210
+ // Use default template
211
+ smsMessage = `Scheduled Maintenance: ${event.title || ""} on ${statusPageName}.${resourcesAffected ? ` Impact: ${resourcesAffected}.` : ""} Details: ${scheduledEventDetailsUrl}. Unsub: ${unsubscribeUrl}`;
212
+ }
166
213
  const sms = {
167
- message: `
168
- Scheduled Maintenance - ${statusPageName}
169
-
170
- ${event.title || ""}
171
-
172
- ${resourcesAffected
173
- ? "Resources Affected: " + resourcesAffected
174
- : ""}
175
-
176
- To view this event, visit ${statusPageURL}
177
-
178
- To update notification preferences or unsubscribe, visit ${unsubscribeUrl}
179
- `,
214
+ message: smsMessage,
180
215
  to: subscriber.subscriberPhone,
181
216
  };
182
217
  // send sms here.
@@ -190,7 +225,15 @@ export class Service extends DatabaseService {
190
225
  });
191
226
  }
192
227
  if (subscriber.slackIncomingWebhookUrl) {
193
- const slackMessage = `## 🔧 Scheduled Maintenance - ${event.title || ""}
228
+ let slackMessage;
229
+ if (slackTemplate && slackTemplate.templateBody) {
230
+ // Use custom template
231
+ slackMessage =
232
+ StatusPageSubscriberNotificationTemplateServiceClass.compileTemplate(slackTemplate.templateBody, templateVariables);
233
+ }
234
+ else {
235
+ // Use default template
236
+ slackMessage = `## 🔧 Scheduled Maintenance - ${event.title || ""}
194
237
 
195
238
  **Scheduled Date:** ${OneUptimeDate.getDateAsUserFriendlyFormattedString(event.startsAt)}
196
239
 
@@ -199,6 +242,7 @@ ${resourcesAffected ? `**Resources Affected:** ${resourcesAffected}` : ""}
199
242
  **Description:** ${event.description || ""}
200
243
 
201
244
  [View Status Page](${statusPageURL}) | [Unsubscribe](${unsubscribeUrl})`;
245
+ }
202
246
  // send Slack notification here.
203
247
  SlackUtil.sendMessageToChannelViaIncomingWebhook({
204
248
  url: subscriber.slackIncomingWebhookUrl,
@@ -210,42 +254,73 @@ ${resourcesAffected ? `**Resources Affected:** ${resourcesAffected}` : ""}
210
254
  if (subscriber.subscriberEmail) {
211
255
  // send email here.
212
256
  const statusPageIdString = ((_g = statuspage.id) === null || _g === void 0 ? void 0 : _g.toString()) || ((_h = statuspage._id) === null || _h === void 0 ? void 0 : _h.toString()) || null;
213
- MailService.sendMail({
214
- toEmail: subscriber.subscriberEmail,
215
- templateType: EmailTemplateType.SubscriberScheduledMaintenanceEventCreated,
216
- vars: {
217
- statusPageName: statusPageName,
218
- statusPageUrl: statusPageURL,
219
- detailsUrl: scheduledEventDetailsUrl,
220
- logoUrl: statuspage.logoFileId && statusPageIdString
221
- ? new URL(httpProtocol, host)
222
- .addRoute(StatusPageApiRoute)
223
- .addRoute(`/logo/${statusPageIdString}`)
224
- .toString()
225
- : "",
226
- isPublicStatusPage: statuspage.isPublicStatusPage
227
- ? "true"
228
- : "false",
229
- subscriberEmailNotificationFooterText: statuspage.subscriberEmailNotificationFooterText || "",
230
- resourcesAffected: resourcesAffected,
231
- scheduledAt: OneUptimeDate.getDateAsFormattedHTMLInMultipleTimezones({
232
- date: event.startsAt,
233
- timezones: statuspage.subscriberTimezones || [],
234
- use12HourFormat: true,
235
- }),
236
- eventTitle: event.title || "",
237
- eventDescription: await Markdown.convertToHTML(event.description || "", MarkdownContentType.Email),
238
- unsubscribeUrl: unsubscribeUrl,
239
- },
240
- subject: "[Scheduled Maintenance] " + (event.title || statusPageName),
241
- }, {
242
- mailServer: ProjectSmtpConfigService.toEmailServer(statuspage.smtpConfig),
243
- projectId: statuspage.projectId,
244
- statusPageId: statuspage.id,
245
- scheduledMaintenanceId: event.id,
246
- }).catch((err) => {
247
- logger.error(err);
248
- });
257
+ // Prepare email variables
258
+ const emailVars = {
259
+ statusPageName: statusPageName,
260
+ statusPageUrl: statusPageURL,
261
+ detailsUrl: scheduledEventDetailsUrl,
262
+ logoUrl: statuspage.logoFileId && statusPageIdString
263
+ ? new URL(httpProtocol, host)
264
+ .addRoute(StatusPageApiRoute)
265
+ .addRoute(`/logo/${statusPageIdString}`)
266
+ .toString()
267
+ : "",
268
+ isPublicStatusPage: statuspage.isPublicStatusPage
269
+ ? "true"
270
+ : "false",
271
+ subscriberEmailNotificationFooterText: statuspage.subscriberEmailNotificationFooterText || "",
272
+ resourcesAffected: resourcesAffected,
273
+ scheduledAt: OneUptimeDate.getDateAsFormattedHTMLInMultipleTimezones({
274
+ date: event.startsAt,
275
+ timezones: statuspage.subscriberTimezones || [],
276
+ use12HourFormat: true,
277
+ }),
278
+ eventTitle: event.title || "",
279
+ eventDescription: await Markdown.convertToHTML(event.description || "", MarkdownContentType.Email),
280
+ unsubscribeUrl: unsubscribeUrl,
281
+ };
282
+ // Check for custom email template - only use when custom SMTP is configured
283
+ if (emailTemplate &&
284
+ emailTemplate.templateBody &&
285
+ statuspage.smtpConfig) {
286
+ // Use custom template with BlankTemplate only when custom SMTP is configured
287
+ const customEmailBody = StatusPageSubscriberNotificationTemplateServiceClass.compileTemplate(emailTemplate.templateBody, Object.assign(Object.assign({}, templateVariables), emailVars));
288
+ const customEmailSubject = emailTemplate.emailSubject
289
+ ? StatusPageSubscriberNotificationTemplateServiceClass.compileTemplate(emailTemplate.emailSubject, Object.assign(Object.assign({}, templateVariables), emailVars))
290
+ : "[Scheduled Maintenance] " + (event.title || statusPageName);
291
+ MailService.sendMail({
292
+ toEmail: subscriber.subscriberEmail,
293
+ templateType: EmailTemplateType.BlankTemplate,
294
+ vars: {
295
+ body: customEmailBody,
296
+ },
297
+ subject: customEmailSubject,
298
+ }, {
299
+ mailServer: ProjectSmtpConfigService.toEmailServer(statuspage.smtpConfig),
300
+ projectId: statuspage.projectId,
301
+ statusPageId: statuspage.id,
302
+ scheduledMaintenanceId: event.id,
303
+ }).catch((err) => {
304
+ logger.error(err);
305
+ });
306
+ }
307
+ else {
308
+ // Use default hard-coded template
309
+ MailService.sendMail({
310
+ toEmail: subscriber.subscriberEmail,
311
+ templateType: EmailTemplateType.SubscriberScheduledMaintenanceEventCreated,
312
+ vars: emailVars,
313
+ subject: "[Scheduled Maintenance] " +
314
+ (event.title || statusPageName),
315
+ }, {
316
+ mailServer: ProjectSmtpConfigService.toEmailServer(statuspage.smtpConfig),
317
+ projectId: statuspage.projectId,
318
+ statusPageId: statuspage.id,
319
+ scheduledMaintenanceId: event.id,
320
+ }).catch((err) => {
321
+ logger.error(err);
322
+ });
323
+ }
249
324
  }
250
325
  }
251
326
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ScheduledMaintenanceService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAI/C,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,oCAAoC,MAAM,wCAAwC,CAAC;AAC1F,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,wCAAwC,MAAM,4CAA4C,CAAC;AAClG,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,GAAG,MAAM,qBAAqB,CAAC;AAEtC,OAAO,SAAS,MAAM,oCAAoC,CAAC;AAC3D,OAAO,SAAS,EAAE,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AACtE,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,sCAAsC,MAAM,+DAA+D,CAAC;AAEnH,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,6BAA6B,MAAM,2DAA2D,CAAC;AACtG,OAAO,6BAA6B,MAAM,2DAA2D,CAAC;AAEtG,OAAO,iCAAiC,MAAM,+DAA+D,CAAC;AAE9G,OAAO,SAAS,MAAM,8BAA8B,CAAC;AACrD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,OAAO,iBAAiB,MAAM,qCAAqC,CAAC;AAEpE,OAAO,WAAW,MAAM,mCAAmC,CAAC;AAC5D,OAAO,2BAA2B,MAAM,mDAAmD,CAAC;AAC5F,OAAO,wBAAwB,MAAM,gDAAgD,CAAC;AACtF,OAAO,UAAU,MAAM,kCAAkC,CAAC;AAC1D,OAAO,yBAAyB,MAAM,iDAAiD,CAAC;AACxF,OAAO,iBAAiB,MAAM,yCAAyC,CAAC;AACxE,OAAO,2BAA2B,MAAM,mDAAmD,CAAC;AAC5F,OAAO,WAAW,MAAM,yCAAyC,CAAC;AAClE,OAAO,QAAQ,EAAE,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,MAAM,MAAM,2BAA2B,CAAC;AAM/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,mBAAmB,MAAM,4CAA4C,CAAC;AAC7E,OAAO,+BAA+B,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,iCAAiC,EAAE,MAAM,sDAAsD,CAAC;AACzG,OAAO,SAAS,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAI1C,OAAO,qCAAqC,MAAM,2DAA2D,CAAC;AAC9G,OAAO,WAAW,MAAM,gCAAgC,CAAC;AAEzD,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,UAAU;QACvE,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,+CAA+C,CAAC,IAE5D;QACC,wCAAwC;QACxC,MAAM,wBAAwB,GAAiB,MAAM,IAAI,CAAC,SAAS,CAAC;YAClE,KAAK,EAAE;gBACL,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B;YACD,MAAM,EAAE;gBACN,0BAA0B,EAAE,IAAI;aACjC;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,SAAS,CAAC,UAAU;aAChC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,OAAO,CAAC,CAAC;QACX,CAAC;QAED,OAAO,wBAAwB,CAAC,0BAA0B;YACxD,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,0BAA0B,CAAC;YAC7D,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAGY,AAAN,KAAK,CAAC,mCAAmC,CAC9C,eAA6B;;QAE7B,MAAM,CAAC,KAAK,CACV,uEAAuE,CACxE,CAAC;QAEF,MAAM,IAAI,GAAa,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,YAAY,GAAa,MAAM,cAAc,CAAC,eAAe,EAAE,CAAC;QAEtE,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACpC,2CAA2C;YAE3C,MAAM,CAAC,KAAK,CACV,gGAAgG;gBAC9F,KAAK,CAAC,EAAE,CACX,CAAC;YAEF,IAAI,mBAAmB,GAA8B,EAAE,CAAC;YAExD,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,mBAAmB,GAAG,MAAM,yBAAyB,CAAC,MAAM,CAAC;oBAC3D,KAAK,EAAE;wBACL,SAAS,EAAE,WAAW,CAAC,GAAG,CACxB,KAAK,CAAC,QAAQ;6BACX,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE;4BACrB,OAAO,CAAC,CAAC,GAAG,CAAC;wBACf,CAAC,CAAC;6BACD,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE;4BAClB,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAI,CAAC,CAAC;wBAC9B,CAAC,CAAC,CACL;qBACF;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;wBACZ,WAAW,EAAE,IAAI;qBAClB;oBACD,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,iBAAiB;oBACxB,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,WAAW,EAAE,IAAI;wBACjB,YAAY,EAAE,IAAI;qBACnB;iBACF,CAAC,CAAC;YACL,CAAC;YAED,MAAM,qBAAqB,GAA0C,EAAE,CAAC;YAExE,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;gBAC3C,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;oBAC3B,SAAS;gBACX,CAAC;gBAED,IAAI,CAAC,qBAAqB,CAAC,MAAA,QAAQ,CAAC,YAAY,0CAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;oBAC9D,qBAAqB,CAAC,MAAA,QAAQ,CAAC,YAAY,0CAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC;gBAChE,CAAC;gBAED,MAAA,qBAAqB,CAAC,MAAA,QAAQ,CAAC,YAAY,0CAAE,QAAQ,EAAE,CAAC,0CAAE,IAAI,CAC5D,QAAQ,CACT,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GACf,MAAM,2BAA2B,CAAC,gCAAgC,CAChE,CAAA,MAAA,KAAK,CAAC,WAAW,0CAAE,GAAG,CAAC,CAAC,CAAa,EAAE,EAAE;gBACvC,OAAO,CAAC,CAAC,EAAG,CAAC;YACf,CAAC,CAAC,KAAI,EAAE,CACT,CAAC;YAEJ,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;oBACnB,SAAS;gBACX,CAAC;gBAED,IAAI,CAAC,UAAU,CAAC,0CAA0C,EAAE,CAAC;oBAC3D,SAAS,CAAC,mGAAmG;gBAC/G,CAAC;gBAED,MAAM,WAAW,GACf,MAAM,2BAA2B,CAAC,0BAA0B,CAC1D,UAAU,CAAC,EAAG,EACd;oBACE,MAAM,EAAE,IAAI;oBACZ,WAAW,EAAE,IAAI;iBAClB,CACF,CAAC;gBAEJ,MAAM,aAAa,GAAW,MAAM,iBAAiB,CAAC,gBAAgB,CACpE,UAAU,CAAC,EAAE,CACd,CAAC;gBAEF,MAAM,cAAc,GAClB,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,IAAI,IAAI,aAAa,CAAC;gBAE3D,MAAM,wBAAwB,GAC5B,KAAK,CAAC,EAAE,IAAI,aAAa;oBACvB,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC;yBAC1B,QAAQ,CAAC,qBAAqB,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;yBACpD,QAAQ,EAAE;oBACf,CAAC,CAAC,aAAa,CAAC;gBAEpB,mCAAmC;gBAEnC,MAAM,iBAAiB,GACrB,CAAA,MAAA,qBAAqB,CAAC,UAAU,CAAC,GAAI,CAAC,0CAClC,GAAG,CAAC,CAAC,CAAqB,EAAE,EAAE;oBAC9B,OAAO,CAAC,CAAC,WAAW,CAAC;gBACvB,CAAC,EACA,IAAI,CAAC,IAAI,CAAC,KAAI,EAAE,CAAC;gBAEtB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;oBACrC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;wBACpB,SAAS;oBACX,CAAC;oBAED,MAAM,sBAAsB,GAC1B,2BAA2B,CAAC,sBAAsB,CAAC;wBACjD,UAAU,EAAE,UAAU;wBACtB,mBAAmB,EAAE,qBAAqB,CAAC,UAAU,CAAC,GAAI,CAAC,IAAI,EAAE;wBACjE,UAAU,EAAE,UAAU;wBACtB,SAAS,EAAE,mBAAmB,CAAC,cAAc;qBAC9C,CAAC,CAAC;oBAEL,IAAI,CAAC,sBAAsB,EAAE,CAAC;wBAC5B,SAAS;oBACX,CAAC;oBAED,MAAM,cAAc,GAClB,2BAA2B,CAAC,kBAAkB,CAC5C,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,EAC7B,UAAU,CAAC,EAAG,CACf,CAAC,QAAQ,EAAE,CAAC;oBAEf,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;wBAC/B,MAAM,GAAG,GAAQ;4BACf,OAAO,EAAE;sDAC+B,cAAc;;8BAEtC,KAAK,CAAC,KAAK,IAAI,EAAE;;8BAGjB,iBAAiB;gCACf,CAAC,CAAC,sBAAsB,GAAG,iBAAiB;gCAC5C,CAAC,CAAC,EACN;;wDAE4B,aAAa;;uFAEkB,cAAc;6BACxE;4BACf,EAAE,EAAE,UAAU,CAAC,eAAe;yBAC/B,CAAC;wBAEF,iBAAiB;wBACjB,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE;4BACtB,SAAS,EAAE,UAAU,CAAC,SAAS;4BAC/B,kBAAkB,EAAE,2BAA2B,CAAC,cAAc,CAC5D,UAAU,CAAC,aAAa,CACzB;4BACD,YAAY,EAAE,UAAU,CAAC,EAAG;4BAC5B,sBAAsB,EAAE,KAAK,CAAC,EAAG;yBAClC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;4BACtB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACpB,CAAC,CAAC,CAAC;oBACL,CAAC;oBAED,IAAI,UAAU,CAAC,uBAAuB,EAAE,CAAC;wBACvC,MAAM,YAAY,GAAW,iCAAiC,KAAK,CAAC,KAAK,IAAI,EAAE;;sBAErE,aAAa,CAAC,oCAAoC,CAAC,KAAK,CAAC,QAAS,CAAC;;EAEvF,iBAAiB,CAAC,CAAC,CAAC,2BAA2B,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE;;mBAEtD,KAAK,CAAC,WAAW,IAAI,EAAE;;qBAErB,aAAa,qBAAqB,cAAc,GAAG,CAAC;wBAE7D,gCAAgC;wBAChC,SAAS,CAAC,sCAAsC,CAAC;4BAC/C,GAAG,EAAE,UAAU,CAAC,uBAAuB;4BACvC,IAAI,EAAE,SAAS,CAAC,8BAA8B,CAAC,YAAY,CAAC;yBAC7D,CAAC,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;4BACtB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACpB,CAAC,CAAC,CAAC;oBACL,CAAC;oBAED,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;wBAC/B,mBAAmB;wBACnB,MAAM,kBAAkB,GACtB,CAAA,MAAA,UAAU,CAAC,EAAE,0CAAE,QAAQ,EAAE,MAAI,MAAA,UAAU,CAAC,GAAG,0CAAE,QAAQ,EAAE,CAAA,IAAI,IAAI,CAAC;wBAElE,WAAW,CAAC,QAAQ,CAClB;4BACE,OAAO,EAAE,UAAU,CAAC,eAAe;4BACnC,YAAY,EACV,iBAAiB,CAAC,0CAA0C;4BAC9D,IAAI,EAAE;gCACJ,cAAc,EAAE,cAAc;gCAC9B,aAAa,EAAE,aAAa;gCAC5B,UAAU,EAAE,wBAAwB;gCACpC,OAAO,EACL,UAAU,CAAC,UAAU,IAAI,kBAAkB;oCACzC,CAAC,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC;yCACxB,QAAQ,CAAC,kBAAkB,CAAC;yCAC5B,QAAQ,CAAC,SAAS,kBAAkB,EAAE,CAAC;yCACvC,QAAQ,EAAE;oCACf,CAAC,CAAC,EAAE;gCACR,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;oCAC/C,CAAC,CAAC,MAAM;oCACR,CAAC,CAAC,OAAO;gCACX,qCAAqC,EACnC,UAAU,CAAC,qCAAqC,IAAI,EAAE;gCACxD,iBAAiB,EAAE,iBAAiB;gCACpC,WAAW,EACT,aAAa,CAAC,yCAAyC,CAAC;oCACtD,IAAI,EAAE,KAAK,CAAC,QAAS;oCACrB,SAAS,EAAE,UAAU,CAAC,mBAAmB,IAAI,EAAE;oCAC/C,eAAe,EAAE,IAAI;iCACtB,CAAC;gCACJ,UAAU,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;gCAC7B,gBAAgB,EAAE,MAAM,QAAQ,CAAC,aAAa,CAC5C,KAAK,CAAC,WAAW,IAAI,EAAE,EACvB,mBAAmB,CAAC,KAAK,CAC1B;gCACD,cAAc,EAAE,cAAc;6BAC/B;4BACD,OAAO,EACL,0BAA0B,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,cAAc,CAAC;yBAC/D,EACD;4BACE,UAAU,EAAE,wBAAwB,CAAC,aAAa,CAChD,UAAU,CAAC,UAAU,CACtB;4BACD,SAAS,EAAE,UAAU,CAAC,SAAU;4BAChC,YAAY,EAAE,UAAU,CAAC,EAAG;4BAC5B,sBAAsB,EAAE,KAAK,CAAC,EAAG;yBAClC,CACF,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;4BACrB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBACpB,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,KAAK,CACV,yEAAyE,CAC1E,CAAC;IACJ,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB,IACE,QAAQ,CAAC,KAAK,CAAC,GAAG;YAClB,CAAC,QAAQ,CAAC,IAAI,CAAC,2CAA2C;gBACxD,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EACzB,CAAC;YACD,MAAM,CAAC,KAAK,CACV,qFAAqF,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CACzG,CAAC;YAEF,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;gBAChE,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAgB;gBACnC,MAAM,EAAE;oBACN,QAAQ,EAAE,IAAI;oBACd,2CAA2C,EAAE,IAAI;iBAClD;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,CACV,uCAAuC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAC9E,CAAC;YAEF,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC1B,MAAM,IAAI,gBAAgB,CAAC,uCAAuC,CAAC,CAAC;YACtE,CAAC;YAED,MAAM,QAAQ,GACX,QAAQ,CAAC,IAAI,CAAC,QAAiB;gBAC/B,oBAAoB,CAAC,QAAkB,CAAC;YAE3C,IAAI,oBAAoB,GAA4B,IAAI,CAAC;YAEzD,MAAM,2BAA2B,GAC/B,QAAQ,CAAC,IAAI,CAAC,2CAGD,CAAC;YAEhB,IACE,2BAA2B,KAAK,IAAI;gBACpC,2BAA2B,KAAK,SAAS,EACzC,CAAC;gBACD,oBAAoB,GAAG,2BAA2B,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,MAAM,4BAA4B,GAIhC,oBAAoB,CAAC,2CAGR,CAAC;gBAEhB,IACE,4BAA4B,KAAK,IAAI;oBACrC,4BAA4B,KAAK,SAAS,EAC1C,CAAC;oBACD,oBAAoB,GAAG,4BAA4B,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,MAAM,CAAC,KAAK,CACV,mBAAmB,QAAQ,8BAA8B,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,CAChG,CAAC;YAEF,IAAI,CAAC,oBAAoB,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/D,MAAM,CAAC,KAAK,CACV,sGAAsG,CACvG,CAAC;gBACF,QAAQ,CAAC,IAAI,CAAC,0CAA0C,GAAG,IAAI,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACN,MAAM,8BAA8B,GAClC,IAAI,CAAC,mBAAmB,CAAC;oBACvB,kBAAkB,EAAE,QAAQ;oBAC5B,4BAA4B,EAAE,oBAAoB;iBACnD,CAAC,CAAC;gBAEL,QAAQ,CAAC,IAAI,CAAC,0CAA0C;oBACtD,8BAA8B,CAAC;gBAEjC,MAAM,CAAC,KAAK,CACV,sDAAsD,8BAA8B,EAAE,CACvF,CAAC;YACJ,CAAC;QACH,CAAC;QAED,6GAA6G;QAC7G,IACE,QAAQ,CAAC,IAAI,CAAC,mDAAmD;YACjE,SAAS,EACT,CAAC;YACD,IACE,QAAQ,CAAC,IAAI,CAAC,mDAAmD;gBACjE,KAAK,EACL,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,4CAA4C;oBACxD,sCAAsC,CAAC,OAAO,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,mCAAmC;oBAC/C,6FAA6F,CAAC;YAClG,CAAC;iBAAM,IACL,QAAQ,CAAC,IAAI,CAAC,mDAAmD;gBACjE,IAAI,EACJ,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC,4CAA4C;oBACxD,sCAAsC,CAAC,OAAO,CAAC;YACnD,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ;YACR,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB,MAAM,0BAA0B,GAAiB,MAAM,IAAI,CAAC,MAAM,CAAC;YACjE,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,KAAK,EAAE,SAAS;YAChB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE;oBACR,GAAG,EAAE,IAAI;iBACV;aACF;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,OAAO;YACL,YAAY,EAAE;gBACZ,0BAA0B,EAAE,0BAA0B;aACvD;YACD,QAAQ,EAAE,QAAQ;SACnB,CAAC;IACJ,CAAC;IAGwB,AAAN,KAAK,CAAC,eAAe,CACtC,QAAyB,EACzB,eAA2B;;QAE3B,IAAI,MAAA,QAAQ,CAAC,YAAY,0CAAE,0BAA0B,EAAE,CAAC;YACtD,KAAK,MAAM,yBAAyB,IAAI,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,YAAY,0CAC1D,0BAA0B,KAAI,EAAE,EAAE,CAAC;gBACrC,MAAM,wCAAwC,CAAC,iCAAiC,CAC9E,yBAAyB,CAC1B,CAAC;YACJ,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,mBAAmB,CAAC,IAG1B;QACC,IAAI,aAAa,GAAgB,IAAI,CAAC;QAEtC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACtC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEnB,MAAM,CAAC,KAAK,CACV,6DAA6D,IAAI,CAAC,kBAAkB,EAAE,CACvF,CAAC;QAEF,MAAM,qBAAqB,GAAqB,KAAK,CAAC,OAAO,CAC3D,IAAI,CAAC,4BAA4B,CAClC;YACC,CAAC,CAAE,IAAI,CAAC,4BAAiD;YACzD,CAAC,CAAC,EAAE,CAAC;QAEP,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvC,MAAM,CAAC,KAAK,CACV,qFAAqF,CACtF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,MAAM,aAAa,IAAI,qBAAqB,EAAE,CAAC;YAClD,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,SAAS;YACX,CAAC;YACD,MAAM,gBAAgB,GAAS,SAAS,CAAC,mBAAmB,CAC1D,IAAI,CAAC,kBAAkB,EACvB,aAAa,EACb,IAAI,CACL,CAAC;YAEF,MAAM,CAAC,KAAK,CACV,iCAAiC,gBAAgB,wBAAwB,aAAa,EAAE,CACzF,CAAC;YAEF,2DAA2D;YAC3D,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACpE,aAAa,GAAG,gBAAgB,CAAC;gBACjC,MAAM,CAAC,KAAK,CACV,kEAAkE,aAAa,EAAE,CAClF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC9D,CAAC;YAED,iHAAiH;YACjH,IAAI,aAAa,EAAE,CAAC;gBAClB,IACE,aAAa,CAAC,QAAQ,CAAC,gBAAgB,EAAE,aAAa,CAAC;oBACvD,aAAa,CAAC,aAAa,CAAC,gBAAgB,CAAC,EAC7C,CAAC;oBACD,aAAa,GAAG,gBAAgB,CAAC;oBACjC,MAAM,CAAC,KAAK,CACV,mEAAmE,aAAa,EAAE,CACnF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CACV,iEAAiE,CAClE,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,yBAAyB,aAAa,EAAE,CAAC,CAAC;QACvD,OAAO,aAAa,CAAC;IACvB,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAAyB;QAEzB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACzD,MAAM,IAAI,gBAAgB,CACxB,qDAAqD,CACtD,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GACb,QAAQ,CAAC,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAU,CAAC;QAEtD,MAAM,yBAAyB,GAC7B,MAAM,gCAAgC,CAAC,SAAS,CAAC;YAC/C,KAAK,EAAE;gBACL,SAAS,EAAE,SAAS;gBACpB,gBAAgB,EAAE,IAAI;aACvB;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;aACV;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,IAAI,CAAC,yBAAyB,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC;YAChE,MAAM,IAAI,gBAAgB,CACxB,gGAAgG,CACjG,CAAC;QACJ,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,kCAAkC;YAC9C,yBAAyB,CAAC,EAAE,CAAC;QAE/B,MAAM,qDAAqD,GACzD,CAAC,MAAM,IAAI,CAAC,+CAA+C,CAAC;YAC1D,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC,GAAG,CAAC,CAAC;QAEV,QAAQ,CAAC,IAAI,CAAC,0BAA0B;YACtC,qDAAqD,CAAC;QAExD,8BAA8B;QAE9B,IACE,QAAQ,CAAC,IAAI,CAAC,2CAA2C;YACzD,QAAQ,CAAC,IAAI,CAAC,QAAQ,EACtB,CAAC;YACD,MAAM,oBAAoB,GAAgB,IAAI,CAAC,mBAAmB,CAAC;gBACjE,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ;gBAC1C,4BAA4B,EAC1B,QAAQ,CAAC,IAAI,CAAC,2CAA2C;aAC5D,CAAC,CAAC;YAEH,IAAI,oBAAoB,EAAE,CAAC;gBACzB,YAAY;gBACZ,QAAQ,CAAC,IAAI,CAAC,0CAA0C;oBACtD,oBAAoB,CAAC;YACzB,CAAC;QACH,CAAC;QAED,uFAAuF;QACvF,IACE,QAAQ,CAAC,IAAI,CAAC,mDAAmD;YACjE,KAAK,EACL,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,4CAA4C;gBACxD,sCAAsC,CAAC,OAAO,CAAC;YACjD,QAAQ,CAAC,IAAI,CAAC,mCAAmC;gBAC/C,6FAA6F,CAAC;QAClG,CAAC;aAAM,IACL,QAAQ,CAAC,IAAI,CAAC,mDAAmD,KAAK,IAAI,EAC1E,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,4CAA4C;gBACxD,sCAAsC,CAAC,OAAO,CAAC;QACnD,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAGwB,AAAN,KAAK,CAAC,eAAe,CACtC,QAAyB,EACzB,WAAkB;QAElB,mDAAmD;QACnD,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YAChE,EAAE,EAAE,WAAW,CAAC,EAAG;YACnB,MAAM,EAAE;gBACN,SAAS,EAAE,IAAI;gBACf,0BAA0B,EAAE,IAAI;gBAChC,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,IAAI;gBACjB,gCAAgC,EAAE;oBAChC,IAAI,EAAE,IAAI;iBACX;gBACD,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE;oBACR,IAAI,EAAE,IAAI;oBACV,GAAG,EAAE,IAAI;iBACV;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,IAAI;iBACX;gBACD,eAAe,EAAE,IAAI;gBACrB,aAAa,EAAE;oBACb,GAAG,EAAE,IAAI;oBACT,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,IAAI;iBACZ;aACF;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,IAAI,gBAAgB,CAAC,iCAAiC,CAAC,CAAC;QAChE,CAAC;QAED,sDAAsD;QACtD,OAAO,CAAC,OAAO,EAAE;aACd,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,IAAI,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,EAAE,EAAE,CAAC;oBAC5C,OAAO,MAAM,IAAI,CAAC,kDAAkD,CAClE,WAAW,CACZ,CAAC;gBACJ,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CACV,+EAA+E,KAAK,EAAE,CACvF,CAAC;gBACF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC;aACD,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,mCAAmC,CACnD,oBAAoB,CACrB,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CACV,4FAA4F,KAAK,EAAE,CACpG,CAAC;gBACF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC;aACD,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,OAAO,MAAM,IAAI,CAAC,4CAA4C,CAC5D,WAAW,CACZ,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CACV,sGAAsG,KAAK,EAAE,CAC9G,CAAC;gBACF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC;aACD,IAAI,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,IACE,WAAW,CAAC,SAAS;oBACrB,WAAW,CAAC,EAAE;oBACd,QAAQ,CAAC,QAAQ,CAAC,aAAa;oBAC/B,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC;wBAC5C,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,EAChD,CAAC;oBACD,OAAO,MAAM,IAAI,CAAC,SAAS,CACzB,WAAW,CAAC,SAAU,EACtB,WAAW,CAAC,EAAG,EACd,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAC9B,YAAY,CACO,IAAI,EAAE,EAC1B,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAC9B,YAAY,CACO,IAAI,EAAE,EAC3B,KAAK,EACL,QAAQ,CAAC,QAAQ,CAAC,KAAK,CACxB,CAAC;gBACJ,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CACV,qEAAqE,KAAK,EAAE,CAC7E,CAAC;gBACF,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;YACtB,MAAM,CAAC,KAAK,CACV,wEAAwE,KAAK,EAAE,CAChF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEL,OAAO,WAAW,CAAC;IACrB,CAAC;IAGa,AAAN,KAAK,CAAC,kDAAkD,CAC9D,WAAkB;;QAElB,IAAI,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;gBAC9C,MAAM,IAAI,gBAAgB,CACxB,wDAAwD,CACzD,CAAC;YACJ,CAAC;YAED,kDAAkD;YAClD,MAAM,eAAe,GAGnB,MAAM,qCAAqC,CAAC,sCAAsC,CAChF;gBACE,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,sBAAsB,EAAE,WAAW,CAAC,EAAE;gBACtC,0BAA0B,EAAE,WAAW,CAAC,0BAA2B;aACpE,CACF,CAAC;YAEJ,IAAI,eAAe,IAAI,CAAA,MAAA,eAAe,CAAC,eAAe,0CAAE,MAAM,IAAG,CAAC,EAAE,CAAC;gBACnE,mDAAmD;gBACnD,MAAM,IAAI,CAAC,aAAa,CAAC;oBACvB,EAAE,EAAE,WAAW,CAAC,EAAE;oBAClB,IAAI,EAAE;wBACJ,8BAA8B,EAC5B,eAAe,CAAC,eAAe,IAAI,EAAE;qBACxC;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CACV,gEAAgE,KAAK,EAAE,CACxE,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAGa,AAAN,KAAK,CAAC,mCAAmC,CAC/C,oBAA2B;;QAE3B,IAAI,CAAC;YACH,MAAM,eAAe,GACnB,oBAAoB,CAAC,eAAe;iBACpC,MAAA,oBAAoB,CAAC,aAAa,0CAAE,EAAE,CAAA,CAAC;YAEzC,IAAI,kBAAkB,GAAW,iCAAiC,MAAA,oBAAoB,CAAC,0BAA0B,0CAAE,QAAQ,EAAE;;IAE/H,oBAAoB,CAAC,KAAK,IAAI,oBAAoB;;EAEpD,oBAAoB,CAAC,WAAW,IAAI,0BAA0B;;CAE/D,CAAC;YAEI,6BAA6B;YAC7B,IAAI,oBAAoB,CAAC,QAAQ,EAAE,CAAC;gBAClC,kBAAkB,IAAI,kBAAkB,aAAa,CAAC,yCAAyC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC;YACxI,CAAC;YAED,IAAI,oBAAoB,CAAC,MAAM,EAAE,CAAC;gBAChC,kBAAkB,IAAI,gBAAgB,aAAa,CAAC,yCAAyC,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC;YACpI,CAAC;YAED,IAAI,MAAA,oBAAoB,CAAC,gCAAgC,0CAAE,IAAI,EAAE,CAAC;gBAChE,kBAAkB,IAAI,sCAAsC,oBAAoB,CAAC,gCAAgC,CAAC,IAAI,OAAO,CAAC;YAChI,CAAC;YAED,IACE,oBAAoB,CAAC,QAAQ;gBAC7B,oBAAoB,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EACxC,CAAC;gBACD,kBAAkB,IAAI,8BAA8B,CAAC;gBAErD,KAAK,MAAM,OAAO,IAAI,oBAAoB,CAAC,QAAQ,EAAE,CAAC;oBACpD,kBAAkB,IAAI,MAAM,OAAO,CAAC,IAAI,KAAK,CAAC,MAAM,cAAc,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,SAAU,EAAE,OAAO,CAAC,EAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC;gBAC9J,CAAC;gBAED,kBAAkB,IAAI,MAAM,CAAC;YAC/B,CAAC;YAED,MAAM,uCAAuC,GAC3C,MAAM,qCAAqC,CAAC,0CAA0C,CACpF;gBACE,sBAAsB,EAAE,oBAAoB,CAAC,EAAG;gBAChD,SAAS,EAAE,oBAAoB,CAAC,SAAU;aAC3C,CACF,CAAC;YAEJ,MAAM,+BAA+B,CAAC,kCAAkC,CAAC;gBACvE,sBAAsB,EAAE,oBAAoB,CAAC,EAAG;gBAChD,SAAS,EAAE,oBAAoB,CAAC,SAAU;gBAC1C,iCAAiC,EAC/B,iCAAiC,CAAC,2BAA2B;gBAC/D,YAAY,EAAE,MAAM;gBACpB,kBAAkB,EAAE,kBAAkB;gBACtC,MAAM,EAAE,eAAe,IAAI,SAAS;gBACpC,qBAAqB,EAAE;oBACrB,mBAAmB,EAAE,uCAAuC;oBAC5D,yBAAyB,EAAE,IAAI;iBAChC;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,iDAAiD,KAAK,EAAE,CAAC,CAAC;YACvE,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAGa,AAAN,KAAK,CAAC,4CAA4C,CACxD,WAAkB;QAElB,IAAI,CAAC;YACH,MAAM,QAAQ,GACZ,IAAI,iCAAiC,EAAE,CAAC;YAC1C,QAAQ,CAAC,SAAS,GAAG,WAAW,CAAC,SAAU,CAAC;YAC5C,QAAQ,CAAC,sBAAsB,GAAG,WAAW,CAAC,EAAG,CAAC;YAClD,QAAQ,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,qHAAqH;YACtJ,QAAQ,CAAC,qCAAqC,GAAG,OAAO,CACtD,WAAW,CAAC,mDAAmD,CAChE,CAAC;YACF,sJAAsJ;YACtJ,QAAQ,CAAC,4BAA4B;gBACnC,WAAW,CAAC,mDAAmD;oBAC7D,CAAC,CAAC,sCAAsC,CAAC,OAAO;oBAChD,CAAC,CAAC,sCAAsC,CAAC,OAAO,CAAC;YACrD,QAAQ,CAAC,2BAA2B;gBAClC,WAAW,CAAC,kCAAmC,CAAC;YAElD,MAAM,wCAAwC,CAAC,MAAM,CAAC;gBACpD,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CACV,0DAA0D,KAAK,EAAE,CAClE,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,SAAS,CACpB,SAAmB,EACnB,sBAAgC,EAChC,OAAwB,EACxB,OAAwB,EACxB,YAAqB,EACrB,KAAqC;QAErC,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACpC,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3C,CAAC;YAED,MAAM,SAAS,GACb,IAAI,6BAA6B,EAAE,CAAC;YACtC,SAAS,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;YAC1D,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;YAChC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;YAC1B,SAAS,CAAC,eAAe,GAAG,CAAC,YAAY,CAAC;YAE1C,MAAM,oCAAoC,CAAC,MAAM,CAAC;gBAChD,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;QACL,CAAC;QAED,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACpC,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3C,CAAC;YACD,MAAM,SAAS,GACb,IAAI,6BAA6B,EAAE,CAAC;YACtC,SAAS,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;YAC1D,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;YAChC,SAAS,CAAC,eAAe,GAAG,CAAC,YAAY,CAAC;YAC1C,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;YAC1B,MAAM,oCAAoC,CAAC,MAAM,CAAC;gBAChD,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,sCAAsC,CACjD,SAAmB,EACnB,sBAAgC;QAEhC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,YAAY,GAAQ,MAAM,cAAc,CAAC,eAAe,EAAE,CAAC;QAEjE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CACrD,IAAI,SAAS,CAAC,QAAQ,EAAE,iCAAiC,sBAAsB,CAAC,QAAQ,EAAE,EAAE,CAC7F,CAAC;IACJ,CAAC;IAGY,AAAN,KAAK,CAAC,UAAU,CACrB,sBAAgC;QAEhC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,UAAU,GACd,MAAM,oCAAoC,CAAC,MAAM,CAAC;YAChD,KAAK,EAAE;gBACL,sBAAsB,EAAE,sBAAsB;aAC/C;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE;oBACJ,GAAG,EAAE,IAAI;oBACT,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,IAAI;iBACf;aACF;YAED,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,CAAC;SACR,CAAC,CAAC;QAEL,MAAM,UAAU,GACd,MAAM,oCAAoC,CAAC,MAAM,CAAC;YAChD,KAAK,EAAE;gBACL,sBAAsB,EAAE,sBAAsB;aAC/C;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,MAAM,EAAE,IAAI;aACb;YACD,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,iBAAiB;YACxB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,MAAM,KAAK,GACT,UAAU,CAAC,GAAG,CAAC,CAAC,SAAwC,EAAE,EAAE;YAC1D,OAAO,SAAS,CAAC,IAAK,CAAC;QACzB,CAAC,CAAC,IAAI,EAAE,CAAC;QAEX,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,GACX,UAAU,CAAC,GAAG,CAAC,CAAC,SAAwC,EAAE,EAAE;gBAC1D,OAAO,SAAS,CAAC,MAAO,CAAC;YAC3B,CAAC,CAAC,IAAI,EAAE,CAAC;YAEX,MAAM,SAAS,GACb,MAAM,iBAAiB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAEnD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,qCAAqC;gBACrC,MAAM,kBAAkB,GAAqB,KAAK,CAAC,IAAI,CACrD,CAAC,IAAU,EAAE,EAAE;oBACb,OAAO,IAAI,CAAC,EAAG,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,EAAG,CAAC,QAAQ,EAAE,CAAC;gBACzD,CAAC,CACF,CAAC;gBAEF,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAGY,AAAN,KAAK,CAAC,2BAA2B,CACtC,IAAW,EACX,KAAqC;;QAErC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,IAAI,CAAC,uBAAuB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnD,qCAAqC;YACrC,MAAM,cAAc,CAAC,mBAAmB,CACtC,IAAI,CAAC,SAAS,EACd,CAAA,MAAA,IAAI,CAAC,QAAQ,0CAAE,GAAG,CAAC,CAAC,OAAgB,EAAE,EAAE;gBACtC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;YACzC,CAAC,CAAC,KAAI,EAAE,EACR,IAAI,CAAC,uBAAuB,EAC5B,IAAI,EAAE,gBAAgB;YACtB,kDAAkD,GAAG,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EACvE,SAAS,EACT,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IAGwB,AAAN,KAAK,CAAC,eAAe,CACtC,QAAyB,EACzB,cAA0B;QAE1B,IACE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,kCAAkC;YACzD,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAChC,CAAC;YACD,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;gBACpC,MAAM,IAAI,CAAC,+BAA+B,CAAC;oBACzC,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAoB;oBACvD,sBAAsB,EAAE,MAAM;oBAC9B,2BAA2B,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI;yBAChD,kCAA8C;oBACjD,iCAAiC,EAAE,IAAI;oBACvC,qBAAqB,EAAE,KAAK;oBAC5B,YAAY,EAAE,IAAI,EAAE,sBAAsB;oBAC1C,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,MAAM,sBAAsB,IAAI,cAAc,EAAE,CAAC;gBACpD,IAAI,iCAAiC,GAAY,KAAK,CAAC;gBACvD,IAAI,kBAAkB,GACpB,wCAAwC,CAAC;gBAE3C,MAAM,eAAe,GACnB,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBAEjC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACjC,iCAAiC;oBAEjC,kBAAkB,IAAI;EAC9B,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,oBAAoB;CACrD,CAAC;oBACQ,iCAAiC,GAAG,IAAI,CAAC;gBAC3C,CAAC;gBAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACpC,iCAAiC;oBAEjC,kBAAkB,IAAI;EAC9B,aAAa,CAAC,yCAAyC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAgB,CAAC,IAAI,oBAAoB;CACzH,CAAC;oBACQ,iCAAiC,GAAG,IAAI,CAAC;gBAC3C,CAAC;gBAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAClC,iCAAiC;oBAEjC,kBAAkB,IAAI;EAC9B,aAAa,CAAC,yCAAyC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAc,CAAC,IAAI,oBAAoB;CACvH,CAAC;oBACQ,iCAAiC,GAAG,IAAI,CAAC;gBAC3C,CAAC;gBAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oBACvC,iCAAiC;oBAEjC,kBAAkB,IAAI;EAC9B,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,IAAI,0BAA0B;WACvD,CAAC;oBACF,iCAAiC,GAAG,IAAI,CAAC;gBAC3C,CAAC;gBAED,IACE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,2CAA2C;oBAClE,KAAK,CAAC,OAAO,CACX,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,2CAA2C,CACnE;oBACD,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,2CAA2C;yBAC/D,MAAM,GAAG,CAAC,EACb,CAAC;oBACD,kBAAkB,IAAI;EAE9B,QAAQ,CAAC,QAAQ,CAAC,IAAI;yBACnB,2CACJ;yBACE,GAAG,CAAC,CAAC,SAAoB,EAAE,EAAE;wBAC5B,OAAO,KAAM,SAAuB,CAAC,QAAQ,EAAE,EAAE,CAAC;oBACpD,CAAC,CAAC;yBACD,IAAI,CAAC,IAAI,CAAC;WACF,CAAC;oBACF,iCAAiC,GAAG,IAAI,CAAC;gBAC3C,CAAC;gBAED,IACE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ;oBAC/B,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;oBAC1C,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAC9C,CAAC;oBACD,MAAM,UAAU,GACd,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QACxB;yBACE,GAAG,CAAC,CAAC,OAAc,EAAE,EAAE;;wBACtB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;4BAChB,OAAO,IAAI,QAAQ,CAAC,MAAA,OAAO,CAAC,GAAG,0CAAE,QAAQ,EAAE,CAAC,CAAC;wBAC/C,CAAC;wBAED,OAAO,IAAI,CAAC;oBACd,CAAC,CAAC;yBACD,MAAM,CAAC,CAAC,SAA0B,EAAE,EAAE;wBACrC,OAAO,SAAS,KAAK,IAAI,CAAC;oBAC5B,CAAC,CAAC,CAAC;oBAEL,MAAM,QAAQ,GAAiB,MAAM,cAAc,CAAC,MAAM,CAAC;wBACzD,KAAK,EAAE;4BACL,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC;yBACjC;wBACD,MAAM,EAAE;4BACN,IAAI,EAAE,IAAI;yBACX;wBACD,KAAK,EAAE,iBAAiB;wBACxB,IAAI,EAAE,CAAC;wBACP,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC,CAAC;oBAEH,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACxB,kBAAkB,IAAI;;EAEhC,QAAQ;6BACP,GAAG,CAAC,CAAC,OAAgB,EAAE,EAAE;4BACxB,OAAO,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;wBAC7B,CAAC,CAAC;6BACD,IAAI,CAAC,IAAI,CAAC;CACZ,CAAC;wBAEU,iCAAiC,GAAG,IAAI,CAAC;oBAC3C,CAAC;gBACH,CAAC;gBAED,IACE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW;oBAClC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;oBAC7C,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EACjD,CAAC;oBACD,MAAM,aAAa,GACjB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WACxB;yBACE,GAAG,CAAC,CAAC,UAAiB,EAAE,EAAE;;wBACzB,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;4BACnB,OAAO,IAAI,QAAQ,CAAC,MAAA,UAAU,CAAC,GAAG,0CAAE,QAAQ,EAAE,CAAC,CAAC;wBAClD,CAAC;wBAED,OAAO,IAAI,CAAC;oBACd,CAAC,CAAC;yBACD,MAAM,CAAC,CAAC,YAA6B,EAAE,EAAE;wBACxC,OAAO,YAAY,KAAK,IAAI,CAAC;oBAC/B,CAAC,CAAC,CAAC;oBAEL,MAAM,WAAW,GAAiB,MAAM,iBAAiB,CAAC,MAAM,CAAC;wBAC/D,KAAK,EAAE;4BACL,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC;yBACpC;wBACD,MAAM,EAAE;4BACN,IAAI,EAAE,IAAI;yBACX;wBACD,KAAK,EAAE,iBAAiB;wBACxB,IAAI,EAAE,CAAC;wBACP,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC,CAAC;oBAEH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,kBAAkB,IAAI;;EAEhC,WAAW;6BACV,GAAG,CAAC,CAAC,UAAsB,EAAE,EAAE;4BAC9B,OAAO,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;wBAChC,CAAC,CAAC;6BACD,IAAI,CAAC,IAAI,CAAC;CACZ,CAAC;wBAEU,iCAAiC,GAAG,IAAI,CAAC;oBAC3C,CAAC;gBACH,CAAC;gBAED,IACE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM;oBAC7B,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;oBACxC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAC5C,CAAC;oBACD,MAAM,QAAQ,GACZ,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MACxB;yBACE,GAAG,CAAC,CAAC,KAAY,EAAE,EAAE;;wBACpB,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;4BACd,OAAO,IAAI,QAAQ,CAAC,MAAA,KAAK,CAAC,GAAG,0CAAE,QAAQ,EAAE,CAAC,CAAC;wBAC7C,CAAC;wBAED,OAAO,IAAI,CAAC;oBACd,CAAC,CAAC;yBACD,MAAM,CAAC,CAAC,OAAwB,EAAE,EAAE;wBACnC,OAAO,OAAO,KAAK,IAAI,CAAC;oBAC1B,CAAC,CAAC,CAAC;oBAEL,MAAM,MAAM,GAAiB,MAAM,YAAY,CAAC,MAAM,CAAC;wBACrD,KAAK,EAAE;4BACL,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;yBAC/B;wBACD,MAAM,EAAE;4BACN,IAAI,EAAE,IAAI;yBACX;wBACD,KAAK,EAAE,iBAAiB;wBACxB,IAAI,EAAE,CAAC;wBACP,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC,CAAC;oBAEH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACtB,kBAAkB,IAAI;;EAEhC,MAAM;6BACL,GAAG,CAAC,CAAC,KAAY,EAAE,EAAE;4BACpB,OAAO,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;wBAC3B,CAAC,CAAC;6BACD,IAAI,CAAC,IAAI,CAAC;CACZ,CAAC;wBAEU,iCAAiC,GAAG,IAAI,CAAC;oBAC3C,CAAC;gBACH,CAAC;gBAED,IAAI,iCAAiC,EAAE,CAAC;oBACtC,MAAM,+BAA+B,CAAC,kCAAkC,CACtE;wBACE,sBAAsB,EAAE,sBAAsB;wBAC9C,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAoB;wBACvD,iCAAiC,EAC/B,iCAAiC,CAAC,2BAA2B;wBAC/D,YAAY,EAAE,OAAO;wBACrB,kBAAkB,EAAE,kBAAkB;wBACtC,MAAM,EAAE,eAAe,IAAI,SAAS;qBACrC,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAGY,AAAN,KAAK,CAAC,+BAA+B,CAAC,IAQ5C;QACC,MAAM,EACJ,SAAS,EACT,sBAAsB,EACtB,2BAA2B,EAC3B,YAAY,EACZ,iCAAiC,EACjC,qBAAqB,EACrB,KAAK,GACN,GAAG,IAAI,CAAC;QAET,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,MAAM,IAAI,gBAAgB,CAAC,oCAAoC,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACjC,MAAM,IAAI,gBAAgB,CAAC,yCAAyC,CAAC,CAAC;QACxE,CAAC;QAED,sCAAsC;QACtC,MAAM,SAAS,GACb,MAAM,wCAAwC,CAAC,SAAS,CAAC;YACvD,KAAK,EAAE;gBACL,sBAAsB,EAAE,sBAAsB;gBAC9C,SAAS,EAAE,SAAS;aACrB;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,2BAA2B,EAAE,IAAI;aAClC;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,SAAS,CAAC,UAAU;aAChC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,IACE,SAAS;YACT,SAAS,CAAC,2BAA2B;YACrC,SAAS,CAAC,2BAA2B,CAAC,QAAQ,EAAE;gBAC9C,2BAA2B,CAAC,QAAQ,EAAE,EACxC,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAClB,IAAI,iCAAiC,EAAE,CAAC;QAE1C,cAAc,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QAC/D,cAAc,CAAC,2BAA2B,GAAG,2BAA2B,CAAC;QACzE,cAAc,CAAC,SAAS,GAAG,SAAS,CAAC;QACrC,cAAc,CAAC,eAAe,GAAG,CAAC,YAAY,CAAC;QAC/C,4BAA4B;QAC5B,cAAc,CAAC,4BAA4B,GAAG,qBAAqB;YACjE,CAAC,CAAC,sCAAsC,CAAC,OAAO;YAChD,CAAC,CAAC,sCAAsC,CAAC,OAAO,CAAC;QACnD,cAAc,CAAC,qCAAqC;YAClD,iCAAiC,CAAC;QAEpC,MAAM,wCAAwC,CAAC,MAAM,CAAC;YACpD,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,QAAQ,CAAC;YAClB,IAAI,EAAE;gBACJ,kCAAkC,EAAE,2BAA2B,CAAC,EAAE;aACnE;YACD,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,iBAAiB;YACxB,KAAK,EAAE;gBACL,GAAG,EAAE,sBAAsB,CAAC,QAAQ,EAAG;aACxC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;IACL,CAAC;IAGY,AAAN,KAAK,CAAC,+BAA+B,CAAC,IAE5C;QACC,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,SAAS,CAAC;YAC9D,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI,CAAC,sBAAsB;aACjC;YACD,MAAM,EAAE;gBACN,SAAS,EAAE,IAAI;gBACf,gCAAgC,EAAE;oBAChC,KAAK,EAAE,IAAI;iBACZ;aACF;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,IAAI,gBAAgB,CAAC,gCAAgC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,gBAAgB,CAAC,+BAA+B,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,iCAAiC,GACrC,MAAM,gCAAgC,CAAC,qCAAqC,CAC1E;YACE,SAAS,EAAE,oBAAoB,CAAC,SAAS;YACzC,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CACF,CAAC;QAEJ,MAAM,qCAAqC,GACzC,oBAAoB,CAAC,gCAAiC,CAAC,KAAM,CAAC;QAChE,MAAM,sCAAsC,GAC1C,iCAAiC,CAAC,KAAM,CAAC;QAE3C,IACE,qCAAqC;YACrC,sCAAsC,EACtC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAGY,AAAN,KAAK,CAAC,6BAA6B,CAAC,IAE1C;QACC,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YAChE,EAAE,EAAE,IAAI,CAAC,sBAAsB;YAC/B,MAAM,EAAE;gBACN,0BAA0B,EAAE,IAAI;aACjC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,IAAI,gBAAgB,CAAC,iCAAiC,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,oBAAoB,CAAC,0BAA0B;YACpD,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,0BAA0B,CAAC;YACzD,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;IAGY,AAAN,KAAK,CAAC,6BAA6B,CAAC,IAE1C;QACC,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,SAAS,CAAC;YAC9D,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI,CAAC,sBAAsB;aACjC;YACD,MAAM,EAAE;gBACN,SAAS,EAAE,IAAI;gBACf,gCAAgC,EAAE;oBAChC,KAAK,EAAE,IAAI;iBACZ;aACF;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,IAAI,gBAAgB,CAAC,gCAAgC,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC;YACpC,MAAM,IAAI,gBAAgB,CAAC,+BAA+B,CAAC,CAAC;QAC9D,CAAC;QAED,MAAM,4BAA4B,GAChC,MAAM,gCAAgC,CAAC,mCAAmC,CACxE;YACE,SAAS,EAAE,oBAAoB,CAAC,SAAS;YACzC,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CACF,CAAC;QAEJ,MAAM,qCAAqC,GACzC,oBAAoB,CAAC,gCAAiC,CAAC,KAAM,CAAC;QAChE,MAAM,iCAAiC,GACrC,4BAA4B,CAAC,KAAM,CAAC;QAEtC,IACE,qCAAqC,IAAI,iCAAiC,EAC1E,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAGY,AAAN,KAAK,CAAC,kCAAkC,CAC7C,sBAAgC,EAChC,gBAA0B;QAE1B,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YAChE,EAAE,EAAE,sBAAsB;YAC1B,MAAM,EAAE;gBACN,SAAS,EAAE,IAAI;gBACf,0BAA0B,EAAE,IAAI;aACjC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC;YAC7D,MAAM,IAAI,gBAAgB,CAAC,iCAAiC,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,yBAAyB,GAC7B,MAAM,gCAAgC,CAAC,SAAS,CAAC;YAC/C,KAAK,EAAE;gBACL,SAAS,EAAE,oBAAoB,CAAC,SAAS;gBACzC,eAAe,EAAE,IAAI;aACtB;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;aACV;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,IAAI,CAAC,yBAAyB,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC;YAChE,MAAM,IAAI,gBAAgB,CACxB,6FAA6F,CAC9F,CAAC;QACJ,CAAC;QAED,MAAM,iCAAiC,GACrC,IAAI,iCAAiC,EAAE,CAAC;QAC1C,iCAAiC,CAAC,SAAS;YACzC,oBAAoB,CAAC,SAAS,CAAC;QACjC,iCAAiC,CAAC,sBAAsB;YACtD,sBAAsB,CAAC;QACzB,iCAAiC,CAAC,2BAA2B;YAC3D,yBAAyB,CAAC,EAAE,CAAC;QAC/B,iCAAiC,CAAC,eAAe,GAAG,gBAAgB,CAAC;QAErE,MAAM,wCAAwC,CAAC,MAAM,CAAC;YACpD,IAAI,EAAE,iCAAiC;YACvC,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,oCAAoC;QAEpC,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAGY,AAAN,KAAK,CAAC,iCAAiC,CAC5C,sBAAgC,EAChC,cAAwB;QAExB,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YAChE,EAAE,EAAE,sBAAsB;YAC1B,MAAM,EAAE;gBACN,SAAS,EAAE,IAAI;gBACf,0BAA0B,EAAE,IAAI;aACjC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC;YAC7D,MAAM,IAAI,gBAAgB,CAAC,iCAAiC,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,yBAAyB,GAC7B,MAAM,gCAAgC,CAAC,SAAS,CAAC;YAC/C,KAAK,EAAE;gBACL,SAAS,EAAE,oBAAoB,CAAC,SAAS;gBACzC,cAAc,EAAE,IAAI;aACrB;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;aACV;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,IAAI,CAAC,yBAAyB,IAAI,CAAC,yBAAyB,CAAC,EAAE,EAAE,CAAC;YAChE,MAAM,IAAI,gBAAgB,CACxB,6FAA6F,CAC9F,CAAC;QACJ,CAAC;QAED,MAAM,iCAAiC,GACrC,IAAI,iCAAiC,EAAE,CAAC;QAC1C,iCAAiC,CAAC,SAAS;YACzC,oBAAoB,CAAC,SAAS,CAAC;QACjC,iCAAiC,CAAC,sBAAsB;YACtD,sBAAsB,CAAC;QACzB,iCAAiC,CAAC,2BAA2B;YAC3D,yBAAyB,CAAC,EAAE,CAAC;QAC/B,iCAAiC,CAAC,eAAe,GAAG,cAAc,CAAC;QAEnE,MAAM,wCAAwC,CAAC,MAAM,CAAC;YACpD,IAAI,EAAE,iCAAiC;YACvC,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,oCAAoC;QAEpC,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAGY,AAAN,KAAK,CAAC,0CAA0C,CAAC,IAGvD;QACC,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YAChE,EAAE,EAAE,IAAI,CAAC,sBAAsB;YAC/B,MAAM,EAAE;gBACN,8BAA8B,EAAE,IAAI;aACrC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,MAAM,IAAI,gBAAgB,CAAC,iCAAiC,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,CAAC,oBAAoB,CAAC,8BAA8B,IAAI,EAAE,CAAC,CAAC,MAAM,CACvE,CAAC,OAAyC,EAAE,EAAE;YAC5C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,OAAO,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa,CAAC;QACtD,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,wCAAwC,CACnD,sBAAgC;;QAEhC,MAAM,oBAAoB,GAAiB,MAAM,IAAI,CAAC,WAAW,CAAC;YAChE,EAAE,EAAE,sBAAsB;YAC1B,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,SAAS,EAAE,IAAI;gBACf,kCAAkC,EAAE,IAAI;aACzC;YACD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,oBAAoB,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,CAAC;YAC7D,OAAO;QACT,CAAC;QACD,MAAM,cAAc,GAClB,MAAM,wCAAwC,CAAC,SAAS,CAAC;YACvD,KAAK,EAAE;gBACL,sBAAsB,EAAE,oBAAoB,CAAC,EAAG;gBAChD,SAAS,EAAE,oBAAoB,CAAC,SAAS;aAC1C;YACD,IAAI,EAAE;gBACJ,QAAQ,EAAE,SAAS,CAAC,UAAU;aAC/B;YACD,MAAM,EAAE;gBACN,2BAA2B,EAAE,IAAI;aAClC;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QACL,IACE,cAAc;YACd,cAAc,CAAC,2BAA2B;YAC1C,CAAA,MAAA,oBAAoB,CAAC,kCAAkC,0CAAE,QAAQ,EAAE;gBACjE,cAAc,CAAC,2BAA2B,CAAC,QAAQ,EAAE,EACvD,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC;gBACrB,KAAK,EAAE,EAAE,GAAG,EAAE,oBAAoB,CAAC,EAAG,CAAC,QAAQ,EAAE,EAAE;gBACnD,IAAI,EAAE;oBACJ,kCAAkC,EAChC,cAAc,CAAC,2BAA2B;iBAC7C;gBACD,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;aACxB,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CACT,gCAAgC,oBAAoB,CAAC,EAAE,qBAAqB,cAAc,CAAC,2BAA2B,EAAE,CACzH,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAzrDc;IADZ,WAAW,EAAE;;;;8EA2Bb;AAGY;IADZ,WAAW,EAAE;;qCAEK,KAAK;;kEAwPvB;AAGwB;IADxB,WAAW,EAAE;;;;6CAsHb;AAGwB;IADxB,WAAW,EAAE;;;;6CA0Bb;AAGwB;IADxB,WAAW,EAAE;;;;8CAeb;AA2EwB;IADxB,WAAW,EAAE;;;;6CAgFb;AAGwB;IADxB,WAAW,EAAE;;6CAGC,KAAK;;8CAoHnB;AAGa;IADb,WAAW,EAAE;;qCAEC,KAAK;;iFAwCnB;AAGa;IADb,WAAW,EAAE;;qCAEU,KAAK;;kEAkE5B;AAGa;IADb,WAAW,EAAE;;qCAEC,KAAK;;2EA+BnB;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;QACK,QAAQ;QACvB,KAAK;QACL,KAAK;;wCAqCf;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;QACK,QAAQ;;qEAmBjC;AAGY;IADZ,WAAW,EAAE;;qCAEY,QAAQ;;yCAyEjC;AAGY;IADZ,WAAW,EAAE;;qCAEN,KAAK;;0DAyBZ;AAGwB;IADxB,WAAW,EAAE;;;;8CAyPb;AAGY;IADZ,WAAW,EAAE;;;;8DA4Fb;AAGY;IADZ,WAAW,EAAE;;;;8DAkDb;AAGY;IADZ,WAAW,EAAE;;;;4DAqBb;AAGY;IADZ,WAAW,EAAE;;;;4DAiDb;AAGY;IADZ,WAAW,EAAE;;qCAEY,QAAQ;QACd,QAAQ;;iEAyD3B;AAGY;IADZ,WAAW,EAAE;;qCAEY,QAAQ;QAChB,QAAQ;;gEAyDzB;AAGY;IADZ,WAAW,EAAE;;;;yEA4Bb;AAwDH,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"ScheduledMaintenanceService.js","sourceRoot":"","sources":["../../../../Server/Services/ScheduledMaintenanceService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,236 @@
1
+ import DatabaseService from "./DatabaseService";
2
+ import Model from "../../Models/DatabaseModels/StatusPageSubscriberNotificationTemplate";
3
+ import StatusPageSubscriberNotificationEventType from "../../Types/StatusPage/StatusPageSubscriberNotificationEventType";
4
+ import StatusPageSubscriberNotificationTemplateStatusPageService from "./StatusPageSubscriberNotificationTemplateStatusPageService";
5
+ import BadDataException from "../../Types/Exception/BadDataException";
6
+ export class Service extends DatabaseService {
7
+ constructor() {
8
+ super(Model);
9
+ }
10
+ /**
11
+ * Get template for a specific status page, event type, and notification method.
12
+ * Returns null if no custom template is found (caller should use default template).
13
+ */
14
+ async getTemplateForStatusPage(data) {
15
+ const { statusPageId, eventType, notificationMethod } = data;
16
+ // First find the template link for this status page
17
+ const templateLinks = await StatusPageSubscriberNotificationTemplateStatusPageService.findBy({
18
+ query: {
19
+ statusPageId: statusPageId,
20
+ },
21
+ select: {
22
+ statusPageSubscriberNotificationTemplateId: true,
23
+ },
24
+ skip: 0,
25
+ limit: 100,
26
+ props: {
27
+ isRoot: true,
28
+ },
29
+ });
30
+ if (templateLinks.length === 0) {
31
+ return null;
32
+ }
33
+ // Get the template IDs
34
+ const templateIds = templateLinks
35
+ .map((link) => {
36
+ return link.statusPageSubscriberNotificationTemplateId;
37
+ })
38
+ .filter((id) => {
39
+ return id !== undefined;
40
+ });
41
+ if (templateIds.length === 0) {
42
+ return null;
43
+ }
44
+ // Find the specific template matching the event type and notification method
45
+ const templates = await this.findBy({
46
+ query: {
47
+ eventType: eventType,
48
+ notificationMethod: notificationMethod,
49
+ },
50
+ select: {
51
+ _id: true,
52
+ templateName: true,
53
+ templateBody: true,
54
+ emailSubject: true,
55
+ eventType: true,
56
+ notificationMethod: true,
57
+ },
58
+ skip: 0,
59
+ limit: 100,
60
+ props: {
61
+ isRoot: true,
62
+ },
63
+ });
64
+ // Find a template that matches one of the linked template IDs
65
+ for (const template of templates) {
66
+ if (templateIds.some((id) => {
67
+ var _a;
68
+ return id.toString() === ((_a = template._id) === null || _a === void 0 ? void 0 : _a.toString());
69
+ })) {
70
+ return template;
71
+ }
72
+ }
73
+ return null;
74
+ }
75
+ /**
76
+ * Get available variables for a specific event type.
77
+ * These variables can be used in templates with {{variableName}} syntax.
78
+ */
79
+ static getAvailableVariablesForEventType(eventType) {
80
+ const commonVariables = [
81
+ { name: "statusPageName", description: "Name of the status page" },
82
+ { name: "statusPageUrl", description: "URL of the status page" },
83
+ {
84
+ name: "unsubscribeUrl",
85
+ description: "URL to unsubscribe from notifications",
86
+ },
87
+ { name: "resourcesAffected", description: "List of affected resources" },
88
+ ];
89
+ switch (eventType) {
90
+ case StatusPageSubscriberNotificationEventType.SubscriberIncidentCreated:
91
+ return [
92
+ ...commonVariables,
93
+ { name: "incidentTitle", description: "Title of the incident" },
94
+ {
95
+ name: "incidentDescription",
96
+ description: "Description of the incident",
97
+ },
98
+ { name: "incidentSeverity", description: "Severity of the incident" },
99
+ { name: "detailsUrl", description: "URL to view incident details" },
100
+ ];
101
+ case StatusPageSubscriberNotificationEventType.SubscriberIncidentStateChanged:
102
+ return [
103
+ ...commonVariables,
104
+ { name: "incidentTitle", description: "Title of the incident" },
105
+ {
106
+ name: "incidentDescription",
107
+ description: "Description of the incident",
108
+ },
109
+ { name: "incidentSeverity", description: "Severity of the incident" },
110
+ {
111
+ name: "incidentState",
112
+ description: "Current state of the incident",
113
+ },
114
+ { name: "detailsUrl", description: "URL to view incident details" },
115
+ ];
116
+ case StatusPageSubscriberNotificationEventType.SubscriberIncidentNoteCreated:
117
+ return [
118
+ ...commonVariables,
119
+ { name: "incidentTitle", description: "Title of the incident" },
120
+ { name: "incidentSeverity", description: "Severity of the incident" },
121
+ {
122
+ name: "incidentState",
123
+ description: "Current state of the incident",
124
+ },
125
+ { name: "postedAt", description: "When the note was posted" },
126
+ { name: "note", description: "Content of the note" },
127
+ { name: "detailsUrl", description: "URL to view incident details" },
128
+ ];
129
+ case StatusPageSubscriberNotificationEventType.SubscriberIncidentPostmortemPublished:
130
+ return [
131
+ ...commonVariables,
132
+ { name: "incidentTitle", description: "Title of the incident" },
133
+ { name: "incidentSeverity", description: "Severity of the incident" },
134
+ {
135
+ name: "postmortemNote",
136
+ description: "Content of the postmortem note",
137
+ },
138
+ { name: "detailsUrl", description: "URL to view incident details" },
139
+ ];
140
+ case StatusPageSubscriberNotificationEventType.SubscriberAnnouncementCreated:
141
+ return [
142
+ ...commonVariables,
143
+ {
144
+ name: "announcementTitle",
145
+ description: "Title of the announcement",
146
+ },
147
+ {
148
+ name: "announcementDescription",
149
+ description: "Description of the announcement",
150
+ },
151
+ {
152
+ name: "detailsUrl",
153
+ description: "URL to view announcement details",
154
+ },
155
+ ];
156
+ case StatusPageSubscriberNotificationEventType.SubscriberScheduledMaintenanceCreated:
157
+ return [
158
+ ...commonVariables,
159
+ {
160
+ name: "scheduledMaintenanceTitle",
161
+ description: "Title of the scheduled maintenance",
162
+ },
163
+ {
164
+ name: "scheduledMaintenanceDescription",
165
+ description: "Description of the scheduled maintenance",
166
+ },
167
+ {
168
+ name: "scheduledStartTime",
169
+ description: "When the maintenance is scheduled to start",
170
+ },
171
+ {
172
+ name: "scheduledEndTime",
173
+ description: "When the maintenance is scheduled to end",
174
+ },
175
+ {
176
+ name: "detailsUrl",
177
+ description: "URL to view scheduled maintenance details",
178
+ },
179
+ ];
180
+ case StatusPageSubscriberNotificationEventType.SubscriberScheduledMaintenanceStateChanged:
181
+ return [
182
+ ...commonVariables,
183
+ {
184
+ name: "scheduledMaintenanceTitle",
185
+ description: "Title of the scheduled maintenance",
186
+ },
187
+ {
188
+ name: "scheduledMaintenanceDescription",
189
+ description: "Description of the scheduled maintenance",
190
+ },
191
+ {
192
+ name: "scheduledMaintenanceState",
193
+ description: "Current state of the scheduled maintenance",
194
+ },
195
+ {
196
+ name: "detailsUrl",
197
+ description: "URL to view scheduled maintenance details",
198
+ },
199
+ ];
200
+ case StatusPageSubscriberNotificationEventType.SubscriberScheduledMaintenanceNoteCreated:
201
+ return [
202
+ ...commonVariables,
203
+ {
204
+ name: "scheduledMaintenanceTitle",
205
+ description: "Title of the scheduled maintenance",
206
+ },
207
+ {
208
+ name: "scheduledMaintenanceState",
209
+ description: "Current state of the scheduled maintenance",
210
+ },
211
+ { name: "postedAt", description: "When the note was posted" },
212
+ { name: "note", description: "Content of the note" },
213
+ {
214
+ name: "detailsUrl",
215
+ description: "URL to view scheduled maintenance details",
216
+ },
217
+ ];
218
+ default:
219
+ throw new BadDataException(`Unknown event type: ${eventType}`);
220
+ }
221
+ }
222
+ /**
223
+ * Compile a template with the given variables.
224
+ * Replaces {{variableName}} with the actual values.
225
+ */
226
+ static compileTemplate(template, variables) {
227
+ let compiledTemplate = template;
228
+ for (const [key, value] of Object.entries(variables)) {
229
+ const regex = new RegExp(`{{\\s*${key}\\s*}}`, "g");
230
+ compiledTemplate = compiledTemplate.replace(regex, value || "");
231
+ }
232
+ return compiledTemplate;
233
+ }
234
+ }
235
+ export default new Service();
236
+ //# sourceMappingURL=StatusPageSubscriberNotificationTemplateService.js.map