@powersync/service-sync-rules 0.29.4 → 0.29.6
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/dist/BaseSqlDataQuery.d.ts +3 -3
- package/dist/BaseSqlDataQuery.js +6 -6
- package/dist/BaseSqlDataQuery.js.map +1 -1
- package/dist/SqlBucketDescriptor.js +2 -2
- package/dist/SqlBucketDescriptor.js.map +1 -1
- package/dist/SqlDataQuery.js +6 -6
- package/dist/SqlDataQuery.js.map +1 -1
- package/dist/SqlParameterQuery.d.ts +5 -4
- package/dist/SqlParameterQuery.js +20 -15
- package/dist/SqlParameterQuery.js.map +1 -1
- package/dist/StaticSqlParameterQuery.js +11 -9
- package/dist/StaticSqlParameterQuery.js.map +1 -1
- package/dist/TableQuerySchema.d.ts +6 -1
- package/dist/TableQuerySchema.js +6 -2
- package/dist/TableQuerySchema.js.map +1 -1
- package/dist/TableValuedFunctionSqlParameterQuery.d.ts +4 -2
- package/dist/TableValuedFunctionSqlParameterQuery.js +26 -15
- package/dist/TableValuedFunctionSqlParameterQuery.js.map +1 -1
- package/dist/events/SqlEventSourceQuery.js +5 -5
- package/dist/events/SqlEventSourceQuery.js.map +1 -1
- package/dist/request_functions.d.ts +19 -7
- package/dist/request_functions.js +8 -10
- package/dist/request_functions.js.map +1 -1
- package/dist/schema-generators/RoomSchemaGenerator.d.ts +13 -0
- package/dist/schema-generators/RoomSchemaGenerator.js +53 -0
- package/dist/schema-generators/RoomSchemaGenerator.js.map +1 -0
- package/dist/schema-generators/SchemaGenerator.d.ts +1 -1
- package/dist/schema-generators/SqlSchemaGenerator.d.ts +15 -0
- package/dist/schema-generators/SqlSchemaGenerator.js +31 -0
- package/dist/schema-generators/SqlSchemaGenerator.js.map +1 -0
- package/dist/schema-generators/schema-generators.d.ts +4 -0
- package/dist/schema-generators/schema-generators.js +4 -0
- package/dist/schema-generators/schema-generators.js.map +1 -1
- package/dist/sql_filters.d.ts +42 -13
- package/dist/sql_filters.js +64 -32
- package/dist/sql_filters.js.map +1 -1
- package/dist/sql_support.js +13 -14
- package/dist/sql_support.js.map +1 -1
- package/dist/streams/from_sql.js +38 -24
- package/dist/streams/from_sql.js.map +1 -1
- package/dist/streams/functions.js +3 -5
- package/dist/streams/functions.js.map +1 -1
- package/dist/streams/stream.js +2 -2
- package/dist/streams/stream.js.map +1 -1
- package/dist/types.d.ts +32 -15
- package/dist/types.js +10 -4
- package/dist/types.js.map +1 -1
- package/dist/validators.d.ts +14 -0
- package/dist/validators.js +63 -0
- package/dist/validators.js.map +1 -0
- package/package.json +2 -2
package/dist/sql_filters.js
CHANGED
|
@@ -10,12 +10,56 @@ export const MATCH_CONST_FALSE = [];
|
|
|
10
10
|
export const MATCH_CONST_TRUE = [{}];
|
|
11
11
|
Object.freeze(MATCH_CONST_TRUE);
|
|
12
12
|
Object.freeze(MATCH_CONST_FALSE);
|
|
13
|
+
/**
|
|
14
|
+
* A table that has been made available to a result set by being included in a `FROM`.
|
|
15
|
+
*
|
|
16
|
+
* This is used to lookup references inside queries only, which is why this doesn't reference the schema name (that's
|
|
17
|
+
* covered by {@link TablePattern}).
|
|
18
|
+
*/
|
|
19
|
+
export class AvailableTable {
|
|
20
|
+
/**
|
|
21
|
+
* The name of the table in the schema.
|
|
22
|
+
*/
|
|
23
|
+
nameInSchema;
|
|
24
|
+
/**
|
|
25
|
+
* The alias under which the {@link nameInSchema} is made available to the current query.
|
|
26
|
+
*/
|
|
27
|
+
alias;
|
|
28
|
+
/**
|
|
29
|
+
* The name a table has in an SQL expression context.
|
|
30
|
+
*/
|
|
31
|
+
get sqlName() {
|
|
32
|
+
return this.alias ?? this.nameInSchema;
|
|
33
|
+
}
|
|
34
|
+
get isAliased() {
|
|
35
|
+
return this.sqlName != this.nameInSchema;
|
|
36
|
+
}
|
|
37
|
+
constructor(schemaName, alias) {
|
|
38
|
+
this.nameInSchema = schemaName;
|
|
39
|
+
this.alias = alias;
|
|
40
|
+
}
|
|
41
|
+
static fromAst(name) {
|
|
42
|
+
return new AvailableTable(name.name, name.alias);
|
|
43
|
+
}
|
|
44
|
+
static fromCall(name) {
|
|
45
|
+
return new AvailableTable(name.function.name, name.alias?.name);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Finds the first table matching the given name in SQL.
|
|
49
|
+
*/
|
|
50
|
+
static search(identifier, available) {
|
|
51
|
+
const target = identifier instanceof AvailableTable ? identifier.sqlName : identifier;
|
|
52
|
+
return available.find((tbl) => tbl.sqlName == target);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
13
55
|
export class SqlTools {
|
|
14
56
|
defaultTable;
|
|
15
57
|
valueTables;
|
|
16
58
|
/**
|
|
17
59
|
* ['bucket'] for data queries
|
|
18
60
|
* ['token_parameters', 'user_parameters'] for parameter queries
|
|
61
|
+
*
|
|
62
|
+
* These are never aliased.
|
|
19
63
|
*/
|
|
20
64
|
parameterTables;
|
|
21
65
|
sql;
|
|
@@ -107,10 +151,10 @@ export class SqlTools {
|
|
|
107
151
|
this.checkRef(table, expr);
|
|
108
152
|
return {
|
|
109
153
|
evaluate(tables) {
|
|
110
|
-
return tables[table]?.[column];
|
|
154
|
+
return tables[table.nameInSchema]?.[column];
|
|
111
155
|
},
|
|
112
156
|
getColumnDefinition(schema) {
|
|
113
|
-
return schema.getColumn(table, column);
|
|
157
|
+
return schema.getColumn(table.nameInSchema, column);
|
|
114
158
|
}
|
|
115
159
|
};
|
|
116
160
|
}
|
|
@@ -259,13 +303,13 @@ export class SqlTools {
|
|
|
259
303
|
}
|
|
260
304
|
const parameterArguments = compiledArguments;
|
|
261
305
|
return {
|
|
306
|
+
function: impl,
|
|
262
307
|
key: `${schema}.${fn}(${parameterArguments.map((p) => p.key).join(',')})`,
|
|
263
308
|
lookupParameterValue(parameters) {
|
|
264
309
|
const evaluatedArgs = parameterArguments.map((p) => p.lookupParameterValue(parameters));
|
|
265
310
|
return impl.call(parameters, ...evaluatedArgs);
|
|
266
311
|
},
|
|
267
|
-
|
|
268
|
-
usesUnauthenticatedRequestParameters: impl.usesUnauthenticatedRequestParameters
|
|
312
|
+
visitChildren: (v) => parameterArguments.forEach(v)
|
|
269
313
|
};
|
|
270
314
|
}
|
|
271
315
|
}
|
|
@@ -334,8 +378,7 @@ export class SqlTools {
|
|
|
334
378
|
return { [inputParam.key]: value };
|
|
335
379
|
});
|
|
336
380
|
},
|
|
337
|
-
|
|
338
|
-
usesUnauthenticatedRequestParameters: leftFilter.usesUnauthenticatedRequestParameters
|
|
381
|
+
visitChildren: (v) => v(leftFilter)
|
|
339
382
|
};
|
|
340
383
|
}
|
|
341
384
|
else if (this.supportsExpandingParameters &&
|
|
@@ -367,8 +410,7 @@ export class SqlTools {
|
|
|
367
410
|
}
|
|
368
411
|
return [{ [inputParam.key]: value }];
|
|
369
412
|
},
|
|
370
|
-
|
|
371
|
-
usesUnauthenticatedRequestParameters: rightFilter.usesUnauthenticatedRequestParameters
|
|
413
|
+
visitChildren: (v) => v(rightFilter)
|
|
372
414
|
};
|
|
373
415
|
}
|
|
374
416
|
else {
|
|
@@ -411,8 +453,7 @@ export class SqlTools {
|
|
|
411
453
|
return { [inputParam.key]: value };
|
|
412
454
|
});
|
|
413
455
|
},
|
|
414
|
-
|
|
415
|
-
usesUnauthenticatedRequestParameters: leftFilter.usesUnauthenticatedRequestParameters
|
|
456
|
+
visitChildren: (v) => v(leftFilter)
|
|
416
457
|
};
|
|
417
458
|
}
|
|
418
459
|
else if (this.supportsExpandingParameters &&
|
|
@@ -450,8 +491,7 @@ export class SqlTools {
|
|
|
450
491
|
return { [inputParam.key]: value };
|
|
451
492
|
});
|
|
452
493
|
},
|
|
453
|
-
|
|
454
|
-
usesUnauthenticatedRequestParameters: rightFilter.usesUnauthenticatedRequestParameters
|
|
494
|
+
visitChildren: (v) => v(rightFilter)
|
|
455
495
|
};
|
|
456
496
|
}
|
|
457
497
|
else {
|
|
@@ -478,8 +518,7 @@ export class SqlTools {
|
|
|
478
518
|
}
|
|
479
519
|
return [{ [inputParam.key]: value }];
|
|
480
520
|
},
|
|
481
|
-
|
|
482
|
-
usesUnauthenticatedRequestParameters: otherFilter.usesUnauthenticatedRequestParameters
|
|
521
|
+
visitChildren: (v) => v(otherFilter)
|
|
483
522
|
};
|
|
484
523
|
}
|
|
485
524
|
/**
|
|
@@ -514,8 +553,8 @@ export class SqlTools {
|
|
|
514
553
|
if (expr.type != 'ref') {
|
|
515
554
|
return false;
|
|
516
555
|
}
|
|
517
|
-
const tableName = expr.table?.name ?? this.defaultTable;
|
|
518
|
-
return
|
|
556
|
+
const tableName = expr.table?.name ?? this.defaultTable ?? '';
|
|
557
|
+
return AvailableTable.search(tableName, this.parameterTables) != null;
|
|
519
558
|
}
|
|
520
559
|
/**
|
|
521
560
|
* Check if an expression is a value_tables reference.
|
|
@@ -586,22 +625,21 @@ export class SqlTools {
|
|
|
586
625
|
}
|
|
587
626
|
checkRef(table, ref) {
|
|
588
627
|
if (this.schema) {
|
|
589
|
-
const type = this.schema.getColumn(table, ref.name);
|
|
628
|
+
const type = this.schema.getColumn(table.nameInSchema, ref.name);
|
|
590
629
|
if (type == null) {
|
|
591
630
|
this.warn(`Column not found: ${ref.name}`, ref);
|
|
592
631
|
}
|
|
593
632
|
}
|
|
594
633
|
}
|
|
595
634
|
getParameterRefClause(expr) {
|
|
596
|
-
const table = (expr.table?.name ?? this.defaultTable);
|
|
635
|
+
const table = AvailableTable.search(expr.table?.name ?? this.defaultTable, this.parameterTables).nameInSchema;
|
|
597
636
|
const column = expr.name;
|
|
598
637
|
return {
|
|
638
|
+
table,
|
|
599
639
|
key: `${table}.${column}`,
|
|
600
640
|
lookupParameterValue: (parameters) => {
|
|
601
641
|
return parameters.lookup(table, column);
|
|
602
|
-
}
|
|
603
|
-
usesAuthenticatedRequestParameters: table == 'token_parameters',
|
|
604
|
-
usesUnauthenticatedRequestParameters: table == 'user_parameters'
|
|
642
|
+
}
|
|
605
643
|
};
|
|
606
644
|
}
|
|
607
645
|
refHasSchema(ref) {
|
|
@@ -617,8 +655,9 @@ export class SqlTools {
|
|
|
617
655
|
throw new SqlRuleError(`Specifying schema in column references is not supported`, this.sql, ref);
|
|
618
656
|
}
|
|
619
657
|
const tableName = ref.table?.name ?? this.defaultTable;
|
|
620
|
-
|
|
621
|
-
|
|
658
|
+
const found = AvailableTable.search(tableName, this.valueTables);
|
|
659
|
+
if (found != null) {
|
|
660
|
+
return found;
|
|
622
661
|
}
|
|
623
662
|
else if (ref.table?.name == null) {
|
|
624
663
|
throw new SqlRuleError(`Table name required`, this.sql, ref);
|
|
@@ -674,10 +713,6 @@ export class SqlTools {
|
|
|
674
713
|
else if (argsType == 'param') {
|
|
675
714
|
const argStrings = argClauses.map((e) => e.key);
|
|
676
715
|
const name = `${fnImpl.debugName}(${argStrings.join(',')})`;
|
|
677
|
-
const usesAuthenticatedRequestParameters = argClauses.find((clause) => isParameterValueClause(clause) && clause.usesAuthenticatedRequestParameters) !=
|
|
678
|
-
null;
|
|
679
|
-
const usesUnauthenticatedRequestParameters = argClauses.find((clause) => isParameterValueClause(clause) && clause.usesUnauthenticatedRequestParameters) !=
|
|
680
|
-
null;
|
|
681
716
|
return {
|
|
682
717
|
key: name,
|
|
683
718
|
lookupParameterValue: (parameters) => {
|
|
@@ -694,8 +729,7 @@ export class SqlTools {
|
|
|
694
729
|
});
|
|
695
730
|
return fnImpl.call(...args);
|
|
696
731
|
},
|
|
697
|
-
|
|
698
|
-
usesUnauthenticatedRequestParameters
|
|
732
|
+
visitChildren: (v) => argClauses.forEach(v)
|
|
699
733
|
};
|
|
700
734
|
}
|
|
701
735
|
else {
|
|
@@ -793,9 +827,7 @@ function staticValueClause(value) {
|
|
|
793
827
|
key: JSONBig.stringify(value),
|
|
794
828
|
lookupParameterValue(_parameters) {
|
|
795
829
|
return value;
|
|
796
|
-
}
|
|
797
|
-
usesAuthenticatedRequestParameters: false,
|
|
798
|
-
usesUnauthenticatedRequestParameters: false
|
|
830
|
+
}
|
|
799
831
|
};
|
|
800
832
|
}
|
|
801
833
|
function basicInputParameter(clause) {
|
package/dist/sql_filters.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql_filters.js","sourceRoot":"","sources":["../src/sql_filters.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sql_filters.js","sourceRoot":"","sources":["../src/sql_filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAGrD,OAAO,EAAkB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAA6C,MAAM,wBAAwB,CAAC;AACtG,OAAO,EACL,eAAe,EACf,WAAW,EACX,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,EAEhB,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,YAAY,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,YAAY,EACZ,WAAW,EACX,UAAU,EACV,qBAAqB,EACrB,aAAa,EACb,sBAAsB,EACtB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACnB,SAAS,EACT,2BAA2B,EAC5B,MAAM,kBAAkB,CAAC;AAe1B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAIzC,MAAM,CAAC,MAAM,iBAAiB,GAA0B,EAAE,CAAC;AAC3D,MAAM,CAAC,MAAM,gBAAgB,GAA0B,CAAC,EAAE,CAAC,CAAC;AAE5D,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAChC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAEjC;;;;;GAKG;AACH,MAAM,OAAO,cAAc;IACzB;;OAEG;IACH,YAAY,CAAS;IAErB;;OAEG;IACH,KAAK,CAAU;IAEf;;OAEG;IACH,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC;IACzC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC;IAC3C,CAAC;IAED,YAAY,UAAkB,EAAE,KAAc;QAC5C,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,IAAkB;QAC/B,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,IAAc;QAC5B,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAM,CACX,UAA+C,EAC/C,SAA2B;QAE3B,MAAM,MAAM,GAAG,UAAU,YAAY,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;QAEtF,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;IACxD,CAAC;CACF;AA2DD,MAAM,OAAO,QAAQ;IACV,YAAY,CAAkB;IAC9B,WAAW,CAAmB;IACvC;;;;;OAKG;IACM,eAAe,CAAmB;IAClC,GAAG,CAAS;IACZ,MAAM,GAAmB,EAAE,CAAC;IAE5B,2BAA2B,CAAU;IACrC,4BAA4B,CAAU;IACtC,kBAAkB,CAAuD;IACzE,oBAAoB,CAAuB;IAC3C,SAAS,CAA0C;IAE5D,MAAM,CAAe;IAErB,YAAY,OAAwB;QAClC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC;QAClC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE7B,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACzC,CAAC;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7B,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC;QACrD,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,2BAA2B,GAAG,OAAO,CAAC,2BAA2B,IAAI,KAAK,CAAC;QAChF,IAAI,CAAC,4BAA4B,GAAG,OAAO,CAAC,4BAA4B,IAAI,KAAK,CAAC;QAClF,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;QACvF,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC;QAEzD,IAAI,CAAC,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,IAAqC;QAC1D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,IAAqC;QACzD,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;QACvB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,KAAiB;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACvC,OAAO,2BAA2B,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,wBAAwB,CAAC,IAAgB;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,OAAO,IAAI,CAAC,KAAK,CAAC,gDAAgD,EAAE,IAAI,IAAI,SAAS,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8BAA8B,CAAC,IAAgB;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,aAAa,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3F,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,gDAAgD,EAAE,IAAI,IAAI,SAAS,CAAC,CAAC;IACzF,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,IAAgB;QAC5B,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,OAAO,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YAC9B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;YACzB,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;gBAClB,OAAO,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;YAClD,CAAC;YACD,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,8CAA8C,EAAE,IAAI,CAAC,CAAC;YAC1E,CAAC;YACD,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC3B,OAAO;oBACL,QAAQ,CAAC,MAAuB;wBAC9B,OAAO,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBAC9C,CAAC;oBACD,mBAAmB,CAAC,MAAM;wBACxB,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;oBACtD,CAAC;iBACuB,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,CAAE,IAAgB,CAAC,KAAK,EAAE,MAAM,EAAG,IAAgB,CAAC,KAAK,EAAE,IAAI,EAAG,IAAgB,CAAC,IAAI,CAAC;qBACjG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;qBACxB,IAAI,CAAC,GAAG,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,KAAK,CAAC,wBAAwB,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;YACjC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC;YACjC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,aAAa,CAAC,UAAU,CAAC,IAAI,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAwB,CAAC;YAC/C,CAAC;YAED,IAAI,EAAE,IAAI,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,OAAO,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBAC7C,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;gBACtB,IAAI,CAAC;oBACH,OAAO,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;gBAC5C,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,WAAW;gBACX,2BAA2B;gBAC3B,iCAAiC;gBACjC,sDAAsD;gBACtD,uCAAuC;gBAEvC,IAAI,aAA6B,CAAC;gBAClC,IAAI,YAA4B,CAAC;gBAEjC,IACE,IAAI,CAAC,4BAA4B;oBACjC,sBAAsB,CAAC,UAAU,CAAC;oBAClC,sBAAsB,CAAC,WAAW,CAAC,EACnC,CAAC;oBACD,oCAAoC;oBACpC,gDAAgD;oBAChD,+DAA+D;oBAC/D,0DAA0D;oBAC1D,yDAAyD;oBACzD,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;oBACxC,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;gBAChF,CAAC;gBAED,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;oBACpE,OAAO,IAAI,CAAC,KAAK,CAAC,2DAA2D,EAAE,IAAI,CAAC,CAAC;gBACvF,CAAC;qBAAM,IAAI,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC;oBACxC,aAAa,GAAG,UAAU,CAAC;oBAC3B,YAAY,GAAG,WAAW,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACN,aAAa,GAAG,WAA6B,CAAC;oBAC9C,YAAY,GAAG,UAAU,CAAC;gBAC5B,CAAC;gBACD,MAAM,YAAY,GAAG,aAAa,CAAC;gBACnC,MAAM,WAAW,GAAG,YAAY,CAAC;gBAEjC,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;oBAClC,2BAA2B;oBAC3B,OAAO,qBAAqB,CAAC,EAAE,EAAE,UAA4B,EAAE,WAA6B,CAAC,CAAC;gBAChG,CAAC;qBAAM,IAAI,sBAAsB,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/C,OAAO,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;gBAC9D,CAAC;qBAAM,IAAI,sBAAsB,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC/C,gCAAgC;oBAChC,6CAA6C;oBAC7C,+EAA+E;oBAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,6CAA6C,EAAE,IAAI,CAAC,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;YACpE,CAAC;iBAAM,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACnC,MAAM,MAAM,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;gBACvC,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,EAAE,IAAI,KAAK,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACtE,CAAC;iBAAM,IAAI,IAAI,CAAC,EAAE,IAAI,SAAS,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1E,CAAC;iBAAM,IAAI,IAAI,CAAC,EAAE,IAAI,aAAa,EAAE,CAAC;gBACpC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC,eAAe,CAAC,oBAAoB,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YAC9E,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;YAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,oBAAoB;YACzD,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAE9B,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,YAAY;gBACZ,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACxC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;gBAC7D,CAAC;gBAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;gBACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrE,OAAO,QAAQ,CAAC;YAClB,CAAC;iBAAM,IAAI,MAAM,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC7C,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC;oBACvC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM,0CAA0C,EAAE,IAAI,CAAC,CAAC;gBAC/E,CAAC;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;gBAEjD,IAAI,IAAI,EAAE,CAAC;oBACT,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;wBAC5C,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,MAAM,IAAI,EAAE,WAAW,IAAI,CAAC,cAAc,aAAa,EAAE,IAAI,CAAC,CAAC;oBAChG,CAAC;oBAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC5D,IAAI,kBAAkB,GAAG,KAAK,CAAC;oBAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC1C,MAAM,QAAQ,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;wBAEtC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACtC,kBAAkB,GAAG,IAAI,CAAC;4BAC1B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAC7B,IAAI,CAAC,KAAK,CAAC,gDAAgD,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC7E,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,IAAI,kBAAkB,EAAE,CAAC;wBACvB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;oBACzB,CAAC;oBAED,MAAM,kBAAkB,GAAG,iBAA2C,CAAC;oBACvE,OAAO;wBACL,QAAQ,EAAE,IAAI;wBACd,GAAG,EAAE,GAAG,MAAM,IAAI,EAAE,IAAI,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;wBACzE,oBAAoB,CAAC,UAAU;4BAC7B,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;4BACxF,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,aAAa,CAAC,CAAC;wBACjD,CAAC;wBACD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC;qBACtB,CAAC;gBAClC,CAAC;YACH,CAAC;YAED,+BAA+B;YAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,MAAM,IAAI,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEjD,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,gCAAgC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YACrE,CAAC;YAED,MAAM,SAAS,GAAW,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/C,MAAM,IAAI,GAAqB,CAAC,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACzE,IAAI,IAAI,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;gBACpB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,uBAAuB,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YACvF,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,sBAAsB,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjD,MAAM,EAAE,GAAI,IAAI,CAAC,EAAU,EAAE,IAAI,EAAE,WAAW,EAAwB,CAAC;YACvE,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YAC5D,CAAC;YACD,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,qBAAqB,EAAE,IAAI,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,eAAe,CAAC,IAAU,EAAE,UAA0B,EAAE,KAAW,EAAE,WAA2B;QAC9F,iBAAiB;QACjB,8BAA8B;QAC9B,8BAA8B;QAC9B,0DAA0D;QAE1D,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC/F,IAAI,WAAW,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YACpC,OAAO,WAAW,CAAC,WAAW,CAAC;QACjC,CAAC;aAAM,IAAI,WAAW,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;YACxC,oEAAoE;YACpE,2BAA2B;YAC3B,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACrF,CAAC;aAAM,IAAI,sBAAsB,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/E,6CAA6C;YAC7C,mCAAmC;YACnC,MAAM,UAAU,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAEnD,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,eAAe,EAAE,CAAC,UAAU,CAAC;gBAC7B,SAAS,EAAE,IAAI;gBACf,SAAS,CAAC,MAAuB;oBAC/B,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC5C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;wBACnB,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC;oBAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC3B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;oBAClC,CAAC;oBACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC1B,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;oBACrC,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;aACL,CAAC;QACnC,CAAC;aAAM,IACL,IAAI,CAAC,2BAA2B;YAChC,gBAAgB,CAAC,UAAU,CAAC;YAC5B,sBAAsB,CAAC,WAAW,CAAC,EACnC,CAAC;YACD,kDAAkD;YAClD,8EAA8E;YAC9E,4CAA4C;YAC5C,MAAM,GAAG,GAAG,GAAG,WAAW,CAAC,GAAG,KAAK,CAAC;YAEpC,MAAM,UAAU,GAAmB;gBACjC,GAAG,EAAE,GAAG;gBACR,OAAO,EAAE,IAAI;gBACb,wBAAwB,EAAE,CAAC,gBAAgB,EAAE,EAAE;oBAC7C,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAC/B,CAAC;gBACD,uBAAuB,EAAE,CAAC,UAAU,EAAE,EAAE;oBACtC,OAAO,WAAW,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;gBACtD,CAAC;aACF,CAAC;YAEF,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,eAAe,EAAE,CAAC,UAAU,CAAC;gBAC7B,SAAS,EAAE,KAAK;gBAChB,SAAS,CAAC,MAAuB;oBAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC1C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;wBACxB,4BAA4B;wBAC5B,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBACD,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACvC,CAAC;gBACD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;aACN,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAM,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,oBAAoB,CAClB,IAAU,EACV,UAA0B,EAC1B,KAAW,EACX,WAA2B;QAE3B,iBAAiB;QACjB,8BAA8B;QAC9B,8BAA8B;QAC9B,0DAA0D;QAE1D,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACpG,IAAI,WAAW,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YACpC,OAAO,WAAW,CAAC,WAAW,CAAC;QACjC,CAAC;aAAM,IAAI,WAAW,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;YACxC,oEAAoE;YACpE,2BAA2B;YAC3B,OAAO,IAAI,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC1F,CAAC;aAAM,IAAI,sBAAsB,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/E,6CAA6C;YAC7C,mCAAmC;YACnC,MAAM,UAAU,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAEnD,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,eAAe,EAAE,CAAC,UAAU,CAAC;gBAC7B,SAAS,EAAE,IAAI;gBACf,SAAS,CAAC,MAAuB;oBAC/B,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC5C,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;wBACnB,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBACD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC;oBAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC3B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;oBAClC,CAAC;oBACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC1B,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;oBACrC,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;aACL,CAAC;QACnC,CAAC;aAAM,IACL,IAAI,CAAC,2BAA2B;YAChC,gBAAgB,CAAC,UAAU,CAAC;YAC5B,sBAAsB,CAAC,WAAW,CAAC,EACnC,CAAC;YACD,kDAAkD;YAClD,oFAAoF;YACpF,4CAA4C;YAC5C,MAAM,GAAG,GAAG,GAAG,WAAW,CAAC,GAAG,KAAK,CAAC;YAEpC,MAAM,UAAU,GAAmB;gBACjC,GAAG,EAAE,GAAG;gBACR,OAAO,EAAE,IAAI;gBACb,wBAAwB,EAAE,CAAC,gBAAgB,EAAE,EAAE;oBAC7C,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAC/B,CAAC;gBACD,uBAAuB,EAAE,CAAC,UAAU,EAAE,EAAE;oBACtC,OAAO,WAAW,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;gBACtD,CAAC;aACF,CAAC;YAEF,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,eAAe,EAAE,CAAC,UAAU,CAAC;gBAC7B,SAAS,EAAE,KAAK;gBAChB,SAAS,CAAC,MAAuB;oBAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBAC1C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;wBACxB,4BAA4B;wBAC5B,OAAO,iBAAiB,CAAC;oBAC3B,CAAC;oBAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC;oBAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC3B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;oBAClC,CAAC;oBACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC1B,OAAO,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;oBACrC,CAAC,CAAC,CAAC;gBACL,CAAC;gBACD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;aACN,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,sDAAsD;YACtD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,KAAM,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,oBAAoB,CAAC,YAA4B,EAAE,WAAiC;QAClF,MAAM,UAAU,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;QAEpD,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,eAAe,EAAE,CAAC,UAAU,CAAC;YAC7B,SAAS,EAAE,KAAK;YAChB,SAAS,CAAC,MAAuB;gBAC/B,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC5C,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;oBAClB,0BAA0B;oBAC1B,iEAAiE;oBACjE,OAAO,iBAAiB,CAAC;gBAC3B,CAAC;gBACD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACxB,iCAAiC;oBACjC,OAAO,iBAAiB,CAAC;gBAC3B,CAAC;gBAED,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACvC,CAAC;YACD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;SACN,CAAC;IACnC,CAAC;IAED;;;;;;OAMG;IACH,aAAa,CAAC,MAAsB;QAClC,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;QAC/B,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;QACD,MAAM,IAAI,YAAY,CAAC,mBAAmB,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,qBAAqB,CAAC,MAAsB;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;YAChB,MAAM,IAAI,YAAY,CAAC,gDAAgD,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAClG,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,IAAU;QAC/B,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC;QAC9D,OAAO,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC;IACxE,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,IAAU;QACnB,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEM,YAAY,CAAC,GAAY;QAC9B,IAAI,GAAG,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAEO,mBAAmB,CAAC,IAAa;QACvC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACzC,yCAAyC;YACzC,OAAO;QACT,CAAC;QAED,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC9B,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC;QAC5C,IAAI,aAAa,IAAI,IAAI,EAAE,CAAC;YAC1B,gDAAgD;YAChD,0CAA0C;YAC1C,QAAQ,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC;QACjE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,MAAM,EAAE,CAAC;YACnC,uDAAuD;YACvD,IAAI,CAAC,IAAI,CAAC,0DAA0D,MAAM,YAAY,EAAE,QAAQ,CAAC,CAAC;QACpG,CAAC;IACH,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,IAAiC;QAC5D,IAAK,IAAqB,CAAC,KAAK,IAAI,IAAI,IAAK,IAAc,CAAC,MAAM,IAAI,IAAI,EAAE,CAAC;YAC3E,wEAAwE;YACxE,uEAAuE;YACvE,OAAO;QACT,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACzC,2DAA2D;YAC3D,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,MAAM,EAAE,CAAC;YACnC,2BAA2B;YAC3B,IAAI,CAAC,IAAI,CAAC,0DAA0D,MAAM,YAAY,EAAE,QAAQ,CAAC,CAAC;QACpG,CAAC;IACH,CAAC;IAEO,QAAQ,CAAC,KAAqB,EAAE,GAAY;QAClD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YACjE,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBACjB,IAAI,CAAC,IAAI,CAAC,qBAAqB,GAAG,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,IAAa;QACzC,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,YAAa,EAAE,IAAI,CAAC,eAAe,CAAE,CAAC,YAAY,CAAC;QAChH,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;QACzB,OAAO;YACL,KAAK;YACL,GAAG,EAAE,GAAG,KAAK,IAAI,MAAM,EAAE;YACzB,oBAAoB,EAAE,CAAC,UAAU,EAAE,EAAE;gBACnC,OAAO,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC1C,CAAC;SACuC,CAAC;IAC7C,CAAC;IAED,YAAY,CAAC,GAAY;QACvB,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,IAAI,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,GAAY;QACvB,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,YAAY,CAAC,yDAAyD,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACnG,CAAC;QACD,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC;QACvD,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEjE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;YACnC,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,YAAY,CAAC,mBAAmB,SAAS,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,eAAe,CAAC,MAAmB,EAAE,UAA4B,EAAE,mBAA2B;QAC5F,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,mBAAmB,CAAC,CAAC;QAC5E,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;YAC/B,OAAO,MAAM,CAAC,WAAW,CAAC;QAC5B,CAAC;aAAM,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAS,CAAC;QAElC,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAuB,CAAC,KAAK,CAAC,CAAC;YACnE,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YACvC,OAAO,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;aAAM,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;YAC7B,OAAO;gBACL,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;oBACnB,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;oBAC3E,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC9B,CAAC;gBACD,mBAAmB,CAAC,MAAM;oBACxB,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAC7B,CAAC,CAAC,EAAE,EAAE,CAAE,CAAoB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,IAAI,IAAI,cAAc,CAAC,IAAI,CACtF,CAAC;oBACF,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvE,CAAC;aACuB,CAAC;QAC7B,CAAC;aAAM,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAA0B,CAAC,GAAG,CAAC,CAAC;YAC1E,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,SAAS,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAE5D,OAAO;gBACL,GAAG,EAAE,IAAI;gBACT,oBAAoB,EAAE,CAAC,UAAU,EAAE,EAAE;oBACnC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;wBAChC,IAAI,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC9B,OAAO,CAAC,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;wBAC5C,CAAC;6BAAM,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;4BAClC,OAAO,CAAC,CAAC,KAAK,CAAC;wBACjB,CAAC;6BAAM,CAAC;4BACN,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;wBAC3C,CAAC;oBACH,CAAC,CAAC,CAAC;oBACH,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC9B,CAAC;gBACD,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;aACb,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,cAAc,CACZ,MAAmB,EACnB,UAA4B,EAC5B,mBAA2B;QAE3B,IAAI,QAAQ,GAA+B,QAAQ,CAAC;QACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,QAAQ,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,8BAA8B;gBAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;YACjC,CAAC;iBAAM,IAAI,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvC,qBAAqB;YACvB,CAAC;iBAAM,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1C,IAAI,CAAC,IAAI,CAAC,4BAA4B,EAAE,CAAC;oBACvC,IAAI,MAAM,CAAC,SAAS,IAAI,YAAY,EAAE,CAAC;wBACrC,oDAAoD;wBACpD,OAAO,EAAE,KAAK,EAAE,gEAAgE,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;oBAC1G,CAAC;oBACD,OAAO,EAAE,KAAK,EAAE,6CAA6C,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;gBACvF,CAAC;gBACD,IAAI,QAAQ,IAAI,QAAQ,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;oBAChD,QAAQ,GAAG,OAAO,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,KAAK,EAAE,4DAA4D,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;gBACtG,CAAC;YACH,CAAC;iBAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,IAAI,QAAQ,IAAI,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;oBAC9C,QAAQ,GAAG,KAAK,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,OAAO,EAAE,KAAK,EAAE,4DAA4D,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;gBACtG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,KAAK,EAAE,6CAA6C,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;YACvF,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,yBAAyB,CAAC,IAAY;QACpC,OAAO,IAAI,IAAI,WAAW,CAAC;IAC7B,CAAC;IAED,qBAAqB,CAAC,IAAU;QAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,2CAA2C,EAAE,IAAI,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,CAAC,kEAAkE,EAAE,IAAI,CAAC,CAAC;YACrF,OAAO;QACT,CAAC;QAED,OAAO,KAAuB,CAAC;IACjC,CAAC;CACF;AAED,SAAS,QAAQ,CAAC,IAAU;IAC1B,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,WAAW,CAAC,IAAU;IAC7B,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;IACjD,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;SAAM,CAAC;QACN,OAAQ,IAAY,CAAC,KAAK,CAAC;IAC7B,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAkB;IAC3C,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,+BAA+B;QAC/B,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;QACrB,mBAAmB;YACjB,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,cAAc,CAAC,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;aACvD,CAAC;QACJ,CAAC;QACD,oCAAoC;QACpC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC;QAC7B,oBAAoB,CAAC,WAAW;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA4B;IACvD,OAAO;QACL,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,OAAO,EAAE,KAAK;QACd,wBAAwB,EAAE,CAAC,gBAAgB,EAAE,EAAE;YAC7C,OAAO,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;QACD,uBAAuB,EAAE,CAAC,UAAU,EAAE,EAAE;YACtC,OAAO,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACjD,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/sql_support.js
CHANGED
|
@@ -63,8 +63,7 @@ export function composeRowValues(options) {
|
|
|
63
63
|
export function composeParameterValues(options) {
|
|
64
64
|
const entries = Object.entries(options.values);
|
|
65
65
|
return {
|
|
66
|
-
|
|
67
|
-
usesUnauthenticatedRequestParameters: entries.some((e) => e[1].usesUnauthenticatedRequestParameters),
|
|
66
|
+
visitChildren: (visitor) => entries.forEach((e) => visitor(e[1])),
|
|
68
67
|
key: `${options.key}${entries.map((e) => e[1].key).join(',')}`,
|
|
69
68
|
lookupParameterValue: function (parameters) {
|
|
70
69
|
const evaluated = Object.fromEntries(Object.entries(options.values).map((e) => {
|
|
@@ -149,8 +148,10 @@ export function andFilters(a, b) {
|
|
|
149
148
|
}
|
|
150
149
|
return results;
|
|
151
150
|
},
|
|
152
|
-
|
|
153
|
-
|
|
151
|
+
visitChildren: (visitor) => {
|
|
152
|
+
visitor(aFilter);
|
|
153
|
+
visitor(bFilter);
|
|
154
|
+
}
|
|
154
155
|
};
|
|
155
156
|
}
|
|
156
157
|
export function orFilters(a, b) {
|
|
@@ -202,10 +203,11 @@ export function orParameterSetClauses(a, b) {
|
|
|
202
203
|
let results = [...aResult, ...bResult];
|
|
203
204
|
return results;
|
|
204
205
|
},
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
206
|
+
specialType: 'or',
|
|
207
|
+
visitChildren: (v) => {
|
|
208
|
+
v(a);
|
|
209
|
+
v(b);
|
|
210
|
+
}
|
|
209
211
|
};
|
|
210
212
|
}
|
|
211
213
|
/**
|
|
@@ -226,8 +228,7 @@ export function toBooleanParameterSetClause(clause) {
|
|
|
226
228
|
const value = sqliteBool(clause.evaluate(tables));
|
|
227
229
|
return value ? MATCH_CONST_TRUE : MATCH_CONST_FALSE;
|
|
228
230
|
},
|
|
229
|
-
|
|
230
|
-
usesUnauthenticatedRequestParameters: false
|
|
231
|
+
visitChildren: (v) => v(clause)
|
|
231
232
|
};
|
|
232
233
|
}
|
|
233
234
|
else if (isClauseError(clause)) {
|
|
@@ -238,8 +239,7 @@ export function toBooleanParameterSetClause(clause) {
|
|
|
238
239
|
filterRow(tables) {
|
|
239
240
|
throw new Error('invalid clause');
|
|
240
241
|
},
|
|
241
|
-
|
|
242
|
-
usesUnauthenticatedRequestParameters: false
|
|
242
|
+
visitChildren: (v) => v(clause)
|
|
243
243
|
};
|
|
244
244
|
}
|
|
245
245
|
else {
|
|
@@ -263,8 +263,7 @@ export function toBooleanParameterSetClause(clause) {
|
|
|
263
263
|
filterRow(tables) {
|
|
264
264
|
return [{ [key]: SQLITE_TRUE }];
|
|
265
265
|
},
|
|
266
|
-
|
|
267
|
-
usesUnauthenticatedRequestParameters: clause.usesUnauthenticatedRequestParameters
|
|
266
|
+
visitChildren: (v) => v(clause)
|
|
268
267
|
};
|
|
269
268
|
}
|
|
270
269
|
}
|
package/dist/sql_support.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql_support.js","sourceRoot":"","sources":["../src/sql_support.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sql_support.js","sourceRoot":"","sources":["../src/sql_support.ts"],"names":[],"mappings":"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"}
|
package/dist/streams/from_sql.js
CHANGED
|
@@ -3,7 +3,7 @@ import { isSelectStatement } from '../utils.js';
|
|
|
3
3
|
import { andFilters, checkUnsupportedFeatures, isClauseError, isParameterMatchClause, isParameterValueClause, isRowValueClause, isStaticValueClause, orFilters } from '../sql_support.js';
|
|
4
4
|
import { TablePattern } from '../TablePattern.js';
|
|
5
5
|
import { TableQuerySchema } from '../TableQuerySchema.js';
|
|
6
|
-
import { SqlTools } from '../sql_filters.js';
|
|
6
|
+
import { AvailableTable, SqlTools } from '../sql_filters.js';
|
|
7
7
|
import { BaseSqlDataQuery } from '../BaseSqlDataQuery.js';
|
|
8
8
|
import { ExpressionType } from '../ExpressionType.js';
|
|
9
9
|
import { SyncStream } from './stream.js';
|
|
@@ -11,6 +11,7 @@ import { And, CompareRowValueWithStreamParameter, EvaluateSimpleCondition, Exist
|
|
|
11
11
|
import { parse } from 'pgsql-ast-parser';
|
|
12
12
|
import { STREAM_FUNCTIONS } from './functions.js';
|
|
13
13
|
import { CompatibilityEdition } from '../compatibility.js';
|
|
14
|
+
import { DetectRequestParameters } from '../validators.js';
|
|
14
15
|
export function syncStreamFromSql(descriptorName, sql, options) {
|
|
15
16
|
const compiler = new SyncStreamCompiler(descriptorName, sql, options);
|
|
16
17
|
return [compiler.compile(), compiler.errors];
|
|
@@ -19,6 +20,7 @@ class SyncStreamCompiler {
|
|
|
19
20
|
descriptorName;
|
|
20
21
|
sql;
|
|
21
22
|
options;
|
|
23
|
+
parameterDetector = new DetectRequestParameters();
|
|
22
24
|
errors;
|
|
23
25
|
constructor(descriptorName, sql, options) {
|
|
24
26
|
this.descriptorName = descriptorName;
|
|
@@ -56,6 +58,13 @@ class SyncStreamCompiler {
|
|
|
56
58
|
stream.variants = filter.compileVariants(this.descriptorName);
|
|
57
59
|
}
|
|
58
60
|
this.errors.push(...tools.errors);
|
|
61
|
+
if (this.parameterDetector.usesStreamParameters && stream.subscribedToByDefault) {
|
|
62
|
+
const error = new SqlRuleError('Clients subscribe to this stream by default, but it uses subscription parameters. Default subscriptions use ' +
|
|
63
|
+
'null for all parameters, which can lead to unintentional results. Try removing the parameter or not ' +
|
|
64
|
+
'marking the stream as auto-subscribe.', tools.sql, undefined);
|
|
65
|
+
error.type = 'warning';
|
|
66
|
+
this.errors.push(error);
|
|
67
|
+
}
|
|
59
68
|
return stream;
|
|
60
69
|
}
|
|
61
70
|
compileDataQuery(tools, query, alias, sourceTable) {
|
|
@@ -84,7 +93,7 @@ class SyncStreamCompiler {
|
|
|
84
93
|
else {
|
|
85
94
|
extractors.push({
|
|
86
95
|
extract: (tables, output) => {
|
|
87
|
-
const row = tables[alias];
|
|
96
|
+
const row = tables[alias.nameInSchema];
|
|
88
97
|
for (let key in row) {
|
|
89
98
|
if (key.startsWith('_')) {
|
|
90
99
|
continue;
|
|
@@ -93,7 +102,7 @@ class SyncStreamCompiler {
|
|
|
93
102
|
}
|
|
94
103
|
},
|
|
95
104
|
getTypes(schema, into) {
|
|
96
|
-
for (let column of schema.getColumns(alias)) {
|
|
105
|
+
for (let column of schema.getColumns(alias.nameInSchema)) {
|
|
97
106
|
into[column.name] ??= column;
|
|
98
107
|
}
|
|
99
108
|
}
|
|
@@ -109,7 +118,7 @@ class SyncStreamCompiler {
|
|
|
109
118
|
hasId = true;
|
|
110
119
|
}
|
|
111
120
|
else {
|
|
112
|
-
const idType = querySchema.getColumn(alias, 'id')?.type ?? ExpressionType.NONE;
|
|
121
|
+
const idType = querySchema.getColumn(alias.nameInSchema, 'id')?.type ?? ExpressionType.NONE;
|
|
113
122
|
if (!idType.isNone()) {
|
|
114
123
|
hasId = true;
|
|
115
124
|
}
|
|
@@ -198,7 +207,8 @@ class SyncStreamCompiler {
|
|
|
198
207
|
}
|
|
199
208
|
}
|
|
200
209
|
const regularClause = tools.compileClause(clause);
|
|
201
|
-
|
|
210
|
+
this.parameterDetector.accept(regularClause);
|
|
211
|
+
return this.compiledClauseToFilter(tools, clause?._location ?? null, regularClause);
|
|
202
212
|
}
|
|
203
213
|
compileInOperator(tools, clause) {
|
|
204
214
|
// There are different kinds of `IN` operators we support in stream definitions:
|
|
@@ -235,7 +245,7 @@ class SyncStreamCompiler {
|
|
|
235
245
|
// left clause doesn't depend on row data however, we can push it down into the subquery where it would be
|
|
236
246
|
// introduced as a parameter: `EXISTS (SELECT _ FROM users WHERE is_admin AND user_id = request.user_id())`.
|
|
237
247
|
const additionalClause = subqueryTools.parameterMatchClause(subquery.column, left);
|
|
238
|
-
subquery.addFilter(compiledClauseToFilter(subqueryTools, null, additionalClause));
|
|
248
|
+
subquery.addFilter(this.compiledClauseToFilter(subqueryTools, null, additionalClause));
|
|
239
249
|
return new ExistsOperator(location, subquery);
|
|
240
250
|
}
|
|
241
251
|
else {
|
|
@@ -248,7 +258,7 @@ class SyncStreamCompiler {
|
|
|
248
258
|
// a ParameterMatchClause, which we can translate via CompareRowValueWithStreamParameter. Case 5 is either a row-value
|
|
249
259
|
// or a parameter-value clause which we can wrap in EvaluateSimpleCondition.
|
|
250
260
|
const combined = tools.compileInClause(clause.left, left, clause.right, right);
|
|
251
|
-
return compiledClauseToFilter(tools, location, combined);
|
|
261
|
+
return this.compiledClauseToFilter(tools, location, combined);
|
|
252
262
|
}
|
|
253
263
|
compileOverlapOperator(tools, clause) {
|
|
254
264
|
const left = tools.compileClause(clause.left);
|
|
@@ -275,7 +285,7 @@ class SyncStreamCompiler {
|
|
|
275
285
|
// a ParameterMatchClause, which we can translate via CompareRowValueWithStreamParameter. Case 5 is either a row-value
|
|
276
286
|
// or a parameter-value clause which we can wrap in EvaluateSimpleCondition.
|
|
277
287
|
const combined = tools.compileOverlapClause(clause.left, left, clause.right, right);
|
|
278
|
-
return compiledClauseToFilter(tools, location, combined);
|
|
288
|
+
return this.compiledClauseToFilter(tools, location, combined);
|
|
279
289
|
}
|
|
280
290
|
compileSubquery(stmt) {
|
|
281
291
|
// A subquery is similar to a data query in legacy sync rules. Importantly, despite being an expression, subqueries
|
|
@@ -313,7 +323,10 @@ class SyncStreamCompiler {
|
|
|
313
323
|
}
|
|
314
324
|
const where = tools.compileClause(query.where);
|
|
315
325
|
this.errors.push(...tools.errors);
|
|
316
|
-
return [
|
|
326
|
+
return [
|
|
327
|
+
new Subquery(sourceTable, column, this.compiledClauseToFilter(tools, query.where?._location, where)),
|
|
328
|
+
tools
|
|
329
|
+
];
|
|
317
330
|
}
|
|
318
331
|
checkValidSelectStatement(stmt) {
|
|
319
332
|
if (!isSelectStatement(stmt)) {
|
|
@@ -327,7 +340,7 @@ class SyncStreamCompiler {
|
|
|
327
340
|
if (tableRef?.name == null) {
|
|
328
341
|
throw new SqlRuleError('Must SELECT from a single table', this.sql, stmt.from?.[0]._location);
|
|
329
342
|
}
|
|
330
|
-
const alias =
|
|
343
|
+
const alias = AvailableTable.fromAst(tableRef);
|
|
331
344
|
const sourceTable = new TablePattern(tableRef.schema ?? this.options.defaultSchema, tableRef.name);
|
|
332
345
|
let querySchema = undefined;
|
|
333
346
|
const schema = this.options.schema;
|
|
@@ -350,6 +363,21 @@ class SyncStreamCompiler {
|
|
|
350
363
|
sourceTable
|
|
351
364
|
};
|
|
352
365
|
}
|
|
366
|
+
compiledClauseToFilter(tools, location, regularClause) {
|
|
367
|
+
this.parameterDetector.accept(regularClause);
|
|
368
|
+
if (isScalarExpression(regularClause)) {
|
|
369
|
+
return new EvaluateSimpleCondition(location ?? null, regularClause);
|
|
370
|
+
}
|
|
371
|
+
else if (isParameterMatchClause(regularClause)) {
|
|
372
|
+
return new CompareRowValueWithStreamParameter(location ?? null, regularClause);
|
|
373
|
+
}
|
|
374
|
+
else if (isClauseError(regularClause)) {
|
|
375
|
+
return recoverErrorClause(tools);
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
throw new Error('Unknown clause type');
|
|
379
|
+
}
|
|
380
|
+
}
|
|
353
381
|
}
|
|
354
382
|
function isScalarExpression(clause) {
|
|
355
383
|
return isRowValueClause(clause) || isStaticValueClause(clause) || isParameterValueClause(clause);
|
|
@@ -358,18 +386,4 @@ function recoverErrorClause(tools) {
|
|
|
358
386
|
// An error has already been logged.
|
|
359
387
|
return new EvaluateSimpleCondition(null, tools.compileClause(null));
|
|
360
388
|
}
|
|
361
|
-
function compiledClauseToFilter(tools, location, regularClause) {
|
|
362
|
-
if (isScalarExpression(regularClause)) {
|
|
363
|
-
return new EvaluateSimpleCondition(location ?? null, regularClause);
|
|
364
|
-
}
|
|
365
|
-
else if (isParameterMatchClause(regularClause)) {
|
|
366
|
-
return new CompareRowValueWithStreamParameter(location ?? null, regularClause);
|
|
367
|
-
}
|
|
368
|
-
else if (isClauseError(regularClause)) {
|
|
369
|
-
return recoverErrorClause(tools);
|
|
370
|
-
}
|
|
371
|
-
else {
|
|
372
|
-
throw new Error('Unknown clause type');
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
389
|
//# sourceMappingURL=from_sql.js.map
|