@lcap/nasl 2.20.0-beta.1 → 2.20.0-beta.2

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 (307) hide show
  1. package/out/automate/engine/index.d.ts +1 -1
  2. package/out/automate/engine/index.js +7 -7
  3. package/out/automate/engine/index.js.map +1 -1
  4. package/out/automate/engine/uniqueName.d.ts +1 -1
  5. package/out/automate/engine/uniqueName.js +3 -3
  6. package/out/automate/engine/uniqueName.js.map +1 -1
  7. package/out/automate/template/myProcess.js +1 -1
  8. package/out/automate/template/myProcess.js.map +1 -1
  9. package/out/bak/translator.js +38 -85
  10. package/out/bak/translator.js.map +1 -1
  11. package/out/common/BaseNode.d.ts +10 -6
  12. package/out/common/BaseNode.js +53 -7
  13. package/out/common/BaseNode.js.map +1 -1
  14. package/out/concepts/AnonymousFunction__.d.ts +1 -0
  15. package/out/concepts/AnonymousFunction__.js +40 -2
  16. package/out/concepts/AnonymousFunction__.js.map +1 -1
  17. package/out/concepts/App__.d.ts +89 -261
  18. package/out/concepts/App__.js +315 -367
  19. package/out/concepts/App__.js.map +1 -1
  20. package/out/concepts/Assignee__.js.map +1 -1
  21. package/out/concepts/AssignmentLine__.d.ts +5 -5
  22. package/out/concepts/AssignmentLine__.js +6 -6
  23. package/out/concepts/AssignmentLine__.js.map +1 -1
  24. package/out/concepts/Assignment__.js +1 -2
  25. package/out/concepts/Assignment__.js.map +1 -1
  26. package/out/concepts/BatchAssignment__.d.ts +62 -60
  27. package/out/concepts/BatchAssignment__.js +113 -42
  28. package/out/concepts/BatchAssignment__.js.map +1 -1
  29. package/out/concepts/BindAttribute__.d.ts +24 -0
  30. package/out/concepts/BindAttribute__.js +54 -4
  31. package/out/concepts/BindAttribute__.js.map +1 -1
  32. package/out/concepts/BindDirective__.d.ts +5 -0
  33. package/out/concepts/BindDirective__.js +6 -0
  34. package/out/concepts/BindDirective__.js.map +1 -1
  35. package/out/concepts/BindEvent__.d.ts +5 -0
  36. package/out/concepts/BindEvent__.js +6 -0
  37. package/out/concepts/BindEvent__.js.map +1 -1
  38. package/out/concepts/BindStyle__.d.ts +7 -2
  39. package/out/concepts/BindStyle__.js +9 -3
  40. package/out/concepts/BindStyle__.js.map +1 -1
  41. package/out/concepts/BooleanLiteral__.js +0 -8
  42. package/out/concepts/BooleanLiteral__.js.map +1 -1
  43. package/out/concepts/CallFunction__.js +90 -38
  44. package/out/concepts/CallFunction__.js.map +1 -1
  45. package/out/concepts/CallInterface__.d.ts +7 -0
  46. package/out/concepts/CallInterface__.js +54 -7
  47. package/out/concepts/CallInterface__.js.map +1 -1
  48. package/out/concepts/CallLogic__.d.ts +2 -1
  49. package/out/concepts/CallLogic__.js +171 -37
  50. package/out/concepts/CallLogic__.js.map +1 -1
  51. package/out/concepts/CallQueryComponent__.js +16 -1
  52. package/out/concepts/CallQueryComponent__.js.map +1 -1
  53. package/out/concepts/CompletionProperty__.js +3 -0
  54. package/out/concepts/CompletionProperty__.js.map +1 -1
  55. package/out/concepts/ConfigGroup__.js.map +1 -1
  56. package/out/concepts/ConfigProperty__.js.map +1 -1
  57. package/out/concepts/Configuration__.js.map +1 -1
  58. package/out/concepts/Constant__.d.ts +5 -0
  59. package/out/concepts/Constant__.js +6 -0
  60. package/out/concepts/Constant__.js.map +1 -1
  61. package/out/concepts/DataSource__.d.ts +8 -0
  62. package/out/concepts/DataSource__.js +96 -1
  63. package/out/concepts/DataSource__.js.map +1 -1
  64. package/out/concepts/Destination__.d.ts +11 -2
  65. package/out/concepts/Destination__.js +156 -51
  66. package/out/concepts/Destination__.js.map +1 -1
  67. package/out/concepts/EntityProperty__.d.ts +21 -8
  68. package/out/concepts/EntityProperty__.js +109 -23
  69. package/out/concepts/EntityProperty__.js.map +1 -1
  70. package/out/concepts/Entity__.d.ts +32 -0
  71. package/out/concepts/Entity__.js +117 -2
  72. package/out/concepts/Entity__.js.map +1 -1
  73. package/out/concepts/Enum__.js +0 -4
  74. package/out/concepts/Enum__.js.map +1 -1
  75. package/out/concepts/Event__.js.map +1 -1
  76. package/out/concepts/ExternalDestination__.d.ts +73 -0
  77. package/out/concepts/ExternalDestination__.js +264 -0
  78. package/out/concepts/ExternalDestination__.js.map +1 -0
  79. package/out/concepts/ForEachStatement__.d.ts +0 -4
  80. package/out/concepts/ForEachStatement__.js +4 -8
  81. package/out/concepts/ForEachStatement__.js.map +1 -1
  82. package/out/concepts/Frontend__.d.ts +370 -0
  83. package/out/concepts/Frontend__.js +669 -0
  84. package/out/concepts/Frontend__.js.map +1 -0
  85. package/out/concepts/Function__.js.map +1 -1
  86. package/out/concepts/Identifier__.d.ts +1 -0
  87. package/out/concepts/Identifier__.js +33 -10
  88. package/out/concepts/Identifier__.js.map +1 -1
  89. package/out/concepts/IfStatement__.d.ts +8 -0
  90. package/out/concepts/IfStatement__.js +22 -0
  91. package/out/concepts/IfStatement__.js.map +1 -1
  92. package/out/concepts/InterfaceParam__.js.map +1 -1
  93. package/out/concepts/Interface__.js.map +1 -1
  94. package/out/concepts/LogicItem__.d.ts +6 -1
  95. package/out/concepts/LogicItem__.js +6 -0
  96. package/out/concepts/LogicItem__.js.map +1 -1
  97. package/out/concepts/Logic__.d.ts +91 -80
  98. package/out/concepts/Logic__.js +178 -59
  99. package/out/concepts/Logic__.js.map +1 -1
  100. package/out/concepts/MatchCase__.d.ts +1 -1
  101. package/out/concepts/MatchCase__.js +15 -8
  102. package/out/concepts/MatchCase__.js.map +1 -1
  103. package/out/concepts/Match__.d.ts +21 -19
  104. package/out/concepts/Match__.js +118 -26
  105. package/out/concepts/Match__.js.map +1 -1
  106. package/out/concepts/MemberExpression__.d.ts +4 -1
  107. package/out/concepts/MemberExpression__.js +30 -15
  108. package/out/concepts/MemberExpression__.js.map +1 -1
  109. package/out/concepts/Module__.js.map +1 -1
  110. package/out/concepts/Namespace__.js.map +1 -1
  111. package/out/concepts/NewComposite__.d.ts +345 -0
  112. package/out/concepts/NewComposite__.js +1068 -0
  113. package/out/concepts/NewComposite__.js.map +1 -0
  114. package/out/concepts/NewList__.d.ts +130 -0
  115. package/out/concepts/NewList__.js +349 -0
  116. package/out/concepts/NewList__.js.map +1 -0
  117. package/out/concepts/NewMap__.d.ts +221 -0
  118. package/out/concepts/NewMap__.js +480 -0
  119. package/out/concepts/NewMap__.js.map +1 -0
  120. package/out/concepts/New__.d.ts +19 -0
  121. package/out/concepts/New__.js +66 -0
  122. package/out/concepts/New__.js.map +1 -0
  123. package/out/concepts/NumericLiteral__.js +1 -1
  124. package/out/concepts/NumericLiteral__.js.map +1 -1
  125. package/out/concepts/OqlQueryComponent__.d.ts +7 -3
  126. package/out/concepts/OqlQueryComponent__.js +56 -95
  127. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  128. package/out/concepts/Param__.d.ts +8 -1
  129. package/out/concepts/Param__.js +85 -6
  130. package/out/concepts/Param__.js.map +1 -1
  131. package/out/concepts/ProcessComponent__.js.map +1 -1
  132. package/out/concepts/ProcessElement__.js +42 -13
  133. package/out/concepts/ProcessElement__.js.map +1 -1
  134. package/out/concepts/ProcessOutcomes__.d.ts +30 -0
  135. package/out/concepts/ProcessOutcomes__.js +87 -0
  136. package/out/concepts/ProcessOutcomes__.js.map +1 -0
  137. package/out/concepts/Process__.d.ts +4 -20
  138. package/out/concepts/Process__.js +0 -7
  139. package/out/concepts/Process__.js.map +1 -1
  140. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  141. package/out/concepts/QueryOrderByExpression__.d.ts +3 -3
  142. package/out/concepts/QueryOrderByExpression__.js +3 -3
  143. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  144. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  145. package/out/concepts/Return__.d.ts +5 -0
  146. package/out/concepts/Return__.js +45 -2
  147. package/out/concepts/Return__.js.map +1 -1
  148. package/out/concepts/SelectMembers__.d.ts +1 -1
  149. package/out/concepts/SelectMembers__.js +5 -5
  150. package/out/concepts/SelectMembers__.js.map +1 -1
  151. package/out/concepts/SqlQueryComponent__.d.ts +2 -4
  152. package/out/concepts/SqlQueryComponent__.js +9 -88
  153. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  154. package/out/concepts/StringInterpolation__.d.ts +113 -0
  155. package/out/concepts/StringInterpolation__.js +227 -0
  156. package/out/concepts/StringInterpolation__.js.map +1 -0
  157. package/out/concepts/StringLiteral__.js +0 -7
  158. package/out/concepts/StringLiteral__.js.map +1 -1
  159. package/out/concepts/StructureProperty__.js.map +1 -1
  160. package/out/concepts/Structure__.js.map +1 -1
  161. package/out/concepts/Transactional__.d.ts +5 -0
  162. package/out/concepts/Transactional__.js +6 -0
  163. package/out/concepts/Transactional__.js.map +1 -1
  164. package/out/concepts/TypeAnnotation__.d.ts +4 -0
  165. package/out/concepts/TypeAnnotation__.js +67 -15
  166. package/out/concepts/TypeAnnotation__.js.map +1 -1
  167. package/out/concepts/TypeParam__.d.ts +1 -0
  168. package/out/concepts/TypeParam__.js +2 -0
  169. package/out/concepts/TypeParam__.js.map +1 -1
  170. package/out/concepts/UnaryExpression__.js +6 -9
  171. package/out/concepts/UnaryExpression__.js.map +1 -1
  172. package/out/concepts/ValidationRule__.js +87 -22
  173. package/out/concepts/ValidationRule__.js.map +1 -1
  174. package/out/concepts/Variable__.d.ts +5 -0
  175. package/out/concepts/Variable__.js +46 -3
  176. package/out/concepts/Variable__.js.map +1 -1
  177. package/out/concepts/ViewComponent__.js.map +1 -1
  178. package/out/concepts/ViewElement__.d.ts +35 -29
  179. package/out/concepts/ViewElement__.js +138 -54
  180. package/out/concepts/ViewElement__.js.map +1 -1
  181. package/out/concepts/View__.d.ts +10 -3
  182. package/out/concepts/View__.js +116 -86
  183. package/out/concepts/View__.js.map +1 -1
  184. package/out/concepts/WhileStatement__.js +1 -1
  185. package/out/concepts/WhileStatement__.js.map +1 -1
  186. package/out/concepts/basics/stdlib/nasl.auth.js +1 -1
  187. package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -1
  188. package/out/concepts/basics/stdlib/nasl.browser.js +50 -0
  189. package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
  190. package/out/concepts/basics/stdlib/nasl.logging.js +5 -0
  191. package/out/concepts/basics/stdlib/nasl.logging.js.map +1 -1
  192. package/out/concepts/basics/stdlib/nasl.ui.js +38 -4
  193. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  194. package/out/concepts/basics/stdlib/nasl.util.js +214 -62
  195. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  196. package/out/concepts/index__.d.ts +9 -0
  197. package/out/concepts/index__.js +9 -0
  198. package/out/concepts/index__.js.map +1 -1
  199. package/out/enums/KEYWORDS.d.ts +1 -0
  200. package/out/enums/KEYWORDS.js +9 -1
  201. package/out/enums/KEYWORDS.js.map +1 -1
  202. package/out/generator/genBundleFiles.d.ts +10 -4
  203. package/out/generator/genBundleFiles.js +127 -162
  204. package/out/generator/genBundleFiles.js.map +1 -1
  205. package/out/generator/genMetaData.d.ts +2 -11
  206. package/out/generator/genMetaData.js +185 -51
  207. package/out/generator/genMetaData.js.map +1 -1
  208. package/out/generator/genReleaseBody.d.ts +57 -0
  209. package/out/generator/genReleaseBody.js +380 -0
  210. package/out/generator/genReleaseBody.js.map +1 -0
  211. package/out/generator/index.d.ts +2 -0
  212. package/out/generator/index.js +2 -0
  213. package/out/generator/index.js.map +1 -1
  214. package/out/generator/permission.d.ts +17 -0
  215. package/out/generator/permission.js +221 -0
  216. package/out/generator/permission.js.map +1 -0
  217. package/out/index.d.ts +3 -2
  218. package/out/index.js +7 -1
  219. package/out/index.js.map +1 -1
  220. package/out/server/entity2LogicNamespace.js +100 -20
  221. package/out/server/entity2LogicNamespace.js.map +1 -1
  222. package/out/server/extendBaseNode.js +33 -20
  223. package/out/server/extendBaseNode.js.map +1 -1
  224. package/out/server/formatTsUtils.d.ts +1 -2
  225. package/out/server/formatTsUtils.js +46 -64
  226. package/out/server/formatTsUtils.js.map +1 -1
  227. package/out/server/getLogics.d.ts +2 -1
  228. package/out/server/getLogics.js +24 -6
  229. package/out/server/getLogics.js.map +1 -1
  230. package/out/server/getMemberIdentifier.js +11 -11
  231. package/out/server/getMemberIdentifier.js.map +1 -1
  232. package/out/server/getProcesses.d.ts +1 -1
  233. package/out/server/getProcesses.js +1 -1
  234. package/out/server/getProcesses.js.map +1 -1
  235. package/out/server/index.d.ts +0 -1
  236. package/out/server/index.js +2 -27
  237. package/out/server/index.js.map +1 -1
  238. package/out/server/naslServer.d.ts +50 -8
  239. package/out/server/naslServer.js +816 -429
  240. package/out/server/naslServer.js.map +1 -1
  241. package/out/server/naslStdlibMap.js +30 -28
  242. package/out/server/naslStdlibMap.js.map +1 -1
  243. package/out/server/process2LogicNamespace.js +8 -0
  244. package/out/server/process2LogicNamespace.js.map +1 -1
  245. package/out/server/translator.js +90 -12
  246. package/out/server/translator.js.map +1 -1
  247. package/out/service/creator/add.configs.js +4 -0
  248. package/out/service/creator/add.configs.js.map +1 -1
  249. package/out/service/datasource/api.d.ts +12 -0
  250. package/out/service/datasource/api.js +14 -0
  251. package/out/service/datasource/api.js.map +1 -0
  252. package/out/service/datasource/index.d.ts +2 -0
  253. package/out/service/datasource/index.js +10 -0
  254. package/out/service/datasource/index.js.map +1 -0
  255. package/out/service/defaultErrorMessage.json +97 -0
  256. package/out/service/logic/api.d.ts +9 -0
  257. package/out/service/logic/api.js +11 -0
  258. package/out/service/logic/api.js.map +1 -0
  259. package/out/service/logic/index.d.ts +2 -0
  260. package/out/service/logic/index.js +10 -0
  261. package/out/service/logic/index.js.map +1 -0
  262. package/out/service/storage/init.js +48 -7
  263. package/out/service/storage/init.js.map +1 -1
  264. package/out/templator/genCreateBlock.js +6 -4
  265. package/out/templator/genCreateBlock.js.map +1 -1
  266. package/out/templator/genCurdEditMultipleKeyBlock.js +7 -4
  267. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  268. package/out/templator/genCurdMultipleKeyBlock.js +7 -5
  269. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  270. package/out/templator/genEditTableBlock.js +4 -5
  271. package/out/templator/genEditTableBlock.js.map +1 -1
  272. package/out/templator/genEnumSelectBlock.js +5 -2
  273. package/out/templator/genEnumSelectBlock.js.map +1 -1
  274. package/out/templator/genGetBlock.js +4 -3
  275. package/out/templator/genGetBlock.js.map +1 -1
  276. package/out/templator/genGridViewBlock.js +18 -16
  277. package/out/templator/genGridViewBlock.js.map +1 -1
  278. package/out/templator/genListViewBlock.js +7 -7
  279. package/out/templator/genListViewBlock.js.map +1 -1
  280. package/out/templator/genQueryComponent.d.ts +2 -2
  281. package/out/templator/genQueryComponent.js +4 -1
  282. package/out/templator/genQueryComponent.js.map +1 -1
  283. package/out/templator/genTableBlock.js +8 -12
  284. package/out/templator/genTableBlock.js.map +1 -1
  285. package/out/templator/genUpdateBlock.js +4 -3
  286. package/out/templator/genUpdateBlock.js.map +1 -1
  287. package/out/templator/utils.js +1 -1
  288. package/out/templator/utils.js.map +1 -1
  289. package/out/test/integration/node-nasl-server.js +10 -38
  290. package/out/test/integration/node-nasl-server.js.map +1 -1
  291. package/out/translator/index.d.ts +1 -0
  292. package/out/translator/index.js +1 -1
  293. package/out/translator/index.js.map +1 -1
  294. package/out/utils/index.d.ts +1 -0
  295. package/out/utils/index.js +38 -1
  296. package/out/utils/index.js.map +1 -1
  297. package/out/utils/string.d.ts +15 -2
  298. package/out/utils/string.js +18 -3
  299. package/out/utils/string.js.map +1 -1
  300. package/package.json +1 -1
  301. package/src/concepts/App__.ts +11 -36
  302. package/src/concepts/Frontend__.ts +8 -0
  303. package/src/concepts/ViewElement__.ts +7 -28
  304. package/src/concepts/View__.ts +1 -1
  305. package/src/server/getLogics.ts +2 -2
  306. package/src/server/naslServer.ts +8 -8
  307. package/src/service/storage/init.ts +3 -4
