@bubblelab/bubble-core 0.1.27 → 0.1.30

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 (88) hide show
  1. package/dist/bubble-bundle.d.ts +160 -91
  2. package/dist/bubble-factory.d.ts.map +1 -1
  3. package/dist/bubble-factory.js +4 -0
  4. package/dist/bubble-factory.js.map +1 -1
  5. package/dist/bubbles/service-bubble/agi-inc.d.ts +8 -8
  6. package/dist/bubbles/service-bubble/airtable.d.ts +98 -98
  7. package/dist/bubbles/service-bubble/apify/actors/google-maps-scraper.d.ts +2 -2
  8. package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +20 -20
  9. package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +30 -30
  10. package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +26 -26
  11. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +56 -56
  12. package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts +16 -16
  13. package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts +31 -31
  14. package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +8 -8
  15. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +153 -153
  16. package/dist/bubbles/service-bubble/apify/apify.d.ts +12 -12
  17. package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +4 -4
  18. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +8 -8
  19. package/dist/bubbles/service-bubble/eleven-labs.d.ts +4 -4
  20. package/dist/bubbles/service-bubble/firecrawl.d.ts +128 -128
  21. package/dist/bubbles/service-bubble/followupboss.d.ts +84 -84
  22. package/dist/bubbles/service-bubble/github.d.ts +120 -120
  23. package/dist/bubbles/service-bubble/gmail.d.ts +411 -411
  24. package/dist/bubbles/service-bubble/google-calendar.d.ts +184 -184
  25. package/dist/bubbles/service-bubble/google-drive.d.ts +48 -48
  26. package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +33 -33
  27. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts +31 -0
  28. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.d.ts.map +1 -0
  29. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js +184 -0
  30. package/dist/bubbles/service-bubble/google-sheets/google-sheets.integration.flow.js.map +1 -0
  31. package/dist/bubbles/service-bubble/google-sheets/google-sheets.schema.d.ts +79 -79
  32. package/dist/bubbles/service-bubble/google-sheets.d.ts +1811 -0
  33. package/dist/bubbles/service-bubble/google-sheets.d.ts.map +1 -0
  34. package/dist/bubbles/service-bubble/google-sheets.js +904 -0
  35. package/dist/bubbles/service-bubble/google-sheets.js.map +1 -0
  36. package/dist/bubbles/service-bubble/http.d.ts +8 -8
  37. package/dist/bubbles/service-bubble/insforge-db.d.ts +4 -4
  38. package/dist/bubbles/service-bubble/jira/index.d.ts +5 -0
  39. package/dist/bubbles/service-bubble/jira/index.d.ts.map +1 -0
  40. package/dist/bubbles/service-bubble/jira/index.js +5 -0
  41. package/dist/bubbles/service-bubble/jira/index.js.map +1 -0
  42. package/dist/bubbles/service-bubble/jira/jira.d.ts +2695 -0
  43. package/dist/bubbles/service-bubble/jira/jira.d.ts.map +1 -0
  44. package/dist/bubbles/service-bubble/jira/jira.integration.flow.d.ts +38 -0
  45. package/dist/bubbles/service-bubble/jira/jira.integration.flow.d.ts.map +1 -0
  46. package/dist/bubbles/service-bubble/jira/jira.integration.flow.js +358 -0
  47. package/dist/bubbles/service-bubble/jira/jira.integration.flow.js.map +1 -0
  48. package/dist/bubbles/service-bubble/jira/jira.js +535 -0
  49. package/dist/bubbles/service-bubble/jira/jira.js.map +1 -0
  50. package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +3659 -0
  51. package/dist/bubbles/service-bubble/jira/jira.schema.d.ts.map +1 -0
  52. package/dist/bubbles/service-bubble/jira/jira.schema.js +502 -0
  53. package/dist/bubbles/service-bubble/jira/jira.schema.js.map +1 -0
  54. package/dist/bubbles/service-bubble/jira/jira.utils.d.ts +141 -0
  55. package/dist/bubbles/service-bubble/jira/jira.utils.d.ts.map +1 -0
  56. package/dist/bubbles/service-bubble/jira/jira.utils.js +428 -0
  57. package/dist/bubbles/service-bubble/jira/jira.utils.js.map +1 -0
  58. package/dist/bubbles/service-bubble/notion/notion.d.ts +148 -148
  59. package/dist/bubbles/service-bubble/notion/property-schemas.d.ts +36 -36
  60. package/dist/bubbles/service-bubble/postgresql.d.ts +4 -4
  61. package/dist/bubbles/service-bubble/resend.d.ts +4 -4
  62. package/dist/bubbles/service-bubble/slack/slack.d.ts +142 -142
  63. package/dist/bubbles/service-bubble/slack.d.ts +5869 -0
  64. package/dist/bubbles/service-bubble/slack.d.ts.map +1 -0
  65. package/dist/bubbles/service-bubble/slack.js +1536 -0
  66. package/dist/bubbles/service-bubble/slack.js.map +1 -0
  67. package/dist/bubbles/service-bubble/storage.d.ts +20 -20
  68. package/dist/bubbles/service-bubble/telegram.d.ts +6 -6
  69. package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts +4 -4
  70. package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +4 -4
  71. package/dist/bubbles/tool-bubble/instagram-tool.d.ts +4 -4
  72. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +198 -198
  73. package/dist/bubbles/tool-bubble/people-search-tool.d.ts +4 -4
  74. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +12 -12
  75. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +4 -4
  76. package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +8 -8
  77. package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +44 -44
  78. package/dist/bubbles/tool-bubble/twitter-tool.d.ts +88 -88
  79. package/dist/bubbles/tool-bubble/web-search-tool.d.ts +4 -4
  80. package/dist/bubbles/tool-bubble/youtube-tool.d.ts +20 -20
  81. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +42 -42
  82. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +48 -48
  83. package/dist/bubbles.json +1791 -2
  84. package/dist/index.d.ts +2 -0
  85. package/dist/index.d.ts.map +1 -1
  86. package/dist/index.js +1 -0
  87. package/dist/index.js.map +1 -1
  88. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jira.schema.d.ts","sourceRoot":"","sources":["../../../../src/bubbles/service-bubble/jira/jira.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AA2C3D,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;EAOS,CAAC;AAErC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAOF,CAAC;AAE/B,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcG,CAAC;AAEjC,eAAO,MAAM,kBAAkB;;;;;;;;;EAKH,CAAC;AAE7B,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAMH,CAAC;AAE5B,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBH,CAAC;AAE5B,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQH,CAAC;AAE/B,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuDH,CAAC;AAM1B,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6T3B,CAAC;AAMH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsG3B,CAAC;AAOH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG3D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG/D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG3D,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE;IAAE,SAAS,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC;AAC5E,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,EAAE;IAAE,SAAS,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AACtE,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE;IAAE,SAAS,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC;AAC5E,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,EAAE;IAAE,SAAS,EAAE,QAAQ,CAAA;CAAE,CAAC,CAAC;AAC5E,MAAM,MAAM,oBAAoB,GAAG,OAAO,CACxC,UAAU,EACV;IAAE,SAAS,EAAE,YAAY,CAAA;CAAE,CAC5B,CAAC;AACF,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAC7C,UAAU,EACV;IAAE,SAAS,EAAE,kBAAkB,CAAA;CAAE,CAClC,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAC1C,UAAU,EACV;IAAE,SAAS,EAAE,eAAe,CAAA;CAAE,CAC/B,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAC5C,UAAU,EACV;IAAE,SAAS,EAAE,kBAAkB,CAAA;CAAE,CAClC,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG,OAAO,CACxC,UAAU,EACV;IAAE,SAAS,EAAE,aAAa,CAAA;CAAE,CAC7B,CAAC;AACF,MAAM,MAAM,qBAAqB,GAAG,OAAO,CACzC,UAAU,EACV;IAAE,SAAS,EAAE,cAAc,CAAA;CAAE,CAC9B,CAAC"}
