promptfoo 0.37.0 → 0.38.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.
Files changed (69) hide show
  1. package/dist/package.json +3 -2
  2. package/dist/src/evaluator.d.ts.map +1 -1
  3. package/dist/src/evaluator.js +4 -0
  4. package/dist/src/evaluator.js.map +1 -1
  5. package/dist/src/main.js +1 -3
  6. package/dist/src/main.js.map +1 -1
  7. package/dist/src/matchers.d.ts.map +1 -1
  8. package/dist/src/matchers.js +54 -23
  9. package/dist/src/matchers.js.map +1 -1
  10. package/dist/src/onboarding.d.ts +1 -1
  11. package/dist/src/onboarding.d.ts.map +1 -1
  12. package/dist/src/onboarding.js +1 -1
  13. package/dist/src/prompts.d.ts.map +1 -1
  14. package/dist/src/prompts.js +2 -1
  15. package/dist/src/prompts.js.map +1 -1
  16. package/dist/src/providers/huggingface.d.ts +17 -1
  17. package/dist/src/providers/huggingface.d.ts.map +1 -1
  18. package/dist/src/providers/huggingface.js +68 -1
  19. package/dist/src/providers/huggingface.js.map +1 -1
  20. package/dist/src/providers/openai.d.ts +12 -0
  21. package/dist/src/providers/openai.d.ts.map +1 -1
  22. package/dist/src/providers/openai.js +101 -34
  23. package/dist/src/providers/openai.js.map +1 -1
  24. package/dist/src/providers/pythonCompletion.d.ts +9 -0
  25. package/dist/src/providers/pythonCompletion.d.ts.map +1 -0
  26. package/dist/src/providers/pythonCompletion.js +40 -0
  27. package/dist/src/providers/pythonCompletion.js.map +1 -0
  28. package/dist/src/providers/wrapper.py +25 -0
  29. package/dist/src/providers.d.ts.map +1 -1
  30. package/dist/src/providers.js +15 -1
  31. package/dist/src/providers.js.map +1 -1
  32. package/dist/src/tableOutput.html +1 -1
  33. package/dist/src/types.d.ts +9 -1
  34. package/dist/src/types.d.ts.map +1 -1
  35. package/dist/src/util.d.ts +1 -0
  36. package/dist/src/util.d.ts.map +1 -1
  37. package/dist/src/util.js +19 -17
  38. package/dist/src/util.js.map +1 -1
  39. package/dist/src/web/nextui/404/index.html +1 -1
  40. package/dist/src/web/nextui/404.html +1 -1
  41. package/dist/src/web/nextui/_next/static/chunks/952-eb6b2155f5ba4e9f.js +1 -0
  42. package/dist/src/web/nextui/_next/static/chunks/{webpack-e7aa396ee7944e48.js → webpack-e6ac4c38096b344b.js} +1 -1
  43. package/dist/src/web/nextui/_next/static/css/44f8c2f691de485c.css +1 -0
  44. package/dist/src/web/nextui/_next/static/css/c9e17d55591e229d.css +1 -0
  45. package/dist/src/web/nextui/auth/login/index.html +1 -1
  46. package/dist/src/web/nextui/auth/login/index.txt +3 -3
  47. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  48. package/dist/src/web/nextui/auth/signup/index.txt +3 -3
  49. package/dist/src/web/nextui/datasets/index.html +1 -1
  50. package/dist/src/web/nextui/datasets/index.txt +3 -3
  51. package/dist/src/web/nextui/eval/index.html +1 -1
  52. package/dist/src/web/nextui/eval/index.txt +6 -6
  53. package/dist/src/web/nextui/index.html +1 -1
  54. package/dist/src/web/nextui/index.txt +3 -3
  55. package/dist/src/web/nextui/prompts/index.html +1 -1
  56. package/dist/src/web/nextui/prompts/index.txt +3 -3
  57. package/dist/src/web/nextui/setup/index.html +2 -2
  58. package/dist/src/web/nextui/setup/index.txt +4 -4
  59. package/dist/src/web/server.d.ts.map +1 -1
  60. package/dist/src/web/server.js +1 -2
  61. package/dist/src/web/server.js.map +1 -1
  62. package/package.json +3 -2
  63. package/dist/src/web/nextui/_next/static/chunks/952-41ca99945f156cbf.js +0 -1
  64. package/dist/src/web/nextui/_next/static/css/e14a0dd8058bc3be.css +0 -1
  65. package/dist/src/web/nextui/_next/static/css/e6c7df5aef93b247.css +0 -1
  66. /package/dist/src/web/nextui/_next/static/{mxkRaSA6iUTYeSCbLQn-- → bWwyhhi_GnxeugMr1nDIX}/_buildManifest.js +0 -0
  67. /package/dist/src/web/nextui/_next/static/{mxkRaSA6iUTYeSCbLQn-- → bWwyhhi_GnxeugMr1nDIX}/_ssgManifest.js +0 -0
  68. /package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/{page-8875bf3354bef591.js → page-ddcbd905630da9ba.js} +0 -0
  69. /package/dist/src/web/nextui/_next/static/chunks/app/eval/{page-5a7e2b8bc8f37780.js → page-06a8580f8b1af9df.js} +0 -0
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.HuggingfaceFeatureExtractionProvider = exports.HuggingfaceTextClassificationProvider = exports.HuggingfaceTextGenerationProvider = void 0;
6
+ exports.HuggingfaceSentenceSimilarityProvider = exports.HuggingfaceFeatureExtractionProvider = exports.HuggingfaceTextClassificationProvider = exports.HuggingfaceTextGenerationProvider = void 0;
7
7
  const logger_1 = __importDefault(require("../logger"));
8
8
  const cache_1 = require("../cache");
9
9
  const shared_1 = require("./shared");
@@ -149,8 +149,13 @@ class HuggingfaceFeatureExtractionProvider {
149
149
  throw new Error('Cannot use a feature extraction provider for text generation');
150
150
  }
