@vessel-dsp/compiler 0.4.0 → 0.6.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 (80) hide show
  1. package/README.md +4 -2
  2. package/dist/bbd-clock.d.ts.map +1 -1
  3. package/dist/bbd-clock.js +5 -0
  4. package/dist/bbd-clock.js.map +1 -1
  5. package/dist/compile.d.ts.map +1 -1
  6. package/dist/compile.js +305 -12
  7. package/dist/compile.js.map +1 -1
  8. package/dist/device-laws.d.ts.map +1 -1
  9. package/dist/device-laws.js +552 -97
  10. package/dist/device-laws.js.map +1 -1
  11. package/dist/fixtures/circuits.d.ts +23 -2
  12. package/dist/fixtures/circuits.d.ts.map +1 -1
  13. package/dist/fixtures/circuits.js +205 -2
  14. package/dist/fixtures/circuits.js.map +1 -1
  15. package/dist/index.d.ts +2 -1
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +1 -0
  18. package/dist/index.js.map +1 -1
  19. package/dist/lower.d.ts.map +1 -1
  20. package/dist/lower.js +4 -0
  21. package/dist/lower.js.map +1 -1
  22. package/dist/netlist.d.ts +52 -0
  23. package/dist/netlist.d.ts.map +1 -1
  24. package/dist/netlist.js +585 -13
  25. package/dist/netlist.js.map +1 -1
  26. package/dist/part-catalog.d.ts +35 -6
  27. package/dist/part-catalog.d.ts.map +1 -1
  28. package/dist/part-catalog.js +2544 -443
  29. package/dist/part-catalog.js.map +1 -1
  30. package/dist/registry-data/bjt.d.ts +3 -0
  31. package/dist/registry-data/bjt.d.ts.map +1 -0
  32. package/dist/registry-data/bjt.js +1350 -0
  33. package/dist/registry-data/bjt.js.map +1 -0
  34. package/dist/registry-data/charge-pump.d.ts +3 -0
  35. package/dist/registry-data/charge-pump.d.ts.map +1 -0
  36. package/dist/registry-data/charge-pump.js +204 -0
  37. package/dist/registry-data/charge-pump.js.map +1 -0
  38. package/dist/registry-data/diode.d.ts +3 -0
  39. package/dist/registry-data/diode.d.ts.map +1 -0
  40. package/dist/registry-data/diode.js +683 -0
  41. package/dist/registry-data/diode.js.map +1 -0
  42. package/dist/registry-data/index.d.ts +20 -0
  43. package/dist/registry-data/index.d.ts.map +1 -0
  44. package/dist/registry-data/index.js +100 -0
  45. package/dist/registry-data/index.js.map +1 -0
  46. package/dist/registry-data/jfet.d.ts +3 -0
  47. package/dist/registry-data/jfet.d.ts.map +1 -0
  48. package/dist/registry-data/jfet.js +605 -0
  49. package/dist/registry-data/jfet.js.map +1 -0
  50. package/dist/registry-data/loader.d.ts +137 -0
  51. package/dist/registry-data/loader.d.ts.map +1 -0
  52. package/dist/registry-data/loader.js +350 -0
  53. package/dist/registry-data/loader.js.map +1 -0
  54. package/dist/registry-data/mosfet.d.ts +3 -0
  55. package/dist/registry-data/mosfet.d.ts.map +1 -0
  56. package/dist/registry-data/mosfet.js +63 -0
  57. package/dist/registry-data/mosfet.js.map +1 -0
  58. package/dist/registry-data/opamp.d.ts +37 -0
  59. package/dist/registry-data/opamp.d.ts.map +1 -0
  60. package/dist/registry-data/opamp.js +669 -0
  61. package/dist/registry-data/opamp.js.map +1 -0
  62. package/dist/registry-data/regulator.d.ts +3 -0
  63. package/dist/registry-data/regulator.d.ts.map +1 -0
  64. package/dist/registry-data/regulator.js +189 -0
  65. package/dist/registry-data/regulator.js.map +1 -0
  66. package/dist/registry-data/schema.d.ts +56 -0
  67. package/dist/registry-data/schema.d.ts.map +1 -0
  68. package/dist/registry-data/schema.js +142 -0
  69. package/dist/registry-data/schema.js.map +1 -0
  70. package/dist/registry-data/zener.d.ts +3 -0
  71. package/dist/registry-data/zener.d.ts.map +1 -0
  72. package/dist/registry-data/zener.js +547 -0
  73. package/dist/registry-data/zener.js.map +1 -0
  74. package/dist/registry.d.ts +72 -5
  75. package/dist/registry.d.ts.map +1 -1
  76. package/dist/registry.js +65 -6
  77. package/dist/registry.js.map +1 -1
  78. package/dist/types.d.ts +255 -19
  79. package/dist/types.d.ts.map +1 -1
  80. package/package.json +1 -1
