@tuned-tensor/local 0.2.7 → 0.2.9

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 (60) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/README.md +147 -2
  3. package/dist/artifacts.d.ts +92 -0
  4. package/dist/artifacts.js +591 -3
  5. package/dist/artifacts.js.map +1 -1
  6. package/dist/contracts.d.ts +5 -2
  7. package/dist/contracts.js +15 -10
  8. package/dist/contracts.js.map +1 -1
  9. package/dist/dataset.d.ts +3 -0
  10. package/dist/dataset.js +87 -5
  11. package/dist/dataset.js.map +1 -1
  12. package/dist/doctor.d.ts +13 -2
  13. package/dist/doctor.js +372 -49
  14. package/dist/doctor.js.map +1 -1
  15. package/dist/evaluation.d.ts +15 -0
  16. package/dist/evaluation.js +120 -16
  17. package/dist/evaluation.js.map +1 -1
  18. package/dist/huggingface-cache.d.ts +26 -0
  19. package/dist/huggingface-cache.js +68 -0
  20. package/dist/huggingface-cache.js.map +1 -0
  21. package/dist/index.d.ts +3 -0
  22. package/dist/index.js +742 -76
  23. package/dist/index.js.map +1 -1
  24. package/dist/local-project.d.ts +11 -0
  25. package/dist/local-project.js +96 -3
  26. package/dist/local-project.js.map +1 -1
  27. package/dist/model-registry.d.ts +21 -0
  28. package/dist/model-registry.js +198 -0
  29. package/dist/model-registry.js.map +1 -1
  30. package/dist/model-server.d.ts +32 -0
  31. package/dist/model-server.js +158 -0
  32. package/dist/model-server.js.map +1 -0
  33. package/dist/orchestrator.d.ts +3 -0
  34. package/dist/orchestrator.js +1001 -142
  35. package/dist/orchestrator.js.map +1 -1
  36. package/dist/prefetch.d.ts +13 -0
  37. package/dist/prefetch.js +107 -19
  38. package/dist/prefetch.js.map +1 -1
  39. package/dist/process-runner.d.ts +7 -0
  40. package/dist/process-runner.js +171 -16
  41. package/dist/process-runner.js.map +1 -1
  42. package/dist/process-training.d.ts +5 -1
  43. package/dist/process-training.js +32 -16
  44. package/dist/process-training.js.map +1 -1
  45. package/dist/run-reporter.d.ts +2 -0
  46. package/dist/run-reporter.js +10 -0
  47. package/dist/run-reporter.js.map +1 -1
  48. package/dist/store.d.ts +16 -2
  49. package/dist/store.js +189 -24
  50. package/dist/store.js.map +1 -1
  51. package/docs/architecture.md +32 -0
  52. package/docs/local-workflow-remediation-2026-07-13.md +130 -0
  53. package/docs/local-workflow-ux-review-2026-07-13.md +458 -0
  54. package/package.json +4 -2
  55. package/training/local-runner/src/evaluate.py +80 -20
  56. package/training/local-runner/src/prefetch.py +107 -8
  57. package/training/local-runner/src/serve.py +329 -0
  58. package/training/local-runner/src/train.py +47 -22
  59. package/training/local-runner/src/train_dpo.py +41 -25
  60. package/training/local-runner/uv.lock +2401 -0
@@ -1,6 +1,6 @@
1
1
  import { mkdir, readFile, writeFile } from "node:fs/promises";
2
2
  import { createHash } from "node:crypto";
3
- import { dirname, join, resolve } from "node:path";
3
+ import { dirname, isAbsolute, join, resolve } from "node:path";
4
4
  import { performance } from "node:perf_hooks";
5
5
  import { evalReportSchema, } from "./contracts.js";
6
6
  import { writeJson, fileUri } from "./artifacts.js";
@@ -8,6 +8,7 @@ import { resolveTrainingModel } from "./model-registry.js";
8
8
  import { openRouterChat } from "./openrouter.js";
9
9
  import { buildEntrypointCommand, runJsonStdInCommand, runLoggedProcess } from "./process-runner.js";
10
10
  import { defaultLocalHome } from "./store.js";
11
+ import { minimalMachineLearningEnvironment, withHuggingFaceCacheEnvironment } from "./huggingface-cache.js";
11
12
  function normalize(value) {
12
13
  return value.trim().replace(/\s+/g, " ").toLowerCase();
13
14
  }
@@ -235,6 +236,7 @@ async function runInferenceCommand(args) {
235
236
  timeoutMs: args.timeoutMs,
236
237
  timeoutMessage: `Inference command timed out after ${args.timeoutMs}ms`,
237
238
  errorPrefix: "Inference command",
239
+ shouldCancel: args.shouldCancel,
238
240
  });
239
241
  }