@@ -16,6 +16,7 @@ const TypeAnnotation__1 = __importDefault(require("./TypeAnnotation__"));
16
16
  const BooleanLiteral__1 = __importDefault(require("./BooleanLiteral__"));
17
17
  const MemberExpression__1 = __importDefault(require("./MemberExpression__"));
18
18
  const getMemberIdentifier_1 = require("../server/getMemberIdentifier");
19
+ const Identifier__1 = __importDefault(require("./Identifier__"));
19
20
  const decorators_1 = require("../decorators");
20
21
  const classMap_1 = __importDefault(require("../common/classMap"));
21
22
  const LogicItem__1 = __importDefault(require("./LogicItem__"));
@@ -37,7 +38,7 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
37
38
  */
38
39
  isExpression = false;
39
40
  /**
40
- * 匹配分支情况列表
41
+ * 匹配分支列表
41
42
  */
42
43
  cases = [];
43
44
  /**
@@ -217,13 +218,23 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
217
218
  ];
218
219
  }
219
220
  }
221
+ setIsExpression(isExpression) {
222
+ const object = {
223
+ isExpression,
224
+ };
225
+ this.update({
226
+ ...object,
227
+ });
228
+ }
220
229
  /**
221
230
  * 设置逻辑项
222
231
  */
223
232
  setExpression(expression) {
224
- expression._delete();
225
- const relationOptions = { parentNode: this, parentKey: 'expression' };
226
- Object.assign(expression, relationOptions);
233
+ if (expression) {
234
+ expression._delete();
235
+ const relationOptions = { parentNode: this, parentKey: 'expression' };
236
+ Object.assign(expression, relationOptions);
237
+ }
227
238
  const object = {
228
239
  expression,
229
240
  };
@@ -237,26 +248,57 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
237
248
  actionMsg: `修改${this?.name || this?.label || this?.constructor?.nodeTitle}`,
238
249
  });
