@lcap/nasl 3.4.0-alpha.1 → 3.4.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (822) hide show
  1. package/out/bak/translator.js +8 -5
  2. package/out/bak/translator.js.map +1 -1
  3. package/out/breakpoint/generator/AfterStartNode.js +2 -1
  4. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  5. package/out/breakpoint/generator/BeforeEndNode.js +2 -1
  6. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  7. package/out/breakpoint/generator/BreakpointNode.js +30 -9
  8. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  9. package/out/breakpoint/shared/constants.d.ts +1 -0
  10. package/out/breakpoint/shared/constants.js +7 -1
  11. package/out/breakpoint/shared/constants.js.map +1 -1
  12. package/out/breakpoint/shared/utils.d.ts +3 -1
  13. package/out/breakpoint/shared/utils.js +25 -4
  14. package/out/breakpoint/shared/utils.js.map +1 -1
  15. package/out/common/BaseNode.d.ts +30 -14
  16. package/out/common/BaseNode.js +186 -119
  17. package/out/common/BaseNode.js.map +1 -1
  18. package/out/common/Command.js +6 -1
  19. package/out/common/Command.js.map +1 -1
  20. package/out/common/EventEmitter.d.ts +1 -1
  21. package/out/common/EventEmitter.js +1 -3
  22. package/out/common/EventEmitter.js.map +1 -1
  23. package/out/common/index.d.ts +0 -1
  24. package/out/common/index.js +0 -1
  25. package/out/common/index.js.map +1 -1
  26. package/out/concepts/Abort__.d.ts +3 -2
  27. package/out/concepts/Abort__.js +14 -16
  28. package/out/concepts/Abort__.js.map +1 -1
  29. package/out/concepts/Anchor__.d.ts +3 -2
  30. package/out/concepts/Anchor__.js +21 -20
  31. package/out/concepts/Anchor__.js.map +1 -1
  32. package/out/concepts/AnonymousFunction__.d.ts +3 -2
  33. package/out/concepts/AnonymousFunction__.js +39 -30
  34. package/out/concepts/AnonymousFunction__.js.map +1 -1
  35. package/out/concepts/App__.d.ts +160 -157
  36. package/out/concepts/App__.js +177 -99
  37. package/out/concepts/App__.js.map +1 -1
  38. package/out/concepts/Argument__.d.ts +3 -2
  39. package/out/concepts/Argument__.js +25 -22
  40. package/out/concepts/Argument__.js.map +1 -1
  41. package/out/concepts/Assignee__.d.ts +3 -2
  42. package/out/concepts/Assignee__.js +37 -26
  43. package/out/concepts/Assignee__.js.map +1 -1
  44. package/out/concepts/AssignmentLine__.d.ts +3 -2
  45. package/out/concepts/AssignmentLine__.js +20 -18
  46. package/out/concepts/AssignmentLine__.js.map +1 -1
  47. package/out/concepts/Assignment__.d.ts +3 -2
  48. package/out/concepts/Assignment__.js +39 -29
  49. package/out/concepts/Assignment__.js.map +1 -1
  50. package/out/concepts/Attribute__.d.ts +3 -2
  51. package/out/concepts/Attribute__.js +39 -29
  52. package/out/concepts/Attribute__.js.map +1 -1
  53. package/out/concepts/AuthInterface__.d.ts +4 -3
  54. package/out/concepts/AuthInterface__.js +16 -17
  55. package/out/concepts/AuthInterface__.js.map +1 -1
  56. package/out/concepts/AuthLogicForCallInterface__.d.ts +4 -3
  57. package/out/concepts/AuthLogicForCallInterface__.js +41 -28
  58. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  59. package/out/concepts/AuthLogic__.d.ts +4 -3
  60. package/out/concepts/AuthLogic__.js +18 -19
  61. package/out/concepts/AuthLogic__.js.map +1 -1
  62. package/out/concepts/BackendVariable__.d.ts +8 -7
  63. package/out/concepts/BackendVariable__.js +41 -34
  64. package/out/concepts/BackendVariable__.js.map +1 -1
  65. package/out/concepts/Backend__.d.ts +32 -31
  66. package/out/concepts/Backend__.js +26 -22
  67. package/out/concepts/Backend__.js.map +1 -1
  68. package/out/concepts/BatchAssignment__.d.ts +3 -2
  69. package/out/concepts/BatchAssignment__.js +56 -39
  70. package/out/concepts/BatchAssignment__.js.map +1 -1
  71. package/out/concepts/BinaryExpression__.d.ts +3 -2
  72. package/out/concepts/BinaryExpression__.js +50 -41
  73. package/out/concepts/BinaryExpression__.js.map +1 -1
  74. package/out/concepts/BindAttribute__.d.ts +12 -8
  75. package/out/concepts/BindAttribute__.js +116 -59
  76. package/out/concepts/BindAttribute__.js.map +1 -1
  77. package/out/concepts/BindDirective__.d.ts +5 -3
  78. package/out/concepts/BindDirective__.js +40 -29
  79. package/out/concepts/BindDirective__.js.map +1 -1
  80. package/out/concepts/BindEvent__.d.ts +3 -2
  81. package/out/concepts/BindEvent__.js +59 -19
  82. package/out/concepts/BindEvent__.js.map +1 -1
  83. package/out/concepts/BindStyle__.d.ts +5 -3
  84. package/out/concepts/BindStyle__.js +30 -24
  85. package/out/concepts/BindStyle__.js.map +1 -1
  86. package/out/concepts/BooleanLiteral__.d.ts +3 -2
  87. package/out/concepts/BooleanLiteral__.js +16 -17
  88. package/out/concepts/BooleanLiteral__.js.map +1 -1
  89. package/out/concepts/CallAuthInterface__.d.ts +3 -2
  90. package/out/concepts/CallAuthInterface__.js +20 -19
  91. package/out/concepts/CallAuthInterface__.js.map +1 -1
  92. package/out/concepts/CallConnector__.d.ts +5 -4
  93. package/out/concepts/CallConnector__.js +40 -33
  94. package/out/concepts/CallConnector__.js.map +1 -1
  95. package/out/concepts/CallFunction__.d.ts +3 -2
  96. package/out/concepts/CallFunction__.js +40 -28
  97. package/out/concepts/CallFunction__.js.map +1 -1
  98. package/out/concepts/CallInterface__.d.ts +5 -3
  99. package/out/concepts/CallInterface__.js +74 -31
  100. package/out/concepts/CallInterface__.js.map +1 -1
  101. package/out/concepts/CallLogic__.d.ts +6 -5
  102. package/out/concepts/CallLogic__.js +145 -82
  103. package/out/concepts/CallLogic__.js.map +1 -1
  104. package/out/concepts/CallQueryComponent__.d.ts +3 -2
  105. package/out/concepts/CallQueryComponent__.js +90 -50
  106. package/out/concepts/CallQueryComponent__.js.map +1 -1
  107. package/out/concepts/Comment__.d.ts +3 -2
  108. package/out/concepts/Comment__.js +16 -17
  109. package/out/concepts/Comment__.js.map +1 -1
  110. package/out/concepts/CompletionProperty__.d.ts +3 -2
  111. package/out/concepts/CompletionProperty__.js +33 -26
  112. package/out/concepts/CompletionProperty__.js.map +1 -1
  113. package/out/concepts/ConfigGroup__.d.ts +3 -2
  114. package/out/concepts/ConfigGroup__.js +25 -21
  115. package/out/concepts/ConfigGroup__.js.map +1 -1
  116. package/out/concepts/ConfigPropertyValue__.d.ts +3 -2
  117. package/out/concepts/ConfigPropertyValue__.js +16 -16
  118. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  119. package/out/concepts/ConfigProperty__.d.ts +3 -2
  120. package/out/concepts/ConfigProperty__.js +29 -23
  121. package/out/concepts/ConfigProperty__.js.map +1 -1
  122. package/out/concepts/Configuration__.d.ts +3 -2
  123. package/out/concepts/Configuration__.js +20 -19
  124. package/out/concepts/Configuration__.js.map +1 -1
  125. package/out/concepts/Connection__.d.ts +4 -4
  126. package/out/concepts/Connection__.js +26 -19
  127. package/out/concepts/Connection__.js.map +1 -1
  128. package/out/concepts/ConnectorTrigger__.d.ts +7 -6
  129. package/out/concepts/ConnectorTrigger__.js +22 -21
  130. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  131. package/out/concepts/Connector__.d.ts +139 -33
  132. package/out/concepts/Connector__.js +216 -40
  133. package/out/concepts/Connector__.js.map +1 -1
  134. package/out/concepts/Constant__.d.ts +3 -2
  135. package/out/concepts/Constant__.js +27 -23
  136. package/out/concepts/Constant__.js.map +1 -1
  137. package/out/concepts/DataSource__.d.ts +7 -2
  138. package/out/concepts/DataSource__.js +35 -24
  139. package/out/concepts/DataSource__.js.map +1 -1
  140. package/out/concepts/DatabaseTypeAnnotation__.d.ts +5 -4
  141. package/out/concepts/DatabaseTypeAnnotation__.js +18 -18
  142. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
  143. package/out/concepts/Destination__.d.ts +11 -10
  144. package/out/concepts/Destination__.js +44 -38
  145. package/out/concepts/Destination__.js.map +1 -1
  146. package/out/concepts/End__.d.ts +3 -2
  147. package/out/concepts/End__.js +14 -16
  148. package/out/concepts/End__.js.map +1 -1
  149. package/out/concepts/EntityIndex__.d.ts +4 -3
  150. package/out/concepts/EntityIndex__.js +25 -21
  151. package/out/concepts/EntityIndex__.js.map +1 -1
  152. package/out/concepts/EntityProperty__.d.ts +4 -3
  153. package/out/concepts/EntityProperty__.js +59 -53
  154. package/out/concepts/EntityProperty__.js.map +1 -1
  155. package/out/concepts/Entity__.d.ts +3 -2
  156. package/out/concepts/Entity__.js +39 -28
  157. package/out/concepts/Entity__.js.map +1 -1
  158. package/out/concepts/EnumItem__.d.ts +3 -2
  159. package/out/concepts/EnumItem__.js +18 -18
  160. package/out/concepts/EnumItem__.js.map +1 -1
  161. package/out/concepts/Enum__.d.ts +3 -2
  162. package/out/concepts/Enum__.js +26 -22
  163. package/out/concepts/Enum__.js.map +1 -1
  164. package/out/concepts/Event__.d.ts +3 -2
  165. package/out/concepts/Event__.js +28 -22
  166. package/out/concepts/Event__.js.map +1 -1
  167. package/out/concepts/ExternalDestination__.d.ts +6 -5
  168. package/out/concepts/ExternalDestination__.js +31 -27
  169. package/out/concepts/ExternalDestination__.js.map +1 -1
  170. package/out/concepts/ForEachStatement__.d.ts +3 -2
  171. package/out/concepts/ForEachStatement__.js +39 -22
  172. package/out/concepts/ForEachStatement__.js.map +1 -1
  173. package/out/concepts/FrontendLibrary__.d.ts +4 -3
  174. package/out/concepts/FrontendLibrary__.js +35 -27
  175. package/out/concepts/FrontendLibrary__.js.map +1 -1
  176. package/out/concepts/FrontendVariable__.d.ts +4 -3
  177. package/out/concepts/FrontendVariable__.js +12 -12
  178. package/out/concepts/FrontendVariable__.js.map +1 -1
  179. package/out/concepts/Frontend__.d.ts +8 -6
  180. package/out/concepts/Frontend__.js +65 -43
  181. package/out/concepts/Frontend__.js.map +1 -1
  182. package/out/concepts/Function__.d.ts +3 -2
  183. package/out/concepts/Function__.js +55 -36
  184. package/out/concepts/Function__.js.map +1 -1
  185. package/out/concepts/Identifier__.d.ts +4 -3
  186. package/out/concepts/Identifier__.js +29 -28
  187. package/out/concepts/Identifier__.js.map +1 -1
  188. package/out/concepts/IfStatement__.d.ts +3 -2
  189. package/out/concepts/IfStatement__.js +31 -24
  190. package/out/concepts/IfStatement__.js.map +1 -1
  191. package/out/concepts/Integration__.d.ts +93 -2
  192. package/out/concepts/Integration__.js +163 -20
  193. package/out/concepts/Integration__.js.map +1 -1
  194. package/out/concepts/InterfaceParam__.d.ts +30 -4
  195. package/out/concepts/InterfaceParam__.js +61 -25
  196. package/out/concepts/InterfaceParam__.js.map +1 -1
  197. package/out/concepts/Interface__.d.ts +34 -6
  198. package/out/concepts/Interface__.js +117 -38
  199. package/out/concepts/Interface__.js.map +1 -1
  200. package/out/concepts/JSBlock__.d.ts +3 -2
  201. package/out/concepts/JSBlock__.js +16 -17
  202. package/out/concepts/JSBlock__.js.map +1 -1
  203. package/out/concepts/JavaLogic__.d.ts +4 -3
  204. package/out/concepts/JavaLogic__.js +21 -20
  205. package/out/concepts/JavaLogic__.js.map +1 -1
  206. package/out/concepts/LogicItem__.d.ts +3 -2
  207. package/out/concepts/LogicItem__.js +22 -20
  208. package/out/concepts/LogicItem__.js.map +1 -1
  209. package/out/concepts/Logic__.d.ts +17 -17
  210. package/out/concepts/Logic__.js +123 -66
  211. package/out/concepts/Logic__.js.map +1 -1
  212. package/out/concepts/MatchCase__.d.ts +3 -2
  213. package/out/concepts/MatchCase__.js +31 -24
  214. package/out/concepts/MatchCase__.js.map +1 -1
  215. package/out/concepts/Match__.d.ts +3 -2
  216. package/out/concepts/Match__.js +26 -22
  217. package/out/concepts/Match__.js.map +1 -1
  218. package/out/concepts/MemberExpression__.d.ts +3 -2
  219. package/out/concepts/MemberExpression__.js +70 -42
  220. package/out/concepts/MemberExpression__.js.map +1 -1
  221. package/out/concepts/MicroApp__.d.ts +3 -2
  222. package/out/concepts/MicroApp__.js +26 -21
  223. package/out/concepts/MicroApp__.js.map +1 -1
  224. package/out/concepts/Module__.d.ts +219 -47
  225. package/out/concepts/Module__.js +285 -44
  226. package/out/concepts/Module__.js.map +1 -1
  227. package/out/concepts/MsgTriggerEvent__.d.ts +4 -3
  228. package/out/concepts/MsgTriggerEvent__.js +20 -19
  229. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  230. package/out/concepts/MsgTriggerLauncher__.d.ts +4 -3
  231. package/out/concepts/MsgTriggerLauncher__.js +22 -20
  232. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  233. package/out/concepts/Namespace__.d.ts +4 -2
  234. package/out/concepts/Namespace__.js +112 -58
  235. package/out/concepts/Namespace__.js.map +1 -1
  236. package/out/concepts/NewComposite__.d.ts +4 -2
  237. package/out/concepts/NewComposite__.js +85 -46
  238. package/out/concepts/NewComposite__.js.map +1 -1
  239. package/out/concepts/NewList__.d.ts +5 -3
  240. package/out/concepts/NewList__.js +41 -26
  241. package/out/concepts/NewList__.js.map +1 -1
  242. package/out/concepts/NewMap__.d.ts +5 -3
  243. package/out/concepts/NewMap__.js +49 -30
  244. package/out/concepts/NewMap__.js.map +1 -1
  245. package/out/concepts/New__.d.ts +3 -2
  246. package/out/concepts/New__.js +14 -16
  247. package/out/concepts/New__.js.map +1 -1
  248. package/out/concepts/NullLiteral__.d.ts +3 -2
  249. package/out/concepts/NullLiteral__.js +14 -16
  250. package/out/concepts/NullLiteral__.js.map +1 -1
  251. package/out/concepts/NumericLiteral__.d.ts +3 -2
  252. package/out/concepts/NumericLiteral__.js +23 -21
  253. package/out/concepts/NumericLiteral__.js.map +1 -1
  254. package/out/concepts/OqlQueryComponent__.d.ts +3 -2
  255. package/out/concepts/OqlQueryComponent__.js +28 -23
  256. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  257. package/out/concepts/OverriddenLogic__.d.ts +14 -22
  258. package/out/concepts/OverriddenLogic__.js +101 -70
  259. package/out/concepts/OverriddenLogic__.js.map +1 -1
  260. package/out/concepts/Param__.d.ts +3 -2
  261. package/out/concepts/Param__.js +37 -29
  262. package/out/concepts/Param__.js.map +1 -1
  263. package/out/concepts/Point__.d.ts +3 -2
  264. package/out/concepts/Point__.js +16 -16
  265. package/out/concepts/Point__.js.map +1 -1
  266. package/out/concepts/ProcessComponent__.d.ts +3 -2
  267. package/out/concepts/ProcessComponent__.js +32 -24
  268. package/out/concepts/ProcessComponent__.js.map +1 -1
  269. package/out/concepts/ProcessElement__.d.ts +3 -2
  270. package/out/concepts/ProcessElement__.js +90 -53
  271. package/out/concepts/ProcessElement__.js.map +1 -1
  272. package/out/concepts/ProcessOutcome__.d.ts +3 -2
  273. package/out/concepts/ProcessOutcome__.js +16 -17
  274. package/out/concepts/ProcessOutcome__.js.map +1 -1
  275. package/out/concepts/ProcessOutcomes__.d.ts +3 -2
  276. package/out/concepts/ProcessOutcomes__.js +17 -17
  277. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  278. package/out/concepts/Process__.d.ts +5 -7
  279. package/out/concepts/Process__.js +66 -40
  280. package/out/concepts/Process__.js.map +1 -1
  281. package/out/concepts/QueryAggregateExpression__.d.ts +3 -2
  282. package/out/concepts/QueryAggregateExpression__.js +25 -22
  283. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  284. package/out/concepts/QueryFieldExpression__.d.ts +4 -3
  285. package/out/concepts/QueryFieldExpression__.js +20 -19
  286. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  287. package/out/concepts/QueryFromExpression__.d.ts +4 -3
  288. package/out/concepts/QueryFromExpression__.js +26 -22
  289. package/out/concepts/QueryFromExpression__.js.map +1 -1
  290. package/out/concepts/QueryGroupByExpression__.d.ts +3 -2
  291. package/out/concepts/QueryGroupByExpression__.js +21 -20
  292. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  293. package/out/concepts/QueryJoinExpression__.d.ts +4 -3
  294. package/out/concepts/QueryJoinExpression__.js +36 -26
  295. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  296. package/out/concepts/QueryLimitExpression__.d.ts +3 -2
  297. package/out/concepts/QueryLimitExpression__.js +27 -23
  298. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  299. package/out/concepts/QueryOrderByExpression__.d.ts +3 -2
  300. package/out/concepts/QueryOrderByExpression__.js +27 -23
  301. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  302. package/out/concepts/QuerySelectExpression__.d.ts +3 -2
  303. package/out/concepts/QuerySelectExpression__.js +27 -22
  304. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  305. package/out/concepts/Rect__.d.ts +3 -2
  306. package/out/concepts/Rect__.js +20 -18
  307. package/out/concepts/Rect__.js.map +1 -1
  308. package/out/concepts/Return__.d.ts +3 -2
  309. package/out/concepts/Return__.js +31 -26
  310. package/out/concepts/Return__.js.map +1 -1
  311. package/out/concepts/Role__.d.ts +3 -2
  312. package/out/concepts/Role__.js +21 -20
  313. package/out/concepts/Role__.js.map +1 -1
  314. package/out/concepts/SelectMembers__.d.ts +3 -2
  315. package/out/concepts/SelectMembers__.js +26 -22
  316. package/out/concepts/SelectMembers__.js.map +1 -1
  317. package/out/concepts/Slot__.d.ts +3 -2
  318. package/out/concepts/Slot__.js +29 -23
  319. package/out/concepts/Slot__.js.map +1 -1
  320. package/out/concepts/SqlQueryComponent__.d.ts +3 -2
  321. package/out/concepts/SqlQueryComponent__.js +30 -24
  322. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  323. package/out/concepts/Start__.d.ts +3 -2
  324. package/out/concepts/Start__.js +14 -16
  325. package/out/concepts/Start__.js.map +1 -1
  326. package/out/concepts/StringInterpolation__.d.ts +3 -2
  327. package/out/concepts/StringInterpolation__.js +20 -19
  328. package/out/concepts/StringInterpolation__.js.map +1 -1
  329. package/out/concepts/StringLiteral__.d.ts +3 -2
  330. package/out/concepts/StringLiteral__.js +14 -16
  331. package/out/concepts/StringLiteral__.js.map +1 -1
  332. package/out/concepts/StructureProperty__.d.ts +9 -4
  333. package/out/concepts/StructureProperty__.js +42 -30
  334. package/out/concepts/StructureProperty__.js.map +1 -1
  335. package/out/concepts/Structure__.d.ts +7 -11
  336. package/out/concepts/Structure__.js +59 -34
  337. package/out/concepts/Structure__.js.map +1 -1
  338. package/out/concepts/SwitchCase__.d.ts +3 -2
  339. package/out/concepts/SwitchCase__.js +26 -22
  340. package/out/concepts/SwitchCase__.js.map +1 -1
  341. package/out/concepts/SwitchStatement__.d.ts +3 -2
  342. package/out/concepts/SwitchStatement__.js +26 -21
  343. package/out/concepts/SwitchStatement__.js.map +1 -1
  344. package/out/concepts/Theme__.d.ts +3 -2
  345. package/out/concepts/Theme__.js +12 -14
  346. package/out/concepts/Theme__.js.map +1 -1
  347. package/out/concepts/Transactional__.d.ts +3 -2
  348. package/out/concepts/Transactional__.js +18 -17
  349. package/out/concepts/Transactional__.js.map +1 -1
  350. package/out/concepts/TriggerEvent__.d.ts +3 -2
  351. package/out/concepts/TriggerEvent__.js +23 -19
  352. package/out/concepts/TriggerEvent__.js.map +1 -1
  353. package/out/concepts/TriggerLauncher__.d.ts +6 -17
  354. package/out/concepts/TriggerLauncher__.js +25 -62
  355. package/out/concepts/TriggerLauncher__.js.map +1 -1
  356. package/out/concepts/TypeAnnotation__.d.ts +8 -5
  357. package/out/concepts/TypeAnnotation__.js +67 -35
  358. package/out/concepts/TypeAnnotation__.js.map +1 -1
  359. package/out/concepts/TypeParam__.d.ts +3 -2
  360. package/out/concepts/TypeParam__.js +16 -17
  361. package/out/concepts/TypeParam__.js.map +1 -1
  362. package/out/concepts/UnaryExpression__.d.ts +3 -2
  363. package/out/concepts/UnaryExpression__.js +23 -21
  364. package/out/concepts/UnaryExpression__.js.map +1 -1
  365. package/out/concepts/Unparsed__.d.ts +3 -2
  366. package/out/concepts/Unparsed__.js +16 -17
  367. package/out/concepts/Unparsed__.js.map +1 -1
  368. package/out/concepts/UseComponent__.d.ts +3 -2
  369. package/out/concepts/UseComponent__.js +16 -16
  370. package/out/concepts/UseComponent__.js.map +1 -1
  371. package/out/concepts/ValidationRule__.d.ts +17 -16
  372. package/out/concepts/ValidationRule__.js +28 -18
  373. package/out/concepts/ValidationRule__.js.map +1 -1
  374. package/out/concepts/Variable__.d.ts +3 -2
  375. package/out/concepts/Variable__.js +31 -26
  376. package/out/concepts/Variable__.js.map +1 -1
  377. package/out/concepts/ViewBlock__.d.ts +4 -3
  378. package/out/concepts/ViewBlock__.js +20 -19
  379. package/out/concepts/ViewBlock__.js.map +1 -1
  380. package/out/concepts/ViewComponent__.d.ts +32 -31
  381. package/out/concepts/ViewComponent__.js +59 -38
  382. package/out/concepts/ViewComponent__.js.map +1 -1
  383. package/out/concepts/ViewElement__.d.ts +84 -81
  384. package/out/concepts/ViewElement__.js +347 -159
  385. package/out/concepts/ViewElement__.js.map +1 -1
  386. package/out/concepts/View__.d.ts +5 -3
  387. package/out/concepts/View__.js +166 -120
  388. package/out/concepts/View__.js.map +1 -1
  389. package/out/concepts/WhileStatement__.d.ts +3 -2
  390. package/out/concepts/WhileStatement__.js +26 -22
  391. package/out/concepts/WhileStatement__.js.map +1 -1
  392. package/out/concepts/index__.d.ts +0 -1
  393. package/out/concepts/index__.js +0 -1
  394. package/out/concepts/index__.js.map +1 -1
  395. package/out/concepts/types__.d.ts +2 -3
  396. package/out/decorators/index.d.ts +5 -3
  397. package/out/decorators/index.js +15 -9
  398. package/out/decorators/index.js.map +1 -1
  399. package/out/generator/genBundleFiles.d.ts +2 -2
  400. package/out/generator/genBundleFiles.js +11 -4
  401. package/out/generator/genBundleFiles.js.map +1 -1
  402. package/out/generator/genReleaseBody.d.ts +4 -2
  403. package/out/generator/genReleaseBody.js +192 -136
  404. package/out/generator/genReleaseBody.js.map +1 -1
  405. package/out/natural/genNaturalTS.js +15 -14
  406. package/out/natural/genNaturalTS.js.map +1 -1
  407. package/out/natural/index.d.ts +0 -2
  408. package/out/natural/index.js +0 -2
  409. package/out/natural/index.js.map +1 -1
  410. package/out/sentry/index.js +2 -2
  411. package/out/sentry/index.js.map +1 -1
  412. package/out/server/createUiTs.js +34 -1
  413. package/out/server/createUiTs.js.map +1 -1
  414. package/out/server/extendBaseNode.js +17 -17
  415. package/out/server/extendBaseNode.js.map +1 -1
  416. package/out/server/formatTsUtils.d.ts +3 -3
  417. package/out/server/formatTsUtils.js +0 -10
  418. package/out/server/formatTsUtils.js.map +1 -1
  419. package/out/server/getConnector.d.ts +3 -0
  420. package/out/server/getConnector.js +38 -1
  421. package/out/server/getConnector.js.map +1 -1
  422. package/out/server/getMemberIdentifier.d.ts +4 -4
  423. package/out/server/getMemberIdentifier.js +1 -2
  424. package/out/server/getMemberIdentifier.js.map +1 -1
  425. package/out/server/index.js +2 -0
  426. package/out/server/index.js.map +1 -1
  427. package/out/server/naslServer.d.ts +13 -2
  428. package/out/server/naslServer.js +213 -118
  429. package/out/server/naslServer.js.map +1 -1
  430. package/out/server/translator.js +2 -4
  431. package/out/server/translator.js.map +1 -1
  432. package/out/service/creator/add.configs.js +26 -0
  433. package/out/service/creator/add.configs.js.map +1 -1
  434. package/out/service/creator/errHandles.js +5 -3
  435. package/out/service/creator/errHandles.js.map +1 -1
  436. package/out/service/creator/index.js +13 -0
  437. package/out/service/creator/index.js.map +1 -1
  438. package/out/service/storage/jsoner.js +1 -1
  439. package/out/service/storage/jsoner.js.map +1 -1
  440. package/out/templator/genCurdEditMultipleKeyBlock.js +3 -3
  441. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  442. package/out/templator/genCurdMultipleKeyBlock.js +3 -3
  443. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  444. package/out/templator/genTableBlock.js +1 -1
  445. package/out/templator/genTableBlock.js.map +1 -1
  446. package/out/translator/constant.d.ts +6 -0
  447. package/out/translator/constant.js +10 -0
  448. package/out/translator/constant.js.map +1 -0
  449. package/out/translator/index.d.ts +3 -48
  450. package/out/translator/index.js +17 -110
  451. package/out/translator/index.js.map +1 -1
  452. package/out/translator/types.d.ts +32 -0
  453. package/out/translator/{tsp.js → types.js} +1 -1
  454. package/out/translator/types.js.map +1 -0
  455. package/out/translator/utils.d.ts +17 -0
  456. package/out/translator/utils.js +98 -0
  457. package/out/translator/utils.js.map +1 -0
  458. package/out/utils/cookie.d.ts +9 -0
  459. package/out/utils/cookie.js +62 -0
  460. package/out/utils/cookie.js.map +1 -0
  461. package/out/utils/env.d.ts +2 -0
  462. package/out/utils/env.js +6 -0
  463. package/out/utils/env.js.map +1 -0
  464. package/out/utils/index.d.ts +3 -0
  465. package/out/utils/index.js +3 -0
  466. package/out/utils/index.js.map +1 -1
  467. package/out/utils/logger.d.ts +4 -0
  468. package/out/utils/logger.js +13 -1
  469. package/out/utils/logger.js.map +1 -1
  470. package/out/utils/time-slicing.js +2 -1
  471. package/out/utils/time-slicing.js.map +1 -1
  472. package/out/utils/types.d.ts +1 -0
  473. package/out/utils/types.js +3 -0
  474. package/out/utils/types.js.map +1 -0
  475. package/out/utils/window.d.ts +7 -0
  476. package/out/utils/window.js +14 -0
  477. package/out/utils/window.js.map +1 -0
  478. package/package.json +1 -1
  479. package/sandbox/stdlib/nasl.oql.ts +2 -0
  480. package/sandbox/stdlib/nasl.ui.definition.ts +2218 -1415
  481. package/src/bak/translator.js +8 -5
  482. package/src/breakpoint/generator/AfterStartNode.ts +2 -1
  483. package/src/breakpoint/generator/BeforeEndNode.ts +2 -1
  484. package/src/breakpoint/generator/BreakpointNode.ts +36 -9
  485. package/src/breakpoint/shared/constants.ts +7 -0
  486. package/src/breakpoint/shared/utils.ts +36 -3
  487. package/src/common/BaseNode.ts +221 -136
  488. package/src/common/Command.ts +6 -1
  489. package/src/common/EventEmitter.ts +2 -4
  490. package/src/common/index.ts +0 -1
  491. package/src/concepts/Abort__.ts +18 -20
  492. package/src/concepts/Anchor__.ts +24 -23
  493. package/src/concepts/AnonymousFunction__.ts +48 -40
  494. package/src/concepts/App__.ts +435 -333
  495. package/src/concepts/Argument__.ts +29 -26
  496. package/src/concepts/Assignee__.ts +58 -43
  497. package/src/concepts/AssignmentLine__.ts +24 -23
  498. package/src/concepts/Assignment__.ts +49 -34
  499. package/src/concepts/Attribute__.ts +43 -35
  500. package/src/concepts/AuthInterface__.ts +22 -24
  501. package/src/concepts/AuthLogicForCallInterface__.ts +75 -42
  502. package/src/concepts/AuthLogic__.ts +22 -28
  503. package/src/concepts/BackendVariable__.ts +56 -53
  504. package/src/concepts/Backend__.ts +61 -59
  505. package/src/concepts/BatchAssignment__.ts +96 -61
  506. package/src/concepts/BinaryExpression__.ts +91 -45
  507. package/src/concepts/BindAttribute__.ts +165 -113
  508. package/src/concepts/BindDirective__.ts +50 -41
  509. package/src/concepts/BindEvent__.ts +88 -33
  510. package/src/concepts/BindStyle__.ts +42 -36
  511. package/src/concepts/BooleanLiteral__.ts +20 -21
  512. package/src/concepts/CallAuthInterface__.ts +31 -31
  513. package/src/concepts/CallConnector__.ts +48 -39
  514. package/src/concepts/CallFunction__.ts +51 -37
  515. package/src/concepts/CallInterface__.ts +82 -41
  516. package/src/concepts/CallLogic__.ts +174 -93
  517. package/src/concepts/CallQueryComponent__.ts +188 -96
  518. package/src/concepts/Comment__.ts +19 -20
  519. package/src/concepts/CompletionProperty__.ts +37 -31
  520. package/src/concepts/ConfigGroup__.ts +32 -30
  521. package/src/concepts/ConfigPropertyValue__.ts +22 -23
  522. package/src/concepts/ConfigProperty__.ts +45 -36
  523. package/src/concepts/Configuration__.ts +27 -27
  524. package/src/concepts/Connection__.ts +30 -22
  525. package/src/concepts/ConnectorTrigger__.ts +30 -34
  526. package/src/concepts/Connector__.ts +367 -93
  527. package/src/concepts/Constant__.ts +31 -35
  528. package/src/concepts/DataSource__.ts +41 -34
  529. package/src/concepts/DatabaseTypeAnnotation__.ts +24 -24
  530. package/src/concepts/Destination__.ts +55 -47
  531. package/src/concepts/End__.ts +21 -23
  532. package/src/concepts/EntityIndex__.ts +37 -32
  533. package/src/concepts/EntityProperty__.ts +71 -69
  534. package/src/concepts/Entity__.ts +48 -42
  535. package/src/concepts/EnumItem__.ts +22 -25
  536. package/src/concepts/Enum__.ts +31 -29
  537. package/src/concepts/Event__.ts +37 -34
  538. package/src/concepts/ExternalDestination__.ts +35 -31
  539. package/src/concepts/ForEachStatement__.ts +49 -31
  540. package/src/concepts/FrontendLibrary__.ts +45 -40
  541. package/src/concepts/FrontendVariable__.ts +18 -20
  542. package/src/concepts/Frontend__.ts +84 -66
  543. package/src/concepts/Function__.ts +71 -55
  544. package/src/concepts/Identifier__.ts +35 -32
  545. package/src/concepts/IfStatement__.ts +48 -41
  546. package/src/concepts/Integration__.ts +250 -25
  547. package/src/concepts/InterfaceParam__.ts +72 -34
  548. package/src/concepts/Interface__.ts +133 -50
  549. package/src/concepts/JSBlock__.ts +20 -21
  550. package/src/concepts/JavaLogic__.ts +25 -24
  551. package/src/concepts/LogicItem__.ts +27 -36
  552. package/src/concepts/Logic__.ts +186 -103
  553. package/src/concepts/MatchCase__.ts +46 -42
  554. package/src/concepts/Match__.ts +32 -28
  555. package/src/concepts/MemberExpression__.ts +178 -122
  556. package/src/concepts/MicroApp__.ts +32 -27
  557. package/src/concepts/Module__.ts +580 -119
  558. package/src/concepts/MsgTriggerEvent__.ts +29 -34
  559. package/src/concepts/MsgTriggerLauncher__.ts +31 -31
  560. package/src/concepts/Namespace__.ts +157 -111
  561. package/src/concepts/NewComposite__.ts +143 -80
  562. package/src/concepts/NewList__.ts +50 -36
  563. package/src/concepts/NewMap__.ts +60 -40
  564. package/src/concepts/New__.ts +18 -20
  565. package/src/concepts/NullLiteral__.ts +18 -20
  566. package/src/concepts/NumericLiteral__.ts +27 -25
  567. package/src/concepts/OqlQueryComponent__.ts +34 -27
  568. package/src/concepts/OverriddenLogic__.ts +156 -102
  569. package/src/concepts/Param__.ts +53 -51
  570. package/src/concepts/Point__.ts +22 -22
  571. package/src/concepts/ProcessComponent__.ts +44 -39
  572. package/src/concepts/ProcessElement__.ts +142 -92
  573. package/src/concepts/ProcessOutcome__.ts +20 -21
  574. package/src/concepts/ProcessOutcomes__.ts +21 -21
  575. package/src/concepts/Process__.ts +89 -68
  576. package/src/concepts/QueryAggregateExpression__.ts +29 -26
  577. package/src/concepts/QueryFieldExpression__.ts +24 -23
  578. package/src/concepts/QueryFromExpression__.ts +31 -27
  579. package/src/concepts/QueryGroupByExpression__.ts +25 -24
  580. package/src/concepts/QueryJoinExpression__.ts +68 -41
  581. package/src/concepts/QueryLimitExpression__.ts +31 -27
  582. package/src/concepts/QueryOrderByExpression__.ts +31 -27
  583. package/src/concepts/QuerySelectExpression__.ts +109 -55
  584. package/src/concepts/Rect__.ts +26 -24
  585. package/src/concepts/Return__.ts +43 -48
  586. package/src/concepts/Role__.ts +24 -24
  587. package/src/concepts/SelectMembers__.ts +35 -32
  588. package/src/concepts/Slot__.ts +35 -31
  589. package/src/concepts/SqlQueryComponent__.ts +42 -30
  590. package/src/concepts/Start__.ts +18 -20
  591. package/src/concepts/StringInterpolation__.ts +26 -26
  592. package/src/concepts/StringLiteral__.ts +18 -20
  593. package/src/concepts/StructureProperty__.ts +47 -37
  594. package/src/concepts/Structure__.ts +70 -47
  595. package/src/concepts/SwitchCase__.ts +45 -41
  596. package/src/concepts/SwitchStatement__.ts +30 -25
  597. package/src/concepts/Theme__.ts +18 -21
  598. package/src/concepts/Transactional__.ts +24 -31
  599. package/src/concepts/TriggerEvent__.ts +32 -30
  600. package/src/concepts/TriggerLauncher__.ts +31 -81
  601. package/src/concepts/TypeAnnotation__.ts +102 -54
  602. package/src/concepts/TypeParam__.ts +19 -20
  603. package/src/concepts/UnaryExpression__.ts +26 -24
  604. package/src/concepts/Unparsed__.ts +19 -20
  605. package/src/concepts/UseComponent__.ts +22 -22
  606. package/src/concepts/ValidationRule__.ts +544 -553
  607. package/src/concepts/Variable__.ts +44 -48
  608. package/src/concepts/ViewBlock__.ts +26 -25
  609. package/src/concepts/ViewComponent__.ts +111 -97
  610. package/src/concepts/ViewElement__.ts +2778 -2431
  611. package/src/concepts/View__.ts +364 -308
  612. package/src/concepts/WhileStatement__.ts +40 -36
  613. package/src/concepts/index__.ts +0 -1
  614. package/src/concepts/types__.ts +123 -125
  615. package/src/decorators/index.ts +18 -12
  616. package/src/generator/genBundleFiles.ts +14 -4
  617. package/src/generator/genReleaseBody.ts +198 -182
  618. package/src/natural/genNaturalTS.ts +18 -17
  619. package/src/natural/index.ts +0 -2
  620. package/src/sentry/index.ts +2 -2
  621. package/src/server/createUiTs.ts +30 -1
  622. package/src/server/extendBaseNode.ts +18 -18
  623. package/src/server/formatTsUtils.ts +8 -19
  624. package/src/server/getConnector.ts +63 -27
  625. package/src/server/getMemberIdentifier.ts +6 -7
  626. package/src/server/index.ts +4 -1
  627. package/src/server/naslServer.ts +215 -122
  628. package/src/server/translator.ts +1 -3
  629. package/src/service/creator/add.configs.js +26 -1
  630. package/src/service/creator/errHandles.js +5 -4
  631. package/src/service/creator/index.js +12 -0
  632. package/src/service/storage/init.ts +2 -2
  633. package/src/service/storage/jsoner.ts +1 -1
  634. package/src/templator/genCurdEditMultipleKeyBlock.ts +3 -3
  635. package/src/templator/genCurdMultipleKeyBlock.ts +3 -3
  636. package/src/templator/genTableBlock.ts +1 -1
  637. package/src/translator/constant.ts +7 -0
  638. package/src/translator/index.ts +3 -137
  639. package/src/translator/types.ts +40 -0
  640. package/src/translator/utils.ts +102 -0
  641. package/src/utils/cookie.ts +60 -0
  642. package/src/utils/env.ts +2 -0
  643. package/src/utils/index.ts +3 -0
  644. package/src/utils/logger.ts +13 -0
  645. package/src/utils/time-slicing.ts +3 -1
  646. package/src/utils/types.ts +1 -0
  647. package/src/utils/window.ts +9 -0
  648. package/test/concepts/anonymous-function/__snapshots__/toEmbeddedTS.spec.ts.snap +8 -0
  649. package/test/concepts/anonymous-function/__snapshots__/toJS.spec.ts.snap +3 -0
  650. package/test/concepts/anonymous-function/__snapshots__/toVue.spec.ts.snap +6 -0
  651. package/test/concepts/anonymous-function/constant.ts +5 -0
  652. package/test/concepts/anonymous-function/fixtures/simple.json +85 -0
  653. package/test/concepts/anonymous-function/toEmbeddedTS.spec.ts +14 -0
  654. package/test/concepts/anonymous-function/toJS.spec.ts +14 -0
  655. package/test/concepts/anonymous-function/toVue.spec.ts +14 -0
  656. package/test/concepts/assignment/__snapshots__/toEmbeddedTS.spec.ts.snap +21 -0
  657. package/test/concepts/assignment/__snapshots__/toJS.spec.ts.snap +9 -0
  658. package/test/concepts/assignment/__snapshots__/toVue.spec.ts.snap +21 -0
  659. package/test/concepts/assignment/constant.ts +5 -0
  660. package/test/concepts/assignment/fixtures/both-space.json +4 -0
  661. package/test/concepts/assignment/fixtures/left-space.json +14 -0
  662. package/test/concepts/assignment/fixtures/right-space.json +8 -0
  663. package/test/concepts/assignment/fixtures/simple.json +12 -0
  664. package/test/concepts/assignment/toEmbeddedTS.spec.ts +14 -0
  665. package/test/concepts/assignment/toJS.spec.ts +14 -0
  666. package/test/concepts/assignment/toVue.spec.ts +14 -0
  667. package/test/concepts/batch-assignment/__snapshots__/toEmbeddedTS.spec.ts.snap +28 -0
  668. package/test/concepts/batch-assignment/__snapshots__/toJS.spec.ts.snap +13 -0
  669. package/test/concepts/batch-assignment/__snapshots__/toVue.spec.ts.snap +14 -0
  670. package/test/concepts/batch-assignment/constant.ts +5 -0
  671. package/test/concepts/batch-assignment/fixtures/muli-var-muli-value.json +144 -0
  672. package/test/concepts/batch-assignment/fixtures/simple-var-simple-value.json +36 -0
  673. package/test/concepts/batch-assignment/toEmbeddedTS.spec.ts +14 -0
  674. package/test/concepts/batch-assignment/toJS.spec.ts +14 -0
  675. package/test/concepts/batch-assignment/toVue.spec.ts +14 -0
  676. package/test/concepts/binary-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +25 -0
  677. package/test/concepts/binary-expression/__snapshots__/toJS.spec.ts.snap +16 -0
  678. package/test/concepts/binary-expression/__snapshots__/toVue.spec.ts.snap +19 -0
  679. package/test/concepts/binary-expression/constant.ts +5 -0
  680. package/test/concepts/binary-expression/fixtures/constant-nested.json +36 -0
  681. package/test/concepts/binary-expression/fixtures/constant-simple.json +12 -0
  682. package/test/concepts/binary-expression/fixtures/variable-nested.json +69 -0
  683. package/test/concepts/binary-expression/toEmbeddedTS.spec.ts +14 -0
  684. package/test/concepts/binary-expression/toJS.spec.ts +14 -0
  685. package/test/concepts/binary-expression/toVue.spec.ts +14 -0
  686. package/test/concepts/boolean-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +11 -0
  687. package/test/concepts/boolean-literal/__snapshots__/toJS.spec.ts.snap +11 -0
  688. package/test/concepts/boolean-literal/__snapshots__/toVue.spec.ts.snap +11 -0
  689. package/test/concepts/boolean-literal/constant.ts +5 -0
  690. package/test/concepts/boolean-literal/fixtures/false.json +4 -0
  691. package/test/concepts/boolean-literal/fixtures/true.json +4 -0
  692. package/test/concepts/boolean-literal/toEmbeddedTS.spec.ts +14 -0
  693. package/test/concepts/boolean-literal/toJS.spec.ts +14 -0
  694. package/test/concepts/boolean-literal/toVue.spec.ts +14 -0
  695. package/test/concepts/call-interface/toEmbeddedTS.spec.ts +6 -6
  696. package/test/concepts/call-interface/toJS.spec.ts +6 -6
  697. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +106 -0
  698. package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +45 -0
  699. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +102 -0
  700. package/test/concepts/call-logic/fixtures/nested-call-logic.json +860 -0
  701. package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +23 -0
  702. package/test/concepts/call-logic/toEmbeddedTS.spec.ts +6 -6
  703. package/test/concepts/call-logic/toJS.spec.ts +6 -6
  704. package/test/concepts/data-source/__snapshots__/toEmbeddedTS.spec.ts.snap +8 -0
  705. package/test/concepts/data-source/__snapshots__/toEmbeddedTSFile.spec.ts.snap +12 -0
  706. package/test/concepts/data-source/constant.ts +5 -0
  707. package/test/concepts/data-source/fixtures/normal.json +289 -0
  708. package/test/concepts/data-source/toEmbeddedTS.spec.ts +14 -0
  709. package/test/concepts/data-source/toEmbeddedTSFile.spec.ts +15 -0
  710. package/test/concepts/entity/__snapshots__/toEmbeddedTS.spec.ts.snap +74 -0
  711. package/test/concepts/entity/__snapshots__/toEmbeddedTSFile.spec.ts.snap +3 -0
  712. package/test/concepts/entity/constant.ts +5 -0
  713. package/test/concepts/entity/fixtures/normal.json +469 -0
  714. package/test/concepts/entity/toEmbeddedTS.spec.ts +14 -0
  715. package/test/concepts/entity/toEmbeddedTSFile.spec.ts +14 -0
  716. package/test/concepts/identifier/__snapshots__/toEmbeddedTS.spec.ts.snap +16 -0
  717. package/test/concepts/identifier/__snapshots__/toJS.spec.ts.snap +16 -0
  718. package/test/concepts/identifier/__snapshots__/toVue.spec.ts.snap +16 -0
  719. package/test/concepts/identifier/constant.ts +5 -0
  720. package/test/concepts/identifier/fixtures/data-source.json +5 -0
  721. package/test/concepts/identifier/fixtures/no-namespace.json +4 -0
  722. package/test/concepts/identifier/fixtures/view-variable.json +201 -0
  723. package/test/concepts/identifier/toEmbeddedTS.spec.ts +14 -0
  724. package/test/concepts/identifier/toJS.spec.ts +14 -0
  725. package/test/concepts/identifier/toVue.spec.ts +14 -0
  726. package/test/concepts/match/toEmbeddedTS.spec.ts +6 -6
  727. package/test/concepts/match/toJS.spec.ts +6 -6
  728. package/test/concepts/member-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +21 -0
  729. package/test/concepts/member-expression/__snapshots__/toJS.spec.ts.snap +21 -0
  730. package/test/concepts/member-expression/__snapshots__/toVue.spec.ts.snap +21 -0
  731. package/test/concepts/member-expression/constant.ts +5 -0
  732. package/test/concepts/member-expression/fixtures/app.enums.UserStatusEnum.json +13 -0
  733. package/test/concepts/member-expression/fixtures/elements.table-view.data.json +13 -0
  734. package/test/concepts/member-expression/fixtures/entry.created-by.json +18 -0
  735. package/test/concepts/member-expression/fixtures/nasl.auth.userInfo.json +19 -0
  736. package/test/concepts/member-expression/toEmbeddedTS.spec.ts +14 -0
  737. package/test/concepts/member-expression/toJS.spec.ts +14 -0
  738. package/test/concepts/member-expression/toVue.spec.ts +14 -0
  739. package/test/concepts/null-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -0
  740. package/test/concepts/null-literal/__snapshots__/toJS.spec.ts.snap +6 -0
  741. package/test/concepts/null-literal/__snapshots__/toVue.spec.ts.snap +6 -0
  742. package/test/concepts/null-literal/constant.ts +5 -0
  743. package/test/concepts/null-literal/fixtures/null.json +3 -0
  744. package/test/concepts/null-literal/toEmbeddedTS.spec.ts +14 -0
  745. package/test/concepts/null-literal/toJS.spec.ts +14 -0
  746. package/test/concepts/null-literal/toVue.spec.ts +14 -0
  747. package/test/concepts/numeric-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -0
  748. package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +6 -0
  749. package/test/concepts/numeric-literal/__snapshots__/toVue.spec.ts.snap +6 -0
  750. package/test/concepts/numeric-literal/constant.ts +5 -0
  751. package/test/concepts/numeric-literal/fixtures/number.json +10 -0
  752. package/test/concepts/numeric-literal/toEmbeddedTS.spec.ts +14 -0
  753. package/test/concepts/numeric-literal/toJS.spec.ts +14 -0
  754. package/test/concepts/numeric-literal/toVue.spec.ts +14 -0
  755. package/test/concepts/string-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +16 -0
  756. package/test/concepts/string-literal/__snapshots__/toJS.spec.ts.snap +16 -0
  757. package/test/concepts/string-literal/__snapshots__/toVue.spec.ts.snap +16 -0
  758. package/test/concepts/string-literal/constant.ts +5 -0
  759. package/test/concepts/string-literal/fixtures/escape.json +4 -0
  760. package/test/concepts/string-literal/fixtures/space.json +4 -0
  761. package/test/concepts/string-literal/fixtures/string.json +4 -0
  762. package/test/concepts/string-literal/toEmbeddedTS.spec.ts +14 -0
  763. package/test/concepts/string-literal/toJS.spec.ts +14 -0
  764. package/test/concepts/string-literal/toVue.spec.ts +14 -0
  765. package/test/concepts/utils.ts +46 -43
  766. package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +6 -6
  767. package/test/concepts/validation-rule/toJS.spec.ts +6 -6
  768. package/test/concepts/validation-rule/validation-rule.spec.ts +8 -8
  769. package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +592 -0
  770. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +324 -12
  771. package/test/concepts/view-element/fixtures/default-login.json +333 -0
  772. package/test/concepts/view-element/fixtures/default-not-found.json +313 -313
  773. package/test/concepts/view-element/fixtures/with-role-auth.json +148 -0
  774. package/test/concepts/view-element/fixtures/with-table.json +3473 -0
  775. package/test/concepts/view-element/toEmbeddedTS.spec.ts +6 -6
  776. package/test/concepts/view-element/toVue.spec.ts +6 -6
  777. package/ts-worker/package-lock.json +6663 -101
  778. package/ts-worker/webpack.config.js +1 -1
  779. package/out/common/classMap.d.ts +0 -4
  780. package/out/common/classMap.js +0 -5
  781. package/out/common/classMap.js.map +0 -1
  782. package/out/concepts/DataElement__.d.ts +0 -46
  783. package/out/concepts/DataElement__.js +0 -118
  784. package/out/concepts/DataElement__.js.map +0 -1
  785. package/out/natural/RequirementAnalyzer.d.ts +0 -22
  786. package/out/natural/RequirementAnalyzer.js +0 -196
  787. package/out/natural/RequirementAnalyzer.js.map +0 -1
  788. package/out/natural/RequirementExecutor.d.ts +0 -51
  789. package/out/natural/RequirementExecutor.js +0 -692
  790. package/out/natural/RequirementExecutor.js.map +0 -1
  791. package/out/natural/knowledgeMap.d.ts +0 -4
  792. package/out/natural/knowledgeMap.js +0 -40
  793. package/out/natural/knowledgeMap.js.map +0 -1
  794. package/out/translator/lsp.d.ts +0 -45
  795. package/out/translator/lsp.js +0 -6
  796. package/out/translator/lsp.js.map +0 -1
  797. package/out/translator/tsp.d.ts +0 -12
  798. package/out/translator/tsp.js.map +0 -1
  799. package/src/common/classMap.ts +0 -3
  800. package/src/concepts/DataElement__.ts +0 -131
  801. package/src/natural/RequirementAnalyzer.ts +0 -208
  802. package/src/natural/RequirementExecutor.ts +0 -685
  803. package/src/natural/knowledgeMap.ts +0 -39
  804. package/src/test/examples/app1.json +0 -1406
  805. package/src/test/fixtures/env.ts +0 -19
  806. package/src/test/integration/connect-create-file.ts +0 -14
  807. package/src/test/integration/connect-file.ts +0 -24
  808. package/src/test/integration/node-nasl-server.ts +0 -14
  809. package/src/test/units/baseTypes/Assignment.spec.ts +0 -20
  810. package/src/test/units/baseTypes/CallLogic.spec.ts +0 -22
  811. package/src/test/units/baseTypes/StringLiteral.spec.ts +0 -60
  812. package/src/test/units/baseTypes/new.spec.ts +0 -13
  813. package/src/test/units/common/Vertex.spec.ts +0 -23
  814. package/src/test/units/data/Entity.spec.ts +0 -10
  815. package/src/test/units/login.spec.ts +0 -10
  816. package/src/test/units/page/Block.spec.ts +0 -15
  817. package/src/test/units/page/Element.spec.ts +0 -45
  818. package/src/test/units/page/example.dashboard.html +0 -46
  819. package/src/test/units/page/example.view1.html +0 -63
  820. package/src/test/units/temp/temp.spec.ts +0 -66
  821. package/src/translator/lsp.ts +0 -50
  822. package/src/translator/tsp.ts +0 -14
