@webda/content-mapper 4.0.0-beta.7 → 4.0.0-beta.8

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.
package/lib/module.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ClassDeclaration } from "typescript/unstable/ast";
1
+ import type { ClassDeclaration, Node } from "typescript/unstable/ast";
2
2
  import { type ReflectedAttribute } from "./module-discovery.ts";
3
3
  import type { AnalysisContext } from "./plan.ts";
4
4
  import type { JSONSchema7 } from "./schema/types.ts";
@@ -67,11 +67,25 @@ export interface ModelEntry {
67
67
  Reflection: Record<string, ReflectedAttribute>;
68
68
  Schemas: Record<string, JSONSchema7>;
69
69
  Actions: Record<string, Record<string, unknown>>;
70
+ /** `@Shared()` methods, only when the model declares some. */
71
+ Shared?: Record<string, SharedMethodEntry>;
70
72
  Events: string[];
71
73
  PrimaryKey: string[];
72
74
  PrimaryKeySeparator?: string;
73
75
  Identifier: string;
76
+ Aliases?: string[];
74
77
  }
78
+ /** A model method shared with the frontend SDK. */
79
+ export interface SharedMethodEntry {
80
+ /** Static method. */
81
+ static?: boolean;
82
+ /** The method declaration, decorators removed, type annotations kept. */
83
+ source: string;
84
+ /** Identifiers used from the allowlisted modules, by module specifier. */
85
+ imports?: Record<string, string[]>;
86
+ }
87
+ /** Modules a `@Shared` method may import from when the application sets no `sharedImports`. */
88
+ export declare const DEFAULT_SHARED_IMPORTS: string[];
75
89
  /** A behaviour entry. */
