@lcap/nasl 3.3.3-beta.5 → 3.3.3-beta.7

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 (873) hide show
  1. package/out/bak/translator.js +73 -15
  2. package/out/bak/translator.js.map +1 -1
  3. package/out/common/BaseNode.d.ts +11 -0
  4. package/out/common/BaseNode.js +51 -0
  5. package/out/common/BaseNode.js.map +1 -1
  6. package/out/common/index.d.ts +1 -0
  7. package/out/common/index.js +1 -0
  8. package/out/common/index.js.map +1 -1
  9. package/out/common/utils.d.ts +2 -0
  10. package/out/common/utils.js +18 -0
  11. package/out/common/utils.js.map +1 -0
  12. package/out/concepts/Abort__.d.ts +2 -2
  13. package/out/concepts/Abort__.js +6 -2
  14. package/out/concepts/Abort__.js.map +1 -1
  15. package/out/concepts/Anchor__.d.ts +2 -2
  16. package/out/concepts/Anchor__.js +11 -7
  17. package/out/concepts/Anchor__.js.map +1 -1
  18. package/out/concepts/AnonymousFunction__.d.ts +3 -3
  19. package/out/concepts/AnonymousFunction__.js +37 -23
  20. package/out/concepts/AnonymousFunction__.js.map +1 -1
  21. package/out/concepts/App__.js +137 -69
  22. package/out/concepts/App__.js.map +1 -1
  23. package/out/concepts/Argument__.d.ts +2 -2
  24. package/out/concepts/Argument__.js +18 -13
  25. package/out/concepts/Argument__.js.map +1 -1
  26. package/out/concepts/Assignee__.d.ts +2 -2
  27. package/out/concepts/Assignee__.js +33 -22
  28. package/out/concepts/Assignee__.js.map +1 -1
  29. package/out/concepts/AssignmentLine__.d.ts +2 -2
  30. package/out/concepts/AssignmentLine__.js +3 -2
  31. package/out/concepts/AssignmentLine__.js.map +1 -1
  32. package/out/concepts/Assignment__.d.ts +2 -2
  33. package/out/concepts/Assignment__.js +16 -12
  34. package/out/concepts/Assignment__.js.map +1 -1
  35. package/out/concepts/Attribute__.js +6 -3
  36. package/out/concepts/Attribute__.js.map +1 -1
  37. package/out/concepts/AuthLogicForCallInterface__.d.ts +2 -2
  38. package/out/concepts/AuthLogicForCallInterface__.js +62 -78
  39. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  40. package/out/concepts/BackendVariable__.d.ts +5 -8
  41. package/out/concepts/BackendVariable__.js +23 -18
  42. package/out/concepts/BackendVariable__.js.map +1 -1
  43. package/out/concepts/Backend__.d.ts +4 -7
  44. package/out/concepts/Backend__.js +16 -11
  45. package/out/concepts/Backend__.js.map +1 -1
  46. package/out/concepts/BatchAssignment__.d.ts +2 -2
  47. package/out/concepts/BatchAssignment__.js +30 -22
  48. package/out/concepts/BatchAssignment__.js.map +1 -1
  49. package/out/concepts/BinaryExpression__.d.ts +2 -2
  50. package/out/concepts/BinaryExpression__.js +30 -18
  51. package/out/concepts/BinaryExpression__.js.map +1 -1
  52. package/out/concepts/BindAttribute__.d.ts +10 -4
  53. package/out/concepts/BindAttribute__.js +144 -43
  54. package/out/concepts/BindAttribute__.js.map +1 -1
  55. package/out/concepts/BindDirective__.d.ts +2 -2
  56. package/out/concepts/BindDirective__.js +16 -11
  57. package/out/concepts/BindDirective__.js.map +1 -1
  58. package/out/concepts/BindEvent__.d.ts +4 -7
  59. package/out/concepts/BindEvent__.js +32 -24
  60. package/out/concepts/BindEvent__.js.map +1 -1
  61. package/out/concepts/BindStyle__.d.ts +2 -2
  62. package/out/concepts/BindStyle__.js +15 -10
  63. package/out/concepts/BindStyle__.js.map +1 -1
  64. package/out/concepts/BooleanLiteral__.d.ts +2 -2
  65. package/out/concepts/BooleanLiteral__.js +2 -2
  66. package/out/concepts/BooleanLiteral__.js.map +1 -1
  67. package/out/concepts/CallAuthInterface__.d.ts +2 -2
  68. package/out/concepts/CallAuthInterface__.js +36 -31
  69. package/out/concepts/CallAuthInterface__.js.map +1 -1
  70. package/out/concepts/CallConnector__.d.ts +2 -2
  71. package/out/concepts/CallConnector__.js +25 -23
  72. package/out/concepts/CallConnector__.js.map +1 -1
  73. package/out/concepts/CallFunction__.d.ts +2 -2
  74. package/out/concepts/CallFunction__.js +31 -22
  75. package/out/concepts/CallFunction__.js.map +1 -1
  76. package/out/concepts/CallInterface__.d.ts +2 -2
  77. package/out/concepts/CallInterface__.js +16 -21
  78. package/out/concepts/CallInterface__.js.map +1 -1
  79. package/out/concepts/CallLogic__.d.ts +2 -3
  80. package/out/concepts/CallLogic__.js +47 -50
  81. package/out/concepts/CallLogic__.js.map +1 -1
  82. package/out/concepts/CallQueryComponent__.d.ts +4 -4
  83. package/out/concepts/CallQueryComponent__.js +50 -42
  84. package/out/concepts/CallQueryComponent__.js.map +1 -1
  85. package/out/concepts/Comment__.d.ts +2 -2
  86. package/out/concepts/Comment__.js +3 -2
  87. package/out/concepts/Comment__.js.map +1 -1
  88. package/out/concepts/CompletionProperty__.js +6 -3
  89. package/out/concepts/CompletionProperty__.js.map +1 -1
  90. package/out/concepts/ConfigGroup__.js +6 -3
  91. package/out/concepts/ConfigGroup__.js.map +1 -1
  92. package/out/concepts/ConfigProperty__.d.ts +4 -7
  93. package/out/concepts/ConfigProperty__.js +18 -13
  94. package/out/concepts/ConfigProperty__.js.map +1 -1
  95. package/out/concepts/Configuration__.js +6 -3
  96. package/out/concepts/Configuration__.js.map +1 -1
  97. package/out/concepts/Connection__.d.ts +4 -7
  98. package/out/concepts/Connection__.js +12 -8
  99. package/out/concepts/Connection__.js.map +1 -1
  100. package/out/concepts/Connector__.js +30 -15
  101. package/out/concepts/Connector__.js.map +1 -1
  102. package/out/concepts/Constant__.d.ts +3 -3
  103. package/out/concepts/Constant__.js +18 -13
  104. package/out/concepts/Constant__.js.map +1 -1
  105. package/out/concepts/DataSource__.d.ts +4 -7
  106. package/out/concepts/DataSource__.js +13 -9
  107. package/out/concepts/DataSource__.js.map +1 -1
  108. package/out/concepts/Destination__.d.ts +3 -3
  109. package/out/concepts/Destination__.js +35 -29
  110. package/out/concepts/Destination__.js.map +1 -1
  111. package/out/concepts/End__.d.ts +2 -2
  112. package/out/concepts/End__.js +17 -13
  113. package/out/concepts/End__.js.map +1 -1
  114. package/out/concepts/EntityIndex__.d.ts +2 -2
  115. package/out/concepts/EntityIndex__.js +4 -3
  116. package/out/concepts/EntityIndex__.js.map +1 -1
  117. package/out/concepts/EntityProperty__.d.ts +2 -2
  118. package/out/concepts/EntityProperty__.js +22 -15
  119. package/out/concepts/EntityProperty__.js.map +1 -1
  120. package/out/concepts/Entity__.d.ts +4 -7
  121. package/out/concepts/Entity__.js +29 -21
  122. package/out/concepts/Entity__.js.map +1 -1
  123. package/out/concepts/EnumItem__.d.ts +2 -2
  124. package/out/concepts/EnumItem__.js +4 -3
  125. package/out/concepts/EnumItem__.js.map +1 -1
  126. package/out/concepts/Enum__.d.ts +4 -7
  127. package/out/concepts/Enum__.js +16 -11
  128. package/out/concepts/Enum__.js.map +1 -1
  129. package/out/concepts/Event__.js +6 -3
  130. package/out/concepts/Event__.js.map +1 -1
  131. package/out/concepts/ExternalDestination__.d.ts +2 -2
  132. package/out/concepts/ExternalDestination__.js +13 -8
  133. package/out/concepts/ExternalDestination__.js.map +1 -1
  134. package/out/concepts/ForEachStatement__.d.ts +2 -2
  135. package/out/concepts/ForEachStatement__.js +26 -18
  136. package/out/concepts/ForEachStatement__.js.map +1 -1
  137. package/out/concepts/FrontendLibrary__.js +18 -10
  138. package/out/concepts/FrontendLibrary__.js.map +1 -1
  139. package/out/concepts/Frontend__.d.ts +4 -7
  140. package/out/concepts/Frontend__.js +37 -21
  141. package/out/concepts/Frontend__.js.map +1 -1
  142. package/out/concepts/Function__.d.ts +3 -3
  143. package/out/concepts/Function__.js +52 -33
  144. package/out/concepts/Function__.js.map +1 -1
  145. package/out/concepts/Identifier__.d.ts +2 -2
  146. package/out/concepts/Identifier__.js +23 -18
  147. package/out/concepts/Identifier__.js.map +1 -1
  148. package/out/concepts/IfStatement__.d.ts +2 -2
  149. package/out/concepts/IfStatement__.js +18 -13
  150. package/out/concepts/IfStatement__.js.map +1 -1
  151. package/out/concepts/Integration__.js +17 -9
  152. package/out/concepts/Integration__.js.map +1 -1
  153. package/out/concepts/InterfaceParam__.d.ts +2 -2
  154. package/out/concepts/InterfaceParam__.js +12 -8
  155. package/out/concepts/InterfaceParam__.js.map +1 -1
  156. package/out/concepts/Interface__.d.ts +4 -7
  157. package/out/concepts/Interface__.js +44 -33
  158. package/out/concepts/Interface__.js.map +1 -1
  159. package/out/concepts/JSBlock__.d.ts +2 -2
  160. package/out/concepts/JSBlock__.js +3 -2
  161. package/out/concepts/JSBlock__.js.map +1 -1
  162. package/out/concepts/JavaLogic__.d.ts +2 -2
  163. package/out/concepts/JavaLogic__.js +6 -2
  164. package/out/concepts/JavaLogic__.js.map +1 -1
  165. package/out/concepts/LogicItem__.d.ts +2 -2
  166. package/out/concepts/LogicItem__.js +7 -3
  167. package/out/concepts/LogicItem__.js.map +1 -1
  168. package/out/concepts/Logic__.d.ts +8 -11
  169. package/out/concepts/Logic__.js +141 -136
  170. package/out/concepts/Logic__.js.map +1 -1
  171. package/out/concepts/MatchCase__.d.ts +2 -2
  172. package/out/concepts/MatchCase__.js +35 -27
  173. package/out/concepts/MatchCase__.js.map +1 -1
  174. package/out/concepts/Match__.d.ts +2 -2
  175. package/out/concepts/Match__.js +29 -24
  176. package/out/concepts/Match__.js.map +1 -1
  177. package/out/concepts/MemberExpression__.d.ts +2 -2
  178. package/out/concepts/MemberExpression__.js +34 -27
  179. package/out/concepts/MemberExpression__.js.map +1 -1
  180. package/out/concepts/MetadataType__.d.ts +4 -7
  181. package/out/concepts/MetadataType__.js +23 -15
  182. package/out/concepts/MetadataType__.js.map +1 -1
  183. package/out/concepts/MsgTriggerEvent__.js +6 -3
  184. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  185. package/out/concepts/MsgTriggerLauncher__.js +6 -3
  186. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  187. package/out/concepts/Namespace__.js +66 -33
  188. package/out/concepts/Namespace__.js.map +1 -1
  189. package/out/concepts/NewComposite__.d.ts +6 -6
  190. package/out/concepts/NewComposite__.js +95 -82
  191. package/out/concepts/NewComposite__.js.map +1 -1
  192. package/out/concepts/NewList__.d.ts +5 -5
  193. package/out/concepts/NewList__.js +42 -32
  194. package/out/concepts/NewList__.js.map +1 -1
  195. package/out/concepts/NewMap__.d.ts +4 -4
  196. package/out/concepts/NewMap__.js +51 -41
  197. package/out/concepts/NewMap__.js.map +1 -1
  198. package/out/concepts/New__.d.ts +2 -2
  199. package/out/concepts/New__.js +3 -2
  200. package/out/concepts/New__.js.map +1 -1
  201. package/out/concepts/NullLiteral__.d.ts +2 -2
  202. package/out/concepts/NullLiteral__.js +2 -2
  203. package/out/concepts/NullLiteral__.js.map +1 -1
  204. package/out/concepts/NumericLiteral__.d.ts +2 -2
  205. package/out/concepts/NumericLiteral__.js +12 -7
  206. package/out/concepts/NumericLiteral__.js.map +1 -1
  207. package/out/concepts/OqlQueryComponent__.d.ts +2 -2
  208. package/out/concepts/OqlQueryComponent__.js +22 -17
  209. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  210. package/out/concepts/OverriddenLogic__.d.ts +8 -11
  211. package/out/concepts/OverriddenLogic__.js +135 -130
  212. package/out/concepts/OverriddenLogic__.js.map +1 -1
  213. package/out/concepts/Param__.d.ts +3 -3
  214. package/out/concepts/Param__.js +29 -24
  215. package/out/concepts/Param__.js.map +1 -1
  216. package/out/concepts/ProcessComponent__.js +12 -6
  217. package/out/concepts/ProcessComponent__.js.map +1 -1
  218. package/out/concepts/ProcessElement__.d.ts +2 -2
  219. package/out/concepts/ProcessElement__.js +92 -66
  220. package/out/concepts/ProcessElement__.js.map +1 -1
  221. package/out/concepts/ProcessOutcome__.d.ts +2 -1
  222. package/out/concepts/ProcessOutcome__.js +5 -4
  223. package/out/concepts/ProcessOutcome__.js.map +1 -1
  224. package/out/concepts/ProcessOutcomes__.d.ts +2 -1
  225. package/out/concepts/ProcessOutcomes__.js +6 -5
  226. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  227. package/out/concepts/Process__.d.ts +4 -7
  228. package/out/concepts/Process__.js +51 -34
  229. package/out/concepts/Process__.js.map +1 -1
  230. package/out/concepts/QueryAggregateExpression__.d.ts +2 -2
  231. package/out/concepts/QueryAggregateExpression__.js +8 -5
  232. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  233. package/out/concepts/QueryFieldExpression__.d.ts +2 -2
  234. package/out/concepts/QueryFieldExpression__.js +5 -4
  235. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  236. package/out/concepts/QueryFromExpression__.d.ts +2 -2
  237. package/out/concepts/QueryFromExpression__.js +14 -9
  238. package/out/concepts/QueryFromExpression__.js.map +1 -1
  239. package/out/concepts/QueryGroupByExpression__.d.ts +2 -1
  240. package/out/concepts/QueryGroupByExpression__.js +12 -8
  241. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  242. package/out/concepts/QueryJoinExpression__.d.ts +2 -2
  243. package/out/concepts/QueryJoinExpression__.js +18 -13
  244. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  245. package/out/concepts/QueryLimitExpression__.d.ts +2 -2
  246. package/out/concepts/QueryLimitExpression__.js +12 -8
  247. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  248. package/out/concepts/QueryOrderByExpression__.d.ts +2 -2
  249. package/out/concepts/QueryOrderByExpression__.js +12 -8
  250. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  251. package/out/concepts/QuerySelectExpression__.js +6 -3
  252. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  253. package/out/concepts/Return__.d.ts +3 -3
  254. package/out/concepts/Return__.js +21 -16
  255. package/out/concepts/Return__.js.map +1 -1
  256. package/out/concepts/Role__.d.ts +4 -7
  257. package/out/concepts/Role__.js +7 -6
  258. package/out/concepts/Role__.js.map +1 -1
  259. package/out/concepts/SelectMembers__.d.ts +2 -2
  260. package/out/concepts/SelectMembers__.js +9 -5
  261. package/out/concepts/SelectMembers__.js.map +1 -1
  262. package/out/concepts/Slot__.js +6 -3
  263. package/out/concepts/Slot__.js.map +1 -1
  264. package/out/concepts/SqlQueryComponent__.d.ts +2 -2
  265. package/out/concepts/SqlQueryComponent__.js +18 -13
  266. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  267. package/out/concepts/Start__.d.ts +2 -2
  268. package/out/concepts/Start__.js +2 -2
  269. package/out/concepts/Start__.js.map +1 -1
  270. package/out/concepts/StringInterpolation__.d.ts +2 -2
  271. package/out/concepts/StringInterpolation__.js +13 -8
  272. package/out/concepts/StringInterpolation__.js.map +1 -1
  273. package/out/concepts/StringLiteral__.d.ts +2 -2
  274. package/out/concepts/StringLiteral__.js +4 -3
  275. package/out/concepts/StringLiteral__.js.map +1 -1
  276. package/out/concepts/StructureProperty__.d.ts +2 -2
  277. package/out/concepts/StructureProperty__.js +14 -10
  278. package/out/concepts/StructureProperty__.js.map +1 -1
  279. package/out/concepts/Structure__.d.ts +4 -7
  280. package/out/concepts/Structure__.js +22 -14
  281. package/out/concepts/Structure__.js.map +1 -1
  282. package/out/concepts/SwitchCase__.d.ts +2 -2
  283. package/out/concepts/SwitchCase__.js +18 -13
  284. package/out/concepts/SwitchCase__.js.map +1 -1
  285. package/out/concepts/SwitchStatement__.d.ts +2 -2
  286. package/out/concepts/SwitchStatement__.js +14 -9
  287. package/out/concepts/SwitchStatement__.js.map +1 -1
  288. package/out/concepts/TriggerEvent__.js +6 -3
  289. package/out/concepts/TriggerEvent__.js.map +1 -1
  290. package/out/concepts/TriggerLauncher__.d.ts +4 -7
  291. package/out/concepts/TriggerLauncher__.js +7 -6
  292. package/out/concepts/TriggerLauncher__.js.map +1 -1
  293. package/out/concepts/TypeAnnotation__.d.ts +2 -2
  294. package/out/concepts/TypeAnnotation__.js +61 -29
  295. package/out/concepts/TypeAnnotation__.js.map +1 -1
  296. package/out/concepts/TypeParam__.d.ts +2 -2
  297. package/out/concepts/TypeParam__.js +4 -3
  298. package/out/concepts/TypeParam__.js.map +1 -1
  299. package/out/concepts/UnaryExpression__.d.ts +2 -2
  300. package/out/concepts/UnaryExpression__.js +18 -10
  301. package/out/concepts/UnaryExpression__.js.map +1 -1
  302. package/out/concepts/Unparsed__.d.ts +2 -1
  303. package/out/concepts/Unparsed__.js +2 -2
  304. package/out/concepts/Unparsed__.js.map +1 -1
  305. package/out/concepts/ValidationRule__.d.ts +2 -2
  306. package/out/concepts/ValidationRule__.js +17 -12
  307. package/out/concepts/ValidationRule__.js.map +1 -1
  308. package/out/concepts/Variable__.d.ts +5 -8
  309. package/out/concepts/Variable__.js +23 -18
  310. package/out/concepts/Variable__.js.map +1 -1
  311. package/out/concepts/ViewElement__.d.ts +7 -6
  312. package/out/concepts/ViewElement__.js +139 -101
  313. package/out/concepts/ViewElement__.js.map +1 -1
  314. package/out/concepts/View__.d.ts +8 -9
  315. package/out/concepts/View__.js +73 -62
  316. package/out/concepts/View__.js.map +1 -1
  317. package/out/concepts/WhileStatement__.d.ts +2 -2
  318. package/out/concepts/WhileStatement__.js +9 -7
  319. package/out/concepts/WhileStatement__.js.map +1 -1
  320. package/out/manager/diagnostic.d.ts +1 -1
  321. package/out/manager/diagnostic.js +2 -3
  322. package/out/manager/diagnostic.js.map +1 -1
  323. package/out/natural/transformTSCode.d.ts +2 -2
  324. package/out/server/naslServer.d.ts +46 -55
  325. package/out/server/naslServer.js +302 -449
  326. package/out/server/naslServer.js.map +1 -1
  327. package/out/server/translator.js +1 -1
  328. package/out/server/translator.js.map +1 -1
  329. package/out/templator/genCreateBlock.js +4 -4
  330. package/out/templator/genCreateBlock.js.map +1 -1
  331. package/out/templator/genCurdEditMultipleKeyBlock.js +6 -6
  332. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  333. package/out/templator/genCurdMultipleKeyBlock.js +4 -4
  334. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  335. package/out/templator/genEditTableBlock.js +2 -2
  336. package/out/templator/genEditTableBlock.js.map +1 -1
  337. package/out/templator/genUpdateBlock.js +4 -4
  338. package/out/templator/genUpdateBlock.js.map +1 -1
  339. package/out/translator/types.d.ts +16 -3
  340. package/out/translator/utils.d.ts +19 -1
  341. package/out/translator/utils.js +71 -2
  342. package/out/translator/utils.js.map +1 -1
  343. package/out/utils/time-slicing/constant.d.ts +35 -0
  344. package/out/utils/time-slicing/constant.js +40 -0
  345. package/out/utils/time-slicing/constant.js.map +1 -0
  346. package/out/utils/time-slicing/controller.d.ts +53 -0
  347. package/out/utils/time-slicing/controller.js +280 -0
  348. package/out/utils/time-slicing/controller.js.map +1 -0
  349. package/out/utils/time-slicing/index.d.ts +5 -0
  350. package/out/utils/time-slicing/index.js +26 -0
  351. package/out/utils/time-slicing/index.js.map +1 -0
  352. package/out/utils/time-slicing/page-state.d.ts +2 -0
  353. package/out/utils/time-slicing/page-state.js +14 -0
  354. package/out/utils/time-slicing/page-state.js.map +1 -0
  355. package/out/utils/time-slicing/performance.d.ts +11 -0
  356. package/out/utils/time-slicing/performance.js +51 -0
  357. package/out/utils/time-slicing/performance.js.map +1 -0
  358. package/out/utils/time-slicing/runner.d.ts +12 -0
  359. package/out/utils/time-slicing/runner.js +53 -0
  360. package/out/utils/time-slicing/runner.js.map +1 -0
  361. package/out/utils/time-slicing/tool.d.ts +24 -0
  362. package/out/utils/time-slicing/tool.js +47 -0
  363. package/out/utils/time-slicing/tool.js.map +1 -0
  364. package/out/utils/time-slicing/utils.d.ts +62 -0
  365. package/out/utils/time-slicing/utils.js +47 -0
  366. package/out/utils/time-slicing/utils.js.map +1 -0
  367. package/out/utils/time-slicing/wrapper.d.ts +18 -0
  368. package/out/utils/time-slicing/wrapper.js +55 -0
  369. package/out/utils/time-slicing/wrapper.js.map +1 -0
  370. package/out/utils/types.d.ts +7 -0
  371. package/package.json +1 -1
  372. package/src/bak/translator.js +75 -16
  373. package/src/common/BaseNode.ts +67 -6
  374. package/src/common/index.ts +1 -0
  375. package/src/common/utils.ts +17 -0
  376. package/src/concepts/Abort__.ts +12 -3
  377. package/src/concepts/Anchor__.ts +21 -8
  378. package/src/concepts/AnonymousFunction__.ts +45 -31
  379. package/src/concepts/App__.ts +137 -69
  380. package/src/concepts/Argument__.ts +31 -14
  381. package/src/concepts/Assignee__.ts +44 -23
  382. package/src/concepts/AssignmentLine__.ts +13 -3
  383. package/src/concepts/Assignment__.ts +26 -14
  384. package/src/concepts/Attribute__.ts +6 -3
  385. package/src/concepts/AuthLogicForCallInterface__.ts +69 -87
  386. package/src/concepts/BackendVariable__.ts +34 -19
  387. package/src/concepts/Backend__.ts +33 -12
  388. package/src/concepts/BatchAssignment__.ts +41 -23
  389. package/src/concepts/BinaryExpression__.ts +40 -20
  390. package/src/concepts/BindAttribute__.ts +151 -49
  391. package/src/concepts/BindDirective__.ts +25 -12
  392. package/src/concepts/BindEvent__.ts +43 -32
  393. package/src/concepts/BindStyle__.ts +24 -11
  394. package/src/concepts/BooleanLiteral__.ts +11 -3
  395. package/src/concepts/CallAuthInterface__.ts +45 -34
  396. package/src/concepts/CallConnector__.ts +34 -26
  397. package/src/concepts/CallFunction__.ts +34 -23
  398. package/src/concepts/CallInterface__.ts +25 -30
  399. package/src/concepts/CallLogic__.ts +60 -67
  400. package/src/concepts/CallQueryComponent__.ts +60 -52
  401. package/src/concepts/Comment__.ts +13 -3
  402. package/src/concepts/CompletionProperty__.ts +6 -3
  403. package/src/concepts/ConfigGroup__.ts +6 -3
  404. package/src/concepts/ConfigProperty__.ts +28 -15
  405. package/src/concepts/Configuration__.ts +6 -3
  406. package/src/concepts/Connection__.ts +28 -9
  407. package/src/concepts/Connector__.ts +30 -15
  408. package/src/concepts/Constant__.ts +28 -14
  409. package/src/concepts/DataSource__.ts +22 -10
  410. package/src/concepts/Destination__.ts +45 -36
  411. package/src/concepts/End__.ts +24 -15
  412. package/src/concepts/EntityIndex__.ts +13 -4
  413. package/src/concepts/EntityProperty__.ts +33 -17
  414. package/src/concepts/Entity__.ts +40 -25
  415. package/src/concepts/EnumItem__.ts +13 -4
  416. package/src/concepts/Enum__.ts +27 -13
  417. package/src/concepts/Event__.ts +6 -3
  418. package/src/concepts/ExternalDestination__.ts +22 -10
  419. package/src/concepts/ForEachStatement__.ts +36 -20
  420. package/src/concepts/FrontendLibrary__.ts +18 -10
  421. package/src/concepts/Frontend__.ts +48 -22
  422. package/src/concepts/Function__.ts +60 -36
  423. package/src/concepts/Identifier__.ts +32 -23
  424. package/src/concepts/IfStatement__.ts +28 -17
  425. package/src/concepts/Integration__.ts +17 -9
  426. package/src/concepts/InterfaceParam__.ts +22 -9
  427. package/src/concepts/Interface__.ts +55 -37
  428. package/src/concepts/JSBlock__.ts +12 -3
  429. package/src/concepts/JavaLogic__.ts +13 -3
  430. package/src/concepts/LogicItem__.ts +13 -4
  431. package/src/concepts/Logic__.ts +159 -149
  432. package/src/concepts/MatchCase__.ts +45 -32
  433. package/src/concepts/Match__.ts +39 -28
  434. package/src/concepts/MemberExpression__.ts +43 -28
  435. package/src/concepts/MetadataType__.ts +34 -16
  436. package/src/concepts/MsgTriggerEvent__.ts +6 -3
  437. package/src/concepts/MsgTriggerLauncher__.ts +6 -3
  438. package/src/concepts/Namespace__.ts +66 -33
  439. package/src/concepts/NewComposite__.ts +106 -87
  440. package/src/concepts/NewList__.ts +52 -38
  441. package/src/concepts/NewMap__.ts +61 -48
  442. package/src/concepts/New__.ts +13 -3
  443. package/src/concepts/NullLiteral__.ts +11 -3
  444. package/src/concepts/NumericLiteral__.ts +21 -8
  445. package/src/concepts/OqlQueryComponent__.ts +32 -21
  446. package/src/concepts/OverriddenLogic__.ts +153 -143
  447. package/src/concepts/Param__.ts +48 -34
  448. package/src/concepts/ProcessComponent__.ts +12 -6
  449. package/src/concepts/ProcessElement__.ts +102 -76
  450. package/src/concepts/ProcessOutcome__.ts +16 -8
  451. package/src/concepts/ProcessOutcomes__.ts +17 -9
  452. package/src/concepts/Process__.ts +62 -41
  453. package/src/concepts/QueryAggregateExpression__.ts +17 -6
  454. package/src/concepts/QueryFieldExpression__.ts +14 -5
  455. package/src/concepts/QueryFromExpression__.ts +24 -10
  456. package/src/concepts/QueryGroupByExpression__.ts +20 -9
  457. package/src/concepts/QueryJoinExpression__.ts +28 -14
  458. package/src/concepts/QueryLimitExpression__.ts +22 -9
  459. package/src/concepts/QueryOrderByExpression__.ts +23 -9
  460. package/src/concepts/QuerySelectExpression__.ts +6 -3
  461. package/src/concepts/Return__.ts +31 -17
  462. package/src/concepts/Role__.ts +17 -8
  463. package/src/concepts/SelectMembers__.ts +19 -6
  464. package/src/concepts/Slot__.ts +6 -3
  465. package/src/concepts/SqlQueryComponent__.ts +28 -14
  466. package/src/concepts/Start__.ts +11 -3
  467. package/src/concepts/StringInterpolation__.ts +16 -8
  468. package/src/concepts/StringLiteral__.ts +13 -4
  469. package/src/concepts/StructureProperty__.ts +24 -11
  470. package/src/concepts/Structure__.ts +33 -16
  471. package/src/concepts/SwitchCase__.ts +28 -17
  472. package/src/concepts/SwitchStatement__.ts +23 -10
  473. package/src/concepts/TriggerEvent__.ts +6 -3
  474. package/src/concepts/TriggerLauncher__.ts +17 -7
  475. package/src/concepts/TypeAnnotation__.ts +46 -30
  476. package/src/concepts/TypeParam__.ts +13 -4
  477. package/src/concepts/UnaryExpression__.ts +28 -12
  478. package/src/concepts/Unparsed__.ts +10 -3
  479. package/src/concepts/ValidationRule__.ts +27 -20
  480. package/src/concepts/Variable__.ts +34 -19
  481. package/src/concepts/ViewElement__.ts +165 -125
  482. package/src/concepts/View__.ts +108 -89
  483. package/src/concepts/WhileStatement__.ts +19 -10
  484. package/src/concepts/types__.ts +1 -1
  485. package/src/manager/diagnostic.ts +3 -4
  486. package/src/server/naslServer.ts +676 -729
  487. package/src/server/translator.ts +1 -1
  488. package/src/templator/genCreateBlock.ts +4 -4
  489. package/src/templator/genCurdEditMultipleKeyBlock.ts +6 -6
  490. package/src/templator/genCurdMultipleKeyBlock.ts +4 -4
  491. package/src/templator/genEditTableBlock.ts +2 -2
  492. package/src/templator/genUpdateBlock.ts +4 -4
  493. package/src/translator/types.ts +20 -5
  494. package/src/translator/utils.ts +78 -4
  495. package/src/utils/time-slicing/constant.ts +37 -0
  496. package/src/utils/time-slicing/controller.ts +342 -0
  497. package/src/utils/time-slicing/index.ts +6 -0
  498. package/src/utils/time-slicing/page-state.ts +12 -0
  499. package/src/utils/time-slicing/performance.ts +56 -0
  500. package/src/utils/time-slicing/runner.ts +54 -0
  501. package/src/utils/time-slicing/tool.ts +45 -0
  502. package/src/utils/time-slicing/utils.ts +90 -0
  503. package/src/utils/time-slicing/wrapper.ts +58 -0
  504. package/src/utils/types.ts +9 -0
  505. package/test/concepts/anonymous-function/__snapshots__/toEmbeddedTS.spec.ts.snap +8 -0
  506. package/test/concepts/anonymous-function/__snapshots__/toJS.spec.ts.snap +3 -0
  507. package/test/concepts/anonymous-function/__snapshots__/toVue.spec.ts.snap +6 -0
  508. package/test/concepts/anonymous-function/constant.ts +5 -0
  509. package/test/concepts/anonymous-function/fixtures/simple.json +85 -0
  510. package/test/concepts/anonymous-function/toEmbeddedTS.spec.ts +15 -0
  511. package/test/concepts/anonymous-function/toJS.spec.ts +14 -0
  512. package/test/concepts/anonymous-function/toVue.spec.ts +14 -0
  513. package/test/concepts/assignment/__snapshots__/toEmbeddedTS.spec.ts.snap +21 -0
  514. package/test/concepts/assignment/__snapshots__/toJS.spec.ts.snap +9 -0
  515. package/test/concepts/assignment/__snapshots__/toVue.spec.ts.snap +21 -0
  516. package/test/concepts/assignment/constant.ts +5 -0
  517. package/test/concepts/assignment/fixtures/both-space.json +4 -0
  518. package/test/concepts/assignment/fixtures/left-space.json +14 -0
  519. package/test/concepts/assignment/fixtures/right-space.json +8 -0
  520. package/test/concepts/assignment/fixtures/simple.json +12 -0
  521. package/test/concepts/assignment/toEmbeddedTS.spec.ts +15 -0
  522. package/test/concepts/assignment/toJS.spec.ts +14 -0
  523. package/test/concepts/assignment/toVue.spec.ts +14 -0
  524. package/test/concepts/batch-assignment/__snapshots__/toEmbeddedTS.spec.ts.snap +28 -0
  525. package/test/concepts/batch-assignment/__snapshots__/toJS.spec.ts.snap +13 -0
  526. package/test/concepts/batch-assignment/__snapshots__/toVue.spec.ts.snap +14 -0
  527. package/test/concepts/batch-assignment/constant.ts +5 -0
  528. package/test/concepts/batch-assignment/fixtures/muli-var-muli-value.json +144 -0
  529. package/test/concepts/batch-assignment/fixtures/simple-var-simple-value.json +36 -0
  530. package/test/concepts/batch-assignment/toEmbeddedTS.spec.ts +15 -0
  531. package/test/concepts/batch-assignment/toJS.spec.ts +14 -0
  532. package/test/concepts/batch-assignment/toVue.spec.ts +14 -0
  533. package/test/concepts/binary-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +25 -0
  534. package/test/concepts/binary-expression/__snapshots__/toJS.spec.ts.snap +17 -0
  535. package/test/concepts/binary-expression/__snapshots__/toVue.spec.ts.snap +19 -0
  536. package/test/concepts/binary-expression/constant.ts +5 -0
  537. package/test/concepts/binary-expression/fixtures/constant-nested.json +36 -0
  538. package/test/concepts/binary-expression/fixtures/constant-simple.json +12 -0
  539. package/test/concepts/binary-expression/fixtures/variable-nested.json +69 -0
  540. package/test/concepts/binary-expression/toEmbeddedTS.spec.ts +15 -0
  541. package/test/concepts/binary-expression/toJS.spec.ts +14 -0
  542. package/test/concepts/binary-expression/toVue.spec.ts +14 -0
  543. package/test/concepts/boolean-literal/toEmbeddedTS.spec.ts +4 -3
  544. package/test/concepts/boolean-literal/toJS.spec.ts +2 -2
  545. package/test/concepts/boolean-literal/toVue.spec.ts +2 -2
  546. package/test/concepts/call-function/toEmbeddedTS.spec.ts +2 -1
  547. package/test/concepts/call-interface/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -3
  548. package/test/concepts/call-interface/toEmbeddedTS.spec.ts +2 -1
  549. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +3 -3
  550. package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  551. package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +2 -1
  552. package/test/concepts/call-logic/toEmbeddedTS.spec.ts +2 -1
  553. package/test/concepts/data-source/__snapshots__/toEmbeddedTS.spec.ts.snap +8 -0
  554. package/test/concepts/data-source/__snapshots__/toEmbeddedTSFile.spec.ts.snap +12 -0
  555. package/test/concepts/data-source/constant.ts +5 -0
  556. package/test/concepts/data-source/fixtures/normal.json +289 -0
  557. package/test/concepts/data-source/toEmbeddedTS.spec.ts +15 -0
  558. package/test/concepts/data-source/toEmbeddedTSFile.spec.ts +16 -0
  559. package/test/concepts/entity/__snapshots__/toEmbeddedTS.spec.ts.snap +74 -0
  560. package/test/concepts/entity/__snapshots__/toEmbeddedTSFile.spec.ts.snap +3 -0
  561. package/test/concepts/entity/constant.ts +5 -0
  562. package/test/concepts/entity/fixtures/normal.json +469 -0
  563. package/test/concepts/entity/toEmbeddedTS.spec.ts +15 -0
  564. package/test/concepts/entity/toEmbeddedTSFile.spec.ts +14 -0
  565. package/test/concepts/identifier/toEmbeddedTS.spec.ts +4 -3
  566. package/test/concepts/identifier/toJS.spec.ts +2 -2
  567. package/test/concepts/identifier/toVue.spec.ts +2 -2
  568. package/test/concepts/match/toEmbeddedTS.spec.ts +2 -1
  569. package/test/concepts/member-expression/toEmbeddedTS.spec.ts +2 -1
  570. package/test/concepts/member-expression/toVue.spec.ts +2 -2
  571. package/test/concepts/null-literal/toEmbeddedTS.spec.ts +4 -3
  572. package/test/concepts/null-literal/toJS.spec.ts +2 -2
  573. package/test/concepts/null-literal/toVue.spec.ts +2 -2
  574. package/test/concepts/numeric-literal/toEmbeddedTS.spec.ts +4 -3
  575. package/test/concepts/numeric-literal/toJS.spec.ts +2 -2
  576. package/test/concepts/numeric-literal/toVue.spec.ts +2 -2
  577. package/test/concepts/string-literal/toEmbeddedTS.spec.ts +4 -3
  578. package/test/concepts/string-literal/toJS.spec.ts +2 -2
  579. package/test/concepts/string-literal/toVue.spec.ts +2 -2
  580. package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +2 -1
  581. package/test/concepts/validation-rule/validation-rule.spec.ts +2 -1
  582. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +0 -2
  583. package/test/concepts/view-element/toEmbeddedTS.spec.ts +2 -1
  584. package/test/time-slicing/runner.spec.ts +28 -0
  585. package/test/time-slicing/time-slicing-nodejs.spec.ts +27 -0
  586. package/test/time-slicing/utils.ts +7 -0
  587. package/test/time-slicing/wrapper.spec.ts +92 -0
  588. package/ts-worker/lib/tsserver.js +10 -1
  589. package/ts-worker/package.json +1 -0
  590. package/ts-worker/src/index.js +13 -12
  591. package/ts-worker/webpack.config.js +1 -1
  592. package/.nyc_output/f2d14ce8-876a-4dc0-9aaf-e51d08d081ca.json +0 -1
  593. package/.nyc_output/processinfo/f2d14ce8-876a-4dc0-9aaf-e51d08d081ca.json +0 -1
  594. package/.nyc_output/processinfo/index.json +0 -1
  595. package/coverage/base.css +0 -224
  596. package/coverage/block-navigation.js +0 -87
  597. package/coverage/favicon.png +0 -0
  598. package/coverage/index.html +0 -446
  599. package/coverage/prettify.css +0 -1
  600. package/coverage/prettify.js +0 -2
  601. package/coverage/sort-arrow-sprite.png +0 -0
  602. package/coverage/sorter.js +0 -196
  603. package/coverage/src/automate/engine/index.html +0 -116
  604. package/coverage/src/automate/engine/utils.js.html +0 -1414
  605. package/coverage/src/bak/index.html +0 -116
  606. package/coverage/src/bak/translator.js.html +0 -619
  607. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +0 -175
  608. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +0 -169
  609. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +0 -1243
  610. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +0 -145
  611. package/coverage/src/breakpoint/generator/index.html +0 -176
  612. package/coverage/src/breakpoint/generator/index.ts.html +0 -508
  613. package/coverage/src/breakpoint/index.html +0 -116
  614. package/coverage/src/breakpoint/index.ts.html +0 -94
  615. package/coverage/src/breakpoint/shared/constants.ts.html +0 -430
  616. package/coverage/src/breakpoint/shared/index.html +0 -176
  617. package/coverage/src/breakpoint/shared/index.ts.html +0 -94
  618. package/coverage/src/breakpoint/shared/operations.ts.html +0 -160
  619. package/coverage/src/breakpoint/shared/socket.ts.html +0 -1225
  620. package/coverage/src/breakpoint/shared/utils.ts.html +0 -961
  621. package/coverage/src/breakpoint/store/core.ts.html +0 -1600
  622. package/coverage/src/breakpoint/store/dock.ts.html +0 -583
  623. package/coverage/src/breakpoint/store/index.html +0 -146
  624. package/coverage/src/breakpoint/store/index.ts.html +0 -91
  625. package/coverage/src/common/BaseNode.ts.html +0 -3868
  626. package/coverage/src/common/Command.ts.html +0 -310
  627. package/coverage/src/common/EventEmitter.ts.html +0 -370
  628. package/coverage/src/common/Messager.ts.html +0 -820
  629. package/coverage/src/common/asyncFuncMap.ts.html +0 -127
  630. package/coverage/src/common/index.html +0 -191
  631. package/coverage/src/common/index.ts.html +0 -94
  632. package/coverage/src/concepts/Abort__.ts.html +0 -328
  633. package/coverage/src/concepts/Anchor__.ts.html +0 -604
  634. package/coverage/src/concepts/AnonymousFunction__.ts.html +0 -1951
  635. package/coverage/src/concepts/App__.ts.html +0 -13252
  636. package/coverage/src/concepts/Argument__.ts.html +0 -910
  637. package/coverage/src/concepts/Assignee__.ts.html +0 -2236
  638. package/coverage/src/concepts/AssignmentLine__.ts.html +0 -409
  639. package/coverage/src/concepts/Assignment__.ts.html +0 -1078
  640. package/coverage/src/concepts/Attribute__.ts.html +0 -733
  641. package/coverage/src/concepts/AuthInterface__.ts.html +0 -367
  642. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +0 -1984
  643. package/coverage/src/concepts/AuthLogic__.ts.html +0 -781
  644. package/coverage/src/concepts/BackendVariable__.ts.html +0 -1483
  645. package/coverage/src/concepts/Backend__.ts.html +0 -1165
  646. package/coverage/src/concepts/BatchAssignment__.ts.html +0 -3250
  647. package/coverage/src/concepts/BinaryExpression__.ts.html +0 -1336
  648. package/coverage/src/concepts/BindAttribute__.ts.html +0 -3679
  649. package/coverage/src/concepts/BindDirective__.ts.html +0 -1921
  650. package/coverage/src/concepts/BindEvent__.ts.html +0 -3232
  651. package/coverage/src/concepts/BindStyle__.ts.html +0 -1612
  652. package/coverage/src/concepts/BooleanLiteral__.ts.html +0 -403
  653. package/coverage/src/concepts/CallAuthInterface__.ts.html +0 -1615
  654. package/coverage/src/concepts/CallConnector__.ts.html +0 -868
  655. package/coverage/src/concepts/CallFunction__.ts.html +0 -1966
  656. package/coverage/src/concepts/CallInterface__.ts.html +0 -2614
  657. package/coverage/src/concepts/CallLogic__.ts.html +0 -4420
  658. package/coverage/src/concepts/CallQueryComponent__.ts.html +0 -5308
  659. package/coverage/src/concepts/Comment__.ts.html +0 -376
  660. package/coverage/src/concepts/CompletionProperty__.ts.html +0 -925
  661. package/coverage/src/concepts/ConfigGroup__.ts.html +0 -1105
  662. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +0 -424
  663. package/coverage/src/concepts/ConfigProperty__.ts.html +0 -1348
  664. package/coverage/src/concepts/Configuration__.ts.html +0 -1027
  665. package/coverage/src/concepts/Connection__.ts.html +0 -1360
  666. package/coverage/src/concepts/ConnectorTrigger__.ts.html +0 -595
  667. package/coverage/src/concepts/Connector__.ts.html +0 -4255
  668. package/coverage/src/concepts/Constant__.ts.html +0 -913
  669. package/coverage/src/concepts/DataSource__.ts.html +0 -1771
  670. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +0 -331
  671. package/coverage/src/concepts/Destination__.ts.html +0 -2563
  672. package/coverage/src/concepts/End__.ts.html +0 -433
  673. package/coverage/src/concepts/EntityIndex__.ts.html +0 -787
  674. package/coverage/src/concepts/EntityProperty__.ts.html +0 -2620
  675. package/coverage/src/concepts/Entity__.ts.html +0 -2872
  676. package/coverage/src/concepts/EnumItem__.ts.html +0 -535
  677. package/coverage/src/concepts/Enum__.ts.html +0 -1192
  678. package/coverage/src/concepts/Event__.ts.html +0 -1084
  679. package/coverage/src/concepts/ExternalDestination__.ts.html +0 -1033
  680. package/coverage/src/concepts/ForEachStatement__.ts.html +0 -1819
  681. package/coverage/src/concepts/FrontendLibrary__.ts.html +0 -1711
  682. package/coverage/src/concepts/FrontendVariable__.ts.html +0 -292
  683. package/coverage/src/concepts/Frontend__.ts.html +0 -3961
  684. package/coverage/src/concepts/Function__.ts.html +0 -3514
  685. package/coverage/src/concepts/Identifier__.ts.html +0 -1057
  686. package/coverage/src/concepts/IfStatement__.ts.html +0 -1486
  687. package/coverage/src/concepts/Integration__.ts.html +0 -1228
  688. package/coverage/src/concepts/InterfaceParam__.ts.html +0 -1087
  689. package/coverage/src/concepts/Interface__.ts.html +0 -3394
  690. package/coverage/src/concepts/JSBlock__.ts.html +0 -406
  691. package/coverage/src/concepts/JavaLogic__.ts.html +0 -460
  692. package/coverage/src/concepts/LogicItem__.ts.html +0 -1144
  693. package/coverage/src/concepts/Logic__.ts.html +0 -7078
  694. package/coverage/src/concepts/MatchCase__.ts.html +0 -2641
  695. package/coverage/src/concepts/Match__.ts.html +0 -2323
  696. package/coverage/src/concepts/MemberExpression__.ts.html +0 -1666
  697. package/coverage/src/concepts/MicroApp__.ts.html +0 -436
  698. package/coverage/src/concepts/Module__.ts.html +0 -9220
  699. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +0 -1045
  700. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +0 -1018
  701. package/coverage/src/concepts/Namespace__.ts.html +0 -7942
  702. package/coverage/src/concepts/NewComposite__.ts.html +0 -4684
  703. package/coverage/src/concepts/NewList__.ts.html +0 -1567
  704. package/coverage/src/concepts/NewMap__.ts.html +0 -2275
  705. package/coverage/src/concepts/New__.ts.html +0 -289
  706. package/coverage/src/concepts/NullLiteral__.ts.html +0 -349
  707. package/coverage/src/concepts/NumericLiteral__.ts.html +0 -661
  708. package/coverage/src/concepts/OqlQueryComponent__.ts.html +0 -1123
  709. package/coverage/src/concepts/OverriddenLogic__.ts.html +0 -6817
  710. package/coverage/src/concepts/Param__.ts.html +0 -1609
  711. package/coverage/src/concepts/Point__.ts.html +0 -331
  712. package/coverage/src/concepts/ProcessComponent__.ts.html +0 -1666
  713. package/coverage/src/concepts/ProcessElement__.ts.html +0 -5884
  714. package/coverage/src/concepts/ProcessOutcome__.ts.html +0 -352
  715. package/coverage/src/concepts/ProcessOutcomes__.ts.html +0 -343
  716. package/coverage/src/concepts/Process__.ts.html +0 -4768
  717. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +0 -568
  718. package/coverage/src/concepts/QueryFieldExpression__.ts.html +0 -583
  719. package/coverage/src/concepts/QueryFromExpression__.ts.html +0 -910
  720. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +0 -559
  721. package/coverage/src/concepts/QueryJoinExpression__.ts.html +0 -1567
  722. package/coverage/src/concepts/QueryLimitExpression__.ts.html +0 -637
  723. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +0 -679
  724. package/coverage/src/concepts/QuerySelectExpression__.ts.html +0 -1714
  725. package/coverage/src/concepts/Rect__.ts.html +0 -373
  726. package/coverage/src/concepts/Return__.ts.html +0 -1258
  727. package/coverage/src/concepts/Role__.ts.html +0 -601
  728. package/coverage/src/concepts/SelectMembers__.ts.html +0 -1246
  729. package/coverage/src/concepts/Slot__.ts.html +0 -628
  730. package/coverage/src/concepts/SqlQueryComponent__.ts.html +0 -964
  731. package/coverage/src/concepts/Start__.ts.html +0 -304
  732. package/coverage/src/concepts/StringInterpolation__.ts.html +0 -1078
  733. package/coverage/src/concepts/StringLiteral__.ts.html +0 -490
  734. package/coverage/src/concepts/StructureProperty__.ts.html +0 -1102
  735. package/coverage/src/concepts/Structure__.ts.html +0 -2053
  736. package/coverage/src/concepts/SwitchCase__.ts.html +0 -1063
  737. package/coverage/src/concepts/SwitchStatement__.ts.html +0 -826
  738. package/coverage/src/concepts/Theme__.ts.html +0 -358
  739. package/coverage/src/concepts/Transactional__.ts.html +0 -628
  740. package/coverage/src/concepts/TriggerEvent__.ts.html +0 -1012
  741. package/coverage/src/concepts/TriggerLauncher__.ts.html +0 -775
  742. package/coverage/src/concepts/TypeAnnotation__.ts.html +0 -3583
  743. package/coverage/src/concepts/TypeParam__.ts.html +0 -301
  744. package/coverage/src/concepts/UnaryExpression__.ts.html +0 -640
  745. package/coverage/src/concepts/Unparsed__.ts.html +0 -382
  746. package/coverage/src/concepts/UseComponent__.ts.html +0 -331
  747. package/coverage/src/concepts/ValidationRule__.ts.html +0 -1840
  748. package/coverage/src/concepts/Variable__.ts.html +0 -1435
  749. package/coverage/src/concepts/ViewBlock__.ts.html +0 -352
  750. package/coverage/src/concepts/ViewComponent__.ts.html +0 -4180
  751. package/coverage/src/concepts/ViewElement__.ts.html +0 -8557
  752. package/coverage/src/concepts/View__.ts.html +0 -8278
  753. package/coverage/src/concepts/WhileStatement__.ts.html +0 -991
  754. package/coverage/src/concepts/basics/stdlib/index.html +0 -341
  755. package/coverage/src/concepts/basics/stdlib/index.ts.html +0 -208
  756. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +0 -565
  757. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +0 -517
  758. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +0 -226
  759. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +0 -172
  760. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +0 -214
  761. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +0 -145
  762. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +0 -589
  763. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +0 -214
  764. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +0 -229
  765. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +0 -268
  766. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +0 -1999
  767. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +0 -3259
  768. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +0 -6787
  769. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +0 -1768
  770. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +0 -163
  771. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +0 -121
  772. package/coverage/src/concepts/basics/types/index.html +0 -131
  773. package/coverage/src/concepts/basics/types/index.ts.html +0 -160
  774. package/coverage/src/concepts/index.html +0 -1961
  775. package/coverage/src/concepts/index.ts.html +0 -103
  776. package/coverage/src/concepts/index__.ts.html +0 -451
  777. package/coverage/src/config.ts.html +0 -325
  778. package/coverage/src/decorators/index.html +0 -131
  779. package/coverage/src/decorators/index.ts.html +0 -574
  780. package/coverage/src/decorators/promise.ts.html +0 -169
  781. package/coverage/src/eventBus.ts.html +0 -100
  782. package/coverage/src/generator/compileComponent.ts.html +0 -142
  783. package/coverage/src/generator/genBundleFiles.ts.html +0 -1828
  784. package/coverage/src/generator/genHash.ts.html +0 -124
  785. package/coverage/src/generator/genMetaData.ts.html +0 -1042
  786. package/coverage/src/generator/genReleaseBody.ts.html +0 -1282
  787. package/coverage/src/generator/icestark.ts.html +0 -220
  788. package/coverage/src/generator/index.html +0 -266
  789. package/coverage/src/generator/index.ts.html +0 -106
  790. package/coverage/src/generator/microApp.ts.html +0 -172
  791. package/coverage/src/generator/permission.ts.html +0 -1036
  792. package/coverage/src/generator/qiankun.ts.html +0 -232
  793. package/coverage/src/generator/styleReplacer.ts.html +0 -199
  794. package/coverage/src/index.html +0 -146
  795. package/coverage/src/index.ts.html +0 -121
  796. package/coverage/src/manager/diagnostic.ts.html +0 -442
  797. package/coverage/src/manager/index.html +0 -131
  798. package/coverage/src/manager/stepRecorder.ts.html +0 -457
  799. package/coverage/src/sentry/index.html +0 -116
  800. package/coverage/src/sentry/index.ts.html +0 -676
  801. package/coverage/src/server/createUiTs.ts.html +0 -919
  802. package/coverage/src/server/entity2LogicNamespace.ts.html +0 -1294
  803. package/coverage/src/server/event.js.html +0 -526
  804. package/coverage/src/server/extendBaseNode.ts.html +0 -1762
  805. package/coverage/src/server/formatTsUtils.ts.html +0 -2689
  806. package/coverage/src/server/getConnector.ts.html +0 -316
  807. package/coverage/src/server/getExtensionModules.ts.html +0 -178
  808. package/coverage/src/server/getFunctions.ts.html +0 -133
  809. package/coverage/src/server/getInterfaces.ts.html +0 -229
  810. package/coverage/src/server/getLogging.ts.html +0 -100
  811. package/coverage/src/server/getLogics.ts.html +0 -1363
  812. package/coverage/src/server/getMemberIdentifier.ts.html +0 -1606
  813. package/coverage/src/server/getProcessComponents.ts.html +0 -112
  814. package/coverage/src/server/getProcesses.ts.html +0 -2023
  815. package/coverage/src/server/getValidates.ts.html +0 -115
  816. package/coverage/src/server/index.html +0 -401
  817. package/coverage/src/server/index.ts.html +0 -229
  818. package/coverage/src/server/naslServer.ts.html +0 -14290
  819. package/coverage/src/server/naslStdlibMap.ts.html +0 -241
  820. package/coverage/src/server/process2LogicNamespace.ts.html +0 -454
  821. package/coverage/src/server/translator.ts.html +0 -2566
  822. package/coverage/src/service/creator/add.configs.js.html +0 -379
  823. package/coverage/src/service/creator/errHandles.js.html +0 -322
  824. package/coverage/src/service/creator/index.html +0 -146
  825. package/coverage/src/service/creator/index.js.html +0 -352
  826. package/coverage/src/service/datasource/api.js.html +0 -118
  827. package/coverage/src/service/datasource/index.html +0 -131
  828. package/coverage/src/service/datasource/index.js.html +0 -103
  829. package/coverage/src/service/logic/api.js.html +0 -109
  830. package/coverage/src/service/logic/index.html +0 -131
  831. package/coverage/src/service/logic/index.js.html +0 -103
  832. package/coverage/src/service/storage/api.js.html +0 -202
  833. package/coverage/src/service/storage/index.html +0 -206
  834. package/coverage/src/service/storage/index.ts.html +0 -103
  835. package/coverage/src/service/storage/init.ts.html +0 -2710
  836. package/coverage/src/service/storage/jsoner.ts.html +0 -502
  837. package/coverage/src/service/storage/map.ts.html +0 -256
  838. package/coverage/src/service/storage/service.ts.html +0 -331
  839. package/coverage/src/service/storage/storagePoint.ts.html +0 -304
  840. package/coverage/src/templator/genCallComponentLogic.ts.html +0 -163
  841. package/coverage/src/templator/genCreateBlock.ts.html +0 -1093
  842. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +0 -1609
  843. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +0 -2254
  844. package/coverage/src/templator/genEditTableBlock.ts.html +0 -955
  845. package/coverage/src/templator/genEnumSelectBlock.ts.html +0 -178
  846. package/coverage/src/templator/genGetBlock.ts.html +0 -451
  847. package/coverage/src/templator/genGridViewBlock.ts.html +0 -1114
  848. package/coverage/src/templator/genListViewBlock.ts.html +0 -475
  849. package/coverage/src/templator/genQueryComponent.ts.html +0 -1207
  850. package/coverage/src/templator/genSelectBlock.ts.html +0 -1243
  851. package/coverage/src/templator/genTableBlock.ts.html +0 -910
  852. package/coverage/src/templator/genUpdateBlock.ts.html +0 -1192
  853. package/coverage/src/templator/index.html +0 -326
  854. package/coverage/src/templator/index.ts.html +0 -154
  855. package/coverage/src/templator/utils.ts.html +0 -1861
  856. package/coverage/src/translator/constant.ts.html +0 -106
  857. package/coverage/src/translator/index.html +0 -146
  858. package/coverage/src/translator/index.ts.html +0 -94
  859. package/coverage/src/translator/utils.ts.html +0 -397
  860. package/coverage/src/utils/cookie.ts.html +0 -265
  861. package/coverage/src/utils/env.ts.html +0 -91
  862. package/coverage/src/utils/index.html +0 -236
  863. package/coverage/src/utils/index.ts.html +0 -655
  864. package/coverage/src/utils/logger.ts.html +0 -145
  865. package/coverage/src/utils/sortTsString.ts.html +0 -187
  866. package/coverage/src/utils/string.ts.html +0 -400
  867. package/coverage/src/utils/time-slicing.ts.html +0 -412
  868. package/coverage/src/utils/traverse.ts.html +0 -568
  869. package/coverage/src/utils/window.ts.html +0 -112
  870. package/out/utils/time-slicing.d.ts +0 -41
  871. package/out/utils/time-slicing.js +0 -82
  872. package/out/utils/time-slicing.js.map +0 -1
  873. package/src/utils/time-slicing.ts +0 -111