@@ -49,7 +49,6 @@ const CallLogic__1 = __importDefault(require("./CallLogic__"));
49
49
  const decorators_1 = require("../decorators");
50
50
  const utils = __importStar(require("../utils"));
51
51
  const BaseNode_1 = __importDefault(require("../common/BaseNode"));
52
- const classMap_1 = __importDefault(require("../common/classMap"));
53
52
  const Transactional__1 = __importDefault(require("./Transactional__"));
54
53
  const TypeParam__1 = __importDefault(require("./TypeParam__"));
55
54
  const Param__1 = __importDefault(require("./Param__"));
@@ -58,41 +57,48 @@ const Variable__1 = __importDefault(require("./Variable__"));
58
57
  const LogicItem__1 = __importDefault(require("./LogicItem__"));
59
58
  const Process__1 = __importDefault(require("./Process__"));
60
59
  /**
61
- * 逻辑
60
+ * 覆写逻辑
62
61
  */
63
- let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode_1.default {
62
+ let OverriddenLogic = OverriddenLogic_1 =
63
+ // @ts-ignore
64
+ class OverriddenLogic extends BaseNode_1.default {
65
+ /** 类名 */
66
+ static ConceptName = 'OverriddenLogic';
64
67
  /**
65
68
  * 产品概念
66
69
  */
67
- concept = 'OverriddenLogic';
70
+ // @ts-ignore
71
+ concept;
68
72
  /**
69
- * overriddenModule
73
+ * 覆写的模块
70
74
  */
71
- overriddenModule = undefined;
75
+ // @ts-ignore
76
+ overriddenModule;
72
77
  /**
73
- * 逻辑名称
78
+ * 覆写逻辑名称
74
79
  */
75
- name = undefined;
80
+ // @ts-ignore
81
+ name;
76
82
  /**
77
- * 逻辑描述
83
+ * 覆写逻辑描述
78
84
  */
79
- description = undefined;
85
+ // @ts-ignore
86
+ description;
80
87
  /**
81
- * triggerType
88
+ * 触发方式
82
89
  */
83
- triggerType = undefined;
90
+ // @ts-ignore
91
+ triggerType;
84
92
  /**
85
- * cron
93
+ * 定时任务表达式
86
94
  */
87
- cron = undefined;
95
+ // @ts-ignore
96
+ cron;
88
97
  /**
89
98
  * 事务
90
99
  */
91
- transactional = undefined;
92
- /**
93
- * 编译器信息
94
- */
95
- compilerInfoMap = undefined;
100
+ // @ts-ignore
101
+ transactional;
96
102
  /**
97
103
  * 类型参数列表
98
104
  */
@@ -157,14 +163,10 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
157
163
  * @param source 需要合并的部分参数
158
164
  */
159
165
  constructor(source) {
160
- // @ts-ignore
161
- source = { ...OverriddenLogic_1.getDefaultOptions(), ...source };
166
+ source = Object.assign({}, OverriddenLogic_1.getDefaultOptions(), source);
162
167
  super(source);
163
168
  super.subConstructor(source);
164
169
  }
165
- getClassName() {
166
- return 'OverriddenLogic';
167
- }
168
170
  static from(source, parentNode, parentKey) {
169
171
  return super.from(source, parentNode, parentKey);
170
172
  }
@@ -180,7 +182,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
180
182
  return params;
181
183
  }
182
184
  /**
183
- * 设置overriddenModule
185
+ * 设置覆写的模块
184
186
  */
185
187
  setOverriddenModule(overriddenModule) {
186
188
  const object = {
@@ -191,7 +193,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
191
193
  });
192
194
  }
