@lcap/nasl-language-server-core 3.14.0-rc.4 → 3.14.0-rc.5

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.
Files changed (79) hide show
  1. package/out/checker.d.ts.map +1 -1
  2. package/out/checker.js +5 -2
  3. package/out/checker.js.map +1 -1
  4. package/out/module/graph.js +6 -6
  5. package/out/module/graph.js.map +1 -1
  6. package/out/module/module.d.ts.map +1 -1
  7. package/out/module/module.js +3 -6
  8. package/out/module/module.js.map +1 -1
  9. package/out/reference-manager/get-q-name.js.map +1 -1
  10. package/out/reference-manager/reference-manager.d.ts +11 -5
  11. package/out/reference-manager/reference-manager.d.ts.map +1 -1
  12. package/out/reference-manager/reference-manager.js +59 -59
  13. package/out/reference-manager/reference-manager.js.map +1 -1
  14. package/out/reference-manager/rename-q-name.d.ts.map +1 -1
  15. package/out/reference-manager/rename-q-name.js +3 -0
  16. package/out/reference-manager/rename-q-name.js.map +1 -1
  17. package/out/reference-manager/symbol-type.d.ts +3 -1
  18. package/out/reference-manager/symbol-type.d.ts.map +1 -1
  19. package/out/reference-manager/symbol-type.js +9 -7
  20. package/out/reference-manager/symbol-type.js.map +1 -1
  21. package/out/reference-manager/update-nasl-fragment.d.ts.map +1 -1
  22. package/out/reference-manager/update-nasl-fragment.js +5 -4
  23. package/out/reference-manager/update-nasl-fragment.js.map +1 -1
  24. package/out/symbol/graph.js +2 -2
  25. package/out/symbol/graph.js.map +1 -1
  26. package/out/typer/component-def-manager/utils.d.ts.map +1 -1
  27. package/out/typer/component-def-manager/utils.js +5 -3
  28. package/out/typer/component-def-manager/utils.js.map +1 -1
  29. package/out/typer/dispatch-def.d.ts.map +1 -1
  30. package/out/typer/dispatch-def.js +6 -6
  31. package/out/typer/dispatch-def.js.map +1 -1
  32. package/out/typer/dispatch-expr.d.ts.map +1 -1
  33. package/out/typer/dispatch-expr.js +80 -29
  34. package/out/typer/dispatch-expr.js.map +1 -1
  35. package/out/typer/dispatch-process.d.ts +0 -1
  36. package/out/typer/dispatch-process.d.ts.map +1 -1
  37. package/out/typer/dispatch-process.js +18 -12
  38. package/out/typer/dispatch-process.js.map +1 -1
  39. package/out/typer/dispatch-stmt.d.ts.map +1 -1
  40. package/out/typer/dispatch-stmt.js +5 -2
  41. package/out/typer/dispatch-stmt.js.map +1 -1
  42. package/out/typer/dispatch-view.d.ts.map +1 -1
  43. package/out/typer/dispatch-view.js +84 -37
  44. package/out/typer/dispatch-view.js.map +1 -1
  45. package/out/typer/incremental-update.d.ts +6 -29
  46. package/out/typer/incremental-update.d.ts.map +1 -1
  47. package/out/typer/incremental-update.js +116 -204
  48. package/out/typer/incremental-update.js.map +1 -1
  49. package/out/typer/subster.d.ts.map +1 -1
  50. package/out/typer/subster.js +6 -9
  51. package/out/typer/subster.js.map +1 -1
  52. package/out/typer/type-manager.d.ts +2 -0
  53. package/out/typer/type-manager.d.ts.map +1 -1
  54. package/out/typer/type-manager.js +8 -3
  55. package/out/typer/type-manager.js.map +1 -1
  56. package/out/typer/type-predicate.d.ts +15 -2
  57. package/out/typer/type-predicate.d.ts.map +1 -1
  58. package/out/typer/type-predicate.js +54 -23
  59. package/out/typer/type-predicate.js.map +1 -1
  60. package/out/typer/typer.d.ts +12 -1
  61. package/out/typer/typer.d.ts.map +1 -1
  62. package/out/typer/typer.js +19 -5
  63. package/out/typer/typer.js.map +1 -1
  64. package/out/utils/parseTsClassType.d.ts.map +1 -1
  65. package/out/utils/parseTsClassType.js +3 -0
  66. package/out/utils/parseTsClassType.js.map +1 -1
  67. package/out/utils/type-operator.d.ts +1 -1
  68. package/out/utils/type-operator.d.ts.map +1 -1
  69. package/out/utils/type-operator.js +6 -4
  70. package/out/utils/type-operator.js.map +1 -1
  71. package/package.json +5 -6
  72. package/out/utils/vue-hack.d.ts +0 -25
  73. package/out/utils/vue-hack.d.ts.map +0 -1
  74. package/out/utils/vue-hack.js +0 -33
  75. package/out/utils/vue-hack.js.map +0 -1
  76. package/out/utils/vue.d.ts +0 -2
  77. package/out/utils/vue.d.ts.map +0 -1
  78. package/out/utils/vue.js +0 -10
  79. package/out/utils/vue.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getOqlFiles = exports.checkUpdateRefsDiag = exports.preProcessNonDefAction = exports.preProcessDefUpdate = exports.preProcessDefRename = exports.preProcessDefRemoval = exports.preProcessDefCreation = void 0;
3
+ exports.getOqlFiles = exports.checkUpdateRefsDiag = exports.preProcessDefRename = exports.preProcessOther = void 0;
4
4
  const set_1 = require("mnemonist/set");
5
5
  const nasl_utils_1 = require("@lcap/nasl-utils");
6
6
  const file_node_cache_1 = require("../utils/file-node-cache");
@@ -17,88 +17,18 @@ const remove_q_name_1 = require("../reference-manager/remove-q-name");
17
17
  const rename_q_name_1 = require("../reference-manager/rename-q-name");
18
18
  const dispatch_def_1 = require("./dispatch-def");
19
19
  /**
20
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
20
+ * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
21
+ * 为了增加效率,直接往 params 的 Set 里加东西
21
22
  */
