@maestro-ai/mcp-server 5.6.2 → 5.6.4

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 (34) hide show
  1. package/dist/constants.d.ts +1 -1
  2. package/dist/constants.js +1 -1
  3. package/dist/handlers/shared-prompt-handler.js +2 -2
  4. package/dist/handlers/shared-prompt-handler.js.map +1 -1
  5. package/dist/handlers/specialist-formatters.d.ts +1 -1
  6. package/dist/handlers/specialist-formatters.d.ts.map +1 -1
  7. package/dist/handlers/specialist-formatters.js +3 -3
  8. package/dist/handlers/specialist-formatters.js.map +1 -1
  9. package/dist/handlers/specialist-phase-handler.js +2 -2
  10. package/dist/handlers/specialist-phase-handler.js.map +1 -1
  11. package/dist/middleware/skill-injection.middleware.d.ts +8 -5
  12. package/dist/middleware/skill-injection.middleware.d.ts.map +1 -1
  13. package/dist/middleware/skill-injection.middleware.js +12 -9
  14. package/dist/middleware/skill-injection.middleware.js.map +1 -1
  15. package/dist/tools/iniciar-projeto.js +1 -1
  16. package/dist/tools/iniciar-projeto.js.map +1 -1
  17. package/dist/tools/maestro-tool.js +1 -1
  18. package/dist/tools/maestro-tool.js.map +1 -1
  19. package/dist/tools/proximo.d.ts.map +1 -1
  20. package/dist/tools/proximo.js +184 -48
  21. package/dist/tools/proximo.js.map +1 -1
  22. package/dist/utils/gate-synonyms.d.ts +23 -0
  23. package/dist/utils/gate-synonyms.d.ts.map +1 -0
  24. package/dist/utils/gate-synonyms.js +161 -0
  25. package/dist/utils/gate-synonyms.js.map +1 -0
  26. package/dist/utils/ide-paths.d.ts +12 -1
  27. package/dist/utils/ide-paths.d.ts.map +1 -1
  28. package/dist/utils/ide-paths.js +21 -9
  29. package/dist/utils/ide-paths.js.map +1 -1
  30. package/dist/utils/instructions.d.ts +11 -2
  31. package/dist/utils/instructions.d.ts.map +1 -1
  32. package/dist/utils/instructions.js +33 -5
  33. package/dist/utils/instructions.js.map +1 -1
  34. package/package.json +1 -1
@@ -11,7 +11,7 @@ import { getSpecialistPersona } from "../services/specialist.service.js";
11
11
  import { gerarSystemMd } from "../utils/system-md.js";
12
12
  import { getSkillParaFase } from "../utils/prompt-mapper.js";
13
13
  import { resolveProjectPath } from "../utils/files.js";
14
- import { formatSkillHydrationCommand, detectIDE, getSkillResourcePath as getIDESkillResourcePath } from "../utils/ide-paths.js";
14
+ import { formatSkillHydrationCommand, formatMention, detectIDE, getSkillResourcePath as getIDESkillResourcePath } from "../utils/ide-paths.js";
15
15
  import { inferirContextoBalanceado } from "../utils/inferencia-contextual.js";
16
16
  import { verificarSkillCarregada } from "../utils/content-injector.js";
17
17
  import { saveFile, saveMultipleFiles, formatSavedFilesConfirmation } from "../utils/persistence.js";
@@ -29,6 +29,41 @@ import { RiskEvaluator } from "../core/risk/RiskEvaluator.js";
29
29
  // v6.5: Sprint 3 — Code Generation
30
30
  import { decomposeArchitectureToTasks } from "../services/task-decomposer.service.js";
31
31
  import { calcularScoreContextual } from "../services/scoring-config.js";
32
+ import { expandKeywordsWithSynonyms } from "../utils/gate-synonyms.js";
33
+ /**
34
+ * v7.2 FIX C: Gera menções de arquivo para entregáveis anteriores + gate orientation.
35
+ * Em vez de injetar conteúdo inline (gasto de tokens), gera menções nativas da IDE
36
+ * (#path no Windsurf) para que a IA LEIA os arquivos sob demanda.
37
+ */
38
+ function formatarContextoComoMencoes(estado, diretorio, ide, gateOrientationDirName) {
39
+ const entregaveis = estado.entregaveis || {};
40
+ const keys = Object.keys(entregaveis);
41
+ if (keys.length === 0 && !gateOrientationDirName)
42
+ return '';
43
+ const linhas = [];
44
+ linhas.push(`## 📋 Contexto do Projeto — Leia os Entregáveis Anteriores`);
45
+ linhas.push('');
46
+ linhas.push(`> ⚠️ Leia os documentos abaixo para entender decisões já tomadas. **NÃO contradiga** o que foi definido.`);
47
+ linhas.push('');
48
+ // Menções para entregáveis anteriores (paths relativos ao projeto)
49
+ let idx = 1;
50
+ for (const key of keys) {
51
+ const absPath = entregaveis[key];
52
+ // Converter path absoluto para relativo ao projeto
53
+ const relPath = absPath
54
+ .replace(diretorio.replace(/\\/g, '/'), '')
55
+ .replace(diretorio, '')
56
+ .replace(/^[\\/]+/, '');
57
+ linhas.push(`> ${idx}. ${formatMention(relPath.replace(/\\/g, '/'), ide)}`);
58
+ idx++;
59
+ }
60
+ // Menção para .orientacoes-gate.md da próxima fase
61
+ if (gateOrientationDirName) {
62
+ linhas.push(`> ${idx}. ${formatMention(`docs/${gateOrientationDirName}/.orientacoes-gate.md`, ide)}`);
63
+ }
64
+ linhas.push('');
65
+ return linhas.join('\n');
66
+ }
32
67
  /**
33
68
  * v6.3 S5.2-S5.3: Avalia autonomia para o avanço de fase usando RiskEvaluator + DecisionEngine.
34
69
  * Retorna null se pode prosseguir, ou ToolResult de bloqueio se requer aprovação humana.
@@ -169,14 +204,16 @@ proximo(
169
204
  const faseAtualInfo = getFaseComStitch(estado.nivel, estado.fase_atual, estado.usar_stitch);
170
205
  // v9.0: Fase de prototipagem — entregável é prototipos.md + verificação de HTML na pasta
171
206
  const isProtoPhase = isPrototypePhase(faseAtualInfo?.nome, estado.usar_stitch);
172
- // v5.5.0: Leitura automática do disco
207
+ // v6.6 FIX #4: SEMPRE tentar ler do disco primeiro, mesmo quando entregável é passado como argumento.
208
+ // Antes, se a IA passava conteúdo como argumento (>100 chars), o disco era ignorado.
209
+ // Isso causava: 1) Gasto de tokens (15K+ chars na chamada), 2) Inconsistência disco vs argumento.
210
+ // Agora: disco tem prioridade. Argumento é fallback.
173
211
  let entregavel = args.entregavel;
174
212
  let entregavelLidoDoDisco = false;
175
213
  let caminhoResolvido = null;
176
- // Heurística: se entregável está vazio OU muito curto (< 100 chars), provavelmente é uma descrição
177
- // Tentamos ler do disco como fallback
178
214
  const TAMANHO_MINIMO_CONTEUDO_REAL = 100;
179
- if (!entregavel || entregavel.trim().length < TAMANHO_MINIMO_CONTEUDO_REAL) {
215
+ // Sempre tentar ler do disco primeiro (independente do argumento)
216
+ {
180
217
  if (faseAtualInfo) {
181
218
  // v9.0: Para fase de prototipagem, tentar ler prototipos/prototipos.md
182
219
  if (isProtoPhase) {
@@ -190,16 +227,24 @@ proximo(
190
227
  catch { /* ignore */ }
191
228
  }
192
229
  }
