@n8n/ai-utilities 0.29.2 → 0.30.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.
@@ -0,0 +1,2 @@
1
+ export declare const JSON_SCHEMA_DRAFT_2020_12 = "https://json-schema.org/draft/2020-12/schema";
2
+ export declare function toDraft202012(schema: unknown): Record<string, unknown>;
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JSON_SCHEMA_DRAFT_2020_12 = void 0;
4
+ exports.toDraft202012 = toDraft202012;
5
+ const is_record_1 = require("@n8n/utils/is-record");
6
+ exports.JSON_SCHEMA_DRAFT_2020_12 = 'https://json-schema.org/draft/2020-12/schema';
7
+ const SUBSCHEMA_KEYWORDS = [
8
+ 'additionalProperties',
9
+ 'contains',
10
+ 'contentSchema',
11
+ 'else',
12
+ 'if',
13
+ 'not',
14
+ 'propertyNames',
15
+ 'then',
16
+ 'unevaluatedItems',
17
+ 'unevaluatedProperties',
18
+ ];
19
+ const SUBSCHEMA_LIST_KEYWORDS = ['allOf', 'anyOf', 'oneOf', 'prefixItems'];
20
+ const SUBSCHEMA_MAP_KEYWORDS = [
21
+ '$defs',
22
+ 'definitions',
23
+ 'dependentSchemas',
24
+ 'patternProperties',
25
+ 'properties',
26
+ ];
27
+ const DEFINITIONS_REF_PREFIX = '#/definitions/';
28
+ function migrateEach(subschemas) {
29
+ if (!(0, is_record_1.isRecord)(subschemas))
30
+ return subschemas;
31
+ return Object.fromEntries(Object.entries(subschemas).map(([name, subschema]) => [name, migrate(subschema)]));
32
+ }
33
+ function applyBound(result, inclusiveKeyword, exclusiveKeyword, exclusive) {
34
+ if (exclusive === undefined)
35
+ return;
36
+ const bound = result[inclusiveKeyword];
37
+ if (typeof exclusive !== 'boolean') {
38
+ result[exclusiveKeyword] = exclusive;
39
+ }
40
+ else if (exclusive && bound !== undefined) {
41
+ delete result[inclusiveKeyword];
42
+ result[exclusiveKeyword] = bound;
43
+ }
44
+ }
45
+ function migrate(schema) {
46
+ if (!(0, is_record_1.isRecord)(schema))
47
+ return schema;
48
+ const { items, additionalItems, dependencies, exclusiveMinimum, exclusiveMaximum, ...rest } = schema;
49
+ const result = {};
50
+ for (const [keyword, value] of Object.entries(rest)) {
51
+ if (SUBSCHEMA_KEYWORDS.includes(keyword)) {
52
+ result[keyword] = migrate(value);
53
+ }
54
+ else if (SUBSCHEMA_LIST_KEYWORDS.includes(keyword)) {
55
+ result[keyword] = Array.isArray(value) ? value.map(migrate) : value;
56
+ }
57
+ else if (SUBSCHEMA_MAP_KEYWORDS.includes(keyword)) {
58
+ result[keyword] = migrateEach(value);
59
+ }
60
+ else if (keyword === '$ref' && typeof value === 'string') {
61
+ result.$ref = value.startsWith(DEFINITIONS_REF_PREFIX)
62
+ ? `#/$defs/${value.slice(DEFINITIONS_REF_PREFIX.length)}`
63
+ : value;
64
+ }
65
+ else {
66
+ result[keyword] = value;
67
+ }
68
+ }
69
+ if (Array.isArray(items)) {
70
+ result.prefixItems = items.map(migrate);
71
+ if (additionalItems !== undefined)
72
+ result.items = migrate(additionalItems);
73
+ }
74
+ else if (items !== undefined) {
75
+ result.items = migrate(items);
76
+ }
77
+ if ((0, is_record_1.isRecord)(dependencies)) {
78
+ for (const [property, dependency] of Object.entries(dependencies)) {
79
+ const target = Array.isArray(dependency) ? 'dependentRequired' : 'dependentSchemas';
80
+ const bucket = (0, is_record_1.isRecord)(result[target]) ? result[target] : {};
81
+ result[target] = {
82
+ ...bucket,
83
+ [property]: Array.isArray(dependency) ? dependency : migrate(dependency),
84
+ };
85
+ }
86
+ }
87
+ applyBound(result, 'minimum', 'exclusiveMinimum', exclusiveMinimum);
88
+ applyBound(result, 'maximum', 'exclusiveMaximum', exclusiveMaximum);
89
+ return result;
90
+ }
91
+ function toDraft202012(schema) {
92
+ const migrated = migrate(schema);
93
+ if (!(0, is_record_1.isRecord)(migrated))
94
+ return { $schema: exports.JSON_SCHEMA_DRAFT_2020_12 };
95
+ const { $schema: _draft07Dialect, definitions, ...rest } = migrated;
96
+ return {
97
+ $schema: exports.JSON_SCHEMA_DRAFT_2020_12,
98
+ ...rest,
99
+ ...(definitions !== undefined ? { $defs: definitions } : {}),
100
+ };
101
+ }
102
+ //# sourceMappingURL=draft-2020-12.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draft-2020-12.js","sourceRoot":"","sources":["../../../src/json-schema/draft-2020-12.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { ZodSchema } from 'zod';
2
+ import { type Options } from 'zod-to-json-schema';
3
+ export { JSON_SCHEMA_DRAFT_2020_12, toDraft202012 } from './draft-2020-12';
4
+ export declare function zodToDraft202012(schema: ZodSchema, options?: Partial<Omit<Options<'jsonSchema7'>, 'target'>>): Record<string, unknown>;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toDraft202012 = exports.JSON_SCHEMA_DRAFT_2020_12 = void 0;
4
+ exports.zodToDraft202012 = zodToDraft202012;
5
+ const zod_to_json_schema_1 = require("zod-to-json-schema");
6
+ const draft_2020_12_1 = require("./draft-2020-12");
7
+ var draft_2020_12_2 = require("./draft-2020-12");
8
+ Object.defineProperty(exports, "JSON_SCHEMA_DRAFT_2020_12", { enumerable: true, get: function () { return draft_2020_12_2.JSON_SCHEMA_DRAFT_2020_12; } });
9
+ Object.defineProperty(exports, "toDraft202012", { enumerable: true, get: function () { return draft_2020_12_2.toDraft202012; } });
10
+ function zodToDraft202012(schema, options) {
11
+ return (0, draft_2020_12_1.toDraft202012)((0, zod_to_json_schema_1.zodToJsonSchema)(schema, { ...options, target: 'jsonSchema7' }));
12
+ }
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/json-schema/index.ts"],"names":[],"mappings":";;;;AACA,2DAAmE;AAEnE,mDAAgD;AAEhD,iDAA2E;AAAlE,0HAAA,yBAAyB,OAAA;AAAE,8GAAA,aAAa,OAAA;AAQjD,0BACC,MAAiB,EACjB,OAAyD;IAEzD,OAAO,IAAA,6BAAa,EAAC,IAAA,oCAAe,EAAC,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;AACtF,CAAC"}
@@ -9,7 +9,7 @@ export { listGoogleModels } from './providers/google';
9
9
  export { listGroqModels } from './providers/groq';