package/dist/compile.js CHANGED
@@ -17,7 +17,7 @@ import { link } from "./link.js";
17
17
  import { lower } from "./lower.js";
18
18
  import { readNetlist } from "./netlist.js";
19
19
  import { partition } from "./partition.js";
20
- import { emptyRegistry, registryLawFor } from "./registry.js";
20
+ import { emptyRegistry, foldPartId, registryEntryFor, registryLawFor } from "./registry.js";
21
21
  import { findDanglingActiveTerminals, synthesizeOpampImplicitBias, } from "./dangling-active-terminal.js";
22
22
  import { findOverDrivenNodes } from "./over-driven-node.js";
23
23
  import { findSupplyShorts } from "./supply-short.js";
@@ -60,6 +60,7 @@ function run(source, options) {
60
60
  const netlist = readNetlist(source, {
61
61
  inputJack: options.inputJack,
62
62
  outputJack: options.outputJack,
63
+ registry: options.registry ?? emptyRegistry,
63
64
  });
64
65
  const lawed = attachDeviceLaws(netlist, options.registry ?? emptyRegistry);
65
66
  // Decision 1: an unmodellable device makes the whole pedal/amp unsupported, and
@@ -161,7 +162,10 @@ function run(source, options) {
161
162
  ...findRailsWithoutVoltage(netlist),
162
163
  ...findFetLawDefaults(netlist, options.registry ?? emptyRegistry),
163
164
  ...findBjtLawDefaults(netlist),
165
+ ...findRegistryProvisionalValues(netlist, lawed, options.registry ?? emptyRegistry),
166
+ ...findRegistryOverrideApplied(netlist, lawed, options.registry ?? emptyRegistry),
164
167
  ...findOpampLawDefaults(lawed),
168
+ ...findOpampGainBandwidthDefaults(lawed),
165
169
  ...scaled.warnings,
166
170
  ],
167
171
  };
@@ -309,32 +313,321 @@ function findBjtLawDefaults(netlist) {
309
313
  },
310
314
  ];
311
315
  }
