sof-mssql 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +88 -0
- package/dist/fhirpath/jsonSafeEmptiness.test.d.ts +19 -0
- package/dist/fhirpath/jsonSafeEmptiness.test.d.ts.map +1 -0
- package/dist/fhirpath/jsonSafeEmptiness.test.js +80 -0
- package/dist/fhirpath/jsonSafeEmptiness.test.js.map +1 -0
- package/dist/fhirpath/visitor.d.ts.map +1 -1
- package/dist/fhirpath/visitor.js +20 -12
- package/dist/fhirpath/visitor.js.map +1 -1
- package/dist/load.d.ts +9 -0
- package/dist/load.d.ts.map +1 -1
- package/dist/load.js +4 -0
- package/dist/load.js.map +1 -1
- package/dist/loader/feedback.integration.test.d.ts +14 -0
- package/dist/loader/feedback.integration.test.d.ts.map +1 -0
- package/dist/loader/feedback.integration.test.js +76 -0
- package/dist/loader/feedback.integration.test.js.map +1 -0
- package/dist/loader/index.d.ts.map +1 -1
- package/dist/loader/index.js +19 -6
- package/dist/loader/index.js.map +1 -1
- package/dist/loader/jsonColumn.integration.test.d.ts +13 -0
- package/dist/loader/jsonColumn.integration.test.d.ts.map +1 -0
- package/dist/loader/jsonColumn.integration.test.js +86 -0
- package/dist/loader/jsonColumn.integration.test.js.map +1 -0
- package/dist/loader/tables.d.ts +96 -3
- package/dist/loader/tables.d.ts.map +1 -1
- package/dist/loader/tables.js +182 -16
- package/dist/loader/tables.js.map +1 -1
- package/dist/loader/tables.test.d.ts +12 -0
- package/dist/loader/tables.test.d.ts.map +1 -0
- package/dist/loader/tables.test.js +130 -0
- package/dist/loader/tables.test.js.map +1 -0
- package/dist/loader/types.d.ts +9 -0
- package/dist/loader/types.d.ts.map +1 -1
- package/dist/tests/load.test.d.ts +11 -0
- package/dist/tests/load.test.d.ts.map +1 -0
- package/dist/tests/load.test.js +37 -0
- package/dist/tests/load.test.js.map +1 -0
- package/dist/tests/utils/database.d.ts.map +1 -1
- package/dist/tests/utils/database.js +51 -3
- package/dist/tests/utils/database.js.map +1 -1
- package/dist/tests/utils/loaderIntegration.d.ts +59 -0
- package/dist/tests/utils/loaderIntegration.d.ts.map +1 -0
- package/dist/tests/utils/loaderIntegration.js +137 -0
- package/dist/tests/utils/loaderIntegration.js.map +1 -0
- package/dist/tests/utils/serverCapabilities.d.ts +23 -0
- package/dist/tests/utils/serverCapabilities.d.ts.map +1 -0
- package/dist/tests/utils/serverCapabilities.js +35 -0
- package/dist/tests/utils/serverCapabilities.js.map +1 -0
- package/dist/tests/validation.test.d.ts +13 -0
- package/dist/tests/validation.test.d.ts.map +1 -0
- package/dist/tests/validation.test.js +81 -0
- package/dist/tests/validation.test.js.map +1 -0
- package/dist/validation.d.ts +40 -0
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +56 -0
- package/dist/validation.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -74,6 +74,9 @@ npx sof-mssql load ./data \
|
|
|
74
74
|
|
|
75
75
|
# Preview what would be loaded
|
|
76
76
|
npx sof-mssql load ./data --dry-run
|
|
77
|
+
|
|
78
|
+
# Load into a native JSON column (SQL Server 2025+)
|
|
79
|
+
npx sof-mssql load ./data --resource-json-data-type JSON
|
|
77
80
|
```
|
|
78
81
|
|
|
79
82
|
**File naming:** Files must follow the pattern `{ResourceType}.ndjson` (e.g.,
|
|
@@ -94,6 +97,10 @@ filename and stored in the `resource_type` column.
|
|
|
94
97
|
- `--table-name <name>` - Table name (default: `fhir_resources`)
|
|
95
98
|
- `--schema-name <name>` - Schema name (default: `dbo`)
|
|
96
99
|
- `--resource-type <type>` - Load only specific resource type
|
|
100
|
+
- `--resource-json-data-type <type>` - Storage type for the `json` column:
|
|
101
|
+
`NVARCHAR(MAX)` (default) or `JSON`. The `JSON` value uses SQL Server 2025's
|
|
102
|
+
native JSON type and requires SQL Server 2025 or later; the value is
|
|
103
|
+
case-insensitive. Omit the option for the default `NVARCHAR(MAX)` behaviour.
|
|
97
104
|
- `--truncate` - Truncate table before loading
|
|
98
105
|
- `--no-create-table` - Don't create table if it doesn't exist
|
|
99
106
|
|
|
@@ -292,6 +299,45 @@ const sqlOnFhir = new SqlOnFhir({
|
|
|
292
299
|
});
|
|
293
300
|
```
|
|
294
301
|
|
|
302
|
+
> **Note:** `SqlOnFhir` configures the transpiler only. The storage type of the
|
|
303
|
+
> `json` column - `NVARCHAR(MAX)` (default) or the native `JSON` type - is a
|
|
304
|
+
> loader concern, set with the `--resource-json-data-type` CLI flag or the
|
|
305
|
+
> `resourceJsonDataType` option of `loadNdjsonFiles`, not via
|
|
306
|
+
> `new SqlOnFhir({ ... })`. The transpiler is storage-type agnostic: the same
|
|
307
|
+
> transpiled query works over either column type, so your ViewDefinitions and
|
|
308
|
+
> transpiler configuration are unchanged for a native `JSON` column.
|
|
309
|
+
|
|
310
|
+
### Loading into a native JSON column
|
|
311
|
+
|
|
312
|
+
The loader can store each resource in SQL Server 2025's native `JSON` type
|
|
313
|
+
instead of `NVARCHAR(MAX)`:
|
|
314
|
+
|
|
315
|
+
```javascript
|
|
316
|
+
import { loadNdjsonFiles } from 'sof-mssql';
|
|
317
|
+
|
|
318
|
+
await loadNdjsonFiles({
|
|
319
|
+
directory: './data',
|
|
320
|
+
database: {
|
|
321
|
+
host: 'localhost',
|
|
322
|
+
user: 'sa',
|
|
323
|
+
password: process.env.MSSQL_PASSWORD,
|
|
324
|
+
database: 'fhir',
|
|
325
|
+
},
|
|
326
|
+
// "NVARCHAR(MAX)" (default) or "JSON" (SQL Server 2025+); case-insensitive.
|
|
327
|
+
resourceJsonDataType: 'JSON',
|
|
328
|
+
});
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
An invalid value is rejected with a clear error before any database connection
|
|
332
|
+
is opened. If the target table already exists with a `json` column that is the
|
|
333
|
+
other supported type (`NVARCHAR(MAX)` when `JSON` was requested, or vice versa),
|
|
334
|
+
the loader prints a warning naming both types and loads into the existing table
|
|
335
|
+
without altering it. If the existing `json` column is neither `NVARCHAR(MAX)` nor
|
|
336
|
+
native `JSON` - for example a bounded `VARCHAR(100)` or `TEXT` that cannot hold a
|
|
337
|
+
serialised FHIR resource - the loader fails fast with an error naming the
|
|
338
|
+
offending type, before any rows are loaded, rather than writing into a column
|
|
339
|
+
that would truncate or corrupt the data.
|
|
340
|
+
|
|
295
341
|
### Working with ViewDefinition strings
|
|
296
342
|
|
|
297
343
|
```javascript
|
|
@@ -453,6 +499,18 @@ CREATE INDEX [IX_fhir_resources_resource_type]
|
|
|
453
499
|
ON [dbo].[fhir_resources] ([resource_type]);
|
|
454
500
|
```
|
|
455
501
|
|
|
502
|
+
On SQL Server 2025 or later the `json` column may instead use the native `JSON`
|
|
503
|
+
type for more efficient storage, with the rest of the table unchanged:
|
|
504
|
+
|
|
505
|
+
```sql
|
|
506
|
+
[json] JSON NOT NULL
|
|
507
|
+
```
|
|
508
|
+
|
|
509
|
+
`NVARCHAR(MAX)` is the default and works on SQL Server 2017+. The native `JSON`
|
|
510
|
+
type is opt-in (`--resource-json-data-type JSON` or `resourceJsonDataType:
|
|
511
|
+
"JSON"`) and requires SQL Server 2025 or later. The same transpiled query SQL
|
|
512
|
+
runs over either storage type.
|
|
513
|
+
|
|
456
514
|
The generated queries use:
|
|
457
515
|
|
|
458
516
|
- `resource_type` column for filtering by FHIR resource type (indexed for
|
|
@@ -473,6 +531,36 @@ creates the table with the correct structure. All FHIR resources are stored in a
|
|
|
473
531
|
single table (default: `fhir_resources`), with the resource type extracted from
|
|
474
532
|
the filename.
|
|
475
533
|
|
|
534
|
+
### Comparing NVARCHAR(MAX) and native JSON storage
|
|
535
|
+
|
|
536
|
+
The native `JSON` type stores documents in a pre-parsed binary form, which
|
|
537
|
+
Microsoft documents as roughly an 18% storage reduction; actual figures depend
|
|
538
|
+
on the dataset. Because timings and storage are environment-dependent, this is a
|
|
539
|
+
manual procedure rather than an automated test. To compare the two storage types
|
|
540
|
+
for your own data on a single SQL Server 2025 instance:
|
|
541
|
+
|
|
542
|
+
1. Prepare a representative NDJSON dataset (for example, a few hundred megabytes
|
|
543
|
+
of FHIR resources).
|
|
544
|
+
2. Load the same data into two separate tables, one per storage type:
|
|
545
|
+
|
|
546
|
+
```bash
|
|
547
|
+
npx sof-mssql load ./data --table-name fhir_nvarchar
|
|
548
|
+
npx sof-mssql load ./data --table-name fhir_json --resource-json-data-type JSON
|
|
549
|
+
```
|
|
550
|
+
|
|
551
|
+
3. Compare storage with `sp_spaceused`, recording `data` and `reserved` for
|
|
552
|
+
each:
|
|
553
|
+
|
|
554
|
+
```sql
|
|
555
|
+
EXEC sp_spaceused 'dbo.fhir_nvarchar';
|
|
556
|
+
EXEC sp_spaceused 'dbo.fhir_json';
|
|
557
|
+
```
|
|
558
|
+
|
|
559
|
+
4. Compare read performance by running an identical transpiled ViewDefinition
|
|
560
|
+
query against each table several times with `SET STATISTICS TIME ON;`,
|
|
561
|
+
discarding the first (cold-cache) run and recording the elapsed times.
|
|
562
|
+
5. Record the dataset description, row counts, storage figures and timings.
|
|
563
|
+
|
|
476
564
|
## Contributing
|
|
477
565
|
|
|
478
566
|
Contributions are welcome! Please read our [CONTRIBUTING](CONTRIBUTING.md)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Regression tests for json-safe array-emptiness checks in the transpiler.
|
|
3
|
+
*
|
|
4
|
+
* The exists()/empty() FHIRPath functions detect an empty collection by
|
|
5
|
+
* comparing the extracted value to the literal '[]'. Over an NVARCHAR(MAX)
|
|
6
|
+
* column JSON_QUERY returns nvarchar, so the comparison works; over SQL Server
|
|
7
|
+
* 2025's native json column JSON_QUERY returns a json-typed value, and
|
|
8
|
+
* comparing json to a varchar literal raises "the data types json and varchar
|
|
9
|
+
* are incompatible". The fix coerces the operand with CAST(... AS NVARCHAR(MAX))
|
|
10
|
+
* before the comparison, which is a no-op on nvarchar sources and makes the SQL
|
|
11
|
+
* valid on json columns (Constitution Principle II; FR-011/SC-002).
|
|
12
|
+
*
|
|
13
|
+
* These tests assert the generated SQL invariant without a database, so they
|
|
14
|
+
* guard the behaviour on every SQL Server version.
|
|
15
|
+
*
|
|
16
|
+
* @author John Grimes
|
|
17
|
+
*/
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=jsonSafeEmptiness.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonSafeEmptiness.test.d.ts","sourceRoot":"","sources":["../../src/fhirpath/jsonSafeEmptiness.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Regression tests for json-safe array-emptiness checks in the transpiler.
|
|
4
|
+
*
|
|
5
|
+
* The exists()/empty() FHIRPath functions detect an empty collection by
|
|
6
|
+
* comparing the extracted value to the literal '[]'. Over an NVARCHAR(MAX)
|
|
7
|
+
* column JSON_QUERY returns nvarchar, so the comparison works; over SQL Server
|
|
8
|
+
* 2025's native json column JSON_QUERY returns a json-typed value, and
|
|
9
|
+
* comparing json to a varchar literal raises "the data types json and varchar
|
|
10
|
+
* are incompatible". The fix coerces the operand with CAST(... AS NVARCHAR(MAX))
|
|
11
|
+
* before the comparison, which is a no-op on nvarchar sources and makes the SQL
|
|
12
|
+
* valid on json columns (Constitution Principle II; FR-011/SC-002).
|
|
13
|
+
*
|
|
14
|
+
* These tests assert the generated SQL invariant without a database, so they
|
|
15
|
+
* guard the behaviour on every SQL Server version.
|
|
16
|
+
*
|
|
17
|
+
* @author John Grimes
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
const vitest_1 = require("vitest");
|
|
21
|
+
const index_1 = require("../index");
|
|
22
|
+
/**
|
|
23
|
+
* Transpile a single boolean column for the given FHIRPath expression.
|
|
24
|
+
*
|
|
25
|
+
* @param path - The FHIRPath expression to transpile.
|
|
26
|
+
* @returns The generated T-SQL.
|
|
27
|
+
*/
|
|
28
|
+
function transpilePath(path) {
|
|
29
|
+
const sof = new index_1.SqlOnFhir();
|
|
30
|
+
return sof.transpile({
|
|
31
|
+
resource: "Patient",
|
|
32
|
+
status: "active",
|
|
33
|
+
select: [{ column: [{ name: "x", path, type: "boolean" }] }],
|
|
34
|
+
}).sql;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Report whether the SQL contains a comparison against the literal '[]' that is
|
|
38
|
+
* not coerced to nvarchar first. Such a bare comparison fails on a native json
|
|
39
|
+
* column.
|
|
40
|
+
*
|
|
41
|
+
* @param sql - The generated T-SQL.
|
|
42
|
+
* @returns true if a bare (uncast) '[]' comparison is present.
|
|
43
|
+
*/
|
|
44
|
+
function hasBareArrayLiteralComparison(sql) {
|
|
45
|
+
const comparison = /(?:!=|=)\s*'\[\]'/g;
|
|
46
|
+
let match;
|
|
47
|
+
while ((match = comparison.exec(sql)) !== null) {
|
|
48
|
+
const preceding = sql.slice(0, match.index).trimEnd();
|
|
49
|
+
if (!preceding.endsWith("AS NVARCHAR(MAX))")) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
(0, vitest_1.describe)("json-safe emptiness checks", () => {
|
|
56
|
+
// Each of these expressions exercises a '[]' comparison in exists()/empty().
|
|
57
|
+
const expressions = [
|
|
58
|
+
"name.exists()",
|
|
59
|
+
"name.given.exists()",
|
|
60
|
+
"name.empty()",
|
|
61
|
+
"name.given.empty()",
|
|
62
|
+
];
|
|
63
|
+
for (const path of expressions) {
|
|
64
|
+
(0, vitest_1.it)(`emits no bare '[]' comparison for ${path}`, () => {
|
|
65
|
+
const sql = transpilePath(path);
|
|
66
|
+
(0, vitest_1.expect)(hasBareArrayLiteralComparison(sql)).toBe(false);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
(0, vitest_1.it)("wraps the exists() array check in CAST(... AS NVARCHAR(MAX))", () => {
|
|
70
|
+
const sql = transpilePath("name.exists()");
|
|
71
|
+
(0, vitest_1.expect)(sql).toContain("CAST(JSON_QUERY(r.json, '$.name') AS NVARCHAR(MAX)) != '[]'");
|
|
72
|
+
});
|
|
73
|
+
(0, vitest_1.it)("still guards exists() against a null array with IS NOT NULL", () => {
|
|
74
|
+
// The presence check on the raw value is valid on a json column and must
|
|
75
|
+
// remain so the empty-vs-absent distinction is preserved.
|
|
76
|
+
const sql = transpilePath("name.exists()");
|
|
77
|
+
(0, vitest_1.expect)(sql).toContain("JSON_QUERY(r.json, '$.name') IS NOT NULL");
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
//# sourceMappingURL=jsonSafeEmptiness.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonSafeEmptiness.test.js","sourceRoot":"","sources":["../../src/fhirpath/jsonSafeEmptiness.test.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;AAEH,mCAA8C;AAC9C,oCAAqC;AAErC;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,GAAG,GAAG,IAAI,iBAAS,EAAE,CAAC;IAC5B,OAAO,GAAG,CAAC,SAAS,CAAC;QACnB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;KAC7D,CAAC,CAAC,GAAG,CAAC;AACT,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,6BAA6B,CAAC,GAAW;IAChD,MAAM,UAAU,GAAG,oBAAoB,CAAC;IACxC,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;QACtD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,IAAA,iBAAQ,EAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,6EAA6E;IAC7E,MAAM,WAAW,GAAG;QAClB,eAAe;QACf,qBAAqB;QACrB,cAAc;QACd,oBAAoB;KACrB,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,IAAA,WAAE,EAAC,qCAAqC,IAAI,EAAE,EAAE,GAAG,EAAE;YACnD,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YAChC,IAAA,eAAM,EAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAA,WAAE,EAAC,8DAA8D,EAAE,GAAG,EAAE;QACtE,MAAM,GAAG,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CACnB,6DAA6D,CAC9D,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAA,WAAE,EAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,yEAAyE;QACzE,0DAA0D;QAC1D,MAAM,GAAG,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;QAC3C,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,0CAA0C,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visitor.d.ts","sourceRoot":"","sources":["../../src/fhirpath/visitor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"visitor.d.ts","sourceRoot":"","sources":["../../src/fhirpath/visitor.ts"],"names":[],"mappings":"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"}
|
package/dist/fhirpath/visitor.js
CHANGED
|
@@ -1067,9 +1067,13 @@ class FHIRPathToTSqlVisitor extends AbstractParseTreeVisitor_1.AbstractParseTree
|
|
|
1067
1067
|
if (this.isBooleanExpression(base)) {
|
|
1068
1068
|
return base;
|
|
1069
1069
|
}
|
|
1070
|
-
// JSON_QUERY (array) - check if not null and not empty
|
|
1070
|
+
// JSON_QUERY (array) - check if not null and not empty. The emptiness
|
|
1071
|
+
// comparison is against the text '[]', so the operand is coerced to
|
|
1072
|
+
// nvarchar: over a native json column JSON_QUERY returns a json-typed value
|
|
1073
|
+
// that cannot be compared to a varchar literal, while over an
|
|
1074
|
+
// NVARCHAR(MAX) column the cast is a no-op.
|
|
1071
1075
|
if (base.includes("JSON_QUERY")) {
|
|
1072
|
-
return `(${base} IS NOT NULL AND ${base} != '[]')`;
|
|
1076
|
+
return `(${base} IS NOT NULL AND CAST(${base} AS NVARCHAR(MAX)) != '[]')`;
|
|
1073
1077
|
}
|
|
1074
1078
|
return `(${base} IS NOT NULL)`;
|
|
1075
1079
|
}
|
|
@@ -1092,9 +1096,11 @@ class FHIRPathToTSqlVisitor extends AbstractParseTreeVisitor_1.AbstractParseTree
|
|
|
1092
1096
|
if (this.isBooleanExpression(trimmedIterCtx)) {
|
|
1093
1097
|
return iterCtx;
|
|
1094
1098
|
}
|
|
1095
|
-
// JSON_QUERY (array) - check if not null and not empty
|
|
1099
|
+
// JSON_QUERY (array) - check if not null and not empty. The operand is cast
|
|
1100
|
+
// to nvarchar so the '[]' comparison is valid on a native json column (a
|
|
1101
|
+
// no-op on NVARCHAR(MAX)).
|
|
1096
1102
|
if (trimmedIterCtx.includes("JSON_QUERY")) {
|
|
1097
|
-
return `(${iterCtx} IS NOT NULL AND ${iterCtx} != '[]')`;
|
|
1103
|
+
return `(${iterCtx} IS NOT NULL AND CAST(${iterCtx} AS NVARCHAR(MAX)) != '[]')`;
|
|
1098
1104
|
}
|
|
1099
1105
|
// Otherwise check if not null
|
|
1100
1106
|
return `(${iterCtx} IS NOT NULL)`;
|
|
@@ -1135,9 +1141,11 @@ class FHIRPathToTSqlVisitor extends AbstractParseTreeVisitor_1.AbstractParseTree
|
|
|
1135
1141
|
if (this.isBooleanExpression(trimmedArg)) {
|
|
1136
1142
|
return arg;
|
|
1137
1143
|
}
|
|
1138
|
-
// If the argument is a JSON_QUERY (array), check if it's not null and not
|
|
1144
|
+
// If the argument is a JSON_QUERY (array), check if it's not null and not
|
|
1145
|
+
// empty. The operand is cast to nvarchar so the '[]' comparison is valid on
|
|
1146
|
+
// a native json column (a no-op on NVARCHAR(MAX)).
|
|
1139
1147
|
if (trimmedArg.includes("JSON_QUERY")) {
|
|
1140
|
-
return `(${arg} IS NOT NULL AND ${arg} != '[]')`;
|
|
1148
|
+
return `(${arg} IS NOT NULL AND CAST(${arg} AS NVARCHAR(MAX)) != '[]')`;
|
|
1141
1149
|
}
|
|
1142
1150
|
// Otherwise wrap in IS NOT NULL check
|
|
1143
1151
|
return `(${arg} IS NOT NULL)`;
|
|
@@ -1165,11 +1173,11 @@ class FHIRPathToTSqlVisitor extends AbstractParseTreeVisitor_1.AbstractParseTree
|
|
|
1165
1173
|
if (expression.includes("EXISTS")) {
|
|
1166
1174
|
return `(NOT ${expression})`;
|
|
1167
1175
|
}
|
|
1168
|
-
return `(CASE
|
|
1176
|
+
return `(CASE
|
|
1169
1177
|
WHEN ${expression} IS NULL THEN 1
|
|
1170
|
-
WHEN JSON_QUERY(${expression}) = '[]' THEN 1
|
|
1178
|
+
WHEN CAST(JSON_QUERY(${expression}) AS NVARCHAR(MAX)) = '[]' THEN 1
|
|
1171
1179
|
WHEN JSON_VALUE(${expression}) IS NULL THEN 1
|
|
1172
|
-
ELSE 0
|
|
1180
|
+
ELSE 0
|
|
1173
1181
|
END = 1)`;
|
|
1174
1182
|
}
|
|
1175
1183
|
// No arguments - check current iteration context
|
|
@@ -1190,10 +1198,10 @@ class FHIRPathToTSqlVisitor extends AbstractParseTreeVisitor_1.AbstractParseTree
|
|
|
1190
1198
|
return `(CASE WHEN ${this.context.iterationContext} IS NULL THEN 1 ELSE 0 END = 1)`;
|
|
1191
1199
|
}
|
|
1192
1200
|
else {
|
|
1193
|
-
return `(CASE
|
|
1201
|
+
return `(CASE
|
|
1194
1202
|
WHEN JSON_QUERY(${this.context.iterationContext}) IS NULL THEN 1
|
|
1195
|
-
WHEN JSON_QUERY(${this.context.iterationContext}) = '[]' THEN 1
|
|
1196
|
-
ELSE 0
|
|
1203
|
+
WHEN CAST(JSON_QUERY(${this.context.iterationContext}) AS NVARCHAR(MAX)) = '[]' THEN 1
|
|
1204
|
+
ELSE 0
|
|
1197
1205
|
END = 1)`;
|
|
1198
1206
|
}
|
|
1199
1207
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../src/fhirpath/visitor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"visitor.js","sourceRoot":"","sources":["../../src/fhirpath/visitor.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,qFAAkF;AAClF,wEAyC6C;AAyB7C,MAAa,qBACX,SAAQ,mDAAgC;IAGX;IAA7B,YAA6B,OAA0B;QACrD,KAAK,EAAE,CAAC;QADmB,YAAO,GAAP,OAAO,CAAmB;IAEvD,CAAC;IAES,aAAa;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,qBAAqB,CAAC,GAA4B;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,mBAAmB,CAAC,GAA0B;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,yBAAyB,CAAC,GAAgC;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1C,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QAEpC,IAAI,UAAU,YAAY,wCAAuB,EAAE,CAAC;YAClD,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACvD,CAAC;aAAM,IAAI,UAAU,YAAY,0CAAyB,EAAE,CAAC;YAC3D,yEAAyE;YACzE,iEAAiE;YACjE,eAAe;YACf,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9B,CAAC;IAED,sBAAsB,CAAC,GAA6B;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,sCAAsC;QACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC5B,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC1B,OAAO,cAAc,MAAM,MAAM,IAAI,IAAI,KAAK,KAAK,CAAC;YACtD,CAAC;QACH,CAAC;QAED,OAAO,cAAc,IAAI,QAAQ,KAAK,KAAK,CAAC;IAC9C,CAAC;IAED,uBAAuB,CAAC,GAA8B;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa;QAElD,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YACrB,OAAO,KAAK,OAAO,GAAG,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,OAAO,GAAG,CAAC;QACzB,CAAC;IACH,CAAC;IAED,6BAA6B,CAAC,GAAoC;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxC,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE5E,4DAA4D;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAExD,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,GAAG;gBACN,OAAO,IAAI,UAAU,MAAM,WAAW,GAAG,CAAC;YAC5C,KAAK,GAAG,CAAC;YACT,KAAK,KAAK;gBACR,OAAO,IAAI,UAAU,MAAM,WAAW,GAAG,CAAC;YAC5C,KAAK,KAAK;gBACR,OAAO,IAAI,UAAU,MAAM,WAAW,GAAG,CAAC;YAC5C;gBACE,OAAO,IAAI,UAAU,MAAM,WAAW,GAAG,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,GAA8B;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxC,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE5E,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,GAAG,CAAC;YACT,KAAK,GAAG,CAAC,CAAC,CAAC;gBACT,4DAA4D;gBAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBACtD,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;gBACxD,OAAO,QAAQ,KAAK,GAAG;oBACrB,CAAC,CAAC,IAAI,UAAU,MAAM,WAAW,GAAG;oBACpC,CAAC,CAAC,IAAI,UAAU,MAAM,WAAW,GAAG,CAAC;YACzC,CAAC;YACD,KAAK,GAAG;gBACN,6DAA6D;gBAC7D,OAAO,UAAU,IAAI,KAAK,KAAK,GAAG,CAAC;YACrC,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBACtD,MAAM,WAAW,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;gBACxD,OAAO,IAAI,UAAU,MAAM,WAAW,GAAG,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAED,mBAAmB,CAAC,GAA0B;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAC1C,GAAG,CAAC,IAAI,EACR,UAAU,EACV,QAAQ,CACT,CAAC;QAEF,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,4CAA4C;YAC5C,OAAO,IAAI,UAAU,eAAe,CAAC;QACvC,CAAC;aAAM,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC7B,gEAAgE;YAChE,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,oBAAoB,CAAC,GAA2B;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,2EAA2E;QAC3E,2CAA2C;QAC3C,OAAO,YAAY,IAAI,KAAK,KAAK,GAAG,CAAC;IACvC,CAAC;IAED,yBAAyB,CAAC,GAAgC;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAE5C,uEAAuE;QACvE,qDAAqD;QACrD,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAEjE,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,GAAG;gBACN,OAAO,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC;YAChC,KAAK,IAAI;gBACP,OAAO,IAAI,IAAI,OAAO,KAAK,GAAG,CAAC;YACjC,KAAK,GAAG;gBACN,OAAO,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC;YAChC,KAAK,IAAI;gBACP,OAAO,IAAI,IAAI,OAAO,KAAK,GAAG,CAAC;YACjC;gBACE,OAAO,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC;QAClC,CAAC;IACH,CAAC;IAED,uBAAuB,CAAC,GAA8B;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAEpE,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,GAAG;gBACN,+EAA+E;gBAC/E,OAAO,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC;YAChC,KAAK,IAAI;gBACP,OAAO,IAAI,IAAI,OAAO,KAAK,GAAG,CAAC;YACjC,KAAK,GAAG;gBACN,iCAAiC;gBACjC,OAAO,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC;YAChC,KAAK,IAAI;gBACP,iBAAiB;gBACjB,OAAO,IAAI,IAAI,OAAO,KAAK,GAAG,CAAC;YACjC;gBACE,OAAO,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC;QAClC,CAAC;IACH,CAAC;IAED,yBAAyB,CAAC,GAAgC;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAEpE,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,2CAA2C;YAC3C,OAAO,kCAAkC,KAAK,mBAAmB,IAAI,GAAG,CAAC;QAC3E,CAAC;aAAM,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;YACnC,0CAA0C;YAC1C,OAAO,kCAAkC,IAAI,mBAAmB,KAAK,GAAG,CAAC;QAC3E,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9B,CAAC;IAED,kBAAkB,CAAC,GAAyB;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,IAAI,IAAI,QAAQ,KAAK,GAAG,CAAC;IAClC,CAAC;IAED,iBAAiB,CAAC,GAAwB;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAEpE,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACtB,OAAO,IAAI,IAAI,OAAO,KAAK,GAAG,CAAC;QACjC,CAAC;aAAM,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;YAC9B,eAAe;YACf,OAAO,KAAK,IAAI,YAAY,KAAK,aAAa,IAAI,QAAQ,KAAK,IAAI,CAAC;QACtE,CAAC;QAED,OAAO,IAAI,IAAI,OAAO,KAAK,GAAG,CAAC;IACjC,CAAC;IAED,sBAAsB,CAAC,GAA6B;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,4CAA4C;QAC5C,OAAO,SAAS,IAAI,QAAQ,KAAK,GAAG,CAAC;IACvC,CAAC;IAED,mBAAmB;IACnB,gBAAgB,CAAC,IAAwB;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mBAAmB,CAAC,GAA0B;QAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,6CAA6C;QAC7C,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACjD,CAAC;IAED,kBAAkB,CAAC,GAAyB;QAC1C,uDAAuD;QACvD,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACxD,OAAO,IAAI,KAAK,GAAG,CAAC;IACtB,CAAC;IAED,kBAAkB,CAAC,GAAyB;QAC1C,OAAO,GAAG,CAAC,IAAI,CAAC;IAClB,CAAC;IAED,sBAAsB,CAAC,GAA6B;QAClD,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,gBAAgB,CAAC,GAAuB;QACtC,6CAA6C;QAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,IAAI,KAAK,GAAG,CAAC;IACtB,CAAC;IAED,oBAAoB,CAAC,GAA2B;QAC9C,6CAA6C;QAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,IAAI,KAAK,GAAG,CAAC;IACtB,CAAC;IAED,gBAAgB,CAAC,GAAuB;QACtC,8CAA8C;QAC9C,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,IAAI,KAAK,GAAG,CAAC;IACtB,CAAC;IAED,oBAAoB,CAAC,GAA2B;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,sBAAsB;IACtB,qBAAqB,CAAC,GAA4B;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAEhD,6BAA6B;QAC7B,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACxB,iDAAiD;YACjD,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,aAAa,gBAAgB,CAAC;QAClE,CAAC;QAED,gDAAgD;QAChD,MAAM,gBAAgB,GAAG;YACvB,MAAM;YACN,OAAO;YACP,SAAS;YACT,SAAS;YACT,MAAM;YACN,YAAY;YACZ,WAAW;YACX,SAAS;YACT,QAAQ;YACR,MAAM;YACN,YAAY;YACZ,QAAQ;YACR,WAAW;SACZ,CAAC;QAEF,+BAA+B;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAClC,yEAAyE;YACzE,IAAI,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1C,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,gBAAgB,QAAQ,UAAU,IAAI,CAAC;YAC3E,CAAC;YACD,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,gBAAgB,QAAQ,UAAU,IAAI,CAAC;QAC3E,CAAC;QAED,+DAA+D;QAC/D,IAAI,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1C,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,aAAa,aAAa,UAAU,IAAI,CAAC;QAC7E,CAAC;QAED,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,aAAa,aAAa,UAAU,IAAI,CAAC;IAC7E,CAAC;IAED,uBAAuB,CAAC,GAA8B;QACpD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,mBAAmB,CAAC,IAA2B;QAC7C,2DAA2D;QAC3D,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACvC,CAAC;QACD,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO,CAAC;IAC9C,CAAC;IAED,oBAAoB,CAAC,IAA4B;QAC/C,wEAAwE;QACxE,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACrC,uFAAuF;YACvF,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,QAAQ,CAAC;QACrD,CAAC;QACD,wCAAwC;QACxC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,oBAAoB,CAAC,IAA4B;QAC/C,gFAAgF;QAChF,IACE,IAAI,CAAC,OAAO,CAAC,mBAAmB;YAChC,IAAI,CAAC,OAAO,CAAC,aAAa;YAC1B,IAAI,CAAC,OAAO,CAAC,WAAW,EACxB,CAAC;YACD,2DAA2D;YAC3D,kDAAkD;YAClD,OAAO;;wBAEW,IAAI,CAAC,OAAO,CAAC,aAAa,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW;QACxE,CAAC;QACL,CAAC;QACD,wCAAwC;QACxC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,gBAAgB;IAChB,mBAAmB,CAAC,GAA0B;QAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,gBAAgB,CAAC,GAAuB;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IACnC,CAAC;IAED,yBAAyB,CAAC,GAAgC;QACxD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,sBAAsB,CAAC,GAA6B;QAClD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1C,OAAO,IAAI,IAAI,GAAG,CAAC;IACrB,CAAC;IAED,qBAAqB,CAAC,GAA4B;QAChD,IAAI,YAAoB,CAAC;QAEzB,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QACpC,IAAI,UAAU,EAAE,CAAC;YACf,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,8BAA8B;YAC9B,YAAY,GAAG,GAAG,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvD,CAAC;QAED,yEAAyE;QACzE,qEAAqE;QACrE,wEAAwE;QACxE,4EAA4E;QAC5E,oEAAoE;QACpE,8CAA8C;QAC9C,IAAI,YAAY,KAAK,UAAU,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,GAAG,CAAC;QAC1C,CAAC;QAED,kDAAkD;QAClD,IACE,IAAI,CAAC,OAAO,CAAC,SAAS;YACtB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,KAAK,SAAS,EAClD,CAAC;YACD,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,sCAAsC;QACtC,MAAM,IAAI,KAAK,CACb,cAAc,YAAY,wCAAwC,CACnE,CAAC;IACJ,CAAC;IAED,aAAa,CAAC,GAAoB;QAChC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,EAAE,CAAC;QAElC,8EAA8E;QAC9E,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,CAAC;YAED,6DAA6D;YAC7D,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;YAEhD,uDAAuD;YACvD,MAAM,aAAa,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE9D,uEAAuE;YACvE,OAAO,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5C,CAAC;QAED,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,aAAa,CAAC,GAAoB;QAChC,wEAAwE;QACxE,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,eAAe,CAAC,GAAsB;QACpC,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,mBAAmB,GAAG,GAAG,CAAC,mBAAmB,EAAE,CAAC;QAEtD,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,UAAU,CAAC,IAAI,CAAC;QACzB,CAAC;aAAM,IAAI,mBAAmB,EAAE,CAAC;YAC/B,mBAAmB;YACnB,OAAO,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,iCAAiC;YACjC,OAAO,GAAG,CAAC,IAAI,CAAC;QAClB,CAAC;IACH,CAAC;IAED,wBAAwB,CAAC,GAA+B;QACtD,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAED,iBAAiB;IACT,sBAAsB,CAC5B,IAAY,EACZ,SAAkC;QAElC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;QAEtD,kEAAkE;QAClE,6DAA6D;QAC7D,+EAA+E;QAC/E,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACtC,mDAAmD;YACnD,MAAM,cAAc,GAClB,uDAAuD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrE,IAAI,cAAc,EAAE,CAAC;gBACnB,6CAA6C;gBAC7C,gEAAgE;gBAChE,kEAAkE;gBAClE,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBACvC,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBAC/B,OAAO,sCAAsC,YAAY,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACrF,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAAC,EAAE,CAAC;gBAChE,sCAAsC;gBACtC,mDAAmD;gBACnD,sEAAsE;gBACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxD,OAAO,sCAAsC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACzE,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,wDAAwD;QACxD,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACtD,CAAC;QAED,yCAAyC;QACzC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACtD,CAAC;QAED,OAAO,cAAc,IAAI,QAAQ,UAAU,IAAI,CAAC;IAClD,CAAC;IAEO,qBAAqB,CAAC,IAAY,EAAE,UAAkB;QAC5D,MAAM,SAAS,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,cAAc,IAAI,QAAQ,UAAU,IAAI,CAAC;QAClD,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAClC,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzD,MAAM,oBAAoB,GAAG,IAAI,CAAC,yBAAyB,CACzD,YAAY,EACZ,cAAc,CACf,CAAC;QACF,MAAM,oBAAoB,GAAG,IAAI,CAAC,yBAAyB,CACzD,UAAU,EACV,YAAY,EACZ,cAAc,CACf,CAAC;QAEF,MAAM,OAAO,GAAG,oBAAoB;YAClC,CAAC,CAAC,GAAG,YAAY,OAAO,UAAU,EAAE;YACpC,CAAC,CAAC,GAAG,YAAY,IAAI,UAAU,EAAE,CAAC;QAEpC,OAAO,oBAAoB;YACzB,CAAC,CAAC,cAAc,MAAM,MAAM,OAAO,IAAI;YACvC,CAAC,CAAC,cAAc,MAAM,MAAM,OAAO,IAAI,CAAC;IAC5C,CAAC;IAEO,yBAAyB,CAC/B,YAAoB,EACpB,cAAuB;QAEvB,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACtD,MAAM,sBAAsB,GAAG,CAAC,MAAM,CAAC,CAAC;QAExC,MAAM,YAAY,GAAG,QAAQ,CAAC;QAC9B,MAAM,YAAY,GAAG,YAAY;aAC9B,KAAK,CAAC,GAAG,CAAC;aACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE1D,MAAM,0BAA0B,GAC9B,CAAC,CAAC,WAAW,IAAI,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC3D,MAAM,2BAA2B,GAC/B,CAAC,CAAC,WAAW;YACb,sBAAsB,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC5C,CAAC,cAAc,CAAC;QAElB,OAAO,0BAA0B,IAAI,2BAA2B,CAAC;IACnE,CAAC;IAEO,yBAAyB,CAC/B,UAAkB,EAClB,YAAoB,EACpB,cAAuB;QAEvB,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACtD,MAAM,sBAAsB,GAAG,CAAC,MAAM,CAAC,CAAC;QAExC,MAAM,YAAY,GAAG,QAAQ,CAAC;QAC9B,MAAM,YAAY,GAAG,YAAY;aAC9B,KAAK,CAAC,GAAG,CAAC;aACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAErD,OAAO,CACL,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC;YACtC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC1C,CAAC,cAAc;gBACf,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAC7B,CAAC;IACJ,CAAC;IAEO,oBAAoB;QAC1B,OAAO;YACL,OAAO;YACP,SAAS;YACT,SAAS;YACT,MAAM;YACN,YAAY;YACZ,WAAW;YACX,SAAS;YACT,QAAQ;YACR,MAAM;YACN,YAAY;YACZ,QAAQ;YACR,WAAW;SACZ,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,UAAkB;QACrC,MAAM,gBAAgB,GAAG;YACvB,MAAM;YACN,OAAO;YACP,SAAS;YACT,SAAS;YACT,MAAM;YACN,YAAY;YACZ,WAAW;YACX,SAAS;YACT,QAAQ;YACR,MAAM;YACN,YAAY;YACZ,QAAQ;YACR,WAAW;SACZ,CAAC;QACF,OAAO,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACK,0BAA0B,CAChC,MAAc,EACd,YAAoB,EACpB,UAAkB;QAElB,MAAM,UAAU,GAAG,sCAAsC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvE,MAAM,gBAAgB,GAAG,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAEzD,IAAI,UAAU,IAAI,gBAAgB,EAAE,CAAC;YACnC,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAChC,MAAM,UAAU,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjD,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;YACrC,MAAM,OAAO,GAAG,GAAG,SAAS,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;YACvD,OAAO,cAAc,WAAW,MAAM,OAAO,IAAI,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,qBAAqB,CAAC,IAAY,EAAE,UAAkB;QAC5D,MAAM,SAAS,GAAG,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,cAAc,IAAI,QAAQ,UAAU,IAAI,CAAC;QAClD,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAElC,uDAAuD;QACvD,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,MAAM,OAAO,GAAG,GAAG,YAAY,IAAI,UAAU,EAAE,CAAC;YAChD,OAAO,cAAc,MAAM,MAAM,OAAO,IAAI,CAAC;QAC/C,CAAC;QAED,+CAA+C;QAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAClD,MAAM,EACN,YAAY,EACZ,UAAU,CACX,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC;QACtB,CAAC;QAED,+CAA+C;QAC/C,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7D,MAAM,OAAO,GAAG,GAAG,YAAY,IAAI,UAAU,EAAE,CAAC;YAChD,OAAO,cAAc,MAAM,MAAM,OAAO,IAAI,CAAC;QAC/C,CAAC;QAED,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,mBAAmB,GAAG,IAAI,CAAC,2BAA2B,CAC1D,SAAS,EACT,YAAY,CACb,CAAC;QAEF,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,OAAO,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,OAAO,UAAU,EAAE,CAAC;YACnE,OAAO,cAAc,MAAM,MAAM,OAAO,IAAI,CAAC;QAC/C,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,YAAY,IAAI,UAAU,EAAE,CAAC;QAChD,OAAO,cAAc,MAAM,MAAM,OAAO,IAAI,CAAC;IAC/C,CAAC;IAEO,2BAA2B,CACjC,SAAmB,EACnB,YAAoB;QAEpB,yCAAyC;QACzC,uDAAuD;QACvD,kGAAkG;QAClG,+FAA+F;QAC/F,MAAM,gBAAgB,GAAG;YACvB,SAAS;YACT,SAAS;YACT,YAAY;YACZ,WAAW;YACX,SAAS;YACT,MAAM;SACP,CAAC;QAEF,sDAAsD;QACtD,4BAA4B;QAC5B,oCAAoC;QACpC,8EAA8E;QAC9E,EAAE;QACF,eAAe;QACf,qFAAqF;QACrF,mGAAmG;QACnG,+FAA+F;QAE/F,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAE/B,wDAAwD;QACxD,IAAI,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,oDAAoD;YACpD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;YAChC,uEAAuE;YACvE,wDAAwD;YACxD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACxC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,wBAAwB,CAC9B,IAAY,EACZ,WAAsC,EACtC,QAA4B;QAE5B,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;QAErD,iEAAiE;QACjE,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC;QAClD,CAAC;QAED,8EAA8E;QAC9E,IAAI,YAAY,KAAK,OAAO,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,6BAA6B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC/D,CAAC;QAED,8EAA8E;QAC9E,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QAED,uFAAuF;QACvF,IAAI,YAAY,KAAK,iBAAiB,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,uCAAuC,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACzE,CAAC;QAED,+EAA+E;QAC/E,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE/D,sDAAsD;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QAExD,2EAA2E;QAC3E,mDAAmD;QACnD,IAAI,YAAY,KAAK,aAAa,IAAI,YAAY,KAAK,cAAc,EAAE,CAAC;YACtE,UAAU,CAAC,YAAY;gBACrB,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;QACxD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACtD,OAAO,OAAO,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;;OASG;IACK,uBAAuB,CAC7B,QAAuC;QAEvC,IAAI,CAAC,CAAC,QAAQ,YAAY,4CAA2B,CAAC,EAAE,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;QACzC,IAAI,CAAC,CAAC,UAAU,YAAY,0CAAyB,CAAC,EAAE,CAAC;YACvD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;QACpD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxC,CAAC;IAEO,8BAA8B,CACpC,IAAY,EACZ,WAAsC;QAEtC,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;QACrD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QAED,2DAA2D;QAC3D,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,qCAAqC;QAExE,OAAO,IAAI,CAAC,4BAA4B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAEO,uCAAuC,CAC7C,IAAY,EACZ,WAAsC;QAEtC,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;QAErD,2CAA2C;QAC3C,IAAI,YAAY,GAAkB,IAAI,CAAC;QACvC,IAAI,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnD,2DAA2D;YAC3D,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9C,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,qCAAqC;QACxE,CAAC;QAED,0CAA0C;QAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;QACtD,OAAO,OAAO,CAAC,qCAAqC,CAAC,YAAY,CAAC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACK,4BAA4B,CAAC,IAAY,EAAE,QAAgB;QACjE,qDAAqD;QACrD,gEAAgE;QAChE,IAAI,IAAI,CAAC,UAAU,CAAC,qCAAqC,CAAC,EAAE,CAAC;YAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC5C,gCAAgC;YAChC,MAAM,SAAS,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClE,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClC,uDAAuD;oBACvD,MAAM,OAAO,GAAG,GAAG,IAAI,GAAG,MAAM,EAAE,CAAC;oBACnC,OAAO,IAAI,CAAC,OAAO,CACjB,wBAAwB,IAAI,IAAI,EAChC,wBAAwB,OAAO,IAAI,CACpC,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,6DAA6D;QAC7D,MAAM,KAAK,GAAG,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,CAAC,0CAA0C;QACzD,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE5C,qDAAqD;QACrD,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,iEAAiE;YACjE,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxB,qDAAqD;gBACrD,OAAO,cAAc,MAAM,QAAQ,IAAI,GAAG,MAAM,IAAI,CAAC;YACvD,CAAC;iBAAM,CAAC;gBACN,kDAAkD;gBAClD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;gBAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;gBACrD,OAAO,cAAc,MAAM,QAAQ,MAAM,IAAI,WAAW,GAAG,MAAM,IAAI,CAAC;YACxE,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,CAAC,4CAA4C;IAC3D,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,QAAgB;QACpC,MAAM,OAAO,GAA2B;YACtC,OAAO,EAAE,SAAS;YAClB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,UAAU;YACpB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,SAAS;YAClB,GAAG,EAAE,KAAK;YACV,GAAG,EAAE,KAAK;YACV,SAAS,EAAE,WAAW;YACtB,IAAI,EAAE,MAAM;YACZ,GAAG,EAAE,KAAK;YACV,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,UAAU;YACpB,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,WAAW;YACtB,6DAA6D;YAC7D,gEAAgE;YAChE,MAAM,EAAE,QAAQ;YAChB,gEAAgE;YAChE,KAAK,EAAE,OAAO;YACd,gEAAgE;YAChE,QAAQ,EAAE,UAAU;YACpB,gEAAgE;YAChE,eAAe,EAAE,iBAAiB;YAClC,gEAAgE;YAChE,SAAS,EAAE,WAAW;SACvB,CAAC;QAEF,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC;IACvC,CAAC;IAED;;;OAGG;IACK,kBAAkB,CAAC,IAAY;QACrC,4EAA4E;QAC5E,mFAAmF;QACnF,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;YAC/B,CAAC,CAAC,IAAI,CAAC;QAET,OAAO,CACL,WAAW,KAAK,OAAO;YACvB,WAAW,KAAK,OAAO;YACvB,WAAW,KAAK,WAAW;YAC3B,WAAW,KAAK,UAAU;YAC1B,WAAW,KAAK,YAAY,CAC7B,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAAC,UAAkB;QAChD,4EAA4E;QAC5E,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACvE,OAAO,QAAQ,UAAU,oBAAoB,CAAC;QAChD,CAAC;QACD,sCAAsC;QACtC,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,6BAA6B,CACnC,IAAY,EACZ,WAAsC;QAEtC,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;QACrD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAEhD,sEAAsE;QACtE,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,aAAa,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9D,OAAO,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5C,CAAC;QAED,mDAAmD;QACnD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAE7D,8DAA8D;QAC9D,OAAO,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,IAAY;QACtC,OAAO,CACL,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO;YAC7C,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,aAAa;YACnC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAC3B,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;gBAC5B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACxB,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAC5B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,IAAY;QAIvC,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO,CAAC;QAClD,IAAI,QAAQ,GAAG,GAAG,CAAC;QAEnB,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClB,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9D,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClB,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACK,sBAAsB,CAC5B,MAAc,EACd,QAAgB,EAChB,aAAgC;QAEhC,MAAM,UAAU,GAAG,WAAW,CAAC;QAE/B,mGAAmG;QACnG,MAAM,WAAW,GAAsB;YACrC,aAAa,EAAE,UAAU;YACzB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;YACjC,gBAAgB,EAAE,GAAG,UAAU,QAAQ;SACxC,CAAC;QAEF,wDAAwD;QACxD,MAAM,aAAa,GAAG,IAAI,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAErD,yDAAyD;QACzD,mEAAmE;QACnE,OAAO,qCAAqC,MAAM,MAAM,QAAQ,SAAS,UAAU,UAAU,SAAS,GAAG,CAAC;IAC5G,CAAC;IAEO,8BAA8B,CACpC,IAAY,EACZ,WAAsC;QAEtC,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;QAErD,oDAAoD;QACpD,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,GAAa,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;QAED,6DAA6D;QAC7D,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAEhD,+DAA+D;QAC/D,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IAC5D,CAAC;IAEO,6BAA6B,CAAC,IAAY;QAChD,sDAAsD;QACtD,MAAM,UAAU,GAAG,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrE,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,OAAO,cAAc,MAAM,MAAM,IAAI,OAAO,CAAC;QAC/C,CAAC;QAED,yCAAyC;QACzC,MAAM,eAAe,GAAG,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1E,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,IAAI,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;YAEhC,qEAAqE;YACrE,6DAA6D;YAC7D,MAAM,gBAAgB,GAAG;gBACvB,OAAO;gBACP,MAAM;gBACN,QAAQ;gBACR,SAAS;gBACT,YAAY;aACb,CAAC;YACF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACrC,MAAM,WAAW,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAE1D,IAAI,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3C,uDAAuD;gBACvD,OAAO,cAAc,MAAM,MAAM,IAAI,OAAO,CAAC;YAC/C,CAAC;YAED,0FAA0F;YAC1F,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,IACL,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC5B,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC5B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACxB,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACxB,CAAC;YACD,gCAAgC;YAChC,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,aAAa,aAAa,IAAI,OAAO,CAAC;QAC1E,CAAC;aAAM,CAAC;YACN,gEAAgE;YAChE,oDAAoD;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,yBAAyB,CAAC,IAAY;QAC5C,IACE,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC5B,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;YAC5B,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACxB,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EACxB,CAAC;YACD,6DAA6D;YAC7D,OAAO;gBACL,GAAG,IAAI,CAAC,OAAO;gBACf,gBAAgB,EAAE,cAAc,IAAI,CAAC,OAAO,CAAC,aAAa,aAAa,IAAI,IAAI;aAChF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,GAAG,IAAI,CAAC,OAAO;gBACf,gBAAgB,EAAE,IAAI;aACvB,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,YAA8B;QACrD,OAAO,YAAY,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACnE,CAAC;IAEO,sBAAsB,CAC5B,QAAgB,EAChB,IAAY,EACZ,KAAa;QAEb,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE/C,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;YAC1C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,YAAY,GAAG,QAAQ;aAC1B,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC;aAC9C,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;IACpD,CAAC;IAEO,uBAAuB,CAAC,YAAoB;QAClD,yEAAyE;QACzE,MAAM,SAAS,GAAG;YAChB,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,SAAS;YACT,UAAU;YACV,KAAK;YACL,IAAI;YACJ,KAAK;YACL,KAAK;YACL,KAAK;YACL,IAAI;YACJ,IAAI;YACJ,IAAI;YACJ,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;YACH,GAAG;SACJ,CAAC;QAEF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpC,OAAO,QAAQ,CAAC;YAClB,CAAC;QACH,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,mBAAmB,CAAC,KAAuC;QACjE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;QAC1C,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC1B,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YACtC,iEAAiE;YACjE,OAAO,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACtC,CAAC;aAAM,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACjD,OAAO,MAAM,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;QAC1D,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,YAAoB,EAAE,IAAc;QACjE,MAAM,WAAW,GAA+C;YAC9D,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;YACjD,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC/C,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC/C,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAC7C,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC/C,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAC7C,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC/C,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;YACjD,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,4BAA4B,EAAE;YACzD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;YACjD,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;YAC3C,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC;YACvD,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC;YACtE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,IAAI,CAAC;SACxE,CAAC;QAEF,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,YAAY,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,0EAA0E;IAClE,oBAAoB,CAC1B,IAAc,EACd,IAAa,EACb,aAAiC;QAEjC,kGAAkG;QAClG,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;QAC5D,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,IAAa;QAC3C,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,gCAAgC,EAAE,CAAC;QACjD,CAAC;QAED,gDAAgD;QAChD,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,oBAAoB,CAAC;IAC5D,CAAC;IAEO,oBAAoB,CAAC,IAAY;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAEhC,0DAA0D;QAC1D,IAAI,WAAW,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACtC,OAAO,UAAU,IAAI,EAAE,CAAC;QAC1B,CAAC;QAED,8CAA8C;QAC9C,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,sEAAsE;QACtE,oEAAoE;QACpE,4EAA4E;QAC5E,8DAA8D;QAC9D,4CAA4C;QAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,IAAI,yBAAyB,IAAI,6BAA6B,CAAC;QAC5E,CAAC;QAED,OAAO,IAAI,IAAI,eAAe,CAAC;IACjC,CAAC;IAEO,gCAAgC;QACtC,8DAA8D;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAEtC,0CAA0C;QAC1C,IAAI,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,mCAAmC;QACnC,IAAI,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,OAAO,UAAU,OAAO,EAAE,CAAC;QAC7B,CAAC;QAED,8CAA8C;QAC9C,IAAI,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,CAAC;YAC7C,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,4EAA4E;QAC5E,yEAAyE;QACzE,2BAA2B;QAC3B,IAAI,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,OAAO,yBAAyB,OAAO,6BAA6B,CAAC;QAClF,CAAC;QAED,8BAA8B;QAC9B,OAAO,IAAI,OAAO,eAAe,CAAC;IACpC,CAAC;IAED;;OAEG;IACK,qBAAqB,CAC3B,IAAY,EACZ,aAAgC;QAEhC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,YAAY,CAAC;QAEhC,MAAM,WAAW,GAAsB;YACrC,aAAa,EAAE,UAAU;YACzB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;YACjC,gBAAgB,EAAE,GAAG,UAAU,QAAQ;SACxC,CAAC;QAEF,MAAM,aAAa,GAAG,IAAI,qBAAqB,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAErD,OAAO,kCAAkC,MAAM,MAAM,QAAQ,SAAS,UAAU,UAAU,SAAS,GAAG,CAAC;IACzG,CAAC;IAED;;OAEG;IACK,oBAAoB,CAC1B,GAAW,EACX,IAAa,EACb,aAAiC;QAEjC,iFAAiF;QACjF,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAE9B,4CAA4C;QAC5C,IAAI,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,gFAAgF;QAChF,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACrC,OAAO,UAAU,GAAG,EAAE,CAAC;QACzB,CAAC;QAED,gDAAgD;QAChD,IAAI,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;YACzC,OAAO,GAAG,CAAC;QACb,CAAC;QAED,0EAA0E;QAC1E,4EAA4E;QAC5E,mDAAmD;QACnD,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACtC,OAAO,IAAI,GAAG,yBAAyB,GAAG,6BAA6B,CAAC;QAC1E,CAAC;QAED,sCAAsC;QACtC,OAAO,IAAI,GAAG,eAAe,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,IAAY;QACtC,OAAO,CACL,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YACtB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACvB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CACzB,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,IAAc;QACxC,qEAAqE;QACrE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3B,8DAA8D;YAC9D,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,OAAO,QAAQ,UAAU,GAAG,CAAC;YAC/B,CAAC;YAED,OAAO;eACE,UAAU;+BACM,UAAU;0BACf,UAAU;;eAErB,CAAC;QACZ,CAAC;QAED,iDAAiD;QACjD,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAClC,kEAAkE;YAClE,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrD,OAAO,QAAQ,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,CAAC;YAClD,CAAC;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzD,OAAO;iBACE,IAAI,CAAC,OAAO,CAAC,gBAAgB;sBACxB,IAAI,CAAC,OAAO,CAAC,gBAAgB;sBAC7B,IAAI,CAAC,OAAO,CAAC,gBAAgB;;iBAElC,CAAC;YACZ,CAAC;iBAAM,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChE,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,gBAAgB,iCAAiC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,OAAO;4BACa,IAAI,CAAC,OAAO,CAAC,gBAAgB;iCACxB,IAAI,CAAC,OAAO,CAAC,gBAAgB;;iBAE7C,CAAC;YACZ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,aAAa,sCAAsC,CAAC;QACxF,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,KAAe;QACzC,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAClC,wDAAwD;YACxD,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzD,MAAM,KAAK,GAAG,oCAAoC,CAAC,IAAI,CACrD,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAC9B,CAAC;gBACF,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACtB,OAAO,cAAc,MAAM,MAAM,IAAI,OAAO,CAAC;gBAC/C,CAAC;YACH,CAAC;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClD,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACvC,CAAC;YACD,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,gBAAgB,WAAW,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,aAAa,gBAAgB,CAAC;QAClE,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,IAAc;QACvC,MAAM,QAAQ,GACZ,IAAI,CAAC,MAAM,GAAG,CAAC;YACb,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACT,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB;gBAC9B,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO,CAAC,CAAC;QAC5C,OAAO,cAAc,QAAQ,cAAc,CAAC;IAC9C,CAAC;IAEO,mBAAmB,CAAC,IAAc;QACxC,MAAM,SAAS,GACb,IAAI,CAAC,MAAM,GAAG,CAAC;YACb,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACT,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB;gBAC9B,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO,CAAC,CAAC;QAC5C,OAAO,qBAAqB,SAAS,GAAG,CAAC;IAC3C,CAAC;IAEO,kBAAkB,CAAC,IAAc;QACvC,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QAED,MAAM,OAAO,GACX,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO,CAAC;QAExE,+FAA+F;QAC/F,yEAAyE;QACzE,MAAM,gBAAgB,GACpB,qDAAqD,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEtE,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB;YACzD,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;YAExD,uEAAuE;YACvE,0EAA0E;YAC1E,uEAAuE;YACvE,2EAA2E;YAC3E,0EAA0E;YAC1E,iDAAiD;YACjD,OAAO,oDAAoD,SAAS;8BAC5C,MAAM,MAAM,UAAU;0DACM,UAAU;+CACrB,CAAC;QAC5C,CAAC;QAED,wEAAwE;QACxE,2EAA2E;QAC3E,wDAAwD;QACxD,OAAO,yCAAyC,SAAS;4BACjC,OAAO;kCACD,CAAC;IACjC,CAAC;IAEO,mBAAmB,CAAC,KAAe;QACzC,mGAAmG;QACnG,MAAM,IAAI,KAAK,CACb,qEAAqE,CACtE,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAAC,IAAc;QACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAEO,4BAA4B;QAClC,uEAAuE;QACvE,OAAO,UAAU,IAAI,CAAC,OAAO,CAAC,aAAa,mCAAmC,IAAI,CAAC,OAAO,CAAC,aAAa,iBAAiB,CAAC;IAC5H,CAAC;IAEO,oBAAoB,CAAC,KAAe;QAC1C,oGAAoG;QACpG,MAAM,IAAI,KAAK,CACb,uEAAuE,CACxE,CAAC;IACJ,CAAC;IAEO,qCAAqC,CAC3C,YAA2B;QAE3B,uDAAuD;QACvD,mDAAmD;QAEnD,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAClC,+EAA+E;YAC/E,0CAA0C;YAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC;YAEhD,IAAI,aAAqB,CAAC;YAE1B,qEAAqE;YACrE,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrC,2CAA2C;gBAC3C,MAAM,KAAK,GAAG,oCAAoC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACnE,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACxB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACtB,aAAa,GAAG,cAAc,MAAM,MAAM,IAAI,cAAc,CAAC;gBAC/D,CAAC;qBAAM,CAAC;oBACN,WAAW;oBACX,aAAa,GAAG,cAAc,SAAS,kBAAkB,CAAC;gBAC5D,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,sDAAsD;gBACtD,aAAa,GAAG,cAAc,SAAS,kBAAkB,CAAC;YAC5D,CAAC;YAED,2EAA2E;YAC3E,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,YAAY,aAAa,KAAK,YAAY,CAAC,MAAM,GAAG,CAAC,QAAQ,YAAY,OAAO,aAAa,SAAS,CAAC;YAChH,CAAC;YAED,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,8DAA8D;QAC9D,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IAEO,iBAAiB,CAAC,IAAc;QACtC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5B,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAClC,OAAO,QAAQ,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,CAAC;QAClD,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,uBAAuB,CAAC,IAAc;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QAED,kEAAkE;QAClE,kEAAkE;QAClE,MAAM,YAAY,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7B,MAAM,IAAI,GACR,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO,CAAC;QAExE,uDAAuD;QACvD,uDAAuD;QACvD,OAAO,qCAAqC,IAAI,uDAAuD,YAAY,GAAG,CAAC;IACzH,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACK,sBAAsB,CAAC,YAAoB,EAAE,IAAc;QACjE,6EAA6E;QAC7E,qEAAqE;QACrE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,GAAG,YAAY,yDAAyD,CACzE,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,YAAY,KAAK,aAAa,CAAC;QAC7C,MAAM,KAAK,GACT,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,OAAO,CAAC;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QAE3C,2EAA2E;QAC3E,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,MAAM;oBACT,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC5C,KAAK,UAAU;oBACb,OAAO,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAChD,KAAK,MAAM;oBACT,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC5C,KAAK,SAAS;oBACZ,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC/C;oBACE,MAAM,IAAI,KAAK,CACb,GAAG,YAAY,0CAA0C,QAAQ,GAAG,CACrE,CAAC;YACN,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,OAAO,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED;;;;;OAKG;IACK,kBAAkB,CAAC,KAAa,EAAE,KAAc;QACtD,0EAA0E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,0EAA0E;QAC1E,kDAAkD;QAClD,OAAO;aACE,KAAK;4BACU,KAAK,cAAc,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,KAAK,CAAC;4BACzD,KAAK,cAAc,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC;4BACrD,KAAK,cAAc,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC;kBAC/D,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,CAAC;QAC/C,CAAC;IACP,CAAC;IAED;;;;OAIG;IACK,eAAe,CAAC,KAAa,EAAE,KAAc;QACnD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,YAAY,KAAK;sBACR,KAAK;sBACL,KAAK;eACZ,KAAK;UACV,CAAC;QACP,CAAC;QACD,OAAO,YAAY,KAAK;oBACR,KAAK;sDAC6B,KAAK;aAC9C,KAAK;QACV,CAAC;IACP,CAAC;IAED;;;;;;;;OAQG;IACK,mBAAmB,CAAC,KAAa,EAAE,KAAc;QACvD,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC;QAC3D,MAAM,QAAQ,GAAG,aAAa,KAAK,aAAa,KAAK,IAAI,CAAC;QAC1D,OAAO;aACE,KAAK;4BACU,KAAK,eAAe,UAAU,QAAQ,QAAQ,GAAG,EAAE;kBAC7D,KAAK,iBAAiB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE;QAC/E,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACK,eAAe,CAAC,KAAa,EAAE,KAAc;QACnD,OAAO;aACE,KAAK;aACL,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC;QACxC,CAAC;IACP,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,QAAgB,EAAE,KAAc;QACvD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;QACvC,OAAO,YAAY,QAAQ;oBACX,QAAQ,OAAO,OAAO;oBACtB,QAAQ,OAAO,MAAM;aAC5B,QAAQ;QACb,CAAC;IACP,CAAC;IAED;;;;;;OAMG;IACK,kBAAkB,CAAC,KAAa,EAAE,KAAc;QACtD,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC7B,qDAAqD;QACrD,MAAM,cAAc,GAAG,4BAA4B,KAAK,yBAAyB,KAAK,sBAAsB,KAAK,OAAO,CAAC;QACzH,6EAA6E;QAC7E,MAAM,KAAK,GAAG,8BAA8B,cAAc,6BAA6B,CAAC;QACxF,OAAO,QAAQ,KAAK,wBAAwB,EAAE,IAAI,KAAK,EAAE,CAAC;IAC5D,CAAC;CACF;AA/xDD,sDA+xDC"}
|
package/dist/load.d.ts
CHANGED
|
@@ -5,6 +5,15 @@
|
|
|
5
5
|
* @author John Grimes
|
|
6
6
|
*/
|
|
7
7
|
import { Command } from "commander";
|
|
8
|
+
import type { LoaderOptions } from "./loader/types.js";
|
|
9
|
+
/**
|
|
10
|
+
* Build loader options from command options.
|
|
11
|
+
*
|
|
12
|
+
* @param directory - Directory to load from.
|
|
13
|
+
* @param commandOptions - Command options.
|
|
14
|
+
* @returns Loader options.
|
|
15
|
+
*/
|
|
16
|
+
export declare function buildLoaderOptions(directory: string, commandOptions: Record<string, unknown>): LoaderOptions;
|
|
8
17
|
/**
|
|
9
18
|
* Create the load command.
|
|
10
19
|
*
|
package/dist/load.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AA8BvD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACtC,aAAa,CAmCf;AAyBD;;;;GAIG;AAEH,wBAAgB,iBAAiB,IAAI,OAAO,CAkD3C"}
|
package/dist/load.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* @author John Grimes
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.buildLoaderOptions = buildLoaderOptions;
|
|
9
10
|
exports.createLoadCommand = createLoadCommand;
|
|
10
11
|
const commander_1 = require("commander");
|
|
11
12
|
const index_js_1 = require("./loader/index.js");
|
|
@@ -52,6 +53,7 @@ function buildLoaderOptions(directory, commandOptions) {
|
|
|
52
53
|
resourceType: commandOptions.resourceType,
|
|
53
54
|
tableName: commandOptions.tableName,
|
|
54
55
|
schemaName: commandOptions.schemaName,
|
|
56
|
+
resourceJsonDataType: commandOptions.resourceJsonDataType,
|
|
55
57
|
createTable: commandOptions.createTable,
|
|
56
58
|
truncate: commandOptions.truncate,
|
|
57
59
|
batchSize: commandOptions.batchSize,
|
|
@@ -87,6 +89,7 @@ async function handleLoadCommand(directory, commandOptions) {
|
|
|
87
89
|
*
|
|
88
90
|
* @returns Commander command for loading NDJSON files.
|
|
89
91
|
*/
|
|
92
|
+
// eslint-disable-next-line max-lines-per-function -- Declares the full CLI option set.
|
|
90
93
|
function createLoadCommand() {
|
|
91
94
|
const command = new commander_1.Command("load");
|
|
92
95
|
command
|
|
@@ -103,6 +106,7 @@ function createLoadCommand() {
|
|
|
103
106
|
.option("--resource-type <type>", "Only load specific resource type")
|
|
104
107
|
.option("--table-name <name>", "Table name (default: fhir_resources)")
|
|
105
108
|
.option("--schema-name <name>", "Schema name (default: dbo)")
|
|
109
|
+
.option("--resource-json-data-type <type>", "Storage type for the json column: NVARCHAR(MAX) (default) or JSON (SQL Server 2025+)")
|
|
106
110
|
.option("--no-create-table", "Do not create table if it doesn't exist")
|
|
107
111
|
.option("--truncate", "Truncate table before loading", false)
|
|
108
112
|
.option("--batch-size <size>", "Number of rows per batch", parseInt, 1000)
|
package/dist/load.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load.js","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;;
|
|
1
|
+
{"version":3,"file":"load.js","sourceRoot":"","sources":["../src/load.ts"],"names":[],"mappings":";;AAEA;;;;GAIG;;AAyCH,gDAsCC;AA+BD,8CAkDC;AA9JD,yCAAoC;AACpC,gDAA8E;AAG9E;;;;;GAKG;AACH,SAAS,uBAAuB,CAAC,cAAuC;IAStE,OAAO;QACL,IAAI,EAAG,cAAc,CAAC,IAA2B,IAAI,WAAW;QAChE,IAAI,EAAG,cAAc,CAAC,IAA2B,IAAI,IAAI;QACzD,IAAI,EAAG,cAAc,CAAC,IAA2B,IAAI,IAAI;QACzD,QAAQ,EAAG,cAAc,CAAC,QAA+B,IAAI,OAAO;QACpE,QAAQ,EAAG,cAAc,CAAC,QAA+B,IAAI,OAAO;QACpE,sBAAsB,EAAE,cAAc,CAAC,sBAE1B;QACb,cAAc,EAAE,cAAc,CAAC,cAAoC;KACpE,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAChC,SAAiB,EACjB,cAAuC;IAEvC,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM;QACpC,CAAC,CAAC,uBAAuB,CAAC,cAAc,CAAC;QACzC,CAAC,CAAC,IAAA,mCAAwB,EAAC;YACvB,IAAI,EAAE,cAAc,CAAC,IAA0B;YAC/C,IAAI,EAAE,cAAc,CAAC,IAA0B;YAC/C,IAAI,EAAE,cAAc,CAAC,IAA0B;YAC/C,QAAQ,EAAE,cAAc,CAAC,QAA8B;YACvD,QAAQ,EAAE,cAAc,CAAC,QAA8B;YACvD,sBAAsB,EAAE,cAAc,CAAC,sBAE1B;YACb,cAAc,EAAE,cAAc,CAAC,cAAoC;SACpE,CAAC,CAAC;IAEP,OAAO;QACL,SAAS;QACT,QAAQ;QACR,OAAO,EAAE,cAAc,CAAC,OAA6B;QACrD,YAAY,EAAE,cAAc,CAAC,YAAkC;QAC/D,SAAS,EAAE,cAAc,CAAC,SAA+B;QACzD,UAAU,EAAE,cAAc,CAAC,UAAgC;QAC3D,oBAAoB,EAAE,cAAc,CAAC,oBAExB;QACb,WAAW,EAAE,cAAc,CAAC,WAAkC;QAC9D,QAAQ,EAAE,cAAc,CAAC,QAA+B;QACxD,SAAS,EAAE,cAAc,CAAC,SAA+B;QACzD,QAAQ,EAAE,cAAc,CAAC,QAA8B;QACvD,eAAe,EAAE,cAAc,CAAC,eAAsC;QACtE,MAAM,EAAE,cAAc,CAAC,MAA6B;QACpD,OAAO,EAAE,cAAc,CAAC,OAA8B;QACtD,KAAK,EAAE,cAAc,CAAC,KAA4B;QAClD,QAAQ,EAAE,cAAc,CAAC,QAA+B;KACzD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,iBAAiB,CAC9B,SAAiB,EACjB,cAAuC;IAEvC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,kBAAkB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,MAAM,IAAA,0BAAe,EAAC,OAAO,CAAC,CAAC;QAE/C,IAAI,OAAO,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,uFAAuF;AACvF,SAAgB,iBAAiB;IAC/B,MAAM,OAAO,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC,CAAC;IAEpC,OAAO;SACJ,WAAW,CAAC,mCAAmC,CAAC;SAChD,QAAQ,CAAC,aAAa,EAAE,mCAAmC,CAAC;SAC5D,MAAM,CAAC,eAAe,EAAE,0BAA0B,CAAC;SACnD,MAAM,CAAC,eAAe,EAAE,sBAAsB,EAAE,QAAQ,CAAC;SACzD,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC;SAC5C,MAAM,CAAC,uBAAuB,EAAE,mBAAmB,CAAC;SACpD,MAAM,CAAC,uBAAuB,EAAE,eAAe,CAAC;SAChD,MAAM,CAAC,4BAA4B,EAAE,0BAA0B,EAAE,KAAK,CAAC;SACvE,MAAM,CACL,wBAAwB,EACxB,iCAAiC,EACjC,QAAQ,EACR,MAAM,CACP;SACA,MAAM,CACL,qBAAqB,EACrB,sDAAsD,CACvD;SACA,MAAM,CAAC,wBAAwB,EAAE,kCAAkC,CAAC;SACpE,MAAM,CAAC,qBAAqB,EAAE,sCAAsC,CAAC;SACrE,MAAM,CAAC,sBAAsB,EAAE,4BAA4B,CAAC;SAC5D,MAAM,CACL,kCAAkC,EAClC,sFAAsF,CACvF;SACA,MAAM,CAAC,mBAAmB,EAAE,yCAAyC,CAAC;SACtE,MAAM,CAAC,YAAY,EAAE,+BAA+B,EAAE,KAAK,CAAC;SAC5D,MAAM,CAAC,qBAAqB,EAAE,0BAA0B,EAAE,QAAQ,EAAE,IAAI,CAAC;SACzE,MAAM,CACL,oBAAoB,EACpB,wCAAwC,EACxC,QAAQ,EACR,CAAC,CACF;SACA,MAAM,CACL,qBAAqB,EACrB,2CAA2C,EAC3C,KAAK,CACN;SACA,MAAM,CAAC,WAAW,EAAE,2CAA2C,EAAE,KAAK,CAAC;SACvE,MAAM,CAAC,WAAW,EAAE,wBAAwB,EAAE,KAAK,CAAC;SACpD,MAAM,CAAC,SAAS,EAAE,gBAAgB,EAAE,KAAK,CAAC;SAC1C,MAAM,CAAC,YAAY,EAAE,mBAAmB,EAAE,KAAK,CAAC;SAChD,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAE7B,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Integration tests for misconfiguration feedback (US4).
|
|
3
|
+
*
|
|
4
|
+
* Covers: invalid values rejected before any connection is opened (FR-003,
|
|
5
|
+
* runs without a database); an existing-table type mismatch emitting a warning
|
|
6
|
+
* and leaving the table unaltered (FR-008, runs on any server); and the SQL
|
|
7
|
+
* Server "unsupported type" error being surfaced rather than swallowed when
|
|
8
|
+
* JSON is requested on a server that does not support it (FR-009, runs only on
|
|
9
|
+
* pre-2025 servers).
|
|
10
|
+
*
|
|
11
|
+
* @author John Grimes
|
|
12
|
+
*/
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=feedback.integration.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedback.integration.test.d.ts","sourceRoot":"","sources":["../../src/loader/feedback.integration.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
|