@aalis/plugin-llm-ollama 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -10,7 +10,8 @@ declare const _default: import("@aalis/core").PluginDefinition<{
10
10
  logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Logger, Logger>;
11
11
  lifecycle: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").LifecycleCap, import("@aalis/core").LifecycleCap>;
12
12
  provide: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Provide, import("@aalis/core").Provide>;
13
- proc: import("@aalis/core").OptionalUse<ProcessService, import("@aalis/core").ServiceRef<ProcessService>>;
13
+ events: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Events, import("@aalis/core").Events>;
14
+ proc: import("@aalis/core").OptionalUse<ProcessService, ProcessService>;
14
15
  }>;
15
16
  export default _default;
16
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAwB,KAAK,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AAE/F,OAAO,EAAsC,KAAK,MAAM,EAAwC,MAAM,aAAa,CAAC;AA6FpH;;;GAGG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsB5F;;;;;;;;AA4jCD,wBASG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,KAAK,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAKL,KAAK,MAAM,EAKZ,MAAM,aAAa,CAAC;AA6FrB;;;GAGG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsB5F;;;;;;;;;AA6jCD,wBASG"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
- import { LLMCapabilities, llm } from '@aalis/api-llm';
2
- import { createProcessGateway, processService } from '@aalis/api-process';
3
- import { config, definePlugin, lifecycle, logger, optional, provide } from '@aalis/core';
4
- import { configError, missingConfigError } from '@aalis/schema-config';
1
+ import { LLMCapabilities, llm, metered, requestedThinking } from '@aalis/api-llm';
2
+ import { processService } from '@aalis/api-process';
3
+ import { config, definePlugin, events, lifecycle, logger, optional, provide, } from '@aalis/core';
4
+ import { configError, defineConfig, missingConfigError, parseConfig } from '@aalis/schema-config';
5
5
  import { prepareLLMMessages, toLLMRole } from '@aalis/schema-message';
6
6
  import { safeFetch } from '@aalis/util-network-guard';
7
7
  import { truncateChars } from '@aalis/util-text-normalize';
@@ -117,11 +117,17 @@ export async function readBodyCapped(res, maxBytes) {
117
117
  }
118
118
  return Buffer.concat(chunks);
119
119
  }