@@ -0,0 +1,502 @@
1
+ import { z } from 'zod';
2
+ import { CredentialType } from '@bubblelab/shared-schemas';
3
+ // ============================================================================
4
+ // HELPER SCHEMAS
5
+ // ============================================================================
6
+ // Labels modification schema for update operation
7
+ const LabelsModificationSchema = z
8
+ .object({
9
+ add: z.array(z.string()).optional().describe('Labels to add to the issue'),
10
+ remove: z
11
+ .array(z.string())
12
+ .optional()
13
+ .describe('Labels to remove from the issue'),
14
+ set: z
15
+ .array(z.string())
16
+ .optional()
17
+ .describe('Replace all labels with these (overrides add/remove)'),
18
+ })
19
+ .describe('Label modifications - use add/remove for incremental changes, or set to replace all');
20
+ // Priority enum for consistent values
21
+ const PrioritySchema = z
22
+ .enum(['Highest', 'High', 'Medium', 'Low', 'Lowest'])
23
+ .describe('Issue priority level');
24
+ // Expand options for get operation
25
+ const ExpandOptionsSchema = z
26
+ .enum(['changelog', 'comments', 'transitions'])
27
+ .describe('Additional data to include in the response');
28
+ // Credentials field (common across all operations)
29
+ const credentialsField = z
30
+ .record(z.nativeEnum(CredentialType), z.string())
31
+ .optional()
32
+ .describe('Credentials (injected at runtime)');
33
+ // ============================================================================
34
+ // ISSUE DATA SCHEMAS (for results)
35
+ // ============================================================================
36
+ export const JiraUserSchema = z
37
+ .object({
38
+ accountId: z.string().describe('User account ID'),
39
+ displayName: z.string().optional().describe('User display name'),
40
+ emailAddress: z.string().optional().describe('User email address'),
41
+ active: z.boolean().optional().describe('Whether the user is active'),
42
+ })
43
+ .describe('Jira user information');
44
+ export const JiraIssueTypeSchema = z
45
+ .object({
46
+ id: z.string().describe('Issue type ID'),
47
+ name: z.string().describe('Issue type name (e.g., "Task", "Bug", "Story")'),
48
+ description: z.string().optional().describe('Issue type description'),
49
+ subtask: z.boolean().optional().describe('Whether this is a subtask type'),
50
+ })
51
+ .describe('Jira issue type');
52
+ export const JiraStatusSchema = z
53
+ .object({
54
+ id: z.string().describe('Status ID'),
55
+ name: z
56
+ .string()
57
+ .describe('Status name (e.g., "To Do", "In Progress", "Done")'),
58
+ statusCategory: z
59
+ .object({
60
+ key: z.string().describe('Category key'),
61
+ name: z.string().describe('Category name'),
62
+ })
63
+ .optional()
64
+ .describe('Status category'),
65
+ })
66
+ .describe('Jira issue status');
67
+ export const JiraPrioritySchema = z
68
+ .object({
69
+ id: z.string().describe('Priority ID'),
70
+ name: z.string().describe('Priority name'),
71
+ })
72
+ .describe('Jira priority');
73
+ export const JiraProjectSchema = z
74
+ .object({
75
+ id: z.string().describe('Project ID'),
76
+ key: z.string().describe('Project key (e.g., "PROJ")'),
77
+ name: z.string().describe('Project name'),
78
+ })
79
+ .describe('Jira project');
80
+ export const JiraCommentSchema = z
81
+ .object({
82
+ id: z.string().describe('Comment ID'),
83
+ author: JiraUserSchema.nullable()
84
+ .optional()
85
+ .describe('Comment author (null if deleted or anonymized)'),
86
+ body: z
87
+ .unknown()
88
+ .optional()
89
+ .describe('Comment body (ADF format or plain text)'),
90
+ renderedBody: z
91
+ .string()
92
+ .optional()
93
+ .describe('Comment body as rendered HTML'),
94
+ created: z.string().optional().describe('Creation timestamp'),
95
+ updated: z.string().optional().describe('Last update timestamp'),
96
+ })
97
+ .describe('Jira comment');
98
+ export const JiraTransitionSchema = z
99
+ .object({
100
+ id: z.string().describe('Transition ID'),
101
+ name: z
102
+ .string()
103
+ .describe('Transition name (e.g., "Start Progress", "Done")'),
104
+ to: JiraStatusSchema.optional().describe('Target status'),
105
+ })
106
+ .describe('Jira transition');
107
+ export const JiraIssueSchema = z
108
+ .object({
109
+ id: z.string().describe('Issue ID'),
110
+ key: z.string().describe('Issue key (e.g., "PROJ-123")'),
111
+ self: z.string().optional().describe('Issue API URL'),
112
+ fields: z
113
+ .object({
114
+ summary: z.string().optional().describe('Issue title/summary'),
115
+ description: z
116
+ .unknown()
117
+ .optional()
118
+ .describe('Issue description (ADF format)'),
119
+ status: JiraStatusSchema.optional().describe('Current status'),
120
+ priority: JiraPrioritySchema.nullable()
121
+ .optional()
122
+ .describe('Issue priority (null if not assigned)'),
123
+ assignee: JiraUserSchema.nullable()
124
+ .optional()
125
+ .describe('Assigned user'),
126
+ reporter: JiraUserSchema.nullable()
127
+ .optional()
128
+ .describe('Reporter user (null if deleted or anonymized)'),
129
+ issuetype: JiraIssueTypeSchema.optional().describe('Issue type'),
130
+ project: JiraProjectSchema.optional().describe('Project'),
131
+ labels: z.array(z.string()).optional().describe('Issue labels'),
132
+ created: z.string().optional().describe('Creation timestamp'),
133
+ updated: z.string().optional().describe('Last update timestamp'),
134
+ duedate: z
135
+ .string()
136
+ .nullable()
137
+ .optional()
138
+ .describe('Due date (YYYY-MM-DD)'),
139
+ parent: z
140
+ .object({
141
+ id: z.string(),
142
+ key: z.string(),
143
+ })
144
+ .optional()
145
+ .describe('Parent issue (for subtasks)'),
146
+ comment: z
147
+ .object({
148
+ comments: z.array(JiraCommentSchema).optional(),
149
+ total: z.number().optional(),
150
+ })
151
+ .optional()
152
+ .describe('Issue comments'),
153
+ })
154
+ .passthrough()
155
+ .describe('Issue fields'),
156
+ transitions: z
157
+ .array(JiraTransitionSchema)
158
+ .optional()
159
+ .describe('Available transitions'),
160
+ changelog: z.unknown().optional().describe('Issue changelog'),
161
+ })
162
+ .describe('Jira issue');
163
+ // ============================================================================
164
+ // PARAMETERS SCHEMA (discriminated union)
165
+ // ============================================================================
166
+ export const JiraParamsSchema = z.discriminatedUnion('operation', [
167
+ // -------------------------------------------------------------------------
168
+ // CORE OPERATION 1: search - Find issues with JQL
169
+ // -------------------------------------------------------------------------
170
+ z.object({
171
+ operation: z
172
+ .literal('search')
173
+ .describe('Search for issues using JQL query'),
174
+ jql: z
175
+ .string()
176
+ .min(1, 'JQL query is required')
177
+ .describe('JQL query string. Examples: "project = PROJ", "assignee = currentUser()", "status = Open AND created >= -7d"'),
178
+ limit: z
179
+ .number()
180
+ .min(1)
181
+ .max(100)
182
+ .optional()
183
+ .default(50)
184
+ .describe('Maximum number of issues to return (1-100)'),
185
+ offset: z
186
+ .number()
187
+ .min(0)
188
+ .optional()
189
+ .default(0)
190
+ .describe('Starting index for pagination'),
191
+ fields: z
192
+ .array(z.string())
193
+ .optional()
194
+ .describe('Specific fields to return (e.g., ["summary", "status", "assignee"]). Default: all standard fields'),
195
+ credentials: credentialsField,
196
+ }),
197
+ // -------------------------------------------------------------------------
198
+ // CORE OPERATION 2: get - Get issue details
199
+ // -------------------------------------------------------------------------
200
+ z.object({
201
+ operation: z.literal('get').describe('Get details for a specific issue'),
202
+ key: z
203
+ .string()
204
+ .min(1, 'Issue key is required')
205
+ .describe('Issue key (e.g., "PROJ-123") or issue ID'),
206
+ fields: z
207
+ .array(z.string())
208
+ .optional()
209
+ .describe('Specific fields to return. Default: all fields'),
210
+ expand: z
211
+ .array(ExpandOptionsSchema)
212
+ .optional()
213
+ .describe('Additional data to include'),
214
+ credentials: credentialsField,
215
+ }),
216
+ // -------------------------------------------------------------------------
217
+ // CORE OPERATION 3: create - Create new issue
218
+ // -------------------------------------------------------------------------
219
+ z.object({
220
+ operation: z.literal('create').describe('Create a new issue in Jira'),
221
+ project: z
222
+ .string()
223
+ .min(1, 'Project key is required')
224
+ .describe('Project key (e.g., "PROJ")'),
225
+ summary: z
226
+ .string()
227
+ .min(1, 'Summary is required')
228
+ .max(255)
229
+ .describe('Issue title/summary (max 255 chars)'),
230
+ type: z
231
+ .string()
232
+ .optional()
233
+ .default('Task')
234
+ .describe('Issue type: "Task", "Bug", "Story", "Epic", etc. Default: "Task"'),
235
+ description: z
236
+ .string()
237
+ .optional()
238
+ .describe('Issue description (plain text - auto-converted to ADF)'),
239
+ assignee: z
240
+ .string()
241
+ .optional()
242
+ .describe('Assignee account ID or email. Leave empty for unassigned'),
243
+ priority: PrioritySchema.optional().describe('Issue priority. Default: uses project default'),
244
+ labels: z
245
+ .array(z.string())
246
+ .optional()
247
+ .describe('Labels to apply (e.g., ["bug", "urgent"])'),
248
+ parent: z
249
+ .string()
250
+ .optional()
251
+ .describe('Parent issue key for subtasks (e.g., "PROJ-100")'),
252
+ due_date: z.string().optional().describe('Due date in YYYY-MM-DD format'),
253
+ credentials: credentialsField,
254
+ }),
255
+ // -------------------------------------------------------------------------
256
+ // CORE OPERATION 4: update - Update existing issue
257
+ // -------------------------------------------------------------------------
258
+ z.object({
259
+ operation: z.literal('update').describe('Update an existing issue'),
260
+ key: z
261
+ .string()
262
+ .min(1, 'Issue key is required')
263
+ .describe('Issue key (e.g., "PROJ-123") or issue ID'),
264
+ summary: z.string().min(1).max(255).optional().describe('New issue title'),
265
+ description: z
266
+ .string()
267
+ .optional()
268
+ .describe('New description (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~'),
269
+ assignee: z
270
+ .string()
271
+ .nullable()
272
+ .optional()
273
+ .describe('New assignee (account ID/email) or null to unassign'),
274
+ priority: PrioritySchema.optional().describe('New priority'),
275
+ labels: LabelsModificationSchema.optional().describe('Label modifications'),
276
+ due_date: z
277
+ .string()
278
+ .nullable()
279
+ .optional()
280
+ .describe('New due date (YYYY-MM-DD) or null to clear'),
281
+ comment: z
282
+ .string()
283
+ .optional()
284
+ .describe('Add a comment with this update (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~'),
285
+ credentials: credentialsField,
286
+ }),
287
+ // -------------------------------------------------------------------------
288
+ // CORE OPERATION 5: transition - Change issue status
289
+ // -------------------------------------------------------------------------
290
+ z.object({
291
+ operation: z
292
+ .literal('transition')
293
+ .describe('Transition issue to a new status'),
294
+ key: z
295
+ .string()
296
+ .min(1, 'Issue key is required')
297
+ .describe('Issue key (e.g., "PROJ-123")'),
298
+ status: z
299
+ .string()
300
+ .optional()
301
+ .describe('Target status NAME (e.g., "In Progress", "Done"). Finds matching transition automatically'),
302
+ transition_id: z
303
+ .string()
304
+ .optional()
305
+ .describe('Specific transition ID (from list_transitions). Use when status name is ambiguous'),
306
+ comment: z
307
+ .string()
308
+ .optional()
309
+ .describe('Comment to add with the transition (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~'),
310
+ resolution: z
311
+ .string()
312
+ .optional()
313
+ .describe('Resolution when closing (e.g., "Fixed", "Won\'t Fix", "Duplicate")'),
314
+ credentials: credentialsField,
315
+ }),
316
+ // Note: Validation that either status or transition_id is required is done at runtime
317
+ // -------------------------------------------------------------------------
318
+ // SUPPORTING OPERATION: list_transitions
319
+ // -------------------------------------------------------------------------
320
+ z.object({
321
+ operation: z
322
+ .literal('list_transitions')
323
+ .describe('Get available transitions for an issue'),
324
+ key: z
325
+ .string()
326
+ .min(1, 'Issue key is required')
327
+ .describe('Issue key (e.g., "PROJ-123")'),
328
+ credentials: credentialsField,
329
+ }),
330
+ // -------------------------------------------------------------------------
331
+ // SUPPORTING OPERATION: list_projects
332
+ // -------------------------------------------------------------------------
333
+ z.object({
334
+ operation: z
335
+ .literal('list_projects')
336
+ .describe('List available Jira projects'),
337
+ limit: z
338
+ .number()
339
+ .min(1)
340
+ .max(100)
341
+ .optional()
342
+ .default(50)
343
+ .describe('Maximum number of projects to return'),
344
+ offset: z
345
+ .number()
346
+ .min(0)
347
+ .optional()
348
+ .default(0)
349
+ .describe('Starting index for pagination'),
350
+ credentials: credentialsField,
351
+ }),
352
+ // -------------------------------------------------------------------------
353
+ // SUPPORTING OPERATION: list_issue_types
354
+ // -------------------------------------------------------------------------
355
+ z.object({
356
+ operation: z
357
+ .literal('list_issue_types')
358
+ .describe('List issue types for a project'),
359
+ project: z
360
+ .string()
361
+ .min(1, 'Project key is required')
362
+ .describe('Project key (e.g., "PROJ")'),
363
+ credentials: credentialsField,
364
+ }),
365
+ // -------------------------------------------------------------------------
366
+ // SUPPORTING OPERATION: add_comment
367
+ // -------------------------------------------------------------------------
368
+ z.object({
369
+ operation: z.literal('add_comment').describe('Add a comment to an issue'),
370
+ key: z
371
+ .string()
372
+ .min(1, 'Issue key is required')
373
+ .describe('Issue key (e.g., "PROJ-123")'),
374
+ body: z
375
+ .string()
376
+ .min(1, 'Comment body is required')
377
+ .describe('Comment text (markdown or plain text - auto-converted to ADF). Supports: **bold**, *italic*, `code`, [links](url), # headings, lists, > blockquotes, ``` code blocks ```, ~~strikethrough~~'),
378
+ credentials: credentialsField,
379
+ }),
380
+ // -------------------------------------------------------------------------
381
+ // SUPPORTING OPERATION: get_comments
382
+ // -------------------------------------------------------------------------
383
+ z.object({
384
+ operation: z.literal('get_comments').describe('Get comments for an issue'),
385
+ key: z
386
+ .string()
387
+ .min(1, 'Issue key is required')
388
+ .describe('Issue key (e.g., "PROJ-123")'),
389
+ limit: z
390
+ .number()
391
+ .min(1)
392
+ .max(100)
393
+ .optional()
394
+ .default(50)
395
+ .describe('Maximum number of comments to return'),
396
+ offset: z
397
+ .number()
398
+ .min(0)
399
+ .optional()
400
+ .default(0)
401
+ .describe('Starting index for pagination'),
402
+ credentials: credentialsField,
403
+ }),
404
+ ]);
405
+ // ============================================================================
406
+ // RESULT SCHEMAS
407
+ // ============================================================================
408
+ export const JiraResultSchema = z.discriminatedUnion('operation', [
409
+ // search result
410
+ z.object({
411
+ operation: z.literal('search'),
412
+ success: z.boolean().describe('Whether the operation was successful'),
413
+ issues: z.array(JiraIssueSchema).optional().describe('Found issues'),
414
+ total: z.number().optional().describe('Total matching issues'),
415
+ offset: z.number().optional().describe('Current offset'),
416
+ limit: z.number().optional().describe('Requested limit'),
417
+ error: z.string().describe('Error message if operation failed'),
418
+ }),
419
+ // get result
420
+ z.object({
421
+ operation: z.literal('get'),
422
+ success: z.boolean().describe('Whether the operation was successful'),
423
+ issue: JiraIssueSchema.optional().describe('Issue details'),
424
+ error: z.string().describe('Error message if operation failed'),
425
+ }),
426
+ // create result
427
+ z.object({
428
+ operation: z.literal('create'),
429
+ success: z.boolean().describe('Whether the operation was successful'),
430
+ issue: z
431
+ .object({
432
+ id: z.string().describe('Created issue ID'),
433
+ key: z.string().describe('Created issue key'),
434
+ self: z.string().optional().describe('Issue API URL'),
435
+ })
436
+ .optional()
437
+ .describe('Created issue info'),
438
+ error: z.string().describe('Error message if operation failed'),
439
+ }),
440
+ // update result
441
+ z.object({
442
+ operation: z.literal('update'),
443
+ success: z.boolean().describe('Whether the operation was successful'),
444
+ key: z.string().optional().describe('Updated issue key'),
445
+ error: z.string().describe('Error message if operation failed'),
446
+ }),
447
+ // transition result
448
+ z.object({
449
+ operation: z.literal('transition'),
450
+ success: z.boolean().describe('Whether the operation was successful'),
451
+ key: z.string().optional().describe('Transitioned issue key'),
452
+ new_status: z.string().optional().describe('New status name'),
453
+ error: z.string().describe('Error message if operation failed'),
454
+ }),
455
+ // list_transitions result
456
+ z.object({
457
+ operation: z.literal('list_transitions'),
458
+ success: z.boolean().describe('Whether the operation was successful'),
459
+ transitions: z
460
+ .array(JiraTransitionSchema)
461
+ .optional()
462
+ .describe('Available transitions'),
463
+ error: z.string().describe('Error message if operation failed'),
464
+ }),
465
+ // list_projects result
466
+ z.object({
467
+ operation: z.literal('list_projects'),
468
+ success: z.boolean().describe('Whether the operation was successful'),
469
+ projects: z
470
+ .array(JiraProjectSchema)
471
+ .optional()
472
+ .describe('Available projects'),
473
+ total: z.number().optional().describe('Total projects'),
474
+ error: z.string().describe('Error message if operation failed'),
475
+ }),
476
+ // list_issue_types result
477
+ z.object({
478
+ operation: z.literal('list_issue_types'),
479
+ success: z.boolean().describe('Whether the operation was successful'),
480
+ issue_types: z
481
+ .array(JiraIssueTypeSchema)
482
+ .optional()
483
+ .describe('Available issue types'),
484
+ error: z.string().describe('Error message if operation failed'),
485
+ }),
486
+ // add_comment result
487
+ z.object({
488
+ operation: z.literal('add_comment'),
489
+ success: z.boolean().describe('Whether the operation was successful'),
490
+ comment: JiraCommentSchema.optional().describe('Created comment'),
491
+ error: z.string().describe('Error message if operation failed'),
492
+ }),
493
+ // get_comments result
494
+ z.object({
495
+ operation: z.literal('get_comments'),
496
+ success: z.boolean().describe('Whether the operation was successful'),
497
+ comments: z.array(JiraCommentSchema).optional().describe('Issue comments'),
498
+ total: z.number().optional().describe('Total comments'),
499
+ error: z.string().describe('Error message if operation failed'),
500
+ }),
501
+ ]);
502
+ //# sourceMappingURL=jira.schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jira.schema.js","sourceRoot":"","sources":["../../../../src/bubbles/service-bubble/jira/jira.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,kDAAkD;AAClD,MAAM,wBAAwB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC1E,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,iCAAiC,CAAC;IAC9C,GAAG,EAAE,CAAC;SACH,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,sDAAsD,CAAC;CACpE,CAAC;KACD,QAAQ,CACP,qFAAqF,CACtF,CAAC;AAEJ,sCAAsC;AACtC,MAAM,cAAc,GAAG,CAAC;KACrB,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;KACpD,QAAQ,CAAC,sBAAsB,CAAC,CAAC;AAEpC,mCAAmC;AACnC,MAAM,mBAAmB,GAAG,CAAC;KAC1B,IAAI,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;KAC9C,QAAQ,CAAC,4CAA4C,CAAC,CAAC;AAE1D,mDAAmD;AACnD,MAAM,gBAAgB,GAAG,CAAC;KACvB,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;KAChD,QAAQ,EAAE;KACV,QAAQ,CAAC,mCAAmC,CAAC,CAAC;AAEjD,+EAA+E;AAC/E,mCAAmC;AACnC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACjD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IAChE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IAClE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;CACtE,CAAC;KACD,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AAErC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC;KACjC,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;IACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;IAC3E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACrE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;CAC3E,CAAC;KACD,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAE/B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC;IACpC,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,CAAC,oDAAoD,CAAC;IACjE,cAAc,EAAE,CAAC;SACd,MAAM,CAAC;QACN,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QACxC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;KAC3C,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,iBAAiB,CAAC;CAC/B,CAAC;KACD,QAAQ,CAAC,mBAAmB,CAAC,CAAC;AAEjC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;CAC3C,CAAC;KACD,QAAQ,CAAC,eAAe,CAAC,CAAC;AAE7B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACrC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACtD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;CAC1C,CAAC;KACD,QAAQ,CAAC,cAAc,CAAC,CAAC;AAE5B,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IACrC,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE;SAC9B,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;IAC7D,IAAI,EAAE,CAAC;SACJ,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,yCAAyC,CAAC;IACtD,YAAY,EAAE,CAAC;SACZ,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+BAA+B,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;CACjE,CAAC;KACD,QAAQ,CAAC,cAAc,CAAC,CAAC;AAE5B,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;IACxC,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,EAAE,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;CAC1D,CAAC;KACD,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAE/B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;IACnC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACxD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;IACrD,MAAM,EAAE,CAAC;SACN,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC9D,WAAW,EAAE,CAAC;aACX,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,gCAAgC,CAAC;QAC7C,MAAM,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC9D,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE;aACpC,QAAQ,EAAE;aACV,QAAQ,CAAC,uCAAuC,CAAC;QACpD,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;aAChC,QAAQ,EAAE;aACV,QAAQ,CAAC,eAAe,CAAC;QAC5B,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;aAChC,QAAQ,EAAE;aACV,QAAQ,CAAC,+CAA+C,CAAC;QAC5D,SAAS,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;QAChE,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;QACzD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC/D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;QAC7D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAChE,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CAAC,uBAAuB,CAAC;QACpC,MAAM,EAAE,CAAC;aACN,MAAM,CAAC;YACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;YACd,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;SAChB,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,6BAA6B,CAAC;QAC1C,OAAO,EAAE,CAAC;aACP,MAAM,CAAC;YACN,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE;YAC/C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,gBAAgB,CAAC;KAC9B,CAAC;SACD,WAAW,EAAE;SACb,QAAQ,CAAC,cAAc,CAAC;IAC3B,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,oBAAoB,CAAC;SAC3B,QAAQ,EAAE;SACV,QAAQ,CAAC,uBAAuB,CAAC;IACpC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;CAC9D,CAAC;KACD,QAAQ,CAAC,YAAY,CAAC,CAAC;AAE1B,+EAA+E;AAC/E,0CAA0C;AAC1C,+EAA+E;AAE/E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE;IAChE,4EAA4E;IAC5E,kDAAkD;IAClD,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC;aACT,OAAO,CAAC,QAAQ,CAAC;aACjB,QAAQ,CAAC,mCAAmC,CAAC;QAEhD,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;aAC/B,QAAQ,CACP,8GAA8G,CAC/G;QAEH,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CAAC,4CAA4C,CAAC;QAEzD,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,EAAE;aACV,OAAO,CAAC,CAAC,CAAC;aACV,QAAQ,CAAC,+BAA+B,CAAC;QAE5C,MAAM,EAAE,CAAC;aACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CACP,mGAAmG,CACpG;QAEH,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,4CAA4C;IAC5C,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;QAExE,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;aAC/B,QAAQ,CAAC,0CAA0C,CAAC;QAEvD,MAAM,EAAE,CAAC;aACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CAAC,gDAAgD,CAAC;QAE7D,MAAM,EAAE,CAAC;aACN,KAAK,CAAC,mBAAmB,CAAC;aAC1B,QAAQ,EAAE;aACV,QAAQ,CAAC,4BAA4B,CAAC;QAEzC,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,8CAA8C;IAC9C,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAErE,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC;aACjC,QAAQ,CAAC,4BAA4B,CAAC;QAEzC,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;aAC7B,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,CAAC,qCAAqC,CAAC;QAElD,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,OAAO,CAAC,MAAM,CAAC;aACf,QAAQ,CACP,kEAAkE,CACnE;QAEH,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wDAAwD,CAAC;QAErE,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,0DAA0D,CAAC;QAEvE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC1C,+CAA+C,CAChD;QAED,MAAM,EAAE,CAAC;aACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,EAAE;aACV,QAAQ,CAAC,2CAA2C,CAAC;QAExD,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,kDAAkD,CAAC;QAE/D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QAEzE,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,mDAAmD;IACnD,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAEnE,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;aAC/B,QAAQ,CAAC,0CAA0C,CAAC;QAEvD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAE1E,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,gMAAgM,CACjM;QAEH,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CAAC,qDAAqD,CAAC;QAElE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QAE5D,MAAM,EAAE,wBAAwB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAE3E,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,EAAE;aACV,QAAQ,CAAC,4CAA4C,CAAC;QAEzD,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,+MAA+M,CAChN;QAEH,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,qDAAqD;IACrD,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC;aACT,OAAO,CAAC,YAAY,CAAC;aACrB,QAAQ,CAAC,kCAAkC,CAAC;QAE/C,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;aAC/B,QAAQ,CAAC,8BAA8B,CAAC;QAE3C,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,2FAA2F,CAC5F;QAEH,aAAa,EAAE,CAAC;aACb,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,mFAAmF,CACpF;QAEH,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,mNAAmN,CACpN;QAEH,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,oEAAoE,CACrE;QAEH,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IACF,sFAAsF;IAEtF,4EAA4E;IAC5E,yCAAyC;IACzC,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC;aACT,OAAO,CAAC,kBAAkB,CAAC;aAC3B,QAAQ,CAAC,wCAAwC,CAAC;QAErD,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;aAC/B,QAAQ,CAAC,8BAA8B,CAAC;QAE3C,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,sCAAsC;IACtC,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC;aACT,OAAO,CAAC,eAAe,CAAC;aACxB,QAAQ,CAAC,8BAA8B,CAAC;QAE3C,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CAAC,sCAAsC,CAAC;QAEnD,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,EAAE;aACV,OAAO,CAAC,CAAC,CAAC;aACV,QAAQ,CAAC,+BAA+B,CAAC;QAE5C,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,yCAAyC;IACzC,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC;aACT,OAAO,CAAC,kBAAkB,CAAC;aAC3B,QAAQ,CAAC,gCAAgC,CAAC;QAE7C,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,yBAAyB,CAAC;aACjC,QAAQ,CAAC,4BAA4B,CAAC;QAEzC,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,oCAAoC;IACpC,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QAEzE,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;aAC/B,QAAQ,CAAC,8BAA8B,CAAC;QAE3C,IAAI,EAAE,CAAC;aACJ,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,0BAA0B,CAAC;aAClC,QAAQ,CACP,6LAA6L,CAC9L;QAEH,WAAW,EAAE,gBAAgB;KAC9B,CAAC;IAEF,4EAA4E;IAC5E,qCAAqC;IACrC,4EAA4E;IAC5E,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QAE1E,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,EAAE,uBAAuB,CAAC;aAC/B,QAAQ,CAAC,8BAA8B,CAAC;QAE3C,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,OAAO,CAAC,EAAE,CAAC;aACX,QAAQ,CAAC,sCAAsC,CAAC;QAEnD,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,QAAQ,EAAE;aACV,OAAO,CAAC,CAAC,CAAC;aACV,QAAQ,CAAC,+BAA+B,CAAC;QAE5C,WAAW,EAAE,gBAAgB;KAC9B,CAAC;CACH,CAAC,CAAC;AAEH,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE;IAChE,gBAAgB;IAChB,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC9B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;QACpE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC9D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACxD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QACxD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,aAAa;IACb,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QAC3B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,KAAK,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;QAC3D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,gBAAgB;IAChB,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC9B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,KAAK,EAAE,CAAC;aACL,MAAM,CAAC;YACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC3C,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;YAC7C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;SACtD,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,oBAAoB,CAAC;QACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,gBAAgB;IAChB,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QAC9B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACxD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,oBAAoB;IACpB,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAClC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAC7D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC7D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,0BAA0B;IAC1B,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACxC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,WAAW,EAAE,CAAC;aACX,KAAK,CAAC,oBAAoB,CAAC;aAC3B,QAAQ,EAAE;aACV,QAAQ,CAAC,uBAAuB,CAAC;QACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,uBAAuB;IACvB,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC;QACrC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,QAAQ,EAAE,CAAC;aACR,KAAK,CAAC,iBAAiB,CAAC;aACxB,QAAQ,EAAE;aACV,QAAQ,CAAC,oBAAoB,CAAC;QACjC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACvD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,0BAA0B;IAC1B,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACxC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,WAAW,EAAE,CAAC;aACX,KAAK,CAAC,mBAAmB,CAAC;aAC1B,QAAQ,EAAE;aACV,QAAQ,CAAC,uBAAuB,CAAC;QACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,qBAAqB;IACrB,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QACnC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,OAAO,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QACjE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;IAEF,sBAAsB;IACtB,CAAC,CAAC,MAAM,CAAC;QACP,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;QACpC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;QACrE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAC1E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACvD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAChE,CAAC;CACH,CAAC,CAAC"}