10
10
  export { listMistralModels } from './providers/mistral';
11
11
  export { listNvidiaModels } from './providers/nvidia';
12
- export { isOpenAiCustomEndpoint, listOpenAiModels, shouldIncludeOpenAiModel, } from './providers/openai';
12
+ export { listOpenAiModels, shouldIncludeOpenAiModel, OFFICIAL_OPENAI_HOSTNAMES, isOpenAiCustomEndpoint, } from './providers/openai';
13
13
  export { listOpenRouterModels } from './providers/openrouter';
14
14
  export { listVercelModels } from './providers/vercel';
15
15
  export { listXaiModels } from './providers/xai';
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.listXaiModels = exports.listVercelModels = exports.listOpenRouterModels = exports.shouldIncludeOpenAiModel = exports.listOpenAiModels = exports.isOpenAiCustomEndpoint = exports.listNvidiaModels = exports.listMistralModels = exports.listGroqModels = exports.listGoogleModels = exports.listDeepSeekModels = exports.listCohereModels = exports.listAnthropicModels = exports.MODEL_DISCOVERY_PROVIDERS = void 0;
3
+ exports.listXaiModels = exports.listVercelModels = exports.listOpenRouterModels = exports.isOpenAiCustomEndpoint = exports.OFFICIAL_OPENAI_HOSTNAMES = exports.shouldIncludeOpenAiModel = exports.listOpenAiModels = exports.listNvidiaModels = exports.listMistralModels = exports.listGroqModels = exports.listGoogleModels = exports.listDeepSeekModels = exports.listCohereModels = exports.listAnthropicModels = exports.MODEL_DISCOVERY_PROVIDERS = void 0;
4
4
  exports.isModelDiscoveryProvider = isModelDiscoveryProvider;