312
- /** Op-amps that state no output-swing drop. See `OpampLawDefaultWarning`. */
316
+ /**
317
+ * The registry entry carrying a provisional value for an exact folded part id, or
318
+ * `null`. Part ids only -- never a declared type or pinout signature -- the same rung
319
+ * `device-laws.ts` refines discrete laws on. Entries with no `provisionalParams` can
320
+ * never warn and are skipped.
321
+ */
322
+ function provisionalEntryFor(registry, partNumber) {
323
+ const folded = foldPartId(partNumber);
324
+ for (const entry of registry.entries) {
325
+ if ((entry.provisionalParams?.length ?? 0) === 0)
326
+ continue;
327
+ if (entry.partIds.some((id) => foldPartId(id) === folded))
328
+ return entry;
329
+ }
330
+ return null;
331
+ }
332
+ /**
333
+ * The document-typed parameter key that overrides a registry parameter for a device
334
+ * kind, or `null` when no typed spelling exists (the entry value always stamps).
335
+ * BJT `forwardBeta` is `beta` in the document; every other overlaid parameter shares
336
+ * the registry name. JFET/MOSFET gate terms have no typed spelling at all.
337
+ */
338
+ const PROVISIONAL_OVERRIDE_KEYS = {
339
+ bjt: {
340
+ saturationCurrent: "saturationCurrent",
341
+ forwardBeta: "beta",
342
+ reverseBeta: "reverseBeta",
343
+ thermalVoltage: "thermalVoltage",
344
+ leakageAmps: "leakageAmps",
345
+ },
346
+ diode: {
347
+ saturationCurrent: "saturationCurrent",
348
+ emissionCoefficient: "emissionCoefficient",
349
+ thermalVoltage: "thermalVoltage",
350
+ breakdownVolts: "breakdownVolts",
351
+ seriesResistance: "seriesResistance",
352
+ },
353
+ jfet: {
354
+ thresholdVolts: "thresholdVolts",
355
+ transconductance: "transconductance",
356
+ channelLengthModulation: null,
357
+ subthresholdVolts: null,
358
+ gateSaturationCurrent: null,
359
+ gateOnsetVolts: null,
360
+ gateScaleVolts: null,
361
+ },
362
+ mosfet: {
363
+ thresholdVolts: "thresholdVolts",
364
+ transconductance: "transconductance",
365
+ channelLengthModulation: null,
366
+ subthresholdVolts: null,
367
+ gateSaturationCurrent: null,
368
+ gateOnsetVolts: null,
369
+ gateScaleVolts: null,
370
+ },
371
+ opamp: {
372
+ openLoopGain: "openLoopGain",
373
+ gainBandwidthHz: "gainBandwidthHz",
374
+ outputSwingDropHighVolts: null,
375
+ outputSwingDropLowVolts: null,
376
+ },
377
+ };
378
+ /**
379
+ * The registry value an override replaces for one parameter, or `null` when it replaces
380
+ * nothing: either the part has no registry entry at all, the entry states no such
381
+ * parameter (a measured refinement beyond the entry, or a law the entry does not carry),
382
+ * or the declared-device path never reads that parameter from the registry.
383
+ *
384
+ * The last case is `openLoopGain` on a declared op-amp: `device-laws.ts` takes it from the
385
+ * document's typed key or the class default and never consults the registry (a sections
386
+ * entry's figure feeds only the sections expansion, which an override cannot reach -- see
387
+ * `sectionDevices`). Reporting the entry's figure as "replaced" would claim a replacement
388
+ * that never happened; `null` with the detail prose is the honest answer.
389
+ *
390
+ * Read from the entry's law fields by schema name -- law fields ARE schema names -- from a
391
+ * whole `law` entry or the first section of a `sections` entry (a dual op-amp's numbers live
392
+ * there, which is also how `registryOpampGainBandwidth` reads them). Macros and other models
393
+ * carry no numeric law fields for these classes, so they read as absent.
394
+ */
395
+ function registryParamValue(registry, partNumber, parameter) {
396
+ if (partNumber === null) {
397
+ return null;
398
+ }
399
+ // See the doc comment: the declared-opamp path never reads openLoopGain from the registry.
400
+ if (parameter === "openLoopGain") {
401
+ return null;
402
+ }
403
+ const entry = registryEntryFor(registry, { partId: partNumber, evidence: "exact-part" });
404
+ if (entry === null) {
405
+ return null;
406
+ }
407
+ const law = entry.model.kind === "law"
408
+ ? entry.model.law
409
+ : entry.model.kind === "sections"
410
+ ? entry.model.sections[0]?.law
411
+ : undefined;
412
+ if (law === undefined) {
413
+ return null;
414
+ }
415
+ const value = law[parameter];
416
+ return typeof value === "number" && Number.isFinite(value) ? value : null;
417
+ }
418
+ /**
419
+ * Devices whose stamped values came from an explicit `DeviceOverride` block rather than the
420
+ * registry or a class default. See `RegistryOverrideAppliedWarning`. One notice per device,
421
+ * naming the part, every overridden parameter with the override value and the registry value
422
+ * it replaced (null = "no registry entry"), and the provenance -- so a player can show
423
+ * "measured by ... on ...".
424
+ *
425
+ * A notice, never a refusal: the values already stamped (precedence override > legacy typed
426
+ * key > registry > class default). A device whose resolution is not a law (unsupported,
427
+ * macro, open) took no registry value and is not listed.
428
+ */
429
+ function findRegistryOverrideApplied(netlist, lawed, registry) {
430
+ const lawedByBase = new Set(lawed.resolutions
431
+ .filter((resolution) => resolution.outcome === "law")
432
+ .map((resolution) => resolution.device.replace(/#\d+$/, "")));
433
+ const out = [];
434
+ for (const device of netlist.devices) {
435
+ const override = device.deviceOverride;
436
+ if (override === undefined)
437
+ continue;
438
+ if (!lawedByBase.has(device.id))
439
+ continue;
440
+ const partNumber = device.identity.partNumber;
441
+ const items = override.parameters.map((parameter) => ({
442
+ parameter: parameter.name,
443
+ overrideValue: parameter.value,
444
+ registryValue: registryParamValue(registry, partNumber, parameter.name),
445
+ }));
446
+ const stated = items
447
+ .map((item) => `${item.parameter} ${item.overrideValue}` +
448
+ (item.registryValue === null
449
+ ? " (no registry value replaced)"
450
+ : ` (registry ${item.registryValue})`))
451
+ .join(", ");
452
+ out.push({
453
+ code: "registry-override-applied",
454
+ device: device.id,
455
+ partNumber,
456
+ items,
457
+ provenance: override.provenance,
458
+ detail: `${device.id}${partNumber === null ? "" : ` (${partNumber})`} applies a ` +
459
+ `${override.provenance.kind} override by ${override.provenance.by} on ` +
460
+ `${override.provenance.date}: ${stated}.`,
461
+ });
462
+ }
463
+ return out;
464
+ }
465
+ /**
466
+ * Devices whose law runs on at least one provisional `community` registry value.
467
+ * See `RegistryProvisionalValueWarning`. One warning per device, naming the device,
468
+ * the part, the taken parameters and the distinct source URLs: a notice, never a
469
+ * refusal. A device whose document types a parameter runs on its own typed value for
470
+ * that parameter and is not listed for it. A device whose resolution is not a law
471
+ * (unsupported, macro, open) took no registry value and is not listed.
472
+ */
473
+ function findRegistryProvisionalValues(netlist, lawed, registry) {
474
+ const lawedByBase = new Set(lawed.resolutions
475
+ .filter((resolution) => resolution.outcome === "law")
476
+ .map((resolution) => resolution.device.replace(/#\d+$/, "")));
477
+ const out = [];
478
+ for (const device of netlist.devices) {
479
+ const partNumber = device.identity.partNumber;
480
+ if (partNumber === null)
481
+ continue;
482
+ if (!lawedByBase.has(device.id))
483
+ continue;
484
+ const entry = provisionalEntryFor(registry, partNumber);
485
+ if (entry === null)
486
+ continue;
487
+ const overrides = PROVISIONAL_OVERRIDE_KEYS[device.kind] ?? {};
488
+ const taken = (entry.provisionalParams ?? []).filter((param) => {
489
+ const override = overrides[param.name];
490
+ if (override === null)
491
+ return true;
492
+ const key = override ?? param.name;
493
+ return device.parameters[key] === undefined;
494
+ });
495
+ if (taken.length === 0)
496
+ continue;
497
+ const parameters = taken.map((param) => param.name);
498
+ const urls = [...new Set(taken.map((param) => param.url))];
499
+ out.push({
500
+ code: "registry-provisional-value",
501
+ device: device.id,
502
+ partNumber,
503
+ parameters,
504
+ urls,
505
+ detail: `${device.id} (${partNumber}) runs on provisional community value(s) ` +
506
+ `${parameters.join(", ")} from ${urls.join(", ")}. A published model or ` +
507
+ `single-author measurement, not a datasheet, manufacturer model or owner ` +
508
+ `measurement; the pedal still renders, and the value stands until a better ` +
509
+ `source replaces it.`,
510
+ });
511
+ }
512
+ return out;
513
+ }
514
+ /**
515
+ * Op-amps whose output swing the part does not state at this pedal's supply. See
516
+ * `OpampLawDefaultWarning`.
517
+ *
518
+ * A package is lowered as one law per section, so a device is judged across all its sections:
519
+ * `not-stated` if any section carries no printed pair; otherwise `stated-at-other-supply` if the
520
+ * lowering carried the pair at a supply span other than the one it was printed at (compared to
521
+ * 1e-9 V). A pair used at exactly its printed supply, and a stated pair the lowering did not carry
522
+ * (unrailed op-amp, a pair that would close the interval), list nothing: no figure crossed a supply.
523
+ */
313
524
  function findOpampLawDefaults(lawed) {
314
525
  const byId = new Map(lawed.netlist.devices.map((device) => [device.id, device]));
315
- const stated = new Map();
526
+ const judged = new Map();
316
527
  for (const resolution of lawed.resolutions) {
317
528
  if (resolution.outcome !== "law" || resolution.law.kind !== "ideal-opamp")
318
529
  continue;
319
530
  // A section of a package is lowered as `<device>#<index>`; the warning names the device.
320
531
  const id = resolution.device.replace(/#\d+$/, "");
321
- stated.set(id, (stated.get(id) ?? true) && resolution.law.outputSwingDropVolts !== undefined);
532
+ const law = resolution.law;
533
+ const section = judged.get(id) ?? { stated: true, carried: null };
534
+ section.stated = section.stated && law.outputSwingPrinted !== undefined;
535
+ if (section.carried === null &&
536
+ law.outputSwingPrinted !== undefined &&
537
+ law.outputSwingCarried !== undefined &&
538
+ Math.abs(law.outputSwingCarried.circuitSupplyVolts - law.outputSwingPrinted.supplyVolts) > 1e-9) {
539
+ section.carried = {
540
+ printed: law.outputSwingPrinted.supplyVolts,
541
+ circuit: law.outputSwingCarried.circuitSupplyVolts,
542
+ };
543
+ }
544
+ judged.set(id, section);
322
545
  }
323
- const defaulted = [...stated].flatMap(([id, has]) => (has ? [] : [id]));
324
- if (defaulted.length === 0)
546
+ const items = [];
547
+ for (const [id, section] of judged) {
548
+ if (!section.stated) {
549
+ items.push({ device: id, reason: "not-stated" });
550
+ }
551
+ else if (section.carried !== null) {
552
+ items.push({
553
+ device: id,
554
+ reason: "stated-at-other-supply",
555
+ printedSupplyVolts: section.carried.printed,
556
+ circuitSupplyVolts: section.carried.circuit,
557
+ });
558
+ }
559
+ }
560
+ if (items.length === 0)
325
561
  return [];
326
- const listed = defaulted.map((id) => {
562
+ const label = (id) => {
327
563
  const part = byId.get(id)?.identity.partNumber ?? null;
328
564
  return `${id}${part === null ? "" : ` (${part})`}`;
329
- });
565
+ };
566
+ const notStated = items.filter((item) => item.reason === "not-stated");
567
+ const carried = items.filter((item) => item.reason === "stated-at-other-supply");
568
+ const parts = [];
569
+ if (notStated.length > 0) {
570
+ parts.push(`${notStated.length} op-amp(s) swing the full supply because the part states no ` +
571
+ `output-swing drop: ${notStated.map((item) => label(item.device)).join("; ")}`);
572
+ }
573
+ if (carried.length > 0) {
574
+ parts.push(`${carried.length} op-amp(s) carry a datasheet swing printed at another supply: ` +
575
+ carried
576
+ .map((item) => item.reason === "stated-at-other-supply"
577
+ ? `${label(item.device)} printed at ${item.printedSupplyVolts} V, carried to ${item.circuitSupplyVolts} V`
578
+ : "")
579
+ .join("; "));
580
+ }
330
581
  return [
331
582
  {
332
583
  code: "opamp-law-default-parameters",
333
584
  device: null,
334
- devices: defaulted,
335
- detail: `${defaulted.length} op-amp(s) swing the full supply because the part states no ` +
336
- `output-swing drop: ${listed.join("; ")}. Harmless for a stage that never nears ` +
337
- "the rails; decisive for a comparator, an LFO or a clipper.",
585
+ devices: items.map((item) => item.device),
586
+ items,
587
+ detail: `${parts.join(". ")}. Harmless for a stage that never nears the rails; decisive for a comparator, an LFO or a clipper.`,
588
+ },
589
+ ];
590
+ }
591
+ /**
592
+ * Railed op-amp sections whose gain-bandwidth product no source states. See
593
+ * `OpampGainBandwidthDefaultWarning`.
594
+ *
595
+ * A section is lowered as `<device>#<index>`, so each resolution is one section and the warning
596
+ * names the package once. A compandor's internal op-amp is one more section under the compandor's
597
+ * own id: its law carries no product, and the stamp `lower.ts` builds from it is `null`.
598
+ */
599
+ function findOpampGainBandwidthDefaults(lawed) {
600
+ const byId = new Map(lawed.netlist.devices.map((device) => [device.id, device]));
601
+ const sections = new Map();
602
+ for (const resolution of lawed.resolutions) {
603
+ if (resolution.outcome !== "law")
604
+ continue;
605
+ const law = resolution.law;
606
+ if (law.kind !== "ideal-opamp" && law.kind !== "compandor")
607
+ continue;
608
+ if (law.kind === "ideal-opamp" && law.gainBandwidthHz !== undefined)
609
+ continue;
610
+ if (law.railHigh === null || law.railLow === null)
611
+ continue;
612
+ const id = resolution.device.replace(/#\d+$/, "");
613
+ sections.set(id, (sections.get(id) ?? 0) + 1);
614
+ }
615
+ if (sections.size === 0)
616
+ return [];
617
+ const total = [...sections.values()].reduce((sum, count) => sum + count, 0);
618
+ const listed = [...sections].map(([id, count]) => {
619
+ const part = byId.get(id)?.identity.partNumber ?? null;
620
+ return `${id}${part === null ? "" : ` (${part})`}${count > 1 ? ` x${count}` : ""}`;
621
+ });
622
+ return [
623
+ {
624
+ code: "opamp-gain-bandwidth-default",
625
+ device: null,
626
+ devices: [...sections.keys()],
627
+ sections: total,
628
+ detail: `${total} op-amp section(s) run on the consoles' class-default 1 MHz gain-bandwidth ` +
629
+ `product because no source states one: ${listed.join("; ")}. A stage of gain G rolls off ` +
630
+ "at GBP / G, so a wrong product moves the high-frequency droop of a high-gain stage.",
338
631
  },
339
632
  ];
340
633
  }
@@ -1 +1 @@
1
- {"version":3,"file":"compile.js","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"device-laws.d.ts","sourceRoot":"","sources":["../src/device-laws.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device-laws.d.ts","sourceRoot":"","sources":["../src/device-laws.ts"],"names":[],"mappings":"AAsCA,OAAO,EAKN,KAAK,YAAY,EACjB,KAAK,WAAW,EAWhB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAEX,KAAK,EAKL,MAAM,EAEN,gBAAgB,EAChB,6BAA6B,EAC7B,oBAAoB,EACpB,YAAY,EACZ,cAAc,EAGd,6BAA6B,EAG7B,OAAO,EACP,MAAM,EAEN,MAAM,SAAS,CAAC;AAEjB,mFAAmF;AACnF,eAAO,MAAM,eAAe,WAAY,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,cAAc,OAAO,CAAC;AAEnC;;;;;;;;;;;GAWG;AACH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAgCpC,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAChD,eAAO,MAAM,oBAAoB,MAAM,CAAC;AACxC;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAC/C,eAAO,MAAM,6BAA6B,QAAO,CAAC;AAyDlD,6DAA6D;AAC7D,eAAO,MAAM,eAAe,aAAM,CAAC;AA+UnC,wBAAgB,gBAAgB,CAC/B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,YAAY,GACpB,YAAY,CAwGd;AAED;;;;;;;;;;;GAWG;AACH;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,eAAe,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,GAC/F,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,GAAG,IAAI,CAsE3D;AAw6BD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACrC,MAAM,EAAE,MAAM,EACd,mBAAmB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9C,OAAO,CAOT;AAED,gGAAgG;AAChG,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQvE;AA6hBD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAW9D;AAigDD;;;GAGG;AACH,wBAAgB,2BAA2B,CAC1C,KAAK,EAAE,YAAY,GACjB,SAAS,6BAA6B,EAAE,CAuB1C;AA8KD;;;;;;;;;;;;;;;;;GAiBG;AACH;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CACxC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,GACtC,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,GAAG,IAAI,CA0D7C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,+BAA+B,CAC9C,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,GACtC,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,GAAG,IAAI,CA0E7C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAC3C,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,GACtC,OAAO,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,GAAG,IAAI,CA0D7C;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CACjC,MAAM,EAAE,SAAS,KAAK,EAAE,GACtB,SAAS,KAAK,EAAE,CAuClB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,2BAA2B,EAAE,OAAO,CAAC;IAC9C,QAAQ,CAAC,yBAAyB,EAAE,OAAO,CAAC;CAC5C,GAAG,cAAc,CAcjB;AAuBD,wBAAgB,kBAAkB,CACjC,KAAK,EAAE,YAAY,EACnB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,YAAY,GACpB,SAAS,oBAAoB,EAAE,CA8HjC;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,OAAO,GACd,SAAS,6BAA6B,EAAE,CAoB1C"}