239
250
  this.setExpression(expression);
240
- if (expression) {
241
- const updateObj = {};
242
- let cases = [new MatchCase__1.default(), new MatchCase__1.default()];
251
+ // expression切换并且自动生成分支
252
+ await this.autoGenCases();
253
+ this.app.emit('collect:end');
254
+ }
255
+ // 自动生成分支
256
+ async autoGenCases() {
257
+ const expression = this.expression;
258
+ const currTypeAnnotation = await expression?.getCurrentTypeAnnotation();
259
+ let cases = [];
260
+ let isMatchedTypeEnumable = false;
261
+ if (currTypeAnnotation) {
262
+ cases = [new MatchCase__1.default()];
243
263
  const enumerableItems = await this.getEnumerableItems();
244
- if (Array.isArray(enumerableItems)) {
264
+ if (Array.isArray(enumerableItems) && enumerableItems.length) {
265
+ isMatchedTypeEnumable = true;
245
266
  cases = enumerableItems.map((enumerableItem) => new MatchCase__1.default({
246
267
  patterns: [enumerableItem],
247
- isMatchedTypeEnumable: true,
268
+ isMatchedTypeEnumable,
248
269
  }));
249
- cases.push(new MatchCase__1.default());
250
270
  }
251
- updateObj.cases = cases;
252
- this.update(updateObj);
253
271
  }
254
- else {
255
- this.update({
256
- cases: [],
272
+ const bodys = [];
273
+ if (Array.isArray(this.cases) && this.cases.length) {
274
+ this.cases.forEach((caseItem) => {
275
+ const { body } = caseItem || {};
276
+ if (Array.isArray(body) && body.length) {
277
+ bodys.push({
278
+ body,
279
+ isMatchedTypeEnumable: currTypeAnnotation ? isMatchedTypeEnumable : true,
280
+ });
281
+ }
282
+ });
283
+ bodys.forEach(({ body, isMatchedTypeEnumable }, index) => {
284
+ let caseItem = cases[index];
285
+ if (!caseItem) {
286
+ caseItem = new MatchCase__1.default({
287
+ isMatchedTypeEnumable,
288
+ });
289
+ cases.push(caseItem);
290
+ }
291
+ caseItem.update({
292
+ body,
293
+ });
257
294
  });
258
295
  }
259
- this.app.emit('collect:end');
296
+ if (cases.length) {
297
+ cases.push(new MatchCase__1.default());
298
+ }
299
+ this.update({
300
+ cases,
301
+ });
260
302
  }
261
303
  static getDefaultOptions() {
262
304
  return {
@@ -292,16 +334,26 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
292
334
  node = node.parentNode;
293
335
  }
294
336
  }
295
- return nameList.join('_');
337
+ return nameList.join('_').replace(/-/g, '_');
296
338
  }
297
339
  getViewMatchExpressionBuilder() {
298
340
  return `gen${this.inViewName}`;
299
341
  }
300
342
  getInViewMethod(state) {
343
+ const viewElement = this?.getAncestor('ViewElement');
344
+ const argsList = [];
345
+ let parent = viewElement?.parentNode;
346
+ let index = 0;
347
+ while (parent && parent.concept !== 'View') {
348
+ if (parent.slotScope) {
349
+ argsList.unshift(index === 0 ? 'current' : 'current' + index);
350
+ index++;
351
+ }
352
+ parent = parent.parentNode;
353
+ }
301
354
  let code = '';
302
- code += `async ${this.getViewMatchExpressionBuilder()} () {\n`;
303
- code += `this.${this.inViewName} = `;
304
- code += this.toJS(state);
355
+ code += `${this.getViewMatchExpressionBuilder()} (${argsList.join(', ')}) {\n`;
356
+ code += `return ${this.toJS()}`;
305
357
  code += `;\n`;
306
358
  code += '}';
307
359
  return code;
@@ -310,7 +362,7 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
310
362
  const { action, object, eventList } = $event || {};
311
363
  // expression修改时,通知tsserver,让tsserver重新生成ts文件,为了后续能获取expression的类型
312
364
  if (action === 'update' && object.hasOwnProperty('expression')) {
313
- translator_1.embeddedTSEmitter.emit('change', {
365
+ this.app?.naslServer?.embeddedTSEmitter.emit('change', {
314
366
  value: eventList,
315
367
  });
316
368
  }
@@ -321,7 +373,18 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
321
373
  return this.toUI();
322
374
  }
323
375
  else {
324
- return this.inViewName;
376
+ const viewElement = this?.getAncestor('ViewElement');
377
+ const argsList = [];
378
+ let parent = viewElement?.parentNode;
379
+ let index = 0;
380
+ while (parent && parent.concept !== 'View') {
381
+ if (parent.slotScope) {
382
+ argsList.unshift(index === 0 ? 'current' : 'current' + index);
383
+ index++;
384
+ }
385
+ parent = parent.parentNode;
386
+ }
387
+ return `${this.getViewMatchExpressionBuilder()}(${argsList.join(', ')})`;
325
388
  }
326
389
  }
327
390
  toUI(state) {
@@ -339,13 +402,21 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
339
402
  return code;
340
403
  }
341
404
  toJS(state) {
342
- let code = 'await (async () => {\n';
405
+ let code = '';
406
+ // 祖先逻辑
407
+ const ancestorLogic = this.getAncestor('Logic');
408
+ if (ancestorLogic) {
409
+ code += 'await (async () => {\n';
410
+ }
411
+ else {
412
+ code += '(() => {\n';
413
+ }
343
414
  if (this.expression && Array.isArray(this.cases)) {
344
415
  this.cases.forEach((item, index) => {
345
416
  code += item?.toJS?.(this.expression, index, this.cases.length);
346
417
  });
347
418
  }
348
- code += `})()`;
419
+ code += '})()';
349
420
  return code;
350
421
  }
351
422
  toEmbeddedTS(state) {
@@ -358,7 +429,15 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
358
429
  let parentCode;
359
430
  if (this.expression) {
360
431
  code += (0, translator_1.indent)((state?.tabSize || 0));
361
- code += parentCode = this.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code));
432
+ // Identifier会使用自己本身的类型,来推导,因为右侧放的内容关系关系到内部类型推断
433
+ if ((this.expression instanceof Identifier__1.default) || (this.expression instanceof MemberExpression__1.default)) {
434
+ code += parentCode = this.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code));
435
+ }
436
+ else {
437
+ parentCode = '__matchExpression';
438
+ code += `let ${parentCode} = `;
439
+ code += this.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code));
440
+ }
362
441
  code += ';\n';
