@typespec/http-server-csharp 0.58.0-alpha.6-dev.1 → 0.58.0-alpha.6-dev.2

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.
@@ -9,7 +9,7 @@ export declare function getFormatValue(program: Program, type: Scalar | ModelPro
9
9
  * @param type The type to check
10
10
  * @returns The attributes associated with the type, or none
11
11
  */
12
- export declare function getEncodedNameAttribute(program: Program, type: ModelProperty): Attribute | undefined;
12
+ export declare function getEncodedNameAttribute(program: Program, type: ModelProperty, cSharpName?: string): Attribute | undefined;
13
13
  /**
14
14
  * Return the encoding attributes for model properties
15
15
  * @param program The program being processed
@@ -1 +1 @@
1
- {"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../src/attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACb,OAAO,EACP,MAAM,EACN,IAAI,EAUL,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,SAAS,EASV,MAAM,iBAAiB,CAAC;AAIzB,eAAO,MAAM,aAAa,EAAE,MAA2B,CAAC;AAExD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,GAAG,aAAa,GAC3B,MAAM,GAAG,SAAS,CAGpB;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS,CAEjG;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAClB,SAAS,GAAG,SAAS,CA6BvB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,GAAG,SAAS,EAAE,CA0BxF;AAoDD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAAG,MAAM,GAC3B,SAAS,GAAG,SAAS,CAgEvB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAAG,MAAM,GAC3B,SAAS,GAAG,SAAS,CA8CvB;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAAG,MAAM,GAC3B,SAAS,GAAG,SAAS,CAgFvB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CASvE;AAYD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAqC5F"}
1
+ {"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../src/attributes.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EACb,OAAO,EACP,MAAM,EACN,IAAI,EAUL,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,SAAS,EASV,MAAM,iBAAiB,CAAC;AAIzB,eAAO,MAAM,aAAa,EAAE,MAA2B,CAAC;AAExD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,GAAG,aAAa,GAC3B,MAAM,GAAG,SAAS,CAGpB;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS,CAEjG;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,SAAS,GAAG,SAAS,CAuDvB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,GAAG,SAAS,EAAE,CA0BxF;AAoDD;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAAG,MAAM,GAC3B,SAAS,GAAG,SAAS,CAgEvB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAAG,MAAM,GAC3B,SAAS,GAAG,SAAS,CA8CvB;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,aAAa,GAAG,MAAM,GAC3B,SAAS,GAAG,SAAS,CAgFvB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CASvE;AAYD,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAqC5F"}
@@ -1,4 +1,5 @@
1
1
  import { getEncode, getFormat, getMaxItems, getMaxValue, getMaxValueExclusive, getMinItems, getMinValue, getMinValueExclusive, resolveEncodedName, } from "@typespec/compiler";
2
+ import { camelCase } from "change-case";
2
3
  import { Attribute, AttributeType, BooleanValue, CSharpType, HelperNamespace, NumericValue, Parameter, RawValue, StringValue, } from "./interfaces.js";
3
4
  import { getStringConstraint, isArrayType } from "./type-helpers.js";
4
5
  import { getCSharpIdentifier, getCSharpTypeForScalar } from "./utils.js";
@@ -16,7 +17,7 @@ export function getFormatValue(program, type) {
16
17
  * @param type The type to check
17
18
  * @returns The attributes associated with the type, or none
18
19
  */
19
- export function getEncodedNameAttribute(program, type) {
20
+ export function getEncodedNameAttribute(program, type, cSharpName) {
20
21
  const encodedName = resolveEncodedName(program, type, "application/json");
21
22
  if (encodedName !== type.name) {
22
23
  const attr = new Attribute(new AttributeType({
@@ -36,6 +37,24 @@ export function getEncodedNameAttribute(program, type) {
36
37
  }));
37
38
  return attr;
38
39
  }
40
+ if (cSharpName && type.name !== camelCase(cSharpName)) {
41
+ const attr = new Attribute(new AttributeType({
42
+ name: "JsonPropertyName",
43
+ namespace: JsonNamespace,
44
+ }), []);
45
+ attr.parameters.push(new Parameter({
46
+ name: "name",
47
+ value: new StringValue(type.name),
48
+ optional: false,
49
+ type: new CSharpType({
50
+ name: "string",
51
+ namespace: "System",
52
+ isBuiltIn: true,
53
+ isValueType: true,
54
+ }),
55
+ }));
56
+ return attr;
57
+ }
39
58
  return undefined;
40
59
  }
41
60
  /**
@@ -312,7 +331,7 @@ export function getAttributes(program, type, cSharpName) {
312
331
  const arrayAttr = getArrayConstraintAttribute(program, type);
313
332
  const stringAttr = getStringConstraintAttribute(program, type);
314
333
  const numberAttr = getNumericConstraintAttribute(program, type);
315
- const name = getEncodedNameAttribute(program, type);
334
+ const name = getEncodedNameAttribute(program, type, cSharpName);
316
335
  if (arrayAttr)
317
336
  result.add(arrayAttr);
318
337
  if (stringAttr)
@@ -1 +1 @@
1
- {"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../src/attributes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attributes.js","sourceRoot":"","sources":["../../src/attributes.ts"],"names":[],"mappings":"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"}
package/dist/src/lib.d.ts CHANGED
@@ -8,6 +8,9 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
8
8
  "invalid-identifier": {
9
9
  readonly default: import("@typespec/compiler").CallableMessage<["identifier", "location"]>;
10
10
  };
11
+ "anonymous-model": {
12
+ readonly default: import("@typespec/compiler").CallableMessage<["emittedName"]>;
13
+ };
11
14
  "missing-type-parent": {
12
15
  readonly default: import("@typespec/compiler").CallableMessage<["type", "name"]>;
13
16
  };
@@ -20,11 +23,17 @@ export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{
20
23
  "invalid-intrinsic": {
21
24
  readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>;
22
25
  };
26
+ "invalid-interpolation": {
27
+ readonly default: import("@typespec/compiler").CallableMessage<[]>;
28
+ };
23
29
  }, CSharpServiceEmitterOptions, never>;
24
- export declare const reportDiagnostic: <C extends "invalid-identifier" | "missing-type-parent" | "no-numeric" | "unrecognized-scalar" | "invalid-intrinsic", M extends keyof {
30
+ export declare const reportDiagnostic: <C extends "invalid-identifier" | "anonymous-model" | "missing-type-parent" | "no-numeric" | "unrecognized-scalar" | "invalid-intrinsic" | "invalid-interpolation", M extends keyof {
25
31
  "invalid-identifier": {
26
32
  readonly default: import("@typespec/compiler").CallableMessage<["identifier", "location"]>;
27
33
  };
34
+ "anonymous-model": {
35
+ readonly default: import("@typespec/compiler").CallableMessage<["emittedName"]>;
36
+ };
28
37
  "missing-type-parent": {
29
38
  readonly default: import("@typespec/compiler").CallableMessage<["type", "name"]>;
30
39
  };
@@ -37,10 +46,16 @@ export declare const reportDiagnostic: <C extends "invalid-identifier" | "missin
37
46
  "invalid-intrinsic": {
38
47
  readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>;
39
48
  };
49
+ "invalid-interpolation": {
50
+ readonly default: import("@typespec/compiler").CallableMessage<[]>;
51
+ };
40
52
  }[C]>(program: import("@typespec/compiler").Program, diag: import("@typespec/compiler").DiagnosticReport<{
41
53
  "invalid-identifier": {
42
54
  readonly default: import("@typespec/compiler").CallableMessage<["identifier", "location"]>;
43
55
  };
56
+ "anonymous-model": {
57
+ readonly default: import("@typespec/compiler").CallableMessage<["emittedName"]>;
58
+ };
44
59
  "missing-type-parent": {
45
60
  readonly default: import("@typespec/compiler").CallableMessage<["type", "name"]>;
46
61
  };
@@ -53,6 +68,9 @@ export declare const reportDiagnostic: <C extends "invalid-identifier" | "missin
53
68
  "invalid-intrinsic": {
54
69
  readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>;
55
70
  };
71
+ "invalid-interpolation": {
72
+ readonly default: import("@typespec/compiler").CallableMessage<[]>;
73
+ };
56
74
  }, C, M>) => void, createStateSymbol: (name: string) => symbol, getTracer: (program: import("@typespec/compiler").Program) => import("@typespec/compiler").Tracer;
57
75
  export type CSharpServiceLibrary = typeof $lib;
58
76
  //# sourceMappingURL=lib.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,2BAA2B;IAC1C,yFAAyF;IACzF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gEAAgE;IAChE,aAAa,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;CAClC;AAwBD,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;sCAqCf,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,iBAAiB,4BAAE,SAAS,wFAAS,CAAC;AAEvE,MAAM,MAAM,oBAAoB,GAAG,OAAO,IAAI,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,2BAA2B;IAC1C,yFAAyF;IACzF,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gEAAgE;IAChE,aAAa,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;CAClC;AAwBD,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;sCAiDf,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAE,iBAAiB,4BAAE,SAAS,wFAAS,CAAC;AAEvE,MAAM,MAAM,oBAAoB,GAAG,OAAO,IAAI,CAAC"}
package/dist/src/lib.js CHANGED
@@ -27,6 +27,12 @@ export const $lib = createTypeSpecLibrary({
27
27
  default: paramMessage `Invalid identifier '${"identifier"}' in ${"location"}`,
28
28
  },
29
29
  },
30
+ "anonymous-model": {
31
+ severity: "warning",
32
+ messages: {
33
+ default: paramMessage `Inline models use generated names in emitted code. Consider defining each model with an explicit name. This model will be named '${"emittedName"}' in emitted code`,
34
+ },
35
+ },
30
36
  "missing-type-parent": {
31
37
  severity: "warning",
32
38
  messages: {
@@ -51,6 +57,12 @@ export const $lib = createTypeSpecLibrary({
51
57
  default: paramMessage `Intrinsic type ${"typeName"} is not valid in this context. Please use a model, enum, union, scalar, or the unknown type`,
52
58
  },
53
59
  },
60
+ "invalid-interpolation": {
61
+ severity: "warning",
62
+ messages: {
63
+ default: paramMessage `StringTemplate types should only reference literal-valued constants, enum members, or literal-valued model properties. The interpolated value will not contain one or more referenced elements in generated code.`,
64
+ },
65
+ },
54
66
  },
55
67
  emitter: {
56
68
  options: EmitterOptionsSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AASzF,MAAM,oBAAoB,GAAgD;IACxE,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,aAAa,EAAE;YACb,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,IAAI;YACd,WAAW,EACT,oGAAoG;SACvG;QACD,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;YACvB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,KAAK;YACd,WAAW,EACT,uFAAuF;SAC1F;KACF;IACD,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACxC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE;QACX,oBAAoB,EAAE;YACpB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uBAAuB,YAAY,QAAQ,UAAU,EAAE;aAC7E;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uBAAuB,MAAM,IAAI,MAAM,GAAG;aAChE;SACF;QACD,YAAY,EAAE;YACZ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,SAAS,YAAY,sFAAsF,YAAY,yGAAyG;aACtP;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,eAAe,UAAU,iFAAiF;aAChI;SACF;QACD,mBAAmB,EAAE;YACnB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,kBAAkB,UAAU,8FAA8F;aAChJ;SACF;KACF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,oBAAmE;KAC7E;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AASzF,MAAM,oBAAoB,GAAgD;IACxE,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,aAAa,EAAE;YACb,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,IAAI;YACd,WAAW,EACT,oGAAoG;SACvG;QACD,aAAa,EAAE;YACb,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;YACvB,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,KAAK;YACd,WAAW,EACT,uFAAuF;SAC1F;KACF;IACD,QAAQ,EAAE,EAAE;CACb,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,qBAAqB,CAAC;IACxC,IAAI,EAAE,8BAA8B;IACpC,WAAW,EAAE;QACX,oBAAoB,EAAE;YACpB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uBAAuB,YAAY,QAAQ,UAAU,EAAE;aAC7E;SACF;QACD,iBAAiB,EAAE;YACjB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,qIAAqI,aAAa,mBAAmB;aAC3L;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,uBAAuB,MAAM,IAAI,MAAM,GAAG;aAChE;SACF;QACD,YAAY,EAAE;YACZ,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,SAAS,YAAY,sFAAsF,YAAY,yGAAyG;aACtP;SACF;QACD,qBAAqB,EAAE;YACrB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,eAAe,UAAU,iFAAiF;aAChI;SACF;QACD,mBAAmB,EAAE;YACnB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,kBAAkB,UAAU,8FAA8F;aAChJ;SACF;QACD,uBAAuB,EAAE;YACvB,QAAQ,EAAE,SAAS;YACnB,QAAQ,EAAE;gBACR,OAAO,EAAE,YAAY,CAAA,oNAAoN;aAC1O;SACF;KACF;IACD,OAAO,EAAE;QACP,OAAO,EAAE,oBAAmE;KAC7E;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAsBZ,MAAM,oBAAoB,CAAC;AAoC5B,OAAO,EAAE,2BAA2B,EAAoB,MAAM,UAAU,CAAC;AAmBzE,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,2BAA2B,CAAC,iBAuiC9E"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EA0BZ,MAAM,oBAAoB,CAAC;AAqC5B,OAAO,EAAE,2BAA2B,EAAoB,MAAM,UAAU,CAAC;AAoBzE,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,2BAA2B,CAAC,iBAytC9E"}
@@ -1,5 +1,6 @@
1
- import { getDoc, getNamespaceFullName, getService, isErrorModel, isNeverType, isNullType, isVoidType, } from "@typespec/compiler";
1
+ import { getDoc, getNamespaceFullName, getService, isErrorModel, isNeverType, isNullType, isTemplateDeclaration, isVoidType, } from "@typespec/compiler";
2
2
  import { CodeTypeEmitter, StringBuilder, code, createAssetEmitter, } from "@typespec/compiler/emitter-framework";
3
+ import { createRekeyableMap } from "@typespec/compiler/utils";
3
4
  import { Visibility, createMetadataInfo, getHttpOperation, isStatusCode, } from "@typespec/http";
4
5
  import { getResourceOperation } from "@typespec/rest";
5
6
  import { execFile } from "child_process";
@@ -7,7 +8,7 @@ import { getSerializationSourceFiles } from "./boilerplate.js";
7
8
  import { CSharpSourceType, CSharpType, NameCasingType, } from "./interfaces.js";
8
9
  import { reportDiagnostic } from "./lib.js";
9
10
  import { getRecordType, isKnownReferenceType } from "./type-helpers.js";
10
- import { HttpMetadata, UnknownType, coalesceTypes, ensureCSharpIdentifier, ensureCleanDirectory, formatComment, getCSharpIdentifier, getCSharpStatusCode, getCSharpType, getCSharpTypeForScalar, getModelAttributes, getModelInstantiationName, getOperationVerbDecorator, isValueType, } from "./utils.js";
11
+ import { HttpMetadata, UnknownType, coalesceTypes, ensureCSharpIdentifier, ensureCleanDirectory, formatComment, getCSharpIdentifier, getCSharpStatusCode, getCSharpType, getCSharpTypeForIntrinsic, getCSharpTypeForScalar, getModelAttributes, getModelInstantiationName, getOperationVerbDecorator, isValueType, } from "./utils.js";
11
12
  export async function $onEmit(context) {
12
13
  let _unionCounter = 0;
13
14
  const controllers = new Map();
@@ -40,8 +41,17 @@ export async function $onEmit(context) {
40
41
  declarationName(declarationType) {
41
42
  switch (declarationType.kind) {
42
43
  case "Enum":
44
+ if (!declarationType.name)
45
+ return `Enum${_unionCounter++}`;
46
+ return getCSharpIdentifier(declarationType.name, NameCasingType.Class);
43
47
  case "Interface":
48
+ if (!declarationType.name)
49
+ return `Interface${_unionCounter++}`;
50
+ return getCSharpIdentifier(declarationType.name, NameCasingType.Class);
44
51
  case "Model":
52
+ if (!declarationType.name)
53
+ return `Model${_unionCounter++}`;
54
+ return getCSharpIdentifier(declarationType.name, NameCasingType.Class);
45
55
  case "Operation":
46
56
  return getCSharpIdentifier(declarationType.name, NameCasingType.Class);
47
57
  case "Union":
@@ -108,13 +118,15 @@ export async function $onEmit(context) {
108
118
  return this.emitter.result.rawCode(code `System.Text.Json.Nodes.JsonNode`);
109
119
  case "ErrorType":
110
120
  case "never":
111
- case "void":
112
121
  reportDiagnostic(this.emitter.getProgram(), {
113
122
  code: "invalid-intrinsic",
114
123
  target: intrinsic,
115
124
  format: { typeName: intrinsic.name },
116
125
  });
117
126
  return "";
127
+ case "void":
128
+ const type = getCSharpTypeForIntrinsic(this.emitter.getProgram(), intrinsic);
129
+ return this.emitter.result.rawCode(`${type?.type.getTypeReference()}`);
118
130
  }
119
131
  }
120
132
  #emitUsings(file) {
@@ -150,14 +162,14 @@ export async function $onEmit(context) {
150
162
  const modelFile = this.emitter.createSourceFile(`models/${modelName}.cs`);
151
163
  modelFile.meta[this.#sourceTypeKey] = CSharpSourceType.Model;
152
164
  const modelNamespace = `${this.#getOrSetBaseNamespace(model)}.Models`;
153
- return this.#createModelContext(modelNamespace, modelFile);
165
+ return this.#createModelContext(modelNamespace, modelFile, modelName);
154
166
  }
155
167
  modelInstantiationContext(model) {
156
168
  const modelName = getModelInstantiationName(this.emitter.getProgram(), model, model.name);
157
169
  const sourceFile = this.emitter.createSourceFile(`models/${modelName}.cs`);
158
170
  sourceFile.meta[this.#sourceTypeKey] = CSharpSourceType.Model;
159
171
  const modelNamespace = `${this.#getOrSetBaseNamespace(model)}.Models`;
160
- const context = this.#createModelContext(modelNamespace, sourceFile);
172
+ const context = this.#createModelContext(modelNamespace, sourceFile, model.name);
161
173
  context.instantiationName = modelName;
162
174
  return context;
163
175
  }
@@ -177,48 +189,156 @@ export async function $onEmit(context) {
177
189
  if (!isVoidType(prop.type) &&
178
190
  !isNeverType(prop.type) &&
179
191
  !isNullType(prop.type) &&
180
- !isErrorModel(this.emitter.getProgram(), prop.type))
192
+ !isErrorModel(this.emitter.getProgram(), prop.type)) {
181
193
  result.push(code `${this.emitter.emitModelProperty(prop)}`);
194
+ }
182
195
  }
183
196
  return result.reduce();
184
197
  }
198
+ modelLiteralContext(model) {
199
+ const name = this.emitter.emitDeclarationName(model) || "";
200
+ return this.modelDeclarationContext(model, name);
201
+ }
202
+ modelLiteral(model) {
203
+ const modelName = this.emitter.getContext().name;
204
+ reportDiagnostic(this.emitter.getProgram(), {
205
+ code: "anonymous-model",
206
+ target: model,
207
+ format: { emittedName: modelName },
208
+ });
209
+ return this.modelDeclaration(model, modelName);
210
+ }
185
211
  #isRecord(type) {
186
212
  return type.kind === "Model" && type.name === "Record" && type.indexer !== undefined;
187
213
  }
214
+ #isInheritedProperty(property) {
215
+ const visited = [];
216
+ function isInherited(model, propertyName) {
217
+ if (visited.includes(model))
218
+ return false;
219
+ visited.push(model);
220
+ if (model.properties.has(propertyName))
221
+ return true;
222
+ if (model.baseModel === undefined)
223
+ return false;
224
+ return isInherited(model.baseModel, propertyName);
225
+ }
226
+ const model = property.model;
227
+ if (model === undefined || model.baseModel === undefined)
228
+ return false;
229
+ return isInherited(model.baseModel, property.name);
230
+ }
188
231
  modelPropertyLiteral(property) {
189
232
  if (isStatusCode(this.emitter.getProgram(), property))
190
233
  return "";
191
234
  const propertyName = ensureCSharpIdentifier(this.emitter.getProgram(), property, property.name);
192
235
  const [typeName, typeDefault] = this.#findPropertyType(property);
193
236
  const doc = getDoc(this.emitter.getProgram(), property);
194
- const attributes = getModelAttributes(this.emitter.getProgram(), property);
237
+ const attributes = getModelAttributes(this.emitter.getProgram(), property, propertyName);
195
238
  // eslint-disable-next-line @typescript-eslint/no-deprecated
196
239
  const defaultValue = property.default
197
240
  ? // eslint-disable-next-line @typescript-eslint/no-deprecated
198
241
  code `${this.emitter.emitType(property.default)}`
199
242
  : typeDefault;
200
243
  return this.emitter.result
201
- .rawCode(code `${doc ? `${formatComment(doc)}\n` : ""}${`${attributes.map((attribute) => attribute.getApplicationString(this.emitter.getContext().scope)).join("\n")}${attributes?.length > 0 ? "\n" : ""}`}public ${typeName}${property.optional && isValueType(this.emitter.getProgram(), property.type) ? "?" : ""} ${propertyName} { get; ${typeDefault ? "}" : "set; }"}${defaultValue ? ` = ${defaultValue};\n` : "\n"}
244
+ .rawCode(code `${doc ? `${formatComment(doc)}\n` : ""}${`${attributes.map((attribute) => attribute.getApplicationString(this.emitter.getContext().scope)).join("\n")}${attributes?.length > 0 ? "\n" : ""}`}public ${this.#isInheritedProperty(property) ? "new " : ""}${typeName}${property.optional && isValueType(this.emitter.getProgram(), property.type) ? "?" : ""} ${propertyName} { get; ${typeDefault ? "}" : "set; }"}${defaultValue ? ` = ${defaultValue};\n` : "\n"}
202
245
  `);
203
246
  }
204
247
  #findPropertyType(property) {
205
- switch (property.type.kind) {
248
+ return this.#getTypeInfoForTsType(property.type);
249
+ }
250
+ #getTypeInfoForTsType(tsType) {
251
+ function extractStringValue(type, span) {
252
+ switch (type.kind) {
253
+ case "String":
254
+ return type.value;
255
+ case "Boolean":
256
+ return `${type.value}`;
257
+ case "Number":
258
+ return type.valueAsString;
259
+ case "StringTemplateSpan":
260
+ if (type.isInterpolated) {
261
+ return extractStringValue(type.type, span);
262
+ }
263
+ else {
264
+ return type.type.value;
265
+ }
266
+ case "ModelProperty":
267
+ return extractStringValue(type.type, span);
268
+ case "EnumMember":
269
+ if (type.value === undefined)
270
+ return type.name;
271
+ if (typeof type.value === "string")
272
+ return type.value;
273
+ if (typeof type.value === "number")
274
+ return `${type.value}`;
275
+ }
276
+ reportDiagnostic(emitter.getProgram(), {
277
+ code: "invalid-interpolation",
278
+ target: span,
279
+ format: {},
280
+ });
281
+ return "";
282
+ }
283
+ switch (tsType.kind) {
206
284
  case "String":
207
- return [code `string`, `"${property.type.value}"`];
285
+ return [code `string`, `"${tsType.value}"`];
286
+ case "StringTemplate":
287
+ const template = tsType;
288
+ if (template.stringValue !== undefined)
289
+ return [code `string`, `"${template.stringValue}"`];
290
+ const spanResults = [];
291
+ for (const span of template.spans) {
292
+ spanResults.push(extractStringValue(span, span));
293
+ }
294
+ return [code `string`, `"${spanResults.join("")}"`];
208
295
  case "Boolean":
209
- return [code `bool`, `${property.type.value === true ? true : false}`];
296
+ return [code `bool`, `${tsType.value === true ? true : false}`];
210
297
  case "Number":
298
+ const [type, value] = this.#findNumericType(tsType);
299
+ return [code `${type}`, `${value}`];
300
+ case "Tuple":
301
+ const defaults = [];
302
+ const [csharpType, isObject] = this.#coalesceTypes(tsType.values);
303
+ if (isObject)
304
+ return ["object[]", undefined];
305
+ for (const value of tsType.values) {
306
+ const [_, itemDefault] = this.#getTypeInfoForTsType(value);
307
+ defaults.push(itemDefault);
308
+ }
309
+ return [code `${csharpType.getTypeReference()}[]`, `[${defaults.join(", ")}]`];
211
310
  case "Object":
212
311
  return [code `object`, undefined];
213
312
  case "Model":
214
- if (this.#isRecord(property.type)) {
313
+ if (this.#isRecord(tsType)) {
215
314
  return [code `JsonObject`, undefined];
216
315
  }
217
- return [code `${this.emitter.emitTypeReference(property.type)}`, undefined];
316
+ return [code `${emitter.emitTypeReference(tsType)}`, undefined];
317
+ case "Enum":
318
+ return [code `${emitter.emitTypeReference(tsType)}`, undefined];
319
+ case "EnumMember":
320
+ if (typeof tsType.value === "number") {
321
+ const stringValue = tsType.value.toString();
322
+ if (stringValue.includes(".") || stringValue.includes("e"))
323
+ return ["double", stringValue];
324
+ return ["int", stringValue];
325
+ }
326
+ if (typeof tsType.value === "string") {
327
+ return ["string", tsType.value];
328
+ }
329
+ return [code `object`, undefined];
330
+ case "Union":
331
+ return [code `${emitter.emitTypeReference(tsType)}`, undefined];
218
332
  default:
219
- return [code `${this.emitter.emitTypeReference(property.type)}`, undefined];
333
+ return [code `${emitter.emitTypeReference(tsType)}`, undefined];
220
334
  }
221
335
  }
336
+ #findNumericType(type) {
337
+ const stringValue = type.valueAsString;
338
+ if (stringValue.includes(".") || stringValue.includes("e"))
339
+ return ["double", stringValue];
340
+ return ["int", stringValue];
341
+ }
222
342
  modelPropertyReference(property) {
223
343
  return code `${this.emitter.emitTypeReference(property.type)}`;
224
344
  }
@@ -252,7 +372,7 @@ export async function $onEmit(context) {
252
372
  sourceFile.meta[this.#sourceTypeKey] = CSharpSourceType.Interface;
253
373
  const ifaceNamespace = this.#getOrSetBaseNamespace(iface);
254
374
  const modelNamespace = `${ifaceNamespace}.Models`;
255
- const context = this.#createModelContext(ifaceNamespace, sourceFile);
375
+ const context = this.#createModelContext(ifaceNamespace, sourceFile, ifaceName);
256
376
  context.file.imports.set("System", ["System"]);
257
377
  context.file.imports.set("System.Net", ["System.Net"]);
258
378
  context.file.imports.set("System.Text.Json", ["System.Text.Json"]);
@@ -369,6 +489,9 @@ export async function $onEmit(context) {
369
489
  const [httpOperation, _] = getHttpOperation(this.emitter.getProgram(), operation);
370
490
  return this.#emitOperationResponses(httpOperation);
371
491
  }
492
+ stringTemplate(stringTemplate) {
493
+ return this.emitter.result.rawCode(stringTemplate.stringValue || "");
494
+ }
372
495
  #getOperationResponse(operation) {
373
496
  const validResponses = operation.responses.filter((r) => !isErrorModel(this.emitter.getProgram(), r.type) &&
374
497
  getCSharpStatusCode(r.statusCodes) !== undefined);
@@ -397,7 +520,8 @@ export async function $onEmit(context) {
397
520
  }
398
521
  }
399
522
  for (const response of operation.responses) {
400
- this.emitter.emitType(response.type);
523
+ if (!isEmptyResponseModel(this.emitter.getProgram(), response.type))
524
+ this.emitter.emitType(response.type);
401
525
  }
402
526
  return builder.reduce();
403
527
  }
@@ -425,10 +549,12 @@ export async function $onEmit(context) {
425
549
  }
426
550
  let i = 1;
427
551
  for (const requiredParam of requiredParams) {
428
- signature.push(code `${this.emitter.emitTypeReference(requiredParam.type)} ${ensureCSharpIdentifier(this.emitter.getProgram(), requiredParam, requiredParam.name, NameCasingType.Parameter)}${i++ < totalParams ? ", " : ""}`);
552
+ const [paramType, _] = this.#findPropertyType(requiredParam);
553
+ signature.push(code `${paramType} ${ensureCSharpIdentifier(this.emitter.getProgram(), requiredParam, requiredParam.name, NameCasingType.Parameter)}${i++ < totalParams ? ", " : ""}`);
429
554
  }
430
555
  for (const optionalParam of optionalParams) {
431
- signature.push(code `${this.emitter.emitTypeReference(optionalParam.type)}? ${ensureCSharpIdentifier(this.emitter.getProgram(), optionalParam, optionalParam.name, NameCasingType.Parameter)}${i++ < totalParams ? ", " : ""}`);
556
+ const [paramType, _] = this.#findPropertyType(optionalParam);
557
+ signature.push(code `${paramType}? ${ensureCSharpIdentifier(this.emitter.getProgram(), optionalParam, optionalParam.name, NameCasingType.Parameter)}${i++ < totalParams ? ", " : ""}`);
432
558
  }
433
559
  return signature.reduce();
434
560
  }
@@ -521,7 +647,9 @@ export async function $onEmit(context) {
521
647
  const name = httpParam.param.name;
522
648
  const parameter = httpParam.param;
523
649
  const emittedName = ensureCSharpIdentifier(this.emitter.getProgram(), parameter, name, NameCasingType.Parameter);
524
- const [emittedType, emittedDefault] = this.#findPropertyType(parameter);
650
+ let [emittedType, emittedDefault] = this.#findPropertyType(parameter);
651
+ if (emittedType.toString().endsWith("[]"))
652
+ emittedDefault = undefined;
525
653
  // eslint-disable-next-line @typescript-eslint/no-deprecated
526
654
  const defaultValue = parameter.default
527
655
  ? // eslint-disable-next-line @typescript-eslint/no-deprecated
@@ -563,9 +691,10 @@ export async function $onEmit(context) {
563
691
  return "";
564
692
  }
565
693
  }
566
- #createModelContext(namespace, file) {
694
+ #createModelContext(namespace, file, name) {
567
695
  const context = {
568
696
  namespace: namespace,
697
+ name: name,
569
698
  file: file,
570
699
  scope: file.globalScope,
571
700
  };
@@ -716,26 +845,47 @@ export async function $onEmit(context) {
716
845
  return "";
717
846
  }
718
847
  #coalesceUnionTypes(union) {
719
- const defaultValue = new CSharpType({
720
- name: "object",
721
- namespace: "System",
722
- isValueType: false,
723
- });
848
+ const [result, _] = this.#coalesceTypes([...union.variants.values()].flatMap((v) => v.type));
849
+ return result;
850
+ }
851
+ #coalesceTypes(types) {
852
+ const defaultValue = [
853
+ new CSharpType({
854
+ name: "object",
855
+ namespace: "System",
856
+ isValueType: false,
857
+ }),
858
+ true,
859
+ ];
724
860
  let current = undefined;
725
- for (const [_, variant] of union.variants.entries()) {
861
+ for (const type of types) {
726
862
  let candidate;
727
- switch (variant.type.kind) {
863
+ switch (type.kind) {
728
864
  case "Boolean":
729
865
  candidate = new CSharpType({ name: "bool", namespace: "System", isValueType: true });
730
866
  break;
867
+ case "StringTemplate":
731
868
  case "String":
732
869
  candidate = new CSharpType({ name: "string", namespace: "System", isValueType: false });
733
870
  break;
871
+ case "Number":
872
+ const stringValue = type.valueAsString;
873
+ if (stringValue.includes(".") || stringValue.includes("e")) {
874
+ candidate = new CSharpType({
875
+ name: "double",
876
+ namespace: "System",
877
+ isValueType: true,
878
+ });
879
+ }
880
+ else {
881
+ candidate = new CSharpType({ name: "int", namespace: "System", isValueType: true });
882
+ }
883
+ break;
734
884
  case "Union":
735
- candidate = this.#coalesceUnionTypes(variant.type);
885
+ candidate = this.#coalesceUnionTypes(type);
736
886
  break;
737
887
  case "Scalar":
738
- candidate = getCSharpTypeForScalar(this.emitter.getProgram(), variant.type);
888
+ candidate = getCSharpTypeForScalar(this.emitter.getProgram(), type);
739
889
  break;
740
890
  default:
741
891
  return defaultValue;
@@ -744,7 +894,7 @@ export async function $onEmit(context) {
744
894
  if (current === undefined || !candidate.equals(current))
745
895
  return defaultValue;
746
896
  }
747
- return current ?? defaultValue;
897
+ return current === undefined ? defaultValue : [current, false];
748
898
  }
749
899
  writeOutput(sourceFiles) {
750
900
  for (const source of this.#libraryFiles) {
@@ -786,11 +936,19 @@ export async function $onEmit(context) {
786
936
  return this.#baseNamespace;
787
937
  }
788
938
  }
789
- function processNameSpace(program, target) {
790
- const service = getService(program, target);
939
+ function isEmptyResponseModel(program, model) {
940
+ if (model.kind !== "Model")
941
+ return false;
942
+ return model.properties.size === 1 && isStatusCode(program, [...model.properties.values()][0]);
943
+ }
944
+ function processNameSpace(program, target, service) {
945
+ if (!service)
946
+ service = getService(program, target);
791
947
  if (service) {
792
948
  for (const [_, model] of target.models) {
793
- emitter.emitType(model);
949
+ if (!isTemplateDeclaration(model) && !isEmptyResponseModel(program, model)) {
950
+ emitter.emitType(model);
951
+ }
794
952
  }
795
953
  for (const [_, en] of target.enums) {
796
954
  emitter.emitType(en);
@@ -799,10 +957,36 @@ export async function $onEmit(context) {
799
957
  emitter.emitType(sc);
800
958
  }
801
959
  for (const [_, iface] of target.interfaces) {
960
+ if (!isTemplateDeclaration(iface)) {
961
+ emitter.emitType(iface);
962
+ }
963
+ }
964
+ if (target.operations.size > 0) {
965
+ // Collect interface operations for a business logic interface and controller
966
+ const nsOps = [];
967
+ for (const [name, op] of target.operations) {
968
+ if (!isTemplateDeclaration(op)) {
969
+ nsOps.push([name, op]);
970
+ }
971
+ }
972
+ const iface = program.checker.createAndFinishType({
973
+ node: undefined,
974
+ sourceInterfaces: [],
975
+ decorators: [],
976
+ operations: createRekeyableMap(nsOps),
977
+ kind: "Interface",
978
+ name: `${target.name}Operations`,
979
+ namespace: target,
980
+ entityKind: "Type",
981
+ isFinished: true,
982
+ });
983
+ for (const [_, op] of nsOps) {
984
+ op.interface = iface;
985
+ }
802
986
  emitter.emitType(iface);
803
987
  }
804
- for (const [_, op] of target.operations) {
805
- emitter.emitType(op);
988
+ for (const [_, sub] of target.namespaces) {
989
+ processNameSpace(program, sub, service);
806
990
  }
807
991
  }
808
992
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAiBL,MAAM,EACN,oBAAoB,EACpB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EAQf,aAAa,EAEb,IAAI,EACJ,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAKL,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,GACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,UAAU,EAIV,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAA+B,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EACL,YAAY,EACZ,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAiD;IAC7E,IAAI,aAAa,GAAW,CAAC,CAAC;IAC9B,MAAM,WAAW,GAAG,IAAI,GAAG,EAA6B,CAAC;IACzD,MAAM,iBAAiB,GAAW,eAAe,CAAC;IAElD,MAAM,iBAAkB,SAAQ,eAAe;QAC7C,YAAY,GAAkC,IAAI,GAAG,EAA4B,CAAC;QAClF,cAAc,GAAW;uCACU,CAAC;QACpC,cAAc,GAAW,YAAY,CAAC;QACtC,aAAa,GAAwB,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/E,cAAc,GAAuB,SAAS,CAAC;QAC/C,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAEpD,SAAS,GAAiB,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE;YACtE,mBAAmB,EAAE,UAAU,CAAC,IAAI;YACpC,gBAAgB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI;SAC9B,CAAC,CAAC;QAEH,gBAAgB,CAAC,KAAY,EAAE,IAAY,EAAE,WAAiB;YAC5D,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,EAC9D,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CACvD,CAAC;QACJ,CAAC;QAED,YAAY,CAAC,KAAY,EAAE,WAAiB;YAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7F,CAAC;QAED,cAAc,CAAC,OAAuB;YACpC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACzF,CAAC;QAED,YAAY,CAAC,KAAY;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC1F,CAAC;QAED,eAAe,CAAC,eAAoC;YAClD,QAAQ,eAAe,CAAC,IAAI,EAAE,CAAC;gBAC7B,KAAK,MAAM,CAAC;gBACZ,KAAK,WAAW,CAAC;gBACjB,KAAK,OAAO,CAAC;gBACb,KAAK,WAAW;oBACd,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACzE,KAAK,OAAO;oBACV,IAAI,CAAC,eAAe,CAAC,IAAI;wBAAE,OAAO,QAAQ,aAAa,EAAE,EAAE,CAAC;oBAC5D,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACzE,KAAK,QAAQ,CAAC;gBACd;oBACE,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAED,eAAe,CAAC,EAAQ,EAAE,IAAY;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC7D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,QAAQ,EACR,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;UAGxB,IAAI,CAAC,WAAW,EAAE;;oBAER,SAAS;;;cAGf,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;cAClC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;0BAC7F,QAAQ;;gBAElB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;;WAErC,CACJ,CAAC;QACJ,CAAC;QAED,sBAAsB,CAAC,EAAQ;YAC7B,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,QAAQ,KAAK,CAAC,CAAC;YACxE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC5D,MAAM,aAAa,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,SAAS,CAAC;YAClE,OAAO;gBACL,SAAS,EAAE,aAAa;gBACxB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ,CAAC,WAAW;aAC5B,CAAC;QACJ,CAAC;QAED,WAAW,CAAC,EAAQ;YAClB,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACxC,CAAC,EAAE,CAAC;gBACJ,MAAM,UAAU,GAAW,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC3F,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;gBACpD,MAAM,CAAC,IAAI,CACT,IAAI,CAAA,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OACpE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,MAAM,CAAC,KAAgB,CAAC,CAAC,CAAC,IAC5C,GAAG,CACJ,CAAC;gBACF,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI;oBAAE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC3D,CAAC;YAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,SAAS,CAAC,SAAwB,EAAE,IAAY;YAC9C,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvB,KAAK,SAAS;oBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,iCAAiC,CAAC,CAAC;gBAC5E,KAAK,MAAM;oBACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,iCAAiC,CAAC,CAAC;gBAC5E,KAAK,WAAW,CAAC;gBACjB,KAAK,OAAO,CAAC;gBACb,KAAK,MAAM;oBACT,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE;wBAC1C,IAAI,EAAE,mBAAmB;wBACzB,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,EAAE;qBACrC,CAAC,CAAC;oBACH,OAAO,EAAE,CAAC;YACd,CAAC;QACH,CAAC;QAED,WAAW,CAAC,IAAyB;YACnC,MAAM,OAAO,GAAkB,IAAI,aAAa,EAAE,CAAC;YACnD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,IAAK,CAAC;YACzC,CAAC;YACD,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,IAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAAE,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACvF,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAED,gBAAgB,CAAC,KAAY,EAAE,IAAY;YACzC,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACjF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;YACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;YACnF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACxF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAC1C,SAAS,EACT,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;QAG1B,IAAI,CAAC,WAAW,EAAE;;kBAER,SAAS;;QAEnB,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,wBAAwB,SAAS,IAC3N,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA,KAAK,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EACjF;QACE,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC;;MAEzC,CACC,CAAC;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,uBAAuB,CAAC,KAAY,EAAE,IAAY;YAChD,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACjF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,SAAS,KAAK,CAAC,CAAC;YAC1E,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC7D,MAAM,cAAc,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC;YACtE,OAAO,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAC7D,CAAC;QAED,yBAAyB,CAAC,KAAY;YACpC,MAAM,SAAS,GAAW,yBAAyB,CACjD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,KAAK,EACL,KAAK,CAAC,IAAI,CACX,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,SAAS,KAAK,CAAC,CAAC;YAC3E,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC9D,MAAM,cAAc,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC;YACtE,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACrE,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACtC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,kBAAkB,CAAC,KAAY,EAAE,IAAY;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAA,sBAAsB,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC;YACjF,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,iBAAiB,IAAI,IAAI,CAAC;YACpD,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACjD,CAAC;QAED,eAAe,CAAC,KAAY;YAC1B,MAAM,MAAM,GAAkB,IAAI,aAAa,EAAE,CAAC;YAClD,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACzC,IACE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtB,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;oBACvB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtB,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC;oBAEnD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,CAAC;QAED,SAAS,CAAC,IAAU;YAClB,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC;QACvF,CAAC;QAED,oBAAoB,CAAC,QAAuB;YAC1C,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC;gBAAE,OAAO,EAAE,CAAC;YACjE,MAAM,YAAY,GAAG,sBAAsB,CACzC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,QAAQ,EACR,QAAQ,CAAC,IAAI,CACd,CAAC;YACF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACjE,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,CAAC;YACxD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC3E,4DAA4D;YAC5D,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO;gBACnC,CAAC,CAAC,4DAA4D;oBAC5D,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAClD,CAAC,CAAC,WAAW,CAAC;YAChB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM;iBACvB,OAAO,CAAC,IAAI,CAAA,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,QAAQ,GAC5N,QAAQ,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EACrF,IAAI,YAAY,WAAW,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,GACrD,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,IAC3C;KACD,CAAC,CAAC;QACH,CAAC;QAED,iBAAiB,CACf,QAAuB;YAEvB,QAAQ,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC3B,KAAK,QAAQ;oBACX,OAAO,CAAC,IAAI,CAAA,QAAQ,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;gBACpD,KAAK,SAAS;oBACZ,OAAO,CAAC,IAAI,CAAA,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBACxE,KAAK,QAAQ,CAAC;gBACd,KAAK,QAAQ;oBACX,OAAO,CAAC,IAAI,CAAA,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACnC,KAAK,OAAO;oBACV,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAClC,OAAO,CAAC,IAAI,CAAA,YAAY,EAAE,SAAS,CAAC,CAAC;oBACvC,CAAC;oBACD,OAAO,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC7E;oBACE,OAAO,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;QAED,sBAAsB,CAAC,QAAuB;YAC5C,OAAO,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAChE,CAAC;QAED,cAAc,CAAC,MAAsB;YACnC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,oBAAoB,CAAC,KAAgB,EAAE,IAAY;YACjD,wBAAwB;YACxB,MAAM,SAAS,GAAG,IAAI,sBAAsB,CAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,KAAK,EACL,IAAI,EACJ,cAAc,CAAC,KAAK,CACrB,EAAE,CAAC;YACJ,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;YACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;YACnF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACxF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAC1C,SAAS,EACT,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;QAG1B,IAAI,CAAC,WAAW,EAAE;;kBAER,SAAS;;QAEnB,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,oBAAoB,SAAS;QACvN,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,CAAC;;MAE7C,CACC,CAAC;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,2BAA2B,CAAC,KAAgB,EAAE,IAAY;YACxD,yCAAyC;YACzC,MAAM,SAAS,GAAW,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACrH,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,SAAS,KAAK,CAAC,CAAC;YAC/E,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,SAAS,CAAC;YAClE,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC1D,MAAM,cAAc,GAAG,GAAG,cAAc,SAAS,CAAC;YAClD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACrE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE;gBACzD,gCAAgC;aACjC,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;YAC3D,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8BAA8B,CAAC,KAAgB;YAC7C,oBAAoB;YACpB,MAAM,OAAO,GAAkB,IAAI,aAAa,EAAE,CAAC;YACnD,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACjD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAW,EAAE,CAAC;gBAC/B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC3E,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CACxD,EAAE,CAAC;oBACF,WAAW,CAAC,IAAI,CACd,QAAQ,CAAC,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,CACzE,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC5F,MAAM,UAAU,GAAe,UAAU,EAAE,IAAI,IAAI,WAAW,CAAC;gBAC/D,MAAM,MAAM,GAAG,sBAAsB,CACnC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,MAAM,CACtB,CAAC;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAC5C,MAAM,EACN,IAAI,CAAA,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,MAAM,UAAU,IAAI,CAAC,iCAAiC,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAC/N,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,CAAC;QAED,oCAAoC,CAAC,SAAoB;YACvD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5E,MAAM,cAAc,GAClB,SAAS,CAAC,SAAS,KAAK,SAAS;gBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI;gBAC1B,CAAC,CAAC,QAAQ,KAAK,SAAS;oBACtB,CAAC,CAAC,iBAAiB;oBACnB,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;YACnC,OAAO,IAAI,CAAC,2BAA2B,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC7F,CAAC;QAED,6BAA6B,CAAC,SAAoB,EAAE,IAAY;YAC9D,MAAM,aAAa,GAAG,sBAAsB,CAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,MAAM,CACtB,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YACzD,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAClF,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;YACpE,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;YAC/D,IAAI,MAAM,GAAW,KAAK,CAAC;YAC3B,IAAI,QAAQ,GAAe,IAAI,UAAU,CAAC;gBACxC,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YACH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,YAAY,CAAC;YACpC,CAAC;YAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;YAClD,MAAM,YAAY,GAAG,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,SAAS,CAAC,IAAI,EACd,IAAI,CAAA;UACF,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;WACjC,yBAAyB,CAAC,aAAa,CAAC;kBACjC,aAAa,CAAC,IAAI;UAC1B,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC;mDACN,aAAa,IAAI,UAAU;;YAGlE,gBAAgB;gBACd,CAAC,CAAC,sBAAsB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CACzH,aAAa,CACd;mBACE,YAAY,WAAW;gBAC5B,CAAC,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CAC5G,aAAa,CACd;mBACE,YAAY,KACrB;UACA,CACH,CAAC;QACJ,CAAC;QAED,2BAA2B,CAAC,SAAoB,EAAE,IAAY;YAC5D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5E,MAAM,cAAc,GAClB,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,IAAI,QAAQ,KAAK,SAAS,CAAC;gBACnD,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;YACjC,OAAO,IAAI,CAAC,2BAA2B,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC7F,CAAC;QAED,oBAAoB,CAAC,SAAoB,EAAE,IAAY;YACrD,MAAM,aAAa,GAAG,sBAAsB,CAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,MAAM,CACtB,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YACzD,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAClF,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;YACpE,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;YAC/D,IAAI,MAAM,GAAW,KAAK,CAAC;YAC3B,IAAI,QAAQ,GAAe,IAAI,UAAU,CAAC;gBACxC,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YACH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,YAAY,CAAC;YACpC,CAAC;YAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;YAClD,MAAM,YAAY,GAAG,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,SAAS,CAAC,IAAI,EACd,IAAI,CAAA;UACF,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;WACjC,yBAAyB,CAAC,aAAa,CAAC;kBACjC,aAAa,CAAC,IAAI;UAC1B,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC;mDACN,aAAa,IAAI,UAAU;;YAGlE,gBAAgB;gBACd,CAAC,CAAC,sBAAsB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CACzH,aAAa,CACd;mBACE,YAAY,WAAW;gBAC5B,CAAC,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CAC5G,aAAa,CACd;mBACE,YAAY,KACrB;UACA,CACH,CAAC;QACJ,CAAC;QACD,mBAAmB,CAAC,SAAoB,EAAE,UAAgB;YACxD,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAClF,OAAO,IAAI,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;QACrD,CAAC;QAED,qBAAqB,CAAC,SAAwB;YAC5C,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;gBAChD,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,SAAS,CACnD,CAAC;YACF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,SAAS,CAAC;YAChD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,UAAU,GAAG,mBAAmB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC7D,IAAI,UAAU,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC/C,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC,0BAA0B,CAChE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,QAAQ,CACT,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACzF,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,IAAI,WAAW,CAAC;YAC/C,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAClC,CAAC;QACD,uBAAuB,CAAC,SAAwB;YAC9C,MAAM,OAAO,GAAkB,IAAI,aAAa,EAAE,CAAC;YACnD,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;gBAChD,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,SAAS,CACnD,CAAC;YACF,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;gBACtC,CAAC,EAAE,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACtE,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;oBAC9B,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC;YAED,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,CAAC;QAED,+BAA+B,CAAC,QAA+B;YAC7D,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC,0BAA0B,CAChE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,QAAQ,CACT,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAChC,IAAI,CAAA,8BAA8B,mBAAmB,CACnD,QAAQ,CAAC,WAAW,CACpB,mBAAmB,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAC/D,CAAC;QACJ,CAAC;QAED,iBAAiB,CAAC,IAAU;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACjF,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,IAAI,WAAW,CAAC;YAC/C,OAAO,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QAED,iCAAiC,CAC/B,SAAoB,EACpB,aAAqB,EACrB,YAAoB;YAEpB,MAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YACtC,MAAM,cAAc,GAAoB,EAAE,CAAC;YAC3C,MAAM,cAAc,GAAoB,EAAE,CAAC;YAC3C,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,KAAK,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC7D,IAAI,SAAS,CAAC,QAAQ;oBAAE,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;oBAClD,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpC,WAAW,EAAE,CAAC;YAChB,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;gBAC3C,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9M,CAAC;YACJ,CAAC;YACD,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;gBAC3C,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/M,CAAC;YACJ,CAAC;YACD,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QAED,4BAA4B,CAAC,SAAwB;YACnD,MAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,0FAA0F;YAC1F,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBACxD,CAAC,EAAE,CAAC;gBACJ,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACvF,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,gCAAgC,CAAC,SAAS,EAAE,SAAS,CAAC,GAChE,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EACjF,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CACnC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CACpC,SAAS,CAAC,IAAI,EACd,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CACtC,CACF,OAAO,CACT,CAAC;YACJ,CAAC;YAED,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QAED,gBAAgB,CAAC,KAAY,EAAE,IAAY;YACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC1C,MAAM,SAAS,GAAG,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;gBACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;gBACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;gBACjE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;gBACxF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,SAAS,EACT,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;UAG1B,IAAI,CAAC,WAAW,EAAE;;oBAER,SAAS;;;cAGf,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;cAClC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;0BAC7F,SAAS;;gBAEnB,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC;;WAE1C,CACF,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,uBAAuB,CAAC,KAAY;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,sBAAsB,CACtC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,KAAK,EACL,KAAK,CAAC,IAAI,IAAI,OAAO,CACtB,CAAC;gBACF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,SAAS,KAAK,CAAC,CAAC;gBAC1E,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;gBAC7D,MAAM,cAAc,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC;gBACtE,OAAO;oBACL,SAAS,EAAE,cAAc;oBACzB,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,SAAS,CAAC,WAAW;iBAC7B,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACnC,CAAC;QACH,CAAC;QAED,kBAAkB,CAAC,KAAY,EAAE,IAAY;YAC3C,OAAO,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;QAED,yBAAyB,CAAC,KAAY,EAAE,IAAY;YAClD,OAAO,KAAK,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC;QAED,aAAa,CAAC,KAAY;YACxB,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC7C,CAAC,EAAE,CAAC;gBACJ,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACnC,MAAM,QAAQ,GAAY,IAAe,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;oBAChE,MAAM,UAAU,GAAW,sBAAsB,CAC/C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,OAAO,EACP,QAAQ,CACT,CAAC;oBACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;oBACrD,MAAM,CAAC,IAAI,CACT,IAAI,CAAA,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,CACxG,CAAC;oBACF,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI;wBAAE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,mBAAmB,CAAC,KAAY;YAC9B,OAAO,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QAED,gCAAgC,CAC9B,SAAwB,EACxB,SAAiC;YAEjC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAClC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC;YAClC,MAAM,WAAW,GAAG,sBAAsB,CACxC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,SAAS,CACzB,CAAC;YACF,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YACxE,4DAA4D;YAC5D,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO;gBACpC,CAAC,CAAC,4DAA4D;oBAC5D,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;gBACnD,CAAC,CAAC,cAAc,CAAC;YACnB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAChC,IAAI,CAAA,GAAG,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,IAAI,WAAW,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,YAAY,EAAE,EAAE,CACxK,CAAC;QACJ,CAAC;QAED,4BAA4B,CAAC,SAAwB;YACnD,MAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,0FAA0F;YAC1F,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBACxD,CAAC,EAAE,CAAC;gBACJ,IACE,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;oBAClC,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;oBACjC,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EACjC,CAAC;oBACD,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,GAC3D,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EACjF,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,MAAM,CAAC,CAAC;YAC7B,CAAC;YAED,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QACD,2BAA2B,CACzB,SAAwB,EACxB,SAAiC;YAEjC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAClC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC;YAClC,MAAM,WAAW,GAAG,sBAAsB,CACxC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,SAAS,CACzB,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,WAAW,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,uBAAuB,CAAC,SAAiC;YACvD,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvB,KAAK,QAAQ;oBACX,OAAO,IAAI,CAAA,qBAAqB,SAAS,CAAC,IAAI,MAAM,CAAC;gBACvD,KAAK,OAAO;oBACV,OAAO,IAAI,CAAA,oBAAoB,SAAS,CAAC,IAAI,MAAM,CAAC;gBACtD;oBACE,OAAO,EAAE,CAAC;YACd,CAAC;QACH,CAAC;QAED,mBAAmB,CAAC,SAAiB,EAAE,IAAwB;YAC7D,MAAM,OAAO,GAAG;gBACd,SAAS,EAAE,SAAS;gBACpB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI,CAAC,WAAW;aACxB,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE;gBACzD,gCAAgC;aACjC,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,2BAA2B,CACzB,IAAY,EACZ,SAAoB,EACpB,QAAgB;YAEhB,IAAI,OAAO,GAAkC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC;YAC1C,MAAM,UAAU,GAAuB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAClE,eAAe,IAAI,mBAAmB,CACvC,CAAC;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACzD,MAAM,cAAc,GAAG,GAAG,SAAS,SAAS,CAAC;YAC7C,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,UAAU,CAAC;YACnE,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;YACvC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,YAAY,CAAC;YAClD,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;YACzC,OAAO,GAAG;gBACR,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;gBACvC,IAAI,EAAE,UAAU;gBAChB,YAAY,EAAE,IAAI;gBAClB,KAAK,EAAE,UAAU,CAAC,WAAW;gBAC7B,YAAY,EAAE,QAAQ;aACvB,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE;gBACzD,gCAAgC;aACjC,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YACjD,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,2DAA2D;QAC3D,qBAAqB,CAAC,SAAgC;YACpD,OAAO,SAAS;gBACd,CAAC,CAAC,sBAAsB,CACpB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,oBAAoB,CAAC,SAAS,CAAC,CAChC;gBACH,CAAC,CAAC,UAAU,CAAC;QACjB,CAAC;QACD,SAAS,CACP,iBAAsC,EACtC,MAAuB,EACvB,QAAyB,EACzB,WAAiC;YAEjC,4DAA4D;YAC5D,OAAO,KAAK,CAAC,SAAS,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC3E,CAAC;QAED,mBAAmB,CAAC,MAAc,EAAE,IAAwB;YAC1D,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7E,OAAO,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC;QAED,iBAAiB,CAAC,MAAc,EAAE,IAAY;YAC5C,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7E,OAAO,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC;QAED,UAAU,CAAC,UAA8B;YACvC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACzC,IAAI,UAAU,KAAK,OAAO,CAAC,MAAM;oBAAE,OAAO,OAAO,CAAC,OAAO,CAAC;YAC5D,CAAC;YAED,MAAM,iBAAiB,GAAsB;gBAC3C,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,QAAQ,EAAE,EAAE;aACb,CAAC;YAEF,QAAQ,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC7C,KAAK,gBAAgB,CAAC,UAAU;oBAC9B,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;oBACtE,MAAM;gBACR;oBACE,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;oBAChE,MAAM;YACV,CAAC;YAED,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,iBAAiB,CAAC,IAAwB;YACxC,MAAM,QAAQ,GAAkB,IAAI,aAAa,EAAE,CAAC;YACpD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;YAED,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7C,CAAC;QAED,uBAAuB,CAAC,IAAwB;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YACtC,MAAM,QAAQ,GAAkB,IAAI,aAAa,EAAE,CAAC;YACpD,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC;YAC1C,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC,aAAa,SAAS,gBAAgB,CAAC,CAAC;YACtD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,iCAAiC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;YAC9F,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,QAAQ,CAAC,IAAI,CACX,IAAI,CAAA,sBAAsB,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,gBAAgB,CAC3F,CAAC;YACF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;YACnC,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAErB,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7C,CAAC;QAED,aAAa,CAAC,MAAqB;YACjC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,YAAY,CAAC,KAAY;YACvB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA;UACnC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC;QAC5C,CAAC,CAAC;QACN,CAAC;QAED,kBAAkB,CAAC,KAAY;YAC7B,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC1D,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,gBAAgB,CAAC,SAAwB,EAAE,SAAiB;YAC1D,IAAI,OAAO,GAAkB,SAAS,CAAC;YACvC,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,gBAAgB;QAChB,2DAA2D;QAC3D,sBAAsB,CAAC,KAAY;YACjC,IAAI,CAAC,KAAK,CAAC,cAAc;gBAAE,OAAO,EAAE,CAAC;YACrC,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,MAAM,IAAI,GAAW,KAAK,CAAC,cAAc,CAAC,IAAI;iBAC3C,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAY,CAAC;iBAC/B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;YACzF,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC;gBACJ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAChE,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACpB,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC;YACD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;YACvD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,mBAAmB,CAAC,KAAY;YAC9B,MAAM,YAAY,GAAe,IAAI,UAAU,CAAC;gBAC9C,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YACH,IAAI,OAAO,GAA2B,SAAS,CAAC;YAChD,KAAK,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;gBACpD,IAAI,SAAqB,CAAC;gBAC1B,QAAQ,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC1B,KAAK,SAAS;wBACZ,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;wBACrF,MAAM;oBACR,KAAK,QAAQ;wBACX,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;wBACxF,MAAM;oBACR,KAAK,OAAO;wBACV,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;wBACnD,MAAM;oBACR,KAAK,QAAQ;wBACX,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;wBAC5E,MAAM;oBACR;wBACE,OAAO,YAAY,CAAC;gBACxB,CAAC;gBAED,OAAO,GAAG,OAAO,IAAI,SAAS,CAAC;gBAC/B,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;oBAAE,OAAO,YAAY,CAAC;YAC/E,CAAC;YACD,OAAO,OAAO,IAAI,YAAY,CAAC;QACjC,CAAC;QAED,WAAW,CAAC,WAAiC;YAC3C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC;YAED,MAAM,kBAAkB,GAAyB,EAAE,CAAC;YACpD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;gBACjC,QAAQ,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAChC,KAAK,QAAQ;wBACX,CAAC;4BACC,QAAQ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gCACzC,KAAK,gBAAgB,CAAC,UAAU;oCAC9B,aAAa;oCACb,MAAM;gCACR;oCACE,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oCAChC,MAAM;4BACV,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR;wBACE,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAChC,MAAM;gBACV,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC/C,CAAC;QAED,sBAAsB,CAAC,IAAsC;YAC3D,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBACtC,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBACjC,IAAI,CAAC,cAAc,GAAG,GACpB,IAAI,CAAC,SAAS;wBACZ,CAAC,CAAC,sBAAsB,CACpB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,IAAI,CAAC,SAAS,EACd,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CACrC;wBACH,CAAC,CAAC,UACN,UAAU,CAAC;gBACb,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,cAAc,GAAG,kBAAkB,CAAC;gBAC3C,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;KACF;IAED,SAAS,gBAAgB,CAAC,OAAgB,EAAE,MAAiB;QAC3D,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5C,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACnC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACrC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC3C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACxC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACzC,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAChC,OAAO,CAAC,OAAO,EACf,iBAAiB,EACjB,OAAO,CACR,CAAC;IACF,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IACrC,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAEtC,MAAM,oBAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;IAC5B,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,KAAK,EAAE,CAAC;QAC7E,MAAM,QAAQ,CAAC,QAAQ,EAAE;YACvB,QAAQ;YACR,YAAY;YACZ,OAAO,CAAC,UAAU,EAAE,CAAC,gBAAgB;YACrC,qBAAqB;YACrB,UAAU;SACX,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAoBL,MAAM,EACN,oBAAoB,EACpB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,UAAU,GACX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,eAAe,EAQf,aAAa,EAEb,IAAI,EACJ,kBAAkB,GACnB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAKL,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,GACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,UAAU,EAIV,cAAc,GACf,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAA+B,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,EACL,YAAY,EACZ,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,aAAa,EACb,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAClB,yBAAyB,EACzB,yBAAyB,EACzB,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAiD;IAC7E,IAAI,aAAa,GAAW,CAAC,CAAC;IAC9B,MAAM,WAAW,GAAG,IAAI,GAAG,EAA6B,CAAC;IACzD,MAAM,iBAAiB,GAAW,eAAe,CAAC;IAElD,MAAM,iBAAkB,SAAQ,eAAe;QAC7C,YAAY,GAAkC,IAAI,GAAG,EAA4B,CAAC;QAClF,cAAc,GAAW;uCACU,CAAC;QACpC,cAAc,GAAW,YAAY,CAAC;QACtC,aAAa,GAAwB,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/E,cAAc,GAAuB,SAAS,CAAC;QAC/C,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAEpD,SAAS,GAAiB,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE;YACtE,mBAAmB,EAAE,UAAU,CAAC,IAAI;YACpC,gBAAgB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI;SAC9B,CAAC,CAAC;QAEH,gBAAgB,CAAC,KAAY,EAAE,IAAY,EAAE,WAAiB;YAC5D,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,EAC9D,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CACvD,CAAC;QACJ,CAAC;QAED,YAAY,CAAC,KAAY,EAAE,WAAiB;YAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7F,CAAC;QAED,cAAc,CAAC,OAAuB;YACpC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QACzF,CAAC;QAED,YAAY,CAAC,KAAY;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QAC1F,CAAC;QAED,eAAe,CAAC,eAAoC;YAClD,QAAQ,eAAe,CAAC,IAAI,EAAE,CAAC;gBAC7B,KAAK,MAAM;oBACT,IAAI,CAAC,eAAe,CAAC,IAAI;wBAAE,OAAO,OAAO,aAAa,EAAE,EAAE,CAAC;oBAC3D,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACzE,KAAK,WAAW;oBACd,IAAI,CAAC,eAAe,CAAC,IAAI;wBAAE,OAAO,YAAY,aAAa,EAAE,EAAE,CAAC;oBAChE,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACzE,KAAK,OAAO;oBACV,IAAI,CAAC,eAAe,CAAC,IAAI;wBAAE,OAAO,QAAQ,aAAa,EAAE,EAAE,CAAC;oBAC5D,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACzE,KAAK,WAAW;oBACd,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACzE,KAAK,OAAO;oBACV,IAAI,CAAC,eAAe,CAAC,IAAI;wBAAE,OAAO,QAAQ,aAAa,EAAE,EAAE,CAAC;oBAC5D,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;gBACzE,KAAK,QAAQ,CAAC;gBACd;oBACE,OAAO,mBAAmB,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QAED,eAAe,CAAC,EAAQ,EAAE,IAAY;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC7D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,QAAQ,EACR,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;UAGxB,IAAI,CAAC,WAAW,EAAE;;oBAER,SAAS;;;cAGf,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;cAClC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;0BAC7F,QAAQ;;gBAElB,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;;WAErC,CACJ,CAAC;QACJ,CAAC;QAED,sBAAsB,CAAC,EAAQ;YAC7B,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,QAAQ,KAAK,CAAC,CAAC;YACxE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC5D,MAAM,aAAa,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC,SAAS,CAAC;YAClE,OAAO;gBACL,SAAS,EAAE,aAAa;gBACxB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,QAAQ,CAAC,WAAW;aAC5B,CAAC;QACJ,CAAC;QAED,WAAW,CAAC,EAAQ;YAClB,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACxC,CAAC,EAAE,CAAC;gBACJ,MAAM,UAAU,GAAW,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC3F,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;gBACpD,MAAM,CAAC,IAAI,CACT,IAAI,CAAA,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,OACpE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,MAAM,CAAC,KAAgB,CAAC,CAAC,CAAC,IAC5C,GAAG,CACJ,CAAC;gBACF,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI;oBAAE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAC3D,CAAC;YAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,SAAS,CAAC,SAAwB,EAAE,IAAY;YAC9C,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvB,KAAK,SAAS;oBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,iCAAiC,CAAC,CAAC;gBAC5E,KAAK,MAAM;oBACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,iCAAiC,CAAC,CAAC;gBAC5E,KAAK,WAAW,CAAC;gBACjB,KAAK,OAAO;oBACV,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE;wBAC1C,IAAI,EAAE,mBAAmB;wBACzB,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,IAAI,EAAE;qBACrC,CAAC,CAAC;oBACH,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM;oBACT,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;oBAC7E,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QAED,WAAW,CAAC,IAAyB;YACnC,MAAM,OAAO,GAAkB,IAAI,aAAa,EAAE,CAAC;YACnD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,IAAK,CAAC;YACzC,CAAC;YACD,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,IAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBAAE,OAAO,CAAC,kBAAkB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACvF,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QAED,gBAAgB,CAAC,KAAY,EAAE,IAAY;YACzC,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACjF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;YACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;YACnF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACxF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAC1C,SAAS,EACT,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;QAG1B,IAAI,CAAC,WAAW,EAAE;;kBAER,SAAS;;QAEnB,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,wBAAwB,SAAS,IAC3N,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAA,KAAK,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EACjF;QACE,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC;;MAEzC,CACC,CAAC;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,uBAAuB,CAAC,KAAY,EAAE,IAAY;YAChD,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACjF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,SAAS,KAAK,CAAC,CAAC;YAC1E,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC7D,MAAM,cAAc,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC;YACtE,OAAO,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACxE,CAAC;QAED,yBAAyB,CAAC,KAAY;YACpC,MAAM,SAAS,GAAW,yBAAyB,CACjD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,KAAK,EACL,KAAK,CAAC,IAAI,CACX,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,SAAS,KAAK,CAAC,CAAC;YAC3E,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC9D,MAAM,cAAc,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC;YACtE,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACjF,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;YACtC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,kBAAkB,CAAC,KAAY,EAAE,IAAY;YAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAA,sBAAsB,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC;YACjF,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,SAAS,GAAG,OAAO,CAAC,iBAAiB,IAAI,IAAI,CAAC;YACpD,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACjD,CAAC;QAED,eAAe,CAAC,KAAY;YAC1B,MAAM,MAAM,GAAkB,IAAI,aAAa,EAAE,CAAC;YAClD,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACzC,IACE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtB,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;oBACvB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtB,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EACnD,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,CAAC;QAED,mBAAmB,CAAC,KAAY;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnD,CAAC;QAED,YAAY,CAAC,KAAY;YACvB,MAAM,SAAS,GAAW,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC;YACzD,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE;gBAC1C,IAAI,EAAE,iBAAiB;gBACvB,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE;aACnC,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACjD,CAAC;QAED,SAAS,CAAC,IAAU;YAClB,OAAO,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC;QACvF,CAAC;QAED,oBAAoB,CAAC,QAAuB;YAC1C,MAAM,OAAO,GAAY,EAAE,CAAC;YAC5B,SAAS,WAAW,CAAC,KAAY,EAAE,YAAoB;gBACrD,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAAE,OAAO,KAAK,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACpB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACpD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;oBAAE,OAAO,KAAK,CAAC;gBAChD,OAAO,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;YACpD,CAAC;YACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC7B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAC;YACvE,OAAO,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;QAED,oBAAoB,CAAC,QAAuB;YAC1C,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC;gBAAE,OAAO,EAAE,CAAC;YACjE,MAAM,YAAY,GAAG,sBAAsB,CACzC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,QAAQ,EACR,QAAQ,CAAC,IAAI,CACd,CAAC;YACF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACjE,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,CAAC;YACxD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;YACzF,4DAA4D;YAC5D,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO;gBACnC,CAAC,CAAC,4DAA4D;oBAC5D,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAClD,CAAC,CAAC,WAAW,CAAC;YAChB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM;iBACvB,OAAO,CAAC,IAAI,CAAA,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,GAChR,QAAQ,CAAC,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EACrF,IAAI,YAAY,WAAW,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,GACrD,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,IAC3C;KACD,CAAC,CAAC;QACH,CAAC;QAED,iBAAiB,CACf,QAAuB;YAEvB,OAAO,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACnD,CAAC;QAED,qBAAqB,CAEnB,MAAY;YAEZ,SAAS,kBAAkB,CAAC,IAAU,EAAE,IAAwB;gBAC9D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClB,KAAK,QAAQ;wBACX,OAAO,IAAI,CAAC,KAAK,CAAC;oBACpB,KAAK,SAAS;wBACZ,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;oBACzB,KAAK,QAAQ;wBACX,OAAO,IAAI,CAAC,aAAa,CAAC;oBAC5B,KAAK,oBAAoB;wBACvB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;4BACxB,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAC7C,CAAC;6BAAM,CAAC;4BACN,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;wBACzB,CAAC;oBACH,KAAK,eAAe;wBAClB,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC7C,KAAK,YAAY;wBACf,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;4BAAE,OAAO,IAAI,CAAC,IAAI,CAAC;wBAC/C,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;4BAAE,OAAO,IAAI,CAAC,KAAK,CAAC;wBACtD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ;4BAAE,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC/D,CAAC;gBACD,gBAAgB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE;oBACrC,IAAI,EAAE,uBAAuB;oBAC7B,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,EAAE;iBACX,CAAC,CAAC;gBACH,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;gBACpB,KAAK,QAAQ;oBACX,OAAO,CAAC,IAAI,CAAA,QAAQ,EAAE,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAC7C,KAAK,gBAAgB;oBACnB,MAAM,QAAQ,GAAG,MAAM,CAAC;oBACxB,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS;wBACpC,OAAO,CAAC,IAAI,CAAA,QAAQ,EAAE,IAAI,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC;oBACrD,MAAM,WAAW,GAAa,EAAE,CAAC;oBACjC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;wBAClC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;oBACnD,CAAC;oBACD,OAAO,CAAC,IAAI,CAAA,QAAQ,EAAE,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;gBACrD,KAAK,SAAS;oBACZ,OAAO,CAAC,IAAI,CAAA,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBACjE,KAAK,QAAQ;oBACX,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;oBACpD,OAAO,CAAC,IAAI,CAAA,GAAG,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;gBACrC,KAAK,OAAO;oBACV,MAAM,QAAQ,GAAG,EAAE,CAAC;oBACpB,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAClE,IAAI,QAAQ;wBAAE,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;oBAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;wBAClC,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;wBAC3D,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC7B,CAAC;oBACD,OAAO,CAAC,IAAI,CAAA,GAAG,UAAU,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAChF,KAAK,QAAQ;oBACX,OAAO,CAAC,IAAI,CAAA,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACnC,KAAK,OAAO;oBACV,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC3B,OAAO,CAAC,IAAI,CAAA,YAAY,EAAE,SAAS,CAAC,CAAC;oBACvC,CAAC;oBACD,OAAO,CAAC,IAAI,CAAA,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;gBACjE,KAAK,MAAM;oBACT,OAAO,CAAC,IAAI,CAAA,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;gBACjE,KAAK,YAAY;oBACf,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACrC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;wBAC5C,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;4BACxD,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;wBACjC,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBAC9B,CAAC;oBACD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACrC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;oBAClC,CAAC;oBACD,OAAO,CAAC,IAAI,CAAA,QAAQ,EAAE,SAAS,CAAC,CAAC;gBACnC,KAAK,OAAO;oBACV,OAAO,CAAC,IAAI,CAAA,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;gBACjE;oBACE,OAAO,CAAC,IAAI,CAAA,GAAG,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAED,gBAAgB,CAAC,IAAoB;YACnC,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC;YACvC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAC3F,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC9B,CAAC;QACD,sBAAsB,CAAC,QAAuB;YAC5C,OAAO,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAChE,CAAC;QAED,cAAc,CAAC,MAAsB;YACnC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,oBAAoB,CAAC,KAAgB,EAAE,IAAY;YACjD,wBAAwB;YACxB,MAAM,SAAS,GAAG,IAAI,sBAAsB,CAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,KAAK,EACL,IAAI,EACJ,cAAc,CAAC,KAAK,CACrB,EAAE,CAAC;YACJ,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;YACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;YACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;YACnF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YACxF,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAC1C,SAAS,EACT,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;QAG1B,IAAI,CAAC,WAAW,EAAE;;kBAER,SAAS;;QAEnB,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,oBAAoB,SAAS;QACvN,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,KAAK,CAAC;;MAE7C,CACC,CAAC;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,2BAA2B,CAAC,KAAgB,EAAE,IAAY;YACxD,yCAAyC;YACzC,MAAM,SAAS,GAAW,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;YACrH,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,cAAc,SAAS,KAAK,CAAC,CAAC;YAC/E,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,SAAS,CAAC;YAClE,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;YAC1D,MAAM,cAAc,GAAG,GAAG,cAAc,SAAS,CAAC;YAClD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;YAChF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE;gBACzD,gCAAgC;aACjC,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;YAC3D,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,8BAA8B,CAAC,KAAgB;YAC7C,oBAAoB;YACpB,MAAM,OAAO,GAAkB,IAAI,aAAa,EAAE,CAAC;YACnD,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;gBACjD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;gBACzD,MAAM,WAAW,GAAW,EAAE,CAAC;gBAC/B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC3E,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CACxD,EAAE,CAAC;oBACF,WAAW,CAAC,IAAI,CACd,QAAQ,CAAC,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,CACzE,CAAC;gBACJ,CAAC;gBACD,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC5F,MAAM,UAAU,GAAe,UAAU,EAAE,IAAI,IAAI,WAAW,CAAC;gBAC/D,MAAM,MAAM,GAAG,sBAAsB,CACnC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,MAAM,CACtB,CAAC;gBACF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAC5C,MAAM,EACN,IAAI,CAAA,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,MAAM,UAAU,IAAI,CAAC,iCAAiC,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,IAAI,CAC/N,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;gBACtC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACjD,CAAC;YACD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,CAAC;QAED,oCAAoC,CAAC,SAAoB;YACvD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5E,MAAM,cAAc,GAClB,SAAS,CAAC,SAAS,KAAK,SAAS;gBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI;gBAC1B,CAAC,CAAC,QAAQ,KAAK,SAAS;oBACtB,CAAC,CAAC,iBAAiB;oBACnB,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;YACnC,OAAO,IAAI,CAAC,2BAA2B,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC7F,CAAC;QAED,6BAA6B,CAAC,SAAoB,EAAE,IAAY;YAC9D,MAAM,aAAa,GAAG,sBAAsB,CAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,MAAM,CACtB,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YACzD,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAClF,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;YACpE,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;YAC/D,IAAI,MAAM,GAAW,KAAK,CAAC;YAC3B,IAAI,QAAQ,GAAe,IAAI,UAAU,CAAC;gBACxC,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YACH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,YAAY,CAAC;YACpC,CAAC;YAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;YAClD,MAAM,YAAY,GAAG,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,SAAS,CAAC,IAAI,EACd,IAAI,CAAA;UACF,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;WACjC,yBAAyB,CAAC,aAAa,CAAC;kBACjC,aAAa,CAAC,IAAI;UAC1B,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC;mDACN,aAAa,IAAI,UAAU;;YAGlE,gBAAgB;gBACd,CAAC,CAAC,sBAAsB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CACzH,aAAa,CACd;mBACE,YAAY,WAAW;gBAC5B,CAAC,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CAC5G,aAAa,CACd;mBACE,YAAY,KACrB;UACA,CACH,CAAC;QACJ,CAAC;QAED,2BAA2B,CAAC,SAAoB,EAAE,IAAY;YAC5D,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAC5E,MAAM,cAAc,GAClB,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,IAAI,QAAQ,KAAK,SAAS,CAAC;gBACnD,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;YACjC,OAAO,IAAI,CAAC,2BAA2B,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC7F,CAAC;QAED,oBAAoB,CAAC,SAAoB,EAAE,IAAY;YACrD,MAAM,aAAa,GAAG,sBAAsB,CAC1C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,MAAM,CACtB,CAAC;YACF,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YACzD,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAClF,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,CAAC;YACpE,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;YAC/D,IAAI,MAAM,GAAW,KAAK,CAAC;YAC3B,IAAI,QAAQ,GAAe,IAAI,UAAU,CAAC;gBACxC,IAAI,EAAE,MAAM;gBACZ,SAAS,EAAE,QAAQ;gBACnB,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;YACH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/B,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,YAAY,CAAC;YACpC,CAAC;YAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;YAClD,MAAM,YAAY,GAAG,GAAG,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,SAAS,CAAC,IAAI,EACd,IAAI,CAAA;UACF,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;WACjC,yBAAyB,CAAC,aAAa,CAAC;kBACjC,aAAa,CAAC,IAAI;UAC1B,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,CAAC;mDACN,aAAa,IAAI,UAAU;;YAGlE,gBAAgB;gBACd,CAAC,CAAC,sBAAsB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CACzH,aAAa,CACd;mBACE,YAAY,WAAW;gBAC5B,CAAC,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,YAAY,QAAQ,aAAa,SAAS,IAAI,CAAC,4BAA4B,CAC5G,aAAa,CACd;mBACE,YAAY,KACrB;UACA,CACH,CAAC;QACJ,CAAC;QACD,mBAAmB,CAAC,SAAoB,EAAE,UAAgB;YACxD,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,CAAC,CAAC;YAClF,OAAO,IAAI,CAAC,uBAAuB,CAAC,aAAa,CAAC,CAAC;QACrD,CAAC;QAED,cAAc,CAAC,cAA8B;YAC3C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,qBAAqB,CAAC,SAAwB;YAC5C,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;gBAChD,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,SAAS,CACnD,CAAC;YACF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,SAAS,CAAC;YAChD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,UAAU,GAAG,mBAAmB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC7D,IAAI,UAAU,KAAK,SAAS;gBAAE,OAAO,SAAS,CAAC;YAC/C,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC,0BAA0B,CAChE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,QAAQ,CACT,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACzF,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,IAAI,WAAW,CAAC;YAC/C,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAClC,CAAC;QACD,uBAAuB,CAAC,SAAwB;YAC9C,MAAM,OAAO,GAAkB,IAAI,aAAa,EAAE,CAAC;YACnD,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;gBAChD,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,SAAS,CACnD,CAAC;YACF,KAAK,MAAM,QAAQ,IAAI,cAAc,EAAE,CAAC;gBACtC,CAAC,EAAE,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;gBACtE,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;oBAC9B,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,SAAS,EAAE,CAAC;gBAC3C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC;oBACjE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YAED,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,CAAC;QAED,+BAA+B,CAAC,QAA+B;YAC7D,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC,0BAA0B,CAChE,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,QAAQ,CACT,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAChC,IAAI,CAAA,8BAA8B,mBAAmB,CACnD,QAAQ,CAAC,WAAW,CACpB,mBAAmB,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,KAAK,CAC/D,CAAC;QACJ,CAAC;QAED,iBAAiB,CAAC,IAAU;YAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1C,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;YACjF,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,IAAI,WAAW,CAAC;YAC/C,OAAO,UAAU,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QAED,iCAAiC,CAC/B,SAAoB,EACpB,aAAqB,EACrB,YAAoB;YAEpB,MAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YACtC,MAAM,cAAc,GAAoB,EAAE,CAAC;YAC3C,MAAM,cAAc,GAAoB,EAAE,CAAC;YAC3C,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,KAAK,MAAM,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC7D,IAAI,SAAS,CAAC,QAAQ;oBAAE,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;oBAClD,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACpC,WAAW,EAAE,CAAC;YAChB,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;gBAC3C,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;gBAC7D,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,SAAS,IAAI,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACrK,CAAC;YACJ,CAAC;YACD,KAAK,MAAM,aAAa,IAAI,cAAc,EAAE,CAAC;gBAC3C,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;gBAC7D,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,SAAS,KAAK,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACtK,CAAC;YACJ,CAAC;YACD,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QAED,4BAA4B,CAAC,SAAwB;YACnD,MAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,0FAA0F;YAC1F,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBACxD,CAAC,EAAE,CAAC;gBACJ,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACvF,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,gCAAgC,CAAC,SAAS,EAAE,SAAS,CAAC,GAChE,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EACjF,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CACnC,IAAI,CAAC,SAAS,CAAC,uBAAuB,CACpC,SAAS,CAAC,IAAI,EACd,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CACtC,CACF,OAAO,CACT,CAAC;YACJ,CAAC;YAED,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QAED,gBAAgB,CAAC,KAAY,EAAE,IAAY;YACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC1C,MAAM,SAAS,GAAG,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC;gBACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;gBACrD,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;gBACjE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;gBACxF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CACpC,SAAS,EACT,IAAI,CAAA,GAAG,IAAI,CAAC,cAAc;;;UAG1B,IAAI,CAAC,WAAW,EAAE;;oBAER,SAAS;;;cAGf,GAAG,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;cAClC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;0BAC7F,SAAS;;gBAEnB,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC;;WAE1C,CACF,CAAC;YACJ,CAAC;YAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,QAAQ,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,uBAAuB,CAAC,KAAY;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACjD,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,sBAAsB,CACtC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,KAAK,EACL,KAAK,CAAC,IAAI,IAAI,OAAO,CACtB,CAAC;gBACF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,SAAS,KAAK,CAAC,CAAC;gBAC1E,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,KAAK,CAAC;gBAC7D,MAAM,cAAc,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC;gBACtE,OAAO;oBACL,SAAS,EAAE,cAAc;oBACzB,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,SAAS,CAAC,WAAW;iBAC7B,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACnC,CAAC;QACH,CAAC;QAED,kBAAkB,CAAC,KAAY,EAAE,IAAY;YAC3C,OAAO,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;QAED,yBAAyB,CAAC,KAAY,EAAE,IAAY;YAClD,OAAO,KAAK,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACtD,CAAC;QAED,aAAa,CAAC,KAAY;YACxB,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC7C,CAAC,EAAE,CAAC;gBACJ,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACnC,MAAM,QAAQ,GAAY,IAAe,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;oBAChE,MAAM,UAAU,GAAW,sBAAsB,CAC/C,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,OAAO,EACP,QAAQ,CACT,CAAC;oBACF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;oBACrD,MAAM,CAAC,IAAI,CACT,IAAI,CAAA,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,GAAG,CACxG,CAAC;oBACF,IAAI,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI;wBAAE,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,CAAC;QAED,mBAAmB,CAAC,KAAY;YAC9B,OAAO,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QAED,gCAAgC,CAC9B,SAAwB,EACxB,SAAiC;YAEjC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAClC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC;YAClC,MAAM,WAAW,GAAG,sBAAsB,CACxC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,SAAS,CACzB,CAAC;YACF,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YACtE,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,cAAc,GAAG,SAAS,CAAC;YACtE,4DAA4D;YAC5D,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO;gBACpC,CAAC,CAAC,4DAA4D;oBAC5D,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;gBACnD,CAAC,CAAC,cAAc,CAAC;YACnB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAChC,IAAI,CAAA,GAAG,SAAS,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,IAAI,WAAW,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,YAAY,EAAE,EAAE,CACxK,CAAC;QACJ,CAAC;QAED,4BAA4B,CAAC,SAAwB;YACnD,MAAM,SAAS,GAAG,IAAI,aAAa,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC;YAC5C,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,0FAA0F;YAC1F,KAAK,MAAM,SAAS,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;gBACxD,CAAC,EAAE,CAAC;gBACJ,IACE,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;oBAClC,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;oBACjC,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,EACjC,CAAC;oBACD,SAAS,CAAC,IAAI,CACZ,IAAI,CAAA,GAAG,IAAI,CAAC,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,GAC3D,CAAC,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,IAAI,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EACjF,EAAE,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAA,MAAM,CAAC,CAAC;YAC7B,CAAC;YAED,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;QAC5B,CAAC;QACD,2BAA2B,CACzB,SAAwB,EACxB,SAAiC;YAEjC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;YAClC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC;YAClC,MAAM,WAAW,GAAG,sBAAsB,CACxC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,IAAI,EACJ,cAAc,CAAC,SAAS,CACzB,CAAC;YACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,GAAG,WAAW,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,uBAAuB,CAAC,SAAiC;YACvD,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;gBACvB,KAAK,QAAQ;oBACX,OAAO,IAAI,CAAA,qBAAqB,SAAS,CAAC,IAAI,MAAM,CAAC;gBACvD,KAAK,OAAO;oBACV,OAAO,IAAI,CAAA,oBAAoB,SAAS,CAAC,IAAI,MAAM,CAAC;gBACtD;oBACE,OAAO,EAAE,CAAC;YACd,CAAC;QACH,CAAC;QAED,mBAAmB,CAAC,SAAiB,EAAE,IAAwB,EAAE,IAAY;YAC3E,MAAM,OAAO,GAAG;gBACd,SAAS,EAAE,SAAS;gBACpB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,IAAI,CAAC,WAAW;aACxB,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE;gBACzD,gCAAgC;aACjC,CAAC,CAAC;YACH,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,2BAA2B,CACzB,IAAY,EACZ,SAAoB,EACpB,QAAgB;YAEhB,IAAI,OAAO,GAAkC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC;YAC1C,MAAM,UAAU,GAAuB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAClE,eAAe,IAAI,mBAAmB,CACvC,CAAC;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACzD,MAAM,cAAc,GAAG,GAAG,SAAS,SAAS,CAAC;YAC7C,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,UAAU,CAAC;YACnE,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC;YACvC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,YAAY,CAAC;YAClD,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;YACzC,OAAO,GAAG;gBACR,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;gBACvC,IAAI,EAAE,UAAU;gBAChB,YAAY,EAAE,IAAI;gBAClB,KAAK,EAAE,UAAU,CAAC,WAAW;gBAC7B,YAAY,EAAE,QAAQ;aACvB,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;YACvD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC;YAC/E,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACnE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE;gBACzD,gCAAgC;aACjC,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YACjD,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC/B,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,2DAA2D;QAC3D,qBAAqB,CAAC,SAAgC;YACpD,OAAO,SAAS;gBACd,CAAC,CAAC,sBAAsB,CACpB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,SAAS,EACT,oBAAoB,CAAC,SAAS,CAAC,CAChC;gBACH,CAAC,CAAC,UAAU,CAAC;QACjB,CAAC;QACD,SAAS,CACP,iBAAsC,EACtC,MAAuB,EACvB,QAAyB,EACzB,WAAiC;YAEjC,4DAA4D;YAC5D,OAAO,KAAK,CAAC,SAAS,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC3E,CAAC;QAED,mBAAmB,CAAC,MAAc,EAAE,IAAwB;YAC1D,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7E,OAAO,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC;QAED,iBAAiB,CAAC,MAAc,EAAE,IAAY;YAC5C,MAAM,UAAU,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7E,OAAO,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC;QAED,UAAU,CAAC,UAA8B;YACvC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACzC,IAAI,UAAU,KAAK,OAAO,CAAC,MAAM;oBAAE,OAAO,OAAO,CAAC,OAAO,CAAC;YAC5D,CAAC;YAED,MAAM,iBAAiB,GAAsB;gBAC3C,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,QAAQ,EAAE,EAAE;aACb,CAAC;YAEF,QAAQ,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC7C,KAAK,gBAAgB,CAAC,UAAU;oBAC9B,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;oBACtE,MAAM;gBACR;oBACE,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;oBAChE,MAAM;YACV,CAAC;YAED,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QAED,iBAAiB,CAAC,IAAwB;YACxC,MAAM,QAAQ,GAAkB,IAAI,aAAa,EAAE,CAAC;YACpD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;YAED,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7C,CAAC;QAED,uBAAuB,CAAC,IAAwB;YAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YACtC,MAAM,QAAQ,GAAkB,IAAI,aAAa,EAAE,CAAC;YACpD,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,CAAC;YAC1C,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC,aAAa,SAAS,gBAAgB,CAAC,CAAC;YACtD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,iCAAiC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;YAC9F,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,QAAQ,CAAC,IAAI,CACX,IAAI,CAAA,sBAAsB,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,gBAAgB,CAC3F,CAAC;YACF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;gBACjD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;YACnC,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAErB,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAC7C,CAAC;QAED,aAAa,CAAC,MAAqB;YACjC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,YAAY,CAAC,KAAY;YACvB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAA;UACnC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC;QAC5C,CAAC,CAAC;QACN,CAAC;QAED,kBAAkB,CAAC,KAAY;YAC7B,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC1D,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,CAAC;QAED,gBAAgB,CAAC,SAAwB,EAAE,SAAiB;YAC1D,IAAI,OAAO,GAAkB,SAAS,CAAC;YACvC,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YAC7E,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,gBAAgB;QAChB,2DAA2D;QAC3D,sBAAsB,CAAC,KAAY;YACjC,IAAI,CAAC,KAAK,CAAC,cAAc;gBAAE,OAAO,EAAE,CAAC;YACrC,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,MAAM,IAAI,GAAW,KAAK,CAAC,cAAc,CAAC,IAAI;iBAC3C,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAY,CAAC;iBAC/B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;YACzF,KAAK,MAAM,SAAS,IAAI,IAAI,EAAE,CAAC;gBAC7B,CAAC,EAAE,CAAC;gBACJ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAA,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBAChE,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACpB,MAAM,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;gBACjC,CAAC;YACH,CAAC;YACD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;YACvD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,mBAAmB,CAAC,KAAY;YAC9B,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7F,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,cAAc,CAAC,KAAa;YAC1B,MAAM,YAAY,GAA0B;gBAC1C,IAAI,UAAU,CAAC;oBACb,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,QAAQ;oBACnB,WAAW,EAAE,KAAK;iBACnB,CAAC;gBACF,IAAI;aACL,CAAC;YACF,IAAI,OAAO,GAA2B,SAAS,CAAC;YAChD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,SAAqB,CAAC;gBAC1B,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClB,KAAK,SAAS;wBACZ,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;wBACrF,MAAM;oBACR,KAAK,gBAAgB,CAAC;oBACtB,KAAK,QAAQ;wBACX,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;wBACxF,MAAM;oBACR,KAAK,QAAQ;wBACX,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC;wBACvC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;4BAC3D,SAAS,GAAG,IAAI,UAAU,CAAC;gCACzB,IAAI,EAAE,QAAQ;gCACd,SAAS,EAAE,QAAQ;gCACnB,WAAW,EAAE,IAAI;6BAClB,CAAC,CAAC;wBACL,CAAC;6BAAM,CAAC;4BACN,SAAS,GAAG,IAAI,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;wBACtF,CAAC;wBACD,MAAM;oBACR,KAAK,OAAO;wBACV,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;wBAC3C,MAAM;oBACR,KAAK,QAAQ;wBACX,SAAS,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,CAAC;wBACpE,MAAM;oBACR;wBACE,OAAO,YAAY,CAAC;gBACxB,CAAC;gBAED,OAAO,GAAG,OAAO,IAAI,SAAS,CAAC;gBAC/B,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC;oBAAE,OAAO,YAAY,CAAC;YAC/E,CAAC;YAED,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACjE,CAAC;QAED,WAAW,CAAC,WAAiC;YAC3C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACxC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAClC,CAAC;YAED,MAAM,kBAAkB,GAAyB,EAAE,CAAC;YACpD,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;gBACjC,QAAQ,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAChC,KAAK,QAAQ;wBACX,CAAC;4BACC,QAAQ,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gCACzC,KAAK,gBAAgB,CAAC,UAAU;oCAC9B,aAAa;oCACb,MAAM;gCACR;oCACE,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oCAChC,MAAM;4BACV,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR;wBACE,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAChC,MAAM;gBACV,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;QAC/C,CAAC;QAED,sBAAsB,CAAC,IAAsC;YAC3D,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBACtC,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBACjC,IAAI,CAAC,cAAc,GAAG,GACpB,IAAI,CAAC,SAAS;wBACZ,CAAC,CAAC,sBAAsB,CACpB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EACzB,IAAI,CAAC,SAAS,EACd,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CACrC;wBACH,CAAC,CAAC,UACN,UAAU,CAAC;gBACb,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,cAAc,GAAG,kBAAkB,CAAC;gBAC3C,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;KACF;IAED,SAAS,oBAAoB,CAAC,OAAgB,EAAE,KAAW;QACzD,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QACzC,OAAO,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjG,CAAC;IACD,SAAS,gBAAgB,CAAC,OAAgB,EAAE,MAAiB,EAAE,OAA6B;QAC1F,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpD,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvC,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC3E,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACnC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACrC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC3C,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC/B,6EAA6E;gBAC7E,MAAM,KAAK,GAA0B,EAAE,CAAC;gBAExC,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;oBAC3C,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC/B,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;oBACzB,CAAC;gBACH,CAAC;gBACD,MAAM,KAAK,GAAc,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC;oBAC3D,IAAI,EAAE,SAAgB;oBACtB,gBAAgB,EAAE,EAAE;oBACpB,UAAU,EAAE,EAAE;oBACd,UAAU,EAAE,kBAAkB,CAAC,KAAK,CAAC;oBACrC,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,GAAG,MAAM,CAAC,IAAI,YAAY;oBAChC,SAAS,EAAE,MAAM;oBACjB,UAAU,EAAE,MAAM;oBAClB,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAC;gBACH,KAAK,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC;oBAC5B,EAAE,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,CAAC;gBACD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;YAED,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACzC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACzC,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,kBAAkB,CAChC,OAAO,CAAC,OAAO,EACf,iBAAiB,EACjB,OAAO,CACR,CAAC;IACF,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAC5D,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IACrC,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAEtC,MAAM,oBAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACtE,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;IAC5B,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,KAAK,EAAE,CAAC;QAC7E,MAAM,QAAQ,CAAC,QAAQ,EAAE;YACvB,QAAQ;YACR,YAAY;YACZ,OAAO,CAAC,UAAU,EAAE,CAAC,gBAAgB;YACrC,qBAAqB;YACrB,UAAU;SACX,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
@@ -24,7 +24,7 @@ export declare function isValueType(program: Program, type: Type): boolean;
24
24
  export declare function formatComment(text: string, lineLength?: number, lineEnd?: string): string;
25
25
  export declare function getCSharpIdentifier(name: string, context?: NameCasingType): string;
26
26
  export declare function ensureCSharpIdentifier(program: Program, target: Type, name: string, context?: NameCasingType): string;
27
- export declare function getModelAttributes(program: Program, entity: Type, csharpName?: string): Attribute[];
27
+ export declare function getModelAttributes(program: Program, entity: Type, cSharpName?: string): Attribute[];
28
28
  export declare function getModelInstantiationName(program: Program, model: Model, name: string): string;
29
29
  export declare class ModelInfo {
30
30
  visited: Model[];
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
package/dist/src/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- import { NoTarget, getFriendlyName, isNumericType, isTemplateInstance, } from "@typespec/compiler";
1
+ import { NoTarget, getFriendlyName, isNullType, isNumericType, isTemplateInstance, isUnknownType, isVoidType, } from "@typespec/compiler";
2
2
  import { StringBuilder } from "@typespec/compiler/emitter-framework";
3
3
  import { Visibility, createMetadataInfo, isBody, isBodyRoot, isMetadata, isStatusCode, } from "@typespec/http";
4
4
  import { camelCase, pascalCase } from "change-case";
@@ -149,31 +149,31 @@ export function getKnownType(program, type) {
149
149
  return undefined;
150
150
  }
151
151
  export function getCSharpTypeForIntrinsic(program, type) {
152
- switch (type.name) {
153
- case "unknown":
154
- return { type: UnknownType };
155
- case "void":
156
- return {
157
- type: new CSharpType({
158
- name: "void",
159
- namespace: "System",
160
- isBuiltIn: true,
161
- isValueType: false,
162
- }),
163
- };
164
- case "null":
165
- return {
166
- type: new CSharpType({
167
- name: "object",
168
- namespace: "System",
169
- isBuiltIn: true,
170
- isValueType: false,
171
- }),
172
- value: new NullValue(),
173
- };
174
- default:
175
- return undefined;
152
+ if (isUnknownType(type)) {
153
+ return { type: UnknownType };
176
154
  }
155
+ if (isVoidType(type)) {
156
+ return {
157
+ type: new CSharpType({
158
+ name: "void",
159
+ namespace: "System",
160
+ isBuiltIn: true,
161
+ isValueType: false,
162
+ }),
163
+ };
164
+ }
165
+ if (isNullType(type)) {
166
+ return {
167
+ type: new CSharpType({
168
+ name: "object",
169
+ namespace: "System",
170
+ isBuiltIn: true,
171
+ isValueType: false,
172
+ }),
173
+ value: new NullValue(),
174
+ };
175
+ }
176
+ return undefined;
177
177
  }
178
178
  const standardScalars = new Map([
179
179
  [
@@ -454,8 +454,8 @@ export function ensureCSharpIdentifier(program, target, name, context = NameCasi
454
454
  }
455
455
  return getCSharpIdentifier(name, context);
456
456
  }
457
- export function getModelAttributes(program, entity, csharpName) {
458
- return getAttributes(program, entity);
457
+ export function getModelAttributes(program, entity, cSharpName) {
458
+ return getAttributes(program, entity, cSharpName);
459
459
  }
460
460
  export function getModelInstantiationName(program, model, name) {
461
461
  const friendlyName = getFriendlyName(program, model);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typespec/http-server-csharp",
3
- "version": "0.58.0-alpha.6-dev.1",
3
+ "version": "0.58.0-alpha.6-dev.2",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec service code generator for c-sharp",
6
6
  "homepage": "https://typespec.io",