aimeat 1.7.0 → 1.9.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.
Files changed (261) hide show
  1. package/dist/.env.example +4 -1
  2. package/dist/locales/en.json +573 -10
  3. package/dist/locales/fi.json +572 -9
  4. package/dist/public/css/views/admin-agent-integration.css +304 -0
  5. package/dist/public/css/views/agents-detail.css +1697 -120
  6. package/dist/public/css/views/profile.css +22 -2
  7. package/dist/public/css/views/public-knowledge-viewer.css +479 -0
  8. package/dist/public/js/i18n.js +9 -3
  9. package/dist/public/js/services/admin-agent-integration.js +52 -0
  10. package/dist/public/js/services/agent-integration.js +80 -0
  11. package/dist/public/js/services/agent-messages.js +3 -1
  12. package/dist/public/js/services/generator-spec-validate.js +23 -0
  13. package/dist/public/js/services/memory.js +39 -0
  14. package/dist/public/lib/live-updates.js +9 -4
  15. package/dist/public/llms-template.txt +106 -0
  16. package/dist/public/spa.html +7 -2
  17. package/dist/public/views/admin/agent-integration-tab.js +390 -0
  18. package/dist/public/views/admin/federation-tab.js +5 -5
  19. package/dist/public/views/admin/prompts-tab.js +9 -10
  20. package/dist/public/views/admin.js +2 -0
  21. package/dist/public/views/profile/access-tab.js +18 -0
  22. package/dist/public/views/profile/agents/agent-card.js +396 -0
  23. package/dist/public/views/profile/agents/shared-board.js +97 -0
  24. package/dist/public/views/profile/agents/state-detector.js +62 -0
  25. package/dist/public/views/profile/agents/tab-activity.js +232 -0
  26. package/dist/public/views/profile/agents/tab-agent-config.js +199 -0
  27. package/dist/public/views/profile/agents/tab-data-access.js +304 -0
  28. package/dist/public/views/profile/agents/tab-directives.js +178 -0
  29. package/dist/public/views/profile/agents/tab-integration.js +505 -0
  30. package/dist/public/views/profile/agents/tab-messages.js +278 -0
  31. package/dist/public/views/profile/agents/tab-services.js +17 -0
  32. package/dist/public/views/profile/agents/tab-tasks.js +17 -0
  33. package/dist/public/views/profile/agents-messages-subtab.js +12 -10
  34. package/dist/public/views/profile/agents-services-subtab.js +17 -11
  35. package/dist/public/views/profile/agents-tab.js +159 -255
  36. package/dist/public/views/profile/agents-task-builder.js +403 -0
  37. package/dist/public/views/profile/agents-tasks-subtab.js +186 -140
  38. package/dist/public/views/profile/generator-detail.js +8 -1
  39. package/dist/public/views/profile/memory-tab.js +371 -7
  40. package/dist/public/views/profile/wallet-tab.js +14 -0
  41. package/dist/public/views/public-knowledge-viewer.js +650 -0
  42. package/dist/src/auth/middleware.d.ts.map +1 -1
  43. package/dist/src/auth/middleware.js +17 -0
  44. package/dist/src/auth/middleware.js.map +1 -1
  45. package/dist/src/config.d.ts +1 -0
  46. package/dist/src/config.d.ts.map +1 -1
  47. package/dist/src/config.js +1 -0
  48. package/dist/src/config.js.map +1 -1
  49. package/dist/src/middleware/readiness-gate.d.ts +18 -0
  50. package/dist/src/middleware/readiness-gate.d.ts.map +1 -0
  51. package/dist/src/middleware/readiness-gate.js +50 -0
  52. package/dist/src/middleware/readiness-gate.js.map +1 -0
  53. package/dist/src/models/agent-capabilities-schemas.d.ts +3 -0
  54. package/dist/src/models/agent-capabilities-schemas.d.ts.map +1 -1
  55. package/dist/src/models/agent-capabilities-schemas.js +3 -0
  56. package/dist/src/models/agent-capabilities-schemas.js.map +1 -1
  57. package/dist/src/models/agent-directives-schemas.d.ts +12 -0
  58. package/dist/src/models/agent-directives-schemas.d.ts.map +1 -1
  59. package/dist/src/models/agent-directives-schemas.js +7 -0
  60. package/dist/src/models/agent-directives-schemas.js.map +1 -1
  61. package/dist/src/models/agent-onboarding-schemas.d.ts +45 -0
  62. package/dist/src/models/agent-onboarding-schemas.d.ts.map +1 -0
  63. package/dist/src/models/agent-onboarding-schemas.js +91 -0
  64. package/dist/src/models/agent-onboarding-schemas.js.map +1 -0
  65. package/dist/src/models/webhook-schemas.d.ts +266 -0
  66. package/dist/src/models/webhook-schemas.d.ts.map +1 -0
  67. package/dist/src/models/webhook-schemas.js +137 -0
  68. package/dist/src/models/webhook-schemas.js.map +1 -0
  69. package/dist/src/routes/admin-agent-integration.d.ts +24 -0
  70. package/dist/src/routes/admin-agent-integration.d.ts.map +1 -0
  71. package/dist/src/routes/admin-agent-integration.js +186 -0
  72. package/dist/src/routes/admin-agent-integration.js.map +1 -0
  73. package/dist/src/routes/admin-monitoring.js +12 -7
  74. package/dist/src/routes/admin-monitoring.js.map +1 -1
  75. package/dist/src/routes/agent-activity.d.ts.map +1 -1
  76. package/dist/src/routes/agent-activity.js +17 -0
  77. package/dist/src/routes/agent-activity.js.map +1 -1
  78. package/dist/src/routes/agent-capabilities.d.ts +1 -0
  79. package/dist/src/routes/agent-capabilities.d.ts.map +1 -1
  80. package/dist/src/routes/agent-capabilities.js +9 -0
  81. package/dist/src/routes/agent-capabilities.js.map +1 -1
  82. package/dist/src/routes/agent-directives.d.ts +5 -1
  83. package/dist/src/routes/agent-directives.d.ts.map +1 -1
  84. package/dist/src/routes/agent-directives.js +74 -20
  85. package/dist/src/routes/agent-directives.js.map +1 -1
  86. package/dist/src/routes/agent-integration.d.ts +1 -0
  87. package/dist/src/routes/agent-integration.d.ts.map +1 -1
  88. package/dist/src/routes/agent-integration.js +128 -11
  89. package/dist/src/routes/agent-integration.js.map +1 -1
  90. package/dist/src/routes/agent-messages.d.ts +5 -1
  91. package/dist/src/routes/agent-messages.d.ts.map +1 -1
  92. package/dist/src/routes/agent-messages.js +20 -1
  93. package/dist/src/routes/agent-messages.js.map +1 -1
  94. package/dist/src/routes/agent-onboarding.d.ts +23 -0
  95. package/dist/src/routes/agent-onboarding.d.ts.map +1 -0
  96. package/dist/src/routes/agent-onboarding.js +374 -0
  97. package/dist/src/routes/agent-onboarding.js.map +1 -0
  98. package/dist/src/routes/agent-skill-bundle.d.ts +16 -0
  99. package/dist/src/routes/agent-skill-bundle.d.ts.map +1 -0
  100. package/dist/src/routes/agent-skill-bundle.js +133 -0
  101. package/dist/src/routes/agent-skill-bundle.js.map +1 -0
  102. package/dist/src/routes/agent-tasks.d.ts +8 -1
  103. package/dist/src/routes/agent-tasks.d.ts.map +1 -1
  104. package/dist/src/routes/agent-tasks.js +192 -14
  105. package/dist/src/routes/agent-tasks.js.map +1 -1
  106. package/dist/src/routes/agent-telemetry.d.ts +15 -0
  107. package/dist/src/routes/agent-telemetry.d.ts.map +1 -0
  108. package/dist/src/routes/agent-telemetry.js +99 -0
  109. package/dist/src/routes/agent-telemetry.js.map +1 -0
  110. package/dist/src/routes/agent-webhook.d.ts +18 -0
  111. package/dist/src/routes/agent-webhook.d.ts.map +1 -0
  112. package/dist/src/routes/agent-webhook.js +243 -0
  113. package/dist/src/routes/agent-webhook.js.map +1 -0
  114. package/dist/src/routes/agents.d.ts.map +1 -1
  115. package/dist/src/routes/agents.js +203 -4
  116. package/dist/src/routes/agents.js.map +1 -1
  117. package/dist/src/routes/auth.d.ts.map +1 -1
  118. package/dist/src/routes/auth.js +45 -2
  119. package/dist/src/routes/auth.js.map +1 -1
  120. package/dist/src/routes/federation-auth.d.ts.map +1 -1
  121. package/dist/src/routes/federation-auth.js +3 -1
  122. package/dist/src/routes/federation-auth.js.map +1 -1
  123. package/dist/src/routes/federation-peer.d.ts.map +1 -1
  124. package/dist/src/routes/federation-peer.js +11 -2
  125. package/dist/src/routes/federation-peer.js.map +1 -1
  126. package/dist/src/routes/federation-sync.d.ts +1 -0
  127. package/dist/src/routes/federation-sync.d.ts.map +1 -1
  128. package/dist/src/routes/federation-sync.js +29 -0
  129. package/dist/src/routes/federation-sync.js.map +1 -1
  130. package/dist/src/routes/ghii.d.ts.map +1 -1
  131. package/dist/src/routes/ghii.js +42 -5
  132. package/dist/src/routes/ghii.js.map +1 -1
  133. package/dist/src/routes/knowledge.d.ts.map +1 -1
  134. package/dist/src/routes/knowledge.js +19 -7
  135. package/dist/src/routes/knowledge.js.map +1 -1
  136. package/dist/src/routes/memory.d.ts +9 -0
  137. package/dist/src/routes/memory.d.ts.map +1 -1
  138. package/dist/src/routes/memory.js +307 -12
  139. package/dist/src/routes/memory.js.map +1 -1
  140. package/dist/src/routes/portal.d.ts.map +1 -1
  141. package/dist/src/routes/portal.js +1 -0
  142. package/dist/src/routes/portal.js.map +1 -1
  143. package/dist/src/routes/prompts.d.ts +1 -0
  144. package/dist/src/routes/prompts.d.ts.map +1 -1
  145. package/dist/src/routes/prompts.js +40 -1
  146. package/dist/src/routes/prompts.js.map +1 -1
  147. package/dist/src/routes/sharing-groups.d.ts.map +1 -1
  148. package/dist/src/routes/sharing-groups.js +8 -2
  149. package/dist/src/routes/sharing-groups.js.map +1 -1
  150. package/dist/src/routes/wallet.d.ts.map +1 -1
  151. package/dist/src/routes/wallet.js +2 -0
  152. package/dist/src/routes/wallet.js.map +1 -1
  153. package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
  154. package/dist/src/server-bootstrap/routes-loader.js +47 -3
  155. package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
  156. package/dist/src/services/config-schema.d.ts.map +1 -1
  157. package/dist/src/services/config-schema.js +2 -1
  158. package/dist/src/services/config-schema.js.map +1 -1
  159. package/dist/src/services/core-jobs.d.ts.map +1 -1
  160. package/dist/src/services/core-jobs.js +3 -2
  161. package/dist/src/services/core-jobs.js.map +1 -1
  162. package/dist/src/services/federation-helpers.d.ts +1 -0
  163. package/dist/src/services/federation-helpers.d.ts.map +1 -1
  164. package/dist/src/services/federation-helpers.js +1 -1
  165. package/dist/src/services/federation-helpers.js.map +1 -1
  166. package/dist/src/services/generator-autopilot.d.ts.map +1 -1
  167. package/dist/src/services/generator-autopilot.js +125 -26
  168. package/dist/src/services/generator-autopilot.js.map +1 -1
  169. package/dist/src/services/generator-prompts/index.d.ts +1 -1
  170. package/dist/src/services/generator-prompts/index.d.ts.map +1 -1
  171. package/dist/src/services/generator-prompts/index.js +1 -1
  172. package/dist/src/services/generator-prompts/index.js.map +1 -1
  173. package/dist/src/services/generator-prompts/spec-validate.d.ts +1 -0
  174. package/dist/src/services/generator-prompts/spec-validate.d.ts.map +1 -1
  175. package/dist/src/services/generator-prompts/spec-validate.js +20 -0
  176. package/dist/src/services/generator-prompts/spec-validate.js.map +1 -1
  177. package/dist/src/services/generator-prompts/validate.d.ts +7 -1
  178. package/dist/src/services/generator-prompts/validate.d.ts.map +1 -1
  179. package/dist/src/services/generator-prompts/validate.js +70 -0
  180. package/dist/src/services/generator-prompts/validate.js.map +1 -1
  181. package/dist/src/services/onboarding-validator.d.ts +22 -0
  182. package/dist/src/services/onboarding-validator.d.ts.map +1 -0
  183. package/dist/src/services/onboarding-validator.js +202 -0
  184. package/dist/src/services/onboarding-validator.js.map +1 -0
  185. package/dist/src/services/platform-detector.d.ts +27 -0
  186. package/dist/src/services/platform-detector.d.ts.map +1 -0
  187. package/dist/src/services/platform-detector.js +73 -0
  188. package/dist/src/services/platform-detector.js.map +1 -0
  189. package/dist/src/services/prompt-defaults.d.ts +1 -0
  190. package/dist/src/services/prompt-defaults.d.ts.map +1 -1
  191. package/dist/src/services/prompt-defaults.js +875 -47
  192. package/dist/src/services/prompt-defaults.js.map +1 -1
  193. package/dist/src/services/prompt-seeder.js +1 -1
  194. package/dist/src/services/prompt-seeder.js.map +1 -1
  195. package/dist/src/services/readiness-scorer.d.ts +34 -0
  196. package/dist/src/services/readiness-scorer.d.ts.map +1 -0
  197. package/dist/src/services/readiness-scorer.js +87 -0
  198. package/dist/src/services/readiness-scorer.js.map +1 -0
  199. package/dist/src/services/skill-bundle/generator.d.ts +17 -0
  200. package/dist/src/services/skill-bundle/generator.d.ts.map +1 -0
  201. package/dist/src/services/skill-bundle/generator.js +387 -0
  202. package/dist/src/services/skill-bundle/generator.js.map +1 -0
  203. package/dist/src/services/skill-bundle/generic-adapter.d.ts +16 -0
  204. package/dist/src/services/skill-bundle/generic-adapter.d.ts.map +1 -0
  205. package/dist/src/services/skill-bundle/generic-adapter.js +96 -0
  206. package/dist/src/services/skill-bundle/generic-adapter.js.map +1 -0
  207. package/dist/src/services/skill-bundle/hermes-adapter.d.ts +25 -0
  208. package/dist/src/services/skill-bundle/hermes-adapter.d.ts.map +1 -0
  209. package/dist/src/services/skill-bundle/hermes-adapter.js +302 -0
  210. package/dist/src/services/skill-bundle/hermes-adapter.js.map +1 -0
  211. package/dist/src/services/skill-bundle/types.d.ts +54 -0
  212. package/dist/src/services/skill-bundle/types.d.ts.map +1 -0
  213. package/dist/src/services/skill-bundle/types.js +8 -0
  214. package/dist/src/services/skill-bundle/types.js.map +1 -0
  215. package/dist/src/services/task-stall-detector.d.ts +10 -2
  216. package/dist/src/services/task-stall-detector.d.ts.map +1 -1
  217. package/dist/src/services/task-stall-detector.js +34 -5
  218. package/dist/src/services/task-stall-detector.js.map +1 -1
  219. package/dist/src/services/webhook-dispatcher.d.ts +71 -0
  220. package/dist/src/services/webhook-dispatcher.d.ts.map +1 -0
  221. package/dist/src/services/webhook-dispatcher.js +259 -0
  222. package/dist/src/services/webhook-dispatcher.js.map +1 -0
  223. package/dist/src/storage/interface.d.ts +82 -2
  224. package/dist/src/storage/interface.d.ts.map +1 -1
  225. package/dist/src/storage/providers/mongodb/index.d.ts +20 -1
  226. package/dist/src/storage/providers/mongodb/index.d.ts.map +1 -1
  227. package/dist/src/storage/providers/mongodb/index.js +254 -3
  228. package/dist/src/storage/providers/mongodb/index.js.map +1 -1
  229. package/dist/src/storage/providers/sqlite/index.d.ts +18 -1
  230. package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
  231. package/dist/src/storage/providers/sqlite/index.js +173 -4
  232. package/dist/src/storage/providers/sqlite/index.js.map +1 -1
  233. package/dist/src/storage/providers/sqlite/repos/agent-directives.d.ts.map +1 -1
  234. package/dist/src/storage/providers/sqlite/repos/agent-directives.js +8 -4
  235. package/dist/src/storage/providers/sqlite/repos/agent-directives.js.map +1 -1
  236. package/dist/src/storage/providers/sqlite/repos/agent.d.ts.map +1 -1
  237. package/dist/src/storage/providers/sqlite/repos/agent.js +25 -4
  238. package/dist/src/storage/providers/sqlite/repos/agent.js.map +1 -1
  239. package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
  240. package/dist/src/storage/providers/sqlite/schema.js +73 -1
  241. package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
  242. package/dist/src/storage/repositories/agent-onboarding.repository.d.ts +16 -0
  243. package/dist/src/storage/repositories/agent-onboarding.repository.d.ts.map +1 -0
  244. package/dist/src/storage/repositories/agent-onboarding.repository.js +8 -0
  245. package/dist/src/storage/repositories/agent-onboarding.repository.js.map +1 -0
  246. package/dist/src/storage/repositories/agent-webhook.repository.d.ts +21 -0
  247. package/dist/src/storage/repositories/agent-webhook.repository.d.ts.map +1 -0
  248. package/dist/src/storage/repositories/agent-webhook.repository.js +2 -0
  249. package/dist/src/storage/repositories/agent-webhook.repository.js.map +1 -0
  250. package/dist/src/storage/repositories/agent.repository.d.ts +1 -0
  251. package/dist/src/storage/repositories/agent.repository.d.ts.map +1 -1
  252. package/dist/src/storage/repositories/index.d.ts +2 -0
  253. package/dist/src/storage/repositories/index.d.ts.map +1 -1
  254. package/dist/src/utils/env-config.d.ts.map +1 -1
  255. package/dist/src/utils/env-config.js +7 -1
  256. package/dist/src/utils/env-config.js.map +1 -1
  257. package/dist/src/utils/url-validator.d.ts.map +1 -1
  258. package/dist/src/utils/url-validator.js +3 -0
  259. package/dist/src/utils/url-validator.js.map +1 -1
  260. package/package.json +1 -1
  261. package/prisma/schema.prisma +67 -7
