indusagi-coding-agent 0.1.49 → 0.1.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -11,6 +11,15 @@
11
11
  - **User Message Surface**: Updated user messages to use the gray message surface with explicit white text for clearer contrast in the React Ink UI.
12
12
  - **Streaming Reply Path**: Removed the temporary live-stream rendering path so replies render from committed session messages only.
13
13
 
14
+ ## [0.1.51] - Latest Release
15
+
16
+ ### Changed
17
+ - **Local Footer Override**: `indusagi-screth` now ships its own React Ink footer component instead of depending on the shared footer renderer from the framework package.
18
+ - **Version Bump**: Updated package version to `0.1.51`.
19
+
20
+ ### Fixed
21
+ - **Global CLI Footer Crash**: Removed the React child rendering path that could crash the `indus` footer with `Objects are not valid as a React child`.
22
+
14
23
  ## [0.1.47] - Latest Release
15
24
 
16
25
  ### Changed
@@ -58,7 +67,7 @@
58
67
  ## [0.1.41]
59
68
 
60
69
  ### Changed
61
- - **README Naming**: Replaced `induscode` references with `indusagi-coding-agent` in `README.md`.
70
+ - **README Naming**: Replaced `induscode` references with `@varun1213213123132/indus1-test` in `README.md`.
62
71
  - **Version Bump**: Updated package version to `0.1.41`.
63
72
 
64
73
  ## [0.1.40]
@@ -73,7 +82,7 @@
73
82
  ## [0.1.39]
74
83
 
75
84
  ### Changed
76
- - **Package Rename**: Updated package name from `induscode` to `indusagi-coding-agent`.
85
+ - **Package Rename**: Updated package name from `induscode` to `@varun1213213123132/indus1-test`.
77
86
  - **Version Bump**: Updated package version to `0.1.39`.
78
87
 
79
88
  ## [0.1.38]
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # indusagi-coding-agent
1
+ # @varun1213213123132/indus1-test
2
2
 
3
3
  A terminal-first coding agent with a small core and strong extensibility. Use it interactively, in scripts (print/JSON), over RPC, or as an SDK in your own apps.
4
4
 
@@ -17,7 +17,7 @@ Docs: https://www.indusagi.com
17
17
  ## Install
18
18
 
19
19
  ```bash
20
- npm install -g indusagi-coding-agent
20
+ npm install -g @varun1213213123132/indus1-test
21
21
  ```
22
22
 
23
23
  ## Quick Start
