@kernhq/module-tracker 0.3.2 → 0.4.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.
@@ -1,8 +1,9 @@
1
1
  import { KernError, uuidv7 } from '@kernhq/kernel';
2
2
  import { builtinRegistry, createWorkflowFromTemplate, sortedStatuses, validateDefinition, workflowTemplates, } from '@kernhq/workflow';
3
3
  import { and, asc, eq, inArray, isNull, or, sql } from 'drizzle-orm';
4
- import { HierarchyRules, } from '../../contract/models.js';
5
- import { fieldDefs, hierarchyRules, issues, projects, typeSchemes, workflowSchemes, workflows, workItemTypes, } from '../schema.js';
4
+ import { HierarchyRules, ProjectTemplateBody, } from '../../contract/models.js';
5
+ import { fieldDefs, hierarchyRules, issues, labels, projects, typeSchemes, views, workflowSchemes, workflows, workItemTypes, } from '../schema.js';
6
+ import { projectTemplateBody } from '../seeds/templates.js';
6
7
  import { toFieldDef, toTypeScheme, toWorkflow, toWorkflowScheme, toWorkItemType, } from './db.js';
7
8
  const DEFAULT_HIERARCHY = HierarchyRules.parse({});
8
9
  let validationRegistry = null;
@@ -11,34 +12,6 @@ const registryForValidation = () => {
11
12
  validationRegistry ??= builtinRegistry();
12
13
  return validationRegistry;
13
14
  };
14
- /** Types seeded into a fresh project, per project template. */
15
- const TYPE_SEEDS = {
16
- software: [
17
- { key: 'epic', name: 'Epic', level: 1, icon: 'zap' },
18
- { key: 'story', name: 'Story', level: 0, icon: 'bookmark' },
19
- { key: 'task', name: 'Task', level: 0, icon: 'square-check-big' },
20
- { key: 'bug', name: 'Bug', level: 0, icon: 'bug' },
21
- { key: 'sub_task', name: 'Sub-task', level: -1, icon: 'git-branch' },
22
- ],
23
- kanban: [
24
- { key: 'task', name: 'Task', level: 0, icon: 'square-check-big' },
25
- { key: 'bug', name: 'Bug', level: 0, icon: 'bug' },
26
- ],
27
- simple: [{ key: 'task', name: 'Task', level: 0, icon: 'square-check-big' }],
28
- blank: [{ key: 'task', name: 'Task', level: 0, icon: 'square-check-big' }],
29
- };
30
- const DEFAULT_TYPE_KEY = {
31
- software: 'story',
32
- kanban: 'task',
33
- simple: 'task',
34
- blank: 'task',
35
- };
36
- const WORKFLOW_FOR_TEMPLATE = {
37
- software: 'software',
38
- kanban: 'kanban',
39
- simple: 'simple',
40
- blank: 'simple',
41
- };
42
15
  /** Work item types, custom fields, workflows and the schemes that bind them to projects. */