76
90
  export interface BehaviorEntry {
77
91
  Identifier: string;
@@ -115,6 +129,11 @@ export interface ModuleOptions {
115
129
  * application's `package.json`.
116
130
  */
117
131
  capabilities?: Record<string, string>;
132
+ /**
133
+ * Modules a `@Shared` model method may import from; {@link DEFAULT_SHARED_IMPORTS}
134
+ * by default.
135
+ */
136
+ sharedImports?: string[];
118
137
  }
119
138
  /** What {@link generateWebdaModule} returns. */
120
139
  export interface ModuleResult {
@@ -152,6 +171,30 @@ export declare function sortObject<T, U = T>(unordered: Record<string, T>, trans
152
171
  * @returns action name to metadata
153
172
  */
154
173
  export declare function buildModelActions(ctx: AnalysisContext, cls: ClassDeclaration): Record<string, Record<string, unknown>>;
174
+ /** Options of {@link buildModelShared}. */
175
+ export interface SharedOptions {
176
+ /** Namespaced model name, for the error messages. */
177
+ modelName: string;
178
+ /** Module specifiers a shared method may import from. */
179
+ sharedImports: string[];
180
+ }
181
+ /**
182
+ * A model's `Shared` methods, with their purity checked.
183
+ *
184
+ * A shared method's source is copied into the frontend SDK, so its body may only
185
+ * use its parameters and locals, `this.<attribute>`, `this.<@Shared method>`,
186
+ * `<Model>.<static @Shared method>`, the standard globals and identifiers
187
+ * imported from the allowlisted modules. Anything else is reported as an error,
188
+ * which fails the build.
189
+ * @param ctx - analysis context
190
+ * @param cls - the model class
191
+ * @param options - model name and allowlist
192
+ * @returns method name to metadata, and the purity errors
193
+ */
194
+ export declare function buildModelShared(ctx: AnalysisContext, cls: ClassDeclaration, options: SharedOptions): {
195
+ methods: Record<string, SharedMethodEntry>;
196
+ errors: string[];
197
+ };
155
198
  /**
156
199
  * A model's `Events`, as `EventsMetadata`.
157
200
  * @param ctx - analysis context
@@ -194,6 +237,16 @@ export declare function buildCommands(ctx: AnalysisContext, cls: ClassDeclaratio
194
237
  * @returns sorted capability names
195
238
  */
196
239
  export declare function buildCapabilities(ctx: AnalysisContext, cls: ClassDeclaration): string[];
240
+ /**
241
+ * The `@WebdaAlias` names of a model: one per tag (its first token), completed with the package namespace when
242
+ * they have no `/`, deduplicated in declaration order.
243
+ *
244
+ * `webdaTags` keeps one value per tag name, so the tags are read directly.
245
+ * @param cls - the model class
246
+ * @param namespace - project namespace
247
+ * @returns the aliases
248
+ */
249
+ export declare function buildModelAliases(cls: Node, namespace: string | undefined): string[];
197
250
  /**
198
251
  * A Behavior's `Actions`, as `BehaviorsMetadata`.
199
252
  * @param ctx - analysis context
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
package/lib/module.js CHANGED
@@ -18,7 +18,7 @@
18
18
  * so the committed file only changes when its content does.
19
19
  */
20
20
  import { existsSync, readFileSync } from "node:fs";
21
- import { join, relative } from "node:path";
21
+ import { dirname, join, relative } from "node:path";
22
22
  import { getJSDocTags, getTextOfJSDocComment, SyntaxKind } from "typescript/unstable/ast";
23
23
  import * as is from "typescript/unstable/ast/is";
24
24
  import { SymbolFlags } from "typescript/unstable/sync";
@@ -29,6 +29,8 @@ import { generateTopLevelSchemas } from "./schema/project.js";
29
29
  import { findParametersNode, generateServiceSchema } from "./schema/service.js";
30
30
  /** Value of `$schema` in every generated module. */
31
31
  export const WEBDA_MODULE_SCHEMA = "https://webda.io/schemas/webda.module.v4.json";
32
+ /** Modules a `@Shared` method may import from when the application sets no `sharedImports`. */
33
+ export const DEFAULT_SHARED_IMPORTS = ["@webda/utils", "@webda/ql"];
32
34
  /** Suffixes the content mapper is registered for. */
33
35
  const MAPPED_SUFFIXES = [".model.ts", ".service.ts"];
34
36
  /** Suffix suggested for a section when a file has none of {@link MAPPED_SUFFIXES}. */
@@ -390,6 +392,260 @@ export function buildModelActions(ctx, cls) {
390
392
  decoratedStaticMethods(ctx, cls).forEach(processMethod);
391
393
  return actions;
392
394
  }
395
+ /**
396
+ * Whether a method carries `@Shared`.
397
+ * @param ctx - analysis context
398
+ * @param method - the method
399
+ * @returns true when decorated
400
+ */
401
+ function hasSharedDecorator(ctx, method) {
402
+ return decoratorsOf(method).some(decorator => decoratorName(ctx, decorator) === "Shared");
403
+ }
404
+ /**
405
+ * Whether a module specifier is covered by the allowlist (`@webda/utils` covers `@webda/utils/lib/x.js`).
406
+ * @param specifier - the imported module
407
+ * @param allowed - the allowlist
408
+ * @returns true when allowed
409
+ */
410
+ function isAllowedImport(specifier, allowed) {
411
+ return allowed.some(module => specifier === module || specifier.startsWith(`${module}/`));
412
+ }
413
+ /**
414
+ * The import declaration an alias symbol comes from.
415
+ * @param ctx - analysis context
416
+ * @param symbol - the alias symbol, unresolved
417
+ * @returns module specifier and the import binding text, undefined when it is not an `import` declaration
418
+ */
419
+ function importOf(ctx, symbol) {
420
+ for (const declaration of declarationsOf(ctx, symbol)) {
421
+ // The import clause, whose parent holds the module specifier
422
+ let clause;
423
+ let binding;
424
+ switch (declaration.kind) {
425
+ case SyntaxKind.ImportClause:
426
+ clause = declaration;
427
+ binding = `default as ${text(ctx, declaration.name)}`;
428
+ break;
429
+ case SyntaxKind.NamespaceImport:
430
+ clause = declaration.parent;
431
+ binding = `* as ${text(ctx, declaration.name)}`;
432
+ break;
433
+ case SyntaxKind.ImportSpecifier: {
434
+ clause = declaration.parent.parent;
435
+ const name = text(ctx, declaration.name);
436
+ const property = declaration.propertyName;
437
+ binding = property ? `${text(ctx, property)} as ${name}` : name;
438
+ break;
439
+ }
440
+ default:
441
+ // `import x = Namespace.member`, `export { x }`...: no module to check
442
+ continue;
443
+ }
444
+ return { module: clause.parent.moduleSpecifier.text, binding };
445
+ }
446
+ return undefined;
447
+ }
448
+ /**
449
+ * A model's `Shared` methods, with their purity checked.
450
+ *
451
+ * A shared method's source is copied into the frontend SDK, so its body may only
452
+ * use its parameters and locals, `this.<attribute>`, `this.<@Shared method>`,
453
+ * `<Model>.<static @Shared method>`, the standard globals and identifiers
454
+ * imported from the allowlisted modules. Anything else is reported as an error,
455
+ * which fails the build.
456
+ * @param ctx - analysis context
457
+ * @param cls - the model class
458
+ * @param options - model name and allowlist
459
+ * @returns method name to metadata, and the purity errors
460
+ */
461
+ export function buildModelShared(ctx, cls, options) {
462
+ const methods = {};
463
+ const errors = [];
464
+ const declared = cls.members.filter((member) => is.isMethodDeclaration(member) && hasSharedDecorator(ctx, member));
465
+ if (!declared.length)
466
+ return { methods, errors };
467
+ const classSymbol = cls.name ? resolveAlias(ctx, ctx.checker.getSymbolAtLocation(cls.name)) : undefined;
468
+ const sf = sourceFileOf(cls);
469
+ const appRoot = (() => {
470
+ let folder = dirname(sf.fileName);
471
+ while (folder.length > 1 && !existsSync(join(folder, "package.json")))
472
+ folder = dirname(folder);
473
+ return folder;
474
+ })();
475
+ for (const method of declared) {
476
+ const methodName = text(ctx, method.name);
477
+ const label = `${options.modelName}.${methodName}`;
478
+ const imports = {};
479
+ const problems = [];
480
+ const report = (problem) => {
481
+ if (!problems.includes(problem))
482
+ problems.push(problem);
483
+ };
484
+ /**
485
+ * @param node - a node
486
+ * @returns true when the node is declared inside the method (parameter, local, type parameter)
487
+ */
488
+ const isLocal = (node) => sourceFileOf(node)?.fileName === sf.fileName && node.pos >= method.pos && node.end <= method.end;
489
+ /**
490
+ * @param name - a member name node of `this.<name>` or `<Model>.<name>`
491
+ * @param isStatic - static access
492
+ */
493
+ const checkMember = (name, isStatic) => {
494
+ const member = text(ctx, name);
495
+ const symbol = ctx.checker.getSymbolAtLocation(name);
496
+ const declaration = valueDeclarationOf(ctx, symbol) ?? declarationsOf(ctx, symbol)[0];
497
+ const prefix = isStatic ? `${text(ctx, cls.name)}.` : "this.";
498
+ if (!declaration) {
499
+ report(`${label} is @Shared but references '${prefix}${member}' which is not declared on the model`);
500
+ return;
501
+ }
502
+ const kind = declaration.kind;
503
+ if (kind === SyntaxKind.MethodDeclaration || kind === SyntaxKind.MethodSignature) {
504
+ if (!hasSharedDecorator(ctx, declaration)) {
505
+ report(`${label} is @Shared but references '${prefix}${member}()' which is not @Shared`);
506
+ }
507
+ return;
508
+ }
509
+ if (kind === SyntaxKind.PropertyDeclaration ||
510
+ kind === SyntaxKind.PropertySignature ||
511
+ kind === SyntaxKind.GetAccessor ||
512
+ kind === SyntaxKind.SetAccessor ||
513
+ // A parameter reached through `this.` is a parameter property: `constructor(public id: string)`
514
+ kind === SyntaxKind.Parameter) {
515
+ return;
516
+ }
517
+ report(`${label} is @Shared but references '${prefix}${member}' which is neither an attribute nor a @Shared method`);
518
+ };
519
+ /**
520
+ * @param node - an identifier used as a value or a type
521
+ */
522
+ const checkIdentifier = (node) => {
523
+ const name = text(ctx, node);
524
+ const symbol = ctx.checker.getSymbolAtLocation(node);
525
+ if (!symbol) {
526
+ report(`${label} is @Shared but references '${name}' which cannot be resolved`);
527
+ return;
528
+ }
529
+ if (symbol.flags & SymbolFlags.Alias) {
530
+ const imported = importOf(ctx, symbol);
531
+ if (imported && isAllowedImport(imported.module, options.sharedImports)) {
532
+ (imports[imported.module] ??= new Set()).add(imported.binding);
533
+ return;
534
+ }
535
+ report(`${label} is @Shared but references '${name}' from "${imported?.module ?? "an unknown module"}"`);
536
+ return;
537
+ }
538
+ if (classSymbol && symbol === classSymbol)
539
+ return;
540
+ const declarations = declarationsOf(ctx, symbol);
541
+ if (!declarations.length) {
542
+ // No declaration node: a global the checker synthesizes (`undefined`, `arguments`...)
543
+ return;
544
+ }
545
+ if (declarations.some(isLocal))
546
+ return;
547
+ const files = declarations.map(declaration => sourceFileOf(declaration)?.fileName).filter(Boolean);
548
+ // The standard library: `lib.es2022.d.ts`, `lib.dom.d.ts`... shipped by typescript or its native package
549
+ if (files.every(file => /\/lib\.[^/]+\.d\.ts$/.test(file) && /^(@typescript\/|typescript$)/.test(packageOf(file) ?? ""))) {
550
+ return;
551
+ }
552
+ const file = files[0];
553
+ const pkg = file.includes("/node_modules/") ? packageOf(file) : undefined;
554
+ if (pkg) {
555
+ report(`${label} is @Shared but references '${name}' from "${pkg}"`);
556
+ }
557
+ else {
558
+ report(`${label} is @Shared but references '${name}' declared in ${relative(appRoot, file).replace(/\\/g, "/")}`);
559
+ }
560
+ };
561
+ /**
562
+ * @param node - current node
563
+ */
564
+ const visit = (node) => {
565
+ const kind = node.kind;
566
+ if (kind === SyntaxKind.Decorator)
567
+ return;
568
+ if (kind === SyntaxKind.SuperKeyword) {
569
+ report(`${label} is @Shared but references 'super'`);
570
+ return;
571
+ }
572
+ if (kind === SyntaxKind.PropertyAccessExpression) {
573
+ const expression = node.expression;
574
+ const name = node.name;
575
+ if (expression.kind === SyntaxKind.ThisKeyword) {
576
+ checkMember(name, false);
577
+ return;
578
+ }
579
+ if (is.isIdentifier(expression) && classSymbol) {
580
+ const symbol = resolveAlias(ctx, ctx.checker.getSymbolAtLocation(expression));
581
+ if (symbol === classSymbol) {
582
+ checkMember(name, true);
583
+ return;
584
+ }
585
+ }
586
+ visit(expression);
587
+ return;
588
+ }
589
+ if (kind === SyntaxKind.QualifiedName) {
590
+ visit(node.left);
591
+ return;
592
+ }
593
+ if (is.isIdentifier(node)) {
594
+ const parent = node.parent;
595
+ // Declaration names and property keys are not references
596
+ if (parent.name === node && parent.kind !== SyntaxKind.ShorthandPropertyAssignment) {
597
+ const declaring = [
598
+ SyntaxKind.Parameter,
599
+ SyntaxKind.VariableDeclaration,
600
+ SyntaxKind.BindingElement,
601
+ SyntaxKind.FunctionDeclaration,
602
+ SyntaxKind.FunctionExpression,
603
+ SyntaxKind.ClassDeclaration,
604
+ SyntaxKind.ClassExpression,
605
+ SyntaxKind.TypeParameter,
606
+ SyntaxKind.PropertyAssignment,
607
+ SyntaxKind.PropertyDeclaration,
608
+ SyntaxKind.MethodDeclaration,
609
+ SyntaxKind.GetAccessor,
610
+ SyntaxKind.SetAccessor,
611
+ SyntaxKind.PropertySignature,
612
+ SyntaxKind.MethodSignature,
613
+ SyntaxKind.EnumMember
614
+ ];
615
+ if (declaring.includes(parent.kind))
616
+ return;
617
+ }
618
+ // Labels: `outer: for (...) { break outer; }`
619
+ if (parent.kind === SyntaxKind.LabeledStatement ||
620
+ parent.kind === SyntaxKind.BreakStatement ||
621
+ parent.kind === SyntaxKind.ContinueStatement)
622
+ return;
623
+ checkIdentifier(node);
624
+ return;
625
+ }
626
+ node.forEachChild(child => {
627
+ visit(child);
628
+ return undefined;
629
+ });
630
+ };
631
+ // Name, type parameters, parameters, return type and body: the decorators are skipped by `visit`
632
+ method.forEachChild(child => {
633
+ visit(child);
634
+ return undefined;
635
+ });
636
+ errors.push(...problems);
637
+ // Every method here carries `@Shared`: the source starts after the last decorator
638
+ const start = Math.max(...decoratorsOf(method).map(decorator => decorator.end));
639
+ const source = sf.text.slice(start, method.end).trim();
640
+ const entry = isStaticMember(method) ? { static: true, source } : { source };
641
+ const modules = Object.keys(imports).sort();
642
+ if (modules.length) {
643
+ entry.imports = Object.fromEntries(modules.map(module => [module, [...imports[module]].sort()]));
644
+ }
645
+ methods[methodName] = entry;
646
+ }
647
+ return { methods, errors };
648
+ }
393
649
  /**
394
650
  * A model's `Events`, as `EventsMetadata`.
395
651
  * @param ctx - analysis context
@@ -631,6 +887,36 @@ function behaviorIdentifier(cls, namespace) {
631
887
  return undefined;
632
888
  return completeNamespace(className, namespace);
633
889
  }
890
+ /**
891
+ * The `@WebdaAlias` names of a model: one per tag (its first token), completed with the package namespace when
892
+ * they have no `/`, deduplicated in declaration order.
893
+ *
894
+ * `webdaTags` keeps one value per tag name, so the tags are read directly.
895
+ * @param cls - the model class
896
+ * @param namespace - project namespace
897
+ * @returns the aliases
898
+ */
899
+ export function buildModelAliases(cls, namespace) {
900
+ let tags = [];
901
+ try {
902
+ tags = getJSDocTags(cls);
903
+ }
904
+ catch {
905
+ tags = [];
906
+ }
907
+ const aliases = [];
908
+ for (const tag of tags) {
909
+ if (tag.tagName.text !== "WebdaAlias")
910
+ continue;
911
+ const name = (getTextOfJSDocComment(tag.comment) ?? "").trim().split(/\s+/).shift();
912
+ if (!name)
913
+ continue;
914
+ const alias = completeNamespace(name, namespace);
915
+ if (!aliases.includes(alias))
916
+ aliases.push(alias);
917
+ }
918
+ return aliases;
919
+ }
634
920
  /**
635
921
  * `WebdaProject.completeNamespace`.
636
922
  * @param name - a bare or qualified name
@@ -1159,8 +1445,16 @@ export function generateWebdaModule(ctx, options) {
1159
1445
  // Commands, Events, PrimaryKey, Plural.
1160
1446
  for (const { object, declaration } of models) {
1161
1447
  const entry = module.models[object.name];
1162
- if (entry)
1163
- entry.Actions = buildModelActions(ctx, declaration);
1448
+ if (!entry)
1449
+ continue;
1450
+ entry.Actions = buildModelActions(ctx, declaration);
1451
+ const shared = buildModelShared(ctx, declaration, {
1452
+ modelName: object.name,
1453
+ sharedImports: options.sharedImports ?? DEFAULT_SHARED_IMPORTS
1454
+ });
1455
+ if (Object.keys(shared.methods).length)
1456
+ entry.Shared = shared.methods;
1457
+ errors.push(...shared.errors);
1164
1458
  }
1165
1459
  for (const { sf, declaration } of behaviorClasses(ctx)) {
1166
1460
  const identifier = behaviorIdentifier(declaration, namespace);
@@ -1204,6 +1498,17 @@ export function generateWebdaModule(ctx, options) {
1204
1498
  if (primaryKeySeparator)
1205
1499
  entry.PrimaryKeySeparator = primaryKeySeparator;
1206
1500
  entry.Plural = tags.WebdaPlural || getPlural(object.name.split("/").pop());
1501
+ const aliases = buildModelAliases(declaration, namespace).filter(alias => alias !== object.name);
1502
+ if (aliases.length)
1503
+ entry.Aliases = aliases;
1504
+ }
1505
+ // An alias naming another model would make its rows ambiguous: the build fails instead
1506
+ for (const [name, entry] of Object.entries(module.models)) {
1507
+ for (const alias of entry.Aliases ?? []) {
1508
+ if (module.models[alias]) {
1509
+ errors.push(`${name}: @WebdaAlias ${alias} is the identifier of another model`);
1510
+ }
1511
+ }
1207
1512
  }
1208
1513
  return { module, namingViolations, errors };
1209
1514
  }
package/lib/module.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1F,OAAO,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,YAAY,EACZ,SAAS,EACT,iBAAiB,EAKlB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAGhF,oDAAoD;AACpD,MAAM,CAAC,MAAM,mBAAmB,GAAG,+CAA+C,CAAC;AA2HnF,qDAAqD;AACrD,MAAM,eAAe,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;AAErD,sFAAsF;AACtF,MAAM,cAAc,GAA2B;IAC7C,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,aAAa;IACpB,SAAS,EAAE,aAAa;CACzB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IACxE,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,GAAG,GAAG,CAAC;QAC7D,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IACpD,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IAC3E,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IAC1E,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;IACzE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;IAC1E,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IAC5E,IACE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACnB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAClB,CAAC;QACD,OAAO,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,OAAO,IAAI,GAAG,GAAG,CAAC;AACpB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAW,SAA4B,EAAE,WAAW,GAAoB,CAAC,CAAC,EAAE,CAAC,CAAQ;IAC7G,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,SAAS,IAAI,CAAC,GAAoB,EAAE,IAAU;IAC5C,OAAO,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,IAAU;IAC9B,MAAM,MAAM,GAAI,IAAY,CAAC,aAAa,EAAE,EAAE,IAAK,IAAY,CAAC,WAAW,CAAC;IAC5E,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,IAAI,OAAO,GAAqB,IAAI,CAAC;IACrC,OAAO,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU;QAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IACnF,OAAO,OAAqB,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,IAAU;IAC9B,OAAO,CAAE,IAAY,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC;AAC5G,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,GAAoB,EAAE,SAAc;IACzD,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;IACxC,IAAI,EAAE,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,YAAY,CAAE,UAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QACvF,OAAO,IAAI,CAAC,GAAG,EAAG,UAAkB,CAAC,UAAU,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;IAC9D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,GAAoB,EAAE,MAAY;IAC/D,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;QAC3C,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC3C,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,WAAW,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,IAAU;IAChC,OAAO,CAAE,IAAY,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,aAAa,CAAC,CAAC;AAC9G,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAC,IAAU,EAAE,OAAe;IAC1C,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IACtE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,SAAS,CAAC,IAAU;IAC3B,MAAM,IAAI,GAA2B,EAAE,CAAC;IACxC,IAAI,KAAK,GAAmB,EAAE,CAAC;IAC/B,IAAI,CAAC;QACH,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,GAAG,EAAE,CAAC;IACb,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,IAAI,GAAW,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;QACtC,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC;gBACR,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE;oBACtF,IAAY,CAAC,IAAI,EAAE,IAAI,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACjE,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,GAAoB,EAAE,MAA4B;IACtE,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IAC3B,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC;IACvD,IAAI,CAAC;QACH,OAAO,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,GAAoB,EAAE,MAA4B;IACxE,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,YAAY,IAAI,EAAE,EAAE,CAAC;QAChD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,IAAI;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,GAAoB,EAAE,MAA4B;IAC5E,OAAO,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC;AACrE,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,uBAAuB,CAC9B,GAAoB,EACpB,QAAkB,EAClB,WAAmB,EACnB,UAAkB;IAElB,qEAAqE;IACrE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,UAAU,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACjE,KAAK,MAAM,WAAW,IAAI,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,GAAI,WAAmB,CAAC,IAAI,CAAC;QACvC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC;YAAE,SAAS;QACxD,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAE,IAAY,CAAC,UAAU,CAAC,CAAC,CAAC;QACzF,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU;YAAE,SAAS;QAC9C,MAAM,cAAc,GAAG,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACjF,IAAI,IAAI,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC;IAC3D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,GAAoB,EAAE,GAAqB;IACjE,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1E,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,GAAoB,EAAE,GAAqB;IAC/D,OAAO,yBAAyB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,GAAoB,EAAE,QAAkB;IAC9D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,QAAQ;QACnB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC3D,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAyB,EAAE,CAAC;IACtC,KAAK,MAAM,MAAM,IAAI,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAClH,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,GAAoB,EACpB,MAAY,EACZ,UAAmD;IAEnD,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;QACtD,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC3C,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,WAAW,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC;QAAE,OAAO;IACrE,MAAM,QAAQ,GAAI,SAAS,CAAC,UAAkB,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC,QAAQ,CAAC;QAAE,OAAO;IACjE,KAAK,MAAM,QAAQ,IAAK,QAAgB,CAAC,UAAU,EAAE,CAAC;QACpD,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAE,QAAgB,CAAC,IAAI,CAAC;YAAE,SAAS;QAC7F,UAAU,CAAE,QAAgB,CAAC,IAAI,CAAC,IAAI,EAAG,QAAgB,CAAC,WAAW,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,wBAAwB,CAAC,GAAoB,EAAE,GAAqB;IAC3E,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,KAAK,MAAM,QAAQ,IAAI,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,iBAAiB;YAAE,SAAS;QAClE,IAAI,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,IAAyB,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,GAAoB,EAAE,GAAqB;IACzE,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAC/B,CAAC,MAAM,EAA+B,EAAE,CACtC,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC,GAAG,EAAE,MAAM,CAAC,CACjG,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,GAAoB,EACpB,GAAqB;IAErB,IAAI,OAAO,GAA4C,EAAE,CAAC;IAC1D,sDAAsD;IACtD,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC;IACrH,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,GAAG,EAAE,CAAC;QACb,KAAK,MAAM,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IACrE,CAAC;IAED,qDAAqD;IACrD,MAAM,aAAa,GAAG,CAAC,MAAyB,EAAE,EAAE;QAClD,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,cAAc,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,IAAI,GAAG,UAAU,CAAC;QACtB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE;YACvD,IAAI,CAAC,GAAG,KAAK,aAAa,IAAI,GAAG,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;gBACpF,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;YAC/B,CAAC;YACD,4EAA4E;YAC5E,IAAI,GAAG,KAAK,MAAM,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC1E,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,KAAK,UAAU;YAAE,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACvB,CAAC,CAAC;IACF,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1D,sBAAsB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAoB,EAAE,GAAqB;IAC1E,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;IAClH,OAAO,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAoB,EAAE,GAAqB;IAC9E,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC7C,uBAAuB,CAAC,GAAG,EAAE,CAAC,EAAE,eAAe,EAAE,mBAAmB,CAAC,CACtE,CAAC;IACF,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAQ,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC;IAClC,IAAI,QAAQ,IAAI,EAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAK,QAAgB,CAAC,QAAQ,KAAK,UAAU,CAAC,eAAe,EAAE,CAAC;QAC7G,MAAM,KAAK,GAAI,QAAgB,CAAC,IAAI,CAAC;QACrC,IAAI,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,KAAK,MAAM,OAAO,IAAK,KAAa,CAAC,QAAQ,EAAE,CAAC;gBAC9C,IAAI,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAG,OAAe,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YACtG,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;IAC7C,CAAC;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;IAC5C,IAAI,WAAW,IAAI,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;QAClD,MAAM,KAAK,GAAI,WAAmB,CAAC,UAAU,CAAC;QAC9C,IAAI,EAAE,CAAC,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,KAAK,MAAM,OAAO,IAAK,KAAa,CAAC,QAAQ,EAAE,CAAC;gBAC9C,IAAI,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;oBAAE,IAAI,CAAC,IAAI,CAAE,OAAe,CAAC,IAAI,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,GAAoB,EAAE,GAAqB;IACvF,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAC7C,uBAAuB,CAAC,GAAG,EAAE,CAAC,EAAE,eAAe,EAAE,6BAA6B,CAAC,CAChF,CAAC;IACF,MAAM,WAAW,GAAQ,MAAM,CAAC,CAAC,CAAE,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAS,EAAE,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IACpG,OAAO,WAAW,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAE,WAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAChG,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,GAAoB,EAAE,KAAW;IACxD,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,IAAI,EAAE,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CAAC,GAAoB,EAAE,KAAU;IAClD,IAAI,IAAI,GAAiC,QAAQ,CAAC;IAClD,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC5D,IAAI,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC1F,CAAC;IACD,MAAM,GAAG,GAAyB,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,aAAa;QAAE,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC;IACpE,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACtC,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC;YAAE,GAAG,CAAC,OAAO,GAAI,WAAmB,CAAC,IAAI,CAAC;aACxE,IAAI,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC;YAAE,GAAG,CAAC,OAAO,GAAG,MAAM,CAAE,WAAmB,CAAC,IAAI,CAAC,CAAC;aACtF,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,CAAC,WAAW;YAAE,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;aACpE,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,CAAC,YAAY;YAAE,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;IAC7E,CAAC;IAED,MAAM,IAAI,GAAkE,EAAE,CAAC;IAC/E,KAAK,MAAM,OAAO,IAAI,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC9C,IAAI,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvE,IAAI,WAAW;YACb,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC;iBAC9B,IAAI,EAAE;iBACN,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;iBACzB,IAAI,EAAE,CAAC;QACZ,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACrE,IAAI,UAAU;YACZ,IAAI,CAAC,UAAU;gBACb,UAAU,CAAC,CAAC,CAAC;qBACV,IAAI,EAAE;qBACN,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC;qBACzB,IAAI,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;IACD,IAAI,IAAI,CAAC,KAAK;QAAE,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;IACvC,IAAI,IAAI,CAAC,WAAW;QAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACzD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;QAAE,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACpE,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAoB,EAAE,GAAqB;IACvE,MAAM,QAAQ,GAAsC,EAAE,CAAC;IACvD,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC;YAAE,SAAS;QAC9C,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACtD,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC3C,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,cAAc,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,UAAU,CAAC;YAAE,SAAS;QAEvE,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,cAAc,CAAC;QACjE,MAAM,IAAI,GAAI,SAAS,CAAC,UAAkB,CAAC,SAAS,IAAI,EAAE,CAAC;QAC3D,IAAI,WAAmB,CAAC;QACxB,IAAI,OAAY,CAAC;QACjB,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,GAAG,OAAO,CAAC;YACtB,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAAE,SAAS;YAChE,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3B,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,QAA8B,CAAC;QACnC,IAAI,KAAK,GAA+B,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,IAAI,OAAO,IAAI,EAAE,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;YACrD,KAAK,MAAM,QAAQ,IAAK,OAAe,CAAC,UAAU,EAAE,CAAC;gBACnD,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAE,QAAgB,CAAC,IAAI,CAAC;oBAAE,SAAS;gBAC7F,MAAM,GAAG,GAAI,QAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxC,MAAM,WAAW,GAAI,QAAgB,CAAC,WAAW,CAAC;gBAClD,IAAI,GAAG,KAAK,aAAa,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC7D,WAAW,GAAI,WAAmB,CAAC,IAAI,CAAC;gBAC1C,CAAC;qBAAM,IAAI,GAAG,KAAK,UAAU,IAAI,EAAE,CAAC,wBAAwB,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC1E,QAAQ,GAAI,WAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAO,EAAE,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC9G,CAAC;qBAAM,IAAI,CAAC,OAAO,IAAI,GAAG,KAAK,OAAO,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC1E,MAAM,KAAK,GAAI,WAAmB,CAAC,IAAI,CAAC;oBACxC,IAAI,KAAK,KAAK,aAAa,IAAI,KAAK,KAAK,UAAU,IAAI,KAAK,KAAK,aAAa;wBAAE,KAAK,GAAG,KAAK,CAAC;gBAChG,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAyC,EAAE,CAAC;QAC5D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,UAAU;YAAE,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAElG,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7G,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAoB,EAAE,GAAqB;IAC3E,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACtC,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC5D,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC;YAAE,SAAS;QAClD,KAAK,MAAM,MAAM,IAAK,WAAmB,CAAC,eAAe,IAAI,EAAE,EAAE,CAAC;YAChE,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBACzD,KAAK,MAAM,iBAAiB,IAAI,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;oBACzE,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;oBAC1D,IAAI,CAAC,GAAG;wBAAE,SAAS;oBACnB,MAAM,IAAI,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,IAAI,SAAS,CAAC;oBAC/F,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;wBAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,GAAS,EAAE,SAA6B;IAClE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;IAC1C,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC;IAC5D,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QAC5C,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;IAC1B,CAAC;IACD,MAAM,SAAS,GAAI,GAAW,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;IAChD,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IACjC,OAAO,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,SAA6B;IACpE,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,GAAG,SAAS,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAAoB,EACpB,GAAqB,EACrB,UAAkB;IAElB,MAAM,OAAO,GAA4C,EAAE,CAAC;IAC5D,MAAM,aAAa,GAAG,CAAC,MAAyB,EAAE,EAAE;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,YAAY,UAAU,qDAAqD,UAAU,KAAK,CAAC,CAAC;QAC9G,CAAC;QACD,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE;YACvD,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,YAAY,UAAU,uDAAuD,UAAU,KAAK,CAAC,CAAC;YAChH,CAAC;YACD,IAAI,CAAC,GAAG,KAAK,aAAa,IAAI,GAAG,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC;gBACpF,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;YAC/B,CAAC;YACD,IAAI,GAAG,KAAK,MAAM,IAAI,EAAE,CAAC,yBAAyB,CAAC,WAAW,CAAC,EAAE,CAAC;gBAChE,MAAM,IAAI,GAA2B,EAAE,CAAC;gBACxC,KAAK,MAAM,YAAY,IAAI,WAAW,CAAC,UAAU,EAAE,CAAC;oBAClD,IACE,EAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC;wBACrC,EAAE,CAAC,YAAY,CAAE,YAAoB,CAAC,IAAI,CAAC;wBAC3C,EAAE,CAAC,eAAe,CAAE,YAAoB,CAAC,WAAW,CAAC,EACrD,CAAC;wBACD,MAAM,OAAO,GAAI,YAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;wBAChD,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,QAAQ;4BAAE,IAAI,CAAC,OAAO,CAAC,GAAI,YAAoB,CAAC,WAAW,CAAC,IAAI,CAAC;oBAC1G,CAAC;gBACH,CAAC;gBACD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC;oBAAE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACrD,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC;IAC7B,CAAC,CAAC;IACF,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC1D,sBAAsB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACxD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,uBAAuB,CAC9B,GAAoB,EACpB,OAAY,EACZ,SAA6B;IAE7B,IAAI,CAAC,OAAO,EAAE,QAAQ;QAAE,OAAO,SAAS,CAAC;IACzC,4EAA4E;IAC5E,yDAAyD;IACzD,IAAI,MAA4B,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC;IACD,MAAM,KAAK,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChF,MAAM,WAAW,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/G,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IACnC,OAAO,kBAAkB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,GAAoB,EAAE,MAAY;IAC3D,KAAK,MAAM,SAAS,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7C,IAAI,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,KAAK,eAAe;YAAE,OAAO,IAAI,CAAC;IAC1G,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,SAAS,CAAC;AACjD,CAAC;AAUD;;;;;;;;;GASG;AACH,SAAS,aAAa,CACpB,GAAoB,EACpB,MAAqB,EACrB,SAA6B,EAC7B,MAAgB,EAChB,OAAe;IAEf,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,KAAK,MAAM,KAAK,IAAI,MAAM;QAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,CAAC,QAAa,EAAsB,EAAE;QACpD,IAAI,CAAC,QAAQ;YAAE,OAAO,SAAS,CAAC;QAChC,IAAI,CAAC;YACH,OAAO,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,OAAO,GAA+B,EAAE,CAAC;IAC/C,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,MAAM,EAAE,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;QACrC,MAAM,SAAS,GAAoB,EAAE,CAAC;QACtC,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,KAAK,MAAM,QAAQ,IAAI,YAAY,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC;YACtD,IAAI,MAAM,GAAQ,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,IAAI,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrC,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,kEAAkE;gBAClE,wEAAwE;gBACxE,MAAM,GAAG,qBAAqB,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACtD,IAAI,CAAC,MAAM;oBAAE,SAAS;YACxB,CAAC;YACD,IAAI,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC;gBAAE,SAAS;YAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC;YAC7B,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC;gBAAE,SAAS;YAE7D,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC;YAChC,MAAM,aAAa,GAAW,QAAgB,CAAC,aAAa,IAAI,EAAE,CAAC;YACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAG,QAAgB,CAAC,QAAQ,CAAC,CAAC;YACvD,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE;gBAC/B,SAAS,CAAC,KAAK,KAAK,EAAE,CAAC;gBACvB,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9E,CAAC,CAAC;YACF,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,aAAa,EAAE,CAAC;oBACnB,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxC,IAAI,CAAC,KAAK;wBAAE,MAAM,CAAC,IAAI,CAAC,4BAA4B,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;oBAC5G,SAAS,CAAC,MAAM,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;oBACxC,MAAM;gBACR,CAAC;gBACD,KAAK,cAAc,EAAE,CAAC;oBACpB,SAAS,CAAC,OAAO,KAAK,EAAE,CAAC;oBACzB,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxC,IAAI,CAAC,KAAK;wBAAE,MAAM,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;oBAC3G,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC;wBACrB,SAAS;wBACT,KAAK;wBACL,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;qBAC9F,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,KAAK,cAAc,EAAE,CAAC;oBACpB,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;oBACtB,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;oBACxC,IAAI,CAAC,KAAK;wBAAE,MAAM,CAAC,IAAI,CAAC,yBAAyB,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;oBACzG,MAAM,GAAG,GAAG;wBACV,SAAS;wBACT,aAAa,EAAE,OAAO,CAAC,MAAM,EAAE,eAAe,CAAC,KAAK,SAAS;wBAC7D,KAAK;wBACL,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;wBACzD,gBAAgB,EAAE,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;6BAC1C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;6BACjB,KAAK,CAAC,GAAG,CAAC;6BACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBACtB,CAAC;oBACF,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC;wBAAE,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC9E,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM;gBACR,CAAC;gBACD,KAAK,WAAW;oBACd,OAAO,CAAC,MAAM,CAAC,CAAC;oBAChB,MAAM;gBACR,KAAK,eAAe;oBAClB,OAAO,CAAC,WAAW,CAAC,CAAC;oBACrB,MAAM;gBACR,KAAK,iBAAiB;oBACpB,OAAO,CAAC,aAAa,CAAC,CAAC;oBACvB,MAAM;gBACR,KAAK,uBAAuB;oBAC1B,OAAO,CAAC,oBAAoB,CAAC,CAAC;oBAC9B,MAAM;gBACR,SAAS,CAAC;oBACR,MAAM,QAAQ,GAAG,uBAAuB,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;oBACnE,IAAI,QAAQ,EAAE,CAAC;wBACb,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC;wBAC3B,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;oBACpD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QACD,2EAA2E;QAC3E,qDAAqD;QACrD,IAAI,CAAC,WAAW;YAAE,SAAS;QAE3B,OAAO,CAAC,IAAI,CAAC,GAAG;YACd,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,MAAM,CAAC,YAAY;YAC3B,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,EAAE;YACb,UAAU,EAAE,EAAE;YACd,UAAU,EAAE,iBAAiB,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,CAAC;YACnD,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,MAAM,EAAE,EAAE;YACV,UAAU,EAAE,EAAE;YACd,UAAU,EAAE,IAAI;SACjB,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,yEAAyE;IACzE,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC;aAC1C,GAAG,CAAC,CAAC,IAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;aACjG,MAAM,CACL,CAAC,QAAQ,EAAsB,EAAE,CAC/B,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,iBAAiB,IAAI,QAAQ,KAAK,MAAM,CAAC,IAAI,CACvF,CAAC;IACN,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACxC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;QAC1C,IAAI,SAAS,CAAC,MAAM;YAAE,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,qBAAqB,CAAC,GAAoB,EAAE,QAAkB,EAAE,MAAY;IACnF,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,iBAAiB;QAAE,OAAO,SAAS,CAAC;IAC/D,IAAI,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IACvD,KAAK,MAAM,WAAW,IAAI,QAAQ,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;QACtD,MAAM,IAAI,GAAG,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,IAAI,IAAI,EAAE,CAAC,wBAAwB,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;IAC7D,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAE1E;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,GAAoB,EAAE,IAAU,EAAE,OAAe;IAC1E,MAAM,MAAM,GAAS,IAAY,CAAC,SAAS,EAAE,EAAE,IAAK,IAAY,CAAC,MAAM,CAAC;IACxE,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,IAAI;QAAE,OAAO,SAAS,CAAC;IACjD,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACjE,OAAO,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACrE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CAAC,GAAoB,EAAE,IAAU;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;IAClC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC,EAAE,CAAC;IAC5B,IAAI,CAAC;QACH,OAAO,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,GAAoB,EAAE,QAAgB,EAAE,SAAiB;IAC1E,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC/C,OAAO,EAAE,EAAE,UAAU,CAAC,IAAI,CACxB,CAAC,SAAS,EAAiC,EAAE,CAAC,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS,CACrH,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,QAAQ,CAAC,QAAgB,EAAE,OAAyB;IAC3D,wDAAwD;IACxD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAC9D,IAAI,MAAM,GAAG,QAAQ,CAAC;QACtB,IAAI,OAAO,GAAG,eAAe,CAAC;QAC9B,SAAS,CAAC;YACR,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAClC,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC;gBAAE,MAAM;YACnD,MAAM,GAAG,MAAM,CAAC;YAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;YAC9C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAAE,SAAS;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,IAAI,IAAI,GAAG,GAAG,CAAC;gBACtB,MAAM;YACR,CAAC;QACH,CAAC;QACD,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACpH,CAAC;IACD,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,eAAe,CACtB,GAAoB,EACpB,WAA6B,EAC7B,IAAY,EACZ,OAAyB;IAEzB,MAAM,IAAI,GAAG,kBAAkB,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC7E,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAQ,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAClF,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,CAAC,IAAI,EAAE,IAAI,oCAAoC,CAAC,CAAC;IAC1G,CAAC;IACD,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,UAAU,EAAE,CAAC;AAC3D,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,OAAe;IACjC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAoB,EAAE,OAAsB;IAC9E,MAAM,eAAe,GAAS,GAAG,CAAC,OAAe,CAAC,kBAAkB,EAAE,EAAE,IAAI,EAAE,CAAC;IAC/E,MAAM,SAAS,GAAqB;QAClC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;QACnF,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;QAChF,SAAS,EAAE,OAAO,CAAC,SAAS;KAC7B,CAAC;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IACpC,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,0EAA0E;IAC1E,yDAAyD;IACzD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9F,MAAM,SAAS,GAAG,CAAC,CAAoC,EAAE,CAAoC,EAAE,EAAE,CAC/F,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;IAEvF,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,EAAE,EAAE,GAAG,SAAS,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;SACjF,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;SAC3F,MAAM,CAAC,CAAC,IAAI,EAAuE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;QAC1G,qEAAqE;QACrE,mDAAmD;SAClD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,KAAK,SAAS,CAAC;SACrE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACb,SAAS,CACP,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,EACvD,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,CACxD,CACF,CAAC;IAEJ,2EAA2E;IAC3E,uEAAuE;IACvE,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,MAAM,UAAU,GAAsB,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAClC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;YACzC,MAAM,CAAC,IAAI,CACT,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,uBAAuB,QAAQ,CAAC,SAAS,OAAO,QAAQ,CAAC,QAAQ,OAAO;gBACzF,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,cAAc,CACpE,CAAC;YACF,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,2DAA2D;IAC3D,MAAM,gBAAgB,GAAsB,EAAE,CAAC;IAC/C,KAAK,MAAM,EAAE,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QACpC,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtD,IAAI,CAAC,cAAc;YAAE,SAAS;QAC9B,IAAI,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAAE,SAAS;QAC/E,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC;YAAE,SAAS;QACzE,gBAAgB,CAAC,IAAI,CAAC;YACpB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,cAAc;SACf,CAAC,CAAC;IACL,CAAC;IAED,MAAM,QAAQ,GAAqE;QACjF,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,EAAE;QACb,MAAM,EAAE,EAAE;KACX,CAAC;IACF,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAC9C,IAAI,IAAI;gBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACnF,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACtF,CAAC;IAED,MAAM,MAAM,GAAoB;QAC9B,OAAO,EAAE,mBAAmB;QAC5B,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;QACjC,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QACzC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC;QACnC,MAAM,EAAE,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QAClF,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,EAAE;QACb,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,YAAY;KACtF,CAAC;IAEF,oEAAoE;IACpE,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,KAAK;gBAAE,SAAS;YACrB,IAAI,CAAC;gBACH,KAAK,CAAC,OAAO,GAAG,oBAAoB,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAQ,CAAC;YAC3G,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC3F,CAAC;YACD,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACxF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,WAAW,EAAE;gBAChD,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,OAAO,EAAE,GAAG,CAAC,OAAO;gBACpB,UAAU,EAAE,MAAM,CAAC,OAAO,KAAK,WAAW;gBAC1C,cAAc,EAAE,MAAM,CAAC,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;gBACjE,KAAK,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,IAAI,MAAM,CAAC,SAAS;aAClD,CAAC,CAAC;YACH,IAAI,MAAM;gBAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACpC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YACzE,IAAI,aAAa;gBAAE,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,uBAAuB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,wEAAwE;IACxE,wCAAwC;IACxC,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,MAAM,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,KAAK;YAAE,KAAK,CAAC,OAAO,GAAG,iBAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;IACD,KAAK,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,kBAAkB,CAAC,WAAW,EAAE,SAAS,CAAE,CAAC;QAC/D,MAAM,UAAU,GAAG,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,CAAE,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG;gBAC7B,UAAU,EAAE,UAAU;gBACtB,MAAM,EAAE,GAAG,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,IAAI,UAAU,EAAE;gBAC/D,OAAO,EAAE,oBAAoB,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC;aAC5D,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO;YAAE,SAAS;QACxE,MAAM,YAAY,GAAG,iBAAiB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACzD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,YAAY,CAAC;IAC/F,CAAC;IACD,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC;QACjD,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO;YAAE,SAAS;QACxE,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACjD,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAChG,CAAC;IACD,KAAK,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,MAAM,EAAE,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAClD,IAAI,MAAM;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAClC,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAC1D,IAAI,UAAU;YAAE,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QAC9C,MAAM,mBAAmB,GAAG,6BAA6B,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAC5E,IAAI,mBAAmB;YAAE,KAAK,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QACzE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC;AAC9C,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,eAAe,CAAC,GAAoB;IAC3C,MAAM,KAAK,GAAwD,EAAE,CAAC;IACtE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5D,KAAK,MAAM,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;QACxD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,SAAS;QAClE,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,EAAE;YAAE,SAAS;QAClB,KAAK,MAAM,SAAS,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;gBAAE,SAAS;YAC7C,IAAI,CAAC,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI;gBAAE,SAAS;YACnE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;gBAAE,SAAS;YAC7C,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,CAAC;gBAAE,SAAS;YACnD,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,SAAS,CAAC;gBAAE,SAAS;YAChD,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../src/module.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,8 @@ export interface SchemaRequest {
25
25
  namespace?: string;
26
26
  /** Top-level `capabilities`, for a `module` request; defaults to package.json `webda.capabilities`. */
27
27
  capabilities?: Record<string, string>;
28
+ /** Modules a `@Shared` model method may import from, for a `module` request. */
29
+ sharedImports?: string[];
28
30
  }
29
31
  /** A batch of requests against one project. */
30
32
  export interface WorkerRequest {
@@ -1 +1 @@
1
- {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/schema/worker.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,+BAA+B;AAC/B,MAAM,WAAW,aAAa;IAC5B,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3D,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uGAAuG;IACvG,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED,+CAA+C;AAC/C,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,0BAA0B;AAC1B,MAAM,WAAW,cAAc;IAC7B,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrC,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAuE7D;AAYD,sCAAsC;AACtC,MAAM,WAAW,UAAU;IACzB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAmB3E;AAuBD;;;GAGG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAK1C"}
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/schema/worker.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,+BAA+B;AAC/B,MAAM,WAAW,aAAa;IAC5B,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3D,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uGAAuG;IACvG,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,+CAA+C;AAC/C,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,0BAA0B;AAC1B,MAAM,WAAW,cAAc;IAC7B,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACrC,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAwE7D;AAYD,sCAAsC;AACtC,MAAM,WAAW,UAAU;IACzB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,eAAe,EAAE,MAAM,CAAC;IACxB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAmB3E;AAuBD;;;GAGG;AACH,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAK1C"}
@@ -74,7 +74,8 @@ export function handle(request) {
74
74
  rootDir: item.rootDir ?? join(request.project, "src"),
75
75
  outDir: item.outDir ?? join(request.project, "lib"),
76
76
  namespace: item.namespace ?? namespaceOf(request.project),
77
- capabilities: item.capabilities
77
+ capabilities: item.capabilities,
78
+ sharedImports: item.sharedImports
78
79
  });
79
80
  continue;
80
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/schema/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/schema/worker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webda/content-mapper",
3
- "version": "4.0.0-beta.7",
3
+ "version": "4.0.0-beta.8",
4
4
  "description": "Webda compile-time code generation as a TypeScript 7.1 content mapper",
5
5
  "keywords": [
6
6
  "webda",