@@ -1 +1 @@
1
- {"version":3,"file":"session-events.d.ts","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/adapters/session-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAgBlE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,YAAY,GAAG,eAAe,CA4B5E;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,iBAAiB,GAAG,aAAa,GAAG,SAAS,CAoCnF"}
1
+ {"version":3,"file":"session-events.d.ts","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/adapters/session-events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAGzF,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAiPlE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,YAAY,GAAG,eAAe,CA4B5E;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,iBAAiB,GAAG,aAAa,GAAG,SAAS,CAoCnF"}
@@ -1,3 +1,182 @@
1
+ function isObject(value) {
2
+ return typeof value === "object" && value !== null && !Array.isArray(value);
3
+ }
4
+ function isReactElement(value) {
5
+ return isObject(value) && Object.prototype.hasOwnProperty.call(value, "$$typeof");
6
+ }
7
+ function safeMessageText(value, seen = new WeakSet()) {
8
+ if (value === undefined) {
9
+ return "";
10
+ }
11
+ if (value === null) {
12
+ return "null";
13
+ }
14
+ if (typeof value === "string") {
15
+ return value;
16
+ }
17
+ if (typeof value === "number" || typeof value === "boolean") {
18
+ return String(value);
19
+ }
20
+ if (typeof value === "bigint") {
21
+ return value.toString();
22
+ }
23
+ if (typeof value === "symbol") {
24
+ return value.toString();
25
+ }
26
+ if (value instanceof Error) {
27
+ return `${value.name}: ${value.message}`;
28
+ }
29
+ if (typeof value === "function") {
30
+ return value.name.length > 0 ? `[function ${value.name}]` : "[function]";
31
+ }
32
+ if (isObject(value)) {
33
+ if (seen.has(value)) {
34
+ return "[Circular]";
35
+ }
36
+ }
37
+ if (typeof value === "object") {
38
+ if (isObject(value) && isReactElement(value)) {
39
+ return "[UI element]";
40
+ }
41
+ if (isObject(value) && seen.has(value)) {
42
+ return "[Circular]";
43
+ }
44
+ if (isObject(value)) {
45
+ seen.add(value);
46
+ }
47
+ }
48
+ try {
49
+ const serialized = JSON.stringify(value);
50
+ if (typeof serialized === "string") {
51
+ const trimmed = serialized.trim();
52
+ return trimmed.length > 0 ? trimmed : "";
53
+ }
54
+ }
55
+ catch {
56
+ return String(value);
57
+ }
58
+ return String(value);
59
+ }
60
+ function normalizeOptionalText(value) {
61
+ return safeMessageText(value);
62
+ }
63
+ function toTextContent(value) {
64
+ return {
65
+ type: "text",
66
+ text: safeMessageText(value),
67
+ };
68
+ }
69
+ function normalizeGeneralMessagePart(part) {
70
+ if (typeof part === "string") {
71
+ return toTextContent(part);
72
+ }
73
+ if (!isObject(part)) {
74
+ return toTextContent(part);
75
+ }
76
+ if (part.type === "text") {
77
+ const text = typeof part.text === "string" ? part.text : safeMessageText(part.text);
78
+ return toTextContent(text);
79
+ }
80
+ if (part.type === "thinking") {
81
+ return {
82
+ type: "thinking",
83
+ thinking: typeof part.thinking === "string" ? part.thinking : safeMessageText(part),
84
+ };
85
+ }
86
+ if (part.type === "image") {
87
+ if (typeof part.data === "string" && typeof part.mimeType === "string") {
88
+ return {
89
+ type: "image",
90
+ data: part.data,
91
+ mimeType: part.mimeType,
92
+ };
93
+ }
94
+ return toTextContent(part);
95
+ }
96
+ if (part.type === "toolCall") {
97
+ const args = isObject(part.arguments)
98
+ ? part.arguments
99
+ : part.arguments === undefined
100
+ ? {}
101
+ : {};
102
+ return {
103
+ type: "toolCall",
104
+ id: typeof part.id === "string" ? part.id : "",
105
+ name: typeof part.name === "string" ? part.name : "",
106
+ arguments: args,
107
+ };
108
+ }
109
+ if (part.type !== undefined) {
110
+ return toTextContent(part);
111
+ }
112
+ return toTextContent(part);
113
+ }
114
+ function normalizeAssistantContent(content) {
115
+ if (!Array.isArray(content)) {
116
+ const text = safeMessageText(content);
117
+ return text.length > 0 ? [{ type: "text", text }] : [];
118
+ }
119
+ return content.map((part) => {
120
+ const normalized = normalizeGeneralMessagePart(part);
121
+ return normalized.type === "image" ? toTextContent(safeMessageText(part)) : normalized;
122
+ });
123
+ }
124
+ function normalizeGeneralContent(content) {
125
+ if (!Array.isArray(content)) {
126
+ const text = safeMessageText(content);
127
+ return text.length > 0 ? [{ type: "text", text }] : [];
128
+ }
129
+ return content.map((part) => {
130
+ const normalized = normalizeGeneralMessagePart(part);
131
+ return normalized.type === "image" || normalized.type === "text" || normalized.type === "thinking" || normalized.type === "toolCall"
132
+ ? normalized
133
+ : toTextContent(safeMessageText(part));
134
+ });
135
+ }
136
+ function normalizeDisplayMessage(message) {
137
+ if (message.role === "assistant") {
138
+ const assistantMessage = message;
139
+ return {
140
+ ...assistantMessage,
141
+ content: normalizeAssistantContent(message.content),
142
+ errorMessage: normalizeOptionalText(assistantMessage.errorMessage),
143
+ provider: normalizeOptionalText(assistantMessage.provider),
144
+ model: normalizeOptionalText(assistantMessage.model),
145
+ };
146
+ }
147
+ if (message.role === "toolResult" || message.role === "user" || message.role === "custom") {
148
+ const content = message.content;
149
+ const normalized = normalizeGeneralContent(content);
150
+ return {
151
+ ...message,
152
+ content: normalized,
153
+ };
154
+ }
155
+ if (message.role === "branchSummary") {
156
+ return {
157
+ ...message,
158
+ summary: normalizeOptionalText(message.summary),
159
+ };
160
+ }
161
+ if (message.role === "compactionSummary") {
162
+ return {
163
+ ...message,
164
+ summary: normalizeOptionalText(message.summary),
165
+ };
166
+ }
167
+ if (message.role === "bashExecution") {
168
+ const bashMessage = message;
169
+ return {
170
+ ...bashMessage,
171
+ command: normalizeOptionalText(bashMessage.command),
172
+ output: normalizeOptionalText(bashMessage.output),
173
+ };
174
+ }
175
+ return message;
176
+ }
177
+ function normalizeDisplayMessages(messages) {
178
+ return messages.map(normalizeDisplayMessage);
179
+ }
1
180
  function hasTerminalAssistantError(event) {
2
181
  for (let index = event.messages.length - 1; index >= 0; index -= 1) {
3
182
  const message = event.messages[index];
@@ -12,7 +191,7 @@ function hasTerminalAssistantError(event) {
12
191
  export function createSessionSnapshot(session) {
13
192
  const contextUsage = session.getContextUsage();
14
193
  return {
15
- messages: session.messages,
194
+ messages: normalizeDisplayMessages(session.messages),
16
195
  model: session.model,
17
196
  thinkingLevel: session.thinkingLevel,
18
197
  isStreaming: session.isStreaming,
@@ -26,7 +205,7 @@ export function createSessionSnapshot(session) {
26
205
  cwd: session.sessionManager.getCwd(),
27
206
  autoCompactEnabled: session.autoCompactionEnabled,
28
207
  leafId: session.sessionManager.getLeafId(),
29
- error: session.state.error,
208
+ error: normalizeOptionalText(session.state.error),
30
209
  stats: session.getSessionStats(),
31
210
  contextUsage: contextUsage
32
211
  ? {
@@ -60,11 +239,11 @@ export function statusFromEvent(event) {
60
239
  ? { kind: "success", text: "Auto-compaction completed." }
61
240
  : undefined;
62
241
  case "auto_retry_start":
63
- return { kind: "warning", text: `Retrying after error: ${event.errorMessage}` };
242
+ return { kind: "warning", text: `Retrying after error: ${normalizeOptionalText(event.errorMessage)}` };
64
243
  case "auto_retry_end":
65
244
  return event.success
66
245
  ? { kind: "success", text: "Retry succeeded." }
67
- : { kind: "error", text: event.finalError ?? "Retry failed." };
246
+ : { kind: "error", text: normalizeOptionalText(event.finalError ?? "Retry failed.") };
68
247
  case "session_new":
69
248
  return { kind: "success", text: "Started a new session." };
70
249
  case "session_compact":
@@ -1 +1 @@
1
- {"version":3,"file":"session-events.js","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/adapters/session-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-events.js","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/adapters/session-events.ts"],"names":[],"mappings":"AAQA,SAAS,QAAQ,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACrC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,eAAe,CAAC,KAAc,EAAE,OAAO,IAAI,OAAO,EAAU;IACpE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,MAAM,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC5B,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC;IAC1E,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,OAAO,YAAY,CAAC;QACrB,CAAC;IACF,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,OAAO,cAAc,CAAC;QACvB,CAAC;QAED,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACxC,OAAO,YAAY,CAAC;QACrB,CAAC;QAED,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACF,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;YAClC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,CAAC;IACF,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC5C,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACpC,OAAO;QACN,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC;KAC5B,CAAC;AACH,CAAC;AAED,SAAS,2BAA2B,CAAC,IAAa;IACjD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpF,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC;SACnF,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC3B,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxE,OAAO;gBACN,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACvB,CAAC;QACH,CAAC;QACD,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YACpC,CAAC,CAAC,IAAI,CAAC,SAAS;YAChB,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS;gBAC7B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,CAAC;QACP,OAAO;YACN,IAAI,EAAE,UAAU;YAChB,EAAE,EAAE,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;YAC9C,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YACpD,SAAS,EAAE,IAA2B;SACtC,CAAC;IACH,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAgB;IAClD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC;QACrD,OAAO,UAAU,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;IACxF,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAgB;IAChD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,UAAU,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC;QACrD,OAAO,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU;YACnI,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,aAAa,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAqB;IACrD,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAClC,MAAM,gBAAgB,GAAG,OAIxB,CAAC;QACF,OAAO;YACN,GAAG,gBAAgB;YACnB,OAAO,EAAE,yBAAyB,CAAC,OAAO,CAAC,OAAO,CAAC;YACnD,YAAY,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,YAAY,CAAC;YAClE,QAAQ,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,QAAQ,CAAC;YAC1D,KAAK,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,KAAK,CAAC;SACpC,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3F,MAAM,OAAO,GAAI,OAAgD,CAAC,OAAO,CAAC;QAC1E,MAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACpD,OAAO;YACN,GAAG,OAAO;YACV,OAAO,EAAE,UAA4C;SACrD,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACtC,OAAO;YACN,GAAG,OAAO;YACV,OAAO,EAAE,qBAAqB,CAAE,OAAiC,CAAC,OAAO,CAAC;SAC1D,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QAC1C,OAAO;YACN,GAAG,OAAO;YACV,OAAO,EAAE,qBAAqB,CAAE,OAAiC,CAAC,OAAO,CAAC;SAC1D,CAAC;IACnB,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,OAGnB,CAAC;QACF,OAAO;YACN,GAAG,WAAW;YACd,OAAO,EAAE,qBAAqB,CAAC,WAAW,CAAC,OAAO,CAAC;YACnD,MAAM,EAAE,qBAAqB,CAAC,WAAW,CAAC,MAAM,CAAC;SACjC,CAAC;IACnB,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,SAAS,wBAAwB,CAAC,QAAiC;IAClE,OAAO,QAAQ,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAwD;IAC1F,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpE,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,IAAI,KAAK,WAAW,EAAE,CAAC;YACnC,SAAS;QACV,CAAC;QAED,MAAM,UAAU,GAAI,OAAmC,CAAC,UAAU,CAAC;QACnE,OAAO,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,SAAS,CAAC;IAC3D,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAqB;IAC1D,MAAM,YAAY,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAE/C,OAAO;QACN,QAAQ,EAAE,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC;QACpD,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,oBAAoB,EAAE,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI;QACzD,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE;QACpD,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE;QACpC,kBAAkB,EAAE,OAAO,CAAC,qBAAqB;QACjD,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE;QAC1C,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QACjD,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;QAChC,YAAY,EAAE,YAAY;YACzB,CAAC,CAAC;gBACA,MAAM,EAAE,YAAY,CAAC,MAAM;gBAC3B,aAAa,EAAE,YAAY,CAAC,aAAa;gBACzC,OAAO,EAAE,YAAY,CAAC,OAAO;aAC5B;YACH,CAAC,CAAC,SAAS;KACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAwB;IACvD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,aAAa;YACjB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;QACnD,KAAK,WAAW;YACf,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;QACrG,KAAK,UAAU;YACd,OAAO,SAAS,CAAC;QAClB,KAAK,uBAAuB;YAC3B,OAAO;gBACN,IAAI,EAAE,MAAM;gBACZ,IAAI,EACH,KAAK,CAAC,MAAM,KAAK,UAAU;oBAC1B,CAAC,CAAC,+CAA+C;oBACjD,CAAC,CAAC,yCAAyC;aAC7C,CAAC;QACH,KAAK,qBAAqB;YACzB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC;YAChE,CAAC;YACD,OAAO,KAAK,CAAC,MAAM;gBAClB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,4BAA4B,EAAE;gBACzD,CAAC,CAAC,SAAS,CAAC;QACd,KAAK,kBAAkB;YACtB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,yBAAyB,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;QACxG,KAAK,gBAAgB;YACpB,OAAO,KAAK,CAAC,OAAO;gBACnB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE;gBAC/C,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,qBAAqB,CAAC,KAAK,CAAC,UAAU,IAAI,eAAe,CAAC,EAAE,CAAC;QACxF,KAAK,aAAa;YACjB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,wBAAwB,EAAE,CAAC;QAC5D,KAAK,iBAAiB;YACrB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,iCAAiC,EAAE,CAAC;QACrE;YACC,OAAO,SAAS,CAAC;IACnB,CAAC;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/AppShell.tsx"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAmBnF,OAAO,KAAK,EACX,qBAAqB,EAOrB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EAEb,MAAM,aAAa,CAAC;AAQrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAUhD,UAAU,aAAa;IACtB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AA0PD,wBAAgB,QAAQ,CAAC,EACxB,OAAO,EACP,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,OAAO,GACP,EAAE,aAAa,2CA0lDf"}
1
+ {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/AppShell.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAmBnF,OAAO,KAAK,EACX,qBAAqB,EAOrB,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EAEb,MAAM,aAAa,CAAC;AASrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAUhD,UAAU,aAAa;IACtB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAsUD,wBAAgB,QAAQ,CAAC,EACxB,OAAO,EACP,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,OAAO,GACP,EAAE,aAAa,2CA2lDf"}
@@ -6,7 +6,7 @@ import { join } from "node:path";
6
6
  import { useEffect, useMemo, useReducer, useRef, useState } from "react";
7
7
  import { Box, Text, useApp } from "ink";
8
8
  import { matchesKey } from "indusagi/tui";
9
- import { Footer, LoginDialog, MessageList, ModelDialog, OAuthDialog, ScopedModelsDialog, SessionDialog, SettingsDialog, StatusLine, TaskPanel, ThemeDialog, TreeDialog, UserMessageDialog, } from "indusagi/react-ink";
9
+ import { LoginDialog, MessageList, ModelDialog, OAuthDialog, ScopedModelsDialog, SessionDialog, SettingsDialog, StatusLine, TaskPanel, ThemeDialog, TreeDialog, UserMessageDialog, } from "indusagi/react-ink";
10
10
  import { APP_NAME, VERSION, getAuthPath } from "../../../config.js";
11
11
  import { extensionForImageMimeType, readClipboardImage } from "../../../helpers/clipboard-image.js";
12
12
  import { openAuthUrl } from "../../../helpers/open-auth-url.js";
@@ -19,6 +19,7 @@ import { createUiStore } from "../state/store.js";
19
19
  import { createThemeAdapter } from "../theme-adapter.js";
20
20
  import { deleteSessionAtPath, renameSessionAtPath } from "../utils/session-actions.js";
21
21
  import { Header } from "./Header.js";
22
+ import { Footer } from "./Footer.js";
22
23
  import { PromptInput } from "./PromptInput.js";
23
24
  import { useAgentSession } from "../hooks/use-agent-session.js";
24
25
  import { useAppKeybindings } from "../hooks/use-app-keybindings.js";
@@ -26,11 +27,75 @@ import { useFooterData } from "../hooks/use-footer-data.js";
26
27
  import { usePromptSubmit } from "../hooks/use-prompt-submit.js";
27
28
  import { createExtensionTuiBridge, createHostedExtensionComponent, createHostedExtensionComponentFromParts, ExtensionComponentHost, } from "./extensions/ExtensionComponentHost.js";
28
29
  import { ExtensionSelectDialog, ExtensionTextDialog } from "./extensions/ExtensionDialogs.js";
30
+ function safeTextValue(value) {
31
+ if (value === undefined || value === null) {
32
+ return "";
33
+ }
34
+ if (typeof value === "string") {
35
+ return value;
36
+ }
37
+ if (typeof value === "number" || typeof value === "boolean" || typeof value === "bigint" || typeof value === "symbol" || typeof value === "function") {
38
+ return String(value);
39
+ }
40
+ if (typeof value === "object" && Object.prototype.hasOwnProperty.call(value, "$$typeof")) {
41
+ return "[UI element]";
42
+ }
43
+ try {
44
+ const serialized = JSON.stringify(value);
45
+ if (typeof serialized === "string") {
46
+ const trimmed = serialized.trim();
47
+ if (trimmed.length > 0) {
48
+ return trimmed;
49
+ }
50
+ }
51
+ }
52
+ catch {
53
+ return String(value);
54
+ }
55
+ return String(value);
56
+ }
57
+ function safeStatusText(value) {
58
+ if (value === undefined) {
59
+ return undefined;
60
+ }
61
+ return safeTextValue(value);
62
+ }
29
63
  function truncateWidgetLines(lines, maxLines = 10) {
30
- if (lines.length <= maxLines) {
31
- return lines;
64
+ const normalized = lines.map((line) => safeWidgetLine(line));
65
+ if (normalized.length <= maxLines) {
66
+ return normalized;
67
+ }
68
+ return [...normalized.slice(0, maxLines), `... ${normalized.length - maxLines} more line(s)`];
69
+ }
70
+ function safeWidgetLine(line) {
71
+ if (line === undefined) {
72
+ return "";
73
+ }
74
+ if (line === null) {
75
+ return "null";
76
+ }
77
+ if (typeof line === "string") {
78
+ return line;
79
+ }
80
+ if (typeof line === "number" || typeof line === "boolean" || typeof line === "bigint" || typeof line === "symbol" || typeof line === "function") {
81
+ return String(line);
82
+ }
83
+ if (typeof line === "object" && Object.prototype.hasOwnProperty.call(line, "$$typeof")) {
84
+ return "[UI element]";
85
+ }
86
+ try {
87
+ const serialized = JSON.stringify(line);
88
+ if (typeof serialized === "string") {
89
+ const trimmed = serialized.trim();
90
+ if (trimmed.length > 0) {
91
+ return trimmed;
92
+ }
93
+ }
94
+ }
95
+ catch {
96
+ return String(line);
32
97
  }
33
- return [...lines.slice(0, maxLines), `... ${lines.length - maxLines} more line(s)`];
98
+ return String(line);
34
99
  }
35
100
  function renderTextLines(lines, prefix) {
36
101
  if (lines.length === 0) {
@@ -248,10 +313,10 @@ export function AppShell({ context, footerDataProvider, initialImages, initialMe
248
313
  const inputRef = useRef(state.input);
249
314
  const customTerminalTitleRef = useRef(null);
250
315
  const setStatus = (text, kind = "info") => {
251
- dispatch({ type: "set-status", status: { text, kind } });
316
+ dispatch({ type: "set-status", status: { text: safeTextValue(text), kind } });
252
317
  };
253
318
  const setError = (text) => {
254
- dispatch({ type: "set-status", status: { text, kind: "error" } });
319
+ dispatch({ type: "set-status", status: { text: safeTextValue(text), kind: "error" } });
255
320
  };
256
321
  const clearStatus = () => {
257
322
  dispatch({ type: "set-status", status: undefined });
@@ -861,22 +926,23 @@ export function AppShell({ context, footerDataProvider, initialImages, initialMe
861
926
  });
862
927
  }),
863
928
  notify: (message, type) => {
929
+ const normalizedMessage = safeTextValue(message);
864
930
  if (type === "error") {
865
- setError(message);
931
+ setError(normalizedMessage);
866
932
  return;
867
933
  }
868
934
  if (type === "warning") {
869
- setStatus(message, "warning");
935
+ setStatus(normalizedMessage, "warning");
870
936
  return;
871
937
  }
872
- setStatus(message, "info");
938
+ setStatus(normalizedMessage, "info");
873
939
  },
874
940
  setStatus: (key, text) => {
875
- footerDataProvider.setExtensionStatus(key, text);
941
+ footerDataProvider.setExtensionStatus(key, safeStatusText(text));
876
942
  triggerFooterRefresh();
877
943
  },
878
944
  setWorkingMessage: (message) => {
879
- setExtensionWorkingMessage(message);
945
+ setExtensionWorkingMessage(message ? safeTextValue(message) : message);
880
946
  },
881
947
  setWidget: (key, content, options) => {
882
948
  const placement = options?.placement ?? "aboveEditor";
@@ -1 +1 @@
1
- {"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/AppShell.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAExC,OAAO,EAAE,UAAU,EAAkD,MAAM,cAAc,CAAC;AAC1F,OAAO,EACN,MAAM,EACN,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,cAAc,EAEd,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,iBAAiB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAIhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EACN,kBAAkB,EAClB,2BAA2B,EAC3B,cAAc,EACd,cAAc,EACd,QAAQ,EACR,gBAAgB,EAChB,KAAK,IAAI,cAAc,EACvB,KAAK,GACL,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAczD,OAAO,EAA2C,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAChI,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EACN,wBAAwB,EACxB,8BAA8B,EAC9B,uCAAuC,EACvC,sBAAsB,GAEtB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAkD9F,SAAS,mBAAmB,CAAC,KAAe,EAAE,QAAQ,GAAG,EAAE;IAC1D,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,CAAC,MAAM,GAAG,QAAQ,eAAe,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,eAAe,CAAC,KAAe,EAAE,MAAc;IACvD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CACN,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,YACzB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAC3B,KAAC,IAAI,cAA6B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAnD,GAAG,MAAM,IAAI,KAAK,EAAE,CAAuC,CACtE,CAAC,GACG,CACN,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACxC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC3B,OAAO;IACR,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,kBAAkB,CAC1B,OAAqB,EACrB,KAAuC,EACvC,SAAqB,EACrB,QAAgC;IAEhC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC9C,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAE/C,OAAO;QACN;YACC,EAAE,EAAE,aAAa;YACjB,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,qEAAqE;YAClF,KAAK,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YAC7D,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,wBAAwB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBACtD,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,QAAQ;YACZ,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,+DAA+D;YAC5E,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YAChD,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,aAAa,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBAC3D,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,cAAc;YAClB,KAAK,EAAE,oBAAoB;YAC3B,WAAW,EAAE,uDAAuD;YACpE,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YAC5E,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,kBAAkB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBAChE,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,cAAc;YAClB,KAAK,EAAE,cAAc;YACrB,WAAW,EAAE,oDAAoD;YACjE,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YACxE,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,cAAc,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBAC5D,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,QAAQ;YACZ,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,gDAAgD;YAC7D,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YAChF,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,sBAAsB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBACpE,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,eAAe;YACnB,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,kFAAkF;YAC/F,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,MAAM,EAAE,CAAC,eAAe,EAAE,KAAK,CAAC;YAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,KAAgC,CAAC,CAAC;gBAC1D,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,gBAAgB;YACpB,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,mFAAmF;YAChG,KAAK,EAAE,OAAO,CAAC,YAAY;YAC3B,MAAM,EAAE,CAAC,eAAe,EAAE,KAAK,CAAC;YAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,KAAgC,CAAC,CAAC;gBAC1D,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,gBAAgB;YACpB,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,2DAA2D;YACxE,KAAK,EAAE,OAAO,CAAC,aAAa;YAC5B,MAAM,EAAE,OAAO,CAAC,0BAA0B,EAAE;YAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,gBAAgB,CAAC,KAAsB,CAAC,CAAC;gBACjD,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,OAAO;YACX,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,2CAA2C;YACxD,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,KAAK,CAAC,SAAS;YAC5D,MAAM,EAAE,kBAAkB,EAAE;YAC5B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBACrC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACrB,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,yBAAyB,KAAK,IAAI,CAAC,CAAC;oBAC7D,OAAO;gBACR,CAAC;gBACD,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACxC,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,iBAAiB;YACrB,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,0DAA0D;YACvE,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;YAChD,MAAM,EAAE,gBAAgB;YACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;gBACjE,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,oBAAoB;YACxB,KAAK,EAAE,oBAAoB;YAC3B,WAAW,EAAE,6CAA6C;YAC1D,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YAC9E,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,oBAAoB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBAClE,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,eAAe;YACnB,KAAK,EAAE,eAAe;YACtB,WAAW,EAAE,+DAA+D;YAC5E,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YACzE,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,eAAe,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBAC7D,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,eAAe;YACnB,KAAK,EAAE,sBAAsB;YAC7B,WAAW,EAAE,wEAAwE;YACrF,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,qBAAqB,EAAE;YACtD,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;YACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,KAAwB,CAAC,CAAC;gBACxE,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,QAAQ;YACZ,KAAK,EAAE,iBAAiB;YACxB,WAAW,EAAE,kEAAkE;YAC/E,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;YAC/E,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;gBACnE,SAAS,EAAE,CAAC;YACb,CAAC;SACD;QACD;YACC,EAAE,EAAE,gBAAgB;YACpB,KAAK,EAAE,gBAAgB;YACvB,WAAW,EAAE,2CAA2C;YACxD,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;YAC1D,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;YAC5B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;gBACtE,SAAS,EAAE,CAAC;YACb,CAAC;SACD;KACD,CAAC;AACH,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EACxB,OAAO,EACP,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,OAAO,GACQ;IACf,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,MAAM,CAAe,KAAK,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,gBAAgB,GAAG,MAAM,CAAmC,IAAI,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,iBAAiB,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC5E,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACrF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAmB,EAAE,CAAC,CAAC;IACzE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAkC,IAAI,CAAC,CAAC;IAC9F,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAkC,IAAI,CAAC,CAAC;IAC9F,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAoC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IACvH,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAoC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IACvH,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5G,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAmD,IAAI,CAAC,CAAC;IAC/G,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,QAAQ,EAAsB,CAAC;IAC7F,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,wBAAwB,EAAE,2BAA2B,CAAC,GAAG,QAAQ,CAAkB,EAAE,CAAC,CAAC;IAC9F,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IAC1E,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9F,MAAM,mBAAmB,GAAG,MAAM,CAAwB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5E,MAAM,qBAAqB,GAAG,MAAM,CAAiC,SAAS,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,sBAAsB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAE3D,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,OAA8B,MAAM,EAAE,EAAE;QACxE,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE;QACjC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACxB,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,OAAqB,EAAE,EAAE;QAC5C,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACzB,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;QAChC,QAAQ,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,YAAqB,EAAE,EAAE;QACzD,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC;IAE/B,MAAM,kBAAkB,GAAG,CAAC,KAA+C,EAAE,EAAE;QAC9E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,iBAAiB,CAAC,OAAO,IAAI,CAAC,CAAC;QAC/B,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7B,GAAG,OAAO;YACV;gBACC,GAAG,KAAK;gBACR,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,IAAI,SAAS,IAAI,iBAAiB,CAAC,OAAO,EAAE;gBAC7D,SAAS;aACT;SACD,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACvB,OAAO,CAAC,WAAW,EAAE,CAAC;QACtB,IAAI,EAAE,CAAC;IACR,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAW,EAAE;QACpD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;QACxD,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QAClF,OAAO,OAAO,CAAC,eAAe,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,MAAM,CAA+B,IAAI,CAAC,CAAC;IAC3E,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,GAAG,eAAe,CAC5D,OAAO,CAAC,OAAO,EACf,CAAC,MAAM,EAAE,EAAE;QACV,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;QACT,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACtC,KAAK,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5E,KAAK,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,CAAC;IACF,CAAC,CACD,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACd,QAAQ,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,cAAc,EAAE,CAAC,CAAC;IAC3D,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC/B,QAAQ,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9D,OAAO,EAAE,CAAC;IACX,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC7B,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrB,kBAAkB,EAAE,CAAC;IACtB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,GAAG,EAAE;QACjC,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC;IAEF,MAAM,eAAe,GAAyB;QAC7C,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9D,EAAE,EAAE,iBAAiB,KAAK,IAAI,IAAI,EAAE;YACpC,IAAI,EAAE,OAAgB;YACtB,IAAI;YACJ,MAAM,EAAE,SAAkB;SAC1B,CAAC,CAAC;QACH,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC9D,EAAE,EAAE,kBAAkB,KAAK,IAAI,IAAI,EAAE;YACrC,IAAI,EAAE,UAAmB;YACzB,IAAI;YACJ,MAAM,EAAE,SAAkB;SAC1B,CAAC,CAAC;QACH,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,YAAqB;SAC7B,CAAC,CAAC;KACH,CAAC;IAEF,MAAM,6BAA6B,GAAG,CAAC,OAAmD,EAAU,EAAE;QACrG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAC5D,MAAM,cAAc,GAAG;YACtB,GAAG,QAAQ;YACX,GAAG,QAAQ;YACX,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;SAC1D,CAAC;QACF,2BAA2B,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;gBACpB,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC9B,CAAC;YACD,OAAO,CAAC,CAAC;QACV,CAAC;QAED,MAAM,YAAY,GAAG,CAAC,GAAG,cAAc,EAAE,OAAO,EAAE,WAAW,IAAI,KAAK,CAAC,KAAK,CAAC;aAC3E,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;aAC1C,IAAI,CAAC,MAAM,CAAC,CAAC;QACf,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvB,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;YACpB,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC9B,CAAC;QACD,OAAO,cAAc,CAAC,MAAM,CAAC;IAC9B,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,CAAC,IAAY,EAAE,IAA0B,EAAE,EAAE;QAC3E,2BAA2B,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACxC,GAAG,OAAO;YACV;gBACC,EAAE,EAAE,GAAG,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,OAAO,CAAC,MAAM,EAAE;gBAC7C,IAAI;gBACJ,IAAI;aACJ;SACD,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,KAAK,IAAI,EAAE;QACvC,IAAI,wBAAwB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO;QACR,CAAC;QAED,MAAM,cAAc,GAAG,CAAC,GAAG,wBAAwB,CAAC,CAAC;QACrD,2BAA2B,CAAC,EAAE,CAAC,CAAC;QAEhC,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,EAAE;YACvC,2BAA2B,CAAC,cAAc,CAAC,CAAC;YAC5C,QAAQ,CACP,gCAAgC,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KACrE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACtD,EAAE,CACF,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC;YACJ,MAAM,gBAAgB,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YAClG,IAAI,gBAAgB,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC7B,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;oBACtC,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC5C,CAAC;gBACD,OAAO;YACR,CAAC;YAED,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,EAAE,CAAC;gBACjE,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5C,CAAC;YAED,MAAM,WAAW,GAAG,cAAc,CAAC,gBAAgB,CAAC,CAAC;YACrD,MAAM,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;YACxD,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAE/C,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;gBAC5B,IAAI,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACtC,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAC3C,SAAS;gBACV,CAAC;gBAED,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE;oBAC1C,iBAAiB,EAAE,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO;iBACrE,CAAC,CAAC;YACJ,CAAC;YAED,SAAS,CAAC,WAAW,cAAc,CAAC,MAAM,kBAAkB,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,oBAAoB,EAAE,SAAS,CAAC,CAAC;QACpI,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,YAAY,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACF,CAAC,CAAC;IAEF,uBAAuB,CAAC,OAAO,GAAG,oBAAoB,CAAC;IAEvD,MAAM,UAAU,GAAG,KAAK,EAAE,SAAiC,EAAE,EAAE;QAC9D,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,2BAA2B,EAAE,SAAS,CAAC,CAAC;gBACzH,OAAO;YACR,CAAC;YACD,OAAO,EAAE,CAAC;YACV,SAAS,CAAC,eAAe,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QAClF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,wBAAwB,GAAG,GAAG,EAAE;QACrC,MAAM,gBAAgB,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;QAC7C,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC,gBAAgB,CAAC,CAAC;QACxE,QAAQ,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;QACjE,SAAS,CAAC,mBAAmB,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,GAAG,EAAE,SAAS,CAAC,CAAC;IACrF,CAAC,CAAC;IAEF,MAAM,yBAAyB,GAAG,GAAG,EAAE;QACtC,qBAAqB,CAAC,CAAC,OAAO,EAAE,EAAE;YACjC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC;YACtB,SAAS,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,GAAG,EAAE,SAAS,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC;QACb,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,KAAK,IAAI,EAAE;QACrC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;QAC/D,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,SAAS,CAAC,6DAA6D,EAAE,SAAS,CAAC,CAAC;YACpF,OAAO;QACR,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,mBAAmB,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC;QAEhC,IAAI,CAAC;YACJ,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAEpC,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,UAAU,EAAE,QAAQ,CAAC,EAAE;gBAC3D,KAAK,EAAE,SAAS;aAChB,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACpE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACpC,SAAS,CAAC,sCAAsC,EAAE,SAAS,CAAC,CAAC;YAC9D,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,QAAQ,CAAC,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC/F,CAAC;gBAAS,CAAC;YACV,IAAI,CAAC;gBACJ,UAAU,CAAC,QAAQ,CAAC,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACrC,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,GAAG,EAAE;QAClC,MAAM,QAAQ,GAAG,6BAA6B,EAAE,CAAC;QACjD,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACpB,SAAS,CAAC,gCAAgC,EAAE,SAAS,CAAC,CAAC;YACvD,OAAO;QACR,CAAC;QAED,SAAS,CAAC,YAAY,QAAQ,kBAAkB,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,iBAAiB,EAAE,SAAS,CAAC,CAAC;IACxG,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,KAAK,IAAI,EAAE;QACtC,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,MAAM,kBAAkB,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,SAAS,CAAC,sCAAsC,EAAE,SAAS,CAAC,CAAC;gBAC7D,OAAO;YACR,CAAC;YAED,MAAM,SAAS,GAAG,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC;YACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,sBAAsB,MAAM,CAAC,UAAU,EAAE,IAAI,SAAS,EAAE,CAAC,CAAC;YAC1F,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAElD,MAAM,SAAS,GACd,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;gBACjD,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,IAAI,QAAQ,EAAE;gBAC9B,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,QAAQ,EAAE,CAAC;YAChC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YACtC,SAAS,CAAC,gDAAgD,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,SAAS,CAAC,oCAAoC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QACpH,CAAC;IACF,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC5B,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAClC,SAAS,CAAC,gDAAgD,EAAE,SAAS,CAAC,CAAC;YACvE,OAAO;QACR,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;YAC5B,OAAO,EAAE,CAAC;YACV,oBAAoB,EAAE,CAAC;YACvB,SAAS,CAAC,2BAA2B,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,2BAA2B,GAAG,GAAG,EAAE;QACxC,sBAAsB,CAAC,OAAO,GAAG,IAAI,CAAC;QACtC,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;QACpE,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,OAAO,MAAM,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,OAAO,EAAE,CAAC,CAAC;IACxG,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,GAAG,EAAE;QACnC,MAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC;QAC5C,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACtB,KAAK,QAAQ;gBACZ,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC3B,MAAM;YACP,KAAK,SAAS;gBACb,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACvB,MAAM;YACP,KAAK,OAAO,CAAC;YACb,KAAK,QAAQ;gBACZ,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC3B,MAAM;YACP,KAAK,QAAQ;gBACZ,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM;YACP,KAAK,MAAM;gBACV,MAAM;QACR,CAAC;QACD,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC7B,sBAAsB,EAAE,CAAC;QACzB,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,wBAAwB,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACpC,wBAAwB,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;QACpC,0BAA0B,CAAC,SAAS,CAAC,CAAC;QACtC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC;QAC5C,oBAAoB,EAAE,CAAC;QACvB,2BAA2B,EAAE,CAAC;IAC/B,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACd,UAAU,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IACpC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAEpB,SAAS,CAAC,GAAG,EAAE;QACd,mBAAmB,CAAC,OAAO,GAAG,qBAAqB,CAAC;IACrD,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE5B,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,QAAQ,GAAG,GAAG,EAAE;YACrB,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAC3C,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACtC,OAAO,GAAG,EAAE;YACX,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACxC,CAAC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,aAAa,CAAC,kBAAkB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG,kBAAkB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,sBAAsB,GAAG,CAAC,gBAAgB,CAAC;IACjD,MAAM,6BAA6B,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAErE,SAAS,wBAAwB,CAAC,OAAmC;QACpE,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QACnC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO;QACrC,UAAU,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,UAAU,eAAe,CAAC,QAA6B;QAC3D,UAAU,CAAC;YACV,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,QAAQ,CAAC,EAAE;YACvB,YAAY,EAAE,QAAQ,CAAC,KAAK;YAC5B,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,oBAAoB;YAChC,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,SAAS;YACpB,WAAW,EAAE,SAAS;YACtB,QAAQ,EAAE,gCAAgC,WAAW,EAAE,GAAG;SAC1D,CAAC,CAAC;QAEH,IAAI,CAAC;YACJ,MAAM,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CACpD,QAAQ,CAAC,EAAE,EACX;gBACC,MAAM,EAAE,CAAC,QAAQ,EAAE,EAAE;oBACpB,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;oBACzC,wBAAwB,CAAC;wBACxB,QAAQ;wBACR,QAAQ,EAAE,MAAM;4BACf,CAAC,CAAC,wFAAwF;4BAC1F,CAAC,CAAC,oDAAoD;qBACvD,CAAC,CAAC;gBACJ,CAAC;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CACpB,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;oBAC/B,gBAAgB,CAAC,OAAO,GAAG,OAAO,CAAC;oBACnC,wBAAwB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClF,CAAC,CAAC;gBACH,iBAAiB,EAAE,GAAG,EAAE,CACvB,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;oBAC/B,gBAAgB,CAAC,OAAO,GAAG,OAAO,CAAC;oBACnC,wBAAwB,CAAC;wBACxB,MAAM,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE;wBACpD,UAAU,EAAE,oBAAoB;wBAChC,UAAU,EAAE,EAAE;qBACd,CAAC,CAAC;gBACJ,CAAC,CAAC;gBACH,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;oBACvB,wBAAwB,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;gBACjD,CAAC;aACD,EACD,SAAS,EACT,SAAS,CACT,CAAC;YACF,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;YACxC,YAAY,EAAE,CAAC;YACf,OAAO,EAAE,CAAC;YACV,SAAS,CAAC,gBAAgB,QAAQ,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,YAAY,EAAE,CAAC;YACf,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;IACF,CAAC;IAED,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC;QACxC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ;QACR,aAAa,EAAE;YACd,SAAS;YACT,QAAQ;YACR,WAAW;YACX,UAAU;YACV,YAAY;YACZ,QAAQ;YACR,kBAAkB;YAClB,eAAe;YACf,gBAAgB;YAChB,kBAAkB;YAClB,cAAc,EAAE,gBAAgB;YAChC,MAAM,EAAE,UAAU;SAClB;QACD,aAAa,EAAE,OAAO;QACtB,uBAAuB,EAAE,sBAAsB;QAC/C,2BAA2B,EAAE,kBAAkB;KAC/C,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IAC7C,MAAM,8BAA8B,GAAG,KAAK,EAAE,KAAa,EAAE,OAA6B,UAAU,EAAE,EAAE;QACvG,IAAI,CAAC,gBAAgB,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClD,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC,CAAC;IACF,eAAe,CAAC,OAAO,GAAG,8BAA8B,CAAC;IAEzD,MAAM,8BAA8B,GAAG,KAAK,EAAE,IAAY,EAAoB,EAAE;QAC/E,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC;QACxD,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,eAAe,CAAC,YAAY,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC,CAAC;QACjF,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC;QACd,CAAC;QAED,MAAM,eAAe,GAAqB;YACzC,EAAE,EAAE,qBAAqB,CAAC,OAAO,IAAI;gBACpC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS;gBAC7B,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;gBAC1B,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS;gBAC5B,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;gBAChB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;gBACnB,iBAAiB,EAAE,GAAG,EAAE,GAAE,CAAC;gBAC3B,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;gBACnB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;gBACnB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;gBACnB,QAAQ,EAAE,GAAG,EAAE,GAAE,CAAC;gBAClB,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,SAAkB;gBACtC,aAAa,EAAE,GAAG,EAAE,GAAE,CAAC;gBACvB,aAAa,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO;gBACrC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,SAAS;gBAC7B,kBAAkB,EAAE,GAAG,EAAE,GAAE,CAAC;gBAC5B,IAAI,KAAK;oBACR,OAAO,cAAc,CAAC;gBACvB,CAAC;gBACD,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE;gBACtB,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS;gBACzB,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC;aAC7E;YACD,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc;YAC9C,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa;YAC5C,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK;YAC5B,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW;YAC1C,KAAK,EAAE,GAAG,EAAE;gBACX,KAAK,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC9B,CAAC;YACD,kBAAkB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,GAAG,CAAC;YACjE,QAAQ,EAAE,UAAU;YACpB,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE;YACxD,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;gBACpB,KAAK,CAAC,KAAK,IAAI,EAAE;oBAChB,IAAI,CAAC;wBACJ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC;wBAC1E,kBAAkB,EAAE,CAAC;wBACrB,OAAO,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC;oBAC/B,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,MAAM,aAAa,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;wBAChF,OAAO,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,CAAC;oBACnC,CAAC;gBACF,CAAC,CAAC,EAAE,CAAC;YACN,CAAC;SACD,CAAC;QAEF,KAAK,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,SAAS,EAAE,CAAC;YACjD,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC;gBACpC,SAAS;YACV,CAAC;YAED,IAAI,CAAC;gBACJ,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,QAAQ,CAAC,2BAA2B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/F,CAAC;YACD,OAAO,IAAI,CAAC;QACb,CAAC;QAED,OAAO,KAAK,CAAC;IACd,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,sBAAsB,CAAC,OAAO,EAAE,CAAC;YACpC,OAAO;QACR,CAAC;QACD,2BAA2B,EAAE,CAAC;IAC/B,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAE3B,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,qBAAqB,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3C,OAAO;QACR,CAAC;QAED,MAAM,SAAS,GACd,qBAAqB,CAAC,IAAI,KAAK,QAAQ;YACvC,qBAAqB,CAAC,IAAI,KAAK,SAAS;YACxC,qBAAqB,CAAC,IAAI,KAAK,OAAO;YACtC,qBAAqB,CAAC,IAAI,KAAK,QAAQ;YACtC,CAAC,CAAC,qBAAqB,CAAC,SAAS;YACjC,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,OAAO;QACR,CAAC;QAED,MAAM,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;YACpB,sBAAsB,EAAE,CAAC;YACzB,OAAO;QACR,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC7B,sBAAsB,EAAE,CAAC;QAC1B,CAAC,EAAE,SAAS,CAAC,CAAC;QAEd,OAAO,GAAG,EAAE;YACX,YAAY,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE5B,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,OAAO;QACR,CAAC;QAED,IAAI,eAAe,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;YACzD,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/C,eAAe,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,CAAC;QAC1C,CAAC;IACF,CAAC,EAAE,CAAC,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,uBAAuB,GAAG,GAAuB,EAAE,CAAC,CAAC;YAC1D,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAChC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACvB,IAAI,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;oBAC3B,OAAO,CAAC,SAAS,CAAC,CAAC;oBACnB,OAAO;gBACR,CAAC;gBAED,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,OAAO,CAAC,KAAyB,EAAE,EAAE;wBACpC,IAAI,OAAO,EAAE,CAAC;4BACb,OAAO;wBACR,CAAC;wBACD,OAAO,GAAG,IAAI,CAAC;wBACf,IAAI,EAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBACpD,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;wBAC3C,OAAO,CAAC,KAAK,CAAC,CAAC;oBAChB,CAAC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBAEL,MAAM,OAAO,GAAG,GAAG,EAAE;oBACpB,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACrB,CAAC,CAAC;gBAEF,sBAAsB,EAAE,CAAC;gBACzB,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjE,wBAAwB,CAAC;oBACxB,IAAI,EAAE,QAAQ;oBACd,KAAK;oBACL,OAAO;oBACP,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;oBAChE,OAAO,EAAE,QAAQ;iBACjB,CAAC,CAAC;YACJ,CAAC,CAAC;YACH,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CACjC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACvB,IAAI,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;oBAC3B,OAAO,CAAC,KAAK,CAAC,CAAC;oBACf,OAAO;gBACR,CAAC;gBAED,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,OAAO,CAAC,KAAc,EAAE,EAAE;wBACzB,IAAI,OAAO,EAAE,CAAC;4BACb,OAAO;wBACR,CAAC;wBACD,OAAO,GAAG,IAAI,CAAC;wBACf,IAAI,EAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBACpD,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;wBAC3C,OAAO,CAAC,KAAK,CAAC,CAAC;oBAChB,CAAC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBAEL,MAAM,OAAO,GAAG,GAAG,EAAE;oBACpB,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACjB,CAAC,CAAC;gBAEF,sBAAsB,EAAE,CAAC;gBACzB,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjE,wBAAwB,CAAC;oBACxB,IAAI,EAAE,SAAS;oBACf,KAAK;oBACL,OAAO;oBACP,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;oBAChE,OAAO,EAAE,QAAQ;iBACjB,CAAC,CAAC;YACJ,CAAC,CAAC;YACH,KAAK,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CACnC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACvB,IAAI,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;oBAC3B,OAAO,CAAC,SAAS,CAAC,CAAC;oBACnB,OAAO;gBACR,CAAC;gBAED,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,OAAO,CAAC,KAAyB,EAAE,EAAE;wBACpC,IAAI,OAAO,EAAE,CAAC;4BACb,OAAO;wBACR,CAAC;wBACD,OAAO,GAAG,IAAI,CAAC;wBACf,IAAI,EAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;wBACpD,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;wBAC3C,OAAO,CAAC,KAAK,CAAC,CAAC;oBAChB,CAAC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBAEL,MAAM,OAAO,GAAG,GAAG,EAAE;oBACpB,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACrB,CAAC,CAAC;gBAEF,sBAAsB,EAAE,CAAC;gBACzB,IAAI,EAAE,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjE,wBAAwB,CAAC;oBACxB,IAAI,EAAE,OAAO;oBACb,KAAK;oBACL,WAAW;oBACX,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;oBAChE,OAAO,EAAE,QAAQ;iBACjB,CAAC,CAAC;YACJ,CAAC,CAAC;YACH,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;oBACtB,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAClB,OAAO;gBACR,CAAC;gBACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACxB,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;oBAC9B,OAAO;gBACR,CAAC;gBACD,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC5B,CAAC;YACD,SAAS,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;gBACxB,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACjD,oBAAoB,EAAE,CAAC;YACxB,CAAC;YACD,iBAAiB,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC9B,0BAA0B,CAAC,OAAO,CAAC,CAAC;YACrC,CAAC;YACD,SAAS,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,OAAgC,EAAE,EAAE;gBAC7D,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,aAAa,CAAC;gBACtD,MAAM,SAAS,GAAG,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,wBAAwB,CAAC;gBACpG,MAAM,aAAa,GAAG,SAAS,KAAK,aAAa,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,wBAAwB,CAAC;gBAExG,aAAa,CAAC,CAAC,OAAO,EAAE,EAAE;oBACzB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBACvB,OAAO,OAAO,CAAC;oBAChB,CAAC;oBACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjB,OAAO,IAAI,CAAC;gBACb,CAAC,CAAC,CAAC;gBAEH,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE;oBACrB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC9B,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACjB,OAAO,IAAI,CAAC;oBACb,CAAC;oBAED,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;wBACtE,OAAO,IAAI,CAAC;oBACb,CAAC;oBAED,IAAI,CAAC;wBACJ,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;4BACb,IAAI,EAAE,WAAW;4BACjB,MAAM,EAAE,8BAA8B,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;yBAC7E,CAAC,CAAC;oBACJ,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,sCAAsC,GAAG,MAAM,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACnH,CAAC;oBACD,OAAO,IAAI,CAAC;gBACb,CAAC,CAAC,CAAC;YACJ,CAAC;YACD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;gBACtB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,kBAAkB,CAAC,IAAI,CAAC,CAAC;oBACzB,OAAO;gBACR,CAAC;gBAED,IAAI,CAAC;oBACJ,kBAAkB,CACjB,8BAA8B,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC,CACzF,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,QAAQ,CAAC,sCAAsC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC1G,CAAC;YACF,CAAC;YACD,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;gBACtB,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,kBAAkB,CAAC,IAAI,CAAC,CAAC;oBACzB,OAAO;gBACR,CAAC;gBAED,IAAI,CAAC;oBACJ,kBAAkB,CAAC,8BAA8B,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;gBAC3F,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,QAAQ,CAAC,sCAAsC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC1G,CAAC;YACF,CAAC;YACD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBACnB,sBAAsB,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,CAClC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC/B,IAAI,mBAAmB,GAAG,KAAK,CAAC;gBAEhC,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;oBACpB,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,OAAO,CAAC,KAAc,EAAE,EAAE;wBACzB,IAAI,OAAO,EAAE,CAAC;4BACb,OAAO;wBACR,CAAC;wBACD,OAAO,GAAG,IAAI,CAAC;wBACf,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;wBAC3C,OAAO,CAAC,KAAc,CAAC,CAAC;oBACzB,CAAC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBAEL,MAAM,MAAM,GAAG,GAAG,EAAE;oBACnB,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC3C,OAAO,CAAC,SAAkB,CAAC,CAAC;gBAC7B,CAAC,CAAC;gBAEF,sBAAsB,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,wBAAwB,EAAE,CAAC;gBAE1C,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;qBACnE,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;oBACnB,MAAM,MAAM,GAAG,uCAAuC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;oBAE1E,MAAM,MAAM,GAAG;wBACd,IAAI,EAAE,GAAG,EAAE;4BACV,mBAAmB,GAAG,IAAI,CAAC;4BAC3B,wBAAwB,CAAC,CAAC,OAAO,EAAE,EAAE,CACpC,OAAO,CAAC,IAAI,KAAK,QAAQ;gCACxB,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;gCAC9B,CAAC,CAAC,OAAO,CACV,CAAC;wBACH,CAAC;wBACD,SAAS,EAAE,CAAC,MAAe,EAAE,EAAE;4BAC9B,mBAAmB,GAAG,MAAM,CAAC;4BAC7B,wBAAwB,CAAC,CAAC,OAAO,EAAE,EAAE,CACpC,OAAO,CAAC,IAAI,KAAK,QAAQ;gCACxB,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE;gCACxB,CAAC,CAAC,OAAO,CACV,CAAC;wBACH,CAAC;wBACD,QAAQ,EAAE,GAAG,EAAE,CAAC,mBAAmB;qBACnC,CAAC;oBAEF,OAAO,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;oBAC5B,wBAAwB,CAAC;wBACxB,IAAI,EAAE,QAAQ;wBACd,MAAM;wBACN,IAAI,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;wBACtD,MAAM,EAAE,KAAK;wBACb,MAAM,EAAE,GAAG,EAAE;4BACZ,MAAM,EAAE,CAAC;wBACV,CAAC;qBACD,CAAC,CAAC;gBACJ,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;oBAChB,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC3C,MAAM,CAAC,KAAK,CAAC,CAAC;gBACf,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YACH,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,QAAQ,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;YACD,aAAa,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO;YACrC,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAC1B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACvB,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;oBACtB,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,OAAO,CAAC,KAAyB,EAAE,EAAE;wBACpC,IAAI,OAAO,EAAE,CAAC;4BACb,OAAO;wBACR,CAAC;wBACD,OAAO,GAAG,IAAI,CAAC;wBACf,wBAAwB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;wBAC3C,OAAO,CAAC,KAAK,CAAC,CAAC;oBAChB,CAAC,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBAEL,sBAAsB,EAAE,CAAC;gBACzB,wBAAwB,CAAC;oBACxB,IAAI,EAAE,QAAQ;oBACd,KAAK;oBACL,OAAO;oBACP,OAAO,EAAE,QAAQ;iBACjB,CAAC,CAAC;YACJ,CAAC,CAAC;YACH,kBAAkB,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC/B,IAAI,CAAC,OAAO,EAAE,CAAC;oBACd,kBAAkB,CAAC,IAAI,CAAC,CAAC;oBACzB,OAAO;gBACR,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,8BAA8B,CAAC,CAAC,GAAG,EAAE,EAAE;wBACrD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,WAAW,CAAC,CAAC;wBAC3D,MAAM,CAAC,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;4BAC1B,KAAK,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;wBAC7C,CAAC,CAAC;wBACH,MAAM,CAAC,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;4BAC1B,QAAQ,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;wBACzE,CAAC,CAAC;wBACF,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;wBACjC,OAAO,MAAM,CAAC;oBACf,CAAC,CAAC,CAAC;oBACH,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBAC5B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBAChB,QAAQ,CAAC,sCAAsC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC1G,CAAC;YACF,CAAC;YACD,IAAI,KAAK;gBACR,OAAO,cAAc,CAAC;YACvB,CAAC;YACD,YAAY,EAAE,GAAG,EAAE,CAAC,2BAA2B,EAAE;YACjD,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC;YACxC,QAAQ,EAAE,CAAC,WAAW,EAAE,EAAE;gBACzB,IAAI,WAAW,YAAY,KAAK,EAAE,CAAC;oBAClC,gBAAgB,CAAC,WAAW,CAAC,CAAC;oBAC9B,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;wBACtB,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;wBAC3D,QAAQ,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;oBACnE,CAAC;oBACD,oBAAoB,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC1B,CAAC;gBAED,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAC3C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBACtD,QAAQ,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;oBAC7D,oBAAoB,EAAE,CAAC;oBACvB,OAAO,EAAE,CAAC;gBACX,CAAC;gBACD,OAAO,MAAM,CAAC;YACf,CAAC;SACD,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,uBAAuB,EAAE,CAAC;QAC5C,qBAAqB,CAAC,OAAO,GAAG,SAAS,CAAC;QAE1C,KAAK,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;YACnC,SAAS;YACT,qBAAqB,EAAE;gBACtB,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE;gBACtD,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBAC7B,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;oBAC5F,IAAI,CAAC,OAAO,EAAE,CAAC;wBACd,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oBAC5B,CAAC;oBAED,IAAI,OAAO,EAAE,KAAK,EAAE,CAAC;wBACpB,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;oBACrD,CAAC;oBAED,gBAAgB,EAAE,CAAC;oBACnB,QAAQ,CAAC,EAAE,CAAC,CAAC;oBACb,SAAS,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC;oBAC7C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;gBAC7B,CAAC;gBACD,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;oBACvB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACnD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;wBACtB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oBAC5B,CAAC;oBAED,gBAAgB,EAAE,CAAC;oBACnB,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;oBAC9B,SAAS,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;oBAC/C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;gBAC7B,CAAC;gBACD,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;oBACzC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE;wBAC3D,SAAS,EAAE,OAAO,EAAE,SAAS;wBAC7B,kBAAkB,EAAE,OAAO,EAAE,kBAAkB;wBAC/C,mBAAmB,EAAE,OAAO,EAAE,mBAAmB;wBACjD,KAAK,EAAE,OAAO,EAAE,KAAK;qBACrB,CAAC,CAAC;oBACH,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;wBACtB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;oBAC5B,CAAC;oBAED,gBAAgB,EAAE,CAAC;oBACnB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;wBACvB,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAC7B,CAAC;oBACD,SAAS,CAAC,8BAA8B,EAAE,SAAS,CAAC,CAAC;oBACrD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;gBAC7B,CAAC;aACD;YACD,eAAe,EAAE,UAAU;YAC3B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAClB,QAAQ,CAAC,sBAAsB,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YACvE,CAAC;YACD,WAAW,EAAE,CAAC,KAAK,EAAE,EAAE;gBACtB,QAAQ,CAAC,iBAAiB,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAC7D,CAAC;SACD,CAAC,CAAC;QAEH,OAAO,GAAG,EAAE;YACX,gBAAgB,EAAE,CAAC;QACpB,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC,CAAC;IAEvD,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,aAAa,CAAC,OAAO;YAAE,OAAO;QAClC,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;QAE7B,KAAK,CAAC,KAAK,IAAI,EAAE;YAChB,IAAI,CAAC;gBACJ,IAAI,cAAc,EAAE,CAAC;oBACpB,SAAS,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;oBAC/C,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;gBACzE,CAAC;gBAED,IAAI,eAAe,EAAE,CAAC;oBACrB,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;wBACvC,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACvC,CAAC;gBACF,CAAC;gBAED,IAAI,cAAc,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;oBACvE,SAAS,CAAC,2BAA2B,EAAE,SAAS,CAAC,CAAC;gBACnD,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAClE,CAAC;oBAAS,CAAC;gBACV,OAAO,EAAE,CAAC;YACX,CAAC;QACF,CAAC,CAAC,EAAE,CAAC;IACN,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAE/E,MAAM,iBAAiB,GACtB,OAAO,CAAC,eAAe,CAAC;QACxB,CAAC,qBAAqB,CAAC,IAAI,KAAK,MAAM;YACrC,CAAC,CAAC,qBAAqB,CAAC,IAAI,KAAK,QAAQ,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;IAE9E,iBAAiB,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,iBAAiB;QACjE,MAAM,EAAE,UAAU;QAClB,cAAc,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QACtD,YAAY,EAAE,GAAG,EAAE;YAClB,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QACjC,CAAC;QACD,QAAQ,EAAE,SAAS;KACnB,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACtC,OAAO;QACR,CAAC;QAED,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC;aACvC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;YAClB,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChB,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;QACF,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAChB,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAClE,CAAC;QACF,CAAC,CAAC,CAAC;QAEJ,OAAO,GAAG,EAAE;YACX,SAAS,GAAG,IAAI,CAAC;QAClB,CAAC,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAE1C,MAAM,aAAa,GAAG,OAAO,CAC5B,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,QAAQ,CAAC,EACnG,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CACxB,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACxF,MAAM,eAAe,GACpB,KAAK,CAAC,MAAM;QACZ,CAAC,uBAAuB;YACxB,CAAC,QAAQ,CAAC,WAAW,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,oBAAoB,GAAG,CAAC,CAAC;YAC7G,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,uBAAuB,EAAE;YAC1D,CAAC,CAAC,SAAS,CAAC,CAAC;IAEf,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,IAAI,gBAAgB,GAAG,IAAI,CAAC;IAE5B,QAAQ,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,KAAK,UAAU;YACd,OAAO,GAAG,CACT,KAAC,cAAc,IACd,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,YAAY,GACpB,CACF,CAAC;YACF,MAAM;QACP,KAAK,OAAO;YACX,OAAO,GAAG,CACT,KAAC,WAAW,IACX,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,EAAE,EACpD,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;oBACzB,IAAI,CAAC;wBACJ,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;wBACtC,YAAY,EAAE,CAAC;wBACf,OAAO,EAAE,CAAC;wBACV,SAAS,CAAC,gBAAgB,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;oBACrE,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACF,CAAC,EACD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,GAC3B,CACF,CAAC;YACF,MAAM;QACP,KAAK,cAAc;YAClB,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC;YAC1C,OAAO,GAAG,CACT,KAAC,kBAAkB,IAClB,MAAM,EAAE,mBAAmB,CAAC,MAAM,EAClC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;oBAC7B,IAAI,CAAC;wBACJ,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC1F,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;4BACtE,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;4BAC5D,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;4BACpC,YAAY,EAAE,CAAC;4BACf,OAAO,EAAE,CAAC;4BACV,SAAS,CAAC,sEAAsE,EAAE,SAAS,CAAC,CAAC;4BAC7F,OAAO;wBACR,CAAC;wBAED,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;wBACrF,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;wBAC9D,OAAO,CAAC,OAAO,CAAC,eAAe,CAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;4BACxB,KAAK,EAAE,KAAK,CAAC,KAAK;4BAClB,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,aAAa;yBACnE,CAAC,CAAC,CACH,CAAC;wBACF,YAAY,EAAE,CAAC;wBACf,OAAO,EAAE,CAAC;wBACV,SAAS,CAAC,2BAA2B,WAAW,CAAC,MAAM,YAAY,EAAE,SAAS,CAAC,CAAC;oBACjF,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACF,CAAC,EACD,WAAW,EAAE,mBAAmB,CAAC,WAAW,GAC3C,CACF,CAAC;YACF,MAAM;QACP,KAAK,OAAO;YACX,OAAO,GAAG,CACT,KAAC,WAAW,IACX,MAAM,EAAE,kBAAkB,EAAE,EAC5B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE;oBACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBACzC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACrB,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,yBAAyB,SAAS,IAAI,CAAC,CAAC;wBACjE,OAAO;oBACR,CAAC;oBACD,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACpD,QAAQ,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAC,CAAC;oBAChD,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;oBAClC,YAAY,EAAE,CAAC;oBACf,SAAS,CAAC,gBAAgB,SAAS,GAAG,EAAE,SAAS,CAAC,CAAC;gBACpD,CAAC,GACA,CACF,CAAC;YACF,MAAM;QACP,KAAK,SAAS;YACb,OAAO,GAAG,CACT,KAAC,aAAa,IACb,OAAO,EAAE,YAAY,EACrB,kBAAkB,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,EAC/C,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBAC/B,IAAI,CAAC;wBACJ,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;4BAC/C,SAAS,CAAC,2DAA2D,EAAE,SAAS,CAAC,CAAC;4BAClF,OAAO;wBACR,CAAC;wBACD,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACrC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC3F,SAAS,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;oBAC1C,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACF,CAAC,EACD,iBAAiB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,EAC9D,eAAe,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;oBACrC,IAAI,CAAC;wBACJ,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAChE,kBAAkB,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC/B,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACxB,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;4BACzB,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE;4BACpF,CAAC,CAAC,OAAO,CACV,CACD,CAAC;wBACF,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,OAAO,CAAC,WAAW;4BAAE,OAAO,EAAE,CAAC;wBACzD,SAAS,CAAC,sBAAsB,YAAY,GAAG,EAAE,SAAS,CAAC,CAAC;oBAC7D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACF,CAAC,EACD,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBACxB,IAAI,CAAC;wBACJ,MAAM,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC/C,YAAY,EAAE,CAAC;wBACf,gBAAgB,EAAE,CAAC;wBACnB,SAAS,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;oBAC1C,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACF,CAAC,EACD,eAAe,EAAE,eAAe,GAC/B,CACF,CAAC;YACF,MAAM;QACP,KAAK,MAAM;YACV,OAAO,GAAG,CACT,KAAC,UAAU,IACV,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAC1B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBACxB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;wBACd,QAAQ,CAAC,2DAA2D,CAAC,CAAC;wBACtE,OAAO;oBACR,CAAC;oBACD,IAAI,CAAC;wBACJ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC3D,YAAY,EAAE,CAAC;wBACf,gBAAgB,EAAE,CAAC;wBACnB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;4BACvB,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;wBAC7B,CAAC;wBACD,SAAS,CAAC,kCAAkC,EAAE,SAAS,CAAC,CAAC;oBAC1D,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACF,CAAC,GACA,CACF,CAAC;YACF,MAAM;QACP,KAAK,aAAa;YACjB,OAAO,GAAG,CACT,KAAC,iBAAiB,IACjB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAC1B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBACxB,IAAI,CAAC;wBACJ,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACxD,YAAY,EAAE,CAAC;wBACf,gBAAgB,EAAE,CAAC;wBACnB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;4BACvB,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;4BAC9B,SAAS,CAAC,iCAAiC,EAAE,SAAS,CAAC,CAAC;wBACzD,CAAC;oBACF,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,QAAQ,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClE,CAAC;gBACF,CAAC,GACA,CACF,CAAC;YACF,MAAM;QACP,KAAK,OAAO;YACX,OAAO,GAAG,CACT,KAAC,WAAW,IACX,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;oBAC5B,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;wBACnC,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;wBAChC,OAAO;oBACR,CAAC;oBACD,UAAU,CAAC;wBACV,IAAI,EAAE,OAAO;wBACb,UAAU,EAAE,QAAQ,CAAC,EAAE;wBACvB,YAAY,EAAE,QAAQ,CAAC,KAAK;wBAC5B,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE,eAAe,QAAQ,CAAC,EAAE,EAAE;wBACxC,UAAU,EAAE,EAAE;wBACd,SAAS,EAAE,SAAS;wBACpB,WAAW,EAAE,SAAS;wBACtB,QAAQ,EAAE,gCAAgC,WAAW,EAAE,GAAG;qBAC1D,CAAC,CAAC;gBACJ,CAAC,EACD,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,GACjC,CACF,CAAC;YACF,MAAM;QACP,KAAK,QAAQ;YACZ,OAAO,GAAG,CACT,KAAC,WAAW,IACX,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAChC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;oBACrB,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;oBACtF,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;oBACxC,YAAY,EAAE,CAAC;oBACf,OAAO,EAAE,CAAC;oBACV,SAAS,CAAC,4BAA4B,OAAO,CAAC,KAAK,GAAG,EAAE,SAAS,CAAC,CAAC;gBACpE,CAAC,GACA,CACF,CAAC;YACF,MAAM;QACP,KAAK,OAAO;YACX,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;YACjC,OAAO,GAAG,CACT,KAAC,WAAW,IACX,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,wBAAwB,EAClC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,KAAK,IAAI,EAAE;oBACpB,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;wBAC9B,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;wBACzC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;wBAChC,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC;wBACpC,wBAAwB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;wBAChE,OAAO,CAAC,KAAK,CAAC,CAAC;wBACf,OAAO;oBACR,CAAC;oBAED,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAClC,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;wBAC3C,IAAI,CAAC,KAAK,EAAE,CAAC;4BACZ,QAAQ,CAAC,0BAA0B,CAAC,CAAC;4BACrC,OAAO;wBACR,CAAC;wBACD,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,SAAS,EAAE;4BAC/E,IAAI,EAAE,SAAS;4BACf,GAAG,EAAE,KAAK;4BACV,SAAS,EAAE,SAAS;4BACpB,WAAW,EAAE,SAAS;yBACtB,CAAC,CAAC;wBACH,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;wBACxC,YAAY,EAAE,CAAC;wBACf,OAAO,EAAE,CAAC;wBACV,SAAS,CAAC,qBAAqB,UAAU,CAAC,UAAU,GAAG,EAAE,SAAS,CAAC,CAAC;oBACrE,CAAC;gBACF,CAAC,GACA,CACF,CAAC;YACF,MAAM;QACP,KAAK,MAAM;YACV,MAAM;IACR,CAAC;IAED,QAAQ,qBAAqB,CAAC,IAAI,EAAE,CAAC;QACpC,KAAK,QAAQ;YACZ,gBAAgB,GAAG,CAClB,KAAC,qBAAqB,IACrB,OAAO,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAS,CAAC,EACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,EACzD,OAAO,EAAE,qBAAqB,CAAC,OAAO,EACtC,SAAS,EAAE,qBAAqB,CAAC,SAAS,EAC1C,KAAK,EAAE,qBAAqB,CAAC,KAAK,GACjC,CACF,CAAC;YACF,MAAM;QACP,KAAK,SAAS;YACb,gBAAgB,GAAG,CAClB,KAAC,qBAAqB,IACrB,OAAO,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,EACnD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK,CAAC,EACnE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,EACtB,SAAS,EAAE,qBAAqB,CAAC,SAAS,EAC1C,KAAK,EAAE,GAAG,qBAAqB,CAAC,KAAK,KAAK,qBAAqB,CAAC,OAAO,EAAE,GACxE,CACF,CAAC;YACF,MAAM;QACP,KAAK,OAAO;YACX,gBAAgB,GAAG,CAClB,KAAC,mBAAmB,IACnB,OAAO,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAS,CAAC,EACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,EACzD,WAAW,EAAE,qBAAqB,CAAC,WAAW,EAC9C,SAAS,EAAE,qBAAqB,CAAC,SAAS,EAC1C,KAAK,EAAE,qBAAqB,CAAC,KAAK,GACjC,CACF,CAAC;YACF,MAAM;QACP,KAAK,QAAQ;YACZ,gBAAgB,GAAG,CAClB,KAAC,mBAAmB,IACnB,SAAS,QACT,OAAO,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAS,CAAC,EACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,EACzD,OAAO,EAAE,qBAAqB,CAAC,OAAO,EACtC,SAAS,EAAE,qBAAqB,CAAC,SAAS,EAC1C,KAAK,EAAE,qBAAqB,CAAC,KAAK,GACjC,CACF,CAAC;YACF,MAAM;QACP,KAAK,QAAQ;YACZ,IAAI,qBAAqB,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC;gBAC/E,gBAAgB,GAAG,CAClB,KAAC,sBAAsB,IACtB,MAAM,QACN,MAAM,EAAE,qBAAqB,CAAC,MAAM,EACpC,KAAK,EAAE,eAAe,GACrB,CACF,CAAC;YACH,CAAC;YACD,MAAM;QACP,KAAK,MAAM;YACV,MAAM;IACR,CAAC;IAED,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,gBAAgB,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvD,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;IACF,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEjD,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,gBAAgB,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,oBAAoB,EAAE,CAAC;QACjF,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;QACvE,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,MAAM,CAAC;QAE3E,IAAI,KAAK,CAAC,YAAY,KAAK,gBAAgB,EAAE,CAAC;YAC7C,QAAQ,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,KAAK,cAAc,EAAE,CAAC;YACzC,QAAQ,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,KAAK,aAAa,EAAE,CAAC;YACvC,QAAQ,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;QAChE,CAAC;IACF,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IAE/F,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,6BAA6B,CAAC,OAAO,IAAI,CAAC,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YACnD,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QAC1C,CAAC;QAED,6BAA6B,CAAC,OAAO,GAAG,sBAAsB,CAAC;IAChE,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAE7B,OAAO,CACN,MAAC,GAAG,IAAmB,aAAa,EAAC,QAAQ,aAC3C,eAAe,CAAC,CAAC,CAAC,CAClB,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,YAC1C,KAAC,sBAAsB,IACtB,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,eAAe,GACrB,GACG,CACN,CAAC,CAAC,CAAC,CACH,KAAC,MAAM,IACN,iBAAiB,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,oBAAoB,EAAE,EACzE,WAAW,EAAE,QAAQ,CAAC,WAAW,EACjC,YAAY,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,eAAe,EAAE,EACpF,gBAAgB,EAAE,gBAAgB,EAClC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,EAC3E,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,KAAK,GACX,CACF,EACD,KAAC,WAAW,IACX,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,kBAAkB,EACrC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAC3B,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,KAAK,EAAE,KAAK,GACX,EACF,KAAC,SAAS,IACT,iBAAiB,EAAE,kBAAkB,EACrC,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,KAAK,CAAC,cAAc,GACnC,EACF,KAAC,UAAU,IAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,GAAI,EACxE,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAClE,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CACzB,KAAC,GAAG,IAA6B,SAAS,EAAE,CAAC,YAC3C,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,EAAE,CAAC,IAD5C,gBAAgB,GAAG,EAAE,CAEzB,CACN,CAAC,CAAC,CAAC,CACH,KAAC,GAAG,IAA6B,SAAS,EAAE,CAAC,YAC5C,KAAC,sBAAsB,IACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE,eAAe,GACrB,IALO,gBAAgB,GAAG,EAAE,CAMzB,CACN,CACD,EACA,eAAe,CAAC,CAAC,CAAC,CAClB,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YAChB,KAAC,sBAAsB,IACtB,MAAM,QACN,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,8BAA8B,EACzC,KAAK,EAAE,eAAe,GACrB,GACG,CACN,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,KAAK,QAAQ;gBACzC,qBAAqB,CAAC,IAAI,KAAK,QAAQ;gBACvC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CACjC,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YAChB,KAAC,sBAAsB,IACtB,MAAM,QACN,MAAM,EAAE,qBAAqB,CAAC,MAAM,EACpC,KAAK,EAAE,eAAe,GACrB,GACG,CACN,CAAC,CAAC,CAAC,CACH,KAAC,WAAW,IACX,YAAY,EAAE,KAAK,CAAC,YAAY,EAChC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,iBAAiB,EAC5D,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,WAAW,EAAE,WAAW,EACxB,kBAAkB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;oBAClC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;wBACrB,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;wBAC5B,SAAS,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;wBAChD,OAAO;oBACR,CAAC;oBAED,IAAI,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;wBAClC,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;wBAClC,SAAS,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC;wBACjD,OAAO;oBACR,CAAC;oBAED,MAAM,QAAQ,GAAG,6BAA6B,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAChE,OAAO,EAAE,CAAC;oBACV,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;wBAClB,SAAS,CAAC,sCAAsC,QAAQ,kBAAkB,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,CAAC,CAAC;oBACpH,CAAC;yBAAM,CAAC;wBACP,SAAS,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;oBAChD,CAAC;gBACF,CAAC,EACD,YAAY,EAAE,UAAU,EACxB,SAAS,EAAE,qBAAqB,EAChC,MAAM,EAAE,UAAU,EAClB,gBAAgB,EAAE,kBAAkB,EACpC,SAAS,EAAE,8BAA8B,EACzC,mBAAmB,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EACxD,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAC/F,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,EAC1F,qBAAqB,EAAE,mBAAmB,EAC1C,QAAQ,EAAE,SAAS,EACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,8BAA8B,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EAClF,gBAAgB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,8BAA8B,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,EAC7F,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,8BAA8B,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EACvF,SAAS,EAAE,eAAe,EAC1B,qBAAqB,EAAE,CAAC,KAAK,EAAE,EAAE;oBAChC,OAAO,EAAE,CAAC;oBACV,SAAS,CAAC,mBAAmB,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;gBAClD,CAAC,EACD,0BAA0B,EAAE,wBAAwB,EACpD,qBAAqB,EAAE,yBAAyB,EAChD,OAAO,EAAE,OAAO,CAAC,OAAO,EACxB,KAAK,EAAE,KAAK,GACX,CACF,EACA,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAClE,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CACzB,KAAC,GAAG,IAA6B,SAAS,EAAE,CAAC,YAC3C,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,EAAE,CAAC,IAD5C,gBAAgB,GAAG,EAAE,CAEzB,CACN,CAAC,CAAC,CAAC,CACH,KAAC,GAAG,IAA6B,SAAS,EAAE,CAAC,YAC5C,KAAC,sBAAsB,IACtB,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,QAAQ,EAAE,EAAE,EACZ,KAAK,EAAE,eAAe,GACrB,IALO,gBAAgB,GAAG,EAAE,CAMzB,CACN,CACD,EACA,eAAe,CAAC,CAAC,CAAC,CAClB,KAAC,sBAAsB,IACtB,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,eAAe,GACrB,CACF,CAAC,CAAC,CAAC,CACH,KAAC,MAAM,IACN,sBAAsB,EAAE,UAAU,CAAC,sBAAsB,EACzD,MAAM,EAAE,UAAU,CAAC,MAAM,EACzB,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,EAC/C,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,GACX,CACF,EACA,OAAO,EACP,gBAAgB,EAChB,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,qBAAqB,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAChF,KAAC,IAAI,cAAE,KAAK,CAAC,KAAK,CAAC,2DAA2D,CAAC,GAAQ,CACvF,KA3JQ,WAAW,CA4Jf,CACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"AppShell.js","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/AppShell.tsx"],"names":[],"mappings":"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"}
@@ -5,7 +5,8 @@ interface FooterProps {
5
5
  branch: string | null;
6
6
  snapshot: SessionSnapshot;
7
7
  availableProviderCount: number;
8
+ extensionStatuses?: ReadonlyMap<string, string>;
8
9
  }
9
- export declare function Footer({ availableProviderCount, branch, snapshot, theme }: FooterProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function Footer({ availableProviderCount, branch, extensionStatuses, snapshot, theme }: FooterProps): import("react/jsx-runtime").JSX.Element;
10
11
  export {};
11
12
  //# sourceMappingURL=Footer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/Footer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,UAAU,WAAW;IACpB,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,eAAe,CAAC;IAC1B,sBAAsB,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,MAAM,CAAC,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,WAAW,2CAsBtF"}
1
+ {"version":3,"file":"Footer.d.ts","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/Footer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,UAAU,WAAW;IACpB,KAAK,EAAE,eAAe,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,eAAe,CAAC;IAC1B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,iBAAiB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD;AA0CD,wBAAgB,MAAM,CAAC,EAAE,sBAAsB,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,WAAW,2CA0DzG"}
@@ -1,18 +1,88 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Box, Text } from "ink";
3
- export function Footer({ availableProviderCount, branch, snapshot, theme }) {
4
- const parts = [
3
+ import stripAnsi from "strip-ansi";
4
+ function sanitizeStatusText(value) {
5
+ return value.replace(/\s+/g, " ").trim();
6
+ }
7
+ function formatTokens(count) {
8
+ if (count < 1000)
9
+ return count.toString();
10
+ if (count < 10000)
11
+ return `${(count / 1000).toFixed(1)}k`;
12
+ if (count < 1000000)
13
+ return `${Math.round(count / 1000)}k`;
14
+ if (count < 10000000)
15
+ return `${(count / 1000000).toFixed(1)}M`;
16
+ return `${Math.round(count / 1000000)}M`;
17
+ }
18
+ function shortenPath(path) {
19
+ const home = process.env.HOME || process.env.USERPROFILE;
20
+ if (home && path.startsWith(home)) {
21
+ return `~${path.slice(home.length)}`;
22
+ }
23
+ return path;
24
+ }
25
+ function chunkLines(values, width) {
26
+ const lines = [];
27
+ let current = "";
28
+ for (const value of values) {
29
+ const next = current ? `${current} ${value}` : value;
30
+ if (stripAnsi(next).length > width && current) {
31
+ lines.push(current);
32
+ current = value;
33
+ }
34
+ else {
35
+ current = next;
36
+ }
37
+ }
38
+ if (current) {
39
+ lines.push(current);
40
+ }
41
+ return lines;
42
+ }
43
+ export function Footer({ availableProviderCount, branch, extensionStatuses, snapshot, theme }) {
44
+ const cwdLineParts = [shortenPath(snapshot.cwd)];
45
+ if (branch) {
46
+ cwdLineParts.push(`(${branch})`);
47
+ }
48
+ if (snapshot.sessionName) {
49
+ cwdLineParts.push(`• ${snapshot.sessionName}`);
50
+ }
51
+ const statsParts = [];
52
+ if (snapshot.stats.tokens.input > 0)
53
+ statsParts.push(`↑${formatTokens(snapshot.stats.tokens.input)}`);
54
+ if (snapshot.stats.tokens.output > 0)
55
+ statsParts.push(`↓${formatTokens(snapshot.stats.tokens.output)}`);
56
+ if (snapshot.stats.tokens.cacheRead > 0)
57
+ statsParts.push(`R${formatTokens(snapshot.stats.tokens.cacheRead)}`);
58
+ if (snapshot.stats.tokens.cacheWrite > 0)
59
+ statsParts.push(`W${formatTokens(snapshot.stats.tokens.cacheWrite)}`);
60
+ if (snapshot.stats.cost > 0)
61
+ statsParts.push(`$${snapshot.stats.cost.toFixed(3)}`);
62
+ let contextPart = snapshot.contextUsage ? `ctx:${snapshot.contextUsage.percent.toFixed(1)}%/${formatTokens(snapshot.contextUsage.contextWindow)}` : undefined;
63
+ if (contextPart && snapshot.autoCompactEnabled) {
64
+ contextPart += " (auto)";
65
+ }
66
+ if (contextPart) {
67
+ statsParts.push(contextPart);
68
+ }
69
+ const modelParts = [
5
70
  snapshot.model ? `${snapshot.model.provider}/${snapshot.model.id}` : "no-model",
6
71
  `thinking:${snapshot.thinkingLevel}`,
7
72
  snapshot.pendingMessageCount > 0 ? `pending:${snapshot.pendingMessageCount}` : undefined,
8
73
  snapshot.pendingToolCallCount > 0 ? `tools:${snapshot.pendingToolCallCount}` : undefined,
9
- snapshot.contextUsage ? `ctx:${snapshot.contextUsage.percent.toFixed(0)}%` : undefined,
10
- availableProviderCount > 0 ? `providers:${availableProviderCount}` : undefined,
11
- ];
12
- const leftText = theme.muted(parts.filter(Boolean).join(" | "));
13
- if (!branch) {
14
- return _jsx(Text, { children: leftText });
15
- }
16
- return (_jsxs(Box, { justifyContent: "space-between", children: [_jsx(Text, { children: leftText }), _jsx(Text, { children: theme.muted(`git:${branch}`) })] }));
74
+ availableProviderCount > 1 ? `providers:${availableProviderCount}` : undefined,
75
+ ].filter((value) => Boolean(value));
76
+ const statusValues = Array.from(extensionStatuses?.entries() ?? [])
77
+ .sort(([left], [right]) => left.localeCompare(right))
78
+ .map(([key, text]) => sanitizeStatusText(`${key}: ${text}`))
79
+ .filter(Boolean);
80
+ const width = Math.max(40, (process.stdout.columns ?? 80) - 2);
81
+ const statusLines = chunkLines(statusValues, width);
82
+ const mutedColor = typeof theme.colors.muted === "string" && theme.colors.muted.trim().length > 0 ? theme.colors.muted : "gray";
83
+ const cwdLine = cwdLineParts.join(" ");
84
+ const statsLine = statsParts.join(" ");
85
+ const modelLine = modelParts.join(" | ");
86
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: mutedColor, children: cwdLine }), _jsxs(Box, { justifyContent: "space-between", children: [_jsx(Text, { color: mutedColor, children: statsLine }), _jsx(Text, { color: mutedColor, children: modelLine })] }), statusLines.map((line, index) => (_jsx(Text, { color: mutedColor, children: line }, `footer-status:${index}`)))] }));
17
87
  }
18
88
  //# sourceMappingURL=Footer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Footer.js","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/Footer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAWhC,MAAM,UAAU,MAAM,CAAC,EAAE,sBAAsB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAe;IACtF,MAAM,KAAK,GAAG;QACb,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU;QAC/E,YAAY,QAAQ,CAAC,aAAa,EAAE;QACpC,QAAQ,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,SAAS;QACxF,QAAQ,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,QAAQ,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,SAAS;QACxF,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;QACtF,sBAAsB,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,sBAAsB,EAAE,CAAC,CAAC,CAAC,SAAS;KAC9E,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAElE,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,KAAC,IAAI,cAAE,QAAQ,GAAQ,CAAC;IAChC,CAAC;IAED,OAAO,CACN,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aAClC,KAAC,IAAI,cAAE,QAAQ,GAAQ,EACvB,KAAC,IAAI,cAAE,KAAK,CAAC,KAAK,CAAC,OAAO,MAAM,EAAE,CAAC,GAAQ,IACtC,CACN,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"Footer.js","sourceRoot":"","sources":["../../../../app/interfaces/react-ink/components/Footer.tsx"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ Add support for CLI-backed providers in `indusagi-screth`, including:
6
6
 
7
7
  - Claude CLI / Claude Agent runtime
8
8
  - Codex CLI / Codex app-server runtime
9
- - **indusagi-coding-agent CLI** as another provider runtime
9
+ - **@varun1213213123132/indus1-test CLI** as another provider runtime
10
10
 
11
11
  so they can be integrated similarly to how `t3code` wires provider adapters.
12
12
 
@@ -177,7 +177,7 @@ Suggested rule:
177
177
 
178
178
  ## Best for
179
179
 
180
- - integrating **indusagi-coding-agent as a provider** with persistent process state
180
+ - integrating **@varun1213213123132/indus1-test as a provider** with persistent process state
181
181
  - better streaming/event mapping than one-shot print mode
182
182
 
183
183
  `indusagi-screth` already has RPC client support:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "indusagi-coding-agent",
3
- "version": "0.1.49",
3
+ "version": "0.1.51",
4
4
  "description": "Terminal-first TypeScript coding agent built on the indusagi framework package.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -8,6 +8,7 @@
8
8
  "bin": {
9
9
  "indus": "dist/cli.js",
10
10
  "indusagi": "dist/cli.js"
11
+
11
12
  },
12
13
  "exports": {
13
14
  ".": {
@@ -17,6 +18,7 @@
17
18
  },
18
19
  "files": [
19
20
  "dist",
21
+ "tasks/patch-indusagi-react-host.mjs",
20
22
  "guides",
21
23
  "demos",
22
24
  "CHANGELOG.md",
@@ -30,10 +32,12 @@
30
32
  "configDir": ".indusagi"
31
33
  },
32
34
  "scripts": {
35
+ "postinstall": "node tasks/patch-indusagi-react-host.mjs",
33
36
  "clean": "shx rm -rf dist",
37
+ "patch:indusagi-react-host": "node tasks/patch-indusagi-react-host.mjs",
34
38
  "sync:export-vendors": "node tasks/sync-export-vendors.mjs",
35
39
  "copy:export-assets": "node tasks/copy-export-assets.mjs",
36
- "build": "npm run sync:export-vendors && tsc -p tsconfig.build.json && npm run copy:export-assets && shx chmod +x dist/cli.js",
40
+ "build": "npm run patch:indusagi-react-host && npm run sync:export-vendors && tsc -p tsconfig.build.json && npm run copy:export-assets && shx chmod +x dist/cli.js",
37
41
  "observe:smoke": "npm run build && node dist/dev/observe-smoke.js",
38
42
  "observe:smoke:serve": "npm run build && node dist/dev/observe-smoke.js --serve",
39
43
  "observe:deep": "npm run build && node dist/dev/observe-deep.js",
@@ -0,0 +1,116 @@
1
+ import { existsSync, readFileSync, writeFileSync } from "node:fs";
2
+ import { dirname, resolve } from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+
5
+ const rootDir = resolve(dirname(fileURLToPath(import.meta.url)), "..");
6
+ const originalUrlImport = 'import { pathToFileURL } from "node:url";';
7
+ const patchedUrlImport = 'import { fileURLToPath, pathToFileURL } from "node:url";';
8
+
9
+ function findLoaderPath(startDir) {
10
+ let current = resolve(startDir);
11
+
12
+ while (true) {
13
+ const candidate = resolve(current, "node_modules", "indusagi", "local-dist", "react-host", "loader.js");
14
+ if (existsSync(candidate)) {
15
+ return candidate;
16
+ }
17
+
18
+ const parent = resolve(current, "..");
19
+ if (parent === current) {
20
+ return undefined;
21
+ }
22
+
23
+ current = parent;
24
+ }
25
+ }
26
+
27
+ const loaderPath = findLoaderPath(rootDir);
28
+
29
+ const originalCandidateRoots = `function candidatePackageRoots() {
30
+ const roots = new Set();
31
+ const addCandidate = (candidate) => {
32
+ if (!candidate) {
33
+ return;
34
+ }
35
+ const root = findPackageRoot(candidate);
36
+ if (root) {
37
+ roots.add(root);
38
+ }
39
+ };
40
+ addCandidate(process.cwd());
41
+ addCandidate(process.env.INIT_CWD);
42
+ addCandidate(process.argv[1] ? path.dirname(process.argv[1]) : undefined);
43
+ return [...roots];
44
+ }`;
45
+
46
+ const patchedCandidateRootsLegacy = `function candidatePackageRoots() {
47
+ const roots = new Set();
48
+ const addCandidate = (candidate) => {
49
+ if (!candidate) {
50
+ return;
51
+ }
52
+ const root = findPackageRoot(candidate);
53
+ if (root) {
54
+ roots.add(root);
55
+ }
56
+ };
57
+ const packageRoot = fileURLToPath(new URL("../../..", import.meta.url));
58
+ addCandidate(process.env.INDUSAGI_REACT_HOST_ROOT);
59
+ addCandidate(process.argv[1] ? path.dirname(process.argv[1]) : undefined);
60
+ addCandidate(process.cwd());
61
+ addCandidate(process.env.INIT_CWD);
62
+ addCandidate(packageRoot);
63
+ return [...roots];
64
+ }`;
65
+
66
+ const patchedCandidateRoots = `function candidatePackageRoots() {
67
+ const roots = new Set();
68
+ const addCandidate = (candidate) => {
69
+ if (!candidate) {
70
+ return;
71
+ }
72
+ const root = findPackageRoot(candidate);
73
+ if (root) {
74
+ roots.add(root);
75
+ }
76
+ };
77
+ const packageRoot = fileURLToPath(new URL("../../..", import.meta.url));
78
+ addCandidate(process.env.INDUSAGI_REACT_HOST_ROOT);
79
+ addCandidate(packageRoot);
80
+ addCandidate(process.argv[1] ? path.dirname(process.argv[1]) : undefined);
81
+ addCandidate(process.cwd());
82
+ addCandidate(process.env.INIT_CWD);
83
+ return [...roots];
84
+ }`;
85
+
86
+ if (!loaderPath) {
87
+ console.warn("[patch-indusagi-react-host] Skipping patch because an indusagi react-host loader could not be found.");
88
+ process.exit(0);
89
+ }
90
+
91
+ const current = readFileSync(loaderPath, "utf8");
92
+ let next = current;
93
+
94
+ if (!next.includes(patchedUrlImport)) {
95
+ if (!next.includes(originalUrlImport)) {
96
+ throw new Error(`[patch-indusagi-react-host] Could not find the expected node:url import in ${loaderPath}.`);
97
+ }
98
+ next = next.replace(originalUrlImport, patchedUrlImport);
99
+ }
100
+
101
+ if (next.includes(patchedCandidateRootsLegacy)) {
102
+ next = next.replace(patchedCandidateRootsLegacy, patchedCandidateRoots);
103
+ } else if (!next.includes('process.env.INDUSAGI_REACT_HOST_ROOT')) {
104
+ if (!next.includes(originalCandidateRoots)) {
105
+ throw new Error(`[patch-indusagi-react-host] Could not find the expected candidatePackageRoots() implementation in ${loaderPath}.`);
106
+ }
107
+ next = next.replace(originalCandidateRoots, patchedCandidateRoots);
108
+ }
109
+
110
+ if (next === current) {
111
+ console.log("[patch-indusagi-react-host] indusagi react-host loader is already patched.");
112
+ process.exit(0);
113
+ }
114
+
115
+ writeFileSync(loaderPath, next, "utf8");
116
+ console.log("[patch-indusagi-react-host] Patched indusagi react-host loader to prefer the CLI package root.");