363
442
  }
364
443
  else {
@@ -376,7 +455,19 @@ let Match = Match_1 = class Match extends LogicItem__1.default {
376
455
  code += (0, translator_1.indent)((state?.tabSize || 0));
377
456
  code += 'return __MatchExpressionFuntion();\n';
378
457
  code += (0, translator_1.indent)((state?.tabSize || 0));
379
- code += '})();\n';
458
+ code += '})()';
459
+ if (this.parentNode.concept !== 'Argument'
460
+ && this.parentKey !== 'test'
461
+ && this.parentKey !== 'patterns'
462
+ && this.parentNode.concept !== 'Assignment'
463
+ && this.parentNode.concept !== 'ForEachStatement'
464
+ && this.parentNode.concept !== 'SelectMembers'
465
+ && this.parentNode.concept !== 'BinaryExpression'
466
+ && this.parentNode.concept !== 'StringInterpolation'
467
+ && this.parentNode.concept !== 'MemberExpression'
468
+ && !['NewMap', 'NewList'].includes(this.parentNode.concept)) {
469
+ code += ';\n';
470
+ }
380
471
  return code;
381
472
  }
382
473
  };
@@ -405,4 +496,5 @@ exports.default = Match;
405
496
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
406
497
  // 自动生成的代码已结束。下面可以手动编写。
407
498
  //================================================================================
499
+ // @ts-check
408
500
  //# sourceMappingURL=Match__.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Match__.js","sourceRoot":"","sources":["../../src/concepts/Match__.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Match__.js","sourceRoot":"","sources":["../../src/concepts/Match__.ts"],"names":[],"mappings":"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"}
@@ -55,14 +55,17 @@ export declare class MemberExpression extends LogicItem {
55
55
  * 设置数据结构属性名称
56
56
  */
57
57
  setName(name: string): void;
58
+ isEnum(): boolean;
58
59
  getValue(): string;
59
60
  get completeName(): string;
60
61
  get rootName(): string;
61
62
  /**
62
- * getValue的值就是想要的ts内容
63
+ * 翻译
63
64
  * @param state
64
65
  * @returns
65
66
  */
66
67
  toEmbeddedTS(state?: TranslatorState): string;
68
+ get lastObject(): any;
69
+ firstMemberExpressionNode(): any;
67
70
  }
68
71
  export default MemberExpression;