193
- if (!entregavel || entregavel.trim().length < TAMANHO_MINIMO_CONTEUDO_REAL) {
194
- // Tentar resolver path do entregável
195
- caminhoResolvido = resolverPathEntregavel(diretorio, estado.fase_atual, faseAtualInfo, estado);
196
- if (caminhoResolvido) {
230
+ // v6.6 FIX #4: SEMPRE tentar resolver o path do disco, mesmo se args.entregavel existe.
231
+ // Disco tem prioridade sobre argumento para: (a) economizar tokens, (b) evitar inconsistência.
232
+ // Se o arquivo no disco existir e tiver conteúdo válido, usamos ele.
233
+ // Se não existir, caímos de volta para args.entregavel.
234
+ if (!entregavelLidoDoDisco) {
235
+ const pathDoDisco = resolverPathEntregavel(diretorio, estado.fase_atual, faseAtualInfo, estado);
236
+ if (pathDoDisco) {
197
237
  try {
198
- entregavel = await readFile(caminhoResolvido, 'utf-8');
199
- entregavelLidoDoDisco = true;
238
+ const conteudoDisco = await readFile(pathDoDisco, 'utf-8');
239
+ if (conteudoDisco && conteudoDisco.trim().length >= TAMANHO_MINIMO_CONTEUDO_REAL) {
240
+ entregavel = conteudoDisco;
241
+ entregavelLidoDoDisco = true;
242
+ caminhoResolvido = pathDoDisco;
243
+ console.log(`[proximo] v6.6 FIX #4: Entregável lido do disco (${conteudoDisco.length} chars): ${pathDoDisco}`);
244
+ }
200
245
  }
201
246
  catch (err) {
202
- // Erro ao ler arquivo, continua com validação abaixo
247
+ // Arquivo não encontrado ou erro de leitura — usar args.entregavel como fallback
203
248
  }
204
249
  }
205
250
  }
@@ -336,6 +381,13 @@ ${instrucoesSkill}
336
381
  isError: true,
337
382
  };
338
383
  }
384
+ // v7.1 FIX 6: Deprecation warning quando entregável veio do argumento (não do disco)
385
+ // Incentiva a IA a salvar no disco primeiro e chamar executar({acao: "avancar"})
386
+ let deprecationWarning = '';
387
+ if (!entregavelLidoDoDisco && entregavel && entregavel.trim().length > 500) {
388
+ console.warn(`[proximo] v7.1 DEPRECATION: entregável passado como argumento (${entregavel.length} chars). Salve no disco primeiro.`);
389
+ deprecationWarning = `> ⚠️ **AVISO:** O entregável foi recebido via argumento (${entregavel.length} chars), não do disco.\n> Para melhor performance, **salve o arquivo no disco primeiro** e depois chame \`executar({ acao: "avancar" })\`.\n> O sistema lê automaticamente do path canônico: \`docs/fase-XX-nome/entregavel\`\n\n`;
390
+ }
339
391
  // v5.5.0: Após validação, entregavel é garantidamente string não-vazia
340
392
  // TypeScript assertion para evitar erros de tipo
341
393
  const entregavelValidado = entregavel;
@@ -344,17 +396,32 @@ ${instrucoesSkill}
344
396
  if (autonomiaBlock)
345
397
  return autonomiaBlock;
346
398
  // Verificar se há bloqueio de aprovação pendente (Gate)
399
+ // v6.6 FIX #1: Se um novo entregável foi fornecido (argumento ou disco), RESETAR o bloqueio
400
+ // e re-validar. Antes deste fix, o sistema retornava imediatamente sem re-avaliar,
401
+ // fazendo o score ficar fixo mesmo com conteúdo melhorado.
347
402
  if (estado.aguardando_aprovacao) {
348
- // v5.5.0: Incluir instruções de correção no bloqueio
349
- const ideParaInstrucao = detectIDE(diretorio) || 'windsurf';
350
- const instrucaoCorrecao = faseAtualInfo
351
- ? gerarInstrucaoCorrecao(faseAtualInfo.nome, estado.score_bloqueado || 0, estado.itens_aprovados_bloqueio || [], estado.itens_pendentes_bloqueio || [], [], [], ideParaInstrucao, diretorio, true // requiresUserDecision: score 50-69, aguarda usuário
352
- )
353
- : "";
354
- return {
355
- content: [{
356
- type: "text",
357
- text: `# Projeto Aguardando Aprovação
403
+ const temNovoEntregavel = entregavelValidado && entregavelValidado.trim().length >= TAMANHO_MINIMO_ENTREGAVEL;
404
+ if (temNovoEntregavel) {
405
+ // Resetar flags de bloqueio — permitir re-validação com o novo conteúdo
406
+ const scoreAnterior = estado.score_bloqueado;
407
+ estado.aguardando_aprovacao = false;
408
+ estado.em_estado_compulsorio = false;
409
+ estado.motivo_bloqueio = undefined;
410
+ // Manter score_bloqueado para calcular delta depois
411
+ console.log(`[proximo] v6.6 FIX #1: Re-validando entregável (score anterior: ${scoreAnterior}). Flag aguardando_aprovacao resetado.`);
412
+ // Continua para o fluxo de validação abaixo ↓
413
+ }
414
+ else {
415
+ // Sem novo entregável — manter bloqueio e mostrar instruções
416
+ const ideParaInstrucao = detectIDE(diretorio) || 'windsurf';
417
+ const instrucaoCorrecao = faseAtualInfo
418
+ ? gerarInstrucaoCorrecao(faseAtualInfo.nome, estado.score_bloqueado || 0, estado.itens_aprovados_bloqueio || [], estado.itens_pendentes_bloqueio || [], [], [], ideParaInstrucao, diretorio, true // requiresUserDecision: score 50-69, aguarda usuário
419
+ )
420
+ : "";
421
+ return {
422
+ content: [{
423
+ type: "text",
424
+ text: `# ⛔ Projeto Aguardando Aprovação
358
425
 
359
426
  O projeto está bloqueado aguardando aprovação do usuário.
360
427
 
@@ -370,12 +437,14 @@ ${instrucaoCorrecao}
370
437
  O **usuário humano** deve decidir:
371
438
 
372
439
  - **Para aprovar e avançar**: Diga "aprovar o gate"
373
- - **Para corrigir primeiro**: Siga as instruções acima e re-submeta
440
+ - **Para corrigir primeiro**: Edite o arquivo no disco e re-submeta com \`executar({ acao: "avancar" })\`
374
441
 
375
442
  > ⚠️ A IA NÃO pode aprovar automaticamente. Aguarde a decisão do usuário.
443
+ > 💡 Se o entregável foi melhorado, salve no disco e chame \`executar\` novamente — o sistema irá re-avaliar.
376
444
  `,
377
- }],
378
- };
445
+ }],
446
+ };
447
+ }
379
448
  }
380
449
  // Fluxo PRD-first: se ainda aguardando PRD, analisar e AUTO-CONFIRMAR se auto_flow
