@typespec/protobuf 0.48.0-dev.0 → 0.48.0-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.
@@ -1,3 +1,3 @@
1
1
  {
2
- "nonCachedDurationMs": 9429.753599999938
2
+ "nonCachedDurationMs": 9210.675900000148
3
3
  }
@@ -7,17 +7,17 @@
7
7
  "packages/protobuf/CHANGELOG.json": "d9d15b50940ca9e0619443e8c2c9bb7420267285",
8
8
  "packages/protobuf/CHANGELOG.md": "83c9a9cd0ae0630537b081da2401051362875709",
9
9
  "packages/protobuf/LICENSE": "21071075c24599ee98254f702bcfc504cdc275a6",
10
- "packages/protobuf/README.md": "3c5287aedeb2860d1a52bbb8cb0de296f25c9844",
10
+ "packages/protobuf/README.md": "15d2af2b6b4a6a2c539e55bb0f766a5d18fb2aba",
11
11
  "packages/protobuf/lib/proto.tsp": "fa892bfbd7ebc7b62331c520d9639cbe93527446",
12
12
  "packages/protobuf/package.json": "c144eb51c67ef3c9e2809bdee03e13e73331fefe",
13
13
  "packages/protobuf/src/ast.ts": "c43456893db4c92d309a159d245ac57da1be0d1d",
14
14
  "packages/protobuf/src/index.ts": "0dd36fbcc216cc478f19af2bb5d04d970eb8bfc1",
15
- "packages/protobuf/src/lib.ts": "53f0ac77e39822248a6267691d7b4de01e29f6d4",
15
+ "packages/protobuf/src/lib.ts": "b0b5fbc742775b2ca61fea9f60f70d48ef784cca",
16
16
  "packages/protobuf/src/proto.ts": "249a89f1c1e04ba5df5cda86106fe4ff2203193e",
17
- "packages/protobuf/src/transform/index.ts": "25d9bbd7aab7d54ca65cd92b96dad6e61a152807",
17
+ "packages/protobuf/src/transform/index.ts": "a2ed73c79aa096c72d5c22c74fab16c3e253ad23",
18
18
  "packages/protobuf/src/write.ts": "5826d5d4048ccf39cb57c59566dd05de6c0fc657",
19
19
  "packages/protobuf/test/include/foo/bar.proto": "ac62127a60f6e94bb43ca42f93567cf0a87e0031",
20
- "packages/protobuf/test/scenarios.test.ts": "828e32d8fa03b74b78cb28a117d447ef0b1671cb",
20
+ "packages/protobuf/test/scenarios.test.ts": "f56522da274cc1114ce632f6da793b13ad0892c8",
21
21
  "packages/protobuf/test/scenarios/addressbook/input/addressbook.tsp": "d0fdd62b034460b6a5d7f9fd4036179f8bc15ad1",
22
22
  "packages/protobuf/test/scenarios/addressbook/input/main.tsp": "4153b8ec33c51477b669d0f416dc0d092d4059f4",
23
23
  "packages/protobuf/test/scenarios/addressbook/output/@typespec/protobuf/addressbook.proto": "2fdbab6edee88a268eb102ea5021cb45a856cf23",
@@ -35,6 +35,8 @@
35
35
  "packages/protobuf/test/scenarios/cross package references/output/@typespec/protobuf/B.proto": "bcaece25e2ff4440f1cc9151d6af43655d482f02",
36
36
  "packages/protobuf/test/scenarios/derived-scalar/input/main.tsp": "f02f998755fac51c602c27b43624c00b4d6c9af1",
37
37
  "packages/protobuf/test/scenarios/derived-scalar/output/@typespec/protobuf/com/azure/Test.proto": "32114a3b14a34fae397d6d03925afa14b5c456d5",
38
+ "packages/protobuf/test/scenarios/empty/input/main.tsp": "425dd640ea7079ead4b1c77b6e4e3032ba3dd52c",
39
+ "packages/protobuf/test/scenarios/empty/output/@typespec/protobuf/main.proto": "d0d99a42781ec53840a7ad91aab26c42f7215394",
38
40
  "packages/protobuf/test/scenarios/enum-nonintegral/diagnostics.txt": "327989959cde66511b02ec3f8e15d4a9cbe021e1",
39
41
  "packages/protobuf/test/scenarios/enum-nonintegral/input/main.tsp": "231edf79ea384e1c5ed932586e52a88234106257",
40
42
  "packages/protobuf/test/scenarios/enum-nozero/diagnostics.txt": "e4f6b67f2b384cfc84fd011bd7804f9a3451f058",
@@ -55,6 +57,12 @@
55
57
  "packages/protobuf/test/scenarios/model-no-package/input/main.tsp": "4cd41b90f770c35267aebb34522a366833c1e914",
56
58
  "packages/protobuf/test/scenarios/name-collision/input/main.tsp": "e8ae67325e708985137c20f05b5f494601053ac2",
57
59
  "packages/protobuf/test/scenarios/name-collision/output/@typespec/protobuf/main.proto": "bd7a640d097be42434625aeb41a68ca96582b275",
60
+ "packages/protobuf/test/scenarios/omit-off/input/main.tsp": "1f5bb3cac8c6a530cde658839ac33b8ce239f724",
61
+ "packages/protobuf/test/scenarios/omit-off/options.json": "0e3fe65298e6e771da1576da039034231547d1c0",
62
+ "packages/protobuf/test/scenarios/omit-off/output/@typespec/protobuf/main.proto": "46d107ab7627079239a4682b789c06932d3ae9fc",
63
+ "packages/protobuf/test/scenarios/omit/input/main.tsp": "1f5bb3cac8c6a530cde658839ac33b8ce239f724",
64
+ "packages/protobuf/test/scenarios/omit/options.json": "b74ad987daa717bf95bc27a67d341778d067c827",
65
+ "packages/protobuf/test/scenarios/omit/output/@typespec/protobuf/main.proto": "1bb6162ecc0d51271d19a3ab46c129c459545a0a",
58
66
  "packages/protobuf/test/scenarios/options-invalid/diagnostics.txt": "904a5d524dd7c06aa03e82c5b54303355758d824",
59
67
  "packages/protobuf/test/scenarios/options-invalid/input/main.tsp": "26f01df0b86e440632fe8a19f1c93c5ee67541ae",
60
68
  "packages/protobuf/test/scenarios/options/input/main.tsp": "427312d83245e2832daa9c73aa8a896203614b5b",
@@ -66,7 +74,7 @@
66
74
  "packages/protobuf/test/scenarios/simple-error/diagnostics.txt": "82fb428dd13d08f89d2c3945beaa97f8825a76e4",
67
75
  "packages/protobuf/test/scenarios/simple-error/input/main.tsp": "9f013ef3b9d7f32ff121ff3618586902368c9617",
68
76
  "packages/protobuf/test/scenarios/simple-no-service/input/main.tsp": "c70c2060d1309413558127805c08e066911ce478",
69
- "packages/protobuf/test/scenarios/simple-no-service/output/@typespec/protobuf/com/azure/Test.proto": "2aeda7b5782b6deb105172c9f84474181c3b359f",
77
+ "packages/protobuf/test/scenarios/simple-no-service/output/@typespec/protobuf/com/azure/Test.proto": "4606b3c9bae651346970f9aa942566c117d79c67",
70
78
  "packages/protobuf/test/scenarios/simple/input/main.tsp": "d8c0c0053674b7734319d699a4cac949524a8bd3",
71
79
  "packages/protobuf/test/scenarios/simple/output/@typespec/protobuf/com/azure/Test.proto": "32114a3b14a34fae397d6d03925afa14b5c456d5",
72
80
  "packages/protobuf/test/scenarios/streams/input/main.tsp": "4ce0b3191d631feb6236472a1a73564623287fe0",
package/README.md CHANGED
@@ -31,6 +31,14 @@ emit:
31
31
 
32
32
  **Type:** `boolean`
33
33
 
34
+ If set to `true`, this emitter will not write any files. It will still validate the TypeSpec sources to ensure they are compatible with Protobuf, but the files will simply not be written to the output directory.
35
+
36
+ #### `omit-unreachable-types`
37
+
38
+ **Type:** `boolean`
39
+
40
+ By default, the emitter will create `message` declarations for any models in a namespace decorated with `@package` that have an `@field` decorator on every property. If this option is set to true, this behavior will be disabled, and only messages that are explicitly decorated with `@message` or that are reachable from a service operation will be emitted.
41
+
34
42
  ## Decorators
35
43
 
36
44
  ### TypeSpec.Protobuf
package/dist/src/lib.d.ts CHANGED
@@ -6,6 +6,14 @@ export interface ProtobufEmitterOptions {
6
6
  * Don't emit anything.
7
7
  */
8
8
  noEmit?: boolean;
9
+ /**
10
+ * Omit unreachable types.
11
+ *
12
+ * By default, types under a package namespace will be emitted if they are fully annotated with `@field` decorators.
13
+ * With this flag on, only types that are explicitly marked with `@message` or that are referenced by an operation
14
+ * in an interface decoarated with `@service` will be emitted.
15
+ */
16
+ "omit-unreachable-types"?: boolean;
9
17
  }