@@ -1,3868 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/common/BaseNode.ts</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../prettify.css" />
9
- <link rel="stylesheet" href="../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">src/common</a> BaseNode.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">37.54% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>193/514</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">29.27% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>113/386</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">30.76% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>28/91</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">37.7% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>181/480</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line low'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a>
335
- <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a>
337
- <a name='L272'></a><a href='#L272'>272</a>
338
- <a name='L273'></a><a href='#L273'>273</a>
339
- <a name='L274'></a><a href='#L274'>274</a>
340
- <a name='L275'></a><a href='#L275'>275</a>
341
- <a name='L276'></a><a href='#L276'>276</a>
342
- <a name='L277'></a><a href='#L277'>277</a>
343
- <a name='L278'></a><a href='#L278'>278</a>
344
- <a name='L279'></a><a href='#L279'>279</a>
345
- <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
347
- <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a>
359
- <a name='L294'></a><a href='#L294'>294</a>
360
- <a name='L295'></a><a href='#L295'>295</a>
361
- <a name='L296'></a><a href='#L296'>296</a>
362
- <a name='L297'></a><a href='#L297'>297</a>
363
- <a name='L298'></a><a href='#L298'>298</a>
364
- <a name='L299'></a><a href='#L299'>299</a>
365
- <a name='L300'></a><a href='#L300'>300</a>
366
- <a name='L301'></a><a href='#L301'>301</a>
367
- <a name='L302'></a><a href='#L302'>302</a>
368
- <a name='L303'></a><a href='#L303'>303</a>
369
- <a name='L304'></a><a href='#L304'>304</a>
370
- <a name='L305'></a><a href='#L305'>305</a>
371
- <a name='L306'></a><a href='#L306'>306</a>
372
- <a name='L307'></a><a href='#L307'>307</a>
373
- <a name='L308'></a><a href='#L308'>308</a>
374
- <a name='L309'></a><a href='#L309'>309</a>
375
- <a name='L310'></a><a href='#L310'>310</a>
376
- <a name='L311'></a><a href='#L311'>311</a>
377
- <a name='L312'></a><a href='#L312'>312</a>
378
- <a name='L313'></a><a href='#L313'>313</a>
379
- <a name='L314'></a><a href='#L314'>314</a>
380
- <a name='L315'></a><a href='#L315'>315</a>
381
- <a name='L316'></a><a href='#L316'>316</a>
382
- <a name='L317'></a><a href='#L317'>317</a>
383
- <a name='L318'></a><a href='#L318'>318</a>
384
- <a name='L319'></a><a href='#L319'>319</a>
385
- <a name='L320'></a><a href='#L320'>320</a>
386
- <a name='L321'></a><a href='#L321'>321</a>
387
- <a name='L322'></a><a href='#L322'>322</a>
388
- <a name='L323'></a><a href='#L323'>323</a>
389
- <a name='L324'></a><a href='#L324'>324</a>
390
- <a name='L325'></a><a href='#L325'>325</a>
391
- <a name='L326'></a><a href='#L326'>326</a>
392
- <a name='L327'></a><a href='#L327'>327</a>
393
- <a name='L328'></a><a href='#L328'>328</a>
394
- <a name='L329'></a><a href='#L329'>329</a>
395
- <a name='L330'></a><a href='#L330'>330</a>
396
- <a name='L331'></a><a href='#L331'>331</a>
397
- <a name='L332'></a><a href='#L332'>332</a>
398
- <a name='L333'></a><a href='#L333'>333</a>
399
- <a name='L334'></a><a href='#L334'>334</a>
400
- <a name='L335'></a><a href='#L335'>335</a>
401
- <a name='L336'></a><a href='#L336'>336</a>
402
- <a name='L337'></a><a href='#L337'>337</a>
403
- <a name='L338'></a><a href='#L338'>338</a>
404
- <a name='L339'></a><a href='#L339'>339</a>
405
- <a name='L340'></a><a href='#L340'>340</a>
406
- <a name='L341'></a><a href='#L341'>341</a>
407
- <a name='L342'></a><a href='#L342'>342</a>
408
- <a name='L343'></a><a href='#L343'>343</a>
409
- <a name='L344'></a><a href='#L344'>344</a>
410
- <a name='L345'></a><a href='#L345'>345</a>
411
- <a name='L346'></a><a href='#L346'>346</a>
412
- <a name='L347'></a><a href='#L347'>347</a>
413
- <a name='L348'></a><a href='#L348'>348</a>
414
- <a name='L349'></a><a href='#L349'>349</a>
415
- <a name='L350'></a><a href='#L350'>350</a>
416
- <a name='L351'></a><a href='#L351'>351</a>
417
- <a name='L352'></a><a href='#L352'>352</a>
418
- <a name='L353'></a><a href='#L353'>353</a>
419
- <a name='L354'></a><a href='#L354'>354</a>
420
- <a name='L355'></a><a href='#L355'>355</a>
421
- <a name='L356'></a><a href='#L356'>356</a>
422
- <a name='L357'></a><a href='#L357'>357</a>
423
- <a name='L358'></a><a href='#L358'>358</a>
424
- <a name='L359'></a><a href='#L359'>359</a>
425
- <a name='L360'></a><a href='#L360'>360</a>
426
- <a name='L361'></a><a href='#L361'>361</a>
427
- <a name='L362'></a><a href='#L362'>362</a>
428
- <a name='L363'></a><a href='#L363'>363</a>
429
- <a name='L364'></a><a href='#L364'>364</a>
430
- <a name='L365'></a><a href='#L365'>365</a>
431
- <a name='L366'></a><a href='#L366'>366</a>
432
- <a name='L367'></a><a href='#L367'>367</a>
433
- <a name='L368'></a><a href='#L368'>368</a>
434
- <a name='L369'></a><a href='#L369'>369</a>
435
- <a name='L370'></a><a href='#L370'>370</a>
436
- <a name='L371'></a><a href='#L371'>371</a>
437
- <a name='L372'></a><a href='#L372'>372</a>
438
- <a name='L373'></a><a href='#L373'>373</a>
439
- <a name='L374'></a><a href='#L374'>374</a>
440
- <a name='L375'></a><a href='#L375'>375</a>
441
- <a name='L376'></a><a href='#L376'>376</a>
442
- <a name='L377'></a><a href='#L377'>377</a>
443
- <a name='L378'></a><a href='#L378'>378</a>
444
- <a name='L379'></a><a href='#L379'>379</a>
445
- <a name='L380'></a><a href='#L380'>380</a>
446
- <a name='L381'></a><a href='#L381'>381</a>
447
- <a name='L382'></a><a href='#L382'>382</a>
448
- <a name='L383'></a><a href='#L383'>383</a>
449
- <a name='L384'></a><a href='#L384'>384</a>
450
- <a name='L385'></a><a href='#L385'>385</a>
451
- <a name='L386'></a><a href='#L386'>386</a>
452
- <a name='L387'></a><a href='#L387'>387</a>
453
- <a name='L388'></a><a href='#L388'>388</a>
454
- <a name='L389'></a><a href='#L389'>389</a>
455
- <a name='L390'></a><a href='#L390'>390</a>
456
- <a name='L391'></a><a href='#L391'>391</a>
457
- <a name='L392'></a><a href='#L392'>392</a>
458
- <a name='L393'></a><a href='#L393'>393</a>
459
- <a name='L394'></a><a href='#L394'>394</a>
460
- <a name='L395'></a><a href='#L395'>395</a>
461
- <a name='L396'></a><a href='#L396'>396</a>
462
- <a name='L397'></a><a href='#L397'>397</a>
463
- <a name='L398'></a><a href='#L398'>398</a>
464
- <a name='L399'></a><a href='#L399'>399</a>
465
- <a name='L400'></a><a href='#L400'>400</a>
466
- <a name='L401'></a><a href='#L401'>401</a>
467
- <a name='L402'></a><a href='#L402'>402</a>
468
- <a name='L403'></a><a href='#L403'>403</a>
469
- <a name='L404'></a><a href='#L404'>404</a>
470
- <a name='L405'></a><a href='#L405'>405</a>
471
- <a name='L406'></a><a href='#L406'>406</a>
472
- <a name='L407'></a><a href='#L407'>407</a>
473
- <a name='L408'></a><a href='#L408'>408</a>
474
- <a name='L409'></a><a href='#L409'>409</a>
475
- <a name='L410'></a><a href='#L410'>410</a>
476
- <a name='L411'></a><a href='#L411'>411</a>
477
- <a name='L412'></a><a href='#L412'>412</a>
478
- <a name='L413'></a><a href='#L413'>413</a>
479
- <a name='L414'></a><a href='#L414'>414</a>
480
- <a name='L415'></a><a href='#L415'>415</a>
481
- <a name='L416'></a><a href='#L416'>416</a>
482
- <a name='L417'></a><a href='#L417'>417</a>
483
- <a name='L418'></a><a href='#L418'>418</a>
484
- <a name='L419'></a><a href='#L419'>419</a>
485
- <a name='L420'></a><a href='#L420'>420</a>
486
- <a name='L421'></a><a href='#L421'>421</a>
487
- <a name='L422'></a><a href='#L422'>422</a>
488
- <a name='L423'></a><a href='#L423'>423</a>
489
- <a name='L424'></a><a href='#L424'>424</a>
490
- <a name='L425'></a><a href='#L425'>425</a>
491
- <a name='L426'></a><a href='#L426'>426</a>
492
- <a name='L427'></a><a href='#L427'>427</a>
493
- <a name='L428'></a><a href='#L428'>428</a>
494
- <a name='L429'></a><a href='#L429'>429</a>
495
- <a name='L430'></a><a href='#L430'>430</a>
496
- <a name='L431'></a><a href='#L431'>431</a>
497
- <a name='L432'></a><a href='#L432'>432</a>
498
- <a name='L433'></a><a href='#L433'>433</a>
499
- <a name='L434'></a><a href='#L434'>434</a>
500
- <a name='L435'></a><a href='#L435'>435</a>
501
- <a name='L436'></a><a href='#L436'>436</a>
502
- <a name='L437'></a><a href='#L437'>437</a>
503
- <a name='L438'></a><a href='#L438'>438</a>
504
- <a name='L439'></a><a href='#L439'>439</a>
505
- <a name='L440'></a><a href='#L440'>440</a>
506
- <a name='L441'></a><a href='#L441'>441</a>
507
- <a name='L442'></a><a href='#L442'>442</a>
508
- <a name='L443'></a><a href='#L443'>443</a>
509
- <a name='L444'></a><a href='#L444'>444</a>
510
- <a name='L445'></a><a href='#L445'>445</a>
511
- <a name='L446'></a><a href='#L446'>446</a>
512
- <a name='L447'></a><a href='#L447'>447</a>
513
- <a name='L448'></a><a href='#L448'>448</a>
514
- <a name='L449'></a><a href='#L449'>449</a>
515
- <a name='L450'></a><a href='#L450'>450</a>
516
- <a name='L451'></a><a href='#L451'>451</a>
517
- <a name='L452'></a><a href='#L452'>452</a>
518
- <a name='L453'></a><a href='#L453'>453</a>
519
- <a name='L454'></a><a href='#L454'>454</a>
520
- <a name='L455'></a><a href='#L455'>455</a>
521
- <a name='L456'></a><a href='#L456'>456</a>
522
- <a name='L457'></a><a href='#L457'>457</a>
523
- <a name='L458'></a><a href='#L458'>458</a>
524
- <a name='L459'></a><a href='#L459'>459</a>
525
- <a name='L460'></a><a href='#L460'>460</a>
526
- <a name='L461'></a><a href='#L461'>461</a>
527
- <a name='L462'></a><a href='#L462'>462</a>
528
- <a name='L463'></a><a href='#L463'>463</a>
529
- <a name='L464'></a><a href='#L464'>464</a>
530
- <a name='L465'></a><a href='#L465'>465</a>
531
- <a name='L466'></a><a href='#L466'>466</a>
532
- <a name='L467'></a><a href='#L467'>467</a>
533
- <a name='L468'></a><a href='#L468'>468</a>
534
- <a name='L469'></a><a href='#L469'>469</a>
535
- <a name='L470'></a><a href='#L470'>470</a>
536
- <a name='L471'></a><a href='#L471'>471</a>
537
- <a name='L472'></a><a href='#L472'>472</a>
538
- <a name='L473'></a><a href='#L473'>473</a>
539
- <a name='L474'></a><a href='#L474'>474</a>
540
- <a name='L475'></a><a href='#L475'>475</a>
541
- <a name='L476'></a><a href='#L476'>476</a>
542
- <a name='L477'></a><a href='#L477'>477</a>
543
- <a name='L478'></a><a href='#L478'>478</a>
544
- <a name='L479'></a><a href='#L479'>479</a>
545
- <a name='L480'></a><a href='#L480'>480</a>
546
- <a name='L481'></a><a href='#L481'>481</a>
547
- <a name='L482'></a><a href='#L482'>482</a>
548
- <a name='L483'></a><a href='#L483'>483</a>
549
- <a name='L484'></a><a href='#L484'>484</a>
550
- <a name='L485'></a><a href='#L485'>485</a>
551
- <a name='L486'></a><a href='#L486'>486</a>
552
- <a name='L487'></a><a href='#L487'>487</a>
553
- <a name='L488'></a><a href='#L488'>488</a>
554
- <a name='L489'></a><a href='#L489'>489</a>
555
- <a name='L490'></a><a href='#L490'>490</a>
556
- <a name='L491'></a><a href='#L491'>491</a>
557
- <a name='L492'></a><a href='#L492'>492</a>
558
- <a name='L493'></a><a href='#L493'>493</a>
559
- <a name='L494'></a><a href='#L494'>494</a>
560
- <a name='L495'></a><a href='#L495'>495</a>
561
- <a name='L496'></a><a href='#L496'>496</a>
562
- <a name='L497'></a><a href='#L497'>497</a>
563
- <a name='L498'></a><a href='#L498'>498</a>
564
- <a name='L499'></a><a href='#L499'>499</a>
565
- <a name='L500'></a><a href='#L500'>500</a>
566
- <a name='L501'></a><a href='#L501'>501</a>
567
- <a name='L502'></a><a href='#L502'>502</a>
568
- <a name='L503'></a><a href='#L503'>503</a>
569
- <a name='L504'></a><a href='#L504'>504</a>
570
- <a name='L505'></a><a href='#L505'>505</a>
571
- <a name='L506'></a><a href='#L506'>506</a>
572
- <a name='L507'></a><a href='#L507'>507</a>
573
- <a name='L508'></a><a href='#L508'>508</a>
574
- <a name='L509'></a><a href='#L509'>509</a>
575
- <a name='L510'></a><a href='#L510'>510</a>
576
- <a name='L511'></a><a href='#L511'>511</a>
577
- <a name='L512'></a><a href='#L512'>512</a>
578
- <a name='L513'></a><a href='#L513'>513</a>
579
- <a name='L514'></a><a href='#L514'>514</a>
580
- <a name='L515'></a><a href='#L515'>515</a>
581
- <a name='L516'></a><a href='#L516'>516</a>
582
- <a name='L517'></a><a href='#L517'>517</a>
583
- <a name='L518'></a><a href='#L518'>518</a>
584
- <a name='L519'></a><a href='#L519'>519</a>
585
- <a name='L520'></a><a href='#L520'>520</a>
586
- <a name='L521'></a><a href='#L521'>521</a>
587
- <a name='L522'></a><a href='#L522'>522</a>
588
- <a name='L523'></a><a href='#L523'>523</a>
589
- <a name='L524'></a><a href='#L524'>524</a>
590
- <a name='L525'></a><a href='#L525'>525</a>
591
- <a name='L526'></a><a href='#L526'>526</a>
592
- <a name='L527'></a><a href='#L527'>527</a>
593
- <a name='L528'></a><a href='#L528'>528</a>
594
- <a name='L529'></a><a href='#L529'>529</a>
595
- <a name='L530'></a><a href='#L530'>530</a>
596
- <a name='L531'></a><a href='#L531'>531</a>
597
- <a name='L532'></a><a href='#L532'>532</a>
598
- <a name='L533'></a><a href='#L533'>533</a>
599
- <a name='L534'></a><a href='#L534'>534</a>
600
- <a name='L535'></a><a href='#L535'>535</a>
601
- <a name='L536'></a><a href='#L536'>536</a>
602
- <a name='L537'></a><a href='#L537'>537</a>
603
- <a name='L538'></a><a href='#L538'>538</a>
604
- <a name='L539'></a><a href='#L539'>539</a>
605
- <a name='L540'></a><a href='#L540'>540</a>
606
- <a name='L541'></a><a href='#L541'>541</a>
607
- <a name='L542'></a><a href='#L542'>542</a>
608
- <a name='L543'></a><a href='#L543'>543</a>
609
- <a name='L544'></a><a href='#L544'>544</a>
610
- <a name='L545'></a><a href='#L545'>545</a>
611
- <a name='L546'></a><a href='#L546'>546</a>
612
- <a name='L547'></a><a href='#L547'>547</a>
613
- <a name='L548'></a><a href='#L548'>548</a>
614
- <a name='L549'></a><a href='#L549'>549</a>
615
- <a name='L550'></a><a href='#L550'>550</a>
616
- <a name='L551'></a><a href='#L551'>551</a>
617
- <a name='L552'></a><a href='#L552'>552</a>
618
- <a name='L553'></a><a href='#L553'>553</a>
619
- <a name='L554'></a><a href='#L554'>554</a>
620
- <a name='L555'></a><a href='#L555'>555</a>
621
- <a name='L556'></a><a href='#L556'>556</a>
622
- <a name='L557'></a><a href='#L557'>557</a>
623
- <a name='L558'></a><a href='#L558'>558</a>
624
- <a name='L559'></a><a href='#L559'>559</a>
625
- <a name='L560'></a><a href='#L560'>560</a>
626
- <a name='L561'></a><a href='#L561'>561</a>
627
- <a name='L562'></a><a href='#L562'>562</a>
628
- <a name='L563'></a><a href='#L563'>563</a>
629
- <a name='L564'></a><a href='#L564'>564</a>
630
- <a name='L565'></a><a href='#L565'>565</a>
631
- <a name='L566'></a><a href='#L566'>566</a>
632
- <a name='L567'></a><a href='#L567'>567</a>
633
- <a name='L568'></a><a href='#L568'>568</a>
634
- <a name='L569'></a><a href='#L569'>569</a>
635
- <a name='L570'></a><a href='#L570'>570</a>
636
- <a name='L571'></a><a href='#L571'>571</a>
637
- <a name='L572'></a><a href='#L572'>572</a>
638
- <a name='L573'></a><a href='#L573'>573</a>
639
- <a name='L574'></a><a href='#L574'>574</a>
640
- <a name='L575'></a><a href='#L575'>575</a>
641
- <a name='L576'></a><a href='#L576'>576</a>
642
- <a name='L577'></a><a href='#L577'>577</a>
643
- <a name='L578'></a><a href='#L578'>578</a>
644
- <a name='L579'></a><a href='#L579'>579</a>
645
- <a name='L580'></a><a href='#L580'>580</a>
646
- <a name='L581'></a><a href='#L581'>581</a>
647
- <a name='L582'></a><a href='#L582'>582</a>
648
- <a name='L583'></a><a href='#L583'>583</a>
649
- <a name='L584'></a><a href='#L584'>584</a>
650
- <a name='L585'></a><a href='#L585'>585</a>
651
- <a name='L586'></a><a href='#L586'>586</a>
652
- <a name='L587'></a><a href='#L587'>587</a>
653
- <a name='L588'></a><a href='#L588'>588</a>
654
- <a name='L589'></a><a href='#L589'>589</a>
655
- <a name='L590'></a><a href='#L590'>590</a>
656
- <a name='L591'></a><a href='#L591'>591</a>
657
- <a name='L592'></a><a href='#L592'>592</a>
658
- <a name='L593'></a><a href='#L593'>593</a>
659
- <a name='L594'></a><a href='#L594'>594</a>
660
- <a name='L595'></a><a href='#L595'>595</a>
661
- <a name='L596'></a><a href='#L596'>596</a>
662
- <a name='L597'></a><a href='#L597'>597</a>
663
- <a name='L598'></a><a href='#L598'>598</a>
664
- <a name='L599'></a><a href='#L599'>599</a>
665
- <a name='L600'></a><a href='#L600'>600</a>
666
- <a name='L601'></a><a href='#L601'>601</a>
667
- <a name='L602'></a><a href='#L602'>602</a>
668
- <a name='L603'></a><a href='#L603'>603</a>
669
- <a name='L604'></a><a href='#L604'>604</a>
670
- <a name='L605'></a><a href='#L605'>605</a>
671
- <a name='L606'></a><a href='#L606'>606</a>
672
- <a name='L607'></a><a href='#L607'>607</a>
673
- <a name='L608'></a><a href='#L608'>608</a>
674
- <a name='L609'></a><a href='#L609'>609</a>
675
- <a name='L610'></a><a href='#L610'>610</a>
676
- <a name='L611'></a><a href='#L611'>611</a>
677
- <a name='L612'></a><a href='#L612'>612</a>
678
- <a name='L613'></a><a href='#L613'>613</a>
679
- <a name='L614'></a><a href='#L614'>614</a>
680
- <a name='L615'></a><a href='#L615'>615</a>
681
- <a name='L616'></a><a href='#L616'>616</a>
682
- <a name='L617'></a><a href='#L617'>617</a>
683
- <a name='L618'></a><a href='#L618'>618</a>
684
- <a name='L619'></a><a href='#L619'>619</a>
685
- <a name='L620'></a><a href='#L620'>620</a>
686
- <a name='L621'></a><a href='#L621'>621</a>
687
- <a name='L622'></a><a href='#L622'>622</a>
688
- <a name='L623'></a><a href='#L623'>623</a>
689
- <a name='L624'></a><a href='#L624'>624</a>
690
- <a name='L625'></a><a href='#L625'>625</a>
691
- <a name='L626'></a><a href='#L626'>626</a>
692
- <a name='L627'></a><a href='#L627'>627</a>
693
- <a name='L628'></a><a href='#L628'>628</a>
694
- <a name='L629'></a><a href='#L629'>629</a>
695
- <a name='L630'></a><a href='#L630'>630</a>
696
- <a name='L631'></a><a href='#L631'>631</a>
697
- <a name='L632'></a><a href='#L632'>632</a>
698
- <a name='L633'></a><a href='#L633'>633</a>
699
- <a name='L634'></a><a href='#L634'>634</a>
700
- <a name='L635'></a><a href='#L635'>635</a>
701
- <a name='L636'></a><a href='#L636'>636</a>
702
- <a name='L637'></a><a href='#L637'>637</a>
703
- <a name='L638'></a><a href='#L638'>638</a>
704
- <a name='L639'></a><a href='#L639'>639</a>
705
- <a name='L640'></a><a href='#L640'>640</a>
706
- <a name='L641'></a><a href='#L641'>641</a>
707
- <a name='L642'></a><a href='#L642'>642</a>
708
- <a name='L643'></a><a href='#L643'>643</a>
709
- <a name='L644'></a><a href='#L644'>644</a>
710
- <a name='L645'></a><a href='#L645'>645</a>
711
- <a name='L646'></a><a href='#L646'>646</a>
712
- <a name='L647'></a><a href='#L647'>647</a>
713
- <a name='L648'></a><a href='#L648'>648</a>
714
- <a name='L649'></a><a href='#L649'>649</a>
715
- <a name='L650'></a><a href='#L650'>650</a>
716
- <a name='L651'></a><a href='#L651'>651</a>
717
- <a name='L652'></a><a href='#L652'>652</a>
718
- <a name='L653'></a><a href='#L653'>653</a>
719
- <a name='L654'></a><a href='#L654'>654</a>
720
- <a name='L655'></a><a href='#L655'>655</a>
721
- <a name='L656'></a><a href='#L656'>656</a>
722
- <a name='L657'></a><a href='#L657'>657</a>
723
- <a name='L658'></a><a href='#L658'>658</a>
724
- <a name='L659'></a><a href='#L659'>659</a>
725
- <a name='L660'></a><a href='#L660'>660</a>
726
- <a name='L661'></a><a href='#L661'>661</a>
727
- <a name='L662'></a><a href='#L662'>662</a>
728
- <a name='L663'></a><a href='#L663'>663</a>
729
- <a name='L664'></a><a href='#L664'>664</a>
730
- <a name='L665'></a><a href='#L665'>665</a>
731
- <a name='L666'></a><a href='#L666'>666</a>
732
- <a name='L667'></a><a href='#L667'>667</a>
733
- <a name='L668'></a><a href='#L668'>668</a>
734
- <a name='L669'></a><a href='#L669'>669</a>
735
- <a name='L670'></a><a href='#L670'>670</a>
736
- <a name='L671'></a><a href='#L671'>671</a>
737
- <a name='L672'></a><a href='#L672'>672</a>
738
- <a name='L673'></a><a href='#L673'>673</a>
739
- <a name='L674'></a><a href='#L674'>674</a>
740
- <a name='L675'></a><a href='#L675'>675</a>
741
- <a name='L676'></a><a href='#L676'>676</a>
742
- <a name='L677'></a><a href='#L677'>677</a>
743
- <a name='L678'></a><a href='#L678'>678</a>
744
- <a name='L679'></a><a href='#L679'>679</a>
745
- <a name='L680'></a><a href='#L680'>680</a>
746
- <a name='L681'></a><a href='#L681'>681</a>
747
- <a name='L682'></a><a href='#L682'>682</a>
748
- <a name='L683'></a><a href='#L683'>683</a>
749
- <a name='L684'></a><a href='#L684'>684</a>
750
- <a name='L685'></a><a href='#L685'>685</a>
751
- <a name='L686'></a><a href='#L686'>686</a>
752
- <a name='L687'></a><a href='#L687'>687</a>
753
- <a name='L688'></a><a href='#L688'>688</a>
754
- <a name='L689'></a><a href='#L689'>689</a>
755
- <a name='L690'></a><a href='#L690'>690</a>
756
- <a name='L691'></a><a href='#L691'>691</a>
757
- <a name='L692'></a><a href='#L692'>692</a>
758
- <a name='L693'></a><a href='#L693'>693</a>
759
- <a name='L694'></a><a href='#L694'>694</a>
760
- <a name='L695'></a><a href='#L695'>695</a>
761
- <a name='L696'></a><a href='#L696'>696</a>
762
- <a name='L697'></a><a href='#L697'>697</a>
763
- <a name='L698'></a><a href='#L698'>698</a>
764
- <a name='L699'></a><a href='#L699'>699</a>
765
- <a name='L700'></a><a href='#L700'>700</a>
766
- <a name='L701'></a><a href='#L701'>701</a>
767
- <a name='L702'></a><a href='#L702'>702</a>
768
- <a name='L703'></a><a href='#L703'>703</a>
769
- <a name='L704'></a><a href='#L704'>704</a>
770
- <a name='L705'></a><a href='#L705'>705</a>
771
- <a name='L706'></a><a href='#L706'>706</a>
772
- <a name='L707'></a><a href='#L707'>707</a>
773
- <a name='L708'></a><a href='#L708'>708</a>
774
- <a name='L709'></a><a href='#L709'>709</a>
775
- <a name='L710'></a><a href='#L710'>710</a>
776
- <a name='L711'></a><a href='#L711'>711</a>
777
- <a name='L712'></a><a href='#L712'>712</a>
778
- <a name='L713'></a><a href='#L713'>713</a>
779
- <a name='L714'></a><a href='#L714'>714</a>
780
- <a name='L715'></a><a href='#L715'>715</a>
781
- <a name='L716'></a><a href='#L716'>716</a>
782
- <a name='L717'></a><a href='#L717'>717</a>
783
- <a name='L718'></a><a href='#L718'>718</a>
784
- <a name='L719'></a><a href='#L719'>719</a>
785
- <a name='L720'></a><a href='#L720'>720</a>
786
- <a name='L721'></a><a href='#L721'>721</a>
787
- <a name='L722'></a><a href='#L722'>722</a>
788
- <a name='L723'></a><a href='#L723'>723</a>
789
- <a name='L724'></a><a href='#L724'>724</a>
790
- <a name='L725'></a><a href='#L725'>725</a>
791
- <a name='L726'></a><a href='#L726'>726</a>
792
- <a name='L727'></a><a href='#L727'>727</a>
793
- <a name='L728'></a><a href='#L728'>728</a>
794
- <a name='L729'></a><a href='#L729'>729</a>
795
- <a name='L730'></a><a href='#L730'>730</a>
796
- <a name='L731'></a><a href='#L731'>731</a>
797
- <a name='L732'></a><a href='#L732'>732</a>
798
- <a name='L733'></a><a href='#L733'>733</a>
799
- <a name='L734'></a><a href='#L734'>734</a>
800
- <a name='L735'></a><a href='#L735'>735</a>
801
- <a name='L736'></a><a href='#L736'>736</a>
802
- <a name='L737'></a><a href='#L737'>737</a>
803
- <a name='L738'></a><a href='#L738'>738</a>
804
- <a name='L739'></a><a href='#L739'>739</a>
805
- <a name='L740'></a><a href='#L740'>740</a>
806
- <a name='L741'></a><a href='#L741'>741</a>
807
- <a name='L742'></a><a href='#L742'>742</a>
808
- <a name='L743'></a><a href='#L743'>743</a>
809
- <a name='L744'></a><a href='#L744'>744</a>
810
- <a name='L745'></a><a href='#L745'>745</a>
811
- <a name='L746'></a><a href='#L746'>746</a>
812
- <a name='L747'></a><a href='#L747'>747</a>
813
- <a name='L748'></a><a href='#L748'>748</a>
814
- <a name='L749'></a><a href='#L749'>749</a>
815
- <a name='L750'></a><a href='#L750'>750</a>
816
- <a name='L751'></a><a href='#L751'>751</a>
817
- <a name='L752'></a><a href='#L752'>752</a>
818
- <a name='L753'></a><a href='#L753'>753</a>
819
- <a name='L754'></a><a href='#L754'>754</a>
820
- <a name='L755'></a><a href='#L755'>755</a>
821
- <a name='L756'></a><a href='#L756'>756</a>
822
- <a name='L757'></a><a href='#L757'>757</a>
823
- <a name='L758'></a><a href='#L758'>758</a>
824
- <a name='L759'></a><a href='#L759'>759</a>
825
- <a name='L760'></a><a href='#L760'>760</a>
826
- <a name='L761'></a><a href='#L761'>761</a>
827
- <a name='L762'></a><a href='#L762'>762</a>
828
- <a name='L763'></a><a href='#L763'>763</a>
829
- <a name='L764'></a><a href='#L764'>764</a>
830
- <a name='L765'></a><a href='#L765'>765</a>
831
- <a name='L766'></a><a href='#L766'>766</a>
832
- <a name='L767'></a><a href='#L767'>767</a>
833
- <a name='L768'></a><a href='#L768'>768</a>
834
- <a name='L769'></a><a href='#L769'>769</a>
835
- <a name='L770'></a><a href='#L770'>770</a>
836
- <a name='L771'></a><a href='#L771'>771</a>
837
- <a name='L772'></a><a href='#L772'>772</a>
838
- <a name='L773'></a><a href='#L773'>773</a>
839
- <a name='L774'></a><a href='#L774'>774</a>
840
- <a name='L775'></a><a href='#L775'>775</a>
841
- <a name='L776'></a><a href='#L776'>776</a>
842
- <a name='L777'></a><a href='#L777'>777</a>
843
- <a name='L778'></a><a href='#L778'>778</a>
844
- <a name='L779'></a><a href='#L779'>779</a>
845
- <a name='L780'></a><a href='#L780'>780</a>
846
- <a name='L781'></a><a href='#L781'>781</a>
847
- <a name='L782'></a><a href='#L782'>782</a>
848
- <a name='L783'></a><a href='#L783'>783</a>
849
- <a name='L784'></a><a href='#L784'>784</a>
850
- <a name='L785'></a><a href='#L785'>785</a>
851
- <a name='L786'></a><a href='#L786'>786</a>
852
- <a name='L787'></a><a href='#L787'>787</a>
853
- <a name='L788'></a><a href='#L788'>788</a>
854
- <a name='L789'></a><a href='#L789'>789</a>
855
- <a name='L790'></a><a href='#L790'>790</a>
856
- <a name='L791'></a><a href='#L791'>791</a>
857
- <a name='L792'></a><a href='#L792'>792</a>
858
- <a name='L793'></a><a href='#L793'>793</a>
859
- <a name='L794'></a><a href='#L794'>794</a>
860
- <a name='L795'></a><a href='#L795'>795</a>
861
- <a name='L796'></a><a href='#L796'>796</a>
862
- <a name='L797'></a><a href='#L797'>797</a>
863
- <a name='L798'></a><a href='#L798'>798</a>
864
- <a name='L799'></a><a href='#L799'>799</a>
865
- <a name='L800'></a><a href='#L800'>800</a>
866
- <a name='L801'></a><a href='#L801'>801</a>
867
- <a name='L802'></a><a href='#L802'>802</a>
868
- <a name='L803'></a><a href='#L803'>803</a>
869
- <a name='L804'></a><a href='#L804'>804</a>
870
- <a name='L805'></a><a href='#L805'>805</a>
871
- <a name='L806'></a><a href='#L806'>806</a>
872
- <a name='L807'></a><a href='#L807'>807</a>
873
- <a name='L808'></a><a href='#L808'>808</a>
874
- <a name='L809'></a><a href='#L809'>809</a>
875
- <a name='L810'></a><a href='#L810'>810</a>
876
- <a name='L811'></a><a href='#L811'>811</a>
877
- <a name='L812'></a><a href='#L812'>812</a>
878
- <a name='L813'></a><a href='#L813'>813</a>
879
- <a name='L814'></a><a href='#L814'>814</a>
880
- <a name='L815'></a><a href='#L815'>815</a>
881
- <a name='L816'></a><a href='#L816'>816</a>
882
- <a name='L817'></a><a href='#L817'>817</a>
883
- <a name='L818'></a><a href='#L818'>818</a>
884
- <a name='L819'></a><a href='#L819'>819</a>
885
- <a name='L820'></a><a href='#L820'>820</a>
886
- <a name='L821'></a><a href='#L821'>821</a>
887
- <a name='L822'></a><a href='#L822'>822</a>
888
- <a name='L823'></a><a href='#L823'>823</a>
889
- <a name='L824'></a><a href='#L824'>824</a>
890
- <a name='L825'></a><a href='#L825'>825</a>
891
- <a name='L826'></a><a href='#L826'>826</a>
892
- <a name='L827'></a><a href='#L827'>827</a>
893
- <a name='L828'></a><a href='#L828'>828</a>
894
- <a name='L829'></a><a href='#L829'>829</a>
895
- <a name='L830'></a><a href='#L830'>830</a>
896
- <a name='L831'></a><a href='#L831'>831</a>
897
- <a name='L832'></a><a href='#L832'>832</a>
898
- <a name='L833'></a><a href='#L833'>833</a>
899
- <a name='L834'></a><a href='#L834'>834</a>
900
- <a name='L835'></a><a href='#L835'>835</a>
901
- <a name='L836'></a><a href='#L836'>836</a>
902
- <a name='L837'></a><a href='#L837'>837</a>
903
- <a name='L838'></a><a href='#L838'>838</a>
904
- <a name='L839'></a><a href='#L839'>839</a>
905
- <a name='L840'></a><a href='#L840'>840</a>
906
- <a name='L841'></a><a href='#L841'>841</a>
907
- <a name='L842'></a><a href='#L842'>842</a>
908
- <a name='L843'></a><a href='#L843'>843</a>
909
- <a name='L844'></a><a href='#L844'>844</a>
910
- <a name='L845'></a><a href='#L845'>845</a>
911
- <a name='L846'></a><a href='#L846'>846</a>
912
- <a name='L847'></a><a href='#L847'>847</a>
913
- <a name='L848'></a><a href='#L848'>848</a>
914
- <a name='L849'></a><a href='#L849'>849</a>
915
- <a name='L850'></a><a href='#L850'>850</a>
916
- <a name='L851'></a><a href='#L851'>851</a>
917
- <a name='L852'></a><a href='#L852'>852</a>
918
- <a name='L853'></a><a href='#L853'>853</a>
919
- <a name='L854'></a><a href='#L854'>854</a>
920
- <a name='L855'></a><a href='#L855'>855</a>
921
- <a name='L856'></a><a href='#L856'>856</a>
922
- <a name='L857'></a><a href='#L857'>857</a>
923
- <a name='L858'></a><a href='#L858'>858</a>
924
- <a name='L859'></a><a href='#L859'>859</a>
925
- <a name='L860'></a><a href='#L860'>860</a>
926
- <a name='L861'></a><a href='#L861'>861</a>
927
- <a name='L862'></a><a href='#L862'>862</a>
928
- <a name='L863'></a><a href='#L863'>863</a>
929
- <a name='L864'></a><a href='#L864'>864</a>
930
- <a name='L865'></a><a href='#L865'>865</a>
931
- <a name='L866'></a><a href='#L866'>866</a>
932
- <a name='L867'></a><a href='#L867'>867</a>
933
- <a name='L868'></a><a href='#L868'>868</a>
934
- <a name='L869'></a><a href='#L869'>869</a>
935
- <a name='L870'></a><a href='#L870'>870</a>
936
- <a name='L871'></a><a href='#L871'>871</a>
937
- <a name='L872'></a><a href='#L872'>872</a>
938
- <a name='L873'></a><a href='#L873'>873</a>
939
- <a name='L874'></a><a href='#L874'>874</a>
940
- <a name='L875'></a><a href='#L875'>875</a>
941
- <a name='L876'></a><a href='#L876'>876</a>
942
- <a name='L877'></a><a href='#L877'>877</a>
943
- <a name='L878'></a><a href='#L878'>878</a>
944
- <a name='L879'></a><a href='#L879'>879</a>
945
- <a name='L880'></a><a href='#L880'>880</a>
946
- <a name='L881'></a><a href='#L881'>881</a>
947
- <a name='L882'></a><a href='#L882'>882</a>
948
- <a name='L883'></a><a href='#L883'>883</a>
949
- <a name='L884'></a><a href='#L884'>884</a>
950
- <a name='L885'></a><a href='#L885'>885</a>
951
- <a name='L886'></a><a href='#L886'>886</a>
952
- <a name='L887'></a><a href='#L887'>887</a>
953
- <a name='L888'></a><a href='#L888'>888</a>
954
- <a name='L889'></a><a href='#L889'>889</a>
955
- <a name='L890'></a><a href='#L890'>890</a>
956
- <a name='L891'></a><a href='#L891'>891</a>
957
- <a name='L892'></a><a href='#L892'>892</a>
958
- <a name='L893'></a><a href='#L893'>893</a>
959
- <a name='L894'></a><a href='#L894'>894</a>
960
- <a name='L895'></a><a href='#L895'>895</a>
961
- <a name='L896'></a><a href='#L896'>896</a>
962
- <a name='L897'></a><a href='#L897'>897</a>
963
- <a name='L898'></a><a href='#L898'>898</a>
964
- <a name='L899'></a><a href='#L899'>899</a>
965
- <a name='L900'></a><a href='#L900'>900</a>
966
- <a name='L901'></a><a href='#L901'>901</a>
967
- <a name='L902'></a><a href='#L902'>902</a>
968
- <a name='L903'></a><a href='#L903'>903</a>
969
- <a name='L904'></a><a href='#L904'>904</a>
970
- <a name='L905'></a><a href='#L905'>905</a>
971
- <a name='L906'></a><a href='#L906'>906</a>
972
- <a name='L907'></a><a href='#L907'>907</a>
973
- <a name='L908'></a><a href='#L908'>908</a>
974
- <a name='L909'></a><a href='#L909'>909</a>
975
- <a name='L910'></a><a href='#L910'>910</a>
976
- <a name='L911'></a><a href='#L911'>911</a>
977
- <a name='L912'></a><a href='#L912'>912</a>
978
- <a name='L913'></a><a href='#L913'>913</a>
979
- <a name='L914'></a><a href='#L914'>914</a>
980
- <a name='L915'></a><a href='#L915'>915</a>
981
- <a name='L916'></a><a href='#L916'>916</a>
982
- <a name='L917'></a><a href='#L917'>917</a>
983
- <a name='L918'></a><a href='#L918'>918</a>
984
- <a name='L919'></a><a href='#L919'>919</a>
985
- <a name='L920'></a><a href='#L920'>920</a>
986
- <a name='L921'></a><a href='#L921'>921</a>
987
- <a name='L922'></a><a href='#L922'>922</a>
988
- <a name='L923'></a><a href='#L923'>923</a>
989
- <a name='L924'></a><a href='#L924'>924</a>
990
- <a name='L925'></a><a href='#L925'>925</a>
991
- <a name='L926'></a><a href='#L926'>926</a>
992
- <a name='L927'></a><a href='#L927'>927</a>
993
- <a name='L928'></a><a href='#L928'>928</a>
994
- <a name='L929'></a><a href='#L929'>929</a>
995
- <a name='L930'></a><a href='#L930'>930</a>
996
- <a name='L931'></a><a href='#L931'>931</a>
997
- <a name='L932'></a><a href='#L932'>932</a>
998
- <a name='L933'></a><a href='#L933'>933</a>
999
- <a name='L934'></a><a href='#L934'>934</a>
1000
- <a name='L935'></a><a href='#L935'>935</a>
1001
- <a name='L936'></a><a href='#L936'>936</a>
1002
- <a name='L937'></a><a href='#L937'>937</a>
1003
- <a name='L938'></a><a href='#L938'>938</a>
1004
- <a name='L939'></a><a href='#L939'>939</a>
1005
- <a name='L940'></a><a href='#L940'>940</a>
1006
- <a name='L941'></a><a href='#L941'>941</a>
1007
- <a name='L942'></a><a href='#L942'>942</a>
1008
- <a name='L943'></a><a href='#L943'>943</a>
1009
- <a name='L944'></a><a href='#L944'>944</a>
1010
- <a name='L945'></a><a href='#L945'>945</a>
1011
- <a name='L946'></a><a href='#L946'>946</a>
1012
- <a name='L947'></a><a href='#L947'>947</a>
1013
- <a name='L948'></a><a href='#L948'>948</a>
1014
- <a name='L949'></a><a href='#L949'>949</a>
1015
- <a name='L950'></a><a href='#L950'>950</a>
1016
- <a name='L951'></a><a href='#L951'>951</a>
1017
- <a name='L952'></a><a href='#L952'>952</a>
1018
- <a name='L953'></a><a href='#L953'>953</a>
1019
- <a name='L954'></a><a href='#L954'>954</a>
1020
- <a name='L955'></a><a href='#L955'>955</a>
1021
- <a name='L956'></a><a href='#L956'>956</a>
1022
- <a name='L957'></a><a href='#L957'>957</a>
1023
- <a name='L958'></a><a href='#L958'>958</a>
1024
- <a name='L959'></a><a href='#L959'>959</a>
1025
- <a name='L960'></a><a href='#L960'>960</a>
1026
- <a name='L961'></a><a href='#L961'>961</a>
1027
- <a name='L962'></a><a href='#L962'>962</a>
1028
- <a name='L963'></a><a href='#L963'>963</a>
1029
- <a name='L964'></a><a href='#L964'>964</a>
1030
- <a name='L965'></a><a href='#L965'>965</a>
1031
- <a name='L966'></a><a href='#L966'>966</a>
1032
- <a name='L967'></a><a href='#L967'>967</a>
1033
- <a name='L968'></a><a href='#L968'>968</a>
1034
- <a name='L969'></a><a href='#L969'>969</a>
1035
- <a name='L970'></a><a href='#L970'>970</a>
1036
- <a name='L971'></a><a href='#L971'>971</a>
1037
- <a name='L972'></a><a href='#L972'>972</a>
1038
- <a name='L973'></a><a href='#L973'>973</a>
1039
- <a name='L974'></a><a href='#L974'>974</a>
1040
- <a name='L975'></a><a href='#L975'>975</a>
1041
- <a name='L976'></a><a href='#L976'>976</a>
1042
- <a name='L977'></a><a href='#L977'>977</a>
1043
- <a name='L978'></a><a href='#L978'>978</a>
1044
- <a name='L979'></a><a href='#L979'>979</a>
1045
- <a name='L980'></a><a href='#L980'>980</a>
1046
- <a name='L981'></a><a href='#L981'>981</a>
1047
- <a name='L982'></a><a href='#L982'>982</a>
1048
- <a name='L983'></a><a href='#L983'>983</a>
1049
- <a name='L984'></a><a href='#L984'>984</a>
1050
- <a name='L985'></a><a href='#L985'>985</a>
1051
- <a name='L986'></a><a href='#L986'>986</a>
1052
- <a name='L987'></a><a href='#L987'>987</a>
1053
- <a name='L988'></a><a href='#L988'>988</a>
1054
- <a name='L989'></a><a href='#L989'>989</a>
1055
- <a name='L990'></a><a href='#L990'>990</a>
1056
- <a name='L991'></a><a href='#L991'>991</a>
1057
- <a name='L992'></a><a href='#L992'>992</a>
1058
- <a name='L993'></a><a href='#L993'>993</a>
1059
- <a name='L994'></a><a href='#L994'>994</a>
1060
- <a name='L995'></a><a href='#L995'>995</a>
1061
- <a name='L996'></a><a href='#L996'>996</a>
1062
- <a name='L997'></a><a href='#L997'>997</a>
1063
- <a name='L998'></a><a href='#L998'>998</a>
1064
- <a name='L999'></a><a href='#L999'>999</a>
1065
- <a name='L1000'></a><a href='#L1000'>1000</a>
1066
- <a name='L1001'></a><a href='#L1001'>1001</a>
1067
- <a name='L1002'></a><a href='#L1002'>1002</a>
1068
- <a name='L1003'></a><a href='#L1003'>1003</a>
1069
- <a name='L1004'></a><a href='#L1004'>1004</a>
1070
- <a name='L1005'></a><a href='#L1005'>1005</a>
1071
- <a name='L1006'></a><a href='#L1006'>1006</a>
1072
- <a name='L1007'></a><a href='#L1007'>1007</a>
1073
- <a name='L1008'></a><a href='#L1008'>1008</a>
1074
- <a name='L1009'></a><a href='#L1009'>1009</a>
1075
- <a name='L1010'></a><a href='#L1010'>1010</a>
1076
- <a name='L1011'></a><a href='#L1011'>1011</a>
1077
- <a name='L1012'></a><a href='#L1012'>1012</a>
1078
- <a name='L1013'></a><a href='#L1013'>1013</a>
1079
- <a name='L1014'></a><a href='#L1014'>1014</a>
1080
- <a name='L1015'></a><a href='#L1015'>1015</a>
1081
- <a name='L1016'></a><a href='#L1016'>1016</a>
1082
- <a name='L1017'></a><a href='#L1017'>1017</a>
1083
- <a name='L1018'></a><a href='#L1018'>1018</a>
1084
- <a name='L1019'></a><a href='#L1019'>1019</a>
1085
- <a name='L1020'></a><a href='#L1020'>1020</a>
1086
- <a name='L1021'></a><a href='#L1021'>1021</a>
1087
- <a name='L1022'></a><a href='#L1022'>1022</a>
1088
- <a name='L1023'></a><a href='#L1023'>1023</a>
1089
- <a name='L1024'></a><a href='#L1024'>1024</a>
1090
- <a name='L1025'></a><a href='#L1025'>1025</a>
1091
- <a name='L1026'></a><a href='#L1026'>1026</a>
1092
- <a name='L1027'></a><a href='#L1027'>1027</a>
1093
- <a name='L1028'></a><a href='#L1028'>1028</a>
1094
- <a name='L1029'></a><a href='#L1029'>1029</a>
1095
- <a name='L1030'></a><a href='#L1030'>1030</a>
1096
- <a name='L1031'></a><a href='#L1031'>1031</a>
1097
- <a name='L1032'></a><a href='#L1032'>1032</a>
1098
- <a name='L1033'></a><a href='#L1033'>1033</a>
1099
- <a name='L1034'></a><a href='#L1034'>1034</a>
1100
- <a name='L1035'></a><a href='#L1035'>1035</a>
1101
- <a name='L1036'></a><a href='#L1036'>1036</a>
1102
- <a name='L1037'></a><a href='#L1037'>1037</a>
1103
- <a name='L1038'></a><a href='#L1038'>1038</a>
1104
- <a name='L1039'></a><a href='#L1039'>1039</a>
1105
- <a name='L1040'></a><a href='#L1040'>1040</a>
1106
- <a name='L1041'></a><a href='#L1041'>1041</a>
1107
- <a name='L1042'></a><a href='#L1042'>1042</a>
1108
- <a name='L1043'></a><a href='#L1043'>1043</a>
1109
- <a name='L1044'></a><a href='#L1044'>1044</a>
1110
- <a name='L1045'></a><a href='#L1045'>1045</a>
1111
- <a name='L1046'></a><a href='#L1046'>1046</a>
1112
- <a name='L1047'></a><a href='#L1047'>1047</a>
1113
- <a name='L1048'></a><a href='#L1048'>1048</a>
1114
- <a name='L1049'></a><a href='#L1049'>1049</a>
1115
- <a name='L1050'></a><a href='#L1050'>1050</a>
1116
- <a name='L1051'></a><a href='#L1051'>1051</a>
1117
- <a name='L1052'></a><a href='#L1052'>1052</a>
1118
- <a name='L1053'></a><a href='#L1053'>1053</a>
1119
- <a name='L1054'></a><a href='#L1054'>1054</a>
1120
- <a name='L1055'></a><a href='#L1055'>1055</a>
1121
- <a name='L1056'></a><a href='#L1056'>1056</a>
1122
- <a name='L1057'></a><a href='#L1057'>1057</a>
1123
- <a name='L1058'></a><a href='#L1058'>1058</a>
1124
- <a name='L1059'></a><a href='#L1059'>1059</a>
1125
- <a name='L1060'></a><a href='#L1060'>1060</a>
1126
- <a name='L1061'></a><a href='#L1061'>1061</a>
1127
- <a name='L1062'></a><a href='#L1062'>1062</a>
1128
- <a name='L1063'></a><a href='#L1063'>1063</a>
1129
- <a name='L1064'></a><a href='#L1064'>1064</a>
1130
- <a name='L1065'></a><a href='#L1065'>1065</a>
1131
- <a name='L1066'></a><a href='#L1066'>1066</a>
1132
- <a name='L1067'></a><a href='#L1067'>1067</a>
1133
- <a name='L1068'></a><a href='#L1068'>1068</a>
1134
- <a name='L1069'></a><a href='#L1069'>1069</a>
1135
- <a name='L1070'></a><a href='#L1070'>1070</a>
1136
- <a name='L1071'></a><a href='#L1071'>1071</a>
1137
- <a name='L1072'></a><a href='#L1072'>1072</a>
1138
- <a name='L1073'></a><a href='#L1073'>1073</a>
1139
- <a name='L1074'></a><a href='#L1074'>1074</a>
1140
- <a name='L1075'></a><a href='#L1075'>1075</a>
1141
- <a name='L1076'></a><a href='#L1076'>1076</a>
1142
- <a name='L1077'></a><a href='#L1077'>1077</a>
1143
- <a name='L1078'></a><a href='#L1078'>1078</a>
1144
- <a name='L1079'></a><a href='#L1079'>1079</a>
1145
- <a name='L1080'></a><a href='#L1080'>1080</a>
1146
- <a name='L1081'></a><a href='#L1081'>1081</a>
1147
- <a name='L1082'></a><a href='#L1082'>1082</a>
1148
- <a name='L1083'></a><a href='#L1083'>1083</a>
1149
- <a name='L1084'></a><a href='#L1084'>1084</a>
1150
- <a name='L1085'></a><a href='#L1085'>1085</a>
1151
- <a name='L1086'></a><a href='#L1086'>1086</a>
1152
- <a name='L1087'></a><a href='#L1087'>1087</a>
1153
- <a name='L1088'></a><a href='#L1088'>1088</a>
1154
- <a name='L1089'></a><a href='#L1089'>1089</a>
1155
- <a name='L1090'></a><a href='#L1090'>1090</a>
1156
- <a name='L1091'></a><a href='#L1091'>1091</a>
1157
- <a name='L1092'></a><a href='#L1092'>1092</a>
1158
- <a name='L1093'></a><a href='#L1093'>1093</a>
1159
- <a name='L1094'></a><a href='#L1094'>1094</a>
1160
- <a name='L1095'></a><a href='#L1095'>1095</a>
1161
- <a name='L1096'></a><a href='#L1096'>1096</a>
1162
- <a name='L1097'></a><a href='#L1097'>1097</a>
1163
- <a name='L1098'></a><a href='#L1098'>1098</a>
1164
- <a name='L1099'></a><a href='#L1099'>1099</a>
1165
- <a name='L1100'></a><a href='#L1100'>1100</a>
1166
- <a name='L1101'></a><a href='#L1101'>1101</a>
1167
- <a name='L1102'></a><a href='#L1102'>1102</a>
1168
- <a name='L1103'></a><a href='#L1103'>1103</a>
1169
- <a name='L1104'></a><a href='#L1104'>1104</a>
1170
- <a name='L1105'></a><a href='#L1105'>1105</a>
1171
- <a name='L1106'></a><a href='#L1106'>1106</a>
1172
- <a name='L1107'></a><a href='#L1107'>1107</a>
1173
- <a name='L1108'></a><a href='#L1108'>1108</a>
1174
- <a name='L1109'></a><a href='#L1109'>1109</a>
1175
- <a name='L1110'></a><a href='#L1110'>1110</a>
1176
- <a name='L1111'></a><a href='#L1111'>1111</a>
1177
- <a name='L1112'></a><a href='#L1112'>1112</a>
1178
- <a name='L1113'></a><a href='#L1113'>1113</a>
1179
- <a name='L1114'></a><a href='#L1114'>1114</a>
1180
- <a name='L1115'></a><a href='#L1115'>1115</a>
1181
- <a name='L1116'></a><a href='#L1116'>1116</a>
1182
- <a name='L1117'></a><a href='#L1117'>1117</a>
1183
- <a name='L1118'></a><a href='#L1118'>1118</a>
1184
- <a name='L1119'></a><a href='#L1119'>1119</a>
1185
- <a name='L1120'></a><a href='#L1120'>1120</a>
1186
- <a name='L1121'></a><a href='#L1121'>1121</a>
1187
- <a name='L1122'></a><a href='#L1122'>1122</a>
1188
- <a name='L1123'></a><a href='#L1123'>1123</a>
1189
- <a name='L1124'></a><a href='#L1124'>1124</a>
1190
- <a name='L1125'></a><a href='#L1125'>1125</a>
1191
- <a name='L1126'></a><a href='#L1126'>1126</a>
1192
- <a name='L1127'></a><a href='#L1127'>1127</a>
1193
- <a name='L1128'></a><a href='#L1128'>1128</a>
1194
- <a name='L1129'></a><a href='#L1129'>1129</a>
1195
- <a name='L1130'></a><a href='#L1130'>1130</a>
1196
- <a name='L1131'></a><a href='#L1131'>1131</a>
1197
- <a name='L1132'></a><a href='#L1132'>1132</a>
1198
- <a name='L1133'></a><a href='#L1133'>1133</a>
1199
- <a name='L1134'></a><a href='#L1134'>1134</a>
1200
- <a name='L1135'></a><a href='#L1135'>1135</a>
1201
- <a name='L1136'></a><a href='#L1136'>1136</a>
1202
- <a name='L1137'></a><a href='#L1137'>1137</a>
1203
- <a name='L1138'></a><a href='#L1138'>1138</a>
1204
- <a name='L1139'></a><a href='#L1139'>1139</a>
1205
- <a name='L1140'></a><a href='#L1140'>1140</a>
1206
- <a name='L1141'></a><a href='#L1141'>1141</a>
1207
- <a name='L1142'></a><a href='#L1142'>1142</a>
1208
- <a name='L1143'></a><a href='#L1143'>1143</a>
1209
- <a name='L1144'></a><a href='#L1144'>1144</a>
1210
- <a name='L1145'></a><a href='#L1145'>1145</a>
1211
- <a name='L1146'></a><a href='#L1146'>1146</a>
1212
- <a name='L1147'></a><a href='#L1147'>1147</a>
1213
- <a name='L1148'></a><a href='#L1148'>1148</a>
1214
- <a name='L1149'></a><a href='#L1149'>1149</a>
1215
- <a name='L1150'></a><a href='#L1150'>1150</a>
1216
- <a name='L1151'></a><a href='#L1151'>1151</a>
1217
- <a name='L1152'></a><a href='#L1152'>1152</a>
1218
- <a name='L1153'></a><a href='#L1153'>1153</a>
1219
- <a name='L1154'></a><a href='#L1154'>1154</a>
1220
- <a name='L1155'></a><a href='#L1155'>1155</a>
1221
- <a name='L1156'></a><a href='#L1156'>1156</a>
1222
- <a name='L1157'></a><a href='#L1157'>1157</a>
1223
- <a name='L1158'></a><a href='#L1158'>1158</a>
1224
- <a name='L1159'></a><a href='#L1159'>1159</a>
1225
- <a name='L1160'></a><a href='#L1160'>1160</a>
1226
- <a name='L1161'></a><a href='#L1161'>1161</a>
1227
- <a name='L1162'></a><a href='#L1162'>1162</a>
1228
- <a name='L1163'></a><a href='#L1163'>1163</a>
1229
- <a name='L1164'></a><a href='#L1164'>1164</a>
1230
- <a name='L1165'></a><a href='#L1165'>1165</a>
1231
- <a name='L1166'></a><a href='#L1166'>1166</a>
1232
- <a name='L1167'></a><a href='#L1167'>1167</a>
1233
- <a name='L1168'></a><a href='#L1168'>1168</a>
1234
- <a name='L1169'></a><a href='#L1169'>1169</a>
1235
- <a name='L1170'></a><a href='#L1170'>1170</a>
1236
- <a name='L1171'></a><a href='#L1171'>1171</a>
1237
- <a name='L1172'></a><a href='#L1172'>1172</a>
1238
- <a name='L1173'></a><a href='#L1173'>1173</a>
1239
- <a name='L1174'></a><a href='#L1174'>1174</a>
1240
- <a name='L1175'></a><a href='#L1175'>1175</a>
1241
- <a name='L1176'></a><a href='#L1176'>1176</a>
1242
- <a name='L1177'></a><a href='#L1177'>1177</a>
1243
- <a name='L1178'></a><a href='#L1178'>1178</a>
1244
- <a name='L1179'></a><a href='#L1179'>1179</a>
1245
- <a name='L1180'></a><a href='#L1180'>1180</a>
1246
- <a name='L1181'></a><a href='#L1181'>1181</a>
1247
- <a name='L1182'></a><a href='#L1182'>1182</a>
1248
- <a name='L1183'></a><a href='#L1183'>1183</a>
1249
- <a name='L1184'></a><a href='#L1184'>1184</a>
1250
- <a name='L1185'></a><a href='#L1185'>1185</a>
1251
- <a name='L1186'></a><a href='#L1186'>1186</a>
1252
- <a name='L1187'></a><a href='#L1187'>1187</a>
1253
- <a name='L1188'></a><a href='#L1188'>1188</a>
1254
- <a name='L1189'></a><a href='#L1189'>1189</a>
1255
- <a name='L1190'></a><a href='#L1190'>1190</a>
1256
- <a name='L1191'></a><a href='#L1191'>1191</a>
1257
- <a name='L1192'></a><a href='#L1192'>1192</a>
1258
- <a name='L1193'></a><a href='#L1193'>1193</a>
1259
- <a name='L1194'></a><a href='#L1194'>1194</a>
1260
- <a name='L1195'></a><a href='#L1195'>1195</a>
1261
- <a name='L1196'></a><a href='#L1196'>1196</a>
1262
- <a name='L1197'></a><a href='#L1197'>1197</a>
1263
- <a name='L1198'></a><a href='#L1198'>1198</a>
1264
- <a name='L1199'></a><a href='#L1199'>1199</a>
1265
- <a name='L1200'></a><a href='#L1200'>1200</a>
1266
- <a name='L1201'></a><a href='#L1201'>1201</a>
1267
- <a name='L1202'></a><a href='#L1202'>1202</a>
1268
- <a name='L1203'></a><a href='#L1203'>1203</a>
1269
- <a name='L1204'></a><a href='#L1204'>1204</a>
1270
- <a name='L1205'></a><a href='#L1205'>1205</a>
1271
- <a name='L1206'></a><a href='#L1206'>1206</a>
1272
- <a name='L1207'></a><a href='#L1207'>1207</a>
1273
- <a name='L1208'></a><a href='#L1208'>1208</a>
1274
- <a name='L1209'></a><a href='#L1209'>1209</a>
1275
- <a name='L1210'></a><a href='#L1210'>1210</a>
1276
- <a name='L1211'></a><a href='#L1211'>1211</a>
1277
- <a name='L1212'></a><a href='#L1212'>1212</a>
1278
- <a name='L1213'></a><a href='#L1213'>1213</a>
1279
- <a name='L1214'></a><a href='#L1214'>1214</a>
1280
- <a name='L1215'></a><a href='#L1215'>1215</a>
1281
- <a name='L1216'></a><a href='#L1216'>1216</a>
1282
- <a name='L1217'></a><a href='#L1217'>1217</a>
1283
- <a name='L1218'></a><a href='#L1218'>1218</a>
1284
- <a name='L1219'></a><a href='#L1219'>1219</a>
1285
- <a name='L1220'></a><a href='#L1220'>1220</a>
1286
- <a name='L1221'></a><a href='#L1221'>1221</a>
1287
- <a name='L1222'></a><a href='#L1222'>1222</a>
1288
- <a name='L1223'></a><a href='#L1223'>1223</a>
1289
- <a name='L1224'></a><a href='#L1224'>1224</a>
1290
- <a name='L1225'></a><a href='#L1225'>1225</a>
1291
- <a name='L1226'></a><a href='#L1226'>1226</a>
1292
- <a name='L1227'></a><a href='#L1227'>1227</a>
1293
- <a name='L1228'></a><a href='#L1228'>1228</a>
1294
- <a name='L1229'></a><a href='#L1229'>1229</a>
1295
- <a name='L1230'></a><a href='#L1230'>1230</a>
1296
- <a name='L1231'></a><a href='#L1231'>1231</a>
1297
- <a name='L1232'></a><a href='#L1232'>1232</a>
1298
- <a name='L1233'></a><a href='#L1233'>1233</a>
1299
- <a name='L1234'></a><a href='#L1234'>1234</a>
1300
- <a name='L1235'></a><a href='#L1235'>1235</a>
1301
- <a name='L1236'></a><a href='#L1236'>1236</a>
1302
- <a name='L1237'></a><a href='#L1237'>1237</a>
1303
- <a name='L1238'></a><a href='#L1238'>1238</a>
1304
- <a name='L1239'></a><a href='#L1239'>1239</a>
1305
- <a name='L1240'></a><a href='#L1240'>1240</a>
1306
- <a name='L1241'></a><a href='#L1241'>1241</a>
1307
- <a name='L1242'></a><a href='#L1242'>1242</a>
1308
- <a name='L1243'></a><a href='#L1243'>1243</a>
1309
- <a name='L1244'></a><a href='#L1244'>1244</a>
1310
- <a name='L1245'></a><a href='#L1245'>1245</a>
1311
- <a name='L1246'></a><a href='#L1246'>1246</a>
1312
- <a name='L1247'></a><a href='#L1247'>1247</a>
1313
- <a name='L1248'></a><a href='#L1248'>1248</a>
1314
- <a name='L1249'></a><a href='#L1249'>1249</a>
1315
- <a name='L1250'></a><a href='#L1250'>1250</a>
1316
- <a name='L1251'></a><a href='#L1251'>1251</a>
1317
- <a name='L1252'></a><a href='#L1252'>1252</a>
1318
- <a name='L1253'></a><a href='#L1253'>1253</a>
1319
- <a name='L1254'></a><a href='#L1254'>1254</a>
1320
- <a name='L1255'></a><a href='#L1255'>1255</a>
1321
- <a name='L1256'></a><a href='#L1256'>1256</a>
1322
- <a name='L1257'></a><a href='#L1257'>1257</a>
1323
- <a name='L1258'></a><a href='#L1258'>1258</a>
1324
- <a name='L1259'></a><a href='#L1259'>1259</a>
1325
- <a name='L1260'></a><a href='#L1260'>1260</a>
1326
- <a name='L1261'></a><a href='#L1261'>1261</a>
1327
- <a name='L1262'></a><a href='#L1262'>1262</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
1328
- <span class="cline-any cline-yes">1x</span>
1329
- <span class="cline-any cline-neutral">&nbsp;</span>
1330
- <span class="cline-any cline-neutral">&nbsp;</span>
1331
- <span class="cline-any cline-yes">1x</span>
1332
- <span class="cline-any cline-neutral">&nbsp;</span>
1333
- <span class="cline-any cline-yes">1x</span>
1334
- <span class="cline-any cline-yes">1x</span>
1335
- <span class="cline-any cline-yes">1x</span>
1336
- <span class="cline-any cline-neutral">&nbsp;</span>
1337
- <span class="cline-any cline-neutral">&nbsp;</span>
1338
- <span class="cline-any cline-yes">1x</span>
1339
- <span class="cline-any cline-yes">1x</span>
1340
- <span class="cline-any cline-neutral">&nbsp;</span>
1341
- <span class="cline-any cline-neutral">&nbsp;</span>
1342
- <span class="cline-any cline-neutral">&nbsp;</span>
1343
- <span class="cline-any cline-neutral">&nbsp;</span>
1344
- <span class="cline-any cline-no">&nbsp;</span>
1345
- <span class="cline-any cline-no">&nbsp;</span>
1346
- <span class="cline-any cline-neutral">&nbsp;</span>
1347
- <span class="cline-any cline-no">&nbsp;</span>
1348
- <span class="cline-any cline-no">&nbsp;</span>
1349
- <span class="cline-any cline-no">&nbsp;</span>
1350
- <span class="cline-any cline-no">&nbsp;</span>
1351
- <span class="cline-any cline-no">&nbsp;</span>
1352
- <span class="cline-any cline-no">&nbsp;</span>
1353
- <span class="cline-any cline-no">&nbsp;</span>
1354
- <span class="cline-any cline-no">&nbsp;</span>
1355
- <span class="cline-any cline-no">&nbsp;</span>
1356
- <span class="cline-any cline-no">&nbsp;</span>
1357
- <span class="cline-any cline-no">&nbsp;</span>
1358
- <span class="cline-any cline-no">&nbsp;</span>
1359
- <span class="cline-any cline-no">&nbsp;</span>
1360
- <span class="cline-any cline-neutral">&nbsp;</span>
1361
- <span class="cline-any cline-neutral">&nbsp;</span>
1362
- <span class="cline-any cline-no">&nbsp;</span>
1363
- <span class="cline-any cline-neutral">&nbsp;</span>
1364
- <span class="cline-any cline-neutral">&nbsp;</span>
1365
- <span class="cline-any cline-no">&nbsp;</span>
1366
- <span class="cline-any cline-neutral">&nbsp;</span>
1367
- <span class="cline-any cline-neutral">&nbsp;</span>
1368
- <span class="cline-any cline-neutral">&nbsp;</span>
1369
- <span class="cline-any cline-neutral">&nbsp;</span>
1370
- <span class="cline-any cline-no">&nbsp;</span>
1371
- <span class="cline-any cline-neutral">&nbsp;</span>
1372
- <span class="cline-any cline-no">&nbsp;</span>
1373
- <span class="cline-any cline-neutral">&nbsp;</span>
1374
- <span class="cline-any cline-neutral">&nbsp;</span>
1375
- <span class="cline-any cline-neutral">&nbsp;</span>
1376
- <span class="cline-any cline-neutral">&nbsp;</span>
1377
- <span class="cline-any cline-neutral">&nbsp;</span>
1378
- <span class="cline-any cline-neutral">&nbsp;</span>
1379
- <span class="cline-any cline-neutral">&nbsp;</span>
1380
- <span class="cline-any cline-yes">1x</span>
1381
- <span class="cline-any cline-yes">1x</span>
1382
- <span class="cline-any cline-neutral">&nbsp;</span>
1383
- <span class="cline-any cline-neutral">&nbsp;</span>
1384
- <span class="cline-any cline-neutral">&nbsp;</span>
1385
- <span class="cline-any cline-neutral">&nbsp;</span>
1386
- <span class="cline-any cline-neutral">&nbsp;</span>
1387
- <span class="cline-any cline-neutral">&nbsp;</span>
1388
- <span class="cline-any cline-yes">6134x</span>
1389
- <span class="cline-any cline-neutral">&nbsp;</span>
1390
- <span class="cline-any cline-neutral">&nbsp;</span>
1391
- <span class="cline-any cline-neutral">&nbsp;</span>
1392
- <span class="cline-any cline-yes">1x</span>
1393
- <span class="cline-any cline-neutral">&nbsp;</span>
1394
- <span class="cline-any cline-neutral">&nbsp;</span>
1395
- <span class="cline-any cline-neutral">&nbsp;</span>
1396
- <span class="cline-any cline-neutral">&nbsp;</span>
1397
- <span class="cline-any cline-neutral">&nbsp;</span>
1398
- <span class="cline-any cline-yes">1x</span>
1399
- <span class="cline-any cline-yes">36566x</span>
1400
- <span class="cline-any cline-neutral">&nbsp;</span>
1401
- <span class="cline-any cline-neutral">&nbsp;</span>
1402
- <span class="cline-any cline-no">&nbsp;</span>
1403
- <span class="cline-any cline-no">&nbsp;</span>
1404
- <span class="cline-any cline-no">&nbsp;</span>
1405
- <span class="cline-any cline-no">&nbsp;</span>
1406
- <span class="cline-any cline-neutral">&nbsp;</span>
1407
- <span class="cline-any cline-no">&nbsp;</span>
1408
- <span class="cline-any cline-neutral">&nbsp;</span>
1409
- <span class="cline-any cline-neutral">&nbsp;</span>
1410
- <span class="cline-any cline-neutral">&nbsp;</span>
1411
- <span class="cline-any cline-neutral">&nbsp;</span>
1412
- <span class="cline-any cline-neutral">&nbsp;</span>
1413
- <span class="cline-any cline-neutral">&nbsp;</span>
1414
- <span class="cline-any cline-neutral">&nbsp;</span>
1415
- <span class="cline-any cline-neutral">&nbsp;</span>
1416
- <span class="cline-any cline-neutral">&nbsp;</span>
1417
- <span class="cline-any cline-neutral">&nbsp;</span>
1418
- <span class="cline-any cline-neutral">&nbsp;</span>
1419
- <span class="cline-any cline-neutral">&nbsp;</span>
1420
- <span class="cline-any cline-neutral">&nbsp;</span>
1421
- <span class="cline-any cline-yes">6134x</span>
1422
- <span class="cline-any cline-neutral">&nbsp;</span>
1423
- <span class="cline-any cline-neutral">&nbsp;</span>
1424
- <span class="cline-any cline-neutral">&nbsp;</span>
1425
- <span class="cline-any cline-neutral">&nbsp;</span>
1426
- <span class="cline-any cline-neutral">&nbsp;</span>
1427
- <span class="cline-any cline-yes">1x</span>
1428
- <span class="cline-any cline-neutral">&nbsp;</span>
1429
- <span class="cline-any cline-neutral">&nbsp;</span>
1430
- <span class="cline-any cline-neutral">&nbsp;</span>
1431
- <span class="cline-any cline-neutral">&nbsp;</span>
1432
- <span class="cline-any cline-neutral">&nbsp;</span>
1433
- <span class="cline-any cline-yes">1x</span>
1434
- <span class="cline-any cline-neutral">&nbsp;</span>
1435
- <span class="cline-any cline-neutral">&nbsp;</span>
1436
- <span class="cline-any cline-neutral">&nbsp;</span>
1437
- <span class="cline-any cline-neutral">&nbsp;</span>
1438
- <span class="cline-any cline-neutral">&nbsp;</span>
1439
- <span class="cline-any cline-yes">1x</span>
1440
- <span class="cline-any cline-neutral">&nbsp;</span>
1441
- <span class="cline-any cline-neutral">&nbsp;</span>
1442
- <span class="cline-any cline-yes">1x</span>
1443
- <span class="cline-any cline-neutral">&nbsp;</span>
1444
- <span class="cline-any cline-neutral">&nbsp;</span>
1445
- <span class="cline-any cline-neutral">&nbsp;</span>
1446
- <span class="cline-any cline-neutral">&nbsp;</span>
1447
- <span class="cline-any cline-neutral">&nbsp;</span>
1448
- <span class="cline-any cline-neutral">&nbsp;</span>
1449
- <span class="cline-any cline-neutral">&nbsp;</span>
1450
- <span class="cline-any cline-neutral">&nbsp;</span>
1451
- <span class="cline-any cline-neutral">&nbsp;</span>
1452
- <span class="cline-any cline-yes">1x</span>
1453
- <span class="cline-any cline-neutral">&nbsp;</span>
1454
- <span class="cline-any cline-neutral">&nbsp;</span>
1455
- <span class="cline-any cline-neutral">&nbsp;</span>
1456
- <span class="cline-any cline-neutral">&nbsp;</span>
1457
- <span class="cline-any cline-neutral">&nbsp;</span>
1458
- <span class="cline-any cline-yes">6134x</span>
1459
- <span class="cline-any cline-neutral">&nbsp;</span>
1460
- <span class="cline-any cline-yes">6134x</span>
1461
- <span class="cline-any cline-neutral">&nbsp;</span>
1462
- <span class="cline-any cline-neutral">&nbsp;</span>
1463
- <span class="cline-any cline-neutral">&nbsp;</span>
1464
- <span class="cline-any cline-neutral">&nbsp;</span>
1465
- <span class="cline-any cline-neutral">&nbsp;</span>
1466
- <span class="cline-any cline-neutral">&nbsp;</span>
1467
- <span class="cline-any cline-yes">1x</span>
1468
- <span class="cline-any cline-neutral">&nbsp;</span>
1469
- <span class="cline-any cline-neutral">&nbsp;</span>
1470
- <span class="cline-any cline-neutral">&nbsp;</span>
1471
- <span class="cline-any cline-neutral">&nbsp;</span>
1472
- <span class="cline-any cline-neutral">&nbsp;</span>
1473
- <span class="cline-any cline-neutral">&nbsp;</span>
1474
- <span class="cline-any cline-yes">1x</span>
1475
- <span class="cline-any cline-neutral">&nbsp;</span>
1476
- <span class="cline-any cline-neutral">&nbsp;</span>
1477
- <span class="cline-any cline-neutral">&nbsp;</span>
1478
- <span class="cline-any cline-neutral">&nbsp;</span>
1479
- <span class="cline-any cline-neutral">&nbsp;</span>
1480
- <span class="cline-any cline-neutral">&nbsp;</span>
1481
- <span class="cline-any cline-yes">1x</span>
1482
- <span class="cline-any cline-neutral">&nbsp;</span>
1483
- <span class="cline-any cline-neutral">&nbsp;</span>
1484
- <span class="cline-any cline-neutral">&nbsp;</span>
1485
- <span class="cline-any cline-neutral">&nbsp;</span>
1486
- <span class="cline-any cline-neutral">&nbsp;</span>
1487
- <span class="cline-any cline-neutral">&nbsp;</span>
1488
- <span class="cline-any cline-yes">1x</span>
1489
- <span class="cline-any cline-neutral">&nbsp;</span>
1490
- <span class="cline-any cline-neutral">&nbsp;</span>
1491
- <span class="cline-any cline-neutral">&nbsp;</span>
1492
- <span class="cline-any cline-neutral">&nbsp;</span>
1493
- <span class="cline-any cline-neutral">&nbsp;</span>
1494
- <span class="cline-any cline-neutral">&nbsp;</span>
1495
- <span class="cline-any cline-yes">1x</span>
1496
- <span class="cline-any cline-neutral">&nbsp;</span>
1497
- <span class="cline-any cline-neutral">&nbsp;</span>
1498
- <span class="cline-any cline-neutral">&nbsp;</span>
1499
- <span class="cline-any cline-neutral">&nbsp;</span>
1500
- <span class="cline-any cline-neutral">&nbsp;</span>
1501
- <span class="cline-any cline-neutral">&nbsp;</span>
1502
- <span class="cline-any cline-yes">1x</span>
1503
- <span class="cline-any cline-neutral">&nbsp;</span>
1504
- <span class="cline-any cline-neutral">&nbsp;</span>
1505
- <span class="cline-any cline-neutral">&nbsp;</span>
1506
- <span class="cline-any cline-neutral">&nbsp;</span>
1507
- <span class="cline-any cline-neutral">&nbsp;</span>
1508
- <span class="cline-any cline-neutral">&nbsp;</span>
1509
- <span class="cline-any cline-yes">1x</span>
1510
- <span class="cline-any cline-neutral">&nbsp;</span>
1511
- <span class="cline-any cline-neutral">&nbsp;</span>
1512
- <span class="cline-any cline-neutral">&nbsp;</span>
1513
- <span class="cline-any cline-neutral">&nbsp;</span>
1514
- <span class="cline-any cline-neutral">&nbsp;</span>
1515
- <span class="cline-any cline-neutral">&nbsp;</span>
1516
- <span class="cline-any cline-yes">1x</span>
1517
- <span class="cline-any cline-neutral">&nbsp;</span>
1518
- <span class="cline-any cline-neutral">&nbsp;</span>
1519
- <span class="cline-any cline-neutral">&nbsp;</span>
1520
- <span class="cline-any cline-neutral">&nbsp;</span>
1521
- <span class="cline-any cline-neutral">&nbsp;</span>
1522
- <span class="cline-any cline-neutral">&nbsp;</span>
1523
- <span class="cline-any cline-yes">1x</span>
1524
- <span class="cline-any cline-neutral">&nbsp;</span>
1525
- <span class="cline-any cline-neutral">&nbsp;</span>
1526
- <span class="cline-any cline-neutral">&nbsp;</span>
1527
- <span class="cline-any cline-neutral">&nbsp;</span>
1528
- <span class="cline-any cline-neutral">&nbsp;</span>
1529
- <span class="cline-any cline-neutral">&nbsp;</span>
1530
- <span class="cline-any cline-yes">1x</span>
1531
- <span class="cline-any cline-neutral">&nbsp;</span>
1532
- <span class="cline-any cline-neutral">&nbsp;</span>
1533
- <span class="cline-any cline-neutral">&nbsp;</span>
1534
- <span class="cline-any cline-neutral">&nbsp;</span>
1535
- <span class="cline-any cline-neutral">&nbsp;</span>
1536
- <span class="cline-any cline-neutral">&nbsp;</span>
1537
- <span class="cline-any cline-yes">1x</span>
1538
- <span class="cline-any cline-neutral">&nbsp;</span>
1539
- <span class="cline-any cline-neutral">&nbsp;</span>
1540
- <span class="cline-any cline-neutral">&nbsp;</span>
1541
- <span class="cline-any cline-neutral">&nbsp;</span>
1542
- <span class="cline-any cline-neutral">&nbsp;</span>
1543
- <span class="cline-any cline-yes">1x</span>
1544
- <span class="cline-any cline-neutral">&nbsp;</span>
1545
- <span class="cline-any cline-neutral">&nbsp;</span>
1546
- <span class="cline-any cline-neutral">&nbsp;</span>
1547
- <span class="cline-any cline-neutral">&nbsp;</span>
1548
- <span class="cline-any cline-neutral">&nbsp;</span>
1549
- <span class="cline-any cline-neutral">&nbsp;</span>
1550
- <span class="cline-any cline-yes">1x</span>
1551
- <span class="cline-any cline-neutral">&nbsp;</span>
1552
- <span class="cline-any cline-neutral">&nbsp;</span>
1553
- <span class="cline-any cline-yes">1x</span>
1554
- <span class="cline-any cline-neutral">&nbsp;</span>
1555
- <span class="cline-any cline-neutral">&nbsp;</span>
1556
- <span class="cline-any cline-neutral">&nbsp;</span>
1557
- <span class="cline-any cline-neutral">&nbsp;</span>
1558
- <span class="cline-any cline-neutral">&nbsp;</span>
1559
- <span class="cline-any cline-neutral">&nbsp;</span>
1560
- <span class="cline-any cline-neutral">&nbsp;</span>
1561
- <span class="cline-any cline-yes">6134x</span>
1562
- <span class="cline-any cline-neutral">&nbsp;</span>
1563
- <span class="cline-any cline-neutral">&nbsp;</span>
1564
- <span class="cline-any cline-neutral">&nbsp;</span>
1565
- <span class="cline-any cline-neutral">&nbsp;</span>
1566
- <span class="cline-any cline-neutral">&nbsp;</span>
1567
- <span class="cline-any cline-yes">1x</span>
1568
- <span class="cline-any cline-neutral">&nbsp;</span>
1569
- <span class="cline-any cline-neutral">&nbsp;</span>
1570
- <span class="cline-any cline-neutral">&nbsp;</span>
1571
- <span class="cline-any cline-neutral">&nbsp;</span>
1572
- <span class="cline-any cline-neutral">&nbsp;</span>
1573
- <span class="cline-any cline-yes">1x</span>
1574
- <span class="cline-any cline-neutral">&nbsp;</span>
1575
- <span class="cline-any cline-neutral">&nbsp;</span>
1576
- <span class="cline-any cline-neutral">&nbsp;</span>
1577
- <span class="cline-any cline-neutral">&nbsp;</span>
1578
- <span class="cline-any cline-neutral">&nbsp;</span>
1579
- <span class="cline-any cline-yes">6134x</span>
1580
- <span class="cline-any cline-yes">6134x</span>
1581
- <span class="cline-any cline-neutral">&nbsp;</span>
1582
- <span class="cline-any cline-neutral">&nbsp;</span>
1583
- <span class="cline-any cline-neutral">&nbsp;</span>
1584
- <span class="cline-any cline-yes">6134x</span>
1585
- <span class="cline-any cline-yes">6134x</span>
1586
- <span class="cline-any cline-yes">6134x</span>
1587
- <span class="cline-any cline-neutral">&nbsp;</span>
1588
- <span class="cline-any cline-neutral">&nbsp;</span>
1589
- <span class="cline-any cline-neutral">&nbsp;</span>
1590
- <span class="cline-any cline-neutral">&nbsp;</span>
1591
- <span class="cline-any cline-yes">6134x</span>
1592
- <span class="cline-any cline-yes">6134x</span>
1593
- <span class="cline-any cline-yes">6134x</span>
1594
- <span class="cline-any cline-neutral">&nbsp;</span>
1595
- <span class="cline-any cline-neutral">&nbsp;</span>
1596
- <span class="cline-any cline-neutral">&nbsp;</span>
1597
- <span class="cline-any cline-yes">11550x</span>
1598
- <span class="cline-any cline-yes">443764x</span>
1599
- <span class="cline-any cline-neutral">&nbsp;</span>
1600
- <span class="cline-any cline-neutral">&nbsp;</span>
1601
- <span class="cline-any cline-yes">11550x</span>
1602
- <span class="cline-any cline-yes">8629x</span>
1603
- <span class="cline-any cline-neutral">&nbsp;</span>
1604
- <span class="cline-any cline-neutral">&nbsp;</span>
1605
- <span class="cline-any cline-yes">11550x</span>
1606
- <span class="cline-any cline-yes">184163x</span>
1607
- <span class="cline-any cline-yes">11544x</span>
1608
- <span class="cline-any cline-neutral">&nbsp;</span>
1609
- <span class="cline-any cline-neutral">&nbsp;</span>
1610
- <span class="cline-any cline-yes">172619x</span>
1611
- <span class="cline-any cline-neutral">&nbsp;</span>
1612
- <span class="cline-any cline-yes">172619x</span>
1613
- <span class="cline-any cline-neutral">&nbsp;</span>
1614
- <span class="cline-any cline-neutral">&nbsp;</span>
1615
- <span class="cline-any cline-neutral">&nbsp;</span>
1616
- <span class="cline-any cline-yes">172619x</span>
1617
- <span class="cline-any cline-yes">42x</span>
1618
- <span class="cline-any cline-neutral">&nbsp;</span>
1619
- <span class="cline-any cline-neutral">&nbsp;</span>
1620
- <span class="cline-any cline-yes">172619x</span>
1621
- <span class="cline-any cline-yes">172619x</span>
1622
- <span class="cline-any cline-yes">25837x</span>
1623
- <span class="cline-any cline-yes">25837x</span>
1624
- <span class="cline-any cline-yes">26007x</span>
1625
- <span class="cline-any cline-yes">26007x</span>
1626
- <span class="cline-any cline-yes">1144x</span>
1627
- <span class="cline-any cline-yes">1144x</span>
1628
- <span class="cline-any cline-yes">1144x</span>
1629
- <span class="cline-any cline-neutral">&nbsp;</span>
1630
- <span class="cline-any cline-neutral">&nbsp;</span>
1631
- <span class="cline-any cline-neutral">&nbsp;</span>
1632
- <span class="cline-any cline-neutral">&nbsp;</span>
1633
- <span class="cline-any cline-neutral">&nbsp;</span>
1634
- <span class="cline-any cline-yes">172619x</span>
1635
- <span class="cline-any cline-neutral">&nbsp;</span>
1636
- <span class="cline-any cline-yes">172619x</span>
1637
- <span class="cline-any cline-yes">52468x</span>
1638
- <span class="cline-any cline-neutral">&nbsp;</span>
1639
- <span class="cline-any cline-neutral">&nbsp;</span>
1640
- <span class="cline-any cline-neutral">&nbsp;</span>
1641
- <span class="cline-any cline-no">&nbsp;</span>
1642
- <span class="cline-any cline-neutral">&nbsp;</span>
1643
- <span class="cline-any cline-neutral">&nbsp;</span>
1644
- <span class="cline-any cline-neutral">&nbsp;</span>
1645
- <span class="cline-any cline-yes">11550x</span>
1646
- <span class="cline-any cline-neutral">&nbsp;</span>
1647
- <span class="cline-any cline-yes">11550x</span>
1648
- <span class="cline-any cline-yes">7517x</span>
1649
- <span class="cline-any cline-neutral">&nbsp;</span>
1650
- <span class="cline-any cline-neutral">&nbsp;</span>
1651
- <span class="cline-any cline-neutral">&nbsp;</span>
1652
- <span class="cline-any cline-neutral">&nbsp;</span>
1653
- <span class="cline-any cline-no">&nbsp;</span>
1654
- <span class="cline-any cline-no">&nbsp;</span>
1655
- <span class="cline-any cline-neutral">&nbsp;</span>
1656
- <span class="cline-any cline-no">&nbsp;</span>
1657
- <span class="cline-any cline-no">&nbsp;</span>
1658
- <span class="cline-any cline-no">&nbsp;</span>
1659
- <span class="cline-any cline-no">&nbsp;</span>
1660
- <span class="cline-any cline-no">&nbsp;</span>
1661
- <span class="cline-any cline-no">&nbsp;</span>
1662
- <span class="cline-any cline-no">&nbsp;</span>
1663
- <span class="cline-any cline-no">&nbsp;</span>
1664
- <span class="cline-any cline-no">&nbsp;</span>
1665
- <span class="cline-any cline-no">&nbsp;</span>
1666
- <span class="cline-any cline-no">&nbsp;</span>
1667
- <span class="cline-any cline-neutral">&nbsp;</span>
1668
- <span class="cline-any cline-no">&nbsp;</span>
1669
- <span class="cline-any cline-neutral">&nbsp;</span>
1670
- <span class="cline-any cline-neutral">&nbsp;</span>
1671
- <span class="cline-any cline-no">&nbsp;</span>
1672
- <span class="cline-any cline-no">&nbsp;</span>
1673
- <span class="cline-any cline-no">&nbsp;</span>
1674
- <span class="cline-any cline-no">&nbsp;</span>
1675
- <span class="cline-any cline-neutral">&nbsp;</span>
1676
- <span class="cline-any cline-no">&nbsp;</span>
1677
- <span class="cline-any cline-neutral">&nbsp;</span>
1678
- <span class="cline-any cline-neutral">&nbsp;</span>
1679
- <span class="cline-any cline-neutral">&nbsp;</span>
1680
- <span class="cline-any cline-neutral">&nbsp;</span>
1681
- <span class="cline-any cline-neutral">&nbsp;</span>
1682
- <span class="cline-any cline-neutral">&nbsp;</span>
1683
- <span class="cline-any cline-no">&nbsp;</span>
1684
- <span class="cline-any cline-no">&nbsp;</span>
1685
- <span class="cline-any cline-no">&nbsp;</span>
1686
- <span class="cline-any cline-no">&nbsp;</span>
1687
- <span class="cline-any cline-no">&nbsp;</span>
1688
- <span class="cline-any cline-no">&nbsp;</span>
1689
- <span class="cline-any cline-no">&nbsp;</span>
1690
- <span class="cline-any cline-neutral">&nbsp;</span>
1691
- <span class="cline-any cline-neutral">&nbsp;</span>
1692
- <span class="cline-any cline-no">&nbsp;</span>
1693
- <span class="cline-any cline-neutral">&nbsp;</span>
1694
- <span class="cline-any cline-neutral">&nbsp;</span>
1695
- <span class="cline-any cline-neutral">&nbsp;</span>
1696
- <span class="cline-any cline-neutral">&nbsp;</span>
1697
- <span class="cline-any cline-neutral">&nbsp;</span>
1698
- <span class="cline-any cline-neutral">&nbsp;</span>
1699
- <span class="cline-any cline-neutral">&nbsp;</span>
1700
- <span class="cline-any cline-neutral">&nbsp;</span>
1701
- <span class="cline-any cline-neutral">&nbsp;</span>
1702
- <span class="cline-any cline-no">&nbsp;</span>
1703
- <span class="cline-any cline-no">&nbsp;</span>
1704
- <span class="cline-any cline-neutral">&nbsp;</span>
1705
- <span class="cline-any cline-no">&nbsp;</span>
1706
- <span class="cline-any cline-no">&nbsp;</span>
1707
- <span class="cline-any cline-neutral">&nbsp;</span>
1708
- <span class="cline-any cline-no">&nbsp;</span>
1709
- <span class="cline-any cline-no">&nbsp;</span>
1710
- <span class="cline-any cline-no">&nbsp;</span>
1711
- <span class="cline-any cline-no">&nbsp;</span>
1712
- <span class="cline-any cline-no">&nbsp;</span>
1713
- <span class="cline-any cline-no">&nbsp;</span>
1714
- <span class="cline-any cline-neutral">&nbsp;</span>
1715
- <span class="cline-any cline-neutral">&nbsp;</span>
1716
- <span class="cline-any cline-neutral">&nbsp;</span>
1717
- <span class="cline-any cline-neutral">&nbsp;</span>
1718
- <span class="cline-any cline-neutral">&nbsp;</span>
1719
- <span class="cline-any cline-neutral">&nbsp;</span>
1720
- <span class="cline-any cline-neutral">&nbsp;</span>
1721
- <span class="cline-any cline-neutral">&nbsp;</span>
1722
- <span class="cline-any cline-neutral">&nbsp;</span>
1723
- <span class="cline-any cline-no">&nbsp;</span>
1724
- <span class="cline-any cline-neutral">&nbsp;</span>
1725
- <span class="cline-any cline-neutral">&nbsp;</span>
1726
- <span class="cline-any cline-neutral">&nbsp;</span>
1727
- <span class="cline-any cline-neutral">&nbsp;</span>
1728
- <span class="cline-any cline-no">&nbsp;</span>
1729
- <span class="cline-any cline-no">&nbsp;</span>
1730
- <span class="cline-any cline-no">&nbsp;</span>
1731
- <span class="cline-any cline-no">&nbsp;</span>
1732
- <span class="cline-any cline-neutral">&nbsp;</span>
1733
- <span class="cline-any cline-no">&nbsp;</span>
1734
- <span class="cline-any cline-neutral">&nbsp;</span>
1735
- <span class="cline-any cline-no">&nbsp;</span>
1736
- <span class="cline-any cline-no">&nbsp;</span>
1737
- <span class="cline-any cline-no">&nbsp;</span>
1738
- <span class="cline-any cline-neutral">&nbsp;</span>
1739
- <span class="cline-any cline-neutral">&nbsp;</span>
1740
- <span class="cline-any cline-neutral">&nbsp;</span>
1741
- <span class="cline-any cline-neutral">&nbsp;</span>
1742
- <span class="cline-any cline-neutral">&nbsp;</span>
1743
- <span class="cline-any cline-neutral">&nbsp;</span>
1744
- <span class="cline-any cline-neutral">&nbsp;</span>
1745
- <span class="cline-any cline-no">&nbsp;</span>
1746
- <span class="cline-any cline-no">&nbsp;</span>
1747
- <span class="cline-any cline-no">&nbsp;</span>
1748
- <span class="cline-any cline-neutral">&nbsp;</span>
1749
- <span class="cline-any cline-neutral">&nbsp;</span>
1750
- <span class="cline-any cline-neutral">&nbsp;</span>
1751
- <span class="cline-any cline-neutral">&nbsp;</span>
1752
- <span class="cline-any cline-neutral">&nbsp;</span>
1753
- <span class="cline-any cline-neutral">&nbsp;</span>
1754
- <span class="cline-any cline-neutral">&nbsp;</span>
1755
- <span class="cline-any cline-no">&nbsp;</span>
1756
- <span class="cline-any cline-neutral">&nbsp;</span>
1757
- <span class="cline-any cline-neutral">&nbsp;</span>
1758
- <span class="cline-any cline-neutral">&nbsp;</span>
1759
- <span class="cline-any cline-neutral">&nbsp;</span>
1760
- <span class="cline-any cline-neutral">&nbsp;</span>
1761
- <span class="cline-any cline-neutral">&nbsp;</span>
1762
- <span class="cline-any cline-neutral">&nbsp;</span>
1763
- <span class="cline-any cline-neutral">&nbsp;</span>
1764
- <span class="cline-any cline-neutral">&nbsp;</span>
1765
- <span class="cline-any cline-neutral">&nbsp;</span>
1766
- <span class="cline-any cline-neutral">&nbsp;</span>
1767
- <span class="cline-any cline-neutral">&nbsp;</span>
1768
- <span class="cline-any cline-neutral">&nbsp;</span>
1769
- <span class="cline-any cline-no">&nbsp;</span>
1770
- <span class="cline-any cline-no">&nbsp;</span>
1771
- <span class="cline-any cline-no">&nbsp;</span>
1772
- <span class="cline-any cline-neutral">&nbsp;</span>
1773
- <span class="cline-any cline-neutral">&nbsp;</span>
1774
- <span class="cline-any cline-no">&nbsp;</span>
1775
- <span class="cline-any cline-no">&nbsp;</span>
1776
- <span class="cline-any cline-no">&nbsp;</span>
1777
- <span class="cline-any cline-no">&nbsp;</span>
1778
- <span class="cline-any cline-no">&nbsp;</span>
1779
- <span class="cline-any cline-no">&nbsp;</span>
1780
- <span class="cline-any cline-neutral">&nbsp;</span>
1781
- <span class="cline-any cline-neutral">&nbsp;</span>
1782
- <span class="cline-any cline-neutral">&nbsp;</span>
1783
- <span class="cline-any cline-neutral">&nbsp;</span>
1784
- <span class="cline-any cline-neutral">&nbsp;</span>
1785
- <span class="cline-any cline-neutral">&nbsp;</span>
1786
- <span class="cline-any cline-no">&nbsp;</span>
1787
- <span class="cline-any cline-no">&nbsp;</span>
1788
- <span class="cline-any cline-neutral">&nbsp;</span>
1789
- <span class="cline-any cline-neutral">&nbsp;</span>
1790
- <span class="cline-any cline-neutral">&nbsp;</span>
1791
- <span class="cline-any cline-neutral">&nbsp;</span>
1792
- <span class="cline-any cline-neutral">&nbsp;</span>
1793
- <span class="cline-any cline-neutral">&nbsp;</span>
1794
- <span class="cline-any cline-neutral">&nbsp;</span>
1795
- <span class="cline-any cline-neutral">&nbsp;</span>
1796
- <span class="cline-any cline-neutral">&nbsp;</span>
1797
- <span class="cline-any cline-neutral">&nbsp;</span>
1798
- <span class="cline-any cline-neutral">&nbsp;</span>
1799
- <span class="cline-any cline-neutral">&nbsp;</span>
1800
- <span class="cline-any cline-neutral">&nbsp;</span>
1801
- <span class="cline-any cline-neutral">&nbsp;</span>
1802
- <span class="cline-any cline-neutral">&nbsp;</span>
1803
- <span class="cline-any cline-neutral">&nbsp;</span>
1804
- <span class="cline-any cline-neutral">&nbsp;</span>
1805
- <span class="cline-any cline-neutral">&nbsp;</span>
1806
- <span class="cline-any cline-no">&nbsp;</span>
1807
- <span class="cline-any cline-no">&nbsp;</span>
1808
- <span class="cline-any cline-no">&nbsp;</span>
1809
- <span class="cline-any cline-neutral">&nbsp;</span>
1810
- <span class="cline-any cline-neutral">&nbsp;</span>
1811
- <span class="cline-any cline-no">&nbsp;</span>
1812
- <span class="cline-any cline-no">&nbsp;</span>
1813
- <span class="cline-any cline-no">&nbsp;</span>
1814
- <span class="cline-any cline-no">&nbsp;</span>
1815
- <span class="cline-any cline-neutral">&nbsp;</span>
1816
- <span class="cline-any cline-no">&nbsp;</span>
1817
- <span class="cline-any cline-no">&nbsp;</span>
1818
- <span class="cline-any cline-no">&nbsp;</span>
1819
- <span class="cline-any cline-neutral">&nbsp;</span>
1820
- <span class="cline-any cline-neutral">&nbsp;</span>
1821
- <span class="cline-any cline-neutral">&nbsp;</span>
1822
- <span class="cline-any cline-no">&nbsp;</span>
1823
- <span class="cline-any cline-no">&nbsp;</span>
1824
- <span class="cline-any cline-neutral">&nbsp;</span>
1825
- <span class="cline-any cline-neutral">&nbsp;</span>
1826
- <span class="cline-any cline-no">&nbsp;</span>
1827
- <span class="cline-any cline-no">&nbsp;</span>
1828
- <span class="cline-any cline-no">&nbsp;</span>
1829
- <span class="cline-any cline-no">&nbsp;</span>
1830
- <span class="cline-any cline-no">&nbsp;</span>
1831
- <span class="cline-any cline-no">&nbsp;</span>
1832
- <span class="cline-any cline-no">&nbsp;</span>
1833
- <span class="cline-any cline-neutral">&nbsp;</span>
1834
- <span class="cline-any cline-no">&nbsp;</span>
1835
- <span class="cline-any cline-neutral">&nbsp;</span>
1836
- <span class="cline-any cline-neutral">&nbsp;</span>
1837
- <span class="cline-any cline-neutral">&nbsp;</span>
1838
- <span class="cline-any cline-neutral">&nbsp;</span>
1839
- <span class="cline-any cline-neutral">&nbsp;</span>
1840
- <span class="cline-any cline-neutral">&nbsp;</span>
1841
- <span class="cline-any cline-no">&nbsp;</span>
1842
- <span class="cline-any cline-no">&nbsp;</span>
1843
- <span class="cline-any cline-neutral">&nbsp;</span>
1844
- <span class="cline-any cline-neutral">&nbsp;</span>
1845
- <span class="cline-any cline-neutral">&nbsp;</span>
1846
- <span class="cline-any cline-neutral">&nbsp;</span>
1847
- <span class="cline-any cline-neutral">&nbsp;</span>
1848
- <span class="cline-any cline-neutral">&nbsp;</span>
1849
- <span class="cline-any cline-neutral">&nbsp;</span>
1850
- <span class="cline-any cline-neutral">&nbsp;</span>
1851
- <span class="cline-any cline-neutral">&nbsp;</span>
1852
- <span class="cline-any cline-neutral">&nbsp;</span>
1853
- <span class="cline-any cline-neutral">&nbsp;</span>
1854
- <span class="cline-any cline-neutral">&nbsp;</span>
1855
- <span class="cline-any cline-neutral">&nbsp;</span>
1856
- <span class="cline-any cline-neutral">&nbsp;</span>
1857
- <span class="cline-any cline-neutral">&nbsp;</span>
1858
- <span class="cline-any cline-neutral">&nbsp;</span>
1859
- <span class="cline-any cline-neutral">&nbsp;</span>
1860
- <span class="cline-any cline-no">&nbsp;</span>
1861
- <span class="cline-any cline-no">&nbsp;</span>
1862
- <span class="cline-any cline-no">&nbsp;</span>
1863
- <span class="cline-any cline-no">&nbsp;</span>
1864
- <span class="cline-any cline-no">&nbsp;</span>
1865
- <span class="cline-any cline-neutral">&nbsp;</span>
1866
- <span class="cline-any cline-neutral">&nbsp;</span>
1867
- <span class="cline-any cline-no">&nbsp;</span>
1868
- <span class="cline-any cline-no">&nbsp;</span>
1869
- <span class="cline-any cline-no">&nbsp;</span>
1870
- <span class="cline-any cline-no">&nbsp;</span>
1871
- <span class="cline-any cline-no">&nbsp;</span>
1872
- <span class="cline-any cline-no">&nbsp;</span>
1873
- <span class="cline-any cline-no">&nbsp;</span>
1874
- <span class="cline-any cline-no">&nbsp;</span>
1875
- <span class="cline-any cline-neutral">&nbsp;</span>
1876
- <span class="cline-any cline-no">&nbsp;</span>
1877
- <span class="cline-any cline-neutral">&nbsp;</span>
1878
- <span class="cline-any cline-no">&nbsp;</span>
1879
- <span class="cline-any cline-no">&nbsp;</span>
1880
- <span class="cline-any cline-neutral">&nbsp;</span>
1881
- <span class="cline-any cline-no">&nbsp;</span>
1882
- <span class="cline-any cline-no">&nbsp;</span>
1883
- <span class="cline-any cline-no">&nbsp;</span>
1884
- <span class="cline-any cline-no">&nbsp;</span>
1885
- <span class="cline-any cline-no">&nbsp;</span>
1886
- <span class="cline-any cline-no">&nbsp;</span>
1887
- <span class="cline-any cline-no">&nbsp;</span>
1888
- <span class="cline-any cline-no">&nbsp;</span>
1889
- <span class="cline-any cline-no">&nbsp;</span>
1890
- <span class="cline-any cline-neutral">&nbsp;</span>
1891
- <span class="cline-any cline-no">&nbsp;</span>
1892
- <span class="cline-any cline-neutral">&nbsp;</span>
1893
- <span class="cline-any cline-no">&nbsp;</span>
1894
- <span class="cline-any cline-no">&nbsp;</span>
1895
- <span class="cline-any cline-neutral">&nbsp;</span>
1896
- <span class="cline-any cline-neutral">&nbsp;</span>
1897
- <span class="cline-any cline-neutral">&nbsp;</span>
1898
- <span class="cline-any cline-no">&nbsp;</span>
1899
- <span class="cline-any cline-no">&nbsp;</span>
1900
- <span class="cline-any cline-no">&nbsp;</span>
1901
- <span class="cline-any cline-no">&nbsp;</span>
1902
- <span class="cline-any cline-no">&nbsp;</span>
1903
- <span class="cline-any cline-no">&nbsp;</span>
1904
- <span class="cline-any cline-no">&nbsp;</span>
1905
- <span class="cline-any cline-no">&nbsp;</span>
1906
- <span class="cline-any cline-no">&nbsp;</span>
1907
- <span class="cline-any cline-no">&nbsp;</span>
1908
- <span class="cline-any cline-no">&nbsp;</span>
1909
- <span class="cline-any cline-neutral">&nbsp;</span>
1910
- <span class="cline-any cline-neutral">&nbsp;</span>
1911
- <span class="cline-any cline-no">&nbsp;</span>
1912
- <span class="cline-any cline-neutral">&nbsp;</span>
1913
- <span class="cline-any cline-neutral">&nbsp;</span>
1914
- <span class="cline-any cline-no">&nbsp;</span>
1915
- <span class="cline-any cline-neutral">&nbsp;</span>
1916
- <span class="cline-any cline-neutral">&nbsp;</span>
1917
- <span class="cline-any cline-neutral">&nbsp;</span>
1918
- <span class="cline-any cline-no">&nbsp;</span>
1919
- <span class="cline-any cline-no">&nbsp;</span>
1920
- <span class="cline-any cline-neutral">&nbsp;</span>
1921
- <span class="cline-any cline-no">&nbsp;</span>
1922
- <span class="cline-any cline-neutral">&nbsp;</span>
1923
- <span class="cline-any cline-neutral">&nbsp;</span>
1924
- <span class="cline-any cline-neutral">&nbsp;</span>
1925
- <span class="cline-any cline-neutral">&nbsp;</span>
1926
- <span class="cline-any cline-neutral">&nbsp;</span>
1927
- <span class="cline-any cline-neutral">&nbsp;</span>
1928
- <span class="cline-any cline-neutral">&nbsp;</span>
1929
- <span class="cline-any cline-neutral">&nbsp;</span>
1930
- <span class="cline-any cline-neutral">&nbsp;</span>
1931
- <span class="cline-any cline-neutral">&nbsp;</span>
1932
- <span class="cline-any cline-no">&nbsp;</span>
1933
- <span class="cline-any cline-neutral">&nbsp;</span>
1934
- <span class="cline-any cline-neutral">&nbsp;</span>
1935
- <span class="cline-any cline-neutral">&nbsp;</span>
1936
- <span class="cline-any cline-neutral">&nbsp;</span>
1937
- <span class="cline-any cline-neutral">&nbsp;</span>
1938
- <span class="cline-any cline-neutral">&nbsp;</span>
1939
- <span class="cline-any cline-neutral">&nbsp;</span>
1940
- <span class="cline-any cline-neutral">&nbsp;</span>
1941
- <span class="cline-any cline-neutral">&nbsp;</span>
1942
- <span class="cline-any cline-yes">4033x</span>
1943
- <span class="cline-any cline-yes">4033x</span>
1944
- <span class="cline-any cline-no">&nbsp;</span>
1945
- <span class="cline-any cline-no">&nbsp;</span>
1946
- <span class="cline-any cline-neutral">&nbsp;</span>
1947
- <span class="cline-any cline-no">&nbsp;</span>
1948
- <span class="cline-any cline-no">&nbsp;</span>
1949
- <span class="cline-any cline-neutral">&nbsp;</span>
1950
- <span class="cline-any cline-no">&nbsp;</span>
1951
- <span class="cline-any cline-neutral">&nbsp;</span>
1952
- <span class="cline-any cline-neutral">&nbsp;</span>
1953
- <span class="cline-any cline-yes">4033x</span>
1954
- <span class="cline-any cline-yes">4033x</span>
1955
- <span class="cline-any cline-yes">4033x</span>
1956
- <span class="cline-any cline-yes">3067x</span>
1957
- <span class="cline-any cline-neutral">&nbsp;</span>
1958
- <span class="cline-any cline-yes">4033x</span>
1959
- <span class="cline-any cline-yes">3067x</span>
1960
- <span class="cline-any cline-neutral">&nbsp;</span>
1961
- <span class="cline-any cline-yes">4033x</span>
1962
- <span class="cline-any cline-neutral">&nbsp;</span>
1963
- <span class="cline-any cline-neutral">&nbsp;</span>
1964
- <span class="cline-any cline-neutral">&nbsp;</span>
1965
- <span class="cline-any cline-neutral">&nbsp;</span>
1966
- <span class="cline-any cline-yes">4033x</span>
1967
- <span class="cline-any cline-neutral">&nbsp;</span>
1968
- <span class="cline-any cline-neutral">&nbsp;</span>
1969
- <span class="cline-any cline-neutral">&nbsp;</span>
1970
- <span class="cline-any cline-neutral">&nbsp;</span>
1971
- <span class="cline-any cline-yes">2x</span>
1972
- <span class="cline-any cline-neutral">&nbsp;</span>
1973
- <span class="cline-any cline-neutral">&nbsp;</span>
1974
- <span class="cline-any cline-neutral">&nbsp;</span>
1975
- <span class="cline-any cline-neutral">&nbsp;</span>
1976
- <span class="cline-any cline-neutral">&nbsp;</span>
1977
- <span class="cline-any cline-yes">2x</span>
1978
- <span class="cline-any cline-yes">2x</span>
1979
- <span class="cline-any cline-yes">2x</span>
1980
- <span class="cline-any cline-no">&nbsp;</span>
1981
- <span class="cline-any cline-no">&nbsp;</span>
1982
- <span class="cline-any cline-neutral">&nbsp;</span>
1983
- <span class="cline-any cline-yes">2x</span>
1984
- <span class="cline-any cline-yes">2x</span>
1985
- <span class="cline-any cline-yes">2x</span>
1986
- <span class="cline-any cline-yes">5x</span>
1987
- <span class="cline-any cline-yes">5x</span>
1988
- <span class="cline-any cline-yes">5x</span>
1989
- <span class="cline-any cline-yes">3x</span>
1990
- <span class="cline-any cline-yes">3x</span>
1991
- <span class="cline-any cline-yes">3x</span>
1992
- <span class="cline-any cline-yes">3x</span>
1993
- <span class="cline-any cline-yes">3x</span>
1994
- <span class="cline-any cline-neutral">&nbsp;</span>
1995
- <span class="cline-any cline-yes">3x</span>
1996
- <span class="cline-any cline-neutral">&nbsp;</span>
1997
- <span class="cline-any cline-neutral">&nbsp;</span>
1998
- <span class="cline-any cline-yes">3x</span>
1999
- <span class="cline-any cline-neutral">&nbsp;</span>
2000
- <span class="cline-any cline-neutral">&nbsp;</span>
2001
- <span class="cline-any cline-yes">3x</span>
2002
- <span class="cline-any cline-no">&nbsp;</span>
2003
- <span class="cline-any cline-no">&nbsp;</span>
2004
- <span class="cline-any cline-no">&nbsp;</span>
2005
- <span class="cline-any cline-neutral">&nbsp;</span>
2006
- <span class="cline-any cline-neutral">&nbsp;</span>
2007
- <span class="cline-any cline-no">&nbsp;</span>
2008
- <span class="cline-any cline-neutral">&nbsp;</span>
2009
- <span class="cline-any cline-no">&nbsp;</span>
2010
- <span class="cline-any cline-neutral">&nbsp;</span>
2011
- <span class="cline-any cline-yes">3x</span>
2012
- <span class="cline-any cline-neutral">&nbsp;</span>
2013
- <span class="cline-any cline-neutral">&nbsp;</span>
2014
- <span class="cline-any cline-yes">3x</span>
2015
- <span class="cline-any cline-neutral">&nbsp;</span>
2016
- <span class="cline-any cline-yes">5x</span>
2017
- <span class="cline-any cline-yes">5x</span>
2018
- <span class="cline-any cline-neutral">&nbsp;</span>
2019
- <span class="cline-any cline-yes">2x</span>
2020
- <span class="cline-any cline-yes">2x</span>
2021
- <span class="cline-any cline-neutral">&nbsp;</span>
2022
- <span class="cline-any cline-neutral">&nbsp;</span>
2023
- <span class="cline-any cline-neutral">&nbsp;</span>
2024
- <span class="cline-any cline-neutral">&nbsp;</span>
2025
- <span class="cline-any cline-neutral">&nbsp;</span>
2026
- <span class="cline-any cline-neutral">&nbsp;</span>
2027
- <span class="cline-any cline-neutral">&nbsp;</span>
2028
- <span class="cline-any cline-yes">2854x</span>
2029
- <span class="cline-any cline-yes">2854x</span>
2030
- <span class="cline-any cline-yes">4004x</span>
2031
- <span class="cline-any cline-neutral">&nbsp;</span>
2032
- <span class="cline-any cline-yes">2854x</span>
2033
- <span class="cline-any cline-neutral">&nbsp;</span>
2034
- <span class="cline-any cline-neutral">&nbsp;</span>
2035
- <span class="cline-any cline-neutral">&nbsp;</span>
2036
- <span class="cline-any cline-neutral">&nbsp;</span>
2037
- <span class="cline-any cline-neutral">&nbsp;</span>
2038
- <span class="cline-any cline-neutral">&nbsp;</span>
2039
- <span class="cline-any cline-yes">83x</span>
2040
- <span class="cline-any cline-neutral">&nbsp;</span>
2041
- <span class="cline-any cline-neutral">&nbsp;</span>
2042
- <span class="cline-any cline-neutral">&nbsp;</span>
2043
- <span class="cline-any cline-neutral">&nbsp;</span>
2044
- <span class="cline-any cline-neutral">&nbsp;</span>
2045
- <span class="cline-any cline-neutral">&nbsp;</span>
2046
- <span class="cline-any cline-neutral">&nbsp;</span>
2047
- <span class="cline-any cline-neutral">&nbsp;</span>
2048
- <span class="cline-any cline-yes">707x</span>
2049
- <span class="cline-any cline-yes">707x</span>
2050
- <span class="cline-any cline-yes">2146x</span>
2051
- <span class="cline-any cline-neutral">&nbsp;</span>
2052
- <span class="cline-any cline-yes">707x</span>
2053
- <span class="cline-any cline-neutral">&nbsp;</span>
2054
- <span class="cline-any cline-neutral">&nbsp;</span>
2055
- <span class="cline-any cline-neutral">&nbsp;</span>
2056
- <span class="cline-any cline-neutral">&nbsp;</span>
2057
- <span class="cline-any cline-neutral">&nbsp;</span>
2058
- <span class="cline-any cline-neutral">&nbsp;</span>
2059
- <span class="cline-any cline-neutral">&nbsp;</span>
2060
- <span class="cline-any cline-neutral">&nbsp;</span>
2061
- <span class="cline-any cline-neutral">&nbsp;</span>
2062
- <span class="cline-any cline-neutral">&nbsp;</span>
2063
- <span class="cline-any cline-yes">4847x</span>
2064
- <span class="cline-any cline-yes">4847x</span>
2065
- <span class="cline-any cline-yes">4847x</span>
2066
- <span class="cline-any cline-neutral">&nbsp;</span>
2067
- <span class="cline-any cline-neutral">&nbsp;</span>
2068
- <span class="cline-any cline-neutral">&nbsp;</span>
2069
- <span class="cline-any cline-neutral">&nbsp;</span>
2070
- <span class="cline-any cline-neutral">&nbsp;</span>
2071
- <span class="cline-any cline-neutral">&nbsp;</span>
2072
- <span class="cline-any cline-yes">1x</span>
2073
- <span class="cline-any cline-no">&nbsp;</span>
2074
- <span class="cline-any cline-neutral">&nbsp;</span>
2075
- <span class="cline-any cline-no">&nbsp;</span>
2076
- <span class="cline-any cline-no">&nbsp;</span>
2077
- <span class="cline-any cline-no">&nbsp;</span>
2078
- <span class="cline-any cline-neutral">&nbsp;</span>
2079
- <span class="cline-any cline-no">&nbsp;</span>
2080
- <span class="cline-any cline-neutral">&nbsp;</span>
2081
- <span class="cline-any cline-yes">1x</span>
2082
- <span class="cline-any cline-neutral">&nbsp;</span>
2083
- <span class="cline-any cline-neutral">&nbsp;</span>
2084
- <span class="cline-any cline-neutral">&nbsp;</span>
2085
- <span class="cline-any cline-neutral">&nbsp;</span>
2086
- <span class="cline-any cline-neutral">&nbsp;</span>
2087
- <span class="cline-any cline-neutral">&nbsp;</span>
2088
- <span class="cline-any cline-neutral">&nbsp;</span>
2089
- <span class="cline-any cline-neutral">&nbsp;</span>
2090
- <span class="cline-any cline-yes">9x</span>
2091
- <span class="cline-any cline-yes">9x</span>
2092
- <span class="cline-any cline-neutral">&nbsp;</span>
2093
- <span class="cline-any cline-no">&nbsp;</span>
2094
- <span class="cline-any cline-no">&nbsp;</span>
2095
- <span class="cline-any cline-neutral">&nbsp;</span>
2096
- <span class="cline-any cline-no">&nbsp;</span>
2097
- <span class="cline-any cline-neutral">&nbsp;</span>
2098
- <span class="cline-any cline-neutral">&nbsp;</span>
2099
- <span class="cline-any cline-neutral">&nbsp;</span>
2100
- <span class="cline-any cline-neutral">&nbsp;</span>
2101
- <span class="cline-any cline-neutral">&nbsp;</span>
2102
- <span class="cline-any cline-neutral">&nbsp;</span>
2103
- <span class="cline-any cline-neutral">&nbsp;</span>
2104
- <span class="cline-any cline-neutral">&nbsp;</span>
2105
- <span class="cline-any cline-neutral">&nbsp;</span>
2106
- <span class="cline-any cline-neutral">&nbsp;</span>
2107
- <span class="cline-any cline-yes">4847x</span>
2108
- <span class="cline-any cline-yes">1669x</span>
2109
- <span class="cline-any cline-yes">1594x</span>
2110
- <span class="cline-any cline-yes">1594x</span>
2111
- <span class="cline-any cline-neutral">&nbsp;</span>
2112
- <span class="cline-any cline-yes">1669x</span>
2113
- <span class="cline-any cline-neutral">&nbsp;</span>
2114
- <span class="cline-any cline-yes">3178x</span>
2115
- <span class="cline-any cline-yes">3067x</span>
2116
- <span class="cline-any cline-yes">3067x</span>
2117
- <span class="cline-any cline-yes">3067x</span>
2118
- <span class="cline-any cline-yes">3067x</span>
2119
- <span class="cline-any cline-neutral">&nbsp;</span>
2120
- <span class="cline-any cline-yes">111x</span>
2121
- <span class="cline-any cline-neutral">&nbsp;</span>
2122
- <span class="cline-any cline-neutral">&nbsp;</span>
2123
- <span class="cline-any cline-neutral">&nbsp;</span>
2124
- <span class="cline-any cline-neutral">&nbsp;</span>
2125
- <span class="cline-any cline-neutral">&nbsp;</span>
2126
- <span class="cline-any cline-neutral">&nbsp;</span>
2127
- <span class="cline-any cline-neutral">&nbsp;</span>
2128
- <span class="cline-any cline-yes">10907x</span>
2129
- <span class="cline-any cline-no">&nbsp;</span>
2130
- <span class="cline-any cline-neutral">&nbsp;</span>
2131
- <span class="cline-any cline-yes">10907x</span>
2132
- <span class="cline-any cline-neutral">&nbsp;</span>
2133
- <span class="cline-any cline-neutral">&nbsp;</span>
2134
- <span class="cline-any cline-yes">10907x</span>
2135
- <span class="cline-any cline-yes">9611x</span>
2136
- <span class="cline-any cline-yes">9611x</span>
2137
- <span class="cline-any cline-yes">3551x</span>
2138
- <span class="cline-any cline-neutral">&nbsp;</span>
2139
- <span class="cline-any cline-neutral">&nbsp;</span>
2140
- <span class="cline-any cline-yes">1296x</span>
2141
- <span class="cline-any cline-neutral">&nbsp;</span>
2142
- <span class="cline-any cline-yes">10907x</span>
2143
- <span class="cline-any cline-yes">10907x</span>
2144
- <span class="cline-any cline-yes">9611x</span>
2145
- <span class="cline-any cline-neutral">&nbsp;</span>
2146
- <span class="cline-any cline-yes">1296x</span>
2147
- <span class="cline-any cline-yes">1296x</span>
2148
- <span class="cline-any cline-neutral">&nbsp;</span>
2149
- <span class="cline-any cline-neutral">&nbsp;</span>
2150
- <span class="cline-any cline-neutral">&nbsp;</span>
2151
- <span class="cline-any cline-neutral">&nbsp;</span>
2152
- <span class="cline-any cline-no">&nbsp;</span>
2153
- <span class="cline-any cline-neutral">&nbsp;</span>
2154
- <span class="cline-any cline-no">&nbsp;</span>
2155
- <span class="cline-any cline-neutral">&nbsp;</span>
2156
- <span class="cline-any cline-no">&nbsp;</span>
2157
- <span class="cline-any cline-no">&nbsp;</span>
2158
- <span class="cline-any cline-no">&nbsp;</span>
2159
- <span class="cline-any cline-neutral">&nbsp;</span>
2160
- <span class="cline-any cline-neutral">&nbsp;</span>
2161
- <span class="cline-any cline-no">&nbsp;</span>
2162
- <span class="cline-any cline-neutral">&nbsp;</span>
2163
- <span class="cline-any cline-neutral">&nbsp;</span>
2164
- <span class="cline-any cline-neutral">&nbsp;</span>
2165
- <span class="cline-any cline-no">&nbsp;</span>
2166
- <span class="cline-any cline-no">&nbsp;</span>
2167
- <span class="cline-any cline-neutral">&nbsp;</span>
2168
- <span class="cline-any cline-neutral">&nbsp;</span>
2169
- <span class="cline-any cline-neutral">&nbsp;</span>
2170
- <span class="cline-any cline-neutral">&nbsp;</span>
2171
- <span class="cline-any cline-neutral">&nbsp;</span>
2172
- <span class="cline-any cline-neutral">&nbsp;</span>
2173
- <span class="cline-any cline-neutral">&nbsp;</span>
2174
- <span class="cline-any cline-neutral">&nbsp;</span>
2175
- <span class="cline-any cline-neutral">&nbsp;</span>
2176
- <span class="cline-any cline-neutral">&nbsp;</span>
2177
- <span class="cline-any cline-neutral">&nbsp;</span>
2178
- <span class="cline-any cline-neutral">&nbsp;</span>
2179
- <span class="cline-any cline-neutral">&nbsp;</span>
2180
- <span class="cline-any cline-no">&nbsp;</span>
2181
- <span class="cline-any cline-neutral">&nbsp;</span>
2182
- <span class="cline-any cline-no">&nbsp;</span>
2183
- <span class="cline-any cline-no">&nbsp;</span>
2184
- <span class="cline-any cline-no">&nbsp;</span>
2185
- <span class="cline-any cline-neutral">&nbsp;</span>
2186
- <span class="cline-any cline-no">&nbsp;</span>
2187
- <span class="cline-any cline-no">&nbsp;</span>
2188
- <span class="cline-any cline-no">&nbsp;</span>
2189
- <span class="cline-any cline-no">&nbsp;</span>
2190
- <span class="cline-any cline-neutral">&nbsp;</span>
2191
- <span class="cline-any cline-neutral">&nbsp;</span>
2192
- <span class="cline-any cline-neutral">&nbsp;</span>
2193
- <span class="cline-any cline-no">&nbsp;</span>
2194
- <span class="cline-any cline-neutral">&nbsp;</span>
2195
- <span class="cline-any cline-neutral">&nbsp;</span>
2196
- <span class="cline-any cline-neutral">&nbsp;</span>
2197
- <span class="cline-any cline-neutral">&nbsp;</span>
2198
- <span class="cline-any cline-neutral">&nbsp;</span>
2199
- <span class="cline-any cline-neutral">&nbsp;</span>
2200
- <span class="cline-any cline-neutral">&nbsp;</span>
2201
- <span class="cline-any cline-neutral">&nbsp;</span>
2202
- <span class="cline-any cline-neutral">&nbsp;</span>
2203
- <span class="cline-any cline-neutral">&nbsp;</span>
2204
- <span class="cline-any cline-neutral">&nbsp;</span>
2205
- <span class="cline-any cline-neutral">&nbsp;</span>
2206
- <span class="cline-any cline-yes">3x</span>
2207
- <span class="cline-any cline-neutral">&nbsp;</span>
2208
- <span class="cline-any cline-neutral">&nbsp;</span>
2209
- <span class="cline-any cline-neutral">&nbsp;</span>
2210
- <span class="cline-any cline-yes">3x</span>
2211
- <span class="cline-any cline-yes">3x</span>
2212
- <span class="cline-any cline-yes">3x</span>
2213
- <span class="cline-any cline-yes">45x</span>
2214
- <span class="cline-any cline-yes">45x</span>
2215
- <span class="cline-any cline-yes">45x</span>
2216
- <span class="cline-any cline-yes">36x</span>
2217
- <span class="cline-any cline-neutral">&nbsp;</span>
2218
- <span class="cline-any cline-yes">9x</span>
2219
- <span class="cline-any cline-yes">9x</span>
2220
- <span class="cline-any cline-neutral">&nbsp;</span>
2221
- <span class="cline-any cline-neutral">&nbsp;</span>
2222
- <span class="cline-any cline-neutral">&nbsp;</span>
2223
- <span class="cline-any cline-neutral">&nbsp;</span>
2224
- <span class="cline-any cline-neutral">&nbsp;</span>
2225
- <span class="cline-any cline-yes">3x</span>
2226
- <span class="cline-any cline-neutral">&nbsp;</span>
2227
- <span class="cline-any cline-yes">3x</span>
2228
- <span class="cline-any cline-neutral">&nbsp;</span>
2229
- <span class="cline-any cline-neutral">&nbsp;</span>
2230
- <span class="cline-any cline-neutral">&nbsp;</span>
2231
- <span class="cline-any cline-neutral">&nbsp;</span>
2232
- <span class="cline-any cline-neutral">&nbsp;</span>
2233
- <span class="cline-any cline-neutral">&nbsp;</span>
2234
- <span class="cline-any cline-neutral">&nbsp;</span>
2235
- <span class="cline-any cline-neutral">&nbsp;</span>
2236
- <span class="cline-any cline-no">&nbsp;</span>
2237
- <span class="cline-any cline-no">&nbsp;</span>
2238
- <span class="cline-any cline-neutral">&nbsp;</span>
2239
- <span class="cline-any cline-no">&nbsp;</span>
2240
- <span class="cline-any cline-no">&nbsp;</span>
2241
- <span class="cline-any cline-no">&nbsp;</span>
2242
- <span class="cline-any cline-no">&nbsp;</span>
2243
- <span class="cline-any cline-neutral">&nbsp;</span>
2244
- <span class="cline-any cline-no">&nbsp;</span>
2245
- <span class="cline-any cline-neutral">&nbsp;</span>
2246
- <span class="cline-any cline-neutral">&nbsp;</span>
2247
- <span class="cline-any cline-neutral">&nbsp;</span>
2248
- <span class="cline-any cline-neutral">&nbsp;</span>
2249
- <span class="cline-any cline-neutral">&nbsp;</span>
2250
- <span class="cline-any cline-neutral">&nbsp;</span>
2251
- <span class="cline-any cline-yes">1x</span>
2252
- <span class="cline-any cline-neutral">&nbsp;</span>
2253
- <span class="cline-any cline-neutral">&nbsp;</span>
2254
- <span class="cline-any cline-neutral">&nbsp;</span>
2255
- <span class="cline-any cline-neutral">&nbsp;</span>
2256
- <span class="cline-any cline-neutral">&nbsp;</span>
2257
- <span class="cline-any cline-neutral">&nbsp;</span>
2258
- <span class="cline-any cline-neutral">&nbsp;</span>
2259
- <span class="cline-any cline-yes">1x</span>
2260
- <span class="cline-any cline-neutral">&nbsp;</span>
2261
- <span class="cline-any cline-neutral">&nbsp;</span>
2262
- <span class="cline-any cline-neutral">&nbsp;</span>
2263
- <span class="cline-any cline-neutral">&nbsp;</span>
2264
- <span class="cline-any cline-neutral">&nbsp;</span>
2265
- <span class="cline-any cline-neutral">&nbsp;</span>
2266
- <span class="cline-any cline-neutral">&nbsp;</span>
2267
- <span class="cline-any cline-neutral">&nbsp;</span>
2268
- <span class="cline-any cline-neutral">&nbsp;</span>
2269
- <span class="cline-any cline-neutral">&nbsp;</span>
2270
- <span class="cline-any cline-neutral">&nbsp;</span>
2271
- <span class="cline-any cline-yes">1x</span>
2272
- <span class="cline-any cline-neutral">&nbsp;</span>
2273
- <span class="cline-any cline-neutral">&nbsp;</span>
2274
- <span class="cline-any cline-neutral">&nbsp;</span>
2275
- <span class="cline-any cline-neutral">&nbsp;</span>
2276
- <span class="cline-any cline-neutral">&nbsp;</span>
2277
- <span class="cline-any cline-neutral">&nbsp;</span>
2278
- <span class="cline-any cline-neutral">&nbsp;</span>
2279
- <span class="cline-any cline-yes">1x</span>
2280
- <span class="cline-any cline-neutral">&nbsp;</span>
2281
- <span class="cline-any cline-neutral">&nbsp;</span>
2282
- <span class="cline-any cline-neutral">&nbsp;</span>
2283
- <span class="cline-any cline-neutral">&nbsp;</span>
2284
- <span class="cline-any cline-neutral">&nbsp;</span>
2285
- <span class="cline-any cline-neutral">&nbsp;</span>
2286
- <span class="cline-any cline-neutral">&nbsp;</span>
2287
- <span class="cline-any cline-yes">1x</span>
2288
- <span class="cline-any cline-neutral">&nbsp;</span>
2289
- <span class="cline-any cline-neutral">&nbsp;</span>
2290
- <span class="cline-any cline-neutral">&nbsp;</span>
2291
- <span class="cline-any cline-neutral">&nbsp;</span>
2292
- <span class="cline-any cline-neutral">&nbsp;</span>
2293
- <span class="cline-any cline-neutral">&nbsp;</span>
2294
- <span class="cline-any cline-neutral">&nbsp;</span>
2295
- <span class="cline-any cline-yes">1x</span>
2296
- <span class="cline-any cline-neutral">&nbsp;</span>
2297
- <span class="cline-any cline-neutral">&nbsp;</span>
2298
- <span class="cline-any cline-neutral">&nbsp;</span>
2299
- <span class="cline-any cline-neutral">&nbsp;</span>
2300
- <span class="cline-any cline-neutral">&nbsp;</span>
2301
- <span class="cline-any cline-neutral">&nbsp;</span>
2302
- <span class="cline-any cline-neutral">&nbsp;</span>
2303
- <span class="cline-any cline-yes">1x</span>
2304
- <span class="cline-any cline-neutral">&nbsp;</span>
2305
- <span class="cline-any cline-neutral">&nbsp;</span>
2306
- <span class="cline-any cline-neutral">&nbsp;</span>
2307
- <span class="cline-any cline-neutral">&nbsp;</span>
2308
- <span class="cline-any cline-neutral">&nbsp;</span>
2309
- <span class="cline-any cline-neutral">&nbsp;</span>
2310
- <span class="cline-any cline-neutral">&nbsp;</span>
2311
- <span class="cline-any cline-neutral">&nbsp;</span>
2312
- <span class="cline-any cline-neutral">&nbsp;</span>
2313
- <span class="cline-any cline-neutral">&nbsp;</span>
2314
- <span class="cline-any cline-neutral">&nbsp;</span>
2315
- <span class="cline-any cline-neutral">&nbsp;</span>
2316
- <span class="cline-any cline-neutral">&nbsp;</span>
2317
- <span class="cline-any cline-neutral">&nbsp;</span>
2318
- <span class="cline-any cline-neutral">&nbsp;</span>
2319
- <span class="cline-any cline-no">&nbsp;</span>
2320
- <span class="cline-any cline-neutral">&nbsp;</span>
2321
- <span class="cline-any cline-neutral">&nbsp;</span>
2322
- <span class="cline-any cline-neutral">&nbsp;</span>
2323
- <span class="cline-any cline-neutral">&nbsp;</span>
2324
- <span class="cline-any cline-neutral">&nbsp;</span>
2325
- <span class="cline-any cline-neutral">&nbsp;</span>
2326
- <span class="cline-any cline-neutral">&nbsp;</span>
2327
- <span class="cline-any cline-neutral">&nbsp;</span>
2328
- <span class="cline-any cline-neutral">&nbsp;</span>
2329
- <span class="cline-any cline-neutral">&nbsp;</span>
2330
- <span class="cline-any cline-neutral">&nbsp;</span>
2331
- <span class="cline-any cline-neutral">&nbsp;</span>
2332
- <span class="cline-any cline-neutral">&nbsp;</span>
2333
- <span class="cline-any cline-neutral">&nbsp;</span>
2334
- <span class="cline-any cline-neutral">&nbsp;</span>
2335
- <span class="cline-any cline-neutral">&nbsp;</span>
2336
- <span class="cline-any cline-no">&nbsp;</span>
2337
- <span class="cline-any cline-no">&nbsp;</span>
2338
- <span class="cline-any cline-no">&nbsp;</span>
2339
- <span class="cline-any cline-neutral">&nbsp;</span>
2340
- <span class="cline-any cline-no">&nbsp;</span>
2341
- <span class="cline-any cline-no">&nbsp;</span>
2342
- <span class="cline-any cline-no">&nbsp;</span>
2343
- <span class="cline-any cline-neutral">&nbsp;</span>
2344
- <span class="cline-any cline-no">&nbsp;</span>
2345
- <span class="cline-any cline-neutral">&nbsp;</span>
2346
- <span class="cline-any cline-neutral">&nbsp;</span>
2347
- <span class="cline-any cline-neutral">&nbsp;</span>
2348
- <span class="cline-any cline-no">&nbsp;</span>
2349
- <span class="cline-any cline-no">&nbsp;</span>
2350
- <span class="cline-any cline-neutral">&nbsp;</span>
2351
- <span class="cline-any cline-neutral">&nbsp;</span>
2352
- <span class="cline-any cline-no">&nbsp;</span>
2353
- <span class="cline-any cline-no">&nbsp;</span>
2354
- <span class="cline-any cline-no">&nbsp;</span>
2355
- <span class="cline-any cline-no">&nbsp;</span>
2356
- <span class="cline-any cline-no">&nbsp;</span>
2357
- <span class="cline-any cline-no">&nbsp;</span>
2358
- <span class="cline-any cline-neutral">&nbsp;</span>
2359
- <span class="cline-any cline-no">&nbsp;</span>
2360
- <span class="cline-any cline-no">&nbsp;</span>
2361
- <span class="cline-any cline-no">&nbsp;</span>
2362
- <span class="cline-any cline-no">&nbsp;</span>
2363
- <span class="cline-any cline-no">&nbsp;</span>
2364
- <span class="cline-any cline-no">&nbsp;</span>
2365
- <span class="cline-any cline-no">&nbsp;</span>
2366
- <span class="cline-any cline-neutral">&nbsp;</span>
2367
- <span class="cline-any cline-no">&nbsp;</span>
2368
- <span class="cline-any cline-neutral">&nbsp;</span>
2369
- <span class="cline-any cline-neutral">&nbsp;</span>
2370
- <span class="cline-any cline-neutral">&nbsp;</span>
2371
- <span class="cline-any cline-neutral">&nbsp;</span>
2372
- <span class="cline-any cline-no">&nbsp;</span>
2373
- <span class="cline-any cline-neutral">&nbsp;</span>
2374
- <span class="cline-any cline-no">&nbsp;</span>
2375
- <span class="cline-any cline-no">&nbsp;</span>
2376
- <span class="cline-any cline-neutral">&nbsp;</span>
2377
- <span class="cline-any cline-neutral">&nbsp;</span>
2378
- <span class="cline-any cline-neutral">&nbsp;</span>
2379
- <span class="cline-any cline-neutral">&nbsp;</span>
2380
- <span class="cline-any cline-neutral">&nbsp;</span>
2381
- <span class="cline-any cline-neutral">&nbsp;</span>
2382
- <span class="cline-any cline-no">&nbsp;</span>
2383
- <span class="cline-any cline-neutral">&nbsp;</span>
2384
- <span class="cline-any cline-neutral">&nbsp;</span>
2385
- <span class="cline-any cline-neutral">&nbsp;</span>
2386
- <span class="cline-any cline-neutral">&nbsp;</span>
2387
- <span class="cline-any cline-no">&nbsp;</span>
2388
- <span class="cline-any cline-no">&nbsp;</span>
2389
- <span class="cline-any cline-no">&nbsp;</span>
2390
- <span class="cline-any cline-no">&nbsp;</span>
2391
- <span class="cline-any cline-neutral">&nbsp;</span>
2392
- <span class="cline-any cline-neutral">&nbsp;</span>
2393
- <span class="cline-any cline-neutral">&nbsp;</span>
2394
- <span class="cline-any cline-no">&nbsp;</span>
2395
- <span class="cline-any cline-no">&nbsp;</span>
2396
- <span class="cline-any cline-no">&nbsp;</span>
2397
- <span class="cline-any cline-neutral">&nbsp;</span>
2398
- <span class="cline-any cline-no">&nbsp;</span>
2399
- <span class="cline-any cline-neutral">&nbsp;</span>
2400
- <span class="cline-any cline-neutral">&nbsp;</span>
2401
- <span class="cline-any cline-neutral">&nbsp;</span>
2402
- <span class="cline-any cline-no">&nbsp;</span>
2403
- <span class="cline-any cline-neutral">&nbsp;</span>
2404
- <span class="cline-any cline-neutral">&nbsp;</span>
2405
- <span class="cline-any cline-no">&nbsp;</span>
2406
- <span class="cline-any cline-no">&nbsp;</span>
2407
- <span class="cline-any cline-no">&nbsp;</span>
2408
- <span class="cline-any cline-no">&nbsp;</span>
2409
- <span class="cline-any cline-neutral">&nbsp;</span>
2410
- <span class="cline-any cline-no">&nbsp;</span>
2411
- <span class="cline-any cline-no">&nbsp;</span>
2412
- <span class="cline-any cline-no">&nbsp;</span>
2413
- <span class="cline-any cline-neutral">&nbsp;</span>
2414
- <span class="cline-any cline-neutral">&nbsp;</span>
2415
- <span class="cline-any cline-no">&nbsp;</span>
2416
- <span class="cline-any cline-no">&nbsp;</span>
2417
- <span class="cline-any cline-no">&nbsp;</span>
2418
- <span class="cline-any cline-no">&nbsp;</span>
2419
- <span class="cline-any cline-no">&nbsp;</span>
2420
- <span class="cline-any cline-no">&nbsp;</span>
2421
- <span class="cline-any cline-no">&nbsp;</span>
2422
- <span class="cline-any cline-neutral">&nbsp;</span>
2423
- <span class="cline-any cline-no">&nbsp;</span>
2424
- <span class="cline-any cline-no">&nbsp;</span>
2425
- <span class="cline-any cline-neutral">&nbsp;</span>
2426
- <span class="cline-any cline-neutral">&nbsp;</span>
2427
- <span class="cline-any cline-neutral">&nbsp;</span>
2428
- <span class="cline-any cline-neutral">&nbsp;</span>
2429
- <span class="cline-any cline-neutral">&nbsp;</span>
2430
- <span class="cline-any cline-neutral">&nbsp;</span>
2431
- <span class="cline-any cline-neutral">&nbsp;</span>
2432
- <span class="cline-any cline-neutral">&nbsp;</span>
2433
- <span class="cline-any cline-yes">5613x</span>
2434
- <span class="cline-any cline-neutral">&nbsp;</span>
2435
- <span class="cline-any cline-neutral">&nbsp;</span>
2436
- <span class="cline-any cline-neutral">&nbsp;</span>
2437
- <span class="cline-any cline-neutral">&nbsp;</span>
2438
- <span class="cline-any cline-yes">10291x</span>
2439
- <span class="cline-any cline-neutral">&nbsp;</span>
2440
- <span class="cline-any cline-yes">10291x</span>
2441
- <span class="cline-any cline-yes">10291x</span>
2442
- <span class="cline-any cline-neutral">&nbsp;</span>
2443
- <span class="cline-any cline-yes">10291x</span>
2444
- <span class="cline-any cline-yes">37637x</span>
2445
- <span class="cline-any cline-yes">37637x</span>
2446
- <span class="cline-any cline-yes">12985x</span>
2447
- <span class="cline-any cline-yes">8606x</span>
2448
- <span class="cline-any cline-neutral">&nbsp;</span>
2449
- <span class="cline-any cline-neutral">&nbsp;</span>
2450
- <span class="cline-any cline-neutral">&nbsp;</span>
2451
- <span class="cline-any cline-yes">117x</span>
2452
- <span class="cline-any cline-neutral">&nbsp;</span>
2453
- <span class="cline-any cline-neutral">&nbsp;</span>
2454
- <span class="cline-any cline-neutral">&nbsp;</span>
2455
- <span class="cline-any cline-neutral">&nbsp;</span>
2456
- <span class="cline-any cline-neutral">&nbsp;</span>
2457
- <span class="cline-any cline-neutral">&nbsp;</span>
2458
- <span class="cline-any cline-no">&nbsp;</span>
2459
- <span class="cline-any cline-neutral">&nbsp;</span>
2460
- <span class="cline-any cline-neutral">&nbsp;</span>
2461
- <span class="cline-any cline-neutral">&nbsp;</span>
2462
- <span class="cline-any cline-neutral">&nbsp;</span>
2463
- <span class="cline-any cline-neutral">&nbsp;</span>
2464
- <span class="cline-any cline-neutral">&nbsp;</span>
2465
- <span class="cline-any cline-neutral">&nbsp;</span>
2466
- <span class="cline-any cline-no">&nbsp;</span>
2467
- <span class="cline-any cline-no">&nbsp;</span>
2468
- <span class="cline-any cline-no">&nbsp;</span>
2469
- <span class="cline-any cline-neutral">&nbsp;</span>
2470
- <span class="cline-any cline-neutral">&nbsp;</span>
2471
- <span class="cline-any cline-neutral">&nbsp;</span>
2472
- <span class="cline-any cline-no">&nbsp;</span>
2473
- <span class="cline-any cline-no">&nbsp;</span>
2474
- <span class="cline-any cline-no">&nbsp;</span>
2475
- <span class="cline-any cline-neutral">&nbsp;</span>
2476
- <span class="cline-any cline-no">&nbsp;</span>
2477
- <span class="cline-any cline-no">&nbsp;</span>
2478
- <span class="cline-any cline-no">&nbsp;</span>
2479
- <span class="cline-any cline-neutral">&nbsp;</span>
2480
- <span class="cline-any cline-no">&nbsp;</span>
2481
- <span class="cline-any cline-neutral">&nbsp;</span>
2482
- <span class="cline-any cline-neutral">&nbsp;</span>
2483
- <span class="cline-any cline-neutral">&nbsp;</span>
2484
- <span class="cline-any cline-neutral">&nbsp;</span>
2485
- <span class="cline-any cline-neutral">&nbsp;</span>
2486
- <span class="cline-any cline-neutral">&nbsp;</span>
2487
- <span class="cline-any cline-neutral">&nbsp;</span>
2488
- <span class="cline-any cline-no">&nbsp;</span>
2489
- <span class="cline-any cline-no">&nbsp;</span>
2490
- <span class="cline-any cline-no">&nbsp;</span>
2491
- <span class="cline-any cline-neutral">&nbsp;</span>
2492
- <span class="cline-any cline-neutral">&nbsp;</span>
2493
- <span class="cline-any cline-neutral">&nbsp;</span>
2494
- <span class="cline-any cline-no">&nbsp;</span>
2495
- <span class="cline-any cline-no">&nbsp;</span>
2496
- <span class="cline-any cline-no">&nbsp;</span>
2497
- <span class="cline-any cline-neutral">&nbsp;</span>
2498
- <span class="cline-any cline-no">&nbsp;</span>
2499
- <span class="cline-any cline-no">&nbsp;</span>
2500
- <span class="cline-any cline-neutral">&nbsp;</span>
2501
- <span class="cline-any cline-no">&nbsp;</span>
2502
- <span class="cline-any cline-neutral">&nbsp;</span>
2503
- <span class="cline-any cline-no">&nbsp;</span>
2504
- <span class="cline-any cline-neutral">&nbsp;</span>
2505
- <span class="cline-any cline-neutral">&nbsp;</span>
2506
- <span class="cline-any cline-neutral">&nbsp;</span>
2507
- <span class="cline-any cline-yes">1x</span>
2508
- <span class="cline-any cline-neutral">&nbsp;</span>
2509
- <span class="cline-any cline-neutral">&nbsp;</span>
2510
- <span class="cline-any cline-neutral">&nbsp;</span>
2511
- <span class="cline-any cline-neutral">&nbsp;</span>
2512
- <span class="cline-any cline-neutral">&nbsp;</span>
2513
- <span class="cline-any cline-neutral">&nbsp;</span>
2514
- <span class="cline-any cline-neutral">&nbsp;</span>
2515
- <span class="cline-any cline-no">&nbsp;</span>
2516
- <span class="cline-any cline-no">&nbsp;</span>
2517
- <span class="cline-any cline-neutral">&nbsp;</span>
2518
- <span class="cline-any cline-no">&nbsp;</span>
2519
- <span class="cline-any cline-neutral">&nbsp;</span>
2520
- <span class="cline-any cline-yes">1x</span>
2521
- <span class="cline-any cline-neutral">&nbsp;</span>
2522
- <span class="cline-any cline-neutral">&nbsp;</span>
2523
- <span class="cline-any cline-neutral">&nbsp;</span>
2524
- <span class="cline-any cline-yes">1x</span>
2525
- <span class="cline-any cline-yes">1x</span>
2526
- <span class="cline-any cline-no">&nbsp;</span>
2527
- <span class="cline-any cline-no">&nbsp;</span>
2528
- <span class="cline-any cline-no">&nbsp;</span>
2529
- <span class="cline-any cline-no">&nbsp;</span>
2530
- <span class="cline-any cline-neutral">&nbsp;</span>
2531
- <span class="cline-any cline-no">&nbsp;</span>
2532
- <span class="cline-any cline-no">&nbsp;</span>
2533
- <span class="cline-any cline-neutral">&nbsp;</span>
2534
- <span class="cline-any cline-no">&nbsp;</span>
2535
- <span class="cline-any cline-no">&nbsp;</span>
2536
- <span class="cline-any cline-neutral">&nbsp;</span>
2537
- <span class="cline-any cline-no">&nbsp;</span>
2538
- <span class="cline-any cline-neutral">&nbsp;</span>
2539
- <span class="cline-any cline-yes">1x</span>
2540
- <span class="cline-any cline-neutral">&nbsp;</span>
2541
- <span class="cline-any cline-neutral">&nbsp;</span>
2542
- <span class="cline-any cline-neutral">&nbsp;</span>
2543
- <span class="cline-any cline-neutral">&nbsp;</span>
2544
- <span class="cline-any cline-neutral">&nbsp;</span>
2545
- <span class="cline-any cline-neutral">&nbsp;</span>
2546
- <span class="cline-any cline-no">&nbsp;</span>
2547
- <span class="cline-any cline-neutral">&nbsp;</span>
2548
- <span class="cline-any cline-no">&nbsp;</span>
2549
- <span class="cline-any cline-no">&nbsp;</span>
2550
- <span class="cline-any cline-neutral">&nbsp;</span>
2551
- <span class="cline-any cline-neutral">&nbsp;</span>
2552
- <span class="cline-any cline-no">&nbsp;</span>
2553
- <span class="cline-any cline-neutral">&nbsp;</span>
2554
- <span class="cline-any cline-neutral">&nbsp;</span>
2555
- <span class="cline-any cline-neutral">&nbsp;</span>
2556
- <span class="cline-any cline-neutral">&nbsp;</span>
2557
- <span class="cline-any cline-neutral">&nbsp;</span>
2558
- <span class="cline-any cline-neutral">&nbsp;</span>
2559
- <span class="cline-any cline-neutral">&nbsp;</span>
2560
- <span class="cline-any cline-neutral">&nbsp;</span>
2561
- <span class="cline-any cline-neutral">&nbsp;</span>
2562
- <span class="cline-any cline-neutral">&nbsp;</span>
2563
- <span class="cline-any cline-neutral">&nbsp;</span>
2564
- <span class="cline-any cline-neutral">&nbsp;</span>
2565
- <span class="cline-any cline-no">&nbsp;</span>
2566
- <span class="cline-any cline-no">&nbsp;</span>
2567
- <span class="cline-any cline-neutral">&nbsp;</span>
2568
- <span class="cline-any cline-no">&nbsp;</span>
2569
- <span class="cline-any cline-neutral">&nbsp;</span>
2570
- <span class="cline-any cline-no">&nbsp;</span>
2571
- <span class="cline-any cline-no">&nbsp;</span>
2572
- <span class="cline-any cline-neutral">&nbsp;</span>
2573
- <span class="cline-any cline-no">&nbsp;</span>
2574
- <span class="cline-any cline-no">&nbsp;</span>
2575
- <span class="cline-any cline-neutral">&nbsp;</span>
2576
- <span class="cline-any cline-neutral">&nbsp;</span>
2577
- <span class="cline-any cline-no">&nbsp;</span>
2578
- <span class="cline-any cline-no">&nbsp;</span>
2579
- <span class="cline-any cline-no">&nbsp;</span>
2580
- <span class="cline-any cline-neutral">&nbsp;</span>
2581
- <span class="cline-any cline-neutral">&nbsp;</span>
2582
- <span class="cline-any cline-neutral">&nbsp;</span>
2583
- <span class="cline-any cline-no">&nbsp;</span>
2584
- <span class="cline-any cline-neutral">&nbsp;</span>
2585
- <span class="cline-any cline-neutral">&nbsp;</span>
2586
- <span class="cline-any cline-neutral">&nbsp;</span>
2587
- <span class="cline-any cline-yes">1x</span>
2588
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { at } from 'lodash';
2589
- import { v4 as uuidv4 } from 'uuid';
2590
- &nbsp;
2591
- import { SourceMap } from '../translator';
2592
- import { getSourceFromMap } from '../service/storage/map';
2593
- &nbsp;
2594
- import * as utils from '../utils';
2595
- import { EventEmitter, EventPayload, Params } from './EventEmitter';
2596
- import { action, circular, excludedInJSON, property, getConceptConstructor, getConceptPropertyMap, classMap } from '../decorators';
2597
- import { Diagnostic } from '../manager/diagnostic';
2598
- &nbsp;
2599
- import { sentryMonitorNaslNode } from '../sentry';
2600
- import operations from '../breakpoint/shared/operations';
2601
- import type { SynatxNode, SynatxNodeConcept, ViewElement, TypeAnnotation, App, Namespace } from '../concepts';
2602
- &nbsp;
2603
- // 确保属性都是定义过的
2604
- function <span class="fstat-no" title="function not covered" >ensureDefined(</span>object: any, concept: string) {
2605
- <span class="cstat-no" title="statement not covered" > if (!object) {</span>
2606
- <span class="cstat-no" title="statement not covered" > return object;</span>
2607
- }
2608
- const newObject: any = <span class="cstat-no" title="statement not covered" >{};</span>
2609
- const actualConcept = <span class="cstat-no" title="statement not covered" >object?.concept || concept;</span>
2610
- <span class="cstat-no" title="statement not covered" > if (actualConcept) {</span>
2611
- const propertyMap = <span class="cstat-no" title="statement not covered" >getConceptPropertyMap(actualConcept);</span>
2612
- <span class="cstat-no" title="statement not covered" > for (const key in object) {</span>
2613
- const property = <span class="cstat-no" title="statement not covered" >propertyMap.get(key);</span>
2614
- <span class="cstat-no" title="statement not covered" > if (property) {</span>
2615
- const objProperty = <span class="cstat-no" title="statement not covered" >object[key] ?? null;</span>
2616
- const propertyConcept = <span class="cstat-no" title="statement not covered" >property?.objectRef;</span>
2617
- <span class="cstat-no" title="statement not covered" > if (propertyConcept) {</span>
2618
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(objProperty)) {</span>
2619
- <span class="cstat-no" title="statement not covered" > newObject[key] = objProperty.map(<span class="fstat-no" title="function not covered" >(o</span>bjItem: any) =&gt; {</span>
2620
- <span class="cstat-no" title="statement not covered" > return ensureDefined(objItem, propertyConcept);</span>
2621
- });
2622
- } else {
2623
- <span class="cstat-no" title="statement not covered" > newObject[key] = ensureDefined(objProperty, propertyConcept);</span>
2624
- }
2625
- } else {
2626
- <span class="cstat-no" title="statement not covered" > newObject[key] = objProperty;</span>
2627
- }
2628
- }
2629
- }
2630
- &nbsp;
2631
- <span class="cstat-no" title="statement not covered" > newObject.concept = actualConcept;</span>
2632
- }
2633
- <span class="cstat-no" title="statement not covered" > return newObject;</span>
2634
- }
2635
- &nbsp;
2636
- /**
2637
- * 顶点类
2638
- * 属性均为只读,仅在初始化和 load 的情况下可以修改
2639
- */
2640
- @sentryMonitorNaslNode
2641
- export class BaseNode extends EventEmitter {
2642
- static readonly ConceptName: string = 'BaseNode';
2643
- &nbsp;
2644
- /**
2645
- * 可修改标志,内部属性
2646
- * 标记在构造函数结束后是否可修改
2647
- */
2648
- @excludedInJSON()
2649
- _mutable = true;
2650
- &nbsp;
2651
- /** 节点类别缓存 */
2652
- @excludedInJSON()
2653
- private _concept!: string;
2654
- &nbsp;
2655
- /**
2656
- * 概念
2657
- */
2658
- @property()
2659
- get concept() {
2660
- return this._concept ?? (this.constructor as any).ConceptName as string;
2661
- }
2662
- <span class="fstat-no" title="function not covered" > set c</span>oncept(val: string) {
2663
- <span class="cstat-no" title="statement not covered" > console.warn(`[警告] 尽快移除变更 concept 值的操作,下个版本 concept 将会改为只读。\n当前变更:${this.concept} -&gt; ${val},原始节点类别:${(this.constructor as any).ConceptName}`);</span>
2664
- <span class="cstat-no" title="statement not covered" > if (val !== this.concept) {</span>
2665
- <span class="cstat-no" title="statement not covered" > if (val === (this.constructor as any).ConceptName as string) {</span>
2666
- <span class="cstat-no" title="statement not covered" > delete this._concept;</span>
2667
- } else {
2668
- <span class="cstat-no" title="statement not covered" > this._concept = val;</span>
2669
- }
2670
- }
2671
- }
2672
- &nbsp;
2673
- &nbsp;
2674
- /**
2675
- * toJSON 时需要去除的键,为了避免出现 CircularJSON
2676
- */
2677
- readonly JSON_EXCLUDED_KEYS: Set&lt;string&gt;;
2678
- &nbsp;
2679
- /**
2680
- * 唯一 Id
2681
- */
2682
- id: string = uuidv4().replace(/-/g, '');
2683
- &nbsp;
2684
- /**
2685
- * 变动时间
2686
- */
2687
- @property()
2688
- changedTime!: number;
2689
- &nbsp;
2690
- /**
2691
- * 分支名称
2692
- */
2693
- @property()
2694
- branchName!: string;
2695
- &nbsp;
2696
- /**
2697
- * 合并代码相关
2698
- */
2699
- @property()
2700
- workingCopy!: object;
2701
- &nbsp;
2702
- @property()
2703
- branch!: object;
2704
- &nbsp;
2705
- /**
2706
- * 断点状态
2707
- * undefined ==&gt; 未设置
2708
- * null ==&gt; 已删除
2709
- * 'ENABLED' ==&gt; 启用断点
2710
- * 'DISABLED' ==&gt; 禁用断点
2711
- */
2712
- @property()
2713
- breakpoint!: 'ENABLED' | 'DISABLED' | null | undefined;
2714
- &nbsp;
2715
- /**
2716
- * 父节点
2717
- */
2718
- @circular()
2719
- parentNode: SynatxNode = null;
2720
- &nbsp;
2721
- parentKey: string = '';
2722
- &nbsp;
2723
- /**
2724
- * 是否正在编辑
2725
- * 前端 UI 状态
2726
- */
2727
- @excludedInJSON()
2728
- editable!: boolean;
2729
- &nbsp;
2730
- /**
2731
- * 是否可以删除
2732
- * 前端 UI 状态
2733
- */
2734
- @excludedInJSON()
2735
- removable!: boolean;
2736
- &nbsp;
2737
- /**
2738
- * 是否正在编辑
2739
- * 前端 UI 状态
2740
- */
2741
- @excludedInJSON()
2742
- editing!: boolean;
2743
- &nbsp;
2744
- /**
2745
- * 是否正在请求
2746
- * 前端 UI 状态
2747
- */
2748
- @excludedInJSON()
2749
- loading!: boolean;
2750
- &nbsp;
2751
- /**
2752
- * 节点是否为展开状态
2753
- * 前端 UI 状态
2754
- */
2755
- @excludedInJSON()
2756
- expanded!: boolean;
2757
- &nbsp;
2758
- /**
2759
- * 节点是否显示
2760
- * 前端 UI 状态
2761
- */
2762
- @excludedInJSON()
2763
- hidden!: boolean;
2764
- &nbsp;
2765
- /**
2766
- * 页面树节点是否显示
2767
- * 前端 UI 状态
2768
- */
2769
- @excludedInJSON()
2770
- pageTreeNodeHidden!: boolean;
2771
- &nbsp;
2772
- /**
2773
- * 逻辑树节点是否显示
2774
- * 前端 UI 状态
2775
- */
2776
- @excludedInJSON()
2777
- logicTreeNodeHidden!: boolean;
2778
- &nbsp;
2779
- /**
2780
- * 数据树节点是否显示
2781
- * 前端 UI 状态
2782
- */
2783
- @excludedInJSON()
2784
- dataTreeNodeHidden!: boolean;
2785
- &nbsp;
2786
- /**
2787
- * 数据树节点是否显示
2788
- * 前端 UI 状态
2789
- */
2790
- @excludedInJSON()
2791
- processTreeNodeHidden!: boolean;
2792
- &nbsp;
2793
- /**
2794
- * 数据树节点是否展开
2795
- * 前端 UI 状态
2796
- */
2797
- @excludedInJSON()
2798
- logicTreeNodeExpanded!: boolean;
2799
- &nbsp;
2800
- /**
2801
- * 用于挂 embeddedTS 的 sourceMap
2802
- */
2803
- @excludedInJSON()
2804
- sourceMap!: SourceMap;
2805
- &nbsp;
2806
- /**
2807
- * 是否为叶子节点
2808
- * 前端 UI 状态
2809
- */
2810
- @excludedInJSON()
2811
- isLeaf!: boolean;
2812
- &nbsp;
2813
- @excludedInJSON()
2814
- storageJSON!: any;
2815
- &nbsp;
2816
- /**
2817
- * 当前节点上报错详细信息
2818
- */
2819
- tsErrorDetail!: Diagnostic | undefined;
2820
- &nbsp;
2821
- @property()
2822
- name: string = '';
2823
- &nbsp;
2824
- /**
2825
- * 当前节点的类型标注
2826
- */
2827
- @excludedInJSON()
2828
- __TypeAnnotation!: TypeAnnotation;
2829
- &nbsp;
2830
- /**
2831
- * 当前节点的类型标注是不是正确的
2832
- */
2833
- @excludedInJSON()
2834
- __isCorrectTypeAnnotation!: boolean;
2835
- &nbsp;
2836
- /**
2837
- * @param source 需要合并的部分参数
2838
- */
2839
- constructor(source?: Partial&lt;BaseNode&gt;) {
2840
- super();
2841
- <span class="missing-if-branch" title="else path not taken" >E</span>if (this.hasOwnProperty('JSON_EXCLUDED_KEYS') &amp;&amp; this.JSON_EXCLUDED_KEYS === undefined) delete (this as any).JSON_EXCLUDED_KEYS;
2842
- /**
2843
- * 监听action,delete,update事件
2844
- */
2845
- this.on('create', this.genActionListener);
2846
- this.on('delete', this.genActionListener);
2847
- this.on('update', this.genActionListener);
2848
- &nbsp;
2849
- /**
2850
- * 监听action,delete,update事件
2851
- */
2852
- this.on('create', <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >operations.create(this))</span>;
2853
- this.on('delete', <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >operations.delete(this))</span>;
2854
- this.on('update', <span class="fstat-no" title="function not covered" >() =</span>&gt; <span class="cstat-no" title="statement not covered" >operations.update(this))</span>;
2855
- }
2856
- &nbsp;
2857
- subConstructor(source?: Partial&lt;BaseNode&gt;) {
2858
- const propertyMap = getConceptPropertyMap(this.concept || this.constructor.name);
2859
- const properties = Array.from(new Set([...Object.keys(this), ...Object.keys(source)])).filter((key) =&gt; propertyMap.has(key));
2860
- &nbsp;
2861
- // 测试时用的标记属性
2862
- if (process.env.NODE_ENV === 'testing') {
2863
- properties.push('__$Selected', '__TypeAnnotation');
2864
- }
2865
- &nbsp;
2866
- properties.forEach((key) =&gt; {
2867
- if (key === 'concept') {
2868
- return;
2869
- }
2870
- &nbsp;
2871
- const sourceItem = (source as any)[key] !== undefined ? (source as any)[key] : (this as any)[key];
2872
- &nbsp;
2873
- let property = propertyMap.get(key);
2874
- let objectRefCtor: any;
2875
- &nbsp;
2876
- // 测试环境下,类型节点由外部注入,所以需要在初始化的时候必须带上类型节点
2877
- if (process.env.NODE_ENV === 'testing' &amp;&amp; key === '__TypeAnnotation' &amp;&amp; sourceItem) {
2878
- property = { objectRef: 'TypeAnnotation' };
2879
- }
2880
- &nbsp;
2881
- try {
2882
- if (property?.objectRef) {
2883
- const arr = property.objectRef.split(' | ');
2884
- for (let i = 0; i &lt; arr.length; i++) {
2885
- objectRefCtor = getConceptConstructor(arr[i]);
2886
- if (sourceItem instanceof objectRefCtor) {
2887
- sourceItem.parentNode = this;
2888
- sourceItem.parentKey = key;
2889
- break;
2890
- }
2891
- }
2892
- }
2893
- &nbsp;
2894
- // 数组的情况也在这里做掉了
2895
- const val = objectRefCtor &amp;&amp; sourceItem &amp;&amp; !(sourceItem instanceof objectRefCtor) ? this.instantiateSub(sourceItem, key) : sourceItem;
2896
- &nbsp;
2897
- if (val !== undefined) {
2898
- (this as any)[key] = val;
2899
- }
2900
- } catch (e) {
2901
- // Function has non-object prototype 'undefined' in instanceof check
2902
- <span class="cstat-no" title="statement not covered" > if (!e.message.includes('Function has non-object prototype')) <span class="cstat-no" title="statement not covered" >throw e;</span></span>
2903
- }
2904
- });
2905
- &nbsp;
2906
- operations.create(this);
2907
- &nbsp;
2908
- if (utils.isNode &amp;&amp; ('concept' in this) &amp;&amp; !this.concept) {
2909
- Reflect.deleteProperty(this, 'concept');
2910
- }
2911
- }
2912
- &nbsp;
2913
- <span class="fstat-no" title="function not covered" > fixInstantiate(</span>) {
2914
- const propertyMap = <span class="cstat-no" title="statement not covered" >getConceptPropertyMap(this.concept ?? this.constructor.name);</span>
2915
- const properties = <span class="cstat-no" title="statement not covered" >Object.keys(this).filter(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; <span class="cstat-no" title="statement not covered" >propertyMap.has(key))</span>;</span>
2916
- &nbsp;
2917
- <span class="cstat-no" title="statement not covered" > properties.forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; {</span>
2918
- const property = <span class="cstat-no" title="statement not covered" >propertyMap.get(key);</span>
2919
- const sourceItem = (<span class="cstat-no" title="statement not covered" >this as any)[key];</span>
2920
- const objectRefCtor = <span class="cstat-no" title="statement not covered" >property.objectRef &amp;&amp; getConceptConstructor(property.objectRef);</span>
2921
- <span class="cstat-no" title="statement not covered" > if (objectRefCtor) {</span>
2922
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(sourceItem)) {</span>
2923
- <span class="cstat-no" title="statement not covered" > sourceItem.forEach(<span class="fstat-no" title="function not covered" >(i</span>tem, index) =&gt; {</span>
2924
- <span class="cstat-no" title="statement not covered" > if (item instanceof objectRefCtor) {</span>
2925
- <span class="cstat-no" title="statement not covered" > item.parentNode = this;</span>
2926
- <span class="cstat-no" title="statement not covered" > item.parentKey = key;</span>
2927
- <span class="cstat-no" title="statement not covered" > item.fixInstantiate();</span>
2928
- } else {
2929
- <span class="cstat-no" title="statement not covered" > sourceItem[index] = this.instantiateSub(item instanceof BaseNode ? item.toJSON() : item, key);</span>
2930
- }
2931
- });
2932
- } else <span class="cstat-no" title="statement not covered" >if (sourceItem instanceof objectRefCtor) {</span>
2933
- <span class="cstat-no" title="statement not covered" > sourceItem.parentNode = this;</span>
2934
- <span class="cstat-no" title="statement not covered" > sourceItem.parentKey = key;</span>
2935
- <span class="cstat-no" title="statement not covered" > sourceItem.fixInstantiate();</span>
2936
- } else {
2937
- (<span class="cstat-no" title="statement not covered" >this as any)[key] = this.instantiateSub(sourceItem instanceof BaseNode ? sourceItem.toJSON() : sourceItem, key);</span>
2938
- }
2939
- }
2940
- });
2941
- }
2942
- &nbsp;
2943
- <span class="fstat-no" title="function not covered" > getIndexOfParent(</span>) {
2944
- let index = <span class="cstat-no" title="statement not covered" >-1;</span>
2945
- const { parentNode } = <span class="cstat-no" title="statement not covered" >this;</span>
2946
- <span class="cstat-no" title="statement not covered" > if (parentNode) {</span>
2947
- const { parentKey } = <span class="cstat-no" title="statement not covered" >this;</span>
2948
- const parentProperty = (<span class="cstat-no" title="statement not covered" >parentNode as any)[parentKey];</span>
2949
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(parentProperty)) {</span>
2950
- <span class="cstat-no" title="statement not covered" > index = parentProperty.indexOf(this);</span>
2951
- }
2952
- }
2953
- <span class="cstat-no" title="statement not covered" > return index;</span>
2954
- }
2955
- &nbsp;
2956
- /**
2957
- * 为存储点生成行为监听器
2958
- * @param action
2959
- * @returns
2960
- */
2961
- <span class="fstat-no" title="function not covered" > genActionListener(</span>$event: EventPayload) {
2962
- // eventList是要被发送给后端的数据
2963
- <span class="cstat-no" title="statement not covered" > if (!$event.eventList) {</span>
2964
- <span class="cstat-no" title="statement not covered" > $event.eventList = [];</span>
2965
- }
2966
- <span class="cstat-no" title="statement not covered" > if (!$event.eventStop) {</span>
2967
- <span class="cstat-no" title="statement not covered" > $event.eventList.push($event);</span>
2968
- }
2969
- <span class="cstat-no" title="statement not covered" > $event.originEvent = $event.originEvent || $event;</span>
2970
- <span class="cstat-no" title="statement not covered" > this.onChange($event);</span>
2971
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'App') {</span>
2972
- <span class="cstat-no" title="statement not covered" > this.emit('storage', $event);</span>
2973
- } else <span class="cstat-no" title="statement not covered" >if (this.parentNode &amp;&amp; this.parentNode.emit) {</span>
2974
- const event: EventPayload = <span class="cstat-no" title="statement not covered" >{</span>
2975
- action: 'update',
2976
- path: this.parentNode?.getNodePath(false),
2977
- object: {},
2978
- oldObject: {},
2979
- originEvent: $event.originEvent,
2980
- eventList: $event.eventList,
2981
- // eventStop为true后,数据不再存入eventList,就不再会将冒泡数据发送给后端
2982
- eventStop: true,
2983
- };
2984
- <span class="cstat-no" title="statement not covered" > this.parentNode?.emit('update', event);</span>
2985
- }
2986
- }
2987
- &nbsp;
2988
- <span class="fstat-no" title="function not covered" > createNode(</span>{ parentNode, parentKey, index }: { parentNode: SynatxNode; parentKey: string; index: number }) {
2989
- <span class="cstat-no" title="statement not covered" > if (parentNode) {</span>
2990
- const property = <span class="cstat-no" title="statement not covered" >parentNode[parentKey as keyof SynatxNode];</span>
2991
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(property) &amp;&amp; index !== -1) {</span>
2992
- <span class="cstat-no" title="statement not covered" > property.splice(index, 0, this);</span>
2993
- } else {
2994
- (<span class="cstat-no" title="statement not covered" >parentNode as any)[parentKey] = this;</span>
2995
- }
2996
- <span class="cstat-no" title="statement not covered" > this.parentNode = parentNode;</span>
2997
- <span class="cstat-no" title="statement not covered" > this.parentKey = parentKey;</span>
2998
- <span class="cstat-no" title="statement not covered" > this.create({</span>
2999
- index,
3000
- parentKey,
3001
- });
3002
- }
3003
- }
3004
- &nbsp;
3005
- <span class="fstat-no" title="function not covered" > toTemplateJSON(</span>) {
3006
- <span class="cstat-no" title="statement not covered" > return this._toJSON(<span class="fstat-no" title="function not covered" >(s</span>ource) =&gt; {</span>
3007
- <span class="cstat-no" title="statement not covered" > delete source.id;</span>
3008
- <span class="cstat-no" title="statement not covered" > return source;</span>
3009
- });
3010
- }
3011
- &nbsp;
3012
- /**
3013
- * 创建节点
3014
- */
3015
- <span class="fstat-no" title="function not covered" > create(</span>parentParams: Params) {
3016
- <span class="cstat-no" title="statement not covered" > this.emit('create', {</span>
3017
- action: 'create',
3018
- path: this.getNodePath(true),
3019
- object: this.toJSON(),
3020
- ...parentParams,
3021
- oldObject: null,
3022
- });
3023
- }
3024
- &nbsp;
3025
- /**
3026
- * 如果有父节点,则删除节点,在添加时调用
3027
- */
3028
- <span class="fstat-no" title="function not covered" > ensureDelete(</span>) {
3029
- // 批量赋值因为连线的问题需要特殊处理一下.
3030
- <span class="cstat-no" title="statement not covered" > if (this.parentNode?.concept === 'SelectMembers') {</span>
3031
- <span class="cstat-no" title="statement not covered" > this.parentNode.ensureDelete();</span>
3032
- <span class="cstat-no" title="statement not covered" > return;</span>
3033
- }
3034
- &nbsp;
3035
- <span class="cstat-no" title="statement not covered" > if (this.parentNode &amp;&amp; this.parentKey) {</span>
3036
- const path = <span class="cstat-no" title="statement not covered" >this.getNodePath(false);</span>
3037
- const parentParams = <span class="cstat-no" title="statement not covered" >this._delete();</span>
3038
- <span class="cstat-no" title="statement not covered" > if (parentParams &amp;&amp; parentParams.index !== -1) {</span>
3039
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((this.parentNode as any)[this.parentKey])) {</span>
3040
- <span class="cstat-no" title="statement not covered" > this.emit('delete', {</span>
3041
- action: 'delete',
3042
- path,
3043
- object: null,
3044
- ...parentParams,
3045
- });
3046
- } else {
3047
- const parentPath = <span class="cstat-no" title="statement not covered" >this.parentNode.getNodePath(false);</span>
3048
- <span class="cstat-no" title="statement not covered" > this.parentNode.emit('update', {</span>
3049
- action: 'update',
3050
- path: parentPath,
3051
- object: {
3052
- [this.parentKey]: null,
3053
- },
3054
- oldObject: {
3055
- [this.parentKey]: this.toJSON(),
3056
- },
3057
- });
3058
- }
3059
- }
3060
- }
3061
- }
3062
- &nbsp;
3063
- /**
3064
- * 删除节点
3065
- */
3066
- <span class="fstat-no" title="function not covered" > delete(</span>) {
3067
- <span class="cstat-no" title="statement not covered" > if (this.parentNode?.concept === 'Match' &amp;&amp; this.parentKey === 'expression') {</span>
3068
- (<span class="cstat-no" title="statement not covered" >this.parentNode as any).setExpressionWitchCase(null);</span>
3069
- <span class="cstat-no" title="statement not covered" > return;</span>
3070
- }
3071
- // 批量赋值因为连线的问题需要特殊处理一下.
3072
- <span class="cstat-no" title="statement not covered" > if (this.parentNode?.concept === 'SelectMembers') {</span>
3073
- const node: any = <span class="cstat-no" title="statement not covered" >this.parentNode;</span>
3074
- <span class="cstat-no" title="statement not covered" > node.delete();</span>
3075
- <span class="cstat-no" title="statement not covered" > return;</span>
3076
- }
3077
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'SelectMembers') {</span>
3078
- const node: any = <span class="cstat-no" title="statement not covered" >this.parentNode;</span>
3079
- <span class="cstat-no" title="statement not covered" > node.changeLinesLocation(this);</span>
3080
- }
3081
- &nbsp;
3082
- // 自定义连接器下的namespace删除的时候需要同时删除对应的logic
3083
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'Namespace' &amp;&amp; this.parentNode.concept === 'Connector') {</span>
3084
- (<span class="cstat-no" title="statement not covered" >this as unknown as Namespace).logics.forEach(<span class="fstat-no" title="function not covered" >logic </span>=&gt; <span class="cstat-no" title="statement not covered" >logic?.delete())</span></span>
3085
- }
3086
- &nbsp;
3087
- const useIndex = <span class="cstat-no" title="statement not covered" >['BindEvent', 'Identifier'].includes(this.concept);</span>
3088
- const path = <span class="cstat-no" title="statement not covered" >this.getNodePath(useIndex);</span>
3089
- const parentParams = <span class="cstat-no" title="statement not covered" >this._delete();</span>
3090
- <span class="cstat-no" title="statement not covered" > if (parentParams &amp;&amp; parentParams.index !== -1) {</span>
3091
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((this.parentNode as any)[this.parentKey])) {</span>
3092
- <span class="cstat-no" title="statement not covered" > if (process.env.NODE_ENV === 'development') {</span>
3093
- <span class="cstat-no" title="statement not covered" > console.log('删除节点', this);</span>
3094
- }
3095
- <span class="cstat-no" title="statement not covered" > this.emit('delete', {</span>
3096
- action: 'delete',
3097
- path,
3098
- object: null,
3099
- ...parentParams,
3100
- });
3101
- } else {
3102
- const parentPath = <span class="cstat-no" title="statement not covered" >this.parentNode.getNodePath(false);</span>
3103
- <span class="cstat-no" title="statement not covered" > this.parentNode.emit('update', {</span>
3104
- action: 'update',
3105
- path: parentPath,
3106
- object: {
3107
- [this.parentKey]: null,
3108
- },
3109
- oldObject: {
3110
- [this.parentKey]: this.toJSON(),
3111
- },
3112
- });
3113
- }
3114
- }
3115
- }
3116
- &nbsp;
3117
- /**
3118
- * 更新节点
3119
- */
3120
- <span class="fstat-no" title="function not covered" > update(</span>{ field, ...object }: any) {
3121
- const path = <span class="cstat-no" title="statement not covered" >this.getNodePath(false);</span>
3122
- const oldObject: any = <span class="cstat-no" title="statement not covered" >{};</span>
3123
- <span class="cstat-no" title="statement not covered" > for (const key in object) {</span>
3124
- <span class="cstat-no" title="statement not covered" > if (key === 'concept') {</span>
3125
- <span class="cstat-no" title="statement not covered" > continue;</span>
3126
- }
3127
- &nbsp;
3128
- <span class="cstat-no" title="statement not covered" > if (Object.prototype.hasOwnProperty.call(object, key)) {</span>
3129
- const oldProperty = (<span class="cstat-no" title="statement not covered" >this as any)[key] ?? null;</span>
3130
- <span class="cstat-no" title="statement not covered" > oldObject[key] = oldProperty;</span>
3131
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(oldProperty)) {</span>
3132
- <span class="cstat-no" title="statement not covered" > oldObject[key] = oldProperty.map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; {</span>
3133
- let propertyItem = <span class="cstat-no" title="statement not covered" >item ?? null;</span>
3134
- <span class="cstat-no" title="statement not covered" > if (item instanceof BaseNode) {</span>
3135
- <span class="cstat-no" title="statement not covered" > propertyItem = item.toJSON();</span>
3136
- }
3137
- <span class="cstat-no" title="statement not covered" > return propertyItem;</span>
3138
- });
3139
- } else <span class="cstat-no" title="statement not covered" >if (oldProperty instanceof BaseNode) {</span>
3140
- <span class="cstat-no" title="statement not covered" > oldObject[key] = oldProperty.toJSON();</span>
3141
- }
3142
- const property = <span class="cstat-no" title="statement not covered" >object[key] ?? null;</span>
3143
- (<span class="cstat-no" title="statement not covered" >this as any)[key] = property;</span>
3144
- const objectRefCtor = <span class="cstat-no" title="statement not covered" >getConceptConstructor(property?.concept);</span>
3145
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(property)) {</span>
3146
- (<span class="cstat-no" title="statement not covered" >this as any)[key] = property.map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; {</span>
3147
- let propertyItem = <span class="cstat-no" title="statement not covered" >item ?? null;</span>
3148
- const propertyObjectRefCtor = <span class="cstat-no" title="statement not covered" >getConceptConstructor(item?.concept);</span>
3149
- <span class="cstat-no" title="statement not covered" > if (propertyObjectRefCtor?.from) {</span>
3150
- <span class="cstat-no" title="statement not covered" > propertyItem = (propertyObjectRefCtor as any).from(item, this, key);</span>
3151
- }
3152
- <span class="cstat-no" title="statement not covered" > return propertyItem;</span>
3153
- });
3154
- } else <span class="cstat-no" title="statement not covered" >if (objectRefCtor?.from) {</span>
3155
- (<span class="cstat-no" title="statement not covered" >this as any)[key] = (objectRefCtor as any).from(property, this, key);</span>
3156
- }
3157
- }
3158
- }
3159
- const newObject: any = <span class="cstat-no" title="statement not covered" >{};</span>
3160
- const propertyMap = <span class="cstat-no" title="statement not covered" >getConceptPropertyMap(this.concept ?? this.constructor.name);</span>
3161
- <span class="cstat-no" title="statement not covered" > for (const key in object) {</span>
3162
- const property = <span class="cstat-no" title="statement not covered" >propertyMap.get(key);</span>
3163
- <span class="cstat-no" title="statement not covered" > if (property) {</span>
3164
- const objProperty = <span class="cstat-no" title="statement not covered" >object[key] ?? null;</span>
3165
- const propertyConcept = <span class="cstat-no" title="statement not covered" >property?.objectRef;</span>
3166
- <span class="cstat-no" title="statement not covered" > if (propertyConcept) {</span>
3167
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(objProperty)) {</span>
3168
- <span class="cstat-no" title="statement not covered" > newObject[key] = objProperty.map(<span class="fstat-no" title="function not covered" >(o</span>bjItem: any) =&gt; {</span>
3169
- <span class="cstat-no" title="statement not covered" > return ensureDefined(objItem, propertyConcept);</span>
3170
- });
3171
- } else {
3172
- <span class="cstat-no" title="statement not covered" > newObject[key] = ensureDefined(objProperty, propertyConcept);</span>
3173
- }
3174
- } else {
3175
- <span class="cstat-no" title="statement not covered" > newObject[key] = objProperty;</span>
3176
- }
3177
- }
3178
- }
3179
- <span class="cstat-no" title="statement not covered" > if (process.env.NODE_ENV === 'development') {</span>
3180
- <span class="cstat-no" title="statement not covered" > console.log('更新节点', 'path', path, 'oldObject', oldObject, 'newObject', newObject);</span>
3181
- }
3182
- <span class="cstat-no" title="statement not covered" > this.emit('update', {</span>
3183
- action: 'update',
3184
- path,
3185
- object: newObject,
3186
- oldObject,
3187
- field,
3188
- });
3189
- }
3190
- &nbsp;
3191
- <span class="fstat-no" title="function not covered" > _delete(</span>): Params {
3192
- /* override */
3193
- <span class="cstat-no" title="statement not covered" > return {</span>
3194
- propertyName: '',
3195
- index: -1,
3196
- object: null,
3197
- oldObject: this,
3198
- };
3199
- }
3200
- &nbsp;
3201
- static from(source: any, parentNode?: BaseNode, parentKey?: string): BaseNode {
3202
- // 有一些继承的情况
3203
- const Ctor = classMap.get(source?.concept) || this;
3204
- <span class="missing-if-branch" title="if path not taken" >I</span>if (Ctor &amp;&amp; source instanceof Ctor) {
3205
- <span class="cstat-no" title="statement not covered" > if (parentNode) {</span>
3206
- <span class="cstat-no" title="statement not covered" > source.parentNode = parentNode;</span>
3207
- }
3208
- <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
3209
- <span class="cstat-no" title="statement not covered" > source.parentKey = parentKey;</span>
3210
- }
3211
- <span class="cstat-no" title="statement not covered" > return source;</span>
3212
- }
3213
- &nbsp;
3214
- <span class="missing-if-branch" title="else path not taken" >E</span>if (Ctor) {
3215
- const instance = new Ctor();
3216
- if (parentNode) {
3217
- instance.parentNode = parentNode;
3218
- }
3219
- if (parentKey) {
3220
- instance.parentKey = parentKey;
3221
- }
3222
- instance.subConstructor({
3223
- ...source,
3224
- concept: source?.concept ?? this?.prototype?.concept ?? (<span class="branch-2 cbranch-no" title="branch not covered" >Ctor as any).ConceptName as string </span>?? <span class="branch-3 cbranch-no" title="branch not covered" >Ctor.name,</span>
3225
- parentNode,
3226
- });
3227
- return instance;
3228
- }
3229
- }
3230
- &nbsp;
3231
- get nodePath() {
3232
- return this.getNodePath(false);
3233
- }
3234
- &nbsp;
3235
- getNodePath(useIndex: boolean): string;
3236
- getNodePath(useIndexKeys: string[]): string;
3237
- getNodePath(useIndex: boolean | string[]) {
3238
- let node: BaseNode = this;
3239
- let useIndexKeys: string[] = [];
3240
- <span class="missing-if-branch" title="if path not taken" >I</span>if (Array.isArray(useIndex)) {
3241
- <span class="cstat-no" title="statement not covered" > useIndexKeys = useIndex;</span>
3242
- <span class="cstat-no" title="statement not covered" > useIndex = false;</span>
3243
- }
3244
- let isNodeSelf = true;
3245
- const pathArr = [];
3246
- while (node) {
3247
- let path = '';
3248
- const { parentNode } = node;
3249
- if (parentNode) {
3250
- const { parentKey } = node;
3251
- path = parentKey;
3252
- const parentProperty = parentNode[parentKey as keyof BaseNode];
3253
- <span class="missing-if-branch" title="else path not taken" >E</span>if (Array.isArray(parentProperty)) {
3254
- const { name } = node;
3255
- // 如果存在同名节点,使用下标来表示NodePath
3256
- const siblingNode: BaseNode = name
3257
- ? (parentProperty as BaseNode[]).find((child) =&gt; {
3258
- // 因为proxy的关系,导致两边的引用不相同,所以这里需要判断id
3259
- return child?.name === name &amp;&amp; child !== node &amp;&amp; <span class="branch-2 cbranch-no" title="branch not covered" >child?.id !== node?.id;</span>
3260
- })
3261
- : <span class="branch-1 cbranch-no" title="branch not covered" >null;</span>
3262
- <span class="missing-if-branch" title="if path not taken" >I</span>if (siblingNode || !name || (useIndex &amp;&amp; <span class="branch-3 cbranch-no" title="branch not covered" >isNodeSelf)</span> || useIndexKeys.includes(node.concept)) {
3263
- const index = <span class="cstat-no" title="statement not covered" >parentProperty.findIndex(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; {</span>
3264
- <span class="cstat-no" title="statement not covered" > if (item === node) {</span>
3265
- <span class="cstat-no" title="statement not covered" > return true;</span>
3266
- }
3267
- &nbsp;
3268
- <span class="cstat-no" title="statement not covered" > return item?.id &amp;&amp; item?.id === node?.id;</span>
3269
- });
3270
- <span class="cstat-no" title="statement not covered" > path += `[${index}]`;</span>
3271
- } else {
3272
- path += `[name=${name}]`;
3273
- }
3274
- }
3275
- pathArr.unshift(path);
3276
- }
3277
- node = parentNode;
3278
- isNodeSelf = false;
3279
- }
3280
- pathArr.unshift('app');
3281
- return pathArr.join('.');
3282
- }
3283
- &nbsp;
3284
- /**
3285
- * 上层节点
3286
- */
3287
- get upperNode(): SynatxNode {
3288
- // eslint-disable-next-line consistent-this
3289
- let _upperNode: BaseNode = this;
3290
- while (!!_upperNode &amp;&amp; _upperNode.concept === this.concept) {
3291
- _upperNode = _upperNode.parentNode;
3292
- }
3293
- return _upperNode as SynatxNode;
3294
- }
3295
- &nbsp;
3296
- /**
3297
- * 根节点
3298
- */
3299
- get rootNode() {
3300
- return this.getAncestor('App') as App;
3301
- }
3302
- &nbsp;
3303
- /**
3304
- * 获取祖先节点
3305
- */
3306
- getAncestor(concept: SynatxNode['concept']): SynatxNode;
3307
- getAncestor&lt;Node extends SynatxNode&gt;(concept: Node['concept']): Node;
3308
- getAncestor&lt;Node extends SynatxNode = SynatxNode&gt;(concept: SynatxNode['concept']): Node {
3309
- let { upperNode } = this;
3310
- while (upperNode &amp;&amp; upperNode.concept &amp;&amp; upperNode.concept !== concept) {
3311
- upperNode = upperNode.upperNode;
3312
- }
3313
- return upperNode as Node;
3314
- }
3315
- &nbsp;
3316
- /**
3317
- *
3318
- * @param source
3319
- * @param Ctor
3320
- * @param completeList
3321
- * @param idsList
3322
- */
3323
- handleSource(source: any, completeList: any[]) {
3324
- const { id, concept } = source || {};
3325
- const actualSource = source instanceof BaseNode ? source : getSourceFromMap(id, concept);
3326
- completeList.push(actualSource || source);
3327
- }
3328
- &nbsp;
3329
- /**
3330
- * 获取当前的TsName
3331
- */
3332
- get tsName() {
3333
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.name) {
3334
- let tsName = <span class="cstat-no" title="statement not covered" >this.name;</span>
3335
- // 匹配所有特殊字符都转为_
3336
- <span class="cstat-no" title="statement not covered" > tsName = tsName.replace(/\W/g, '_');</span>
3337
- <span class="cstat-no" title="statement not covered" > if (/^\d/.test(tsName)) {</span>
3338
- <span class="cstat-no" title="statement not covered" > tsName = `$${tsName}`;</span>
3339
- }
3340
- <span class="cstat-no" title="statement not covered" > return tsName;</span>
3341
- }
3342
- return '';
3343
- }
3344
- &nbsp;
3345
- /**
3346
- * 生成json
3347
- * @param instance
3348
- * @param Ctor
3349
- */
3350
- genSources(instance: BaseNode, filerFn?: (source: Partial&lt;BaseNode&gt;) =&gt; {}) {
3351
- <span class="missing-if-branch" title="else path not taken" >E</span>if (!instance) {
3352
- return instance;
3353
- }
3354
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(instance)) {</span>
3355
- <span class="cstat-no" title="statement not covered" > return instance.map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; (<span class="cstat-no" title="statement not covered" >item &amp;&amp; item._toJSON ? item._toJSON(filerFn) : item)</span>);</span>
3356
- }
3357
- <span class="cstat-no" title="statement not covered" > return instance &amp;&amp; instance._toJSON ? instance._toJSON(filerFn) : instance;</span>
3358
- }
3359
- &nbsp;
3360
- /**
3361
- * 实例化一个 JSON
3362
- * 由于有 from,只能先实例化父级,再实例化子级
3363
- * @param obj
3364
- * @param parentNode
3365
- * @returns
3366
- */
3367
- instantiate(source: any, parentNode: BaseNode, parentKey: string) {
3368
- if (source instanceof BaseNode) {
3369
- if (!source.parentNode || !source.parentKey) {
3370
- source.parentNode = parentNode as SynatxNode;
3371
- source.parentKey = parentKey;
3372
- }
3373
- return source;
3374
- }
3375
- if (source &amp;&amp; source.concept &amp;&amp; classMap.get(source.concept)) {
3376
- const Ctor = classMap.get(source.concept) as any;
3377
- const instance = Ctor.from(source, parentNode, parentKey);
3378
- <span class="missing-if-branch" title="if path not taken" >I</span>if (instance &amp;&amp; instance.toStorageJSON) <span class="cstat-no" title="statement not covered" >instance.storageJSON = instance.toStorageJSON();</span>
3379
- return instance;
3380
- }
3381
- return source;
3382
- }
3383
- &nbsp;
3384
- /**
3385
- * 激活 JSON 内部实例
3386
- * @param source
3387
- */
3388
- instantiateSub(source: any, parentKey: string) {
3389
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!source) {
3390
- <span class="cstat-no" title="statement not covered" > return;</span>
3391
- }
3392
- const completeList: any[] = [];
3393
- let isArray;
3394
- // 暂时通过是否有name判断数据是否全
3395
- if (Array.isArray(source)) {
3396
- isArray = true;
3397
- source.forEach((sourceItem) =&gt; {
3398
- this.handleSource(sourceItem, completeList);
3399
- });
3400
- } else {
3401
- this.handleSource(source, completeList);
3402
- }
3403
- const instanceList: any[] = completeList.map((item) =&gt; this.instantiate(item, this, parentKey));
3404
- if (isArray) {
3405
- return instanceList;
3406
- }
3407
- <span class="missing-if-branch" title="else path not taken" >E</span>if (Array.isArray(instanceList) &amp;&amp; instanceList.length) {
3408
- return instanceList[0];
3409
- }
3410
- }
3411
- &nbsp;
3412
- <span class="fstat-no" title="function not covered" > plainAssign(</span>source: any) {
3413
- <span class="cstat-no" title="statement not covered" > this._mutable = true;</span>
3414
- &nbsp;
3415
- const oldId = <span class="cstat-no" title="statement not covered" >this.id;</span>
3416
- &nbsp;
3417
- <span class="cstat-no" title="statement not covered" > Object.keys(source).forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; {</span>
3418
- const value = <span class="cstat-no" title="statement not covered" >source[key];</span>
3419
- <span class="cstat-no" title="statement not covered" > if (typeof value !== 'object' &amp;&amp; typeof value !== 'function') (<span class="cstat-no" title="statement not covered" >this as any)[key] = value;</span></span>
3420
- });
3421
- &nbsp;
3422
- <span class="cstat-no" title="statement not covered" > this._mutable = false;</span>
3423
- }
3424
- &nbsp;
3425
- <span class="fstat-no" title="function not covered" > pick(</span>source: any, keys: Array&lt;string&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span> {
3426
- const obj: { [name: string]: any } = <span class="cstat-no" title="statement not covered" >{};</span>
3427
- <span class="cstat-no" title="statement not covered" > keys.forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; (<span class="cstat-no" title="statement not covered" >obj[key] = source[key])</span>);</span>
3428
- // 这里统一用 assign,集中处理 id 的问题
3429
- // this.assign(obj);
3430
- }
3431
- &nbsp;
3432
- /**
3433
- * 从对象中深度获取
3434
- * @param source
3435
- * @param keys
3436
- * @example 比如一般后端返回只是添加了个 id
3437
- * ```
3438
- * this.deepPick(result, ['id'])
3439
- */
3440
- <span class="fstat-no" title="function not covered" > deepPick(</span>source: any, keys: Array&lt;string&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span> {
3441
- <span class="cstat-no" title="statement not covered" > utils.traverse(</span>
3442
- <span class="fstat-no" title="function not covered" > (c</span>urrent) =&gt; {
3443
- const subSource = <span class="cstat-no" title="statement not covered" >current.jsonPath ? at(source, [current.jsonPath])[0] : source;</span>
3444
- const target = <span class="cstat-no" title="statement not covered" >current.jsonPath ? at(this as any, [current.jsonPath])[0] : this;</span>
3445
- <span class="cstat-no" title="statement not covered" > if (!target) <span class="cstat-no" title="statement not covered" >return;</span></span>
3446
- &nbsp;
3447
- const obj: { [name: string]: any } = <span class="cstat-no" title="statement not covered" >{};</span>
3448
- <span class="cstat-no" title="statement not covered" > keys.forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; {</span>
3449
- <span class="cstat-no" title="statement not covered" > if (subSource.hasOwnProperty(key)) {</span>
3450
- <span class="cstat-no" title="statement not covered" > obj[key] = subSource[key];</span>
3451
- }
3452
- });
3453
- // 这里统一用 assign,集中处理 id 的问题
3454
- <span class="cstat-no" title="statement not covered" > target.assign ? target.assign(obj) : Object.assign(target, obj);</span>
3455
- },
3456
- { node: source },
3457
- { mode: 'anyObject' }
3458
- );
3459
- }
3460
- &nbsp;
3461
- /**
3462
- * 去除循环依赖,转为纯 JSON
3463
- * @param parentKey 外面的 key,提供给 JSON.stringify 使用
3464
- * @param excludedKeys 需要额外排除的 keys
3465
- */
3466
- toJSON() {
3467
- return this._toJSON();
3468
- }
3469
- &nbsp;
3470
- _toJSON(filerFn?: (source: Partial&lt;BaseNode&gt;) =&gt; {}): any {
3471
- const propertyMap = getConceptPropertyMap(this.concept || <span class="branch-1 cbranch-no" title="branch not covered" >this.constructor.name)</span>;
3472
- const source: Partial&lt;BaseNode&gt; = {};
3473
- propertyMap.forEach((property, key: string) =&gt; {
3474
- <span class="missing-if-branch" title="else path not taken" >E</span>if (property) {
3475
- const { objectRef: propertyObjectRef } = property;
3476
- if (!propertyObjectRef) {
3477
- (source as any)[key] = this[key as keyof BaseNode];
3478
- } else {
3479
- const sources: any = this.genSources(this[key as keyof BaseNode], filerFn);
3480
- (source as any)[key] = sources;
3481
- }
3482
- }
3483
- });
3484
- &nbsp;
3485
- // @ts-ignore
3486
- source.concept = this.concept;
3487
- &nbsp;
3488
- return filerFn ? <span class="branch-0 cbranch-no" title="branch not covered" >filerFn(source) </span>: source;
3489
- }
3490
- &nbsp;
3491
- /**
3492
- * 转为单层的 JSON
3493
- * @param parentKey 外面的 key,提供给 JSON.stringify 使用
3494
- * @param excludedKeys 需要额外排除的 keys
3495
- */
3496
- <span class="fstat-no" title="function not covered" > toPlainJSON(</span>parentKey?: string, excludedKeys: Array&lt;string&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span>: any {
3497
- const JSON_EXCLUDED_KEYS = <span class="cstat-no" title="statement not covered" >new Set(this.JSON_EXCLUDED_KEYS || []);</span> // Object.getPrototypeOf(this).constructor.JSON_EXCLUDED_KEYS || [];
3498
- <span class="cstat-no" title="statement not covered" > excludedKeys.forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; <span class="cstat-no" title="statement not covered" >JSON_EXCLUDED_KEYS.add(key))</span>;</span>
3499
- &nbsp;
3500
- const temp: { [prop: string]: any } = <span class="cstat-no" title="statement not covered" >{};</span>
3501
- <span class="cstat-no" title="statement not covered" > Object.keys(this).forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; {</span>
3502
- const value = (<span class="cstat-no" title="statement not covered" >this as any)[key];</span>
3503
- <span class="cstat-no" title="statement not covered" > if (!JSON_EXCLUDED_KEYS.has(key) &amp;&amp; typeof value !== 'object' &amp;&amp; typeof value !== 'function') <span class="cstat-no" title="statement not covered" >temp[key] = value;</span></span>
3504
- });
3505
- <span class="cstat-no" title="statement not covered" > return JSON.parse(JSON.stringify(temp));</span>
3506
- }
3507
- &nbsp;
3508
- /**
3509
- * 查找引用
3510
- */
3511
- @action('查找引用')
3512
- <span class="fstat-no" title="function not covered" > async </span>findUsage(): Promise&lt;any&gt; {
3513
- /* override */
3514
- }
3515
- &nbsp;
3516
- /**
3517
- * 通过当前节点,查找被引用的节点
3518
- */
3519
- @action('通过当前节点,查找被引用的节点')
3520
- <span class="fstat-no" title="function not covered" > async </span>nodeFindRefNodes(): Promise&lt;any&gt; {
3521
- /* override */
3522
- }
3523
- &nbsp;
3524
- <span class="fstat-no" title="function not covered" > async </span>findReadOnlyLogicUsage(): Promise&lt;any&gt; {
3525
- /* override */
3526
- }
3527
- &nbsp;
3528
- /**
3529
- * 重命名
3530
- */
3531
- @action('重命名')
3532
- <span class="fstat-no" title="function not covered" > async </span>changeName(newValue: string, updateAll: boolean = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span>: Promise&lt;any&gt; {
3533
- /* override */
3534
- }
3535
- &nbsp;
3536
- /**
3537
- * 准备删除
3538
- */
3539
- @action('准备删除')
3540
- <span class="fstat-no" title="function not covered" > async </span>prepareDelete(cb?: Function): Promise&lt;any&gt; {
3541
- /* override */
3542
- }
3543
- &nbsp;
3544
- /**
3545
- * 添加参数准备
3546
- */
3547
- @action('添加参数准备')
3548
- <span class="fstat-no" title="function not covered" > async </span>addParamsPrepare(): Promise&lt;any&gt; {
3549
- /* override */
3550
- }
3551
- &nbsp;
3552
- /**
3553
- * 获取当前节点类型
3554
- */
3555
- @action('获取当前节点类型')
3556
- <span class="fstat-no" title="function not covered" > async </span>getCurrentTypeAnnotation(): Promise&lt;any&gt; {
3557
- /* override */
3558
- }
3559
- &nbsp;
3560
- /**
3561
- * 获取当前节点的下一级内容
3562
- */
3563
- @action('获取当前节点的下一级内容')
3564
- <span class="fstat-no" title="function not covered" > getSelectRef(</span>newTypeAnnotation: TypeAnnotation, needNewStructure = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span>: any {
3565
- /* override */
3566
- }
3567
- &nbsp;
3568
- /**
3569
- * 销毁
3570
- * 从 Map 中删除点和子节点
3571
- */
3572
- <span class="fstat-no" title="function not covered" > destroy(</span>) {
3573
- // utils.traverse((current) =&gt; , { node: this }, {
3574
- // mode: 'anyObject',
3575
- // excludedKeySet: this.JSON_EXCLUDED_KEYS,
3576
- // });
3577
- }
3578
- &nbsp;
3579
- <span class="fstat-no" title="function not covered" > onChange(</span>$event?: EventPayload) {
3580
- <span class="cstat-no" title="statement not covered" > this.emit('change', $event);</span>
3581
- }
3582
- &nbsp;
3583
- <span class="fstat-no" title="function not covered" > onCreate(</span>$event?: any) {
3584
- /* override */
3585
- }
3586
- &nbsp;
3587
- <span class="fstat-no" title="function not covered" > onDelete(</span>$event?: any) {
3588
- /* override */
3589
- }
3590
- &nbsp;
3591
- /**
3592
- * 移动节点
3593
- * @param sourceNode
3594
- * @param position
3595
- */
3596
- <span class="fstat-no" title="function not covered" > moveNode(</span>options: { sourceNode: BaseNode; position: 'append' | 'insertBefore' | 'insertAfter'; action?: string }) {
3597
- const { sourceNode, position } = <span class="cstat-no" title="statement not covered" >options;</span>
3598
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'App') {</span>
3599
- <span class="cstat-no" title="statement not covered" > return;</span>
3600
- }
3601
- let actionMsg = <span class="cstat-no" title="statement not covered" >`移动${(this.constructor as any).nodeTitle}`;</span>
3602
- <span class="cstat-no" title="statement not covered" > if (this.name) {</span>
3603
- <span class="cstat-no" title="statement not covered" > actionMsg += `“${this.name}”`;</span>
3604
- }
3605
- (<span class="cstat-no" title="statement not covered" >sourceNode as any).app.emit('collect:start', {</span>
3606
- actionMsg,
3607
- });
3608
- // 如果是兄弟节点之前的移动
3609
- <span class="cstat-no" title="statement not covered" > if (position !== 'append' &amp;&amp; this.concept !== sourceNode.concept) {</span>
3610
- <span class="cstat-no" title="statement not covered" > return;</span>
3611
- }
3612
- // 先删
3613
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
3614
- <span class="cstat-no" title="statement not covered" > if (position === 'append') {</span>
3615
- let { action } = <span class="cstat-no" title="statement not covered" >options;</span>
3616
- <span class="cstat-no" title="statement not covered" > if (!action) <span class="cstat-no" title="statement not covered" >action = `add${this.concept}`;</span></span>
3617
- const parentNode = <span class="cstat-no" title="statement not covered" >sourceNode;</span>
3618
- (<span class="cstat-no" title="statement not covered" >parentNode as any)[action](this as any);</span>
3619
- } else {
3620
- const parentNode = <span class="cstat-no" title="statement not covered" >sourceNode?.parentNode;</span>
3621
- const parentKey = <span class="cstat-no" title="statement not covered" >sourceNode?.parentKey || '';</span>
3622
- const list = (<span class="cstat-no" title="statement not covered" >parentNode as any)[parentKey];</span>
3623
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(list)) {</span>
3624
- let index = <span class="cstat-no" title="statement not covered" >list.indexOf(sourceNode);</span>
3625
- <span class="cstat-no" title="statement not covered" > if (position === 'insertAfter') {</span>
3626
- <span class="cstat-no" title="statement not covered" > index += 1;</span>
3627
- }
3628
- <span class="cstat-no" title="statement not covered" > Object.assign(this, {</span>
3629
- parentNode,
3630
- parentKey,
3631
- });
3632
- &nbsp;
3633
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'ViewElement') <span class="cstat-no" title="statement not covered" >this.name = (this as unknown as ViewElement).getViewElementUniqueName(this.name);</span></span>
3634
- &nbsp;
3635
- <span class="cstat-no" title="statement not covered" > list.splice(index, 0, this);</span>
3636
- <span class="cstat-no" title="statement not covered" > this.create({</span>
3637
- index,
3638
- parentNode,
3639
- parentKey,
3640
- });
3641
- }
3642
- }
3643
- (<span class="cstat-no" title="statement not covered" >sourceNode as any).app.emit('collect:end');</span>
3644
- }
3645
- &nbsp;
3646
- // 其他节点替换本nasl节点
3647
- <span class="fstat-no" title="function not covered" > replaceNode(</span>newNode: any) {
3648
- const oldNode: any = <span class="cstat-no" title="statement not covered" >this;</span>
3649
- const { parentNode, parentKey, offsetX, offsetY, app } = <span class="cstat-no" title="statement not covered" >oldNode;</span>
3650
- const { logic } = <span class="cstat-no" title="statement not covered" >oldNode;</span>
3651
- <span class="cstat-no" title="statement not covered" > if (!Array.isArray(parentNode[parentKey])) {</span>
3652
- /**
3653
- * match切换分支,需要调用setExpressionWitchCase,补全分支的信息
3654
- */
3655
- <span class="cstat-no" title="statement not covered" > if (parentNode.concept === 'Match' &amp;&amp; parentKey === 'expression') {</span>
3656
- <span class="cstat-no" title="statement not covered" > parentNode.setExpressionWitchCase(newNode);</span>
3657
- <span class="cstat-no" title="statement not covered" > return;</span>
3658
- }
3659
- <span class="cstat-no" title="statement not covered" > parentNode.update({</span>
3660
- [parentKey]: newNode,
3661
- });
3662
- } else {
3663
- <span class="cstat-no" title="statement not covered" > app.emit('collect:start', {</span>
3664
- actionMsg: '删除属性变量',
3665
- });
3666
- <span class="cstat-no" title="statement not covered" > if (parentNode.concept === 'Logic') {</span>
3667
- <span class="cstat-no" title="statement not covered" > if (parentKey === 'body') {</span>
3668
- const expIndex = <span class="cstat-no" title="statement not covered" >logic.body.findIndex(<span class="fstat-no" title="function not covered" >(i</span>tem: any) =&gt; <span class="cstat-no" title="statement not covered" >item === oldNode)</span>;</span>
3669
- <span class="cstat-no" title="statement not covered" > logic.insertItemInBodyAt(newNode, expIndex);</span>
3670
- } else {
3671
- const expIndex = <span class="cstat-no" title="statement not covered" >logic.playground.findIndex(<span class="fstat-no" title="function not covered" >(i</span>tem: any) =&gt; <span class="cstat-no" title="statement not covered" >item === oldNode)</span>;</span>
3672
- <span class="cstat-no" title="statement not covered" > Object.assign(newNode, { offsetX, offsetY });</span>
3673
- <span class="cstat-no" title="statement not covered" > logic.insertItemInPlaygroundAt(newNode, expIndex);</span>
3674
- }
3675
- } else {
3676
- const expIndex = <span class="cstat-no" title="statement not covered" >parentNode[parentKey].findIndex(<span class="fstat-no" title="function not covered" >(i</span>tem: any) =&gt; <span class="cstat-no" title="statement not covered" >item === oldNode)</span>;</span>
3677
- const firstUpperText = <span class="cstat-no" title="statement not covered" >parentKey[0].toUpperCase() + parentKey.slice(1, parentKey.length);</span>
3678
- <span class="cstat-no" title="statement not covered" > Object.assign(newNode, { offsetX, offsetY });</span>
3679
- <span class="cstat-no" title="statement not covered" > if (parentNode.concept === 'MatchCase') {</span>
3680
- <span class="cstat-no" title="statement not covered" > parentKey === 'body' ? parentNode.insertItemInBodyAt(newNode, expIndex) : parentNode.insertLogicItemInPatternsAt(newNode, expIndex);</span>
3681
- } else <span class="cstat-no" title="statement not covered" >if (parentNode[`insertItemIn${firstUpperText}At`]) <span class="cstat-no" title="statement not covered" >parentNode[`insertItemIn${firstUpperText}At`](newNode, expIndex);</span></span>
3682
- else <span class="cstat-no" title="statement not covered" >parentNode.insertItemAt(newNode, expIndex);</span>
3683
- }
3684
- <span class="cstat-no" title="statement not covered" > oldNode.delete();</span>
3685
- <span class="cstat-no" title="statement not covered" > app.emit('collect:end');</span>
3686
- }
3687
- }
3688
- &nbsp;
3689
- /**
3690
- * 获取添加时的默认选项
3691
- * @returns
3692
- */
3693
- public static getDefaultOptions(): any {
3694
- return {};
3695
- }
3696
- &nbsp;
3697
- public traverseChildren(cb: (ele: SynatxNode) =&gt; void): void {
3698
- function traverse(node: SynatxNode) {
3699
- cb(node);
3700
- &nbsp;
3701
- const propertyMap = getConceptPropertyMap(node?.concept);
3702
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!propertyMap) <span class="cstat-no" title="statement not covered" >return;</span>
3703
- &nbsp;
3704
- for (const property of propertyMap.keys()) {
3705
- const child = node[property as keyof BaseNode];
3706
- if (!child) continue;
3707
- else if (Array.isArray(child)) child.forEach((node: SynatxNode) =&gt; traverse(node));
3708
- else traverse(child);
3709
- }
3710
- }
3711
- &nbsp;
3712
- traverse(this as unknown as SynatxNode);
3713
- }
3714
- &nbsp;
3715
- /**
3716
- * 获取当前节点在nasl标注节点上的节点
3717
- */
3718
- public <span class="fstat-no" title="function not covered" >getCurrentAnnotatedJSON(</span>) {
3719
- <span class="cstat-no" title="statement not covered" > return this.__TypeAnnotation;</span>
3720
- }
3721
- &nbsp;
3722
- /**
3723
- * 获取
3724
- * 当前this上下文 的Source 和 父级文件级别的节点
3725
- */
3726
- public <span class="fstat-no" title="function not covered" >getCurrentSource(</span>) {
3727
- const node = <span class="cstat-no" title="statement not covered" >this as BaseNode;</span>
3728
- let { sourceMap } = <span class="cstat-no" title="statement not covered" >node;</span>
3729
- let fileNode = <span class="cstat-no" title="statement not covered" >node;</span>
3730
- // 如果没有sourceMap,就继续向上找 ,或者到module结束
3731
- // 如果 节点找到 app 或者module 停止 或者entity找到DataSource为止
3732
- // 如果当前节点是view就不要向上查找了
3733
- <span class="cstat-no" title="statement not covered" > while (!sourceMap &amp;&amp; fileNode &amp;&amp; !(fileNode.parentNode.concept === 'App')) {</span>
3734
- <span class="cstat-no" title="statement not covered" > fileNode = fileNode.parentNode;</span>
3735
- <span class="cstat-no" title="statement not covered" > sourceMap = fileNode?.sourceMap;</span>
3736
- }
3737
- const currentSource = <span class="cstat-no" title="statement not covered" >sourceMap &amp;&amp; sourceMap.get(node);</span>
3738
- <span class="cstat-no" title="statement not covered" > if (currentSource) {</span>
3739
- <span class="cstat-no" title="statement not covered" > return { currentSource, fileNode };</span>
3740
- }
3741
- <span class="cstat-no" title="statement not covered" > return { fileNode };</span>
3742
- }
3743
- &nbsp;
3744
- /**
3745
- * 获取
3746
- * 当前this上下文 的Source 和 父级文件级别的节点
3747
- */
3748
- public <span class="fstat-no" title="function not covered" >getFileConceptNode(</span>concept: string) {
3749
- const node = <span class="cstat-no" title="statement not covered" >this as BaseNode;</span>
3750
- let { sourceMap } = <span class="cstat-no" title="statement not covered" >node;</span>
3751
- let fileNode = <span class="cstat-no" title="statement not covered" >node;</span>
3752
- // 如果没有sourceMap,就继续向上找 ,或者到module结束
3753
- // 如果 节点找到 app 或者module 停止 或者entity找到DataSource为止
3754
- // 如果当前节点是view就不要向上查找了
3755
- <span class="cstat-no" title="statement not covered" > while (!sourceMap &amp;&amp; fileNode &amp;&amp; !(fileNode.parentNode.concept === 'App')) {</span>
3756
- <span class="cstat-no" title="statement not covered" > fileNode = fileNode.parentNode;</span>
3757
- <span class="cstat-no" title="statement not covered" > sourceMap = fileNode?.sourceMap;</span>
3758
- }
3759
- const arr: any = <span class="cstat-no" title="statement not covered" >[];</span>
3760
- <span class="cstat-no" title="statement not covered" > sourceMap &amp;&amp;</span>
3761
- sourceMap.forEach(<span class="fstat-no" title="function not covered" >(v</span>alue, key) =&gt; {
3762
- <span class="cstat-no" title="statement not covered" > if (key.concept === concept) <span class="cstat-no" title="statement not covered" >arr.push({ key, value });</span></span>
3763
- });
3764
- <span class="cstat-no" title="statement not covered" > return arr;</span>
3765
- }
3766
- &nbsp;
3767
- get isTreeLeaf() {
3768
- <span class="missing-if-branch" title="if path not taken" >I</span>if (
3769
- this.concept === 'EntityProperty' ||
3770
- this.concept === 'InterfaceParam' ||
3771
- this.concept === 'Param' ||
3772
- this.concept === 'Return' ||
3773
- this.concept === 'StructureProperty' ||
3774
- this.concept === 'Variable'
3775
- ) {
3776
- <span class="cstat-no" title="statement not covered" > if ((this as any).typeAnnotation || (this.__TypeAnnotation &amp;&amp; this.parentKey === 'virtualParams')) {</span>
3777
- <span class="cstat-no" title="statement not covered" > return !this.hasChildren;</span>
3778
- }
3779
- <span class="cstat-no" title="statement not covered" > return true;</span>
3780
- }
3781
- return false;
3782
- }
3783
- &nbsp;
3784
- get hasChildren() {
3785
- const typeAnnotation = (this as any).typeAnnotation || this.__TypeAnnotation;
3786
- <span class="missing-if-branch" title="if path not taken" >I</span>if (typeAnnotation) {
3787
- const { typeKind, typeNamespace, typeName, properties } = <span class="cstat-no" title="statement not covered" >typeAnnotation;</span>
3788
- <span class="cstat-no" title="statement not covered" > if (typeKind === 'reference' || typeKind === 'generic') {</span>
3789
- <span class="cstat-no" title="statement not covered" > if (typeNamespace.endsWith('.enums')) <span class="cstat-no" title="statement not covered" >return null;</span></span>
3790
- <span class="cstat-no" title="statement not covered" > return [{}];</span>
3791
- }
3792
- <span class="cstat-no" title="statement not covered" > if (typeNamespace === 'nasl.core' &amp;&amp; ['String', 'Text', 'Email'].includes(typeName)) {</span>
3793
- <span class="cstat-no" title="statement not covered" > return [{}];</span>
3794
- }
3795
- <span class="cstat-no" title="statement not covered" > if (typeKind === 'anonymousStructure' &amp;&amp; properties?.length) {</span>
3796
- <span class="cstat-no" title="statement not covered" > return [{}];</span>
3797
- }
3798
- <span class="cstat-no" title="statement not covered" > return null;</span>
3799
- }
3800
- return null;
3801
- }
3802
- &nbsp;
3803
- /**
3804
- * 使用新的 concept 在当前节点生成新的数据
3805
- */
3806
- <span class="fstat-no" title="function not covered" > changeConceptNode(</span>concept: SynatxNodeConcept) {
3807
- <span class="cstat-no" title="statement not covered" > return new Proxy(this, {</span>
3808
- <span class="fstat-no" title="function not covered" > get(</span>target, p: keyof BaseNode, receiver) {
3809
- <span class="cstat-no" title="statement not covered" > if (p === 'concept') {</span>
3810
- <span class="cstat-no" title="statement not covered" > return concept;</span>
3811
- }
3812
- &nbsp;
3813
- <span class="cstat-no" title="statement not covered" > return target[p];</span>
3814
- },
3815
- })
3816
- }
3817
- &nbsp;
3818
- /** 收集所有节点 */
3819
- collectNodes(): SynatxNode[];
3820
- /** 收集特定类型的子节点 */
3821
- collectNodes(concept: SynatxNodeConcept): SynatxNode[];
3822
- /** 收集断言返回`true`的子节点 */
3823
- collectNodes(pre: (node: SynatxNode) =&gt; boolean): SynatxNode[];
3824
- <span class="fstat-no" title="function not covered" > collectNodes(</span>input?: SynatxNodeConcept | ((node: SynatxNode) =&gt; boolean)) {
3825
- const pre =
3826
- <span class="cstat-no" title="statement not covered" > typeof input === 'undefined'</span>
3827
- ? <span class="fstat-no" title="function not covered" >(n</span>ode: SynatxNode) =&gt; <span class="cstat-no" title="statement not covered" >typeof node.concept === 'string'</span>
3828
- : typeof input === 'string'
3829
- ? <span class="fstat-no" title="function not covered" >(n</span>ode: SynatxNode) =&gt; <span class="cstat-no" title="statement not covered" >node.concept === input</span>
3830
- : input;
3831
- const nodes: SynatxNode[] = <span class="cstat-no" title="statement not covered" >[];</span>
3832
- const self = <span class="cstat-no" title="statement not covered" >this as unknown as SynatxNode;</span>
3833
- &nbsp;
3834
- <span class="cstat-no" title="statement not covered" > if (pre(self)) {</span>
3835
- <span class="cstat-no" title="statement not covered" > nodes.push(self);</span>
3836
- }
3837
- &nbsp;
3838
- <span class="cstat-no" title="statement not covered" > this.traverseChildren(<span class="fstat-no" title="function not covered" >(c</span>urrent) =&gt; {</span>
3839
- <span class="cstat-no" title="statement not covered" > if (pre(current)) {</span>
3840
- <span class="cstat-no" title="statement not covered" > nodes.push(current);</span>
3841
- }
3842
- });
3843
- &nbsp;
3844
- <span class="cstat-no" title="statement not covered" > return nodes;</span>
3845
- }
3846
- }
3847
- &nbsp;
3848
- export default BaseNode;
3849
- &nbsp;</pre></td></tr></table></pre>
3850
-
3851
- <div class='push'></div><!-- for sticky footer -->
3852
- </div><!-- /wrapper -->
3853
- <div class='footer quiet pad2 space-top1 center small'>
3854
- Code coverage generated by
3855
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
3856
- at 2023-10-19T09:18:56.902Z
3857
- </div>
3858
- <script src="../../prettify.js"></script>
3859
- <script>
3860
- window.onload = function () {
3861
- prettyPrint();
3862
- };
3863
- </script>
3864
- <script src="../../sorter.js"></script>
3865
- <script src="../../block-navigation.js"></script>
3866
- </body>
3867
- </html>
3868
-