@@ -21,8 +21,8 @@ const log = { info: (m) => logger.info(m), warn: (m) => logger.warn(m), error: (
21
21
  // ── Clean TypeScript imports from src/services/generator-prompts/ ──
22
22
  // No browser imports, no pathToFileURL hacks, no dynamic import()
23
23
  import { buildPrompt, stripCodeblock, createBundle } from './generator-prompts/index.js';
24
- import { validateComponent } from './generator-prompts/validate.js';
25
- import { validateExtensionSpec, validateDataApiSpec, validateComponentSpec, validateAppDomainSpec, validateSpecAgainstProbe } from './generator-prompts/spec-validate.js';
24
+ import { validateComponent, verifyContract } from './generator-prompts/validate.js';
25
+ import { validateExtensionSpec, validateDataApiSpec, validateComponentSpec, validateAppDomainSpec, validateAppSpec, validateSpecAgainstProbe } from './generator-prompts/spec-validate.js';
26
26
  // In-memory map of running autopilots (one per project)
27
27
  const runningAutopilots = new Map();
28
28
  export function getAutopilotStatus(projectId) {
@@ -320,35 +320,64 @@ export async function runAutopilot(projectId, ownerGhii, ownerName, _jwt, config
320
320
  debug.writeArtifact(cid, 'spec', JSON.stringify(spec, null, 2)).catch(() => { });
321
321
  alog.info(`[${cid}] Spec generated: ${spec.name}`);
322
322
  // Validate spec structure — per component type
323
- if (compType === 'extension') {
324
- const sv = validateExtensionSpec(spec);
325
- if (!sv.valid) {
326
- alog.warn(`[${cid}] Spec validation issues: ${sv.errors.join('; ')}`);
323
+ const validateSpec = () => {
324
+ if (!spec)
325
+ return { valid: false, errors: ['Spec is null'] };
326
+ if (compType === 'extension') {
327
+ const sv = validateExtensionSpec(spec);
328
+ // Also check blueprint action coverage
329
+ const specActionIds = new Set((spec.actions || []).map(a => a.id));
330
+ const bpActions = Object.keys(blueprint.dataModel ? blueprint.dataModel.actions || {} : {})
331
+ .filter(k => k.startsWith('ext:'))
332
+ .map(k => k.replace('ext:', '').replace(/^[^/]+\//, ''));
333
+ const missingActions = bpActions.filter(a => !specActionIds.has(a));
334
+ if (missingActions.length > 0) {
335
+ sv.valid = false;
336
+ sv.errors.push(...missingActions.map(a => `Blueprint declares action "${a}" but it is missing from the spec`));
337
+ }
338
+ return sv;
327
339
  }
328
- // Validate spec has ALL blueprint actions
329
- const specActionIds = new Set((spec.actions || []).map(a => a.id));
330
- const bpActions = Object.keys(blueprint.dataModel ? blueprint.dataModel.actions || {} : {})
331
- .filter(k => k.startsWith('ext:'))
332
- .map(k => k.replace('ext:', '').replace(/^[^/]+\//, ''));
333
- const missingActions = bpActions.filter(a => !specActionIds.has(a));
334
- if (missingActions.length > 0) {
335
- alog.warn(`[${cid}] Spec missing blueprint actions: ${missingActions.join(', ')} — spec will be used but code validator will flag these`);
340
+ else if (compType === 'app') {
341
+ return validateAppSpec(spec);
336
342
  }
337
- }
338
- else if (compType === 'cortex') {
339
- const sub = bpComp?.subtype || '';
340
- const sv = sub === 'data' ? validateDataApiSpec(spec)
341
- : sub === 'component' ? validateComponentSpec(spec)
342
- : sub === 'app-domain' ? validateAppDomainSpec(spec)
343
- : { valid: true, errors: [] };
344
- if (!sv.valid) {
345
- alog.warn(`[${cid}] Spec validation issues: ${sv.errors.join('; ')}`);
346
- // If name is non-ASCII, reject the spec entirely — it will break registration and tests
347
- if (sv.errors.some(e => e.includes('ASCII'))) {
348
- alog.error(`[${cid}] Spec has non-ASCII name — rejecting. Will retry without spec.`);
343
+ else if (compType === 'cortex') {
344
+ const sub = bpComp?.subtype || '';
345
+ return sub === 'data' ? validateDataApiSpec(spec)
346
+ : sub === 'component' ? validateComponentSpec(spec)
347
+ : sub === 'app-domain' ? validateAppDomainSpec(spec)
348
+ : { valid: true, errors: [] };
349
+ }
350
+ return { valid: true, errors: [] };
351
+ };
352
+ let sv = validateSpec();
353
+ if (!sv.valid) {
354
+ alog.warn(`[${cid}] Spec validation failed: ${sv.errors.join('; ')} — retrying`);
355
+ // Retry: ask LLM to fix the spec
356
+ const specFixPrompt = 'Fix the following spec JSON. It has validation errors.\n\n'
357
+ + '## Errors\n' + sv.errors.map((e, i) => `${i + 1}. ${e}`).join('\n')
358
+ + '\n\n## Current Spec\n```json\n' + JSON.stringify(spec, null, 2) + '\n```\n\n'
359
+ + '## Rules\n- Fix ONLY the listed errors\n- Do NOT remove existing fields\n- Return ONLY the COMPLETE fixed JSON, no markdown fences';
360
+ const fixedRaw = await callLLM(specFixPrompt);
361
+ let fixedText = fixedRaw.trim();
362
+ const fixFence = fixedText.match(/```(?:json)?\s*\n([\s\S]*?)```/);
363
+ if (fixFence)
364
+ fixedText = fixFence[1].trim();
365
+ try {
366
+ spec = JSON.parse(fixedText);
367
+ sv = validateSpec();
368
+ if (sv.valid) {
369
+ alog.info(`[${cid}] Spec fix succeeded`);
370
+ debug.writeArtifact(cid, 'spec-fixed', JSON.stringify(spec, null, 2)).catch(() => { });
371
+ }
372
+ else {
373
+ alog.error(`[${cid}] Spec fix still invalid: ${sv.errors.join('; ')} — continuing without spec`);
349
374
  spec = null;
350
375
  }
351
376
  }
377
+ catch {
378
+ alog.error(`[${cid}] Spec fix JSON parse failed — continuing without spec`);
379
+ spec = null;
380
+ }
352
381
  }
353
382
  }
354
383
  catch {
@@ -455,6 +484,39 @@ export async function runAutopilot(projectId, ownerGhii, ownerName, _jwt, config
455
484
  entry.status.componentResults.push({ id: cid, label: compLabel, status: 'validation_failed', error: vr.errors[0] });
456
485
  break; // STOP — downstream components depend on this one
457
486
  }
487
+ // ── CONTRACT VERIFICATION ──
488
+ const bpCompForContract = (blueprint.components || [])
489
+ .find((c) => c.label === compLabel || c.id === cid);
490
+ if (bpCompForContract) {
491
+ const cr = verifyContract(compType, content, bpCompForContract, blueprint);
492
+ if (!cr.valid) {
493
+ alog.warn(`[${cid}] Contract mismatches: ${cr.mismatches.join('; ')}`);
494
+ // Attempt one fix round with contract errors
495
+ const contractFixPrompt = await buildPrompt(storage, 'gen-fix', {
496
+ blueprint: blueprint, interviewSpec: interviewSpec,
497
+ originalPrompt: prompt, code: content,
498
+ errors: cr.mismatches.map(m => `Contract: ${m}`),
499
+ componentType: compType,
500
+ });
501
+ let fixedContent = await callLLM(contractFixPrompt);
502
+ if (compType !== 'cortex')
503
+ fixedContent = stripCodeblock(fixedContent);
504
+ const fixVr = validateComponent(compType, fixedContent, blueprint);
505
+ if (fixVr.valid) {
506
+ const fixCr = verifyContract(compType, fixedContent, bpCompForContract, blueprint);
507
+ if (fixCr.valid) {
508
+ content = fixedContent;
509
+ alog.info(`[${cid}] Contract fix succeeded`);
510
+ }
511
+ else {
512
+ alog.warn(`[${cid}] Contract fix still has mismatches — proceeding with original: ${fixCr.mismatches.join('; ')}`);
513
+ }
514
+ }
515
+ else {
516
+ alog.warn(`[${cid}] Contract fix broke validation — proceeding with original`);
517
+ }
518
+ }
519
+ }
458
520
  // ── REGISTER ──
459
521
  alog.info(`[${cid}] Registering ${compLabel}`);
460
522
  comp = { ...comp, result: content, status: 'done', validationErrors: [] };
@@ -574,6 +636,43 @@ export async function runAutopilot(projectId, ownerGhii, ownerName, _jwt, config
574
636
  entry.status.componentResults.push({ id: cid, label: compLabel, status: 'registration_failed', error: regErr.message });
575
637
  break; // STOP — downstream components depend on this one
576
638
  }
639
+ // ── SMOKE TEST ──
640
+ if (['extension', 'cortex', 'app'].includes(compType) && comp.registeredAs) {
641
+ try {
642
+ if (compType === 'extension') {
643
+ const smokeResp = await internalFetch(config, `/v1/extensions/${encodeURIComponent(comp.registeredAs)}/activate`, jwt, { method: 'POST' });
644
+ if (!smokeResp.ok) {
645
+ alog.warn(`[${cid}] Smoke test failed: extension activation error (${smokeResp.status})`);
646
+ }
647
+ else {
648
+ alog.info(`[${cid}] Smoke test passed: extension activates`);
649
+ }
650
+ }
651
+ else if (compType === 'cortex') {
652
+ const libUrl = `/v1/cortex/${encodeURIComponent(comp.registeredAs)}/libs/${encodeURIComponent(comp.registeredAs)}.js`;
653
+ const smokeResp = await internalFetch(config, libUrl, jwt, { method: 'GET' });
654
+ if (!smokeResp.ok) {
655
+ alog.warn(`[${cid}] Smoke test failed: cortex lib not accessible (${smokeResp.status})`);
656
+ }
657
+ else {
658
+ alog.info(`[${cid}] Smoke test passed: cortex lib accessible`);
659
+ }
660
+ }
661
+ else if (compType === 'app') {
662
+ const appUrl = `/v1/apps/${encodeURIComponent(ownerGhii.split('@')[0])}/${encodeURIComponent(comp.registeredAs)}`;
663
+ const smokeResp = await internalFetch(config, appUrl, jwt, { method: 'GET' });
664
+ if (!smokeResp.ok) {
665
+ alog.warn(`[${cid}] Smoke test failed: app not accessible (${smokeResp.status})`);
666
+ }
667
+ else {
668
+ alog.info(`[${cid}] Smoke test passed: app accessible`);
669
+ }
670
+ }
671
+ }
672
+ catch (e) {
673
+ alog.warn(`[${cid}] Smoke test error: ${e.message}`);
674
+ }
675
+ }
577
676
  // ── ACTIVATE EXTENSION ──
578
677
  if (compType === 'extension' && comp.registeredAs) {
579
678
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"generator-autopilot.js","sourceRoot":"","sources":["../../../src/services/generator-autopilot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator-autopilot.js","sourceRoot":"","sources":["../../../src/services/generator-autopilot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAEhI,sEAAsE;AACtE,kEAAkE;AAClE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACzF,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAc3L,wDAAwD;AACxD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA4D,CAAC;AAE9F,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,OAAO,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,IAAI,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/C,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/C,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,SAAiB;IAClD,OAAO,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC;AACvE,CAAC;AAED,gDAAgD;AAEhD,KAAK,UAAU,aAAa,CAAC,MAAoB,EAAE,IAAY,EAAE,GAAW,EAAE,OAA4C,EAAE;IAC1H,MAAM,GAAG,GAAG,oBAAoB,MAAM,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC;IACrD,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,UAAU,GAAG,EAAE;KACjC,CAAC;IACF,MAAM,SAAS,GAAgB,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC;IACzE,IAAI,IAAI,CAAC,IAAI;QAAE,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE1D,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,IAA6B,CAAC;IAClC,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,GAAG,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,MAAM,IAAI,KAAK,IAAI,IAAI,yBAAyB,IAAI,CAAC,MAAM,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACvH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,sBAAsB,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC;IACxH,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,MAAM,IAAI,KAAK,IAAI,IAAI,MAAM,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAClI,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AAClF,CAAC;AAED,4BAA4B;AAE5B,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,SAAiB,EACjB,SAAiB,EACjB,SAAiB,EACjB,IAAY,EACZ,MAAoB,EACpB,OAAgB;IAEhB,2DAA2D;IAE3D,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IAED,mEAAmE;IACnE,8EAA8E;IAC9E,mFAAmF;IACnF,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC;QACzB,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,MAAM,CAAC,MAAM;QACnB,KAAK,EAAE,CAAC,OAAO,CAAC;QAChB,MAAM,EAAE,CAAC,GAAG,CAAC;KACd,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,UAAU;IAC3B,GAAG,CAAC,IAAI,CAAC,qCAAqC,SAAS,WAAW,CAAC,CAAC;IAEpE,oBAAoB;IACpB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,SAAS,UAAU,CAAC,CAAC;IACxF,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,UAAU,CAAC,KAAgC,CAAC;IAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,SAAgD,CAAC;IAC3E,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAE3E,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,aAAa,SAAS,iBAAiB,CAAC,CAAC;IACjG,MAAM,aAAa,GAAI,YAAY,EAAE,KAAiC,IAAI,IAAI,CAAC;IAE/E,MAAM,MAAM,GAAI,SAAS,CAAC,MAA6C,IAAI,EAAE,CAAC;IAC9E,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAE7D,2BAA2B;IAC3B,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAC9E,MAAM,KAAK,GAAI,WAAW,EAAE,KAAiC,IAAI,EAAE,CAAC;IACpE,MAAM,QAAQ,GAAI,KAAK,CAAC,QAAmB,IAAI,YAAY,CAAC;IAC5D,MAAM,OAAO,GAAI,KAAK,CAAC,OAAkB,IAAI,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC;IACrI,MAAM,KAAK,GAAI,KAAK,CAAC,KAAgB,IAAK,KAAK,CAAC,cAAyB,IAAI,2BAA2B,CAAC;IACzG,MAAM,WAAW,GAAI,KAAK,CAAC,WAAsB,IAAI,SAAS,CAAC;IAE/D,kBAAkB;IAClB,IAAI,MAA0B,CAAC;IAC/B,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC7E,MAAM,SAAS,GAAK,YAAY,EAAE,KAAiC,EAAE,SAAoB,IAAI,IAAI,CAAC;IAClG,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,MAAM;YAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,CAAC,MAAM,IAAI,QAAQ,KAAK,YAAY;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAE9F,oBAAoB;IACpB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG;QACZ,MAAM,EAAE;YACN,MAAM,EAAE,SAAkB;YAC1B,gBAAgB,EAAE,IAAqB;YACvC,QAAQ,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;YAC3E,gBAAgB,EAAE,EAA0E;YAC5F,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;SACf;QACD,UAAU,EAAE,KAAK;KAClB,CAAC;IACF,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAExC,MAAM,YAAY,GAAG,CAAC,KAA+B,EAAE,EAAE;QACvD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAC5E,mCAAmC;QACnC,OAAO,CAAC,SAAS,CAAC;YAChB,GAAG,EAAE,aAAa,SAAS,mBAAmB;YAC9C,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,KAAK,CAAC,MAAM;YACnB,UAAU,EAAE,OAAO;YACnB,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;YAChC,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;YACjC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;SAClC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACnB,UAAU,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,gDAAgD;IAChD,KAAK,UAAU,OAAO,CAAC,MAAc;QACnC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACpG,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,2CAA2C;IAC3C,KAAK,UAAU,cAAc;QAC3B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,aAAa,SAAS,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1H,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACrB,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAA4B,CAAC;YACrG,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG;gBAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,SAAS,aAAa,EAAE,EAAE,CAAC,CAAC;YACtF,IAAI,CAAC,GAAG,CAAC,KAAK;gBAAE,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC;YACnC,OAAO,EAAE,GAAG,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0BAA0B;IAC1B,KAAK,UAAU,QAAQ,CAAC,IAA6B;QACnD,MAAM,GAAG,GAAG,aAAa,SAAS,cAAc,IAAI,CAAC,EAAY,EAAE,CAAC;QACpE,MAAM,OAAO,GAAI,IAAI,CAAC,QAAmB,IAAI,CAAC,CAAC;QAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC;YACH,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;gBAClB,MAAM,OAAO,CAAC,SAAS,CAAC;oBACtB,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO;oBAC3D,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI;oBAC5D,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACzE,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBACpD,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;gBACzH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,EAAY,gBAAiB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACzF,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACzH,CAAC;QACH,CAAC;QACD,UAAU,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IAED,8BAA8B;IAC9B,MAAM,KAAK,GAAG,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAElD,uEAAuE;IACvE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnG,IAAI,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnG,KAAK,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACtG,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,cAAc,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;KACxG,CAAC;IAEF,kCAAkC;IAClC,KAAK,CAAC,gBAAgB,CACpB,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,EACnE,aAAa,EACb,SAAS,CACV,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAElB,kBAAkB;IAClB,IAAI,CAAC;QACH,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,KAAK,CAAC,UAAU;gBAAE,MAAM;YAE5B,MAAM,KAAK,GAAG,MAAM,cAAc,EAAE,CAAC;YACrC,iEAAiE;YACjE,MAAM,OAAO,GAAI,SAAS,CAAC,UAA6C,IAAI,EAAE,CAAC;YAC/E,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;gBACvB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;oBAChB,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;oBACtE,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC;wBACjB,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;wBACzB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,0CAA0C,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;wBAC7E,oCAAoC;wBACpC,MAAM,GAAG,GAAG,aAAa,SAAS,cAAc,EAAE,CAAC,EAAY,EAAE,CAAC;wBAClE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;wBACpD,IAAI,GAAG,EAAE,CAAC;4BACR,MAAM,GAAG,GAAG,GAAG,CAAC,KAAgC,CAAC;4BACjD,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;4BAC1B,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBACxI,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;YACzC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC/B,kDAAkD;gBAClD,IAAI,IAAI,EAAE,YAAY,EAAE,CAAC;oBACvB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;oBAClC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAG,IAAI,EAAE,KAAgB,IAAI,GAAG,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBACvH,CAAC;gBACD,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAI,IAAI,CAAC,KAAgB,IAAI,GAAG,CAAC;YAChD,MAAM,QAAQ,GAAI,IAAI,CAAC,IAAe,IAAI,SAAS,CAAC;YAEpD,uDAAuD;YACvD,oEAAoE;YACpE,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,4CAA4C;YAC3H,gDAAgD;YAChD,MAAM,uBAAuB,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YACpE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,iBAAiB,QAAQ,sCAAsC,CAAC,CAAC;gBAClF,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;gBACzF,MAAM;YACR,CAAC;YAED,sBAAsB;YACtB,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBAC1B,MAAM,GAAG,GAAG,CAAE,SAAS,CAAC,UAA6C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBACzI,MAAM,GAAG,GAAI,GAAG,EAAE,OAAkB,IAAI,EAAE,CAAC;gBAC3C,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,GAAG,kDAAkD,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACvI,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;oBACzF,MAAM;gBACR,CAAC;YACH,CAAC;YAED,YAAY,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,iBAAiB,SAAS,KAAK,QAAQ,GAAG,CAAC,CAAC;YAE7D,IAAI,CAAC;gBACH,wBAAwB;gBACxB,MAAM,SAAS,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACjD,IAAI,IAAI,GAAmC,IAAI,CAAC;gBAEhD,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACjC,MAAM,MAAM,GAAG,CAAE,SAAS,CAAC,UAA6C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;oBAC5I,IAAI,MAAM,EAAE,CAAC;wBACX,IAAI,UAAU,GAAkB,IAAI,CAAC;wBAErC,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;4BAC7B,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,oBAAoB,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,aAAa,EAAkC,CAAC,CAAC;wBAC1J,CAAC;6BAAM,IAAK,MAAM,CAAC,OAAkB,KAAK,MAAM,EAAE,CAAC;4BACjD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;4BAClE,IAAI,OAAO,EAAE,IAAI;gCAAE,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,CAAC,IAA+B,EAAkC,CAAC,CAAC;wBACzL,CAAC;6BAAM,IAAK,MAAM,CAAC,OAAkB,KAAK,WAAW,IAAK,MAAM,CAAC,EAAa,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;4BACzG,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAE,CAAC,CAAC,OAAkB,KAAK,MAAM,CAAC,CAAC,CAAC;4BACxG,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;gCACrB,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,IAAK,CAA6B,CAAC,aAAa,CAAC;qCAChH,OAAO,CAAC,CAAC,CAAC,EAAE,CAAG,CAA6B,CAAC,aAAyC,EAAE,IAAgB,IAAI,EAAE,CAAC,CAAC;gCACnH,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,oBAAoB,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,CAAC,IAA+B,EAAE,cAAc,EAAE,SAAS,EAAE,eAAe,EAAkC,CAAC,CAAC;4BACpN,CAAC;wBACH,CAAC;6BAAM,IAAK,MAAM,CAAC,OAAkB,KAAK,YAAY,EAAE,CAAC;4BACvD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAE,CAAC,CAAC,OAAkB,KAAK,MAAM,CAAC,CAAC,CAAC;4BACxG,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAE,CAAC,CAAC,OAAkB,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;4BAC7G,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,IAAK,CAA6B,CAAC,aAAa,CAAC;iCAChH,OAAO,CAAC,CAAC,CAAC,EAAE,CAAG,CAA6B,CAAC,aAAyC,EAAE,IAAgB,IAAI,EAAE,CAAC,CAAC;4BACnH,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;gCACrB,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,qBAAqB,EAAE;oCAC7D,SAAS,EAAE,cAAc,EAAE,cAAgD;oCAC3E,WAAW,EAAE,UAAU,CAAC,IAA+B;oCACvD,QAAQ,EAAE,aAAa,EAAE,QAAqB,EAAE,eAAe;oCAC/D,KAAK,EAAE,aAAa,EAAE,KAAkB;iCACT,CAAC,CAAC;4BACrC,CAAC;wBACH,CAAC;6BAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;4BAC9B,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAE,CAAC,CAAC,OAAkB,KAAK,YAAY,CAAC,CAAC,CAAC;4BACjH,IAAI,aAAa,EAAE,CAAC;gCAClB,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;gCAC7E,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE;oCACtD,SAAS,EAAE,cAAc,EAAE,SAAS;oCACpC,kBAAkB,EAAE,OAAO,CAAC,WAAqB;oCACjD,mBAAmB,EAAE,WAA0C;iCAChC,CAAC,CAAC;4BACrC,CAAC;wBACH,CAAC;wBAED,IAAI,UAAU,EAAE,CAAC;4BACf,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,yBAAyB,SAAS,EAAE,CAAC,CAAC;4BACvD,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BACpE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;4BAC1C,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BACvE,IAAI,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;4BAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;4BACpE,IAAI,UAAU;gCAAE,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;4BAEhD,IAAI,CAAC;gCACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAA4B,CAAC;gCACvD,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCAChF,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,qBAAsB,IAAgC,CAAC,IAAc,EAAE,CAAC,CAAC;gCAE1F,+CAA+C;gCAC/C,MAAM,YAAY,GAAG,GAAyC,EAAE;oCAC9D,IAAI,CAAC,IAAI;wCAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC;oCAC7D,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;wCAC7B,MAAM,EAAE,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;wCACvC,uCAAuC;wCACvC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAE,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAoC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAY,CAAC,CAAC,CAAC;wCACjH,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAE,SAAqC,CAAC,SAAS,CAAC,CAAC,CAAG,SAAqC,CAAC,SAAqC,CAAC,OAAkC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;6CAC1M,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;6CACjC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;wCAC3D,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wCACpE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4CAC9B,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;4CACjB,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,8BAA8B,CAAC,mCAAmC,CAAC,CAAC,CAAC;wCACjH,CAAC;wCACD,OAAO,EAAE,CAAC;oCACZ,CAAC;yCAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;wCAC9B,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;oCAC/B,CAAC;yCAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;wCACjC,MAAM,GAAG,GAAI,MAAM,EAAE,OAAkB,IAAI,EAAE,CAAC;wCAC9C,OAAO,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC;4CAC/C,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC;gDACnD,CAAC,CAAC,GAAG,KAAK,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC;oDACpD,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAc,EAAE,CAAC;oCAC9C,CAAC;oCACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;gCACrC,CAAC,CAAC;gCAEF,IAAI,EAAE,GAAG,YAAY,EAAE,CAAC;gCACxB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;oCACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,6BAA6B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oCACjF,iCAAiC;oCACjC,MAAM,aAAa,GAAG,4DAA4D;0CAC9E,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;0CACpE,gCAAgC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,WAAW;0CAC9E,oIAAoI,CAAC;oCACzI,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;oCAC9C,IAAI,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;oCAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;oCACnE,IAAI,QAAQ;wCAAE,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oCAC7C,IAAI,CAAC;wCACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAA4B,CAAC;wCACxD,EAAE,GAAG,YAAY,EAAE,CAAC;wCACpB,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;4CACb,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC,CAAC;4CACzC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wCACxF,CAAC;6CAAM,CAAC;4CACN,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,6BAA6B,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;4CACjG,IAAI,GAAG,IAAI,CAAC;wCACd,CAAC;oCACH,CAAC;oCAAC,MAAM,CAAC;wCACP,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,wDAAwD,CAAC,CAAC;wCAC5E,IAAI,GAAG,IAAI,CAAC;oCACd,CAAC;gCACH,CAAC;4BACH,CAAC;4BAAC,MAAM,CAAC;gCACP,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,oDAAoD,CAAC,CAAC;gCACvE,IAAI,GAAG,IAAI,CAAC;4BACd,CAAC;4BAED,IAAI,IAAI,EAAE,CAAC;gCACT,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;gCACzB,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;gCACrB,0BAA0B;gCAC1B,MAAM,OAAO,CAAC,SAAS,CAAC;oCACtB,GAAG,EAAE,aAAa,SAAS,SAAS,GAAG,EAAE;oCACzC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO;oCACtD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI;oCACvD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iCACzE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BACrB,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,UAAU;oBAAE,MAAM;gBAE5B,wBAAwB;gBACxB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,8BAA8B,SAAS,EAAE,CAAC,CAAC;gBAC5D,MAAM,UAAU,GAAG,MAAM,cAAc,EAAE,CAAC;gBAC1C,oGAAoG;gBACpG,MAAM,YAAY,GAAI,SAAS,CAAC,UAA6C,IAAI,EAAE,CAAC;gBACpF,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;oBAC5B,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;wBAChB,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;wBAC3E,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC;4BACjB,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;4BACzB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,4EAA4E,GAAG,CAAC,OAAO,6CAA6C,CAAC,CAAC;wBAC3J,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,MAAM,mBAAmB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;gBAC1F,qDAAqD;gBACrD,MAAM,WAAW,GAA2B;oBAC1C,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,iBAAiB;oBACpE,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,SAAS;iBAChD,CAAC;gBACF,IAAI,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACrC,kBAAkB;gBAClB,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAC1B,MAAM,GAAG,GAAI,SAAS,CAAC,UAA6C,EAAE,IAAI,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;oBAClI,MAAM,GAAG,GAAI,GAAG,EAAE,OAAkB,IAAI,EAAE,CAAC;oBAC3C,IAAI,GAAG,KAAK,MAAM;wBAAE,QAAQ,GAAG,iBAAiB,CAAC;yBAC5C,IAAI,GAAG,KAAK,WAAW,IAAK,GAAG,EAAE,EAAa,EAAE,UAAU,CAAC,YAAY,CAAC;wBAAE,QAAQ,GAAG,sBAAsB,CAAC;yBAC5G,IAAI,GAAG,KAAK,YAAY;wBAAE,QAAQ,GAAG,uBAAuB,CAAC;;wBAC7D,QAAQ,GAAG,sBAAsB,CAAC,CAAC,UAAU;gBACpD,CAAC;gBACD,IAAI,CAAC,QAAQ;oBAAE,QAAQ,GAAG,oBAAoB,CAAC,CAAC,WAAW;gBAE3D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE;oBAClD,SAAS,EAAE,SAAiC;oBAC5C,aAAa,EAAE,aAAyC;oBACxD,cAAc,EAAE,SAAS;oBACzB,aAAa,EAAE,QAAQ;oBACvB,mBAAmB,EAAE,mBAAkD;oBACvE,QAAQ,EAAE,IAAI,CAAC,IAA2C;oBAC1D,kBAAkB,EAAE,OAAO,CAAC,WAAqB;oBACjD,kBAAkB,EAAE,CAAE,SAAS,CAAC,UAA6C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAyB;oBACxK,aAAa,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAE,CAA6B,CAAC,IAAI,KAAK,WAAW,IAAK,CAA6B,CAAC,IAAI,CAAC,EAAE,IAA2C;oBACrL,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAE,CAA6B,CAAC,OAAO,KAAK,MAAM,IAAK,CAA6B,CAAC,IAAI,CAAC,EAAE,IAA2C;oBACjL,eAAe,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAE,CAA6B,CAAC,IAAI,KAAK,aAAa,IAAM,CAA6B,CAAC,aAAyC,EAAE,IAAI,CAAC;yBACvL,OAAO,CAAC,CAAC,CAAC,EAAE,CAAI,CAA6B,CAAC,aAAyC,EAAE,IAAiB,IAAI,EAAE,CAAC;iBACrF,CAAC,CAAC;gBAEnC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,4BAA4B,SAAS,aAAc,MAAiB,CAAC,MAAM,SAAS,CAAC,CAAC;gBACvG,KAAK,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAClE,IAAI,OAAO,GAAG,MAAM,OAAO,CAAC,MAAgB,CAAC,CAAC;gBAC9C,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACrE,+FAA+F;gBAC/F,qFAAqF;gBACrF,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAC1B,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;gBACpC,CAAC;gBACD,KAAK,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAE5D,iBAAiB;gBACjB,IAAI,EAAE,GAAG,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAiC,CAAC,CAAC;gBAEjF,mCAAmC;gBACnC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;oBACd,MAAM,UAAU,GAAG,CAAC,CAAC;oBACrB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;wBACzF,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,OAAO,IAAI,UAAU,QAAQ,SAAS,EAAE,CAAC,CAAC;wBACtE,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,SAAiC,EAAE,aAAa,EAAE,aAAyC,EAAE,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAkC,CAAC,CAAC;wBACvR,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,kBAAkB,OAAO,SAAS,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBACxF,OAAO,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;wBACnC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,kBAAkB,OAAO,WAAW,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBACxF,IAAI,QAAQ,KAAK,QAAQ;4BAAE,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;wBAC7D,EAAE,GAAG,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAiC,CAAC,CAAC;oBAC/E,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;oBACd,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,2BAA2B,SAAS,yBAAyB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC/F,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC;oBACnF,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACrB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAC/B,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACpH,MAAM,CAAC,kDAAkD;gBAC3D,CAAC;gBAED,8BAA8B;gBAC9B,MAAM,iBAAiB,GAAG,CAAE,SAAS,CAAC,UAA6C,IAAI,EAAE,CAAC;qBACvF,IAAI,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;gBAC/E,IAAI,iBAAiB,EAAE,CAAC;oBACtB,MAAM,EAAE,GAAG,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,iBAAyF,EAAE,SAAwE,CAAC,CAAC;oBAClN,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;wBACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBACvE,6CAA6C;wBAC7C,MAAM,iBAAiB,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE;4BAC9D,SAAS,EAAE,SAAiC,EAAE,aAAa,EAAE,aAAyC;4BACtG,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;4BACrC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;4BAChD,aAAa,EAAE,QAAQ;yBACQ,CAAC,CAAC;wBACnC,IAAI,YAAY,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;wBACpD,IAAI,QAAQ,KAAK,QAAQ;4BAAE,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;wBACvE,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAiC,CAAC,CAAC;wBAC3F,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;4BAChB,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,iBAAyF,EAAE,SAAwE,CAAC,CAAC;4BAC1N,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gCAChB,OAAO,GAAG,YAAY,CAAC;gCACvB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC,CAAC;4BAC/C,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,mEAAmE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACrH,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,4DAA4D,CAAC,CAAC;wBACjF,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,iBAAiB;gBACjB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,iBAAiB,SAAS,EAAE,CAAC,CAAC;gBAC/C,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;gBAC1E,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAErB,oFAAoF;gBACpF,IAAI,CAAC;oBACH,uBAAuB;oBACvB,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,eAAe,GAAG,SAAS,EAAE,GAAG,EAAE;wBACzG,MAAM,EAAE,MAAM;wBACd,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;qBAClC,CAAC,CAAC;oBACH,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;wBACnB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,oBAAoB,UAAU,CAAC,MAAM,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBAChG,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACxE,CAAC;oBAED,wEAAwE;oBACxE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC1D,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,mCAAmC,QAAQ,KAAK,CAAC,CAAC;wBACnE,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,eAAe,GAAG,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;wBAC9H,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;4BAChB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,wBAAwB,OAAO,CAAC,MAAM,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;4BAC/F,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBAC3E,CAAC;wBACD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,8BAA8B,QAAQ,EAAE,CAAC,CAAC;oBAC7D,CAAC;oBAED,0CAA0C;oBAC1C,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBAC1B,MAAM,SAAS,GAAG,EAAE,CAAC,SAA8F,CAAC;wBACpH,IAAI,SAAS,EAAE,QAAQ,EAAE,CAAC;4BACxB,MAAM,IAAI,GAA2B,EAAE,CAAC;4BACxC,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;gCACzC,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI;oCAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;4BAC9D,CAAC;4BACD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE;gCAChE,MAAM,EAAE,MAAM;gCACd,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;6BAC1F,CAAC,CAAC;4BACH,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;gCACnB,kCAAkC;gCAClC,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gCACpE,IAAI,SAAS,EAAE,CAAC;oCACd,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCAClI,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACzH,MAAM,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE;wCAC7C,MAAM,EAAE,MAAM;wCACd,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;qCAC1F,CAAC,CAAC;gCACL,CAAC;4BACH,CAAC;4BACD,WAAW;4BACX,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;4BACpE,IAAI,IAAI,EAAE,CAAC;gCACT,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCAC1H,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;4BAC1G,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,mDAAmD;oBACnD,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;wBACxD,iEAAiE;wBACjE,MAAM,WAAW,GAAI,SAAqC,CAAC,YAAsB,CAAC;wBAClF,IAAI,CAAC,WAAW,EAAE,CAAC;4BACjB,MAAM,IAAI,KAAK,CAAC,gHAAgH,CAAC,CAAC;wBACpI,CAAC;wBAED,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,kBAAkB,WAAW,iCAAiC,CAAC,CAAC;wBAEjF,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BAC1B,MAAM,QAAQ,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;4BACjF,MAAM,OAAO,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;4BAC/E,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;4BACrC,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gCACtD,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,WAAW,IAAI,MAAM,EAAE,CAAC;gCACvF,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,kBAAkB,MAAM,kBAAkB,GAAG,aAAa,SAAS,GAAG,CAAC,CAAC;gCACzF,MAAM,OAAO,CAAC,SAAS,CAAC;oCACtB,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ;oCACtD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI;oCACzD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iCACzE,CAAC,CAAC;4BACL,CAAC;4BACD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,aAAa,OAAO,CAAC,MAAM,6BAA6B,WAAW,GAAG,CAAC,CAAC;4BACzF,KAAK,CAAC,sBAAsB,CAAC,GAAG,EAAE,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,WAAW,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBAC9H,CAAC;wBAED,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;4BAC/B,MAAM,QAAQ,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;4BACjF,MAAM,YAAY,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;4BACpF,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gCAC7D,IAAI,MAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;oCAC1C,MAAM,GAAG,GAAG,GAAG,WAAW,SAAS,MAAM,EAAE,CAAC;oCAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAiB,CAAC,CAAC,MAAM,CAAC;oCACvD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,MAAM,kBAAkB,GAAG,MAAM,QAAQ,iBAAiB,SAAS,GAAG,CAAC,CAAC;oCACnH,MAAM,OAAO,CAAC,SAAS,CAAC;wCACtB,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ;wCAC/D,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI;wCAC9D,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;qCACzE,CAAC,CAAC;gCACL,CAAC;4BACH,CAAC;4BACD,KAAK,CAAC,sBAAsB,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,WAAW,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBAC1J,CAAC;oBACH,CAAC;oBAED,iGAAiG;oBACjG,IAAI,OAAO,GAAG,IAAI,CAAC,YAAY,IAAI,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;oBAChF,IAAI,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,aAAa,CAAC,IAAI,OAAO,EAAE,CAAC;wBACrE,MAAM,IAAI,GAAI,SAAqC,CAAC,YAAsB,CAAC;wBAC3E,IAAI,CAAC,IAAI;4BAAE,MAAM,IAAI,KAAK,CAAC,2EAA2E,SAAS,EAAE,CAAC,CAAC;wBACnH,IAAI,CAAE,OAAkB,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC;4BAAE,OAAO,GAAG,GAAG,IAAI,IAAI,OAAiB,EAAE,CAAC;oBAC5F,CAAC;oBACD,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,OAAO,EAA+B,EAAE,EAAE,CAAC,EAAE,CAAC;oBAC5I,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACrB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,iBAAiB,SAAS,OAAO,OAAiB,EAAE,CAAC,CAAC;gBAEzE,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBAChB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,6BAA6B,SAAS,yBAA0B,MAAgB,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC9G,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAC/B,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAG,MAAgB,CAAC,OAAO,EAAE,CAAC,CAAC;oBACnI,MAAM,CAAC,kDAAkD;gBAC3D,CAAC;gBAED,mBAAmB;gBACnB,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBAC3E,IAAI,CAAC;wBACH,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;4BAC7B,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,kBAAkB,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;4BACrJ,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;gCAClB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,oDAAoD,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;4BAC5F,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0CAA0C,CAAC,CAAC;4BAC/D,CAAC;wBACH,CAAC;6BAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BACjC,MAAM,MAAM,GAAG,cAAc,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,SAAS,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,KAAK,CAAC;4BAC1I,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;4BAC9E,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;gCAClB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,mDAAmD,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;4BAC3F,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,4CAA4C,CAAC,CAAC;4BACjE,CAAC;wBACH,CAAC;6BAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;4BAC9B,MAAM,MAAM,GAAG,YAAY,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,EAAE,CAAC;4BAC5H,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;4BAC9E,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;gCAClB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,4CAA4C,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;4BACpF,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,qCAAqC,CAAC,CAAC;4BAC1D,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,uBAAwB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;oBAClE,CAAC;gBACH,CAAC;gBAED,2BAA2B;gBAC3B,IAAI,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClD,IAAI,CAAC;wBACH,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,mBAAmB,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;wBACrJ,MAAM,aAAa,CAAC,MAAM,EAAE,kBAAkB,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;wBACnI,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,IAAI,CAAC,YAAsB,EAAE,CAAC,CAAC;oBAC5E,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,kCAAmC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC7E,CAAC;oBAED,cAAc;oBACd,IAAI,CAAC;wBACH,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,kBAAkB,EAAE,GAAG,EAAE;4BAC/F,MAAM,EAAE,MAAM;4BACd,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,mBAAmB,CAAC,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE;yBACrG,CAAC,CAAC;wBACH,MAAM,YAAY,GAAK,SAAS,CAAC,IAAgC,EAAE,OAAqB,IAAI,EAAE,CAAC;wBAC/F,MAAM,aAAa,GAAG,YAAY,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAsB,EAA+B,EAAE,YAAwC,CAAC,CAAC;wBAClK,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC;wBAChD,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;wBACrB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,uBAAuB,YAAY,CAAC,MAAM,UAAU,CAAC,CAAC;wBAEvE,4EAA4E;wBAC5E,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAE,CAA6B,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;wBACjH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,KAAK,YAAY,CAAC,MAAM,EAAE,CAAC;4BACtE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,YAAY,CAAC,MAAM,4DAA4D,CAAC,CAAC;4BAC5G,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;4BAC/B,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,OAAO,YAAY,CAAC,MAAM,0BAA0B,EAAE,CAAC,CAAC;4BAC3J,MAAM,CAAC,sDAAsD;wBAC/D,CAAC;wBAED,2BAA2B;wBAC3B,IAAI,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACzC,MAAM,EAAE,GAAG,wBAAwB,CAAC,IAAI,CAAC,IAA+B,EAAE,YAAwC,CAAC,CAAC;4BACpH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;gCACd,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,6BAA8B,EAAE,CAAC,UAAuC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BAC9H,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,6BAA8B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;oBACxE,CAAC;gBACH,CAAC;gBAED,wBAAwB;gBACxB,IAAI,QAAQ,KAAK,QAAQ,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBAC/C,8CAA8C;gBAChD,CAAC;gBAED,aAAa;gBACb,IAAI,UAAU,GAAG,IAAI,CAAC,CAAC,2CAA2C;gBAClE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBAC3E,IAAI,CAAC;wBACH,IAAI,cAAsB,CAAC;wBAC3B,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BAC1B,wCAAwC;4BACxC,MAAM,iBAAiB,GAAG,MAAM,cAAc,EAAE,CAAC;4BACjD,qCAAqC;4BACrC,MAAM,cAAc,GAAI,SAAS,CAAC,UAA6C,IAAI,EAAE,CAAC;4BACtF,KAAK,MAAM,EAAE,IAAI,iBAAiB,EAAE,CAAC;gCACnC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;oCAChB,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;oCAC7E,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC;wCACjB,EAAE,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;wCACzB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,4EAA4E,GAAG,CAAC,OAAO,6CAA6C,CAAC,CAAC;oCAC3J,CAAC;gCACH,CAAC;4BACH,CAAC;4BACD,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAA0B,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;4BACvF,MAAM,aAAa,GAAI,GAAG,EAAE,OAAkB,IAAK,IAAI,CAAC,OAAkB,IAAI,MAAM,CAAC;4BACrF,MAAM,YAAY,GAAG,aAAa,KAAK,WAAW,CAAC,CAAC,CAAC,2BAA2B;gCAC9E,CAAC,CAAC,aAAa,KAAK,YAAY,CAAC,CAAC,CAAC,4BAA4B;oCAC/D,CAAC,CAAC,sBAAsB,CAAC,CAAC,cAAc;4BAC1C,cAAc,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,YAAY,EAAE;gCACxD,SAAS,EAAE,SAAiC,EAAE,aAAa,EAAE,aAAyC;gCACtG,QAAQ,EAAE,IAAI,CAAC,IAA2C;gCAC1D,cAAc,EAAE,SAAS;gCACzB,aAAa,EAAE,QAAQ;gCACvB,mBAAmB,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAgC;6BAClE,CAAC,CAAC;wBACrC,CAAC;6BAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;4BAC9B,0EAA0E;4BAC1E,MAAM,gBAAgB,GAAG,MAAM,cAAc,EAAE,CAAC;4BAChD,cAAc,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,cAAc,EAAE;gCAC1D,SAAS,EAAE,SAAiC,EAAE,aAAa,EAAE,aAAyC;gCACtG,QAAQ,EAAE,IAAI,CAAC,IAA2C;gCAC1D,cAAc,EAAE,SAAS;gCACzB,aAAa,EAAE,QAAQ;gCACvB,mBAAmB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAgC;6BACjE,CAAC,CAAC;wBACrC,CAAC;6BAAM,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;4BACjD,cAAc,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,yBAAyB,EAAE;gCACrE,SAAS,EAAE,SAAiC,EAAE,aAAa,EAAE,aAAyC;gCACtG,QAAQ,EAAE,IAAI,CAAC,IAA+B,EAAE,aAAa,EAAE,IAAI,CAAC,YAAsB;gCAC1F,mBAAmB,EAAE,CAAC,IAAI,CAAgC,EAAE,yDAAyD;6BACtF,CAAC,CAAC;wBACrC,CAAC;6BAAM,CAAC;4BACN,oCAAoC;4BACpC,cAAc,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,yBAAyB,EAAE;gCACrE,SAAS,EAAE,SAAiC,EAAE,aAAa,EAAE,aAAyC;gCACtG,QAAQ,EAAE,IAAI,CAAC,IAA+B;gCAC9C,aAAa,EAAE,IAAI,CAAC,YAAsB;gCAC1C,mBAAmB,EAAE,CAAC,IAAI,CAAgC;6BAC3B,CAAC,CAAC;wBACrC,CAAC;wBAED,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,yBAAyB,SAAS,EAAE,CAAC,CAAC;wBACvD,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBACxE,IAAI,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;wBAC7C,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wBACxE,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;wBAEpC,MAAM,eAAe,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;wBAC7F,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,SAAS,GAAG,EAAE,EAAE,GAAG,EAAE;4BAC1F,MAAM,EAAE,MAAM;4BACd,IAAI,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;yBACjD,CAAC,CAAC;wBACH,IAAI,UAAU,GAAI,QAAQ,CAAC,IAAgC,EAAE,MAAiC,CAAC;wBAC/F,IAAI,UAAU,EAAE,CAAC;4BACf,yFAAyF;4BACzF,6DAA6D;4BAC7D,MAAM,oBAAoB,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;4BAC/C,OAAQ,oBAAgD,CAAC,KAAK,CAAC;4BAC/D,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,oBAAoB,EAAE,CAAC;4BAC/D,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;4BACrB,MAAM,UAAU,GAAI,UAAU,CAAC,MAAmB,IAAI,EAAE,CAAC;4BACzD,MAAM,SAAS,GAAI,UAAU,CAAC,KAAuC,IAAI,EAAE,CAAC;4BAC5E,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gCACnC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC,CAAC;4BACtC,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,qBAAqB,UAAU,CAAC,MAAM,UAAU,CAAC,CAAC;gCACpE,KAAK,MAAM,CAAC,IAAI,UAAU;oCAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;4BAC9D,CAAC;4BACD,wBAAwB;4BACxB,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gCAC1B,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC;gCACrC,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;gCAC3E,IAAI,UAAU,EAAE,CAAC;oCACf,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oCACxH,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,SAAS,UAAU,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gCACpI,CAAC;qCAAM,CAAC;oCACN,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gCAC7G,CAAC;4BACH,CAAC;wBACH,CAAC;wBAED,mDAAmD;wBACnD,8DAA8D;wBAC9D,MAAM,gBAAgB,GAAG,CAAC,CAAC;wBAC3B,IAAI,YAAY,GAAG,CAAC,CAAC;wBACrB,MAAM,gBAAgB,GAAmC,EAAE,CAAC;wBAE5D,OAAO,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,YAAY,GAAG,gBAAgB,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;4BAC5G,YAAY,EAAE,CAAC;4BACf,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,8CAA8C,YAAY,IAAI,gBAAgB,EAAE,CAAC,CAAC;4BAEnG,kEAAkE;4BAClE,IAAI,mBAAmB,GAAG,EAAE,CAAC;4BAC7B,IAAI,CAAC;gCACH,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,gBAAgB,EAAE;oCACpE,SAAS,EAAE,SAAiC;oCAC5C,aAAa,EAAE,aAAyC;oCACxD,IAAI,EAAE,OAAO;oCACb,QAAQ,EAAE,IAAI,CAAC,IAA2C;oCAC1D,MAAM,EAAG,UAAU,CAAC,MAAmB,IAAI,EAAE;oCAC7C,WAAW,EAAE,UAAqC;iCACnB,CAAC,CAAC;gCACnC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,YAAY,YAAY,oBAAoB,EAAE,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCACzG,mBAAmB,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;gCACtD,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,YAAY,YAAY,sBAAsB,EAAE,mBAAmB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCAC9G,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,iBAAiB,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;4BACzE,CAAC;4BAAC,OAAO,CAAC,EAAE,CAAC;gCACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,wBAAyB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;4BACnE,CAAC;4BAED,gBAAgB,CAAC,IAAI,CAAC;gCACpB,KAAK,EAAE,YAAY;gCACnB,SAAS,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gCAC5C,MAAM,EAAG,UAAU,CAAC,MAAmB,IAAI,EAAE;6BAC9C,CAAC,CAAC;4BAEH,wEAAwE;4BACxE,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE;gCACtD,SAAS,EAAE,SAAiC;gCAC5C,aAAa,EAAE,aAAyC;gCACxD,cAAc,EAAE,MAAgB;gCAChC,IAAI,EAAE,OAAO;gCACb,MAAM,EAAG,UAAU,CAAC,MAAmB,IAAI,EAAE;gCAC7C,aAAa,EAAE,QAAQ;gCACvB,WAAW,EAAE,UAAqC;gCAClD,gBAAgB;gCAChB,mBAAmB;6BACY,CAAC,CAAC;4BACnC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,YAAY,YAAY,aAAa,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BAC3F,IAAI,YAAY,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;4BAC5C,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,YAAY,YAAY,eAAe,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BAChG,IAAI,QAAQ,KAAK,QAAQ;gCAAE,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;4BAEvE,2BAA2B;4BAC3B,IAAI,KAAK,GAAG,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAiC,CAAC,CAAC;4BACzF,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gCACjB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,eAAe,YAAY,uBAAuB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gCACtF,eAAe;gCACf,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,SAAS,EAAE;oCACvD,SAAS,EAAE,SAAiC;oCAC5C,aAAa,EAAE,aAAyC;oCACxD,cAAc,EAAE,MAAgB;oCAChC,IAAI,EAAE,YAAY;oCAClB,MAAM,EAAE,KAAK,CAAC,MAAM;oCACpB,aAAa,EAAE,QAAQ;iCACQ,CAAC,CAAC;gCACnC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,YAAY,YAAY,eAAe,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCAC9F,YAAY,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;gCACzC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,YAAY,YAAY,iBAAiB,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCAClG,IAAI,QAAQ,KAAK,QAAQ;oCAAE,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;gCACvE,KAAK,GAAG,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAiC,CAAC,CAAC;4BACvF,CAAC;4BAED,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gCACjB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,eAAe,YAAY,uCAAuC,CAAC,CAAC;gCACrF,SAAS;4BACX,CAAC;4BAED,sBAAsB;4BACtB,OAAO,GAAG,YAAY,CAAC;4BACvB,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;4BAC1E,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;4BACrB,IAAI,CAAC;gCACH,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,eAAe,GAAG,SAAS,EAAE,GAAG,EAAE;oCACtF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;iCAClD,CAAC,CAAC;gCACH,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oCAC1D,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,eAAe,GAAG,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gCAChH,CAAC;gCACD,IAAI,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oCAClD,MAAM,aAAa,CAAC,MAAM,EAAE,kBAAkB,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gCACrI,CAAC;gCACD,6FAA6F;gCAC7F,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oCAC1B,MAAM,IAAI,GAAG,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAiC,CAAC,CAAC;oCACrF,MAAM,SAAS,GAAG,IAAI,CAAC,SAA8F,CAAC;oCACtH,IAAI,SAAS,EAAE,QAAQ,EAAE,CAAC;wCACxB,MAAM,IAAI,GAA2B,EAAE,CAAC;wCACxC,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;4CAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI;gDAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;wCAAC,CAAC;wCAC1G,MAAM,OAAO,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;wCACvE,kDAAkD;wCAClD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAkC,CAAC;wCACxD,IAAI,OAAO,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;4CACnC,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4CAC7H,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wCACtH,CAAC;wCACD,mEAAmE;wCACnE,IAAI,OAAO,EAAE,CAAC;4CACZ,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4CAC7H,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;wCACtH,CAAC;wCACD,MAAM,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE;4CAC7C,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;yCAC1G,CAAC,CAAC;wCACH,IAAI,OAAO,EAAE,CAAC;4CACZ,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;4CAC3G,sCAAsC;4CACtC,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gDACxB,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;gDAC1C,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;gDACrB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,OAAO,MAAM,OAAO,EAAE,CAAC,CAAC;4CACrE,CAAC;wCACH,CAAC;oCACH,CAAC;gCACH,CAAC;gCACD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,mCAAmC,YAAY,EAAE,CAAC,CAAC;gCACpE,yDAAyD;gCACzD,KAAK,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BAC9D,CAAC;4BAAC,OAAO,CAAC,EAAE,CAAC;gCACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,6BAA8B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gCACtE,MAAM;4BACR,CAAC;4BAED,0CAA0C;4BAC1C,IAAI,CAAC;gCACH,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,SAAS,GAAG,EAAE,EAAE,GAAG,EAAE;oCAC5F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;iCACjE,CAAC,CAAC;gCACH,UAAU,GAAI,UAAU,CAAC,IAAgC,EAAE,MAAiC,CAAC;gCAC7F,IAAI,UAAU,EAAE,CAAC;oCACf,MAAM,gBAAgB,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;oCAAC,OAAQ,gBAA4C,CAAC,KAAK,CAAC;oCACvG,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC;oCACjD,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;oCACrB,MAAM,YAAY,GAAI,UAAU,CAAC,MAAmB,IAAI,EAAE,CAAC;oCAC3D,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;wCACnC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,qBAAqB,YAAY,UAAU,CAAC,CAAC;oCAChE,CAAC;yCAAM,CAAC;wCACN,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,qBAAqB,YAAY,cAAc,YAAY,CAAC,MAAM,UAAU,CAAC,CAAC;wCAChG,KAAK,MAAM,CAAC,IAAI,YAAY;4CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;oCAChE,CAAC;gCACH,CAAC;4BACH,CAAC;4BAAC,OAAO,CAAC,EAAE,CAAC;gCACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,qBAAsB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gCAC9D,MAAM;4BACR,CAAC;wBACH,CAAC;wBAED,iDAAiD;wBACjD,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;4BACtE,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,sDAAsD,CAAC,CAAC;4BACzE,IAAI,CAAC;gCACH,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE,sBAAsB,EAAE;oCACrE,SAAS,EAAE,SAAiC;oCAC5C,aAAa,EAAE,aAAyC;oCACxD,cAAc,EAAE,MAAgB;oCAChC,gBAAgB;oCAChB,WAAW,EAAE,UAAqC;iCACnB,CAAC,CAAC;gCACnC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,yBAAyB,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCACjF,IAAI,YAAY,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;gCAC9C,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,2BAA2B,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gCACpF,IAAI,QAAQ,KAAK,QAAQ;oCAAE,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;gCACvE,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,EAAE,YAAY,EAAE,SAAiC,CAAC,CAAC;gCAC7F,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oCAClB,OAAO,GAAG,YAAY,CAAC;oCACvB,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;oCACpD,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;oCACrB,oBAAoB;oCACpB,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,eAAe,GAAG,SAAS,EAAE,GAAG,EAAE;wCACtF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;qCAClD,CAAC,CAAC;oCACH,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;wCAC1D,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,eAAe,GAAG,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oCAChH,CAAC;oCACD,IAAI,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wCAClD,MAAM,aAAa,CAAC,MAAM,EAAE,kBAAkB,kBAAkB,CAAC,IAAI,CAAC,YAAsB,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oCACrI,CAAC;oCACD,+BAA+B;oCAC/B,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;wCAC1B,MAAM,cAAc,GAAG,OAAO,CAAC,SAA8F,CAAC;wCAC9H,IAAI,cAAc,EAAE,QAAQ,EAAE,CAAC;4CAC7B,MAAM,IAAI,GAA2B,EAAE,CAAC;4CACxC,KAAK,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;gDAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI;oDAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;4CAAC,CAAC;4CAC/G,MAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;4CAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,YAAkC,CAAC;4CACxD,IAAI,OAAO,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gDACnC,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gDAC7H,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4CACtH,CAAC;4CACD,IAAI,OAAO,EAAE,CAAC;gDACZ,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gDAC7H,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4CACtH,CAAC;4CACD,MAAM,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE;gDAC7C,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;6CAC/G,CAAC,CAAC;4CACH,IAAI,OAAO,EAAE,CAAC;gDACZ,MAAM,aAAa,CAAC,MAAM,EAAE,cAAc,kBAAkB,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gDAC3G,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;oDACxB,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;oDAC1C,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;oDACrB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,0BAA0B,OAAO,MAAM,OAAO,EAAE,CAAC,CAAC;gDACrE,CAAC;4CACH,CAAC;wCACH,CAAC;oCACH,CAAC;oCACD,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,4CAA4C,CAAC,CAAC;oCAC/D,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,MAAM,EAAE,iBAAiB,SAAS,SAAS,GAAG,EAAE,EAAE,GAAG,EAAE;wCAC5F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;qCACjE,CAAC,CAAC;oCACH,UAAU,GAAI,UAAU,CAAC,IAAgC,EAAE,MAAiC,CAAC;oCAC7F,IAAI,UAAU,EAAE,CAAC;wCACf,MAAM,mBAAmB,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;wCAAC,OAAQ,mBAA+C,CAAC,KAAK,CAAC;wCAC7G,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC;wCACpD,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;wCACrB,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,4BAA4B,UAAU,CAAC,MAAgB,EAAE,CAAC,CAAC;oCAC9E,CAAC;gCACH,CAAC;qCAAM,CAAC;oCACN,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,yCAAyC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gCACjF,CAAC;4BACH,CAAC;4BAAC,OAAO,CAAC,EAAE,CAAC;gCACX,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,8BAA+B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;4BACzE,CAAC;wBACH,CAAC;oBAEH,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,4BAA6B,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;oBACxE,CAAC;oBAED,0BAA0B;oBAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,UAAiD,CAAC;oBAC/E,IAAI,eAAe,IAAI,eAAe,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC3D,UAAU,GAAG,KAAK,CAAC;oBACrB,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,UAAU,GAAK,IAAI,CAAC,UAAsC,EAAE,MAAmB,IAAI,EAAE,CAAC;oBAC5F,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,2DAA2D,UAAU,CAAC,CAAC,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;oBAC/G,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAC/B,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,kCAAkC,EAAE,CAAC,CAAC;oBACrJ,MAAM;gBACR,CAAC;gBAED,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBAClC,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;gBACvF,UAAU,CAAC,QAAQ,CAAC,CAAC;YAEvB,CAAC;YAAC,OAAO,YAAY,EAAE,CAAC;gBACtB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,+BAA+B,SAAS,yBAA0B,YAAsB,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtH,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAC/B,KAAK,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAG,YAAsB,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC3H,MAAM,CAAC,0CAA0C;YACnD,CAAC;QACH,CAAC;QAED,YAAY,CAAC;YACX,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC;YACpG,gBAAgB,EAAE,IAAI;SACvB,CAAC,CAAC;QACH,0CAA0C;QAC1C,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,KAAK,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,eAAe,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,YAAY,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,UAAU,CAAC,CAAC;QACpN,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAC/C,MAAM,IAAI,GAAG,EAAE,CAAC,MAAM,KAAK,WAAW,IAAI,EAAE,CAAC,MAAM,KAAK,oBAAoB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9H,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,KAAK,MAAM,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAEnC,CAAC;IAAC,OAAO,QAAQ,EAAE,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,0BAA2B,QAAkB,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,YAAY,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;YAAS,CAAC;QACT,kEAAkE;QAClE,IAAI,CAAC,KAAK,EAAE,CAAC;QACb,wCAAwC;QACxC,UAAU,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACxE,CAAC;AACH,CAAC;AAED,gBAAgB;AAEhB,SAAS,qBAAqB,CAAC,IAAY,EAAE,OAAe,EAAE,EAA2B;IACvF,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9C,MAAM,SAAS,GAAG,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC9F,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAChC,CAAC;IACD,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC9F,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAChC,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,mFAAmF;QACnF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IACD,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;QAC3B,0GAA0G;QAC1G,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACpC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;QACnE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,aAAa,CAAC;QACvB,CAAC;IACH,CAAC;IACD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnB,iGAAiG;QACjG,MAAM,SAAS,GAAG,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC3F,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC;IACzC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,SAAkC,EAAE,IAA6B,EAAE,OAAe;IAC7G,0FAA0F;IAC1F,gGAAgG;IAChG,MAAM,IAAI,GAAG,IAAI,CAAC,IAA2C,CAAC;IAC9D,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAmC,CAAC;QAC3E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,WAAW;iBACf,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC;iBAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACT,MAAM,EAAE,CAAC,CAAC,EAAY;gBACtB,KAAK,EAAI,CAAC,CAAC,OAAmC,EAAE,KAAiC,IAAI,EAAE;aACxF,CAAC,CAAC,CAAC;QACR,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,MAAM,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACpE,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/D,CAAC"}
@@ -43,6 +43,6 @@ export declare function clearFragmentCache(): void;
43
43
  export declare function buildPrompt(storage: Storage, promptId: string, data: PromptRuntimeData): Promise<string>;
44
44
  export { stripCodeblock } from './strip.js';
45
45
  export { createBundle, formatBundlesForPrompt } from './bundle.js';
46
- export { validateExtensionSpec, validateDataApiSpec, validateComponentSpec, validateAppDomainSpec, validateSpecAgainstProbe, } from './spec-validate.js';
46
+ export { validateExtensionSpec, validateDataApiSpec, validateComponentSpec, validateAppDomainSpec, validateAppSpec, validateSpecAgainstProbe, } from './spec-validate.js';
47
47
  export type { Blueprint, InterviewSpec, ComponentState, ProbeResult, ComponentBundle, PromptRuntimeData, } from './types.js';
48
48
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/generator-prompts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AASpD;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYvF;AAED,iEAAiE;AACjE,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,MAAM,CAAC,CAsCjB;AAGD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EACL,qBAAqB,EAAE,mBAAmB,EAAE,qBAAqB,EACjE,qBAAqB,EAAE,wBAAwB,GAChD,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EACrD,eAAe,EAAE,iBAAiB,GACnC,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/generator-prompts/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AASpD;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYvF;AAED,iEAAiE;AACjE,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,MAAM,CAAC,CAsCjB;AAGD,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACnE,OAAO,EACL,qBAAqB,EAAE,mBAAmB,EAAE,qBAAqB,EACjE,qBAAqB,EAAE,eAAe,EAAE,wBAAwB,GACjE,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EACrD,eAAe,EAAE,iBAAiB,GACnC,MAAM,YAAY,CAAC"}
@@ -93,5 +93,5 @@ export async function buildPrompt(storage, promptId, data) {
93
93
  // Re-export everything the autopilot and routes need
94
94
  export { stripCodeblock } from './strip.js';
95
95
  export { createBundle, formatBundlesForPrompt } from './bundle.js';
96
- export { validateExtensionSpec, validateDataApiSpec, validateComponentSpec, validateAppDomainSpec, validateSpecAgainstProbe, } from './spec-validate.js';
96
+ export { validateExtensionSpec, validateDataApiSpec, validateComponentSpec, validateAppDomainSpec, validateAppSpec, validateSpecAgainstProbe, } from './spec-validate.js';
97
97
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/generator-prompts/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/services/generator-prompts/index.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export declare function validateExtensionSpec(spec: Record<string, unknown> | nu
21
21
  export declare function validateDataApiSpec(spec: Record<string, unknown> | null): ValidationResult;
22
22
  export declare function validateComponentSpec(spec: Record<string, unknown> | null): ValidationResult;
23
23
  export declare function validateAppDomainSpec(spec: Record<string, unknown> | null): ValidationResult;
24
+ export declare function validateAppSpec(spec: Record<string, unknown> | null): ValidationResult;
24
25
  export declare function validateSpecAgainstProbe(spec: Record<string, unknown>, probeResults: ProbeResult[]): {
25
26
  valid: boolean;
26
27
  mismatches: SpecMismatch[];
@@ -1 +1 @@
1
- {"version":3,"file":"spec-validate.d.ts","sourceRoot":"","sources":["../../../../src/services/generator-prompts/spec-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,UAAU,gBAAgB;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAiBD,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAgBD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CA+B5F;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAwB1F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAc5F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAiB5F;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,WAAW,EAAE,GAC1B;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,YAAY,EAAE,CAAA;CAAE,CAuDhD"}
1
+ {"version":3,"file":"spec-validate.d.ts","sourceRoot":"","sources":["../../../../src/services/generator-prompts/spec-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,UAAU,gBAAgB;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAiBD,UAAU,YAAY;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAgBD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CA+B5F;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAwB1F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAc5F;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAiB5F;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,gBAAgB,CAiBtF;AAED,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,WAAW,EAAE,GAC1B;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,YAAY,EAAE,CAAA;CAAE,CAuDhD"}
@@ -136,6 +136,26 @@ export function validateAppDomainSpec(spec) {
136
136
  }
137
137
  return { valid: errors.length === 0, errors };
138
138
  }
139
+ export function validateAppSpec(spec) {
140
+ const errors = [];
141
+ if (!spec)
142
+ return { valid: false, errors: ['Spec is null or undefined'] };
143
+ if (!spec.name)
144
+ errors.push('Missing spec.name');
145
+ if (spec.name && typeof spec.name === 'string') {
146
+ if (!/^[a-z0-9]+(-[a-z0-9]+)*$/.test(spec.name)) {
147
+ errors.push(`spec.name "${spec.name}" must be ASCII kebab-case`);
148
+ }
149
+ }
150
+ if (!spec.title)
151
+ errors.push('Missing spec.title');
152
+ if (!spec.appDomainLib)
153
+ errors.push('Missing spec.appDomainLib');
154
+ if (!Array.isArray(spec.cortexDependencies) || spec.cortexDependencies.length === 0) {
155
+ errors.push('Missing or empty spec.cortexDependencies');
156
+ }
157
+ return { valid: errors.length === 0, errors };
158
+ }
139
159
  export function validateSpecAgainstProbe(spec, probeResults) {
140
160
  if (!spec || !probeResults || probeResults.length === 0) {
141
161
  return { valid: true, mismatches: [] };
@@ -1 +1 @@
1
- {"version":3,"file":"spec-validate.js","sourceRoot":"","sources":["../../../../src/services/generator-prompts/spec-validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-validate.js","sourceRoot":"","sources":["../../../../src/services/generator-prompts/spec-validate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA+BH,4EAA4E;AAC5E,SAAS,iBAAiB,CAAC,IAA6B,EAAE,MAAgB;IACxE,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC/C,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,qIAAqI,CAAC,CAAC;QAC5K,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACrD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,OAAO,yFAAyF,CAAC,CAAC;QACtI,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAoC;IACxE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IAC1E,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC;IAEzF,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC7F,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IAElH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAmC,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC;YAC/B,IAAI,CAAC,CAAC,CAAC,EAAE;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,cAAc,CAAC,CAAC;YAChD,IAAI,CAAC,CAAC,CAAC,MAAM;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,mBAAmB,CAAC,CAAC;YACzE,IAAI,CAAC,CAAC,CAAC,IAAI;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,iBAAiB,CAAC,CAAC;YACrE,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,8BAA8B,CAAC,CAAC;iBAC/G,IAAK,CAAC,CAAC,MAAkC,CAAC,MAAM,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,wBAAyB,CAAC,CAAC,MAAkC,CAAC,MAAM,CAAC,iEAAiE,CAAC,CAAC;YACrO,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,oBAAoB,CAAC,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,0BAA0B,CAAC,CAAC;gBACnH,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM;oBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,EAAE,IAAI,GAAG,2BAA2B,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAC7F,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAoC;IACtE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IAE1E,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvD,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,IAAI,CAAC,cAAc;QAAE,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAErE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAmC,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACrB,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC;YAC/B,IAAI,CAAC,CAAC,CAAC,IAAI;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAC;YACpD,IAAI,CAAC,CAAC,CAAC,OAAO;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,yBAAyB,CAAC,CAAC;YAClF,IAAI,CAAC,CAAC,CAAC,OAAO;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,oBAAoB,CAAC,CAAC;YAC7E,IAAI,CAAC,CAAC,cAAc,KAAK,SAAS;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,2BAA2B,CAAC,CAAC;QAC1G,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAoC;IACxE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IAE1E,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvD,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAA6C,CAAC;IAClE,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAChD,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACtE,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAE9E,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAoC;IACxE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IAE1E,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACvD,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAA8C,CAAC;IACpE,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAClD,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACvE,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC3E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAK,IAAI,CAAC,KAAmB,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IACrH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAK,IAAI,CAAC,kBAAgC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnG,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAoC;IAClE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,2BAA2B,CAAC,EAAE,CAAC;IAE1E,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjD,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC/C,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,4BAA4B,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACnD,IAAI,CAAC,IAAI,CAAC,YAAY;QAAE,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IACjE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAK,IAAI,CAAC,kBAAgC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnG,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,IAA6B,EAC7B,YAA2B;IAE3B,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IACzC,CAAC;IAED,MAAM,UAAU,GAAmB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAiB,CAAC;IAErD,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ;YAAE,SAAS;QACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAmC,CAAC;QAE3D,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ,EAAE,EAAE;gBACZ,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAC7B,OAAO,EAAE,WAAW,KAAK,CAAC,MAAM,wCAAwC;aACzE,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjD,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ;YAAE,SAAS;QAElE,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QAEhD,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,QAAQ,EAAE,YAAY;gBACtB,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,WAAW,KAAK,CAAC,MAAM,qBAAqB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;aACpK,CAAC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC;gBAAE,SAAS;YACjC,MAAM,WAAW,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YACvC,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5D,UAAU,CAAC,IAAI,CAAC;oBACd,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,QAAQ,EAAE,CAAC,GAAG,GAAG,SAAS,CAAC;oBAC3B,MAAM,EAAE,CAAC,GAAG,GAAG,KAAK,OAAO,SAAS,EAAE,CAAC;oBACvC,OAAO,EAAE,WAAW,KAAK,CAAC,MAAM,iBAAiB,GAAG,oCAAoC,OAAO,SAAS,EAAE;iBAC3G,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;AACxD,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Blueprint } from './types.js';
1
+ import type { Blueprint, BlueprintComponent } from './types.js';
2
2
  export interface ValidationResult {
3
3
  valid: boolean;
4
4
  errors: string[];
@@ -45,4 +45,10 @@ export declare function validateInterviewSpec(result: string): InterviewValidati
45
45
  export declare function validateSpecQuality(spec: unknown): SpecQualityResult;
46
46
  export declare function validateBlueprint(result: string): BlueprintValidationResult;
47
47
  export declare function validateComponent(type: string, result: string, blueprint?: Blueprint | null): ValidationResult;
48
+ interface ContractResult {
49
+ valid: boolean;
50
+ mismatches: string[];
51
+ }
52
+ export declare function verifyContract(type: string, result: string, blueprintComponent: BlueprintComponent | null, blueprint: Blueprint | null): ContractResult;
53
+ export {};
48
54
  //# sourceMappingURL=validate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../src/services/generator-prompts/validate.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAqGD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,iBAAiB,CA6FlF;AA2XD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,yBAAyB,CAsE/E;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,CA4CpE;AAID,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,yBAAyB,CAwL3E;AAID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,SAAS,GAAG,IAAW,GAAG,gBAAgB,CAIpH"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../src/services/generator-prompts/validate.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAIhE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAqGD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,iBAAiB,CA6FlF;AA2XD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,yBAAyB,CAsE/E;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,iBAAiB,CA4CpE;AAID,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,yBAAyB,CAwL3E;AAID,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,SAAS,GAAG,IAAW,GAAG,gBAAgB,CAIpH;AAID,UAAU,cAAc;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAsED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,GAAG,IAAI,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI,GAAG,cAAc,CAQvJ"}