22
- const preProcessDefCreation = (env, nd) => {
23
- const typerCheckFiles = new Set();
24
- const typerRemoveNodes = new Set();
25
- const typerCreateNodes = new Set([nd]);
23
+ const preProcessOther = (env, nd, typerCheckFiles) => {
26
24
  const fileNode = (0, service_1.getFileNode)(nd);
25
+ // 一定不能真的去检查实体自动生成(更新)的实体逻辑
27
26
  if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
28
27
  typerCheckFiles.add(fileNode);
29
28
  }
30
- return {
31
- typerCheckFiles,
32
- typerRemoveNodes,
33
- typerCreateNodes,
34
- };
29
+ return true;
35
30
  };
36
- exports.preProcessDefCreation = preProcessDefCreation;
37
- /**
38
- * 1 扫描 xs 的 qNames
39
- * 2 确定待检查项 ys:xs 引用的 FileNodes,
40
- * 3 删除 xs 中对所有全局符号的引用,更新 symbolRefs
41
- * (1 因为即使通过撤销重做,进来的 refs 对象的内存地址也不一样,无法重用)
42
- * (2 xs 中其他符号的引用如果还在,查找其他符号时依然会找到"消失的xs",然后再找到 xs 被引用的 FileNode,这样不对)
43
- * 4 缓存要删除的 qNames,现在不能删除,因为如果删除了,移除 ys 中的符号时就会报错,例子我不记得了,之后再想想……
44
- *
45
- * 以下不在 preProcess 中做:
46
- * 5 类型检查 ys
47
- * 6 不需要删除 ys 中对 xs 的引用 refs,所以不需要更新 symbolRefs(为了之后做 'relink')
48
- */
49
- /**
50
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
51
- */
52
- const preProcessDefRemoval = (env, nd) => {
53
- const typerRemoveNodes = new Set([nd]);
54
- const typerCheckFiles = new Set();
55
- const typerCreateNodes = new Set();
56
- const fileNode = (0, service_1.getFileNode)(nd);
57
- fileNode && typerCheckFiles.add(fileNode);
58
- if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
59
- const fileNode = (0, service_1.getFileNode)(nd);
60
- if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
61
- typerCheckFiles.add(fileNode);
62
- }
63
- }
64
- else if (reference_manager_2.ReferenceManager.globalDefConcept.includes(nd.concept)) {
65
- const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd) ?? '';
66
- // Including entity logics if nd.concept === 'Entity'
67
- const qNames = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, nd);
68
- for (const qName of qNames) {
69
- const subDef = env.refMgr.qNameDefs.get(qName);
70
- if (subDef) {
71
- // typerRemoveNodes.add(subDef); // 防止后面遍历变成 N^2 复杂度
72
- const refs = getDirectRefFileNodes(env, subDef);
73
- for (const ref of refs) {
74
- typerCheckFiles.add(ref);
75
- }
76
- if (subDef.concept === 'Logic') {
77
- const lgc = env.overriddenLogic.get(subDef);
78
- if (lgc) {
79
- typerRemoveNodes.add(lgc);
80
- env.overriddenLogic.delete(subDef);
81
- }
82
- }
83
- }
84
- }
85
- // 大概率是删了子定义
86
- if (qNames.length === 1 && fileNode) {
87
- const refs = getDirectRefFileNodes(env, fileNode);
88
- for (const ref of refs) {
89
- typerCheckFiles.add(ref);
90
- }
91
- }
92
- }
93
- // 缓存 def 应该足够了, def 下面的定义如 Structure 下面的 StructureProperty,不需要做缓存
94
- // 现在不能删除 qName,否则后面删引用时 qName 会找不到。先缓存一下,之后删
95
- return {
96
- typerCheckFiles,
97
- typerRemoveNodes,
98
- typerCreateNodes,
99
- };
100
- };
101
- exports.preProcessDefRemoval = preProcessDefRemoval;
31
+ exports.preProcessOther = preProcessOther;
102
32
  /**
103
33
  * rename xs:
104
34
  * 1 获取要删除的旧的 qNames1
@@ -110,22 +40,16 @@ exports.preProcessDefRemoval = preProcessDefRemoval;
110
40
  * 7 类型检查 ys 和 zs
111
41
  */
112
42
  /**
113
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
43
+ * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
114
44
  */
115
- const preProcessDefRename = (env, nd, oldName, mode, oqlRemoveNodesTsPath) => {
45
+ const preProcessDefRename = (env, nd, typerCheckFiles, oldName, mode, oqlRemoveNodesTsPath) => {
116
46
  const fileNode = (0, service_1.getFileNode)(nd);
117
- const typerCheckFiles = new Set(fileNode ? [fileNode] : []);
47
+ fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode) && typerCheckFiles.add(fileNode);
118
48
  // 不处理逻辑内的局部符号
119
49
  if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
120
50
  env.refMgr.isLocalCacheValid = false;
121
- return {
122
- typerCheckFiles,
123
- typerRemoveNodes: new Set(),
124
- typerCreateNodes: new Set()
125
- };
51
+ return true;
126
52
  }
127
- const typerRemoveNodes = new Set();
128
- const typerCreateNodes = new Set();
129
53
  const qName = (0, reference_manager_2.getTokenQualifiedName)(nd);
130
54
  // 2. Get items to check which have references to old qNames1
131
55
  const oldQName = easyGetOldQName(qName, oldName);
@@ -155,60 +79,113 @@ const preProcessDefRename = (env, nd, oldName, mode, oqlRemoveNodesTsPath) => {
155
79
  env.refMgr.transferQNameDef(oldQName, newQName, mode);
156
80
  });
157
81
  // 6. Based on transferred symbolRefs, get items to check that reference new qNames2
158
- getDirectRefFileNodes(env, nd).forEach((refFileNode) => {
159
- typerCheckFiles.add(refFileNode);
160
- });
161
- return {
162
- typerCheckFiles,
163
- typerRemoveNodes,
164
- typerCreateNodes,
165
- };
82
+ // getDirectRefFileNodes(env, nd as DefConcept).forEach((refFileNode) => {
83
+ // typerCheckFiles.add(refFileNode);
84
+ // });
85
+ return true;
166
86
  };
