leangraph 1.0.1 → 1.1.1
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 +198 -111
- package/dist/auth.d.ts +1 -4
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +5 -15
- package/dist/auth.js.map +1 -1
- package/dist/backup.d.ts +1 -3
- package/dist/backup.d.ts.map +1 -1
- package/dist/backup.js +10 -15
- package/dist/backup.js.map +1 -1
- package/dist/cli-helpers.d.ts +2 -3
- package/dist/cli-helpers.d.ts.map +1 -1
- package/dist/cli-helpers.js +11 -30
- package/dist/cli-helpers.js.map +1 -1
- package/dist/cli.js +82 -129
- package/dist/cli.js.map +1 -1
- package/dist/db.d.ts +9 -2
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +82 -9
- package/dist/db.js.map +1 -1
- package/dist/executor.d.ts +114 -0
- package/dist/executor.d.ts.map +1 -1
- package/dist/executor.js +1248 -341
- package/dist/executor.js.map +1 -1
- package/dist/index.d.ts +8 -34
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -38
- package/dist/index.js.map +1 -1
- package/dist/local.d.ts +3 -3
- package/dist/local.d.ts.map +1 -1
- package/dist/local.js +13 -15
- package/dist/local.js.map +1 -1
- package/dist/parser.d.ts +15 -3
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +231 -42
- package/dist/parser.js.map +1 -1
- package/dist/remote.d.ts +3 -3
- package/dist/remote.d.ts.map +1 -1
- package/dist/remote.js +8 -10
- package/dist/remote.js.map +1 -1
- package/dist/routes.d.ts +0 -1
- package/dist/routes.d.ts.map +1 -1
- package/dist/routes.js +15 -39
- package/dist/routes.js.map +1 -1
- package/dist/server.js +1 -1
- package/dist/server.js.map +1 -1
- package/dist/translator.d.ts +36 -0
- package/dist/translator.d.ts.map +1 -1
- package/dist/translator.js +634 -136
- package/dist/translator.js.map +1 -1
- package/dist/types.d.ts +24 -26
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +2 -2
- package/dist/types.js.map +1 -1
- package/package.json +8 -2
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAEA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAMtC,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC;CAClC;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/db.js
CHANGED
|
@@ -23,6 +23,9 @@ CREATE TABLE IF NOT EXISTS edges (
|
|
|
23
23
|
CREATE INDEX IF NOT EXISTS idx_edges_type ON edges(type);
|
|
24
24
|
CREATE INDEX IF NOT EXISTS idx_edges_source ON edges(source_id);
|
|
25
25
|
CREATE INDEX IF NOT EXISTS idx_edges_target ON edges(target_id);
|
|
26
|
+
CREATE INDEX IF NOT EXISTS idx_edges_source_type ON edges(source_id, type);
|
|
27
|
+
CREATE INDEX IF NOT EXISTS idx_edges_target_type ON edges(target_id, type);
|
|
28
|
+
CREATE INDEX IF NOT EXISTS idx_nodes_primary_label ON nodes(json_extract(label, '$[0]'));
|
|
26
29
|
`;
|
|
27
30
|
// ============================================================================
|
|
28
31
|
// Helpers
|
|
@@ -347,6 +350,30 @@ function registerCypherFunctions(db) {
|
|
|
347
350
|
return null;
|
|
348
351
|
return boolA || boolB ? 1 : 0;
|
|
349
352
|
});
|
|
353
|
+
// cypher_to_json_bool: Convert 0/1/null to JSON boolean for RETURN results
|
|
354
|
+
// This preserves boolean type information through SQLite's JSON functions
|
|
355
|
+
db.function("cypher_to_json_bool", { deterministic: true }, (x) => {
|
|
356
|
+
const b = toBoolValue(x);
|
|
357
|
+
if (b === null)
|
|
358
|
+
return null;
|
|
359
|
+
return b ? "true" : "false"; // Returns JSON boolean literal string
|
|
360
|
+
});
|
|
361
|
+
// cypher_bool_eq: Boolean-aware equality comparison
|
|
362
|
+
// Handles cases where one side is a JSON boolean string ('true'/'false') and the other is an integer (1/0)
|
|
363
|
+
// Returns: 1 if equal, 0 if not equal, null if either is null
|
|
364
|
+
db.function("cypher_bool_eq", { deterministic: true }, (a, b) => {
|
|
365
|
+
if (a === null || a === undefined || b === null || b === undefined)
|
|
366
|
+
return null;
|
|
367
|
+
// Try to normalize both to booleans if they look like boolean values
|
|
368
|
+
const boolA = toBoolValue(a);
|
|
369
|
+
const boolB = toBoolValue(b);
|
|
370
|
+
// If both are recognized as booleans, compare them as booleans
|
|
371
|
+
if (boolA !== null && boolB !== null) {
|
|
372
|
+
return boolA === boolB ? 1 : 0;
|
|
373
|
+
}
|
|
374
|
+
// Fall back to regular equality
|
|
375
|
+
return a === b ? 1 : 0;
|
|
376
|
+
});
|
|
350
377
|
// cypher_compare: Type-aware comparison for ordering operators (<, <=, >, >=)
|
|
351
378
|
// Returns: 1 if condition is true, 0 if false, null if types are incompatible
|
|
352
379
|
db.function("cypher_lt", { deterministic: true }, (a, b) => {
|
|
@@ -497,14 +524,36 @@ function registerCypherFunctions(db) {
|
|
|
497
524
|
// For primitives (boolean, string), direct comparison
|
|
498
525
|
return val1 === val2 ? 1 : 0;
|
|
499
526
|
});
|
|
527
|
+
// cypher_regex: Regex matching for =~ operator
|
|
528
|
+
// Returns: 1 if pattern matches, 0 if not, null if either operand is null
|
|
529
|
+
db.function("cypher_regex", { deterministic: true }, (str, pattern) => {
|
|
530
|
+
if (str === null || str === undefined || pattern === null || pattern === undefined)
|
|
531
|
+
return null;
|
|
532
|
+
if (typeof str !== "string" || typeof pattern !== "string")
|
|
533
|
+
return 0;
|
|
534
|
+
try {
|
|
535
|
+
const regex = new RegExp(pattern);
|
|
536
|
+
return regex.test(str) ? 1 : 0;
|
|
537
|
+
}
|
|
538
|
+
catch {
|
|
539
|
+
// Invalid regex pattern
|
|
540
|
+
return 0;
|
|
541
|
+
}
|
|
542
|
+
});
|
|
500
543
|
}
|
|
501
544
|
export class GraphDatabase {
|
|
502
545
|
db;
|
|
503
546
|
initialized = false;
|
|
547
|
+
stmtCache = new Map();
|
|
548
|
+
STMT_CACHE_MAX = 100;
|
|
504
549
|
constructor(path = ":memory:") {
|
|
505
550
|
this.db = new Database(path);
|
|
506
551
|
this.db.pragma("journal_mode = WAL");
|
|
507
552
|
this.db.pragma("foreign_keys = ON");
|
|
553
|
+
this.db.pragma("synchronous = NORMAL"); // Safe with WAL, faster writes
|
|
554
|
+
this.db.pragma("cache_size = -64000"); // 64MB cache (default is 2MB)
|
|
555
|
+
this.db.pragma("temp_store = MEMORY"); // Temp tables in RAM
|
|
556
|
+
this.db.pragma("mmap_size = 268435456"); // 256MB memory-mapped I/O
|
|
508
557
|
// Register custom Cypher functions
|
|
509
558
|
registerCypherFunctions(this.db);
|
|
510
559
|
}
|
|
@@ -517,6 +566,29 @@ export class GraphDatabase {
|
|
|
517
566
|
this.db.exec(SCHEMA);
|
|
518
567
|
this.initialized = true;
|
|
519
568
|
}
|
|
569
|
+
/**
|
|
570
|
+
* Get a cached prepared statement, or create and cache a new one
|
|
571
|
+
* Uses LRU eviction: recently accessed entries are moved to end of Map
|
|
572
|
+
*/
|
|
573
|
+
getCachedStatement(sql) {
|
|
574
|
+
let stmt = this.stmtCache.get(sql);
|
|
575
|
+
if (stmt) {
|
|
576
|
+
// Move to end for LRU (delete and re-add)
|
|
577
|
+
this.stmtCache.delete(sql);
|
|
578
|
+
this.stmtCache.set(sql, stmt);
|
|
579
|
+
return stmt;
|
|
580
|
+
}
|
|
581
|
+
// Not cached - prepare and add
|
|
582
|
+
stmt = this.db.prepare(sql);
|
|
583
|
+
if (this.stmtCache.size >= this.STMT_CACHE_MAX) {
|
|
584
|
+
// Evict least recently used (first entry)
|
|
585
|
+
const firstKey = this.stmtCache.keys().next().value;
|
|
586
|
+
if (firstKey)
|
|
587
|
+
this.stmtCache.delete(firstKey);
|
|
588
|
+
}
|
|
589
|
+
this.stmtCache.set(sql, stmt);
|
|
590
|
+
return stmt;
|
|
591
|
+
}
|
|
520
592
|
/**
|
|
521
593
|
* Execute a SQL statement and return results
|
|
522
594
|
*/
|
|
@@ -524,7 +596,7 @@ export class GraphDatabase {
|
|
|
524
596
|
this.ensureInitialized();
|
|
525
597
|
// Convert large integers to BigInt for proper SQLite INTEGER binding
|
|
526
598
|
const convertedParams = convertParamsForSqlite(params);
|
|
527
|
-
const stmt = this.
|
|
599
|
+
const stmt = this.getCachedStatement(sql);
|
|
528
600
|
const trimmedSql = sql.trim().toUpperCase();
|
|
529
601
|
// Check if it's a query (SELECT or WITH for CTEs)
|
|
530
602
|
const isQuery = trimmedSql.startsWith("SELECT") || trimmedSql.startsWith("WITH");
|
|
@@ -597,7 +669,8 @@ export class GraphDatabase {
|
|
|
597
669
|
* Get all nodes with a given label
|
|
598
670
|
*/
|
|
599
671
|
getNodesByLabel(label) {
|
|
600
|
-
|
|
672
|
+
// Use index for primary label, fallback for secondary labels
|
|
673
|
+
const result = this.execute(`SELECT * FROM nodes WHERE json_extract(label, '$[0]') = ? OR EXISTS (SELECT 1 FROM json_each(label) WHERE value = ? AND json_extract(label, '$[0]') != ?)`, [label, label, label]);
|
|
601
674
|
return result.rows.map((row) => {
|
|
602
675
|
const r = row;
|
|
603
676
|
const labelArray = JSON.parse(r.label);
|
|
@@ -663,6 +736,7 @@ export class GraphDatabase {
|
|
|
663
736
|
* Close the database connection
|
|
664
737
|
*/
|
|
665
738
|
close() {
|
|
739
|
+
this.stmtCache.clear();
|
|
666
740
|
this.db.close();
|
|
667
741
|
}
|
|
668
742
|
/**
|
|
@@ -687,19 +761,18 @@ export class DatabaseManager {
|
|
|
687
761
|
this.basePath = basePath;
|
|
688
762
|
}
|
|
689
763
|
/**
|
|
690
|
-
* Get or create a database for a project
|
|
764
|
+
* Get or create a database for a project
|
|
691
765
|
*/
|
|
692
|
-
getDatabase(project
|
|
693
|
-
|
|
694
|
-
if (!this.databases.has(key)) {
|
|
766
|
+
getDatabase(project) {
|
|
767
|
+
if (!this.databases.has(project)) {
|
|
695
768
|
const path = this.basePath === ":memory:"
|
|
696
769
|
? ":memory:"
|
|
697
|
-
: `${this.basePath}/${
|
|
770
|
+
: `${this.basePath}/${project}.db`;
|
|
698
771
|
const db = new GraphDatabase(path);
|
|
699
772
|
db.initialize();
|
|
700
|
-
this.databases.set(
|
|
773
|
+
this.databases.set(project, db);
|
|
701
774
|
}
|
|
702
|
-
return this.databases.get(
|
|
775
|
+
return this.databases.get(project);
|
|
703
776
|
}
|
|
704
777
|
/**
|
|
705
778
|
* Close all database connections
|
package/dist/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|
package/dist/executor.d.ts
CHANGED
|
@@ -35,11 +35,64 @@ export interface ExecutionError {
|
|
|
35
35
|
export type QueryResponse = ExecutionResult | ExecutionError;
|
|
36
36
|
export declare class Executor {
|
|
37
37
|
private db;
|
|
38
|
+
private propertyCache;
|
|
39
|
+
private edgePropertyCache;
|
|
40
|
+
private edgeInfoCache;
|
|
38
41
|
constructor(db: GraphDatabase);
|
|
42
|
+
/**
|
|
43
|
+
* Get node properties from cache or parse from JSON string and cache them
|
|
44
|
+
*/
|
|
45
|
+
private getNodeProperties;
|
|
46
|
+
/**
|
|
47
|
+
* Get edge properties from cache or parse from JSON string and cache them
|
|
48
|
+
*/
|
|
49
|
+
private getEdgeProperties;
|
|
50
|
+
/**
|
|
51
|
+
* Invalidate cached properties for a node or edge after it has been updated
|
|
52
|
+
*/
|
|
53
|
+
private invalidatePropertyCache;
|
|
54
|
+
/**
|
|
55
|
+
* Extract edge ID from various representations (object with _nf_id/id, JSON string, or raw ID)
|
|
56
|
+
*/
|
|
57
|
+
private extractEdgeId;
|
|
58
|
+
/**
|
|
59
|
+
* Batch fetch edge info for multiple edge IDs in a single query
|
|
60
|
+
* Returns a Map from edge ID to edge info (id, type, source_id, target_id, properties)
|
|
61
|
+
*/
|
|
62
|
+
private batchGetEdgeInfo;
|
|
39
63
|
/**
|
|
40
64
|
* Execute a Cypher query and return formatted results
|
|
41
65
|
*/
|
|
42
66
|
execute(cypher: string, params?: Record<string, unknown>): QueryResponse;
|
|
67
|
+
/**
|
|
68
|
+
* Single-pass query classifier - scans clauses once to determine execution pattern
|
|
69
|
+
*
|
|
70
|
+
* This replaces the sequential try*Execution() calls that each scanned all clauses.
|
|
71
|
+
* By doing one pass and collecting all needed flags, we avoid O(n*m) complexity
|
|
72
|
+
* where n is number of clauses and m is number of try* methods.
|
|
73
|
+
*/
|
|
74
|
+
private classifyQuery;
|
|
75
|
+
/**
|
|
76
|
+
* Determine execution pattern from collected flags
|
|
77
|
+
* Order matters - patterns are checked in priority order
|
|
78
|
+
*/
|
|
79
|
+
private determineQueryPattern;
|
|
80
|
+
/**
|
|
81
|
+
* Check if a pattern references any of the given variables
|
|
82
|
+
*/
|
|
83
|
+
private patternReferencesVariables;
|
|
84
|
+
/**
|
|
85
|
+
* Check if node properties reference any of the given variables
|
|
86
|
+
*/
|
|
87
|
+
private nodePropertiesReferenceVariables;
|
|
88
|
+
/**
|
|
89
|
+
* Check if edge properties reference any of the given variables
|
|
90
|
+
*/
|
|
91
|
+
private edgePropertiesReferenceVariables;
|
|
92
|
+
/**
|
|
93
|
+
* Check if a property value references any of the given variables
|
|
94
|
+
*/
|
|
95
|
+
private propertyValueReferencesVariables;
|
|
43
96
|
/**
|
|
44
97
|
* Check if a query needs phase-based execution and execute it if so.
|
|
45
98
|
*
|
|
@@ -150,6 +203,7 @@ export declare class Executor {
|
|
|
150
203
|
/**
|
|
151
204
|
* Execute a single clause and update context
|
|
152
205
|
*/
|
|
206
|
+
private isReadOnlyClause;
|
|
153
207
|
private executeClause;
|
|
154
208
|
/**
|
|
155
209
|
* Execute CREATE clause
|
|
@@ -239,8 +293,25 @@ export declare class Executor {
|
|
|
239
293
|
* Transform a MATCH clause to substitute context variable references with parameter references.
|
|
240
294
|
* This converts WHERE conditions like `n.id = foo` (where foo is from context)
|
|
241
295
|
* to `n.id = $_ctx_foo` so the translator can handle it.
|
|
296
|
+
* Also transforms pattern properties like {name: foo} to use context parameters.
|
|
297
|
+
*
|
|
298
|
+
* For bound variables that appear as sources in relationship patterns, we add
|
|
299
|
+
* WHERE constraints like `id(n) = $_ctx_n` so the translator knows to include
|
|
300
|
+
* the node in the FROM clause.
|
|
242
301
|
*/
|
|
243
302
|
private transformClauseForContext;
|
|
303
|
+
/**
|
|
304
|
+
* Transform pattern properties to use context parameter references
|
|
305
|
+
*/
|
|
306
|
+
private transformPatternPropertiesForContext;
|
|
307
|
+
/**
|
|
308
|
+
* Transform node properties to use context parameter references
|
|
309
|
+
*/
|
|
310
|
+
private transformNodePropertiesForContext;
|
|
311
|
+
/**
|
|
312
|
+
* Transform a properties map to use context parameter references
|
|
313
|
+
*/
|
|
314
|
+
private transformPropertiesMapForContext;
|
|
244
315
|
/**
|
|
245
316
|
* Transform a WHERE condition to substitute context variable references with parameter references
|
|
246
317
|
*/
|
|
@@ -542,6 +613,44 @@ export declare class Executor {
|
|
|
542
613
|
* Get a name for an expression (for default aliases)
|
|
543
614
|
*/
|
|
544
615
|
private getExpressionName;
|
|
616
|
+
/**
|
|
617
|
+
* Execute queries with FOREACH clause.
|
|
618
|
+
* FOREACH iterates over a list and executes mutation clauses for each item.
|
|
619
|
+
* Pattern: ... FOREACH (var IN list | SET/CREATE/DELETE...) ...
|
|
620
|
+
*/
|
|
621
|
+
private tryForeachExecution;
|
|
622
|
+
/**
|
|
623
|
+
* Execute a FOREACH clause within PhaseContext.
|
|
624
|
+
*/
|
|
625
|
+
private executeForeachClause;
|
|
626
|
+
/**
|
|
627
|
+
* Execute a single clause within FOREACH body.
|
|
628
|
+
*/
|
|
629
|
+
private executeForeachBodyClause;
|
|
630
|
+
/**
|
|
631
|
+
* Execute SET within FOREACH context using Map-based row.
|
|
632
|
+
*/
|
|
633
|
+
private executeForeachSetInRow;
|
|
634
|
+
/**
|
|
635
|
+
* Execute CREATE within FOREACH context using Map-based row.
|
|
636
|
+
*/
|
|
637
|
+
private executeForeachCreateInRow;
|
|
638
|
+
/**
|
|
639
|
+
* Execute DELETE within FOREACH context using Map-based row.
|
|
640
|
+
*/
|
|
641
|
+
private executeForeachDeleteInRow;
|
|
642
|
+
/**
|
|
643
|
+
* Execute SET clause within PhaseContext (not inside FOREACH iteration).
|
|
644
|
+
*/
|
|
645
|
+
private executeForeachSetClause;
|
|
646
|
+
/**
|
|
647
|
+
* Execute RETURN clause for FOREACH execution path.
|
|
648
|
+
*/
|
|
649
|
+
private executeForeachReturn;
|
|
650
|
+
/**
|
|
651
|
+
* Get expression name for FOREACH return aliases.
|
|
652
|
+
*/
|
|
653
|
+
private getForeachExpressionName;
|
|
545
654
|
/**
|
|
546
655
|
* Detect and handle patterns that need multi-phase execution:
|
|
547
656
|
* - MATCH...CREATE that references matched variables
|
|
@@ -601,6 +710,10 @@ export declare class Executor {
|
|
|
601
710
|
* Returns the set of variables that were deleted
|
|
602
711
|
*/
|
|
603
712
|
private executeDeleteWithResolvedIds;
|
|
713
|
+
/**
|
|
714
|
+
* Build a row context from resolved node/edge IDs for condition evaluation
|
|
715
|
+
*/
|
|
716
|
+
private buildRowFromResolvedIds;
|
|
604
717
|
/**
|
|
605
718
|
* Evaluate an expression to get its value
|
|
606
719
|
* Note: For property and binary expressions that reference nodes, use evaluateExpressionWithContext
|
|
@@ -650,6 +763,7 @@ export declare class Executor {
|
|
|
650
763
|
/**
|
|
651
764
|
* Generate SQL condition for label matching
|
|
652
765
|
* Supports both single and multiple labels
|
|
766
|
+
* Uses primary label index with fallback for secondary labels
|
|
653
767
|
*/
|
|
654
768
|
private generateLabelCondition;
|
|
655
769
|
/**
|
package/dist/executor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../src/executor.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAyDxC;;;;;;;;;GASG;AACH,MAAM,WAAW,YAAY;IAE3B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAG7B,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACnC;AA8BD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IAChC,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,cAAc,CAAC;AA4E7D,qBAAa,QAAQ;IACnB,OAAO,CAAC,EAAE,CAAgB;IAC1B,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,iBAAiB,CAA8C;IAEvE,OAAO,CAAC,aAAa,CAA6E;gBAEtF,EAAE,EAAE,aAAa;IAI7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAczB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAczB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAK/B;;OAEG;IACH,OAAO,CAAC,aAAa;IAkBrB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAgCxB;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,aAAa;IAuJ5E;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAgKrB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAoG7B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAelC;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAcxC;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAcxC;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAmBxC;;;;;;;;;OASG;IACH,OAAO,CAAC,kBAAkB;IAyD1B;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,sBAAsB;IAmC9B;;;;;OAKG;IACH,OAAO,CAAC,+BAA+B;IAIvC;;;;;;OAMG;IACH,OAAO,CAAC,wBAAwB;IAIhC,OAAO,CAAC,+BAA+B;IA2FvC,OAAO,CAAC,sCAAsC;IA0E9C,OAAO,CAAC,kCAAkC;IAmG1C,OAAO,CAAC,sCAAsC;IAuB9C;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAqB/B;;OAEG;IACH,OAAO,CAAC,kCAAkC;IAgB1C;;;OAGG;IACH,OAAO,CAAC,kCAAkC;IAkB1C;;;;;OAKG;IACH,OAAO,CAAC,iCAAiC;IAgBzC;;;;;;OAMG;IACH,OAAO,CAAC,YAAY;IAiMpB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAgJ9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA4CzB;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA8BpC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAiD5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAkB9B;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAezC;;;;OAIG;IACH,OAAO,CAAC,6BAA6B;IAyCrC;;OAEG;IACH,OAAO,CAAC,YAAY;IAiBpB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,aAAa;IAiCrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,kBAAkB;IA0C1B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IA+C7B;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAiFjC;;;OAGG;IACH,OAAO,CAAC,iCAAiC;IA+HzC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAuBlC;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAsBrB;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA2E1C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA4IzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAqBrB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAUjC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA+B3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAoN1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA6F1B;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IAoKjC;;;;;;;;;OASG;IACH,OAAO,CAAC,yBAAyB;IAkFjC;;OAEG;IACH,OAAO,CAAC,oCAAoC;IAiB5C;;OAEG;IACH,OAAO,CAAC,iCAAiC;IASzC;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAiBxC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA4BhC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAsCrC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA0BlC;;OAEG;IACH,OAAO,CAAC,8BAA8B;IA2BtC;;;OAGG;IACH,OAAO,CAAC,gCAAgC;IAgCxC;;;;OAIG;IACH,OAAO,CAAC,4BAA4B;IA4JpC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmChC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAsI3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAyBxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAsP/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsW7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAgC3B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAgGnC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4E1B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAclC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IA2BrC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IA8ehC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAiClC;;;OAGG;IACH,OAAO,CAAC,6CAA6C;IAqCrD;;OAEG;IACH,OAAO,CAAC,qCAAqC;IAgE7C;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAuDnC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAuK/B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAkC7B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA8BnC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAmC/B;;OAEG;IACH,OAAO,CAAC,UAAU;IAMlB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAMhB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,OAAO,CAAC,yBAAyB;IA0HjC;;;;;;OAMG;IACH,OAAO,CAAC,yBAAyB;IA+HjC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqDhC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IASjC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAmBnC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA0C9B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAuBhC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAchC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAYnC;;OAEG;IACH,OAAO,CAAC,8BAA8B;IA8DtC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAgQlC;;OAEG;IACH,OAAO,CAAC,0CAA0C;IA0FlD;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA+MhC;;;;;;;;OAQG;IACH,OAAO,CAAC,iCAAiC;IA+QzC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAgEzB;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAqHnC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAgGpC;;OAEG;IACH,OAAO,CAAC,oCAAoC;IAsF5C;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAyCzC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAqFpC;;;;;;OAMG;IACH,OAAO,CAAC,0BAA0B;IAsQlC;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAwH9B;;OAEG;IACH,OAAO,CAAC,8BAA8B;IAWtC;;;OAGG;IACH,OAAO,CAAC,0CAA0C;IAmIlD;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAmD9B;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAYzC;;OAEG;IACH,OAAO,CAAC,oCAAoC;IA0B5C;;OAEG;IACH,OAAO,CAAC,kCAAkC;IAyC1C;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+IxB;;;;;;OAMG;IACH,OAAO,CAAC,wBAAwB;IAwKhC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAmDxB;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAmGpC;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA6E3B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmBhC;;OAEG;IACH,OAAO,CAAC,gCAAgC;IAmExC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAyCzB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoC3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA+B5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IA+BhC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsD9B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IA2CjC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAwBjC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAU/B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAsB5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAahC;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAwR9B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAanC;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA2B1C;;;OAGG;IACH,OAAO,CAAC,+BAA+B;IAiEvC;;;OAGG;IACH,OAAO,CAAC,uCAAuC;IAY/C;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA8C1C;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAyPhC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAU9B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAYlC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAif1B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAmJjC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IAwCpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAmHrC;;;OAGG;IACH,OAAO,CAAC,4BAA4B;IA4BpC;;;OAGG;IACH,OAAO,CAAC,iCAAiC;IAsEzC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;OAEG;IACH,OAAO,CAAC,aAAa;IAkBrB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAkCrB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAsB9B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;CA6B5B;AAMD,wBAAgB,YAAY,CAC1B,EAAE,EAAE,aAAa,EACjB,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACnC,aAAa,CAEf"}
|