193
195
  /**
194
- * 设置逻辑名称
196
+ * 设置覆写逻辑名称
195
197
  */
196
198
  setName(name) {
197
199
  const object = {
@@ -203,7 +205,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
203
205
  });
204
206
  }
205
207
  /**
206
- * 设置逻辑描述
208
+ * 设置覆写逻辑描述
207
209
  */
208
210
  setDescription(description) {
209
211
  const object = {
@@ -214,7 +216,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
214
216
  });
215
217
  }
216
218
  /**
217
- * 设置triggerType
219
+ * 设置触发方式
218
220
  */
219
221
  setTriggerType(triggerType) {
220
222
  const object = {
@@ -225,7 +227,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
225
227
  });
226
228
  }
227
229
  /**
228
- * 设置cron
230
+ * 设置定时任务表达式
229
231
  */
230
232
  setCron(cron) {
231
233
  const object = {
@@ -564,7 +566,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
564
566
  if (typeof options === 'string') {
565
567
  transactional = this.transactional;
566
568
  if (!transactional) {
567
- throw new Error(`找不到事务 ${options}`);
569
+ throw new Error('找不到事务 ' + options);
568
570
  }
569
571
  }
570
572
  else {
@@ -573,7 +575,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
573
575
  return transactional.delete();
574
576
  }
575
577
  __removeTransactional(transactional) {
576
- const { parentKey } = transactional;
578
+ const parentKey = transactional.parentKey;
577
579
  const params = {
578
580
  parentNode: this,
579
581
  parentKey,
@@ -600,7 +602,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
600
602
  if (typeof options === 'string') {
601
603
  typeParam = this.typeParams.find((item) => item.name === options);
602
604
  if (!typeParam) {
603
- throw new Error(`找不到类型参数 ${options}`);
605
+ throw new Error('找不到类型参数 ' + options);
604
606
  }
605
607
  }
606
608
  else {
@@ -609,7 +611,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
609
611
  return typeParam.delete();
610
612
  }
611
613
  __removeTypeParam(typeParam) {
612
- const { parentKey } = typeParam;
614
+ const parentKey = typeParam.parentKey;
613
615
  const params = {
614
616
  parentNode: this,
615
617
  parentKey,
@@ -636,7 +638,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
636
638
  if (typeof options === 'string') {
637
639
  param = this.params.find((item) => item.name === options);
638
640
  if (!param) {
639
- throw new Error(`找不到输入参数 ${options}`);
641
+ throw new Error('找不到输入参数 ' + options);
640
642
  }
641
643
  }
642
644
  else {
@@ -645,7 +647,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
645
647
  return param.delete();
646
648
  }
647
649
  __removeParam(param) {
648
- const { parentKey } = param;
650
+ const parentKey = param.parentKey;
649
651
  const params = {
650
652
  parentNode: this,
651
653
  parentKey,
@@ -672,7 +674,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
672
674
  if (typeof options === 'string') {
673
675
  ret = this.returns.find((item) => item.name === options);
674
676
  if (!ret) {
675
- throw new Error(`找不到输出参数 ${options}`);
677
+ throw new Error('找不到输出参数 ' + options);
676
678
  }
677
679
  }
678
680
  else {
@@ -681,7 +683,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
681
683
  return ret.delete();
682
684
  }
683
685
  __removeReturn(ret) {
684
- const { parentKey } = ret;
686
+ const parentKey = ret.parentKey;
685
687
  const params = {
686
688
  parentNode: this,
687
689
  parentKey,
@@ -708,7 +710,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
708
710
  if (typeof options === 'string') {
709
711
  variable = this.variables.find((item) => item.name === options);
710
712
  if (!variable) {
711
- throw new Error(`找不到变量 ${options}`);
713
+ throw new Error('找不到变量 ' + options);
712
714
  }
713
715
  }
714
716
  else {
@@ -717,7 +719,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
717
719
  return variable.delete();
718
720
  }
719
721
  __removeVariable(variable) {
720
- const { parentKey } = variable;
722
+ const parentKey = variable.parentKey;
721
723
  const params = {
722
724
  parentNode: this,
723
725
  parentKey,
@@ -740,15 +742,15 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
740
742
  return params;
741
743
  }
742
744
  removeItemInBody(options) {
743
- const logicItem = options;
745
+ let logicItem = options;
744
746
  return logicItem.delete();
745
747
  }
746
748
  removeItemInPlayground(options) {
747
- const logicItem = options;
749
+ let logicItem = options;
748
750
  return logicItem.delete();
749
751
  }
750
752
  __removeLogicItem(logicItem) {
751
- const { parentKey } = logicItem;
753
+ const parentKey = logicItem.parentKey;
752
754
  const params = {
753
755
  parentNode: this,
754
756
  parentKey,
@@ -770,10 +772,10 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
770
772
  }
771
773
  return params;
772
774
  }
773
- //= ===============================================================================
775
+ //================================================================================
774
776
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
775
777
  // 自动生成的代码已结束。下面可以手动编写。
776
- //= ===============================================================================
778
+ //================================================================================
777
779
  // 用于calllogic树中定位是那个logic,回显
778
780
  get calleewholeKey() {
779
781
  return `${this.getNamespace()}.${this.name}`;
@@ -1036,7 +1038,9 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
1036
1038
  code += 'const __LogicEmpty: any = null;';
1037
1039
  }
1038
1040
  }
1039
- else if (this.body.length <= 2 && !(this.parentNode instanceof Namespace__1.default) && !(this.parentNode instanceof Process__1.default)) {
1041
+ else if (this.body.length <= 2 &&
1042
+ !(this.parentNode instanceof Namespace__1.default) &&
1043
+ !(this.parentNode instanceof Process__1.default)) {
1040
1044
  code += (0, translator_1.indent)((state?.tabSize || 0) + 1);
1041
1045
  code += `${(0, translator_1.indent)(state?.tabSize || 0 + 4)}const __LogicEmpty: any = null;`;
1042
1046
  }
@@ -1183,9 +1187,12 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
1183
1187
  ? assignment.left.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
1184
1188
  : assignment.left.members[leftIndex[1]]?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
1185
1189
  if (leftCode === node.name) {
1186
- const rightNode = rightIndex.length === 1 ? assignment.rights[rightIndex[0]]?.expression : assignment.rights[rightIndex[0]]?.members[rightIndex[1]];
1190
+ const rightNode = rightIndex.length === 1
1191
+ ? assignment.rights[rightIndex[0]]?.expression
1192
+ : assignment.rights[rightIndex[0]]?.members[rightIndex[1]];
1187
1193
  // 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
1188
- if (rightNode?.typeAnnotation && !(rightNode instanceof CallQueryComponent__1.default && rightNode.ideVersion !== '2.11')) {
1194
+ if (rightNode?.typeAnnotation &&
1195
+ !(rightNode instanceof CallQueryComponent__1.default && rightNode.ideVersion !== '2.11')) {
1189
1196
  code += ': ';
1190
1197
  code += rightNode.typeAnnotation?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) || 'null';
1191
1198
  }
@@ -1197,12 +1204,14 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
1197
1204
  }
1198
1205
  });
1199
1206
  }
1200
- else if (['NewList', 'NewMap'].includes(assignment.right?.concept) && !assignment.right?.typeAnnotation) {
1207
+ else if (['NewList', 'NewMap'].includes(assignment.right?.concept) &&
1208
+ !assignment.right?.typeAnnotation) {
1201
1209
  const rightNode = assignment.right;
1202
1210
  code += ' = ';
1203
1211
  code += rightNode.getInitCode((0, translator_1.shiftState)(state, code, { inline: true }));
1204
1212
  }
1205
- else if (assignment.right?.concept === 'NewComposite' && assignment.right?.typeAnnotation?.typeKind === 'anonymousStructure') {
1213
+ else if (assignment.right?.concept === 'NewComposite' &&
1214
+ assignment.right?.typeAnnotation?.typeKind === 'anonymousStructure') {
1206
1215
  const rightNode = assignment.right;
1207
1216
  code += ' = ';
1208
1217
  code += rightNode.getInitCode((0, translator_1.shiftState)(state, code, { inline: true }));
@@ -1210,7 +1219,8 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
1210
1219
  else {
1211
1220
  const rightNode = assignment.right;
1212
1221
  // 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
1213
- if (rightNode?.typeAnnotation && !(rightNode instanceof CallQueryComponent__1.default && rightNode.ideVersion !== '2.11')) {
1222
+ if (rightNode?.typeAnnotation &&
1223
+ !(rightNode instanceof CallQueryComponent__1.default && rightNode.ideVersion !== '2.11')) {
1214
1224
  code += ': ';
1215
1225
  code += rightNode.typeAnnotation?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) || 'null';
1216
1226
  }
@@ -1218,10 +1228,16 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
1218
1228
  code += ' = ';
1219
1229
  let rightCode = '';
1220
1230
  // 因为右侧枚举要赋值就得new 一下;
1221
- if (rightNode && rightNode instanceof Identifier__1.default && rightNode.namespace && rightNode.namespace.endsWith('enums')) {
1231
+ if (rightNode &&
1232
+ rightNode instanceof Identifier__1.default &&
1233
+ rightNode.namespace &&
1234
+ rightNode.namespace.endsWith('enums')) {
1222
1235
  rightCode += 'new ';
1223
1236
  }
1224
- rightCode += rightNode && rightNode.toEmbeddedTS ? rightNode.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) : '__RIGHT__';
1237
+ rightCode +=
1238
+ rightNode && rightNode.toEmbeddedTS
1239
+ ? rightNode.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
1240
+ : '__RIGHT__';
1225
1241
  code += this.getRightCode(rightCode, assignment, rightNode);
1226
1242
  }
1227
1243
  }
@@ -1309,7 +1325,7 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
1309
1325
  handleForEachCode(code, forEachStatement) {
1310
1326
  const { item, index, each } = forEachStatement;
1311
1327
  if (code.includes(item.name)) {
1312
- const eachTSCode = each.toEmbeddedTS();
1328
+ const eachTSCode = each ? each.toEmbeddedTS() : '__IDENTIFIER__';
1313
1329
  code = this.handleReplaceCode(code, item.name, eachTSCode === '__IDENTIFIER__' ? eachTSCode : `${eachTSCode}.__get(0)`);
1314
1330
  }
1315
1331
  if (code.includes(index.name))
@@ -1562,9 +1578,6 @@ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode
1562
1578
  return null;
1563
1579
  }
1564
1580
  };
1565
- __decorate([
1566
- (0, decorators_1.property)()
1567
- ], OverriddenLogic.prototype, "concept", void 0);
1568
1581
  __decorate([
1569
1582
  (0, decorators_1.property)()
1570
1583
  ], OverriddenLogic.prototype, "overriddenModule", void 0);
@@ -1581,28 +1594,45 @@ __decorate([
1581
1594
  (0, decorators_1.property)()
1582
1595
  ], OverriddenLogic.prototype, "cron", void 0);
1583
1596
  __decorate([
1584
- (0, decorators_1.property)('Transactional')
1597
+ (0, decorators_1.property)({
1598
+ objectRef: 'Transactional',
1599
+ })
1585
1600
  ], OverriddenLogic.prototype, "transactional", void 0);
1586
1601
  __decorate([
1587
- (0, decorators_1.property)()
1588
- ], OverriddenLogic.prototype, "compilerInfoMap", void 0);
1589
- __decorate([
1590
- (0, decorators_1.property)('TypeParam')
1602
+ (0, decorators_1.property)({
1603
+ objectRef: 'TypeParam',
1604
+ isArray: true,
1605
+ })
1591
1606
  ], OverriddenLogic.prototype, "typeParams", void 0);
1592
1607
  __decorate([
1593
- (0, decorators_1.property)('Param')
1608
+ (0, decorators_1.property)({
1609
+ objectRef: 'Param',
1610
+ isArray: true,
1611
+ })
1594
1612
  ], OverriddenLogic.prototype, "params", void 0);
1595
1613
  __decorate([
1596
- (0, decorators_1.property)('Return')
1614
+ (0, decorators_1.property)({
1615
+ objectRef: 'Return',
1616
+ isArray: true,
1617
+ })
1597
1618
  ], OverriddenLogic.prototype, "returns", void 0);
1598
1619
  __decorate([
1599
- (0, decorators_1.property)('Variable')
1620
+ (0, decorators_1.property)({
1621
+ objectRef: 'Variable',
1622
+ isArray: true,
1623
+ })
1600
1624
  ], OverriddenLogic.prototype, "variables", void 0);
1601
1625
  __decorate([
1602
- (0, decorators_1.property)('LogicItem')
1626
+ (0, decorators_1.property)({
1627
+ objectRef: 'LogicItem',
1628
+ isArray: true,
1629
+ })
1603
1630
  ], OverriddenLogic.prototype, "body", void 0);
1604
1631
  __decorate([
1605
- (0, decorators_1.property)('LogicItem')
1632
+ (0, decorators_1.property)({
1633
+ objectRef: 'LogicItem',
1634
+ isArray: true,
1635
+ })
1606
1636
  ], OverriddenLogic.prototype, "playground", void 0);
1607
1637
  __decorate([
1608
1638
  (0, translator_1.withSourceMap)()
@@ -1611,13 +1641,14 @@ __decorate([
1611
1641
  (0, translator_1.withSourceMap)()
1612
1642
  ], OverriddenLogic.prototype, "toEmbeddedTS", null);
1613
1643
  OverriddenLogic = OverriddenLogic_1 = __decorate([
1614
- (0, decorators_1.concept)('逻辑')
1644
+ decorators_1.className,
1645
+ (0, decorators_1.concept)('覆写逻辑')
1646
+ // @ts-ignore
1615
1647
  ], OverriddenLogic);
1616
1648
  exports.OverriddenLogic = OverriddenLogic;
1617
- classMap_1.default.OverriddenLogic = OverriddenLogic;
1618
1649
  exports.default = OverriddenLogic;
1619
- //= ===============================================================================
1650
+ //================================================================================
1620
1651
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
1621
1652
  // 自动生成的代码已结束。下面可以手动编写。
1622
- //= ===============================================================================
1653
+ //================================================================================
1623
1654
  //# sourceMappingURL=OverriddenLogic__.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OverriddenLogic__.js","sourceRoot":"","sources":["../../src/concepts/OverriddenLogic__.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,0DAAsD;AACtD,8CAA2H;AAC3H,+DAAsC;AACtC,iFAAwD;AAExD,iEAAwC;AACxC,iEAAwC;AACxC,+DAAsC;AACtC,2EAAkD;AAClD,+EAAsD;AAGtD,yEAAgD;AAChD,uEAA8C;AAC9C,+DAAsC;AAQtC,8CAAkE;AAElE,gDAAkC;AAClC,kEAA0C;AAC1C,kEAA0C;AAC1C,uEAA8C;AAC9C,+DAAsC;AACtC,uDAA8B;AAC9B,yDAAgC;AAChC,6DAAoC;AACpC,+DAAsC;AAMtC,2DAAkC;AAElC;;GAEG;AAEH,IAAa,eAAe,uBAA5B,MAAa,eAAgB,SAAQ,kBAAQ;IAC3C;;OAEG;IAEH,OAAO,GAAsB,iBAAiB,CAAC;IAE/C;;OAEG;IAEH,gBAAgB,GAAW,SAAS,CAAC;IAErC;;OAEG;IAEH,IAAI,GAAW,SAAS,CAAC;IAEzB;;OAEG;IAEH,WAAW,GAAW,SAAS,CAAC;IAEhC;;OAEG;IAEH,WAAW,GAAW,SAAS,CAAC;IAEhC;;OAEG;IAEH,IAAI,GAAW,SAAS,CAAC;IAEzB;;OAEG;IAEH,aAAa,GAAkB,SAAS,CAAC;IAEzC;;OAEG;IAEH,eAAe,GAA0D,SAAS,CAAC;IAEnF;;OAEG;IAEH,UAAU,GAAqB,IAAI,CAAC;IAEpC;;OAEG;IAEH,MAAM,GAAiB,EAAE,CAAC;IAE1B;;OAEG;IAEH,OAAO,GAAkB,EAAE,CAAC;IAE5B;;OAEG;IAEH,SAAS,GAAoB,EAAE,CAAC;IAEhC;;OAEG;IAEH,IAAI,GAAqB,EAAE,CAAC;IAE5B;;OAEG;IAEH,UAAU,GAAqB,EAAE,CAAC;IAElC;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAW,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,CAAQ,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAS,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAa,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAmB,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAY,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,YAAY,MAAiC;QAC3C,aAAa;QACb,MAAM,GAAG,EAAE,GAAG,iBAAe,CAAC,iBAAiB,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC;QAC/D,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,YAAY;QACV,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAW,EAAE,UAAgB,EAAE,SAAkB;QAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAoB,CAAC;IACtE,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,IAAI,MAAM,GAAW,IAAI,CAAC;QAC1B,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,GAAI,IAAI,CAAC,UAAkB,EAAE,uBAAuB,EAAE,CAAC,IAAI,CAAC,CAAC;SACpE;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,gBAAwB;QAC1C,MAAM,MAAM,GAAG;YACb,gBAAgB;SACjB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAY;QAClB,MAAM,MAAM,GAAG;YACb,IAAI;SACL,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;YACT,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,WAAmB;QAChC,MAAM,MAAM,GAAG;YACb,WAAW;SACZ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,WAAmB;QAChC,MAAM,MAAM,GAAG;YACb,WAAW;SACZ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,IAAY;QAClB,MAAM,MAAM,GAAG;YACb,IAAI;SACL,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,aAA4B;QAC3C,aAAa,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;QACzE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG;YACb,aAAa;SACd,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED,yBAAyB,CAAC,eAAiC,EAAE;QAC3D,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;IACpH,CAAC;IAED,sBAAsB,CAAC,IAAI,GAAG,YAAY;QACxC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAChF,CAAC;IAuBD,kBAAkB,CAAC,OAAgD,EAAE,KAAa;QAChF,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;YACZ,SAAS,GAAG,oBAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,IAAI,EAAE,IAAI,CAAC,sBAAsB,EAAE;aACpC,EACD,IAAI,EACJ,YAAY,CACb,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,SAAS,GAAG,oBAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,YAAY,CACb,CAAC;SACH;aAAM,IAAI,OAAO,YAAY,oBAAS,EAAE;YACvC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,SAAS,GAAG,OAAO,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC3C;aAAM;YACL,SAAS,GAAG,oBAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,GAAG,OAAO;aACX,EACD,IAAI,EACJ,YAAY,CACb,CAAC;SACH;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IAoBD,iBAAiB,CAAC,OAAgD,EAAE,KAAa;QAC/E,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,aAAa,CAAC,OAAiD;QAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACrC,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAqBD,YAAY,CAAC,OAAiD;QAC5D,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;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kBAAkB,CAAC,IAAI,GAAG,QAAQ;QAChC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAuBD,cAAc,CAAC,OAAwC,EAAE,KAAa;QACpE,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;YACZ,KAAK,GAAG,gBAAK,CAAC,IAAI,CAChB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE;aAChC,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,KAAK,GAAG,gBAAK,CAAC,IAAI,CAChB;gBACE,GAAG,YAAY;gBACf,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;aAAM,IAAI,OAAO,YAAY,gBAAK,EAAE;YACnC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,KAAK,GAAG,OAAO,CAAC;YAChB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;SACvC;aAAM;YACL,KAAK,GAAG,gBAAK,CAAC,IAAI,CAChB;gBACE,GAAG,YAAY;gBACf,GAAG,OAAO;aACX,EACD,IAAI,EACJ,QAAQ,CACT,CAAC;SACH;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAoBD,aAAa,CAAC,OAAwC,EAAE,KAAa;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,SAAS,CAAC,OAAyC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QACjC,OAAO,IAAI,CAAC,cAAc,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAqBD,QAAQ,CAAC,OAAyC;QAChD,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;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,QAAQ;SACpB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB,CAAC,IAAI,GAAG,QAAQ;QACjC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAuBD,eAAe,CAAC,OAA0C,EAAE,KAAa;QACvE,MAAM,UAAU,GAAQ,EAAE,CAAC;QAC3B,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;QACnE,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC,OAAO,EAAE;YACZ,GAAG,GAAG,iBAAM,CAAC,IAAI,CACf;gBACE,GAAG,UAAU;gBACb,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE;aACjC,EACD,IAAI,EACJ,SAAS,CACV,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,GAAG,GAAG,iBAAM,CAAC,IAAI,CACf;gBACE,GAAG,UAAU;gBACb,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,SAAS,CACV,CAAC;SACH;aAAM,IAAI,OAAO,YAAY,iBAAM,EAAE;YACpC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,GAAG,GAAG,OAAO,CAAC;YACd,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;SACrC;aAAM;YACL,GAAG,GAAG,iBAAM,CAAC,IAAI,CACf;gBACE,GAAG,UAAU;gBACb,GAAG,OAAO;aACX,EACD,IAAI,EACJ,SAAS,CACV,CAAC;SACH;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QACnC,OAAO,GAAG,CAAC;IACb,CAAC;IAoBD,cAAc,CAAC,OAA0C,EAAE,KAAa;QACtE,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,UAAU,CAAC,OAA2C;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAClC,OAAO,IAAI,CAAC,eAAe,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAqBD,SAAS,CAAC,OAA2C;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAc,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,SAAS;SACrB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB,CAAC,IAAI,GAAG,WAAW;QACtC,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAuBD,iBAAiB,CAAC,OAA8C,EAAE,KAAa;QAC7E,MAAM,eAAe,GAAQ,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACrE,IAAI,QAAkB,CAAC;QACvB,IAAI,CAAC,OAAO,EAAE;YACZ,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CACtB;gBACE,GAAG,eAAe;gBAClB,IAAI,EAAE,IAAI,CAAC,qBAAqB,EAAE;aACnC,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;SACH;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CACtB;gBACE,GAAG,eAAe;gBAClB,IAAI,EAAE,OAAO;aACd,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;SACH;aAAM,IAAI,OAAO,YAAY,mBAAQ,EAAE;YACtC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,QAAQ,GAAG,OAAO,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;SAC1C;aAAM;YACL,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CACtB;gBACE,GAAG,eAAe;gBAClB,GAAG,OAAO;aACX,EACD,IAAI,EACJ,WAAW,CACZ,CAAC;SACH;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAoBD,gBAAgB,CAAC,OAA8C,EAAE,KAAa;QAC5E,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACvB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAuBD,YAAY,CAAC,OAA+C;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACvD,CAAC;IAqBD,WAAW,CAAC,OAA+C;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,OAAc,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACvB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAgBD,mBAAmB,CAAC,OAAuC,EAAE,KAAa;QACxE,MAAM,gBAAgB,GAAQ,EAAE,CAAC;QACjC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAChE,IAAI,SAAoB,CAAC;QACzB,IAAI,OAAO,YAAY,oBAAS,EAAE;YAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,SAAS,GAAG,OAAO,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC3C;aAAM;YACL,SAAS,GAAG,oBAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,GAAG,OAAO;aACX,EACD,IAAI,EACJ,MAAM,CACP,CAAC;SACH;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QACtC,OAAO,SAAS,CAAC;IACnB,CAAC;IAcD,kBAAkB,CAAC,OAAuC,EAAE,KAAa;QACvE,MAAM,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAgBD,cAAc,CAAC,OAAwC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAC/B,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAcD,aAAa,CAAC,OAAwC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,OAAc,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAgBD,yBAAyB,CAAC,OAAuC,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,OAAO,YAAY,oBAAS,EAAE;YAChC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,SAAS,GAAG,OAAO,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;SAC3C;aAAM;YACL,SAAS,GAAG,oBAAS,CAAC,IAAI,CACxB;gBACE,GAAG,gBAAgB;gBACnB,GAAG,OAAO;aACX,EACD,IAAI,EACJ,YAAY,CACb,CAAC;SACH;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QAC5C,OAAO,SAAS,CAAC;IACnB,CAAC;IAcD,wBAAwB,CAAC,OAAuC,EAAE,KAAa;QAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAgBD,oBAAoB,CAAC,OAAwC;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACrC,OAAO,IAAI,CAAC,yBAAyB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAcD,mBAAmB,CAAC,OAAwC;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAc,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC;YACV,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,YAAY;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAcD,mBAAmB,CAAC,OAA+B;QACjD,IAAI,aAA4B,CAAC;QACjC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YACnC,IAAI,CAAC,aAAa,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;aACrC;SACF;aAAM;YACL,aAAa,GAAG,OAAO,CAAC;SACzB;QACD,OAAO,aAAa,CAAC,MAAM,EAAE,CAAC;IAChC,CAAC;IAED,qBAAqB,CAAC,aAA4B;QAChD,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;QACpC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,aAAa;SACzB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBAC3C,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;aACtB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,aAAa,EAAE;gBACrD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACtC;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,eAAe,CAAC,OAA2B;QACzC,IAAI,SAAoB,CAAC;QACzB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,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;gBACd,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;aACvC;SACF;aAAM;YACL,SAAS,GAAG,OAAO,CAAC;SACrB;QACD,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB,CAAC,SAAoB;QACpC,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;QAChC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,SAAS;SACrB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBAC3C,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;aACtB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE;gBACjD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACtC;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,WAAW,CAAC,OAAuB;QACjC,IAAI,KAAY,CAAC;QACjB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,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;gBACV,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;aACvC;SACF;aAAM;YACL,KAAK,GAAG,OAAO,CAAC;SACjB;QACD,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;IAED,aAAa,CAAC,KAAY;QACxB,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;QAC5B,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,KAAK;SACjB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBAC3C,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;aACtB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,KAAK,EAAE;gBAC7C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACtC;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,YAAY,CAAC,OAAwB;QACnC,IAAI,GAAW,CAAC;QAChB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,GAAG,GAAI,IAAI,CAAC,OAAoB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YACvE,IAAI,CAAC,GAAG,EAAE;gBACR,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;aACvC;SACF;aAAM;YACL,GAAG,GAAG,OAAO,CAAC;SACf;QACD,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,cAAc,CAAC,GAAW;QACxB,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;QAC1B,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,GAAG;SACf,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBAC3C,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACpD,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACtB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,GAAG,EAAE;gBAC3C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACtC;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAcD,cAAc,CAAC,OAA0B;QACvC,IAAI,QAAkB,CAAC;QACvB,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,QAAQ,GAAI,IAAI,CAAC,SAAwB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;YAChF,IAAI,CAAC,QAAQ,EAAE;gBACb,MAAM,IAAI,KAAK,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;aACrC;SACF;aAAM;YACL,QAAQ,GAAG,OAAO,CAAC;SACpB;QACD,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC3B,CAAC;IAED,gBAAgB,CAAC,QAAkB;QACjC,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC;QAC/B,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,QAAQ;SACpB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBAC3C,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;aACtB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE;gBAChD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACtC;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAQD,gBAAgB,CAAC,OAAkB;QACjC,MAAM,SAAS,GAAc,OAAO,CAAC;QACrC,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAQD,sBAAsB,CAAC,OAAkB;QACvC,MAAM,SAAS,GAAc,OAAO,CAAC;QACrC,OAAO,SAAS,CAAC,MAAM,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB,CAAC,SAAoB;QACpC,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,CAAC;QAChC,MAAM,MAAM,GAAW;YACrB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,SAAS;SACrB,CAAC;QACF,IAAI,SAAS,EAAE;YACb,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBAC3C,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;aACtB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE;gBACjD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACtC;SACF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mFAAmF;IACnF,gEAAgE;IAChE,uBAAuB;IACvB,mFAAmF;IACnF,6BAA6B;IAC7B,IAAI,cAAc;QAChB,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,SAAS;IACT,qBAAqB,CAAC,IAAY,EAAE,WAAmB;QACrD,MAAM,MAAM,GAAG;YACb,IAAI;YACJ,WAAW;SACZ,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACV,GAAG,MAAM;SACV,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,iBAAiB,CAAC,IAAa;QAC7B,IAAI,IAAI,EAAE;YACR,MAAM,aAAa,GAAG,IAAI,wBAAa,CAAC;gBACtC,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YACH,aAAa,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;YACzE,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;YAC9C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;SACpC;IACH,CAAC;IAED,sBAAsB,CAAC,OAAe;QACpC,IAAI,MAAW,CAAC;QAEhB,KAAK,CAAC,QAAQ,CACZ,CAAC,OAAO,EAAE,EAAE;YACV,IAAK,OAAO,CAAC,IAAY,CAAC,OAAO,KAAK,OAAO;gBAAE,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAChF,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,EACd;YACE,IAAI,EAAE,WAAW;YACjB,cAAc,EAAE,IAAI,CAAC,kBAAkB;SACxC,CACF,CAAC;QAEF,OAAO,MAAmB,CAAC;IAC7B,CAAC;IAED,QAAQ,CAAC,MAAqB;QAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,mBAAmB,CAAC,eAAiD,EAAE;QACrE,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAU,EAAE,CAAC;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;SAC9B;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;SAC/B;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACjC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;SACjC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBACnC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACnC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;gBACtC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACtC;SACF;QAED,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE;YAC3B,IAAI,EAAE,EAAE,OAAO,KAAK,kBAAkB,EAAE;gBACtC,IAAK,EAAuB,EAAE,IAAI,EAAE;oBAClC,OAAO,CAAC,IAAI,CAAE,EAAuB,EAAE,IAAI,CAAC,CAAC;iBAC9C;gBACD,IAAK,EAAuB,EAAE,KAAK,EAAE;oBACnC,OAAO,CAAC,IAAI,CAAE,EAAuB,EAAE,KAAK,CAAC,CAAC;iBAC/C;aACF;QACH,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,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,EAAE,IAAI,CAAC,CAAC;IACpF,CAAC;IAED,WAAW,CAAC,IAAY,EAAE,KAAuB;QAC/C,SAAS;QACT,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC9B,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC5B,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC/C,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC9D,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;SACJ;QACD,YAAY;QACZ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACjC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAClC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;gBACnD,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACjE,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;SACJ;QAED,UAAU;QACV,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YAC/B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC3B,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;gBACnD,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC5D,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChG,IAAI,IAAI,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;SACJ;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC,KAAuB,EAAE,IAAa;QACzC,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,IAAI,IAAI,wBAAwB,CAAC;YACjC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACrC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,SAAS,CAAC;YAChD,OAAO,IAAI,CAAC;SACb;QACD,IAAI,IAAI,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC;QAE/B,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE;YACvB,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACnC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC;gBACnB,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;oBAAE,IAAI,IAAI,IAAI,CAAC;YACrD,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,IAAI,OAAO,CAAC;QAEhB,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,KAAK,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB;QACd,OAAO;YACL,MAAM,EAAE;gBACN,WAAW,EAAE,OAAO;aACrB;YACD,GAAG,EAAE;gBACH,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;aACrB;SACF,CAAC;IACJ,CAAC;IAED,SAAS;QACP,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAC5B,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,UAAU,IAAI,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC;QAC5B,IAAI,WAAW,GAAG,OAAO,CAAC;QAC1B,IAAI,MAAM,GAAG,MAAM,CAAC;QACpB,kCAAkC;QAClC,MAAM,GAAG,GAA2B;YAClC,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,UAAU;YAClB,eAAe,EAAE,gBAAgB;YACjC,gBAAgB,EAAE,gBAAgB;YAClC,gBAAgB,EAAE,gBAAgB;YAClC,WAAW,EAAE,gBAAgB;YAC7B,WAAW,EAAE,gBAAgB;SAC9B,CAAC;QACF,IAAI,IAAI,GAAG,QAAQ,GAAG,CAAC,SAAS,CAAC,eAAe,SAAS,EAAE,CAAC;QAC5D,IAAI,OAAO,KAAK,QAAQ,EAAE;YACxB,IAAI,GAAG,QAAQ,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC;SAC5D;aAAM,IAAI,OAAO,KAAK,WAAW,EAAE;YAClC,WAAW,GAAG,QAAQ,CAAC;YACvB,IAAI,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC;YACnD,CAAC,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YACxD,yBAAyB;YACzB,IAAI,UAAU,IAAI,UAAU,CAAC,IAAI,KAAK,WAAW,EAAE;gBACjD,UAAU,GAAG,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;aACjD;YACD,IAAI,GAAG,QAAQ,UAAU,EAAE,CAAC;YAC5B,QAAQ,IAAI,CAAC,IAAI,EAAE;gBACjB,KAAK,KAAK;oBACR,MAAM,GAAG,KAAK,CAAC;oBACf,IAAI,GAAG,QAAQ,UAAU,EAAE,CAAC;oBAC5B,MAAM;gBACR,KAAK,QAAQ;oBACX,MAAM,GAAG,MAAM,CAAC;oBAChB,MAAM;gBACR,KAAK,QAAQ;oBACX,MAAM,GAAG,KAAK,CAAC;oBACf,MAAM;gBACR,KAAK,QAAQ;oBACX,MAAM,GAAG,QAAQ,CAAC;oBAClB,IAAI,GAAG,QAAQ,UAAU,EAAE,CAAC;oBAC5B,MAAM;gBACR,KAAK,gBAAgB;oBACnB,MAAM,GAAG,MAAM,CAAC;oBAChB,IAAI,GAAG,QAAQ,UAAU,iBAAiB,CAAC;oBAC3C,MAAM;gBACR,KAAK,UAAU;oBACb,MAAM,GAAG,KAAK,CAAC;oBACf,IAAI,GAAG,QAAQ,UAAU,KAAK,CAAC;oBAC/B,MAAM;gBACR,KAAK,UAAU;oBACb,MAAM,GAAG,QAAQ,CAAC;oBAClB,IAAI,GAAG,QAAQ,UAAU,KAAK,CAAC;oBAC/B,MAAM;gBACR,KAAK,aAAa;oBAChB,MAAM,GAAG,MAAM,CAAC;oBAChB,IAAI,GAAG,QAAQ,UAAU,QAAQ,CAAC;oBAClC,MAAM;gBACR,KAAK,aAAa;oBAChB,MAAM,GAAG,KAAK,CAAC;oBACf,IAAI,GAAG,QAAQ,UAAU,QAAQ,CAAC;oBAClC,MAAM;gBACR,KAAK,aAAa;oBAChB,MAAM,GAAG,QAAQ,CAAC;oBAClB,IAAI,GAAG,QAAQ,UAAU,QAAQ,CAAC;oBAClC,MAAM;gBACR,KAAK,QAAQ;oBACX,MAAM,GAAG,MAAM,CAAC;oBAChB,IAAI,GAAG,QAAQ,UAAU,SAAS,CAAC;oBACnC,MAAM;gBACR;oBACE,MAAM;aACT;SACF;QAED,OAAO;YACL,MAAM,EAAE;gBACN,WAAW;aACZ;YACD,GAAG,EAAE;gBACH,MAAM;gBACN,IAAI;aACL;SACF,CAAC;IACJ,CAAC;IAGD,qBAAqB,CAAC,KAAuB,EAAE,WAAoB,EAAE,MAAgB,EAAE,MAAgB;QACrG,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,MAAM;YAAE,IAAI,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;;YAC7D,IAAI,IAAI,YAAY,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,gBAAgB;QACvD,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACnC,IAAI,IAAI,KAAK,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACtE,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,IAAI,IAAI,IAAI,CAAC;QACrD,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,OAAO,CAAC;QAChB,IAAI,IAAI,WAAW,IAAI,EAAE,CAAC;QAC1B,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAClC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACnD,IAAI,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACzE,IAAI,IAAI,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3B,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACnD,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACpE,IAAI,IAAI,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAC5C,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC;SACjF;aAAM;YACL,IAAK,IAAI,CAAC,UAAkB,CAAC,IAAI,KAAK,kBAAkB,EAAE;gBACxD,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE;oBACzB,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC1C,IAAI,IAAI,iCAAiC,CAAC;iBAC3C;aACF;iBAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,YAAY,oBAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,YAAY,kBAAO,CAAC,EAAE;gBACpH,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1C,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,iCAAiC,CAAC;aAC7E;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChH,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;SACJ;QAED,wBAAwB;QACxB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC/B,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3F,IAAI,IAAI,IAAI,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;QAC9C,IAAI,IAAI,IAAI,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oBAAoB,CAAC,KAAuB;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAC9C,CAAC;IAGD,YAAY,CAAC,KAAuB,EAAE,MAAe;QACnD,mCAAmC;QACnC,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,MAAM,EAAE;YACX,IAAI,IAAI,mBAAmB,IAAI,CAAC,IAAI,EAAE,CAAC;SACxC;aAAM,IAAI,MAAM,KAAK,UAAU,EAAE;YAChC,IAAI,IAAI,YAAY,IAAI,CAAC,IAAI,EAAE,CAAC;SACjC;aAAM,IAAI,MAAM,KAAK,UAAU,EAAE;YAChC,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;SACxB;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE;YAC3B,IAAI,IAAI,GAAG,CAAC;YACZ,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE;gBACpD,IAAI,IAAI,SAAS,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC1E,IAAI,cAAc,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,IAAI,IAAI,IAAI,CAAC;YAClE,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,GAAG,CAAC;SACb;QACD,QAAQ;QACR,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACtB,IAAI,IAAI,GAAG,CAAC;YACZ,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACnC,IAAI,IAAI,KAAK,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;gBACpD,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;oBAAE,IAAI,IAAI,IAAI,CAAC;YACrD,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,GAAG,CAAC;SACb;aAAM;YACL,QAAQ;YACR,IAAI,IAAI,IAAI,CAAC;SACd;QAED,0BAA0B;QAC1B,MAAM,UAAU,GAAyD,IAAI,GAAG,EAAE,CAAC;QACnF,MAAM,uBAAuB,GAAmB,EAAE,CAAC;QACnD,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE;YAC3B,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY,0BAAe,IAAI,CAAC,EAAE,YAAY,qBAAU,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE;gBACxF,IAAI,EAAE,YAAY,qBAAU,EAAE;oBAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACnH,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;wBAC7C,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;qBAChC;oBACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;oBACjG,IAAI,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;wBAC3C,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;qBAC/B;iBACF;qBAAM,IAAI,EAAE,YAAY,0BAAe,EAAE;oBACxC,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE;wBAC3C,MAAM,QAAQ,GACZ,SAAS,CAAC,MAAM,KAAK,CAAC;4BACpB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;4BAC5E,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;wBAC7F,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,cAAc,IAAI,QAAQ,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC9G,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;4BAC7C,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;yBAChC;wBACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,IAAI,QAAQ,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;wBAC5F,IAAI,SAAS,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BAC3C,UAAU,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;yBAC/B;oBACH,CAAC,CAAC,CAAC;iBACJ;aACF;YACD,sBAAsB;YACtB,IAAI,EAAE,YAAY,4BAAiB,EAAE;gBACnC,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;oBACrB,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,CAAC;iBACtD;aACF;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,uBAAuB,CAAC,MAAM,EAAE;YAClC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7C,eAAe;gBACd,IAAI,CAAC,GAAW,EAAE,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAC9D,KAAK,EAAE;wBACL;4BACE,WAAW,EAAE;gCACX,MAAM,EAAE,QAAQ;gCAChB,MAAM,EAAE,IAAI;6BACb;yBACF;qBACF;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;QACD,mBAAmB;QACnB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE;YACzD,IAAI,IAAI,IAAI,CAAC;YACb,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;SACjG;QACD,IAAI,IAAI,KAAK,CAAC;QAEd,cAAc;QACd,IAAI,CAAC,aAAa;YAChB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACnC,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1C,IAAI,IAAI,KAAK,CAAC,gBAAgB,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC1E,IAAI,IAAI,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAClC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;gBAC7B,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;gBACnD,IAAI,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACzE,IAAI,IAAI,KAAK,CAAC;aACf;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBACxB,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;gBACnD,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,IAAI,KAAK,CAAC;aACf;QACH,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE;YACtC,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,iBAAiB,CAAC;YAC9D,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACnD,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACrE,IAAI,UAAU,YAAY,0BAAe,EAAE;gBACzC,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,EAAE;oBAC/D,MAAM,QAAQ,GACZ,SAAS,CAAC,MAAM,KAAK,CAAC;wBACpB,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;wBACpF,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrG,IAAI,QAAQ,KAAK,IAAI,CAAC,IAAI,EAAE;wBAC1B,MAAM,SAAS,GACb,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;wBACpI,kDAAkD;wBAClD,IAAI,SAAS,EAAE,cAAc,IAAI,CAAC,CAAC,SAAS,YAAY,6BAAkB,IAAI,SAAS,CAAC,UAAU,KAAK,MAAM,CAAC,EAAE;4BAC9G,IAAI,IAAI,IAAI,CAAC;4BACb,IAAI,IAAI,SAAS,CAAC,cAAc,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC;yBACrG;6BAAM;4BACL,IAAI,IAAI,KAAK,CAAC;4BACd,MAAM,SAAS,GAAG,SAAS,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;4BACrF,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;yBAC7D;qBACF;gBACH,CAAC,CAAC,CAAC;aACJ;iBAAM,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAE,UAAU,CAAC,KAAa,EAAE,cAAc,EAAE;gBAClH,MAAM,SAAS,GAAQ,UAAU,CAAC,KAAK,CAAC;gBACxC,IAAI,IAAI,KAAK,CAAC;gBACd,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aAC1E;iBAAM,IAAI,UAAU,CAAC,KAAK,EAAE,OAAO,KAAK,cAAc,IAAK,UAAU,CAAC,KAAa,EAAE,cAAc,EAAE,QAAQ,KAAK,oBAAoB,EAAE;gBACvI,MAAM,SAAS,GAAQ,UAAU,CAAC,KAAK,CAAC;gBACxC,IAAI,IAAI,KAAK,CAAC;gBACd,IAAI,IAAI,SAAS,CAAC,WAAW,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aAC1E;iBAAM;gBACL,MAAM,SAAS,GAAQ,UAAU,CAAC,KAAK,CAAC;gBACxC,kDAAkD;gBAClD,IAAI,SAAS,EAAE,cAAc,IAAI,CAAC,CAAC,SAAS,YAAY,6BAAkB,IAAI,SAAS,CAAC,UAAU,KAAK,MAAM,CAAC,EAAE;oBAC9G,IAAI,IAAI,IAAI,CAAC;oBACb,IAAI,IAAI,SAAS,CAAC,cAAc,EAAE,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC;iBACrG;qBAAM;oBACL,IAAI,IAAI,KAAK,CAAC;oBACd,IAAI,SAAS,GAAG,EAAE,CAAC;oBACnB,qBAAqB;oBACrB,IAAI,SAAS,IAAI,SAAS,YAAY,qBAAU,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;wBAChH,SAAS,IAAI,MAAM,CAAC;qBACrB;oBACD,SAAS,IAAI,SAAS,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;oBACnI,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;iBAC7D;aACF;YACD,IAAI,IAAI,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YAC5C,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC;SACjF;aAAM;YACL,0BAA0B;YAC1B,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,YAAY,oBAAS,CAAC,EAAE;gBACpE,IAAI,IAAI,IAAA,mBAAM,EAAC,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1C,IAAI,IAAI,iCAAiC,CAAC;aAC3C;YACD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBAChH,IAAI,IAAI,KAAK,CAAC;YAChB,CAAC,CAAC,CAAC;SACJ;QAED,wBAAwB;QACxB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC/B,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC3F,IAAI,IAAI,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,GAAG,IAAA,mBAAM,EAAC,KAAK,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC;QAC1C,IAAI,MAAM,KAAK,UAAU,EAAE;YACzB,IAAI,IAAI,GAAG,CAAC;SACb;QACD,IAAI,IAAI,IAAI,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,IAAY,EAAE,UAAwC,EAAE,SAAc;QACjF,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAClC,IAAI,UAAU,YAAY,qBAAU,IAAI,CAAC,UAAU,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAEvE,kBAAkB;QAClB,IAAI,SAAS,YAAY,wBAAa,EAAE;YACtC,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC,kBAAkB,EAAE,CAAC;YACtD,OAAO,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,WAAW,IAAI,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;SACzG;QAED,qBAAqB;QACrB,IAAI,SAAS,YAAY,oBAAS,IAAI,SAAS,CAAC,eAAe,KAAK,YAAY,EAAE;YAChF,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,CAAC;YACzC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;YACvE,OAAO,WAAW,CAAC,CAAC,CAAC,cAAc,UAAU,IAAI,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;SAC3G;QAED,2CAA2C;QAC3C,MAAM,gBAAgB,GAAG,UAAU,CAAC,WAAW,CAAC,kBAAkB,CAAqB,CAAC;QACxF,IAAI,gBAAgB,EAAE;YACpB,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;SACvD;QACD,qBAAqB;QACrB,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,WAAW,CAAc,CAAC;QACnE,IAAI,SAAS,EAAE;YACb,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;SAClD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iBAAiB,CAAC,IAAY,EAAE,QAAgB,EAAE,WAAmB;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;YACjC,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG;gBAAE,OAAO,GAAG,WAAW,GAAG,CAAC;YACpD,IAAI,EAAE,KAAK,QAAQ;gBAAE,OAAO,WAAW,CAAC;YAExC,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,EAAE,GAAG,WAAW,GAAG,CAAC,CAAC;YAC7F,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,GAAG,QAAQ,GAAG,EAAE,GAAG,WAAW,GAAG,CAAC,CAAC;YAC7F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,IAAI,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,QAAQ,GAAG,EAAE,IAAI,WAAW,GAAG,CAAC,CAAC;YAC9F,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB,CAAC,IAAY,EAAE,gBAAkC;QAChE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC;QAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACvC,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,KAAK,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,WAAW,CAAC,CAAC;SACzH;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;YAAE,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;QAE3G,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,WAAW,CAAC,kBAAkB,CAAqB,CAAC;QACpG,IAAI,sBAAsB,EAAE;YAC1B,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;SACtD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,mBAAmB,CAAC,IAAY,EAAE,SAAoB;QACpD,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,OAAO,CAAU,CAAC;QACtD,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;QACzD,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;YACnC,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE;gBAC5C,IAAI,OAAO,YAAY,yBAAc,EAAE;oBACrC,IAAI,KAAK,KAAK,CAAC,EAAE;wBACf,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;qBACpC;yBAAM;wBACL,QAAQ,IAAI,GAAG,CAAC;wBAChB,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;qBACpC;iBACF;YACH,CAAC,CAAC,CAAC;YACH,IAAI,QAAQ,EAAE;gBACZ,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,gBAAgB,OAAO,QAAQ,GAAG,CAAC,CAAC;aAC/F;SACF;QACD,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,CAAC,WAAW,CAAc,CAAC;QACpE,IAAI,eAAe,EAAE;YACnB,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;SACxD;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY;QACV,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,eAAe,GAAI,IAAI,CAAC,UAAkB,EAAE,YAAY,EAAE,CAAC;YACjE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACxC,MAAM,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,KAAK,IAAI,UAAU,EAAE;gBACnD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACtB;YACD,IAAI,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9B,IACE,CAAC;gBACC,SAAS;gBACT,YAAY;gBACZ,WAAW;gBACX,cAAc;gBACd,WAAW;gBACX,oBAAoB;gBACpB,cAAc;gBACd,cAAc;gBACd,SAAS;aACV,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACrB,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EACxC;gBACA,SAAS,GAAG,GAAG,SAAS,mBAAmB,CAAC;aAC7C;YACD,IAAI,IAAI,CAAC,OAAO,KAAK,iBAAiB,EAAE;gBACtC,SAAS,GAAG,cAAc,IAAI,CAAC,gBAAgB,SAAS,CAAC;aAC1D;YACD,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,eAAe,GAAI,IAAI,CAAC,UAAkB,EAAE,cAAc,EAAE,CAAC;YACnE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAClE,MAAM,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,KAAK,IAAI,UAAU,EAAE;gBACnD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACtB;YACD,IAAI,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC9B,IACE,CAAC;gBACC,SAAS;gBACT,YAAY;gBACZ,WAAW;gBACX,cAAc;gBACd,WAAW;gBACX,oBAAoB;gBACpB,cAAc;gBACd,cAAc;gBACd,SAAS;aACV,CAAC,QAAQ,CAAC,SAAS,CAAC;gBACrB,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EACxC;gBACA,SAAS,GAAG,GAAG,SAAS,mBAAmB,CAAC;aAC7C;YACD,OAAO,SAAS,CAAC;SAClB;QACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IAED;;;OAGG;IACH,mBAAmB,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;QAClC,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,UAAU,YAAY,kCAAe,EAAE;YAC9C,KAAK,IAAI,cAAc,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;SAC/C;QACD,OAAO,aAAa,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,qBAAqB,IAAI,KAAK,CAAC;IAC1E,CAAC;IAED,gBAAgB;QACd,IAAI,IAAI,GAAG,aAAa,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;QAEpD,MAAM,KAAK,GAAG,IAAA,gCAAmB,EAAC,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI;YACF,IAAI,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;SAClC;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC5B,IAAI,IAAI,EAAE,CAAC;YACX,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SAClB;QACD,IAAI,IAAI,KAAK,CAAC;QACd,OAAO;YACL,IAAI;YACJ,QAAQ,EAAE,IAAI,CAAC,mBAAmB,EAAE;YACpC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,iBAAiB;QAC7B,OAAO;YACL,IAAI,EAAE;gBACJ;oBACE,OAAO,EAAE,OAAO;oBAChB,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,OAAO;iBACd;gBACD;oBACE,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,KAAK;iBACZ;aACF;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kCAAkC,CAAC,IAAuB;QAC9D,IAAI,CAAC,IAAI;YAAE,IAAI,GAAG,IAAI,CAAC;QACvB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,KAAK,CAAC,QAAQ,CACZ,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;YACX,IAAI,IAAI,YAAY,6BAAkB,EAAE;gBACtC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACf;QACH,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,EACd;YACE,IAAI,EAAE,WAAW;YACjB,cAAc,EAAE,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,gBAAgB,CAAC,CAAC;SAC1D,CACF,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE;YACD,IAAK,CAAC,aAAa,EAAE,CAAC;SAC5C;IACH,CAAC;IAED,cAAc;IACd,qBAAqB,CAAC,IAAa;QACjC,IAAI,CAAC,gBAAgB,CACnB,IAAI,wBAAa,CAAC;YAChB,OAAO,EAAE,IAAI;SACd,CAAC,CACH,CAAC;IACJ,CAAC;IAED,IAAI,CAAU;IAEd,OAAO,CAAe;IAEtB,MAAM;QACJ,IAAI,SAAS,GAAG,OAAO,CAAC;QACxB,IAAI,IAAI,CAAC,IAAI;YAAE,SAAS,IAAI,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC;QAC7C,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE;YAC9B,SAAS;SACV,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE;YAC3B,IAAI,EAAE,EAAE,OAAO,KAAK,oBAAoB;gBAAG,EAAyB,CAAC,eAAe,EAAE,CAAC;QACzF,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAChC,CAAC;IAED,WAAW;IACX,SAAS,GAAY,KAAK,CAAC;IAE3B,WAAW;IACX,OAAO,GAAY,KAAK,CAAC;IAEzB,IAAI,QAAQ;QACV,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;SAC1C;QACD,MAAM,OAAO,GAAG;YACd,cAAc,EAAE,OAAO;YACvB,aAAa,EAAE,OAAO;YACtB,WAAW,EAAE,OAAO;YACpB,YAAY,EAAE,OAAO;YACrB,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,SAAS;SACnB,CAAC;QACF,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;QAC1B,OAAO,UAAU,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,EAAE;YACrD,MAAM,IAAI,GAAI,OAAe,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC;YAClE,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvB,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;SACpC;QACD,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,wBAAwB;IACxB,iBAAiB,CAAC,IAAa;QAC7B,IAAI,IAAI,CAAC,UAAU,YAAY,oBAAS,EAAE;YACxC,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;gBAClC,MAAM,eAAe,GAAG,SAAS,CAAC,2BAA2B,EAAE,CAAC;gBAChE,OAAO,GAAG,eAAe,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;aAC1C;SACF;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,WAAW;IACX,aAAa,GAAiB,EAAE,CAAC;IAEjC,IAAI,gBAAgB;QAClB,MAAM,CAAC,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACpD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,yBAAyB;IACzB,MAAM,CAAC,4BAA4B,CAAC,KAAY;QAC9C,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,YAAY,CAAC;SACrB;QACD,IAAI,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE;YAC7D,uBAAuB;YACvB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;YAClD,IAAI,SAAS,CAAC,aAAa,KAAK,SAAS,IAAI,SAAS,CAAC,QAAQ,KAAK,OAAO,EAAE;gBAC3E,YAAY,GAAG,IAAI,CAAC;aACrB;iBAAM,IAAI,SAAS,CAAC,aAAa,KAAK,WAAW,IAAI,SAAS,CAAC,QAAQ,KAAK,OAAO,EAAE;gBACpF,2CAA2C;gBAC3C,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,SAAS,IAAI,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC;aAClI;SACF;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IAC7F,CAAC;IAED,qBAAqB;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACrF,IAAI,GAAG,EAAE;YACP,MAAM,QAAQ,GAAG,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC;YAChE,OAAO,QAAQ,IAAI,IAAI,CAAC;SACzB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CAKF,CAAA;AAxmEC;IADC,IAAA,qBAAQ,GAAE;gDACoC;AAM/C;IADC,IAAA,qBAAQ,GAAE;yDAC0B;AAMrC;IADC,IAAA,qBAAQ,GAAE;6CACc;AAMzB;IADC,IAAA,qBAAQ,GAAE;oDACqB;AAMhC;IADC,IAAA,qBAAQ,GAAE;oDACqB;AAMhC;IADC,IAAA,qBAAQ,GAAE;6CACc;AAMzB;IADC,IAAA,qBAAQ,EAAC,eAAe,CAAC;sDACe;AAMzC;IADC,IAAA,qBAAQ,GAAE;wDACwE;AAMnF;IADC,IAAA,qBAAQ,EAAC,WAAW,CAAC;mDACc;AAMpC;IADC,IAAA,qBAAQ,EAAC,OAAO,CAAC;+CACQ;AAM1B;IADC,IAAA,qBAAQ,EAAC,QAAQ,CAAC;gDACS;AAM5B;IADC,IAAA,qBAAQ,EAAC,UAAU,CAAC;kDACW;AAMhC;IADC,IAAA,qBAAQ,EAAC,WAAW,CAAC;6CACM;AAM5B;IADC,IAAA,qBAAQ,EAAC,WAAW,CAAC;mDACY;AAg9ClC;IADC,IAAA,0BAAa,GAAE;4DAmDf;AAOD;IADC,IAAA,0BAAa,GAAE;mDAoMf;AA/xDU,eAAe;IAD3B,IAAA,oBAAO,EAAC,IAAI,CAAC;GACD,eAAe,CA6mE3B;AA7mEY,0CAAe;AA+mE5B,kBAAQ,CAAC,eAAe,GAAG,eAAe,CAAC;AAC3C,kBAAe,eAAe,CAAC;AAC/B,mFAAmF;AACnF,gEAAgE;AAChE,uBAAuB;AACvB,mFAAmF"}
1
+ {"version":3,"file":"OverriddenLogic__.js","sourceRoot":"","sources":["../../src/concepts/OverriddenLogic__.ts"],"names":[],"mappings":"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"}