167
87
  exports.preProcessDefRename = preProcessDefRename;
168
- // 其他对定义的更新
169
88
  /**
170
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
89
+ * 增、删,一定要检查一级引用。
90
+ * 单纯的更新,不需要检查一级引用,仅在签名变更时检查一级引用。
171
91
  */
172
- const preProcessDefUpdate = (env, nd) => {
173
- const typerCheckFiles = new Set();
174
- const typerRemoveNodes = new Set();
175
- const typerCreateNodes = new Set();
176
- const fileNode = (0, service_1.getFileNode)(nd);
177
- if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
178
- typerCheckFiles.add(fileNode);
92
+ const pushRefFilesToChkFiles = (env, chkFiles, qNames) => {
93
+ const processedFileNodes = new Set();
94
+ for (const qName of qNames) {
95
+ const def = env.refMgr.qNameDefs.get(qName);
96
+ if (!reference_manager_2.ReferenceManager.globalDefConcept.includes(def?.concept)) {
97
+ continue;
98
+ }
99
+ for (const ref of getDirectRefFileNodes(env, def)) {
100
+ chkFiles.add(ref);
101
+ }
102
+ if (!(0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(def)) {
103
+ // 再查一下 fileNode 级别的父节点的引用,如 Entity1.property1 被删了,还要查 Entity1 的引用
104
+ const fileNode = (0, service_1.getFileNode)(def);
105
+ if (fileNode && !processedFileNodes.has(fileNode)) {
106
+ processedFileNodes.add(fileNode);
107
+ for (const ref of getDirectRefFileNodes(env, fileNode)) {
108
+ chkFiles.add(ref);
109
+ }
110
+ }
111
+ }
179
112
  }
180
- if (!reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
181
- getDirectRefFileNodes(env, nd).forEach((refFileNode) => {
182
- typerCheckFiles.add(refFileNode);
183
- });
113
+ };
114
+ const batchPreProcessAllRemoveNodes = (env, removeNodes, chkFiles, removedFiles) => {
115
+ // 首先需要删除所有引用,后面移除定义后,删除引用时要么符号找不到,要么要去缓存里找,更麻烦,不如多一次遍历
116
+ const allQNames = new Set();
117
+ // 第一个循环里处理完所有局部符号
118
+ for (const rmNd of removeNodes) {
119
+ /**
120
+ * 注意:必须在这里就先删除,不能后面 getFileNode 再从 fileNode 清除
121
+ * 因为要么 fileNode 不存在了,要么 fileNode 下已经没有了被删除的节点
122
+ * 符号类型:一律删除
123
+ **/
124
+ if (reference_manager_2.ReferenceManager.localDefConcept.includes(rmNd.concept)) {
125
+ env.refMgr.invalidateLocalSymCache(rmNd);
126
+ }
127
+ if (!reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
128
+ env.removeTypes(rmNd);
129
+ }
130
+ const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(rmNd) ?? '';
131
+ // Including entity logics if nd.concept === 'Entity'
132
+ const qNames = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, rmNd);
133
+ for (const qName of qNames) {
134
+ allQNames.add(qName);
135
+ }
136
+ }
137
+ // 一起批量处理:里面有缓存,避免重复处理对性能的影响
138
+ pushRefFilesToChkFiles(env, chkFiles, Array.from(allQNames));
139
+ // 第二个循环里处理全局符号
140
+ for (const qName of allQNames) {
141
+ const rmNd = env.refMgr.qNameDefs.get(qName);
142
+ if (!rmNd) {
143
+ continue;
144
+ }
145
+ // 全局符号引用:缓存。局部符号引用:删除。
146
+ if (reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
147
+ if (rmNd.concept === 'Logic') {
148
+ const ovLgc = env.overriddenLogic.get(rmNd);
149
+ if (ovLgc) {
150
+ removeNodes.add(ovLgc); // 会在本轮迭代中被遍历到
151
+ env.overriddenLogic.delete(rmNd);
152
+ }
153
+ }
154
+ if ((0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(rmNd)) {
155
+ removedFiles.add(rmNd);
156
+ // 下面 getDirectRefFileNodes 是不是会给子页面加进去,那这里 removedFiles 也给子页面加进去吧,保险一点……
157
+ for (const subView of getSubViews(rmNd)) {
158
+ removedFiles.add(subView);
159
+ }
160
+ }
161
+ env.refMgr.handleDefOp("delete" /* Operation.Remove */, rmNd, qName); // 连根拔起,但缓存
162
+ }
163
+ else {
164
+ }
165
+ env.refMgr.removeRefsForGlobalSym(env, rmNd);
184
166
  }
185
- // The remaining refs updates are left to post-processing
186
- return {
187
- typerCheckFiles,
188
- typerRemoveNodes,
189
- typerCreateNodes,
190
- };
191
167
  };
192
- exports.preProcessDefUpdate = preProcessDefUpdate;
193
- // 所有对非 def 类型的 target 的更新都走这里,进来的内部可能有 ref,但不一定顶层是 ref
194
- /**
195
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
196
- */
197
- const preProcessNonDefAction = (nd) => {
198
- const typerCheckFiles = new Set();
199
- const fileNode = (0, service_1.getFileNode)(nd);
200
- // 一定不能真的去检查实体自动生成(更新)的实体逻辑
201
- if (fileNode && !(0, reference_manager_1.isEntityLogic)(fileNode)) {
202
- typerCheckFiles.add(fileNode);
168
+ const batchPreProcessAllCreateNodes = (env, createNodes, chkFiles) => {
169
+ // 新创建的节点,从 preProcessDefCreation 搬过来的
170
+ // TODO:之后再整理代码
171
+ for (const nd of createNodes) {
172
+ if (reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
173
+ continue;
174
+ }
175
+ const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd);
176
+ const createdQNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
177
+ // Try to 'relink' to old defs,仅 relink refs,和建立 QNames,新的 refs 需要检查后再收集
178
+ for (const [qName, def] of createdQNames) {
179
+ env.refMgr.handleDefOp("create" /* Operation.Create */, def, qName);
180
+ }
181
+ /**
182
+ * If there are old refs after relinking, the FileNodes containing these old refs also need type checking.
183
+ * Note that it is not sufficient to check def's references,
184
+ * we must check all the newly added defs' (contained by the root def) references
185
+ */
186
+ pushRefFilesToChkFiles(env, chkFiles, createdQNames.map(([qName]) => qName));
203
187
  }
204
- // non-def的话没有引用,所以不需要再 getDirectRefFileNodes
205
- return {
206
- typerCheckFiles,
207
- typerRemoveNodes: new Set(),
208
- typerCreateNodes: new Set()
209
- };
210
188
  };
211
- exports.preProcessNonDefAction = preProcessNonDefAction;
212
189
  /**
213
190
  * 1. 符号删除
214
191
  * 2. 运行新的类型标注,额外错误诊断
@@ -227,88 +204,23 @@ exports.preProcessNonDefAction = preProcessNonDefAction;
227
204
  * @returns 诊断信息列表
228
205
  */
229
206
  /**
230
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
207
+ * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
231
208
  */
232
209
  async function checkUpdateRefsDiag(env, diagnosticManager, chkFiles, removeNodes, createNodes, tsDiagnostics, checkedFiles = new Set()) {
233
- nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
234
210
  let diagRecs = [];
235
211
  let removedFiles = new Set(); // 优化:删除的文件不需要检查
236
- // 首先需要删除所有引用,后面移除定义后,删除引用时要么符号找不到,要么要去缓存里找,更麻烦,不如多一次遍历
237
- // TODO: 修复性能问题,没空修
238
- for (const rmNd of removeNodes) {
239
- env.refMgr.removeRefsForGlobalSym(env, rmNd);
240
- /**
241
- * 注意:必须在这里就先删除,不能后面 getFileNode 再从 fileNode 清除
242
- * 因为要么 fileNode 不存在了,要么 fileNode 下已经没有了被删除的节点
243
- * 符号类型:一律删除
244
- **/
245
- env.removeTypes(rmNd);
246
- }
247
- // 全局符号引用:缓存。局部符号引用:删除。
248
- for (const rmNd of removeNodes) {
249
- const ndQName = (0, reference_manager_2.getTokenQualifiedName)(rmNd);
250
- if (reference_manager_2.ReferenceManager.globalDefConcept.includes(rmNd.concept)) {
251
- const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(rmNd);
252
- const qNamesToRemove = (0, remove_q_name_1.getQNamesOfRemoveAction)(nsp, rmNd);
253
- for (const qName of qNamesToRemove) {
254
- // 连根拔起,但缓存
255
- const subDef = env.refMgr.qNameDefs.get(qName);
256
- if (subDef) {
257
- if ((0, file_node_cache_1.checkNodeIsFileModuleInIdeWithCache)(subDef)) {
258
- removedFiles.add(subDef);
259
- // 下面 getDirectRefFileNodes 是不是会给子页面加进去,那这里 removedFiles 也给子页面加进去吧,保险一点……
260
- for (const subView of getSubViews(subDef)) {
261
- removedFiles.add(subView);
262
- }
263
- }
264
- env.refMgr.handleDefOp("delete" /* Operation.Remove */, subDef, qName);
265
- }
266
- }
267
- }
268
- else if (reference_manager_2.ReferenceManager.localDefConcept.includes(rmNd.concept)) {
269
- env.refMgr.removeLocalSymbol(rmNd);
270
- }
271
- else {
272
- env.refMgr.handleRefOp(env, "delete" /* Operation.Remove */, rmNd, ndQName);
273
- }
274
- }
212
+ nasl_utils_1.isDebugMode && console.time('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
213
+ batchPreProcessAllRemoveNodes(env, removeNodes, chkFiles, removedFiles);
214
+ batchPreProcessAllCreateNodes(env, createNodes, chkFiles);
275
215
  for (const file of removedFiles) {
276
216
  clearSemInfoDiags(env, diagnosticManager, file);
277
217
  }
278
218
  nasl_utils_1.isDebugMode && console.timeEnd('\x1b[44m\x1b[97m 1: 按原有类型删除符号引用和类型 \x1b[0m');
279
- // 新创建的节点,从 preProcessDefCreation 搬过来的
280
- // TODO:之后再整理代码
281
- for (const nd of createNodes) {
282
- if (!reference_manager_2.ReferenceManager.localDefConcept.includes(nd.concept)) {
283
- const nsp = (0, reference_manager_1.getNamespaceWithoutLast)(nd);
284
- const createdQNames = (0, collect_q_name_1.getQNamesOfCreateAction)(nsp, nd);
285
- // Try to 'relink' to old defs
286
- // 仅 relink refs,和建立 QNames,新的 refs 需要检查后再收集
287
- for (const [qName, def] of createdQNames) {
288
- env.refMgr.handleDefOp("create" /* Operation.Create */, def, qName);
289
- /**
290
- * If there are old refs after relinking, the FileNodes containing these old refs also need type checking.
291
- * Note that it is not sufficient to check def's references,
292
- * we must check all the newly added defs' (contained by the root def) references
293
- */
294
- for (const refFileNode of getDirectRefFileNodes(env, def)) {
295
- chkFiles.add(refFileNode);
296
- }
297
- }
298
- }
299
- }
300
219
  let filteredChkFiles = new Set();
301
220
  // 原地修改。删除的文件,引用和报错删除后就不用做什么了。
302
221
  for (const file of (0, set_1.difference)(chkFiles, removedFiles)) {
303
- // 我搞不定了,再说吧……
304
- if (file.concept === 'View') {
305
- if (file.name !== 'departmentManagement' || file.title !== '部门管理') {
306
- !file.nodePath.includes('[-1]') && filteredChkFiles.add(file);
307
- }
308
- }
309
- else {
310
- !file.nodePath.includes('[-1]') && filteredChkFiles.add(file);
311
- }
222
+ // 兜底一下,免得哪里漏处理了导致错误栏刷屏
223
+ !file.nodePath.includes('[-1]') && filteredChkFiles.add(file);
312
224
  }
313
225
  chkFiles = filteredChkFiles;
314
226
  // 全局逻辑先拓扑排序
@@ -477,7 +389,7 @@ const getSubViews = (node) => {
477
389
  const toRaw = (node) => node?.__v_raw ?? node;
478
390
  // Helper function to get the file nodes of direct references. Will never check Entity logics.
479
391
  /**
480
- * @warning: 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
392
+ * @warning 改动这个文件中的逻辑时很容易引发增量检查问题、查找引用问题、内存泄漏,请谨慎;如单元测试 UT 发生错误,更要谨慎
481
393
  */
482
394
  const getDirectRefFileNodes = (env, def) => {
483
395
  const refs = (0, set_1.union)(env.refMgr.getSymbolRefs(def) ?? new Set(), env.refMgr.getImplicitReferences(def));
@@ -1 +1 @@
1
- {"version":3,"file":"incremental-update.js","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incremental-update.js","sourceRoot":"","sources":["../../src/typer/incremental-update.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subster.d.ts","sourceRoot":"","sources":["../../src/typer/subster.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,UAAU,EACV,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,MAAM,EAIX,SAAS,EAEZ,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAqH,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAWlK,eAAO,MAAM,UAAU,EAAE,aAAiD,CAAC;AAG3E,eAAO,MAAM,UAAU,QAAS,MAAM,4BAA4B,cAAc,GAAG,SAAS,KAAG,cA+I9F,CAAA;AAGD,eAAO,MAAM,iBAAiB,QAAS,MAAM,4BAA4B,cAAc,GAAG,SAAS,KAAG,cAoJrG,CAAA;AAED,eAAO,MAAM,qBAAqB,QAAS,MAAM,MAAM,UAAU,SAKhE,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAS,MAAM,cAAc,UAAU,+BAyDnE,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAU,MAAM,UAAU,CAAC,EAAE,EAAE,cAAc,GAAG,SAAS,KAAK,cAAc,MAAM,cAAc,GAAG,SAAS,mBAC/G,CAAC;AAgB7B,eAAO,MAAM,cAAc,QAAS,MAAM,8DAOzC,CAAA;AAGD,eAAO,MAAM,qBAAqB,QAAS,MAAM,qDAAmD,OAMnG,CAAA;AAID,eAAO,MAAM,0BAA0B,OAAQ,cAAc,KAAG,cAc/D,CAAA;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,aAAa,CAMlG"}
1
+ {"version":3,"file":"subster.d.ts","sourceRoot":"","sources":["../../src/typer/subster.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,UAAU,EACV,cAAc,EACjB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,MAAM,EAIX,SAAS,EAEZ,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAqH,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAWlK,eAAO,MAAM,UAAU,EAAE,aAAiD,CAAC;AAG3E,eAAO,MAAM,UAAU,QAAS,MAAM,4BAA4B,cAAc,GAAG,SAAS,KAAG,cA8I9F,CAAA;AAGD,eAAO,MAAM,iBAAiB,QAAS,MAAM,4BAA4B,cAAc,GAAG,SAAS,KAAG,cAmJrG,CAAA;AAED,eAAO,MAAM,qBAAqB,QAAS,MAAM,MAAM,UAAU,SAKhE,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAS,MAAM,cAAc,UAAU,+BAyDnE,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAU,MAAM,UAAU,CAAC,EAAE,EAAE,cAAc,GAAG,SAAS,KAAK,cAAc,MAAM,cAAc,GAAG,SAAS,mBAC/G,CAAC;AAgB7B,eAAO,MAAM,cAAc,QAAS,MAAM,8DAOzC,CAAA;AAGD,eAAO,MAAM,qBAAqB,QAAS,MAAM,qDAAmD,OAMnG,CAAA;AAID,eAAO,MAAM,0BAA0B,OAAQ,cAAc,KAAG,cAc/D,CAAA;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,aAAa,CAMlG"}
@@ -12,8 +12,8 @@ const asserts_1 = require("@lcap/nasl-concepts/asserts");
12
12
  const type_operator_1 = require("../utils/type-operator");
13
13
  const typer_1 = require("./typer");
14
14
  const lodash_1 = require("lodash");
15
- const vue_hack_1 = require("../utils/vue-hack");
16
15
  const nasl_predicate_1 = require("./nasl-predicate");
16
+ const nasl_utils_1 = require("@lcap/nasl-utils");
17
17
  exports.emptySubst = new Map();
18
18
  // 目前仅进行一次代换,无递归代换
19
19
  const substTyAnn = (env, m) => (ty) => {
@@ -92,9 +92,8 @@ const substTyAnn = (env, m) => (ty) => {
92
92
  const functionName = type_operator_1.NaslCoreBinaryOperator.add;
93
93
  const leftTy = pSubst(ty.typeArguments?.[1]);
94
94
  const rightTy = pSubst(ty.typeArguments?.[2]);
95
- // TODO FIXME: wudengke 请修复
96
- if (isLoosePrimTy(leftTy) && isLoosePrimTy(rightTy)) {
97
- return (0, type_operator_1.selectBinaryFunctionOverload)(env, functionName, leftTy, rightTy);
95
+ if ((0, type_predicate_1.isResolvedTy)(leftTy) && (0, type_predicate_1.isResolvedTy)(rightTy)) {
96
+ return (0, type_operator_1.selectBinaryOverload)(env, functionName, leftTy, rightTy);
98
97
  }
99
98
  return ty;
100
99
  }
@@ -243,9 +242,8 @@ const inPlaceSubstTyAnn = (env, m) => (ty) => {
243
242
  const functionName = type_operator_1.NaslCoreBinaryOperator.add;
244
243
  const leftTy = pSubst(ty.typeArguments?.[1]);
245
244
  const rightTy = pSubst(ty.typeArguments?.[2]);
246
- // TODO FIXME: wudengke 请修复
247
- if (isLoosePrimTy(leftTy) && isLoosePrimTy(rightTy)) {
248
- return (0, type_operator_1.selectBinaryFunctionOverload)(env, functionName, leftTy, rightTy);
245
+ if ((0, type_predicate_1.isResolvedTy)(leftTy) && (0, type_predicate_1.isResolvedTy)(rightTy)) {
246
+ return (0, type_operator_1.selectBinaryOverload)(env, functionName, leftTy, rightTy);
249
247
  }
250
248
  return ty;
251
249
  }
@@ -315,7 +313,7 @@ const traverseSubstRunCheck = (env, nd) => {
315
313
  };
316
314
  exports.traverseSubstRunCheck = traverseSubstRunCheck;
317
315
  const traverseAndSubst = (env) => (__node, subst) => {
318
- const node = (0, vue_hack_1.toRaw)(__node);
316
+ const node = (0, nasl_utils_1.toRaw)(__node);
319
317
  const pSubst = (0, exports.substTyAnn)(env, subst);
320
318
  const localVars = env.localVars.get(node);
321
319
  const substNode = (nd) => {
@@ -451,5 +449,4 @@ const visitChildren = (start, cb) => {
451
449
  }
452
450
  visit(start);
453
451
  };
454
- const isLoosePrimTy = (ty) => (0, type_predicate_1.isPrimitiveTy)(ty) || (0, type_predicate_1.isMetadataType)(ty);
455
452
  //# sourceMappingURL=subster.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subster.js","sourceRoot":"","sources":["../../src/typer/subster.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subster.js","sourceRoot":"","sources":["../../src/typer/subster.ts"],"names":[],"mappings":";;;AAAA,uDAS6B;AAE7B,mCAMiB;AAEjB,8EAAgF;AAChF,iDAAkK;AAClK,qDAA+G;AAC/G,+DAA2D;AAC3D,4EAAoE;AACpE,yDAA0D;AAC1D,0DAAmH;AACnH,mCAAoC;AACpC,mCAAgC;AAChC,qDAAsD;AACtD,iDAAyC;AAE5B,QAAA,UAAU,GAAkB,IAAI,GAAG,EAA0B,CAAC;AAE3E,kBAAkB;AACX,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,CAAC,EAA8B,EAAkB,EAAE;IAC5G,IAAI,CAAC,EAAE,EAAE,CAAC;QACN,OAAO,iBAAS,CAAC;IACrB,CAAC;IAED,IAAI,IAAA,sBAAc,EAAC,EAAE,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/E,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,QAAS,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,MAAM,EAAE,CAAC;YACT,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC,iBAAiB;QAC9C,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,4BAA4B;IAC5B,MAAM,KAAK,GAAG,IAAA,wBAAS,EAAC,EAAE,CAAC,CAAC;IAC5B,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QACxB,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,mBAAmB;QAClD,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,mBAAmB;QAC/C,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,mBAAmB;QAC/C,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACrC,MAAM,IAAI,GAAG,iCAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YACtD,IAAI,CAAC,cAAc,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACpB,KAAK,CAAC,WAAW,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC9D,CAAC;IAGD,IAAG,EAAE,CAAC,QAAQ,KAAK,UAAU,EAAC,CAAC;QAC7B,IAAG,EAAE,CAAC,MAAM,EAAC,CAAC;YACZ,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE;gBAC9B,OAAO;oBACL,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,IAAI,EAAE,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;iBACjC,CAAA;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,EAAE,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAClC,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACvC,iCAAiC;QACjC,OAAO,IAAA,wBAAQ,EAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,8BAAc,CAAC,iBAAiB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACjH,CAAC;SAAM,IAAI,EAAE,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACrC,IAAG,EAAE,CAAC,QAAQ,KAAK,cAAc,EAAC,CAAC;YACjC,OAAO,IAAA,iCAAiB,EAAC,GAAG,EAAE,EAAE,EAAE,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;aAAK,IAAG,EAAE,CAAC,QAAQ,KAAK,YAAY,EAAC,CAAC;YACrC,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,MAAM,CAAC,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,IAAG,IAAA,wBAAO,EAAC,GAAG,CAAC,IAAI,CAAC,EAAC,CAAC;gBACpB,OAAO,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9B,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;aAAK,IAAG,EAAE,CAAC,QAAQ,KAAK,QAAQ,EAAC,CAAC;YACjC,MAAM,GAAG,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,MAAM,CAAC,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,IAAG,IAAA,yBAAQ,EAAC,GAAG,CAAC,IAAI,CAAC,EAAC,CAAC;gBACrB,OAAO,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC9B,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;aAAM,IAAG,EAAE,CAAC,QAAQ,KAAK,sBAAsB,EAAC,CAAC;YAChD,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAClC,qDAAqD;YACrD,MAAM,YAAY,GAAG,sCAAsB,CAAC,GAAG,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,IAAA,6BAAY,EAAC,MAAM,CAAC,IAAI,IAAA,6BAAY,EAAC,OAAO,CAAC,EAAE,CAAC;gBAClD,OAAO,IAAA,oCAAoB,EAAC,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,KAAK,GAAG,IAAA,yCAAqB,EAAC,EAAE,CAAC,CAAC;QACxC,2CAA2C;QAC3C,MAAM,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,KAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAM,CAAC,CAAC;QAC1E,8DAA8D;QAC9D,IAAI,eAAe,IAAI,IAAA,0CAAiB,EAAC,eAAe,CAAC,EAAE,CAAC;YAC1D,0BAA0B;YAC1B,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACjD,IAAI,eAAe,CAAC,UAAU,EAAE,MAAM,KAAK,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;gBACpE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC7C,CAAC;YACD,oCAAoC;YACpC,MAAM,KAAK,GAAG,cAAc,CAC1B,eAAe,CAAC,UAAW,EAC3B,EAAE,CAAC,aAAc,CAAC,GAAG,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAC1C,CAAC;YACF,OAAO,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAChE,CAAC;aAAM,IAAI,IAAA,qBAAW,EAAC,eAAe,CAAC,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9E,qBAAqB;YACrB,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,+BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAC1F,MAAM,QAAQ,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAClD,CAAC;YACD,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC;YAC9C,MAAM,MAAM,GAAG,EAAE,CAAC,aAAc,CAAC;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,CAAC;YACD,MAAM,QAAQ,GAAG,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACpD,OAAO,8BAAc,CAAC,4BAA4B,CAChD,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACnB,MAAM,MAAM,GAAG,IAAA,oCAAqB,EAAC,CAAC,CAAC,CAAC;gBACxC,MAAM,CAAC,cAAc,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBACzE,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,EAAE,CAAC,QAAQ,KAAK,aAAa,EAAC,CAAC;QACxC,MAAM,SAAS,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACnD,kLAAkL;QAClL,IAAG,CAAC,IAAA,+BAAc,EAAC,SAAS,CAAC,IAAI,CAAC,IAAA,+BAAc,EAAC,WAAW,CAAC,EAAC,CAAC;YAC7D,aAAa;YACb,IAAI,IAAA,wBAAO,EAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC;gBACzC,OAAO,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,OAAO,8BAAc,CAAC,mBAAmB,CAAC;YACxC,QAAQ,EAAE,aAAa;YACvB,SAAS;YACT,WAAW;YACX,QAAQ;YACR,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAEH,OAAO,KAAK,CAAC;AACjB,CAAC,CAAA;AA9IY,QAAA,UAAU,cA8ItB;AAED,kBAAkB;AACX,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAE,CAAgB,EAAE,EAAE,CAAC,CAAC,EAA8B,EAAkB,EAAE;IACnH,IAAI,CAAC,EAAE,EAAE,CAAC;QACN,OAAO,iBAAS,CAAC;IACrB,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACzC,IAAI,IAAA,sBAAc,EAAC,EAAE,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnE,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC;QACxB,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,QAAS,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAG,OAAO,EAAC,CAAC;YACV,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACT,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC,iBAAiB;QAC9C,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAGD,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;IACD,IAAI,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,QAAQ,GAAG,iCAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YAC1D,QAAQ,CAAC,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YACnD,QAAQ,CAAC,EAAE,GAAG,aAAa,CAAC;YAC5B,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;QAChC,CAAC;IACL,CAAC;IACD,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACjB,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IAED,IAAG,EAAE,CAAC,QAAQ,KAAK,UAAU,EAAC,CAAC;QAC7B,IAAG,EAAE,CAAC,MAAM,EAAC,CAAC;YACZ,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE;gBAC3B,OAAO;oBACL,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;iBACrB,CAAA;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,EAAE,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;QACzC,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QACtC,EAAE,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACpC,OAAO,IAAA,wBAAQ,EAAC,GAAG,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;IACnE,CAAC;SAAM,IAAI,EAAE,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACrC,IAAG,EAAE,CAAC,QAAQ,KAAK,cAAc,EAAC,CAAC;YACjC,OAAO,IAAA,iCAAiB,EAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAC5C,CAAC;aAAK,IAAG,EAAE,CAAC,QAAQ,KAAK,YAAY,EAAC,CAAC;YACrC,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAG,IAAA,wBAAO,EAAC,GAAG,CAAC,IAAI,CAAC,EAAC,CAAC;gBACpB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;YAClB,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;aAAK,IAAG,EAAE,CAAC,QAAQ,KAAK,QAAQ,EAAC,CAAC;YACjC,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAG,IAAA,yBAAQ,EAAC,GAAG,CAAC,IAAI,CAAC,EAAC,CAAC;gBACrB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;YAClB,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;aAAM,IAAG,EAAE,CAAC,QAAQ,KAAK,sBAAsB,EAAC,CAAC;YAChD,qDAAqD;YACrD,MAAM,YAAY,GAAG,sCAAsB,CAAC,GAAG,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,IAAA,6BAAY,EAAC,MAAM,CAAC,IAAI,IAAA,6BAAY,EAAC,OAAO,CAAC,EAAE,CAAC;gBAClD,OAAO,IAAA,oCAAoB,EAAC,GAAG,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QACC,MAAM,KAAK,GAAG,IAAA,yCAAqB,EAAC,EAAE,CAAC,CAAC;QACxC,2CAA2C;QAC3C,MAAM,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,KAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,KAAM,CAAC,CAAC;QAC1E,8DAA8D;QAC9D,IAAI,eAAe,IAAI,IAAA,0CAAiB,EAAC,eAAe,CAAC,EAAE,CAAC;YACxD,MAAM,KAAK,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC5C,IAAI,eAAe,CAAC,UAAU,EAAE,MAAM,KAAK,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC/C,CAAC;YACD,oCAAoC;YACpC,MAAM,MAAM,GAAG,EAAE,CAAC,aAAc,CAAC;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAClC,CAAC;YACD,MAAM,QAAQ,GAAG,cAAc,CAAC,eAAe,CAAC,UAAW,EAAE,MAAM,CAAC,CAAC;YACrE,OAAO,MAAM,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,IAAA,qBAAW,EAAC,eAAe,CAAC,IAAI,eAAe,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9E,qBAAqB;YACrB,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,+BAAgB,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;YACzF,MAAM,QAAQ,GAAG,EAAE,CAAC,aAAa,IAAI,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAClD,CAAC;YACD,MAAM,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC;YAC9C,MAAM,MAAM,GAAG,EAAE,CAAC,aAAc,CAAC;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACrC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAClC,CAAC;YACD,MAAM,QAAQ,GAAG,cAAc,CAC7B,UAAU,EACV,MAAM,CACP,CAAC;YACF,SAAS;YACT,OAAO,8BAAc,CAAC,4BAA4B,CAChD,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE;gBAChB,MAAM,MAAM,GAAG,IAAA,oCAAqB,EAAC,CAAC,CAAC,CAAC;gBACvC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,IAAA,kBAAU,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;gBACjF,OAAO,MAAM,CAAC;YACjB,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;IACL,CAAC;SAAM,IAAI,EAAE,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;QACvC,EAAE,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACpC,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QACxC,EAAE,CAAC,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;QAClC,EAAE,CAAC,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACpC,kLAAkL;QAClL,IAAI,CAAC,IAAA,+BAAc,EAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAA,+BAAc,EAAC,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;YACnE,aAAa;YACb,IAAI,IAAA,wBAAO,EAAC,GAAG,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC7C,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACJ,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YAChC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,OAAO,EAAE,CAAC;AACd,CAAC,CAAA;AAnJY,QAAA,iBAAiB,qBAmJ7B;AAEM,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAc,EAAE,EAAE;IACnE,GAAG,CAAC,MAAM,GAAG,IAAI,cAAM,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;IAClD,IAAA,wBAAgB,EAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACjC,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC,CAAA;AALY,QAAA,qBAAqB,yBAKjC;AAEM,MAAM,gBAAgB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,MAAkB,EAAE,KAAoB,EAAE,EAAE;IAC5F,MAAM,IAAI,GAAG,IAAA,kBAAK,EAAC,MAAM,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAEtC,MAAM,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAW,CAAC,CAAC;IAEjD,MAAM,SAAS,GAAG,CAAC,EAAc,EAAE,EAAE;QACnC,IAAI,IAAA,mCAAkB,EAAC,EAAS,CAAC,IAAI,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAK,CAAC,EAAE,CAAC;YACnE,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,eAAe,GAAG,OAAO,CAAC;QAE9B,GAAG,CAAC,YAAY;aACb,iBAAiB,CAAC,0BAAW,CAAC,qBAAqB,EAAE,EAAE,CAAC;YACzD,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE;YAC9B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEL,IAAI,IAAA,+BAAc,EAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,eAAe,GAAG,IAAA,0BAAkB,EAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC3D,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;YAEjC,IAAI,EAAE,CAAC,OAAO,KAAK,YAAY,EAAE,CAAC;gBAChC,UAAU;gBACV,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EAAgB,CAAC,CAAC;gBAC9C,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC3C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;wBACnD,qBAAqB;wBACrB,IAAI,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;4BACrC,IAAA,iCAAgB,EAAC,eAAe,CAAC,IAAI,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;wBACvF,CAAC;6BAAM,CAAC;4BACN,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC,uBAAuB;wBAC5D,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,EAAE,CAAC;YACnB,eAAe,GAAG,IAAA,0BAAkB,EAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC3D,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,IAAA,wCAAyB,EAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,MAAM,aAAa,GAAG,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,QAAS,CAAC,CAAC;YACzE,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QAC9C,CAAC;QAED,IAAG,EAAE,CAAC,OAAO,KAAK,OAAO,EAAC,CAAC;YACzB,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAA,EAAE;gBAC3B,SAAS,CAAC,CAAC,CAAC,CAAC;YACf,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAA;IACD,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACjC,CAAC,CAAA;AAzDY,QAAA,gBAAgB,oBAyD5B;AAEM,MAAM,kBAAkB,GAAI,CAAC,GAAW,EAAE,MAA0D,EAAE,EAA8B,EAAE,EAAE,CAC7I,IAAA,iBAAS,EAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AADhB,QAAA,kBAAkB,sBACF;AAE7B,MAAM,0BAA0B,GAAG,CAAC,GAAW,EAAE,MAA0D,EAAE,QAAsB,EAAE,EAAE;IACrI,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpC,KAAK,CAAC,cAAc,GAAG,IAAA,0BAAkB,EAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC;IAC/E,CAAC;IACD,QAAQ,CAAC,GAAG,GAAG,IAAA,0BAAkB,EAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7D,IAAI,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAA,0BAAkB,EAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAA;AAED,4BAA4B;AACrB,MAAM,cAAc,GAAG,CAAC,GAAW,EAAE,KAAoB,EAAE,EAAE,CAAC,CAAC,SAAoB,EAAa,EAAE;IACrG,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,IAAA,eAAO,EAAC,SAAS,CAAC,CAAC;IAClC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC,CAAA;AAPY,QAAA,cAAc,kBAO1B;AAED,uBAAuB;AAChB,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,KAAoB,EAAE,EAAE,CAAC,CAAC,SAAoB,EAAW,EAAE;IAC1G,MAAM,MAAM,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC;QAC7B,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAA;AANY,QAAA,qBAAqB,yBAMjC;AAED,qCAAqC;AACrC,4EAA4E;AACrE,MAAM,0BAA0B,GAAG,CAAC,EAAkB,EAAkB,EAAE;IAC7E,wBAAwB;IACxB,IAAI,EAAE,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC1B,IAAI,EAAE,CAAC,aAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa;YAC/C,OAAO,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC;aAAM,IAAI,EAAE,CAAC,aAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,IAAA,eAAM,EAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,EAAC,EAAE,CAAC,IAAA,uBAAQ,EAAC,CAAC,CAAC,CAAC,CAAA;YACvD,IAAG,GAAG,CAAC,MAAM,KAAK,CAAC,EAAC,CAAC;gBACnB,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC;YACD,EAAE,CAAC,aAAa,GAAG,GAAG,CAAC;QACzB,CAAC;IACL,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC,CAAA;AAdY,QAAA,0BAA0B,8BActC;AAED,SAAgB,cAAc,CAAC,QAA0B,EAAE,MAAwB;IAC/E,MAAM,KAAK,GAAG,IAAI,GAAG,EAA0B,CAAC;IAChD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;QAC5B,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACjB,CAAC;AAND,wCAMC;AAGD,MAAM,aAAa,GAAG,CACpB,KAAiB,EACjB,EAA4B,EAC5B,EAAE;IACF,SAAS,KAAK,CAAC,IAA4B;QACzC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,EAAE,CAAC,IAAI,CAAC,CAAC;QAET,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,MAAM,EAAE,eAAe,EAAE,kBAAkB,EAAE,GAAG,IAAA,8BAAc,EAAC,OAAO,CAAC,CAAC;QAExE,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAuB,CAA2B,CAAC;YACtE,KAAK,CAAC,KAAK,CAAC,CAAC;QACf,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAuB,CAA+B,CAAC;YAC7E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,SAAS;YACX,CAAC;YACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACzC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,CAAC;AACf,CAAC,CAAA"}