10
18
  export declare const TypeSpecProtobufLibrary: import("@typespec/compiler").TypeSpecLibrary<{
11
19
  "field-index": {
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAaD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAiHlC,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA4B,CAAC;AAE5D,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAC;AAarE,eAAO,MAAM,KAAK;;;;;;;;;CAIjB,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;;;OAMG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAwBD,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BAiHlC,CAAC;AAEH,eAAO,MAAQ,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAA4B,CAAC;AAE5D,MAAM,MAAM,uBAAuB,GAAG,OAAO,uBAAuB,CAAC;AAarE,eAAO,MAAM,KAAK;;;;;;;;;CAIjB,CAAC"}
package/dist/src/lib.js CHANGED
@@ -5,7 +5,16 @@ const EmitterOptionsSchema = {
5
5
  type: "object",
6
6
  additionalProperties: false,
7
7
  properties: {
8
- noEmit: { type: "boolean", nullable: true },
8
+ noEmit: {
9
+ type: "boolean",
10
+ nullable: true,
11
+ description: "If set to `true`, this emitter will not write any files. It will still validate the TypeSpec sources to ensure they are compatible with Protobuf, but the files will simply not be written to the output directory.",
12
+ },
13
+ "omit-unreachable-types": {
14
+ type: "boolean",
15
+ nullable: true,
16
+ description: "By default, the emitter will create `message` declarations for any models in a namespace decorated with `@package` that have an `@field` decorator on every property. If this option is set to true, this behavior will be disabled, and only messages that are explicitly decorated with `@message` or that are reachable from a service operation will be emitted.",
17
+ },
9
18
  },
10
19
  required: [],
11
20
  };
@@ -1 +1 @@
1
- {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/lib.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ export function createProtobufEmitter(program) {
15
15
  return async function doEmit(outDir, options) {
16
16
  var _a, _b;
17
17
  // Convert the program to a set of proto files.
18
- const files = tspToProto(program);
18
+ const files = tspToProto(program, options);
19
19
  if (!program.compilerOptions.noEmit && !(options === null || options === void 0 ? void 0 : options.noEmit) && !program.hasError()) {
20
20
  for (const file of files) {
21
21
  // If the file has a package, emit it to a path that is shaped like the package name. Otherwise emit to
@@ -34,9 +34,10 @@ export function createProtobufEmitter(program) {
34
34
  *
35
35
  * This is the meat of the emitter.
36
36
  */
37
- function tspToProto(program) {
37
+ function tspToProto(program, emitterOptions) {
38
38
  const packages = new Set(program.stateMap(state.package).keys());
39
39
  const serviceInterfaces = [...program.stateSet(state.service)];
40
+ const declaredMessages = [...program.stateSet(state.message)];
40
41
  const declarationMap = new Map([...packages].map((p) => [p, []]));
41
42
  const visitedTypes = new Set();
42
43
  /**
@@ -130,10 +131,19 @@ function tspToProto(program) {
130
131
  * @returns an array of declarations
131
132
  */
132
133
  function addDeclarationsOfPackage(namespace) {
133
- const models = [...namespace.models.values()];
134
- // Eagerly visit all models in the namespace.
135
- for (const model of models) {
136
- // Don't eagerly visit externs
134
+ const eagerModels = new Set([
135
+ ...declaredMessages.filter((m) => isDeclaredInNamespace(m, namespace)),
136
+ ]);
137
+ if (!emitterOptions["omit-unreachable-types"]) {
138
+ // Add all models in the namespace that have `@field` on every property.
139
+ for (const model of namespace.models.values()) {
140
+ if ([...model.properties.values()].every((p) => program.stateMap(state.fieldIndex).has(p)) ||
141
+ program.stateSet(state.message).has(model)) {
142
+ eagerModels.add(model);
143
+ }
144
+ }
145
+ }
146
+ for (const model of eagerModels) {
137
147
  if (
138
148
  // Don't eagerly visit externs
139
149
  !program.stateMap(state.externRef).has(model) &&
@@ -164,11 +174,15 @@ function tspToProto(program) {
164
174
  function toMethodFromOperation(operation) {
165
175
  var _a;
166
176
  const streamingMode = (_a = program.stateMap(state.stream).get(operation)) !== null && _a !== void 0 ? _a : 0 /* StreamingMode.None */;
177
+ const isEmptyParams = operation.parameters.name === "" && operation.parameters.properties.size === 0;
178
+ const input = isEmptyParams
179
+ ? getCachedExternType(program, operation, "TypeSpec.Protobuf.WellKnown.Empty")
180
+ : addImportSourceForProtoIfNeeded(program, addInputParams(operation.parameters, operation), operation, operation.parameters);
167
181
  return {
168
182
  kind: "method",
169
183
  stream: streamingMode,
170
184
  name: capitalize(operation.name),
171
- input: addImportSourceForProtoIfNeeded(program, addInputParams(operation.parameters, operation), operation, operation.parameters),
185
+ input,
172
186
  returns: addImportSourceForProtoIfNeeded(program, addReturnType(operation.returnType, operation), operation, operation.returnType),
173
187
  };
174
188
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transform/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transform/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAGL,gBAAgB,EAChB,qBAAqB,EACrB,WAAW,EAGX,qBAAqB,EAMrB,WAAW,EAGX,UAAU,GAGX,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,GAAG,EACH,SAAS,EAYT,GAAG,EACH,MAAM,EAGN,WAAW,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAA0B,gBAAgB,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,KAAK,EAAe,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,sCAAsC;AACtC,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAmC,CAAC;AACxE,MAAM,eAAe,GAAG,IAAI,OAAO,EAA4C,CAAC;AAEhF;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAgB;IAEhB,OAAO,KAAK,UAAU,MAAM,CAAC,MAAM,EAAE,OAAO;;QAC1C,+CAA+C;QAC/C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,CAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE;YAC9E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,uGAAuG;gBACvG,aAAa;gBAEb,yCAAyC;gBAEzC,MAAM,WAAW,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,KAAK,CAAC,GAAG,CAAC,mCAAI,CAAC,MAAM,CAAC,CAAC;gBACzD,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAElE,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACpC,MAAM,OAAO,CAAC,IAAI,CAAC,SAAS,CAC1B,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,EACrE,cAAc,CAAC,IAAI,CAAC,CACrB,CAAC;aACH;SACF;IACH,CAAC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,OAAgB,EAAE,cAAsC;IAC1E,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAyB,CAC9D,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,GAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAoB,CAAC,CAAC;IAEnF,MAAM,gBAAgB,GAAG,CAAC,GAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAgB,CAAC,CAAC;IAE9E,MAAM,cAAc,GAAG,IAAI,GAAG,CAC5B,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAClC,CAAC;IAEF,MAAM,YAAY,GAAG,IAAI,GAAG,EAAQ,CAAC;IAErC;;;OAGG;IACH,SAAS,UAAU,CAAC,KAAY,EAAE,MAAY;QAC5C,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,YAAY,IAAI,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEtE,IAAI,CAAC,YAAY,EAAE;YACjB,gBAAgB,CAAC,OAAO,EAAE;gBACxB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,sBAAsB;gBAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;aAC7B,CAAC,CAAC;SACJ;QAED,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YAC5B,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACxB,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;SACtC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,SAAS,CAAC,CAAO;QACxB,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,YAAY,GAAG,YAAY,IAAI,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACtE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACxB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAEpB,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAExC,oFAAoF;YACpF,IACE,OAAO,CAAC,IAAI,CACV,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CACnF,EACD;gBACA,gBAAgB,CAAC,OAAO,EAAE;oBACxB,MAAM,EAAE,CAAC;oBACT,IAAI,EAAE,oBAAoB;iBAC3B,CAAC,CAAC;aACJ;YAED,4DAA4D;YAC5D,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,EAAE;gBAC1B,gBAAgB,CAAC,OAAO,EAAE;oBACxB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;oBAClB,IAAI,EAAE,oBAAoB;oBAC1B,SAAS,EAAE,eAAe;iBAC3B,CAAC,CAAC;aACJ;YAED,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/B;IACH,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,GAAG,EAAU,CAAC,CAAC,CAAC,CAAC;IAE9E,SAAS,eAAe,CAAC,OAAgB,EAAE,CAAoB,EAAE,IAAY;;QAC3E,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAE/C,IAAI,SAAS,EAAE;YACb,MAAA,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,0CAAE,GAAG,CAAC,IAAI,CAAC,CAAC;SACrC;IACH,CAAC;IAED,MAAM,0BAA0B,GAAG,IAAI,OAAO,EAG3C,CAAC;IAEJ,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEhE,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE;QAChC,wBAAwB,CAAC,SAAS,CAAC,CAAC;KACrC;IAED,2BAA2B;IAC3B,MAAM,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;;QAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAsB,CAAC;QACpF,MAAM,iBAAiB,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,0CAAE,IAAyB,CAAC;QAExF,MAAM,cAAc,GAAG,CAAC,GAAG,CAAC,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,UAAU,CAAC,OAAO,EAAE,mCAAI,EAAE,CAAC,CAAC;aACxE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;YACrB,gEAAgE;YAChE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC/E,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAsB,CAAC;aAC7C;;gBAAM,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAwB,CAAC;QAE7C,OAAO;YACL,OAAO,EAAE,MACP,MAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAA+B,0CAAE,IAGjE,0CAAE,KAAK;YAER,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC;YAE3C,OAAO,EAAE,CAAC,GAAG,CAAC,MAAA,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,mCAAI,EAAE,CAAC,CAAC;YAE9C,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;YAC3C,MAAM,EAAE,SAAS;SACL,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,2BAA2B,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO,KAAK,CAAC;IAEb;;;;;OAKG;IACH,SAAS,wBAAwB,CAAC,SAAoB;QACpD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;YAC1B,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,qBAAqB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;SACvE,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,EAAE;YAC7C,wEAAwE;YACxE,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;gBAC7C,IACE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACtF,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAC1C;oBACA,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;iBACxB;aACF;SACF;QAED,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE;YAC/B;YACE,8BAA8B;YAC9B,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;gBAC7C,4EAA4E;gBAC5E,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACrF,8DAA8D;oBAC9D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAC7C;gBACA,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;aAC1B;SACF;QAED,MAAM,qBAAqB,GAAG,IAAI,GAAG,CACnC,iBAAiB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAC7E,CAAC;QAEF,6DAA6D;QAC7D,MAAM,YAAY,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;QACpD,KAAK,MAAM,KAAK,IAAI,qBAAqB,EAAE;YACzC,YAAY,CAAC,IAAI,CAAC;gBAChB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,0EAA0E;gBAC1E,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC;aACtE,CAAC,CAAC;SACJ;IACH,CAAC;IAED,yBAAyB;IAEzB;;;OAGG;IACH,SAAS,qBAAqB,CAAC,SAAoB;;QACjD,MAAM,aAAa,GAAG,MAAA,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,6DAAsB,CAAC;QAE1F,MAAM,aAAa,GACjB,SAAS,CAAC,UAAU,CAAC,IAAI,KAAK,EAAE,IAAI,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,CAAC;QAEjF,MAAM,KAAK,GAAG,aAAa;YACzB,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,SAAS,EAAE,mCAAmC,CAAC;YAC9E,CAAC,CAAC,+BAA+B,CAC7B,OAAO,EACP,cAAc,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,EAC/C,SAAS,EACT,SAAS,CAAC,UAAU,CACrB,CAAC;QAEN,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,aAAa;YACrB,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC;YAChC,KAAK;YACL,OAAO,EAAE,+BAA+B,CACtC,OAAO,EACP,aAAa,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,CAAC,EAC9C,SAAS,EACT,SAAS,CAAC,UAAkC,CAC7C;SACF,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,SAAS,cAAc,CAAC,WAAkB,EAAE,SAAoB;QAC9D,MAAM,cAAc,GAAG,qBAAqB,CAC1C,WAAW,EACX,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CACvC,CAAC;QAEF,qBAAqB;QAErB,oGAAoG;QACpG,IAAI,CAAC,cAAc,EAAE;YACnB,gBAAgB,CAAC,OAAO,EAAE;gBACxB,IAAI,EAAE,wBAAwB;gBAC9B,SAAS,EAAE,eAAe;gBAC1B,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC,wBAAwB,CAAC,CAAC;SAC9C;QACD,oBAAoB;QAEpB,OAAO,WAAW,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,SAAS,WAAW,CAAC,KAAY,EAAE,cAAiC;QAClE,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,KAAK,CAAiC,CAAC;QAC5F,IAAI,MAAM,EAAE;YACV,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SACvB;QAED,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,SAAS,mBAAmB,CAC1B,OAAgB,EAChB,cAAiC,EACjC,IAAY;QAEZ,IAAI,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEzC,IAAI,CAAC,KAAK,EAAE;YACV,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;YAClB,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SACrC;QAED,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAElC,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;YAChC,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACjD,OAAO,GAAG,CAAC;SACZ;QAED,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAEpE,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,IAAI,KAAK,CACb,qCAAqC,WAAW,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACpF,CAAC;SACH;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,SAAS,CAAiC,CAAC;QAEhG,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,2CAA2C,CAAC,CAAC;SAClF;QAED,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC;QACnC,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;QAE9B,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAElC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACH,SAAS,aAAa,CAAC,CAAO,EAAE,SAAoB;QAClD,QAAQ,CAAC,CAAC,IAAI,EAAE;YACd,KAAK,OAAO;gBACV,OAAO,cAAc,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YACtC,KAAK,WAAW;gBACd,OAAO,gBAAgB,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YACxC,4CAA4C;YAC5C;gBACE,gBAAgB,CAAC,OAAO,EAAE;oBACxB,IAAI,EAAE,yBAAyB;oBAC/B,MAAM,EAAE,8BAA8B,CAAC,SAAS,CAAC;iBAClD,CAAC,CAAC;gBAEH,OAAO,WAAW,CAAC,yBAAyB,CAAC,CAAC;SACjD;IACH,CAAC;IAED;;;;;;OAMG;IACH,SAAS,gBAAgB,CAAC,CAAgB,EAAE,cAAiC;QAC3E,QAAQ,CAAC,CAAC,IAAI,EAAE;YACd,KAAK,SAAS;gBACZ,OAAO,mBAAmB,CAAC,OAAO,EAAE,cAAc,EAAE,iCAAiC,CAAC,CAAC;YACzF,KAAK,MAAM,CAAC,CAAC;gBACX,OAAO,mBAAmB,CAAC,OAAO,EAAE,cAAc,EAAE,mCAAmC,CAAC,CAAC;aAC1F;SACF;QAED,gBAAgB,CAAC,OAAO,EAAE;YACxB,IAAI,EAAE,uBAAuB;YAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;YACxB,MAAM,EAAE,CAAC;SACV,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC,4BAA4B,CAAC,CAAC;IACnD,CAAC;IAED;;;;;OAKG;IACH,SAAS,cAAc,CAAC,CAAQ,EAAE,SAAoB;QACpD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAiC,CAAC;QACxF,IAAI,MAAM,EAAE;YACV,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/C,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SACvB;QAED,MAAM,cAAc,GAAG,qBAAqB,CAAC,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;QACzF,IAAI,cAAc,EAAE;YAClB,OAAO,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SACjC;QAED,gBAAgB,CAAC,OAAO,EAAE;YACxB,IAAI,EAAE,yBAAyB;YAC/B,MAAM,EAAE,8BAA8B,CAAC,SAAS,CAAC;SAClD,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC,yBAAyB,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,SAAS,OAAO,CAAC,CAAO,EAAE,cAAiC;QACzD,wCAAwC;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAiC,CAAC;QACxF,IAAI,MAAM,EAAE;YACV,eAAe,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACpD,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SACvB;QAED,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;YACrB,MAAM,OAAO,GAAG,UAAU,CAAC,CAAU,EAAE,cAAc,CAAC,CAAC;YACvD,0BAA0B,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,cAAc,EAAE,CAAyB,CAAC,CAAC,CAAC;YACrF,OAAO,OAAO,CAAC;SAChB;QAED,oHAAoH;QACpH,mEAAmE;QACnE,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACd,OAAO,YAAY,CAAC,CAAU,EAAE,cAAc,CAAC,CAAC;SACjD;QAED,QAAQ,CAAC,CAAC,IAAI,EAAE;YACd,KAAK,OAAO;gBACV,iGAAiG;gBACjG,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,IAAI,cAAc,CAAC,IAAI,KAAK,OAAO,EAAE;oBACpD,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,iBAAiB;wBACvB,MAAM,EAAE,CAAC;qBACV,CAAC,CAAC;oBACH,OAAO,WAAW,CAAC,iBAAiB,CAAC,CAAC;iBACvC;gBACD,UAAU,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;gBAC9B,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrB,KAAK,MAAM;gBACT,SAAS,CAAC,CAAC,CAAC,CAAC;gBACb,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACrB,KAAK,QAAQ;gBACX,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC;YAC1B,KAAK,WAAW;gBACd,OAAO,gBAAgB,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAC7C;gBACE,gBAAgB,CAAC,OAAO,EAAE;oBACxB,IAAI,EAAE,wBAAwB;oBAC9B,SAAS,EAAE,eAAe;oBAC1B,MAAM,EAAE;wBACN,IAAI,EAAE,CAAC,CAAC,IAAI;qBACb;oBACD,MAAM,EAAE,CAAC;iBACV,CAAC,CAAC;gBACH,OAAO,WAAW,CAAC,wBAAwB,CAAC,CAAC;SAChD;IACH,CAAC;IAED,SAAS,UAAU,CAAC,CAAQ,EAAE,cAAiC;QAC7D,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,cAAe,CAAC,IAAI,CAAC;QAEpD,uCAAuC;QACvC,IAAI,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;YAC7B,gBAAgB,CAAC,OAAO,EAAE;gBACxB,IAAI,EAAE,wBAAwB;gBAC9B,SAAS,EAAE,eAAe;gBAC1B,MAAM,EAAE,SAAS;aAClB,CAAC,CAAC;YACH,OAAO,WAAW,CAAC,eAAe,CAAC,CAAC;SACrC;QAED,gCAAgC;QAChC,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS;YAAE,OAAO,WAAW,CAAC,mCAAmC,CAAC,CAAC;QAEpF,6FAA6F;QAC7F,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,EAAE,cAAc,CAA2B,CAAC;QAEhF,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAkC,EAAE,UAAU,CAAC,CAAC;IACvE,CAAC;IAED,SAAS,YAAY,CAAC,CAAQ,EAAE,cAAiC;QAC/D,MAAM,SAAS,GAAI,CAAW,CAAC,cAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEvD,mCAAmC;QACnC,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;YACtB,gBAAgB,CAAC,OAAO,EAAE;gBACxB,IAAI,EAAE,cAAc;gBACpB,MAAM,EAAE,SAAS;aAClB,CAAC,CAAC;YACH,OAAO,GAAG,CAAC,eAAe,CAAC,CAAC;SAC7B;QAED,OAAO,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IAC5C,CAAC;IAED,SAAS,kBAAkB,CAAC,OAAgB;QAC1C,sHAAsH;QACtH,iHAAiH;QACjH,8CAA8C;QAC9C,IAAI,SAAS,CAAC;QACd,IAAI,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACjC,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAE,CAAC;SAC5C;aAAM;YACL,MAAM,OAAO,GAAG;gBACd,CAAC,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjE,CAAC,OAAO,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClE,CAAC,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACnE,CAAC,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjE,CAAC,OAAO,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjE,CAAC,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACnE,CAAC,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACnE,CAAC,OAAO,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACnE,CAAC,OAAO,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACpE,CAAC,OAAO,CAAC,oBAAoB,CAAC,4BAA4B,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;gBAChF,CAAC,OAAO,CAAC,oBAAoB,CAAC,4BAA4B,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;gBAChF,CAAC,OAAO,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5E,CAAC,OAAO,CAAC,oBAAoB,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC5E,CAAC,OAAO,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC9E,CAAC,OAAO,CAAC,oBAAoB,CAAC,2BAA2B,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;aACtE,CAAC;YAEX,KAAK,MAAM,CAAC,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,IAAI,OAAO,EAAE;gBAC3C,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACtE,MAAM,IAAI,KAAK,CACb,uGAAuG,gBAAgB,EAAE,CAC1H,CAAC;iBACH;aACF;YAED,SAAS,GAAG,IAAI,GAAG,CAAoB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YAE3F,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;SAC1C;QACD,mDAAmD;QAEnD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,SAAS,aAAa,CAAC,CAAS;QAC9B,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAEhC,MAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAErD,IAAI,CAAC,SAAS,EAAE;YACd,IAAI,CAAC,CAAC,UAAU,EAAE;gBAChB,OAAO,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;aACpC;iBAAM;gBACL,gBAAgB,CAAC,OAAO,EAAE;oBACxB,IAAI,EAAE,wBAAwB;oBAC9B,SAAS,EAAE,gBAAgB;oBAC3B,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;qBACf;oBACD,MAAM,EAAE,CAAC;iBACV,CAAC,CAAC;gBACH,OAAO,WAAW,CAAC,gBAAgB,CAAC,CAAC;aACtC;SACF;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,SAAS,qBAAqB,CAAC,KAAY,EAAE,kBAA0B;QACrE,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAE1E,IAAI,cAAc,GAAG,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAE3D,IAAI,cAAc,CAAC,IAAI,KAAK,EAAE,EAAE;YAC9B,kDAAkD;YAClD,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC;gBACnD,GAAG,KAAK;gBACR,IAAI,EAAE,kBAAkB;aACzB,CAAC,CAAC;SACJ;QAED,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;YAC1D,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;SACnC;QAED,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAE/C,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,aAAa;IAEb,SAAS,2BAA2B,CAAC,KAAkB;;QACrD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAsB,CAAC;QAEjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;gBAChC,gBAAgB,CAAC,OAAO,EAAE;oBACxB,IAAI,EAAE,qBAAqB;oBAC3B,MAAM,EAAE;wBACN,IAAI,EAAE,MAAA,IAAI,IAAI,CAAC,OAAO,GAAG,mCAAI,SAAS;qBACvC;oBACD,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CAAC;aACJ;YAED,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC9B;IACH,CAAC;IAED;;;OAGG;IACH,SAAS,SAAS,CAAC,KAAY;QAC7B,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;YACxD,YAAY,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,wBAAwB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;SAC5F,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,SAAS,wBAAwB,CAC/B,QAAuB,EACvB,KAAY;;QAEZ,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;YAClC,mFAAmF;YACnF,0DAA0D;YAC1D,gBAAgB,CAAC,OAAO,EAAE;gBACxB,IAAI,EAAE,wBAAwB;gBAC9B,SAAS,EAAE,OAAO;gBAClB,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;YACH,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;SAC7B;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAuB,CAAC;QAC1F,MAAM,cAAc,GAAG,MAAA,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,0CAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;QAE7F,IAAI,UAAU,KAAK,SAAS,EAAE;YAC5B,gBAAgB,CAAC,OAAO,EAAE;gBACxB,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAE,SAAS;gBACpB,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ,CAAC,IAAI;iBACpB;gBACD,MAAM,EAAE,QAAQ;aACjB,CAAC,CAAC;SACJ;QAED,IAAI,UAAU,IAAI,CAAC,cAAc;YAC/B,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAEjE,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,KAAK,CAA8B,CAAC;QAE7F,IAAI,YAAY,EAAE;YAChB,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;gBACtC,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,QAAQ,CAAC,IAAI,EAAE;oBACpE,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,eAAe;wBAC1B,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ,CAAC,IAAI;yBACpB;wBACD,MAAM,EAAE,2BAA2B,CAAC,QAAQ,CAAC;qBAC9C,CAAC,CAAC;iBACJ;qBAAM,IACL,UAAU,KAAK,SAAS;oBACxB,OAAO,WAAW,KAAK,QAAQ;oBAC/B,WAAW,KAAK,UAAU,EAC1B;oBACA,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,aAAa;wBACnB,SAAS,EAAE,eAAe;wBAC1B,MAAM,EAAE;4BACN,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE;yBAC7B;wBACD,0GAA0G;wBAC1G,2CAA2C;wBAC3C,MAAM,EAAE,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,KAAK;qBAChC,CAAC,CAAC;iBACJ;qBAAM,IACL,UAAU,KAAK,SAAS;oBACxB,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC;oBAC1B,UAAU,IAAI,WAAW,CAAC,CAAC,CAAC;oBAC5B,UAAU,IAAI,WAAW,CAAC,CAAC,CAAC,EAC5B;oBACA,gBAAgB,CAAC,OAAO,EAAE;wBACxB,IAAI,EAAE,aAAa;wBACnB,SAAS,EAAE,qBAAqB;wBAChC,MAAM,EAAE;4BACN,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE;yBAC7B;wBACD,MAAM,EAAE,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,KAAK;qBAChC,CAAC,CAAC;iBACJ;aACF;SACF;QAED,MAAM,KAAK,GAA0B;YACnC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,IAAI,EAAE,+BAA+B,CACnC,OAAO,EACP,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAC7B,KAAK,EACL,QAAQ,CAAC,IAA4B,CACtC;YACD,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC;SACxD,CAAC;QAEF,6CAA6C;QAC7C,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;QAElD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,SAAS,MAAM,CAAC,CAAO;QACrB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;QAEhG,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,UAAU,EAAE,UAAU;YACtB,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,KAAe,CAAC,CAAC;SACpF,CAAC;IACJ,CAAC;IAWD,SAAS,gBAAgB,CAAC,OAAgB,EAAE,CAAuB;QACjE,qBAAqB;;QAErB,sHAAsH;QAEtH,QAAQ,CAAC,CAAC,IAAI,EAAE;YACd,KAAK,WAAW;gBACd,yCAAyC;gBACzC,OAAO,IAAI,CAAC;YACd,KAAK,MAAM,CAAC;YACZ,KAAK,OAAO,CAAC;YACb,KAAK,OAAO,CAAC;YACb,KAAK,WAAW;gBACd,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE;oBAChB,OAAO,IAAI,CAAC;iBACb;qBAAM;oBACL,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;iBAC/C;YACH,KAAK,WAAW,CAAC,CAAC;gBAChB,MAAM,aAAa,GAAG,MAAA,CAAC,CAAC,SAAS,mCAAI,CAAC,CAAC,SAAS,CAAC;gBACjD,IAAI,CAAC,aAAa,EAAE;oBAClB,OAAO,IAAI,CAAC;iBACb;qBAAM;oBACL,OAAO,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;iBACjD;aACF;YACD,KAAK,WAAW;gBACd,IAAI,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,OAAO,CAAC,CAAC;gBAE9B,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE;oBAChB,OAAO,IAAI,CAAC;iBACb;qBAAM;oBACL,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;iBAC/C;SACJ;QACD,oBAAoB;IACtB,CAAC;IAED,SAAS,+BAA+B,CACtC,OAAgB,EAChB,EAAK,EACL,SAA4B,EAC5B,UAAgC;QAEhC;YACE,8BAA8B;YAC9B,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW,EAAE;gBACnC,gEAAgE;gBAChE,OAAO,EAAE,CAAC;aACX;SACF;QAED;YACE,2BAA2B;YAC3B,IAAI,cAAiC,CAAC;YACtC,IACE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC;gBACjD,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;oBAC1B,CAAC,cAAc,GAAG,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;oBACtD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EACxD;gBACA,OAAO,EAAE,CAAC;aACX;SACF;QAED,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YACvB,OAAO,+BAA+B,CACpC,OAAO,EACP,EAAE,EACF,SAAS,EACR,UAAoB,CAAC,cAAe,CAAC,IAAI,CAAC,CAAC,CAAyB,CACtE,CAAC;SACH;QACD,IAAI;YACF,iHAAiH;YACjH,iEAAiE;YACjE,OAAO,SAAS,CAAC,EAAE,EAAE;gBACnB,GAAG,CAAC,CAAC,EAAE,CAAC;oBACN,MAAM,OAAO,GAAG,0BAA0B,CAAC,GAAG,CAAC,EAAc,CAAC,CAAC;oBAC/D,OAAO,OAAO,KAAK,SAAS;wBAC1B,CAAC,CAAE,GAAG,CACF,CAAC,EACD,+BAA+B,CAAC,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAEnD;wBACf,gDAAgD;yBAC3C;wBACT,CAAC,CAAC,EAAE,CAAC;gBACT,CAAC;gBACD,MAAM;oBACJ,OAAO,EAAE,CAAC;gBACZ,CAAC;gBACD,GAAG,CAAC,CAAC;;oBACH,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,GAAG;wBAC5C,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC;wBACpC,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC;qBACtC,CAAC;oBAEF,IACE,gBAAgB,KAAK,IAAI;wBACzB,iBAAiB,KAAK,IAAI;wBAC1B,gBAAgB,KAAK,iBAAiB;wBAEtC,OAAO,EAAE,CAAC;oBAEZ,MAAM,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAElE,CAAC;oBAEd,MAAM,qBAAqB,GAAG,MAC5B,MAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,0CAAE,IAC5C,0CAAE,KAAK,CAAC;oBAET,MAAM,uBAAuB,GAC3B,qBAAqB,KAAK,SAAS,IAAI,qBAAqB,KAAK,EAAE;wBACjE,CAAC,CAAC,EAAE;wBACJ,CAAC,CAAC,qBAAqB,GAAG,GAAG,CAAC;oBAElC,MAAM,kBAAkB,GACtB,CAAC,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,KAAK,CAAC,GAAG,CAAC,mCAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;oBAEvE,MAAA,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,0CAAE,GAAG,CAAC,kBAAkB,CAAC,CAAC;oBAEzD,OAAO,GAAG,CAAC,uBAAuB,GAAG,CAAC,CAAM,CAAC;gBAC/C,CAAC;aACF,CAAC,CAAC;SACJ;QAAC,MAAM;YACN,OAAO,EAAE,CAAC;SACX;IACH,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAC,CAAO;;IACtB,OAAO,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAA,MAAA,CAAC,CAAC,SAAS,0CAAE,IAAI,MAAK,UAAU,CAAC;AACtF,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CAAmB,CAAI;IACxC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAkB,CAAC;AACrE,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,8BAA8B,CAAC,EAAa;IACnD,MAAM,SAAS,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;IACpC,QAAQ,SAAS,CAAC,IAAI,EAAE;QACtB,KAAK,UAAU,CAAC,6BAA6B;YAC3C,OAAO,SAAS,CAAC,UAAU,CAAC;QAC9B,KAAK,UAAU,CAAC,2BAA2B;YACzC,OAAO,EAAE,CAAC;QACZ;YACE,MAAM,SAAS,GAAU,SAAS,CAAC;YACnC,MAAM,IAAI,KAAK,CACb,oEAAoE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAC7F,CAAC;KACL;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,2BAA2B,CAAC,QAAuB;IAC1D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAE3B,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,UAAU,CAAC,aAAa;YAC3B,OAAO,IAAI,CAAC,EAAE,CAAC;QACjB,KAAK,UAAU,CAAC,mBAAmB;YACjC,OAAO,IAAI,CAAC;QACd,KAAK,UAAU,CAAC,uBAAuB,CAAC;QACxC,KAAK,UAAU,CAAC,6BAA6B;YAC3C,OAAO,QAAQ,CAAC;QAClB;YACE,MAAM,SAAS,GAAU,IAAI,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,oEAAoE,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,CACzF,CAAC;KACL;AACH,CAAC"}
@@ -33,7 +33,12 @@ describe("protobuf scenarios", function () {
33
33
  shouldRun &&
34
34
  it(scenarioName, async function () {
35
35
  const inputFiles = await readdirRecursive(path.join(scenario, "input"));
36
- const emitResult = await doEmit(inputFiles);
36
+ const options = await readFile(path.join(scenario, "options.json"), "utf-8")
37
+ .then((s) => JSON.parse(s))
38
+ .catch((e) => {
39
+ return {};
40
+ });
41
+ const emitResult = await doEmit(inputFiles, options);
37
42
  const expectationDirectory = path.resolve(scenario, "output");
38
43
  const diagnosticsExpectationPath = path.resolve(scenario, "diagnostics.txt");
39
44
  if (shouldRecord) {
@@ -100,7 +105,7 @@ function removeCoreDiagnostics(diagnostics) {
100
105
  return d;
101
106
  });
102
107
  }
103
- async function doEmit(files) {
108
+ async function doEmit(files, options) {
104
109
  const baseOutputPath = resolveVirtualPath("test-output/");
105
110
  const host = await createTestHost({
106
111
  libraries: [TypeSpecProtobufTestLibrary],
@@ -112,7 +117,7 @@ async function doEmit(files) {
112
117
  outputDir: baseOutputPath,
113
118
  noEmit: false,
114
119
  emitters: {
115
- "@typespec/protobuf": {},
120
+ "@typespec/protobuf": options,
116
121
  },
117
122
  });
118
123
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"scenarios.test.js","sourceRoot":"","sources":["../../test/scenarios.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scenarios.test.js","sourceRoot":"","sources":["../../test/scenarios.test.ts"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,cAAc,EACd,kBAAkB,GAEnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG5E,MAAM,mBAAmB,GAAG,GAAG,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,sBAAsB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAEpG,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC;AACnD,MAAM,aAAa,GAAG,MAAA,MAAA,OAAO,CAAC,GAAG,CAAC,aAAa,0CAAE,KAAK,CAAC,GAAG,CAAC,mCAAI,CAAC,GAAG,CAAC,CAAC;AAErE,MAAM,2BAA2B,GAAwB;IACvD,IAAI,EAAE,oBAAoB;IAC1B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC;IAC1E,KAAK,EAAE;QACL,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,mCAAmC,EAAE;QAC1F;YACE,OAAO,EAAE,UAAU;YACnB,OAAO,EAAE,MAAM;YACf,WAAW,EAAE,4CAA4C;SAC1D;QACD,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,uCAAuC,EAAE;KAC5F;CACF,CAAC;AAEF,QAAQ,CAAC,oBAAoB,EAAE;IAC7B,MAAM,SAAS,GAAG,WAAW,CAAC,mBAAmB,CAAC;SAC/C,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IAE9C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE7C,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QAElE,SAAS;YACP,EAAE,CAAC,YAAY,EAAE,KAAK;gBACpB,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;gBACxE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC;qBACzE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAA2B,CAAC;qBACpD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,OAAO,EAA4B,CAAC;gBACtC,CAAC,CAAC,CAAC;gBAEL,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;gBAErD,MAAM,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAC9D,MAAM,0BAA0B,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;gBAE7E,IAAI,YAAY,EAAE;oBAChB,oDAAoD;oBAEpD,MAAM,yBAAyB,CAAC,oBAAoB,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;oBAExE,MAAM,EAAE,CAAC,0BAA0B,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEtD,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;wBACrC,MAAM,WAAW,GAAG,qBAAqB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;wBAEpF,MAAM,SAAS,CAAC,0BAA0B,EAAE,WAAW,CAAC,CAAC;qBAC1D;iBACF;qBAAM;oBACL,6GAA6G;oBAC7G,4GAA4G;oBAC5G,2BAA2B;oBAE3B,IAAI,GAAG,GAAsB,SAAS,CAAC;oBAEvC,uEAAuE;oBACvE,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE;wBAC9D,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,EACvC,CAAC,EACD,wDAAwD,CACzD,CAAC;qBACH;yBAAM;wBACL,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;wBAEnE,uGAAuG;wBACvG,6EAA6E;wBAC7E,IAAI;4BACF,qBAAqB,CAAC,UAAU,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;yBACxD;wBAAC,OAAO,CAAU,EAAE;4BACnB,GAAG,GAAG,CAAU,CAAC;yBAClB;qBACF;oBAED,IAAI,mBAA2B,CAAC;oBAChC,IAAI;wBACF,mBAAmB,GAAG,CAAC,MAAM,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;qBACtF;oBAAC,MAAM;wBACN,mBAAmB,GAAG,IAAI,CAAC;qBAC5B;oBAED,oCAAoC;oBACpC,MAAM,oBAAoB,GACxB,OAAO,CAAC,QAAQ,KAAK,OAAO;wBAC1B,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBACzD,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC;oBAE7B,MAAM,WAAW,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;oBAElF,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,mBAAmB,EAAE,iCAAiC,CAAC,CAAC;oBAExF,IAAI,GAAG;wBAAE,MAAM,GAAG,CAAC;iBACpB;YACH,CAAC,CAAC,CAAC;KACN;AACH,CAAC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,SAAS,qBAAqB,CAAC,WAAqB;IAClD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,IAAI,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;YAC9B,OAAO,CAAC,CAAC,OAAO,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAC;SAC9D;;YAAM,OAAO,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAOD,KAAK,UAAU,MAAM,CACnB,KAA6B,EAC7B,OAA+B;IAE/B,MAAM,cAAc,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;IAE1D,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC;QAChC,SAAS,EAAE,CAAC,2BAA2B,CAAC;KACzC,CAAC,CAAC;IAEH,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACvD,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;KACzC;IAED,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE;QAChE,SAAS,EAAE,cAAc;QACzB,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE;YACR,oBAAoB,EAAE,OAAkC;SACzD;KACF,CAAC,CAAC;IAEH,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,WAAW,CACvB,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC;aACnB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;aACnD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CACrE;QACD,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAC5B,WAAmC,EACnC,aAAqC;IAErC,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;QAC3C,MAAM,CAAC,EAAE,CACP,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,EACrD,iBAAiB,EAAE,mBAAmB,CACvC,CAAC;KACH;IAED,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;QACvD,MAAM,eAAe,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QAE1C,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,mCAAmC,CAAC,CAAC;QAEjF,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;KAC9C;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,yBAAyB,CACtC,oBAA4B,EAC5B,WAAmC;IAEnC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAEhD,uGAAuG;IACvG,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,OAAO;KACR;IAED,MAAM,EAAE,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAEjE,MAAM,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAElC,KAAK,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,WAAW,EAAE;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;KACpC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,gBAAgB,CAAC,GAAW,EAAE,OAAe,GAAG;IAC7D,MAAM,GAAG,GAA2B,EAAE,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE;QACtE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;YACvB,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE;gBACjF,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;aACrB;SACF;aAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE;YACzB,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAE1D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAEhD,MAAM,aAAa,GACjB,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;YAEjF,GAAG,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC;SAC9B;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;SAC3C;KACF;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typespec/protobuf",
3
- "version": "0.48.0-dev.0",
3
+ "version": "0.48.0-dev.2",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec library and emitter for Protobuf (gRPC)",
6
6
  "homepage": "https://github.com/microsoft/typespec",
package/src/lib.ts CHANGED
@@ -11,13 +11,33 @@ export interface ProtobufEmitterOptions {
11
11
  * Don't emit anything.
12
12
  */
13
13
  noEmit?: boolean;
14
+
15
+ /**
16
+ * Omit unreachable types.
17
+ *
18
+ * By default, types under a package namespace will be emitted if they are fully annotated with `@field` decorators.
19
+ * With this flag on, only types that are explicitly marked with `@message` or that are referenced by an operation
20
+ * in an interface decoarated with `@service` will be emitted.
21
+ */
22
+ "omit-unreachable-types"?: boolean;
14
23
  }
15
24
 
16
25
  const EmitterOptionsSchema: JSONSchemaType<ProtobufEmitterOptions> = {
17
26
  type: "object",
18
27
  additionalProperties: false,
19
28
  properties: {
20
- noEmit: { type: "boolean", nullable: true },
29
+ noEmit: {
30
+ type: "boolean",
31
+ nullable: true,
32
+ description:
33
+ "If set to `true`, this emitter will not write any files. It will still validate the TypeSpec sources to ensure they are compatible with Protobuf, but the files will simply not be written to the output directory.",
34
+ },
35
+ "omit-unreachable-types": {
36
+ type: "boolean",
37
+ nullable: true,
38
+ description:
39
+ "By default, the emitter will create `message` declarations for any models in a namespace decorated with `@package` that have an `@field` decorator on every property. If this option is set to true, this behavior will be disabled, and only messages that are explicitly decorated with `@message` or that are reachable from a service operation will be emitted.",
40
+ },
21
41
  },
22
42
  required: [],
23
43
  };
@@ -58,7 +58,7 @@ export function createProtobufEmitter(
58
58
  ): (outDir: string, options: ProtobufEmitterOptions) => Promise<void> {
59
59
  return async function doEmit(outDir, options) {
60
60
  // Convert the program to a set of proto files.
61
- const files = tspToProto(program);
61
+ const files = tspToProto(program, options);
62
62
 
63
63
  if (!program.compilerOptions.noEmit && !options?.noEmit && !program.hasError()) {
64
64
  for (const file of files) {
@@ -85,13 +85,15 @@ export function createProtobufEmitter(
85
85
  *
86
86
  * This is the meat of the emitter.
87
87
  */
88
- function tspToProto(program: Program): ProtoFile[] {
88
+ function tspToProto(program: Program, emitterOptions: ProtobufEmitterOptions): ProtoFile[] {
89
89
  const packages = new Set<Namespace>(
90
90
  program.stateMap(state.package).keys() as Iterable<Namespace>
91
91
  );
92
92
 
93
93
  const serviceInterfaces = [...(program.stateSet(state.service) as Set<Interface>)];
94
94
 
95
+ const declaredMessages = [...(program.stateSet(state.message) as Set<Model>)];
96
+
95
97
  const declarationMap = new Map<Namespace, ProtoTopLevelDeclaration[]>(
96
98
  [...packages].map((p) => [p, []])
97
99
  );
@@ -218,11 +220,23 @@ function tspToProto(program: Program): ProtoFile[] {
218
220
  * @returns an array of declarations
219
221
  */
220
222
  function addDeclarationsOfPackage(namespace: Namespace) {
221
- const models = [...namespace.models.values()];
223
+ const eagerModels = new Set([
224
+ ...declaredMessages.filter((m) => isDeclaredInNamespace(m, namespace)),
225
+ ]);
226
+
227
+ if (!emitterOptions["omit-unreachable-types"]) {
228
+ // Add all models in the namespace that have `@field` on every property.
229
+ for (const model of namespace.models.values()) {
230
+ if (
231
+ [...model.properties.values()].every((p) => program.stateMap(state.fieldIndex).has(p)) ||
232
+ program.stateSet(state.message).has(model)
233
+ ) {
234
+ eagerModels.add(model);
235
+ }
236
+ }
237
+ }
222
238
 
223
- // Eagerly visit all models in the namespace.
224
- for (const model of models) {
225
- // Don't eagerly visit externs
239
+ for (const model of eagerModels) {
226
240
  if (
227
241
  // Don't eagerly visit externs
228
242
  !program.stateMap(state.externRef).has(model) &&
@@ -260,16 +274,23 @@ function tspToProto(program: Program): ProtoFile[] {
260
274
  function toMethodFromOperation(operation: Operation): ProtoMethodDeclaration {
261
275
  const streamingMode = program.stateMap(state.stream).get(operation) ?? StreamingMode.None;
262
276
 
277
+ const isEmptyParams =
278
+ operation.parameters.name === "" && operation.parameters.properties.size === 0;
279
+
280
+ const input = isEmptyParams
281
+ ? getCachedExternType(program, operation, "TypeSpec.Protobuf.WellKnown.Empty")
282
+ : addImportSourceForProtoIfNeeded(
283
+ program,
284
+ addInputParams(operation.parameters, operation),
285
+ operation,
286
+ operation.parameters
287
+ );
288
+
263
289
  return {
264
290
  kind: "method",
265
291
  stream: streamingMode,
266
292
  name: capitalize(operation.name),
267
- input: addImportSourceForProtoIfNeeded(
268
- program,
269
- addInputParams(operation.parameters, operation),
270
- operation,
271
- operation.parameters
272
- ),
293
+ input,
273
294
  returns: addImportSourceForProtoIfNeeded(
274
295
  program,
275
296
  addReturnType(operation.returnType, operation),
@@ -1 +1 @@
1
- {"program":{"fileNames":["../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es5.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2016.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.decorators.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../common/temp/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/codegen/code.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/codegen/scope.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/codegen/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/rules.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/util.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/validate/subschema.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/errors.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/validate/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/validate/datatype.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/additionalitems.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/propertynames.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/additionalproperties.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/not.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/anyof.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/oneof.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/if.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/limitnumber.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/multipleof.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/required.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/uniqueitems.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/const.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/enum.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/format/format.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedproperties.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluateditems.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/dependentrequired.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/errors.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/types/json-schema.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/types/jtd-schema.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/runtime/validation_error.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/ref_error.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/core.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/resolve.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/types/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/ajv.d.ts","../../compiler/dist/src/manifest.d.ts","../../compiler/dist/src/config/types.d.ts","../../compiler/dist/src/core/options.d.ts","../../compiler/dist/src/core/program.d.ts","../../compiler/dist/src/lib/service.d.ts","../../compiler/dist/src/lib/decorators.d.ts","../../compiler/dist/src/core/helpers/discriminator-utils.d.ts","../../compiler/dist/src/core/helpers/location-context.d.ts","../../compiler/dist/src/core/helpers/operation-utils.d.ts","../../compiler/dist/src/core/helpers/path-interpolation.d.ts","../../compiler/dist/src/core/helpers/projected-names-utils.d.ts","../../compiler/dist/src/core/helpers/type-name-utils.d.ts","../../compiler/dist/src/core/helpers/usage-resolver.d.ts","../../compiler/dist/src/core/helpers/index.d.ts","../../compiler/dist/src/core/checker.d.ts","../../compiler/dist/src/core/decorator-utils.d.ts","../../compiler/dist/src/core/deprecation.d.ts","../../compiler/dist/src/core/diagnostics.d.ts","../../compiler/dist/src/core/emitter-utils.d.ts","../../../common/temp/node_modules/.pnpm/prettier@3.0.1/node_modules/prettier/doc.d.ts","../../../common/temp/node_modules/.pnpm/prettier@3.0.1/node_modules/prettier/index.d.ts","../../compiler/dist/src/formatter/types.d.ts","../../compiler/dist/src/formatter/print/types.d.ts","../../compiler/dist/src/formatter/print/printer.d.ts","../../compiler/dist/src/core/formatter.d.ts","../../compiler/dist/src/core/library.d.ts","../../compiler/dist/src/core/module-resolver.d.ts","../../compiler/dist/src/core/node-host.d.ts","../../compiler/dist/src/core/parser.d.ts","../../compiler/dist/src/core/path-utils.d.ts","../../compiler/dist/src/core/scanner.d.ts","../../compiler/dist/src/core/semantic-walker.d.ts","../../compiler/dist/src/core/type-utils.d.ts","../../compiler/dist/src/core/util.d.ts","../../compiler/dist/src/core/index.d.ts","../../compiler/dist/src/emitter-framework/placeholder.d.ts","../../compiler/dist/src/emitter-framework/types.d.ts","../../compiler/dist/src/emitter-framework/type-emitter.d.ts","../../compiler/dist/src/core/types.d.ts","../../compiler/dist/src/config/config-loader.d.ts","../../compiler/dist/src/config/config-to-options.d.ts","../../compiler/dist/src/config/index.d.ts","../../compiler/dist/src/server/language-config.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-textdocument@1.0.1/node_modules/vscode-languageserver-textdocument/lib/umd/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/typings/thenable.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/assert.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/assert/strict.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/globals.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/async_hooks.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/buffer.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/child_process.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/cluster.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/console.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/constants.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/crypto.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dgram.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/diagnostics_channel.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dns.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dns/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/domain.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dom-events.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/events.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/fs.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/fs/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/http.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/http2.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/https.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/inspector.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/module.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/net.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/os.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/path.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/perf_hooks.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/process.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/punycode.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/querystring.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/readline.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/readline/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/repl.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream/consumers.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream/web.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/string_decoder.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/test.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/timers.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/timers/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/tls.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/trace_events.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/tty.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/url.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/util.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/v8.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/vm.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/wasi.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/worker_threads.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/zlib.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/globals.global.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/index.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-types@3.17.3/node_modules/vscode-languageserver-types/lib/umd/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/typings/thenable.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messages.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/linkedmap.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/events.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/ral.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messagereader.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messagewriter.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/connection.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/sharedarraycancellation.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messagebuffer.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/api.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/messages.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.typedefinition.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspacefolder.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorprovider.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.callhierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.semantictokens.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.showdocument.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkededitingrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileoperations.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.typehierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlinevalue.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayhint.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/connection.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/api.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/progress.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/configuration.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/workspacefolder.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/callhierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/semantictokens.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/showdocument.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/fileoperations.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/linkededitingrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/typehierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/inlinevalue.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/inlayhint.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/diagnostic.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/textdocuments.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/notebook.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/moniker.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/server.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/node/files.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/node/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/node.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/node/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/node.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/api.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/node/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/node.d.ts","../../compiler/dist/src/server/serverlib.d.ts","../../compiler/dist/src/server/index.d.ts","../../compiler/dist/src/formatter/index.d.ts","../../compiler/dist/src/index.d.ts","../src/ast.ts","../src/lib.ts","../src/write.ts","../src/transform/index.ts","../src/proto.ts","../src/index.ts","../../../common/temp/node_modules/.pnpm/@types+braces@3.0.1/node_modules/@types/braces/index.d.ts","../../../common/temp/node_modules/.pnpm/@types+micromatch@4.0.2/node_modules/@types/micromatch/index.d.ts","../../compiler/dist/src/testing/expect.d.ts","../../compiler/dist/src/testing/types.d.ts","../../compiler/dist/src/testing/rule-tester.d.ts","../../compiler/dist/src/testing/test-host.d.ts","../../compiler/dist/src/testing/test-server-host.d.ts","../../compiler/dist/src/testing/test-utils.d.ts","../../compiler/dist/src/testing/index.d.ts","../test/scenarios.test.ts","../../../common/temp/node_modules/.pnpm/@types+mocha@10.0.1/node_modules/@types/mocha/index.d.ts"],"fileInfos":[{"version":"f59215c5f1d886b05395ee7aca73e0ac69ddfad2843aa88530e797879d511bad","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","impliedFormat":1},{"version":"27147504487dc1159369da4f4da8a26406364624fa9bc3db632f7d94a5bae2c3","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"9d9885c728913c1d16e0d2831b40341d6ad9a0ceecaabc55209b306ad9c736a5","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bea081b9c0541f39dd1ae9bc8c78bdd561879a682e60e2f25f688c0ecab248","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab22100fdd0d24cfc2cc59d0a00fc8cf449830d9c4030dc54390a46bd562e929","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"36ae84ccc0633f7c0787bc6108386c8b773e95d3b052d9464a99cd9b8795fbec","affectsGlobalScope":true,"impliedFormat":1},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true,"impliedFormat":1},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true,"impliedFormat":1},{"version":"f06948deb2a51aae25184561c9640fb66afeddb34531a9212d011792b1d19e0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true,"impliedFormat":1},{"version":"189c0703923150aa30673fa3de411346d727cc44a11c75d05d7cf9ef095daa22","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"9f3c5498245c38c9016a369795ec5ef1768d09db63643c8dba9656e5ab294825","impliedFormat":1},{"version":"2d225e7bda2871c066a7079c88174340950fb604f624f2586d3ea27bb9e5f4ff","impliedFormat":1},{"version":"6a785f84e63234035e511817dd48ada756d984dd8f9344e56eb8b2bdcd8fd001","impliedFormat":1},{"version":"c1422d016f7df2ccd3594c06f2923199acd09898f2c42f50ea8159f1f856f618","impliedFormat":1},{"version":"d48084248e3fc241d87852210cabf78f2aed6ce3ea3e2bdaf070e99531c71de2","impliedFormat":1},{"version":"0eb6152d37c84d6119295493dfcc20c331c6fda1304a513d159cdaa599dcb78b","impliedFormat":1},{"version":"237df26f8c326ca00cd9d2deb40214a079749062156386b6d75bdcecc6988a6b","impliedFormat":1},{"version":"cd44995ee13d5d23df17a10213fed7b483fabfd5ea08f267ab52c07ce0b6b4da","impliedFormat":1},{"version":"58ce1486f851942bd2d3056b399079bc9cb978ec933fe9833ea417e33eab676e","impliedFormat":1},{"version":"7557d4d7f19f94341f4413575a3453ba7f6039c9591015bcf4282a8e75414043","impliedFormat":1},{"version":"a3b2cc16f3ce2d882eca44e1066f57a24751545f2a5e4a153d4de31b4cac9bb5","impliedFormat":1},{"version":"ac2b3b377d3068bfb6e1cb8889c99098f2c875955e2325315991882a74d92cc8","impliedFormat":1},{"version":"8deb39d89095469957f73bd194d11f01d9894b8c1f1e27fbf3f6e8122576b336","impliedFormat":1},{"version":"a38a9c41f433b608a0d37e645a31eecf7233ef3d3fffeb626988d3219f80e32f","impliedFormat":1},{"version":"8e1428dcba6a984489863935049893631170a37f9584c0479f06e1a5b1f04332","impliedFormat":1},{"version":"1fce9ecb87a2d3898941c60df617e52e50fb0c03c9b7b2ba8381972448327285","impliedFormat":1},{"version":"5ef0597b8238443908b2c4bf69149ed3894ac0ddd0515ac583d38c7595b151f1","impliedFormat":1},{"version":"ac52b775a80badff5f4ac329c5725a26bd5aaadd57afa7ad9e98b4844767312a","impliedFormat":1},{"version":"6ae5b4a63010c82bf2522b4ecfc29ffe6a8b0c5eea6b2b35120077e9ac54d7a1","impliedFormat":1},{"version":"dd7109c49f416f218915921d44f0f28975df78e04e437c62e1e1eb3be5e18a35","impliedFormat":1},{"version":"eee181112e420b345fc78422a6cc32385ede3d27e2eaf8b8c4ad8b2c29e3e52e","impliedFormat":1},{"version":"25fbe57c8ee3079e2201fe580578fab4f3a78881c98865b7c96233af00bf9624","impliedFormat":1},{"version":"62cc8477858487b4c4de7d7ae5e745a8ce0015c1592f398b63ee05d6e64ca295","impliedFormat":1},{"version":"cc2a9ec3cb10e4c0b8738b02c31798fad312d21ef20b6a2f5be1d077e9f5409d","impliedFormat":1},{"version":"4b4fadcda7d34034737598c07e2dca5d7e1e633cb3ba8dd4d2e6a7782b30b296","impliedFormat":1},{"version":"360fdc8829a51c5428636f1f83e7db36fef6c5a15ed4411b582d00a1c2bd6e97","impliedFormat":1},{"version":"1cf0d15e6ab1ecabbf329b906ae8543e6b8955133b7f6655f04d433e3a0597ab","impliedFormat":1},{"version":"7c9f98fe812643141502b30fb2b5ec56d16aaf94f98580276ae37b7924dd44a4","impliedFormat":1},{"version":"b3547893f24f59d0a644c52f55901b15a3fa1a115bc5ea9a582911469b9348b7","impliedFormat":1},{"version":"596e5b88b6ca8399076afcc22af6e6e0c4700c7cd1f420a78d637c3fb44a885e","impliedFormat":1},{"version":"adddf736e08132c7059ee572b128fdacb1c2650ace80d0f582e93d097ed4fbaf","impliedFormat":1},{"version":"d4cad9dc13e9c5348637170ddd5d95f7ed5fdfc856ddca40234fa55518bc99a6","impliedFormat":1},{"version":"d70675ba7ba7d02e52b7070a369957a70827e4b2bca2c1680c38a832e87b61fd","impliedFormat":1},{"version":"3be71f4ce8988a01e2f5368bdd58e1d60236baf511e4510ee9291c7b3729a27e","impliedFormat":1},{"version":"423d2ccc38e369a7527988d682fafc40267bcd6688a7473e59c5eea20a29b64f","impliedFormat":1},{"version":"2f9fde0868ed030277c678b435f63fcf03d27c04301299580a4017963cc04ce6","impliedFormat":1},{"version":"6b6ed4aa017eb6867cef27257379cfe3e16caf628aceae3f0163dbafcaf891ff","impliedFormat":1},{"version":"25f1159094dc0bf3a71313a74e0885426af21c5d6564a254004f2cadf9c5b052","impliedFormat":1},{"version":"cde493e09daad4bb29922fe633f760be9f0e8e2f39cdca999cce3b8690b5e13a","impliedFormat":1},{"version":"3d7f9eb12aface876f7b535cc89dcd416daf77f0b3573333f16ec0a70bcf902a","impliedFormat":1},{"version":"b83139ae818dd20f365118f9999335ca4cd84ae518348619adc5728e7e0372d5","impliedFormat":1},{"version":"c3d608cc3e97d22d1d9589262865d5d786c3ee7b0a2ae9716be08634b79b9a8c","impliedFormat":1},{"version":"62d26d8ba4fa15ab425c1b57a050ed76c5b0ecbffaa53f182110aa3a02405a07","impliedFormat":1},{"version":"87a4f46dabe0e415e3d38633e4b2295e9a2673ae841886c90a1ff3e66defb367","impliedFormat":1},{"version":"1a81526753a454468403c6473b7504c297bd4ee9aa8557f4ebf4092db7712fde","impliedFormat":1},{"version":"2546eb0653f8b3ff203afb5aab17de16b98501295e328e4b02fbe99d003da10f","impliedFormat":99},{"version":"3fb3152619d4b20bdb5358a6e26539e3e90e064a4e3e823996cbd7e0c90c2411","impliedFormat":99},{"version":"f06ebeaf8509d033850fd180832283b8620d7fca0bf6b57bb18dd3d5d0764046","impliedFormat":99},{"version":"e0b6a14f649c793c4e743922de218607cc47a488076ab74deb3bbfb991f3cece","impliedFormat":99},{"version":"c8f0839a91b1abf355f73f451ce815d0482a18c5d8c204dd52102f9a0880cf7c","impliedFormat":99},{"version":"7b93b0f3a9dfbb001834ee1090d9d9049e55b5c3f9b71e173349b95b12d4b96b","impliedFormat":99},{"version":"f42b4b5a3b0d113a0bf061a36826f10f1b78a00683105251593768f581cbf4f6","impliedFormat":99},{"version":"b76fd169c14e32e3c45d67396b954f6c5026271b3b88300fae1194a014d9fcc6","impliedFormat":99},{"version":"5077b3ba3766f16b30e325ad7d720330c08ef84fc2f6a449826adb006bc581ed","impliedFormat":99},{"version":"4ac79fd5d2a7f056ba1eda188700198f20d32bcab0db09f311d5d5f5d746c2ca","impliedFormat":99},{"version":"7e3b748c0abc41c3837d38f6f7ed99ed1881c45cc8623e19b2e31f3876d4a009","impliedFormat":99},{"version":"e2b49314d39be607b1727c6e2cd31e402d1e4133ff2013c378d7f32691a448d8","impliedFormat":99},{"version":"ad10612fdbbc90fd9238b854ee39ad38a118cee8ac8979b1194895167168ceb3","impliedFormat":99},{"version":"40e17508dec8b796bb38425d5b92d8a0a60e563c40a2fb508f6642cf03ff0a94","impliedFormat":99},{"version":"85a80593c9eec9ce81ec81da010b95e3620001c8044e88463aee2f71b3b12f57","impliedFormat":99},{"version":"4922761817b7182fc7bb559f560c7a548e2be46b489882cb3b08b33a04bd9ffb","impliedFormat":99},{"version":"8a45bc9106accd8ba469edae54b3e6a44f4a88d0deb68a76348c0ba7608eb1b3","impliedFormat":99},{"version":"1067d75a280d5ca977a2edcbba9912957474a578049211020f3d55ae0a53d640","impliedFormat":99},{"version":"4dce6f7b11c297eefb274cd160bcb4f48b141280e36d7fdf6478d9e5fcb8cfb6","impliedFormat":99},{"version":"f0c4df2546dafc3b77d9c428453495f694171c36b48fb098e0e333f47ab1339f","impliedFormat":1},{"version":"5d7b6cc4df7683915a6fb125cb2fd4364245e2dad4bdd93298e250b2bf9c9b7d","impliedFormat":1},{"version":"3763629e8b771f09dbfbc1e52af4cc386a792fd8398f58975a816d912db8fbea","impliedFormat":99},{"version":"2e0df3f8e22c6e49647df5df68761327b45d4a26378225dfa683b88307abb5fb","impliedFormat":99},{"version":"3f1894708b6fc630d91096da4e822a0d15bdbf0973e22c3abbe5d322851c8458","impliedFormat":99},{"version":"1db92102d002cb7aea0b1802575641bf70cc5532bfb44857011704cb74df2255","impliedFormat":99},{"version":"d8d1b7a2e88cbd5762a4279bef88ef69b46f56f50842098a6cb42c53862cec61","impliedFormat":99},{"version":"fa0dc544266dab4537e0cfca9bccbfbf4531b2f020c4c7a4957091aac8c57552","impliedFormat":99},{"version":"6b1c7e3ea61264bc2891ebe73a507531cf2949ab42b32d794d25a0abe375b1fb","impliedFormat":99},{"version":"410e1f079a9ecb500a76dc430829553c6b097cc8264c69552199faa3496803a6","impliedFormat":99},{"version":"123d94390345afefbdd612f216d40db16c3710338edcb73b5f4be0a4ad539aa4","impliedFormat":99},{"version":"c027921e8a0813a8315d9980b633cc87741017e9d79d49053cd27e50a7767317","impliedFormat":99},{"version":"bcee158d3f92c17e50607ebb8d15bd5eb19cdee3895d04b706d12c24c12062c7","impliedFormat":99},{"version":"ea52187a590f18ca2e58e8add27d5700fc44d5bcb2361e30beb4e032759ebe6d","impliedFormat":99},{"version":"2707de79f5d7a78771f67d892ca0b0b97eed1a55ea393466eab3a532db11e30e","impliedFormat":99},{"version":"484e66997f7d84372ffc0ac351803b7dd5b31297a706c54c6136a194b5eef367","impliedFormat":99},{"version":"da7ef8056b01283adea3ca6de1dabfd428b439d6050a75602f1e30f48eb6efdf","impliedFormat":99},{"version":"3474c15231a7d225f08c82e5fa7f3721aacde04bcdc6c20ad5a677cad11566f4","impliedFormat":99},{"version":"b63f3975baa83cfe0e716da4ef55492a0ddc1395903b7af5b27f6a23d65e2909","impliedFormat":99},{"version":"a0849b023df3758faff4ff2f67d7e2848a5faf4fe33c291840db7b71d08700c9","impliedFormat":99},{"version":"74dd1838df4843d15db9943248f83123d893a9fe898219aa830cd5f2c8034be3","impliedFormat":99},{"version":"cb0f7b77bae55596f910eede4dc67e3a62bda8b6246a049d52f1816ace5e5fe5","impliedFormat":99},{"version":"ad3d8bb2ac79fbda7222abb647e260914f6e6f2ed988f7db8acc62a44d78f448","impliedFormat":99},{"version":"dbb312aedcf0ce06467366f096ec6591b4c0f0d956137dd49c35a9b20bb90be7","impliedFormat":99},{"version":"21f9731fc2e8e009fdaef137a04546c27877314c748c6702fe9329518fb16538","impliedFormat":1},{"version":"65b9243c80068ec9696b1fbdd23c9acf80d51df02f97b2d7a0514312b0a9fe7d","affectsGlobalScope":true,"impliedFormat":1},{"version":"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","impliedFormat":1},{"version":"a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a","impliedFormat":1},{"version":"ca72190df0eb9b09d4b600821c8c7b6c9747b75a1c700c4d57dc0bb72abc074c","affectsGlobalScope":true,"impliedFormat":1},{"version":"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9","impliedFormat":1},{"version":"bb65c6267c5d6676be61acbf6604cf0a4555ac4b505df58ac15c831fcbff4e3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","impliedFormat":1},{"version":"5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713","impliedFormat":1},{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true,"impliedFormat":1},{"version":"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","impliedFormat":1},{"version":"afcc1c426b76db7ec80e563d4fb0ba9e6bcc6e63c2d7e9342e649dc56d26347f","impliedFormat":1},{"version":"bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","impliedFormat":1},{"version":"75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","impliedFormat":1},{"version":"f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","impliedFormat":1},{"version":"14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","impliedFormat":1},{"version":"5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea","impliedFormat":1},{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true,"impliedFormat":1},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true,"impliedFormat":1},{"version":"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","impliedFormat":1},{"version":"d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","impliedFormat":1},{"version":"b01a80007e448d035a16c74b5c95a5405b2e81b12fabcf18b75aa9eb9ef28990","impliedFormat":1},{"version":"04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","impliedFormat":1},{"version":"dbe5aa5a5dd8bd1c6a8d11b1310c3f0cdabaacc78a37b394a8c7b14faeb5fb84","impliedFormat":1},{"version":"2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58","impliedFormat":1},{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true,"impliedFormat":1},{"version":"d076fede3cb042e7b13fc29442aaa03a57806bc51e2b26a67a01fbc66a7c0c12","impliedFormat":1},{"version":"7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","impliedFormat":1},{"version":"b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30","impliedFormat":1},{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true,"impliedFormat":1},{"version":"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","impliedFormat":1},{"version":"210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","impliedFormat":1},{"version":"36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","impliedFormat":1},{"version":"0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","impliedFormat":1},{"version":"25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","impliedFormat":1},{"version":"fd93cee2621ff42dabe57b7be402783fd1aa69ece755bcba1e0290547ae60513","impliedFormat":1},{"version":"1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","impliedFormat":1},{"version":"69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","impliedFormat":1},{"version":"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","impliedFormat":1},{"version":"23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","impliedFormat":1},{"version":"213fc4f2b172d8beb74b77d7c1b41488d67348066d185e4263470cbb010cd6e8","impliedFormat":1},{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","impliedFormat":1},{"version":"4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","impliedFormat":1},{"version":"3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","impliedFormat":1},{"version":"5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2","impliedFormat":1},{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7db71191aa7aac5d6bc927ed6e7075c2763d22c7238227ec0c63c8cf5cb6a8b","affectsGlobalScope":true,"impliedFormat":1},{"version":"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","impliedFormat":1},{"version":"ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","impliedFormat":1},{"version":"e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa","impliedFormat":1},{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9a8d4274033cb520ee12d6f68d161ba2b9128b87399645d3916b71187032836","impliedFormat":1},{"version":"f0142b712ca22ad863476d9f3ae74e8b2766f3507a6fb5018882074f65ed0195","impliedFormat":1},{"version":"65b9243c80068ec9696b1fbdd23c9acf80d51df02f97b2d7a0514312b0a9fe7d","affectsGlobalScope":true,"impliedFormat":1},{"version":"0def2c37cadfd7bf074fe9566cb83518f24d67193c79741b2d83ec290b945725","impliedFormat":1},{"version":"049e3511439f11e1285bec4647ab8aac53e0c06951b93ba507565dbde851ba31","impliedFormat":1},{"version":"f0745ab78e18a2befaf1d9951481973318722c4e2f33e859239f55fa999ff2b1","impliedFormat":1},{"version":"886e183dd0199e7de45d6308ac3e2185dac6f83283d1b8200ea62cf5c43966a1","impliedFormat":1},{"version":"392dd7b1117b588cba36c04909efd24b0458980506e8e8c1966114f8989058e2","impliedFormat":1},{"version":"ec9d55888e353f9b5cdda761308dffc7eeb6aa0b7b25d328c64d3776a1cf2a7e","impliedFormat":1},{"version":"1f8fedf144a967560be9e58fa32de75e4ca379c3549710d027a07be6a9414073","impliedFormat":1},{"version":"3ca7b2e8012b9a6be09fafd62f8f3937388b9e1600a59c98887d2b11f6d01b43","impliedFormat":1},{"version":"b138b3f30708386023a7dc9981bb867808e5ff3383429ac7f69b7bfd0dcc5bd5","impliedFormat":1},{"version":"a42c8992e2cf55a4a2d661fac251bc803fe119dad49327477d439268e42953d8","impliedFormat":1},{"version":"13ec544ab0a3a7ff96afac1016f55b264c812428e37d595dc33b688296435469","impliedFormat":1},{"version":"4962729121c2cb97a4481cdb06dfc720a79a3bc2fc9330ff2bcf604cfc541177","impliedFormat":1},{"version":"bc641da6705e45737a6c85bf6c7460e9298e5f5b1021abf035cb760d313cda1a","impliedFormat":1},{"version":"4284412700d89f927c8f5092a8e8c2a20a596349f2819148952b07f2cba9177a","impliedFormat":1},{"version":"4d08d58c94c1462506783c35009ddaeb70e54632310e384aa572ed7667333c8f","impliedFormat":1},{"version":"067f06a3d8abb66e4db6c22e34a076808b4c39418e45690f1abf37bcd4725f1c","impliedFormat":1},{"version":"05f6b2b3bef27dfc0e2464197510d08f275f2464363b441def7f309cbf42f51d","impliedFormat":1},{"version":"15055a0f3fe6c7e9d98bf9de36bdc9102ab324debbe2d4170ffe557115a199fc","impliedFormat":1},{"version":"33e11cee43184a95afe9a450f7dde6bd2b6a03fc9643f898268e8594c266554a","impliedFormat":1},{"version":"c13aaf7191fbccaf0f4e9e520c720b870c6339080eb1699439a392589fc85a96","impliedFormat":1},{"version":"41af0cbfe30738008b3765c30059580972362b70b8dcafd791908923e907c3a6","impliedFormat":1},{"version":"b5d49f459d2efc77cff4ab27d929aa67d0c9121bc20763d84942c7fca2cc7b8f","impliedFormat":1},{"version":"96c0c4b30165eaedb3ade3b4e9f491113a1816c448d67fff542b2793bf565b04","impliedFormat":1},{"version":"29a456c61c3d93e36f5eba4c0ed567d7896a9c08a38b537c3fc192a99d03b348","impliedFormat":1},{"version":"3b67dd4fbeec66a7d2acd2be4f65219d85abd04e6eb9cc96fd862ddf70e02eec","impliedFormat":1},{"version":"0a61f7b50171225629903175e062d3f43225e6eba24eb2e50f88ca05fb441aa6","impliedFormat":1},{"version":"818d9a0841c884447fbd61b934c6743aea1fa6f1c0159ef44ef55b8f02b9120f","impliedFormat":1},{"version":"b5f234cb0cb6ceb839fe2875ada30e62082707eaa7a36bfc4a4df9d287b901c7","impliedFormat":1},{"version":"facdb012edb0931c21556ace5bf7c0194c8389b1248fdbd94d09f793b311517c","impliedFormat":1},{"version":"98528506b6a07d49efdd7a65da416af50bfbfea67fbdca941ba55753e171a3db","impliedFormat":1},{"version":"8370c10834a51543556e92367c7c564723ae83b97199413a8eca6f5d70036cd5","impliedFormat":1},{"version":"8c1036c47d3e04eca9bd5fc5e0cdd219a78e4061a4bb4b55f4a4f0cbc621e66f","impliedFormat":1},{"version":"8db15e1da6050330d9e36bddd03131d5a02d56fac2e919fd8360892616357863","impliedFormat":1},{"version":"44874584b7c30882ea2cb1b9b0df0e198221afee1ee5cc4d04deb4c8a3c6345a","impliedFormat":1},{"version":"09839c769382d4763700d97d6e9ceae5c9ab3c34cf288229d9879b63c7206c60","impliedFormat":1},{"version":"c0c205fec8b10f3ad0e65af65dd20ea7cf633df0964c84305e375ccdc4f5557e","impliedFormat":1},{"version":"37c2423005b2ec6130903de29aec9fcf1680ab1b2336efa0ff828980e92da7e9","impliedFormat":1},{"version":"f1f23acd4a8193453749f69d4432f5f122d6d572b793a8b630dd12fe80b0c3d3","impliedFormat":1},{"version":"7662d6994d28c9ebbe61b88cc35c3d705804351eedbf363df30ea9fe8c4961dc","impliedFormat":1},{"version":"1fb68106bddae35448e5279095461a4b54c4bbb42787cd629f70924b17e9a11e","impliedFormat":1},{"version":"46a9b0122b230cb2fab65999ba92f98a16fd8f1c25efaed47141cbf5056f6928","impliedFormat":1},{"version":"5a9a4741aa510bdee406441f77186c6d2005be78e78c2e0da8201d9991950164","impliedFormat":1},{"version":"351bbf43d585484825ee6c4b4805aac137ffc8e8a3b9812af99945a202db7c02","impliedFormat":1},{"version":"3990ae796cc23fb9829eae206eff1eddded9465504467a4433f2509e18ef1aed","impliedFormat":1},{"version":"b557ea3605e52406e35eeea468cb96f25b1ca906f2055f376597f0b02492d94c","impliedFormat":1},{"version":"f384bb303dbc114af6460e7cb30b766cc92eed33fccb331126b08bb63f15a034","impliedFormat":1},{"version":"8a9bd1cf8c1f75435f83595b43737c135e7f73bde39ba4c9339dc6a31e8bb069","impliedFormat":1},{"version":"8274bfd5de49f9f072be2f39c34e390101a8b69844e55eda36c7df23ba6d03e2","impliedFormat":1},{"version":"f8b482dddda55dd6677d7895a3fef8cd9d067f8c36c63cc7fe93b82a6dd4f10c","impliedFormat":1},{"version":"71d11ad1f05b0b90e95591fa85c1c8043e590d67972dcaba9b50435a0c04d8fa","impliedFormat":1},{"version":"c77c8f4aa3f4b849eda044768882bb102edf211b1c26b04a3c6ad921110f2fa4","impliedFormat":1},{"version":"a980ce9470dc95ac355d7efb729f9cfb0564505eba96da4bbde504299efb833a","impliedFormat":1},{"version":"eed44483a64b3c5a643663f8827c868ef3888965c7f3654e816debd03c621da0","impliedFormat":1},{"version":"a58402dc75738c188a741ccca86ccf898b0af98d305ad075c428171f193a6cd5","impliedFormat":1},{"version":"67d37ef881a81aefe3a0f70f78e3835be950f2359487d3eb61b0a3bb9af172bc","impliedFormat":1},{"version":"9c98df0145d99011af92c397fa787fc39d42cc04019614ab5581febe71fb32e1","impliedFormat":1},{"version":"d789022bf705385490fe89811bc7850225c207f37dd706ada2509eb1d8f31f12","impliedFormat":1},{"version":"9c98df0145d99011af92c397fa787fc39d42cc04019614ab5581febe71fb32e1","impliedFormat":1},{"version":"d29fa1f984b6d5ec55c37e6f65474ea4acaf9ba92d2b1d502ca824abca86b430","impliedFormat":1},{"version":"abd02654e7ae1f70f68ec509b2c3c1e388c0142d169ba37a157f558709efe2a1","impliedFormat":1},{"version":"9c98df0145d99011af92c397fa787fc39d42cc04019614ab5581febe71fb32e1","impliedFormat":1},{"version":"60c41f62f22ba90c530bea27526e5e8329f82533969a2351a4ea80d4d791a625","impliedFormat":99},{"version":"783f6bd2dac30fe59008f6612a829703b6d894163dff9db8f718a78697e6c37a","impliedFormat":99},{"version":"28179ea30b38d6ff478cfa140b14d57a83dc8a06f757bc23e73a30ed47d0ca0f","impliedFormat":99},{"version":"ecc2a9e578fcb45c12a9edb7bb73a6a68dd139d7aeeb98cacec6c0e2de622bd7","impliedFormat":99},{"version":"4d568cfd3390e3991e1f64eac313f151f52735cffbfffe18e535edde6202592f","signature":"bb01dd0a9a0a791ee66ae078dc75de6e84f3274a142ba2e68a04c79e2f6874ac","impliedFormat":99},{"version":"6d66ca1ddde10994372f308e8fb699ed34be26875615aec4254f579e8249a681","signature":"5ba405e8c505432fc6105c11909776d6b595deb0fd48febe204c5662d5bc9eee","impliedFormat":99},{"version":"e389019b28ebad29395c9504f9b6d68b7bc2f9150fa41efd1e6f532feb59f45d","signature":"ac461c690eb5dea614beb412ac3129e18b5d09a564ae05d8023f9742530ab416","impliedFormat":99},{"version":"750f518fc0ecb33f47203219f5fff9d5223e858d961139ecbad17b6fa1be0819","signature":"2d9ec481193fe4afdc75403e66fe9808f5b00598f107962bcea03acb6b3752db","impliedFormat":99},{"version":"a66e190ba2c0450b30e162122508f8b86ac3472addef87827b67b8979a35896e","signature":"21a697e79daaec5d9fb2ebccc26a7b0dfbab7b37612ba311819574d60ae35587","impliedFormat":99},{"version":"aa3fafccc72b683f1109b694bdc02dc96a057facb7c1e35564762ec75fd26a41","signature":"281203f037c9182d00d1ccccf800560422d3b7e87c24d61d04901c7ba2a3e7e9","impliedFormat":99},{"version":"40304c033bb6e39f0eb01b106d29523950148dfc3cd547ddb500167871171281","impliedFormat":1},{"version":"1a255ad66d2b50f7b42eca69228b9587878cf06900780ad57a306a933c6eaeb4","impliedFormat":1},{"version":"60728a843215bbfdc0d5149db601ed86acbecbb0eef89a46ee0dc015fd4c3145","impliedFormat":99},{"version":"b4c6177901fb7234cfbeee2f901c46f8c3453995991446d1e31b201f7f57566d","impliedFormat":99},{"version":"6767f06521d4ca56aa288bfc7446171b7bae829dd6263fe38d095c347d0118d0","impliedFormat":99},{"version":"b3ba2d067c491edfbcbdd5fa7a385313307ca01496d8aaf3da46c1fab4236edd","impliedFormat":99},{"version":"40323fd020575c0ca4692d491d931180b1b2a6d52572b2dcd125aef8d70ced18","impliedFormat":99},{"version":"0ac26325149dbc50f6b27e031f0ba20f3901e61ed4b89c0fa95b3e058a81ef6c","impliedFormat":99},{"version":"fb2cf96bb951cbe58e02385f0f757e0ef928b54194c3d69ec0bac8b8a402174c","impliedFormat":99},{"version":"72d8a59ae877b2bb4747eef77b5929e936d775d24709e2b46ff9bd05823f7d28","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"677646e2620795c98a539fb12fb531f10331c217cef1492132b2518f894fa92d","affectsGlobalScope":true,"impliedFormat":1}],"root":[[255,260],270],"options":{"alwaysStrict":true,"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"experimentalDecorators":true,"module":100,"newLine":1,"noEmitHelpers":false,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"outDir":"../dist","rootDir":"..","sourceMap":true,"strict":true,"stripInternal":true,"target":6,"tsBuildInfoFile":"./tsconfig.tsbuildinfo"},"fileIdsList":[[180],[180,261],[134,180],[137,180],[138,143,171,180],[139,150,151,158,168,179,180],[139,140,150,158,180],[141,180],[142,143,151,159,180],[143,168,176,180],[144,146,150,158,180],[145,180],[146,147,180],[150,180],[148,150,180],[150,151,152,168,179,180],[150,151,152,165,168,171,180],[180,184],[153,158,168,179,180],[150,151,153,154,158,168,176,179,180],[153,155,168,176,179,180],[134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186],[150,156,180],[157,179,180],[146,150,158,168,180],[159,180],[160,180],[137,161,180],[162,178,180,184],[163,180],[164,180],[150,165,166,180],[165,167,180,182],[138,150,168,169,170,171,180],[138,168,170,180],[168,169,180],[171,180],[172,180],[150,174,175,180],[174,175,180],[143,158,168,176,180],[177,180],[158,178,180],[138,153,164,179,180],[143,180],[168,180,181],[180,182],[180,183],[138,143,150,152,161,168,179,180,182,184],[168,180,185],[47,48,52,79,80,82,83,84,86,87,180],[45,46,180],[45,180],[47,87,180],[47,48,84,85,87,180],[87,180],[44,87,88,180],[47,48,86,87,180],[47,48,50,51,86,87,180],[47,48,49,86,87,180],[47,48,52,79,80,81,82,83,86,87,180],[44,47,48,52,84,86,180],[52,87,180],[54,55,56,57,58,59,60,61,62,63,87,180],[77,87,180],[53,64,72,73,74,75,76,78,180],[57,87,180],[65,66,67,68,69,70,71,87,180],[108,180],[180,189,190,191,192,193,194,195,196,197,198,199,200,201],[180,192,193],[180,190,192,193,194,197,198],[180,190,196],[180,192],[180,196],[180,190,193,195,196,202],[180,190,193,195,196],[180,192,195],[180,190,194,199],[139,158,180,184,187,202],[180,244],[180,188,202,203,224,225],[180,202,203],[180,202],[180,188,202,203,224],[180,188,202,203],[180,188,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223],[180,203,224],[180,188,203,224],[180,187,226,245],[180,246],[180,226,227,231,239,240,242],[180,226,242],[180,226,239,242],[180,226,227,228,229,230,231,232,233,234,235,236,237,238,240,241],[180,226],[133,180,187,242,243,247,248],[180,249],[90,127,180],[90,91,127,180],[90,128,129,180],[123,180],[92,102,127,180],[92,127,180],[92,180],[109,112,180],[92,94,127,180],[95,96,97,98,99,100,101,180],[127,180],[89,92,102,103,104,105,106,107,113,114,115,116,117,118,119,120,121,122,127,180],[91,103,127,180],[106,127,180],[88,92,115,125,126,180],[89,106,116,127,180],[123,124,125,180],[123,124,126,180],[109,127,180],[108,109,110,111,127,180],[94,123,130,180,252,253],[92,93,123,127,180],[131,180,251],[92,127,132,180,250],[180,263,264,265,266,267,268],[123,180,263,264],[127,180,264],[127,132,180,250,252,264,266],[91,180,264],[91,123,180],[180,254],[180,256,259],[180,254,255,256,258],[180,254,255,256,257,259],[180,255],[134,151,152,160,179,180,254,262,269],[254],[254,256,259],[254,256],[255]],"referencedMap":[[261,1],[262,2],[271,1],[134,3],[135,3],[137,4],[138,5],[139,6],[140,7],[141,8],[142,9],[143,10],[144,11],[145,12],[146,13],[147,13],[149,14],[148,15],[150,14],[151,16],[152,17],[136,18],[186,1],[153,19],[154,20],[155,21],[187,22],[156,23],[157,24],[158,25],[159,26],[160,27],[161,28],[162,29],[163,30],[164,31],[165,32],[166,32],[167,33],[168,34],[170,35],[169,36],[171,37],[172,38],[173,1],[174,39],[175,40],[176,41],[177,42],[178,43],[179,44],[180,45],[181,46],[182,47],[183,48],[184,49],[185,50],[88,51],[45,1],[47,52],[46,53],[51,54],[86,55],[83,56],[85,57],[48,56],[49,58],[53,58],[52,59],[50,60],[84,61],[82,56],[87,62],[80,1],[81,1],[54,63],[59,56],[61,56],[56,56],[57,63],[63,56],[64,64],[55,56],[60,56],[62,56],[58,56],[78,65],[77,56],[79,66],[73,56],[75,56],[74,56],[70,56],[76,67],[71,56],[72,68],[65,56],[66,56],[67,56],[68,56],[69,56],[108,1],[109,69],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[44,1],[202,70],[194,71],[199,72],[192,1],[195,73],[193,74],[191,1],[201,75],[197,76],[190,1],[198,77],[196,78],[200,79],[244,80],[245,81],[189,1],[226,82],[225,83],[203,84],[213,85],[208,85],[207,86],[224,87],[210,85],[222,85],[217,86],[209,85],[204,85],[221,85],[220,85],[216,85],[218,88],[223,89],[212,86],[211,85],[214,85],[215,86],[205,85],[219,85],[206,86],[246,90],[247,91],[132,1],[188,1],[248,92],[230,93],[228,93],[238,93],[233,93],[237,93],[236,93],[234,93],[241,93],[240,94],[227,93],[231,93],[242,95],[232,93],[239,96],[235,93],[229,93],[243,1],[249,97],[250,98],[133,1],[128,99],[129,100],[130,101],[90,102],[103,103],[104,104],[105,104],[106,104],[107,105],[113,106],[95,107],[102,108],[96,104],[97,109],[98,1],[99,104],[100,109],[101,109],[123,110],[114,109],[115,1],[116,109],[91,99],[117,109],[118,1],[92,111],[119,112],[120,104],[121,104],[127,113],[122,114],[124,1],[126,115],[125,116],[253,117],[112,118],[111,117],[110,109],[254,119],[94,120],[93,104],[89,1],[252,121],[131,1],[251,122],[263,102],[269,123],[265,124],[266,125],[267,126],[268,127],[264,128],[255,129],[260,130],[256,129],[259,131],[258,132],[257,133],[270,134]],"exportedModulesMap":[[261,1],[262,2],[271,1],[134,3],[135,3],[137,4],[138,5],[139,6],[140,7],[141,8],[142,9],[143,10],[144,11],[145,12],[146,13],[147,13],[149,14],[148,15],[150,14],[151,16],[152,17],[136,18],[186,1],[153,19],[154,20],[155,21],[187,22],[156,23],[157,24],[158,25],[159,26],[160,27],[161,28],[162,29],[163,30],[164,31],[165,32],[166,32],[167,33],[168,34],[170,35],[169,36],[171,37],[172,38],[173,1],[174,39],[175,40],[176,41],[177,42],[178,43],[179,44],[180,45],[181,46],[182,47],[183,48],[184,49],[185,50],[88,51],[45,1],[47,52],[46,53],[51,54],[86,55],[83,56],[85,57],[48,56],[49,58],[53,58],[52,59],[50,60],[84,61],[82,56],[87,62],[80,1],[81,1],[54,63],[59,56],[61,56],[56,56],[57,63],[63,56],[64,64],[55,56],[60,56],[62,56],[58,56],[78,65],[77,56],[79,66],[73,56],[75,56],[74,56],[70,56],[76,67],[71,56],[72,68],[65,56],[66,56],[67,56],[68,56],[69,56],[108,1],[109,69],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[44,1],[202,70],[194,71],[199,72],[192,1],[195,73],[193,74],[191,1],[201,75],[197,76],[190,1],[198,77],[196,78],[200,79],[244,80],[245,81],[189,1],[226,82],[225,83],[203,84],[213,85],[208,85],[207,86],[224,87],[210,85],[222,85],[217,86],[209,85],[204,85],[221,85],[220,85],[216,85],[218,88],[223,89],[212,86],[211,85],[214,85],[215,86],[205,85],[219,85],[206,86],[246,90],[247,91],[132,1],[188,1],[248,92],[230,93],[228,93],[238,93],[233,93],[237,93],[236,93],[234,93],[241,93],[240,94],[227,93],[231,93],[242,95],[232,93],[239,96],[235,93],[229,93],[243,1],[249,97],[250,98],[133,1],[128,99],[129,100],[130,101],[90,102],[103,103],[104,104],[105,104],[106,104],[107,105],[113,106],[95,107],[102,108],[96,104],[97,109],[98,1],[99,104],[100,109],[101,109],[123,110],[114,109],[115,1],[116,109],[91,99],[117,109],[118,1],[92,111],[119,112],[120,104],[121,104],[127,113],[122,114],[124,1],[126,115],[125,116],[253,117],[112,118],[111,117],[110,109],[254,119],[94,120],[93,104],[89,1],[252,121],[131,1],[251,122],[263,102],[269,123],[265,124],[266,125],[267,126],[268,127],[264,128],[255,135],[260,136],[256,135],[259,137],[258,137],[257,138]],"semanticDiagnosticsPerFile":[261,262,271,134,135,137,138,139,140,141,142,143,144,145,146,147,149,148,150,151,152,136,186,153,154,155,187,156,157,158,159,160,161,162,163,164,165,166,167,168,170,169,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,88,45,47,46,51,86,83,85,48,49,53,52,50,84,82,87,80,81,54,59,61,56,57,63,64,55,60,62,58,78,77,79,73,75,74,70,76,71,72,65,66,67,68,69,108,109,42,43,9,8,2,10,11,12,13,14,15,16,17,3,4,21,18,19,20,22,23,24,5,25,26,27,28,6,32,29,30,31,33,7,34,39,40,35,36,37,38,1,41,44,202,194,199,192,195,193,191,201,197,190,198,196,200,244,245,189,226,225,203,213,208,207,224,210,222,217,209,204,221,220,216,218,223,212,211,214,215,205,219,206,246,247,132,188,248,230,228,238,233,237,236,234,241,240,227,231,242,232,239,235,229,243,249,250,133,128,129,130,90,103,104,105,106,107,113,95,102,96,97,98,99,100,101,123,114,115,116,91,117,118,92,119,120,121,127,122,124,126,125,253,112,111,110,254,94,93,89,252,131,251,263,269,265,266,267,268,264,255,260,256,259,258,257,270],"latestChangedDtsFile":"../dist/test/scenarios.test.d.ts"},"version":"5.1.5"}
1
+ {"program":{"fileNames":["../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es5.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2016.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.decorators.d.ts","../../../common/temp/node_modules/.pnpm/typescript@5.1.5/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../common/temp/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/codegen/code.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/codegen/scope.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/codegen/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/rules.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/util.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/validate/subschema.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/errors.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/validate/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/validate/datatype.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/additionalitems.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/propertynames.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/additionalproperties.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/not.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/anyof.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/oneof.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/if.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/applicator/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/limitnumber.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/multipleof.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/required.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/uniqueitems.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/const.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/enum.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/format/format.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedproperties.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/unevaluated/unevaluateditems.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/validation/dependentrequired.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/vocabularies/errors.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/types/json-schema.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/types/jtd-schema.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/runtime/validation_error.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/ref_error.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/core.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/resolve.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/compile/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/types/index.d.ts","../../../common/temp/node_modules/.pnpm/ajv@8.12.0/node_modules/ajv/dist/ajv.d.ts","../../compiler/dist/src/manifest.d.ts","../../compiler/dist/src/config/types.d.ts","../../compiler/dist/src/core/options.d.ts","../../compiler/dist/src/core/program.d.ts","../../compiler/dist/src/lib/service.d.ts","../../compiler/dist/src/lib/decorators.d.ts","../../compiler/dist/src/core/helpers/discriminator-utils.d.ts","../../compiler/dist/src/core/helpers/location-context.d.ts","../../compiler/dist/src/core/helpers/operation-utils.d.ts","../../compiler/dist/src/core/helpers/path-interpolation.d.ts","../../compiler/dist/src/core/helpers/projected-names-utils.d.ts","../../compiler/dist/src/core/helpers/type-name-utils.d.ts","../../compiler/dist/src/core/helpers/usage-resolver.d.ts","../../compiler/dist/src/core/helpers/index.d.ts","../../compiler/dist/src/core/checker.d.ts","../../compiler/dist/src/core/decorator-utils.d.ts","../../compiler/dist/src/core/deprecation.d.ts","../../compiler/dist/src/core/diagnostics.d.ts","../../compiler/dist/src/core/emitter-utils.d.ts","../../../common/temp/node_modules/.pnpm/prettier@3.0.1/node_modules/prettier/doc.d.ts","../../../common/temp/node_modules/.pnpm/prettier@3.0.1/node_modules/prettier/index.d.ts","../../compiler/dist/src/formatter/types.d.ts","../../compiler/dist/src/formatter/print/types.d.ts","../../compiler/dist/src/formatter/print/printer.d.ts","../../compiler/dist/src/core/formatter.d.ts","../../compiler/dist/src/core/library.d.ts","../../compiler/dist/src/core/module-resolver.d.ts","../../compiler/dist/src/core/node-host.d.ts","../../compiler/dist/src/core/parser.d.ts","../../compiler/dist/src/core/path-utils.d.ts","../../compiler/dist/src/core/scanner.d.ts","../../compiler/dist/src/core/semantic-walker.d.ts","../../compiler/dist/src/core/type-utils.d.ts","../../compiler/dist/src/core/util.d.ts","../../compiler/dist/src/core/index.d.ts","../../compiler/dist/src/emitter-framework/placeholder.d.ts","../../compiler/dist/src/emitter-framework/types.d.ts","../../compiler/dist/src/emitter-framework/type-emitter.d.ts","../../compiler/dist/src/core/types.d.ts","../../compiler/dist/src/config/config-loader.d.ts","../../compiler/dist/src/config/config-to-options.d.ts","../../compiler/dist/src/config/index.d.ts","../../compiler/dist/src/server/language-config.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-textdocument@1.0.1/node_modules/vscode-languageserver-textdocument/lib/umd/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/typings/thenable.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/assert.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/assert/strict.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/globals.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/async_hooks.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/buffer.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/child_process.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/cluster.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/console.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/constants.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/crypto.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dgram.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/diagnostics_channel.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dns.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dns/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/domain.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/dom-events.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/events.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/fs.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/fs/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/http.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/http2.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/https.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/inspector.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/module.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/net.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/os.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/path.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/perf_hooks.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/process.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/punycode.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/querystring.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/readline.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/readline/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/repl.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream/consumers.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/stream/web.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/string_decoder.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/test.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/timers.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/timers/promises.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/tls.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/trace_events.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/tty.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/url.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/util.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/v8.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/vm.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/wasi.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/worker_threads.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/zlib.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/globals.global.d.ts","../../../common/temp/node_modules/.pnpm/@types+node@18.11.9/node_modules/@types/node/index.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-types@3.17.3/node_modules/vscode-languageserver-types/lib/umd/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/typings/thenable.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messages.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/linkedmap.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/events.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/ral.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messagereader.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messagewriter.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/connection.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/sharedarraycancellation.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/messagebuffer.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/common/api.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/messages.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.typedefinition.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspacefolder.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorprovider.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.callhierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.semantictokens.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.showdocument.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkededitingrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileoperations.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.typehierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlinevalue.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayhint.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/protocol.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/connection.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/common/api.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/progress.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/configuration.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/workspacefolder.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/callhierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/semantictokens.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/showdocument.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/fileoperations.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/linkededitingrange.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/typehierarchy.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/inlinevalue.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/inlayhint.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/diagnostic.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/textdocuments.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/notebook.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/moniker.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/server.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/node/files.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/lib/node/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-jsonrpc@8.1.0/node_modules/vscode-jsonrpc/node.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/lib/node/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver-protocol@3.17.3/node_modules/vscode-languageserver-protocol/node.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/common/api.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/lib/node/main.d.ts","../../../common/temp/node_modules/.pnpm/vscode-languageserver@8.1.0/node_modules/vscode-languageserver/node.d.ts","../../compiler/dist/src/server/serverlib.d.ts","../../compiler/dist/src/server/index.d.ts","../../compiler/dist/src/formatter/index.d.ts","../../compiler/dist/src/index.d.ts","../src/ast.ts","../src/lib.ts","../src/write.ts","../src/transform/index.ts","../src/proto.ts","../src/index.ts","../../../common/temp/node_modules/.pnpm/@types+braces@3.0.1/node_modules/@types/braces/index.d.ts","../../../common/temp/node_modules/.pnpm/@types+micromatch@4.0.2/node_modules/@types/micromatch/index.d.ts","../../compiler/dist/src/testing/expect.d.ts","../../compiler/dist/src/testing/types.d.ts","../../compiler/dist/src/testing/rule-tester.d.ts","../../compiler/dist/src/testing/test-host.d.ts","../../compiler/dist/src/testing/test-server-host.d.ts","../../compiler/dist/src/testing/test-utils.d.ts","../../compiler/dist/src/testing/index.d.ts","../test/scenarios.test.ts","../../../common/temp/node_modules/.pnpm/@types+mocha@10.0.1/node_modules/@types/mocha/index.d.ts"],"fileInfos":[{"version":"f59215c5f1d886b05395ee7aca73e0ac69ddfad2843aa88530e797879d511bad","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","impliedFormat":1},{"version":"27147504487dc1159369da4f4da8a26406364624fa9bc3db632f7d94a5bae2c3","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"9d9885c728913c1d16e0d2831b40341d6ad9a0ceecaabc55209b306ad9c736a5","affectsGlobalScope":true,"impliedFormat":1},{"version":"17bea081b9c0541f39dd1ae9bc8c78bdd561879a682e60e2f25f688c0ecab248","affectsGlobalScope":true,"impliedFormat":1},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab22100fdd0d24cfc2cc59d0a00fc8cf449830d9c4030dc54390a46bd562e929","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"36ae84ccc0633f7c0787bc6108386c8b773e95d3b052d9464a99cd9b8795fbec","affectsGlobalScope":true,"impliedFormat":1},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true,"impliedFormat":1},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true,"impliedFormat":1},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true,"impliedFormat":1},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true,"impliedFormat":1},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true,"impliedFormat":1},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true,"impliedFormat":1},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true,"impliedFormat":1},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true,"impliedFormat":1},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true,"impliedFormat":1},{"version":"f06948deb2a51aae25184561c9640fb66afeddb34531a9212d011792b1d19e0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true,"impliedFormat":1},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true,"impliedFormat":1},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true,"impliedFormat":1},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true,"impliedFormat":1},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true,"impliedFormat":1},{"version":"189c0703923150aa30673fa3de411346d727cc44a11c75d05d7cf9ef095daa22","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"9f3c5498245c38c9016a369795ec5ef1768d09db63643c8dba9656e5ab294825","impliedFormat":1},{"version":"2d225e7bda2871c066a7079c88174340950fb604f624f2586d3ea27bb9e5f4ff","impliedFormat":1},{"version":"6a785f84e63234035e511817dd48ada756d984dd8f9344e56eb8b2bdcd8fd001","impliedFormat":1},{"version":"c1422d016f7df2ccd3594c06f2923199acd09898f2c42f50ea8159f1f856f618","impliedFormat":1},{"version":"d48084248e3fc241d87852210cabf78f2aed6ce3ea3e2bdaf070e99531c71de2","impliedFormat":1},{"version":"0eb6152d37c84d6119295493dfcc20c331c6fda1304a513d159cdaa599dcb78b","impliedFormat":1},{"version":"237df26f8c326ca00cd9d2deb40214a079749062156386b6d75bdcecc6988a6b","impliedFormat":1},{"version":"cd44995ee13d5d23df17a10213fed7b483fabfd5ea08f267ab52c07ce0b6b4da","impliedFormat":1},{"version":"58ce1486f851942bd2d3056b399079bc9cb978ec933fe9833ea417e33eab676e","impliedFormat":1},{"version":"7557d4d7f19f94341f4413575a3453ba7f6039c9591015bcf4282a8e75414043","impliedFormat":1},{"version":"a3b2cc16f3ce2d882eca44e1066f57a24751545f2a5e4a153d4de31b4cac9bb5","impliedFormat":1},{"version":"ac2b3b377d3068bfb6e1cb8889c99098f2c875955e2325315991882a74d92cc8","impliedFormat":1},{"version":"8deb39d89095469957f73bd194d11f01d9894b8c1f1e27fbf3f6e8122576b336","impliedFormat":1},{"version":"a38a9c41f433b608a0d37e645a31eecf7233ef3d3fffeb626988d3219f80e32f","impliedFormat":1},{"version":"8e1428dcba6a984489863935049893631170a37f9584c0479f06e1a5b1f04332","impliedFormat":1},{"version":"1fce9ecb87a2d3898941c60df617e52e50fb0c03c9b7b2ba8381972448327285","impliedFormat":1},{"version":"5ef0597b8238443908b2c4bf69149ed3894ac0ddd0515ac583d38c7595b151f1","impliedFormat":1},{"version":"ac52b775a80badff5f4ac329c5725a26bd5aaadd57afa7ad9e98b4844767312a","impliedFormat":1},{"version":"6ae5b4a63010c82bf2522b4ecfc29ffe6a8b0c5eea6b2b35120077e9ac54d7a1","impliedFormat":1},{"version":"dd7109c49f416f218915921d44f0f28975df78e04e437c62e1e1eb3be5e18a35","impliedFormat":1},{"version":"eee181112e420b345fc78422a6cc32385ede3d27e2eaf8b8c4ad8b2c29e3e52e","impliedFormat":1},{"version":"25fbe57c8ee3079e2201fe580578fab4f3a78881c98865b7c96233af00bf9624","impliedFormat":1},{"version":"62cc8477858487b4c4de7d7ae5e745a8ce0015c1592f398b63ee05d6e64ca295","impliedFormat":1},{"version":"cc2a9ec3cb10e4c0b8738b02c31798fad312d21ef20b6a2f5be1d077e9f5409d","impliedFormat":1},{"version":"4b4fadcda7d34034737598c07e2dca5d7e1e633cb3ba8dd4d2e6a7782b30b296","impliedFormat":1},{"version":"360fdc8829a51c5428636f1f83e7db36fef6c5a15ed4411b582d00a1c2bd6e97","impliedFormat":1},{"version":"1cf0d15e6ab1ecabbf329b906ae8543e6b8955133b7f6655f04d433e3a0597ab","impliedFormat":1},{"version":"7c9f98fe812643141502b30fb2b5ec56d16aaf94f98580276ae37b7924dd44a4","impliedFormat":1},{"version":"b3547893f24f59d0a644c52f55901b15a3fa1a115bc5ea9a582911469b9348b7","impliedFormat":1},{"version":"596e5b88b6ca8399076afcc22af6e6e0c4700c7cd1f420a78d637c3fb44a885e","impliedFormat":1},{"version":"adddf736e08132c7059ee572b128fdacb1c2650ace80d0f582e93d097ed4fbaf","impliedFormat":1},{"version":"d4cad9dc13e9c5348637170ddd5d95f7ed5fdfc856ddca40234fa55518bc99a6","impliedFormat":1},{"version":"d70675ba7ba7d02e52b7070a369957a70827e4b2bca2c1680c38a832e87b61fd","impliedFormat":1},{"version":"3be71f4ce8988a01e2f5368bdd58e1d60236baf511e4510ee9291c7b3729a27e","impliedFormat":1},{"version":"423d2ccc38e369a7527988d682fafc40267bcd6688a7473e59c5eea20a29b64f","impliedFormat":1},{"version":"2f9fde0868ed030277c678b435f63fcf03d27c04301299580a4017963cc04ce6","impliedFormat":1},{"version":"6b6ed4aa017eb6867cef27257379cfe3e16caf628aceae3f0163dbafcaf891ff","impliedFormat":1},{"version":"25f1159094dc0bf3a71313a74e0885426af21c5d6564a254004f2cadf9c5b052","impliedFormat":1},{"version":"cde493e09daad4bb29922fe633f760be9f0e8e2f39cdca999cce3b8690b5e13a","impliedFormat":1},{"version":"3d7f9eb12aface876f7b535cc89dcd416daf77f0b3573333f16ec0a70bcf902a","impliedFormat":1},{"version":"b83139ae818dd20f365118f9999335ca4cd84ae518348619adc5728e7e0372d5","impliedFormat":1},{"version":"c3d608cc3e97d22d1d9589262865d5d786c3ee7b0a2ae9716be08634b79b9a8c","impliedFormat":1},{"version":"62d26d8ba4fa15ab425c1b57a050ed76c5b0ecbffaa53f182110aa3a02405a07","impliedFormat":1},{"version":"87a4f46dabe0e415e3d38633e4b2295e9a2673ae841886c90a1ff3e66defb367","impliedFormat":1},{"version":"1a81526753a454468403c6473b7504c297bd4ee9aa8557f4ebf4092db7712fde","impliedFormat":1},{"version":"2546eb0653f8b3ff203afb5aab17de16b98501295e328e4b02fbe99d003da10f","impliedFormat":99},{"version":"3fb3152619d4b20bdb5358a6e26539e3e90e064a4e3e823996cbd7e0c90c2411","impliedFormat":99},{"version":"f06ebeaf8509d033850fd180832283b8620d7fca0bf6b57bb18dd3d5d0764046","impliedFormat":99},{"version":"e0b6a14f649c793c4e743922de218607cc47a488076ab74deb3bbfb991f3cece","impliedFormat":99},{"version":"c8f0839a91b1abf355f73f451ce815d0482a18c5d8c204dd52102f9a0880cf7c","impliedFormat":99},{"version":"7b93b0f3a9dfbb001834ee1090d9d9049e55b5c3f9b71e173349b95b12d4b96b","impliedFormat":99},{"version":"f42b4b5a3b0d113a0bf061a36826f10f1b78a00683105251593768f581cbf4f6","impliedFormat":99},{"version":"b76fd169c14e32e3c45d67396b954f6c5026271b3b88300fae1194a014d9fcc6","impliedFormat":99},{"version":"5077b3ba3766f16b30e325ad7d720330c08ef84fc2f6a449826adb006bc581ed","impliedFormat":99},{"version":"4ac79fd5d2a7f056ba1eda188700198f20d32bcab0db09f311d5d5f5d746c2ca","impliedFormat":99},{"version":"7e3b748c0abc41c3837d38f6f7ed99ed1881c45cc8623e19b2e31f3876d4a009","impliedFormat":99},{"version":"e2b49314d39be607b1727c6e2cd31e402d1e4133ff2013c378d7f32691a448d8","impliedFormat":99},{"version":"ad10612fdbbc90fd9238b854ee39ad38a118cee8ac8979b1194895167168ceb3","impliedFormat":99},{"version":"40e17508dec8b796bb38425d5b92d8a0a60e563c40a2fb508f6642cf03ff0a94","impliedFormat":99},{"version":"85a80593c9eec9ce81ec81da010b95e3620001c8044e88463aee2f71b3b12f57","impliedFormat":99},{"version":"4922761817b7182fc7bb559f560c7a548e2be46b489882cb3b08b33a04bd9ffb","impliedFormat":99},{"version":"8a45bc9106accd8ba469edae54b3e6a44f4a88d0deb68a76348c0ba7608eb1b3","impliedFormat":99},{"version":"1067d75a280d5ca977a2edcbba9912957474a578049211020f3d55ae0a53d640","impliedFormat":99},{"version":"4dce6f7b11c297eefb274cd160bcb4f48b141280e36d7fdf6478d9e5fcb8cfb6","impliedFormat":99},{"version":"f0c4df2546dafc3b77d9c428453495f694171c36b48fb098e0e333f47ab1339f","impliedFormat":1},{"version":"5d7b6cc4df7683915a6fb125cb2fd4364245e2dad4bdd93298e250b2bf9c9b7d","impliedFormat":1},{"version":"3763629e8b771f09dbfbc1e52af4cc386a792fd8398f58975a816d912db8fbea","impliedFormat":99},{"version":"2e0df3f8e22c6e49647df5df68761327b45d4a26378225dfa683b88307abb5fb","impliedFormat":99},{"version":"3f1894708b6fc630d91096da4e822a0d15bdbf0973e22c3abbe5d322851c8458","impliedFormat":99},{"version":"1db92102d002cb7aea0b1802575641bf70cc5532bfb44857011704cb74df2255","impliedFormat":99},{"version":"d8d1b7a2e88cbd5762a4279bef88ef69b46f56f50842098a6cb42c53862cec61","impliedFormat":99},{"version":"fa0dc544266dab4537e0cfca9bccbfbf4531b2f020c4c7a4957091aac8c57552","impliedFormat":99},{"version":"6b1c7e3ea61264bc2891ebe73a507531cf2949ab42b32d794d25a0abe375b1fb","impliedFormat":99},{"version":"410e1f079a9ecb500a76dc430829553c6b097cc8264c69552199faa3496803a6","impliedFormat":99},{"version":"123d94390345afefbdd612f216d40db16c3710338edcb73b5f4be0a4ad539aa4","impliedFormat":99},{"version":"c027921e8a0813a8315d9980b633cc87741017e9d79d49053cd27e50a7767317","impliedFormat":99},{"version":"bcee158d3f92c17e50607ebb8d15bd5eb19cdee3895d04b706d12c24c12062c7","impliedFormat":99},{"version":"ea52187a590f18ca2e58e8add27d5700fc44d5bcb2361e30beb4e032759ebe6d","impliedFormat":99},{"version":"2707de79f5d7a78771f67d892ca0b0b97eed1a55ea393466eab3a532db11e30e","impliedFormat":99},{"version":"484e66997f7d84372ffc0ac351803b7dd5b31297a706c54c6136a194b5eef367","impliedFormat":99},{"version":"da7ef8056b01283adea3ca6de1dabfd428b439d6050a75602f1e30f48eb6efdf","impliedFormat":99},{"version":"3474c15231a7d225f08c82e5fa7f3721aacde04bcdc6c20ad5a677cad11566f4","impliedFormat":99},{"version":"b63f3975baa83cfe0e716da4ef55492a0ddc1395903b7af5b27f6a23d65e2909","impliedFormat":99},{"version":"a0849b023df3758faff4ff2f67d7e2848a5faf4fe33c291840db7b71d08700c9","impliedFormat":99},{"version":"74dd1838df4843d15db9943248f83123d893a9fe898219aa830cd5f2c8034be3","impliedFormat":99},{"version":"cb0f7b77bae55596f910eede4dc67e3a62bda8b6246a049d52f1816ace5e5fe5","impliedFormat":99},{"version":"ad3d8bb2ac79fbda7222abb647e260914f6e6f2ed988f7db8acc62a44d78f448","impliedFormat":99},{"version":"dbb312aedcf0ce06467366f096ec6591b4c0f0d956137dd49c35a9b20bb90be7","impliedFormat":99},{"version":"21f9731fc2e8e009fdaef137a04546c27877314c748c6702fe9329518fb16538","impliedFormat":1},{"version":"65b9243c80068ec9696b1fbdd23c9acf80d51df02f97b2d7a0514312b0a9fe7d","affectsGlobalScope":true,"impliedFormat":1},{"version":"7e771891adaa85b690266bc37bd6eb43bc57eecc4b54693ead36467e7369952a","impliedFormat":1},{"version":"a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a","impliedFormat":1},{"version":"ca72190df0eb9b09d4b600821c8c7b6c9747b75a1c700c4d57dc0bb72abc074c","affectsGlobalScope":true,"impliedFormat":1},{"version":"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9","impliedFormat":1},{"version":"bb65c6267c5d6676be61acbf6604cf0a4555ac4b505df58ac15c831fcbff4e3e","affectsGlobalScope":true,"impliedFormat":1},{"version":"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","impliedFormat":1},{"version":"5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713","impliedFormat":1},{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true,"impliedFormat":1},{"version":"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","impliedFormat":1},{"version":"afcc1c426b76db7ec80e563d4fb0ba9e6bcc6e63c2d7e9342e649dc56d26347f","impliedFormat":1},{"version":"bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","impliedFormat":1},{"version":"75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","impliedFormat":1},{"version":"f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","impliedFormat":1},{"version":"14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","impliedFormat":1},{"version":"5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea","impliedFormat":1},{"version":"6b526a5ec4a401ca7c26cfe6a48e641d8f30af76673bad3b06a1b4504594a960","affectsGlobalScope":true,"impliedFormat":1},{"version":"816ad2e607a96de5bcac7d437f843f5afd8957f1fa5eefa6bba8e4ed7ca8fd84","affectsGlobalScope":true,"impliedFormat":1},{"version":"cec36af22f514322f870e81d30675c78df82ae8bf4863f5fd4e4424c040c678d","impliedFormat":1},{"version":"d903fafe96674bc0b2ac38a5be4a8fc07b14c2548d1cdb165a80ea24c44c0c54","impliedFormat":1},{"version":"b01a80007e448d035a16c74b5c95a5405b2e81b12fabcf18b75aa9eb9ef28990","impliedFormat":1},{"version":"04eb6578a588d6a46f50299b55f30e3a04ef27d0c5a46c57d8fcc211cd530faa","impliedFormat":1},{"version":"dbe5aa5a5dd8bd1c6a8d11b1310c3f0cdabaacc78a37b394a8c7b14faeb5fb84","impliedFormat":1},{"version":"2c828a5405191d006115ab34e191b8474bc6c86ffdc401d1a9864b1b6e088a58","impliedFormat":1},{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true,"impliedFormat":1},{"version":"d076fede3cb042e7b13fc29442aaa03a57806bc51e2b26a67a01fbc66a7c0c12","impliedFormat":1},{"version":"7c013aa892414a7fdcfd861ae524a668eaa3ede8c7c0acafaf611948122c8d93","impliedFormat":1},{"version":"b0973c3cbcdc59b37bf477731d468696ecaf442593ec51bab497a613a580fe30","impliedFormat":1},{"version":"4989e92ba5b69b182d2caaea6295af52b7dc73a4f7a2e336a676722884e7139d","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3624aed92dab6da8484280d3cb3e2f4130ec3f4ef3f8201c95144ae9e898bb6","affectsGlobalScope":true,"impliedFormat":1},{"version":"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","impliedFormat":1},{"version":"210d54cd652ec0fec8c8916e4af59bb341065576ecda039842f9ffb2e908507c","impliedFormat":1},{"version":"36b03690b628eab08703d63f04eaa89c5df202e5f1edf3989f13ad389cd2c091","impliedFormat":1},{"version":"0effadd232a20498b11308058e334d3339cc5bf8c4c858393e38d9d4c0013dcf","impliedFormat":1},{"version":"25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","impliedFormat":1},{"version":"fd93cee2621ff42dabe57b7be402783fd1aa69ece755bcba1e0290547ae60513","impliedFormat":1},{"version":"1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff","impliedFormat":1},{"version":"69ee23dd0d215b09907ad30d23f88b7790c93329d1faf31d7835552a10cf7cbf","impliedFormat":1},{"version":"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","impliedFormat":1},{"version":"23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","impliedFormat":1},{"version":"213fc4f2b172d8beb74b77d7c1b41488d67348066d185e4263470cbb010cd6e8","impliedFormat":1},{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true,"impliedFormat":1},{"version":"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","impliedFormat":1},{"version":"4c8525f256873c7ba3135338c647eaf0ca7115a1a2805ae2d0056629461186ce","impliedFormat":1},{"version":"3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","impliedFormat":1},{"version":"5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2","impliedFormat":1},{"version":"f0900cd5d00fe1263ff41201fb8073dbeb984397e4af3b8002a5c207a30bdc33","affectsGlobalScope":true,"impliedFormat":1},{"version":"f7db71191aa7aac5d6bc927ed6e7075c2763d22c7238227ec0c63c8cf5cb6a8b","affectsGlobalScope":true,"impliedFormat":1},{"version":"06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","impliedFormat":1},{"version":"ec4bd1b200670fb567920db572d6701ed42a9641d09c4ff6869768c8f81b404c","impliedFormat":1},{"version":"e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa","impliedFormat":1},{"version":"da26af7362f53d122283bc69fed862b9a9fe27e01bc6a69d1d682e0e5a4df3e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e","impliedFormat":1},{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true,"impliedFormat":1},{"version":"e9a8d4274033cb520ee12d6f68d161ba2b9128b87399645d3916b71187032836","impliedFormat":1},{"version":"f0142b712ca22ad863476d9f3ae74e8b2766f3507a6fb5018882074f65ed0195","impliedFormat":1},{"version":"65b9243c80068ec9696b1fbdd23c9acf80d51df02f97b2d7a0514312b0a9fe7d","affectsGlobalScope":true,"impliedFormat":1},{"version":"0def2c37cadfd7bf074fe9566cb83518f24d67193c79741b2d83ec290b945725","impliedFormat":1},{"version":"049e3511439f11e1285bec4647ab8aac53e0c06951b93ba507565dbde851ba31","impliedFormat":1},{"version":"f0745ab78e18a2befaf1d9951481973318722c4e2f33e859239f55fa999ff2b1","impliedFormat":1},{"version":"886e183dd0199e7de45d6308ac3e2185dac6f83283d1b8200ea62cf5c43966a1","impliedFormat":1},{"version":"392dd7b1117b588cba36c04909efd24b0458980506e8e8c1966114f8989058e2","impliedFormat":1},{"version":"ec9d55888e353f9b5cdda761308dffc7eeb6aa0b7b25d328c64d3776a1cf2a7e","impliedFormat":1},{"version":"1f8fedf144a967560be9e58fa32de75e4ca379c3549710d027a07be6a9414073","impliedFormat":1},{"version":"3ca7b2e8012b9a6be09fafd62f8f3937388b9e1600a59c98887d2b11f6d01b43","impliedFormat":1},{"version":"b138b3f30708386023a7dc9981bb867808e5ff3383429ac7f69b7bfd0dcc5bd5","impliedFormat":1},{"version":"a42c8992e2cf55a4a2d661fac251bc803fe119dad49327477d439268e42953d8","impliedFormat":1},{"version":"13ec544ab0a3a7ff96afac1016f55b264c812428e37d595dc33b688296435469","impliedFormat":1},{"version":"4962729121c2cb97a4481cdb06dfc720a79a3bc2fc9330ff2bcf604cfc541177","impliedFormat":1},{"version":"bc641da6705e45737a6c85bf6c7460e9298e5f5b1021abf035cb760d313cda1a","impliedFormat":1},{"version":"4284412700d89f927c8f5092a8e8c2a20a596349f2819148952b07f2cba9177a","impliedFormat":1},{"version":"4d08d58c94c1462506783c35009ddaeb70e54632310e384aa572ed7667333c8f","impliedFormat":1},{"version":"067f06a3d8abb66e4db6c22e34a076808b4c39418e45690f1abf37bcd4725f1c","impliedFormat":1},{"version":"05f6b2b3bef27dfc0e2464197510d08f275f2464363b441def7f309cbf42f51d","impliedFormat":1},{"version":"15055a0f3fe6c7e9d98bf9de36bdc9102ab324debbe2d4170ffe557115a199fc","impliedFormat":1},{"version":"33e11cee43184a95afe9a450f7dde6bd2b6a03fc9643f898268e8594c266554a","impliedFormat":1},{"version":"c13aaf7191fbccaf0f4e9e520c720b870c6339080eb1699439a392589fc85a96","impliedFormat":1},{"version":"41af0cbfe30738008b3765c30059580972362b70b8dcafd791908923e907c3a6","impliedFormat":1},{"version":"b5d49f459d2efc77cff4ab27d929aa67d0c9121bc20763d84942c7fca2cc7b8f","impliedFormat":1},{"version":"96c0c4b30165eaedb3ade3b4e9f491113a1816c448d67fff542b2793bf565b04","impliedFormat":1},{"version":"29a456c61c3d93e36f5eba4c0ed567d7896a9c08a38b537c3fc192a99d03b348","impliedFormat":1},{"version":"3b67dd4fbeec66a7d2acd2be4f65219d85abd04e6eb9cc96fd862ddf70e02eec","impliedFormat":1},{"version":"0a61f7b50171225629903175e062d3f43225e6eba24eb2e50f88ca05fb441aa6","impliedFormat":1},{"version":"818d9a0841c884447fbd61b934c6743aea1fa6f1c0159ef44ef55b8f02b9120f","impliedFormat":1},{"version":"b5f234cb0cb6ceb839fe2875ada30e62082707eaa7a36bfc4a4df9d287b901c7","impliedFormat":1},{"version":"facdb012edb0931c21556ace5bf7c0194c8389b1248fdbd94d09f793b311517c","impliedFormat":1},{"version":"98528506b6a07d49efdd7a65da416af50bfbfea67fbdca941ba55753e171a3db","impliedFormat":1},{"version":"8370c10834a51543556e92367c7c564723ae83b97199413a8eca6f5d70036cd5","impliedFormat":1},{"version":"8c1036c47d3e04eca9bd5fc5e0cdd219a78e4061a4bb4b55f4a4f0cbc621e66f","impliedFormat":1},{"version":"8db15e1da6050330d9e36bddd03131d5a02d56fac2e919fd8360892616357863","impliedFormat":1},{"version":"44874584b7c30882ea2cb1b9b0df0e198221afee1ee5cc4d04deb4c8a3c6345a","impliedFormat":1},{"version":"09839c769382d4763700d97d6e9ceae5c9ab3c34cf288229d9879b63c7206c60","impliedFormat":1},{"version":"c0c205fec8b10f3ad0e65af65dd20ea7cf633df0964c84305e375ccdc4f5557e","impliedFormat":1},{"version":"37c2423005b2ec6130903de29aec9fcf1680ab1b2336efa0ff828980e92da7e9","impliedFormat":1},{"version":"f1f23acd4a8193453749f69d4432f5f122d6d572b793a8b630dd12fe80b0c3d3","impliedFormat":1},{"version":"7662d6994d28c9ebbe61b88cc35c3d705804351eedbf363df30ea9fe8c4961dc","impliedFormat":1},{"version":"1fb68106bddae35448e5279095461a4b54c4bbb42787cd629f70924b17e9a11e","impliedFormat":1},{"version":"46a9b0122b230cb2fab65999ba92f98a16fd8f1c25efaed47141cbf5056f6928","impliedFormat":1},{"version":"5a9a4741aa510bdee406441f77186c6d2005be78e78c2e0da8201d9991950164","impliedFormat":1},{"version":"351bbf43d585484825ee6c4b4805aac137ffc8e8a3b9812af99945a202db7c02","impliedFormat":1},{"version":"3990ae796cc23fb9829eae206eff1eddded9465504467a4433f2509e18ef1aed","impliedFormat":1},{"version":"b557ea3605e52406e35eeea468cb96f25b1ca906f2055f376597f0b02492d94c","impliedFormat":1},{"version":"f384bb303dbc114af6460e7cb30b766cc92eed33fccb331126b08bb63f15a034","impliedFormat":1},{"version":"8a9bd1cf8c1f75435f83595b43737c135e7f73bde39ba4c9339dc6a31e8bb069","impliedFormat":1},{"version":"8274bfd5de49f9f072be2f39c34e390101a8b69844e55eda36c7df23ba6d03e2","impliedFormat":1},{"version":"f8b482dddda55dd6677d7895a3fef8cd9d067f8c36c63cc7fe93b82a6dd4f10c","impliedFormat":1},{"version":"71d11ad1f05b0b90e95591fa85c1c8043e590d67972dcaba9b50435a0c04d8fa","impliedFormat":1},{"version":"c77c8f4aa3f4b849eda044768882bb102edf211b1c26b04a3c6ad921110f2fa4","impliedFormat":1},{"version":"a980ce9470dc95ac355d7efb729f9cfb0564505eba96da4bbde504299efb833a","impliedFormat":1},{"version":"eed44483a64b3c5a643663f8827c868ef3888965c7f3654e816debd03c621da0","impliedFormat":1},{"version":"a58402dc75738c188a741ccca86ccf898b0af98d305ad075c428171f193a6cd5","impliedFormat":1},{"version":"67d37ef881a81aefe3a0f70f78e3835be950f2359487d3eb61b0a3bb9af172bc","impliedFormat":1},{"version":"9c98df0145d99011af92c397fa787fc39d42cc04019614ab5581febe71fb32e1","impliedFormat":1},{"version":"d789022bf705385490fe89811bc7850225c207f37dd706ada2509eb1d8f31f12","impliedFormat":1},{"version":"9c98df0145d99011af92c397fa787fc39d42cc04019614ab5581febe71fb32e1","impliedFormat":1},{"version":"d29fa1f984b6d5ec55c37e6f65474ea4acaf9ba92d2b1d502ca824abca86b430","impliedFormat":1},{"version":"abd02654e7ae1f70f68ec509b2c3c1e388c0142d169ba37a157f558709efe2a1","impliedFormat":1},{"version":"9c98df0145d99011af92c397fa787fc39d42cc04019614ab5581febe71fb32e1","impliedFormat":1},{"version":"60c41f62f22ba90c530bea27526e5e8329f82533969a2351a4ea80d4d791a625","impliedFormat":99},{"version":"783f6bd2dac30fe59008f6612a829703b6d894163dff9db8f718a78697e6c37a","impliedFormat":99},{"version":"28179ea30b38d6ff478cfa140b14d57a83dc8a06f757bc23e73a30ed47d0ca0f","impliedFormat":99},{"version":"ecc2a9e578fcb45c12a9edb7bb73a6a68dd139d7aeeb98cacec6c0e2de622bd7","impliedFormat":99},{"version":"4d568cfd3390e3991e1f64eac313f151f52735cffbfffe18e535edde6202592f","signature":"bb01dd0a9a0a791ee66ae078dc75de6e84f3274a142ba2e68a04c79e2f6874ac","impliedFormat":99},{"version":"596a2d2f69d8dcaa41f5421023deb93b02ab8483df0574f50bea4d32f20d2cc8","signature":"dead6474bbe8c57a96d8b58887a43799106e44d54abeb4789ee0b710e706858a","impliedFormat":99},{"version":"e389019b28ebad29395c9504f9b6d68b7bc2f9150fa41efd1e6f532feb59f45d","signature":"ac461c690eb5dea614beb412ac3129e18b5d09a564ae05d8023f9742530ab416","impliedFormat":99},{"version":"1bda3c8b916252b2bbbde837f3a5e82238ef07e25367aee95b2220f75ec901ee","signature":"2d9ec481193fe4afdc75403e66fe9808f5b00598f107962bcea03acb6b3752db","impliedFormat":99},{"version":"a66e190ba2c0450b30e162122508f8b86ac3472addef87827b67b8979a35896e","signature":"21a697e79daaec5d9fb2ebccc26a7b0dfbab7b37612ba311819574d60ae35587","impliedFormat":99},{"version":"aa3fafccc72b683f1109b694bdc02dc96a057facb7c1e35564762ec75fd26a41","signature":"281203f037c9182d00d1ccccf800560422d3b7e87c24d61d04901c7ba2a3e7e9","impliedFormat":99},{"version":"40304c033bb6e39f0eb01b106d29523950148dfc3cd547ddb500167871171281","impliedFormat":1},{"version":"1a255ad66d2b50f7b42eca69228b9587878cf06900780ad57a306a933c6eaeb4","impliedFormat":1},{"version":"60728a843215bbfdc0d5149db601ed86acbecbb0eef89a46ee0dc015fd4c3145","impliedFormat":99},{"version":"b4c6177901fb7234cfbeee2f901c46f8c3453995991446d1e31b201f7f57566d","impliedFormat":99},{"version":"6767f06521d4ca56aa288bfc7446171b7bae829dd6263fe38d095c347d0118d0","impliedFormat":99},{"version":"b3ba2d067c491edfbcbdd5fa7a385313307ca01496d8aaf3da46c1fab4236edd","impliedFormat":99},{"version":"40323fd020575c0ca4692d491d931180b1b2a6d52572b2dcd125aef8d70ced18","impliedFormat":99},{"version":"0ac26325149dbc50f6b27e031f0ba20f3901e61ed4b89c0fa95b3e058a81ef6c","impliedFormat":99},{"version":"fb2cf96bb951cbe58e02385f0f757e0ef928b54194c3d69ec0bac8b8a402174c","impliedFormat":99},{"version":"d29542d240eeea3c5160e6c92b7e82fd498d2f509b895a6b5a4e7e13080503ee","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881","impliedFormat":99},{"version":"677646e2620795c98a539fb12fb531f10331c217cef1492132b2518f894fa92d","affectsGlobalScope":true,"impliedFormat":1}],"root":[[255,260],270],"options":{"alwaysStrict":true,"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"experimentalDecorators":true,"module":100,"newLine":1,"noEmitHelpers":false,"noImplicitAny":true,"noImplicitReturns":true,"noImplicitThis":true,"outDir":"../dist","rootDir":"..","sourceMap":true,"strict":true,"stripInternal":true,"target":6,"tsBuildInfoFile":"./tsconfig.tsbuildinfo"},"fileIdsList":[[180],[180,261],[134,180],[137,180],[138,143,171,180],[139,150,151,158,168,179,180],[139,140,150,158,180],[141,180],[142,143,151,159,180],[143,168,176,180],[144,146,150,158,180],[145,180],[146,147,180],[150,180],[148,150,180],[150,151,152,168,179,180],[150,151,152,165,168,171,180],[180,184],[153,158,168,179,180],[150,151,153,154,158,168,176,179,180],[153,155,168,176,179,180],[134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186],[150,156,180],[157,179,180],[146,150,158,168,180],[159,180],[160,180],[137,161,180],[162,178,180,184],[163,180],[164,180],[150,165,166,180],[165,167,180,182],[138,150,168,169,170,171,180],[138,168,170,180],[168,169,180],[171,180],[172,180],[150,174,175,180],[174,175,180],[143,158,168,176,180],[177,180],[158,178,180],[138,153,164,179,180],[143,180],[168,180,181],[180,182],[180,183],[138,143,150,152,161,168,179,180,182,184],[168,180,185],[47,48,52,79,80,82,83,84,86,87,180],[45,46,180],[45,180],[47,87,180],[47,48,84,85,87,180],[87,180],[44,87,88,180],[47,48,86,87,180],[47,48,50,51,86,87,180],[47,48,49,86,87,180],[47,48,52,79,80,81,82,83,86,87,180],[44,47,48,52,84,86,180],[52,87,180],[54,55,56,57,58,59,60,61,62,63,87,180],[77,87,180],[53,64,72,73,74,75,76,78,180],[57,87,180],[65,66,67,68,69,70,71,87,180],[108,180],[180,189,190,191,192,193,194,195,196,197,198,199,200,201],[180,192,193],[180,190,192,193,194,197,198],[180,190,196],[180,192],[180,196],[180,190,193,195,196,202],[180,190,193,195,196],[180,192,195],[180,190,194,199],[139,158,180,184,187,202],[180,244],[180,188,202,203,224,225],[180,202,203],[180,202],[180,188,202,203,224],[180,188,202,203],[180,188,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223],[180,203,224],[180,188,203,224],[180,187,226,245],[180,246],[180,226,227,231,239,240,242],[180,226,242],[180,226,239,242],[180,226,227,228,229,230,231,232,233,234,235,236,237,238,240,241],[180,226],[133,180,187,242,243,247,248],[180,249],[90,127,180],[90,91,127,180],[90,128,129,180],[123,180],[92,102,127,180],[92,127,180],[92,180],[109,112,180],[92,94,127,180],[95,96,97,98,99,100,101,180],[127,180],[89,92,102,103,104,105,106,107,113,114,115,116,117,118,119,120,121,122,127,180],[91,103,127,180],[106,127,180],[88,92,115,125,126,180],[89,106,116,127,180],[123,124,125,180],[123,124,126,180],[109,127,180],[108,109,110,111,127,180],[94,123,130,180,252,253],[92,93,123,127,180],[131,180,251],[92,127,132,180,250],[180,263,264,265,266,267,268],[123,180,263,264],[127,180,264],[127,132,180,250,252,264,266],[91,180,264],[91,123,180],[180,254],[180,256,259],[180,254,255,256,258],[180,254,255,256,257,259],[180,255],[134,151,152,160,179,180,254,256,262,269],[254],[254,256,259],[254,256],[255]],"referencedMap":[[261,1],[262,2],[271,1],[134,3],[135,3],[137,4],[138,5],[139,6],[140,7],[141,8],[142,9],[143,10],[144,11],[145,12],[146,13],[147,13],[149,14],[148,15],[150,14],[151,16],[152,17],[136,18],[186,1],[153,19],[154,20],[155,21],[187,22],[156,23],[157,24],[158,25],[159,26],[160,27],[161,28],[162,29],[163,30],[164,31],[165,32],[166,32],[167,33],[168,34],[170,35],[169,36],[171,37],[172,38],[173,1],[174,39],[175,40],[176,41],[177,42],[178,43],[179,44],[180,45],[181,46],[182,47],[183,48],[184,49],[185,50],[88,51],[45,1],[47,52],[46,53],[51,54],[86,55],[83,56],[85,57],[48,56],[49,58],[53,58],[52,59],[50,60],[84,61],[82,56],[87,62],[80,1],[81,1],[54,63],[59,56],[61,56],[56,56],[57,63],[63,56],[64,64],[55,56],[60,56],[62,56],[58,56],[78,65],[77,56],[79,66],[73,56],[75,56],[74,56],[70,56],[76,67],[71,56],[72,68],[65,56],[66,56],[67,56],[68,56],[69,56],[108,1],[109,69],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[44,1],[202,70],[194,71],[199,72],[192,1],[195,73],[193,74],[191,1],[201,75],[197,76],[190,1],[198,77],[196,78],[200,79],[244,80],[245,81],[189,1],[226,82],[225,83],[203,84],[213,85],[208,85],[207,86],[224,87],[210,85],[222,85],[217,86],[209,85],[204,85],[221,85],[220,85],[216,85],[218,88],[223,89],[212,86],[211,85],[214,85],[215,86],[205,85],[219,85],[206,86],[246,90],[247,91],[132,1],[188,1],[248,92],[230,93],[228,93],[238,93],[233,93],[237,93],[236,93],[234,93],[241,93],[240,94],[227,93],[231,93],[242,95],[232,93],[239,96],[235,93],[229,93],[243,1],[249,97],[250,98],[133,1],[128,99],[129,100],[130,101],[90,102],[103,103],[104,104],[105,104],[106,104],[107,105],[113,106],[95,107],[102,108],[96,104],[97,109],[98,1],[99,104],[100,109],[101,109],[123,110],[114,109],[115,1],[116,109],[91,99],[117,109],[118,1],[92,111],[119,112],[120,104],[121,104],[127,113],[122,114],[124,1],[126,115],[125,116],[253,117],[112,118],[111,117],[110,109],[254,119],[94,120],[93,104],[89,1],[252,121],[131,1],[251,122],[263,102],[269,123],[265,124],[266,125],[267,126],[268,127],[264,128],[255,129],[260,130],[256,129],[259,131],[258,132],[257,133],[270,134]],"exportedModulesMap":[[261,1],[262,2],[271,1],[134,3],[135,3],[137,4],[138,5],[139,6],[140,7],[141,8],[142,9],[143,10],[144,11],[145,12],[146,13],[147,13],[149,14],[148,15],[150,14],[151,16],[152,17],[136,18],[186,1],[153,19],[154,20],[155,21],[187,22],[156,23],[157,24],[158,25],[159,26],[160,27],[161,28],[162,29],[163,30],[164,31],[165,32],[166,32],[167,33],[168,34],[170,35],[169,36],[171,37],[172,38],[173,1],[174,39],[175,40],[176,41],[177,42],[178,43],[179,44],[180,45],[181,46],[182,47],[183,48],[184,49],[185,50],[88,51],[45,1],[47,52],[46,53],[51,54],[86,55],[83,56],[85,57],[48,56],[49,58],[53,58],[52,59],[50,60],[84,61],[82,56],[87,62],[80,1],[81,1],[54,63],[59,56],[61,56],[56,56],[57,63],[63,56],[64,64],[55,56],[60,56],[62,56],[58,56],[78,65],[77,56],[79,66],[73,56],[75,56],[74,56],[70,56],[76,67],[71,56],[72,68],[65,56],[66,56],[67,56],[68,56],[69,56],[108,1],[109,69],[42,1],[43,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[4,1],[21,1],[18,1],[19,1],[20,1],[22,1],[23,1],[24,1],[5,1],[25,1],[26,1],[27,1],[28,1],[6,1],[32,1],[29,1],[30,1],[31,1],[33,1],[7,1],[34,1],[39,1],[40,1],[35,1],[36,1],[37,1],[38,1],[1,1],[41,1],[44,1],[202,70],[194,71],[199,72],[192,1],[195,73],[193,74],[191,1],[201,75],[197,76],[190,1],[198,77],[196,78],[200,79],[244,80],[245,81],[189,1],[226,82],[225,83],[203,84],[213,85],[208,85],[207,86],[224,87],[210,85],[222,85],[217,86],[209,85],[204,85],[221,85],[220,85],[216,85],[218,88],[223,89],[212,86],[211,85],[214,85],[215,86],[205,85],[219,85],[206,86],[246,90],[247,91],[132,1],[188,1],[248,92],[230,93],[228,93],[238,93],[233,93],[237,93],[236,93],[234,93],[241,93],[240,94],[227,93],[231,93],[242,95],[232,93],[239,96],[235,93],[229,93],[243,1],[249,97],[250,98],[133,1],[128,99],[129,100],[130,101],[90,102],[103,103],[104,104],[105,104],[106,104],[107,105],[113,106],[95,107],[102,108],[96,104],[97,109],[98,1],[99,104],[100,109],[101,109],[123,110],[114,109],[115,1],[116,109],[91,99],[117,109],[118,1],[92,111],[119,112],[120,104],[121,104],[127,113],[122,114],[124,1],[126,115],[125,116],[253,117],[112,118],[111,117],[110,109],[254,119],[94,120],[93,104],[89,1],[252,121],[131,1],[251,122],[263,102],[269,123],[265,124],[266,125],[267,126],[268,127],[264,128],[255,135],[260,136],[256,135],[259,137],[258,137],[257,138]],"semanticDiagnosticsPerFile":[261,262,271,134,135,137,138,139,140,141,142,143,144,145,146,147,149,148,150,151,152,136,186,153,154,155,187,156,157,158,159,160,161,162,163,164,165,166,167,168,170,169,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,88,45,47,46,51,86,83,85,48,49,53,52,50,84,82,87,80,81,54,59,61,56,57,63,64,55,60,62,58,78,77,79,73,75,74,70,76,71,72,65,66,67,68,69,108,109,42,43,9,8,2,10,11,12,13,14,15,16,17,3,4,21,18,19,20,22,23,24,5,25,26,27,28,6,32,29,30,31,33,7,34,39,40,35,36,37,38,1,41,44,202,194,199,192,195,193,191,201,197,190,198,196,200,244,245,189,226,225,203,213,208,207,224,210,222,217,209,204,221,220,216,218,223,212,211,214,215,205,219,206,246,247,132,188,248,230,228,238,233,237,236,234,241,240,227,231,242,232,239,235,229,243,249,250,133,128,129,130,90,103,104,105,106,107,113,95,102,96,97,98,99,100,101,123,114,115,116,91,117,118,92,119,120,121,127,122,124,126,125,253,112,111,110,254,94,93,89,252,131,251,263,269,265,266,267,268,264,255,260,256,259,258,257,270],"latestChangedDtsFile":"../dist/test/scenarios.test.d.ts"},"version":"5.1.5"}
@@ -0,0 +1,15 @@
1
+ import "@typespec/protobuf";
2
+
3
+ using TypeSpec.Protobuf;
4
+
5
+ @package
6
+ namespace Test;
7
+
8
+ @Protobuf.service
9
+ interface Service {
10
+ foo(): Output;
11
+ }
12
+
13
+ model Output {
14
+ @field(1) testOutputField: int32;
15
+ }
@@ -0,0 +1,13 @@
1
+ /* Generated by Microsoft TypeSpec */
2
+
3
+ syntax = "proto3";
4
+
5
+ import "google/protobuf/empty.proto";
6
+
7
+ message Output {
8
+ int32 testOutputField = 1;
9
+ }
10
+
11
+ service Service {
12
+ rpc Foo(google.protobuf.Empty) returns (Output);
13
+ }
@@ -0,0 +1,16 @@
1
+ import "@typespec/protobuf";
2
+
3
+ using TypeSpec.Protobuf;
4
+
5
+ @package
6
+ namespace Test;
7
+
8
+ @message
9
+ model Input {
10
+ @field(1) testInputField: string;
11
+ }
12
+
13
+ model Output {
14
+ @field(1) testOutputField: int32;
15
+ @field(2) secondField: string;
16
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "omit-unreachable-types": true
3
+ }
@@ -0,0 +1,7 @@
1
+ /* Generated by Microsoft TypeSpec */
2
+
3
+ syntax = "proto3";
4
+
5
+ message Input {
6
+ string testInputField = 1;
7
+ }
@@ -0,0 +1,16 @@
1
+ import "@typespec/protobuf";
2
+
3
+ using TypeSpec.Protobuf;
4
+
5
+ @package
6
+ namespace Test;
7
+
8
+ @message
9
+ model Input {
10
+ @field(1) testInputField: string;
11
+ }
12
+
13
+ model Output {
14
+ @field(1) testOutputField: int32;
15
+ @field(2) secondField: string;
16
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "omit-unreachable-types": false
3
+ }
@@ -0,0 +1,12 @@
1
+ /* Generated by Microsoft TypeSpec */
2
+
3
+ syntax = "proto3";
4
+
5
+ message Input {
6
+ string testInputField = 1;
7
+ }
8
+
9
+ message Output {
10
+ int32 testOutputField = 1;
11
+ string secondField = 2;
12
+ }
@@ -4,6 +4,10 @@ syntax = "proto3";
4
4
 
5
5
  package com.azure.Test;
6
6
 
7
+ message ExplicitlyDeclared {
8
+ string testField = 2;
9
+ }
10
+
7
11
  message Input {
8
12
  string testInputField = 1;
9
13
  }
@@ -12,7 +16,3 @@ message Output {
12
16
  int32 testOutputField = 1;
13
17
  string secondField = 2;
14
18
  }
15
-
16
- message ExplicitlyDeclared {
17
- string testField = 2;
18
- }
@@ -12,6 +12,7 @@ import {
12
12
  } from "@typespec/compiler/testing";
13
13
  import { readdirSync, statSync } from "fs";
14
14
  import { mkdir, readdir, readFile, rm, stat, writeFile } from "fs/promises";
15
+ import { ProtobufEmitterOptions } from "../src/lib.js";
15
16
 
16
17
  const SCENARIOS_DIRECTORY = url.fileURLToPath(new url.URL("../../test/scenarios", import.meta.url));
17
18
 
@@ -45,7 +46,13 @@ describe("protobuf scenarios", function () {
45
46
  shouldRun &&
46
47
  it(scenarioName, async function () {
47
48
  const inputFiles = await readdirRecursive(path.join(scenario, "input"));
48
- const emitResult = await doEmit(inputFiles);
49
+ const options = await readFile(path.join(scenario, "options.json"), "utf-8")
50
+ .then((s) => JSON.parse(s) as ProtobufEmitterOptions)
51
+ .catch((e) => {
52
+ return {} as ProtobufEmitterOptions;
53
+ });
54
+
55
+ const emitResult = await doEmit(inputFiles, options);
49
56
 
50
57
  const expectationDirectory = path.resolve(scenario, "output");
51
58
  const diagnosticsExpectationPath = path.resolve(scenario, "diagnostics.txt");
@@ -131,7 +138,10 @@ interface EmitResult {
131
138
  diagnostics: string[];
132
139
  }
133
140
 
134
- async function doEmit(files: Record<string, string>): Promise<EmitResult> {
141
+ async function doEmit(
142
+ files: Record<string, string>,
143
+ options: ProtobufEmitterOptions
144
+ ): Promise<EmitResult> {
135
145
  const baseOutputPath = resolveVirtualPath("test-output/");
136
146
 
137
147
  const host = await createTestHost({
@@ -146,7 +156,7 @@ async function doEmit(files: Record<string, string>): Promise<EmitResult> {
146
156
  outputDir: baseOutputPath,
147
157
  noEmit: false,
148
158
  emitters: {
149
- "@typespec/protobuf": {},
159
+ "@typespec/protobuf": options as Record<string, unknown>,
150
160
  },
151
161
  });
152
162