@trenchwork/coder 1.5.9 → 1.5.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/config.d.ts +2 -0
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +25 -23
  4. package/dist/config.js.map +1 -1
  5. package/dist/contracts/agent-schemas.json +19 -22
  6. package/dist/core/agent.d.ts.map +1 -1
  7. package/dist/core/agent.js +37 -2
  8. package/dist/core/agent.js.map +1 -1
  9. package/dist/core/contextManager.d.ts.map +1 -1
  10. package/dist/core/contextManager.js +10 -1
  11. package/dist/core/contextManager.js.map +1 -1
  12. package/dist/core/contextWindow.d.ts.map +1 -1
  13. package/dist/core/contextWindow.js +7 -47
  14. package/dist/core/contextWindow.js.map +1 -1
  15. package/dist/core/modelDiscovery.d.ts.map +1 -1
  16. package/dist/core/modelDiscovery.js +2 -3
  17. package/dist/core/modelDiscovery.js.map +1 -1
  18. package/dist/headless/interactiveShell.js +19 -7
  19. package/dist/headless/interactiveShell.js.map +1 -1
  20. package/dist/plugins/providers/deepseek/index.d.ts.map +1 -1
  21. package/dist/plugins/providers/deepseek/index.js +7 -2
  22. package/dist/plugins/providers/deepseek/index.js.map +1 -1
  23. package/dist/providers/openaiChatCompletionsProvider.d.ts.map +1 -1
  24. package/dist/providers/openaiChatCompletionsProvider.js +15 -33
  25. package/dist/providers/openaiChatCompletionsProvider.js.map +1 -1
  26. package/dist/runtime/agentController.d.ts +1 -1
  27. package/dist/runtime/agentController.d.ts.map +1 -1
  28. package/dist/runtime/agentController.js +10 -5
  29. package/dist/runtime/agentController.js.map +1 -1
  30. package/dist/runtime/agentSession.d.ts.map +1 -1
  31. package/dist/runtime/agentSession.js +15 -2
  32. package/dist/runtime/agentSession.js.map +1 -1
  33. package/package.json +1 -1
package/dist/config.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import type { ProviderId } from './core/types.js';
2
2
  import { type ProfileName } from './core/agentProfiles.js';
3
3
  export type { ProfileName } from './core/agentProfiles.js';
4
+ export declare const LOCKED_MODEL = "deepseek-v4-pro";
5
+ export declare const LOCKED_PROVIDER: ProviderId;
4
6
  export interface ResolvedProfileConfig {
5
7
  profile: ProfileName;
6
8
  label: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAKjC,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AA2B3D,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,UAAU,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAgBD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,qBAAqB,CAwDjH"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,yBAAyB,CAAC;AAKjC,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAO3D,eAAO,MAAM,YAAY,oBAAoB,CAAC;AAC9C,eAAO,MAAM,eAAe,EAAE,UAAuB,CAAC;AA2BtD,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,UAAU,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,uBAAuB,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAgBD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,qBAAqB,CAsDjH"}
package/dist/config.js CHANGED
@@ -3,7 +3,14 @@ import { fileURLToPath } from 'node:url';
3
3
  import { registerAgentProfile, hasAgentProfile, getAgentProfile, } from './core/agentProfiles.js';
4
4
  import { buildAgentRulebookPrompt, loadAgentRulebook } from './core/agentRulebook.js';
5
5
  import { getAgentProfileManifest } from './core/agentProfileManifest.js';
6
- import { inferProviderFromModelId } from './core/modelDiscovery.js';
6
+ import { logDebug } from './utils/debugLogger.js';
7
+ // The product is locked to a single model on a single provider. This is the
8
+ // ONE source of truth for that lock — runtime model/provider resolution
9
+ // coerces to these, and nothing (env var, profile blueprint, model-inference)
10
+ // can route to anything else. Transparency over secrecy (Glasswing): the lock
11
+ // is a plain, inspectable constant, not a hidden override.
12
+ export const LOCKED_MODEL = 'deepseek-v4-pro';
13
+ export const LOCKED_PROVIDER = 'deepseek';
7
14
  // Ultracode operating-mode directive. ALWAYS appended to the system prompt
8
15
  // (baked in, no toggle) — Trenchwork runs DeepSeek v4 Pro on max thinking
9
16
  // budget and this directive tunes it for long-horizon, multi-file work as