381
450
  if (estado.status === "aguardando_prd" && estado.fase_atual === 1) {
@@ -557,33 +626,89 @@ Se o erro persistir, contate o suporte técnico.`,
557
626
  isError: true,
558
627
  };
559
628
  }
560
- // v6.5: Usar scoring contextual por tipo de fase
561
- const scoreContextual = calcularQualityScore({ score: validationResult.overallScore, tamanho_ok: true, valido: validationResult.passed, secoes_encontradas: [], secoes_faltando: [], feedback: [] }, { valido: validationResult.passed, itens_validados: validationResult.results.filter(r => r.passed).map(r => r.layer), itens_pendentes: validationResult.results.filter(r => !r.passed).map(r => r.layer), sugestoes: validationResult.recommendations }, faseAtual.nome);
629
+ // v6.6 FIX #2: Extrair issues INDIVIDUAIS do DeliverableValidator para scoring granular.
630
+ // Antes, validationResult.results (1 elemento) era mapeado como itens_validados/pendentes,
631
+ // resultando em checklistScore = 0% ou 100% (binário), fixando o score em ~58.
632
+ // Agora extraímos cada issue individual e o gate_checklist da fase para scoring justo.
633
+ const allIssues = validationResult.results.flatMap(r => r.issues || []);
634
+ const allSuggestions = validationResult.results.flatMap(r => r.suggestions || []);
635
+ // Construir itens de checklist granulares a partir dos issues do validator
636
+ const itensValidadosGranular = [];
637
+ const itensPendentesGranular = [];
638
+ // Usar gate_checklist da fase como base para itens aprovados/pendentes
639
+ const gateChecklistItems = faseAtual.gate_checklist || [];
640
+ const contentLowerForCheck = entregavelValidado.toLowerCase();
641
+ for (const item of gateChecklistItems) {
642
+ // Extrair palavras-chave > 3 chars do item
643
+ const keywords = item.toLowerCase()
644
+ .replace(/[^a-záàâãéèêíïóôõöúüçñ\s0-9/\-]/gi, '')
645
+ .split(/\s+/)
646
+ .filter((w) => w.length > 3);
647
+ // v7.1 FIX 4: Expandir keywords com sinônimos pt↔en
648
+ // Antes: "versionamento" não matchava YAML com "version: 1.0.0"
649
+ // Agora: "versionamento" expande para ["version", "versioning", "semver", ...]
650
+ const expandedKeywords = expandKeywordsWithSynonyms(keywords);
651
+ // Verificar se ALGUM dos sinônimos está presente no conteúdo
652
+ const matchedOriginal = keywords.filter((kw) => {
653
+ // Checar a keyword original
654
+ if (contentLowerForCheck.includes(kw))
655
+ return true;
656
+ // Checar sinônimos da keyword
657
+ const syns = expandedKeywords.filter(s => s !== kw);
658
+ return syns.some(syn => contentLowerForCheck.includes(syn));
659
+ });
660
+ const matchRatio = keywords.length > 0 ? matchedOriginal.length / keywords.length : 1;
661
+ // v7.1 FIX 4: Threshold ajustado — itens com poucas keywords (1-2) precisam de match exato,
662
+ // itens com mais keywords (3+) usam threshold 0.4
663
+ const threshold = keywords.length <= 2 ? 0.5 : 0.4;
664
+ if (matchRatio >= threshold) {
665
+ itensValidadosGranular.push(`✅ ${item}`);
666
+ }
667
+ else {
668
+ itensPendentesGranular.push(`❌ ${item}`);
669
+ }
670
+ }
671
+ // Adicionar issues do validator como pendentes se não já cobertos pelo checklist
672
+ for (const issue of allIssues) {
673
+ if (issue.severity === 'critical' || issue.severity === 'high') {
674
+ const jaListado = itensPendentesGranular.some(p => p.toLowerCase().includes(issue.type));
675
+ if (!jaListado) {
676
+ itensPendentesGranular.push(`❌ ${issue.message}`);
677
+ }
678
+ }
679
+ }
680
+ // Calcular checklistScore granular
681
+ const totalItensGranular = itensValidadosGranular.length + itensPendentesGranular.length;
682
+ const checklistScoreGranular = totalItensGranular > 0
683
+ ? (itensValidadosGranular.length / totalItensGranular) * 100
684
+ : 100;
685
+ // Calcular score contextual com dados granulares
686
+ const tamanhoScoreCalc = entregavelValidado.trim().length >= 600 ? 100 : 50;
687
+ const scoreContextual = calcularScoreContextual(validationResult.overallScore, checklistScoreGranular, tamanhoScoreCalc, faseAtual.nome);
562
688
  const qualityScore = scoreContextual.score;
563
- // Converter resultado para formato compatível com mensagens de erro
689
+ // v6.6 FIX #3: Construir gateResultado com itens GRANULARES para feedback específico
564
690
  const gateResultado = {
565
- valido: validationResult.passed,
566
- itens_validados: validationResult.results
567
- .filter(r => r.passed)
568
- .map(r => `${r.layer}: ${r.score.toFixed(0)}%`),
569
- itens_pendentes: validationResult.results
570
- .filter(r => !r.passed)
571
- .flatMap(r => r.issues.map(i => `[${r.layer}] ${i.message}`)),
572
- sugestoes: validationResult.recommendations
691
+ valido: validationResult.passed && itensPendentesGranular.length === 0,
692
+ itens_validados: itensValidadosGranular,
693
+ itens_pendentes: itensPendentesGranular,
694
+ sugestoes: [...allSuggestions, ...validationResult.recommendations]
573
695
  };
574
696
  const estruturaResult = {
575
697
  valido: validationResult.passed,
576
698
  score: qualityScore,
577
- secoes_encontradas: validationResult.results
578
- .filter(r => r.passed)
579
- .map(r => r.layer),
580
- secoes_faltando: validationResult.results
581
- .filter(r => !r.passed)
582
- .map(r => r.layer),
583
- tamanho_ok: true,
584
- feedback: validationResult.recommendations
699
+ secoes_encontradas: itensValidadosGranular,
700
+ secoes_faltando: itensPendentesGranular.map(p => p.replace(/^❌\s*/, '')),
701
+ tamanho_ok: tamanhoScoreCalc === 100,
702
+ feedback: [...validationResult.recommendations, ...allSuggestions]
585
703
  };
704
+ // v6.6: Log detalhado para debug
705
+ console.log(`[proximo] v6.6 FIX #2: Score granular — overallScore=${validationResult.overallScore}, checklistScore=${checklistScoreGranular.toFixed(0)}%, tamanhoScore=${tamanhoScoreCalc}, qualityScore=${qualityScore}, itens=${itensValidadosGranular.length}✅/${itensPendentesGranular.length}❌`);
586
706
  console.log(`[proximo] validateDeliverable completo — Score: ${qualityScore}/100, Passou: ${validationResult.passed}`);
707
+ // v6.6 MELHORIA #6: Calcular delta de score para feedback incremental
708
+ const scoreAnteriorDelta = estado.score_bloqueado;
709
+ const deltaInfo = (scoreAnteriorDelta != null && scoreAnteriorDelta !== qualityScore)
710
+ ? `\n> 📊 **Score anterior:** ${scoreAnteriorDelta}/100 → **Atual:** ${qualityScore}/100 (${qualityScore > scoreAnteriorDelta ? '📈 +' : '📉 '}${qualityScore - scoreAnteriorDelta})\n`
711
+ : '';
587
712
  // Score < 50: BLOQUEAR com instruções detalhadas de correção
588
713
  if (qualityScore < 50) {
589
714
  // V6 Sprint 2: Ativar modo compulsório também no score < 50
@@ -608,7 +733,7 @@ Se o erro persistir, contate o suporte técnico.`,
608
733
  text: `# ❌ Entregável Bloqueado
609
734
 
610
735
  ${feedbackLeituraBloqueio}## Score: ${qualityScore}/100 - Abaixo do mínimo (50)
611
-
736
+ ${deltaInfo}
612
737
  O entregável não atende aos requisitos mínimos de qualidade.
613
738
 
614
739
  ${feedbackBloqueio}
@@ -655,7 +780,7 @@ ${feedbackBloqueio}
655
780
  text: `# ⚠️ Aprovação do Usuário Necessária
656
781
 
657
782
  ${feedbackLeituraAprovacao}## Score: ${qualityScore}/100 - Abaixo do mínimo recomendado (70)
658
-
783
+ ${deltaInfo}
659
784
  O entregável tem qualidade abaixo do ideal mas pode ser melhorado.
660
785
 
661
786
  ${feedbackAprovacao}
@@ -978,9 +1103,18 @@ ${criterios.slice(0, 5).map(c => `- ${c}`).join("\n")}
978
1103
 
979
1104
  ## 🤖 Próximo Especialista
980
1105
 
981
- ${formatSkillHydrationCommand(proximaSkill, ide)}
1106
+ ${formatSkillHydrationCommand(proximaSkill, ide, diretorio)}
982
1107
  `;
983
1108
  })();