240
242
  function buildBatchInferenceCommand(config, inputPath, outputPath) {
@@ -264,6 +266,7 @@ async function runBatchInference(args) {
264
266
  kind: args.kind,
265
267
  model_id: args.modelId,
266
268
  base_model: args.baseModelId,
269
+ base_model_revision: args.baseModelRevision,
267
270
  model_loader: modelLoader,
268
271
  adapter_path: fileUriToPath(args.adapterPath),
269
272
  system: args.system,
@@ -280,6 +283,18 @@ async function runBatchInference(args) {
280
283
  }, null, 2)}\n`, "utf8");
281
284
  const entrypoint = buildBatchInferenceCommand(args.config, inputPath, outputPath);
282
285
  const command = entrypoint.displayCommand;
286
+ const inheritedEnv = provider === "transformers"
287
+ ? minimalMachineLearningEnvironment(process.env, {
288
+ includeHfToken: (() => {
289
+ try {
290
+ return resolveTrainingModel(args.baseModelId).requiresHfToken;
291
+ }
292
+ catch {
293
+ return false;
294
+ }
295
+ })(),
296
+ })
297
+ : process.env;
283
298
  await args.reporter?.onEvent?.({
284
299
  stage: `evaluating_${args.kind}`,
285
300
  status: "running",
@@ -295,15 +310,16 @@ async function runBatchInference(args) {
295
310
  command: entrypoint.command,
296
311
  commandArgs: entrypoint.commandArgs,
297
312
  cwd: args.config.evaluation.inference.cwd,
298
- env: {
299
- ...process.env,
313
+ env: withHuggingFaceCacheEnvironment({
314
+ ...inheritedEnv,
300
315
  ...args.config.evaluation.inference.env,
301
- },
316
+ }, args.config.paths.modelCache),
302
317
  logPath,
303
318
  timeoutMs: args.config.evaluation.timeoutMs,
304
319
  timeoutMessage: `${label} inference timed out after ${args.config.evaluation.timeoutMs}ms`,
305
320
  reporter: args.reporter,
306
321
  stage: `evaluating_${args.kind}`,
322
+ shouldCancel: args.shouldCancel,
307
323
  });
308
324
  if (result.exitCode !== 0) {
309
325
  throw new Error(`${label} inference exited ${result.exitCode}: ${result.stderr.slice(0, 1000)}`);
@@ -374,8 +390,35 @@ async function judgeWithOpenRouter(args) {
374
390
  model: result.model ?? args.config.llm.model,
375
391
  };
376
392
  }
377
- function canUseOpenRouterJudge(config) {
378
- return Boolean(config.llm && process.env[config.llm.apiKeyEnv]);
393
+ export function evaluationJudgeAvailability(config) {
394
+ if (!config.llm) {
395
+ return {
396
+ available: false,
397
+ reason: "the llm OpenRouter configuration is missing",
398
+ };
399
+ }
400
+ if (!process.env[config.llm.apiKeyEnv]?.trim()) {
401
+ return {
402
+ available: false,
403
+ reason: `${config.llm.apiKeyEnv} is not set`,
404
+ };
405
+ }
406
+ return { available: true };
407
+ }
408
+ /**
409
+ * Fail before model inference when judge scoring cannot run. Exact-match
410
+ * fallback is allowed only when the user opted into it explicitly in config.
411
+ */
412
+ export function assertEvaluationScoringReady(config, scoringMode = config.evaluation.scoring.mode) {
413
+ if (scoringMode !== "llm_judge")
414
+ return { available: false };
415
+ const availability = evaluationJudgeAvailability(config);
416
+ if (!availability.available && config.evaluation.scoring.fallback !== "exact_match") {
417
+ throw new Error(`evaluation.scoring.mode=llm_judge cannot start because ${availability.reason}. `
418
+ + "Configure llm and its API key, or explicitly set "
419
+ + "evaluation.scoring.fallback=exact_match.");
420
+ }
421
+ return availability;
379
422
  }
380
423
  const FACTUAL_REASONING = /incorrect|error|misstate|mis-state|contradict|wrong|inaccurate|not supported|misattribut|invent|fabricat|halluc/i;
381
424
  const OMISSION_REASONING = /omit|missing|leaves out|leave out|lacks|does not (?:mention|include|cover)|fails to (?:mention|include|cover)/i;
@@ -411,10 +454,13 @@ export function classifyJudgeReasoning(reasoning, scoredBy) {
411
454
  * or evaluator changes invalidate old entries.
412
455
  */
413
456
  export function baselineCacheKey(args) {
457
+ const judgeAvailability = evaluationJudgeAvailability(args.config);
414
458
  const payload = {
415
- v: 1,
459
+ v: 3,
416
460
  package_version: args.packageVersion,
417
461
  model_id: args.modelId,
462
+ base_model_revision: args.baseModelRevision ?? null,
463
+ source_fingerprint: args.sourceFingerprint ?? null,
418
464
  system: args.system,
419
465
  examples: args.examples.map((example) => ({
420
466
  input: example.input,
@@ -426,12 +472,47 @@ export function baselineCacheKey(args) {
426
472
  inference: args.config.evaluation.inference,
427
473
  scoring: {
428
474
  mode: args.config.evaluation.scoring.mode,
475
+ fallback: args.config.evaluation.scoring.fallback,
429
476
  fields: args.config.evaluation.scoring.fields ?? null,
430
- judgeModel: args.config.llm?.model ?? null,
477
+ judge: args.config.llm ?? null,
478
+ judge_available: judgeAvailability.available,
431
479
  },
432
480
  };
433
481
  return createHash("sha256").update(JSON.stringify(payload)).digest("hex");
434
482
  }
483
+ function clearlyLocalReference(value) {
484
+ return value.startsWith("file://")
485
+ || isAbsolute(value)
486
+ || value.startsWith("./")
487
+ || value.startsWith("../")
488
+ || value === "~"
489
+ || value.startsWith("~/");
490
+ }
491
+ /**
492
+ * A cache hit is safe only when every mutable input has a content identity.
493
+ * Remote model branches and remote image URLs may change while retaining the
494
+ * same string, so those evaluations deliberately bypass the shared cache.
495
+ */
496
+ function baselineInputsAreCacheStable(args) {
497
+ const baseModel = args.baseModelId ?? args.modelId;
498
+ const localBase = Boolean(args.config.paths.baseModel) || clearlyLocalReference(baseModel);
499
+ if (localBase ? !args.sourceFingerprint : !args.baseModelRevision)
500
+ return false;
501
+ if (args.adapterPath && !args.sourceFingerprint)
502
+ return false;
503
+ for (const example of args.examples) {
504
+ for (const asset of example.input_assets ?? []) {
505
+ const reference = asset.image ?? asset.data_uri ?? asset.uri ?? asset.path;
506
+ if (!reference || reference.startsWith("data:"))
507
+ continue;
508
+ if (/^[a-z][a-z0-9+.-]*:/i.test(reference) && !reference.startsWith("file://"))
509
+ return false;
510
+ if (!args.sourceFingerprint)
511
+ return false;
512
+ }
513
+ }
514
+ return true;
515
+ }
435
516
  function baselineCachePath(config, key) {
436
517
  const root = config.storeRoot ? resolve(config.storeRoot) : defaultLocalHome();
437
518
  return join(root, "cache", "baseline-evals", `${key}.json`);
@@ -483,11 +564,8 @@ async function scoreGeneratedEvalResults(args) {
483
564
  const results = [];
484
565
  const jsonFieldScores = [];
485
566
  let judgeModelId = null;
486
- const shouldJudge = args.scoringMode === "llm_judge" && canUseOpenRouterJudge(args.config);
487
- if (args.scoringMode === "llm_judge" && !shouldJudge && args.config.evaluation.scoring.fallback === "fail") {
488
- const keyName = args.config.llm?.apiKeyEnv ?? "OPENROUTER_API_KEY";
489
- throw new Error(`evaluation.scoring.mode=llm_judge requires ${keyName} or scoring.fallback=exact_match`);
490
- }
567
+ const judgeAvailability = assertEvaluationScoringReady(args.config, args.scoringMode);
568
+ const shouldJudge = args.scoringMode === "llm_judge" && judgeAvailability.available;
491
569
  for (const [index, generated] of args.generated.entries()) {
492
570
  const exactScore = scoreActual(generated.expected, generated.actual);
493
571
  if (shouldJudge && index === 0) {
@@ -500,7 +578,16 @@ async function scoreGeneratedEvalResults(args) {
500
578
  }
501
579
  let judged = null;
502
580
  let judgeFellBack = false;
503
- if (shouldJudge) {
581
+ if (args.scoringMode === "llm_judge" && !shouldJudge) {
582
+ judgeFellBack = true;
583
+ judged = {
584
+ score: exactScore,
585
+ passed: exactScore === 1,
586
+ reasoning: `LLM judge unavailable (${judgeAvailability.reason}); scored by normalized exact match.`,
587
+ model: null,
588
+ };
589
+ }
590
+ else if (shouldJudge) {
504
591
  try {
505
592
  judged = await judgeWithOpenRouter({
506
593
  prompt: generated.prompt,
@@ -633,6 +720,7 @@ export async function evaluateExamples(args) {
633
720
  kind: args.kind,
634
721
  config: args.config,
635
722
  });
723
+ const judgeAvailability = assertEvaluationScoringReady(args.config, scoringMode);
636
724
  let generationConfig;
637
725
  // Baseline outputs and scores are fully determined by the cache key inputs,
638
726
  // so an unchanged baseline can reuse the previous report instead of paying
@@ -640,10 +728,22 @@ export async function evaluateExamples(args) {
640
728
  const cacheEligible = args.kind === "baseline"
641
729
  && args.config.evaluation.baselineCache
642
730
  && !args.config.dryRun
643
- && inferenceProvider === "transformers";
731
+ && inferenceProvider === "transformers"
732
+ && (scoringMode !== "llm_judge" || judgeAvailability.available)
733
+ && baselineInputsAreCacheStable({
734
+ modelId: args.modelId,
735
+ baseModelId: args.baseModelId,
736
+ baseModelRevision: args.baseModelRevision,
737
+ adapterPath: args.adapterPath,
738
+ sourceFingerprint: args.sourceFingerprint,
739
+ examples: selected,
740
+ config: args.config,
741
+ });
644
742
  const cacheKey = cacheEligible
645
743
  ? baselineCacheKey({
646
744
  modelId: args.modelId,
745
+ baseModelRevision: args.baseModelRevision,
746
+ sourceFingerprint: args.sourceFingerprint,
647
747
  system: args.system,
648
748
  examples: selected,
649
749
  config: args.config,
@@ -675,12 +775,14 @@ export async function evaluateExamples(args) {
675
775
  kind: args.kind,
676
776
  modelId: args.modelId,
677
777
  baseModelId: args.baseModelId ?? args.modelId,
778
+ baseModelRevision: args.baseModelRevision,
678
779
  adapterPath: args.adapterPath,
679
780
  examples: selected,
680
781
  system: args.system,
681
782
  config: args.config,
682
783
  outputPath: args.outputPath,
683
784
  reporter: args.reporter,
785
+ shouldCancel: args.shouldCancel,
684
786
  })
685
787
  : null;
686
788
  generationConfig = inferred?.generation_config;
@@ -694,6 +796,7 @@ export async function evaluateExamples(args) {
694
796
  system: args.system,
695
797
  expected: example.output,
696
798
  timeoutMs: args.config.evaluation.timeoutMs,
799
+ shouldCancel: args.shouldCancel,
697
800
  })
698
801
  : undefined;
699
802
  const inferredResult = inferred?.results[index];
@@ -727,7 +830,8 @@ export async function evaluateExamples(args) {
727
830
  if (cacheKey) {
728
831
  // Do not cache reports with fallback-scored examples: a transient judge
729
832
  // failure would otherwise be replayed into every future run.
730
- if ((report.fallback_scored_count ?? 0) === 0) {
833
+ if ((report.fallback_scored_count ?? 0) === 0
834
+ && (scoringMode !== "llm_judge" || report.judge_scored_count === report.total)) {
731
835
  await writeJson(baselineCachePath(args.config, cacheKey), { ...report, cache_key: cacheKey });
732
836
  }
733
837
  }
@@ -1 +1 @@
1
- {"version":3,"file":"evaluation.js","sourceRoot":"","sources":["../src/evaluation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluation.js","sourceRoot":"","sources":["../src/evaluation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EACL,gBAAgB,GAMjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEpG,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,iCAAiC,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAE5G,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB,EAAE,MAAc;IACnD,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,QAAgB,EAAE,MAAc;IACtD,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAY,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IAC9F,MAAM,cAAc,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO,cAAc,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,KAAK,IAAI,cAAc;QAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,CAAC;YACb,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAC5B,MAAM,SAAS,GAAG,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC;IAChD,MAAM,MAAM,GAAG,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC;IAC/C,OAAO,CAAC,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,IAAI,IAAI,GAAG,UAAU,CAAC;IACtB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC;IACvB,OAAO,GAAG,EAAE;QACV,KAAK,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;QACrD,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/C,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,UAAU,CAAC;IAC/C,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAI,QAAa,EAAE,KAAa,EAAE,IAAY;IAC1E,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,KAAK,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACrG,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAa,EACb,IAAY,EACZ,YAAY,GAAG,GAAG;IAElB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACjE,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,QAAQ,CAAC,MAAM,GAAG,CAAC,EACnB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC,CACxD,CAAC;IACF,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAChC,KAAK,IAAI,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC;IAC/D,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAChE,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACjE,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAChD,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC;QAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAY,CAAC;YAChD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnE,OAAO,MAAiC,CAAC;YAC3C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0BAA0B;QAC5B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/E,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC;aAC7C,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aACpD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CACzD,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,IAAa,EAAE,KAAc;IACpD,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;AAChG,CAAC;AAYD,SAAS,eAAe,CAAC,QAAgB,EAAE,MAAc,EAAE,gBAA2B;IACpF,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,UAAU,GAAG,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,UAAU,KAAK,CAAC;YACxB,SAAS,EAAE,4EAA4E;YACvF,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC;YACpC,WAAW,EAAE,KAAK;YAClB,MAAM,EAAE,EAAE;YACV,YAAY,EAAE,EAAE;SACjB,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,gBAAgB,EAAE,MAAM;QACrC,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;WAClC,YAAY,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;WACzC,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACnE,MAAM,YAAY,GAA4B,EAAE,CAAC;IACjD,MAAM,qBAAqB,GAAa,EAAE,CAAC;IAE3C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,wEAAwE;QACxE,+CAA+C;QAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;YAC/D,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YAC5B,SAAS;QACX,CAAC;QACD,YAAY,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACrG,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACnE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC;IAC9D,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,GAAG,CAAC;QAClD,CAAC,CAAC,wEAAwE,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAC7G,CAAC,CAAC,EAAE,CAAC;IACP,OAAO;QACL,KAAK;QACL,MAAM;QACN,SAAS,EAAE,CAAC,UAAU;YACpB,CAAC,CAAC,qBAAqB,OAAO,IAAI,MAAM,CAAC,MAAM,6BAA6B;YAC5E,CAAC,CAAC,qCAAqC,CAAC,GAAG,WAAW;QACxD,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC;QACpC,WAAW;QACX,MAAM;QACN,YAAY;KACb,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,MAAwB,EAAE,KAAa;IACxE,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACzD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5E,MAAM,cAAc,GAAyE,EAAE,CAAC;IAChG,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3E,cAAc,CAAC,KAAK,CAAC,GAAG;YACtB,OAAO;YACP,KAAK,EAAE,MAAM,CAAC,MAAM;YACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SAC1D,CAAC;IACJ,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC;IAC9E,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;IAC5E,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IAC1E,OAAO;QACL,MAAM;QACN,gBAAgB,EAAE,cAAc;QAChC,eAAe,EAAE,cAAc,GAAG,KAAK;QACvC,kBAAkB,EAAE,gBAAgB;QACpC,iBAAiB,EAAE,gBAAgB,GAAG,KAAK;QAC3C,sBAAsB,EAAE,mBAAmB;QAC3C,qBAAqB,EAAE,mBAAmB,GAAG,KAAK;QAClD,cAAc;KACf,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,OAAO,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7E,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,IAOlC;IACC,OAAO,mBAAmB,CAAC;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE;YACP,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB;QACD,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,cAAc,EAAE,qCAAqC,IAAI,CAAC,SAAS,IAAI;QACvE,WAAW,EAAE,mBAAmB;QAChC,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC,CAAC,CAAC;AACL,CAAC;AAgBD,SAAS,0BAA0B,CAAC,MAAyB,EAAE,SAAiB,EAAE,UAAkB;IAClG,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;QAC7D,OAAO,sBAAsB,CAC3B,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EACtD,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,CAC9D,CAAC;IACJ,CAAC;IACD,OAAO,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE;QACzD,aAAa,EAAE,uCAAuC;QACtD,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,CAAC;KAC1D,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAYhC;IACC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC;IAClH,MAAM,KAAK,GAAG,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC;IAC9E,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,UAAU,uBAAuB,CAAC;IAC5D,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,UAAU,wBAAwB,CAAC;IAC9D,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,UAAU,gBAAgB,CAAC;IACnD,MAAM,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,IAAI,WAA+B,CAAC;IACpC,IAAI,CAAC;QACH,WAAW,GAAG,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,WAAW,GAAG,SAAS,CAAC;IAC1B,CAAC;IACD,MAAM,SAAS,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3C,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,OAAO;QACtB,UAAU,EAAE,IAAI,CAAC,WAAW;QAC5B,mBAAmB,EAAE,IAAI,CAAC,iBAAiB;QAC3C,YAAY,EAAE,WAAW;QACzB,YAAY,EAAE,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC;QAC7C,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7F,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,eAAe;QACnE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM;QAC/C,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,kBAAkB;QACzE,UAAU,EAAE;YACV,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,YAAY;YAC7D,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,WAAW;YACzD,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI;SAC7C;KACF,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEzB,MAAM,UAAU,GAAG,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAClF,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,CAAC;IAC1C,MAAM,YAAY,GAAG,QAAQ,KAAK,cAAc;QAC9C,CAAC,CAAC,iCAAiC,CAAC,OAAO,CAAC,GAAG,EAAE;YAC7C,cAAc,EAAE,CAAC,GAAG,EAAE;gBACpB,IAAI,CAAC;oBACH,OAAO,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,eAAe,CAAC;gBAChE,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC,CAAC,EAAE;SACL,CAAC;QACJ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IAChB,MAAM,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QAC7B,KAAK,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE;QAChC,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,YAAY,IAAI,CAAC,IAAI,IAAI,KAAK,aAAa;QACpD,OAAO,EAAE;YACP,QAAQ,EAAE,IAAI,CAAC,OAAO;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC9B,OAAO;YACP,QAAQ,EAAE,OAAO;SAClB;KACF,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;QACpC,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,WAAW,EAAE,UAAU,CAAC,WAAW;QACnC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG;QACzC,GAAG,EAAE,+BAA+B,CAAC;YACnC,GAAG,YAAY;YACf,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG;SACxC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC;QAChC,OAAO;QACP,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS;QAC3C,cAAc,EAAE,GAAG,KAAK,8BAA8B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,IAAI;QAC1F,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE;QAChC,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,qBAAqB,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACnG,CAAC;IACD,MAAM,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;QAC7B,KAAK,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE;QAChC,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,YAAY,IAAI,CAAC,IAAI,IAAI,KAAK,aAAa;QACpD,OAAO,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE;KACxD,CAAC,CAAC;IACH,OAAO;QACL,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAA2C;QAC3F,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAKlC;IACC,OAAO;QACL;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,8FAA8F;kBACnG,qGAAqG;kBACrG,qGAAqG;kBACrG,mGAAmG;kBACnG,oGAAoG;kBACpG,sFAAsF;SAC3F;QACD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;gBACtB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9E,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,IAMlC;IACC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;QAC5D,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK;QAC5B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS;QACpC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO;QAChC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO;QAChC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS;KAC5C,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAsE,CAAC;IACtH,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/F,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;QAC5C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC,CAAC;IACN,OAAO;QACL,KAAK;QACL,MAAM,EAAE,OAAO,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;QACxE,SAAS,EAAE,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,yCAAyC;QAC9G,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK;KAC7C,CAAC;AACJ,CAAC;AAOD,MAAM,UAAU,2BAA2B,CAAC,MAAyB;IACnE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,6CAA6C;SACtD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC;QAC/C,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,aAAa;SAC7C,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAC1C,MAAyB,EACzB,cAA2D,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI;IAEzF,IAAI,WAAW,KAAK,WAAW;QAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC7D,MAAM,YAAY,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,YAAY,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;QACpF,MAAM,IAAI,KAAK,CACb,0DAA0D,YAAY,CAAC,MAAM,IAAI;cAC/E,mDAAmD;cACnD,0CAA0C,CAC7C,CAAC;IACJ,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAID,MAAM,iBAAiB,GAAG,kHAAkH,CAAC;AAC7I,MAAM,kBAAkB,GAAG,gHAAgH,CAAC;AAC5I,MAAM,eAAe,GAAG,8EAA8E,CAAC;AAEvG;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAwB,EAAE,QAAiB;IAChF,IAAI,QAAQ,KAAK,sBAAsB;QAAE,OAAO,UAAU,CAAC;IAC3D,IAAI,CAAC,SAAS;QAAE,OAAO,OAAO,CAAC;IAC/B,IAAI,SAAS,CAAC,UAAU,CAAC,kBAAkB,CAAC;QAAE,OAAO,UAAU,CAAC;IAChE,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IACxD,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,UAAU,CAAC;IAC1D,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,OAAO,CAAC;IACpD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAQhC;IACC,MAAM,iBAAiB,GAAG,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnE,MAAM,OAAO,GAAG;QACd,CAAC,EAAE,CAAC;QACJ,eAAe,EAAE,IAAI,CAAC,cAAc;QACpC,QAAQ,EAAE,IAAI,CAAC,OAAO;QACtB,mBAAmB,EAAE,IAAI,CAAC,iBAAiB,IAAI,IAAI;QACnD,kBAAkB,EAAE,IAAI,CAAC,iBAAiB,IAAI,IAAI;QAClD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACxC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,MAAM,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;SACrC,CAAC,CAAC;QACH,wEAAwE;QACxE,uEAAuE;QACvE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS;QAC3C,OAAO,EAAE;YACP,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI;YACzC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ;YACjD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI;YACrD,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI;YAC9B,eAAe,EAAE,iBAAiB,CAAC,SAAS;SAC7C;KACF,CAAC;IACF,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa;IAC1C,OAAO,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC;WAC7B,UAAU,CAAC,KAAK,CAAC;WACjB,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;WACtB,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;WACvB,KAAK,KAAK,GAAG;WACb,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACH,SAAS,4BAA4B,CAAC,IAQrC;IACC,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC;IACnD,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC3F,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAChF,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAE9D,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;YAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC;YAC3E,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,SAAS;YAC1D,IAAI,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC7F,IAAI,CAAC,IAAI,CAAC,iBAAiB;gBAAE,OAAO,KAAK,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAyB,EAAE,GAAW;IAC/D,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC/E,OAAO,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,IAAY;IAC3C,IAAI,CAAC;QACH,OAAO,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,IAAI,oBAAoB,GAAkB,IAAI,CAAC;AAE/C,KAAK,UAAU,cAAc;IAC3B,IAAI,oBAAoB,KAAK,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;YAChF,oBAAoB,GAAG,MAAM,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2B,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;QACjG,CAAC;QAAC,MAAM,CAAC;YACP,oBAAoB,GAAG,SAAS,CAAC;QACnC,CAAC;IACH,CAAC;IACD,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,SAAS,wBAAwB,CAAC,IAGjC;IAKC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU;QACtC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe;QACxC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC;IAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC;IAC3D,MAAM,iBAAiB,GACrB,IAAI,CAAC,MAAM,CAAC,MAAM;QAChB,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,QAAQ,KAAK,SAAS;YACtB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,QAAQ,CAAC;IACjB,IAAI,iBAAiB,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,6DAA6D,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC;IACnG,CAAC;IACD,IAAI,iBAAiB,KAAK,eAAe,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QACvF,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC;IACvG,CAAC;IACD,MAAM,qBAAqB,GACzB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;IACtC,MAAM,WAAW,GACf,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,iBAAiB,KAAK,MAAM,CAAC,IAAI,qBAAqB,KAAK,WAAW;QAC3F,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,qBAAqB,CAAC;IAC5B,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,CAAC;AACrD,CAAC;AASD,KAAK,UAAU,yBAAyB,CAAC,IAexC;IACC,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,MAAM,eAAe,GAAqB,EAAE,CAAC;IAC7C,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,MAAM,iBAAiB,GAAG,4BAA4B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACtF,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,KAAK,WAAW,IAAI,iBAAiB,CAAC,SAAS,CAAC;IAEpF,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1D,MAAM,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QACrE,IAAI,WAAW,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;gBAC7B,KAAK,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE;gBAChC,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,WAAW,IAAI,CAAC,IAAI,iCAAiC;gBAC9D,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;aAC5E,CAAC,CAAC;QACL,CAAC;QACD,IAAI,MAAM,GAAuF,IAAI,CAAC;QACtG,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,IAAI,CAAC,WAAW,KAAK,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC;YACrD,aAAa,GAAG,IAAI,CAAC;YACrB,MAAM,GAAG;gBACP,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE,UAAU,KAAK,CAAC;gBACxB,SAAS,EAAE,0BAA0B,iBAAiB,CAAC,MAAM,sCAAsC;gBACnG,KAAK,EAAE,IAAI;aACZ,CAAC;QACJ,CAAC;aAAM,IAAI,WAAW,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,mBAAmB,CAAC;oBACjC,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,QAAQ,EAAE,SAAS,CAAC,QAAQ;oBAC5B,MAAM,EAAE,SAAS,CAAC,MAAM;oBACxB,gBAAgB,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,SAAS;oBAClD,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM;oBAAE,MAAM,KAAK,CAAC;gBACpE,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvE,aAAa,GAAG,IAAI,CAAC;gBACrB,MAAM,GAAG;oBACP,KAAK,EAAE,UAAU;oBACjB,MAAM,EAAE,UAAU,KAAK,CAAC;oBACxB,SAAS,EAAE,qBAAqB,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,sCAAsC;oBAC3F,KAAK,EAAE,IAAI;iBACZ,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,MAAM,EAAE,KAAK;YAAE,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC;QAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,KAAK,aAAa;YACvD,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;YAC9F,CAAC,CAAC,IAAI,CAAC;QACT,IAAI,cAAc;YAAE,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,cAAc,EAAE,KAAK,IAAI,UAAU,CAAC;QACnE,MAAM,QAAQ,GAAmC,MAAM;YACrD,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,CAAC;YACxD,CAAC,CAAC,cAAc;gBACd,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,IAAI,CAAC,iBAAiB,KAAK,MAAM;oBACjC,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,aAAa,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC;YACX,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAC5B,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,MAAM,EAAE,MAAM,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,IAAI,KAAK,KAAK,CAAC;YAC/D,KAAK;YACL,SAAS,EAAE,MAAM,EAAE,SAAS,IAAI,cAAc,EAAE,SAAS,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,MAAM;gBAC7F,CAAC,CAAC,oEAAoE;gBACtE,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,WAAW;oBAChC,CAAC,CAAC,oEAAoE;oBACtE,CAAC,CAAC,mCAAmC,CAAC;YAC1C,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAC7B,MAAM,QAAQ,GAAG,KAAK,GAAG,CAAC;QACxB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,KAAK;QAChE,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,QAAQ,GAAG,KAAK,GAAG,CAAC;QACxB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,KAAK;QAC1D,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,cAAc,GAAG,KAAK,GAAG,CAAC;QAC9B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK;QAC9F,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC;QAC1B,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK;QAC3F,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,WAAW,CAAC,CAAC;IACjF,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,sBAAsB,CAAC,CAAC,MAAM,CAAC;IAC3G,MAAM,iBAAiB,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC;QAC9C,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM;QACjF,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC;QAC1B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;QACjF,CAAC,CAAC,CAAC,CAAC;IACN,MAAM,aAAa,GAAG,YAAY;QAChC,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,aAAa;YAClC,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS;gBACpC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,IAAI,CAAC,iBAAiB,KAAK,MAAM;oBACjC,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,aAAa,CAAC;IACxB,MAAM,MAAM,GAAe;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,OAAO;QACtB,KAAK;QACL,mBAAmB,EAAE,IAAI,CAAC,iBAAiB;QAC3C,kBAAkB,EAAE,KAAK;QACzB,cAAc,EAAE,IAAI,CAAC,iBAAiB,GAAG,KAAK;QAC9C,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,gBAAgB,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI;QAC7C,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,QAAQ;QACnB,gBAAgB,EAAE,cAAc;QAChC,YAAY,EAAE,UAAU;QACxB,cAAc,EAAE,UAAU;QAC1B,kBAAkB,EAAE,WAAW,CAAC,MAAM;QACtC,qBAAqB,EAAE,mBAAmB;QAC1C,oBAAoB,EAAE,iBAAiB;QACvC,OAAO;QACP,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;QACtC,cAAc,EAAE,aAAa;QAC7B,cAAc,EAAE,YAAY;QAC5B,kBAAkB,EAAE,IAAI,CAAC,iBAAiB;QAC1C,YAAY,EAAE,IAAI,CAAC,WAAW;QAC9B,kBAAkB,EAAE,IAAI,CAAC,WAAW,KAAK,aAAa;YACpD,CAAC,CAAC,yBAAyB,CAAC,eAAe,EAAE,KAAK,CAAC;YACnD,CAAC,CAAC,SAAS;QACb,iBAAiB,EAAE,IAAI,CAAC,gBAAgB;QACxC,OAAO,EAAE,IAAI,CAAC,MAAM;KACrB,CAAC;IACF,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACzC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAgBtC;IACC,2EAA2E;IAC3E,qDAAqD;IACrD,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW;WACjD,IAAI,CAAC,WAAW;WAChB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;IACrD,0EAA0E;IAC1E,2EAA2E;IAC3E,6EAA6E;IAC7E,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;IAC7E,MAAM,QAAQ,GAAG,SAAS;QACxB,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC;QACxD,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,wBAAwB,CAAC;QAC3E,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,4BAA4B,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACjF,IAAI,gBAAqD,CAAC;IAE1D,4EAA4E;IAC5E,2EAA2E;IAC3E,+DAA+D;IAC/D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,KAAK,UAAU;WACzC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa;WACpC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM;WACnB,iBAAiB,KAAK,cAAc;WACpC,CAAC,WAAW,KAAK,WAAW,IAAI,iBAAiB,CAAC,SAAS,CAAC;WAC5D,4BAA4B,CAAC;YAC9B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CAAC;IACL,MAAM,QAAQ,GAAG,aAAa;QAC5B,CAAC,CAAC,gBAAgB,CAAC;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,cAAc,EAAE,MAAM,cAAc,EAAE;SACvC,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;IACT,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACjF,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,MAAM,GAAe;gBACzB,GAAG,MAAM;gBACT,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,QAAQ;gBACnB,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;gBACtC,UAAU,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU;aAChD,CAAC;YACF,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACzC,MAAM,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC;gBAC7B,KAAK,EAAE,cAAc,IAAI,CAAC,IAAI,EAAE;gBAChC,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,8EAA8E;gBACvF,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE;aACzD,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,iBAAiB,KAAK,cAAc,IAAI,iBAAiB,KAAK,eAAe;QAC5F,CAAC,CAAC,MAAM,iBAAiB,CAAC;YACtB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO;YAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,QAAQ,EAAE,QAAQ;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;IACT,gBAAgB,GAAG,QAAQ,EAAE,iBAAiB,CAAC;IAE/C,MAAM,SAAS,GAA0B,EAAE,CAAC;IAC5C,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAClD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,aAAa,GAAG,iBAAiB,KAAK,SAAS,IAAI,OAAO;YAC9D,CAAC,CAAC,MAAM,mBAAmB,CAAC;gBACxB,OAAO;gBACP,MAAM,EAAE,OAAO,CAAC,KAAK;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,OAAO,CAAC,MAAM;gBACxB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS;gBAC3C,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,cAAc,GAAG,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,aAAa,IAAI,cAAc,EAAE,MAAM,IAAI,EAAE,CAAC;QAC7D,MAAM,SAAS,GAAG,cAAc,EAAE,UAAU,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC;QACrG,SAAS,CAAC,IAAI,CAAC;YACb,MAAM,EAAE,OAAO,CAAC,KAAK;YACrB,QAAQ,EAAE,OAAO,CAAC,MAAM;YACxB,MAAM;YACN,UAAU,EAAE,SAAS;SACtB,CAAC,CAAC;IACL,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC;QAC7C,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,SAAS;QACT,iBAAiB,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;QACvC,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW;QACX,iBAAiB;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,cAAc,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;QAC7C,gBAAgB;QAChB,MAAM,EAAE,iBAAiB,KAAK,cAAc,IAAI,iBAAiB,KAAK,eAAe;YACnF,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,UAAU,gBAAgB,CAAC;YAC7C,CAAC,CAAC,SAAS;QACb,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;IACH,IAAI,QAAQ,EAAE,CAAC;QACb,wEAAwE;QACxE,6DAA6D;QAC7D,IAAI,CAAC,MAAM,CAAC,qBAAqB,IAAI,CAAC,CAAC,KAAK,CAAC;eACxC,CAAC,WAAW,KAAK,WAAW,IAAI,MAAM,CAAC,kBAAkB,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YACjF,MAAM,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChG,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAMvC;IACC,MAAM,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;IAClE,MAAM,WAAW,GACf,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,qBAAqB,KAAK,WAAW;QACzD,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,qBAAqB,CAAC;IAC5B,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC;IACnE,OAAO,yBAAyB,CAAC;QAC/B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI;QACtB,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;QAC7B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC9C,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC,CAAC;QACH,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,mBAAmB;QAClD,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,WAAW;QACX,iBAAiB;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;QACjC,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,IAAI;QACpD,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB;QAC/C,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;QAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAoB,EAAE,SAAqB;IAC5E,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAC7B,mEAAmE;IACnE,sEAAsE;IACtE,MAAM,QAAQ,GAAuC;QACnD,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;QACR,QAAQ,EAAE,CAAC;QACX,KAAK,EAAE,CAAC;KACT,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1E,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,SAAS,EAAE,KAAK,IAAI,CAAC,CAAC;QACvC,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;YACxB,WAAW,IAAI,CAAC,CAAC;YACjB,MAAM,QAAQ,GAAG,sBAAsB,CAAC,SAAS,EAAE,SAAS,IAAI,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YAC5F,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACnD,iBAAiB,CAAC,IAAI,CAAC;gBACrB,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,IAAI,EAAE;gBAC7C,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,QAAQ;gBACnB,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;YAC/B,YAAY,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,MAAM,cAAc,GAAG,OAAO,QAAQ,CAAC,oBAAoB,KAAK,QAAQ;WACnE,OAAO,SAAS,CAAC,oBAAoB,KAAK,QAAQ;QACrD,CAAC,CAAC,SAAS,CAAC,oBAAoB,GAAG,QAAQ,CAAC,oBAAoB;QAChE,CAAC,CAAC,IAAI,CAAC;IACT,OAAO;QACL,eAAe,EAAE,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS;QACzD,eAAe,EAAE,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS;QACzD,sBAAsB,EAAE,SAAS,CAAC,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB;QAC9E,cAAc,EAAE,CAAC,SAAS,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,IAAI,CAAC,CAAC;QAC5E,0BAA0B,EAAE,cAAc;QAC1C,WAAW;QACX,YAAY;QACZ,mBAAmB,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QAC3D,kBAAkB,EAAE,iBAAiB;KACtC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * TT Local treats `paths.modelCache` as Hugging Face's `HF_HOME`. Model
3
+ * snapshots therefore live below `<modelCache>/hub`, matching the default
4
+ * layout used by huggingface_hub and Transformers.
5
+ */
6
+ export interface HuggingFaceCacheLayout {
7
+ hfHome: string;
8
+ hubCache: string;
9
+ }
10
+ /**
11
+ * Builds a deliberately small environment for bundled ML processes. Model
12
+ * repositories that require `trust_remote_code` execute Python supplied by a
13
+ * third party, so unrelated shell credentials must not be inherited. Values
14
+ * added explicitly through runner `env` configuration are applied afterward.
15
+ */
16
+ export declare function minimalMachineLearningEnvironment(env: NodeJS.ProcessEnv, options?: {
17
+ includeHfToken?: boolean;
18
+ }): NodeJS.ProcessEnv;
19
+ export declare function resolveHuggingFaceCacheLayout(modelCache: string): HuggingFaceCacheLayout;
20
+ /**
21
+ * Returns a child-process environment in which current Hugging Face cache
22
+ * variables agree and deprecated Transformers overrides are removed. Explicit
23
+ * TT Local configuration wins over inherited shell variables, avoiding a
24
+ * second cache tree during prefetch, training, evaluation, or serving.
25
+ */
26
+ export declare function withHuggingFaceCacheEnvironment(env: NodeJS.ProcessEnv, modelCache?: string): NodeJS.ProcessEnv;
@@ -0,0 +1,68 @@
1
+ import { homedir } from "node:os";
2
+ import { dirname, join, resolve } from "node:path";
3
+ /**
4
+ * Builds a deliberately small environment for bundled ML processes. Model
5
+ * repositories that require `trust_remote_code` execute Python supplied by a
6
+ * third party, so unrelated shell credentials must not be inherited. Values
7
+ * added explicitly through runner `env` configuration are applied afterward.
8
+ */
9
+ export function minimalMachineLearningEnvironment(env, options = {}) {
10
+ const exact = new Set([
11
+ "PATH", "HOME", "USER", "LOGNAME", "SHELL", "TMPDIR", "TEMP", "TMP",
12
+ "LANG", "LANGUAGE", "LD_LIBRARY_PATH", "DYLD_LIBRARY_PATH", "XDG_CACHE_HOME",
13
+ "SSL_CERT_FILE", "REQUESTS_CA_BUNDLE", "CURL_CA_BUNDLE",
14
+ "NO_PROXY", "no_proxy",
15
+ "UV_CACHE_DIR", "UV_PYTHON",
16
+ "HF_HOME", "HF_HUB_CACHE", "HUGGINGFACE_HUB_CACHE", "HF_ENDPOINT",
17
+ "HF_HUB_OFFLINE", "HF_HUB_DISABLE_TELEMETRY", "TRANSFORMERS_OFFLINE",
18
+ "HF_HUB_ENABLE_HF_TRANSFER", "PYTHONUTF8", "PYTHONIOENCODING",
19
+ ]);
20
+ const prefixes = [
21
+ "LC_", "CUDA_", "NVIDIA_", "NCCL_", "OMP_", "MKL_", "TORCH_",
22
+ "PYTORCH_", "TOKENIZERS_", "HF_XET_",
23
+ ];
24
+ const result = Object.fromEntries(Object.entries(env).filter(([key]) => exact.has(key) || prefixes.some((prefix) => key.startsWith(prefix))));
25
+ // PyTorch 2.13 can route ordinary CUDA operations through optional Triton
26
+ // JIT kernels. Triton's first-use helper compilation requires system Python
27
+ // development headers, which are not part of a normal packaged TT Local
28
+ // install. Prefer PyTorch's eager fallback unless an advanced runner config
29
+ // explicitly opts back in with TORCH_DISABLE_NATIVE_JIT=0.
30
+ result.TORCH_DISABLE_NATIVE_JIT ??= "1";
31
+ if (options.includeHfToken && env.HF_TOKEN)
32
+ result.HF_TOKEN = env.HF_TOKEN;
33
+ return result;
34
+ }
35
+ export function resolveHuggingFaceCacheLayout(modelCache) {
36
+ const hfHome = resolve(modelCache);
37
+ return {
38
+ hfHome,
39
+ hubCache: join(hfHome, "hub"),
40
+ };
41
+ }
42
+ /**
43
+ * Returns a child-process environment in which current Hugging Face cache
44
+ * variables agree and deprecated Transformers overrides are removed. Explicit
45
+ * TT Local configuration wins over inherited shell variables, avoiding a
46
+ * second cache tree during prefetch, training, evaluation, or serving.
47
+ */
48
+ export function withHuggingFaceCacheEnvironment(env, modelCache) {
49
+ const inheritedHub = env.HF_HUB_CACHE ?? env.HUGGINGFACE_HUB_CACHE;
50
+ const canonicalHome = modelCache
51
+ ?? env.HF_HOME
52
+ ?? (inheritedHub ? dirname(resolve(inheritedHub)) : join(homedir(), ".cache", "huggingface"));
53
+ const layout = resolveHuggingFaceCacheLayout(canonicalHome);
54
+ const result = {
55
+ ...env,
56
+ HF_HOME: layout.hfHome,
57
+ HF_HUB_CACHE: layout.hubCache,
58
+ HUGGINGFACE_HUB_CACHE: layout.hubCache,
59
+ };
60
+ // These deprecated Transformers variables override HF_HOME when inherited
61
+ // and also emit warnings when present. Removing them lets Transformers use
62
+ // the canonical HF_HUB_CACHE value above.
63
+ delete result.TRANSFORMERS_CACHE;
64
+ delete result.PYTORCH_TRANSFORMERS_CACHE;
65
+ delete result.PYTORCH_PRETRAINED_BERT_CACHE;
66
+ return result;
67
+ }
68
+ //# sourceMappingURL=huggingface-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"huggingface-cache.js","sourceRoot":"","sources":["../src/huggingface-cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYnD;;;;;GAKG;AACH,MAAM,UAAU,iCAAiC,CAC/C,GAAsB,EACtB,UAAwC,EAAE;IAE1C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC;QACpB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK;QACnE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,gBAAgB;QAC5E,eAAe,EAAE,oBAAoB,EAAE,gBAAgB;QACvD,UAAU,EAAE,UAAU;QACtB,cAAc,EAAE,WAAW;QAC3B,SAAS,EAAE,cAAc,EAAE,uBAAuB,EAAE,aAAa;QACjE,gBAAgB,EAAE,0BAA0B,EAAE,sBAAsB;QACpE,2BAA2B,EAAE,YAAY,EAAE,kBAAkB;KAC9D,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG;QACf,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ;QAC5D,UAAU,EAAE,aAAa,EAAE,SAAS;KACrC,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CACrE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CACpE,CAAC,CAAC;IACH,0EAA0E;IAC1E,4EAA4E;IAC5E,wEAAwE;IACxE,4EAA4E;IAC5E,2DAA2D;IAC3D,MAAM,CAAC,wBAAwB,KAAK,GAAG,CAAC;IACxC,IAAI,OAAO,CAAC,cAAc,IAAI,GAAG,CAAC,QAAQ;QAAE,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC3E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,UAAkB;IAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACnC,OAAO;QACL,MAAM;QACN,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAC7C,GAAsB,EACtB,UAAmB;IAEnB,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,qBAAqB,CAAC;IACnE,MAAM,aAAa,GAAG,UAAU;WAC3B,GAAG,CAAC,OAAO;WACX,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;IAChG,MAAM,MAAM,GAAG,6BAA6B,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAsB;QAChC,GAAG,GAAG;QACN,OAAO,EAAE,MAAM,CAAC,MAAM;QACtB,YAAY,EAAE,MAAM,CAAC,QAAQ;QAC7B,qBAAqB,EAAE,MAAM,CAAC,QAAQ;KACvC,CAAC;IACF,0EAA0E;IAC1E,2EAA2E;IAC3E,0CAA0C;IAC1C,OAAO,MAAM,CAAC,kBAAkB,CAAC;IACjC,OAAO,MAAM,CAAC,0BAA0B,CAAC;IACzC,OAAO,MAAM,CAAC,6BAA6B,CAAC;IAC5C,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export * from "./contracts.js";
4
4
  export * from "./dataset.js";
5
5
  export * from "./labeling.js";
6
6
  export * from "./labeling-sanitize.js";
7
+ export * from "./model-server.js";
7
8
  export * from "./orchestrator.js";
8
9
  export * from "./local-project.js";
9
10
  export * from "./openrouter.js";
@@ -15,7 +16,9 @@ export interface LocalRunnerInfo {
15
16
  name: "tuned-tensor-local";
16
17
  status: "local-runner-preview";
17
18
  description: string;
19
+ version: string;
18
20
  }
21
+ export declare const TT_LOCAL_VERSION: string;
19
22
  export declare function getLocalRunnerInfo(): LocalRunnerInfo;
20
23
  /**
21
24
  * Parses simple KEY=VALUE lines from .env content. Supports comments, blank