@@ -39,27 +46,25 @@ for (const profile of DEFAULT_PROFILES) {
39
46
  export function resolveProfileConfig(profile, workspaceContext) {
40
47
  const blueprint = getAgentProfile(profile);
41
48
  const envPrefix = toEnvPrefix(blueprint.name);
49
+ // Model + provider are HARD-LOCKED (see LOCKED_MODEL/LOCKED_PROVIDER). The
50
+ // product supports deepseek-v4-pro only — there is no model switching. A
51
+ // _MODEL / _PROVIDER env var that points elsewhere is ignored (warned once
52
+ // in debug) rather than silently honored, so the lock can't be bypassed.
42
53
  const modelEnv = process.env[`${envPrefix}_MODEL`];
43
- const modelLocked = typeof modelEnv === 'string' && modelEnv.trim().length > 0;
44
- const model = modelLocked ? modelEnv.trim() : blueprint.defaultModel;
45
- const inferredProvider = inferProviderFromModelId(model);
46
- const systemPrompt = process.env[`${envPrefix}_SYSTEM_PROMPT`] ?? blueprint.defaultSystemPrompt;
54
+ if (typeof modelEnv === 'string' && modelEnv.trim() && modelEnv.trim() !== LOCKED_MODEL) {
55
+ logDebug(`[config] ignoring ${envPrefix}_MODEL=${modelEnv.trim()} locked to ${LOCKED_MODEL}`);
56
+ }
47
57
  const providerEnv = process.env[`${envPrefix}_PROVIDER`];
48
- const providerCandidate = isProviderValue(providerEnv) ? providerEnv.trim() : null;
49
- const providerLocked = Boolean(providerCandidate) && (!inferredProvider || providerCandidate === inferredProvider);
50
- const provider = (() => {
51
- if (providerCandidate && inferredProvider && providerCandidate !== inferredProvider) {
52
- // Prefer the model-aligned provider over a mismatched env override
53
- return inferredProvider;
54
- }
55
- if (providerCandidate) {
56
- return providerCandidate;
57
- }
58
- if (inferredProvider) {
59
- return inferredProvider;
60
- }
61
- return blueprint.defaultProvider;
62
- })();
58
+ if (typeof providerEnv === 'string' && providerEnv.trim() && providerEnv.trim() !== LOCKED_PROVIDER) {
59
+ logDebug(`[config] ignoring ${envPrefix}_PROVIDER=${providerEnv.trim()} locked to ${LOCKED_PROVIDER}`);
60
+ }
61
+ const model = LOCKED_MODEL;
62
+ const provider = LOCKED_PROVIDER;
63
+ // Retained on the resolved config for the chrome that reads them; both are
64
+ // now structurally always true (the lock).
65
+ const modelLocked = true;
66
+ const providerLocked = true;
67
+ const systemPrompt = process.env[`${envPrefix}_SYSTEM_PROMPT`] ?? blueprint.defaultSystemPrompt;
63
68
  const rulebook = loadRulebookMetadata(blueprint);
64
69
  const contextBlock = workspaceContext?.trim()
65
70
  ? `\n\nWorkspace context (auto-detected):\n${workspaceContext.trim()}`
@@ -90,9 +95,6 @@ function toEnvPrefix(profile) {
90
95
  .toUpperCase()
91
96
  .replace(/[^A-Z0-9]/g, '_');
92
97
  }
93
- function isProviderValue(value) {
94
- return typeof value === 'string' && value.trim().length > 0;
95
- }
96
98
  function loadRulebookMetadata(profile) {
97
99
  try {
98
100
  // Check if rulebook is inline
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,eAAe,GAGhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACtF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIlD,4EAA4E;AAC5E,wEAAwE;AACxE,8EAA8E;AAC9E,8EAA8E;AAC9E,2DAA2D;AAC3D,MAAM,CAAC,MAAM,YAAY,GAAG,iBAAiB,CAAC;AAC9C,MAAM,CAAC,MAAM,eAAe,GAAe,UAAU,CAAC;AAEtD,2EAA2E;AAC3E,0EAA0E;AAC1E,0EAA0E;AAC1E,iEAAiE;AACjE,sCAAsC;AACtC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;4LAkBgK,CAAC;AAwB7L,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAE5E,MAAM,gBAAgB,GAAG,uBAAuB,EAAE,CAAC;AAEnD,MAAM,gBAAgB,GAA4B,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACxF,4BAA4B,CAAC,KAAK,EAAE,gBAAgB,EAAE,YAAY,CAAC,CACpE,CAAC;AAEF,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;IACvC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAoB,EAAE,gBAA+B;IACxF,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAE3C,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAE9C,2EAA2E;IAC3E,yEAAyE;IACzE,2EAA2E;IAC3E,yEAAyE;IACzE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,QAAQ,CAAC,CAAC;IACnD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,YAAY,EAAE,CAAC;QACxF,QAAQ,CAAC,qBAAqB,SAAS,UAAU,QAAQ,CAAC,IAAI,EAAE,gBAAgB,YAAY,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,WAAW,CAAC,CAAC;IACzD,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;QACpG,QAAQ,CAAC,qBAAqB,SAAS,aAAa,WAAW,CAAC,IAAI,EAAE,gBAAgB,eAAe,EAAE,CAAC,CAAC;IAC3G,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC;IAC3B,MAAM,QAAQ,GAAG,eAAe,CAAC;IACjC,2EAA2E;IAC3E,2CAA2C;IAC3C,MAAM,WAAW,GAAG,IAAI,CAAC;IACzB,MAAM,cAAc,GAAG,IAAI,CAAC;IAE5B,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,gBAAgB,CAAC,IAAI,SAAS,CAAC,mBAAmB,CAAC;IAEhG,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAEjD,MAAM,YAAY,GAAG,gBAAgB,EAAE,IAAI,EAAE;QAC3C,CAAC,CAAC,2CAA2C,gBAAgB,CAAC,IAAI,EAAE,EAAE;QACtE,CAAC,CAAC,EAAE,CAAC;IAEP,2EAA2E;IAC3E,MAAM,cAAc,GAAG,OAAO,mBAAmB,EAAE,CAAC;IAEpD,MAAM,QAAQ,GAA0B;QACtC,OAAO;QACP,KAAK,EAAE,SAAS,CAAC,KAAK;QACtB,QAAQ;QACR,KAAK;QACL,YAAY,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,GAAG,cAAc,GAAG,YAAY,EAAE;QACtE,WAAW;QACX,cAAc;QACd,QAAQ;KACT,CAAC;IAEF,IAAI,OAAO,SAAS,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QAC9C,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;IAC/C,CAAC;IACD,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC5C,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;IAC3C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,WAAW,CAAC,OAAoB;IACvC,OAAO,OAAO;SACX,IAAI,EAAE;SACN,WAAW,EAAE;SACb,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,oBAAoB,CAAC,OAA8B;IAC1D,IAAI,CAAC;QACH,8BAA8B;QAC9B,MAAM,WAAW,GAAG,OAAO,CAAC,QAAe,CAAC,CAAC,yDAAyD;QACtG,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM;YACjC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;YACjE,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE;gBAC9B,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,WAAW,CAAC,IAAI;aACvB,CAAC,CAAC;QAEP,OAAO;YACL,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,OAAO;YACzC,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,eAAe,EAAE,QAAQ,CAAC,eAAe;YACzC,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW;YACjE,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,UAAU;SACrC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,QAAe,CAAC,CAAC,yDAAyD;QACtG,MAAM,QAAQ,GAA4B;YACxC,OAAO,EAAE,OAAO,CAAC,IAAI;YACrB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,WAAW,CAAC,OAAO,IAAI,SAAS;YACzC,eAAe,EAAE,WAAW,CAAC,eAAe,IAAI,SAAS;YACzD,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,UAAU;SACrC,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CACnC,KAAwB,EACxB,QAA8B,EAC9B,IAAY;IAEZ,MAAM,mBAAmB,GAAG,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAElE,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,kBAAkB,EAAE,KAAK,CAAC,YAAY;QACtC,mBAAmB;QACnB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,eAAe,EAAE,QAAQ,CAAC,OAAO;QACjC,uBAAuB,EAAE,QAAQ,CAAC,eAAe;KAClD,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAwB,EAAE,IAAY;IACtE,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;QACxC,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACrC,CAAC;QAED,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,cAAc,CAAC;QACjE,8BAA8B;QAC9B,MAAM,WAAW,GAAG,KAAK,CAAC,QAAe,CAAC,CAAC,yDAAyD;QACpG,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM;YACvC,CAAC,CAAC,wBAAwB,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE;YAC7E,CAAC,CAAC,wBAAwB,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAClF,MAAM,YAAY,GAA2B;YAC3C,QAAQ,EAAE,cAAc;YACxB,OAAO,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI;YAClC,YAAY,EAAE,KAAK,CAAC,IAAI;SACzB,CAAC;QAEF,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAC/B,iDAAiD,EACjD,CAAC,MAAM,EAAE,KAAa,EAAE,EAAE;YACxB,MAAM,GAAG,GAAG,KAAK,CAAC,WAAW,EAA+B,CAAC;YAC7D,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACjC,CAAC,CACF,CAAC;QAEF,IAAI,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,cAAc,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC;QACjE,OAAO,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;IACrC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,8CAA8C,KAAK,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC;IAC3F,CAAC;AACH,CAAC"}
@@ -4,7 +4,6 @@
4
4
  "version": "2024-11-24",
5
5
  "label": "Trenchwork CLI Agent Configuration Schema",
6
6
  "description": "Centralized configuration for all agents, models, providers, and capabilities",
7
-
8
7
  "providers": [
9
8
  {
10
9
  "id": "deepseek",
@@ -13,27 +12,28 @@
13
12
  "envVars": {
14
13
  "apiKey": "DEEPSEEK_API_KEY"
15
14
  },
16
- "capabilities": ["chat", "reasoning", "tools", "streaming"]
15
+ "capabilities": [
16
+ "chat",
17
+ "reasoning",
18
+ "tools",
19
+ "streaming"
20
+ ]
17
21
  }
18
22
  ],
19
-
20
23
  "models": [
21
24
  {
22
25
  "id": "deepseek-v4-pro",
23
26
  "label": "DeepSeek v4 Pro",
24
27
  "provider": "deepseek",
25
28
  "description": "Deep reasoning with 1M context on max thought.",
26
- "capabilities": ["chat", "reasoning", "tools", "streaming"]
27
- },
28
- {
29
- "id": "deepseek-chat",
30
- "label": "DeepSeek Chat",
31
- "provider": "deepseek",
32
- "description": "Fast general assistant - excellent value.",
33
- "capabilities": ["chat", "tools", "streaming"]
29
+ "capabilities": [
30
+ "chat",
31
+ "reasoning",
32
+ "tools",
33
+ "streaming"
34
+ ]
34
35
  }
35
36
  ],
36
-
37
37
  "profiles": [
38
38
  {
39
39
  "name": "trenchwork-code",
@@ -43,7 +43,7 @@
43
43
  "defaultModel": "deepseek-v4-pro",
44
44
  "systemPrompt": {
45
45
  "type": "rulebook",
46
- "template": "You are Trenchwork Coder, an elite coding agent working directly in the user's terminal on a real codebase with real tools.\n\n## Match effort to the task\n- A clear, small task (create or edit a file, answer a question, run a command) just do it, directly and immediately. Do NOT explore, plan, or announce a workflow for trivial work.\n- Before editing code you don't already understand, read the relevant files first (Glob/Grep/Read) so your change fits existing patterns explore exactly as much as the task needs, no more.\n- For a large or ambiguous task, outline a short plan, then execute it end to end. The user can press Shift+Tab for plan mode to approve a plan before you act; otherwise act autonomously.\n\n## Finish once, then stop\n- When the task is done, end your reply with a final line that starts exactly with `DONE:` followed by one sentence stating what was done and how it was proven (e.g. `DONE: created scripts/run.sh; bash scripts/run.sh exited 0`). Nothing may follow that line no questions, no offers ('Let me know'), no further checking.\n- When a real check exists and the task warrants it, verify ONCE by running the test, build, or command that proves the change works a passing command is proof; re-reading the file is not. Do not re-read, re-open, or re-describe a file you just wrote.\n- Once a check has passed, never announce another check ('let me double-check', 'let me verify once more', 'just to confirm'). One passing command IS the proof emit the `DONE:` line instead.\n- If you cannot finish, do NOT emit `DONE:` state the blocker and exactly what you need.\n- Never pad a finished task with byte counts, hex dumps, or repeated confirmations.\n\n## Style\n- Be direct and technical. Skip disclaimers, preamble, and restating the obvious.\n- Provide complete, working code no placeholders or 'you would' hand-waving.\n- Continue through recoverable errors autonomously; surface a blocker only when you genuinely cannot proceed.\n- Do not create markdown, docs, or summary files unless explicitly asked."
46
+ "template": "You are Trenchwork Coder, an elite coding agent working directly in the user's terminal on a real codebase with real tools.\n\n## Understand the request, then choose the best approach\n- Get the request RIGHT first. Read it literally and in context \u2014 what is the user actually trying to achieve, in this working directory, given what already exists? Restate non-trivial requests to yourself before acting. If a genuine ambiguity would change WHAT you build, ask ONE sharp question; otherwise infer the most reasonable intent and proceed.\n- Then pick the SIMPLEST approach that fully solves it: the smallest, most reversible change that fits the existing code and conventions, over a clever or sweeping one. Don't gold-plate; don't under-deliver.\n- Keep the user in the loop. Before acting on anything non-trivial, say in one short line what you understood and the approach you're taking, so they can redirect early. As you work, a brief note before a group of actions ('reading the parser, then fixing the off-by-one') is enough \u2014 never narrate every keystroke, never go silent for many tool calls. If you change strategy mid-task, say why in one line.\n\n## Match effort to the task\n- A clear, small task (create or edit a file, answer a question, run a command) \u2014 just do it, directly and immediately. Do NOT explore, plan, or announce a workflow for trivial work.\n- Before editing code you don't already understand, read the relevant files first (Glob/Grep/Read) so your change fits existing patterns \u2014 explore exactly as much as the task needs, no more.\n- For a large or ambiguous task, outline a short plan, then execute it end to end. The user can press Shift+Tab for plan mode to approve a plan before you act; otherwise act autonomously.\n\n## Finish once, then stop\n- When the task is done, end your reply with a final line that starts exactly with `DONE:` followed by one sentence stating what was done and how it was proven (e.g. `DONE: created scripts/run.sh; bash scripts/run.sh exited 0`). Nothing may follow that line \u2014 no questions, no offers ('Let me know\u2026'), no further checking.\n- When a real check exists and the task warrants it, verify ONCE by running the test, build, or command that proves the change works \u2014 a passing command is proof; re-reading the file is not. Do not re-read, re-open, or re-describe a file you just wrote.\n- Once a check has passed, never announce another check ('let me double-check', 'let me verify once more', 'just to confirm'). One passing command IS the proof \u2014 emit the `DONE:` line instead.\n- If you cannot finish, do NOT emit `DONE:` \u2014 state the blocker and exactly what you need.\n- Never pad a finished task with byte counts, hex dumps, or repeated confirmations.\n\n## Style\n- Be direct and technical. Skip disclaimers, preamble, and restating the obvious.\n- Provide complete, working code \u2014 no placeholders or 'you would\u2026' hand-waving.\n- Continue through recoverable errors autonomously; surface a blocker only when you genuinely cannot proceed.\n- Do not create markdown, docs, or summary files unless explicitly asked."
47
47
  },
48
48
  "rulebook": {
49
49
  "file": "agents/trenchwork-code.rules.json",
@@ -54,17 +54,16 @@
54
54
  "metadata": {
55
55
  "primaryUseCase": "coding",
56
56
  "secondaryUseCase": "general-assistant",
57
- "tags": ["coding", "general", "versatile", "rapid-edits"]
57
+ "tags": [
58
+ "coding",
59
+ "general",
60
+ "versatile",
61
+ "rapid-edits"
62
+ ]
58
63
  }
59
64
  }
60
65
  ],
61
-
62
66
  "slashCommands": [
63
- {
64
- "command": "/model",
65
- "description": "Choose what model to use",
66
- "category": "configuration"
67
- },
68
67
  {
69
68
  "command": "/help",
70
69
  "description": "Show all available commands and keyboard shortcuts",
@@ -126,7 +125,6 @@
126
125
  "category": "configuration"
127
126
  }
128
127
  ],
129
-
130
128
  "capabilities": [
131
129
  {
132
130
  "id": "chat",
@@ -149,7 +147,6 @@
149
147
  "description": "Support for streaming responses"
150
148
  }
151
149
  ],
152
-
153
150
  "metadata": {
154
151
  "schemaVersion": "1.0.0",
155
152
  "lastUpdated": "2024-11-24",
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
@@ -485,12 +485,47 @@ export class AgentRuntime {
485
485
  return chunk.type;
486
486
  }
487
487
  };
488
- // Simple streaming loop - no timeouts, let the stream run until done
488
+ // Inter-chunk stall watchdog. A silently dead SSE socket (TCP black
489
+ // hole, proxy drop) yields NOTHING and never errors — without this the
490
+ // turn froze for up to the 24h API timeout, halting an autonomous
491
+ // multi-hour run until a human noticed. ANY chunk (reasoning included)
492
+ // resets the window, so a model that thinks for minutes is fine; only
493
+ // total silence past the window trips it. Surfacing a retryable error
494
+ // lets the resilience layer re-issue when no chunk has been yielded yet.
495
+ const STREAM_STALL_MS = (() => {
496
+ const raw = parseInt(process.env['TRENCHWORK_STREAM_STALL_MS'] ?? '', 10);
497
+ return Number.isFinite(raw) && raw > 0 ? raw : 10 * 60 * 1000; // 10 min default
498
+ })();
499
+ const nextWithWatchdog = () => {
500
+ let timer;
501
+ const watchdog = new Promise((_, reject) => {
502
+ timer = setTimeout(() => {
503
+ // "timeout" in the message → isAgentTransientError classifies it
504
+ // retryable, so the turn-level retry re-issues when nothing has
505
+ // streamed to the user yet (hasStreamedToUser guard at the catch).
506
+ reject(new Error(`Stream stalled (inter-chunk timeout): no data for ${Math.round(STREAM_STALL_MS / 1000)}s — likely a dead connection`));
507
+ }, STREAM_STALL_MS);
508
+ if (typeof timer.unref === 'function')
509
+ timer.unref();
510
+ });
511
+ // Promise.race does NOT cancel the loser — clear the timer on settle
512
+ // so we don't leak one armed timer per consumed chunk.
513
+ return Promise.race([iterator.next(), watchdog]).finally(() => clearTimeout(timer));
514
+ };
489
515
  try {
490
516
  let chunkCount = 0;
491
517
  // eslint-disable-next-line no-constant-condition
492
518
  while (true) {
493
- const result = await iterator.next();
519
+ let result;
520
+ try {
521
+ result = await nextWithWatchdog();
522
+ }
523
+ catch (stallError) {
524
+ // Unfreeze the turn: close the dead stream, then rethrow so the
525
+ // turn-level transient-retry / resilience path handles it.
526
+ await closeStream();
527
+ throw stallError;
528
+ }
494
529
  chunkCount++;
495
530
  // Only log significant chunks (tool calls, done), not every content/reasoning token
496
531
  if (result.done || result.value?.type === 'tool_call') {
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAY7B,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAqB,MAAM,4BAA4B,CAAC;AAC/F,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACrE,gFAAgF;AAChF,gFAAgF;AAChF,+EAA+E;AAC/E,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,IAAI,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE7G;;GAEG;AACH,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAExC,8EAA8E;AAE9E;;GAEG;AACH,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEhC;;GAEG;AACH,SAAS,aAAa,CAAC,OAAe;IACpC,2DAA2D;IAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AA0HD,MAAM,OAAO,YAAY;IACN,QAAQ,GAA0B,EAAE,CAAC;IACrC,QAAQ,CAAc;IACtB,WAAW,CAAe;IAC1B,SAAS,CAAiB;IAC1B,cAAc,CAAwB;IAC/C,SAAS,GAAiC,IAAI,CAAC;IACtC,gBAAgB,CAAgB;IAChC,UAAU,CAAS;IACnB,OAAO,CAAS;IAChB,gBAAgB,CAAS;IACzB,YAAY,CAAU;IAC/B,qBAAqB,GAAG,KAAK,CAAC;IACtC,8DAA8D;IACtD,qBAAqB,GAAkB,IAAI,CAAC;IAC5C,qBAAqB,GAAG,CAAC,CAAC;IAC1B,MAAM,CAAU,uBAAuB,GAAG,CAAC,CAAC,CAAC,yCAAyC;IAE9F,4EAA4E;IACpE,sBAAsB,GAAG,CAAC,CAAC;IAC3B,MAAM,CAAU,oBAAoB,GAAG,CAAC,CAAC,CAAC,uCAAuC;IAEzF,kFAAkF;IAClF,yFAAyF;IACjF,eAAe,GAA6C,EAAE,CAAC;IAC/D,MAAM,CAAU,iBAAiB,GAAG,EAAE,CAAC;IACvC,MAAM,CAAU,yBAAyB,GAAG,CAAC,CAAC,CAAC,4CAA4C;IAEnG,8EAA8E;IACtE,mBAAmB,GAAG,CAAC,CAAC;IACxB,MAAM,CAAU,wBAAwB,GAAG,CAAC,CAAC,CAAC,2CAA2C;IACzF,MAAM,CAAU,uBAAuB,GAAG,IAAI,CAAC;IAEvD,wFAAwF;IAChF,MAAM,CAAU,wBAAwB,GAAG,IAAI,GAAG,CAAC;QACzD,MAAM;QACN,cAAc;QACd,iBAAiB;QACjB,aAAa;QACb,MAAM;QACN,WAAW;QACX,OAAO;QACP,YAAY;QACZ,cAAc;QACd,MAAM;QACN,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,MAAM;QACN,MAAM;QACN,QAAQ;QACR,aAAa;QACb,YAAY;QACZ,UAAU;QACV,SAAS;QACT,YAAY;QACZ,UAAU;QACV,sEAAsE;QACtE,0EAA0E;QAC1E,0EAA0E;QAC1E,yEAAyE;QACzE,WAAW,EAAS,gBAAgB;QACpC,gBAAgB,EAAI,gBAAgB;QACpC,aAAa,EAAO,2BAA2B;QAC/C,YAAY,EAAQ,qDAAqD;QACzE,WAAW,EAAS,+BAA+B;QACnD,UAAU,EAAU,6BAA6B;QACjD,WAAW,EAAS,qBAAqB;QACzC,aAAa,EAAO,4BAA4B;QAChD,eAAe,EAAK,4BAA4B;QAChD,aAAa,EAAO,gCAAgC;QACpD,aAAa,EAAO,gCAAgC;QACpD,eAAe,EAAK,6CAA6C;QACjE,eAAe;QACf,aAAa;QACb,aAAa;QACb,YAAY;QACZ,OAAO,EAAa,oCAAoC;QACxD,YAAY,EAAQ,wBAAwB;QAC5C,cAAc,EAAM,oCAAoC;QACxD,cAAc,EAAM,oCAAoC;QACxD,oBAAoB;QACpB,YAAY;QACZ,iBAAiB,EAAG,oBAAoB;QACxC,OAAO,EAAa,qCAAqC;QACzD,KAAK,EAAe,wCAAwC;QAC5D,kBAAkB;QAClB,eAAe;QACf,YAAY;QACZ,YAAY;QACZ,WAAW,EAAS,uCAAuC;QAC3D,UAAU;QACV,YAAY;QACZ,WAAW;QACX,OAAO;KACR,CAAC,CAAC;IAEH,wFAAwF;IAChF,MAAM,CAAU,sBAAsB,GAAG,IAAI,GAAG,CAAC;QACvD,MAAM;QACN,cAAc;QACd,iBAAiB;QACjB,aAAa;QACb,MAAM;QACN,WAAW;QACX,OAAO;QACP,YAAY;QACZ,cAAc;QACd,oEAAoE;QACpE,MAAM;QACN,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,MAAM;QACN,aAAa;QACb,MAAM;QACN,QAAQ;QACR,6EAA6E;QAC7E,4EAA4E;QAC5E,8CAA8C;QAC9C,YAAY;QACZ,cAAc;QACd,cAAc;QACd,YAAY;QACZ,4EAA4E;QAC5E,uEAAuE;QACvE,4DAA4D;QAC5D,UAAU;QACV,aAAa;QACb,aAAa;QACb,aAAa;QACb,aAAa,EAAE,yDAAyD;KACzE,CAAC,CAAC;IAEH,wFAAwF;IACxF,+DAA+D;IACvD,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,MAAM,CAAU,mBAAmB,GAAG,EAAE,CAAC,CAAC,4BAA4B;IAE9E,8EAA8E;IACtE,iBAAiB,GAAG,CAAC,CAAC;IAE9B,mEAAmE;IAC3D,SAAS,GAA6B,IAAI,CAAC;IAC3C,gBAAgB,GAAG,KAAK,CAAC;IAEjC,YAAY,OAAqB;QAC/B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,SAAS,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,SAAS,CAAC;QAC5C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAClE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,KAAK,CAAC;QAElD,MAAM,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,gBAAgB,GAAG,aAAa,IAAI,IAAI,CAAC;QAC9C,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACjB,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,uBAAuB;QACrB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC;IACjC,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,QAAgB;QACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QACpC,OAAO,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,YAAY,CAAC;IAC9F,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,IAAqB;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAoC,CAAC;QACvD,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,QAAQ;YACnD,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;YACnB,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,QAAQ;gBAChC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBACd,CAAC,CAAC,IAAI,CAAC;QAEX,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACnE,IAAI,YAAY,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;YAC1E,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,SAA4B;QACjD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAC9C,IAAI,QAAQ,EAAE,CAAC;oBACb,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,YAAY,GAAG,KAAK;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,kFAAkF;QAClF,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QAEzD,oEAAoE;QACpE,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACnC,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,2CAA2C;QAC3C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC;QAElE,gFAAgF;QAChF,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACvC,sEAAsE;YACtE,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC7E,kCAAkC;YAClC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,wCAAwC;YACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,GAAG,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACrB,IAAI,CAAC;YACH,oDAAoD;YACpD,IAAI,YAAY,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;gBACjD,OAAO,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;YACnD,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC1C,CAAC;gBAAS,CAAC;YACT,IAAI,IAAI,CAAC,SAAS,KAAK,GAAG,EAAE,CAAC;gBAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACxB,CAAC;YACD,oCAAoC;YACpC,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;QACrC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,IAAI,uBAAuB,GAAG,CAAC,CAAC;QAChC,IAAI,sBAAsB,GAAG,CAAC,CAAC;QAE/B,iDAAiD;QACjD,OAAO,IAAI,EAAE,CAAC;YACZ,oDAAoD;YACpD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC/B,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC/B,OAAO,+BAA+B,CAAC;YACzC,CAAC;YAED,kEAAkE;YAClE,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAEnC,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;gBACjF,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC;gBACrC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;gBAE5C,mDAAmD;gBACnD,uBAAuB,GAAG,CAAC,CAAC;gBAE5B,IAAI,QAAQ,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBACnC,kFAAkF;oBAClF,MAAM,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBAC1E,IAAI,oBAAoB,EAAE,CAAC;wBACzB,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;wBACxF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;wBACzE,OAAO,oBAAoB,CAAC;oBAC9B,CAAC;oBAED,sFAAsF;oBACtF,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC9F,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM;wBACzC,CAAC,CAAC,cAAc;6BACb,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;6BACtD,IAAI,EAAE;6BACN,IAAI,CAAC,GAAG,CAAC;wBACZ,CAAC,CAAC,IAAI,CAAC;oBACT,IAAI,aAAa,IAAI,aAAa,KAAK,IAAI,CAAC,qBAAqB,EAAE,CAAC;wBAClE,IAAI,CAAC,qBAAqB,EAAE,CAAC;wBAC7B,IAAI,IAAI,CAAC,qBAAqB,IAAI,YAAY,CAAC,uBAAuB,EAAE,CAAC;4BACvE,qCAAqC;4BACrC,MAAM,OAAO,GAAG,yCAAyC,IAAI,CAAC,qBAAqB,gFAAgF,CAAC;4BACpK,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;4BAC3E,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;4BAC5D,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;4BAClC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;4BAC/B,OAAO,OAAO,CAAC;wBACjB,CAAC;oBACH,CAAC;yBAAM,IAAI,aAAa,EAAE,CAAC;wBACzB,IAAI,CAAC,qBAAqB,GAAG,aAAa,CAAC;wBAC3C,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;oBACjC,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;wBAClC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;oBACjC,CAAC;oBAED,6EAA6E;oBAC7E,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;oBAC3C,IAAI,SAAS,EAAE,CAAC;wBACd,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;4BACnC,OAAO,EAAE,KAAK;4BACd,KAAK;4BACL,YAAY;yBACb,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;oBAC5F,MAAM,gBAAgB,GAAwB;wBAC5C,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,EAAE;qBAChC,CAAC;oBACF,IAAI,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;wBAC/B,gBAAgB,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;oBAClD,CAAC;oBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACrC,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBAChD,SAAS;gBACX,CAAC;gBAED,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBAC7C,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;gBACxD,IAAI,UAAU,GAAG,YAAY,CAAC;gBAE9B,yEAAyE;gBACzE,IAAI,UAAU,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;oBAC5B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;oBAClC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;gBACjC,CAAC;gBAED,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;gBAE3D,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;gBAChF,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBAE/D,kEAAkE;gBAClE,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;gBAE7C,OAAO,UAAU,CAAC;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,uEAAuE;gBACvE,MAAM,UAAU,GAAG,uBAAuB,GAAG,6BAA6B;oBACxD,IAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,oBAAoB,CAAC;gBAClF,IAAI,sBAAsB,CAAC,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;oBAChD,uBAAuB,EAAE,CAAC;oBAC1B,IAAI,CAAC,sBAAsB,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,uBAAuB,CAAC,CAAC;oBACjF,IAAI,SAAS,EAAE,CAAC;wBACd,iDAAiD;wBACjD,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,EAAE,CAAC;wBAC3C,4CAA4C;wBAC5C,SAAS;oBACX,CAAC;gBACH,CAAC;gBACD,2EAA2E;gBAC3E,IAAI,gBAAgB,CAAC,KAAK,CAAC,IAAI,sBAAsB,GAAG,qBAAqB,EAAE,CAAC;oBAC9E,sBAAsB,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,aAAa,CAAC,sBAAsB,CAAC,CAAC;oBACtD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,KAAc,CAAC,CAAC;oBAC3F,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;oBACrB,SAAS;gBACX,CAAC;gBACD,iDAAiD;gBACjD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,4BAA4B;QACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACpC,CAAC;QAED,IAAI,uBAAuB,GAAG,CAAC,CAAC;QAChC,IAAI,sBAAsB,GAAG,CAAC,CAAC;QAC/B,8EAA8E;QAC9E,6EAA6E;QAC7E,2EAA2E;QAC3E,yEAAyE;QACzE,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,uEAAuE;QACvE,qEAAqE;QACrE,wEAAwE;QACxE,uEAAuE;QACvE,iEAAiE;QACjE,yEAAyE;QACzE,wEAAwE;QACxE,oBAAoB;QACpB,MAAM,sBAAsB,GAAG,SAAS,CAAC;QACzC,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAE9B,iDAAiD;QACjD,OAAO,IAAI,EAAE,CAAC;YACZ,oDAAoD;YACpD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC/B,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC/B,OAAO,+BAA+B,CAAC;YACzC,CAAC;YAED,kEAAkE;YAClE,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAEnC,IAAI,CAAC;gBACH,mEAAmE;gBACnE,kBAAkB,GAAG,CAAC,CAAC;gBACvB,IAAI,WAAW,GAAG,EAAE,CAAC;gBACrB,IAAI,gBAAgB,GAAG,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAsB,EAAE,CAAC;gBACxC,IAAI,KAAK,GAAyB,IAAI,CAAC;gBACvC,MAAM,uBAAuB,GAAG,IAAI,CAAC,2BAA2B,EAAE,CAAC;gBACnE,IAAI,eAAe,GAAG,EAAE,CAAC;gBAEzB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC/E,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;gBAChD,IAAI,YAAY,GAAG,KAAK,CAAC;gBACzB,MAAM,WAAW,GAAG,KAAK,IAAmB,EAAE;oBAC5C,IAAI,YAAY,EAAE,CAAC;wBACjB,OAAO;oBACT,CAAC;oBACD,YAAY,GAAG,IAAI,CAAC;oBACpB,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;wBAC1C,IAAI,CAAC;4BACH,MAAM,QAAQ,CAAC,MAAM,EAAE,CAAC;wBAC1B,CAAC;wBAAC,OAAO,UAAU,EAAE,CAAC;4BACpB,QAAQ,CAAC,2CAA2C,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;wBACtF,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC;gBAEF,MAAM,aAAa,GAAG,CAAC,KAAmB,EAAU,EAAE;oBACpD,IAAI,CAAC,KAAK,EAAE,CAAC;wBACX,OAAO,eAAe,CAAC;oBACzB,CAAC;oBACD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;wBACnB,KAAK,SAAS,CAAC;wBACf,KAAK,WAAW,CAAC,CAAC,CAAC;4BACjB,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;4BAC5C,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,MAAM,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;wBAC7D,CAAC;wBACD,KAAK,WAAW;4BACd,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;wBAC3E,KAAK,OAAO;4BACV,IAAI,KAAK,CAAC,KAAK,EAAE,WAAW,IAAI,IAAI,EAAE,CAAC;gCACrC,OAAO,gBAAgB,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;4BACnD,CAAC;4BACD,OAAO,OAAO,CAAC;wBACjB,KAAK,MAAM;4BACT,OAAO,MAAM,CAAC;wBAChB;4BACE,OAAO,KAAK,CAAC,IAAI,CAAC;oBACtB,CAAC;gBACH,CAAC,CAAC;gBAEF,oEAAoE;gBACpE,uEAAuE;gBACvE,kEAAkE;gBAClE,uEAAuE;gBACvE,sEAAsE;gBACtE,sEAAsE;gBACtE,yEAAyE;gBACzE,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE;oBAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC1E,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,iBAAiB;gBAClF,CAAC,CAAC,EAAE,CAAC;gBACL,MAAM,gBAAgB,GAAG,GAAyC,EAAE;oBAClE,IAAI,KAAgD,CAAC;oBACrD,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;wBAChD,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;4BACtB,iEAAiE;4BACjE,gEAAgE;4BAChE,mEAAmE;4BACnE,MAAM,CAAC,IAAI,KAAK,CACd,qDAAqD,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,8BAA8B,CACtH,CAAC,CAAC;wBACL,CAAC,EAAE,eAAe,CAAC,CAAC;wBACpB,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,UAAU;4BAAE,KAAK,CAAC,KAAK,EAAE,CAAC;oBACvD,CAAC,CAAC,CAAC;oBACH,qEAAqE;oBACrE,uDAAuD;oBACvD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtF,CAAC,CAAC;gBAEF,IAAI,CAAC;oBACH,IAAI,UAAU,GAAG,CAAC,CAAC;oBACnB,iDAAiD;oBACjD,OAAO,IAAI,EAAE,CAAC;wBACZ,IAAI,MAAmC,CAAC;wBACxC,IAAI,CAAC;4BACH,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;wBACpC,CAAC;wBAAC,OAAO,UAAU,EAAE,CAAC;4BACpB,gEAAgE;4BAChE,2DAA2D;4BAC3D,MAAM,WAAW,EAAE,CAAC;4BACpB,MAAM,UAAU,CAAC;wBACnB,CAAC;wBACD,UAAU,EAAE,CAAC;wBACb,oFAAoF;wBACpF,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;4BACtD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BACtE,QAAQ,CAAC,iBAAiB,UAAU,KAAK,UAAU,EAAE,CAAC,CAAC;wBACzD,CAAC;wBAED,0CAA0C;wBAC1C,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;4BAC/B,MAAM,WAAW,EAAE,CAAC;4BACpB,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;4BAC/B,MAAM,OAAO,GAAG,CAAC,WAAW,IAAI,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC;4BACzD,IAAI,OAAO,EAAE,CAAC;gCACZ,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,OAAO,yBAAyB,EAAE,CAAC,CAAC;4BAC1F,CAAC;4BACD,OAAO,+BAA+B,CAAC;wBACzC,CAAC;wBAED,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;4BAChB,MAAM;wBACR,CAAC;wBAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;wBAE3B,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;4BAChD,yDAAyD;4BACzD,qDAAqD;4BACrD,iEAAiE;4BACjE,6DAA6D;4BAC7D,8DAA8D;4BAC9D,8DAA8D;4BAC9D,sDAAsD;4BACtD,MAAM,IAAI,GAAG,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC;4BAC9C,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;4BAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;gCAC5B,gBAAgB,GAAG,kCAAkC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;4BAChF,CAAC;iCAAM,CAAC;gCACN,gBAAgB,GAAG,IAAI,CAAC;4BAC1B,CAAC;4BACD,IAAI,kBAAkB,GAAG,sBAAsB,EAAE,CAAC;gCAChD,iBAAiB,GAAG,IAAI,CAAC;gCACzB,MAAM,WAAW,EAAE,CAAC;gCACpB,MAAM;4BACR,CAAC;4BACD,SAAS;wBACX,CAAC;wBAED,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;4BAC9C,MAAM,WAAW,GAAG,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC;4BAChD,kBAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;4BAC3C,+DAA+D;4BAC/D,+DAA+D;4BAC/D,+DAA+D;4BAC/D,+DAA+D;4BAC/D,6DAA6D;4BAC7D,WAAW,GAAG,WAAW,CAAC,MAAM,GAAG,SAAS;gCAC1C,CAAC,CAAC,+BAA+B,WAAW,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE;gCAChE,CAAC,CAAC,WAAW,CAAC;4BAChB,IAAI,uBAAuB,EAAE,CAAC;gCAC5B,MAAM,YAAY,GAAG,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC;gCACrD,eAAe,GAAG,YAAY,CAAC,MAAM,GAAG,SAAS;oCAC/C,CAAC,CAAC,+BAA+B,YAAY,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,EAAE;oCACjE,CAAC,CAAC,YAAY,CAAC;4BACnB,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gCACzD,iBAAiB,GAAG,IAAI,CAAC;4BAC3B,CAAC;4BACD,IAAI,kBAAkB,GAAG,sBAAsB,EAAE,CAAC;gCAChD,iBAAiB,GAAG,IAAI,CAAC;gCACzB,MAAM,WAAW,EAAE,CAAC;gCACpB,MAAM;4BACR,CAAC;wBACH,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;4BACxD,iDAAiD;4BACjD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gCAC3B,sCAAsC;gCACtC,IAAI,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;oCAC5B,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;oCAC9D,iBAAiB,GAAG,IAAI,CAAC;gCAC3B,CAAC;gCACD,uCAAuC;gCACvC,IAAI,uBAAuB,IAAI,eAAe,EAAE,CAAC;oCAC/C,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;oCAC3D,iBAAiB,GAAG,IAAI,CAAC;oCACzB,eAAe,GAAG,EAAE,CAAC;gCACvB,CAAC;4BACH,CAAC;4BACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;wBACjC,CAAC;6BAAM,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;4BACjD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;4BACpB,yCAAyC;4BACzC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACxC,CAAC;oBACH,CAAC;gBACH,CAAC;wBAAS,CAAC;oBACT,MAAM,WAAW,EAAE,CAAC;gBACtB,CAAC;gBAED,mDAAmD;gBACnD,uBAAuB,GAAG,CAAC,CAAC;gBAE5B,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC5C,0DAA0D;gBAC1D,iFAAiF;gBACjF,4EAA4E;gBAC5E,MAAM,eAAe,GAAG,WAAW,CAAC;gBAEpC,IAAI,iBAAiB,EAAE,CAAC;oBACtB,MAAM,MAAM,GAAG,qHAAqH,CAAC;oBACrI,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,eAAe,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChF,WAAW,GAAG,OAAO,CAAC;oBACtB,gBAAgB,GAAG,EAAE,CAAC;oBACtB,0DAA0D;oBAC1D,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;oBACrB,sFAAsF;oBACtF,sFAAsF;oBACtF,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBACpD,CAAC;gBAED,uFAAuF;gBACvF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3B,+CAA+C;oBAC/C,IAAI,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC5B,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;oBAChE,CAAC;oBACD,kCAAkC;oBAClC,IAAI,uBAAuB,IAAI,eAAe,EAAE,CAAC;wBAC/C,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;wBAC3D,eAAe,GAAG,EAAE,CAAC;oBACvB,CAAC;gBACH,CAAC;gBAED,6BAA6B;gBAC7B,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,kFAAkF;oBAClF,8FAA8F;oBAC9F,MAAM,oBAAoB,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;oBACjE,IAAI,oBAAoB,EAAE,CAAC;wBACzB,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;wBAC3G,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;wBACzE,OAAO,oBAAoB,CAAC;oBAC9B,CAAC;oBAED,sFAAsF;oBACtF,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;oBACrF,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM;wBACzC,CAAC,CAAC,cAAc;6BACb,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;6BACtD,IAAI,EAAE;6BACN,IAAI,CAAC,GAAG,CAAC;wBACZ,CAAC,CAAC,IAAI,CAAC;oBACT,IAAI,aAAa,IAAI,aAAa,KAAK,IAAI,CAAC,qBAAqB,EAAE,CAAC;wBAClE,IAAI,CAAC,qBAAqB,EAAE,CAAC;wBAC7B,IAAI,IAAI,CAAC,qBAAqB,IAAI,YAAY,CAAC,uBAAuB,EAAE,CAAC;4BACvE,qCAAqC;4BACrC,MAAM,OAAO,GAAG,yCAAyC,IAAI,CAAC,qBAAqB,gFAAgF,CAAC;4BACpK,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;4BAC9F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;4BAC5D,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;4BAClC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;4BAC/B,OAAO,OAAO,CAAC;wBACjB,CAAC;oBACH,CAAC;yBAAM,IAAI,aAAa,EAAE,CAAC;wBACzB,IAAI,CAAC,qBAAqB,GAAG,aAAa,CAAC;wBAC3C,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;oBACjC,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;wBAClC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;oBACjC,CAAC;oBAED,6EAA6E;oBAC7E,gDAAgD;oBAChD,gGAAgG;oBAChG,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;oBACzC,IAAI,SAAS,EAAE,CAAC;wBACd,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE;4BACnC,OAAO,EAAE,KAAK;4BACd,KAAK;4BACL,YAAY;4BACZ,WAAW,EAAE,IAAI;yBAClB,CAAC,CAAC;oBACL,CAAC;oBACD,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;oBAClF,MAAM,gBAAgB,GAAwB;wBAC5C,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,eAAe;wBACxB,SAAS;qBACV,CAAC;oBACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACrC,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;oBACvC,SAAS;gBACX,CAAC;gBAED,IAAI,KAAK,GAAG,eAAe,CAAC,IAAI,EAAE,CAAC;gBAEnC,2FAA2F;gBAC3F,+FAA+F;gBAC/F,wFAAwF;gBACxF,IAAI,CAAC,KAAK,IAAI,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC;oBACtC,8DAA8D;oBAC9D,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAC;oBAChC,8EAA8E;oBAC9E,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBACnD,CAAC;gBAED,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;gBAClE,IAAI,UAAU,GAAG,YAAY,CAAC;gBAE9B,yEAAyE;gBACzE,IAAI,UAAU,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;oBAC5B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;oBAClC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;gBACjC,CAAC;gBAED,sEAAsE;gBACtE,IAAI,QAAQ,EAAE,CAAC;oBACb,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACtD,CAAC;gBAED,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;gBAE3D,iEAAiE;gBACjE,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;gBACnG,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;gBAE/D,kEAAkE;gBAClE,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;gBAE7C,OAAO,UAAU,CAAC;YACpB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,uEAAuE;gBACvE,MAAM,UAAU,GAAG,uBAAuB,GAAG,6BAA6B;oBACxD,IAAI,CAAC,sBAAsB,GAAG,YAAY,CAAC,oBAAoB,CAAC;gBAClF,IAAI,sBAAsB,CAAC,KAAK,CAAC,IAAI,UAAU,EAAE,CAAC;oBAChD,uBAAuB,EAAE,CAAC;oBAC1B,IAAI,CAAC,sBAAsB,EAAE,CAAC;oBAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,uBAAuB,CAAC,CAAC;oBACjF,IAAI,SAAS,EAAE,CAAC;wBACd,iDAAiD;wBACjD,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,EAAE,CAAC;wBAC3C,4CAA4C;wBAC5C,SAAS;oBACX,CAAC;gBACH,CAAC;gBACD,uEAAuE;gBACvE,mEAAmE;gBACnE,+CAA+C;gBAC/C,IAAI,gBAAgB,CAAC,KAAK,CAAC,IAAI,sBAAsB,GAAG,qBAAqB,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACpG,sBAAsB,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,aAAa,CAAC,sBAAsB,CAAC,CAAC;oBACtD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,KAAc,CAAC,CAAC;oBAC3F,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;oBACrB,SAAS;gBACX,CAAC;gBACD,iDAAiD;gBACjD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,gBAAgB,CAAC,SAA4B;QACzD,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC;QAClC,MAAM,aAAa,GAAyE,EAAE,CAAC;QAE/F,wDAAwD;QACxD,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,sDAAsD;YACtD,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,UAAU,EAAE,IAAI,CAAC,EAAE;oBACnB,OAAO,EAAE,oCAAoC;iBAC9C,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QAED,8BAA8B;QAC9B,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC;YAE3B,6DAA6D;YAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,6DAA6D;gBAC7D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,UAAU,EAAE,IAAI,CAAC,EAAE;oBACnB,OAAO,EAAE,wDAAwD,MAAM,EAAE;iBAC1E,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEnD,6BAA6B;YAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;YAEhD,8CAA8C;YAC9C,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAEnC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;YAED,8BAA8B;YAC9B,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,gBAAgB,UAAU,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;YACjF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACjB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,UAAU,EAAE,IAAI,CAAC,EAAE;gBACnB,OAAO,EAAE,WAAW;aACrB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,4DAA4D;QAC5D,6DAA6D;QAC7D,IAAI,QAAQ,IAAI,EAAE,EAAE,CAAC;YACnB,MAAM,aAAa,GAAyE,EAAE,CAAC;YAC/F,MAAM,SAAS,GAAsB,EAAE,CAAC;YAExC,wCAAwC;YACxC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBAC9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC9D,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAChE,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YAED,uCAAuC;YACvC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxD,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAClD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBAC3B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACpD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBACnC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;oBACzD,CAAC;oBACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;gBAC5C,CAAC,CAAC,CACH,CAAC;gBACF,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBACnD,aAAa,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;YAClC,CAAC;YAED,uEAAuE;YACvE,IAAI,UAAU,GAAkB,IAAI,CAAC;YACrC,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC;gBACtE,IAAI,MAAM,EAAE,CAAC;oBACX,oDAAoD;oBACpD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;wBACtB,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC;oBACjE,CAAC;oBACD,IAAI,OAAO,GAAG,MAAM,CAAC,SAAS;wBAC5B,CAAC,CAAC,wDAAwD,MAAM,CAAC,MAAM,EAAE;wBACzE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;oBAClB,yDAAyD;oBACzD,IAAI,UAAU,IAAI,YAAY,KAAK,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;wBACnE,OAAO,GAAG,GAAG,OAAO,gBAAgB,UAAU,GAAG,CAAC;oBACpD,CAAC;oBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACjB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;wBACtB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;wBAC1B,OAAO;qBACR,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAC5C,OAAO;QACT,CAAC;QAED,uEAAuE;QACvE,MAAM,UAAU,GAAG,CAAC,CAAC;QACrB,MAAM,UAAU,GAAyE,EAAE,CAAC;QAE5F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,CAAC;YACjD,MAAM,aAAa,GAAyE,EAAE,CAAC;YAC/F,MAAM,gBAAgB,GAAsB,EAAE,CAAC;YAE/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBAC9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC9D,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAChE,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YAED,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBACnD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;oBAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACpD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBACnC,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;oBACzD,CAAC;oBACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;gBAC5C,CAAC,CAAC,CACH,CAAC;gBACF,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACpD,aAAa,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;YAClC,CAAC;YAED,UAAU,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;QACpC,CAAC;QAED,+DAA+D;QAC/D,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,KAAK,MAAM,YAAY,IAAI,SAAS,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,YAAY,CAAC,EAAE,CAAC,CAAC;YACnE,IAAI,MAAM,EAAE,CAAC;gBACX,oDAAoD;gBACpD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;oBACtB,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC;gBACjE,CAAC;gBACD,IAAI,OAAO,GAAG,MAAM,CAAC,SAAS;oBAC5B,CAAC,CAAC,wDAAwD,MAAM,CAAC,MAAM,EAAE;oBACzE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClB,yDAAyD;gBACzD,IAAI,UAAU,IAAI,YAAY,KAAK,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;oBACnE,OAAO,GAAG,GAAG,OAAO,gBAAgB,UAAU,GAAG,CAAC;gBACpD,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACjB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;oBACtB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;oBAC1B,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;IAC9C,CAAC;IAEO,kBAAkB,CAAC,MAAc;QACvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,4BAA4B,CAAC;QACtC,CAAC;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,uBAAuB,CAAC;QACnD,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YAC3B,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1D,OAAO,GAAG,IAAI,oBAAoB,OAAO,gBAAgB,IAAI,EAAE,CAAC;IAClE,CAAC;IAEO,0BAA0B,CAAC,QAAgB,EAAE,KAAe,EAAE,UAAkB;QACtF,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChE,MAAM,WAAW,GAAG;YAClB,kBAAkB,QAAQ,qDAAqD;YAC/E,UAAU,SAAS,IAAI,SAAS,EAAE;YAClC,EAAE;YACF,SAAS;YACT,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,wCAAwC;SACnE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,OAAO;YACL;gBACE,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,yIAAyI;aACnJ;YACD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;YACtC,6CAA6C;YAC7C,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE;SACnC,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAAC,SAAiB;QAC/C,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,CAAC;QAE1B,+DAA+D;QAC/D,MAAM,QAAQ,GAAG;YACf,gEAAgE;YAChE,0EAA0E;YAC1E,sBAAsB;YACtB,iCAAiC;YACjC,4CAA4C;YAC5C,+DAA+D;SAChE,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACvC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACf,8BAA8B;gBAC9B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACrD,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,MAAM,gBAAgB,GAAG;YACvB,iDAAiD;YACjD,wDAAwD;YACxD,4CAA4C;YAC5C,mEAAmE;YACnE,0CAA0C;SAC3C,CAAC;QAEF,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAE7E,IAAI,YAAY,EAAE,CAAC;YACjB,wDAAwD;YACxD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1D,0EAA0E;YAC1E,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC7B,sCAAsC;gBACtC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAAE,SAAS;gBACvD,sDAAsD;gBACtD,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,SAAS;gBAC1D,yBAAyB;gBACzB,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3E,CAAC;YAED,2DAA2D;YAC3D,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC9D,IAAI,YAAY,EAAE,MAAM,EAAE,CAAC;gBACzB,OAAO,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACtD,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,IAAI,SAAS,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAC3B,qCAAqC;YACrC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAC1C,MAAM,UAAU,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;gBACrB,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,OAA6E;QAC3G,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/D,SAAS;YACX,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACjD,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;YAEzF,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC1D,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBAChC,SAAS;gBACX,CAAC;gBACD,sEAAsE;gBACtE,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACtD,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,CAAC;gBACjE,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC;wBACjC,WAAW;wBACX,KAAK;wBACL,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;wBAC1B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE;qBAC3B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,QAAQ,CAAC,gDAAgD,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACK,2BAA2B;QACjC,OAAO,KAAK,CAAC,CAAC,iCAAiC;IACjD,CAAC;IAEO,oBAAoB,CAAC,OAAe,EAAE,QAAkC;QAC9E,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QACrF,MAAM,OAAO,GAA6B,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC1D,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;;OAGG;IACH;;;;;;;OAOG;IACK,KAAK,CAAC,sBAAsB,CAAC,UAAkB;QACrD,IAAI,CAAC,oBAAoB,EAAE,IAAI,IAAI,CAAC,qBAAqB,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YAChF,OAAO,UAAU,CAAC;QACpB,CAAC;QACD,IAAI,CAAC;YACH,IAAI,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,KAAK,UAAU;gBAAE,OAAO,UAAU,CAAC;YAC7E,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAC/E,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,CAAC,gCAAgC;YAC5E,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvG,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnD,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC3B,OAAO,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;oBACzD,MAAM;gBACR,CAAC;YACH,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YACzF,IAAI,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAAE,OAAO,UAAU,CAAC;YACrD,sEAAsE;YACtE,0EAA0E;YAC1E,yEAAyE;YACzE,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxD,OAAO,GAAG,UAAU,mCAAmC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,UAAU,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,2BAA2B,CAAC,QAAgB;QAClD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,CAAC;YACzC,OAAO;QACT,CAAC;QAED,gFAAgF;QAChF,uEAAuE;QACvE,MAAM,kBAAkB,GAAG;YACzB,kFAAkF;YAClF,mDAAmD;YACnD,gGAAgG;YAChG,4BAA4B;YAC5B,uCAAuC;SACxC,CAAC;QAEF,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACvF,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,MAAM,mBAAmB,GAAa,EAAE,CAAC;QACzC,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAChD,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACjC,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpD,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,mBAAmB,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;QACH,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE;YAC5C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,mBAAmB;YACnB,QAAQ,EAAE,IAAI,CAAC,UAAU;YACzB,KAAK,EAAE,IAAI,CAAC,OAAO;SACpB,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,IAAY,EAAE,IAA6B;QAChE,wDAAwD;QACxD,IAAI,IAAI,KAAK,cAAc,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAuB,CAAC;YAClD,IAAI,GAAG,EAAE,CAAC;gBACR,+EAA+E;gBAC/E,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QACD,oCAAoC;QACpC,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,YAAY,EAAE,CAAC;YACrE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;YAChE,IAAI,IAAI;gBAAE,OAAO,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAChE,CAAC;QACD,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7C,IAAI,IAAI;gBAAE,OAAO,QAAQ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAChE,CAAC;QACD,oCAAoC;QACpC,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,OAAO;gBAAE,OAAO,UAAU,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAChE,CAAC;QACD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,mBAAmB,CAAC,SAA4B;QACtD,sFAAsF;QACtF,MAAM,iBAAiB,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC;QAExF,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,mFAAmF;QACnF,+DAA+D;QAC/D,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAEjG,oDAAoD;QACpD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,+CAA+C;QAC/C,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;QACjD,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACrD,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC;YACjC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,CAAC;QAED,+DAA+D;QAC/D,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YACrE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;YACtC,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAClD,yEAAyE;YACzE,IAAI,YAAY,GAAG,CAAC,IAAI,YAAY,CAAC,yBAAyB,EAAE,CAAC;gBAC/D,gDAAgD;gBAChD,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;gBAC1B,OAAO,8BAA8B,IAAI,CAAC,IAAI,YAAY,YAAY,GAAG,CAAC,+HAA+H,CAAC;YAC5M,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YACrE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,2BAA2B;QAC3B,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,YAAY,CAAC,iBAAiB,EAAE,CAAC;YACpE,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC/B,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CACvB,SAA4B,EAC5B,iBAA0B,EAC1B,KAA2B,EAC3B,YAA4C;QAE5C,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE,CAC5D,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAClC,iBAAiB,CAClB,CAAC;QACF,IAAI,eAAe,IAAI,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9C,IAAI,CAAC,oBAAoB,CAAC,eAAe,EAAE;gBACzC,OAAO,EAAE,KAAK;gBACd,KAAK;gBACL,YAAY;aACb,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACK,2BAA2B;QACjC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,qBAAqB,GAAG,CAAC,CAAC;QAC/B,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC7B,+FAA+F;IACjG,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,IAAqB;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QAClC,oCAAoC;QACpC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC9D,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAA6B,CAAC,CAAC;QAClC,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,IAAqB;QAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,CAAC,YAAY,CAAC,wBAAwB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,IAAqB;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,OAAO,YAAY,CAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,MAAc;QACxC,MAAM,eAAe,GAAG;YACtB,aAAa;YACb,eAAe;YACf,gBAAgB;YAChB,wBAAwB;YACxB,mBAAmB;YACnB,wBAAwB;YACxB,oBAAoB;YACpB,cAAc;YACd,uBAAuB;YACvB,gBAAgB;YAChB,mBAAmB;SACpB,CAAC;QACF,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACK,eAAe,CAAC,MAAc;QACpC,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,mBAAmB,IAAI,YAAY,CAAC,wBAAwB,EAAE,CAAC;gBACtE,MAAM,GAAG,GAAG,mDAAmD,IAAI,CAAC,mBAAmB,yFAAyF,CAAC;gBACjL,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,yCAAyC;gBACvE,OAAO,GAAG,CAAC;YACb,CAAC;QACH,CAAC;aAAM,CAAC;YACN,0CAA0C;YAC1C,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,IAAqB;QAC/C,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IAC/C,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,IAAqB,EAAE,MAAc;QAC3D,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,OAAO;QACT,CAAC;QACD,0EAA0E;QAC1E,oEAAoE;QACpE,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAEvC,wCAAwC;QACxC,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,IAAI,YAAY,CAAC,mBAAmB,EAAE,CAAC;YAClE,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAC1D,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACjB,IAAI,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;YAC1D,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;QAClD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACzD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;QAExC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAChC,IAAI,EAAE,KAAK,CAAC,QAAQ;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;SACnC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACzC,CAAC;IAED,WAAW,CAAC,OAA8B;QACxC,0EAA0E;QAC1E,0EAA0E;QAC1E,WAAW;QACX,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;YACzE,CAAC;YACD,OAAO;QACT,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,YAAY;QACV,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,qBAAqB;QACjC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1D,sEAAsE;YACtE,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC;YAC7E,+DAA+D;YAC/D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEjF,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;gBACvB,kDAAkD;gBAClD,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;gBACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBAErC,sCAAsC;gBACtC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1D,MAAM,aAAa,GAAG;oBACpB,GAAG,KAAK;oBACR,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc;oBAC1D,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC;iBAC3D,CAAC;gBACF,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;gBAEhE,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;oBACjC,QAAQ,CACN,qBAAqB,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,aAAa;wBAC/F,WAAW,KAAK,CAAC,WAAW,KAAK,KAAK,CAAC,UAAU,IAAI,CACtD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc;QAClB,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAE7B,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YACrD,IAAI,CAAC;gBACH,IAAI,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;YACtD,CAAC;YAAC,MAAM,CAAC;gBACP,oCAAoC;gBACpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACxB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,4BAA4B;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QACzC,OAAO,IAAI,EAAE,aAAa,IAAI,IAAI,CAAC;IACrC,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,0BAA0B,CAAC,OAAe;QACtD,kDAAkD;QAClD,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7C,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;QAElE,wDAAwD;QACxD,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3C,MAAM,eAAe,GAAG,gBAAgB,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;QAE7D,mCAAmC;QACnC,MAAM,OAAO,GAAG,8DAA8D,OAAO,IAAI,6BAA6B,cAAc,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,GAAG,CAAC,kBAAkB,CAAC;QACzL,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,CAAC,OAAO,EAAE,6BAA6B,EAAE,OAAO,CAAC,CAAC;QACpF,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,CAAC;QAE7C,6CAA6C;QAC7C,MAAM,cAAc,GAA0B,EAAE,CAAC;QACjD,MAAM,oBAAoB,GAA0B,EAAE,CAAC;QAEvD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1B,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC;QACrF,IAAI,iBAAiB,KAAK,CAAC,IAAI,oBAAoB,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAChE,wDAAwD;YACxD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,gFAAgF;QAChF,+EAA+E;QAC/E,MAAM,KAAK,GAA4B,EAAE,CAAC;QAC1C,IAAI,WAAW,GAA0B,EAAE,CAAC;QAE5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,oBAAoB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrD,MAAM,GAAG,GAAG,oBAAoB,CAAC,CAAC,CAAE,CAAC;YAErC,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACxB,iCAAiC;gBACjC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC1B,CAAC;gBACD,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpC,uDAAuD;gBACvD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC1B,CAAC;gBACD,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC;YACtB,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC/B,oDAAoD;gBACpD,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QACD,6BAA6B;QAC7B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;QAED,qCAAqC;QACrC,MAAM,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC;QACxE,IAAI,mBAAmB,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,gDAAgD;QAChD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAEnD,+DAA+D;QAC/D,mDAAmD;QACnD,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,OAAO,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;YACxC,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9B,oDAAoD;gBACpD,IAAI,QAAQ,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC9B,UAAU,EAAE,CAAC;oBACb,SAAS;gBACX,CAAC;gBACD,8EAA8E;gBAC9E,wCAAwC;gBACxC,IAAI,QAAQ,EAAE,IAAI,KAAK,WAAW,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1F,kEAAkE;oBAClE,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBACxD,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAClC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAE,CAA6B,CAAC,UAAU,CAAC,CAC7F,CAAC;oBACF,uEAAuE;oBACvE,IAAI,UAAU,GAAG,IAAI,CAAC;oBACtB,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;wBAC7B,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;4BAClC,UAAU,GAAG,KAAK,CAAC;4BACnB,MAAM;wBACR,CAAC;oBACH,CAAC;oBACD,IAAI,UAAU,EAAE,CAAC;wBACf,MAAM;oBACR,CAAC;oBACD,2BAA2B;oBAC3B,UAAU,EAAE,CAAC;oBACb,SAAS;gBACX,CAAC;YACH,CAAC;YACD,MAAM;QACR,CAAC;QAED,MAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,uCAAuC;QACvC,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QACvC,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;QAE5E,2DAA2D;QAC3D,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACvC,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC5F,IAAI,OAAO,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;oBACrC,6BAA6B;oBAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;oBACpD,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAChD,MAAM,QAAQ,GAAG,WAAW,GAAG,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC;oBACrF,GAAG,CAAC,OAAO,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAG,sBAAsB,OAAO,CAAC,MAAM,GAAG,QAAQ,kCAAkC,CAAC;oBACjI,cAAc,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,6CAA6C;YAC7C,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,eAAe,GAAG,CAAC,EAAE,CAAC;gBACxF,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;gBAC5B,MAAM,KAAK,GAAG,eAAe,GAAG,CAAC,CAAC;gBAClC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAC1C,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAChD,MAAM,QAAQ,GAAG,WAAW,GAAG,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC;gBACjE,GAAG,CAAC,OAAO,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAG,8CAA8C,CAAC;gBAC9F,cAAc,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;QAED,6EAA6E;QAC7E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;gBAC/D,GAAG,CAAC,OAAO,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAG,uBAAuB,CAAC;gBAChF,cAAc,EAAE,CAAC;YACnB,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAEzB,sBAAsB;QACtB,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,qBAAqB;QACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,mCAAmC,iBAAiB,2BAA2B,cAAc,6CAA6C;SACpJ,CAAC,CAAC;QAEH,oEAAoE;QACpE,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,uBAAuB;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACjE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,CAAC,iBAAiB,EAAE;YAClD,GAAG,KAAK;YACR,MAAM,EAAE,oBAAoB;YAC5B,OAAO;YACP,cAAc,EAAE,gBAAgB,GAAG,GAAG;YACtC,YAAY,EAAE,mBAAmB,GAAG,UAAU;YAC9C,gBAAgB,EAAE,cAAc;YAChC,eAAe;SAChB,CAAC,CAAC;QAEH,uDAAuD;QACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC;YAC1C,iDAAiD;YACjD,gDAAgD;YAChD,MAAM,QAAQ,GAAG,GAAG,CAAC;YACrB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChC,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBACvC,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC5F,IAAI,OAAO,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;wBAC9B,GAAG,CAAC,OAAO,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAG,gCAAgC,CAAC;oBAChF,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;;AAGH,SAAS,YAAY,CAAC,OAA4B;IAChD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,MAAM,KAAK,GAAwB;gBACjC,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC;YACF,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,MAAM;YACT,OAAO;gBACL,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC;QACJ,KAAK,QAAQ;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;QACtD,KAAK,MAAM,CAAC;QACZ;YACE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAqB;IAC1C,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE;KACzC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"contextManager.d.ts","sourceRoot":"","sources":["../../src/core/contextManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contextManager.d.ts","sourceRoot":"","sources":["../../src/core/contextManager.ts"],"names":[],"mappings":"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"}
@@ -332,9 +332,18 @@ export class ContextManager {
332
332
  // Add a context summary message if we removed messages
333
333
  const removedCount = conversationMessages.length - recentMessages.length;
334
334
  if (removedCount > 0) {
335
+ // Audit #21: pin the ORIGINAL TASK. Even the no-LLM simple prune must not
336
+ // lose the goal — without this, a long run that pruned past its first
337
+ // message forgets what it was asked to do and drifts. Restate the first
338
+ // user message (the request) when it's about to be pruned away.
339
+ const firstUser = conversationMessages.find((m) => m.role === 'user');
340
+ const firstUserKept = firstUser && recentMessages.includes(firstUser);
341
+ const originalTask = firstUser && !firstUserKept && typeof firstUser.content === 'string'
342
+ ? ` Original request: "${firstUser.content.slice(0, 400)}"`
343
+ : '';
335
344
  pruned.push({
336
345
  role: 'system',
337
- content: `[Context Manager: Removed ${removedCount} old messages to stay within token budget. Recent conversation history preserved.]`,
346
+ content: `[Context Manager: Removed ${removedCount} old messages to stay within token budget. Recent conversation history preserved.]${originalTask}`,
338
347
  });
339
348
  }
340
349
  pruned.push(...recentMessages);