5
5
  exports.listModelsForProvider = listModelsForProvider;
6
6
  const anthropic_1 = require("./providers/anthropic");
@@ -52,9 +52,10 @@ Object.defineProperty(exports, "listMistralModels", { enumerable: true, get: fun
52
52
  var nvidia_2 = require("./providers/nvidia");
53
53
  Object.defineProperty(exports, "listNvidiaModels", { enumerable: true, get: function () { return nvidia_2.listNvidiaModels; } });
54
54
  var openai_2 = require("./providers/openai");
55
- Object.defineProperty(exports, "isOpenAiCustomEndpoint", { enumerable: true, get: function () { return openai_2.isOpenAiCustomEndpoint; } });
56
55
  Object.defineProperty(exports, "listOpenAiModels", { enumerable: true, get: function () { return openai_2.listOpenAiModels; } });
57
56
  Object.defineProperty(exports, "shouldIncludeOpenAiModel", { enumerable: true, get: function () { return openai_2.shouldIncludeOpenAiModel; } });
57
+ Object.defineProperty(exports, "OFFICIAL_OPENAI_HOSTNAMES", { enumerable: true, get: function () { return openai_2.OFFICIAL_OPENAI_HOSTNAMES; } });
58
+ Object.defineProperty(exports, "isOpenAiCustomEndpoint", { enumerable: true, get: function () { return openai_2.isOpenAiCustomEndpoint; } });
58
59
  var openrouter_2 = require("./providers/openrouter");
59
60
  Object.defineProperty(exports, "listOpenRouterModels", { enumerable: true, get: function () { return openrouter_2.listOpenRouterModels; } });
60
61
  var vercel_2 = require("./providers/vercel");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/model-discovery/index.ts"],"names":[],"mappings":";;;;;AAAA,qDAA4D;AAC5D,+CAAsD;AACtD,mDAA0D;AAC1D,+CAAsD;AACtD,2CAAkD;AAClD,iDAAwD;AACxD,+CAAsD;AACtD,+CAAsD;AACtD,uDAA8D;AAC9D,+CAAsD;AACtD,yCAAgD;AAcnC,QAAA,yBAAyB,GAAiC;IACtE,SAAS,EAAE,+BAAmB;IAC9B,MAAM,EAAE,yBAAgB;IACxB,QAAQ,EAAE,6BAAkB;IAC5B,MAAM,EAAE,yBAAgB;IACxB,IAAI,EAAE,qBAAc;IACpB,OAAO,EAAE,2BAAiB;IAC1B,MAAM,EAAE,yBAAgB;IACxB,MAAM,EAAE,yBAAgB;IACxB,UAAU,EAAE,iCAAoB;IAChC,MAAM,EAAE,yBAAgB;IACxB,GAAG,EAAE,mBAAa;CAClB,CAAC;AAEF,kCAAyC,QAAgB;IACxD,OAAO,QAAQ,IAAI,QAAA,yBAAyB,CAAC;AAC9C,CAAC;AAEM,KAAK,gCACX,QAAgB,EAChB,OAA0B;IAE1B,MAAM,UAAU,GAAG,QAAA,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,sCAAsC,QAAQ,GAAG,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,mDAA4D;AAAnD,gHAAA,mBAAmB,OAAA;AAC5B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,iDAA0D;AAAjD,8GAAA,kBAAkB,OAAA;AAC3B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,yCAAkD;AAAzC,sGAAA,cAAc,OAAA;AACvB,+CAAwD;AAA/C,4GAAA,iBAAiB,OAAA;AAC1B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,6CAI4B;AAH3B,gHAAA,sBAAsB,OAAA;AACtB,0GAAA,gBAAgB,OAAA;AAChB,kHAAA,wBAAwB,OAAA;AAEzB,qDAA8D;AAArD,kHAAA,oBAAoB,OAAA;AAC7B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,uCAAgD;AAAvC,oGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/model-discovery/index.ts"],"names":[],"mappings":";;;;;AAAA,qDAA4D;AAC5D,+CAAsD;AACtD,mDAA0D;AAC1D,+CAAsD;AACtD,2CAAkD;AAClD,iDAAwD;AACxD,+CAAsD;AACtD,+CAAsD;AACtD,uDAA8D;AAC9D,+CAAsD;AACtD,yCAAgD;AAcnC,QAAA,yBAAyB,GAAiC;IACtE,SAAS,EAAE,+BAAmB;IAC9B,MAAM,EAAE,yBAAgB;IACxB,QAAQ,EAAE,6BAAkB;IAC5B,MAAM,EAAE,yBAAgB;IACxB,IAAI,EAAE,qBAAc;IACpB,OAAO,EAAE,2BAAiB;IAC1B,MAAM,EAAE,yBAAgB;IACxB,MAAM,EAAE,yBAAgB;IACxB,UAAU,EAAE,iCAAoB;IAChC,MAAM,EAAE,yBAAgB;IACxB,GAAG,EAAE,mBAAa;CAClB,CAAC;AAEF,kCAAyC,QAAgB;IACxD,OAAO,QAAQ,IAAI,QAAA,yBAAyB,CAAC;AAC9C,CAAC;AAEM,KAAK,gCACX,QAAgB,EAChB,OAA0B;IAE1B,MAAM,UAAU,GAAG,QAAA,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,sCAAsC,QAAQ,GAAG,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,mDAA4D;AAAnD,gHAAA,mBAAmB,OAAA;AAC5B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,iDAA0D;AAAjD,8GAAA,kBAAkB,OAAA;AAC3B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,yCAAkD;AAAzC,sGAAA,cAAc,OAAA;AACvB,+CAAwD;AAA/C,4GAAA,iBAAiB,OAAA;AAC1B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,6CAK4B;AAJ3B,0GAAA,gBAAgB,OAAA;AAChB,kHAAA,wBAAwB,OAAA;AACxB,mHAAA,yBAAyB,OAAA;AACzB,gHAAA,sBAAsB,OAAA;AAEvB,qDAA8D;AAArD,kHAAA,oBAAoB,OAAA;AAC7B,6CAAsD;AAA7C,0GAAA,gBAAgB,OAAA;AACzB,uCAAgD;AAAvC,oGAAA,aAAa,OAAA"}
@@ -1,4 +1,5 @@
1
1
  import type { ListModelsFn } from '../types';
2
+ export declare const OFFICIAL_OPENAI_HOSTNAMES: string[];
2
3
  export declare function isOpenAiCustomEndpoint(baseURL?: string): boolean;
3
4
  export declare function shouldIncludeOpenAiModel(modelId: string, isCustomApi: boolean): boolean;
4
5
  export declare const listOpenAiModels: ListModelsFn;
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.listOpenAiModels = void 0;
3
+ exports.listOpenAiModels = exports.OFFICIAL_OPENAI_HOSTNAMES = void 0;
4
4
  exports.isOpenAiCustomEndpoint = isOpenAiCustomEndpoint;
5
5
  exports.shouldIncludeOpenAiModel = shouldIncludeOpenAiModel;
6
6
  const request_1 = require("../request");
7
- const OFFICIAL_OPENAI_HOSTNAMES = ['api.openai.com', 'ai-assistant.n8n.io'];
7
+ exports.OFFICIAL_OPENAI_HOSTNAMES = ['api.openai.com', 'ai-assistant.n8n.io'];
8
8
  function isOpenAiCustomEndpoint(baseURL) {
9
9
  if (baseURL === undefined)
10
10
  return false;
11
11
  try {
12
- return !OFFICIAL_OPENAI_HOSTNAMES.includes(new URL(baseURL).hostname);
12
+ return !exports.OFFICIAL_OPENAI_HOSTNAMES.includes(new URL(baseURL).hostname);
13
13
  }
14
14
  catch {
15
15
  return true;
@@ -22,6 +22,9 @@ function shouldIncludeOpenAiModel(modelId, isCustomApi) {
22
22
  modelId.startsWith('davinci') ||
23
23
  modelId.startsWith('computer-use') ||
24
24
  modelId.startsWith('dall-e') ||
25
+ modelId.includes('-image') ||
26
+ modelId.includes('-transcribe') ||
27
+ modelId.includes('-diarize') ||
25
28
  modelId.startsWith('text-embedding') ||
26
29
  modelId.startsWith('tts') ||
27
30
  modelId.includes('-tts') ||
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../../src/model-discovery/providers/openai.ts"],"names":[],"mappings":";;;;;AAAA,wCAA+F;AAG/F,MAAM,yBAAyB,GAAG,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;AAE5E,gCAAuC,OAAgB;IACtD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAExC,IAAI,CAAC;QACJ,OAAO,CAAC,yBAAyB,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAMD,kCAAyC,OAAe,EAAE,WAAoB;IAC7E,IAAI,WAAW;QAAE,OAAO,IAAI,CAAC;IAC7B,OAAO,CAAC,CACP,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC5B,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACpC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;QACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QACxB,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACrC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC7B,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAC5D,CAAC;AACH,CAAC;AAGM,MAAM,gBAAgB,GAAiB,KAAK,EAAE,OAAO,EAAE,EAAE;IAC/D,MAAM,IAAI,GAAG,IAAA,iBAAO,EAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,CAAC,MAAM,IAAA,iBAAO,EAAC,GAAG,IAAI,SAAS,EAAE,IAAA,uBAAa,EAAC,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAEvF,CAAC;IAEF,OAAO,IAAA,qBAAW,EAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;SACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;SAClE,IAAI,CAAC,gBAAM,CAAC,CAAC;AAChB,CAAC,CAAC;AAVW,QAAA,gBAAgB,GAAhB,gBAAgB,CAU3B"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../../src/model-discovery/providers/openai.ts"],"names":[],"mappings":";;;;;AAAA,wCAA+F;AAGlF,QAAA,yBAAyB,GAAG,CAAC,gBAAgB,EAAE,qBAAqB,CAAC,CAAC;AAEnF,gCAAuC,OAAgB;IACtD,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAExC,IAAI,CAAC;QACJ,OAAO,CAAC,QAAA,yBAAyB,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AASD,kCAAyC,OAAe,EAAE,WAAoB;IAC7E,IAAI,WAAW;QAAE,OAAO,IAAI,CAAC;IAC7B,OAAO,CAAC,CACP,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC;QAClC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;QAK5B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC1B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC5B,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACpC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC;QACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;QACxB,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAC7B,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC;QACrC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAC1B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC7B,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAC5D,CAAC;AACH,CAAC;AAGM,MAAM,gBAAgB,GAAiB,KAAK,EAAE,OAAO,EAAE,EAAE;IAC/D,MAAM,IAAI,GAAG,IAAA,iBAAO,EAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,CAAC,MAAM,IAAA,iBAAO,EAAC,GAAG,IAAI,SAAS,EAAE,IAAA,uBAAa,EAAC,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAEvF,CAAC;IAEF,OAAO,IAAA,qBAAW,EAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;SACjC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;SAClE,IAAI,CAAC,gBAAM,CAAC,CAAC;AAChB,CAAC,CAAC;AAVW,QAAA,gBAAgB,GAAhB,gBAAgB,CAU3B"}