@@ -108,11 +108,10 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
108
108
  const bindAttr = this.getAncestor('BindAttribute');
109
109
  if (bindAttr && (bindAttr.sync || bindAttr.model))
110
110
  return Identifier_RE.test(property) ? `${object}.${property}` : `${object}['${property}']`;
111
- const lastPart = object.split(' && ').pop();
112
111
  if (Identifier_RE.test(property))
113
- return options?.finalCode === false ? `${object}.${property}` : `${object} && ${lastPart}.${property}`;
112
+ return options?.finalCode === false ? `${object}.${property}` : `(${object} || {}).${property}`;
114
113
  else
115
- return options?.finalCode === false ? `${object}['${property}']` : `${object} && ${lastPart}['${property}']`;
114
+ return options?.finalCode === false ? `${object}['${property}']` : `(${object} || {})['${property}']`;
116
115
  }
117
116
  toUI() {
118
117
  // 如果是枚举取值
@@ -136,27 +135,26 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
136
135
  if (assignment) {
137
136
  const left = assignment.left;
138
137
  let node = this;
139
- while (node && node.concept === 'MemberExpression' && left !== node) {
138
+ while (node.parentNode && node.parentNode.concept === 'MemberExpression') {
140
139
  node = node.parentNode;
141
140
  }
142
141
  // 在赋值语句的左侧
143
- if (node) {
142
+ if (left === node) {
144
143
  return Identifier_RE.test(property) ? `${object}.${property}` : `${object}['${property}']`;
145
144
  }
146
145
  }
147
146
  else if (batchAssignment) {
148
- const left = batchAssignment.left;
149
- let node = this;
150
- while (node && node.concept === 'MemberExpression' && left !== node) {
151
- node = node.parentNode;
147
+ const selectMember = batchAssignment.left;
148
+ let topNode = this;
149
+ while (topNode.parentNode && topNode.parentNode.concept === 'MemberExpression') {
150
+ topNode = topNode.parentNode;
152
151
  }
153
152
  // 在赋值语句的左侧
154
- if (node) {
153
+ if (selectMember === topNode.parentNode) {
155
154
  return Identifier_RE.test(property) ? `${object}.${property}` : `${object}['${property}']`;
156
155
  }
157
156
  }
158
- const lastPart = object.split(' && ').pop();
159
- return Identifier_RE.test(property) ? `${object} && ${lastPart}.${property}` : `${object} && ${lastPart}['${property}']`;
157
+ return Identifier_RE.test(property) ? `(${object} || {}).${property}` : `(${object} || {})['${property}']`;
160
158
  }
161
159
  toBrief() {
162
160
  return `${this.object.toBrief()}.${this.property.toBrief()}`;
@@ -185,6 +183,9 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
185
183
  // 需要单独处理下内容向上查找覆盖
186
184
  this.setValue(name);
187
185
  }
186
+ isEnum() {
187
+ return this.object?.isEnum();
188
+ }
188
189
  // 方便快速取值,遍历获取value
189
190
  getValue() {
190
191
  let current = this;
@@ -216,8 +217,8 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
216
217
  }
217
218
  }
218
219
  }
219
- value = value ? currentValue + '.' + value : currentValue;
220
- return value || '';
220
+ value = value ? currentValue + '.' + value : currentValue || '';
221
+ return value;
221
222
  }
222
223
  get completeName() {
223
224
  const object = this.object?.completeName;
@@ -246,7 +247,7 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
246
247
  return name;
247
248
  }
248
249
  /**
249
- * getValue的值就是想要的ts内容
250
+ * 翻译
250
251
  * @param state
251
252
  * @returns
252
253
  */
@@ -265,6 +266,20 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
265
266
  }
266
267
  return code;
267
268
  }
269
+ get lastObject() {
270
+ let tempNode = this;
271
+ while (tempNode.object.concept === 'MemberExpression') {
272
+ tempNode = tempNode.object;
273
+ }
274
+ return tempNode.object;
275
+ }
276
+ firstMemberExpressionNode() {
277
+ let tempNode = this;
278
+ while (tempNode.parentNode.concept === 'MemberExpression') {
279
+ tempNode = tempNode.parentNode;
280
+ }
281
+ return tempNode;
282
+ }
268
283
  };
