@sudomock/mcp 2.3.0 → 2.4.0
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.
- package/README.md +21 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +546 -130
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -48,12 +48,12 @@ Get your API key at [sudomock.com/dashboard/api-keys](https://sudomock.com/dashb
|
|
|
48
48
|
| `render_mockup` | Render a mockup with artwork and/or editable text | 1 |
|
|
49
49
|
| `remove_background` | Get a transparent-PNG cutout through a 7-day signed URL | 25 |
|
|
50
50
|
| `create_2d_mockup` | Create a 2D mockup and detect printable surfaces automatically | 25 |
|
|
51
|
-
| `render_2d_mockup` | Render artwork
|
|
51
|
+
| `render_2d_mockup` | Render artwork into a saved print area or full product surface | 5 |
|
|
52
52
|
| `render_video` | Animate a mockup into an AI video clip (always async) | cost-based (free: 1/lifetime) |
|
|
53
53
|
| `upload_psd` | Upload a Photoshop PSD/PSB template (sync or async) | 0 |
|
|
54
|
-
| `list_2d_mockups` | List
|
|
55
|
-
| `get_2d_mockup` | Get one 2D mockup's
|
|
56
|
-
| `update_2d_print_areas` |
|
|
54
|
+
| `list_2d_mockups` | List saved 2D templates; use `customizable_only` for shopper-ready items | 0 |
|
|
55
|
+
| `get_2d_mockup` | Get one 2D mockup's saved areas and full product surfaces | 0 |
|
|
56
|
+
| `update_2d_print_areas` | Replace a 2D mockup's print-area geometry | 0 |
|
|
57
57
|
| `delete_2d_mockup` | Delete a 2D mockup template | 0 |
|
|
58
58
|
| `get_job` | Check the status of an async job by job_id | 0 |
|
|
59
59
|
| `wait_for_job` | Poll an async job until it succeeds or fails | 0 |
|
|
@@ -61,7 +61,6 @@ Get your API key at [sudomock.com/dashboard/api-keys](https://sudomock.com/dashb
|
|
|
61
61
|
| `get_account` | Check plan, credits, and usage | 0 |
|
|
62
62
|
| `update_mockup` | Rename a mockup template | 0 |
|
|
63
63
|
| `delete_mockup` | Delete a mockup template | 0 |
|
|
64
|
-
| `create_studio_session` | Create an embedded editor session | 0 |
|
|
65
64
|
| `create_webhook_endpoint` | Register a webhook for async job completion | 0 |
|
|
66
65
|
| `list_webhook_endpoints` | List your webhook endpoints | 0 |
|
|
67
66
|
| `update_webhook_endpoint` | Edit or enable/disable a webhook endpoint | 0 |
|
|
@@ -78,15 +77,19 @@ Get your API key at [sudomock.com/dashboard/api-keys](https://sudomock.com/dashb
|
|
|
78
77
|
immediately (HTTP 202) instead of a final result. (`create_2d_mockup` and
|
|
79
78
|
`render_2d_mockup` are synchronous by default and return the mockup / render
|
|
80
79
|
directly.) Poll it with `get_job`, or let `wait_for_job` block until the job
|
|
81
|
-
reaches a terminal status and hands back `result_url`, `mockup_uuid`,
|
|
80
|
+
reaches a terminal status and hands back `result_url`, `mockup_uuid`,
|
|
82
81
|
`credits_charged`, and `payg` (`{credits, unit_price, cost}` for pay-as-you-go
|
|
83
82
|
jobs, otherwise `null`).
|
|
84
83
|
|
|
84
|
+
For a 2D render, pass exactly one target from `get_2d_mockup`:
|
|
85
|
+
`print_area_uuid` for a saved print area or `surface_uuid` for a full-coverage
|
|
86
|
+
product surface.
|
|
87
|
+
|
|
85
88
|
### Background removal
|
|
86
89
|
|
|
87
|
-
`remove_background`
|
|
88
|
-
|
|
89
|
-
|
|
90
|
+
`remove_background` returns a transparent-PNG URL valid for 7 days. You can
|
|
91
|
+
pass that URL straight back as `artwork_url` during that window. To clean
|
|
92
|
+
artwork inline during a single render instead, pass
|
|
90
93
|
`remove_background: true` to `render_mockup` or `render_2d_mockup`. Either way it
|
|
91
94
|
costs 25 credits per artwork, refunded automatically if processing fails.
|
|
92
95
|
|
|
@@ -96,13 +99,19 @@ Register an endpoint with `create_webhook_endpoint` to be notified when async
|
|
|
96
99
|
jobs finish. Deliveries are signed with TWO headers: `X-SudoMock-Signature`
|
|
97
100
|
(a hex HMAC-SHA256 over `${timestamp}.${rawBody}` using the secret returned at
|
|
98
101
|
creation/rotation) and `X-SudoMock-Timestamp` (unix seconds). Verify in constant
|
|
99
|
-
time and reject if `|now - timestamp| > 300s`.
|
|
100
|
-
|
|
102
|
+
time and reject if `|now - timestamp| > 300s`.
|
|
103
|
+
|
|
104
|
+
Render, upload, and video job deliveries use
|
|
105
|
+
`{event, job_id, kind, status, result_url, error, created_at}`. The typed 2D
|
|
106
|
+
creation events add `version`, `mockup_id`, `name`, and either `print_areas`
|
|
107
|
+
(`ready`) or `reason` (`rejected`). The typed 2D render events carry
|
|
108
|
+
`mockup_id`, `result_url`, a public `{error_code, message}` failure when
|
|
109
|
+
applicable, and optional `export_format` / `duration_ms`. Event types:
|
|
101
110
|
`render.succeeded`, `render.failed`, `upload.succeeded`, `video.succeeded`,
|
|
102
111
|
`video.failed`, `2d_mockup.ready`, `2d_mockup.rejected`, `2d_mockup.failed`,
|
|
103
112
|
`2d_render.succeeded`, `2d_render.failed`, `webhook.test`.
|
|
104
113
|
|
|
105
|
-
## Example
|
|
114
|
+
## Example requests
|
|
106
115
|
|
|
107
116
|
- "List my mockup templates"
|
|
108
117
|
- "Render the t-shirt mockup with this design: https://example.com/logo.png"
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAqHpE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAgBzD;AAED,eAAO,MAAM,qBAAqB,aAAmC,CAAC;AAyatE;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAGnE;AAMD,QAAA,MAAM,MAAM,WAGV,CAAC;AA+oCH,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -19,7 +19,8 @@ import { z } from "zod";
|
|
|
19
19
|
const BASE_URL = "https://api.sudomock.com";
|
|
20
20
|
const DEFAULT_TIMEOUT = 30_000;
|
|
21
21
|
const RENDER_TIMEOUT = 120_000;
|
|
22
|
-
const USER_AGENT = "SudoMock-MCP/2.
|
|
22
|
+
const USER_AGENT = "SudoMock-MCP/2.4.0 (stdio)";
|
|
23
|
+
const ENGINE_DETAIL = /gemini|advanced.?model|\bmodel\b|prompt|mask(?:_|-|\b)|segment(?:ation)?(?:_|-|\b)|region.?index|depth|displacement|grid|warp|shading|provider|pipeline|engine|internal|private|storage|bucket|config.?version|setup.?revision|edit.?generation|\bphase\b|state.?machine|(?:internal|processing|workflow).?state/i;
|
|
23
24
|
function getApiKey() {
|
|
24
25
|
const key = process.env.SUDOMOCK_API_KEY;
|
|
25
26
|
if (!key) {
|
|
@@ -113,7 +114,8 @@ export function formatJobAccepted(result) {
|
|
|
113
114
|
status: r.status ?? "queued",
|
|
114
115
|
status_url: statusUrl,
|
|
115
116
|
next_step: "Poll get_job with this job_id, or call wait_for_job to block until it finishes.",
|
|
116
|
-
|
|
117
|
+
estimated_credits: r.estimated_credits ?? null,
|
|
118
|
+
outcome_tier: r.outcome_tier ?? null,
|
|
117
119
|
};
|
|
118
120
|
return JSON.stringify(summary, null, 2);
|
|
119
121
|
}
|
|
@@ -125,7 +127,384 @@ async function getJob(jobId, timeout = DEFAULT_TIMEOUT) {
|
|
|
125
127
|
path: `/api/v1/jobs/${jobId}`,
|
|
126
128
|
timeout,
|
|
127
129
|
}));
|
|
128
|
-
return result;
|
|
130
|
+
return publicJob(result);
|
|
131
|
+
}
|
|
132
|
+
function publicText(value, fallback = null) {
|
|
133
|
+
if (typeof value !== "string" || !value)
|
|
134
|
+
return fallback;
|
|
135
|
+
return ENGINE_DETAIL.test(value) ? fallback : value;
|
|
136
|
+
}
|
|
137
|
+
function publicCode(value) {
|
|
138
|
+
if (typeof value !== "string" || !value)
|
|
139
|
+
return null;
|
|
140
|
+
return ENGINE_DETAIL.test(value) ? "PROCESSING_FAILED" : value;
|
|
141
|
+
}
|
|
142
|
+
function publicWarnings(value, fallback) {
|
|
143
|
+
return Array.isArray(value)
|
|
144
|
+
? value.map((warning) => {
|
|
145
|
+
const advisory = (warning ?? {});
|
|
146
|
+
return {
|
|
147
|
+
code: publicCode(advisory.code) ?? "RENDER_WARNING",
|
|
148
|
+
message: publicText(advisory.message, fallback),
|
|
149
|
+
};
|
|
150
|
+
})
|
|
151
|
+
: [];
|
|
152
|
+
}
|
|
153
|
+
function publicJob(result) {
|
|
154
|
+
const job = (result ?? {});
|
|
155
|
+
const nestedError = job.error && typeof job.error === "object"
|
|
156
|
+
? job.error
|
|
157
|
+
: null;
|
|
158
|
+
const failed = job.status === "failed";
|
|
159
|
+
const payg = job.payg && typeof job.payg === "object"
|
|
160
|
+
? {
|
|
161
|
+
credits: job.payg.credits ?? null,
|
|
162
|
+
unit_price: job.payg.unit_price ?? null,
|
|
163
|
+
cost: job.payg.cost ?? null,
|
|
164
|
+
}
|
|
165
|
+
: job.payg === null
|
|
166
|
+
? null
|
|
167
|
+
: undefined;
|
|
168
|
+
return {
|
|
169
|
+
job_id: job.job_id ?? null,
|
|
170
|
+
kind: job.kind ?? null,
|
|
171
|
+
status: job.status ?? null,
|
|
172
|
+
status_url: job.status_url ?? null,
|
|
173
|
+
result_url: job.result_url ?? null,
|
|
174
|
+
mockup_uuid: job.mockup_uuid ?? null,
|
|
175
|
+
error: failed
|
|
176
|
+
? publicText(nestedError?.message ?? job.error ?? job.message, "Processing failed. Retry or contact support with the job ID.")
|
|
177
|
+
: null,
|
|
178
|
+
error_code: publicCode(nestedError?.error_code ?? job.error_code),
|
|
179
|
+
credits_charged: job.credits_charged ?? null,
|
|
180
|
+
payg,
|
|
181
|
+
created_at: job.created_at ?? null,
|
|
182
|
+
updated_at: job.updated_at ?? null,
|
|
183
|
+
estimated_credits: job.estimated_credits ?? null,
|
|
184
|
+
outcome_tier: job.outcome_tier ?? null,
|
|
185
|
+
duration_seconds: job.duration_seconds ?? null,
|
|
186
|
+
audio: job.audio ?? null,
|
|
187
|
+
mockup_name: job.mockup_name ?? null,
|
|
188
|
+
poster_url: job.poster_url ?? null,
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
function publicWebhookDelivery(result) {
|
|
192
|
+
const delivery = (result ?? {});
|
|
193
|
+
return {
|
|
194
|
+
id: delivery.id ?? null,
|
|
195
|
+
endpoint_id: delivery.endpoint_id ?? null,
|
|
196
|
+
job_id: delivery.job_id ?? null,
|
|
197
|
+
event_type: delivery.event_type ?? null,
|
|
198
|
+
status: delivery.status ?? null,
|
|
199
|
+
http_status: delivery.http_status ?? null,
|
|
200
|
+
attempt: delivery.attempt ?? 0,
|
|
201
|
+
last_error: publicText(delivery.last_error, delivery.last_error
|
|
202
|
+
? "Delivery failed. Retry it or contact support with the delivery ID."
|
|
203
|
+
: null),
|
|
204
|
+
created_at: delivery.created_at ?? null,
|
|
205
|
+
updated_at: delivery.updated_at ?? null,
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
function publicRenderResult(result) {
|
|
209
|
+
const envelope = (result ?? {});
|
|
210
|
+
const data = envelope.data && typeof envelope.data === "object"
|
|
211
|
+
? envelope.data
|
|
212
|
+
: envelope;
|
|
213
|
+
const warnings = publicWarnings(envelope.warnings, "The render completed with an advisory.");
|
|
214
|
+
return {
|
|
215
|
+
success: envelope.success !== false,
|
|
216
|
+
data: {
|
|
217
|
+
print_files: Array.isArray(data.print_files)
|
|
218
|
+
? data.print_files.map((file) => {
|
|
219
|
+
const value = file;
|
|
220
|
+
return {
|
|
221
|
+
export_path: value.export_path ?? null,
|
|
222
|
+
smart_object_uuid: value.smart_object_uuid ?? null,
|
|
223
|
+
render_uuid: value.render_uuid ?? null,
|
|
224
|
+
};
|
|
225
|
+
})
|
|
226
|
+
: [],
|
|
227
|
+
render_uuid: data.render_uuid ?? null,
|
|
228
|
+
},
|
|
229
|
+
warnings,
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
function asRecord(value) {
|
|
233
|
+
return value && typeof value === "object" && !Array.isArray(value)
|
|
234
|
+
? value
|
|
235
|
+
: {};
|
|
236
|
+
}
|
|
237
|
+
function publicSize(value) {
|
|
238
|
+
const size = asRecord(value);
|
|
239
|
+
return { width: size.width ?? null, height: size.height ?? null };
|
|
240
|
+
}
|
|
241
|
+
function publicPosition(value) {
|
|
242
|
+
const position = asRecord(value);
|
|
243
|
+
return {
|
|
244
|
+
x: position.x ?? null,
|
|
245
|
+
y: position.y ?? null,
|
|
246
|
+
width: position.width ?? null,
|
|
247
|
+
height: position.height ?? null,
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
function publicMockupData(value) {
|
|
251
|
+
const mockup = asRecord(value);
|
|
252
|
+
return {
|
|
253
|
+
uuid: mockup.uuid ?? null,
|
|
254
|
+
name: mockup.name ?? null,
|
|
255
|
+
thumbnail: mockup.thumbnail ?? null,
|
|
256
|
+
width: mockup.width ?? null,
|
|
257
|
+
height: mockup.height ?? null,
|
|
258
|
+
smart_objects: Array.isArray(mockup.smart_objects)
|
|
259
|
+
? mockup.smart_objects.map((item) => {
|
|
260
|
+
const smartObject = asRecord(item);
|
|
261
|
+
return {
|
|
262
|
+
uuid: smartObject.uuid ?? null,
|
|
263
|
+
name: smartObject.name ?? null,
|
|
264
|
+
size: publicSize(smartObject.size),
|
|
265
|
+
position: publicPosition(smartObject.position),
|
|
266
|
+
print_area_presets: Array.isArray(smartObject.print_area_presets)
|
|
267
|
+
? smartObject.print_area_presets.map((rawPreset) => {
|
|
268
|
+
const preset = asRecord(rawPreset);
|
|
269
|
+
return {
|
|
270
|
+
uuid: preset.uuid ?? null,
|
|
271
|
+
name: preset.name ?? null,
|
|
272
|
+
thumbnails: Array.isArray(preset.thumbnails)
|
|
273
|
+
? preset.thumbnails.map((rawThumbnail) => {
|
|
274
|
+
const thumbnail = asRecord(rawThumbnail);
|
|
275
|
+
return {
|
|
276
|
+
width: thumbnail.width ?? null,
|
|
277
|
+
url: thumbnail.url ?? null,
|
|
278
|
+
};
|
|
279
|
+
})
|
|
280
|
+
: [],
|
|
281
|
+
size: publicSize(preset.size),
|
|
282
|
+
position: publicPosition(preset.position),
|
|
283
|
+
};
|
|
284
|
+
})
|
|
285
|
+
: [],
|
|
286
|
+
layer_name: smartObject.layer_name ?? null,
|
|
287
|
+
quad: smartObject.quad ?? null,
|
|
288
|
+
blend_mode: smartObject.blend_mode ?? null,
|
|
289
|
+
instance_count: smartObject.instance_count ?? null,
|
|
290
|
+
};
|
|
291
|
+
})
|
|
292
|
+
: [],
|
|
293
|
+
text_layers: Array.isArray(mockup.text_layers)
|
|
294
|
+
? mockup.text_layers.map((item) => {
|
|
295
|
+
const layer = asRecord(item);
|
|
296
|
+
return {
|
|
297
|
+
uuid: layer.uuid ?? null,
|
|
298
|
+
name: layer.name ?? null,
|
|
299
|
+
text_content: layer.text_content ?? null,
|
|
300
|
+
font_postscript_name: layer.font_postscript_name ?? null,
|
|
301
|
+
font_size: layer.font_size ?? null,
|
|
302
|
+
color: layer.color ?? null,
|
|
303
|
+
font_available: layer.font_available ?? null,
|
|
304
|
+
is_editable: layer.is_editable === true,
|
|
305
|
+
segment_count: layer.segment_count ?? 1,
|
|
306
|
+
segments: Array.isArray(layer.segments)
|
|
307
|
+
? layer.segments.map((rawSegment) => {
|
|
308
|
+
const segment = asRecord(rawSegment);
|
|
309
|
+
return {
|
|
310
|
+
index: segment.index ?? null,
|
|
311
|
+
text: segment.text ?? null,
|
|
312
|
+
font_postscript_name: segment.font_postscript_name ?? null,
|
|
313
|
+
font_size: segment.font_size ?? null,
|
|
314
|
+
color: segment.color ?? null,
|
|
315
|
+
};
|
|
316
|
+
})
|
|
317
|
+
: layer.segments ?? null,
|
|
318
|
+
visible: layer.visible ?? null,
|
|
319
|
+
has_stroke_effect: layer.has_stroke_effect === true,
|
|
320
|
+
stroke_count: layer.stroke_count ?? 0,
|
|
321
|
+
has_color_overlay: layer.has_color_overlay === true,
|
|
322
|
+
has_clipped_artwork: layer.has_clipped_artwork ?? null,
|
|
323
|
+
suggested_edit_together: layer.suggested_edit_together ?? null,
|
|
324
|
+
};
|
|
325
|
+
})
|
|
326
|
+
: [],
|
|
327
|
+
thumbnails: Array.isArray(mockup.thumbnails)
|
|
328
|
+
? mockup.thumbnails.map((rawThumbnail) => {
|
|
329
|
+
const thumbnail = asRecord(rawThumbnail);
|
|
330
|
+
return {
|
|
331
|
+
width: thumbnail.width ?? null,
|
|
332
|
+
url: thumbnail.url ?? null,
|
|
333
|
+
};
|
|
334
|
+
})
|
|
335
|
+
: [],
|
|
336
|
+
...(Array.isArray(mockup.warnings)
|
|
337
|
+
? {
|
|
338
|
+
warnings: publicWarnings(mockup.warnings, "The mockup completed with an advisory."),
|
|
339
|
+
}
|
|
340
|
+
: {}),
|
|
341
|
+
};
|
|
342
|
+
}
|
|
343
|
+
function publicMockupResult(result) {
|
|
344
|
+
const envelope = asRecord(result);
|
|
345
|
+
return {
|
|
346
|
+
success: envelope.success !== false,
|
|
347
|
+
data: publicMockupData(envelope.data ?? result),
|
|
348
|
+
...(Array.isArray(envelope.warnings)
|
|
349
|
+
? {
|
|
350
|
+
warnings: publicWarnings(envelope.warnings, "The mockup completed with an advisory."),
|
|
351
|
+
}
|
|
352
|
+
: {}),
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
function publicMockupList(result) {
|
|
356
|
+
const envelope = asRecord(result);
|
|
357
|
+
const rawData = envelope.data;
|
|
358
|
+
const data = asRecord(rawData);
|
|
359
|
+
const mockups = Array.isArray(data.mockups)
|
|
360
|
+
? data.mockups
|
|
361
|
+
: Array.isArray(rawData)
|
|
362
|
+
? rawData
|
|
363
|
+
: [];
|
|
364
|
+
return {
|
|
365
|
+
success: envelope.success !== false,
|
|
366
|
+
data: {
|
|
367
|
+
mockups: mockups.map(publicMockupData),
|
|
368
|
+
total: data.total ?? envelope.total ?? mockups.length,
|
|
369
|
+
limit: data.limit ?? envelope.limit ?? mockups.length,
|
|
370
|
+
offset: data.offset ?? envelope.offset ?? 0,
|
|
371
|
+
},
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
function publicBackgroundRemoval(result) {
|
|
375
|
+
const envelope = asRecord(result);
|
|
376
|
+
const data = asRecord(envelope.data ?? result);
|
|
377
|
+
return {
|
|
378
|
+
success: envelope.success !== false,
|
|
379
|
+
data: {
|
|
380
|
+
url: data.url ?? null,
|
|
381
|
+
width: data.width ?? null,
|
|
382
|
+
height: data.height ?? null,
|
|
383
|
+
credits_charged: data.credits_charged ?? null,
|
|
384
|
+
},
|
|
385
|
+
};
|
|
386
|
+
}
|
|
387
|
+
function publicPrintArea(value) {
|
|
388
|
+
const area = asRecord(value);
|
|
389
|
+
return {
|
|
390
|
+
print_area_id: area.print_area_id ?? null,
|
|
391
|
+
points: Array.isArray(area.points) ? area.points : [],
|
|
392
|
+
...(area.sort_order !== undefined ? { sort_order: area.sort_order } : {}),
|
|
393
|
+
...(area.name !== undefined ? { name: area.name } : {}),
|
|
394
|
+
};
|
|
395
|
+
}
|
|
396
|
+
function publicTwoDMockup(value) {
|
|
397
|
+
const mockup = asRecord(value);
|
|
398
|
+
const areas = Array.isArray(mockup.print_areas)
|
|
399
|
+
? mockup.print_areas
|
|
400
|
+
: Array.isArray(mockup.quads)
|
|
401
|
+
? mockup.quads
|
|
402
|
+
: [];
|
|
403
|
+
return {
|
|
404
|
+
mockup_id: mockup.mockup_id ?? null,
|
|
405
|
+
name: mockup.name ?? null,
|
|
406
|
+
status: mockup.status ?? null,
|
|
407
|
+
customizable: mockup.customizable === true,
|
|
408
|
+
thumbnail_url: mockup.thumbnail_url ?? null,
|
|
409
|
+
watermarked_source_url: mockup.watermarked_source_url ?? null,
|
|
410
|
+
source_width: mockup.source_width ?? null,
|
|
411
|
+
source_height: mockup.source_height ?? null,
|
|
412
|
+
print_areas: areas.map(publicPrintArea),
|
|
413
|
+
surfaces: Array.isArray(mockup.surfaces)
|
|
414
|
+
? mockup.surfaces.map((rawSurface) => {
|
|
415
|
+
const surface = asRecord(rawSurface);
|
|
416
|
+
return {
|
|
417
|
+
surface_uuid: surface.surface_uuid ?? null,
|
|
418
|
+
coverage: surface.coverage ?? null,
|
|
419
|
+
};
|
|
420
|
+
})
|
|
421
|
+
: [],
|
|
422
|
+
version: mockup.version ?? null,
|
|
423
|
+
created_at: mockup.created_at ?? null,
|
|
424
|
+
updated_at: mockup.updated_at ?? null,
|
|
425
|
+
};
|
|
426
|
+
}
|
|
427
|
+
function publicTwoDList(result) {
|
|
428
|
+
const envelope = asRecord(result);
|
|
429
|
+
const rows = Array.isArray(envelope.data) ? envelope.data : [];
|
|
430
|
+
return {
|
|
431
|
+
success: envelope.success !== false,
|
|
432
|
+
data: rows.map(publicTwoDMockup),
|
|
433
|
+
total: envelope.total ?? rows.length,
|
|
434
|
+
limit: envelope.limit ?? rows.length,
|
|
435
|
+
offset: envelope.offset ?? 0,
|
|
436
|
+
};
|
|
437
|
+
}
|
|
438
|
+
function publicTwoDResult(result) {
|
|
439
|
+
const envelope = asRecord(result);
|
|
440
|
+
return {
|
|
441
|
+
success: envelope.success !== false,
|
|
442
|
+
data: publicTwoDMockup(envelope.data ?? result),
|
|
443
|
+
};
|
|
444
|
+
}
|
|
445
|
+
function publicAccount(result) {
|
|
446
|
+
const envelope = asRecord(result);
|
|
447
|
+
const data = asRecord(envelope.data ?? result);
|
|
448
|
+
const account = asRecord(data.account);
|
|
449
|
+
const subscription = asRecord(data.subscription);
|
|
450
|
+
const usage = asRecord(data.usage);
|
|
451
|
+
const apiKey = asRecord(data.api_key);
|
|
452
|
+
return {
|
|
453
|
+
success: envelope.success !== false,
|
|
454
|
+
data: {
|
|
455
|
+
account: {
|
|
456
|
+
uuid: account.uuid ?? null,
|
|
457
|
+
email: account.email ?? null,
|
|
458
|
+
name: account.name ?? null,
|
|
459
|
+
created_at: account.created_at ?? null,
|
|
460
|
+
},
|
|
461
|
+
subscription: {
|
|
462
|
+
plan: subscription.plan ?? null,
|
|
463
|
+
tier: subscription.tier ?? null,
|
|
464
|
+
status: subscription.status ?? null,
|
|
465
|
+
current_period_end: subscription.current_period_end ?? null,
|
|
466
|
+
cancel_at_period_end: subscription.cancel_at_period_end === true,
|
|
467
|
+
billing_channel: subscription.billing_channel ?? null,
|
|
468
|
+
},
|
|
469
|
+
usage: {
|
|
470
|
+
credits_used_this_month: usage.credits_used_this_month ?? null,
|
|
471
|
+
credits_limit: usage.credits_limit ?? null,
|
|
472
|
+
credits_remaining: usage.credits_remaining ?? null,
|
|
473
|
+
billing_period_start: usage.billing_period_start ?? null,
|
|
474
|
+
billing_period_end: usage.billing_period_end ?? null,
|
|
475
|
+
},
|
|
476
|
+
api_key: {
|
|
477
|
+
name: apiKey.name ?? null,
|
|
478
|
+
created_at: apiKey.created_at ?? null,
|
|
479
|
+
last_used_at: apiKey.last_used_at ?? null,
|
|
480
|
+
total_requests: apiKey.total_requests ?? null,
|
|
481
|
+
},
|
|
482
|
+
},
|
|
483
|
+
};
|
|
484
|
+
}
|
|
485
|
+
function publicWebhookEndpoint(result) {
|
|
486
|
+
const envelope = asRecord(result);
|
|
487
|
+
const endpoint = asRecord(envelope.data ?? result);
|
|
488
|
+
return {
|
|
489
|
+
id: endpoint.id ?? null,
|
|
490
|
+
url: endpoint.url ?? null,
|
|
491
|
+
secret: endpoint.secret ?? null,
|
|
492
|
+
description: endpoint.description ?? null,
|
|
493
|
+
event_types: Array.isArray(endpoint.event_types) ? endpoint.event_types : [],
|
|
494
|
+
enabled: endpoint.enabled === true,
|
|
495
|
+
created_at: endpoint.created_at ?? null,
|
|
496
|
+
updated_at: endpoint.updated_at ?? null,
|
|
497
|
+
};
|
|
498
|
+
}
|
|
499
|
+
function publicWebhookAction(result) {
|
|
500
|
+
const envelope = asRecord(result);
|
|
501
|
+
const data = asRecord(envelope.data ?? result);
|
|
502
|
+
return {
|
|
503
|
+
success: envelope.success !== false,
|
|
504
|
+
job_id: data.job_id ?? null,
|
|
505
|
+
delivery_id: data.delivery_id ?? null,
|
|
506
|
+
status: data.status ?? null,
|
|
507
|
+
};
|
|
129
508
|
}
|
|
130
509
|
/**
|
|
131
510
|
* A job is done when its status is terminal. The poll response (GET
|
|
@@ -140,7 +519,7 @@ export function isTerminalJob(job) {
|
|
|
140
519
|
// ---------------------------------------------------------------------------
|
|
141
520
|
const server = new McpServer({
|
|
142
521
|
name: "SudoMock",
|
|
143
|
-
version: "2.
|
|
522
|
+
version: "2.4.0",
|
|
144
523
|
});
|
|
145
524
|
// ---------------------------------------------------------------------------
|
|
146
525
|
// Tool 1: list_mockups
|
|
@@ -159,7 +538,12 @@ server.tool("list_mockups", "List your uploaded mockup templates with UUIDs, nam
|
|
|
159
538
|
path: "/api/v1/mockups",
|
|
160
539
|
params: { limit, offset, name, created_after, created_before, sort: sort_by, order: sort_order },
|
|
161
540
|
});
|
|
162
|
-
return {
|
|
541
|
+
return {
|
|
542
|
+
content: [{
|
|
543
|
+
type: "text",
|
|
544
|
+
text: JSON.stringify(publicMockupList(result), null, 2),
|
|
545
|
+
}],
|
|
546
|
+
};
|
|
163
547
|
});
|
|
164
548
|
// ---------------------------------------------------------------------------
|
|
165
549
|
// Tool 2: get_mockup_details
|
|
@@ -171,7 +555,12 @@ server.tool("get_mockup_details", "Get full details of a mockup: smart object UU
|
|
|
171
555
|
method: "GET",
|
|
172
556
|
path: `/api/v1/mockups/${mockup_uuid}`,
|
|
173
557
|
});
|
|
174
|
-
return {
|
|
558
|
+
return {
|
|
559
|
+
content: [{
|
|
560
|
+
type: "text",
|
|
561
|
+
text: JSON.stringify(publicMockupResult(result), null, 2),
|
|
562
|
+
}],
|
|
563
|
+
};
|
|
175
564
|
});
|
|
176
565
|
// ---------------------------------------------------------------------------
|
|
177
566
|
// Tool 3: update_mockup
|
|
@@ -185,7 +574,12 @@ server.tool("update_mockup", "Rename a mockup template.", {
|
|
|
185
574
|
path: `/api/v1/mockups/${mockup_uuid}`,
|
|
186
575
|
body: { name },
|
|
187
576
|
});
|
|
188
|
-
return {
|
|
577
|
+
return {
|
|
578
|
+
content: [{
|
|
579
|
+
type: "text",
|
|
580
|
+
text: JSON.stringify(publicMockupResult(result), null, 2),
|
|
581
|
+
}],
|
|
582
|
+
};
|
|
189
583
|
});
|
|
190
584
|
// ---------------------------------------------------------------------------
|
|
191
585
|
// Tool 4: delete_mockup
|
|
@@ -427,12 +821,19 @@ server.tool("render_mockup", "Render a PSD mockup with artwork, editable text, o
|
|
|
427
821
|
if (args.is_async) {
|
|
428
822
|
return { content: [{ type: "text", text: formatJobAccepted(result) }] };
|
|
429
823
|
}
|
|
430
|
-
return {
|
|
824
|
+
return {
|
|
825
|
+
content: [
|
|
826
|
+
{
|
|
827
|
+
type: "text",
|
|
828
|
+
text: JSON.stringify(publicRenderResult(result), null, 2),
|
|
829
|
+
},
|
|
830
|
+
],
|
|
831
|
+
};
|
|
431
832
|
});
|
|
432
833
|
// ---------------------------------------------------------------------------
|
|
433
834
|
// Tool: remove_background
|
|
434
835
|
// ---------------------------------------------------------------------------
|
|
435
|
-
server.tool("remove_background", "Remove the background from any image and
|
|
836
|
+
server.tool("remove_background", "Remove the background from any image and return a transparent-PNG cutout with clean, production-ready edges. The returned URL is valid for 7 days and can be used as artwork_url during that window. Costs 25 credits per image; credits are refunded automatically if processing fails.", {
|
|
436
837
|
image_url: z.string().url().describe("Public URL of the image (PNG/JPG/WebP) to process"),
|
|
437
838
|
}, async ({ image_url }) => {
|
|
438
839
|
const result = await apiRequest({
|
|
@@ -441,59 +842,35 @@ server.tool("remove_background", "Remove the background from any image and store
|
|
|
441
842
|
body: { url: image_url },
|
|
442
843
|
timeout: RENDER_TIMEOUT,
|
|
443
844
|
});
|
|
444
|
-
return {
|
|
845
|
+
return {
|
|
846
|
+
content: [{
|
|
847
|
+
type: "text",
|
|
848
|
+
text: JSON.stringify(publicBackgroundRemoval(result), null, 2),
|
|
849
|
+
}],
|
|
850
|
+
};
|
|
445
851
|
});
|
|
446
852
|
// ---------------------------------------------------------------------------
|
|
447
853
|
// Tool: create_2d_mockup
|
|
448
854
|
// ---------------------------------------------------------------------------
|
|
449
|
-
server.tool("create_2d_mockup", "Create a reusable 2D mockup from
|
|
450
|
-
source_url: z.string().
|
|
451
|
-
source_base64: z.string().optional().describe("Raw base64-encoded JPEG, PNG, or WebP bytes. Provide exactly one of source_url or source_base64."),
|
|
452
|
-
source_content_type: z.enum(["image/png", "image/jpeg", "image/webp"]).optional().describe("MIME type for source_base64"),
|
|
855
|
+
server.tool("create_2d_mockup", "Create a reusable 2D mockup from a public image URL. Returns the mockup ID and public render targets synchronously. Costs 25 credits. If the image is unsuitable, the 25 credits are refunded automatically. Set is_async=true to queue instead and receive a job_id to poll with get_job or wait_for_job. Use the dashboard for visual fine-tuning.", {
|
|
856
|
+
source_url: z.string().describe("Public HTTPS URL of the product image"),
|
|
453
857
|
name: z.string().optional().describe("Optional display name for the 2D mockup"),
|
|
454
|
-
|
|
455
|
-
.array(z.object({
|
|
456
|
-
points: z
|
|
457
|
-
.array(z.tuple([z.number(), z.number()]))
|
|
458
|
-
.length(4)
|
|
459
|
-
.describe("Four [x, y] points in top-left, top-right, bottom-right, bottom-left order"),
|
|
460
|
-
name: z.string().optional().describe("Optional display name for this print area"),
|
|
461
|
-
}))
|
|
462
|
-
.min(1)
|
|
463
|
-
.max(8)
|
|
464
|
-
.optional()
|
|
465
|
-
.describe("Optional seed print areas (1-8 four-point quads). Omit to let printable surfaces be detected automatically."),
|
|
858
|
+
idempotency_key: z.string().min(1).max(255).optional().describe("Optional retry-stable key for this create request"),
|
|
466
859
|
is_async: z
|
|
467
860
|
.boolean()
|
|
468
861
|
.default(false)
|
|
469
862
|
.describe("Queue creation instead of waiting. When true the API returns 202 with a job_id immediately -- poll with get_job, or call wait_for_job to block until it finishes and returns the mockup. Default false returns the mockup synchronously (201)."),
|
|
470
|
-
}, async ({ source_url,
|
|
471
|
-
const
|
|
472
|
-
const hasBase64 = Boolean(source_base64?.trim());
|
|
473
|
-
if (hasUrl === hasBase64) {
|
|
474
|
-
throw new Error("Provide exactly one of source_url or source_base64.");
|
|
475
|
-
}
|
|
476
|
-
if (source_content_type && !hasBase64) {
|
|
477
|
-
throw new Error("source_content_type requires source_base64.");
|
|
478
|
-
}
|
|
479
|
-
const body = hasUrl
|
|
480
|
-
? { source_url: source_url.trim() }
|
|
481
|
-
: {
|
|
482
|
-
source_base64: source_content_type
|
|
483
|
-
? `data:${source_content_type};base64,${source_base64.trim()}`
|
|
484
|
-
: source_base64.trim(),
|
|
485
|
-
};
|
|
863
|
+
}, async ({ source_url, name, idempotency_key, is_async }) => {
|
|
864
|
+
const body = { source_url: source_url.trim() };
|
|
486
865
|
if (name)
|
|
487
866
|
body.name = name;
|
|
488
|
-
if (print_areas)
|
|
489
|
-
body.print_areas = print_areas;
|
|
490
867
|
if (is_async)
|
|
491
868
|
body.is_async = true;
|
|
492
869
|
const result = (await apiRequest({
|
|
493
870
|
method: "POST",
|
|
494
871
|
path: "/api/v1/sudoai/2d-mockups",
|
|
495
872
|
body,
|
|
496
|
-
headers: { "Idempotency-Key": randomUUID() },
|
|
873
|
+
headers: { "Idempotency-Key": idempotency_key ?? randomUUID() },
|
|
497
874
|
}));
|
|
498
875
|
// is_async=true -> 202 + job_id; hand back the poll contract.
|
|
499
876
|
if (is_async) {
|
|
@@ -507,30 +884,39 @@ server.tool("create_2d_mockup", "Create a reusable 2D mockup from an image URL o
|
|
|
507
884
|
mockup_id: details.mockup_id ?? null,
|
|
508
885
|
name: details.name ?? null,
|
|
509
886
|
status: details.status ?? "ready",
|
|
887
|
+
customizable: details.customizable === true,
|
|
510
888
|
source_width: details.source_width ?? null,
|
|
511
889
|
source_height: details.source_height ?? null,
|
|
512
|
-
print_areas: Array.isArray(details.quads)
|
|
890
|
+
print_areas: (Array.isArray(details.quads)
|
|
513
891
|
? details.quads
|
|
514
892
|
: Array.isArray(details.print_areas)
|
|
515
893
|
? details.print_areas
|
|
516
|
-
: [],
|
|
894
|
+
: []).map(publicPrintArea),
|
|
895
|
+
surfaces: Array.isArray(details.surfaces)
|
|
896
|
+
? details.surfaces.map((surface) => {
|
|
897
|
+
const value = surface;
|
|
898
|
+
return {
|
|
899
|
+
surface_uuid: value.surface_uuid,
|
|
900
|
+
coverage: value.coverage,
|
|
901
|
+
};
|
|
902
|
+
})
|
|
903
|
+
: [],
|
|
517
904
|
};
|
|
518
905
|
return { content: [{ type: "text", text: JSON.stringify(summary, null, 2) }] };
|
|
519
906
|
});
|
|
520
907
|
// ---------------------------------------------------------------------------
|
|
521
908
|
// Tool 6: render_2d_mockup
|
|
522
909
|
// ---------------------------------------------------------------------------
|
|
523
|
-
server.tool("render_2d_mockup", "Render artwork onto a saved 2D mockup template. Returns print_files (each with an export_path) and a render_uuid. Costs 5 credits.
|
|
910
|
+
server.tool("render_2d_mockup", "Render artwork onto a saved 2D mockup template. Returns print_files (each with an export_path) and a render_uuid. Costs 5 credits. Use get_2d_mockup, then pass exactly one print_area_uuid or surface_uuid. Use the dashboard for visual fine-tuning.", {
|
|
524
911
|
mockup_uuid: z.string().describe("UUID of the 2D mockup template (from list_2d_mockups, returned as mockup_id)."),
|
|
525
|
-
print_area_uuid: z.string().describe("UUID of
|
|
912
|
+
print_area_uuid: z.string().optional().describe("UUID of a saved print area from get_2d_mockup. Omit when surface_uuid is used."),
|
|
913
|
+
surface_uuid: z.string().optional().describe("UUID of a full-coverage product surface from get_2d_mockup. Omit when print_area_uuid is used."),
|
|
526
914
|
artwork_url: z.string().describe("Public URL of the artwork image (PNG/JPG/WebP) to place on the mockup"),
|
|
527
915
|
remove_background: z.boolean().default(false).describe("Remove the artwork's background before placing it. Adds 25 credits per artwork."),
|
|
528
|
-
blend_mode: z.string().default("multiply").describe("Blend mode for artwork over the product surface: 'multiply' (fabric texture, default) or 'normal' (no texture). Free-form string -- other Photoshop blend modes the API supports are accepted too."),
|
|
529
916
|
opacity: z.number().min(0).max(100).default(100).describe("Artwork opacity percentage (0-100)"),
|
|
530
917
|
brightness: z.number().min(-150).max(150).default(0).describe("Brightness adjustment (-150 to 150)"),
|
|
531
918
|
contrast: z.number().min(-100).max(100).default(0).describe("Contrast adjustment (-100 to 100)"),
|
|
532
919
|
saturation: z.number().min(-100).max(100).default(0).describe("Saturation adjustment (-100 to 100)"),
|
|
533
|
-
warp_strength: z.number().min(0).max(2).default(1.5).describe("Warp strength for fabric curvature (0.0-2.0, 0=disabled, default 1.5). Higher = artwork conforms more closely to the surface."),
|
|
534
920
|
rotation: z.number().min(-360).max(360).default(0).describe("Rotate artwork in degrees (-360 to 360)"),
|
|
535
921
|
position: z
|
|
536
922
|
.enum([
|
|
@@ -556,19 +942,22 @@ server.tool("render_2d_mockup", "Render artwork onto a saved 2D mockup template.
|
|
|
556
942
|
.default(false)
|
|
557
943
|
.describe("Queue the render instead of waiting. When true the API returns 202 with a job_id immediately -- poll with get_job, or call wait_for_job to block until it finishes and hands back result_url. Default false returns print_files + render_uuid synchronously (200). Use for long renders or when running many in parallel."),
|
|
558
944
|
}, async (args) => {
|
|
945
|
+
if ((args.print_area_uuid === undefined) === (args.surface_uuid === undefined)) {
|
|
946
|
+
throw new Error("Provide exactly one of print_area_uuid or surface_uuid");
|
|
947
|
+
}
|
|
559
948
|
const body = {
|
|
560
949
|
print_areas: [
|
|
561
950
|
{
|
|
562
|
-
|
|
951
|
+
...(args.print_area_uuid
|
|
952
|
+
? { uuid: args.print_area_uuid }
|
|
953
|
+
: { surface_uuid: args.surface_uuid }),
|
|
563
954
|
artwork_url: args.artwork_url,
|
|
564
955
|
...(args.remove_background ? { remove_background: true } : {}),
|
|
565
956
|
adjustments: {
|
|
566
|
-
blend_mode: args.blend_mode,
|
|
567
957
|
opacity: args.opacity,
|
|
568
958
|
brightness: args.brightness,
|
|
569
959
|
contrast: args.contrast,
|
|
570
960
|
saturation: args.saturation,
|
|
571
|
-
warp_strength: args.warp_strength,
|
|
572
961
|
},
|
|
573
962
|
placement: {
|
|
574
963
|
position: args.position,
|
|
@@ -619,43 +1008,41 @@ server.tool("render_2d_mockup", "Render artwork onto a saved 2D mockup template.
|
|
|
619
1008
|
server.tool("list_2d_mockups", "List your saved SudoAI 2D mockup templates (no PSD). Returns each mockup's mockup_id, name, status, thumbnail, dimensions, and print_areas. Use the mockup_id with get_2d_mockup (to read print_area UUIDs) or render_2d_mockup. Costs 0 credits.", {
|
|
620
1009
|
limit: z.number().min(1).max(100).default(20).describe("Results per page (1-100, default 20)"),
|
|
621
1010
|
offset: z.number().min(0).default(0).describe("Pagination offset (default 0)"),
|
|
622
|
-
|
|
1011
|
+
customizable_only: z.boolean().default(false).describe("Return only mockups ready for shopper customization"),
|
|
1012
|
+
}, async ({ limit, offset, customizable_only }) => {
|
|
623
1013
|
const result = await apiRequest({
|
|
624
1014
|
method: "GET",
|
|
625
1015
|
path: "/api/v1/sudoai/2d-mockups",
|
|
626
|
-
params: { limit, offset },
|
|
1016
|
+
params: { limit, offset, customizable_only },
|
|
627
1017
|
});
|
|
628
|
-
return {
|
|
1018
|
+
return {
|
|
1019
|
+
content: [{
|
|
1020
|
+
type: "text",
|
|
1021
|
+
text: JSON.stringify(publicTwoDList(result), null, 2),
|
|
1022
|
+
}],
|
|
1023
|
+
};
|
|
629
1024
|
});
|
|
630
1025
|
// ---------------------------------------------------------------------------
|
|
631
1026
|
// Tool: get_2d_mockup
|
|
632
1027
|
// ---------------------------------------------------------------------------
|
|
633
|
-
server.tool("get_2d_mockup", "Get one SudoAI 2D mockup's full details
|
|
1028
|
+
server.tool("get_2d_mockup", "Get one SudoAI 2D mockup's full details, including saved print_areas[] and full-coverage surfaces[]. Use a print_area_id as print_area_uuid, or a surfaces[].surface_uuid as surface_uuid, for render_2d_mockup. Costs 0 credits.", {
|
|
634
1029
|
mockup_id: z.string().describe("UUID of the 2D mockup (mockup_id from list_2d_mockups)"),
|
|
635
1030
|
}, async ({ mockup_id }) => {
|
|
636
|
-
const result =
|
|
1031
|
+
const result = await apiRequest({
|
|
637
1032
|
method: "GET",
|
|
638
1033
|
path: `/api/v1/sudoai/2d-mockups/${mockup_id}`,
|
|
639
|
-
})
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
...rest,
|
|
646
|
-
print_areas: Array.isArray(quads)
|
|
647
|
-
? quads
|
|
648
|
-
: Array.isArray(rest.print_areas)
|
|
649
|
-
? rest.print_areas
|
|
650
|
-
: [],
|
|
1034
|
+
});
|
|
1035
|
+
return {
|
|
1036
|
+
content: [{
|
|
1037
|
+
type: "text",
|
|
1038
|
+
text: JSON.stringify(publicTwoDResult(result), null, 2),
|
|
1039
|
+
}],
|
|
651
1040
|
};
|
|
652
|
-
const output = details === result ? normalized : { ...result, data: normalized };
|
|
653
|
-
return { content: [{ type: "text", text: JSON.stringify(output, null, 2) }] };
|
|
654
1041
|
});
|
|
655
1042
|
// ---------------------------------------------------------------------------
|
|
656
1043
|
// Tool: update_2d_print_areas
|
|
657
1044
|
// ---------------------------------------------------------------------------
|
|
658
|
-
server.tool("update_2d_print_areas", "Replace a 2D mockup's print areas with
|
|
1045
|
+
server.tool("update_2d_print_areas", "Replace a 2D mockup's print areas with up to 8 four-point quads and return the updated geometry. An empty list is accepted only for verified full product surfaces. Costs 0 credits.", {
|
|
659
1046
|
mockup_id: z.string().describe("UUID of the 2D mockup to update"),
|
|
660
1047
|
print_areas: z
|
|
661
1048
|
.array(z.object({
|
|
@@ -665,16 +1052,27 @@ server.tool("update_2d_print_areas", "Replace a 2D mockup's print areas with 1 t
|
|
|
665
1052
|
.describe("Four [x, y] points in top-left, top-right, bottom-right, bottom-left order"),
|
|
666
1053
|
name: z.string().optional().describe("Optional display name for this print area"),
|
|
667
1054
|
}))
|
|
668
|
-
.min(
|
|
1055
|
+
.min(0)
|
|
669
1056
|
.max(8)
|
|
670
|
-
.describe("Replacement print areas (
|
|
1057
|
+
.describe("Replacement print areas (0-8 four-point quads, each with an optional name)"),
|
|
671
1058
|
}, async ({ mockup_id, print_areas }) => {
|
|
672
1059
|
const result = await apiRequest({
|
|
673
1060
|
method: "PUT",
|
|
674
1061
|
path: `/api/v1/sudoai/2d-mockups/${mockup_id}/print-areas`,
|
|
675
1062
|
body: { print_areas },
|
|
676
1063
|
});
|
|
677
|
-
|
|
1064
|
+
const envelope = asRecord(result);
|
|
1065
|
+
const data = asRecord(envelope.data ?? result);
|
|
1066
|
+
const output = {
|
|
1067
|
+
success: envelope.success !== false,
|
|
1068
|
+
data: {
|
|
1069
|
+
mockup_id: data.mockup_id ?? mockup_id,
|
|
1070
|
+
print_areas: Array.isArray(data.print_areas)
|
|
1071
|
+
? data.print_areas.map(publicPrintArea)
|
|
1072
|
+
: [],
|
|
1073
|
+
},
|
|
1074
|
+
};
|
|
1075
|
+
return { content: [{ type: "text", text: JSON.stringify(output, null, 2) }] };
|
|
678
1076
|
});
|
|
679
1077
|
// ---------------------------------------------------------------------------
|
|
680
1078
|
// Tool: delete_2d_mockup
|
|
@@ -686,7 +1084,16 @@ server.tool("delete_2d_mockup", "Permanently delete a SudoAI 2D mockup template
|
|
|
686
1084
|
method: "DELETE",
|
|
687
1085
|
path: `/api/v1/sudoai/2d-mockups/${mockup_id}`,
|
|
688
1086
|
});
|
|
689
|
-
|
|
1087
|
+
const envelope = asRecord(result);
|
|
1088
|
+
const data = asRecord(envelope.data ?? result);
|
|
1089
|
+
const output = {
|
|
1090
|
+
success: envelope.success !== false,
|
|
1091
|
+
data: {
|
|
1092
|
+
mockup_id,
|
|
1093
|
+
deleted: data.deleted !== false,
|
|
1094
|
+
},
|
|
1095
|
+
};
|
|
1096
|
+
return { content: [{ type: "text", text: JSON.stringify(output, null, 2) }] };
|
|
690
1097
|
});
|
|
691
1098
|
// ---------------------------------------------------------------------------
|
|
692
1099
|
// Tool 7: upload_psd
|
|
@@ -713,7 +1120,12 @@ server.tool("upload_psd", "Upload a Photoshop PSD/PSB file as a new mockup templ
|
|
|
713
1120
|
if (is_async) {
|
|
714
1121
|
return { content: [{ type: "text", text: formatJobAccepted(result) }] };
|
|
715
1122
|
}
|
|
716
|
-
return {
|
|
1123
|
+
return {
|
|
1124
|
+
content: [{
|
|
1125
|
+
type: "text",
|
|
1126
|
+
text: JSON.stringify(publicMockupResult(result), null, 2),
|
|
1127
|
+
}],
|
|
1128
|
+
};
|
|
717
1129
|
});
|
|
718
1130
|
// ---------------------------------------------------------------------------
|
|
719
1131
|
// Tool: get_job
|
|
@@ -733,12 +1145,16 @@ server.tool("list_jobs", "List your async jobs, including PSD renders, videos, u
|
|
|
733
1145
|
limit: z.number().int().min(1).max(50).default(20).describe("Max jobs per page (1-50, default 20)"),
|
|
734
1146
|
cursor: z.string().optional().describe("Opaque keyset cursor from a prior page's next_cursor"),
|
|
735
1147
|
}, async ({ kind, mockup_uuid, limit, cursor }) => {
|
|
736
|
-
const result = await apiRequest({
|
|
1148
|
+
const result = (await apiRequest({
|
|
737
1149
|
method: "GET",
|
|
738
1150
|
path: "/api/v1/jobs",
|
|
739
1151
|
params: { kind, mockup_uuid, limit, cursor },
|
|
740
|
-
});
|
|
741
|
-
|
|
1152
|
+
}));
|
|
1153
|
+
const output = {
|
|
1154
|
+
jobs: Array.isArray(result.jobs) ? result.jobs.map(publicJob) : [],
|
|
1155
|
+
next_cursor: result.next_cursor ?? null,
|
|
1156
|
+
};
|
|
1157
|
+
return { content: [{ type: "text", text: JSON.stringify(output, null, 2) }] };
|
|
742
1158
|
});
|
|
743
1159
|
// ---------------------------------------------------------------------------
|
|
744
1160
|
// Tool: wait_for_job
|
|
@@ -780,7 +1196,7 @@ server.tool("wait_for_job", "Poll any async render, video, upload, or 2D job unt
|
|
|
780
1196
|
// ---------------------------------------------------------------------------
|
|
781
1197
|
// Tool: render_video
|
|
782
1198
|
// ---------------------------------------------------------------------------
|
|
783
|
-
server.tool("render_video", "Create a short AI video from either a mockup with artwork or a public image URL. Supply exactly one input mode. Always async: returns a job_id immediately for get_job or wait_for_job. Credit cost depends on clip length, audio, and the selected quality
|
|
1199
|
+
server.tool("render_video", "Create a short AI video from either a mockup with artwork or a public image URL. Supply exactly one input mode. Always async: returns a job_id immediately for get_job or wait_for_job. Credit cost depends on clip length, audio, and the automatically selected quality. Unsupported durations are rejected.", {
|
|
784
1200
|
mockup_uuid: z.string().optional().describe("RENDER MODE: UUID of the mockup to animate (from list_mockups or upload_psd). Required in render mode. In raw-image mode it is an optional association (groups the clip under that mockup's 'Past clips')."),
|
|
785
1201
|
smart_object_uuid: z.string().optional().describe("RENDER MODE: UUID of the smart object layer to place artwork on (from get_mockup_details). Required in render mode; omit in raw-image mode."),
|
|
786
1202
|
artwork_url: z.string().optional().describe("RENDER MODE: public URL of the artwork image (PNG/JPG/WebP) to place on the mockup before animating. Provide this OR artwork_base64. Omit in raw-image mode."),
|
|
@@ -797,20 +1213,16 @@ server.tool("render_video", "Create a short AI video from either a mockup with a
|
|
|
797
1213
|
.int()
|
|
798
1214
|
.min(1)
|
|
799
1215
|
.max(15)
|
|
800
|
-
.default(
|
|
801
|
-
.describe("Clip length in seconds.
|
|
1216
|
+
.default(4)
|
|
1217
|
+
.describe("Clip length in seconds. Unsupported values are rejected. Longer clips cost more credits."),
|
|
802
1218
|
audio: z
|
|
803
1219
|
.boolean()
|
|
804
1220
|
.default(false)
|
|
805
|
-
.describe("Generate audio. Default off; enabling it may cost more credits
|
|
1221
|
+
.describe("Generate audio. Default off; enabling it may cost more credits."),
|
|
806
1222
|
motion: z
|
|
807
1223
|
.enum(["ambient", "showcase"])
|
|
808
1224
|
.default("ambient")
|
|
809
1225
|
.describe("'ambient' = subtle looping hero motion that keeps the print readable; 'showcase' = one deliberate camera/product move."),
|
|
810
|
-
advanced_model: z
|
|
811
|
-
.string()
|
|
812
|
-
.optional()
|
|
813
|
-
.describe("Optional advanced quality profile identifier. Unknown or unavailable identifiers are rejected. Omit for automatic selection (recommended)."),
|
|
814
1226
|
image_format: z.enum(["webp", "png", "jpg"]).default("webp").describe("Output format of the still input frame"),
|
|
815
1227
|
image_size: z.number().min(100).max(10000).default(2048).describe("Width in pixels of the still input frame (default 2048)"),
|
|
816
1228
|
quality: z.number().min(1).max(100).default(90).describe("Compression quality for the still input frame (webp/jpg, default 90)"),
|
|
@@ -824,9 +1236,6 @@ server.tool("render_video", "Create a short AI video from either a mockup with a
|
|
|
824
1236
|
audio: args.audio,
|
|
825
1237
|
motion: args.motion,
|
|
826
1238
|
};
|
|
827
|
-
if (args.advanced_model) {
|
|
828
|
-
video.advanced_model = args.advanced_model;
|
|
829
|
-
}
|
|
830
1239
|
const body = {
|
|
831
1240
|
export_options: {
|
|
832
1241
|
image_format: args.image_format,
|
|
@@ -881,34 +1290,12 @@ server.tool("get_account", "Get your account info: subscription plan, credit bal
|
|
|
881
1290
|
method: "GET",
|
|
882
1291
|
path: "/api/v1/me",
|
|
883
1292
|
});
|
|
884
|
-
return {
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
mockup_uuid: z.string().optional().describe("UUID of an existing mockup. Optional for 2D setup and full-session flows."),
|
|
891
|
-
mockup_type: z.enum(["psd", "2d"]).default("psd").describe("Mockup type. PSD sessions support customize; 2D sessions support customize, setup, and full flows."),
|
|
892
|
-
session_kind: z
|
|
893
|
-
.enum(["customize", "2d-setup", "2d-full"])
|
|
894
|
-
.default("customize")
|
|
895
|
-
.describe("Session purpose. customize requires an existing mockup; 2d-setup and 2d-full may start without one."),
|
|
896
|
-
product_id: z.string().optional().describe("Platform product ID. Required for 2d-full sessions."),
|
|
897
|
-
allowed_origin: z.string().optional().describe("Web page origin allowed to open a 2D session. Required for 2D API-key sessions."),
|
|
898
|
-
}, async ({ mockup_uuid, mockup_type, session_kind, product_id, allowed_origin }) => {
|
|
899
|
-
const body = { mockup_type, session_kind };
|
|
900
|
-
if (mockup_uuid)
|
|
901
|
-
body.mockup_uuid = mockup_uuid;
|
|
902
|
-
if (product_id)
|
|
903
|
-
body.product_id = product_id;
|
|
904
|
-
if (allowed_origin)
|
|
905
|
-
body.allowed_origin = allowed_origin;
|
|
906
|
-
const result = await apiRequest({
|
|
907
|
-
method: "POST",
|
|
908
|
-
path: "/api/v1/studio/create-session",
|
|
909
|
-
body,
|
|
910
|
-
});
|
|
911
|
-
return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
|
|
1293
|
+
return {
|
|
1294
|
+
content: [{
|
|
1295
|
+
type: "text",
|
|
1296
|
+
text: JSON.stringify(publicAccount(result), null, 2),
|
|
1297
|
+
}],
|
|
1298
|
+
};
|
|
912
1299
|
});
|
|
913
1300
|
// ---------------------------------------------------------------------------
|
|
914
1301
|
// Webhook endpoints
|
|
@@ -917,8 +1304,8 @@ server.tool("create_studio_session", "Create an embedded studio session for inte
|
|
|
917
1304
|
// Deliveries are signed with TWO headers: "X-SudoMock-Signature: <hex>" (the
|
|
918
1305
|
// HMAC-SHA256 over `${timestamp}.${rawBody}` with the endpoint's secret) and
|
|
919
1306
|
// "X-SudoMock-Timestamp: <unix-seconds>". Verify in constant time and reject if
|
|
920
|
-
// |now - timestamp| > 300s (User-Agent SudoMock-Webhook/1.0).
|
|
921
|
-
//
|
|
1307
|
+
// |now - timestamp| > 300s (User-Agent SudoMock-Webhook/1.0). Standard job
|
|
1308
|
+
// events and the typed 2D create/render events have separate documented bodies.
|
|
922
1309
|
//
|
|
923
1310
|
// Event types: render.succeeded, render.failed, upload.succeeded,
|
|
924
1311
|
// video.succeeded, video.failed, 2d_mockup.ready, 2d_mockup.rejected,
|
|
@@ -953,14 +1340,20 @@ server.tool("create_webhook_endpoint", "Register a webhook endpoint that SudoMoc
|
|
|
953
1340
|
path: "/api/v1/webhook-endpoints",
|
|
954
1341
|
body,
|
|
955
1342
|
});
|
|
956
|
-
return {
|
|
1343
|
+
return {
|
|
1344
|
+
content: [{
|
|
1345
|
+
type: "text",
|
|
1346
|
+
text: JSON.stringify(publicWebhookEndpoint(result), null, 2),
|
|
1347
|
+
}],
|
|
1348
|
+
};
|
|
957
1349
|
});
|
|
958
1350
|
server.tool("list_webhook_endpoints", "List your registered webhook endpoints (id, url, subscribed event_types, enabled state). Secrets are NOT returned here -- only at creation and rotation.", {}, async () => {
|
|
959
1351
|
const result = await apiRequest({
|
|
960
1352
|
method: "GET",
|
|
961
1353
|
path: "/api/v1/webhook-endpoints",
|
|
962
1354
|
});
|
|
963
|
-
|
|
1355
|
+
const output = Array.isArray(result) ? result.map(publicWebhookEndpoint) : [];
|
|
1356
|
+
return { content: [{ type: "text", text: JSON.stringify(output, null, 2) }] };
|
|
964
1357
|
});
|
|
965
1358
|
server.tool("update_webhook_endpoint", "Update a webhook endpoint in place: change its url, description, subscribed event_types, or enable/disable it (enabled:false pauses deliveries without losing the signing secret). All fields optional -- only the ones you pass are changed. The secret is NOT rotated or returned here.", {
|
|
966
1359
|
endpoint_id: z.string().describe("The id of the webhook endpoint to update (from list_webhook_endpoints)"),
|
|
@@ -986,7 +1379,12 @@ server.tool("update_webhook_endpoint", "Update a webhook endpoint in place: chan
|
|
|
986
1379
|
path: `/api/v1/webhook-endpoints/${endpoint_id}`,
|
|
987
1380
|
body,
|
|
988
1381
|
});
|
|
989
|
-
return {
|
|
1382
|
+
return {
|
|
1383
|
+
content: [{
|
|
1384
|
+
type: "text",
|
|
1385
|
+
text: JSON.stringify(publicWebhookEndpoint(result), null, 2),
|
|
1386
|
+
}],
|
|
1387
|
+
};
|
|
990
1388
|
});
|
|
991
1389
|
server.tool("delete_webhook_endpoint", "Permanently delete a webhook endpoint. SudoMock stops delivering to it. Cannot be undone.", {
|
|
992
1390
|
endpoint_id: z.string().describe("The id of the webhook endpoint to delete (from list_webhook_endpoints)"),
|
|
@@ -1004,7 +1402,12 @@ server.tool("rotate_webhook_secret", "Rotate the signing secret for a webhook en
|
|
|
1004
1402
|
method: "POST",
|
|
1005
1403
|
path: `/api/v1/webhook-endpoints/${endpoint_id}/rotate-secret`,
|
|
1006
1404
|
});
|
|
1007
|
-
return {
|
|
1405
|
+
return {
|
|
1406
|
+
content: [{
|
|
1407
|
+
type: "text",
|
|
1408
|
+
text: JSON.stringify(publicWebhookEndpoint(result), null, 2),
|
|
1409
|
+
}],
|
|
1410
|
+
};
|
|
1008
1411
|
});
|
|
1009
1412
|
server.tool("test_webhook_endpoint", "Send a signed webhook.test event to verify endpoint reachability and signature handling. Returns a test job_id; check the result with list_webhook_deliveries.", {
|
|
1010
1413
|
endpoint_id: z.string().describe("The id of the webhook endpoint to test (from list_webhook_endpoints)"),
|
|
@@ -1013,7 +1416,12 @@ server.tool("test_webhook_endpoint", "Send a signed webhook.test event to verify
|
|
|
1013
1416
|
method: "POST",
|
|
1014
1417
|
path: `/api/v1/webhook-endpoints/${endpoint_id}/test`,
|
|
1015
1418
|
});
|
|
1016
|
-
return {
|
|
1419
|
+
return {
|
|
1420
|
+
content: [{
|
|
1421
|
+
type: "text",
|
|
1422
|
+
text: JSON.stringify(publicWebhookAction(result), null, 2),
|
|
1423
|
+
}],
|
|
1424
|
+
};
|
|
1017
1425
|
});
|
|
1018
1426
|
server.tool("list_webhook_deliveries", "List delivery attempts for a webhook endpoint (status, event_type, response code, timestamps). Use this to debug failed deliveries before replaying them.", {
|
|
1019
1427
|
endpoint_id: z.string().describe("The id of the webhook endpoint (from list_webhook_endpoints)"),
|
|
@@ -1026,7 +1434,10 @@ server.tool("list_webhook_deliveries", "List delivery attempts for a webhook end
|
|
|
1026
1434
|
path: `/api/v1/webhook-endpoints/${endpoint_id}/deliveries`,
|
|
1027
1435
|
params: { status, event_type, limit },
|
|
1028
1436
|
});
|
|
1029
|
-
|
|
1437
|
+
const output = Array.isArray(result)
|
|
1438
|
+
? result.map(publicWebhookDelivery)
|
|
1439
|
+
: [];
|
|
1440
|
+
return { content: [{ type: "text", text: JSON.stringify(output, null, 2) }] };
|
|
1030
1441
|
});
|
|
1031
1442
|
server.tool("replay_webhook_delivery", "Replay a single webhook delivery while preserving its event identity, e.g. after fixing your endpoint. Get delivery_id from list_webhook_deliveries.", {
|
|
1032
1443
|
endpoint_id: z.string().describe("The id of the webhook endpoint (from list_webhook_endpoints)"),
|
|
@@ -1036,7 +1447,12 @@ server.tool("replay_webhook_delivery", "Replay a single webhook delivery while p
|
|
|
1036
1447
|
method: "POST",
|
|
1037
1448
|
path: `/api/v1/webhook-endpoints/${endpoint_id}/deliveries/${delivery_id}/replay`,
|
|
1038
1449
|
});
|
|
1039
|
-
return {
|
|
1450
|
+
return {
|
|
1451
|
+
content: [{
|
|
1452
|
+
type: "text",
|
|
1453
|
+
text: JSON.stringify(publicWebhookAction(result), null, 2),
|
|
1454
|
+
}],
|
|
1455
|
+
};
|
|
1040
1456
|
});
|
|
1041
1457
|
// ---------------------------------------------------------------------------
|
|
1042
1458
|
// Start server
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,QAAQ,GAAG,0BAA0B,CAAC;AAC5C,MAAM,eAAe,GAAG,MAAM,CAAC;AAC/B,MAAM,cAAc,GAAG,OAAO,CAAC;AAC/B,MAAM,UAAU,GAAG,4BAA4B,CAAC;AAChD,MAAM,aAAa,GACjB,mTAAmT,CAAC;AAEtT,SAAS,SAAS;IAChB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACzC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,oDAAoD;YAClD,6DAA6D,CAChE,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAeD,KAAK,UAAU,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,GAAG,eAAe,EAAkB;IACxH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAE3B,IAAI,GAAG,GAAG,GAAG,QAAQ,GAAG,IAAI,EAAE,CAAC;IAC/B,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gBAClC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QACD,MAAM,EAAE,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;QACnC,IAAI,EAAE;YAAE,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;IAC1B,CAAC;IAED,MAAM,OAAO,GAA2B;QACtC,WAAW,EAAE,MAAM;QACnB,cAAc,EAAE,kBAAkB;QAClC,YAAY,EAAE,UAAU;QACxB,GAAG,YAAY;KAChB,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;IAE5D,IAAI,CAAC;QACH,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBACtB,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC7C,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,UAAU,CAAC,MAAM,CAAC,OAAO;gBACvB,CAAC,CAAC,gDAAgD;gBAClD,CAAC,CAAC,4DAA4D,CACjE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,QAAQ,GAA2B;gBACvC,GAAG,EAAE,4EAA4E;gBACjF,GAAG,EAAE,8CAA8C;gBACnD,GAAG,EAAE,8DAA8D;gBACnE,GAAG,EAAE,+BAA+B;gBACpC,GAAG,EAAE,wEAAwE;gBAC7E,GAAG,EAAE,yDAAyD;gBAC9D,GAAG,EAAE,sCAAsC;gBAC3C,GAAG,EAAE,+CAA+C;aACrD,CAAC;YAEF,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,4BAA4B,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACxF,CAAC;QAED,iBAAiB;QACjB,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACxB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAe;IAC/C,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAA4B,CAAC;IACpD,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;IAC/B,MAAM,SAAS,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG;QACd,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI;QACpB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,QAAQ;QAC5B,UAAU,EAAE,SAAS;QACrB,SAAS,EACP,iFAAiF;QACnF,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,IAAI,IAAI;QAC9C,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,IAAI;KACrC,CAAC;IACF,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEtE,qEAAqE;AACrE,KAAK,UAAU,MAAM,CAAC,KAAa,EAAE,OAAO,GAAG,eAAe;IAC5D,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,gBAAgB,KAAK,EAAE;QAC7B,OAAO;KACR,CAAC,CAA4B,CAAC;IAC/B,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,UAAU,CAAC,KAAc,EAAE,WAA0B,IAAI;IAChE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAC;IACzD,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;AACtD,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACrD,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC;AACjE,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,QAAgB;IACtD,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACpB,MAAM,QAAQ,GAAG,CAAC,OAAO,IAAI,EAAE,CAA4B,CAAC;YAC5D,OAAO;gBACL,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,gBAAgB;gBACnD,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;aAChD,CAAC;QACJ,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED,SAAS,SAAS,CAAC,MAAe;IAChC,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAA4B,CAAC;IACtD,MAAM,WAAW,GACf,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;QACxC,CAAC,CAAE,GAAG,CAAC,KAAiC;QACxC,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC;IACvC,MAAM,IAAI,GACR,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QACtC,CAAC,CAAC;YACE,OAAO,EAAG,GAAG,CAAC,IAAgC,CAAC,OAAO,IAAI,IAAI;YAC9D,UAAU,EAAG,GAAG,CAAC,IAAgC,CAAC,UAAU,IAAI,IAAI;YACpE,IAAI,EAAG,GAAG,CAAC,IAAgC,CAAC,IAAI,IAAI,IAAI;SACzD;QACH,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI;YACjB,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,SAAS,CAAC;IAClB,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;QAC1B,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,IAAI;QACtB,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;QAC1B,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;QAClC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;QAClC,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;QACpC,KAAK,EAAE,MAAM;YACX,CAAC,CAAC,UAAU,CACR,WAAW,EAAE,OAAO,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,EAChD,8DAA8D,CAC/D;YACH,CAAC,CAAC,IAAI;QACR,UAAU,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,IAAI,GAAG,CAAC,UAAU,CAAC;QACjE,eAAe,EAAE,GAAG,CAAC,eAAe,IAAI,IAAI;QAC5C,IAAI;QACJ,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;QAClC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;QAClC,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,IAAI,IAAI;QAChD,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,IAAI;QACtC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,IAAI,IAAI;QAC9C,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,IAAI;QACxB,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;QACpC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,IAAI;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAe;IAC5C,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,EAAE,CAA4B,CAAC;IAC3D,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAI;QACvB,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,IAAI;QACzC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,IAAI;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,IAAI;QACvC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,IAAI;QAC/B,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,IAAI;QACzC,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC;QAC9B,UAAU,EAAE,UAAU,CACpB,QAAQ,CAAC,UAAU,EACnB,QAAQ,CAAC,UAAU;YACjB,CAAC,CAAC,oEAAoE;YACtE,CAAC,CAAC,IAAI,CACT;QACD,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,IAAI;QACvC,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,IAAI;KACxC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAe;IACzC,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,EAAE,CAA4B,CAAC;IAC3D,MAAM,IAAI,GACR,QAAQ,CAAC,IAAI,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ;QAChD,CAAC,CAAE,QAAQ,CAAC,IAAgC;QAC5C,CAAC,CAAC,QAAQ,CAAC;IACf,MAAM,QAAQ,GAAG,cAAc,CAC7B,QAAQ,CAAC,QAAQ,EACjB,wCAAwC,CACzC,CAAC;IACF,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE;YACJ,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC1C,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC5B,MAAM,KAAK,GAAG,IAA+B,CAAC;oBAC9C,OAAO;wBACL,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;wBACtC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,IAAI;wBAClD,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;qBACvC,CAAC;gBACJ,CAAC,CAAC;gBACJ,CAAC,CAAC,EAAE;YACN,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;SACtC;QACD,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChE,CAAC,CAAE,KAAiC;QACpC,CAAC,CAAC,EAAE,CAAC;AACT,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;AACpE,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjC,OAAO;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,IAAI;QACrB,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,IAAI;QACrB,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,IAAI;QAC7B,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,IAAI;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;QACzB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;QACzB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI;QACnC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;QAC7B,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;YAChD,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAChC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACnC,OAAO;oBACL,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,IAAI;oBAC9B,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,IAAI;oBAC9B,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC;oBAClC,QAAQ,EAAE,cAAc,CAAC,WAAW,CAAC,QAAQ,CAAC;oBAC9C,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC;wBAC/D,CAAC,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;4BAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;4BACnC,OAAO;gCACL,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;gCACzB,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;gCACzB,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;oCAC1C,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;wCACrC,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;wCACzC,OAAO;4CACL,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,IAAI;4CAC9B,GAAG,EAAE,SAAS,CAAC,GAAG,IAAI,IAAI;yCAC3B,CAAC;oCACJ,CAAC,CAAC;oCACJ,CAAC,CAAC,EAAE;gCACN,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC;gCAC7B,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;6BAC1C,CAAC;wBACJ,CAAC,CAAC;wBACJ,CAAC,CAAC,EAAE;oBACN,UAAU,EAAE,WAAW,CAAC,UAAU,IAAI,IAAI;oBAC1C,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,IAAI;oBAC9B,UAAU,EAAE,WAAW,CAAC,UAAU,IAAI,IAAI;oBAC1C,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,IAAI;iBACnD,CAAC;YACJ,CAAC,CAAC;YACJ,CAAC,CAAC,EAAE;QACN,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;YAC5C,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC9B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC7B,OAAO;oBACL,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;oBACxB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;oBACxB,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI;oBACxC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,IAAI,IAAI;oBACxD,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;oBAClC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI;oBAC1B,cAAc,EAAE,KAAK,CAAC,cAAc,IAAI,IAAI;oBAC5C,WAAW,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI;oBACvC,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,CAAC;oBACvC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;wBACrC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;4BAChC,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;4BACrC,OAAO;gCACL,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI;gCAC5B,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;gCAC1B,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,IAAI,IAAI;gCAC1D,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;gCACpC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI;6BAC7B,CAAC;wBACJ,CAAC,CAAC;wBACJ,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI;oBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;oBAC9B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,KAAK,IAAI;oBACnD,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,CAAC;oBACrC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,KAAK,IAAI;oBACnD,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,IAAI,IAAI;oBACtD,uBAAuB,EAAE,KAAK,CAAC,uBAAuB,IAAI,IAAI;iBAC/D,CAAC;YACJ,CAAC,CAAC;YACJ,CAAC,CAAC,EAAE;QACN,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;YAC1C,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;gBACrC,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;gBACzC,OAAO;oBACL,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,IAAI;oBAC9B,GAAG,EAAE,SAAS,CAAC,GAAG,IAAI,IAAI;iBAC3B,CAAC;YACJ,CAAC,CAAC;YACJ,CAAC,CAAC,EAAE;QACN,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;YAChC,CAAC,CAAC;gBACE,QAAQ,EAAE,cAAc,CACtB,MAAM,CAAC,QAAQ,EACf,wCAAwC,CACzC;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAe;IACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC;QAC/C,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAClC,CAAC,CAAC;gBACE,QAAQ,EAAE,cAAc,CACtB,QAAQ,CAAC,QAAQ,EACjB,wCAAwC,CACzC;aACF;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAe;IACvC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QACzC,CAAC,CAAC,IAAI,CAAC,OAAO;QACd,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACtB,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,EAAE,CAAC;IACT,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE;YACJ,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACtC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM;YACrD,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM;YACrD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC;SAC5C;KACF,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAe;IAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IAC/C,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE;YACJ,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI;YACrB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;YAC3B,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,IAAI;SAC9C;KACF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO;QACL,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI;QACzC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACrD,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;QAC7C,CAAC,CAAC,MAAM,CAAC,WAAW;QACpB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC3B,CAAC,CAAC,MAAM,CAAC,KAAK;YACd,CAAC,CAAC,EAAE,CAAC;IACT,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI;QACnC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;QACzB,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;QAC7B,YAAY,EAAE,MAAM,CAAC,YAAY,KAAK,IAAI;QAC1C,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI;QAC3C,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,IAAI,IAAI;QAC7D,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI;QACzC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,IAAI;QAC3C,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC;QACvC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;YACtC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;gBACjC,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACrC,OAAO;oBACL,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;oBAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;iBACnC,CAAC;YACJ,CAAC,CAAC;YACJ,CAAC,CAAC,EAAE;QACN,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;QACrC,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;KACtC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,MAAe;IACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAChC,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM;QACpC,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM;QACpC,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,CAAC;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAe;IACvC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE,gBAAgB,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,MAAe;IACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE;YACJ,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI;gBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;gBAC1B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;aACvC;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,IAAI;gBAC/B,IAAI,EAAE,YAAY,CAAC,IAAI,IAAI,IAAI;gBAC/B,MAAM,EAAE,YAAY,CAAC,MAAM,IAAI,IAAI;gBACnC,kBAAkB,EAAE,YAAY,CAAC,kBAAkB,IAAI,IAAI;gBAC3D,oBAAoB,EAAE,YAAY,CAAC,oBAAoB,KAAK,IAAI;gBAChE,eAAe,EAAE,YAAY,CAAC,eAAe,IAAI,IAAI;aACtD;YACD,KAAK,EAAE;gBACL,uBAAuB,EAAE,KAAK,CAAC,uBAAuB,IAAI,IAAI;gBAC9D,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,IAAI;gBAC1C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,IAAI,IAAI;gBAClD,oBAAoB,EAAE,KAAK,CAAC,oBAAoB,IAAI,IAAI;gBACxD,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,IAAI,IAAI;aACrD;YACD,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI;gBACzB,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;gBACrC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI;gBACzC,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI;aAC9C;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAe;IAC5C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IACnD,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,IAAI;QACvB,GAAG,EAAE,QAAQ,CAAC,GAAG,IAAI,IAAI;QACzB,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,IAAI;QAC/B,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,IAAI;QACzC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;QAC5E,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,IAAI;QAClC,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,IAAI;QACvC,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,IAAI;KACxC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAe;IAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IAC/C,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;QAC3B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;QACrC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;KAC5B,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,GAA4B;IACxD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,OAAO,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,8EAA8E;AAC9E,SAAS;AACT,8EAA8E;AAE9E,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,UAAU;IAChB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,cAAc,EACd,qIAAqI,EACrI;IACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IAC9F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAC9E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IACzF,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IACnG,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IACrG,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC;IAClG,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;CAC/E,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE;IACpF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE;KACjG,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aACxD,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,6BAA6B;AAC7B,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,wHAAwH,EACxH;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;CACtE,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;IACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,mBAAmB,WAAW,EAAE;KACvC,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC1D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,2BAA2B,EAC3B;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IACpE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CAC7D,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE;IAC9B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,mBAAmB,WAAW,EAAE;QACtC,IAAI,EAAE,EAAE,IAAI,EAAE;KACf,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC1D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,yDAAyD,EACzD;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;CACrE,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;IACxB,MAAM,UAAU,CAAC;QACf,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,mBAAmB,WAAW,EAAE;KACvC,CAAC,CAAC;IACH,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,UAAU,WAAW,wBAAwB,EAAE,CAAC,EAAE,CAAC;AACvG,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,sBAAsB,GAAG,CAAC;KAC7B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,KAAK,CAAC,gEAAgE,CAAC;SACvE,QAAQ,CAAC,gCAAgC,CAAC;IAC7C,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QAClF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;QACpG,YAAY,EAAE,CAAC;aACZ,IAAI,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;aACzE,QAAQ,EAAE;aACV,QAAQ,CAAC,qDAAqD,CAAC;QAClE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;QAC7G,IAAI,EAAE,CAAC;aACJ,MAAM,CAAC;YACN,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YAC7E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;SAChF,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,8BAA8B,CAAC;QAC3C,QAAQ,EAAE,CAAC;aACR,MAAM,CAAC;YACN,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YACjE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;SACpE,CAAC;aACD,QAAQ,EAAE;aACV,QAAQ,CAAC,kCAAkC,CAAC;QAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QACtF,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QACjF,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;QAC/E,iBAAiB,EAAE,CAAC;aACjB,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,iFAAiF,CAAC;KAC/F,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,mCAAmC,CAAC;SACjF,QAAQ,EAAE;IACb,KAAK,EAAE,CAAC;SACL,MAAM,CAAC;QACN,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;QAC5F,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;KACzF,CAAC;SACD,QAAQ,EAAE;IACb,iBAAiB,EAAE,CAAC;SACjB,MAAM,CAAC;QACN,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;QACtD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACxD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;KAClD,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,8BAA8B,CAAC;CAC5C,CAAC;KACD,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,KAAK,EAAE,wBAAwB,CAAC,CAAC;AAE7F,MAAM,oBAAoB,GAAG,CAAC;KAC3B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,KAAK,CAAC,gEAAgE,CAAC;SACvE,QAAQ,CAAC,0CAA0C,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;IACjG,QAAQ,EAAE,CAAC;SACR,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAC3E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;KAC/E,CAAC,CACH;SACA,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,EAAE;SACV,QAAQ,CAAC,qDAAqD,CAAC;IAClE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACtG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IACvH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IACvG,YAAY,EAAE,CAAC;SACZ,KAAK,CAAC;QACL,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC;QACtC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KACzE,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,8FAA8F,CAAC;IAC3G,GAAG,EAAE,CAAC;SACH,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SACpC,OAAO,CAAC,UAAU,CAAC;SACnB,QAAQ,CAAC,kEAAkE,CAAC;CAChF,CAAC;KACD,WAAW,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,EAAE,CAAC;QAClE,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,yCAAyC;SACnD,CAAC,CAAC;IACL,CAAC;IACD,IACE,KAAK,CAAC,QAAQ;QACd,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS;YACvB,KAAK,CAAC,SAAS,KAAK,SAAS;YAC7B,KAAK,CAAC,KAAK,KAAK,SAAS;YACzB,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,EACnC,CAAC;QACD,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,4EAA4E;SACtF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7G,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,IAAI,CACT,eAAe,EACf,kQAAkQ,EAClQ;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;IACnF,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yGAAyG,CAAC;IAC5J,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+FAA+F,CAAC;IAC5I,aAAa,EAAE,CAAC;SACb,KAAK,CAAC,sBAAsB,CAAC;SAC7B,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CAAC,kHAAkH,CAAC;IAC/H,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,oBAAoB,CAAC;SAC3B,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,QAAQ,EAAE;SACV,QAAQ,CAAC,6IAA6I,CAAC;IAC1J,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC1H,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC;IACtF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IAC1G,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,+CAA+C,CAAC;IACzG,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6IAA6I,CAAC;IAC1M,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACtF,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACjF,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IAC/E,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iFAAiF,CAAC;IACzI,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;IAC7F,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IACvH,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACtF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC;IAClF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IACrF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACtF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAChG,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACzF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;IAC9E,QAAQ,EAAE,CAAC;SACR,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,uPAAuP,CACxP;CACJ,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,KAAK,SAAS,CAAC;IAChE,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC;IACrD,IAAI,kBAAkB,KAAK,aAAa,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,IAAI,CAAC,aAAa,IAAI,kBAAkB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IAED,MAAM,YAAY,GAAmC,IAAI,CAAC,aAAa;QACrE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;QACzB,CAAC,CAAC,EAAE,CAAC;IACP,IAAI,kBAAkB,IAAI,aAAa,EAAE,CAAC;QACxC,MAAM,WAAW,GAA4B;YAC3C,IAAI,EAAE,IAAI,CAAC,iBAAiB;YAC5B,KAAK,EAAE;gBACL,GAAG,EAAE,IAAI,CAAC,WAAW;gBACrB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/D;SACF,CAAC;QAEF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,WAAW,CAAC,KAAK,GAAG;gBAClB,GAAG,EAAE,IAAI,CAAC,SAAS;gBACnB,aAAa,EAAE,IAAI,CAAC,gBAAgB,IAAI,QAAQ;aACjD,CAAC;QACJ,CAAC;QAED,IACE,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,OAAO,KAAK,GAAG;YACpB,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,QAAQ;YACb,IAAI,CAAC,IAAI,EACT,CAAC;YACD,WAAW,CAAC,iBAAiB,GAAG;gBAC9B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC;QACJ,CAAC;QACD,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,IAAI,GAA4B;QACpC,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,cAAc,EAAE;YACd,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrD;KACF,CAAC;IACF,IAAI,YAAY,CAAC,MAAM;QAAE,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IAC3D,IAAI,IAAI,CAAC,WAAW;QAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAE1D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IACxC,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,iBAAiB;QACvB,IAAI;QACJ,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IACnF,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC1D;SACF;KACF,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,0BAA0B;AAC1B,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,0RAA0R,EAC1R;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;CAC1F,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IACtB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,2BAA2B;QACjC,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE;QACxB,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC/D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,sVAAsV,EACtV;IACE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IAC/E,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;IACpH,QAAQ,EAAE,CAAC;SACR,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,gPAAgP,CACjP;CACJ,EACD,KAAK,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,EAAE,EAAE;IACxD,MAAM,IAAI,GAA4B,EAAE,UAAU,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;IACxE,IAAI,IAAI;QAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAC3B,IAAI,QAAQ;QAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAEnC,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC;QAC/B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,2BAA2B;QACjC,IAAI;QACJ,OAAO,EAAE,EAAE,iBAAiB,EAAE,eAAe,IAAI,UAAU,EAAE,EAAE;KAChE,CAAC,CAA4B,CAAC;IAE/B,8DAA8D;IAC9D,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IACnF,CAAC;IAED,0EAA0E;IAC1E,MAAM,OAAO,GACX,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;QAC5C,CAAC,CAAE,MAAM,CAAC,IAAgC;QAC1C,CAAC,CAAC,MAAM,CAAC;IACb,MAAM,OAAO,GAAG;QACd,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;QAC1B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO;QACjC,YAAY,EAAE,OAAO,CAAC,YAAY,KAAK,IAAI;QAC3C,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;QAC1C,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;QAC5C,WAAW,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;YACxC,CAAC,CAAC,OAAO,CAAC,KAAK;YACf,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;gBAClC,CAAC,CAAC,OAAO,CAAC,WAAW;gBACrB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC;QAC9B,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;YACvC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,OAAkC,CAAC;gBACjD,OAAO;oBACL,YAAY,EAAE,KAAK,CAAC,YAAY;oBAChC,QAAQ,EAAE,KAAK,CAAC,QAAQ;iBACzB,CAAC;YACJ,CAAC,CAAC;YACJ,CAAC,CAAC,EAAE;KACP,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC1F,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,wPAAwP,EACxP;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+EAA+E,CAAC;IACjH,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gFAAgF,CAAC;IACjI,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gGAAgG,CAAC;IAC9I,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;IACzG,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iFAAiF,CAAC;IACzI,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IAC/F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IACpG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IAChG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;IACpG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IACtG,QAAQ,EAAE,CAAC;SACR,IAAI,CAAC;QACJ,QAAQ;QACR,UAAU;QACV,YAAY;QACZ,WAAW;QACX,aAAa;QACb,cAAc;QACd,aAAa;QACb,eAAe;QACf,cAAc;KACf,CAAC;SACD,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,oDAAoD,CAAC;IACjE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,4DAA4D,CAAC;IACxH,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,8GAA8G,CAAC;IACrL,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,wEAAwE,CAAC;IAC/I,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,kDAAkD,CAAC;IACrH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAChH,QAAQ,EAAE,CAAC;SACR,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,2TAA2T,CAC5T;CACJ,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,IAAI,CAAC,IAAI,CAAC,eAAe,KAAK,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,EAAE,CAAC;QAC/E,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,MAAM,IAAI,GAA4B;QACpC,WAAW,EAAE;YACX;gBACE,GAAG,CAAC,IAAI,CAAC,eAAe;oBACtB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,eAAe,EAAE;oBAChC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;gBACxC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,WAAW,EAAE;oBACX,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,UAAU,EAAE,IAAI,CAAC,UAAU;iBAC5B;gBACD,SAAS,EAAE;oBACT,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB;aACF;SACF;QACD,cAAc,EAAE;YACd,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB;KACF,CAAC;IAEF,IAAI,IAAI,CAAC,QAAQ;QAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAExC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,6BAA6B,IAAI,CAAC,WAAW,SAAS;QAC5D,IAAI;QACJ,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,iFAAiF;IACjF,uEAAuE;IACvE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IACnF,CAAC;IAED,uCAAuC;IACvC,qFAAqF;IACrF,MAAM,UAAU,GACb,MAA4F,EAAE,IAAI,IAAI,EAAE,CAAC;IAC5G,MAAM,QAAQ,GAAG;QACf,IAAI,EAAE;YACJ,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,WAAW,EAAE,CAAC,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtD,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC;SACJ;QACD,OAAO,EAAE,IAAI;KACd,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC3F,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB,mPAAmP,EACnP;IACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IAC9F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAC9E,iBAAiB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,qDAAqD,CAAC;CAC9G,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAAE,EAAE;IAC7C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,2BAA2B;QACjC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE;KAC7C,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aACtD,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,eAAe,EACf,mOAAmO,EACnO;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;CACzF,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IACtB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,6BAA6B,SAAS,EAAE;KAC/C,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aACxD,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,8BAA8B;AAC9B,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,uBAAuB,EACvB,sLAAsL,EACtL;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACjE,WAAW,EAAE,CAAC;SACX,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC;aACN,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;aACxC,MAAM,CAAC,CAAC,CAAC;aACT,QAAQ,CAAC,4EAA4E,CAAC;QACzF,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;KAClF,CAAC,CACH;SACA,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,4EAA4E,CAAC;CAC1F,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,EAAE;IACnC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,6BAA6B,SAAS,cAAc;QAC1D,IAAI,EAAE,EAAE,WAAW,EAAE;KACtB,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG;QACb,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE;YACJ,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;YACtC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC1C,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC;gBACvC,CAAC,CAAC,EAAE;SACP;KACF,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACzF,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,wGAAwG,EACxG;IACE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;CACnG,EACD,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE;IACtB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,6BAA6B,SAAS,EAAE;KAC/C,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG;QACb,OAAO,EAAE,QAAQ,CAAC,OAAO,KAAK,KAAK;QACnC,IAAI,EAAE;YACJ,SAAS;YACT,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,KAAK;SAChC;KACF,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACzF,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,6IAA6I,EAC7I;IACE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gFAAgF,CAAC;IACnH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;IACnH,QAAQ,EAAE,CAAC;SACR,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CACP,6OAA6O,CAC9O;CACJ,EACD,KAAK,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7C,MAAM,IAAI,GAA4B,EAAE,YAAY,EAAE,CAAC;IACvD,IAAI,QAAQ;QAAE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACvC,IAAI,QAAQ;QAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IAEnC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,oBAAoB;QAC1B,IAAI;QACJ,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;IACnF,CAAC;IAED,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC1D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,SAAS,EACT,2PAA2P,EAC3P;IACE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;CAC3E,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;IACnB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IACpC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACzF,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,WAAW,EACX,4MAA4M,EAC5M;IACE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IACpI,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8GAA8G,CAAC;IAC3J,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACnG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;CAC/F,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE;IAC7C,MAAM,MAAM,GAAG,CAAC,MAAM,UAAU,CAAC;QAC/B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE;KAC7C,CAAC,CAA4B,CAAC;IAC/B,MAAM,MAAM,GAAG;QACb,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;QAClE,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;KACxC,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACzF,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,cAAc,EACd,qJAAqJ,EACrJ;IACE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;IAC/F,qBAAqB,EAAE,CAAC;SACrB,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,iDAAiD,CAAC;IAC9D,eAAe,EAAE,CAAC;SACf,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,OAAO,CAAC,GAAG,CAAC;SACZ,QAAQ,CAAC,kFAAkF,CAAC;CAChG,EACD,KAAK,EAAE,EAAE,MAAM,EAAE,qBAAqB,EAAE,eAAe,EAAE,EAAE,EAAE;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe,GAAG,IAAI,CAAC;IACrD,IAAI,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAE/B,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG;gBACf,SAAS,EAAE,IAAI;gBACf,MAAM;gBACN,cAAc,EAAE,eAAe;gBAC/B,WAAW,EAAE,GAAG,CAAC,MAAM,IAAI,SAAS;gBACpC,OAAO,EACL,oHAAoH;gBACtH,QAAQ,EAAE,GAAG;aACd,CAAC;YACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC3F,CAAC;QACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAAC,CAAC,CAAC;QAClF,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACtF,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,cAAc,EACd,gTAAgT,EAChT;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4MAA4M,CAAC;IACzP,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6IAA6I,CAAC;IAChM,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8JAA8J,CAAC;IAC3M,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+FAA+F,CAAC;IAC/I,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;IAC5K,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iJAAiJ,CAAC;IAC5L,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,yEAAyE,CAAC;IAC7I,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IAC/H,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;IACjI,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;IAC1H,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0EAA0E,CAAC;IAC5H,gBAAgB,EAAE,CAAC;SAChB,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,0FAA0F,CAAC;IACvG,KAAK,EAAE,CAAC;SACL,OAAO,EAAE;SACT,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,MAAM,EAAE,CAAC;SACN,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;SAC7B,OAAO,CAAC,SAAS,CAAC;SAClB,QAAQ,CAAC,wHAAwH,CAAC;IACrI,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC/G,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,yDAAyD,CAAC;IAC5H,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,sEAAsE,CAAC;IAChI,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,iGAAiG,CAAC;CAC/G,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,KAAK,GAA4B;QACrC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC;IAEF,MAAM,IAAI,GAA4B;QACpC,cAAc,EAAE;YACd,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB;QACD,KAAK;KACN,CAAC;IAEF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,0EAA0E;QAC1E,6EAA6E;QAC7E,+EAA+E;QAC/E,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,oEAAoE;QACpE,MAAM,KAAK,GAA4B,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACzD,IAAI,IAAI,CAAC,WAAW;YAAE,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC;QACnD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;YACnC,IAAI,IAAI,CAAC,oBAAoB;gBAAE,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAChF,CAAC;QACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACtE,KAAK,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;QACtE,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClE,KAAK,CAAC,QAAQ,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3C,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,uBAAuB;QAC7B,IAAI;QACJ,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;AACnF,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,MAAM,CAAC,IAAI,CACT,aAAa,EACb,6GAA6G,EAC7G,EAAE,EACF,KAAK,IAAI,EAAE;IACT,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,YAAY;KACnB,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aACrD,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,oBAAoB;AACpB,EAAE;AACF,gFAAgF;AAChF,6EAA6E;AAC7E,6EAA6E;AAC7E,gFAAgF;AAChF,2EAA2E;AAC3E,gFAAgF;AAChF,EAAE;AACF,kEAAkE;AAClE,sEAAsE;AACtE,yEAAyE;AACzE,8EAA8E;AAE9E,MAAM,mBAAmB,GAAG;IAC1B,kBAAkB;IAClB,eAAe;IACf,kBAAkB;IAClB,iBAAiB;IACjB,cAAc;IACd,iBAAiB;IACjB,oBAAoB;IACpB,kBAAkB;IAClB,qBAAqB;IACrB,kBAAkB;IAClB,cAAc;CACN,CAAC;AAEX,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,ySAAyS,EACzS;IACE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wGAAwG,CAAC;IAClI,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;SAClC,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,2KAA2K,CAAC;IACxL,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;CACxG,EACD,KAAK,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;IAC1C,MAAM,IAAI,GAA4B,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC;IAC3D,IAAI,WAAW;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAEhD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,2BAA2B;QACjC,IAAI;KACL,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC7D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,0JAA0J,EAC1J,EAAE,EACF,KAAK,IAAI,EAAE;IACT,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,2BAA2B;KAClC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACzF,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,2RAA2R,EAC3R;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;IAC1G,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;IACtH,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;IAChF,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;SAClC,QAAQ,EAAE;SACV,QAAQ,CAAC,6FAA6F,CAAC;IAC1G,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;CAC7G,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE;IAChE,MAAM,IAAI,GAA4B,EAAE,CAAC;IACzC,IAAI,GAAG,KAAK,SAAS;QAAE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACtC,IAAI,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAC9D,IAAI,WAAW,KAAK,SAAS;QAAE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAC9D,IAAI,OAAO,KAAK,SAAS;QAAE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAElD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,OAAO;QACf,IAAI,EAAE,6BAA6B,WAAW,EAAE;QAChD,IAAI;KACL,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC7D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,2FAA2F,EAC3F;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;CAC3G,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;IACxB,MAAM,UAAU,CAAC;QACf,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,6BAA6B,WAAW,EAAE;KACjD,CAAC,CAAC;IACH,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,oBAAoB,WAAW,wBAAwB,EAAE,CAAC,EAAE,CAAC;AACjH,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,uBAAuB,EACvB,oKAAoK,EACpK;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;CAC3G,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;IACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,6BAA6B,WAAW,gBAAgB;KAC/D,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC7D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,uBAAuB,EACvB,gKAAgK,EAChK;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sEAAsE,CAAC;CACzG,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;IACxB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,6BAA6B,WAAW,OAAO;KACtD,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC3D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,2JAA2J,EAC3J;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IAChG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IAChG,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IACnF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,8CAA8C,CAAC;CAC7G,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE;IACnD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,6BAA6B,WAAW,aAAa;QAC3D,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE;KACtC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;QACnC,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACzF,CAAC,CACF,CAAC;AAEF,MAAM,CAAC,IAAI,CACT,yBAAyB,EACzB,sJAAsJ,EACtJ;IACE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;IAChG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;CACpG,EACD,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;IACrC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;QAC9B,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,6BAA6B,WAAW,eAAe,WAAW,SAAS;KAClF,CAAC,CAAC;IACH,OAAO;QACL,OAAO,EAAE,CAAC;gBACR,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;aAC3D,CAAC;KACH,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,8EAA8E;AAC9E,iFAAiF;AACjF,sEAAsE;AACtE,MAAM,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS;IAC7B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAE1D,IAAI,YAAY,EAAE,CAAC;IACjB,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;QAChB,OAAO,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudomock/mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.0",
|
|
4
4
|
"mcpName": "io.github.sudomock/mcp",
|
|
5
5
|
"description": "SudoMock MCP server for Claude, Cursor, and VS Code. Generate photorealistic product mockups from Photoshop PSD templates.",
|
|
6
6
|
"keywords": [
|