43
16
  export class ConfigService {
44
17
  kernel;
@@ -615,59 +588,51 @@ export class ConfigService {
615
588
  return [...seen.values()].sort((a, b) => a.order - b.order || a.name.localeCompare(b.name));
616
589
  }
617
590
  // ------------------------------------------------------------------ seeding
618
- /** Create the workflow and types a brand-new project starts with. */
591
+ /**
592
+ * Create the workflow, fields and types a brand-new project starts with.
593
+ *
594
+ * A built-in template is a `ProjectTemplateBody` in `seeds/templates.ts`, so this is the applier
595
+ * with a body chosen by name. There used to be a second seeding path here — a table of type
596
+ * names and a workflow id — which meant "create from Software" and "create from a saved
597
+ * template" produced projects that were configured differently for no reason anyone chose.
598
+ */
619
599
  async seedProject(tx, workspaceId, projectId, template) {
620
- const templateId = WORKFLOW_FOR_TEMPLATE[template] ?? 'simple';
621
- const workflowId = uuidv7();
622
- const definition = createWorkflowFromTemplate(templateId, { id: workflowId });
623
- await tx.insert(workflows).values({
624
- id: workflowId,
625
- workspaceId,
626
- projectId,
627
- name: definition.name,
628
- description: definition.description ?? null,
629
- definition,
630
- isDefault: true,
631
- });
632
- const seeds = TYPE_SEEDS[template] ?? TYPE_SEEDS.simple;
633
- const defaultKey = DEFAULT_TYPE_KEY[template] ?? 'task';
634
- const typeIds = [];
635
- let defaultTypeId = '';
636
- for (const [order, seed] of seeds.entries()) {
637
- const id = uuidv7();
638
- typeIds.push(id);
639
- if (seed.key === defaultKey)
640
- defaultTypeId = id;
641
- await tx.insert(workItemTypes).values({
642
- id,
643
- workspaceId,
644
- projectId,
645
- key: seed.key,
646
- name: seed.name,
647
- icon: seed.icon,
648
- level: seed.level,
649
- isDefault: seed.key === defaultKey,
650
- workflowId,
651
- order,
652
- });
653
- }
654
- return { workflowId, typeIds, defaultTypeId: defaultTypeId || typeIds[0] };
600
+ const applied = await this.applyProjectTemplateBody(tx, workspaceId, projectId, projectTemplateBody(template));
601
+ // Every built-in body has a workflow and at least one type, so this cannot be null; the check
602
+ // is here so a mistake in a template is an error rather than a project with nothing in it.
603
+ if (!applied)
604
+ throw KernError.badRequest(`The "${template}" template seeds nothing`);
605
+ return applied;
655
606
  }
656
- /** Restore a project blueprint saved with `projects.templates.saveFromProject`. */
657
- async applyProjectTemplateBody(tx, workspaceId, projectId, body) {
658
- const definitions = body.workflows ?? [];
659
- const types = body.types ?? [];
660
- if (!definitions.length || !types.length)
607
+ /**
608
+ * Apply a template body to a fresh project: workflows, fields, types and their layouts.
609
+ *
610
+ * This is the only applier. A built-in template is a value of the same shape as a snapshot taken
611
+ * from an existing project, so "create from Software" and "create from the template we saved
612
+ * last week" walk exactly the same code — there is no second path to drift.
613
+ *
614
+ * Ids inside a body are template-local: workflows are named by index, and a type's layout names
615
+ * fields by `cf.<key>`. That is what lets a body written in one workspace apply in another.
616
+ */
617
+ async applyProjectTemplateBody(tx, workspaceId, projectId, input) {
618
+ const parsed = ProjectTemplateBody.safeParse(input ?? {});
619
+ if (!parsed.success)
620
+ throw KernError.badRequest('This template cannot be applied', {
621
+ problems: parsed.error.issues.map((i) => ({ path: i.path.join('.'), message: i.message })),
622
+ });
623
+ const body = parsed.data;
624
+ // A body with nothing in it would produce a project with no types, which is not a project.
625
+ if (!body.workflows.length || !body.types.length)
661
626
  return null;
662
627
  const workflowIds = [];
663
- for (const definition of definitions) {
628
+ for (const entry of body.workflows) {
664
629
  const id = uuidv7();
665
630
  // Validate before reserving the index. Skipping an invalid definition after the push left
666
631
  // `workflowIndex` pointing at a workflow row that was never inserted, so every type in the
667
632
  // template mapped to nothing. A template that cannot be applied is an error, not a warning.
668
- const validated = validateDefinition({ ...definition, id }, registryForValidation());
633
+ const validated = validateDefinition({ ...entry.definition, id }, registryForValidation());
669
634
  if (!validated.ok)
670
- throw KernError.badRequest(`Template workflow "${definition.name}" is not valid`, {
635
+ throw KernError.badRequest(`Template workflow "${entry.name}" is not valid`, {
671
636
  problems: validated.problems,
672
637
  });
673
638
  workflowIds.push(id);
@@ -675,13 +640,41 @@ export class ConfigService {
675
640
  id,
676
641
  workspaceId,
677
642
  projectId,
678
- name: definition.name,
643
+ name: entry.name,
679
644
  definition: validated.definition,
680
645
  isDefault: workflowIds.length === 1,
681
646
  });
682
647
  }
648
+ // Fields come before types, because a type's layout refers to them.
649
+ //
650
+ // They are created at workspace level, not scoped to this project. A field key is unique per
651
+ // workspace, so scoping them here would mean only the *first* project created from a template
652
+ // owned its fields — and every project after it would carry layouts referring to fields it
653
+ // could not see, which the resolver drops silently.
654
+ for (const [order, field] of body.fields.entries())
655
+ await tx
656
+ .insert(fieldDefs)
657
+ .values({
658
+ id: uuidv7(),
659
+ workspaceId,
660
+ projectId: null,
661
+ key: field.key,
662
+ name: field.name,
663
+ description: field.description ?? null,
664
+ type: field.type,
665
+ options: field.options ?? [],
666
+ defaultValue: field.defaultValue ?? null,
667
+ config: field.config ?? {},
668
+ searchable: field.searchable ?? false,
669
+ required: field.required ?? false,
670
+ showInCards: field.showInCards ?? false,
671
+ order,
672
+ })
673
+ // A workspace-level field of the same key already covers this; the project keeps that one
674
+ // rather than the template failing outright.
675
+ .onConflictDoNothing();
683
676
  let defaultTypeId = '';
684
- for (const [order, type] of types.entries()) {
677
+ for (const [order, type] of body.types.entries()) {
685
678
  const id = uuidv7();
686
679
  if (type.isDefault || !defaultTypeId)
687
680
  defaultTypeId = id;
@@ -691,51 +684,133 @@ export class ConfigService {
691
684
  projectId,
692
685
  key: type.key,
693
686
  name: type.name,
687
+ description: type.description ?? null,
694
688
  icon: type.icon ?? null,
695
689
  color: type.color ?? null,
696
690
  level: type.level,
697
691
  isDefault: !!type.isDefault,
698
692
  workflowId: workflowIds[type.workflowIndex ?? 0] ?? workflowIds[0],
693
+ fieldLayout: type.fieldLayout ?? [],
694
+ templateBody: type.templateBody ?? null,
699
695
  order,
700
696
  });
701
697
  }
698
+ for (const label of body.labels)
699
+ await tx
700
+ .insert(labels)
701
+ .values({
702
+ id: uuidv7(),
703
+ workspaceId,
704
+ projectId,
705
+ name: label.name,
706
+ color: label.color ?? null,
707
+ })
708
+ .onConflictDoNothing();
709
+ for (const [order, view] of body.views.entries())
710
+ await tx.insert(views).values({
711
+ id: uuidv7(),
712
+ workspaceId,
713
+ projectId,
714
+ name: view.name,
715
+ description: view.description ?? null,
716
+ icon: view.icon ?? null,
717
+ kql: view.kql,
718
+ layout: view.layout,
719
+ display: view.display ?? {},
720
+ filters: view.filters ?? {},
721
+ visibility: view.visibility,
722
+ order,
723
+ });
702
724
  return { workflowId: workflowIds[0], defaultTypeId };
703
725
  }
704
- /** Snapshot a project's configuration so another project can be created from it. */
726
+ /**
727
+ * A project's configuration as a template body, ready to create another project from.
728
+ *
729
+ * It emits everything the applier reads, and the round trip is a test: create from a built-in,
730
+ * snapshot it, create again from the snapshot, and the resolved layouts match. Until now this
731
+ * emitted fields the applier ignored and dropped layouts, labels and views entirely — so a
732
+ * template saved from a carefully configured project produced a project configured differently.
733
+ */
705
734
  async snapshotProject(tx, workspaceId, projectId) {
735
+ const [project] = await tx
736
+ .select({ settings: projects.settings })
737
+ .from(projects)
738
+ .where(and(eq(projects.workspaceId, workspaceId), eq(projects.id, projectId)))
739
+ .limit(1);
740
+ const workflowRows = await tx
741
+ .select()
742
+ .from(workflows)
743
+ .where(and(eq(workflows.workspaceId, workspaceId), eq(workflows.projectId, projectId)))
744
+ .orderBy(asc(workflows.createdAt));
745
+ const workflowIndex = new Map(workflowRows.map((w, i) => [w.id, i]));
706
746
  const typeRows = await tx
707
747
  .select()
708
748
  .from(workItemTypes)
709
749
  .where(and(eq(workItemTypes.workspaceId, workspaceId), eq(workItemTypes.projectId, projectId)))
710
750
  .orderBy(asc(workItemTypes.order));
711
- const workflowRows = await tx
712
- .select()
713
- .from(workflows)
714
- .where(and(eq(workflows.workspaceId, workspaceId), eq(workflows.projectId, projectId)));
715
- const workflowIndex = new Map(workflowRows.map((w, i) => [w.id, i]));
716
- const fieldRows = await tx
751
+ // Every field this project's types lay out, wherever it is scoped. Filtering to project-scoped
752
+ // fields would emit nothing at all, because a template's fields live at workspace level.
753
+ const namedByLayouts = new Set(typeRows.flatMap((t) => (t.fieldLayout ?? [])
754
+ .map((item) => item.fieldId ?? '')
755
+ .filter((id) => id.startsWith('cf.'))
756
+ .map((id) => id.slice(3))));
757
+ const fieldRows = (await tx
717
758
  .select()
718
759
  .from(fieldDefs)
719
- .where(and(eq(fieldDefs.workspaceId, workspaceId), eq(fieldDefs.projectId, projectId)));
720
- return {
721
- workflows: workflowRows.map((w) => w.definition),
760
+ .where(and(eq(fieldDefs.workspaceId, workspaceId), isNull(fieldDefs.archivedAt)))
761
+ .orderBy(asc(fieldDefs.order))).filter((f) => f.projectId === projectId || namedByLayouts.has(f.key));
762
+ const labelRows = await tx
763
+ .select()
764
+ .from(labels)
765
+ .where(and(eq(labels.workspaceId, workspaceId), eq(labels.projectId, projectId)));
766
+ const viewRows = await tx
767
+ .select()
768
+ .from(views)
769
+ .where(and(eq(views.workspaceId, workspaceId), eq(views.projectId, projectId)))
770
+ .orderBy(asc(views.order));
771
+ return ProjectTemplateBody.parse({
772
+ version: 1,
773
+ settings: project?.settings ?? {},
774
+ workflows: workflowRows.map((w) => ({ name: w.name, definition: w.definition })),
775
+ fields: fieldRows.map((f) => ({
776
+ key: f.key,
777
+ name: f.name,
778
+ description: f.description,
779
+ type: f.type,
780
+ options: f.options ?? [],
781
+ defaultValue: f.defaultValue,
782
+ config: f.config ?? {},
783
+ searchable: f.searchable,
784
+ required: f.required,
785
+ showInCards: f.showInCards,
786
+ })),
722
787
  types: typeRows.map((t) => ({
723
788
  key: t.key,
724
789
  name: t.name,
790
+ description: t.description,
725
791
  level: t.level,
726
792
  icon: t.icon,
727
793
  color: t.color,
728
794
  isDefault: t.isDefault,
795
+ fieldLayout: t.fieldLayout ?? [],
796
+ templateBody: t.templateBody,
729
797
  workflowIndex: t.workflowId ? (workflowIndex.get(t.workflowId) ?? 0) : 0,
730
798
  })),
731
- fields: fieldRows.map((f) => ({
732
- key: f.key,
733
- name: f.name,
734
- type: f.type,
735
- options: f.options,
736
- config: f.config,
799
+ labels: labelRows.map((l) => ({ name: l.name, color: l.color })),
800
+ // A built-in view is recreated by the project itself, so snapshotting it would duplicate it.
801
+ views: viewRows
802
+ .filter((v) => !v.builtin)
803
+ .map((v) => ({
804
+ name: v.name,
805
+ description: v.description,
806
+ icon: v.icon,
807
+ kql: v.kql,
808
+ layout: v.layout,
809
+ display: v.display ?? {},
810
+ filters: v.filters ?? {},
811
+ visibility: v.visibility,
737
812
  })),
738
- };
813
+ });
739
814
  }
740
815
  /** Ensure a set of type ids all belong to this workspace (scheme validation). */
741
816
  async assertTypesExist(tx, workspaceId, ids) {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/services/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAwB,MAAM,EAAE,MAAM,gBAAgB,CAAA;AACxE,OAAO,EACL,eAAe,EACf,0BAA0B,EAE1B,cAAc,EACd,kBAAkB,EAGlB,iBAAiB,GAClB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEpE,OAAO,EAEL,cAAc,GAUf,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,SAAS,EACT,cAAc,EACd,MAAM,EACN,QAAQ,EACR,WAAW,EACX,eAAe,EACf,SAAS,EACT,aAAa,GACd,MAAM,cAAc,CAAA;AAErB,OAAO,EAGL,UAAU,EACV,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,cAAc,GAGf,MAAM,SAAS,CAAA;AAKhB,MAAM,iBAAiB,GAAmB,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;AAElE,IAAI,kBAAkB,GAAwB,IAAI,CAAA;AAClD,mGAAmG;AACnG,MAAM,qBAAqB,GAAG,GAAiB,EAAE;IAC/C,kBAAkB,KAAK,eAAe,EAAE,CAAA;IACxC,OAAO,kBAAkB,CAAA;AAC3B,CAAC,CAAA;AAED,+DAA+D;AAC/D,MAAM,UAAU,GAAsF;IACpG,QAAQ,EAAE;QACR,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;QACpD,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE;QAC3D,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE;QACjE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;QAClD,EAAE,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;KACrE;IACD,MAAM,EAAE;QACN,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE;QACjE,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE;KACnD;IACD,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;IAC3E,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC;CAC3E,CAAA;AAED,MAAM,gBAAgB,GAA2B;IAC/C,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;IACd,KAAK,EAAE,MAAM;CACd,CAAA;AAED,MAAM,qBAAqB,GAAuC;IAChE,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,QAAQ;CAChB,CAAA;AAED,4FAA4F;AAC5F,MAAM,OAAO,aAAa;IAEL;IACA;IACA;IAHnB,YACmB,MAAc,EACd,MAAqB,EACrB,MAAqB;QAFrB,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAe;QACrB,WAAM,GAAN,MAAM,CAAe;IACrC,CAAC;IAEJ,uFAAuF;IAC/E,QAAQ,CAAC,WAAmB,EAAE,MAAc,EAAE,EAAU,EAAE,EAAqC;QACrG,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;IACxD,CAAC;IAED,qFAAqF;IAErF,KAAK,CAAC,SAAS,CACb,EAAM,EACN,WAAmB,EACnB,OAA0D,EAAE;QAE5D,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;QAC5D,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAA;QACzE,IAAI,IAAI,CAAC,SAAS;YAChB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAE,CAAC,CAAA;QACjG,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,EAAE;aACR,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;aACtB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;QAC7D,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAA;QAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAA;QACxE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QACxC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACvC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAAC,CAAA;IAChF,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,EAAM,EAAE,WAAmB,EAAE,SAAiB;QACxE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,EAAE;aACvB,MAAM,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;aAC/C,IAAI,CAAC,QAAQ,CAAC;aACd,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;aAC7E,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,CAAC,OAAO,EAAE,YAAY;YAAE,OAAO,IAAI,CAAA;QACvC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC1G,OAAO,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACvC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU;QACnD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,EAAE;aACR,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aAChF,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QACpD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,iEAAiE;IACjE,KAAK,CAAC,WAAW,CAAC,EAAM,EAAE,WAAmB,EAAE,SAAiB;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,CAAA;QACnE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;QAC/C,MAAM,SAAS,GACb,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACvF,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC;YAC5D,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC;YAC7C,MAAM,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,CAAC,SAAS;YAAE,MAAM,SAAS,CAAC,UAAU,CAAC,qCAAqC,CAAC,CAAA;QACjF,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,UAAU,CACd,EAAM,EACN,WAAmB,EACnB,KAAyB,EACzB,OAAsB;QAEtB,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;QACnB,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;QACjF,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,CAAA;QAC1F,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,aAAa,CAAC;aACrB,MAAM,CAAC;YACN,EAAE;YACF,WAAW;YACX,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;YAClC,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACtC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI;YACxB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,IAAI;YAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,KAAK;YACnC,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI;YACpC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;YACpC,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI;YACxC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC;SACxB,CAAC;aACD,SAAS,EAAE,CAAA;QACd,KAAK,OAAO,CAAA;QACZ,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,GAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QAC5D,OAAO,cAAc,CAAC,GAAI,CAAC,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,UAAU,CACd,EAAM,EACN,WAAmB,EACnB,EAAU,EACV,KAAkC;QAElC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;QACvD,IAAI,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG;YACxC,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;QAChG,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QACpF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC;YACH,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;YACtD,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9E,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;YAC5D,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;YAC5D,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;YACxE,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;YAC3E,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9E,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;YACjF,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;YAC5D,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aAChF,SAAS,EAAE,CAAA;QACd,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QACvD,OAAO,cAAc,CAAC,GAAI,CAAC,CAAA;IAC7B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU,EAAE,QAAiB;QAC1E,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,EAAE;iBACpB,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,CAAQ,eAAe,EAAE,CAAC;iBACzC,IAAI,CAAC,MAAM,CAAC;iBACZ,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YACpG,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;gBACpB,MAAM,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAK,CAAC,CAAC,kCAAkC,EAAE,qBAAqB,CAAC,CAAA;QACjG,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;aACxE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aAChF,SAAS,EAAE,CAAA;QACd,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QACvD,OAAO,cAAc,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,EAAM,EAAE,WAAmB,EAAE,SAAwB,EAAE,GAAW;QAChG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE;aACrB,MAAM,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC;aAChC,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAC1C,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAC1B,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CACrF,CACF;aACA,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,KAAK;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,aAAa,GAAG,mBAAmB,EAAE,wBAAwB,CAAC,CAAA;IACpG,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,EAAM,EAAE,WAAmB,EAAE,SAAwB;QAClF,MAAM,EAAE;aACL,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;aACzB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAC1C,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,CACrF,CACF,CAAA;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAM,EAAE,WAAmB;QAC9C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;QACvG,OAAO,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAA;IACxE,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,EAAM,EAAE,WAAmB,EAAE,KAAqB;QACxE,MAAM,EAAE;aACL,MAAM,CAAC,cAAc,CAAC;aACtB,MAAM,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;aAC9B,kBAAkB,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,WAAW,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;QACpG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,SAAS,CAAC,CAAA;QAC3E,OAAO,KAAK,CAAA;IACd,CAAC;IAED,kFAAkF;IAElF,KAAK,CAAC,eAAe,CAAC,EAAM,EAAE,WAAmB;QAC/C,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,EAAE;aACR,IAAI,CAAC,WAAW,CAAC;aACjB,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;aAC/C,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAA;QACtC,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,EAAM,EACN,WAAmB,EACnB,KAAyE;QAEzE,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,WAAW,CAAC;aACnB,MAAM,CAAC;YACN,EAAE,EAAE,MAAM,EAAE;YACZ,WAAW;YACX,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,aAAa,EAAE,KAAK,CAAC,aAAa,IAAI,IAAI;SAC3C,CAAC;aACD,SAAS,EAAE,CAAA;QACd,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,EAAE,GAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QACnE,OAAO,YAAY,CAAC,GAAI,CAAC,CAAA;IAC3B,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,EAAM,EACN,WAAmB,EACnB,EAAU,EACV,KAA2E;QAE3E,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,WAAW,CAAC;aACnB,GAAG,CAAC;YACH,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC;SACrF,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aAC5E,SAAS,EAAE,CAAA;QACd,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAA;QACjD,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QAC9D,OAAO,YAAY,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU;QAC5D,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAA;QAC1F,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QACzG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;IAChE,CAAC;IAED,mFAAmF;IAEnF,KAAK,CAAC,aAAa,CACjB,EAAM,EACN,WAAmB,EACnB,OAA0D,EAAE;QAE5D,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAA;QACrE,IAAI,IAAI,CAAC,SAAS;YAChB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAE,CAAC,CAAA;QACzF,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;aACtB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;QACrD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,UAAU,CACd,EAAM,EACN,WAAmB,EACnB,OAA0D,EAAE;QAE5D,OAAO,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IAC1E,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,iBAAiB,CAAC,EAAM,EAAE,WAAmB,EAAE,UAAoB;QACvE,IAAI,CAAC,UAAU,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,WAAW,CAAC,CAAA;QAC/D,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAA;QACxC,KAAK,MAAM,SAAS,IAAI,UAAU;YAChC,KAAK,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,SAAS,EAAE,CAAC;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;QAC1F,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;IAC3B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAM,EAAE,WAAmB,EAAE,KAAqB;QAClE,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE;aACrB,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;aAC5B,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC;QACtC,wFAAwF;QACxF,yFAAyF;QACzF,oEAAoE;QACpE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAC7B,CACF;aACA,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,KAAK;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,cAAc,KAAK,CAAC,GAAG,mBAAmB,EAAE,yBAAyB,CAAC,CAAA;QAC1G,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,SAAS,CAAC;aACjB,MAAM,CAAC;YACN,EAAE,EAAE,MAAM,EAAE;YACZ,WAAW;YACX,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;YAClC,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACtC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;YAC5B,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI;YACxC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;YAC1B,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,KAAK;YACrC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;YACjC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK;YACvC,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC;SACxB,CAAC;aACD,SAAS,EAAE,CAAA;QACd,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,GAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QAC7D,OAAO,UAAU,CAAC,GAAI,CAAC,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,WAAW,CACf,EAAM,EACN,WAAmB,EACnB,EAAU,EACV,KAAoD;QAEpD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,SAAS,CAAC;aACjB,GAAG,CAAC;YACH,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;YACxE,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9E,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;YACjF,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;YAC/D,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;YAC3E,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrE,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9E,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;YAC5D,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aACxE,SAAS,EAAE,CAAA;QACd,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QACxD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU,EAAE,QAAiB;QAC3E,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,SAAS,CAAC;aACjB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;aACxE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aACxE,SAAS,EAAE,CAAA;QACd,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QACxD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,wGAAwG;IACxG,KAAK,CAAC,WAAW,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU;QACvD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aACxE,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,EAAE;aACL,MAAM,CAAC,MAAM,CAAC;aACd,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAA,GAAG,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC;aACnD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,GAAG,CAAA,GAAG,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACtF,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QACnG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;IAC1D,CAAC;IAED,+EAA+E;IAE/E,KAAK,CAAC,aAAa,CACjB,EAAM,EACN,WAAmB,EACnB,OAA0D,EAAE;QAE5D,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;QACxD,IAAI,CAAC,IAAI,CAAC,eAAe;YAAE,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAA;QACrE,IAAI,IAAI,CAAC,SAAS;YAChB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAE,CAAC,CAAA;QACzF,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;aACtB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;QAC/B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAA;QACvC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE;iBACjB,MAAM,CAAC,EAAE,CAAC,EAAE,GAAG,CAAQ,eAAe,EAAE,CAAC;iBACzC,IAAI,CAAC,aAAa,CAAC;iBACnB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC/F,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC7D,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU;QAC1D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aACxE,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QAC9C,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAM,EAAE,WAAmB,EAAE,KAAqB;QACrE,gGAAgG;QAChG,4FAA4F;QAC5F,oFAAoF;QACpF,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC,CAAA;QAC/E,IAAI,CAAC,SAAS,CAAC,EAAE;YACf,MAAM,SAAS,CAAC,UAAU,CAAC,6BAA6B,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC7F,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,CAAA;QAC9F,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,SAAS,CAAC;aACjB,MAAM,CAAC;YACN,EAAE,EAAE,MAAM,EAAE;YACZ,WAAW;YACX,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI;YAClC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACtC,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,KAAK;SACpC,CAAC;aACD,SAAS,EAAE,CAAA;QACd,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,GAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QAChE,OAAO,UAAU,CAAC,GAAI,EAAE,CAAC,CAAC,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,EAAM,EACN,WAAmB,EACnB,EAAU,EACV,KAA8B;QAE9B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;QAC9D,IAAI,UAAU,GAAG,OAAO,CAAC,UAAgC,CAAA;QACzD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC,CAAA;YAC/E,IAAI,CAAC,SAAS,CAAC,EAAE;gBACf,MAAM,SAAS,CAAC,UAAU,CAAC,6BAA6B,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC7F,UAAU,GAAG,SAAS,CAAC,UAAU,CAAA;YACjC,MAAM,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,CAAC,CAAA;QACrE,CAAC;QACD,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QACxF,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,SAAS,CAAC;aACjB,GAAG,CAAC;YACH,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC;YAC9E,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;YACxE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;YACxE,UAAU;YACV,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aACxE,SAAS,EAAE,CAAA;QACd,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QAC3D,OAAO,UAAU,CAAC,GAAI,CAAC,CAAA;IACzB,CAAC;IAED,wFAAwF;IAChF,KAAK,CAAC,uBAAuB,CACnC,EAAM,EACN,WAAmB,EACnB,UAAkB,EAClB,IAAwB;QAExB,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACrD,MAAM,QAAQ,GAAG,MAAM,EAAE;aACtB,MAAM,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC;aAChC,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;QACnG,IAAI,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAM;QAE5B,2FAA2F;QAC3F,yEAAyE;QACzE,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAQ,eAAe,EAAE,CAAC;aACpE,IAAI,CAAC,MAAM,CAAC;aACZ,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,EACnC,OAAO,CACL,MAAM,CAAC,MAAM,EACb,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAC1B,CACF,CACF;aACA,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAC5F,IAAI,OAAO,CAAC,MAAM;YAChB,MAAM,SAAS,CAAC,QAAQ,CACtB,0BAA0B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC9C,gCAAgC,CACjC,CAAA;IACL,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,EAAM,EAAE,WAAmB,EAAE,SAAwB;QACtF,MAAM,EAAE;aACL,MAAM,CAAC,SAAS,CAAC;aACjB,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;aACzB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EACtC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAC7E,CACF,CAAA;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU,EAAE,QAAiB;QAC9E,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,SAAS,CAAC;aACjB,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;aACxE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aACxE,SAAS,EAAE,CAAA;QACd,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QAC9C,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QAC3D,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,4CAA4C;IAC5C,cAAc,CAAC,GAAoB;QACjC,OAAO,cAAc,CAAC,GAAG,CAAC,CAAA;IAC5B,CAAC;IACD,kBAAkB,CAAC,GAAgB;QACjC,OAAO,UAAU,CAAC,GAAG,CAAC,CAAA;IACxB,CAAC;IAED,+DAA+D;IAC/D,QAAQ,CAAC,UAAmB;QAC1B,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC,CAAA;QACtE,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAA;IAC1F,CAAC;IAED,iBAAiB;QACf,OAAQ,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAA0B,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACzE,MAAM,UAAU,GAAG,0BAA0B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;YACzD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,CAAA;QAClD,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,sFAAsF;IAEtF,KAAK,CAAC,mBAAmB,CAAC,EAAM,EAAE,WAAmB;QACnD,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,EAAE;aACR,IAAI,CAAC,eAAe,CAAC;aACrB,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;aACnD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAA;QAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;IACnC,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,EAAM,EACN,WAAmB,EACnB,KAA2B;QAE3B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,eAAe,CAAC;aACvB,MAAM,CAAC;YACN,EAAE,EAAE,MAAM,EAAE;YACZ,WAAW;YACX,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;YAC1C,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC;aACD,SAAS,EAAE,CAAA;QACd,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,EAAE,GAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;QACvE,OAAO,gBAAgB,CAAC,GAAI,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,EAAM,EACN,WAAmB,EACnB,EAAU,EACV,KAAoC;QAEpC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,eAAe,CAAC;aACvB,GAAG,CAAC;YACH,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAChG,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACrE,SAAS,EAAE,IAAI,IAAI,EAAE;SACtB,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;aACpF,SAAS,EAAE,CAAA;QACd,IAAI,CAAC,GAAG;YAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QACrD,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;QAClE,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAA;IAC9B,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,EAAM,EAAE,WAAmB,EAAE,EAAU;QAChE,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAA;QAClG,MAAM,EAAE;aACL,MAAM,CAAC,eAAe,CAAC;aACvB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;QACvF,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,EAAE,EAAE,EAAE,SAAS,CAAC,CAAA;IACpE,CAAC;IAED,gFAAgF;IAEhF;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,EAAM,EACN,OAAmB,EACnB,MAAc;QAEd,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QAC1E,IAAI,IAAI,EAAE,UAAU,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;YACzF,IAAI,GAAG;gBAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,UAAgC,EAAE,CAAA;QAC1F,CAAC;QACD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE;iBACtB,MAAM,EAAE;iBACR,IAAI,CAAC,eAAe,CAAC;iBACrB,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;iBACvD,KAAK,CAAC,CAAC,CAAC,CAAA;YACX,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,QAAQ,GAAI,MAAM,CAAC,QAA0D,IAAI,EAAE,CAAA;gBACzF,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,UAAU,IAAI,MAAM,CAAC,iBAAiB,CAAA;gBAChG,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;gBAChF,IAAI,GAAG;oBAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,GAAG,CAAC,UAAgC,EAAE,CAAA;YAC1F,CAAC;QACH,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,EAAE;aACxB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EACtC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,EAC5B,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAE,CACtE,CACF;aACA,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAA;QACpC,MAAM,MAAM,GACV,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC,SAAS,CAAC;YACjE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,EAAE,CAAC;YAClD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YACnC,UAAU,CAAC,CAAC,CAAC,CAAA;QACf,IAAI,CAAC,MAAM;YAAE,MAAM,SAAS,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAA;QACvE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAgC,EAAE,CAAA;IACvF,CAAC;IAED,kGAAkG;IAClG,KAAK,CAAC,kBAAkB,CAAC,EAAM,EAAE,WAAmB,EAAE,SAAkB;QACtE,MAAM,OAAO,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAA;QACtF,IAAI,SAAS;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAE,CAAC,CAAA;QACjG,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAA;QACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAA;QAC1C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,UAAU,GAAG,GAAG,CAAC,UAAgC,CAAA;YACvD,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnE,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;oBAAE,SAAQ;gBACjC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE;oBAClB,EAAE,EAAE,MAAM,CAAC,EAAE;oBACb,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;oBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK;oBAC5B,UAAU,EAAE,GAAG,CAAC,EAAE;iBACnB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAC7F,CAAC;IAED,6EAA6E;IAE7E,qEAAqE;IACrE,KAAK,CAAC,WAAW,CACf,EAAM,EACN,WAAmB,EACnB,SAAiB,EACjB,QAAgB;QAEhB,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAA;QAC9D,MAAM,UAAU,GAAG,MAAM,EAAE,CAAA;QAC3B,MAAM,UAAU,GAAG,0BAA0B,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAChC,EAAE,EAAE,UAAU;YACd,WAAW;YACX,SAAS;YACT,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,IAAI;YAC3C,UAAU;YACV,SAAS,EAAE,IAAI;SAChB,CAAC,CAAA;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,MAAO,CAAA;QACxD,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAA;QACvD,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,IAAI,aAAa,GAAG,EAAE,CAAA;QACtB,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;YACnB,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAChB,IAAI,IAAI,CAAC,GAAG,KAAK,UAAU;gBAAE,aAAa,GAAG,EAAE,CAAA;YAC/C,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC;gBACpC,EAAE;gBACF,WAAW;gBACX,SAAS;gBACT,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,GAAG,KAAK,UAAU;gBAClC,UAAU;gBACV,KAAK;aACN,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,IAAI,OAAO,CAAC,CAAC,CAAE,EAAE,CAAA;IAC7E,CAAC;IAED,mFAAmF;IACnF,KAAK,CAAC,wBAAwB,CAC5B,EAAM,EACN,WAAmB,EACnB,SAAiB,EACjB,IAA6B;QAE7B,MAAM,WAAW,GAAI,IAAI,CAAC,SAA8C,IAAI,EAAE,CAAA;QAC9E,MAAM,KAAK,GACR,IAAI,CAAC,KAQH,IAAI,EAAE,CAAA;QACX,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QACrD,MAAM,WAAW,GAAa,EAAE,CAAA;QAChC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;YACnB,0FAA0F;YAC1F,2FAA2F;YAC3F,4FAA4F;YAC5F,MAAM,SAAS,GAAG,kBAAkB,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,CAAA;YACpF,IAAI,CAAC,SAAS,CAAC,EAAE;gBACf,MAAM,SAAS,CAAC,UAAU,CAAC,sBAAsB,UAAU,CAAC,IAAI,gBAAgB,EAAE;oBAChF,QAAQ,EAAE,SAAS,CAAC,QAAQ;iBAC7B,CAAC,CAAA;YACJ,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACpB,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;gBAChC,EAAE;gBACF,WAAW;gBACX,SAAS;gBACT,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,SAAS,EAAE,WAAW,CAAC,MAAM,KAAK,CAAC;aACpC,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,aAAa,GAAG,EAAE,CAAA;QACtB,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;YAC5C,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;YACnB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,aAAa;gBAAE,aAAa,GAAG,EAAE,CAAA;YACxD,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC;gBACpC,EAAE;gBACF,WAAW;gBACX,SAAS;gBACT,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI;gBACvB,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;gBACzB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;gBAC3B,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAE;gBACnE,KAAK;aACN,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAE,EAAE,aAAa,EAAE,CAAA;IACvD,CAAC;IAED,oFAAoF;IACpF,KAAK,CAAC,eAAe,CAAC,EAAM,EAAE,WAAmB,EAAE,SAAiB;QAClE,MAAM,QAAQ,GAAG,MAAM,EAAE;aACtB,MAAM,EAAE;aACR,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;aAC9F,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAA;QACpC,MAAM,YAAY,GAAG,MAAM,EAAE;aAC1B,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;QACzF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QACpE,MAAM,SAAS,GAAG,MAAM,EAAE;aACvB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;QACzF,OAAO;YACL,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;YAChD,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC1B,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,aAAa,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzE,CAAC,CAAC;YACH,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC5B,GAAG,EAAE,CAAC,CAAC,GAAG;gBACV,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAC,CAAC;SACJ,CAAA;IACH,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,gBAAgB,CAAC,EAAM,EAAE,WAAmB,EAAE,GAAa;QAC/D,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,OAAM;QACvB,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC;aAChC,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QACzF,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI;YAAE,MAAM,SAAS,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAA;IACvG,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,0BAA0B,CAC9B,SAAoB,EACpB,WAAmB,EACnB,UAAkB;QAElB,KAAK,IAAI,CAAC,MAAM,CAAA;QAChB,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,EAAE;YACrD,IAAI,EAAE,WAAW;YACjB,EAAE,EAAE,WAAW;YACf,WAAW;SACZ,CAAC,CAAA;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/server/services/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../../src/server/services/planning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"planning.d.ts","sourceRoot":"","sources":["../../../src/server/services/planning.ts"],"names":[],"mappings":"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"}
@@ -536,6 +536,15 @@ export class PlanningService {
536
536
  }
537
537
  async createLabel(tx, principal, workspaceId, input) {
538
538
  await this.requireLabelManage(tx, principal, workspaceId, input.projectId ?? null);
539
+ // A duplicate used to surface as a raw constraint violation — a 500 for something the person
540
+ // did on purpose and can fix in a second.
541
+ const [clash] = await tx
542
+ .select({ id: labels.id })
543
+ .from(labels)
544
+ .where(and(eq(labels.workspaceId, workspaceId), eq(labels.name, input.name), input.projectId ? eq(labels.projectId, input.projectId) : isNull(labels.projectId)))
545
+ .limit(1);
546
+ if (clash)
547
+ throw KernError.conflict(`The label "${input.name}" already exists`, 'tracker.label.name_taken');
539
548
  const [row] = await tx
540
549
  .insert(labels)
541
550
  .values({