120
- const configSchema = {
120
+ /** 报告了思考能力的模型允许的档位:开关型,翻成 think 开关 */
121
+ const THINKING_LEVELS = [
122
+ { id: 'off', label: '关' },
123
+ { id: 'on', label: '开' },
124
+ ];
125
+ const configSchema = defineConfig({
121
126
  baseUrl: {
122
127
  type: 'string',
123
128
  label: 'Ollama 地址',
124
129
  default: 'http://localhost:11434',
130
+ onInvalid: 'error',
125
131
  description: '本地 Ollama 服务的 HTTP 地址',
126
132
  },
127
133
  customModels: {
@@ -169,12 +175,14 @@ const configSchema = {
169
175
  description: '模型在显存中保留的时间,如 5m、1h、0(立即卸载)',
170
176
  },
171
177
  thinking: {
172
- type: 'boolean',
173
- label: '启用思考',
174
- default: true,
175
- description: '为支持思考的模型启用扩展思考(think 参数)。无 thinking 能力的模型该参数无效。',
178
+ type: 'select',
179
+ label: '默认思考档位',
180
+ default: 'on',
181
+ options: THINKING_LEVELS.map(level => ({ label: level.label, value: level.id })),
182
+ description: '报告了思考能力的模型(或单模型能力覆盖里写了 thinking 的)在请求没指定档位时用这一档,会话设置的「深度思考」压过它。' +
183
+ '没有思考能力的模型不发 think 参数。',
176
184
  },
177
- };
185
+ });
178
186
  /**
179
187
  * Ollama 原生 tool_calls → ToolCall。Ollama 不给调用 id,由这里现造;非流式、流式终帧与
180
188
  * 流意外结束三条路径共用,id 统一带时间戳——下游按 id 配对调用与结果(tool-search、
@@ -349,9 +357,9 @@ class OllamaClient {
349
357
  /**
350
358
  * chat / chatStream 共用的 /api/chat 请求体(两侧只差 stream 标志;分开写曾让两侧漂移)。
351
359
  * 先走 prepareLLMMessages(归一 role + 拼 kind/自定义 role 内容前缀),否则丢
352
- * [系统通知]/[跨会话委派] 等前缀。
360
+ * [系统通知]/[跨会话委派] 等前缀。level 是这次的思考档位,不能调的模型没有
353
361
  */
354
- async buildRequestBody(model, request, defaultThinking, stream) {
362
+ async buildRequestBody(model, request, level, stream) {
355
363
  const messages = await Promise.all(prepareLLMMessages(request.messages).map(m => this.toOllamaMessage(m, request.requireImages === true)));
356
364
  const tools = request.tools?.map(t => this.toOllamaTool(t));
357
365
  const body = {
@@ -368,21 +376,18 @@ class OllamaClient {
368
376
  if (tools && tools.length > 0) {
369
377
  body.tools = tools;
370
378
  }
371
- // 启用原生思考模式(Ollama API think 参数)
372
- // 调用方可通过 request.think === false 显式关闭
373
- // 必须显式传 think:false 才能关闭 gemma4:31b 等原生 thinking 模型的思考;
374
- // 仅省略字段会被模型默认启用思考,导致 content 为空。
375
- const shouldThink = request.think !== undefined ? request.think : defaultThinking;
376
- body.think = shouldThink;
377
- return { body, messages, tools, shouldThink };
379
+ // 能思考的模型总是明说 think:gemma4:31b 等原生思考模型省略字段会默认思考,content 可能为空。没有思考能力的模型不发
380
+ if (level !== undefined)
381
+ body.think = level === 'on';
382
+ return { body, messages, tools };
378
383
  }
379
- async chat(model, request, defaultThinking) {
384
+ async chat(model, request, level) {
380
385
  // 包含音频输入 → 改走 OpenAI 兼容的 /v1/chat/completions(/api/chat 不支持 audios)
381
386
  if (request.messages.some(m => m.audios && m.audios.length > 0)) {
382
- return this.chatOpenAIWithAudio(model, request);
387
+ return this.chatOpenAIWithAudio(model, request, level);
383
388
  }
384
- const { body, messages, tools, shouldThink } = await this.buildRequestBody(model, request, defaultThinking, false);
385
- this.logger.debug(`请求 Ollama${shouldThink ? ' [think]' : ''}: ${body.model}, ${messages.length} 条消息, ${tools?.length ?? 0} 个工具`);
389
+ const { body, messages, tools } = await this.buildRequestBody(model, request, level, false);
390
+ this.logger.debug(`请求 Ollama${level ? ` (思考 ${level})` : ''}: ${body.model}, ${messages.length} 条消息, ${tools?.length ?? 0} 个工具`);
386
391
  const signals = [AbortSignal.timeout(this.timeout)];
387
392
  if (request.signal)
388
393
  signals.push(request.signal);
@@ -427,10 +432,10 @@ class OllamaClient {
427
432
  }
428
433
  return result;
429
434
  }
430
- async *chatStream(model, request, defaultThinking) {
435
+ async *chatStream(model, request, level) {
431
436
  // 包含音频输入 → 回退为非流式(OpenAI compat 路径不支持 SSE 交互)后以单 chunk 交付。
432
437
  if (request.messages.some(m => m.audios && m.audios.length > 0)) {
433
- const r = await this.chatOpenAIWithAudio(model, request);
438
+ const r = await this.chatOpenAIWithAudio(model, request, level);
434
439
  yield {
435
440
  contentDelta: r.content ?? '',
436
441
  reasoningDelta: r.reasoningContent ?? '',
@@ -439,8 +444,8 @@ class OllamaClient {
439
444
  };
440
445
  return;
441
446
  }
442
- const { body, messages, shouldThink } = await this.buildRequestBody(model, request, defaultThinking, true);
443
- this.logger.debug(`流式请求 Ollama${shouldThink ? ' [think]' : ''}: ${body.model}, ${messages.length} 条消息`);
447
+ const { body, messages } = await this.buildRequestBody(model, request, level, true);
448
+ this.logger.debug(`流式请求 Ollama${level ? ` (思考 ${level})` : ''}: ${body.model}, ${messages.length} 条消息`);
444
449
  const signals = [AbortSignal.timeout(this.timeout)];
445
450
  if (request.signal)
446
451
  signals.push(request.signal);
@@ -755,7 +760,7 @@ class OllamaClient {
755
760
  * audios 字段时,/api/chat 原生路径不支持,必须走这里。
756
761
  * 文本与工具调用等其它能力仍由 chat() 走原生路径。
757
762
  */
758
- async chatOpenAIWithAudio(model, request) {
763
+ async chatOpenAIWithAudio(model, request, level) {
759
764
  // 将 Aalis Message 转为 OpenAI multimodal content blocks
760
765
  const oaiMessages = await Promise.all(prepareLLMMessages(request.messages).map(async (m) => {
761
766
  const role = toLLMRole(m.role);
@@ -787,12 +792,10 @@ class OllamaClient {
787
792
  max_tokens: request.maxTokens ?? this.maxTokens,
788
793
  temperature: request.temperature ?? this.temperature,
789
794
  };
790
- // Ollama 0.20+ thinking 控制:OpenAI 兼容路径只认 reasoning_effort,
791
- // 不认 /api/chat 的 think 字段。think=false → reasoning_effort: "none"
792
- // 节省 ~5-8x completion tokens(实测 935 → 155)。
793
- if (request.think === false) {
795
+ // Ollama 0.20+ 的兼容路径只认 reasoning_effort、不认 /api/chat 的 think:关 → reasoning_effort: "none",
796
+ // 节省 ~5-8x completion tokens(实测 935 → 155);开按模型默认,不发
797
+ if (level === 'off')
794
798
  body.reasoning_effort = 'none';
795
- }
796
799
  this.logger.debug(`请求 Ollama (OpenAI compat, audio): ${model}, ${oaiMessages.length} 条消息`);
797
800
  // 统计本次发送的音频载荷大小,便于诊断模型是否真的收到了音频
798
801
  let totalAudioBytes = 0;
@@ -902,6 +905,8 @@ function safeParseJSON(str) {
902
905
  }
903
906
  // ===== 模型能力映射 =====
904
907
  const { Chat, ToolCalling, Streaming, Vision, Audio, Thinking } = LLMCapabilities;
908
+ // 能力探测(/api/show)失败时的回退。前缀匹配按表序取第一个命中,更具体的前缀排在更短的之前(qwen3-coder 在 qwen3 之前)。
909
+ // 原生思考的族标 Thinking:探测失败时照样声明档位、明说 think,省略字段它们会默认思考
905
910
  const MODEL_CAPABILITIES = {
906
911
  'llama3.1': [Chat, ToolCalling, Streaming],
907
912
  'llama3.2': [Chat, ToolCalling, Streaming],
@@ -910,12 +915,13 @@ const MODEL_CAPABILITIES = {
910
915
  'llava-llama3': [Chat, Streaming, Vision],
911
916
  gemma2: [Chat, Streaming],
912
917
  gemma3: [Chat, ToolCalling, Streaming, Vision],
913
- gemma4: [Chat, ToolCalling, Streaming, Vision],
918
+ gemma4: [Chat, ToolCalling, Streaming, Vision, Thinking],
914
919
  'qwen2.5': [Chat, ToolCalling, Streaming],
915
920
  'qwen2.5-coder': [Chat, ToolCalling, Streaming],
916
- qwen3: [Chat, ToolCalling, Streaming],
921
+ 'qwen3-coder': [Chat, ToolCalling, Streaming],
922
+ qwen3: [Chat, ToolCalling, Streaming, Thinking],
917
923
  mistral: [Chat, ToolCalling, Streaming],
918
- 'deepseek-r1': [Chat, Streaming],
924
+ 'deepseek-r1': [Chat, Streaming, Thinking],
919
925
  phi4: [Chat, Streaming],
920
926
  'command-r': [Chat, ToolCalling, Streaming],
921
927
  };
@@ -1005,8 +1011,6 @@ function resolveCapabilities(model, userOverride, providerCaps, detected) {
1005
1011
  }
1006
1012
  /** 解析适配器级别默认能力(逗号/空格/换行分隔) */
1007
1013
  function parseProviderCapabilities(raw) {
1008
- if (!raw || typeof raw !== 'string')
1009
- return [];
1010
1014
  return raw
1011
1015
  .split(/[,\s\n]/)
1012
1016
  .map(s => s.trim())
@@ -1015,8 +1019,6 @@ function parseProviderCapabilities(raw) {
1015
1019
  // ===== 插件入口 =====
1016
1020
  /** 解析自定义模型列表:支持逗号分隔和换行分隔 */
1017
1021
  function parseCustomModels(raw) {
1018
- if (!raw || typeof raw !== 'string')
1019
- return [];
1020
1022
  return raw
1021
1023
  .split(/[,\n]/)
1022
1024
  .map(s => s.trim())
@@ -1031,8 +1033,6 @@ function parseCustomModels(raw) {
1031
1033
  */
1032
1034
  function parseModelCapabilities(raw) {
1033
1035
  const out = new Map();
1034
- if (!raw || typeof raw !== 'string')
1035
- return out;
1036
1036
  for (const line of raw.split(/\r?\n/)) {
1037
1037
  const trimmed = line.trim();
1038
1038
  if (!trimmed || trimmed.startsWith('#'))
@@ -1058,12 +1058,14 @@ class OllamaModelHandle {
1058
1058
  providerId;
1059
1059
  contextLength;
1060
1060
  maxOutputTokens;
1061
- defaultThinking;
1062
1061
  capabilities;
1062
+ thinking;
1063
1063
  refresh;
1064
- constructor(client, id, providerId, contextLength, maxOutputTokens, defaultThinking,
1064
+ constructor(client, id, providerId, contextLength, maxOutputTokens,
1065
1065
  /** 该 model 的能力元数据(供 media 发现/下拉展示读取,非 DI 选择机制)。 */
1066
1066
  capabilities,
1067
+ /** 能思考的模型才有:默认档取实例配置 */
1068
+ thinking,
1067
1069
  /** Provider 级共享的 refresh 闭包;webui 按 providerId 找到该 provider 的任一 entry 调一次即可。关闭模型发现时没有 */
1068
1070
  refresh) {
1069
1071
  this.client = client;
@@ -1071,18 +1073,22 @@ class OllamaModelHandle {
1071
1073
  this.providerId = providerId;
1072
1074
  this.contextLength = contextLength;
1073
1075
  this.maxOutputTokens = maxOutputTokens;
1074
- this.defaultThinking = defaultThinking;
1075
1076
  this.capabilities = capabilities;
1077
+ this.thinking = thinking;
1076
1078
  this.refresh = refresh;
1077
1079
  }
1078
- chat(request) {
1079
- return this.client.chat(this.id, request, this.defaultThinking);
1080
+ async chat(request) {
1081
+ return this.client.chat(this.id, request, this.levelOf(request));
1082
+ }
1083
+ async *chatStream(request) {
1084
+ yield* this.client.chatStream(this.id, request, this.levelOf(request));
1080
1085
  }
1081
- chatStream(request) {
1082
- return this.client.chatStream(this.id, request, this.defaultThinking);
1086
+ /** 这次的档位:请求带了按请求,没带按默认档;不能调的模型没有 */
1087
+ levelOf(request) {
1088
+ return requestedThinking(this, request) ?? this.thinking?.default;
1083
1089
  }
1084
1090
  }
1085
- const uses = { config, logger, lifecycle, provide, proc: optional(processService) };
1091
+ const uses = { config, logger, lifecycle, provide, events, proc: optional(processService) };
1086
1092
  export default definePlugin({
1087
1093
  name: '@aalis/plugin-llm-ollama',
1088
1094
  displayName: 'Ollama',
@@ -1093,44 +1099,35 @@ export default definePlugin({
1093
1099
  uses,
1094
1100
  apply: start,
1095
1101
  });
1096
- async function start({ config, logger, lifecycle, provide, proc }) {
1097
- const ollamaConfig = {
1098
- baseUrl: config.baseUrl ?? 'http://localhost:11434',
1099
- customModels: parseCustomModels(config.customModels),
1100
- discoverModels: config.discoverModels !== false,
1101
- modelCapabilities: parseModelCapabilities(config.modelCapabilities),
1102
- providerCapabilities: parseProviderCapabilities(config.providerCapabilities),
1103
- timeout: config.timeout ?? 120,
1104
- temperature: config.temperature ?? 0.7,
1105
- maxTokens: config.maxTokens ?? 4096,
1106
- contextLength: config.contextLength ?? 8192,
1107
- keepAlive: config.keepAlive ?? '5m',
1108
- thinking: config.thinking !== false,
1109
- };
1110
- checkBaseUrl(ollamaConfig.baseUrl);
1111
- if (!ollamaConfig.discoverModels && ollamaConfig.customModels.length === 0) {
1102
+ async function start({ config, logger, lifecycle, provide, events, proc }) {
1103
+ const cfg = parseConfig(configSchema, config.use, logger.use);
1104
+ const customModels = parseCustomModels(cfg.customModels);
1105
+ const modelCapabilities = parseModelCapabilities(cfg.modelCapabilities);
1106
+ const providerCapabilities = parseProviderCapabilities(cfg.providerCapabilities);
1107
+ checkBaseUrl(cfg.baseUrl);
1108
+ if (!cfg.discoverModels && customModels.length === 0) {
1112
1109
  throw missingConfigError('customModels', '关闭 discoverModels 时必填');
1113
1110
  }
1114
- const client = new OllamaClient(ollamaConfig, logger, createProcessGateway(proc));
1115
- const baseLabel = `Ollama (${ollamaConfig.baseUrl.replace(/^https?:\/\//, '')})`;
1116
- const shownBaseUrl = redactUrl(ollamaConfig.baseUrl);
1111
+ const client = new OllamaClient(cfg, logger.use, proc.use);
1112
+ const baseLabel = `Ollama (${cfg.baseUrl.replace(/^https?:\/\//, '')})`;
1113
+ const shownBaseUrl = redactUrl(cfg.baseUrl);
1117
1114
  // 已注册 model entry 的句柄表:modelId → 该 entry 的退订
1118
1115
  const registered = new Map();
1119
1116
  // 同 provider 下所有 OllamaModelHandle 共享同一份 refresh。关闭模型发现时不提供:没有可重新发现的列表
1120
- const refresh = ollamaConfig.discoverModels ? refreshModels : undefined;
1117
+ const refresh = cfg.discoverModels ? refreshModels : undefined;
1121
1118
  /** 登记一个 model entry;已登记(如并发的另一次刷新先登记了)或被跳过时返回 false */
1122
1119
  function registerOne(modelId, detected) {
1123
1120
  if (registered.has(modelId))
1124
1121
  return false;
1125
- const capabilities = resolveCapabilities(modelId, ollamaConfig.modelCapabilities.get(modelId), ollamaConfig.providerCapabilities, detected);
1122
+ const capabilities = resolveCapabilities(modelId, modelCapabilities.get(modelId), providerCapabilities, detected);
1126
1123
  if (capabilities.length === 0) {
1127
- logger.debug(`跳过 model entry "${modelId}": /api/show 未报告对话能力(embedding 等非对话模型)`);
1124
+ logger.use.debug(`跳过 model entry "${modelId}": /api/show 未报告对话能力(embedding 等非对话模型)`);
1128
1125
  return false;
1129
1126
  }
1130
- const handle = new OllamaModelHandle(client, modelId, lifecycle.id, ollamaConfig.contextLength, ollamaConfig.maxTokens, ollamaConfig.thinking, capabilities, refresh);
1131
- const dispose = provide(llm, handle, {
1127
+ const handle = new OllamaModelHandle(client, modelId, lifecycle.use.id, cfg.contextLength, cfg.maxTokens, capabilities, capabilities.includes(Thinking) ? { levels: THINKING_LEVELS, default: cfg.thinking } : undefined, refresh);
1128
+ const dispose = provide.use(llm, metered(handle, events.use), {
1132
1129
  label: `${baseLabel} / ${modelId}`,
1133
- entryId: `${lifecycle.id}/${modelId}`,
1130
+ entryId: `${lifecycle.use.id}/${modelId}`,
1134
1131
  });
1135
1132
  registered.set(modelId, dispose);
1136
1133
  return true;
@@ -1143,51 +1140,51 @@ async function start({ config, logger, lifecycle, provide, proc }) {
1143
1140
  d();
1144
1141
  }
1145
1142
  catch (err) {
1146
- logger.warn(`卸载 model entry "${modelId}" 失败: ${err}`);
1143
+ logger.use.warn(`卸载 model entry "${modelId}" 失败: ${err}`);
1147
1144
  }
1148
1145
  registered.delete(modelId);
1149
1146
  }
1150
1147
  /** 自动发现的模型并上 customModels(与自动发现重复的告警) */
1151
1148
  function withCustomModels(remoteIds) {
1152
1149
  const remoteSet = new Set(remoteIds);
1153
- for (const cm of ollamaConfig.customModels) {
1150
+ for (const cm of customModels) {
1154
1151
  if (remoteSet.has(cm)) {
1155
- logger.warn(`自定义模型 "${cm}" 与自动发现的模型重复,请在配置中去重`);
1152
+ logger.use.warn(`自定义模型 "${cm}" 与自动发现的模型重复,请在配置中去重`);
1156
1153
  }
1157
1154
  }
1158
- return [...remoteIds, ...ollamaConfig.customModels.filter(id => !remoteSet.has(id))];
1155
+ return [...remoteIds, ...customModels.filter(id => !remoteSet.has(id))];
1159
1156
  }
1160
1157
  // 初次注册。停用或停机时中止探测:模型发现中止即抛出,能力探测把中止吞成空结果,所以每次 await 之后自己查。
1161
1158
  // 模型发现失败按未发现远端模型继续,customModels 照常注册;关闭模型发现时只注册 customModels。
1162
1159
  // 发现失败只留消息:消息里已带 URL 与原因(cause 也内联在内),err 交给 logger 会按因果链把原因再记一遍
1163
1160
  let discoveryError;
1164
- const remoteIds = ollamaConfig.discoverModels
1165
- ? await client.fetchRemoteModelIds(lifecycle.signal).catch((err) => {
1161
+ const remoteIds = cfg.discoverModels
1162
+ ? await client.fetchRemoteModelIds(lifecycle.use.signal).catch((err) => {
1166
1163
  discoveryError = err instanceof Error ? err.message : String(err);
1167
1164
  return [];
1168
1165
  })
1169
1166
  : [];
1170
- lifecycle.signal.throwIfAborted();
1167
+ lifecycle.use.signal.throwIfAborted();
1171
1168
  const initialIds = withCustomModels(remoteIds);
1172
1169
  // 一个模型都没有时抛配置错误,原因成为实例的错误信息;否则只剩 core 的「声明 provides [llm] 但未实际注册」。
1173
1170
  // 提示写在原因之前:原因里可能带着一段响应体
1174
1171
  if (initialIds.length === 0) {
1175
1172
  throw configError(discoveryError
1176
- ? `未配置 customModels,没有可注册的模型;${discoveryError}`
1173
+ ? `取不到 Ollama 的模型列表,没有可注册的模型:确认 Ollama 在运行、baseUrl 写对后重载本插件,或在 customModels 里写明要用的模型。原因:${discoveryError}`
1177
1174
  : `Ollama 已连接 ${shownBaseUrl},但未发现任何可用模型;先用 ollama pull 下载模型,或在 customModels 里写明要用的模型`);
1178
1175
  }
1179
1176
  if (discoveryError)
1180
- logger.warn(`启动时只注册 customModels 里的模型;${discoveryError}`);
1177
+ logger.use.warn(`启动时只注册 customModels 里的模型;${discoveryError}`);
1181
1178
  // 并行查每个模型的真实能力(顺序保留→注册顺序稳定→优先级稳定);失败者回退家族表。
1182
- const detectedCaps = await Promise.all(initialIds.map(id => client.fetchModelCapabilities(id, lifecycle.signal)));
1183
- lifecycle.signal.throwIfAborted();
1179
+ const detectedCaps = await Promise.all(initialIds.map(id => client.fetchModelCapabilities(id, lifecycle.use.signal)));
1180
+ lifecycle.use.signal.throwIfAborted();
1184
1181
  for (let i = 0; i < initialIds.length; i++)
1185
1182
  registerOne(initialIds[i], detectedCaps[i]);
1186
1183
  // 模型都被当作非对话模型跳过(如只装了嵌入模型)时同样抛配置错误。只有 /api/show 答复过才会跳过,所以是已连接
1187
1184
  if (registered.size === 0) {
1188
1185
  throw configError(`Ollama 已连接 ${shownBaseUrl},但没有可用的对话模型:${initialIds.join(', ')} 都没有报告对话能力(如嵌入模型);先用 ollama pull 下载对话模型`);
1189
1186
  }
1190
- logger.info(!ollamaConfig.discoverModels
1187
+ logger.use.info(!cfg.discoverModels
1191
1188
  ? `Ollama 未开启模型发现: ${shownBaseUrl},注册 customModels 里的 ${registered.size} 个 model entry`
1192
1189
  : discoveryError
1193
1190
  ? `Ollama 模型发现失败: ${shownBaseUrl},注册 customModels 里的 ${registered.size} 个 model entry`
@@ -1198,15 +1195,15 @@ async function start({ config, logger, lifecycle, provide, proc }) {
1198
1195
  * 条目全部注销
1199
1196
  */
1200
1197
  async function refreshModels() {
1201
- const next = withCustomModels(await client.fetchRemoteModelIds(lifecycle.signal));
1202
- lifecycle.signal.throwIfAborted();
1198
+ const next = withCustomModels(await client.fetchRemoteModelIds(lifecycle.use.signal));
1199
+ lifecycle.use.signal.throwIfAborted();
1203
1200
  const nextSet = new Set(next);
1204
1201
  const added = [];
1205
1202
  const removed = [];
1206
1203
  // 新模型的能力并行探测(与初次注册一致),再按发现顺序登记
1207
1204
  const fresh = next.filter(id => !registered.has(id));
1208
- const detectedCaps = await Promise.all(fresh.map(id => client.fetchModelCapabilities(id, lifecycle.signal)));
1209
- lifecycle.signal.throwIfAborted();
1205
+ const detectedCaps = await Promise.all(fresh.map(id => client.fetchModelCapabilities(id, lifecycle.use.signal)));
1206
+ lifecycle.use.signal.throwIfAborted();
1210
1207
  for (let i = 0; i < fresh.length; i++) {
1211
1208
  // 非对话模型被跳过、等能力探测期间并发的刷新已登记,都不算本次新增
1212
1209
  if (registerOne(fresh[i], detectedCaps[i]))
@@ -1219,10 +1216,10 @@ async function start({ config, logger, lifecycle, provide, proc }) {
1219
1216
  }
1220
1217
  }
1221
1218
  if (added.length || removed.length) {
1222
- logger.info(`Ollama 模型列表已刷新: +${added.length} (${added.join(',') || '-'}) / -${removed.length} (${removed.join(',') || '-'}) / 现共 ${registered.size}`);
1219
+ logger.use.info(`Ollama 模型列表已刷新: +${added.length} (${added.join(',') || '-'}) / -${removed.length} (${removed.join(',') || '-'}) / 现共 ${registered.size}`);
1223
1220
  }
1224
1221
  else {
1225
- logger.debug(`Ollama 模型列表已刷新: 无变化 (共 ${registered.size})`);
1222
+ logger.use.debug(`Ollama 模型列表已刷新: 无变化 (共 ${registered.size})`);
1226
1223
  }
1227
1224
  return { added, removed, total: registered.size };
1228
1225
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAuB,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzE,OAAO,EAEL,MAAM,EACN,YAAY,EACZ,MAAM,EAEN,SAAS,EACT,MAAM,EACN,QAAQ,EACR,OAAO,GACR,MAAM,aAAa,CAAC;AACrB,OAAO,EAAiB,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEjH,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,oBAAoB;AAEpB,wDAAwD;AACxD,MAAM,uBAAuB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjD,+DAA+D;AAC/D,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAEjC,8DAA8D;AAC9D,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,oBAAoB,EAAE,GAAG,CAAC,CAAC;AACpF,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,OAAe;IACnC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,WAAW,CAAC,oDAAoD,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,WAAW,CAAC,kDAAkD,CAAC,CAAC;IACxE,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,SAAS,CAAC,GAAW;IAC5B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,GAAG,CAAC;IAC/B,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CAAC,GAAY;IACjC,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,MAAM,OAAO,GAAc,KAAK,YAAY,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClH,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzF,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC9F,CAAC;AAED,iBAAiB;AACjB,SAAS,UAAU,CAAC,MAAc;IAChC,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACzD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,SAAS,CAAC;IACrC,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,WAAW,CAAC;IACvC,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,QAAQ,CAAC;IACnC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,IAAY;IACnC,IAAI,IAA0E,CAAC;IAC/E,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,CAAC;IAC1B,MAAM,OAAO,GACX,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC;IACzG,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACjE,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,QAAgB,EAAE,MAAc,EAAE,IAAY;IACtE,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,GAAG,QAAQ,YAAY,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,OAAO,CAAC,CAAC,CAAC,QAAQ,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;AAC5G,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAa,EAAE,QAAgB;IAClE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,QAAQ;QAAE,OAAO,IAAI,CAAC;IACxD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACjD,OAAO,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAChD,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IACpC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,SAAS,CAAC;QACR,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,IAAI,IAAI;YAAE,MAAM;QAChB,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC;QAC7B,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;YACxB,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED,sCAAsC;AACtC,MAAM,eAAe,GAAoB;IACvC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE;IACzB,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;CACzB,CAAC;AAEF,MAAM,YAAY,GAAG,YAAY,CAAC;IAChC,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,wBAAwB;QACjC,SAAS,EAAE,OAAO;QAClB,WAAW,EAAE,uBAAuB;KACrC;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,OAAO;QACd,OAAO,EAAE,EAAE;QACX,WAAW,EACT,uDAAuD;KAC1D;IACD,cAAc,EAAE;QACd,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,IAAI;QACb,WAAW,EACT,kGAAkG;KACrG;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,SAAS;QAChB,OAAO,EAAE,EAAE;QACX,WAAW,EACT,8IAA8I;KACjJ;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,eAAe;QACtB,OAAO,EAAE,EAAE;QACX,WAAW,EACT,oHAAoH;KACvH;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,GAAG;QACZ,WAAW,EAAE,uCAAuC;KACrD;IACD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE;IACpF,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,UAAU;QACjB,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,+BAA+B;KAC7C;IACD,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,oBAAoB,EAAE;IACnG,SAAS,EAAE;QACT,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,6BAA6B;KAC3C;IACD,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QAChF,WAAW,EACT,iEAAiE;YACjE,uBAAuB;KAC1B;CACF,CAAC,CAAC;AA8CH;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,KAAmC;IAC5D,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACnD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3B,EAAE,EAAE,eAAe,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE;QACpC,IAAI,EAAE,UAAmB;QACzB,QAAQ,EAAE;YACR,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;YACtB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;SACjD;KACF,CAAC,CAAC,CAAC;AACN,CAAC;AAED,6BAA6B;AAE7B;;;;;GAKG;AACH,SAAS,cAAc,CAAC,IAAY,EAAE,GAAW;IAC/C,0BAA0B;IAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,KAAK,IAAI,GAAG,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;QACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAAE,OAAO,GAAG,CAAC;IACnD,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;GAGG;AACH,SAAS,gBAAgB,CAAC,IAAY;IACpC,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;YACnB,OAAO,IAAI,SAAS,CAAC;YACrB,MAAM;QACR,CAAC;QACD,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACvC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;YACpB,iCAAiC;YACjC,SAAS,IAAI,SAAS,CAAC;YACvB,MAAM;QACR,CAAC;QACD,SAAS,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC;AAED,0DAA0D;AAE1D,MAAM,YAAY;IACP,OAAO,CAAS;IACjB,OAAO,CAAS;IACf,WAAW,CAAS;IACpB,SAAS,CAAS;IAClB,aAAa,CAAS;IACtB,SAAS,CAAS;IACnB,MAAM,CAAS;IACf,IAAI,CAAwB;IAEpC,YAAY,MAAoB,EAAE,MAAc,EAAE,IAA2B;QAC3E,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjD,mDAAmD;QACnD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC;QAC5F,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAC1C,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,0DAA0D;IAClD,QAAQ,CAAC,MAAc,EAAE,IAAY;QAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,MAAM,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpE,OAAO,IAAI,KAAK,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,GAAY,EAAE,OAAyB,EAAE,SAAiB;QAC7E,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;YAAE,OAAO,GAAG,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,QAAQ,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxF,IAAI,GAAG,YAAY,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YAC/D,OAAO,IAAI,KAAK,CAAC,eAAe,IAAI,CAAC,OAAO,GAAG,IAAI,yBAAyB,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,GAAG,YAAY,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;YAC/D,OAAO,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,kDAAkD;IAC1C,aAAa,CAAC,MAAc,EAAE,IAAY;QAChD,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,qBAAqB,MAAM,SAAS,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,mBAAmB,CAAC,MAAoB;QAC5C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,WAAW,CAAC;QACvC,IAAI,CAAC;YACH,qDAAqD;YACrD,aAAa;YACb,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC3B,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;aAC9D,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9C,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,MAAM,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjF,CAAC;YACD,oDAAoD;YACpD,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,IAAI,IAAiC,CAAC;YACtC,IAAI,CAAC;gBACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,KAAK,CAAC,cAAc,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrD,CAAC;YACD,MAAM,IAAI,GAAG,IAAI,EAAE,MAAM,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;gBAC1E,MAAM,IAAI,KAAK,CACb,uCAAuC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAC3E,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,sBAAsB,CAAC,OAAe,EAAE,MAAoB;QAChE,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC3C,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE;gBAClD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;gBACxC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO;aAC9D,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YACzB,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAgC,CAAC;YAC/D,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB,CAC5B,KAAa,EACb,OAAyB,EACzB,KAAyB,EACzB,MAAe;QAEf,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CACvG,CAAC;QACF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5D,MAAM,IAAI,GAA4B;YACpC,KAAK;YACL,QAAQ;YACR,MAAM;YACN,OAAO,EAAE;gBACP,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW;gBACpD,WAAW,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;gBAChD,OAAO,EAAE,IAAI,CAAC,aAAa;aAC5B;YACD,UAAU,EAAE,IAAI,CAAC,SAAS;SAC3B,CAAC;QAEF,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;QAED,wEAAwE;QACxE,IAAI,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,KAAK,IAAI,CAAC;QACrD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAa,EAAE,OAAyB,EAAE,KAAyB;QAC5E,oEAAoE;QACpE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE5F,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM,SAAS,KAAK,EAAE,MAAM,IAAI,CAAC,MAAM,CAC9G,CAAC;QAEF,MAAM,OAAO,GAAkB,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,QAAkB,CAAC;QACvB,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE;gBACjD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;aACjC,CAAC,CAAC;YACH,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE7D,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAuB,CAAC;QAE7E,wDAAwD;QACxD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;QAC9C,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;QACxF,MAAM,YAAY,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE7E,MAAM,MAAM,GAAiB;YAC3B,OAAO,EAAE,YAAY,IAAI,IAAI;YAC7B,gBAAgB,EAAE,YAAY,IAAI,IAAI;SACvC,CAAC;QAEF,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,SAAS;YAAE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAE5C,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;YAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;YACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,GAAG;gBACb,YAAY;gBACZ,gBAAgB;gBAChB,WAAW,EAAE,YAAY,GAAG,gBAAgB;aAC7C,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,CAAC,UAAU,CACf,KAAa,EACb,OAAyB,EACzB,KAAyB;QAEzB,2DAA2D;QAC3D,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YAChE,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAChE,MAAM;gBACJ,YAAY,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE;gBAC7B,cAAc,EAAE,CAAC,CAAC,gBAAgB,IAAI,EAAE;gBACxC,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,IAAI,EAAE,IAAI;aACX,CAAC;YACF,OAAO;QACT,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAEpF,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,KAAK,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,MAAM,MAAM,CAAC,CAAC;QAExG,MAAM,OAAO,GAAkB,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC;QAChF,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE;gBACjD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;aACjC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,CAAC,gBAAgB,CAAC,CAAC;YAC/B,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;QACD,YAAY,CAAC,gBAAgB,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,QAAQ,CAAC,MAAM,QAAQ,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,IAAI,CAAC,CAAC;QAE5F,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;gBAC7D,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAClD,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,MAAM,eAAe,GAAqB,EAAE,CAAC;QAE7C,mBAAmB;QACnB,IAAI,OAAO,GAAG,KAAK,CAAC,CAAC,mBAAmB;QACxC,IAAI,SAAS,GAAG,EAAE,CAAC,CAAC,sCAAsC;QAC1D,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YACnD,CAAC;QACH,CAAC,EAAE,MAAM,CAAC,CAAC;QAEX,IAAI,CAAC;YACH,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC5C,IAAI,IAAI;oBAAE,MAAM;gBAChB,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,gBAAgB,GAAG,IAAI,CAAC;oBACxB,YAAY,CAAC,gBAAgB,CAAC,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,aAAa,CAAC,CAAC;gBAC9E,CAAC;gBAED,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;gBAEtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC5B,IAAI,CAAC,OAAO;wBAAE,SAAS;oBAEvB,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAuB,CAAC;wBAEvD,SAAS;wBACT,IAAI,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;4BAC7B,eAAe,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;4BACjD,qDAAqD;4BACrD,8CAA8C;4BAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gCACxD,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gCACtC,MAAM;oCACJ,gBAAgB,EAAE;wCAChB,KAAK,EAAE,eAAe,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;wCAClE,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;wCACtB,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM;qCAC/D;iCACF,CAAC;4BACJ,CAAC;wBACH,CAAC;wBAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;4BACd,kBAAkB;4BAClB,IAAI,SAAS,EAAE,CAAC;gCACd,IAAI,OAAO;oCAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;;oCAC5C,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;gCACvC,SAAS,GAAG,EAAE,CAAC;4BACjB,CAAC;4BAED,aAAa;4BACb,MAAM,KAAK,GAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;4BAC9C,MAAM,SAAS,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;4BACrD,IAAI,SAAS;gCAAE,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;4BAE3C,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;gCAC9D,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;gCACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;gCAC9C,KAAK,CAAC,KAAK,GAAG;oCACZ,YAAY;oCACZ,gBAAgB;oCAChB,WAAW,EAAE,YAAY,GAAG,gBAAgB;iCAC7C,CAAC;4BACJ,CAAC;4BAED,MAAM,KAAK,CAAC;4BACZ,OAAO;wBACT,CAAC;wBAED,wDAAwD;wBACxD,IAAI,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC;4BAC3B,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;wBAClD,CAAC;wBAED,IAAI,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;4BAC1B,mDAAmD;4BACnD,IAAI,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;4BAC5C,SAAS,GAAG,EAAE,CAAC;4BAEf,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCACvB,IAAI,OAAO,EAAE,CAAC;oCACZ,yBAAyB;oCACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oCAC1C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;wCACpB,SAAS;wCACT,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;wCAC1C,IAAI,SAAS;4CAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;wCACnD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,0BAA0B;wCAC3D,OAAO,GAAG,KAAK,CAAC;oCAClB,CAAC;yCAAM,CAAC;wCACN,qCAAqC;wCACrC,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wCACtD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;4CACrB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;4CACvD,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC;4CACnD,IAAI,IAAI;gDAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;wCAC3C,CAAC;6CAAM,CAAC;4CACN,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;wCACjC,CAAC;wCACD,IAAI,GAAG,EAAE,CAAC;oCACZ,CAAC;gCACH,CAAC;qCAAM,CAAC;oCACN,wBAAwB;oCACxB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oCACxC,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;wCACnB,SAAS;wCACT,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;wCACtC,IAAI,MAAM;4CAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;wCAC3C,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,yBAAyB;wCACzD,OAAO,GAAG,IAAI,CAAC;oCACjB,CAAC;yCAAM,CAAC;wCACN,oCAAoC;wCACpC,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;wCACpD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;4CACpB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;4CACtD,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;4CAClD,IAAI,IAAI;gDAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;wCACzC,CAAC;6CAAM,CAAC;4CACN,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;wCAC/B,CAAC;wCACD,IAAI,GAAG,EAAE,CAAC;oCACZ,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,yBAAyB;oBAC3B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,aAAa;YACb,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,gBAAgB,CAAC,CAAC;YAC/B,4DAA4D;YAC5D,+CAA+C;YAC/C,yCAAyC;YACzC,8DAA8D;YAC9D,8DAA8D;YAC9D,2CAA2C;YAC3C,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,gBAAgB;QAChB,MAAM,UAAU,GAAoB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACnD,MAAM,SAAS,GAAG,iBAAiB,CAAC,eAAe,CAAC,CAAC;QACrD,IAAI,SAAS;YAAE,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;QAChD,MAAM,UAAU,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,YAAY,CAAC,GAAW;QACpC,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAE3B,yEAAyE;QACzE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC5D,IAAI,SAAS;YAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7C,qDAAqD;QACrD,mDAAmD;QACnD,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC7E,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;oBACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,MAAM,MAAM,OAAO,EAAE,CAAC,CAAC;oBACvD,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,GAAG,EAAE,uBAAuB,CAAC,CAAC;gBAC/D,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,uBAAuB,WAAW,OAAO,EAAE,CAAC,CAAC;oBAC7E,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC5C,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,qEAAqE;QACrE,iDAAiD;QACjD,gDAAgD;QAChD,sBAAsB;QACtB,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACxD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,aAAa,CAAC,MAAgB,EAAE,aAAsB;QAClE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9E,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAC9D,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QACjD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,aAAa,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,cAAc,MAAM,CAAC,MAAM,gBAAgB,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,WAAW,CAAC,CAAC;QACrF,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,eAAe,CAAC,GAAY,EAAE,aAAa,GAAG,KAAK;QAC/D,qEAAqE;QACrE,4BAA4B;QAC5B,MAAM,SAAS,GAAkB;YAC/B,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YACzB,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;SAC3B,CAAC;QAEF,kBAAkB;QAClB,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACrD,SAAS,CAAC,QAAQ,GAAG,GAAG,CAAC,gBAAgB,CAAC;QAC5C,CAAC;QAED,wCAAwC;QACxC,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC/D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;YAClE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;QACjD,CAAC;QAED,yBAAyB;QACzB,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,SAAS,CAAC,UAAU,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9C,QAAQ,EAAE;oBACR,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI;oBACtB,SAAS,EAAE,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;iBAChD;aACF,CAAC,CAAC,CAAC;QACN,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,YAAY,CAAC,IAAoB;QACvC,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACxB,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW;gBACtC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAqC;aAChE;SACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,mBAAmB,CACvB,KAAa,EACb,OAAyB,EACzB,KAAyB;QAEzB,sDAAsD;QACtD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CACnC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YACjD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAmC,EAAE,CAAC;YAClD,gEAAgE;YAChE,eAAe;YACf,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzD,KAAK,MAAM,GAAG,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,KAAK,IAAI,CAAC,EAAE,CAAC;oBACrF,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,yBAAyB,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;YACD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACzD,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;oBACzB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC;oBACjD,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;YACD,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACjD,CAAC;YACD,4BAA4B;YAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;YAC3F,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;QAC3B,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,IAAI,GAA4B;YACpC,KAAK;YACL,QAAQ,EAAE,WAAW;YACrB,MAAM,EAAE,KAAK;YACb,UAAU,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS;YAC/C,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW;SACrD,CAAC;QACF,2FAA2F;QAC3F,qDAAqD;QACrD,IAAI,KAAK,KAAK,KAAK;YAAE,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC;QAEpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,KAAK,KAAK,WAAW,CAAC,MAAM,MAAM,CAAC,CAAC;QAE3F,gCAAgC;QAChC,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7B,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM,CAAC,GAAG,KAA4E,CAAC;oBACvF,IAAI,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;wBACpD,UAAU,EAAE,CAAC;wBACb,eAAe,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,UAAU,WAAW,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtG,CAAC;QAED,MAAM,OAAO,GAAkB,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC1B,IAAI,IAAc,CAAC;QACnB,IAAI,QAAgB,CAAC;QACrB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,sBAAsB,EAAE;gBACxD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC1B,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;aACjC,CAAC,CAAC;YACH,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,MAAM,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC7G,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAClE,2EAA2E;YAC3E,qDAAqD;YACrD,iEAAiE;YACjE,sBAAsB;YACtB,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;YACxC,IAAI,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACtF,MAAM,IAAI,KAAK,CACb,GAAG,OAAO,IAAI;oBACZ,YAAY,KAAK,oEAAoE;oBACrF,uCAAuC,CAC1C,CAAC;YACJ,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAGpD,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;QAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,IAAI,GAAG,CAAC;QAC7D,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,kBAAkB,KAAK,SAAS,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,cAAc,YAAY,IAAI;gBAC/E,OAAO,UAAU,CAAC,MAAM,UAAU,IAAI,CAAC,MAAM,KAAK;gBAClD,iBAAiB,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,GAAG,eAAe,IAAI,CAAC,KAAK,EAAE,iBAAiB,IAAI,GAAG,EAAE;gBACtG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CACvF,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAiB,EAAE,OAAO,EAAE,IAAI,IAAI,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,GAAG;gBACb,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC;gBAC3C,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC;gBACnD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC;aAC1C,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,0CAA0C;AAC1C,SAAS,oBAAoB,CAAC,CAAS;IACrC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAAC,OAAe;IAC3C,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAC7D,IAAI,CAAC,EAAE,CAAC;QACN,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/B,MAAM,IAAI,GACR,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK;YAC7B,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,KAAK;gBAClD,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM;oBAChD,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,KAAK;wBAC/C,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,KAAK,CAAC;QAClB,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACtC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAChE,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,qBAAqB;AAErB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,eAAe,CAAC;AAElF,6EAA6E;AAC7E,oDAAoD;AACpD,MAAM,kBAAkB,GAAoC;IAC1D,UAAU,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IAC1C,UAAU,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IAC1C,UAAU,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IAC1C,KAAK,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC;IAChC,cAAc,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC;IACzC,MAAM,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC;IAC9C,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC;IACxD,SAAS,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IACzC,eAAe,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IAC/C,aAAa,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IAC7C,KAAK,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC;IAC/C,OAAO,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IACvC,aAAa,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC;IAC1C,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;IACvB,WAAW,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;CAC5C,CAAC;AAEF,MAAM,oBAAoB,GAAoB,CAAC,IAAI,CAAC,CAAC;AAErD,wEAAwE;AACxE,SAAS,qBAAqB,CAAC,IAAc;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAiB,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,KAAK,YAAY;gBACf,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACd,MAAM;YACR,KAAK,OAAO;gBACV,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACrB,MAAM;YACR,KAAK,QAAQ;gBACX,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAChB,MAAM;YACR,KAAK,OAAO;gBACV,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACf,MAAM;YACR,KAAK,UAAU;gBACb,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAClB,MAAM;YACR,qCAAqC;QACvC,CAAC;IACH,CAAC;IACD,oBAAoB;IACpB,IAAI,GAAG,CAAC,IAAI,GAAG,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,mBAAmB,CAC1B,KAAa,EACb,YAAsB,EACtB,YAA8B,EAC9B,QAA0B;IAE1B,qCAAqC;IACrC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAgB,YAA+B,CAAC,CAAC;QACpE,KAAK,MAAM,CAAC,IAAI,YAAY,IAAI,EAAE;YAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;IAClB,CAAC;IACD,wBAAwB;IACxB,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAC/C,kDAAkD;QAClD,gDAAgD;QAChD,uCAAuC;QACvC,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7C,CAAC;IACD,sCAAsC;IACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACnD,uEAAuE;IACvE,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACjE,cAAc;IACd,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAgB,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,IAAI,aAAa;YAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;IAClB,CAAC;IACD,+DAA+D;IAC/D,2CAA2C;IAC3C,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/G,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC;IACD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC/D,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAgB,IAAI,CAAC,CAAC;YACzC,IAAI,aAAa;gBAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAClC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,6BAA6B;IAC7B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAgB,YAAY,IAAI,EAAE,CAAC,CAAC;IACvD,KAAK,MAAM,CAAC,IAAI,oBAAoB;QAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjD,IAAI,aAAa;QAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;AAClB,CAAC;AAED,8BAA8B;AAC9B,SAAS,yBAAyB,CAAC,GAAW;IAC5C,OAAO,GAAG;SACP,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SAClB,MAAM,CAAC,OAAO,CAAoB,CAAC;AACxC,CAAC;AAED,mBAAmB;AAEnB,4BAA4B;AAC5B,SAAS,iBAAiB,CAAC,GAAW;IACpC,OAAO,GAAG;SACP,KAAK,CAAC,OAAO,CAAC;SACd,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SAClB,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,sBAAsB,CAAC,GAAW;IACzC,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,QAAQ,GAAG,CAAC;YAAE,SAAS;QAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO;aACjB,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;aACnB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAClB,MAAM,CAAC,OAAO,CAAoB,CAAC;QACtC,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,2DAA2D;AAE3D,MAAM,iBAAiB;IAEX;IACC;IACA;IACA;IACA;IAEA;IAEA;IAEA;IAXX,YACU,MAAoB,EACnB,EAAU,EACV,UAAkB,EAClB,aAAqB,EACrB,eAAuB;IAChC,mDAAmD;IAC1C,YAAsC;IAC/C,wBAAwB;IACf,QAAoC;IAC7C,yFAAyF;IAChF,OAA8E;QAV/E,WAAM,GAAN,MAAM,CAAc;QACnB,OAAE,GAAF,EAAE,CAAQ;QACV,eAAU,GAAV,UAAU,CAAQ;QAClB,kBAAa,GAAb,aAAa,CAAQ;QACrB,oBAAe,GAAf,eAAe,CAAQ;QAEvB,iBAAY,GAAZ,YAAY,CAA0B;QAEtC,aAAQ,GAAR,QAAQ,CAA4B;QAEpC,YAAO,GAAP,OAAO,CAAuE;IACtF,CAAC;IAEJ,KAAK,CAAC,IAAI,CAAC,OAAyB;QAClC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,CAAC,UAAU,CAAC,OAAyB;QACzC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,oCAAoC;IAC5B,OAAO,CAAC,OAAyB;QACvC,OAAO,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;IACpE,CAAC;CACF;AAED,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;AAG5F,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE,0BAA0B;IAChC,WAAW,EAAE,QAAQ;IACrB,SAAS,EAAE,KAAK;IAChB,YAAY;IACZ,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,CAAC,GAAG,CAAC;IACf,IAAI;IACJ,KAAK,EAAE,KAAK;CACb,CAAC,CAAC;AAEH,KAAK,UAAU,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAQ;IAC7E,MAAM,GAAG,GAAG,WAAW,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACzD,MAAM,iBAAiB,GAAG,sBAAsB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACxE,MAAM,oBAAoB,GAAG,yBAAyB,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAEjF,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1B,IAAI,CAAC,GAAG,CAAC,cAAc,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,kBAAkB,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,WAAW,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,GAAG,CAAC;IACxE,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAE5C,6CAA6C;IAC7C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAsB,CAAC;IAEjD,uEAAuE;IACvE,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IAE/D,uDAAuD;IACvD,SAAS,WAAW,CAAC,OAAe,EAAE,QAA0B;QAC9D,IAAI,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1C,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAAC;QAClH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,OAAO,wCAAwC,CAAC,CAAC;YACrF,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAClC,MAAM,EACN,OAAO,EACP,SAAS,CAAC,GAAG,CAAC,EAAE,EAChB,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,SAAS,EACb,YAAY,EACZ,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,EAChG,OAAO,CACR,CAAC;QACF,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE;YAC5D,KAAK,EAAE,GAAG,SAAS,MAAM,OAAO,EAAE;YAClC,OAAO,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,OAAO,EAAE;SAC1C,CAAC,CAAC;QACH,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,aAAa,CAAC,OAAe;QACpC,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,IAAI,CAAC;YACH,CAAC,EAAE,CAAC;QACN,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,OAAO,SAAS,GAAG,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED,yCAAyC;IACzC,SAAS,gBAAgB,CAAC,SAAmB;QAC3C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;QACrC,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;YAC9B,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,sBAAsB,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,SAAS,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,2DAA2D;IAC3D,8DAA8D;IAC9D,iEAAiE;IACjE,IAAI,cAAkC,CAAC;IACvC,MAAM,SAAS,GAAG,GAAG,CAAC,cAAc;QAClC,CAAC,CAAC,MAAM,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;YAC5E,cAAc,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAClE,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QACJ,CAAC,CAAC,EAAE,CAAC;IACP,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;IACtC,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC/C,mEAAmE;IACnE,wBAAwB;IACxB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,WAAW,CACf,cAAc;YACZ,CAAC,CAAC,wFAAwF,cAAc,EAAE;YAC1G,CAAC,CAAC,cAAc,YAAY,0DAA0D,CACzF,CAAC;IACJ,CAAC;IACD,IAAI,cAAc;QAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,4BAA4B,cAAc,EAAE,CAAC,CAAC;IAClF,4CAA4C;IAC5C,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACtH,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACxF,8DAA8D;IAC9D,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,WAAW,CACf,cAAc,YAAY,eAAe,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,yCAAyC,CACxG,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,CAAC,GAAG,CAAC,cAAc;QACjB,CAAC,CAAC,mBAAmB,YAAY,uBAAuB,UAAU,CAAC,IAAI,gBAAgB;QACvF,CAAC,CAAC,cAAc;YACd,CAAC,CAAC,kBAAkB,YAAY,uBAAuB,UAAU,CAAC,IAAI,gBAAgB;YACtF,CAAC,CAAC,eAAe,YAAY,OAAO,UAAU,CAAC,IAAI,gBAAgB,CACxE,CAAC;IAEF;;;;OAIG;IACH,KAAK,UAAU,aAAa;QAC1B,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACtF,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,+BAA+B;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,sBAAsB,CAAC,EAAE,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACjH,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,mCAAmC;YACnC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACrB,aAAa,CAAC,EAAE,CAAC,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,oBAAoB,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,QAAQ,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,UAAU,UAAU,CAAC,IAAI,EAAE,CAC1I,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC;IACpD,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/plugin-llm-ollama",
3
- "version": "0.12.0",
3
+ "version": "0.13.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,21 +24,21 @@
24
24
  "dist"
25
25
  ],
26
26
  "dependencies": {
27
- "@aalis/schema-config": ">=0.13.0 <1.0.0",
28
- "@aalis/api-llm": ">=0.12.0 <1.0.0",
29
- "@aalis/schema-message": ">=0.9.0 <1.0.0",
30
- "@aalis/api-process": ">=0.8.0 <1.0.0",
27
+ "@aalis/schema-config": ">=0.15.0 <1.0.0",
28
+ "@aalis/api-llm": ">=0.14.0 <1.0.0",
29
+ "@aalis/schema-message": ">=0.10.0 <1.0.0",
30
+ "@aalis/api-process": ">=0.9.0 <1.0.0",
31
31
  "@aalis/util-network-guard": ">=0.6.2 <1.0.0",
32
32
  "@aalis/util-text-normalize": ">=0.5.2 <1.0.0"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@types/node": "^22.0.0",
36
36
  "typescript": "^5.7.0",
37
- "@aalis/core": "0.19.0",
38
- "@aalis/api-tools": "0.10.0"
37
+ "@aalis/core": "0.20.0",
38
+ "@aalis/api-tools": "0.11.0"
39
39
  },
40
40
  "peerDependencies": {
41
- "@aalis/core": ">=0.18.0 <1.0.0"
41
+ "@aalis/core": ">=0.20.0 <1.0.0"
42
42
  },
43
43
  "aalis": {
44
44
  "service": {
@@ -50,6 +50,7 @@
50
50
  ],
51
51
  "required": [
52
52
  "config",
53
+ "events",
53
54
  "lifecycle",
54
55
  "logger",
55
56
  "provide"