1109
+ // v7.2 FIX C: Gerar menções de arquivo para entregáveis anteriores + gate orientation
1110
+ const ideParaMencoes = estado.ide || detectIDE(diretorio) || 'windsurf';
1111
+ const gateOrientationDir = proximaFase ? getFaseDirName(estado.fase_atual, proximaFase.nome) : undefined;
1112
+ const contextoAcumulado = formatarContextoComoMencoes(estado, diretorio, ideParaMencoes, gateOrientationDir);
1113
+ // v7.1 FIX 5: Path canônico para a próxima fase
1114
+ const pathInfoProximaFase = proximaFase ? (() => {
1115
+ const dirName = getFaseDirName(estado.fase_atual, proximaFase.nome);
1116
+ return `\n### 📁 Onde Salvar o Entregável\n\n| Tipo | Path |\n|------|------|\n| **Entregável** | \`docs/${dirName}/${proximaFase.entregavel_esperado}\` |\n| **Orientações de Gate** | \`docs/${dirName}/.orientacoes-gate.md\` |\n\n> ⚠️ **SALVE o entregável EXATAMENTE no path indicado.** O sistema lê automaticamente do disco.\n> Após salvar, chame: \`executar({ acao: "avancar" })\`\n`;
1117
+ })() : '';
984
1118
  const resposta = `# ✅ Fase ${faseAnterior} Concluída!
985
1119
 
986
1120
  ## 📁 Entregável
@@ -1002,6 +1136,8 @@ ${getSpecialistQuestions(estado.fase_atual, proximaFase?.nome)}
1002
1136
 
1003
1137
  ## Gate de Saída
1004
1138
  ${proximaFase?.gate_checklist.map(item => `- [ ] ${item}`).join("\n") || "Nenhum"}
1139
+ ${pathInfoProximaFase}
1140
+ ${contextoAcumulado}
1005
1141
  ${proximaSkillInfo}
1006
1142
  ---
1007
1143
 
@@ -1021,7 +1157,7 @@ ${proximaSkillInfo}
1021
1157
  // v5: next_action e progress são calculados automaticamente pelo middleware flow-engine.middleware.ts
1022
1158
  // Mantemos apenas specialist_persona e estado_atualizado para o middleware processar
1023
1159
  return {
1024
- content: [{ type: "text", text: feedbackLeitura + resposta + confirmacao + continuidade }],
1160
+ content: [{ type: "text", text: deprecationWarning + feedbackLeitura + resposta + confirmacao + continuidade }],
1025
1161
  estado_atualizado: estadoFile.content,
1026
1162
  specialist_persona: specialist || undefined,
1027
1163
  // next_action e progress serão adicionados pelo middleware withFlowEngine
@@ -1 +1 @@
1
- {"version":3,"file":"proximo.js","sourceRoot":"","sources":["../../src/tools/proximo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proximo.js","sourceRoot":"","sources":["../../src/tools/proximo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAW,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAqB,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,EAAE,cAAc,EAAkB,MAAM,wBAAwB,CAAC,CAAC,0DAA0D;AAEnI,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClH,OAAO,EAA6B,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEzH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAqB,gBAAgB,EAAsC,MAAM,2BAA2B,CAAC;AAEpH,OAAO,EAAwB,kBAAkB,EAAyC,MAAM,mBAAmB,CAAC;AACpH,OAAO,EAAsB,2BAA2B,EAAE,aAAa,EAAE,SAAS,EAAE,oBAAoB,IAAI,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACnK,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAGvE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACpG,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC,CAAC,OAAO;AACpG,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC,CAAC,OAAO;AACzF,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC,CAAC,SAAS;AACrH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC,CAAC,OAAO;AAClF,iCAAiC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,2DAA2D;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAE9D,mCAAmC;AACnC,OAAO,EAAE,4BAA4B,EAAmB,MAAM,wCAAwC,CAAC;AACvG,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAYvE;;;;GAIG;AACH,SAAS,2BAA2B,CAChC,MAAqB,EACrB,SAAiB,EACjB,GAAW,EACX,sBAA+B;IAE/B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,sBAAsB;QAAE,OAAO,EAAE,CAAC;IAE5D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;IAC1E,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,CAAC,IAAI,CAAC,0GAA0G,CAAC,CAAC;IACxH,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEhB,mEAAmE;IACnE,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,mDAAmD;QACnD,MAAM,OAAO,GAAG,OAAO;aAClB,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC;aAC1C,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;aACtB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAU,CAAC,EAAE,CAAC,CAAC;QACnF,GAAG,EAAE,CAAC;IACV,CAAC;IAED,mDAAmD;IACnD,IAAI,sBAAsB,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,aAAa,CAAC,QAAQ,sBAAsB,uBAAuB,EAAE,GAAU,CAAC,EAAE,CAAC,CAAC;IACjH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,gBAAgB,CAC3B,MAAqB,EACrB,QAAgB,EAChB,SAAiB,EACjB,QAAiB;IAEjB,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAC,CAAC,uCAAuC;IAElE,IAAI,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;QAE5C,kCAAkC;QAClC,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,iBAAiB,QAAQ,EAAE,EAAE;YACvE,aAAa,EAAE,CAAC;YAChB,QAAQ,EAAE,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;SAC9C,CAAC,CAAC;QAEH,oDAAoD;QACpD,MAAM,OAAO,GAAsC;YAC/C,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS;SACnF,CAAC;QACF,MAAM,YAAY,GAAsB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC;QAE3E,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC;YAC3C,SAAS,EAAE,iBAAiB,QAAQ,EAAE;YACtC,SAAS,EAAE,YAAY;YACvB,OAAO,EAAE;gBACL,IAAI,EAAE,MAAM,CAAC,UAAU;gBACvB,kBAAkB,EAAE,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;gBACrD,mBAAmB,EAAE,IAAI;gBACzB,gBAAgB,EAAE,MAAM,CAAC,UAAU,KAAK,CAAC;gBACzC,cAAc,EAAE,CAAC,CAAC,QAAQ;aAC7B;SACJ,CAAC,CAAC;QAEH,uDAAuD;QACvD,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;YACnC,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE;;;;;;eAMX,MAAM,CAAC,UAAU,MAAM,QAAQ;gBAC9B,QAAQ,CAAC,KAAK,YAAY,QAAQ,CAAC,KAAK;0BAC9B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC;;;EAG7D,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;EAI9F,QAAQ,CAAC,SAAS;;;+DAG2C,MAAM,CAAC,UAAU;;CAE/E;qBACgB,CAAC;aACL,CAAC;QACN,CAAC;QAED,iDAAiD;QACjD,OAAO,CAAC,GAAG,CAAC,yBAAyB,MAAM,CAAC,UAAU,SAAS,QAAQ,cAAc,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC,WAAW,QAAQ,CAAC,KAAK,SAAS,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAEnL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,uCAAuC;QACvC,OAAO,CAAC,IAAI,CAAC,qDAAqD,EAAE,GAAG,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CACzB,eAAoD,EACpD,UAA0C,EAC1C,WAAmB,WAAW;IAE9B,MAAM,cAAc,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,GAAG,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC;IAC7F,MAAM,cAAc,GAAG,cAAc,GAAG,CAAC;QACrC,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,MAAM,GAAG,cAAc,CAAC,GAAG,GAAG;QAC5D,CAAC,CAAC,GAAG,CAAC;IAEV,MAAM,YAAY,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3D,OAAO,uBAAuB,CAC1B,eAAe,CAAC,KAAK,EACrB,cAAc,EACd,YAAY,EACZ,QAAQ,CACX,CAAC;AACN,CAAC;AAGD;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAAiB;IAC3C,kCAAkC;IAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACpB,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;;;;;;;;;;;;;;;CAerB;iBACY,CAAC;YACF,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,kDAAkD;iBAC3D,CAAC;YACF,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,iBAAiB;IACjB,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,qDAAqD;iBAC9D,CAAC;YACF,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAE/B,qDAAqD;IACrD,MAAM,iBAAiB,GAAG,EAAE,CAAC,CAAC,sCAAsC;IAEpE,0CAA0C;IAC1C,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAE5F,yFAAyF;IACzF,MAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAE/E,sGAAsG;IACtG,qFAAqF;IACrF,kGAAkG;IAClG,qDAAqD;IACrD,IAAI,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACjC,IAAI,qBAAqB,GAAG,KAAK,CAAC;IAClC,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAE3C,MAAM,4BAA4B,GAAG,GAAG,CAAC;IAEzC,kEAAkE;IAClE,CAAC;QACG,IAAI,aAAa,EAAE,CAAC;YAChB,uEAAuE;YACvE,IAAI,YAAY,EAAE,CAAC;gBACf,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,eAAe,CAAC,CAAC;gBACxE,IAAI,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACD,UAAU,GAAG,MAAM,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;wBACvD,qBAAqB,GAAG,IAAI,CAAC;wBAC7B,gBAAgB,GAAG,gBAAgB,CAAC;oBACxC,CAAC;oBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;gBAC5B,CAAC;YACL,CAAC;YAED,wFAAwF;YACxF,+FAA+F;YAC/F,qEAAqE;YACrE,wDAAwD;YACxD,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACzB,MAAM,WAAW,GAAG,sBAAsB,CACtC,SAAS,EACT,MAAM,CAAC,UAAU,EACjB,aAAa,EACb,MAAM,CACT,CAAC;gBAEF,IAAI,WAAW,EAAE,CAAC;oBACd,IAAI,CAAC;wBACD,MAAM,aAAa,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;wBAC3D,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,4BAA4B,EAAE,CAAC;4BAC/E,UAAU,GAAG,aAAa,CAAC;4BAC3B,qBAAqB,GAAG,IAAI,CAAC;4BAC7B,gBAAgB,GAAG,WAAW,CAAC;4BAC/B,OAAO,CAAC,GAAG,CAAC,oDAAoD,aAAa,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC,CAAC;wBACnH,CAAC;oBACL,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,iFAAiF;oBACrF,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,6EAA6E;IAC7E,IAAI,YAAY,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAC/C,IAAI,SAAS,GAAa,EAAE,CAAC;QAC7B,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAa,CAAC;gBACxE,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;oBAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;oBACpC,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACzD,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;;;;IAKtB,QAAQ;;;;;;;;;;;CAWX;qBACgB,CAAC;gBACF,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE;oBACT,IAAI,EAAE,UAAU;oBAChB,WAAW,EAAE,+DAA+D;oBAC5E,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC7C,mBAAmB,EAAE,IAAI;oBACzB,WAAW,EAAE,6HAA6H;oBAC1I,YAAY,EAAE,KAAK;iBACtB;aACJ,CAAC;QACN,CAAC;QAED,0EAA0E;QAC1E,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,4BAA4B,EAAE,CAAC;YACzE,UAAU,GAAG,8DAA8D,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,SAAS,CAAC,MAAM,iBAAiB,CAAC;YACzK,qBAAqB,GAAG,KAAK,CAAC;YAC9B,gBAAgB,GAAG,IAAI,CAAC;QAC5B,CAAC;IACL,CAAC;IAED,oDAAoD;IACpD,MAAM,yBAAyB,GAAG,GAAG,CAAC;IACtC,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,yBAAyB,EAAE,CAAC;QACtE,6CAA6C;QAC7C,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;QACxD,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE9E,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,SAAS,GAAG,uBAAuB,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YAChF,MAAM,aAAa,GAAG,uBAAuB,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YACpF,eAAe,GAAG;;;;;;OAMvB,uBAAuB,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC;;;OAG7D,aAAa;;;OAGb,uBAAuB,CAAC,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC;CACpE,CAAC;QACM,CAAC;QAED,+CAA+C;QAC/C,MAAM,cAAc,GAAG,aAAa;YAChC,CAAC,CAAC,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC;YACnE,CAAC,CAAC,EAAE,CAAC;QAET,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;;;;;;eAMP,MAAM,CAAC,UAAU,MAAM,aAAa,EAAE,IAAI,IAAI,KAAK;8BACpC,aAAa,EAAE,mBAAmB,IAAI,KAAK;2BAC9C,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC;yBACrC,yBAAyB;;;;;;;;EAQhD,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;;EAS7D,eAAe;;;;;;;;;;;;;;CAchB;iBACY,CAAC;YACF,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,qFAAqF;IACrF,iFAAiF;IACjF,IAAI,kBAAkB,GAAG,EAAE,CAAC;IAC5B,IAAI,CAAC,qBAAqB,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,kEAAkE,UAAU,CAAC,MAAM,mCAAmC,CAAC,CAAC;QACrI,kBAAkB,GAAG,4DAA4D,UAAU,CAAC,MAAM,mOAAmO,CAAC;IAC1U,CAAC;IAED,uEAAuE;IACvE,iDAAiD;IACjD,MAAM,kBAAkB,GAAW,UAAW,CAAC;IAE/C,qEAAqE;IACrE,MAAM,cAAc,GAAG,MAAM,gBAAgB,CACzC,MAAM,EACN,aAAa,EAAE,IAAI,IAAI,QAAQ,MAAM,CAAC,UAAU,EAAE,EAClD,SAAS,EACT,IAAI,CAAC,SAAS,IAAI,KAAK,CAC1B,CAAC;IACF,IAAI,cAAc;QAAE,OAAO,cAAc,CAAC;IAE1C,wDAAwD;IACxD,4FAA4F;IAC5F,mFAAmF;IACnF,2DAA2D;IAC3D,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAC9B,MAAM,iBAAiB,GAAG,kBAAkB,IAAI,kBAAkB,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,yBAAyB,CAAC;QAE9G,IAAI,iBAAiB,EAAE,CAAC;YACpB,wEAAwE;YACxE,MAAM,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC;YAC7C,MAAM,CAAC,oBAAoB,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,qBAAqB,GAAG,KAAK,CAAC;YACrC,MAAM,CAAC,eAAe,GAAG,SAAS,CAAC;YACnC,oDAAoD;YACpD,OAAO,CAAC,GAAG,CAAC,mEAAmE,aAAa,wCAAwC,CAAC,CAAC;YACtI,8CAA8C;QAClD,CAAC;aAAM,CAAC;YACJ,6DAA6D;YAC7D,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;YAC5D,MAAM,iBAAiB,GAAG,aAAa;gBACnC,CAAC,CAAC,sBAAsB,CACpB,aAAa,CAAC,IAAI,EAClB,MAAM,CAAC,eAAe,IAAI,CAAC,EAC1B,MAAc,CAAC,wBAAwB,IAAI,EAAE,EAC7C,MAAc,CAAC,wBAAwB,IAAI,EAAE,EAC9C,EAAE,EACF,EAAE,EACF,gBAAgB,EAChB,SAAS,EACT,IAAI,CAAE,qDAAqD;iBAC9D;gBACD,CAAC,CAAC,EAAE,CAAC;YAET,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;;;;;iBAMT,MAAM,CAAC,eAAe,IAAI,uBAAuB;gBAClD,MAAM,CAAC,eAAe;;EAEpC,iBAAiB;;;;;;;;;;;CAWlB;qBACgB,CAAC;aACL,CAAC;QACN,CAAC;IACL,CAAC;IAED,mFAAmF;IACnF,IAAI,MAAM,CAAC,MAAM,KAAK,gBAAgB,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,OAAO,GAAG,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACnD,MAAM,CAAC,sBAAsB,GAAG,OAAO,CAAC;QACxC,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;QAExB,iEAAiE;QACjE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAC7B,MAAM,CAAC,wBAAwB,GAAG,KAAK,CAAC;YACxC,MAAM,CAAC,gCAAgC,GAAG,IAAI,CAAC;YAC/C,MAAM,CAAC,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC;YACtF,oDAAoD;QACxD,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,wBAAwB,GAAG,IAAI,CAAC;YACvC,MAAM,CAAC,gCAAgC,GAAG,KAAK,CAAC;YAEhD,oEAAoE;YACpE,MAAM,CAAC,qBAAqB,GAAG,yBAAyB,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,kBAAkB,EAAE,CAAC,CAAC;YAEjG,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAE5C,MAAM,SAAS,GAAG,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,IAAI,EAAE,CAAC;YAC7E,MAAM,iBAAiB,GAAG,SAAS,CAAC,MAAM;gBACtC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC9E,CAAC,CAAC,cAAc,eAAe,CAAC,CAAC,CAAC,CAAC,oBAAoB,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtG,CAAC,CAAC,sEAAsE,CAAC;YAE7E,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;;;qBAIL,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE;gBAChC,OAAO,CAAC,SAAS;gBACjB,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;kBAO1B,SAAS;;;gBAGX,OAAO,CAAC,KAAK;;;;;;EAM3B,iBAAiB;;;CAGlB;qBACgB,CAAC;gBACF,iBAAiB,EAAE,UAAU,CAAC,OAAO;aACxC,CAAC;QACN,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,mDAAmD;IACnD,IAAI,MAAM,CAAC,wBAAwB,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;YAClD,+BAA+B;YAC/B,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC;YACnD,MAAM,CAAC,wBAAwB,GAAG,KAAK,CAAC;YACxC,MAAM,CAAC,gCAAgC,GAAG,IAAI,CAAC;YAC/C,MAAM,CAAC,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC;YAC5G,MAAM,CAAC,sBAAsB,GAAG,SAAS,CAAC;YAC1C,wCAAwC;QAC5C,CAAC;aAAM,CAAC;YACJ,IAAI,WAAW,GAAG,EAAE,CAAC;YACrB,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;gBAChC,WAAW,GAAG;;;;gBAId,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC,WAAW,EAAE;oBAC7C,MAAM,CAAC,sBAAsB,CAAC,SAAS;CAC1D,CAAC;YACU,CAAC;YAED,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;;;EAIxB,WAAW;;;;;;;;kBAQK,SAAS;;;;;;;;;;;CAW1B;qBACgB,CAAC;aACL,CAAC;QACN,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACxF,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,oBAAoB,MAAM,CAAC,UAAU,4BAA4B,MAAM,CAAC,KAAK,GAAG;iBACzF,CAAC;YACF,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,8EAA8E;IAC9E,kEAAkE;IAClE,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;IACxD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1D,IAAI,gBAAgB,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,SAAS,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAC5G,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO;gBACH,OAAO,EAAE,CAAC;wBACN,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE;;UAEhB,SAAS,CAAC,IAAI;sBACF,gBAAgB;;;kBAGpB,uBAAuB,CAAC,gBAAgB,EAAE,WAAW,EAAE,YAAY,CAAC;kBACpE,uBAAuB,CAAC,gBAAgB,EAAE,WAAW,EAAE,YAAY,CAAC;kBACpE,uBAAuB,CAAC,gBAAgB,EAAE,YAAY,EAAE,YAAY,CAAC;;8FAEO;qBAC7E,CAAC;gBACF,OAAO,EAAE,IAAI;aAChB,CAAC;QACN,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,gFAAgF;IAChF,6FAA6F;IAC7F,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC;IAExC,OAAO,CAAC,GAAG,CAAC,kDAAkD,SAAS,CAAC,IAAI,WAAW,IAAI,GAAG,CAAC,CAAC;IAEhG,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC;IACxF,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;IAEpD,IAAI,gBAAgB,CAAC;IACrB,IAAI,CAAC;QACD,gBAAgB,GAAG,MAAM,kBAAkB,CAAC,mBAAmB,CAC3D,kBAAkB,EAClB,SAAS,CAAC,IAAI,EACd,IAAyC,EACzC,SAAS,CAAC,cAAc,IAAI,EAAE,CACjC,CAAC;IACN,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;QACxE,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;;oDAE8B,SAAS,CAAC,IAAI;;YAEtD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;;;;;;;gDAOlB;iBACnC,CAAC;YACF,OAAO,EAAE,IAAI;SAChB,CAAC;IACN,CAAC;IAED,yFAAyF;IACzF,2FAA2F;IAC3F,+EAA+E;IAC/E,uFAAuF;IACvF,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IACxE,MAAM,cAAc,GAAG,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IAElF,2EAA2E;IAC3E,MAAM,sBAAsB,GAAa,EAAE,CAAC;IAC5C,MAAM,sBAAsB,GAAa,EAAE,CAAC;IAE5C,uEAAuE;IACvE,MAAM,kBAAkB,GAAG,SAAS,CAAC,cAAc,IAAI,EAAE,CAAC;IAC1D,MAAM,oBAAoB,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC;IAE9D,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,CAAC;QACpC,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE;aAC9B,OAAO,CAAC,mCAAmC,EAAE,EAAE,CAAC;aAChD,KAAK,CAAC,KAAK,CAAC;aACZ,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEzC,oDAAoD;QACpD,gEAAgE;QAChE,+EAA+E;QAC/E,MAAM,gBAAgB,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;QAE9D,6DAA6D;QAC7D,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAU,EAAE,EAAE;YACnD,4BAA4B;YAC5B,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC;YACnD,8BAA8B;YAC9B,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAEtF,4FAA4F;QAC5F,kDAAkD;QAClD,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAEnD,IAAI,UAAU,IAAI,SAAS,EAAE,CAAC;YAC1B,sBAAsB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACJ,sBAAsB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED,iFAAiF;IACjF,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,QAAQ,KAAK,UAAU,IAAI,KAAK,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC7D,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACzF,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,sBAAsB,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtD,CAAC;QACL,CAAC;IACL,CAAC;IAED,mCAAmC;IACnC,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC;IACzF,MAAM,sBAAsB,GAAG,kBAAkB,GAAG,CAAC;QACjD,CAAC,CAAC,CAAC,sBAAsB,CAAC,MAAM,GAAG,kBAAkB,CAAC,GAAG,GAAG;QAC5D,CAAC,CAAC,GAAG,CAAC;IAEV,iDAAiD;IACjD,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,MAAM,eAAe,GAAG,uBAAuB,CAC3C,gBAAgB,CAAC,YAAY,EAC7B,sBAAsB,EACtB,gBAAgB,EAChB,SAAS,CAAC,IAAI,CACjB,CAAC;IACF,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC;IAE3C,qFAAqF;IACrF,MAAM,aAAa,GAAG;QAClB,MAAM,EAAE,gBAAgB,CAAC,MAAM,IAAI,sBAAsB,CAAC,MAAM,KAAK,CAAC;QACtE,eAAe,EAAE,sBAAsB;QACvC,eAAe,EAAE,sBAAsB;QACvC,SAAS,EAAE,CAAC,GAAG,cAAc,EAAE,GAAG,gBAAgB,CAAC,eAAe,CAAC;KACtE,CAAC;IAEF,MAAM,eAAe,GAAG;QACpB,MAAM,EAAE,gBAAgB,CAAC,MAAM;QAC/B,KAAK,EAAE,YAAY;QACnB,kBAAkB,EAAE,sBAAsB;QAC1C,eAAe,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxE,UAAU,EAAE,gBAAgB,KAAK,GAAG;QACpC,QAAQ,EAAE,CAAC,GAAG,gBAAgB,CAAC,eAAe,EAAE,GAAG,cAAc,CAAC;KACrE,CAAC;IAEF,iCAAiC;IACjC,OAAO,CAAC,GAAG,CAAC,wDAAwD,gBAAgB,CAAC,YAAY,oBAAoB,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,gBAAgB,kBAAkB,YAAY,WAAW,sBAAsB,CAAC,MAAM,KAAK,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC;IAEtS,OAAO,CAAC,GAAG,CAAC,mDAAmD,YAAY,iBAAiB,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;IAEvH,sEAAsE;IACtE,MAAM,kBAAkB,GAAG,MAAM,CAAC,eAAe,CAAC;IAClD,MAAM,SAAS,GAAG,CAAC,kBAAkB,IAAI,IAAI,IAAI,kBAAkB,KAAK,YAAY,CAAC;QACjF,CAAC,CAAC,8BAA8B,kBAAkB,qBAAqB,YAAY,SAAS,YAAY,GAAG,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,YAAY,GAAG,kBAAkB,KAAK;QACvL,CAAC,CAAC,EAAE,CAAC;IAET,6DAA6D;IAC7D,IAAI,YAAY,GAAG,EAAE,EAAE,CAAC;QACpB,4DAA4D;QAC5D,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACpC,MAAM,CAAC,oBAAoB,GAAG,KAAK,CAAC,CAAC,sDAAsD;QAC3F,IAAI,CAAC;YACD,MAAM,QAAQ,CAAC,GAAG,SAAS,uBAAuB,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;QAC1F,CAAC;QAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAE5B,MAAM,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;QAC3D,MAAM,gBAAgB,GAAG,sBAAsB,CAC3C,SAAS,CAAC,IAAI,EACd,YAAY,EACZ,aAAa,CAAC,eAAe,IAAI,EAAE,EACnC,aAAa,CAAC,eAAe,IAAI,EAAE,EACnC,aAAa,CAAC,SAAS,IAAI,EAAE,EAC7B,eAAe,CAAC,eAAe,IAAI,EAAE,EACrC,eAAe,EACf,SAAS,CAAE,wCAAwC;SACtD,CAAC;QAEF,+BAA+B;QAC/B,MAAM,uBAAuB,GAAG,qBAAqB,IAAI,gBAAgB;YACrE,CAAC,CAAC,kCAAkC,gBAAgB,QAAQ;YAC5D,CAAC,CAAC,CAAC,gBAAgB,IAAI,aAAa;gBAChC,CAAC,CAAC,sFAAsF;gBACxF,CAAC,CAAC,EAAE,CAAC;QAEb,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;;EAEpB,uBAAuB,aAAa,YAAY;EAChD,SAAS;;;EAGT,gBAAgB;;;;6HAI2G;iBAChH,CAAC;SACL,CAAC;IACN,CAAC;IAED,oFAAoF;IACpF,IAAI,YAAY,GAAG,EAAE,EAAE,CAAC;QACpB,mCAAmC;QACnC,MAAM,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,MAAM,CAAC,eAAe,GAAG,kDAAkD,CAAC;QAC5E,MAAM,CAAC,eAAe,GAAG,YAAY,CAAC;QACtC,kEAAkE;QAClE,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC;QACpC,8DAA8D;QAC9D,MAAM,CAAC,wBAAwB,GAAG,aAAa,CAAC,eAAe,IAAI,EAAE,CAAC;QACtE,MAAM,CAAC,wBAAwB,GAAG,aAAa,CAAC,eAAe,IAAI,EAAE,CAAC;QAEtE,8BAA8B;QAC9B,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAEjD,kDAAkD;QAClD,IAAI,CAAC;YACD,MAAM,QAAQ,CAAC,GAAG,SAAS,IAAI,eAAe,CAAC,IAAI,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;QACrE,CAAC;QAED,wDAAwD;QACxD,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;QAC5D,MAAM,iBAAiB,GAAG,sBAAsB,CAC5C,SAAS,CAAC,IAAI,EACd,YAAY,EACZ,aAAa,CAAC,eAAe,IAAI,EAAE,EACnC,aAAa,CAAC,eAAe,IAAI,EAAE,EACnC,aAAa,CAAC,SAAS,IAAI,EAAE,EAC7B,eAAe,CAAC,eAAe,IAAI,EAAE,EACrC,gBAAgB,EAChB,SAAS,EACT,IAAI,CAAE,6DAA6D;SACtE,CAAC;QAEF,+BAA+B;QAC/B,MAAM,wBAAwB,GAAG,qBAAqB,IAAI,gBAAgB;YACtE,CAAC,CAAC,kCAAkC,gBAAgB,QAAQ;YAC5D,CAAC,CAAC,CAAC,gBAAgB,IAAI,aAAa;gBAChC,CAAC,CAAC,sFAAsF;gBACxF,CAAC,CAAC,EAAE,CAAC;QAEb,OAAO;YACH,OAAO,EAAE,CAAC;oBACN,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;;EAEpB,wBAAwB,aAAa,YAAY;EACjD,SAAS;;;EAGT,iBAAiB;;;;;;;;;;;;;CAalB;iBACY,CAAC;YACF,iBAAiB,EAAE,eAAe,CAAC,OAAO;SAC7C,CAAC;IACN,CAAC;IAED,iDAAiD;IAEjD,gCAAgC;IAChC,MAAM,WAAW,GAA6C,EAAE,CAAC;IAEjE,wBAAwB;IACxB,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC,mBAAmB,CAAC;IACvE,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,8CAA8C;IACrH,MAAM,cAAc,GAAG,GAAG,SAAS,SAAS,WAAW,IAAI,WAAW,EAAE,CAAC;IAEzE,WAAW,CAAC,IAAI,CAAC;QACb,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE,kBAAkB;KAC9B,CAAC,CAAC;IAEH,6CAA6C;IAC7C,MAAM,CAAC,WAAW,CAAC,QAAQ,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,cAAc,CAAC;IAEjE,+EAA+E;IAC/E,MAAM,CAAC,qBAAqB,GAAG,KAAK,CAAC;IACrC,MAAM,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACpC,MAAM,CAAC,eAAe,GAAG,SAAS,CAAC;IACnC,MAAM,CAAC,eAAe,GAAG,SAAS,CAAC;IAEnC,uFAAuF;IACvF,wGAAwG;IACxG,MAAM,cAAc,GAAqD;QACrE,uDAAuD;QACvD,SAAS,EAAE,gBAAgB;QAC3B,iFAAiF;QACjF,YAAY,EAAE,SAAS;QACvB,WAAW,EAAE,SAAS;QACtB,mBAAmB,EAAE,SAAS;QAC9B,aAAa,EAAE,SAAS;QACxB,sBAAsB,EAAE,SAAS;QACjC,SAAS,EAAE,SAAS;QACpB,cAAc,EAAE,SAAS;QACzB,cAAc,EAAE,SAAS,EAAG,sCAAsC;QAClE,mEAAmE;QACnE,gBAAgB,EAAE,WAAW;QAC7B,WAAW,EAAE,WAAW;QACxB,QAAQ,EAAE,WAAW;QACrB,aAAa,EAAE,WAAW;QAC1B,iBAAiB,EAAE,WAAW;QAC9B,UAAU,EAAE,WAAW;QACvB,SAAS,EAAE,WAAW;QACtB,YAAY,EAAE,WAAW;QACzB,cAAc,EAAE,WAAW;KAC9B,CAAC;IAEF,4BAA4B;IAC5B,IAAI,MAAsB,CAAC;IAC3B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACxJ,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACrH,CAAC;IAED,+BAA+B;IAC/B,MAAM,aAAa,GAAG,uBAAuB,CAAC,kBAAkB,EAAE,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;IAEpJ,MAAM,cAAc,GAAqB;QACrC,IAAI,EAAE,MAAM,CAAC,UAAU;QACvB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,IAAI,EAAE,SAAS,CAAC,mBAAmB;QACnC,OAAO,EAAE,cAAc;QACvB,MAAM,EAAE,aAAa,CAAC,MAAM;QAC5B,YAAY,EAAE,aAAa,CAAC,YAAY;QACxC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACtC,CAAC;IAEF,8CAA8C;IAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC;IACpF,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,cAAc,CAAC;IACrD,CAAC;SAAM,CAAC;QACJ,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAED,sFAAsF;IACtF,IAAI,iBAAiB,GAAG,EAAE,CAAC;IAE3B,uDAAuD;IACvD,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,CAAC;QACpC,MAAM,CAAC,yBAAyB,GAAG;YAC/B,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,gBAAgB,EAAE,IAAI;YACtB,eAAe,EAAE,EAAE;YACnB,MAAM,EAAE,EAAE;YACV,gBAAgB,EAAE,EAAE;YACpB,iBAAiB,EAAE,EAAE;SACxB,CAAC;IACN,CAAC;IAED,uCAAuC;IACvC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,eAAe,CAC9D,kBAAkB,EAClB,SAAS,EACT,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAC1C,CAAC;IACF,MAAM,CAAC,yBAAyB,CAAC,MAAM,GAAG,iBAAiB,CAAC;IAE5D,mEAAmE;IACnE,sEAAsE;IACtE,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,yBAAyB,CACzE,MAAM,CAAC,UAAU,EACjB,kBAAkB,CACrB,CAAC;QAEF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAChC,yDAAyD;YACzD,MAAM,CAAC,yBAAyB,CAAC,MAAM,GAAG;gBACtC,GAAG,MAAM,CAAC,yBAAyB,CAAC,MAAM;gBAC1C,GAAG,kBAAkB;aACxB,CAAC;QACN,CAAC;IACL,CAAC;IAED,6FAA6F;IAC7F,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,wBAAwB,CAAC,UAAU,CACvF,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAC1C,CAAC;IAEF,wCAAwC;IACxC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,iBAAiB,CACvD,MAAM,CAAC,yBAAyB,CAAC,WAAW,EAC5C,cAAc,EACd,MAAM,CAAC,UAAU,CACpB,CAAC;IAEF,sCAAsC;IACtC,MAAM,CAAC,yBAAyB,CAAC,eAAe,GAAG,SAAS,CAAC;IAC7D,MAAM,CAAC,yBAAyB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE3E,6DAA6D;IAC7D,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,IAAI,CAAC;YACnD,IAAI,EAAE,MAAM,CAAC,UAAU;YACvB,KAAK,EAAE,cAAc;YACrB,MAAM,EAAE,uBAAuB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACxD,CAAC,CAAC;QACH,MAAM,CAAC,yBAAyB,CAAC,WAAW,GAAG,cAAc,CAAC;QAC9D,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;QAC9B,MAAM,CAAC,WAAW,GAAG,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC;QAEvF,iBAAiB,GAAG;;;;;aAKf,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE;eACvB,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE;6BACb,QAAQ,CAAC,gBAAgB;yBAC7B,MAAM,CAAC,WAAW;oBACvB,SAAS;;;EAG3B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;CAIxC,CAAC;IACE,CAAC;SAAM,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;QACjC,sCAAsC;QACtC,MAAM,CAAC,yBAAyB,CAAC,WAAW,GAAG,cAAc,CAAC;QAC9D,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;QAC9B,MAAM,CAAC,WAAW,GAAG,iBAAiB,CAAC,cAAc,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC;QAEvF,iBAAiB,GAAG;;;;;gBAKZ,cAAc,CAAC,WAAW,EAAE;oBACxB,SAAS;yBACJ,MAAM,CAAC,WAAW;;;EAGzC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;CAIxC,CAAC;IACE,CAAC;SAAM,CAAC;QACJ,sCAAsC;QACtC,MAAM,UAAU,GAAG,MAAM,CAAC,yBAAyB,CAAC,WAAW,KAAK,cAAc,CAAC;QACnF,IAAI,UAAU,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACnC,oDAAoD;YACpD,MAAM,CAAC,yBAAyB,CAAC,WAAW,GAAG,cAAc,CAAC;YAC9D,MAAM,CAAC,KAAK,GAAG,cAAc,CAAC;QAClC,CAAC;QAED,iBAAiB,GAAG;;;;;sBAKN,MAAM,CAAC,yBAAyB,CAAC,WAAW,CAAC,WAAW,EAAE;oBAC5D,SAAS;4BACD,iBAAiB,CAAC,MAAM;;;EAGlD,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;CACpD,CAAC;IACE,CAAC;IAED,gDAAgD;IAChD,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACvD,MAAM,CAAC,yBAAyB,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC1D,iBAAiB,IAAI,yEAAyE,CAAC;IACnG,CAAC;IAED,kEAAkE;IAClE,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACnG,MAAM,WAAW,GAAG,gBAAgB,EAAE,IAAI;QACtC,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjG,IAAI,WAAW,IAAI,kBAAkB,EAAE,CAAC;QACpC,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,4BAA4B,CAAC,kBAAkB,EAAE,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YACzF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;gBACtD,OAAO,CAAC,GAAG,CAAC,mBAAmB,QAAQ,CAAC,MAAM,4BAA4B,MAAM,CAAC,UAAU,GAAG,CAAC,KAAK,gBAAgB,EAAE,IAAI,GAAG,CAAC,CAAC;YACnI,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,wEAAwE,EAAE,GAAG,CAAC,CAAC;QAChG,CAAC;IACL,CAAC;IAED,4BAA4B;IAC5B,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC;IAEvC,IAAI,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;QACvB,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAE1F,+BAA+B;IAC/B,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IAC9F,IAAI,eAAe,EAAE,CAAC;QAClB,MAAM,CAAC,cAAc,GAAG;YACpB,SAAS,EAAE,eAAe,CAAC,IAAI;YAC/B,QAAQ,EAAE,eAAe,eAAe,CAAC,mBAAmB,EAAE;YAC9D,aAAa,EAAE,iBAAiB,eAAe,CAAC,YAAY,0BAA0B;YACtF,YAAY,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;SACpD,CAAC;IACN,CAAC;IACD,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACtC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5B,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAExC,6BAA6B;IAC7B,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAE7C,WAAW,CAAC,IAAI,CAAC;QACb,IAAI,EAAE,GAAG,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE;QACvC,OAAO,EAAE,UAAU,CAAC,OAAO;KAC9B,CAAC,CAAC;IACH,WAAW,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,GAAG,SAAS,IAAI,CAAC,CAAC,IAAI,EAAE;QAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;KACrB,CAAC,CAAC,CAAC,CAAC;IAEL,gDAAgD;IAChD,IAAI,CAAC;QACD,MAAM,QAAQ,CAAC,SAAS,EAAE;YACtB,IAAI,EAAE,UAAU,CAAC,gBAAgB;YACjC,IAAI,EAAE,MAAM,CAAC,UAAU;YACvB,IAAI,EAAE;gBACF,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,MAAM,CAAC,UAAU;gBACvB,UAAU,EAAE,cAAc;gBAC1B,KAAK,EAAE,YAAY;aACtB;SACJ,CAAC,CAAC;QAEH,IAAI,WAAW,EAAE,CAAC;YACd,MAAM,aAAa,CACf,SAAS,EACT,MAAM,EACN,WAAW,CAAC,IAAI,EAChB,WAAW,CAAC,YAAY,EACxB,WAAW,CAAC,cAAc,CAC7B,CAAC;QACN,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,IAAI,CAAC,wDAAwD,EAAE,KAAK,CAAC,CAAC;IAClF,CAAC;IAED,kEAAkE;IAClE,8EAA8E;IAC9E,IAAI,WAAW,EAAE,CAAC;QACd,IAAI,CAAC;YACD,MAAM,mBAAmB,GAAG,MAAM,0BAA0B,CACxD,SAAS,EACT,WAAW,CAAC,IAAI,EAChB,MAAM,CAAC,UAAU,CACpB,CAAC;YACF,iEAAiE;YACjE,MAAM,CAAC,eAAe,GAAG,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC;YACvE,IAAI,mBAAmB,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,kCAAkC,mBAAmB,EAAE,CAAC,CAAC;YACzE,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,4DAA4D,EAAE,KAAK,CAAC,CAAC;QACtF,CAAC;IACL,CAAC;IAED,iEAAiE;IACjE,8DAA8D;IAC9D,eAAe,CAAC,SAAS,CAAC,CAAC;IAC3B,qEAAqE;IACrE,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,kBAAkB,GAAG,QAAQ,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;QACzI,MAAM,qBAAqB,GAAG,GAAG,SAAS,SAAS,kBAAkB,IAAI,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAC3G,gBAAgB,CAAC;YACb,QAAQ,EAAE,qBAAqB;YAC/B,SAAS;YACT,QAAQ,EAAE,WAAW,CAAC,IAAI;YAC1B,IAAI,EAAE,MAAM,CAAC,SAAS,IAAI,MAAM;YAChC,aAAa,EAAE,WAAW,CAAC,cAAc,IAAI,EAAE;YAC/C,kBAAkB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;gBAC9C,wEAAwE;gBACxE,OAAO,CAAC,GAAG,CAAC,2DAA2D,WAAW,CAAC,IAAI,aAAa,KAAK,MAAM,QAAQ,EAAE,CAAC,CAAC;gBAC3H,IAAI,KAAK,IAAI,CAAC;oBAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,QAAQ,gDAAgD,CAAC,CAAC;YAClH,CAAC;SACJ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,+CAA+C,EAAE,GAAG,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,yFAAyF;IAEzF,8DAA8D;IAC9D,MAAM,eAAe,GAAG,qBAAqB,IAAI,gBAAgB;QAC7D,CAAC,CAAC;iDACuC,gBAAgB;;CAEhE;QACO,CAAC,CAAC,EAAE,CAAC;IAET,yEAAyE;IACzE,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QACvC,IAAI,CAAC,WAAW;YAAE,OAAO,EAAE,CAAC;QAE5B,MAAM,YAAY,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,CAAC,YAAY;YAAE,OAAO,EAAE,CAAC;QAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;QAC7D,OAAO;;;;EAIb,2BAA2B,CAAC,YAAY,EAAE,GAAG,EAAE,SAAS,CAAC;CAC1D,CAAC;IACE,CAAC,CAAC,EAAE,CAAC;IAEL,sFAAsF;IACtF,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC;IACxE,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzG,MAAM,iBAAiB,GAAG,2BAA2B,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAE7G,gDAAgD;IAChD,MAAM,mBAAmB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;QAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACpE,OAAO,oGAAoG,OAAO,IAAI,WAAW,CAAC,mBAAmB,4CAA4C,OAAO,yLAAyL,CAAC;IACtY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEV,MAAM,QAAQ,GAAG,YAAY,YAAY;;;IAGzC,cAAc;;EAEhB,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,iBAAiB;EAC5D,iBAAiB;;;;YAIP,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW,EAAE,IAAI,IAAI,WAAW;;;;uBAIjE,WAAW,EAAE,YAAY,IAAI,GAAG;qBAClC,WAAW,EAAE,mBAAmB,IAAI,GAAG;;EAE1D,sBAAsB,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC;;;EAG5D,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ;EAC/E,mBAAmB;EACnB,iBAAiB;EACjB,gBAAgB;;;CAGjB,CAAC;IAEE,kDAAkD;IAClD,yFAAyF;IACzF,MAAM,YAAY,GAAG,0BAA0B,CAC3C,SAAS,EACT,YAAY,EACZ,WAAW,EAAE,IAAI,IAAI,EAAE,EACvB,MAAM,CAAC,eAAe,IAAI,SAAS,CACtC,CAAC;IAEF,8DAA8D;IAC9D,IAAI,CAAC;QACD,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,WAAW,GAAG,4BAA4B,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAE/E,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE/E,sGAAsG;IACtG,qFAAqF;IACrF,OAAO;QACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,eAAe,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,EAAE,CAAC;QAC/G,iBAAiB,EAAE,UAAU,CAAC,OAAO;QACrC,kBAAkB,EAAE,UAAU,IAAI,SAAS;QAC3C,0EAA0E;KAC7E,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IACzB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACR,UAAU,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sCAAsC;SACtD;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,0CAA0C;SAC1D;QACD,WAAW,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,qDAAqD;SACrE;QACD,YAAY,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,wCAAwC;SACxD;QACD,SAAS,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,+BAA+B;SAC/C;QACD,SAAS,EAAE;YACP,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,2IAA2I;SAC3J;KACJ;IACD,QAAQ,EAAE,CAAC,aAAa,EAAE,WAAW,CAAC,EAAG,sCAAsC;CAClF,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * v7.1 FIX 4: Mapa de sinônimos pt↔en para validação de gate checklist.
3
+ *
4
+ * O problema: gate checklist items em português (ex: "Versionamento definido")
5
+ * eram validados via keyword matching literal no conteúdo do entregável.
6
+ * Conteúdo em inglês (ex: YAML com "version: 1.0.0") não continha "versionamento",
7
+ * causando falhas falsas no gate.
8
+ *
9
+ * Solução: expandir cada keyword com sinônimos em ambos os idiomas,
10
+ * termos técnicos equivalentes e variações comuns.
11
+ */
12
+ /**
13
+ * Mapa de sinônimos: keyword → lista de termos equivalentes.
14
+ * Inclui traduções pt↔en, abreviações e termos técnicos.
15
+ * Todas as chaves e valores devem ser lowercase.
16
+ */
17
+ export declare const KEYWORD_SYNONYMS: Record<string, string[]>;
18
+ /**
19
+ * Expande uma lista de keywords com seus sinônimos.
20
+ * Retorna a lista original + todos os sinônimos encontrados (sem duplicatas).
21
+ */
22
+ export declare function expandKeywordsWithSynonyms(keywords: string[]): string[];
23
+ //# sourceMappingURL=gate-synonyms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gate-synonyms.d.ts","sourceRoot":"","sources":["../../src/utils/gate-synonyms.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAiJrD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAavE"}