151
151
  async callEmbeddingApi(text) {
152
+ // https://huggingface.co/docs/api-inference/detailed_parameters#feature-extraction-task
152
153
  const params = {
153
154
  inputs: text,
155
+ options: {
156
+ use_cache: this.config.use_cache,
157
+ wait_for_model: this.config.wait_for_model,
158
+ },
154
159
  };
155
160
  let response;
156
161
  try {
@@ -186,4 +191,66 @@ class HuggingfaceFeatureExtractionProvider {
186
191
  }
187
192
  }
188
193
  exports.HuggingfaceFeatureExtractionProvider = HuggingfaceFeatureExtractionProvider;
194
+ class HuggingfaceSentenceSimilarityProvider {
195
+ constructor(modelName, options = {}) {
196
+ const { id, config } = options;
197
+ this.modelName = modelName;
198
+ this.id = id ? () => id : this.id;
199
+ this.config = config || {};
200
+ }
201
+ id() {
202
+ return `huggingface:sentence-similarity:${this.modelName}`;
203
+ }
204
+ toString() {
205
+ return `[Huggingface Sentence Similarity Provider ${this.modelName}]`;
206
+ }
207
+ async callApi() {
208
+ throw new Error('Cannot use a sentence similarity provider for text generation');
209
+ }
210
+ async callSimilarityApi(expected, input) {
211
+ // https://huggingface.co/docs/api-inference/detailed_parameters#sentence-similarity-task
212
+ const params = {
213
+ inputs: {
214
+ source_sentence: expected,
215
+ sentences: [input],
216
+ },
217
+ options: {
218
+ use_cache: this.config.use_cache,
219
+ wait_for_model: this.config.wait_for_model,
220
+ },
221
+ };
222
+ let response;
223
+ try {
224
+ response = await (0, cache_1.fetchWithCache)(`https://api-inference.huggingface.co/models/${this.modelName}`, {
225
+ method: 'POST',
226
+ headers: {
227
+ 'Content-Type': 'application/json',
228
+ ...(process.env.HF_API_TOKEN
229
+ ? { Authorization: `Bearer ${process.env.HF_API_TOKEN}` }
230
+ : {}),
231
+ },
232
+ body: JSON.stringify(params),
233
+ }, shared_1.REQUEST_TIMEOUT_MS);
234
+ if (response.data.error) {
235
+ return {
236
+ error: `API call error: ${response.data.error}`,
237
+ };
238
+ }
239
+ if (!Array.isArray(response.data)) {
240
+ return {
241
+ error: `Malformed response data: ${response.data}`,
242
+ };
243
+ }
244
+ return {
245
+ similarity: response.data[0],
246
+ };
247
+ }
248
+ catch (err) {
249
+ return {
250
+ error: `API call error: ${String(err)}. Output:\n${response?.data}`,
251
+ };
252
+ }
253
+ }
254
+ }
255
+ exports.HuggingfaceSentenceSimilarityProvider = HuggingfaceSentenceSimilarityProvider;
189
256
  //# sourceMappingURL=huggingface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"huggingface.js","sourceRoot":"","sources":["../../../src/providers/huggingface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"huggingface.js","sourceRoot":"","sources":["../../../src/providers/huggingface.ts"],"names":[],"mappings":"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"}
@@ -105,6 +105,18 @@ export declare class OpenAiAssistantProvider extends OpenAiGenericProvider {
105
105
  });
106
106
  callApi(prompt: string): Promise<ProviderResponse>;
107
107
  }
108
+ type OpenAiImageOptions = OpenAiSharedOptions & {
109
+ size?: string;
110
+ };
111
+ export declare class OpenAiImageProvider extends OpenAiGenericProvider {
112
+ config: OpenAiImageOptions;
113
+ constructor(modelName: string, options?: {
114
+ config?: OpenAiImageOptions;
115
+ id?: string;
116
+ env?: EnvOverrides;
117
+ });
118
+ callApi(prompt: string, context?: CallApiContextParams, callApiOptions?: CallApiOptionsParams): Promise<ProviderResponse>;
119
+ }
108
120
  export declare const DefaultEmbeddingProvider: OpenAiEmbeddingProvider;
109
121
  export declare const DefaultGradingProvider: OpenAiChatCompletionProvider;
110
122
  export declare const DefaultSuggestionsProvider: OpenAiChatCompletionProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/providers/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/providers/openai.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DefaultSuggestionsProvider = exports.DefaultGradingProvider = exports.DefaultEmbeddingProvider = exports.OpenAiAssistantProvider = exports.OpenAiChatCompletionProvider = exports.OpenAiCompletionProvider = exports.OpenAiEmbeddingProvider = exports.OpenAiGenericProvider = void 0;
6
+ exports.DefaultSuggestionsProvider = exports.DefaultGradingProvider = exports.DefaultEmbeddingProvider = exports.OpenAiImageProvider = exports.OpenAiAssistantProvider = exports.OpenAiChatCompletionProvider = exports.OpenAiCompletionProvider = exports.OpenAiEmbeddingProvider = exports.OpenAiGenericProvider = void 0;
7
7
  const openai_1 = __importDefault(require("openai"));
8
8
  const logger_1 = __importDefault(require("../logger"));
9
9
  const cache_1 = require("../cache");
@@ -18,6 +18,21 @@ function failApiCall(err) {
18
18
  error: `API error: ${String(err)}`,
19
19
  };
20
20
  }
