@rcrsr/rill 0.2.1 → 0.2.3
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/check/rules/formatting.d.ts.map +1 -1
- package/dist/check/rules/formatting.js +16 -6
- package/dist/check/rules/formatting.js.map +1 -1
- package/dist/check/rules/loops.d.ts +14 -7
- package/dist/check/rules/loops.d.ts.map +1 -1
- package/dist/check/rules/loops.js +121 -38
- package/dist/check/rules/loops.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../../src/check/rules/formatting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAKf,MAAM,aAAa,CAAC;AAqBrB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAAE,cA0E9B,CAAC;AA6CF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"formatting.d.ts","sourceRoot":"","sources":["../../../src/check/rules/formatting.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAKf,MAAM,aAAa,CAAC;AAqBrB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAAE,cA0E9B,CAAC;AA6CF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,cAAc,EAAE,cAiD5B,CAAC;AAMF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,EAAE,cAiI9B,CAAC;AAMF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,EAAE,cAgD7B,CAAC;AAMF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,EAAE,cAuDjC,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,eAAO,MAAM,sBAAsB,EAAE,cA4DpC,CAAC;AAMF;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB,EAAE,cA4CtC,CAAC;AAMF;;;;;;;;;GASG;AACH,eAAO,MAAM,uBAAuB,EAAE,cAkDrC,CAAC;AAMF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB,EAAE,cAW/B,CAAC"}
|
|
@@ -123,10 +123,16 @@ export const SPACING_BRACES = {
|
|
|
123
123
|
validate(node, context) {
|
|
124
124
|
const diagnostics = [];
|
|
125
125
|
const span = node.span;
|
|
126
|
-
|
|
127
|
-
|
|
126
|
+
const lines = context.source.split('\n');
|
|
127
|
+
// For multi-line blocks, only inspect the brace lines themselves
|
|
128
|
+
// to avoid false positives from string interpolation braces like {$var}
|
|
129
|
+
const isMultiLine = span.start.line !== span.end.line;
|
|
130
|
+
const openLine = lines[span.start.line - 1] ?? '';
|
|
131
|
+
const closeLine = lines[span.end.line - 1] ?? '';
|
|
128
132
|
// Check for opening brace without space after
|
|
129
|
-
|
|
133
|
+
// Only examine the opening line (from the { onward)
|
|
134
|
+
const openFrom = openLine.substring(span.start.column - 1);
|
|
135
|
+
if (/\{[^\s]/.test(openFrom) && !openFrom.includes('{\n')) {
|
|
130
136
|
diagnostics.push({
|
|
131
137
|
location: span.start,
|
|
132
138
|
severity: 'info',
|
|
@@ -137,13 +143,17 @@ export const SPACING_BRACES = {
|
|
|
137
143
|
});
|
|
138
144
|
}
|
|
139
145
|
// Check for closing brace without space before
|
|
140
|
-
|
|
146
|
+
// Only examine the closing line (up to and including the })
|
|
147
|
+
const closeUpTo = isMultiLine
|
|
148
|
+
? closeLine.substring(0, span.end.column - 1)
|
|
149
|
+
: openFrom;
|
|
150
|
+
if (/[^\s]\}/.test(closeUpTo) && !/\n\s*\}/.test(closeUpTo)) {
|
|
141
151
|
diagnostics.push({
|
|
142
|
-
location: span.
|
|
152
|
+
location: span.end,
|
|
143
153
|
severity: 'info',
|
|
144
154
|
code: 'SPACING_BRACES',
|
|
145
155
|
message: 'Space required before closing brace }',
|
|
146
|
-
context: extractContextLine(span.
|
|
156
|
+
context: extractContextLine(span.end.line, context.source),
|
|
147
157
|
fix: null,
|
|
148
158
|
});
|
|
149
159
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../../src/check/rules/formatting.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"formatting.js","sourceRoot":"","sources":["../../../src/check/rules/formatting.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,22 +4,29 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import type { ValidationRule } from '../types.js';
|
|
6
6
|
/**
|
|
7
|
-
* Validates that
|
|
7
|
+
* Validates that variables captured in loop bodies aren't referenced in conditions.
|
|
8
8
|
*
|
|
9
9
|
* In while and do-while loops, $ serves as the accumulator across iterations.
|
|
10
|
-
* Variables captured inside the loop body exist only within that iteration
|
|
10
|
+
* Variables captured inside the loop body exist only within that iteration, so
|
|
11
|
+
* referencing them in the loop condition is a logic error - the condition will
|
|
12
|
+
* always see undefined (or the outer scope variable if one exists).
|
|
11
13
|
*
|
|
12
|
-
*
|
|
14
|
+
* Error pattern (captured variable in condition):
|
|
15
|
+
* 0 -> ($x < 5) @ { # $x is undefined in condition
|
|
16
|
+
* $ :> $x
|
|
17
|
+
* $x + 1
|
|
18
|
+
* }
|
|
19
|
+
*
|
|
20
|
+
* Correct pattern ($ as accumulator):
|
|
13
21
|
* 0 -> ($ < 5) @ { $ + 1 }
|
|
14
22
|
*
|
|
15
|
-
*
|
|
23
|
+
* Also correct (capture only used within iteration):
|
|
16
24
|
* 0 -> ($ < 5) @ {
|
|
17
|
-
* $ :> $x
|
|
25
|
+
* $ :> $x
|
|
26
|
+
* log($x) # $x only used in body, not condition
|
|
18
27
|
* $x + 1
|
|
19
28
|
* }
|
|
20
29
|
*
|
|
21
|
-
* This is stylistic - both work, but $ is clearer for accumulation.
|
|
22
|
-
*
|
|
23
30
|
* References:
|
|
24
31
|
* - docs/16_conventions.md:151-171
|
|
25
32
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loops.d.ts","sourceRoot":"","sources":["../../../src/check/rules/loops.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"loops.d.ts","sourceRoot":"","sources":["../../../src/check/rules/loops.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,cAAc,EAGf,MAAM,aAAa,CAAC;AAmLrB;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,eAAO,MAAM,gBAAgB,EAAE,cAyC9B,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,eAAe,EAAE,cA2B7B,CAAC;AAMF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,QAAQ,EAAE,cAmCtB,CAAC"}
|
|
@@ -7,50 +7,114 @@ import { extractContextLine } from './helpers.js';
|
|
|
7
7
|
// HELPER FUNCTIONS
|
|
8
8
|
// ============================================================
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
11
|
-
* Returns true if any captures are found in the body.
|
|
10
|
+
* Collect all variable captures (:> $name) in the given AST node.
|
|
12
11
|
*/
|
|
13
|
-
function
|
|
12
|
+
function collectCaptures(node, names) {
|
|
14
13
|
switch (node.type) {
|
|
15
14
|
case 'Capture':
|
|
16
|
-
|
|
15
|
+
names.push(`$${node.name}`);
|
|
16
|
+
return;
|
|
17
17
|
case 'Block':
|
|
18
|
-
|
|
18
|
+
node.statements.forEach((stmt) => collectCaptures(stmt, names));
|
|
19
|
+
return;
|
|
19
20
|
case 'Statement':
|
|
20
|
-
|
|
21
|
+
collectCaptures(node.expression, names);
|
|
22
|
+
return;
|
|
21
23
|
case 'AnnotatedStatement':
|
|
22
|
-
|
|
24
|
+
collectCaptures(node.statement, names);
|
|
25
|
+
return;
|
|
23
26
|
case 'PipeChain':
|
|
24
|
-
|
|
25
|
-
return true;
|
|
27
|
+
node.pipes.forEach((pipe) => collectCaptures(pipe, names));
|
|
26
28
|
if (node.terminator && node.terminator.type === 'Capture')
|
|
27
|
-
|
|
28
|
-
return
|
|
29
|
+
collectCaptures(node.terminator, names);
|
|
30
|
+
return;
|
|
29
31
|
case 'PostfixExpr':
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return
|
|
32
|
+
collectCaptures(node.primary, names);
|
|
33
|
+
node.methods.forEach((method) => collectCaptures(method, names));
|
|
34
|
+
return;
|
|
33
35
|
case 'BinaryExpr':
|
|
34
|
-
|
|
36
|
+
collectCaptures(node.left, names);
|
|
37
|
+
collectCaptures(node.right, names);
|
|
38
|
+
return;
|
|
35
39
|
case 'UnaryExpr':
|
|
36
|
-
|
|
40
|
+
collectCaptures(node.operand, names);
|
|
41
|
+
return;
|
|
37
42
|
case 'GroupedExpr':
|
|
38
|
-
|
|
43
|
+
collectCaptures(node.expression, names);
|
|
44
|
+
return;
|
|
39
45
|
case 'Conditional':
|
|
40
|
-
if (node.input
|
|
41
|
-
|
|
42
|
-
if (node.condition
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
if (node.input)
|
|
47
|
+
collectCaptures(node.input, names);
|
|
48
|
+
if (node.condition)
|
|
49
|
+
collectCaptures(node.condition, names);
|
|
50
|
+
collectCaptures(node.thenBranch, names);
|
|
51
|
+
if (node.elseBranch)
|
|
52
|
+
collectCaptures(node.elseBranch, names);
|
|
53
|
+
return;
|
|
54
|
+
case 'WhileLoop':
|
|
55
|
+
case 'DoWhileLoop':
|
|
56
|
+
collectCaptures(node.body, names);
|
|
57
|
+
return;
|
|
58
|
+
default:
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Collect all variable references ($name) in the given AST node.
|
|
64
|
+
*/
|
|
65
|
+
function collectVariableReferences(node, names) {
|
|
66
|
+
switch (node.type) {
|
|
67
|
+
case 'Variable':
|
|
68
|
+
// Add the variable name if it's not the pipe variable ($)
|
|
69
|
+
if (!node.isPipeVar && node.name) {
|
|
70
|
+
names.push(`$${node.name}`);
|
|
71
|
+
}
|
|
72
|
+
return;
|
|
73
|
+
case 'Block':
|
|
74
|
+
node.statements.forEach((stmt) => collectVariableReferences(stmt, names));
|
|
75
|
+
return;
|
|
76
|
+
case 'Statement':
|
|
77
|
+
collectVariableReferences(node.expression, names);
|
|
78
|
+
return;
|
|
79
|
+
case 'AnnotatedStatement':
|
|
80
|
+
collectVariableReferences(node.statement, names);
|
|
81
|
+
return;
|
|
82
|
+
case 'PipeChain':
|
|
83
|
+
collectVariableReferences(node.head, names);
|
|
84
|
+
node.pipes.forEach((pipe) => collectVariableReferences(pipe, names));
|
|
85
|
+
if (node.terminator)
|
|
86
|
+
collectVariableReferences(node.terminator, names);
|
|
87
|
+
return;
|
|
88
|
+
case 'PostfixExpr':
|
|
89
|
+
collectVariableReferences(node.primary, names);
|
|
90
|
+
node.methods.forEach((method) => collectVariableReferences(method, names));
|
|
91
|
+
return;
|
|
92
|
+
case 'BinaryExpr':
|
|
93
|
+
collectVariableReferences(node.left, names);
|
|
94
|
+
collectVariableReferences(node.right, names);
|
|
95
|
+
return;
|
|
96
|
+
case 'UnaryExpr':
|
|
97
|
+
collectVariableReferences(node.operand, names);
|
|
98
|
+
return;
|
|
99
|
+
case 'GroupedExpr':
|
|
100
|
+
collectVariableReferences(node.expression, names);
|
|
101
|
+
return;
|
|
102
|
+
case 'Conditional':
|
|
103
|
+
if (node.input)
|
|
104
|
+
collectVariableReferences(node.input, names);
|
|
105
|
+
if (node.condition)
|
|
106
|
+
collectVariableReferences(node.condition, names);
|
|
107
|
+
collectVariableReferences(node.thenBranch, names);
|
|
108
|
+
if (node.elseBranch)
|
|
109
|
+
collectVariableReferences(node.elseBranch, names);
|
|
110
|
+
return;
|
|
49
111
|
case 'WhileLoop':
|
|
50
112
|
case 'DoWhileLoop':
|
|
51
|
-
|
|
113
|
+
collectVariableReferences(node.condition, names);
|
|
114
|
+
collectVariableReferences(node.body, names);
|
|
115
|
+
return;
|
|
52
116
|
default:
|
|
53
|
-
return
|
|
117
|
+
return;
|
|
54
118
|
}
|
|
55
119
|
}
|
|
56
120
|
/**
|
|
@@ -81,22 +145,29 @@ function callsRetryFunction(node) {
|
|
|
81
145
|
// LOOP_ACCUMULATOR RULE
|
|
82
146
|
// ============================================================
|
|
83
147
|
/**
|
|
84
|
-
* Validates that
|
|
148
|
+
* Validates that variables captured in loop bodies aren't referenced in conditions.
|
|
85
149
|
*
|
|
86
150
|
* In while and do-while loops, $ serves as the accumulator across iterations.
|
|
87
|
-
* Variables captured inside the loop body exist only within that iteration
|
|
151
|
+
* Variables captured inside the loop body exist only within that iteration, so
|
|
152
|
+
* referencing them in the loop condition is a logic error - the condition will
|
|
153
|
+
* always see undefined (or the outer scope variable if one exists).
|
|
88
154
|
*
|
|
89
|
-
*
|
|
155
|
+
* Error pattern (captured variable in condition):
|
|
156
|
+
* 0 -> ($x < 5) @ { # $x is undefined in condition
|
|
157
|
+
* $ :> $x
|
|
158
|
+
* $x + 1
|
|
159
|
+
* }
|
|
160
|
+
*
|
|
161
|
+
* Correct pattern ($ as accumulator):
|
|
90
162
|
* 0 -> ($ < 5) @ { $ + 1 }
|
|
91
163
|
*
|
|
92
|
-
*
|
|
164
|
+
* Also correct (capture only used within iteration):
|
|
93
165
|
* 0 -> ($ < 5) @ {
|
|
94
|
-
* $ :> $x
|
|
166
|
+
* $ :> $x
|
|
167
|
+
* log($x) # $x only used in body, not condition
|
|
95
168
|
* $x + 1
|
|
96
169
|
* }
|
|
97
170
|
*
|
|
98
|
-
* This is stylistic - both work, but $ is clearer for accumulation.
|
|
99
|
-
*
|
|
100
171
|
* References:
|
|
101
172
|
* - docs/16_conventions.md:151-171
|
|
102
173
|
*/
|
|
@@ -107,14 +178,26 @@ export const LOOP_ACCUMULATOR = {
|
|
|
107
178
|
nodeTypes: ['WhileLoop', 'DoWhileLoop'],
|
|
108
179
|
validate(node, context) {
|
|
109
180
|
const loop = node;
|
|
110
|
-
//
|
|
111
|
-
|
|
181
|
+
// Collect all variable captures in loop body
|
|
182
|
+
const capturedNames = [];
|
|
183
|
+
collectCaptures(loop.body, capturedNames);
|
|
184
|
+
if (capturedNames.length === 0) {
|
|
185
|
+
return []; // No captures, no problem
|
|
186
|
+
}
|
|
187
|
+
// Collect all variable references in loop condition
|
|
188
|
+
const conditionRefs = [];
|
|
189
|
+
collectVariableReferences(loop.condition, conditionRefs);
|
|
190
|
+
// Find captures that are referenced in the condition
|
|
191
|
+
const capturedSet = new Set(capturedNames);
|
|
192
|
+
const problematicVars = conditionRefs.filter((ref) => capturedSet.has(ref));
|
|
193
|
+
if (problematicVars.length > 0) {
|
|
194
|
+
const vars = [...new Set(problematicVars)].join(', ');
|
|
112
195
|
return [
|
|
113
196
|
{
|
|
114
197
|
location: node.span.start,
|
|
115
198
|
severity: 'info',
|
|
116
199
|
code: 'LOOP_ACCUMULATOR',
|
|
117
|
-
message:
|
|
200
|
+
message: `${vars} captured in loop body but referenced in condition; loop body variables reset each iteration`,
|
|
118
201
|
context: extractContextLine(node.span.start.line, context.source),
|
|
119
202
|
fix: null, // Complex fix - requires refactoring loop body
|
|
120
203
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loops.js","sourceRoot":"","sources":["../../../src/check/rules/loops.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,+DAA+D;AAC/D,mBAAmB;AACnB,+DAA+D;AAE/D
|
|
1
|
+
{"version":3,"file":"loops.js","sourceRoot":"","sources":["../../../src/check/rules/loops.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAaH,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,+DAA+D;AAC/D,mBAAmB;AACnB,+DAA+D;AAE/D;;GAEG;AACH,SAAS,eAAe,CAAC,IAAa,EAAE,KAAe;IACrD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,SAAS;YACZ,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC5B,OAAO;QAET,KAAK,OAAO;YACV,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YAChE,OAAO;QAET,KAAK,WAAW;YACd,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACxC,OAAO;QAET,KAAK,oBAAoB;YACvB,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACvC,OAAO;QAET,KAAK,WAAW;YACd,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAe,EAAE,KAAK,CAAC,CAAC,CAAC;YACtE,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS;gBACvD,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC1C,OAAO;QAET,KAAK,aAAa;YAChB,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;YACjE,OAAO;QAET,KAAK,YAAY;YACf,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAClC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACnC,OAAO;QAET,KAAK,WAAW;YACd,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrC,OAAO;QAET,KAAK,aAAa;YAChB,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACxC,OAAO;QAET,KAAK,aAAa;YAChB,IAAI,IAAI,CAAC,KAAK;gBAAE,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACnD,IAAI,IAAI,CAAC,SAAS;gBAAE,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC3D,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACxC,IAAI,IAAI,CAAC,UAAU;gBAAE,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC7D,OAAO;QAET,KAAK,WAAW,CAAC;QACjB,KAAK,aAAa;YAChB,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAClC,OAAO;QAET;YACE,OAAO;IACX,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAAC,IAAa,EAAE,KAAe;IAC/D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,UAAU;YACb,0DAA0D;YAC1D,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACjC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC9B,CAAC;YACD,OAAO;QAET,KAAK,OAAO;YACV,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,yBAAyB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;YAC1E,OAAO;QAET,KAAK,WAAW;YACd,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAClD,OAAO;QAET,KAAK,oBAAoB;YACvB,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACjD,OAAO;QAET,KAAK,WAAW;YACd,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1B,yBAAyB,CAAC,IAAe,EAAE,KAAK,CAAC,CAClD,CAAC;YACF,IAAI,IAAI,CAAC,UAAU;gBACjB,yBAAyB,CAAC,IAAI,CAAC,UAAqB,EAAE,KAAK,CAAC,CAAC;YAC/D,OAAO;QAET,KAAK,aAAa;YAChB,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC/C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAC9B,yBAAyB,CAAC,MAAM,EAAE,KAAK,CAAC,CACzC,CAAC;YACF,OAAO;QAET,KAAK,YAAY;YACf,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5C,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC7C,OAAO;QAET,KAAK,WAAW;YACd,yBAAyB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC/C,OAAO;QAET,KAAK,aAAa;YAChB,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAClD,OAAO;QAET,KAAK,aAAa;YAChB,IAAI,IAAI,CAAC,KAAK;gBAAE,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC7D,IAAI,IAAI,CAAC,SAAS;gBAAE,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACrE,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,UAAU;gBAAE,yBAAyB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACvE,OAAO;QAET,KAAK,WAAW,CAAC;QACjB,KAAK,aAAa;YAChB,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACjD,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5C,OAAO;QAET;YACE,OAAO;IACX,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,IAAa;IACvC,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAqB,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;QAExB,mCAAmC;QACnC,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;YAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBAClE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,+DAA+D;AAC/D,wBAAwB;AACxB,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAmB;IAC9C,IAAI,EAAE,kBAAkB;IACxB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC;IAEvC,QAAQ,CAAC,IAAa,EAAE,OAA0B;QAChD,MAAM,IAAI,GAAG,IAAuC,CAAC;QAErD,6CAA6C;QAC7C,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAE1C,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC,CAAC,0BAA0B;QACvC,CAAC;QAED,oDAAoD;QACpD,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,yBAAyB,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAEzD,qDAAqD;QACrD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC;QAC3C,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAE5E,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,OAAO;gBACL;oBACE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;oBACzB,QAAQ,EAAE,MAAM;oBAChB,IAAI,EAAE,kBAAkB;oBACxB,OAAO,EAAE,GAAG,IAAI,8FAA8F;oBAC9G,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC;oBACjE,GAAG,EAAE,IAAI,EAAE,+CAA+C;iBAC3D;aACF,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC;AAEF,+DAA+D;AAC/D,uBAAuB;AACvB,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAmB;IAC7C,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,CAAC,WAAW,CAAC;IAExB,QAAQ,CAAC,IAAa,EAAE,OAA0B;QAChD,MAAM,IAAI,GAAG,IAAqB,CAAC;QAEnC,0EAA0E;QAC1E,mBAAmB;QACnB,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClC,OAAO;gBACL;oBACE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;oBACzB,QAAQ,EAAE,MAAM;oBAChB,IAAI,EAAE,iBAAiB;oBACvB,OAAO,EACL,8FAA8F;oBAChG,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC;oBACjE,GAAG,EAAE,IAAI,EAAE,mDAAmD;iBAC/D;aACF,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC;AAEF,+DAA+D;AAC/D,gBAAgB;AAChB,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAmB;IACtC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,CAAC,WAAW,CAAC;IAExB,QAAQ,CAAC,IAAa,EAAE,OAA0B;QAChD,MAAM,IAAI,GAAG,IAAqB,CAAC;QAEnC,iFAAiF;QACjF,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE1C,0BAA0B;QAC1B,gDAAgD;QAChD,6DAA6D;QAC7D,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAC3D,MAAM,gBAAgB,GAAG,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;QAEpE,IAAI,WAAW,IAAI,gBAAgB,EAAE,CAAC;YACpC,OAAO;gBACL;oBACE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;oBACzB,QAAQ,EAAE,MAAM;oBAChB,IAAI,EAAE,UAAU;oBAChB,OAAO,EACL,yFAAyF;oBAC3F,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC;oBACjE,GAAG,EAAE,IAAI,EAAE,+CAA+C;iBAC3D;aACF,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAC"}
|