269
284
  __decorate([
270
285
  (0, decorators_1.property)()
@@ -1 +1 @@
1
- {"version":3,"file":"MemberExpression__.js","sourceRoot":"","sources":["../../src/concepts/MemberExpression__.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MemberExpression__.js","sourceRoot":"","sources":["../../src/concepts/MemberExpression__.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Module__.js","sourceRoot":"","sources":["../../src/concepts/Module__.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Module__.js","sourceRoot":"","sources":["../../src/concepts/Module__.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,MAAM,eAAe,GAAG;IACpB,YAAY,EAAE,YAAY;IAC1B,qBAAqB,EAAE,MAAM;IAC7B,qBAAqB,EAAE,YAAY;CACtC,CAAC;AAOF,8CAAkE;AAElE,gDAAkC;AAElC,kEAA0C;AAC1C,kEAA0C;AAC1C,iEAAwC;AACxC,+DAAsC;AACtC,qDAA4B;AAC5B,uDAA8B;AAC9B,+DAAsC;AACtC,qDAA4B;AAC5B,6DAAoC;AACpC,2DAAkC;AAClC,uEAA8C;AAG9C;;GAEG;AAEH,IAAa,MAAM,cAAnB,MAAa,MAAO,SAAQ,kBAAQ;IAChC;;OAEG;IAEH,OAAO,GAAa,QAAQ,CAAC;IAE7B;;OAEG;IAEH,IAAI,GAA4C,SAAS,CAAC;IAE1D;;OAEG;IAEH,OAAO,GAAW,SAAS,CAAC;IAE5B;;OAEG;IAEH,IAAI,GAAW,SAAS,CAAC;IAEzB;;OAEG;IAEH,KAAK,GAAW,SAAS,CAAC;IAE1B;;OAEG;IAEH,WAAW,GAAW,SAAS,CAAC;IAEhC;;OAEG;IAEH,QAAQ,GAAW,SAAS,CAAC;IAE7B;;OAEG;IAEH,qBAAqB,GAAgF,SAAS,CAAC;IAE/G;;OAEG;IAEH,WAAW,GAAsB,EAAE,CAAC;IAEpC;;OAEG;IAEH,UAAU,GAAqB,EAAE,CAAC;IAElC;;OAEG;IAEH,KAAK,GAAgB,EAAE,CAAC;IAExB;;OAEG;IAEH,MAAM,GAAiB,EAAE,CAAC;IAE1B;;OAEG;IAEH,UAAU,GAAqB,EAAE,CAAC;IAElC;;OAEG;IAEH,KAAK,GAAgB,EAAE,CAAC;IAExB;;OAEG;IAEH,iBAAiB,GAAoB,EAAE,CAAC;IAExC;;OAEG;IAEH,SAAS,GAAmB,EAAE,CAAC;IAE/B;;OAEG;IAEH,cAAc,GAAyB,EAAE,CAAC;IAE1C;;OAEG;IACH,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAQ,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,YAAY,MAAwB;QAChC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,QAAM,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/D,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAW,EAAE,UAAgB,EAAE,SAAkB;QACzD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAW,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACH,OAAO;QACH,IAAI,MAAM,GAAW,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,MAAM,GAAI,IAAI,CAAC,UAAkB,EAAE,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC;SAC7D;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAGG,0BAA0B,CAAC,eAAkC,EAAE;QAC/D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,WAA4B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxH,CAAC;IACD,uBAAuB,CAAC,IAAI,GAAG,aAAa;QACxC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,0BAA0B,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACnF,CAAC;IAuBD,mBAAmB,CAAC,OAAkD,EAAE,KAAa;QACjF,MAAM,iBAAiB,GAAQ,EAAE,CAAC;QAClC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;QACvE,IAAI,UAAsB,CAAC;QAC3B,IAAI,CAAC,OAAO,EAAE;YACV,UAAU,GAAG,qBAAU,CAAC,IAAI,CAAC;gBACzB,GAAG,iBAAiB;gBACpB,IAAI,EAAE,IAAI,CAAC,uBAAuB,EAAE;aACvC,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;SAC3B;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,UAAU,GAAG,qBAAU,CAAC,IAAI,CAAC;gBACzB,GAAG,iBAAiB;gBACpB,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;SAC3B;aAAM,IAAI,OAAO,YAAY,qBAAU,EAAE;YACtC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,UAAU,GAAG,OAAO,CAAC;YACrB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;SAC9C;aAAM;YACH,UAAU,GAAG,qBAAU,CAAC,IAAI,CAAC;gBACzB,GAAG,iBAAiB;gBACpB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC;SAC3B;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;QAC9C,OAAO,UAAU,CAAC;IACtB,CAAC;IAoBD,kBAAkB,CAAC,OAAkD,EAAE,KAAa;QAChF,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,aAAa;SAC3B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,cAAc,CAAC,OAAmD;QAC9D,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;IAqBD,aAAa,CAAC,OAAmD;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAc,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,aAAa;SAC3B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,yBAAyB,CAAC,eAAiC,EAAE;QACzD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,UAA0B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtH,CAAC;IACD,sBAAsB,CAAC,IAAI,GAAG,YAAY;QACtC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAClF,CAAC;IAuBD,kBAAkB,CAAC,OAAgD,EAAE,KAAa;QAC9E,MAAM,gBAAgB,GAAQ,EAAE,CAAC;QACjC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;QACtE,IAAI,SAAoB,CAAC;QACzB,IAAI,CAAC,OAAO,EAAE;YACV,SAAS,GAAG,oBAAS,CAAC,IAAI,CAAC;gBACvB,GAAG,gBAAgB;gBACnB,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE;aACtC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;SAC1B;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,SAAS,GAAG,oBAAS,CAAC,IAAI,CAAC;gBACvB,GAAG,gBAAgB;gBACnB,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;SAC1B;aAAM,IAAI,OAAO,YAAY,oBAAS,EAAE;YACrC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,SAAS,GAAG,OAAO,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC7C;aAAM;YACH,SAAS,GAAG,oBAAS,CAAC,IAAI,CAAC;gBACvB,GAAG,gBAAgB;gBACnB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;SAC1B;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QAC5C,OAAO,SAAS,CAAC;IACrB,CAAC;IAoBD,iBAAiB,CAAC,OAAgD,EAAE,KAAa;QAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SAC1B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,aAAa,CAAC,OAAiD;QAC3D,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAqBD,YAAY,CAAC,OAAiD;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,OAAc,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SAC1B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,oBAAoB,CAAC,eAA4B,EAAE;QAC/C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,KAAgB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5G,CAAC;IACD,iBAAiB,CAAC,IAAI,GAAG,OAAO;QAC5B,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC7E,CAAC;IAuBD,aAAa,CAAC,OAAsC,EAAE,KAAa;QAC/D,MAAM,kBAAkB,GAAQ,EAAE,CAAC;QACnC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;QACjE,IAAI,WAAiB,CAAC;QACtB,IAAI,CAAC,OAAO,EAAE;YACV,WAAW,GAAG,eAAI,CAAC,IAAI,CAAC;gBACpB,GAAG,kBAAkB;gBACrB,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE;aACjC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;SACrB;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,WAAW,GAAG,eAAI,CAAC,IAAI,CAAC;gBACpB,GAAG,kBAAkB;gBACrB,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;SACrB;aAAM,IAAI,OAAO,YAAY,eAAI,EAAE;YAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,WAAW,GAAG,OAAO,CAAC;YACtB,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;SAC/C;aAAM;YACH,WAAW,GAAG,eAAI,CAAC,IAAI,CAAC;gBACpB,GAAG,kBAAkB;gBACrB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;SACrB;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;QACzC,OAAO,WAAW,CAAC;IACvB,CAAC;IAoBD,YAAY,CAAC,OAAsC,EAAE,KAAa;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,OAAO;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,QAAQ,CAAC,OAAuC;QAC5C,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,aAAa,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAqBD,OAAO,CAAC,OAAuC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAc,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,OAAO;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,qBAAqB,CAAC,eAA6B,EAAE;QACjD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,MAAkB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9G,CAAC;IACD,kBAAkB,CAAC,IAAI,GAAG,QAAQ;QAC9B,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9E,CAAC;IAuBD,cAAc,CAAC,OAAwC,EAAE,KAAa;QAClE,MAAM,YAAY,GAAQ,EAAE,CAAC;QAC7B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;QAClE,IAAI,KAAY,CAAC;QACjB,IAAI,CAAC,OAAO,EAAE;YACV,KAAK,GAAG,gBAAK,CAAC,IAAI,CAAC;gBACf,GAAG,YAAY;gBACf,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE;aAClC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;SACtB;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,KAAK,GAAG,gBAAK,CAAC,IAAI,CAAC;gBACf,GAAG,YAAY;gBACf,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;SACtB;aAAM,IAAI,OAAO,YAAY,gBAAK,EAAE;YACjC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,KAAK,GAAG,OAAO,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;SACzC;aAAM;YACH,KAAK,GAAG,gBAAK,CAAC,IAAI,CAAC;gBACf,GAAG,YAAY;gBACf,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;SACtB;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC;IACjB,CAAC;IAoBD,aAAa,CAAC,OAAwC,EAAE,KAAa;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACtB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,SAAS,CAAC,OAAyC;QAC/C,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAqBD,QAAQ,CAAC,OAAyC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAc,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACtB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,yBAAyB,CAAC,eAAiC,EAAE;QACzD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,UAA0B,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtH,CAAC;IACD,sBAAsB,CAAC,IAAI,GAAG,YAAY;QACtC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAClF,CAAC;IAuBD,kBAAkB,CAAC,OAAgD,EAAE,KAAa;QAC9E,MAAM,aAAa,GAAQ,EAAE,CAAC;QAC9B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;QACtE,IAAI,MAAiB,CAAC;QACtB,IAAI,CAAC,OAAO,EAAE;YACV,MAAM,GAAG,oBAAS,CAAC,IAAI,CAAC;gBACpB,GAAG,aAAa;gBAChB,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE;aACtC,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;SAC1B;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,MAAM,GAAG,oBAAS,CAAC,IAAI,CAAC;gBACpB,GAAG,aAAa;gBAChB,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;SAC1B;aAAM,IAAI,OAAO,YAAY,oBAAS,EAAE;YACrC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,MAAM,GAAG,OAAO,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;SAC1C;aAAM;YACH,MAAM,GAAG,oBAAS,CAAC,IAAI,CAAC;gBACpB,GAAG,aAAa;gBAChB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;SAC1B;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;QACzC,OAAO,MAAM,CAAC;IAClB,CAAC;IAoBD,iBAAiB,CAAC,OAAgD,EAAE,KAAa;QAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SAC1B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,aAAa,CAAC,OAAiD;QAC3D,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAqBD,YAAY,CAAC,OAAiD;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,OAAc,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SAC1B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,oBAAoB,CAAC,eAA4B,EAAE;QAC/C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,KAAgB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5G,CAAC;IACD,iBAAiB,CAAC,IAAI,GAAG,OAAO;QAC5B,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC7E,CAAC;IAuBD,aAAa,CAAC,OAAsC,EAAE,KAAa;QAC/D,MAAM,WAAW,GAAQ,EAAE,CAAC;QAC5B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;QACjE,IAAI,IAAU,CAAC;QACf,IAAI,CAAC,OAAO,EAAE;YACV,IAAI,GAAG,eAAI,CAAC,IAAI,CAAC;gBACb,GAAG,WAAW;gBACd,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE;aACjC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;SACrB;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,IAAI,GAAG,eAAI,CAAC,IAAI,CAAC;gBACb,GAAG,WAAW;gBACd,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;SACrB;aAAM,IAAI,OAAO,YAAY,eAAI,EAAE;YAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,IAAI,GAAG,OAAO,CAAC;YACf,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;SACxC;aAAM;YACH,IAAI,GAAG,eAAI,CAAC,IAAI,CAAC;gBACb,GAAG,WAAW;gBACd,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;SACrB;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IAoBD,YAAY,CAAC,OAAsC,EAAE,KAAa;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,OAAO;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,QAAQ,CAAC,OAAuC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAChC,OAAO,IAAI,CAAC,aAAa,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAqBD,OAAO,CAAC,OAAuC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAc,CAAC,CAAC;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,OAAO;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,mBAAmB,CAAC,eAAgC,EAAE;QAClD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,iBAAgC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5H,CAAC;IACD,qBAAqB,CAAC,IAAI,GAAG,WAAW;QACpC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAuBD,iBAAiB,CAAC,OAA8C,EAAE,KAAa;QAC3E,MAAM,eAAe,GAAQ,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;QAC7E,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC,OAAO,EAAE;YACV,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CAAC;gBACrB,GAAG,eAAe;gBAClB,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE;aACrC,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;SACjC;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CAAC;gBACrB,GAAG,eAAe;gBAClB,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;SACjC;aAAM,IAAI,OAAO,YAAY,mBAAQ,EAAE;YACpC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,QAAQ,GAAG,OAAO,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;SAC5C;aAAM;YACH,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CAAC;gBACrB,GAAG,eAAe;gBAClB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;SACjC;QACD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAClD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAoBD,gBAAgB,CAAC,OAA8C,EAAE,KAAa;QAC1E,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,mBAAmB;SACjC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,YAAY,CAAC,OAA+C;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAC5C,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAqBD,WAAW,CAAC,OAA+C;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,OAAc,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,mBAAmB;SACjC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,uBAAuB,CAAC,eAA+B,EAAE;QACrD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,SAAuB,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnH,CAAC;IACD,oBAAoB,CAAC,IAAI,GAAG,UAAU;QAClC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,uBAAuB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC;IAuBD,gBAAgB,CAAC,OAA4C,EAAE,KAAa;QACxE,MAAM,cAAc,GAAQ,EAAE,CAAC;QAC/B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACrE,IAAI,OAAgB,CAAC;QACrB,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,GAAG,kBAAO,CAAC,IAAI,CAAC;gBACnB,GAAG,cAAc;gBACjB,IAAI,EAAE,IAAI,CAAC,oBAAoB,EAAE;aACpC,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;SACzB;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,OAAO,GAAG,kBAAO,CAAC,IAAI,CAAC;gBACnB,GAAG,cAAc;gBACjB,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;SACzB;aAAM,IAAI,OAAO,YAAY,kBAAO,EAAE;YACnC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,OAAO,GAAG,OAAO,CAAC;YAClB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;SAC3C;aAAM;YACH,OAAO,GAAG,kBAAO,CAAC,IAAI,CAAC;gBACnB,GAAG,cAAc;gBACjB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;SACzB;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,OAAO,CAAC;IACnB,CAAC;IAoBD,eAAe,CAAC,OAA4C,EAAE,KAAa;QACvE,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACzB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,WAAW,CAAC,OAA6C;QACrD,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAqBD,UAAU,CAAC,OAA6C;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,OAAc,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACzB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,6BAA6B,CAAC,eAAqC,EAAE;QACjE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,OAAO,CAAE,IAAI,CAAC,cAAkC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9H,CAAC;IACD,0BAA0B,CAAC,IAAI,GAAG,gBAAgB;QAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,6BAA6B,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACtF,CAAC;IAuBD,sBAAsB,CAAC,OAAwD,EAAE,KAAa;QAC1F,MAAM,oBAAoB,GAAQ,EAAE,CAAC;QACrC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;QAC1E,IAAI,aAA4B,CAAC;QACjC,IAAI,CAAC,OAAO,EAAE;YACV,aAAa,GAAG,wBAAa,CAAC,IAAI,CAAC;gBAC/B,GAAG,oBAAoB;gBACvB,IAAI,EAAE,IAAI,CAAC,0BAA0B,EAAE;aAC1C,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;SAC9B;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACpC,aAAa,GAAG,wBAAa,CAAC,IAAI,CAAC;gBAC/B,GAAG,oBAAoB;gBACvB,IAAI,EAAE,OAAO;aAChB,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;SAC9B;aAAM,IAAI,OAAO,YAAY,wBAAa,EAAE;YACzC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,aAAa,GAAG,OAAO,CAAC;YACxB,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;SACjD;aAAM;YACH,aAAa,GAAG,wBAAa,CAAC,IAAI,CAAC;gBAC/B,GAAG,oBAAoB;gBACvB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;SAC9B;QACD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;QACpD,OAAO,aAAa,CAAC;IACzB,CAAC;IAoBD,qBAAqB,CAAC,OAAwD,EAAE,KAAa;QACzF,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,gBAAgB;SAC9B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAuBD,iBAAiB,CAAC,OAAyD;QACvE,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;QACzC,OAAO,IAAI,CAAC,sBAAsB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;IAqBD,gBAAgB,CAAC,OAAyD;QACtE,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAc,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,gBAAgB;SAC9B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAiBD,gBAAgB,CAAC,OAA4B;QACzC,IAAI,UAAsB,CAAC;QAC3B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,UAAU,GAAI,IAAI,CAAC,WAA4B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACtF,IAAI,CAAC,UAAU,EAAE;gBACb,MAAM,IAAI,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC;aACxC;SACJ;aAAM;YACH,UAAU,GAAG,OAAO,CAAC;SACxB;QACD,OAAO,UAAU,CAAC,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED,kBAAkB,CAAC,UAAsB;QACrC,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACvC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,UAAU;SACxB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC3D,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,UAAU,EAAE;gBAChD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,eAAe,CAAC,OAA2B;QACvC,IAAI,SAAoB,CAAC;QACzB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,SAAS,GAAI,IAAI,CAAC,UAA0B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACnF,IAAI,CAAC,SAAS,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC;aACzC;SACJ;aAAM;YACH,SAAS,GAAG,OAAO,CAAC;SACvB;QACD,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,iBAAiB,CAAC,SAAoB;QAClC,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;QACtC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,SAAS;SACvB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC1D,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE;gBAC/C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,UAAU,CAAC,OAAsB;QAC7B,IAAI,WAAiB,CAAC;QACtB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,WAAW,GAAI,IAAI,CAAC,KAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAC3E,IAAI,CAAC,WAAW,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;aACvC;SACJ;aAAM;YACH,WAAW,GAAG,OAAO,CAAC;SACzB;QACD,OAAO,WAAW,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC;IAED,YAAY,CAAC,WAAiB;QAC1B,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;QACxC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,WAAW;SACzB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAC5D,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,WAAW,EAAE;gBACjD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,WAAW,CAAC,OAAuB;QAC/B,IAAI,KAAY,CAAC;QACjB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,KAAK,GAAI,IAAI,CAAC,MAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACvE,IAAI,CAAC,KAAK,EAAE;gBACR,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;aACvC;SACJ;aAAM;YACH,KAAK,GAAG,OAAO,CAAC;SACnB;QACD,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IAC1B,CAAC;IAED,aAAa,CAAC,KAAY;QACtB,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;QAClC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;SACnB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACtD,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE;gBAC3C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,eAAe,CAAC,OAA2B;QACvC,IAAI,MAAiB,CAAC;QACtB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,GAAI,IAAI,CAAC,UAA0B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAChF,IAAI,CAAC,MAAM,EAAE;gBACT,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;aACvC;SACJ;aAAM;YACH,MAAM,GAAG,OAAO,CAAC;SACpB;QACD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,iBAAiB,CAAC,MAAiB;QAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,MAAM;SACpB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACvD,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,MAAM,EAAE;gBAC5C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,UAAU,CAAC,OAAsB;QAC7B,IAAI,IAAU,CAAC;QACf,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,IAAI,GAAI,IAAI,CAAC,KAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACpE,IAAI,CAAC,IAAI,EAAE;gBACP,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;aACvC;SACJ;aAAM;YACH,IAAI,GAAG,OAAO,CAAC;SAClB;QACD,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC;IAED,YAAY,CAAC,IAAU;QACnB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,IAAI;SAClB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACrD,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;gBAC1C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,cAAc,CAAC,OAA0B;QACrC,IAAI,QAAkB,CAAC;QACvB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,QAAQ,GAAI,IAAI,CAAC,iBAAgC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACxF,IAAI,CAAC,QAAQ,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;aACvC;SACJ;aAAM;YACH,QAAQ,GAAG,OAAO,CAAC;SACtB;QACD,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED,gBAAgB,CAAC,QAAkB;QAC/B,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;QACrC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,QAAQ;SACtB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACzD,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE;gBAC9C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,aAAa,CAAC,OAAyB;QACnC,IAAI,OAAgB,CAAC;QACrB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,OAAO,GAAI,IAAI,CAAC,SAAuB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAC9E,IAAI,CAAC,OAAO,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAC;aACvC;SACJ;aAAM;YACH,OAAO,GAAG,OAAO,CAAC;SACrB;QACD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,eAAe,CAAC,OAAgB;QAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACpC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,OAAO;SACrB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACxD,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,OAAO,EAAE;gBAC7C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAgBD,mBAAmB,CAAC,OAA+B;QAC/C,IAAI,aAA4B,CAAC;QACjC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,aAAa,GAAI,IAAI,CAAC,cAAkC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAC/F,IAAI,CAAC,aAAa,EAAE;gBAChB,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC;aACzC;SACJ;aAAM;YACH,aAAa,GAAG,OAAO,CAAC;SAC3B;QACD,OAAO,aAAa,CAAC,MAAM,EAAE,CAAC;IAClC,CAAC;IAED,qBAAqB,CAAC,aAA4B;QAC9C,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;QAC1C,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,aAAa;SAC3B,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBAC9D,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,aAAa,EAAE;gBACnD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,kFAAkF;IAClF,gEAAgE;IAChE,uBAAuB;IACvB,kFAAkF;IAClF;;OAEG;IAEF,KAAK,CAAU;IAEf,QAAQ,CAAC,KAAc;QACnB,MAAM,MAAM,GAAG;YACX,KAAK;SACR,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACR,GAAG,MAAM;SACZ,CAAC,CAAC;IACP,CAAC;IACD;;;MAGE;IACF,mBAAmB,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;QAChC,OAAO,aAAa,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IACvE,CAAC;IACD;;;MAGE;IACF,YAAY;QACR,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,SAA0B,CAAC,EAAE,CAAC;IACjE,CAAC;IAED,cAAc;QACV,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,SAA0B,CAAC,EAAE,CAAC;IACjE,CAAC;IACD,qBAAqB;QACjB,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,SAA0B,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9E,CAAC;IAED,cAAc,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACjE,CAAC;IAED;;MAEE;IAEF,YAAY,CAAC,IAAY,EAAE,YAA0B;QACjD,OAAS,IAAY,CAAC,YAAY,CAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM;QACF,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE;YACnC,SAAS,EAAE,OAAO;SACrB,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,MAAM,eAAe,GAAI,IAAI,CAAC,UAAkB,EAAE,aAAa,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;QACxF,IAAI,IAAI,CAAC,WAAW,IAAI,eAAe,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;gBACpC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,uBAAuB,EAAE,UAAiB,CAAC,CAAC;gBAClE,IAAI;oBACA,eAAe,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;iBACzD;gBAAC,OAAO,CAAC,EAAE,GAAE;YAClB,CAAC,CAAC,CAAC;SACN;QACD,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACzC,CAAC;CAML,CAAA;AA74DG;IADC,IAAA,qBAAQ,GAAE;uCACkB;AAM7B;IADC,IAAA,qBAAQ,GAAE;oCAC+C;AAM1D;IADC,IAAA,qBAAQ,GAAE;uCACiB;AAM5B;IADC,IAAA,qBAAQ,GAAE;oCACc;AAMzB;IADC,IAAA,qBAAQ,GAAE;qCACe;AAM1B;IADC,IAAA,qBAAQ,GAAE;2CACqB;AAMhC;IADC,IAAA,qBAAQ,GAAE;wCACkB;AAM7B;IADC,IAAA,qBAAQ,GAAE;qDACoG;AAM/G;IADC,IAAA,qBAAQ,EAAC,YAAY,CAAC;2CACa;AAMpC;IADC,IAAA,qBAAQ,EAAC,WAAW,CAAC;0CACY;AAMlC;IADC,IAAA,qBAAQ,EAAC,MAAM,CAAC;qCACO;AAMxB;IADC,IAAA,qBAAQ,EAAC,OAAO,CAAC;sCACQ;AAM1B;IADC,IAAA,qBAAQ,EAAC,WAAW,CAAC;0CACY;AAMlC;IADC,IAAA,qBAAQ,EAAC,MAAM,CAAC;qCACO;AAMxB;IADC,IAAA,qBAAQ,EAAC,UAAU,CAAC;iDACmB;AAMxC;IADC,IAAA,qBAAQ,EAAC,SAAS,CAAC;yCACW;AAM/B;IADC,IAAA,qBAAQ,EAAC,eAAe,CAAC;8CACgB;AA2uDzC;IADC,IAAA,qBAAQ,GAAE;qCACI;AAh1DP,MAAM;IADlB,IAAA,oBAAO,EAAC,IAAI,CAAC;GACD,MAAM,CAk5DlB;AAl5DY,wBAAM;AAo5DnB,kBAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;AACzB,kBAAe,MAAM,CAAC;AACtB,kFAAkF;AAClF,gEAAgE;AAChE,uBAAuB;AACvB,kFAAkF"}