21
+ function getTokenUsage(data, cached) {
22
+ if (data.usage) {
23
+ if (cached) {
24
+ return { cached: data.usage.total_tokens, total: data.usage.total_tokens };
25
+ }
26
+ else {
27
+ return {
28
+ total: data.usage.total_tokens,
29
+ prompt: data.usage.prompt_tokens || 0,
30
+ completion: data.usage.completion_tokens || 0,
31
+ };
32
+ }
33
+ }
34
+ return {};
35
+ }
21
36
  class OpenAiGenericProvider {
22
37
  constructor(modelName, options = {}) {
23
38
  const { config, id, env } = options;
@@ -87,16 +102,7 @@ class OpenAiEmbeddingProvider extends OpenAiGenericProvider {
87
102
  }
88
103
  return {
89
104
  embedding,
90
- tokenUsage: cached
91
- ? {
92
- cached: data.usage.total_tokens,
93
- total: data.usage.total_tokens,
94
- }
95
- : {
96
- total: data.usage.total_tokens,
97
- prompt: data.usage.prompt_tokens,
98
- completion: data.usage.completion_tokens,
99
- },
105
+ tokenUsage: getTokenUsage(data, cached),
100
106
  };
101
107
  }
102
108
  catch (err) {
@@ -163,15 +169,9 @@ class OpenAiCompletionProvider extends OpenAiGenericProvider {
163
169
  try {
164
170
  return {
165
171
  output: data.choices[0].text,
166
- tokenUsage: cached
167
- ? { cached: data.usage.total_tokens, total: data.usage.total_tokens }
168
- : {
169
- total: data.usage.total_tokens,
170
- prompt: data.usage.prompt_tokens,
171
- completion: data.usage.completion_tokens,
172
- },
172
+ tokenUsage: getTokenUsage(data, cached),
173
173
  cached,
174
- cost: calculateCost(this.modelName, this.config, data.usage.prompt_tokens, data.usage.completion_tokens),
174
+ cost: calculateCost(this.modelName, this.config, data.usage?.prompt_tokens, data.usage?.completion_tokens),
175
175
  };
176
176
  }
177
177
  catch (err) {
@@ -279,16 +279,10 @@ class OpenAiChatCompletionProvider extends OpenAiGenericProvider {
279
279
  const logProbs = data.choices[0].logprobs?.content?.map((logProbObj) => logProbObj.logprob);
280
280
  return {
281
281
  output,
282
- tokenUsage: cached
283
- ? { cached: data.usage.total_tokens, total: data.usage.total_tokens }
284
- : {
285
- total: data.usage.total_tokens,
286
- prompt: data.usage.prompt_tokens,
287
- completion: data.usage.completion_tokens,
288
- },
282
+ tokenUsage: getTokenUsage(data, cached),
289
283
  cached,
290
284
  logProbs,
291
- cost: calculateCost(this.modelName, this.config, data.usage.prompt_tokens, data.usage.completion_tokens),
285
+ cost: calculateCost(this.modelName, this.config, data.usage?.prompt_tokens, data.usage?.completion_tokens),
292
286
  };
293
287
  }
294
288
  catch (err) {
@@ -307,7 +301,12 @@ OpenAiChatCompletionProvider.OPENAI_CHAT_MODELS = [
307
301
  output: 0.06 / 1000,
308
302
  },
309
303
  })),
310
- ...['gpt-4-1106-preview', 'gpt-4-1106-vision-preview'].map((model) => ({
304
+ ...[
305
+ 'gpt-4-1106-preview',
306
+ 'gpt-4-1106-vision-preview',
307
+ 'gpt-4-0125-preview',
308
+ 'gpt-4-turbo-preview',
309
+ ].map((model) => ({
311
310
  id: model,
312
311
  cost: {
313
312
  input: 0.01 / 1000,
@@ -326,18 +325,22 @@ OpenAiChatCompletionProvider.OPENAI_CHAT_MODELS = [
326
325
  'gpt-3.5-turbo-0301',
327
326
  'gpt-3.5-turbo-0613',
328
327
  'gpt-3.5-turbo-1106',
328
+ 'gpt-3.5-turbo-0125',
329
329
  'gpt-3.5-turbo-16k',
330
330
  'gpt-3.5-turbo-16k-0613',
331
331
  ].map((model) => ({
332
332
  id: model,
333
333
  cost: {
334
- input: 0.001 / 1000,
335
- output: 0.002 / 1000,
334
+ input: 0.0005 / 1000,
335
+ output: 0.0015 / 1000,
336
336
  },
337
337
  })),
338
338
  ];
339
339
  OpenAiChatCompletionProvider.OPENAI_CHAT_MODEL_NAMES = OpenAiChatCompletionProvider.OPENAI_CHAT_MODELS.map((model) => model.id);
340
340
  function calculateCost(modelName, config, promptTokens, completionTokens) {
341
+ if (!promptTokens || !completionTokens) {
342
+ return undefined;
343
+ }
341
344
  const model = [
342
345
  ...OpenAiChatCompletionProvider.OPENAI_CHAT_MODELS,
343
346
  ...OpenAiCompletionProvider.OPENAI_COMPLETION_MODELS,
@@ -347,7 +350,7 @@ function calculateCost(modelName, config, promptTokens, completionTokens) {
347
350
  }
348
351
  const inputCost = config.cost ?? model.cost.input;
349
352
  const outputCost = config.cost ?? model.cost.output;
350
- return (inputCost * promptTokens + outputCost * completionTokens) || undefined;
353
+ return inputCost * promptTokens + outputCost * completionTokens || undefined;
351
354
  }
352
355
  function toTitleCase(str) {
353
356
  return str.replace(/\w\S*/g, (txt) => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase());
@@ -482,7 +485,71 @@ class OpenAiAssistantProvider extends OpenAiGenericProvider {
482
485
  }
483
486
  }
484
487
  exports.OpenAiAssistantProvider = OpenAiAssistantProvider;
485
- exports.DefaultEmbeddingProvider = new OpenAiEmbeddingProvider('text-embedding-ada-002');
486
- exports.DefaultGradingProvider = new OpenAiChatCompletionProvider('gpt-4-0613');
487
- exports.DefaultSuggestionsProvider = new OpenAiChatCompletionProvider('gpt-4-0613');
488
+ class OpenAiImageProvider extends OpenAiGenericProvider {
489
+ constructor(modelName, options = {}) {
490
+ super(modelName, options);
491
+ this.config = options.config || {};
492
+ }
493
+ async callApi(prompt, context, callApiOptions) {
494
+ const cache = (0, cache_1.getCache)();
495
+ const cacheKey = `openai:image:${JSON.stringify({ context, prompt })}`;
496
+ if (!this.getApiKey()) {
497
+ throw new Error('OpenAI API key is not set. Set the OPENAI_API_KEY environment variable or add `apiKey` to the provider config.');
498
+ }
499
+ const openai = new openai_1.default({
500
+ apiKey: this.getApiKey(),
501
+ organization: this.getOrganization(),
502
+ // Unfortunate, but the OpenAI SDK's implementation of base URL is different from how we treat base URL elsewhere.
503
+ baseURL: this.getApiUrl() + '/v1',
504
+ maxRetries: 3,
505
+ timeout: shared_1.REQUEST_TIMEOUT_MS,
506
+ });
507
+ let response;
508
+ let cached = false;
509
+ if ((0, cache_1.isCacheEnabled)()) {
510
+ // Try to get the cached response
511
+ const cachedResponse = await cache.get(cacheKey);
512
+ if (cachedResponse) {
513
+ logger_1.default.debug(`Retrieved cached response for ${prompt}: ${cachedResponse}`);
514
+ response = JSON.parse(cachedResponse);
515
+ cached = true;
516
+ }
517
+ }
518
+ if (!response) {
519
+ response = await openai.images.generate({
520
+ model: this.modelName,
521
+ prompt,
522
+ n: 1,
523
+ size: (this.config.size || process.env.OPENAI_IMAGE_SIZE) || '1024x1024',
524
+ });
525
+ }
526
+ const url = response.data[0].url;
527
+ if (!url) {
528
+ return {
529
+ error: `No image URL found in response: ${JSON.stringify(response)}`,
530
+ };
531
+ }
532
+ if (!cached && (0, cache_1.isCacheEnabled)()) {
533
+ try {
534
+ await cache.set(cacheKey, JSON.stringify(response));
535
+ }
536
+ catch (err) {
537
+ logger_1.default.error(`Failed to cache response: ${String(err)}`);
538
+ }
539
+ }
540
+ const sanitizedPrompt = prompt
541
+ .replace(/\r?\n|\r/g, ' ')
542
+ .replace(/\[/g, '(')
543
+ .replace(/\]/g, ')');
544
+ const ellipsizedPrompt = sanitizedPrompt.length > 50 ? `${sanitizedPrompt.substring(0, 47)}...` : sanitizedPrompt;
545
+ return {
546
+ output: `![${ellipsizedPrompt}](${url})`,
547
+ cached,
548
+ };
549
+ }
550
+ }
551
+ exports.OpenAiImageProvider = OpenAiImageProvider;
552
+ exports.DefaultEmbeddingProvider = new OpenAiEmbeddingProvider('text-embedding-3-large');
553
+ exports.DefaultGradingProvider = new OpenAiChatCompletionProvider('gpt-4-0125-preview');
554
+ exports.DefaultSuggestionsProvider = new OpenAiChatCompletionProvider('gpt-4-0125-preview');
488
555
  //# sourceMappingURL=openai.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/providers/openai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/providers/openai.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAE5B,uDAA+B;AAC/B,oCAAoE;AACpE,qCAA+D;AAsC/D,SAAS,WAAW,CAAC,GAAQ;IAC3B,IAAI,GAAG,YAAY,gBAAM,CAAC,QAAQ,EAAE;QAClC,OAAO;YACL,KAAK,EAAE,cAAc,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,EAAE;SAC/C,CAAC;KACH;IACD,OAAO;QACL,KAAK,EAAE,cAAc,MAAM,CAAC,GAAG,CAAC,EAAE;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,IAAS,EAAE,MAAe;IAC/C,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,IAAI,MAAM,EAAE;YACV,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;SAC5E;aAAM;YACL,OAAO;gBACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;gBAC9B,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC;gBACrC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC;aAC9C,CAAC;SACH;KACF;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAa,qBAAqB;IAMhC,YACE,SAAiB,EACjB,UAA6E,EAAE;QAE/E,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QACpC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;QAC3B,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;IACpC,CAAC;IAED,EAAE;QACA,OAAO,UAAU,IAAI,CAAC,SAAS,EAAE,CAAC;IACpC,CAAC;IAED,QAAQ;QACN,OAAO,oBAAoB,IAAI,CAAC,SAAS,GAAG,CAAC;IAC/C,CAAC;IAED,eAAe;QACb,OAAO,CACL,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,GAAG,EAAE,mBAAmB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAC7F,CAAC;IACJ,CAAC;IAED,SAAS;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QAChG,IAAI,OAAO,EAAE;YACX,OAAO,WAAW,OAAO,EAAE,CAAC;SAC7B;QACD,OAAO,CACL,IAAI,CAAC,MAAM,CAAC,UAAU;YACtB,IAAI,CAAC,GAAG,EAAE,mBAAmB;YAC7B,OAAO,CAAC,GAAG,CAAC,mBAAmB;YAC/B,wBAAwB,CACzB,CAAC;IACJ,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACtF,CAAC;IAED,yDAAyD;IACzD,KAAK,CAAC,OAAO,CACX,MAAc,EACd,OAA8B,EAC9B,cAAqC;QAErC,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;CACF;AAxDD,sDAwDC;AAED,MAAa,uBAAwB,SAAQ,qBAAqB;IAChE,KAAK,CAAC,gBAAgB,CAAC,IAAY;QACjC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;SACzE;QAED,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,IAAI;YACX,KAAK,EAAE,IAAI,CAAC,SAAS;SACtB,CAAC;QACF,IAAI,IAAI,EACN,MAAM,GAAG,KAAK,CAAC;QACjB,IAAI;YACF,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAA,sBAAc,EACvC,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,EACnC;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,SAAS,EAAE,EAAE;oBAC3C,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrF;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B,EACD,2BAAkB,CACnB,CAAmB,CAAC,CAAC;SACvB;QAAC,OAAO,GAAG,EAAE;YACZ,gBAAM,CAAC,KAAK,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC;YACvC,MAAM,GAAG,CAAC;SACX;QACD,gBAAM,CAAC,KAAK,CAAC,qCAAqC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE1E,IAAI;YACF,MAAM,SAAS,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;YAC7C,IAAI,CAAC,SAAS,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;aACzE;YACD,OAAO;gBACL,SAAS;gBACT,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC;aACxC,CAAC;SACH;QAAC,OAAO,GAAG,EAAE;YACZ,gBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,GAAG,CAAC;SACX;IACH,CAAC;CACF;AA9CD,0DA8CC;AAED,MAAa,wBAAyB,SAAQ,qBAAqB;IAuCjE,YACE,SAAiB,EACjB,UAAiF,EAAE;QAEnF,IAAI,CAAC,wBAAwB,CAAC,6BAA6B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC/E,gBAAM,CAAC,IAAI,CAAC,0CAA0C,SAAS,EAAE,CAAC,CAAC;SACpE;QACD,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAc,EACd,OAA8B,EAC9B,cAAqC;QAErC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CACb,gHAAgH,CACjH,CAAC;SACH;QAED,IAAI,IAAY,CAAC;QACjB,IAAI;YACF,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW;gBAC5B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;SAC1D;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,EAAE,CAAC,CAAC;SACnE;QACD,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,MAAM;YACN,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;YAC3B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC;YACvF,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC;YACzF,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC;YACvE,gBAAgB,EACd,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,GAAG,CAAC;YACxF,iBAAiB,EACf,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC;YAC1F,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC;YAC3E,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;SACnC,CAAC;QACF,gBAAM,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5D,IAAI,IAAI,EACN,MAAM,GAAG,KAAK,CAAC;QACjB,IAAI;YACF,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAA,sBAAc,EACvC,GAAG,IAAI,CAAC,SAAS,EAAE,iBAAiB,EACpC;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,SAAS,EAAE,EAAE;oBAC3C,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrF;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B,EACD,2BAAkB,CACnB,CAAmB,CAAC,CAAC;SACvB;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO;gBACL,KAAK,EAAE,mBAAmB,MAAM,CAAC,GAAG,CAAC,EAAE;aACxC,CAAC;SACH;QACD,gBAAM,CAAC,KAAK,CAAC,sCAAsC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3E,IAAI;YACF,OAAO;gBACL,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;gBAC5B,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC;gBACvC,MAAM;gBACN,IAAI,EAAE,aAAa,CACjB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,EAAE,aAAa,EACzB,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAC9B;aACF,CAAC;SACH;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO;gBACL,KAAK,EAAE,uBAAuB,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;aACrE,CAAC;SACH;IACH,CAAC;;AA7HH,4DA8HC;AA7HQ,iDAAwB,GAAG;IAChC;QACE,EAAE,EAAE,wBAAwB;QAC5B,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,GAAG,IAAI;YACpB,MAAM,EAAE,KAAK,GAAG,IAAI;SACrB;KACF;IACD;QACE,EAAE,EAAE,6BAA6B;QACjC,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,GAAG,IAAI;YACpB,MAAM,EAAE,KAAK,GAAG,IAAI;SACrB;KACF;IACD;QACE,EAAE,EAAE,kBAAkB;KACvB;IACD;QACE,EAAE,EAAE,kBAAkB;KACvB;IACD;QACE,EAAE,EAAE,gBAAgB;KACrB;IACD;QACE,EAAE,EAAE,kBAAkB;KACvB;IACD;QACE,EAAE,EAAE,cAAc;KACnB;CACF,CAAC;AAEK,sDAA6B,GAAG,wBAAwB,CAAC,wBAAwB,CAAC,GAAG,CAC1F,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CACpB,CAAC;AA6FJ,MAAa,4BAA6B,SAAQ,qBAAqB;IAmDrE,YACE,SAAiB,EACjB,UAAiF,EAAE;QAEnF,IAAI,CAAC,4BAA4B,CAAC,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC7E,gBAAM,CAAC,IAAI,CAAC,oCAAoC,SAAS,EAAE,CAAC,CAAC;SAC9D;QACD,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAc,EACd,OAA8B,EAC9B,cAAqC;QAErC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CACb,gHAAgH,CACjH,CAAC;SACH;QAED,MAAM,QAAQ,GAAG,IAAA,wBAAe,EAAC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAE9E,IAAI,IAAY,CAAC;QACjB,IAAI;YACF,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW;gBAC5B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;SAC7B;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,EAAE,CAAC,CAAC;SACnE;QACD,MAAM,IAAI,GAAG;YACX,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,QAAQ,EAAE,QAAQ;YAClB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;YAC3B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,CAAC;YACvF,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC;YACzF,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC;YACvE,gBAAgB,EACd,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,GAAG,CAAC;YACxF,iBAAiB,EACf,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC;YAC1F,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;SACnC,CAAC;QACF,gBAAM,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE5D,IAAI,IAAI,EACN,MAAM,GAAG,KAAK,CAAC;QACjB,IAAI;YACF,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAA,sBAAc,EACvC,GAAG,IAAI,CAAC,SAAS,EAAE,sBAAsB,EACzC;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,aAAa,EAAE,UAAU,IAAI,CAAC,SAAS,EAAE,EAAE;oBAC3C,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrF;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B,EACD,2BAAkB,CACnB,CAA8C,CAAC,CAAC;SAClD;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO;gBACL,KAAK,EAAE,mBAAmB,MAAM,CAAC,GAAG,CAAC,EAAE;aACxC,CAAC;SACH;QAED,gBAAM,CAAC,KAAK,CAAC,2CAA2C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChF,IAAI;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACxC,MAAM,MAAM,GACV,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;YAC3F,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CACrD,CAAC,UAA8C,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CACvE,CAAC;YAEF,OAAO;gBACL,MAAM;gBACN,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC;gBACvC,MAAM;gBACN,QAAQ;gBACR,IAAI,EAAE,aAAa,CACjB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,EAAE,aAAa,EACzB,IAAI,CAAC,KAAK,EAAE,iBAAiB,CAC9B;aACF,CAAC;SACH;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO;gBACL,KAAK,EAAE,uBAAuB,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;aACrE,CAAC;SACH;IACH,CAAC;;AAzJH,oEA0JC;AAzJQ,+CAAkB,GAAG;IAC1B,GAAG,CAAC,OAAO,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACvD,EAAE,EAAE,KAAK;QACT,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI,GAAG,IAAI;YAClB,MAAM,EAAE,IAAI,GAAG,IAAI;SACpB;KACF,CAAC,CAAC;IACH,GAAG;QACD,oBAAoB;QACpB,2BAA2B;QAC3B,oBAAoB;QACpB,qBAAqB;KACtB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChB,EAAE,EAAE,KAAK;QACT,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI,GAAG,IAAI;YAClB,MAAM,EAAE,IAAI,GAAG,IAAI;SACpB;KACF,CAAC,CAAC;IACH,GAAG,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjD,EAAE,EAAE,KAAK;QACT,IAAI,EAAE;YACJ,KAAK,EAAE,IAAI,GAAG,IAAI;YAClB,MAAM,EAAE,IAAI,GAAG,IAAI;SACpB;KACF,CAAC,CAAC;IACH,GAAG;QACD,eAAe;QACf,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,oBAAoB;QACpB,mBAAmB;QACnB,wBAAwB;KACzB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChB,EAAE,EAAE,KAAK;QACT,IAAI,EAAE;YACJ,KAAK,EAAE,MAAM,GAAG,IAAI;YACpB,MAAM,EAAE,MAAM,GAAG,IAAI;SACtB;KACF,CAAC,CAAC;CACJ,CAAC;AAEK,oDAAuB,GAAG,4BAA4B,CAAC,kBAAkB,CAAC,GAAG,CAClF,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CACpB,CAAC;AA6GJ,SAAS,aAAa,CACpB,SAAiB,EACjB,MAA2B,EAC3B,YAAqB,EACrB,gBAAyB;IAEzB,IAAI,CAAC,YAAY,IAAI,CAAC,gBAAgB,EAAE;QACtC,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,KAAK,GAAG;QACZ,GAAG,4BAA4B,CAAC,kBAAkB;QAClD,GAAG,wBAAwB,CAAC,wBAAwB;KACrD,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QACzB,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;IAClD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;IACpD,OAAO,SAAS,GAAG,YAAY,GAAG,UAAU,GAAG,gBAAgB,IAAI,SAAS,CAAC;AAC/E,CAAC;AAuBD,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;AACnG,CAAC;AAED,MAAa,uBAAwB,SAAQ,qBAAqB;IAIhE,YACE,WAAmB,EACnB,UAAgF,EAAE;QAElF,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc;QAC1B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CACb,gHAAgH,CACjH,CAAC;SACH;QAED,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC;YACxB,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;YACxB,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kHAAkH;YAClH,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK;YACjC,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,2BAAkB;SAC5B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAA,wBAAe,EAAC,MAAM,EAAE;YACvC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;SAClC,CAAqD,CAAC;QACvD,MAAM,IAAI,GAAiD;YACzD,YAAY,EAAE,IAAI,CAAC,WAAW;YAC9B,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,IAAI,SAAS;YAClD,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,YAAY,IAAI,SAAS;YAC5D,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,IAAI,SAAS;YAC9C,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,IAAI,SAAS;YACpD,MAAM,EAAE;gBACN,QAAQ;aACT;SACF,CAAC;QAEF,gBAAM,CAAC,KAAK,CAAC,4CAA4C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjF,IAAI,GAAG,CAAC;QACR,IAAI;YACF,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;SACpD;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;SACzB;QAED,gBAAM,CAAC,KAAK,CAAC,qCAAqC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEzE,OAAO,GAAG,CAAC,MAAM,KAAK,aAAa,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE;YAC9D,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAE1D,gBAAM,CAAC,KAAK,CAAC,0CAA0C,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC;YACxE,IAAI;gBACF,GAAG,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;aACtE;YAAC,OAAO,GAAG,EAAE;gBACZ,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;aACzB;YACD,gBAAM,CAAC,KAAK,CAAC,qCAAqC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;SAC1E;QAED,IAAI,GAAG,CAAC,MAAM,KAAK,WAAW,IAAI,GAAG,CAAC,MAAM,KAAK,iBAAiB,EAAE;YAClE,IAAI,GAAG,CAAC,UAAU,EAAE;gBAClB,OAAO;oBACL,KAAK,EAAE,sBAAsB,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE;iBACtD,CAAC;aACH;YACD,OAAO;gBACL,KAAK,EAAE,sBAAsB,GAAG,CAAC,MAAM,EAAE;aAC1C,CAAC;SACH;QAED,gBAAgB;QAChB,gBAAM,CAAC,KAAK,CAAC,oDAAoD,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;QAClF,IAAI,KAAK,CAAC;QACV,IAAI;YACF,KAAK,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,EAAE;gBACvE,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;SACJ;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;SACzB;QACD,gBAAM,CAAC,KAAK,CAAC,2CAA2C,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEjF,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;YAC7B,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,kBAAkB,EAAE;gBACjD,gBAAM,CAAC,KAAK,CAAC,uCAAuC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC/D,IAAI,OAAO,CAAC;gBACZ,IAAI;oBACF,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CACnD,GAAG,CAAC,SAAS,EACb,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,UAAU,CAC9C,CAAC;iBACH;gBAAC,OAAO,GAAG,EAAE;oBACZ,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;iBACzB;gBACD,gBAAM,CAAC,KAAK,CAAC,kDAAkD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAE1F,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO;qBAC5B,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,UAAU,CAC1E;qBACA,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,YAAY,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;aAChE;iBAAM,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,KAAK,YAAY,EAAE;gBAClD,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE;oBACnD,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE;wBAChC,YAAY,CAAC,IAAI,CACf,kBAAkB,QAAQ,CAAC,QAAQ,CAAC,IAAI,mBAAmB,QAAQ,CAAC,QAAQ,CAAC,SAAS,GAAG,CAC1F,CAAC;wBACF,YAAY,CAAC,IAAI,CAAC,qBAAqB,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;qBACrE;yBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,EAAE;wBACxC,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;qBACtC;yBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,kBAAkB,EAAE;wBAC/C,MAAM,MAAM,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO;6BAC7C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC;6BACnF,IAAI,CAAC,IAAI,CAAC,CAAC;wBACd,YAAY,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;wBAC9C,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;wBACnD,YAAY,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;wBAC/C,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;qBAC3B;yBAAM;wBACL,YAAY,CAAC,IAAI,CAAC,4BAA6B,QAAgB,CAAC,IAAI,GAAG,CAAC,CAAC;qBAC1E;iBACF;aACF;iBAAM;gBACL,YAAY,CAAC,IAAI,CAAC,uBAAwB,IAAI,CAAC,YAAoB,CAAC,IAAI,GAAG,CAAC,CAAC;aAC9E;SACF;QAED,OAAO;YACL,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;YACxC;;;;;;cAME;SACH,CAAC;IACJ,CAAC;CACF;AAlJD,0DAkJC;AAMD,MAAa,mBAAoB,SAAQ,qBAAqB;IAG5D,YACE,SAAiB,EACjB,UAA4E,EAAE;QAE9E,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAc,EACd,OAA8B,EAC9B,cAAqC;QAErC,MAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,gBAAgB,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAEvE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CACb,gHAAgH,CACjH,CAAC;SACH;QAED,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC;YACxB,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;YACxB,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE;YACpC,kHAAkH;YAClH,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,KAAK;YACjC,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,2BAAkB;SAC5B,CAAC,CAAC;QAEH,IAAI,QAAkD,CAAC;QACvD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,IAAA,sBAAc,GAAE,EAAE;YACpB,iCAAiC;YACjC,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAI,cAAc,EAAE;gBAClB,gBAAM,CAAC,KAAK,CAAC,iCAAiC,MAAM,KAAK,cAAc,EAAE,CAAC,CAAC;gBAC3E,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,cAAwB,CAAiC,CAAC;gBAChF,MAAM,GAAG,IAAI,CAAC;aACf;SACF;QAED,IAAI,CAAC,QAAQ,EAAE;YACb,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACtC,KAAK,EAAE,IAAI,CAAC,SAAS;gBACrB,MAAM;gBACN,CAAC,EAAE,CAAC;gBACJ,IAAI,EACD,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAMrC,IAAI,WAAW;aAChC,CAAC,CAAC;SACJ;QAED,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACjC,IAAI,CAAC,GAAG,EAAE;YACR,OAAO;gBACL,KAAK,EAAE,mCAAmC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;aACrE,CAAC;SACH;QAED,IAAI,CAAC,MAAM,IAAI,IAAA,sBAAc,GAAE,EAAE;YAC/B,IAAI;gBACF,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;aACrD;YAAC,OAAO,GAAG,EAAE;gBACZ,gBAAM,CAAC,KAAK,CAAC,6BAA6B,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAC1D;SACF;QAED,MAAM,eAAe,GAAG,MAAM;aAC3B,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;aACzB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACvB,MAAM,gBAAgB,GACpB,eAAe,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC;QAC3F,OAAO;YACL,MAAM,EAAE,KAAK,gBAAgB,KAAK,GAAG,GAAG;YACxC,MAAM;SACP,CAAC;IACJ,CAAC;CACF;AAxFD,kDAwFC;AAEY,QAAA,wBAAwB,GAAG,IAAI,uBAAuB,CAAC,wBAAwB,CAAC,CAAC;AACjF,QAAA,sBAAsB,GAAG,IAAI,4BAA4B,CAAC,oBAAoB,CAAC,CAAC;AAChF,QAAA,0BAA0B,GAAG,IAAI,4BAA4B,CAAC,oBAAoB,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { ApiProvider, CallApiContextParams, ProviderOptions, ProviderResponse } from '../types';
2
+ export declare class PythonProvider implements ApiProvider {
3
+ private scriptPath;
4
+ private options?;
5
+ constructor(scriptPath: string, options?: ProviderOptions | undefined);
6
+ id(): string;
7
+ callApi(prompt: string, context?: CallApiContextParams): Promise<ProviderResponse>;
8
+ }
9
+ //# sourceMappingURL=pythonCompletion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pythonCompletion.d.ts","sourceRoot":"","sources":["../../../src/providers/pythonCompletion.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAElB,qBAAa,cAAe,YAAW,WAAW;IACpC,OAAO,CAAC,UAAU;IAAU,OAAO,CAAC,OAAO,CAAC;gBAApC,UAAU,EAAE,MAAM,EAAU,OAAO,CAAC,6BAAiB;IAEzE,EAAE;IAII,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAqBzF"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PythonProvider = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ const python_shell_1 = require("python-shell");
9
+ const logger_1 = __importDefault(require("../logger"));
10
+ class PythonProvider {
11
+ constructor(scriptPath, options) {
12
+ this.scriptPath = scriptPath;
13
+ this.options = options;
14
+ }
15
+ id() {
16
+ return `python:${this.scriptPath}`;
17
+ }
18
+ async callApi(prompt, context) {
19
+ const absPath = path_1.default.resolve(path_1.default.join(this.options?.config.basePath, this.scriptPath));
20
+ const options = {
21
+ mode: 'text',
22
+ pythonPath: process.env.PROMPTFOO_PYTHON || 'python',
23
+ scriptPath: path_1.default.join(__dirname),
24
+ args: [absPath, prompt, JSON.stringify(this.options), JSON.stringify(context)],
25
+ };
26
+ logger_1.default.debug(`Running python script ${absPath} with scriptPath ${this.scriptPath} and args ${JSON.stringify(options.args)}`);
27
+ const results = await python_shell_1.PythonShell.run('./wrapper.py', options);
28
+ logger_1.default.debug(`Python script ${absPath} returned: ${results.join('\n')}`);
29
+ const result = JSON.parse(results[results.length - 1]);
30
+ if (result?.type !== 'final_result') {
31
+ throw new Error('The Python script `call_api` function must return a dict with an `output` or `error` string');
32
+ }
33
+ if (!('output' in result.data) && !('error' in result.data)) {
34
+ throw new Error('The Python script `call_api` function must return a dict with an `output` or `error` string');
35
+ }
36
+ return result.data;
37
+ }
38
+ }
39
+ exports.PythonProvider = PythonProvider;
40
+ //# sourceMappingURL=pythonCompletion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pythonCompletion.js","sourceRoot":"","sources":["../../../src/providers/pythonCompletion.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AAExB,+CAA0E;AAE1E,uDAA+B;AAQ/B,MAAa,cAAc;IACzB,YAAoB,UAAkB,EAAU,OAAyB;QAArD,eAAU,GAAV,UAAU,CAAQ;QAAU,YAAO,GAAP,OAAO,CAAkB;IAAG,CAAC;IAE7E,EAAE;QACA,OAAO,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,OAA8B;QAC1D,MAAM,OAAO,GAAG,cAAI,CAAC,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACxF,MAAM,OAAO,GAAuB;YAClC,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,QAAQ;YACpD,UAAU,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;SAC/E,CAAC;QAEF,gBAAM,CAAC,KAAK,CAAC,yBAAyB,OAAO,oBAAoB,IAAI,CAAC,UAAU,aAAa,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7H,MAAM,OAAO,GAAG,MAAM,0BAAW,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC/D,gBAAM,CAAC,KAAK,CAAC,iBAAiB,OAAO,cAAc,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzE,MAAM,MAAM,GAAmD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QACvG,IAAI,MAAM,EAAE,IAAI,KAAK,cAAc,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;SAChH;QACD,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE;YAC3D,MAAM,IAAI,KAAK,CAAC,6FAA6F,CAAC,CAAC;SAChH;QACD,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;CACF;AA5BD,wCA4BC"}
@@ -0,0 +1,25 @@
1
+ import json
2
+ import os
3
+ import sys
4
+ import importlib
5
+
6
+ def call_api(script_path, prompt, options, context):
7
+ script_dir = os.path.dirname(os.path.abspath(script_path))
8
+ module_name = os.path.basename(script_path).rsplit('.', 1)[0]
9
+ if script_dir not in sys.path:
10
+ sys.path.insert(0, script_dir)
11
+ print(f'Importing module {module_name} from {script_dir}...')
12
+ script_module = importlib.import_module(module_name)
13
+ return script_module.call_api(prompt, options, context)
14
+
15
+ if __name__ == '__main__':
16
+ script_path = sys.argv[1]
17
+ prompt = sys.argv[2]
18
+ options = json.loads(sys.argv[3])
19
+ context = json.loads(sys.argv[4])
20
+
21
+ result = call_api(script_path, prompt, options, context)
22
+ print(json.dumps({
23
+ 'type': 'final_result',
24
+ 'data': result
25
+ }))
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAE7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EAEpB,MAAM,qBAAqB,CAAC;AAuB7B,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,eAAe,EAEf,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,eAAe,CAAC,WAAW,CAAC,EAC3C,OAAO,GAAE;IACP,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,YAAY,CAAC;CACf,GACL,OAAO,CAAC,WAAW,EAAE,CAAC,CAuCxB;AAED,wBAAsB,eAAe,CACnC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,YAAY,CAAC;CACf,GACL,OAAO,CAAC,WAAW,CAAC,CA6KtB;;;;;;;;;;;AAED,wBASE"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAG7B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EAEpB,MAAM,qBAAqB,CAAC;AAyB7B,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,eAAe,EAEf,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,eAAe,CAAC,WAAW,CAAC,EAC3C,OAAO,GAAE;IACP,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,YAAY,CAAC;CACf,GACL,OAAO,CAAC,WAAW,EAAE,CAAC,CAuCxB;AAED,wBAAsB,eAAe,CACnC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,YAAY,CAAC;CACf,GACL,OAAO,CAAC,WAAW,CAAC,CAuLtB;;;;;;;;;;;AAED,wBASE"}
@@ -45,6 +45,7 @@ const scriptCompletion_1 = require("./providers/scriptCompletion");
45
45
  const azureopenai_1 = require("./providers/azureopenai");
46
46
  const huggingface_1 = require("./providers/huggingface");
47
47
  const bedrock_1 = require("./providers/bedrock");
48
+ const pythonCompletion_1 = require("./providers/pythonCompletion");
48
49
  async function loadApiProviders(providerPaths, options = {}) {
49
50
  const { basePath, env } = options;
50
51
  if (typeof providerPaths === 'string') {
@@ -118,6 +119,13 @@ async function loadApiProvider(providerPath, context = {}) {
118
119
  config: { basePath },
119
120
  });
120
121
  }
122
+ else if (providerPath?.startsWith('python:')) {
123
+ const scriptPath = providerPath.split(':')[1];
124
+ return new pythonCompletion_1.PythonProvider(scriptPath, {
125
+ id: `python:${scriptPath}`,
126
+ config: { basePath },
127
+ });
128
+ }
121
129
  else if (providerPath?.startsWith('openai:')) {
122
130
  // Load OpenAI module
123
131
  const splits = providerPath.split(':');
@@ -141,8 +149,11 @@ async function loadApiProvider(providerPath, context = {}) {
141
149
  else if (modelType === 'assistant') {
142
150
  return new openai_1.OpenAiAssistantProvider(modelName, providerOptions);
143
151
  }
152
+ else if (modelType === 'image') {
153
+ return new openai_1.OpenAiImageProvider(modelName, providerOptions);
154
+ }
144
155
  else {
145
- throw new Error(`Unknown OpenAI model type: ${modelType}. Use one of the following providers: openai:chat:<model name>, openai:completion:<model name>`);
156
+ throw new Error(`Unknown OpenAI model type: ${modelType}. Use one of the following providers: openai:chat:<model name>, openai:completion:<model name>, openai:embeddings:<model name>, openai:image:<model name>`);
146
157
  }
147
158
  }
148
159
  else if (providerPath?.startsWith('azureopenai:')) {
@@ -200,6 +211,9 @@ async function loadApiProvider(providerPath, context = {}) {
200
211
  if (splits[1] === 'feature-extraction') {
201
212
  return new huggingface_1.HuggingfaceFeatureExtractionProvider(modelName, providerOptions);
202
213
  }
214
+ else if (splits[1] === 'sentence-similarity') {
215
+ return new huggingface_1.HuggingfaceSentenceSimilarityProvider(modelName, providerOptions);
216
+ }
203
217
  else if (splits[1] === 'text-generation') {
204
218
  return new huggingface_1.HuggingfaceTextGenerationProvider(modelName, providerOptions);
205
219
  }
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAExB,oEAAuC;AACvC,sDAA2B;AAE3B,sDAA8B;AAC9B,+CAM4B;AAC5B,qDAAoE;AACpE,qDAA0D;AAC1D,iDAI6B;AAC7B,2CAAoD;AACpD,6CAAkD;AAClD,+CAI4B;AAC5B,+CAAwD;AACxD,iDAAsD;AACtD,mEAAwE;AACxE,yDAIiC;AACjC,yDAKiC;AACjC,iDAAmE;AACnE,mEAA8D;AAUvD,KAAK,UAAU,gBAAgB,CACpC,aAA2C,EAC3C,UAGI,EAAE;IAEN,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAClC,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;QACrC,OAAO,CAAC,MAAM,eAAe,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;KAClE;SAAM,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE;QAC9C,OAAO;YACL;gBACE,EAAE,EAAE,GAAG,EAAE,CAAC,iBAAiB;gBAC3B,OAAO,EAAE,aAAa;aACvB;SACF,CAAC;KACH;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;QACvC,OAAO,OAAO,CAAC,GAAG,CAChB,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;YAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;gBAChC,OAAO,eAAe,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;aACrD;iBAAM,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;gBACzC,OAAO;oBACL,EAAE,EAAE,GAAG,EAAE,CAAC,mBAAmB,GAAG,EAAE;oBAClC,OAAO,EAAE,QAAQ;iBAClB,CAAC;aACH;iBAAM,IAAI,QAAQ,CAAC,EAAE,EAAE;gBACtB,iCAAiC;gBACjC,OAAO,eAAe,CAAE,QAA4B,CAAC,EAAG,EAAE;oBACxD,OAAO,EAAE,QAAQ;oBACjB,QAAQ;oBACR,GAAG;iBACJ,CAAC,CAAC;aACJ;iBAAM;gBACL,yDAAyD;gBACzD,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpC,MAAM,cAAc,GAAI,QAA+B,CAAC,EAAE,CAAC,CAAC;gBAC5D,MAAM,OAAO,GAAG,EAAE,GAAG,cAAc,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;gBACnE,OAAO,eAAe,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;aACjE;QACH,CAAC,CAAC,CACH,CAAC;KACH;IACD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;AAC5C,CAAC;AA7CD,4CA6CC;AAEM,KAAK,UAAU,eAAe,CACnC,YAAoB,EACpB,UAII,EAAE;IAEN,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAChD,MAAM,eAAe,GAAG;QACtB,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG;KACJ,CAAC;IACF,IAAI,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QACtC,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,iBAAI,CAAC,IAAI,CAAC,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAoB,CAAC;QACpF,IAAA,wBAAS,EAAC,WAAW,EAAE,mBAAmB,QAAQ,eAAe,CAAC,CAAC;QACnE,IAAA,wBAAS,EAAC,WAAW,CAAC,EAAE,EAAE,mBAAmB,QAAQ,kBAAkB,CAAC,CAAC;QACzE,gBAAM,CAAC,IAAI,CAAC,mBAAmB,WAAW,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC,CAAC;QAClE,OAAO,eAAe,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;KAC9E;SAAM,IAAI,YAAY,KAAK,MAAM,EAAE;QAClC,OAAO;YACL,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM;YAChB,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC;SAC5C,CAAC;KACH;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE;QAC5C,qBAAqB;QACrB,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,IAAI,2CAAwB,CAAC,UAAU,EAAE;YAC9C,EAAE,EAAE,QAAQ,UAAU,EAAE;YACxB,MAAM,EAAE,EAAE,QAAQ,EAAE;SACrB,CAAC,CAAC;KACJ;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;QAC9C,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,IAAI,iCAAc,CAAC,UAAU,EAAE;YACpC,EAAE,EAAE,UAAU,UAAU,EAAE;YAC1B,MAAM,EAAE,EAAE,QAAQ,EAAE;SACrB,CAAC,CAAC;KACJ;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;QAC9C,qBAAqB;QACrB,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5C,IAAI,SAAS,KAAK,MAAM,EAAE;YACxB,OAAO,IAAI,qCAA4B,CAAC,SAAS,IAAI,eAAe,EAAE,eAAe,CAAC,CAAC;SACxF;aAAM,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,YAAY,EAAE;YAClE,OAAO,IAAI,gCAAuB,CAAC,SAAS,IAAI,wBAAwB,EAAE,eAAe,CAAC,CAAC;SAC5F;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE;YACrC,OAAO,IAAI,iCAAwB,CAAC,SAAS,IAAI,kBAAkB,EAAE,eAAe,CAAC,CAAC;SACvF;aAAM,IAAI,qCAA4B,CAAC,uBAAuB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACnF,OAAO,IAAI,qCAA4B,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SACrE;aAAM,IAAI,iCAAwB,CAAC,6BAA6B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACrF,OAAO,IAAI,iCAAwB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SACjE;aAAM,IAAI,SAAS,KAAK,WAAW,EAAE;YACpC,OAAO,IAAI,gCAAuB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAChE;aAAM,IAAI,SAAS,KAAK,OAAO,EAAE;YAChC,OAAO,IAAI,4BAAmB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAA;SAC3D;aAAM;YACL,MAAM,IAAI,KAAK,CACb,8BAA8B,SAAS,2JAA2J,CACnM,CAAC;SACH;KACF;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,EAAE;QACnD,2BAA2B;QAC3B,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAEjC,IAAI,SAAS,KAAK,MAAM,EAAE;YACxB,OAAO,IAAI,+CAAiC,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;SAC/E;aAAM,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,YAAY,EAAE;YAClE,OAAO,IAAI,0CAA4B,CACrC,cAAc,IAAI,wBAAwB,EAC1C,eAAe,CAChB,CAAC;SACH;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE;YACrC,OAAO,IAAI,2CAA6B,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;SAC3E;aAAM;YACL,MAAM,IAAI,KAAK,CACb,oCAAoC,SAAS,0GAA0G,CACxJ,CAAC;SACH;KACF;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE;QACjD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,SAAS,KAAK,YAAY,EAAE;YAC9B,OAAO,IAAI,uCAA2B,CAAC,SAAS,IAAI,kBAAkB,EAAE,eAAe,CAAC,CAAC;SAC1F;aAAM,IAAI,uCAA2B,CAAC,2BAA2B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACtF,OAAO,IAAI,uCAA2B,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SACpE;aAAM;YACL,MAAM,IAAI,KAAK,CACb,iCAAiC,SAAS,yEAAyE,CACpH,CAAC;SACH;KACF;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE;QAC/C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5C,IAAI,SAAS,KAAK,YAAY,EAAE;YAC9B,OAAO,IAAI,sCAA4B,CAAC,SAAS,IAAI,qBAAqB,EAAE,eAAe,CAAC,CAAC;SAC9F;aAAM,IAAI,sCAA4B,CAAC,6BAA6B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YACzF,OAAO,IAAI,sCAA4B,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SACrE;aAAM;YACL,MAAM,IAAI,KAAK,CACb,sCAAsC,SAAS,uEAAuE,CACvH,CAAC;SACH;KACF;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,cAAc,CAAC,IAAI,YAAY,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE;QACtF,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACrB,MAAM,IAAI,KAAK,CACb,sCAAsC,YAAY,6HAA6H,CAChL,CAAC;SACH;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,oBAAoB,EAAE;YACtC,OAAO,IAAI,kDAAoC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC7E;aAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,qBAAqB,EAAE;YAC9C,OAAO,IAAI,mDAAqC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC9E;aAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,iBAAiB,EAAE;YAC1C,OAAO,IAAI,+CAAiC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC1E;aAAM,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,qBAAqB,EAAE;YAC9C,OAAO,IAAI,mDAAqC,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC9E;aAAM;YACL,MAAM,IAAI,KAAK,CACb,sCAAsC,YAAY,6HAA6H,CAChL,CAAC;SACH;KACF;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC,EAAE;QACjD,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5C,OAAO,IAAI,6BAAiB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;KAC1D;IAED,IAAI,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE;QACvC,MAAM,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC7D,OAAO,IAAI,yBAAe,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;KACzD;SAAM,IAAI,YAAY,KAAK,OAAO,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACxE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,IAAI,qBAAa,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;KACtD;SAAM,IACL,YAAY,CAAC,UAAU,CAAC,oBAAoB,CAAC;QAC7C,YAAY,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAC5C;QACA,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,IAAI,gCAAuB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;KAChE;SAAM,IAAI,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,SAAS,KAAK,MAAM,EAAE;YACxB,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,OAAO,IAAI,2BAAkB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC3D;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE;YACrC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,OAAO,IAAI,iCAAwB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SACjE;aAAM;YACL,iCAAiC;YACjC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,OAAO,IAAI,iCAAwB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SACjE;KACF;SAAM,IAAI,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;QAC3C,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,IAAI,uBAAgB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;KACzD;SAAM,IAAI,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QAC5C,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,OAAO,IAAI,2BAAkB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;KAC3D;SAAM,IAAI,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,EAAE;QAC/C,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,SAAS,KAAK,MAAM,EAAE;YACxB,OAAO,IAAI,6BAAmB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC5D;aAAM,IAAI,SAAS,KAAK,YAAY,EAAE;YACrC,OAAO,IAAI,mCAAyB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAClE;aAAM,IAAI,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,YAAY,EAAE;YAClE,OAAO,IAAI,kCAAwB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SACjE;aAAM;YACL,OAAO,IAAI,6BAAmB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC5D;KACF;IAED,qBAAqB;IACrB,MAAM,iBAAiB,GAAG,CAAC,yBAAa,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,uCAAC,CAAC,CAAC,OAAO,CAAC;IACzF,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACxC,CAAC;AA9LD,0CA8LC;AAED,kBAAe;IACb,wBAAwB,EAAxB,iCAAwB;IACxB,4BAA4B,EAA5B,qCAA4B;IAC5B,uBAAuB,EAAvB,gCAAuB;IACvB,2BAA2B,EAA3B,uCAA2B;IAC3B,iBAAiB,EAAjB,6BAAiB;IACjB,yBAAyB,EAAzB,mCAAyB;IACzB,mBAAmB,EAAnB,6BAAmB;IACnB,eAAe;CAChB,CAAC"}