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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (445) hide show
  1. package/out/breakpoint/generator/AfterStartNode.js +1 -1
  2. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  3. package/out/breakpoint/generator/BeforeEndNode.js +1 -1
  4. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  5. package/out/breakpoint/generator/BreakpointNode.d.ts +3 -0
  6. package/out/breakpoint/generator/BreakpointNode.js +12 -3
  7. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  8. package/out/breakpoint/generator/CallbackNode.js +15 -0
  9. package/out/breakpoint/generator/CallbackNode.js.map +1 -1
  10. package/out/breakpoint/shared/constants.js +1 -0
  11. package/out/breakpoint/shared/constants.js.map +1 -1
  12. package/out/breakpoint/shared/utils.js +12 -6
  13. package/out/breakpoint/shared/utils.js.map +1 -1
  14. package/out/common/BaseNode.js +1 -1
  15. package/out/common/BaseNode.js.map +1 -1
  16. package/out/common/utils.d.ts +2 -0
  17. package/out/common/utils.js +18 -0
  18. package/out/common/utils.js.map +1 -0
  19. package/out/concepts/AbstractInterface__.d.ts +22 -0
  20. package/out/concepts/AbstractInterface__.js +56 -0
  21. package/out/concepts/AbstractInterface__.js.map +1 -0
  22. package/out/concepts/AuthInterface__.d.ts +5 -3
  23. package/out/concepts/AuthInterface__.js +11 -22
  24. package/out/concepts/AuthInterface__.js.map +1 -1
  25. package/out/concepts/AuthLogicForCallInterface__.d.ts +6 -4
  26. package/out/concepts/AuthLogicForCallInterface__.js +102 -118
  27. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  28. package/out/concepts/AuthLogic__.d.ts +9 -7
  29. package/out/concepts/AuthLogic__.js +11 -22
  30. package/out/concepts/AuthLogic__.js.map +1 -1
  31. package/out/concepts/BackendVariable__.d.ts +30 -23
  32. package/out/concepts/BackendVariable__.js +179 -130
  33. package/out/concepts/BackendVariable__.js.map +1 -1
  34. package/out/concepts/Backend__.d.ts +9 -10
  35. package/out/concepts/Backend__.js +42 -43
  36. package/out/concepts/Backend__.js.map +1 -1
  37. package/out/concepts/Block__.d.ts +84 -0
  38. package/out/concepts/Block__.js +215 -0
  39. package/out/concepts/Block__.js.map +1 -0
  40. package/out/concepts/BusinessComponent__.d.ts +641 -0
  41. package/out/concepts/BusinessComponent__.js +1901 -0
  42. package/out/concepts/BusinessComponent__.js.map +1 -0
  43. package/out/concepts/BusinessLogic__.d.ts +38 -0
  44. package/out/concepts/BusinessLogic__.js +358 -0
  45. package/out/concepts/BusinessLogic__.js.map +1 -0
  46. package/out/concepts/CallAuthInterface__.d.ts +10 -6
  47. package/out/concepts/CallAuthInterface__.js +84 -60
  48. package/out/concepts/CallAuthInterface__.js.map +1 -1
  49. package/out/concepts/CallConnector__.d.ts +7 -5
  50. package/out/concepts/CallConnector__.js +41 -50
  51. package/out/concepts/CallConnector__.js.map +1 -1
  52. package/out/concepts/CallEvent__.d.ts +97 -0
  53. package/out/concepts/CallEvent__.js +263 -0
  54. package/out/concepts/CallEvent__.js.map +1 -0
  55. package/out/concepts/Connection__.d.ts +10 -11
  56. package/out/concepts/Connection__.js +38 -50
  57. package/out/concepts/Connection__.js.map +1 -1
  58. package/out/concepts/ConnectorTrigger__.d.ts +9 -7
  59. package/out/concepts/ConnectorTrigger__.js +11 -32
  60. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  61. package/out/concepts/Connector__.d.ts +382 -23
  62. package/out/concepts/Connector__.js +581 -121
  63. package/out/concepts/Connector__.js.map +1 -1
  64. package/out/concepts/CountersignPolicy__.d.ts +28 -0
  65. package/out/concepts/CountersignPolicy__.js +62 -0
  66. package/out/concepts/CountersignPolicy__.js.map +1 -0
  67. package/out/concepts/DefaultValue__.d.ts +104 -0
  68. package/out/concepts/DefaultValue__.js +242 -0
  69. package/out/concepts/DefaultValue__.js.map +1 -0
  70. package/out/concepts/FrontendType__.d.ts +308 -0
  71. package/out/concepts/FrontendType__.js +605 -0
  72. package/out/concepts/FrontendType__.js.map +1 -0
  73. package/out/concepts/FrontendVariable__.d.ts +15 -1
  74. package/out/concepts/FrontendVariable__.js +23 -11
  75. package/out/concepts/FrontendVariable__.js.map +1 -1
  76. package/out/concepts/I18nInfo__.d.ts +46 -0
  77. package/out/concepts/I18nInfo__.js +90 -0
  78. package/out/concepts/I18nInfo__.js.map +1 -0
  79. package/out/concepts/ImportedInterface__.d.ts +20 -0
  80. package/out/concepts/ImportedInterface__.js +48 -0
  81. package/out/concepts/ImportedInterface__.js.map +1 -0
  82. package/out/concepts/MsgTriggerEvent__.d.ts +10 -8
  83. package/out/concepts/MsgTriggerEvent__.js +32 -30
  84. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  85. package/out/concepts/MsgTriggerLauncher__.d.ts +7 -5
  86. package/out/concepts/MsgTriggerLauncher__.js +32 -35
  87. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  88. package/out/concepts/MultiApprovalPolicy__.d.ts +26 -0
  89. package/out/concepts/MultiApprovalPolicy__.js +59 -0
  90. package/out/concepts/MultiApprovalPolicy__.js.map +1 -0
  91. package/out/concepts/OverriddenLogic__.d.ts +28 -29
  92. package/out/concepts/OverriddenLogic__.js +268 -273
  93. package/out/concepts/OverriddenLogic__.js.map +1 -1
  94. package/out/concepts/ParamWithGroup__.d.ts +39 -0
  95. package/out/concepts/ParamWithGroup__.js +85 -0
  96. package/out/concepts/ParamWithGroup__.js.map +1 -0
  97. package/out/concepts/SequentialPolicy__.d.ts +20 -0
  98. package/out/concepts/SequentialPolicy__.js +48 -0
  99. package/out/concepts/SequentialPolicy__.js.map +1 -0
  100. package/out/concepts/StaticString__.d.ts +49 -0
  101. package/out/concepts/StaticString__.js +91 -0
  102. package/out/concepts/StaticString__.js.map +1 -0
  103. package/out/concepts/TriggerEvent__.d.ts +11 -78
  104. package/out/concepts/TriggerEvent__.js +24 -118
  105. package/out/concepts/TriggerEvent__.js.map +1 -1
  106. package/out/concepts/TriggerLauncher__.d.ts +10 -11
  107. package/out/concepts/TriggerLauncher__.js +18 -43
  108. package/out/concepts/TriggerLauncher__.js.map +1 -1
  109. package/out/concepts/basics/constants.d.ts +1 -0
  110. package/out/concepts/basics/constants.js +6 -0
  111. package/out/concepts/basics/constants.js.map +1 -0
  112. package/out/concepts/basics/stdlib/nasl.http.d.ts +7 -5
  113. package/out/concepts/basics/stdlib/nasl.http.js +78 -73
  114. package/out/concepts/basics/stdlib/nasl.http.js.map +1 -1
  115. package/out/concepts/types__.d.ts +0 -124
  116. package/out/concepts/types__.js +0 -2
  117. package/out/concepts/utils/asserts.d.ts +6931 -0
  118. package/out/concepts/utils/asserts.js +9208 -0
  119. package/out/concepts/utils/asserts.js.map +1 -0
  120. package/out/concepts/utils/quick-info.d.ts +13 -0
  121. package/out/concepts/utils/quick-info.js +51 -0
  122. package/out/concepts/utils/quick-info.js.map +1 -0
  123. package/out/concepts/utils/types.d.ts +447 -0
  124. package/out/concepts/utils/types.js +3 -0
  125. package/out/concepts/utils/types.js.map +1 -0
  126. package/out/server/getConnector.js +27 -4
  127. package/out/server/getConnector.js.map +1 -1
  128. package/out/utils/i18nInfo.d.ts +5 -0
  129. package/out/utils/i18nInfo.js +36 -0
  130. package/out/utils/i18nInfo.js.map +1 -0
  131. package/out/utils/time-slicing/constant.d.ts +35 -0
  132. package/out/utils/time-slicing/constant.js +40 -0
  133. package/out/utils/time-slicing/constant.js.map +1 -0
  134. package/out/utils/time-slicing/controller.d.ts +53 -0
  135. package/out/utils/time-slicing/controller.js +294 -0
  136. package/out/utils/time-slicing/controller.js.map +1 -0
  137. package/out/utils/time-slicing/index.d.ts +5 -0
  138. package/out/utils/time-slicing/index.js +26 -0
  139. package/out/utils/time-slicing/index.js.map +1 -0
  140. package/out/utils/time-slicing/page-state.d.ts +2 -0
  141. package/out/utils/time-slicing/page-state.js +14 -0
  142. package/out/utils/time-slicing/page-state.js.map +1 -0
  143. package/out/utils/time-slicing/performance.d.ts +11 -0
  144. package/out/utils/time-slicing/performance.js +50 -0
  145. package/out/utils/time-slicing/performance.js.map +1 -0
  146. package/out/utils/time-slicing/runner.d.ts +12 -0
  147. package/out/utils/time-slicing/runner.js +52 -0
  148. package/out/utils/time-slicing/runner.js.map +1 -0
  149. package/out/utils/time-slicing/tool.d.ts +24 -0
  150. package/out/utils/time-slicing/tool.js +47 -0
  151. package/out/utils/time-slicing/tool.js.map +1 -0
  152. package/out/utils/time-slicing/utils.d.ts +62 -0
  153. package/out/utils/time-slicing/utils.js +47 -0
  154. package/out/utils/time-slicing/utils.js.map +1 -0
  155. package/out/utils/time-slicing/wrapper.d.ts +18 -0
  156. package/out/utils/time-slicing/wrapper.js +55 -0
  157. package/out/utils/time-slicing/wrapper.js.map +1 -0
  158. package/package.json +3 -3
  159. package/src/common/BaseNode.ts +1 -1
  160. package/ts-worker/package.json +1 -1
  161. package/coverage/base.css +0 -224
  162. package/coverage/block-navigation.js +0 -87
  163. package/coverage/favicon.png +0 -0
  164. package/coverage/index.html +0 -461
  165. package/coverage/prettify.css +0 -1
  166. package/coverage/prettify.js +0 -2
  167. package/coverage/sort-arrow-sprite.png +0 -0
  168. package/coverage/sorter.js +0 -196
  169. package/coverage/src/automate/engine/index.html +0 -116
  170. package/coverage/src/automate/engine/utils.js.html +0 -1414
  171. package/coverage/src/bak/index.html +0 -116
  172. package/coverage/src/bak/translator.js.html +0 -745
  173. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +0 -175
  174. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +0 -169
  175. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +0 -1246
  176. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +0 -145
  177. package/coverage/src/breakpoint/generator/index.html +0 -176
  178. package/coverage/src/breakpoint/generator/index.ts.html +0 -508
  179. package/coverage/src/breakpoint/index.html +0 -116
  180. package/coverage/src/breakpoint/index.ts.html +0 -94
  181. package/coverage/src/breakpoint/shared/constants.ts.html +0 -436
  182. package/coverage/src/breakpoint/shared/index.html +0 -176
  183. package/coverage/src/breakpoint/shared/index.ts.html +0 -94
  184. package/coverage/src/breakpoint/shared/operations.ts.html +0 -160
  185. package/coverage/src/breakpoint/shared/socket.ts.html +0 -1297
  186. package/coverage/src/breakpoint/shared/utils.ts.html +0 -1087
  187. package/coverage/src/breakpoint/store/core.ts.html +0 -1600
  188. package/coverage/src/breakpoint/store/dock.ts.html +0 -733
  189. package/coverage/src/breakpoint/store/index.html +0 -146
  190. package/coverage/src/breakpoint/store/index.ts.html +0 -91
  191. package/coverage/src/common/BaseNode.ts.html +0 -3904
  192. package/coverage/src/common/Command.ts.html +0 -310
  193. package/coverage/src/common/EventEmitter.ts.html +0 -370
  194. package/coverage/src/common/Messager.ts.html +0 -820
  195. package/coverage/src/common/asyncFuncMap.ts.html +0 -127
  196. package/coverage/src/common/index.html +0 -191
  197. package/coverage/src/common/index.ts.html +0 -94
  198. package/coverage/src/concepts/Abort__.ts.html +0 -331
  199. package/coverage/src/concepts/Anchor__.ts.html +0 -661
  200. package/coverage/src/concepts/AnonymousFunction__.ts.html +0 -2071
  201. package/coverage/src/concepts/App__.ts.html +0 -14095
  202. package/coverage/src/concepts/Argument__.ts.html +0 -979
  203. package/coverage/src/concepts/Assignee__.ts.html +0 -2263
  204. package/coverage/src/concepts/AssignmentLine__.ts.html +0 -412
  205. package/coverage/src/concepts/Assignment__.ts.html +0 -1162
  206. package/coverage/src/concepts/Attribute__.ts.html +0 -748
  207. package/coverage/src/concepts/AuthInterface__.ts.html +0 -370
  208. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +0 -1999
  209. package/coverage/src/concepts/AuthLogic__.ts.html +0 -793
  210. package/coverage/src/concepts/BackendVariable__.ts.html +0 -1498
  211. package/coverage/src/concepts/Backend__.ts.html +0 -1180
  212. package/coverage/src/concepts/BatchAssignment__.ts.html +0 -3346
  213. package/coverage/src/concepts/BinaryExpression__.ts.html +0 -1543
  214. package/coverage/src/concepts/BindAttribute__.ts.html +0 -3928
  215. package/coverage/src/concepts/BindDirective__.ts.html +0 -1984
  216. package/coverage/src/concepts/BindEvent__.ts.html +0 -3463
  217. package/coverage/src/concepts/BindStyle__.ts.html +0 -1627
  218. package/coverage/src/concepts/BooleanLiteral__.ts.html +0 -421
  219. package/coverage/src/concepts/CallAuthInterface__.ts.html +0 -1630
  220. package/coverage/src/concepts/CallConnector__.ts.html +0 -925
  221. package/coverage/src/concepts/CallFunction__.ts.html +0 -2140
  222. package/coverage/src/concepts/CallInterface__.ts.html +0 -2764
  223. package/coverage/src/concepts/CallLogic__.ts.html +0 -4738
  224. package/coverage/src/concepts/CallQueryComponent__.ts.html +0 -5335
  225. package/coverage/src/concepts/Comment__.ts.html +0 -397
  226. package/coverage/src/concepts/CompletionProperty__.ts.html +0 -940
  227. package/coverage/src/concepts/ConfigGroup__.ts.html +0 -1120
  228. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +0 -427
  229. package/coverage/src/concepts/ConfigProperty__.ts.html +0 -1363
  230. package/coverage/src/concepts/Configuration__.ts.html +0 -1042
  231. package/coverage/src/concepts/Connection__.ts.html +0 -1375
  232. package/coverage/src/concepts/ConnectorTrigger__.ts.html +0 -598
  233. package/coverage/src/concepts/Connector__.ts.html +0 -4318
  234. package/coverage/src/concepts/Constant__.ts.html +0 -928
  235. package/coverage/src/concepts/DataSource__.ts.html +0 -1786
  236. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +0 -334
  237. package/coverage/src/concepts/Destination__.ts.html +0 -2743
  238. package/coverage/src/concepts/End__.ts.html +0 -436
  239. package/coverage/src/concepts/EntityIndex__.ts.html +0 -790
  240. package/coverage/src/concepts/EntityProperty__.ts.html +0 -2716
  241. package/coverage/src/concepts/Entity__.ts.html +0 -2977
  242. package/coverage/src/concepts/EnumItem__.ts.html +0 -553
  243. package/coverage/src/concepts/Enum__.ts.html +0 -1246
  244. package/coverage/src/concepts/Event__.ts.html +0 -1099
  245. package/coverage/src/concepts/ExternalDestination__.ts.html +0 -1048
  246. package/coverage/src/concepts/ForEachStatement__.ts.html +0 -1978
  247. package/coverage/src/concepts/FrontendLibrary__.ts.html +0 -1738
  248. package/coverage/src/concepts/FrontendVariable__.ts.html +0 -292
  249. package/coverage/src/concepts/Frontend__.ts.html +0 -4024
  250. package/coverage/src/concepts/Function__.ts.html +0 -3664
  251. package/coverage/src/concepts/Identifier__.ts.html +0 -1060
  252. package/coverage/src/concepts/IfStatement__.ts.html +0 -1621
  253. package/coverage/src/concepts/Integration__.ts.html +0 -1255
  254. package/coverage/src/concepts/InterfaceParam__.ts.html +0 -1102
  255. package/coverage/src/concepts/Interface__.ts.html +0 -3433
  256. package/coverage/src/concepts/JSBlock__.ts.html +0 -601
  257. package/coverage/src/concepts/JavaLogic__.ts.html +0 -463
  258. package/coverage/src/concepts/LogicItem__.ts.html +0 -1174
  259. package/coverage/src/concepts/Logic__.ts.html +0 -7444
  260. package/coverage/src/concepts/MatchCase__.ts.html +0 -2968
  261. package/coverage/src/concepts/Match__.ts.html +0 -2476
  262. package/coverage/src/concepts/MemberExpression__.ts.html +0 -1732
  263. package/coverage/src/concepts/MetadataType__.ts.html +0 -1996
  264. package/coverage/src/concepts/MicroApp__.ts.html +0 -439
  265. package/coverage/src/concepts/Module__.ts.html +0 -9874
  266. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +0 -1060
  267. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +0 -1033
  268. package/coverage/src/concepts/Namespace__.ts.html +0 -8077
  269. package/coverage/src/concepts/NewComposite__.ts.html +0 -4795
  270. package/coverage/src/concepts/NewList__.ts.html +0 -1648
  271. package/coverage/src/concepts/NewMap__.ts.html +0 -2356
  272. package/coverage/src/concepts/New__.ts.html +0 -289
  273. package/coverage/src/concepts/NullLiteral__.ts.html +0 -352
  274. package/coverage/src/concepts/NumericLiteral__.ts.html +0 -691
  275. package/coverage/src/concepts/OqlQueryComponent__.ts.html +0 -1231
  276. package/coverage/src/concepts/OverriddenLogic__.ts.html +0 -6892
  277. package/coverage/src/concepts/Param__.ts.html +0 -1735
  278. package/coverage/src/concepts/Point__.ts.html +0 -334
  279. package/coverage/src/concepts/ProcessComponent__.ts.html +0 -1693
  280. package/coverage/src/concepts/ProcessElement__.ts.html +0 -5983
  281. package/coverage/src/concepts/ProcessOutcome__.ts.html +0 -355
  282. package/coverage/src/concepts/ProcessOutcomes__.ts.html +0 -346
  283. package/coverage/src/concepts/Process__.ts.html +0 -4831
  284. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +0 -583
  285. package/coverage/src/concepts/QueryFieldExpression__.ts.html +0 -586
  286. package/coverage/src/concepts/QueryFromExpression__.ts.html +0 -925
  287. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +0 -574
  288. package/coverage/src/concepts/QueryJoinExpression__.ts.html +0 -1582
  289. package/coverage/src/concepts/QueryLimitExpression__.ts.html +0 -652
  290. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +0 -694
  291. package/coverage/src/concepts/QuerySelectExpression__.ts.html +0 -1729
  292. package/coverage/src/concepts/Rect__.ts.html +0 -376
  293. package/coverage/src/concepts/Return__.ts.html +0 -1327
  294. package/coverage/src/concepts/Role__.ts.html +0 -604
  295. package/coverage/src/concepts/SelectMembers__.ts.html +0 -1261
  296. package/coverage/src/concepts/Slot__.ts.html +0 -643
  297. package/coverage/src/concepts/SqlQueryComponent__.ts.html +0 -997
  298. package/coverage/src/concepts/Start__.ts.html +0 -307
  299. package/coverage/src/concepts/StringInterpolation__.ts.html +0 -1150
  300. package/coverage/src/concepts/StringLiteral__.ts.html +0 -508
  301. package/coverage/src/concepts/StructureProperty__.ts.html +0 -1147
  302. package/coverage/src/concepts/Structure__.ts.html +0 -2119
  303. package/coverage/src/concepts/SwitchCase__.ts.html +0 -1189
  304. package/coverage/src/concepts/SwitchStatement__.ts.html +0 -892
  305. package/coverage/src/concepts/Theme__.ts.html +0 -361
  306. package/coverage/src/concepts/Transactional__.ts.html +0 -631
  307. package/coverage/src/concepts/TriggerEvent__.ts.html +0 -1027
  308. package/coverage/src/concepts/TriggerLauncher__.ts.html +0 -778
  309. package/coverage/src/concepts/TypeAnnotation__.ts.html +0 -3880
  310. package/coverage/src/concepts/TypeParam__.ts.html +0 -322
  311. package/coverage/src/concepts/UnaryExpression__.ts.html +0 -724
  312. package/coverage/src/concepts/Unparsed__.ts.html +0 -397
  313. package/coverage/src/concepts/UseComponent__.ts.html +0 -334
  314. package/coverage/src/concepts/ValidationRule__.ts.html +0 -1855
  315. package/coverage/src/concepts/Variable__.ts.html +0 -1534
  316. package/coverage/src/concepts/ViewBlock__.ts.html +0 -355
  317. package/coverage/src/concepts/ViewComponent__.ts.html +0 -4255
  318. package/coverage/src/concepts/ViewElement__.ts.html +0 -8956
  319. package/coverage/src/concepts/View__.ts.html +0 -8875
  320. package/coverage/src/concepts/WhileStatement__.ts.html +0 -1096
  321. package/coverage/src/concepts/basics/stdlib/index.html +0 -356
  322. package/coverage/src/concepts/basics/stdlib/index.ts.html +0 -208
  323. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +0 -565
  324. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +0 -517
  325. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +0 -226
  326. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +0 -172
  327. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +0 -214
  328. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +0 -145
  329. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +0 -589
  330. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +0 -214
  331. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +0 -229
  332. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +0 -268
  333. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +0 -1999
  334. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +0 -3259
  335. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +0 -6844
  336. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +0 -1768
  337. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +0 -163
  338. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +0 -664
  339. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +0 -121
  340. package/coverage/src/concepts/basics/types/index.html +0 -131
  341. package/coverage/src/concepts/basics/types/index.ts.html +0 -160
  342. package/coverage/src/concepts/index.html +0 -1976
  343. package/coverage/src/concepts/index.ts.html +0 -103
  344. package/coverage/src/concepts/index__.ts.html +0 -454
  345. package/coverage/src/config.ts.html +0 -325
  346. package/coverage/src/decorators/index.html +0 -131
  347. package/coverage/src/decorators/index.ts.html +0 -574
  348. package/coverage/src/decorators/promise.ts.html +0 -169
  349. package/coverage/src/eventBus.ts.html +0 -100
  350. package/coverage/src/generator/compileComponent.ts.html +0 -142
  351. package/coverage/src/generator/genBundleFiles.ts.html +0 -1822
  352. package/coverage/src/generator/genHash.ts.html +0 -124
  353. package/coverage/src/generator/genMetaData.ts.html +0 -1129
  354. package/coverage/src/generator/genReleaseBody.ts.html +0 -1282
  355. package/coverage/src/generator/icestark.ts.html +0 -220
  356. package/coverage/src/generator/index.html +0 -266
  357. package/coverage/src/generator/index.ts.html +0 -106
  358. package/coverage/src/generator/microApp.ts.html +0 -172
  359. package/coverage/src/generator/permission.ts.html +0 -1036
  360. package/coverage/src/generator/qiankun.ts.html +0 -232
  361. package/coverage/src/generator/styleReplacer.ts.html +0 -199
  362. package/coverage/src/index.html +0 -146
  363. package/coverage/src/index.ts.html +0 -121
  364. package/coverage/src/manager/diagnostic.ts.html +0 -442
  365. package/coverage/src/manager/index.html +0 -131
  366. package/coverage/src/manager/stepRecorder.ts.html +0 -457
  367. package/coverage/src/natural/genNaturalTS.ts.html +0 -355
  368. package/coverage/src/natural/index.html +0 -161
  369. package/coverage/src/natural/index.ts.html +0 -91
  370. package/coverage/src/natural/naslStdlibMap.ts.html +0 -157
  371. package/coverage/src/natural/transformTSCode.ts.html +0 -2707
  372. package/coverage/src/sentry/index.html +0 -116
  373. package/coverage/src/sentry/index.ts.html +0 -676
  374. package/coverage/src/server/createUiTs.ts.html +0 -919
  375. package/coverage/src/server/entity2LogicNamespace.ts.html +0 -1294
  376. package/coverage/src/server/event.js.html +0 -526
  377. package/coverage/src/server/extendBaseNode.ts.html +0 -1765
  378. package/coverage/src/server/formatTsUtils.ts.html +0 -2689
  379. package/coverage/src/server/getConnector.ts.html +0 -316
  380. package/coverage/src/server/getExtensionModules.ts.html +0 -178
  381. package/coverage/src/server/getFunctions.ts.html +0 -133
  382. package/coverage/src/server/getInterfaces.ts.html +0 -229
  383. package/coverage/src/server/getLogging.ts.html +0 -100
  384. package/coverage/src/server/getLogics.ts.html +0 -1363
  385. package/coverage/src/server/getMemberIdentifier.ts.html +0 -1609
  386. package/coverage/src/server/getProcessComponents.ts.html +0 -112
  387. package/coverage/src/server/getProcesses.ts.html +0 -2023
  388. package/coverage/src/server/getValidates.ts.html +0 -115
  389. package/coverage/src/server/index.html +0 -401
  390. package/coverage/src/server/index.ts.html +0 -229
  391. package/coverage/src/server/naslServer.ts.html +0 -14812
  392. package/coverage/src/server/naslStdlibMap.ts.html +0 -241
  393. package/coverage/src/server/process2LogicNamespace.ts.html +0 -454
  394. package/coverage/src/server/translator.ts.html +0 -2566
  395. package/coverage/src/service/creator/add.configs.js.html +0 -397
  396. package/coverage/src/service/creator/errHandles.js.html +0 -304
  397. package/coverage/src/service/creator/index.html +0 -146
  398. package/coverage/src/service/creator/index.js.html +0 -352
  399. package/coverage/src/service/datasource/api.js.html +0 -118
  400. package/coverage/src/service/datasource/index.html +0 -131
  401. package/coverage/src/service/datasource/index.js.html +0 -103
  402. package/coverage/src/service/logic/api.js.html +0 -109
  403. package/coverage/src/service/logic/index.html +0 -131
  404. package/coverage/src/service/logic/index.js.html +0 -103
  405. package/coverage/src/service/storage/api.js.html +0 -202
  406. package/coverage/src/service/storage/index.html +0 -206
  407. package/coverage/src/service/storage/index.ts.html +0 -103
  408. package/coverage/src/service/storage/init.ts.html +0 -3661
  409. package/coverage/src/service/storage/jsoner.ts.html +0 -502
  410. package/coverage/src/service/storage/map.ts.html +0 -256
  411. package/coverage/src/service/storage/service.ts.html +0 -331
  412. package/coverage/src/service/storage/storagePoint.ts.html +0 -304
  413. package/coverage/src/templator/genCallComponentLogic.ts.html +0 -163
  414. package/coverage/src/templator/genCreateBlock.ts.html +0 -1084
  415. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +0 -1627
  416. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +0 -2242
  417. package/coverage/src/templator/genEditTableBlock.ts.html +0 -1024
  418. package/coverage/src/templator/genEnumSelectBlock.ts.html +0 -178
  419. package/coverage/src/templator/genGetBlock.ts.html +0 -451
  420. package/coverage/src/templator/genGridViewBlock.ts.html +0 -1114
  421. package/coverage/src/templator/genListViewBlock.ts.html +0 -475
  422. package/coverage/src/templator/genQueryComponent.ts.html +0 -1207
  423. package/coverage/src/templator/genSelectBlock.ts.html +0 -1243
  424. package/coverage/src/templator/genTableBlock.ts.html +0 -973
  425. package/coverage/src/templator/genUpdateBlock.ts.html +0 -1204
  426. package/coverage/src/templator/index.html +0 -326
  427. package/coverage/src/templator/index.ts.html +0 -154
  428. package/coverage/src/templator/utils.ts.html +0 -1927
  429. package/coverage/src/translator/constant.ts.html +0 -106
  430. package/coverage/src/translator/index.html +0 -146
  431. package/coverage/src/translator/index.ts.html +0 -94
  432. package/coverage/src/translator/utils.ts.html +0 -493
  433. package/coverage/src/utils/cookie.ts.html +0 -265
  434. package/coverage/src/utils/env.ts.html +0 -91
  435. package/coverage/src/utils/index.html +0 -236
  436. package/coverage/src/utils/index.ts.html +0 -748
  437. package/coverage/src/utils/logger.ts.html +0 -145
  438. package/coverage/src/utils/sortTsString.ts.html +0 -187
  439. package/coverage/src/utils/string.ts.html +0 -502
  440. package/coverage/src/utils/time-slicing.ts.html +0 -418
  441. package/coverage/src/utils/traverse.ts.html +0 -568
  442. package/coverage/src/utils/window.ts.html +0 -112
  443. package/out/utils/time-slicing.d.ts +0 -41
  444. package/out/utils/time-slicing.js +0 -82
  445. package/out/utils/time-slicing.js.map +0 -1
@@ -1,3904 +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.86% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>195/515</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">29.94% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>118/394</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.96% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>183/482</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>
1328
- <a name='L1263'></a><a href='#L1263'>1263</a>
1329
- <a name='L1264'></a><a href='#L1264'>1264</a>
1330
- <a name='L1265'></a><a href='#L1265'>1265</a>
1331
- <a name='L1266'></a><a href='#L1266'>1266</a>
1332
- <a name='L1267'></a><a href='#L1267'>1267</a>
1333
- <a name='L1268'></a><a href='#L1268'>1268</a>
1334
- <a name='L1269'></a><a href='#L1269'>1269</a>
1335
- <a name='L1270'></a><a href='#L1270'>1270</a>
1336
- <a name='L1271'></a><a href='#L1271'>1271</a>
1337
- <a name='L1272'></a><a href='#L1272'>1272</a>
1338
- <a name='L1273'></a><a href='#L1273'>1273</a>
1339
- <a name='L1274'></a><a href='#L1274'>1274</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
1340
- <span class="cline-any cline-yes">1x</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-yes">1x</span>
1344
- <span class="cline-any cline-neutral">&nbsp;</span>
1345
- <span class="cline-any cline-yes">1x</span>
1346
- <span class="cline-any cline-yes">1x</span>
1347
- <span class="cline-any cline-yes">1x</span>
1348
- <span class="cline-any cline-neutral">&nbsp;</span>
1349
- <span class="cline-any cline-neutral">&nbsp;</span>
1350
- <span class="cline-any cline-yes">1x</span>
1351
- <span class="cline-any cline-yes">1x</span>
1352
- <span class="cline-any cline-neutral">&nbsp;</span>
1353
- <span class="cline-any cline-neutral">&nbsp;</span>
1354
- <span class="cline-any cline-neutral">&nbsp;</span>
1355
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1359
- <span class="cline-any cline-no">&nbsp;</span>
1360
- <span class="cline-any cline-no">&nbsp;</span>
1361
- <span class="cline-any cline-no">&nbsp;</span>
1362
- <span class="cline-any cline-no">&nbsp;</span>
1363
- <span class="cline-any cline-no">&nbsp;</span>
1364
- <span class="cline-any cline-no">&nbsp;</span>
1365
- <span class="cline-any cline-no">&nbsp;</span>
1366
- <span class="cline-any cline-no">&nbsp;</span>
1367
- <span class="cline-any cline-no">&nbsp;</span>
1368
- <span class="cline-any cline-no">&nbsp;</span>
1369
- <span class="cline-any cline-no">&nbsp;</span>
1370
- <span class="cline-any cline-no">&nbsp;</span>
1371
- <span class="cline-any cline-no">&nbsp;</span>
1372
- <span class="cline-any cline-neutral">&nbsp;</span>
1373
- <span class="cline-any cline-neutral">&nbsp;</span>
1374
- <span class="cline-any cline-no">&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-no">&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-neutral">&nbsp;</span>
1381
- <span class="cline-any cline-neutral">&nbsp;</span>
1382
- <span class="cline-any cline-no">&nbsp;</span>
1383
- <span class="cline-any cline-neutral">&nbsp;</span>
1384
- <span class="cline-any cline-no">&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-neutral">&nbsp;</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-neutral">&nbsp;</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-yes">1x</span>
1397
- <span class="cline-any cline-yes">1x</span>
1398
- <span class="cline-any cline-neutral">&nbsp;</span>
1399
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1403
- <span class="cline-any cline-neutral">&nbsp;</span>
1404
- <span class="cline-any cline-yes">6137x</span>
1405
- <span class="cline-any cline-neutral">&nbsp;</span>
1406
- <span class="cline-any cline-neutral">&nbsp;</span>
1407
- <span class="cline-any cline-neutral">&nbsp;</span>
1408
- <span class="cline-any cline-yes">1x</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-yes">1x</span>
1415
- <span class="cline-any cline-yes">37079x</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-no">&nbsp;</span>
1419
- <span class="cline-any cline-no">&nbsp;</span>
1420
- <span class="cline-any cline-no">&nbsp;</span>
1421
- <span class="cline-any cline-no">&nbsp;</span>
1422
- <span class="cline-any cline-neutral">&nbsp;</span>
1423
- <span class="cline-any cline-no">&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-neutral">&nbsp;</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-neutral">&nbsp;</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-yes">6137x</span>
1438
- <span class="cline-any cline-neutral">&nbsp;</span>
1439
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1443
- <span class="cline-any cline-yes">1x</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-yes">1x</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-neutral">&nbsp;</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-yes">1x</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">1x</span>
1459
- <span class="cline-any cline-neutral">&nbsp;</span>
1460
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1468
- <span class="cline-any cline-yes">1x</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">6137x</span>
1475
- <span class="cline-any cline-neutral">&nbsp;</span>
1476
- <span class="cline-any cline-yes">6137x</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-neutral">&nbsp;</span>
1482
- <span class="cline-any cline-neutral">&nbsp;</span>
1483
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1489
- <span class="cline-any cline-neutral">&nbsp;</span>
1490
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1496
- <span class="cline-any cline-neutral">&nbsp;</span>
1497
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1503
- <span class="cline-any cline-neutral">&nbsp;</span>
1504
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1510
- <span class="cline-any cline-neutral">&nbsp;</span>
1511
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1517
- <span class="cline-any cline-neutral">&nbsp;</span>
1518
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1524
- <span class="cline-any cline-neutral">&nbsp;</span>
1525
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1531
- <span class="cline-any cline-neutral">&nbsp;</span>
1532
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
1538
- <span class="cline-any cline-neutral">&nbsp;</span>
1539
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</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-yes">1x</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-neutral">&nbsp;</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-yes">1x</span>
1560
- <span class="cline-any cline-neutral">&nbsp;</span>
1561
- <span class="cline-any cline-neutral">&nbsp;</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-yes">1x</span>
1567
- <span class="cline-any cline-neutral">&nbsp;</span>
1568
- <span class="cline-any cline-neutral">&nbsp;</span>
1569
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</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-yes">6137x</span>
1578
- <span class="cline-any cline-neutral">&nbsp;</span>
1579
- <span class="cline-any cline-neutral">&nbsp;</span>
1580
- <span class="cline-any cline-neutral">&nbsp;</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-yes">1x</span>
1584
- <span class="cline-any cline-neutral">&nbsp;</span>
1585
- <span class="cline-any cline-neutral">&nbsp;</span>
1586
- <span class="cline-any cline-neutral">&nbsp;</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-yes">1x</span>
1590
- <span class="cline-any cline-neutral">&nbsp;</span>
1591
- <span class="cline-any cline-neutral">&nbsp;</span>
1592
- <span class="cline-any cline-neutral">&nbsp;</span>
1593
- <span class="cline-any cline-neutral">&nbsp;</span>
1594
- <span class="cline-any cline-neutral">&nbsp;</span>
1595
- <span class="cline-any cline-yes">6137x</span>
1596
- <span class="cline-any cline-yes">6137x</span>
1597
- <span class="cline-any cline-neutral">&nbsp;</span>
1598
- <span class="cline-any cline-neutral">&nbsp;</span>
1599
- <span class="cline-any cline-neutral">&nbsp;</span>
1600
- <span class="cline-any cline-yes">6137x</span>
1601
- <span class="cline-any cline-yes">6137x</span>
1602
- <span class="cline-any cline-yes">6137x</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-neutral">&nbsp;</span>
1606
- <span class="cline-any cline-neutral">&nbsp;</span>
1607
- <span class="cline-any cline-yes">6137x</span>
1608
- <span class="cline-any cline-yes">6137x</span>
1609
- <span class="cline-any cline-yes">6137x</span>
1610
- <span class="cline-any cline-neutral">&nbsp;</span>
1611
- <span class="cline-any cline-neutral">&nbsp;</span>
1612
- <span class="cline-any cline-neutral">&nbsp;</span>
1613
- <span class="cline-any cline-neutral">&nbsp;</span>
1614
- <span class="cline-any cline-yes">11554x</span>
1615
- <span class="cline-any cline-yes">444022x</span>
1616
- <span class="cline-any cline-neutral">&nbsp;</span>
1617
- <span class="cline-any cline-neutral">&nbsp;</span>
1618
- <span class="cline-any cline-yes">11554x</span>
1619
- <span class="cline-any cline-yes">8629x</span>
1620
- <span class="cline-any cline-neutral">&nbsp;</span>
1621
- <span class="cline-any cline-neutral">&nbsp;</span>
1622
- <span class="cline-any cline-yes">11554x</span>
1623
- <span class="cline-any cline-yes">184395x</span>
1624
- <span class="cline-any cline-yes">11554x</span>
1625
- <span class="cline-any cline-neutral">&nbsp;</span>
1626
- <span class="cline-any cline-neutral">&nbsp;</span>
1627
- <span class="cline-any cline-yes">172841x</span>
1628
- <span class="cline-any cline-neutral">&nbsp;</span>
1629
- <span class="cline-any cline-yes">172841x</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-yes">172841x</span>
1634
- <span class="cline-any cline-yes">42x</span>
1635
- <span class="cline-any cline-neutral">&nbsp;</span>
1636
- <span class="cline-any cline-neutral">&nbsp;</span>
1637
- <span class="cline-any cline-yes">172841x</span>
1638
- <span class="cline-any cline-yes">172841x</span>
1639
- <span class="cline-any cline-yes">25956x</span>
1640
- <span class="cline-any cline-yes">25956x</span>
1641
- <span class="cline-any cline-yes">26126x</span>
1642
- <span class="cline-any cline-yes">26126x</span>
1643
- <span class="cline-any cline-yes">1146x</span>
1644
- <span class="cline-any cline-yes">1146x</span>
1645
- <span class="cline-any cline-yes">1146x</span>
1646
- <span class="cline-any cline-neutral">&nbsp;</span>
1647
- <span class="cline-any cline-neutral">&nbsp;</span>
1648
- <span class="cline-any cline-neutral">&nbsp;</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-yes">172841x</span>
1652
- <span class="cline-any cline-neutral">&nbsp;</span>
1653
- <span class="cline-any cline-yes">172841x</span>
1654
- <span class="cline-any cline-yes">52604x</span>
1655
- <span class="cline-any cline-neutral">&nbsp;</span>
1656
- <span class="cline-any cline-neutral">&nbsp;</span>
1657
- <span class="cline-any cline-neutral">&nbsp;</span>
1658
- <span class="cline-any cline-no">&nbsp;</span>
1659
- <span class="cline-any cline-neutral">&nbsp;</span>
1660
- <span class="cline-any cline-neutral">&nbsp;</span>
1661
- <span class="cline-any cline-neutral">&nbsp;</span>
1662
- <span class="cline-any cline-yes">11554x</span>
1663
- <span class="cline-any cline-neutral">&nbsp;</span>
1664
- <span class="cline-any cline-neutral">&nbsp;</span>
1665
- <span class="cline-any cline-yes">11554x</span>
1666
- <span class="cline-any cline-yes">7519x</span>
1667
- <span class="cline-any cline-neutral">&nbsp;</span>
1668
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1674
- <span class="cline-any cline-no">&nbsp;</span>
1675
- <span class="cline-any cline-no">&nbsp;</span>
1676
- <span class="cline-any cline-no">&nbsp;</span>
1677
- <span class="cline-any cline-no">&nbsp;</span>
1678
- <span class="cline-any cline-no">&nbsp;</span>
1679
- <span class="cline-any cline-no">&nbsp;</span>
1680
- <span class="cline-any cline-no">&nbsp;</span>
1681
- <span class="cline-any cline-no">&nbsp;</span>
1682
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1686
- <span class="cline-any cline-no">&nbsp;</span>
1687
- <span class="cline-any cline-neutral">&nbsp;</span>
1688
- <span class="cline-any cline-neutral">&nbsp;</span>
1689
- <span class="cline-any cline-no">&nbsp;</span>
1690
- <span class="cline-any cline-no">&nbsp;</span>
1691
- <span class="cline-any cline-no">&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-no">&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-no">&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-no">&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-no">&nbsp;</span>
1708
- <span class="cline-any cline-neutral">&nbsp;</span>
1709
- <span class="cline-any cline-neutral">&nbsp;</span>
1710
- <span class="cline-any cline-no">&nbsp;</span>
1711
- <span class="cline-any cline-neutral">&nbsp;</span>
1712
- <span class="cline-any cline-neutral">&nbsp;</span>
1713
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1721
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1725
- <span class="cline-any cline-neutral">&nbsp;</span>
1726
- <span class="cline-any cline-no">&nbsp;</span>
1727
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1734
- <span class="cline-any cline-neutral">&nbsp;</span>
1735
- <span class="cline-any cline-neutral">&nbsp;</span>
1736
- <span class="cline-any cline-neutral">&nbsp;</span>
1737
- <span class="cline-any cline-neutral">&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-no">&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-neutral">&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-no">&nbsp;</span>
1749
- <span class="cline-any cline-no">&nbsp;</span>
1750
- <span class="cline-any cline-neutral">&nbsp;</span>
1751
- <span class="cline-any cline-no">&nbsp;</span>
1752
- <span class="cline-any cline-neutral">&nbsp;</span>
1753
- <span class="cline-any cline-no">&nbsp;</span>
1754
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1764
- <span class="cline-any cline-no">&nbsp;</span>
1765
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1770
- <span class="cline-any cline-neutral">&nbsp;</span>
1771
- <span class="cline-any cline-neutral">&nbsp;</span>
1772
- <span class="cline-any cline-neutral">&nbsp;</span>
1773
- <span class="cline-any cline-no">&nbsp;</span>
1774
- <span class="cline-any cline-neutral">&nbsp;</span>
1775
- <span class="cline-any cline-neutral">&nbsp;</span>
1776
- <span class="cline-any cline-neutral">&nbsp;</span>
1777
- <span class="cline-any cline-neutral">&nbsp;</span>
1778
- <span class="cline-any cline-neutral">&nbsp;</span>
1779
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1787
- <span class="cline-any cline-no">&nbsp;</span>
1788
- <span class="cline-any cline-no">&nbsp;</span>
1789
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1793
- <span class="cline-any cline-no">&nbsp;</span>
1794
- <span class="cline-any cline-no">&nbsp;</span>
1795
- <span class="cline-any cline-no">&nbsp;</span>
1796
- <span class="cline-any cline-no">&nbsp;</span>
1797
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1805
- <span class="cline-any cline-no">&nbsp;</span>
1806
- <span class="cline-any cline-neutral">&nbsp;</span>
1807
- <span class="cline-any cline-neutral">&nbsp;</span>
1808
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1812
- <span class="cline-any cline-neutral">&nbsp;</span>
1813
- <span class="cline-any cline-neutral">&nbsp;</span>
1814
- <span class="cline-any cline-neutral">&nbsp;</span>
1815
- <span class="cline-any cline-neutral">&nbsp;</span>
1816
- <span class="cline-any cline-neutral">&nbsp;</span>
1817
- <span class="cline-any cline-neutral">&nbsp;</span>
1818
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1823
- <span class="cline-any cline-neutral">&nbsp;</span>
1824
- <span class="cline-any cline-no">&nbsp;</span>
1825
- <span class="cline-any cline-no">&nbsp;</span>
1826
- <span class="cline-any cline-no">&nbsp;</span>
1827
- <span class="cline-any cline-neutral">&nbsp;</span>
1828
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1836
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1841
- <span class="cline-any cline-no">&nbsp;</span>
1842
- <span class="cline-any cline-neutral">&nbsp;</span>
1843
- <span class="cline-any cline-neutral">&nbsp;</span>
1844
- <span class="cline-any cline-no">&nbsp;</span>
1845
- <span class="cline-any cline-no">&nbsp;</span>
1846
- <span class="cline-any cline-no">&nbsp;</span>
1847
- <span class="cline-any cline-no">&nbsp;</span>
1848
- <span class="cline-any cline-no">&nbsp;</span>
1849
- <span class="cline-any cline-no">&nbsp;</span>
1850
- <span class="cline-any cline-no">&nbsp;</span>
1851
- <span class="cline-any cline-neutral">&nbsp;</span>
1852
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1860
- <span class="cline-any cline-no">&nbsp;</span>
1861
- <span class="cline-any cline-neutral">&nbsp;</span>
1862
- <span class="cline-any cline-neutral">&nbsp;</span>
1863
- <span class="cline-any cline-neutral">&nbsp;</span>
1864
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1868
- <span class="cline-any cline-neutral">&nbsp;</span>
1869
- <span class="cline-any cline-neutral">&nbsp;</span>
1870
- <span class="cline-any cline-neutral">&nbsp;</span>
1871
- <span class="cline-any cline-neutral">&nbsp;</span>
1872
- <span class="cline-any cline-neutral">&nbsp;</span>
1873
- <span class="cline-any cline-neutral">&nbsp;</span>
1874
- <span class="cline-any cline-neutral">&nbsp;</span>
1875
- <span class="cline-any cline-neutral">&nbsp;</span>
1876
- <span class="cline-any cline-neutral">&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-no">&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-neutral">&nbsp;</span>
1884
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1891
- <span class="cline-any cline-no">&nbsp;</span>
1892
- <span class="cline-any cline-no">&nbsp;</span>
1893
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1897
- <span class="cline-any cline-no">&nbsp;</span>
1898
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1909
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1913
- <span class="cline-any cline-neutral">&nbsp;</span>
1914
- <span class="cline-any cline-neutral">&nbsp;</span>
1915
- <span class="cline-any cline-neutral">&nbsp;</span>
1916
- <span class="cline-any cline-no">&nbsp;</span>
1917
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1921
- <span class="cline-any cline-no">&nbsp;</span>
1922
- <span class="cline-any cline-no">&nbsp;</span>
1923
- <span class="cline-any cline-no">&nbsp;</span>
1924
- <span class="cline-any cline-no">&nbsp;</span>
1925
- <span class="cline-any cline-no">&nbsp;</span>
1926
- <span class="cline-any cline-no">&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-no">&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-no">&nbsp;</span>
1937
- <span class="cline-any cline-no">&nbsp;</span>
1938
- <span class="cline-any cline-neutral">&nbsp;</span>
1939
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1943
- <span class="cline-any cline-neutral">&nbsp;</span>
1944
- <span class="cline-any cline-neutral">&nbsp;</span>
1945
- <span class="cline-any cline-neutral">&nbsp;</span>
1946
- <span class="cline-any cline-neutral">&nbsp;</span>
1947
- <span class="cline-any cline-neutral">&nbsp;</span>
1948
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1954
- <span class="cline-any cline-neutral">&nbsp;</span>
1955
- <span class="cline-any cline-neutral">&nbsp;</span>
1956
- <span class="cline-any cline-neutral">&nbsp;</span>
1957
- <span class="cline-any cline-neutral">&nbsp;</span>
1958
- <span class="cline-any cline-neutral">&nbsp;</span>
1959
- <span class="cline-any cline-neutral">&nbsp;</span>
1960
- <span class="cline-any cline-yes">4035x</span>
1961
- <span class="cline-any cline-yes">4035x</span>
1962
- <span class="cline-any cline-no">&nbsp;</span>
1963
- <span class="cline-any cline-no">&nbsp;</span>
1964
- <span class="cline-any cline-neutral">&nbsp;</span>
1965
- <span class="cline-any cline-no">&nbsp;</span>
1966
- <span class="cline-any cline-no">&nbsp;</span>
1967
- <span class="cline-any cline-neutral">&nbsp;</span>
1968
- <span class="cline-any cline-no">&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">4035x</span>
1972
- <span class="cline-any cline-yes">4035x</span>
1973
- <span class="cline-any cline-yes">4035x</span>
1974
- <span class="cline-any cline-yes">3066x</span>
1975
- <span class="cline-any cline-neutral">&nbsp;</span>
1976
- <span class="cline-any cline-yes">4035x</span>
1977
- <span class="cline-any cline-yes">3066x</span>
1978
- <span class="cline-any cline-neutral">&nbsp;</span>
1979
- <span class="cline-any cline-yes">4035x</span>
1980
- <span class="cline-any cline-neutral">&nbsp;</span>
1981
- <span class="cline-any cline-neutral">&nbsp;</span>
1982
- <span class="cline-any cline-neutral">&nbsp;</span>
1983
- <span class="cline-any cline-neutral">&nbsp;</span>
1984
- <span class="cline-any cline-yes">4035x</span>
1985
- <span class="cline-any cline-neutral">&nbsp;</span>
1986
- <span class="cline-any cline-neutral">&nbsp;</span>
1987
- <span class="cline-any cline-neutral">&nbsp;</span>
1988
- <span class="cline-any cline-neutral">&nbsp;</span>
1989
- <span class="cline-any cline-yes">2x</span>
1990
- <span class="cline-any cline-neutral">&nbsp;</span>
1991
- <span class="cline-any cline-neutral">&nbsp;</span>
1992
- <span class="cline-any cline-neutral">&nbsp;</span>
1993
- <span class="cline-any cline-neutral">&nbsp;</span>
1994
- <span class="cline-any cline-neutral">&nbsp;</span>
1995
- <span class="cline-any cline-neutral">&nbsp;</span>
1996
- <span class="cline-any cline-yes">2x</span>
1997
- <span class="cline-any cline-yes">2x</span>
1998
- <span class="cline-any cline-yes">2x</span>
1999
- <span class="cline-any cline-yes">2x</span>
2000
- <span class="cline-any cline-no">&nbsp;</span>
2001
- <span class="cline-any cline-no">&nbsp;</span>
2002
- <span class="cline-any cline-yes">2x</span>
2003
- <span class="cline-any cline-no">&nbsp;</span>
2004
- <span class="cline-any cline-neutral">&nbsp;</span>
2005
- <span class="cline-any cline-yes">2x</span>
2006
- <span class="cline-any cline-yes">2x</span>
2007
- <span class="cline-any cline-yes">2x</span>
2008
- <span class="cline-any cline-yes">5x</span>
2009
- <span class="cline-any cline-yes">5x</span>
2010
- <span class="cline-any cline-yes">5x</span>
2011
- <span class="cline-any cline-yes">3x</span>
2012
- <span class="cline-any cline-yes">3x</span>
2013
- <span class="cline-any cline-yes">3x</span>
2014
- <span class="cline-any cline-yes">3x</span>
2015
- <span class="cline-any cline-yes">3x</span>
2016
- <span class="cline-any cline-neutral">&nbsp;</span>
2017
- <span class="cline-any cline-yes">3x</span>
2018
- <span class="cline-any cline-neutral">&nbsp;</span>
2019
- <span class="cline-any cline-neutral">&nbsp;</span>
2020
- <span class="cline-any cline-yes">3x</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-yes">3x</span>
2024
- <span class="cline-any cline-no">&nbsp;</span>
2025
- <span class="cline-any cline-no">&nbsp;</span>
2026
- <span class="cline-any cline-no">&nbsp;</span>
2027
- <span class="cline-any cline-neutral">&nbsp;</span>
2028
- <span class="cline-any cline-neutral">&nbsp;</span>
2029
- <span class="cline-any cline-no">&nbsp;</span>
2030
- <span class="cline-any cline-neutral">&nbsp;</span>
2031
- <span class="cline-any cline-no">&nbsp;</span>
2032
- <span class="cline-any cline-neutral">&nbsp;</span>
2033
- <span class="cline-any cline-yes">3x</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-yes">3x</span>
2037
- <span class="cline-any cline-neutral">&nbsp;</span>
2038
- <span class="cline-any cline-yes">5x</span>
2039
- <span class="cline-any cline-yes">5x</span>
2040
- <span class="cline-any cline-neutral">&nbsp;</span>
2041
- <span class="cline-any cline-yes">2x</span>
2042
- <span class="cline-any cline-yes">2x</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-neutral">&nbsp;</span>
2049
- <span class="cline-any cline-neutral">&nbsp;</span>
2050
- <span class="cline-any cline-yes">2895x</span>
2051
- <span class="cline-any cline-yes">2895x</span>
2052
- <span class="cline-any cline-yes">4043x</span>
2053
- <span class="cline-any cline-neutral">&nbsp;</span>
2054
- <span class="cline-any cline-yes">2895x</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-yes">83x</span>
2062
- <span class="cline-any cline-neutral">&nbsp;</span>
2063
- <span class="cline-any cline-neutral">&nbsp;</span>
2064
- <span class="cline-any cline-neutral">&nbsp;</span>
2065
- <span class="cline-any cline-neutral">&nbsp;</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-yes">717x</span>
2071
- <span class="cline-any cline-yes">717x</span>
2072
- <span class="cline-any cline-yes">2177x</span>
2073
- <span class="cline-any cline-neutral">&nbsp;</span>
2074
- <span class="cline-any cline-yes">717x</span>
2075
- <span class="cline-any cline-neutral">&nbsp;</span>
2076
- <span class="cline-any cline-neutral">&nbsp;</span>
2077
- <span class="cline-any cline-neutral">&nbsp;</span>
2078
- <span class="cline-any cline-neutral">&nbsp;</span>
2079
- <span class="cline-any cline-neutral">&nbsp;</span>
2080
- <span class="cline-any cline-neutral">&nbsp;</span>
2081
- <span class="cline-any cline-neutral">&nbsp;</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-yes">4849x</span>
2086
- <span class="cline-any cline-yes">4849x</span>
2087
- <span class="cline-any cline-yes">4849x</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-neutral">&nbsp;</span>
2091
- <span class="cline-any cline-neutral">&nbsp;</span>
2092
- <span class="cline-any cline-neutral">&nbsp;</span>
2093
- <span class="cline-any cline-neutral">&nbsp;</span>
2094
- <span class="cline-any cline-yes">1x</span>
2095
- <span class="cline-any cline-no">&nbsp;</span>
2096
- <span class="cline-any cline-neutral">&nbsp;</span>
2097
- <span class="cline-any cline-no">&nbsp;</span>
2098
- <span class="cline-any cline-no">&nbsp;</span>
2099
- <span class="cline-any cline-no">&nbsp;</span>
2100
- <span class="cline-any cline-neutral">&nbsp;</span>
2101
- <span class="cline-any cline-no">&nbsp;</span>
2102
- <span class="cline-any cline-neutral">&nbsp;</span>
2103
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
2108
- <span class="cline-any cline-neutral">&nbsp;</span>
2109
- <span class="cline-any cline-neutral">&nbsp;</span>
2110
- <span class="cline-any cline-neutral">&nbsp;</span>
2111
- <span class="cline-any cline-neutral">&nbsp;</span>
2112
- <span class="cline-any cline-yes">9x</span>
2113
- <span class="cline-any cline-yes">9x</span>
2114
- <span class="cline-any cline-neutral">&nbsp;</span>
2115
- <span class="cline-any cline-no">&nbsp;</span>
2116
- <span class="cline-any cline-no">&nbsp;</span>
2117
- <span class="cline-any cline-neutral">&nbsp;</span>
2118
- <span class="cline-any cline-no">&nbsp;</span>
2119
- <span class="cline-any cline-neutral">&nbsp;</span>
2120
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
2129
- <span class="cline-any cline-yes">4849x</span>
2130
- <span class="cline-any cline-yes">1672x</span>
2131
- <span class="cline-any cline-yes">1597x</span>
2132
- <span class="cline-any cline-yes">1597x</span>
2133
- <span class="cline-any cline-neutral">&nbsp;</span>
2134
- <span class="cline-any cline-yes">1672x</span>
2135
- <span class="cline-any cline-neutral">&nbsp;</span>
2136
- <span class="cline-any cline-yes">3177x</span>
2137
- <span class="cline-any cline-yes">3066x</span>
2138
- <span class="cline-any cline-yes">3066x</span>
2139
- <span class="cline-any cline-yes">3066x</span>
2140
- <span class="cline-any cline-yes">3066x</span>
2141
- <span class="cline-any cline-neutral">&nbsp;</span>
2142
- <span class="cline-any cline-yes">111x</span>
2143
- <span class="cline-any cline-neutral">&nbsp;</span>
2144
- <span class="cline-any cline-neutral">&nbsp;</span>
2145
- <span class="cline-any cline-neutral">&nbsp;</span>
2146
- <span class="cline-any cline-neutral">&nbsp;</span>
2147
- <span class="cline-any cline-neutral">&nbsp;</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-yes">11012x</span>
2151
- <span class="cline-any cline-no">&nbsp;</span>
2152
- <span class="cline-any cline-neutral">&nbsp;</span>
2153
- <span class="cline-any cline-yes">11012x</span>
2154
- <span class="cline-any cline-neutral">&nbsp;</span>
2155
- <span class="cline-any cline-neutral">&nbsp;</span>
2156
- <span class="cline-any cline-yes">11012x</span>
2157
- <span class="cline-any cline-yes">9717x</span>
2158
- <span class="cline-any cline-yes">9717x</span>
2159
- <span class="cline-any cline-yes">3554x</span>
2160
- <span class="cline-any cline-neutral">&nbsp;</span>
2161
- <span class="cline-any cline-neutral">&nbsp;</span>
2162
- <span class="cline-any cline-yes">1295x</span>
2163
- <span class="cline-any cline-neutral">&nbsp;</span>
2164
- <span class="cline-any cline-yes">11012x</span>
2165
- <span class="cline-any cline-yes">11012x</span>
2166
- <span class="cline-any cline-yes">9717x</span>
2167
- <span class="cline-any cline-neutral">&nbsp;</span>
2168
- <span class="cline-any cline-yes">1295x</span>
2169
- <span class="cline-any cline-yes">1295x</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-no">&nbsp;</span>
2175
- <span class="cline-any cline-neutral">&nbsp;</span>
2176
- <span class="cline-any cline-no">&nbsp;</span>
2177
- <span class="cline-any cline-neutral">&nbsp;</span>
2178
- <span class="cline-any cline-no">&nbsp;</span>
2179
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
2183
- <span class="cline-any cline-no">&nbsp;</span>
2184
- <span class="cline-any cline-neutral">&nbsp;</span>
2185
- <span class="cline-any cline-neutral">&nbsp;</span>
2186
- <span class="cline-any cline-neutral">&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-neutral">&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-neutral">&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-no">&nbsp;</span>
2203
- <span class="cline-any cline-neutral">&nbsp;</span>
2204
- <span class="cline-any cline-no">&nbsp;</span>
2205
- <span class="cline-any cline-no">&nbsp;</span>
2206
- <span class="cline-any cline-no">&nbsp;</span>
2207
- <span class="cline-any cline-neutral">&nbsp;</span>
2208
- <span class="cline-any cline-no">&nbsp;</span>
2209
- <span class="cline-any cline-no">&nbsp;</span>
2210
- <span class="cline-any cline-no">&nbsp;</span>
2211
- <span class="cline-any cline-no">&nbsp;</span>
2212
- <span class="cline-any cline-neutral">&nbsp;</span>
2213
- <span class="cline-any cline-neutral">&nbsp;</span>
2214
- <span class="cline-any cline-neutral">&nbsp;</span>
2215
- <span class="cline-any cline-no">&nbsp;</span>
2216
- <span class="cline-any cline-neutral">&nbsp;</span>
2217
- <span class="cline-any cline-neutral">&nbsp;</span>
2218
- <span class="cline-any cline-neutral">&nbsp;</span>
2219
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
2226
- <span class="cline-any cline-neutral">&nbsp;</span>
2227
- <span class="cline-any cline-neutral">&nbsp;</span>
2228
- <span class="cline-any cline-yes">3x</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-yes">3x</span>
2233
- <span class="cline-any cline-yes">3x</span>
2234
- <span class="cline-any cline-yes">3x</span>
2235
- <span class="cline-any cline-yes">45x</span>
2236
- <span class="cline-any cline-yes">45x</span>
2237
- <span class="cline-any cline-yes">45x</span>
2238
- <span class="cline-any cline-yes">36x</span>
2239
- <span class="cline-any cline-neutral">&nbsp;</span>
2240
- <span class="cline-any cline-yes">9x</span>
2241
- <span class="cline-any cline-yes">9x</span>
2242
- <span class="cline-any cline-neutral">&nbsp;</span>
2243
- <span class="cline-any cline-neutral">&nbsp;</span>
2244
- <span class="cline-any cline-neutral">&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-yes">3x</span>
2248
- <span class="cline-any cline-neutral">&nbsp;</span>
2249
- <span class="cline-any cline-yes">3x</span>
2250
- <span class="cline-any cline-neutral">&nbsp;</span>
2251
- <span class="cline-any cline-neutral">&nbsp;</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-no">&nbsp;</span>
2259
- <span class="cline-any cline-no">&nbsp;</span>
2260
- <span class="cline-any cline-neutral">&nbsp;</span>
2261
- <span class="cline-any cline-no">&nbsp;</span>
2262
- <span class="cline-any cline-no">&nbsp;</span>
2263
- <span class="cline-any cline-no">&nbsp;</span>
2264
- <span class="cline-any cline-no">&nbsp;</span>
2265
- <span class="cline-any cline-neutral">&nbsp;</span>
2266
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
2272
- <span class="cline-any cline-neutral">&nbsp;</span>
2273
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
2280
- <span class="cline-any cline-neutral">&nbsp;</span>
2281
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</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-yes">1x</span>
2294
- <span class="cline-any cline-neutral">&nbsp;</span>
2295
- <span class="cline-any cline-neutral">&nbsp;</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-yes">1x</span>
2302
- <span class="cline-any cline-neutral">&nbsp;</span>
2303
- <span class="cline-any cline-neutral">&nbsp;</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-yes">1x</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-yes">1x</span>
2318
- <span class="cline-any cline-neutral">&nbsp;</span>
2319
- <span class="cline-any cline-neutral">&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-yes">1x</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-neutral">&nbsp;</span>
2337
- <span class="cline-any cline-neutral">&nbsp;</span>
2338
- <span class="cline-any cline-neutral">&nbsp;</span>
2339
- <span class="cline-any cline-neutral">&nbsp;</span>
2340
- <span class="cline-any cline-neutral">&nbsp;</span>
2341
- <span class="cline-any cline-no">&nbsp;</span>
2342
- <span class="cline-any cline-neutral">&nbsp;</span>
2343
- <span class="cline-any cline-neutral">&nbsp;</span>
2344
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
2349
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
2353
- <span class="cline-any cline-neutral">&nbsp;</span>
2354
- <span class="cline-any cline-neutral">&nbsp;</span>
2355
- <span class="cline-any cline-neutral">&nbsp;</span>
2356
- <span class="cline-any cline-neutral">&nbsp;</span>
2357
- <span class="cline-any cline-neutral">&nbsp;</span>
2358
- <span class="cline-any cline-no">&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-neutral">&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-neutral">&nbsp;</span>
2366
- <span class="cline-any cline-no">&nbsp;</span>
2367
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
2371
- <span class="cline-any cline-no">&nbsp;</span>
2372
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
2377
- <span class="cline-any cline-no">&nbsp;</span>
2378
- <span class="cline-any cline-no">&nbsp;</span>
2379
- <span class="cline-any cline-no">&nbsp;</span>
2380
- <span class="cline-any cline-neutral">&nbsp;</span>
2381
- <span class="cline-any cline-no">&nbsp;</span>
2382
- <span class="cline-any cline-no">&nbsp;</span>
2383
- <span class="cline-any cline-no">&nbsp;</span>
2384
- <span class="cline-any cline-no">&nbsp;</span>
2385
- <span class="cline-any cline-no">&nbsp;</span>
2386
- <span class="cline-any cline-no">&nbsp;</span>
2387
- <span class="cline-any cline-no">&nbsp;</span>
2388
- <span class="cline-any cline-neutral">&nbsp;</span>
2389
- <span class="cline-any cline-no">&nbsp;</span>
2390
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
2395
- <span class="cline-any cline-neutral">&nbsp;</span>
2396
- <span class="cline-any cline-neutral">&nbsp;</span>
2397
- <span class="cline-any cline-no">&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-neutral">&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-neutral">&nbsp;</span>
2407
- <span class="cline-any cline-neutral">&nbsp;</span>
2408
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
2414
- <span class="cline-any cline-neutral">&nbsp;</span>
2415
- <span class="cline-any cline-neutral">&nbsp;</span>
2416
- <span class="cline-any cline-neutral">&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-neutral">&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-neutral">&nbsp;</span>
2424
- <span class="cline-any cline-neutral">&nbsp;</span>
2425
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
2429
- <span class="cline-any cline-no">&nbsp;</span>
2430
- <span class="cline-any cline-no">&nbsp;</span>
2431
- <span class="cline-any cline-no">&nbsp;</span>
2432
- <span class="cline-any cline-neutral">&nbsp;</span>
2433
- <span class="cline-any cline-no">&nbsp;</span>
2434
- <span class="cline-any cline-no">&nbsp;</span>
2435
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
2439
- <span class="cline-any cline-no">&nbsp;</span>
2440
- <span class="cline-any cline-no">&nbsp;</span>
2441
- <span class="cline-any cline-no">&nbsp;</span>
2442
- <span class="cline-any cline-no">&nbsp;</span>
2443
- <span class="cline-any cline-no">&nbsp;</span>
2444
- <span class="cline-any cline-no">&nbsp;</span>
2445
- <span class="cline-any cline-neutral">&nbsp;</span>
2446
- <span class="cline-any cline-no">&nbsp;</span>
2447
- <span class="cline-any cline-no">&nbsp;</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-neutral">&nbsp;</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-yes">5613x</span>
2457
- <span class="cline-any cline-neutral">&nbsp;</span>
2458
- <span class="cline-any cline-neutral">&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-yes">10294x</span>
2462
- <span class="cline-any cline-neutral">&nbsp;</span>
2463
- <span class="cline-any cline-yes">10294x</span>
2464
- <span class="cline-any cline-yes">10294x</span>
2465
- <span class="cline-any cline-neutral">&nbsp;</span>
2466
- <span class="cline-any cline-yes">10294x</span>
2467
- <span class="cline-any cline-yes">37754x</span>
2468
- <span class="cline-any cline-yes">37754x</span>
2469
- <span class="cline-any cline-yes">13069x</span>
2470
- <span class="cline-any cline-yes">8609x</span>
2471
- <span class="cline-any cline-neutral">&nbsp;</span>
2472
- <span class="cline-any cline-neutral">&nbsp;</span>
2473
- <span class="cline-any cline-neutral">&nbsp;</span>
2474
- <span class="cline-any cline-yes">117x</span>
2475
- <span class="cline-any cline-neutral">&nbsp;</span>
2476
- <span class="cline-any cline-neutral">&nbsp;</span>
2477
- <span class="cline-any cline-neutral">&nbsp;</span>
2478
- <span class="cline-any cline-neutral">&nbsp;</span>
2479
- <span class="cline-any cline-neutral">&nbsp;</span>
2480
- <span class="cline-any cline-neutral">&nbsp;</span>
2481
- <span class="cline-any cline-no">&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-neutral">&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-no">&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-neutral">&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-no">&nbsp;</span>
2498
- <span class="cline-any cline-neutral">&nbsp;</span>
2499
- <span class="cline-any cline-no">&nbsp;</span>
2500
- <span class="cline-any cline-no">&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-neutral">&nbsp;</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-no">&nbsp;</span>
2512
- <span class="cline-any cline-no">&nbsp;</span>
2513
- <span class="cline-any cline-no">&nbsp;</span>
2514
- <span class="cline-any cline-neutral">&nbsp;</span>
2515
- <span class="cline-any cline-neutral">&nbsp;</span>
2516
- <span class="cline-any cline-neutral">&nbsp;</span>
2517
- <span class="cline-any cline-no">&nbsp;</span>
2518
- <span class="cline-any cline-no">&nbsp;</span>
2519
- <span class="cline-any cline-no">&nbsp;</span>
2520
- <span class="cline-any cline-neutral">&nbsp;</span>
2521
- <span class="cline-any cline-no">&nbsp;</span>
2522
- <span class="cline-any cline-no">&nbsp;</span>
2523
- <span class="cline-any cline-neutral">&nbsp;</span>
2524
- <span class="cline-any cline-no">&nbsp;</span>
2525
- <span class="cline-any cline-neutral">&nbsp;</span>
2526
- <span class="cline-any cline-no">&nbsp;</span>
2527
- <span class="cline-any cline-neutral">&nbsp;</span>
2528
- <span class="cline-any cline-neutral">&nbsp;</span>
2529
- <span class="cline-any cline-neutral">&nbsp;</span>
2530
- <span class="cline-any cline-yes">1x</span>
2531
- <span class="cline-any cline-neutral">&nbsp;</span>
2532
- <span class="cline-any cline-neutral">&nbsp;</span>
2533
- <span class="cline-any cline-neutral">&nbsp;</span>
2534
- <span class="cline-any cline-neutral">&nbsp;</span>
2535
- <span class="cline-any cline-neutral">&nbsp;</span>
2536
- <span class="cline-any cline-neutral">&nbsp;</span>
2537
- <span class="cline-any cline-neutral">&nbsp;</span>
2538
- <span class="cline-any cline-neutral">&nbsp;</span>
2539
- <span class="cline-any cline-no">&nbsp;</span>
2540
- <span class="cline-any cline-no">&nbsp;</span>
2541
- <span class="cline-any cline-neutral">&nbsp;</span>
2542
- <span class="cline-any cline-no">&nbsp;</span>
2543
- <span class="cline-any cline-neutral">&nbsp;</span>
2544
- <span class="cline-any cline-yes">1x</span>
2545
- <span class="cline-any cline-neutral">&nbsp;</span>
2546
- <span class="cline-any cline-neutral">&nbsp;</span>
2547
- <span class="cline-any cline-neutral">&nbsp;</span>
2548
- <span class="cline-any cline-yes">1x</span>
2549
- <span class="cline-any cline-yes">1x</span>
2550
- <span class="cline-any cline-no">&nbsp;</span>
2551
- <span class="cline-any cline-no">&nbsp;</span>
2552
- <span class="cline-any cline-no">&nbsp;</span>
2553
- <span class="cline-any cline-no">&nbsp;</span>
2554
- <span class="cline-any cline-neutral">&nbsp;</span>
2555
- <span class="cline-any cline-no">&nbsp;</span>
2556
- <span class="cline-any cline-no">&nbsp;</span>
2557
- <span class="cline-any cline-neutral">&nbsp;</span>
2558
- <span class="cline-any cline-no">&nbsp;</span>
2559
- <span class="cline-any cline-no">&nbsp;</span>
2560
- <span class="cline-any cline-neutral">&nbsp;</span>
2561
- <span class="cline-any cline-no">&nbsp;</span>
2562
- <span class="cline-any cline-neutral">&nbsp;</span>
2563
- <span class="cline-any cline-yes">1x</span>
2564
- <span class="cline-any cline-neutral">&nbsp;</span>
2565
- <span class="cline-any cline-neutral">&nbsp;</span>
2566
- <span class="cline-any cline-neutral">&nbsp;</span>
2567
- <span class="cline-any cline-neutral">&nbsp;</span>
2568
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
2572
- <span class="cline-any cline-no">&nbsp;</span>
2573
- <span class="cline-any cline-no">&nbsp;</span>
2574
- <span class="cline-any cline-neutral">&nbsp;</span>
2575
- <span class="cline-any cline-neutral">&nbsp;</span>
2576
- <span class="cline-any cline-no">&nbsp;</span>
2577
- <span class="cline-any cline-neutral">&nbsp;</span>
2578
- <span class="cline-any cline-neutral">&nbsp;</span>
2579
- <span class="cline-any cline-neutral">&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-neutral">&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-neutral">&nbsp;</span>
2588
- <span class="cline-any cline-neutral">&nbsp;</span>
2589
- <span class="cline-any cline-no">&nbsp;</span>
2590
- <span class="cline-any cline-no">&nbsp;</span>
2591
- <span class="cline-any cline-neutral">&nbsp;</span>
2592
- <span class="cline-any cline-no">&nbsp;</span>
2593
- <span class="cline-any cline-neutral">&nbsp;</span>
2594
- <span class="cline-any cline-no">&nbsp;</span>
2595
- <span class="cline-any cline-no">&nbsp;</span>
2596
- <span class="cline-any cline-neutral">&nbsp;</span>
2597
- <span class="cline-any cline-no">&nbsp;</span>
2598
- <span class="cline-any cline-no">&nbsp;</span>
2599
- <span class="cline-any cline-neutral">&nbsp;</span>
2600
- <span class="cline-any cline-neutral">&nbsp;</span>
2601
- <span class="cline-any cline-no">&nbsp;</span>
2602
- <span class="cline-any cline-no">&nbsp;</span>
2603
- <span class="cline-any cline-no">&nbsp;</span>
2604
- <span class="cline-any cline-neutral">&nbsp;</span>
2605
- <span class="cline-any cline-neutral">&nbsp;</span>
2606
- <span class="cline-any cline-neutral">&nbsp;</span>
2607
- <span class="cline-any cline-no">&nbsp;</span>
2608
- <span class="cline-any cline-neutral">&nbsp;</span>
2609
- <span class="cline-any cline-neutral">&nbsp;</span>
2610
- <span class="cline-any cline-neutral">&nbsp;</span>
2611
- <span class="cline-any cline-yes">1x</span>
2612
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { at } from 'lodash';
2613
- import { v4 as uuidv4 } from 'uuid';
2614
- &nbsp;
2615
- import { SourceMap } from '../translator';
2616
- import { getSourceFromMap } from '../service/storage/map';
2617
- &nbsp;
2618
- import * as utils from '../utils';
2619
- import { EventEmitter, EventPayload, Params } from './EventEmitter';
2620
- import { action, circular, excludedInJSON, property, getConceptConstructor, getConceptPropertyMap, classMap } from '../decorators';
2621
- import { Diagnostic } from '../manager/diagnostic';
2622
- &nbsp;
2623
- import { sentryMonitorNaslNode } from '../sentry';
2624
- import operations from '../breakpoint/shared/operations';
2625
- import type { SynatxNode, SynatxNodeConcept, ViewElement, TypeAnnotation, App, Namespace } from '../concepts';
2626
- &nbsp;
2627
- // 确保属性都是定义过的
2628
- function <span class="fstat-no" title="function not covered" >ensureDefined(</span>object: any, concept: string) {
2629
- <span class="cstat-no" title="statement not covered" > if (!object) {</span>
2630
- <span class="cstat-no" title="statement not covered" > return object;</span>
2631
- }
2632
- const newObject: any = <span class="cstat-no" title="statement not covered" >{};</span>
2633
- const actualConcept = <span class="cstat-no" title="statement not covered" >object?.concept || concept;</span>
2634
- <span class="cstat-no" title="statement not covered" > if (actualConcept) {</span>
2635
- const propertyMap = <span class="cstat-no" title="statement not covered" >getConceptPropertyMap(actualConcept);</span>
2636
- <span class="cstat-no" title="statement not covered" > for (const key in object) {</span>
2637
- const property = <span class="cstat-no" title="statement not covered" >propertyMap.get(key);</span>
2638
- <span class="cstat-no" title="statement not covered" > if (property) {</span>
2639
- const objProperty = <span class="cstat-no" title="statement not covered" >object[key] ?? null;</span>
2640
- const propertyConcept = <span class="cstat-no" title="statement not covered" >property?.objectRef;</span>
2641
- <span class="cstat-no" title="statement not covered" > if (propertyConcept) {</span>
2642
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(objProperty)) {</span>
2643
- <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>
2644
- <span class="cstat-no" title="statement not covered" > return ensureDefined(objItem, propertyConcept);</span>
2645
- });
2646
- } else {
2647
- <span class="cstat-no" title="statement not covered" > newObject[key] = ensureDefined(objProperty, propertyConcept);</span>
2648
- }
2649
- } else {
2650
- <span class="cstat-no" title="statement not covered" > newObject[key] = objProperty;</span>
2651
- }
2652
- }
2653
- }
2654
- &nbsp;
2655
- <span class="cstat-no" title="statement not covered" > newObject.concept = actualConcept;</span>
2656
- }
2657
- <span class="cstat-no" title="statement not covered" > return newObject;</span>
2658
- }
2659
- &nbsp;
2660
- type NodePathOption = {
2661
- useName?: boolean,
2662
- }
2663
- &nbsp;
2664
- /**
2665
- * 顶点类
2666
- * 属性均为只读,仅在初始化和 load 的情况下可以修改
2667
- */
2668
- @sentryMonitorNaslNode
2669
- export class BaseNode extends EventEmitter {
2670
- static readonly ConceptName: string = 'BaseNode';
2671
- &nbsp;
2672
- /**
2673
- * 可修改标志,内部属性
2674
- * 标记在构造函数结束后是否可修改
2675
- */
2676
- @excludedInJSON()
2677
- _mutable = true;
2678
- &nbsp;
2679
- /** 节点类别缓存 */
2680
- @excludedInJSON()
2681
- private _concept!: string;
2682
- &nbsp;
2683
- /**
2684
- * 概念
2685
- */
2686
- @property()
2687
- get concept() {
2688
- return this._concept ?? (this.constructor as any).ConceptName as string;
2689
- }
2690
- <span class="fstat-no" title="function not covered" > set c</span>oncept(val: string) {
2691
- <span class="cstat-no" title="statement not covered" > console.warn(`[警告] 尽快移除变更 concept 值的操作,下个版本 concept 将会改为只读。\n当前变更:${this.concept} -&gt; ${val},原始节点类别:${(this.constructor as any).ConceptName}`);</span>
2692
- <span class="cstat-no" title="statement not covered" > if (val !== this.concept) {</span>
2693
- <span class="cstat-no" title="statement not covered" > if (val === (this.constructor as any).ConceptName as string) {</span>
2694
- <span class="cstat-no" title="statement not covered" > delete this._concept;</span>
2695
- } else {
2696
- <span class="cstat-no" title="statement not covered" > this._concept = val;</span>
2697
- }
2698
- }
2699
- }
2700
- &nbsp;
2701
- &nbsp;
2702
- /**
2703
- * toJSON 时需要去除的键,为了避免出现 CircularJSON
2704
- */
2705
- readonly JSON_EXCLUDED_KEYS: Set&lt;string&gt;;
2706
- &nbsp;
2707
- /**
2708
- * 唯一 Id
2709
- */
2710
- id: string = uuidv4().replace(/-/g, '');
2711
- &nbsp;
2712
- /**
2713
- * 变动时间
2714
- */
2715
- @property()
2716
- changedTime!: number;
2717
- &nbsp;
2718
- /**
2719
- * 分支名称
2720
- */
2721
- @property()
2722
- branchName!: string;
2723
- &nbsp;
2724
- /**
2725
- * 合并代码相关
2726
- */
2727
- @property()
2728
- workingCopy!: object;
2729
- &nbsp;
2730
- @property()
2731
- branch!: object;
2732
- &nbsp;
2733
- /**
2734
- * 断点状态
2735
- * undefined ==&gt; 未设置
2736
- * null ==&gt; 已删除
2737
- * 'ENABLED' ==&gt; 启用断点
2738
- * 'DISABLED' ==&gt; 禁用断点
2739
- */
2740
- @property()
2741
- breakpoint!: 'ENABLED' | 'DISABLED' | null | undefined;
2742
- &nbsp;
2743
- /**
2744
- * 父节点
2745
- */
2746
- @circular()
2747
- parentNode: SynatxNode = null;
2748
- &nbsp;
2749
- parentKey: string = '';
2750
- &nbsp;
2751
- /**
2752
- * 是否正在编辑
2753
- * 前端 UI 状态
2754
- */
2755
- @excludedInJSON()
2756
- editable!: boolean;
2757
- &nbsp;
2758
- /**
2759
- * 是否可以删除
2760
- * 前端 UI 状态
2761
- */
2762
- @excludedInJSON()
2763
- removable!: boolean;
2764
- &nbsp;
2765
- /**
2766
- * 是否正在编辑
2767
- * 前端 UI 状态
2768
- */
2769
- @excludedInJSON()
2770
- editing!: boolean;
2771
- &nbsp;
2772
- /**
2773
- * 是否正在请求
2774
- * 前端 UI 状态
2775
- */
2776
- @excludedInJSON()
2777
- loading!: boolean;
2778
- &nbsp;
2779
- /**
2780
- * 节点是否为展开状态
2781
- * 前端 UI 状态
2782
- */
2783
- @excludedInJSON()
2784
- expanded!: boolean;
2785
- &nbsp;
2786
- /**
2787
- * 节点是否显示
2788
- * 前端 UI 状态
2789
- */
2790
- @excludedInJSON()
2791
- hidden!: boolean;
2792
- &nbsp;
2793
- /**
2794
- * 页面树节点是否显示
2795
- * 前端 UI 状态
2796
- */
2797
- @excludedInJSON()
2798
- pageTreeNodeHidden!: boolean;
2799
- &nbsp;
2800
- /**
2801
- * 逻辑树节点是否显示
2802
- * 前端 UI 状态
2803
- */
2804
- @excludedInJSON()
2805
- logicTreeNodeHidden!: boolean;
2806
- &nbsp;
2807
- /**
2808
- * 数据树节点是否显示
2809
- * 前端 UI 状态
2810
- */
2811
- @excludedInJSON()
2812
- dataTreeNodeHidden!: boolean;
2813
- &nbsp;
2814
- /**
2815
- * 数据树节点是否显示
2816
- * 前端 UI 状态
2817
- */
2818
- @excludedInJSON()
2819
- processTreeNodeHidden!: boolean;
2820
- &nbsp;
2821
- /**
2822
- * 数据树节点是否展开
2823
- * 前端 UI 状态
2824
- */
2825
- @excludedInJSON()
2826
- logicTreeNodeExpanded!: boolean;
2827
- &nbsp;
2828
- /**
2829
- * 用于挂 embeddedTS 的 sourceMap
2830
- */
2831
- @excludedInJSON()
2832
- sourceMap!: SourceMap;
2833
- &nbsp;
2834
- /**
2835
- * 是否为叶子节点
2836
- * 前端 UI 状态
2837
- */
2838
- @excludedInJSON()
2839
- isLeaf!: boolean;
2840
- &nbsp;
2841
- @excludedInJSON()
2842
- storageJSON!: any;
2843
- &nbsp;
2844
- /**
2845
- * 当前节点上报错详细信息
2846
- */
2847
- tsErrorDetail!: Diagnostic | undefined;
2848
- &nbsp;
2849
- @property()
2850
- name: string = '';
2851
- &nbsp;
2852
- /**
2853
- * 当前节点的类型标注
2854
- */
2855
- @excludedInJSON()
2856
- __TypeAnnotation!: TypeAnnotation;
2857
- &nbsp;
2858
- /**
2859
- * 当前节点的类型标注是不是正确的
2860
- */
2861
- @excludedInJSON()
2862
- __isCorrectTypeAnnotation!: boolean;
2863
- &nbsp;
2864
- /**
2865
- * @param source 需要合并的部分参数
2866
- */
2867
- constructor(source?: Partial&lt;BaseNode&gt;) {
2868
- super();
2869
- <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;
2870
- /**
2871
- * 监听action,delete,update事件
2872
- */
2873
- this.on('create', this.genActionListener);
2874
- this.on('delete', this.genActionListener);
2875
- this.on('update', this.genActionListener);
2876
- &nbsp;
2877
- /**
2878
- * 监听action,delete,update事件
2879
- */
2880
- 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>;
2881
- 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>;
2882
- 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>;
2883
- &nbsp;
2884
- }
2885
- &nbsp;
2886
- subConstructor(source?: Partial&lt;BaseNode&gt;) {
2887
- const propertyMap = getConceptPropertyMap(this.concept || this.constructor.name);
2888
- const properties = Array.from(new Set([...Object.keys(this), ...Object.keys(source)])).filter((key) =&gt; propertyMap.has(key));
2889
- &nbsp;
2890
- // 测试时用的标记属性
2891
- if (process.env.NODE_ENV === 'testing') {
2892
- properties.push('__$Selected', '__TypeAnnotation');
2893
- }
2894
- &nbsp;
2895
- properties.forEach((key) =&gt; {
2896
- if (key === 'concept') {
2897
- return;
2898
- }
2899
- &nbsp;
2900
- const sourceItem = (source as any)[key] !== undefined ? (source as any)[key] : (this as any)[key];
2901
- &nbsp;
2902
- let property = propertyMap.get(key);
2903
- let objectRefCtor: any;
2904
- &nbsp;
2905
- // 测试环境下,类型节点由外部注入,所以需要在初始化的时候必须带上类型节点
2906
- if (process.env.NODE_ENV === 'testing' &amp;&amp; key === '__TypeAnnotation' &amp;&amp; sourceItem) {
2907
- property = { objectRef: 'TypeAnnotation' };
2908
- }
2909
- &nbsp;
2910
- try {
2911
- if (property?.objectRef) {
2912
- const arr = property.objectRef.split(' | ');
2913
- for (let i = 0; i &lt; arr.length; i++) {
2914
- objectRefCtor = getConceptConstructor(arr[i]);
2915
- if (sourceItem instanceof objectRefCtor) {
2916
- sourceItem.parentNode = this;
2917
- sourceItem.parentKey = key;
2918
- break;
2919
- }
2920
- }
2921
- }
2922
- &nbsp;
2923
- // 数组的情况也在这里做掉了
2924
- const val = objectRefCtor &amp;&amp; sourceItem &amp;&amp; !(sourceItem instanceof objectRefCtor) ? this.instantiateSub(sourceItem, key) : sourceItem;
2925
- &nbsp;
2926
- if (val !== undefined) {
2927
- (this as any)[key] = val;
2928
- }
2929
- } catch (e) {
2930
- // Function has non-object prototype 'undefined' in instanceof check
2931
- <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>
2932
- }
2933
- });
2934
- &nbsp;
2935
- operations.create(this);
2936
- &nbsp;
2937
- // node 环境下需要删除当前节点的 concept 属性
2938
- if (utils.isNode &amp;&amp; ('concept' in this) &amp;&amp; !this.concept) {
2939
- Reflect.deleteProperty(this, 'concept');
2940
- }
2941
- }
2942
- &nbsp;
2943
- <span class="fstat-no" title="function not covered" > fixInstantiate(</span>) {
2944
- const propertyMap = <span class="cstat-no" title="statement not covered" >getConceptPropertyMap(this.concept ?? this.constructor.name);</span>
2945
- 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>
2946
- &nbsp;
2947
- <span class="cstat-no" title="statement not covered" > properties.forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; {</span>
2948
- const property = <span class="cstat-no" title="statement not covered" >propertyMap.get(key);</span>
2949
- const sourceItem = (<span class="cstat-no" title="statement not covered" >this as any)[key];</span>
2950
- const objectRefCtor = <span class="cstat-no" title="statement not covered" >property.objectRef &amp;&amp; getConceptConstructor(property.objectRef);</span>
2951
- <span class="cstat-no" title="statement not covered" > if (objectRefCtor) {</span>
2952
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(sourceItem)) {</span>
2953
- <span class="cstat-no" title="statement not covered" > sourceItem.forEach(<span class="fstat-no" title="function not covered" >(i</span>tem, index) =&gt; {</span>
2954
- <span class="cstat-no" title="statement not covered" > if (item instanceof objectRefCtor) {</span>
2955
- <span class="cstat-no" title="statement not covered" > item.parentNode = this;</span>
2956
- <span class="cstat-no" title="statement not covered" > item.parentKey = key;</span>
2957
- <span class="cstat-no" title="statement not covered" > item.fixInstantiate();</span>
2958
- } else {
2959
- <span class="cstat-no" title="statement not covered" > sourceItem[index] = this.instantiateSub(item instanceof BaseNode ? item.toJSON() : item, key);</span>
2960
- }
2961
- });
2962
- } else <span class="cstat-no" title="statement not covered" >if (sourceItem instanceof objectRefCtor) {</span>
2963
- <span class="cstat-no" title="statement not covered" > sourceItem.parentNode = this;</span>
2964
- <span class="cstat-no" title="statement not covered" > sourceItem.parentKey = key;</span>
2965
- <span class="cstat-no" title="statement not covered" > sourceItem.fixInstantiate();</span>
2966
- } else {
2967
- (<span class="cstat-no" title="statement not covered" >this as any)[key] = this.instantiateSub(sourceItem instanceof BaseNode ? sourceItem.toJSON() : sourceItem, key);</span>
2968
- }
2969
- }
2970
- });
2971
- }
2972
- &nbsp;
2973
- <span class="fstat-no" title="function not covered" > getIndexOfParent(</span>) {
2974
- let index = <span class="cstat-no" title="statement not covered" >-1;</span>
2975
- const { parentNode } = <span class="cstat-no" title="statement not covered" >this;</span>
2976
- <span class="cstat-no" title="statement not covered" > if (parentNode) {</span>
2977
- const { parentKey } = <span class="cstat-no" title="statement not covered" >this;</span>
2978
- const parentProperty = (<span class="cstat-no" title="statement not covered" >parentNode as any)[parentKey];</span>
2979
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(parentProperty)) {</span>
2980
- <span class="cstat-no" title="statement not covered" > index = parentProperty.indexOf(this);</span>
2981
- }
2982
- }
2983
- <span class="cstat-no" title="statement not covered" > return index;</span>
2984
- }
2985
- &nbsp;
2986
- /**
2987
- * 为存储点生成行为监听器
2988
- * @param action
2989
- * @returns
2990
- */
2991
- <span class="fstat-no" title="function not covered" > genActionListener(</span>$event: EventPayload) {
2992
- // eventList是要被发送给后端的数据
2993
- <span class="cstat-no" title="statement not covered" > if (!$event.eventList) {</span>
2994
- <span class="cstat-no" title="statement not covered" > $event.eventList = [];</span>
2995
- }
2996
- <span class="cstat-no" title="statement not covered" > if (!$event.eventStop) {</span>
2997
- <span class="cstat-no" title="statement not covered" > $event.eventList.push($event);</span>
2998
- }
2999
- <span class="cstat-no" title="statement not covered" > $event.originEvent = $event.originEvent || $event;</span>
3000
- <span class="cstat-no" title="statement not covered" > this.onChange($event);</span>
3001
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'App') {</span>
3002
- <span class="cstat-no" title="statement not covered" > this.emit('storage', $event);</span>
3003
- } else <span class="cstat-no" title="statement not covered" >if (this.parentNode &amp;&amp; this.parentNode.emit) {</span>
3004
- const event: EventPayload = <span class="cstat-no" title="statement not covered" >{</span>
3005
- action: 'update',
3006
- path: this.parentNode?.getNodePath(false),
3007
- object: {},
3008
- oldObject: {},
3009
- originEvent: $event.originEvent,
3010
- eventList: $event.eventList,
3011
- // eventStop为true后,数据不再存入eventList,就不再会将冒泡数据发送给后端
3012
- eventStop: true,
3013
- };
3014
- <span class="cstat-no" title="statement not covered" > this.parentNode?.emit('update', event);</span>
3015
- }
3016
- }
3017
- &nbsp;
3018
- <span class="fstat-no" title="function not covered" > createNode(</span>{ parentNode, parentKey, index }: { parentNode: SynatxNode; parentKey: string; index: number }) {
3019
- <span class="cstat-no" title="statement not covered" > if (parentNode) {</span>
3020
- const property = <span class="cstat-no" title="statement not covered" >parentNode[parentKey as keyof SynatxNode];</span>
3021
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(property) &amp;&amp; index !== -1) {</span>
3022
- <span class="cstat-no" title="statement not covered" > property.splice(index, 0, this);</span>
3023
- } else {
3024
- (<span class="cstat-no" title="statement not covered" >parentNode as any)[parentKey] = this;</span>
3025
- }
3026
- <span class="cstat-no" title="statement not covered" > this.parentNode = parentNode;</span>
3027
- <span class="cstat-no" title="statement not covered" > this.parentKey = parentKey;</span>
3028
- <span class="cstat-no" title="statement not covered" > this.create({</span>
3029
- index,
3030
- parentKey,
3031
- });
3032
- }
3033
- }
3034
- &nbsp;
3035
- <span class="fstat-no" title="function not covered" > toTemplateJSON(</span>) {
3036
- <span class="cstat-no" title="statement not covered" > return this._toJSON(<span class="fstat-no" title="function not covered" >(s</span>ource) =&gt; {</span>
3037
- <span class="cstat-no" title="statement not covered" > delete source.id;</span>
3038
- <span class="cstat-no" title="statement not covered" > return source;</span>
3039
- });
3040
- }
3041
- &nbsp;
3042
- /**
3043
- * 创建节点
3044
- */
3045
- <span class="fstat-no" title="function not covered" > create(</span>parentParams: Params) {
3046
- <span class="cstat-no" title="statement not covered" > this.emit('create', {</span>
3047
- action: 'create',
3048
- path: this.getNodePath(true),
3049
- object: this.toJSON(),
3050
- ...parentParams,
3051
- oldObject: null,
3052
- });
3053
- }
3054
- &nbsp;
3055
- /**
3056
- * 如果有父节点,则删除节点,在添加时调用
3057
- */
3058
- <span class="fstat-no" title="function not covered" > ensureDelete(</span>) {
3059
- // 批量赋值因为连线的问题需要特殊处理一下.
3060
- <span class="cstat-no" title="statement not covered" > if (this.parentNode?.concept === 'SelectMembers') {</span>
3061
- <span class="cstat-no" title="statement not covered" > this.parentNode.ensureDelete();</span>
3062
- <span class="cstat-no" title="statement not covered" > return;</span>
3063
- }
3064
- &nbsp;
3065
- <span class="cstat-no" title="statement not covered" > if (this.parentNode &amp;&amp; this.parentKey) {</span>
3066
- const path = <span class="cstat-no" title="statement not covered" >this.getNodePath(false);</span>
3067
- const parentParams = <span class="cstat-no" title="statement not covered" >this._delete();</span>
3068
- <span class="cstat-no" title="statement not covered" > if (parentParams &amp;&amp; parentParams.index !== -1) {</span>
3069
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((this.parentNode as any)[this.parentKey])) {</span>
3070
- <span class="cstat-no" title="statement not covered" > this.emit('delete', {</span>
3071
- action: 'delete',
3072
- path,
3073
- object: null,
3074
- ...parentParams,
3075
- });
3076
- } else {
3077
- const parentPath = <span class="cstat-no" title="statement not covered" >this.parentNode.getNodePath(false);</span>
3078
- <span class="cstat-no" title="statement not covered" > this.parentNode.emit('update', {</span>
3079
- action: 'update',
3080
- path: parentPath,
3081
- object: {
3082
- [this.parentKey]: null,
3083
- },
3084
- oldObject: {
3085
- [this.parentKey]: this.toJSON(),
3086
- },
3087
- });
3088
- }
3089
- }
3090
- }
3091
- }
3092
- &nbsp;
3093
- /**
3094
- * 删除节点
3095
- */
3096
- <span class="fstat-no" title="function not covered" > delete(</span>) {
3097
- <span class="cstat-no" title="statement not covered" > if (this.parentNode?.concept === 'Match' &amp;&amp; this.parentKey === 'expression') {</span>
3098
- (<span class="cstat-no" title="statement not covered" >this.parentNode as any).setExpressionWitchCase(null);</span>
3099
- <span class="cstat-no" title="statement not covered" > return;</span>
3100
- }
3101
- // 批量赋值因为连线的问题需要特殊处理一下.
3102
- <span class="cstat-no" title="statement not covered" > if (this.parentNode?.concept === 'SelectMembers') {</span>
3103
- const node: any = <span class="cstat-no" title="statement not covered" >this.parentNode;</span>
3104
- <span class="cstat-no" title="statement not covered" > node.delete();</span>
3105
- <span class="cstat-no" title="statement not covered" > return;</span>
3106
- }
3107
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'SelectMembers') {</span>
3108
- const node: any = <span class="cstat-no" title="statement not covered" >this.parentNode;</span>
3109
- <span class="cstat-no" title="statement not covered" > node.changeLinesLocation(this);</span>
3110
- }
3111
- &nbsp;
3112
- // 自定义连接器下的namespace删除的时候需要同时删除对应的logic
3113
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'Namespace' &amp;&amp; this.parentNode.concept === 'Connector') {</span>
3114
- (<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>
3115
- }
3116
- &nbsp;
3117
- const useIndex = <span class="cstat-no" title="statement not covered" >['BindEvent', 'Identifier'].includes(this.concept);</span>
3118
- const path = <span class="cstat-no" title="statement not covered" >this.getNodePath(useIndex);</span>
3119
- const parentParams = <span class="cstat-no" title="statement not covered" >this._delete();</span>
3120
- <span class="cstat-no" title="statement not covered" > if (parentParams &amp;&amp; parentParams.index !== -1) {</span>
3121
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((this.parentNode as any)[this.parentKey])) {</span>
3122
- <span class="cstat-no" title="statement not covered" > if (process.env.NODE_ENV === 'development') {</span>
3123
- <span class="cstat-no" title="statement not covered" > console.log('删除节点', this);</span>
3124
- }
3125
- <span class="cstat-no" title="statement not covered" > this.emit('delete', {</span>
3126
- action: 'delete',
3127
- path,
3128
- object: null,
3129
- ...parentParams,
3130
- });
3131
- } else {
3132
- const parentPath = <span class="cstat-no" title="statement not covered" >this.parentNode.getNodePath(false);</span>
3133
- <span class="cstat-no" title="statement not covered" > this.parentNode.emit('update', {</span>
3134
- action: 'update',
3135
- path: parentPath,
3136
- object: {
3137
- [this.parentKey]: null,
3138
- },
3139
- oldObject: {
3140
- [this.parentKey]: this.toJSON(),
3141
- },
3142
- });
3143
- }
3144
- }
3145
- }
3146
- &nbsp;
3147
- /**
3148
- * 更新节点
3149
- */
3150
- <span class="fstat-no" title="function not covered" > update(</span>{ field, ...object }: any) {
3151
- const path = <span class="cstat-no" title="statement not covered" >this.getNodePath(false);</span>
3152
- const oldObject: any = <span class="cstat-no" title="statement not covered" >{};</span>
3153
- <span class="cstat-no" title="statement not covered" > for (const key in object) {</span>
3154
- <span class="cstat-no" title="statement not covered" > if (key === 'concept') {</span>
3155
- <span class="cstat-no" title="statement not covered" > continue;</span>
3156
- }
3157
- &nbsp;
3158
- <span class="cstat-no" title="statement not covered" > if (Object.prototype.hasOwnProperty.call(object, key)) {</span>
3159
- const oldProperty = (<span class="cstat-no" title="statement not covered" >this as any)[key] ?? null;</span>
3160
- <span class="cstat-no" title="statement not covered" > oldObject[key] = oldProperty;</span>
3161
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(oldProperty)) {</span>
3162
- <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>
3163
- let propertyItem = <span class="cstat-no" title="statement not covered" >item ?? null;</span>
3164
- <span class="cstat-no" title="statement not covered" > if (item instanceof BaseNode) {</span>
3165
- <span class="cstat-no" title="statement not covered" > propertyItem = item.toJSON();</span>
3166
- }
3167
- <span class="cstat-no" title="statement not covered" > return propertyItem;</span>
3168
- });
3169
- } else <span class="cstat-no" title="statement not covered" >if (oldProperty instanceof BaseNode) {</span>
3170
- <span class="cstat-no" title="statement not covered" > oldObject[key] = oldProperty.toJSON();</span>
3171
- }
3172
- const property = <span class="cstat-no" title="statement not covered" >object[key] ?? null;</span>
3173
- (<span class="cstat-no" title="statement not covered" >this as any)[key] = property;</span>
3174
- const objectRefCtor = <span class="cstat-no" title="statement not covered" >getConceptConstructor(property?.concept);</span>
3175
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(property)) {</span>
3176
- (<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>
3177
- let propertyItem = <span class="cstat-no" title="statement not covered" >item ?? null;</span>
3178
- const propertyObjectRefCtor = <span class="cstat-no" title="statement not covered" >getConceptConstructor(item?.concept);</span>
3179
- <span class="cstat-no" title="statement not covered" > if (propertyObjectRefCtor?.from) {</span>
3180
- <span class="cstat-no" title="statement not covered" > propertyItem = (propertyObjectRefCtor as any).from(item, this, key);</span>
3181
- }
3182
- <span class="cstat-no" title="statement not covered" > return propertyItem;</span>
3183
- });
3184
- } else <span class="cstat-no" title="statement not covered" >if (objectRefCtor?.from) {</span>
3185
- (<span class="cstat-no" title="statement not covered" >this as any)[key] = (objectRefCtor as any).from(property, this, key);</span>
3186
- }
3187
- }
3188
- }
3189
- const newObject: any = <span class="cstat-no" title="statement not covered" >{};</span>
3190
- const propertyMap = <span class="cstat-no" title="statement not covered" >getConceptPropertyMap(this.concept ?? this.constructor.name);</span>
3191
- <span class="cstat-no" title="statement not covered" > for (const key in object) {</span>
3192
- const property = <span class="cstat-no" title="statement not covered" >propertyMap.get(key);</span>
3193
- <span class="cstat-no" title="statement not covered" > if (property) {</span>
3194
- const objProperty = <span class="cstat-no" title="statement not covered" >object[key] ?? null;</span>
3195
- const propertyConcept = <span class="cstat-no" title="statement not covered" >property?.objectRef;</span>
3196
- <span class="cstat-no" title="statement not covered" > if (propertyConcept) {</span>
3197
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(objProperty)) {</span>
3198
- <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>
3199
- <span class="cstat-no" title="statement not covered" > return ensureDefined(objItem, propertyConcept);</span>
3200
- });
3201
- } else {
3202
- <span class="cstat-no" title="statement not covered" > newObject[key] = ensureDefined(objProperty, propertyConcept);</span>
3203
- }
3204
- } else {
3205
- <span class="cstat-no" title="statement not covered" > newObject[key] = objProperty;</span>
3206
- }
3207
- }
3208
- }
3209
- <span class="cstat-no" title="statement not covered" > if (process.env.NODE_ENV === 'development') {</span>
3210
- <span class="cstat-no" title="statement not covered" > console.log('更新节点', 'path', path, 'oldObject', oldObject, 'newObject', newObject);</span>
3211
- }
3212
- <span class="cstat-no" title="statement not covered" > this.emit('update', {</span>
3213
- action: 'update',
3214
- path,
3215
- object: newObject,
3216
- oldObject,
3217
- field,
3218
- });
3219
- }
3220
- &nbsp;
3221
- <span class="fstat-no" title="function not covered" > _delete(</span>): Params {
3222
- /* override */
3223
- <span class="cstat-no" title="statement not covered" > return {</span>
3224
- propertyName: '',
3225
- index: -1,
3226
- object: null,
3227
- oldObject: this,
3228
- };
3229
- }
3230
- &nbsp;
3231
- static from(source: any, parentNode?: BaseNode, parentKey?: string): BaseNode {
3232
- // 有一些继承的情况
3233
- const Ctor = classMap.get(source?.concept) || this;
3234
- <span class="missing-if-branch" title="if path not taken" >I</span>if (Ctor &amp;&amp; source instanceof Ctor) {
3235
- <span class="cstat-no" title="statement not covered" > if (parentNode) {</span>
3236
- <span class="cstat-no" title="statement not covered" > source.parentNode = parentNode;</span>
3237
- }
3238
- <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
3239
- <span class="cstat-no" title="statement not covered" > source.parentKey = parentKey;</span>
3240
- }
3241
- <span class="cstat-no" title="statement not covered" > return source;</span>
3242
- }
3243
- &nbsp;
3244
- <span class="missing-if-branch" title="else path not taken" >E</span>if (Ctor) {
3245
- const instance = new Ctor();
3246
- if (parentNode) {
3247
- instance.parentNode = parentNode;
3248
- }
3249
- if (parentKey) {
3250
- instance.parentKey = parentKey;
3251
- }
3252
- instance.subConstructor({
3253
- ...source,
3254
- 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>
3255
- parentNode,
3256
- });
3257
- return instance;
3258
- }
3259
- }
3260
- &nbsp;
3261
- get nodePath() {
3262
- return this.getNodePath(false);
3263
- }
3264
- &nbsp;
3265
- getNodePath(useIndex: boolean): string;
3266
- getNodePath(useIndexKeys: string[]): string;
3267
- getNodePath(option: NodePathOption): string;
3268
- getNodePath(useIndex: boolean | string[] | NodePathOption) {
3269
- let node: BaseNode = this;
3270
- let useIndexKeys: string[] = [];
3271
- let option: NodePathOption = {};
3272
- <span class="missing-if-branch" title="if path not taken" >I</span>if (Array.isArray(useIndex)) {
3273
- <span class="cstat-no" title="statement not covered" > useIndexKeys = useIndex;</span>
3274
- <span class="cstat-no" title="statement not covered" > useIndex = false;</span>
3275
- } else <span class="missing-if-branch" title="if path not taken" >I</span>if(useIndex &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >typeof useIndex === 'object')</span> {
3276
- <span class="cstat-no" title="statement not covered" > option = useIndex;</span>
3277
- }
3278
- let isNodeSelf = true;
3279
- const pathArr = [];
3280
- while (node) {
3281
- let path = '';
3282
- const { parentNode } = node;
3283
- if (parentNode) {
3284
- const { parentKey } = node;
3285
- path = parentKey;
3286
- const parentProperty = parentNode[parentKey as keyof BaseNode];
3287
- <span class="missing-if-branch" title="else path not taken" >E</span>if (Array.isArray(parentProperty)) {
3288
- const { name } = node;
3289
- // 如果存在同名节点,使用下标来表示NodePath
3290
- const siblingNode: BaseNode = name
3291
- ? (parentProperty as BaseNode[]).find((child) =&gt; {
3292
- // 因为proxy的关系,导致两边的引用不相同,所以这里需要判断id
3293
- 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>
3294
- })
3295
- : <span class="branch-1 cbranch-no" title="branch not covered" >null;</span>
3296
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!(option.useName &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >name)</span> &amp;&amp; (siblingNode || !name || (useIndex &amp;&amp; <span class="branch-4 cbranch-no" title="branch not covered" >isNodeSelf)</span> || useIndexKeys.includes(node.concept))) {
3297
- 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>
3298
- <span class="cstat-no" title="statement not covered" > if (item === node) {</span>
3299
- <span class="cstat-no" title="statement not covered" > return true;</span>
3300
- }
3301
- &nbsp;
3302
- <span class="cstat-no" title="statement not covered" > return item?.id &amp;&amp; item?.id === node?.id;</span>
3303
- });
3304
- <span class="cstat-no" title="statement not covered" > path += `[${index}]`;</span>
3305
- } else {
3306
- path += `[name=${name}]`;
3307
- }
3308
- }
3309
- pathArr.unshift(path);
3310
- }
3311
- node = parentNode;
3312
- isNodeSelf = false;
3313
- }
3314
- pathArr.unshift('app');
3315
- return pathArr.join('.');
3316
- }
3317
- &nbsp;
3318
- /**
3319
- * 上层节点
3320
- */
3321
- get upperNode(): SynatxNode {
3322
- // eslint-disable-next-line consistent-this
3323
- let _upperNode: BaseNode = this;
3324
- while (!!_upperNode &amp;&amp; _upperNode.concept === this.concept) {
3325
- _upperNode = _upperNode.parentNode;
3326
- }
3327
- return _upperNode as SynatxNode;
3328
- }
3329
- &nbsp;
3330
- /**
3331
- * 根节点
3332
- */
3333
- get rootNode() {
3334
- return this.getAncestor('App') as App;
3335
- }
3336
- &nbsp;
3337
- /**
3338
- * 获取祖先节点
3339
- */
3340
- getAncestor(concept: SynatxNode['concept']): SynatxNode;
3341
- getAncestor&lt;Node extends SynatxNode&gt;(concept: Node['concept']): Node;
3342
- getAncestor&lt;Node extends SynatxNode = SynatxNode&gt;(concept: SynatxNode['concept']): Node {
3343
- let { upperNode } = this;
3344
- while (upperNode &amp;&amp; upperNode.concept &amp;&amp; upperNode.concept !== concept) {
3345
- upperNode = upperNode.upperNode;
3346
- }
3347
- return upperNode as Node;
3348
- }
3349
- &nbsp;
3350
- /**
3351
- *
3352
- * @param source
3353
- * @param Ctor
3354
- * @param completeList
3355
- * @param idsList
3356
- */
3357
- handleSource(source: any, completeList: any[]) {
3358
- const { id, concept } = source || {};
3359
- const actualSource = source instanceof BaseNode ? source : getSourceFromMap(id, concept);
3360
- completeList.push(actualSource || source);
3361
- }
3362
- &nbsp;
3363
- /**
3364
- * 获取当前的TsName
3365
- */
3366
- get tsName() {
3367
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.name) {
3368
- let tsName = <span class="cstat-no" title="statement not covered" >this.name;</span>
3369
- // 匹配所有特殊字符都转为_
3370
- <span class="cstat-no" title="statement not covered" > tsName = tsName.replace(/\W/g, '_');</span>
3371
- <span class="cstat-no" title="statement not covered" > if (/^\d/.test(tsName)) {</span>
3372
- <span class="cstat-no" title="statement not covered" > tsName = `$${tsName}`;</span>
3373
- }
3374
- <span class="cstat-no" title="statement not covered" > return tsName;</span>
3375
- }
3376
- return '';
3377
- }
3378
- &nbsp;
3379
- /**
3380
- * 生成json
3381
- * @param instance
3382
- * @param Ctor
3383
- */
3384
- genSources(instance: BaseNode, filerFn?: (source: Partial&lt;BaseNode&gt;) =&gt; {}) {
3385
- <span class="missing-if-branch" title="else path not taken" >E</span>if (!instance) {
3386
- return instance;
3387
- }
3388
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(instance)) {</span>
3389
- <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>
3390
- }
3391
- <span class="cstat-no" title="statement not covered" > return instance &amp;&amp; instance._toJSON ? instance._toJSON(filerFn) : instance;</span>
3392
- }
3393
- &nbsp;
3394
- /**
3395
- * 实例化一个 JSON
3396
- * 由于有 from,只能先实例化父级,再实例化子级
3397
- * @param obj
3398
- * @param parentNode
3399
- * @returns
3400
- */
3401
- instantiate(source: any, parentNode: BaseNode, parentKey: string) {
3402
- if (source instanceof BaseNode) {
3403
- if (!source.parentNode || !source.parentKey) {
3404
- source.parentNode = parentNode as SynatxNode;
3405
- source.parentKey = parentKey;
3406
- }
3407
- return source;
3408
- }
3409
- if (source &amp;&amp; source.concept &amp;&amp; classMap.get(source.concept)) {
3410
- const Ctor = classMap.get(source.concept) as any;
3411
- const instance = Ctor.from(source, parentNode, parentKey);
3412
- <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>
3413
- return instance;
3414
- }
3415
- return source;
3416
- }
3417
- &nbsp;
3418
- /**
3419
- * 激活 JSON 内部实例
3420
- * @param source
3421
- */
3422
- instantiateSub(source: any, parentKey: string) {
3423
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!source) {
3424
- <span class="cstat-no" title="statement not covered" > return;</span>
3425
- }
3426
- const completeList: any[] = [];
3427
- let isArray;
3428
- // 暂时通过是否有name判断数据是否全
3429
- if (Array.isArray(source)) {
3430
- isArray = true;
3431
- source.forEach((sourceItem) =&gt; {
3432
- this.handleSource(sourceItem, completeList);
3433
- });
3434
- } else {
3435
- this.handleSource(source, completeList);
3436
- }
3437
- const instanceList: any[] = completeList.map((item) =&gt; this.instantiate(item, this, parentKey));
3438
- if (isArray) {
3439
- return instanceList;
3440
- }
3441
- <span class="missing-if-branch" title="else path not taken" >E</span>if (Array.isArray(instanceList) &amp;&amp; instanceList.length) {
3442
- return instanceList[0];
3443
- }
3444
- }
3445
- &nbsp;
3446
- <span class="fstat-no" title="function not covered" > plainAssign(</span>source: any) {
3447
- <span class="cstat-no" title="statement not covered" > this._mutable = true;</span>
3448
- &nbsp;
3449
- const oldId = <span class="cstat-no" title="statement not covered" >this.id;</span>
3450
- &nbsp;
3451
- <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>
3452
- const value = <span class="cstat-no" title="statement not covered" >source[key];</span>
3453
- <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>
3454
- });
3455
- &nbsp;
3456
- <span class="cstat-no" title="statement not covered" > this._mutable = false;</span>
3457
- }
3458
- &nbsp;
3459
- <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> {
3460
- const obj: { [name: string]: any } = <span class="cstat-no" title="statement not covered" >{};</span>
3461
- <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>
3462
- // 这里统一用 assign,集中处理 id 的问题
3463
- // this.assign(obj);
3464
- }
3465
- &nbsp;
3466
- /**
3467
- * 从对象中深度获取
3468
- * @param source
3469
- * @param keys
3470
- * @example 比如一般后端返回只是添加了个 id
3471
- * ```
3472
- * this.deepPick(result, ['id'])
3473
- */
3474
- <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> {
3475
- <span class="cstat-no" title="statement not covered" > utils.traverse(</span>
3476
- <span class="fstat-no" title="function not covered" > (c</span>urrent) =&gt; {
3477
- const subSource = <span class="cstat-no" title="statement not covered" >current.jsonPath ? at(source, [current.jsonPath])[0] : source;</span>
3478
- const target = <span class="cstat-no" title="statement not covered" >current.jsonPath ? at(this as any, [current.jsonPath])[0] : this;</span>
3479
- <span class="cstat-no" title="statement not covered" > if (!target) <span class="cstat-no" title="statement not covered" >return;</span></span>
3480
- &nbsp;
3481
- const obj: { [name: string]: any } = <span class="cstat-no" title="statement not covered" >{};</span>
3482
- <span class="cstat-no" title="statement not covered" > keys.forEach(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; {</span>
3483
- <span class="cstat-no" title="statement not covered" > if (subSource.hasOwnProperty(key)) {</span>
3484
- <span class="cstat-no" title="statement not covered" > obj[key] = subSource[key];</span>
3485
- }
3486
- });
3487
- // 这里统一用 assign,集中处理 id 的问题
3488
- <span class="cstat-no" title="statement not covered" > target.assign ? target.assign(obj) : Object.assign(target, obj);</span>
3489
- },
3490
- { node: source },
3491
- { mode: 'anyObject' }
3492
- );
3493
- }
3494
- &nbsp;
3495
- /**
3496
- * 去除循环依赖,转为纯 JSON
3497
- * @param parentKey 外面的 key,提供给 JSON.stringify 使用
3498
- * @param excludedKeys 需要额外排除的 keys
3499
- */
3500
- toJSON() {
3501
- return this._toJSON();
3502
- }
3503
- &nbsp;
3504
- _toJSON(filerFn?: (source: Partial&lt;BaseNode&gt;) =&gt; {}): any {
3505
- const propertyMap = getConceptPropertyMap(this.concept || <span class="branch-1 cbranch-no" title="branch not covered" >this.constructor.name)</span>;
3506
- const source: Partial&lt;BaseNode&gt; = {};
3507
- propertyMap.forEach((property, key: string) =&gt; {
3508
- <span class="missing-if-branch" title="else path not taken" >E</span>if (property) {
3509
- const { objectRef: propertyObjectRef } = property;
3510
- if (!propertyObjectRef) {
3511
- (source as any)[key] = this[key as keyof BaseNode];
3512
- } else {
3513
- const sources: any = this.genSources(this[key as keyof BaseNode], filerFn);
3514
- (source as any)[key] = sources;
3515
- }
3516
- }
3517
- });
3518
- &nbsp;
3519
- // @ts-ignore
3520
- source.concept = this.concept;
3521
- &nbsp;
3522
- return filerFn ? <span class="branch-0 cbranch-no" title="branch not covered" >filerFn(source) </span>: source;
3523
- }
3524
- &nbsp;
3525
- /**
3526
- * 转为单层的 JSON
3527
- * @param parentKey 外面的 key,提供给 JSON.stringify 使用
3528
- * @param excludedKeys 需要额外排除的 keys
3529
- */
3530
- <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 {
3531
- 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 || [];
3532
- <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>
3533
- &nbsp;
3534
- const temp: { [prop: string]: any } = <span class="cstat-no" title="statement not covered" >{};</span>
3535
- <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>
3536
- const value = (<span class="cstat-no" title="statement not covered" >this as any)[key];</span>
3537
- <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>
3538
- });
3539
- <span class="cstat-no" title="statement not covered" > return JSON.parse(JSON.stringify(temp));</span>
3540
- }
3541
- &nbsp;
3542
- /**
3543
- * 查找引用
3544
- */
3545
- @action('查找引用')
3546
- <span class="fstat-no" title="function not covered" > async </span>findUsage(): Promise&lt;any&gt; {
3547
- /* override */
3548
- }
3549
- &nbsp;
3550
- /**
3551
- * 通过当前节点,查找被引用的节点
3552
- */
3553
- @action('通过当前节点,查找被引用的节点')
3554
- <span class="fstat-no" title="function not covered" > async </span>nodeFindRefNodes(): Promise&lt;any&gt; {
3555
- /* override */
3556
- }
3557
- &nbsp;
3558
- <span class="fstat-no" title="function not covered" > async </span>findReadOnlyLogicUsage(): Promise&lt;any&gt; {
3559
- /* override */
3560
- }
3561
- &nbsp;
3562
- /**
3563
- * 重命名
3564
- */
3565
- @action('重命名')
3566
- <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; {
3567
- /* override */
3568
- }
3569
- &nbsp;
3570
- /**
3571
- * 准备删除
3572
- */
3573
- @action('准备删除')
3574
- <span class="fstat-no" title="function not covered" > async </span>prepareDelete(cb?: Function): Promise&lt;any&gt; {
3575
- /* override */
3576
- }
3577
- &nbsp;
3578
- /**
3579
- * 添加参数准备
3580
- */
3581
- @action('添加参数准备')
3582
- <span class="fstat-no" title="function not covered" > async </span>addParamsPrepare(): Promise&lt;any&gt; {
3583
- /* override */
3584
- }
3585
- &nbsp;
3586
- /**
3587
- * 获取当前节点类型
3588
- */
3589
- @action('获取当前节点类型')
3590
- <span class="fstat-no" title="function not covered" > async </span>getCurrentTypeAnnotation(): Promise&lt;any&gt; {
3591
- /* override */
3592
- }
3593
- &nbsp;
3594
- /**
3595
- * 获取当前节点的下一级内容
3596
- */
3597
- @action('获取当前节点的下一级内容')
3598
- <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 {
3599
- /* override */
3600
- }
3601
- &nbsp;
3602
- /**
3603
- * 销毁
3604
- * 从 Map 中删除点和子节点
3605
- */
3606
- <span class="fstat-no" title="function not covered" > destroy(</span>) {
3607
- // utils.traverse((current) =&gt; , { node: this }, {
3608
- // mode: 'anyObject',
3609
- // excludedKeySet: this.JSON_EXCLUDED_KEYS,
3610
- // });
3611
- }
3612
- &nbsp;
3613
- <span class="fstat-no" title="function not covered" > onChange(</span>$event?: EventPayload) {
3614
- <span class="cstat-no" title="statement not covered" > this.emit('change', $event);</span>
3615
- }
3616
- &nbsp;
3617
- <span class="fstat-no" title="function not covered" > onCreate(</span>$event?: any) {
3618
- /* override */
3619
- }
3620
- &nbsp;
3621
- <span class="fstat-no" title="function not covered" > onDelete(</span>$event?: any) {
3622
- /* override */
3623
- }
3624
- &nbsp;
3625
- /**
3626
- * 移动节点
3627
- * @param sourceNode
3628
- * @param position
3629
- */
3630
- <span class="fstat-no" title="function not covered" > moveNode(</span>options: { sourceNode: BaseNode; position: 'append' | 'insertBefore' | 'insertAfter'; action?: string }) {
3631
- const { sourceNode, position } = <span class="cstat-no" title="statement not covered" >options;</span>
3632
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'App') {</span>
3633
- <span class="cstat-no" title="statement not covered" > return;</span>
3634
- }
3635
- let actionMsg = <span class="cstat-no" title="statement not covered" >`移动${(this.constructor as any).nodeTitle}`;</span>
3636
- <span class="cstat-no" title="statement not covered" > if (this.name) {</span>
3637
- <span class="cstat-no" title="statement not covered" > actionMsg += `“${this.name}”`;</span>
3638
- }
3639
- (<span class="cstat-no" title="statement not covered" >sourceNode as any).app.emit('collect:start', {</span>
3640
- actionMsg,
3641
- });
3642
- // 如果是兄弟节点之前的移动
3643
- <span class="cstat-no" title="statement not covered" > if (position !== 'append' &amp;&amp; this.concept !== sourceNode.concept) {</span>
3644
- <span class="cstat-no" title="statement not covered" > return;</span>
3645
- }
3646
- // 先删
3647
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
3648
- <span class="cstat-no" title="statement not covered" > if (position === 'append') {</span>
3649
- let { action } = <span class="cstat-no" title="statement not covered" >options;</span>
3650
- <span class="cstat-no" title="statement not covered" > if (!action) <span class="cstat-no" title="statement not covered" >action = `add${this.concept}`;</span></span>
3651
- const parentNode = <span class="cstat-no" title="statement not covered" >sourceNode;</span>
3652
- (<span class="cstat-no" title="statement not covered" >parentNode as any)[action](this as any);</span>
3653
- } else {
3654
- const parentNode = <span class="cstat-no" title="statement not covered" >sourceNode?.parentNode;</span>
3655
- const parentKey = <span class="cstat-no" title="statement not covered" >sourceNode?.parentKey || '';</span>
3656
- const list = (<span class="cstat-no" title="statement not covered" >parentNode as any)[parentKey];</span>
3657
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(list)) {</span>
3658
- let index = <span class="cstat-no" title="statement not covered" >list.indexOf(sourceNode);</span>
3659
- <span class="cstat-no" title="statement not covered" > if (position === 'insertAfter') {</span>
3660
- <span class="cstat-no" title="statement not covered" > index += 1;</span>
3661
- }
3662
- <span class="cstat-no" title="statement not covered" > Object.assign(this, {</span>
3663
- parentNode,
3664
- parentKey,
3665
- });
3666
- &nbsp;
3667
- // 和原开发沟通过,可注释掉这行,否则拖拽的时候会更新name
3668
- // if (this.concept === 'ViewElement') this.name = (this as unknown as ViewElement).getViewElementUniqueName(this.name);
3669
- &nbsp;
3670
- <span class="cstat-no" title="statement not covered" > list.splice(index, 0, this);</span>
3671
- <span class="cstat-no" title="statement not covered" > this.create({</span>
3672
- index,
3673
- parentNode,
3674
- parentKey,
3675
- });
3676
- }
3677
- }
3678
- (<span class="cstat-no" title="statement not covered" >sourceNode as any).app.emit('collect:end');</span>
3679
- }
3680
- &nbsp;
3681
- // 其他节点替换本nasl节点
3682
- <span class="fstat-no" title="function not covered" > replaceNode(</span>newNode: any) {
3683
- const oldNode: any = <span class="cstat-no" title="statement not covered" >this;</span>
3684
- const { parentNode, parentKey, offsetX, offsetY, app } = <span class="cstat-no" title="statement not covered" >oldNode;</span>
3685
- const { logic } = <span class="cstat-no" title="statement not covered" >oldNode;</span>
3686
- <span class="cstat-no" title="statement not covered" > if (!Array.isArray(parentNode[parentKey])) {</span>
3687
- /**
3688
- * match切换分支,需要调用setExpressionWitchCase,补全分支的信息
3689
- */
3690
- <span class="cstat-no" title="statement not covered" > if (parentNode.concept === 'Match' &amp;&amp; parentKey === 'expression') {</span>
3691
- <span class="cstat-no" title="statement not covered" > parentNode.setExpressionWitchCase(newNode);</span>
3692
- <span class="cstat-no" title="statement not covered" > return;</span>
3693
- }
3694
- <span class="cstat-no" title="statement not covered" > parentNode.update({</span>
3695
- [parentKey]: newNode,
3696
- });
3697
- } else {
3698
- <span class="cstat-no" title="statement not covered" > app.emit('collect:start', {</span>
3699
- actionMsg: '删除属性变量',
3700
- });
3701
- <span class="cstat-no" title="statement not covered" > if (parentNode.concept === 'Logic') {</span>
3702
- <span class="cstat-no" title="statement not covered" > if (parentKey === 'body') {</span>
3703
- 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>
3704
- <span class="cstat-no" title="statement not covered" > logic.insertItemInBodyAt(newNode, expIndex);</span>
3705
- } else {
3706
- 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>
3707
- <span class="cstat-no" title="statement not covered" > Object.assign(newNode, { offsetX, offsetY });</span>
3708
- <span class="cstat-no" title="statement not covered" > logic.insertItemInPlaygroundAt(newNode, expIndex);</span>
3709
- }
3710
- } else {
3711
- 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>
3712
- const firstUpperText = <span class="cstat-no" title="statement not covered" >parentKey[0].toUpperCase() + parentKey.slice(1, parentKey.length);</span>
3713
- <span class="cstat-no" title="statement not covered" > Object.assign(newNode, { offsetX, offsetY });</span>
3714
- <span class="cstat-no" title="statement not covered" > if (parentNode.concept === 'MatchCase') {</span>
3715
- <span class="cstat-no" title="statement not covered" > parentKey === 'body' ? parentNode.insertItemInBodyAt(newNode, expIndex) : parentNode.insertLogicItemInPatternsAt(newNode, expIndex);</span>
3716
- } 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>
3717
- else <span class="cstat-no" title="statement not covered" >parentNode.insertItemAt(newNode, expIndex);</span>
3718
- }
3719
- <span class="cstat-no" title="statement not covered" > oldNode.delete();</span>
3720
- <span class="cstat-no" title="statement not covered" > app.emit('collect:end');</span>
3721
- }
3722
- }
3723
- &nbsp;
3724
- /**
3725
- * 获取添加时的默认选项
3726
- * @returns
3727
- */
3728
- public static getDefaultOptions(): any {
3729
- return {};
3730
- }
3731
- &nbsp;
3732
- public traverseChildren(cb: (ele: SynatxNode) =&gt; void): void {
3733
- function traverse(node: SynatxNode) {
3734
- cb(node);
3735
- &nbsp;
3736
- const propertyMap = getConceptPropertyMap(node?.concept);
3737
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!propertyMap) <span class="cstat-no" title="statement not covered" >return;</span>
3738
- &nbsp;
3739
- for (const property of propertyMap.keys()) {
3740
- const child = node[property as keyof BaseNode];
3741
- if (!child) continue;
3742
- else if (Array.isArray(child)) child.forEach((node: SynatxNode) =&gt; traverse(node));
3743
- else traverse(child);
3744
- }
3745
- }
3746
- &nbsp;
3747
- traverse(this as unknown as SynatxNode);
3748
- }
3749
- &nbsp;
3750
- /**
3751
- * 获取当前节点在nasl标注节点上的节点
3752
- */
3753
- public <span class="fstat-no" title="function not covered" >getCurrentAnnotatedJSON(</span>) {
3754
- <span class="cstat-no" title="statement not covered" > return this.__TypeAnnotation;</span>
3755
- }
3756
- &nbsp;
3757
- /**
3758
- * 获取
3759
- * 当前this上下文 的Source 和 父级文件级别的节点
3760
- */
3761
- public <span class="fstat-no" title="function not covered" >getCurrentSource(</span>) {
3762
- const node = <span class="cstat-no" title="statement not covered" >this as BaseNode;</span>
3763
- let { sourceMap } = <span class="cstat-no" title="statement not covered" >node;</span>
3764
- let fileNode = <span class="cstat-no" title="statement not covered" >node;</span>
3765
- // 如果没有sourceMap,就继续向上找 ,或者到module结束
3766
- // 如果 节点找到 app 或者module 停止 或者entity找到DataSource为止
3767
- // 如果当前节点是view就不要向上查找了
3768
- <span class="cstat-no" title="statement not covered" > while (!sourceMap &amp;&amp; fileNode &amp;&amp; !(fileNode.parentNode.concept === 'App')) {</span>
3769
- <span class="cstat-no" title="statement not covered" > fileNode = fileNode.parentNode;</span>
3770
- <span class="cstat-no" title="statement not covered" > sourceMap = fileNode?.sourceMap;</span>
3771
- }
3772
- const currentSource = <span class="cstat-no" title="statement not covered" >sourceMap &amp;&amp; sourceMap.get(node);</span>
3773
- <span class="cstat-no" title="statement not covered" > if (currentSource) {</span>
3774
- <span class="cstat-no" title="statement not covered" > return { currentSource, fileNode };</span>
3775
- }
3776
- <span class="cstat-no" title="statement not covered" > return { fileNode };</span>
3777
- }
3778
- &nbsp;
3779
- /**
3780
- * 获取
3781
- * 当前this上下文 的Source 和 父级文件级别的节点
3782
- */
3783
- public <span class="fstat-no" title="function not covered" >getFileConceptNode(</span>concept: string) {
3784
- const node = <span class="cstat-no" title="statement not covered" >this as BaseNode;</span>
3785
- let { sourceMap } = <span class="cstat-no" title="statement not covered" >node;</span>
3786
- let fileNode = <span class="cstat-no" title="statement not covered" >node;</span>
3787
- // 如果没有sourceMap,就继续向上找 ,或者到module结束
3788
- // 如果 节点找到 app 或者module 停止 或者entity找到DataSource为止
3789
- // 如果当前节点是view就不要向上查找了
3790
- <span class="cstat-no" title="statement not covered" > while (!sourceMap &amp;&amp; fileNode &amp;&amp; !(fileNode.parentNode.concept === 'App')) {</span>
3791
- <span class="cstat-no" title="statement not covered" > fileNode = fileNode.parentNode;</span>
3792
- <span class="cstat-no" title="statement not covered" > sourceMap = fileNode?.sourceMap;</span>
3793
- }
3794
- const arr: any = <span class="cstat-no" title="statement not covered" >[];</span>
3795
- <span class="cstat-no" title="statement not covered" > sourceMap &amp;&amp;</span>
3796
- sourceMap.forEach(<span class="fstat-no" title="function not covered" >(v</span>alue, key) =&gt; {
3797
- <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>
3798
- });
3799
- <span class="cstat-no" title="statement not covered" > return arr;</span>
3800
- }
3801
- &nbsp;
3802
- get isTreeLeaf() {
3803
- <span class="missing-if-branch" title="if path not taken" >I</span>if (
3804
- this.concept === 'EntityProperty' ||
3805
- this.concept === 'InterfaceParam' ||
3806
- this.concept === 'Param' ||
3807
- this.concept === 'Return' ||
3808
- this.concept === 'StructureProperty' ||
3809
- this.concept === 'Variable' ||
3810
- this.concept === 'FrontendVariable'
3811
- ) {
3812
- <span class="cstat-no" title="statement not covered" > if ((this as any).typeAnnotation || (this.__TypeAnnotation &amp;&amp; this.parentKey === 'virtualParams')) {</span>
3813
- <span class="cstat-no" title="statement not covered" > return !this.hasChildren;</span>
3814
- }
3815
- <span class="cstat-no" title="statement not covered" > return true;</span>
3816
- }
3817
- return false;
3818
- }
3819
- &nbsp;
3820
- get hasChildren() {
3821
- const typeAnnotation = (this as any).typeAnnotation || this.__TypeAnnotation;
3822
- <span class="missing-if-branch" title="if path not taken" >I</span>if (typeAnnotation) {
3823
- const { typeKind, typeNamespace, typeName, properties } = <span class="cstat-no" title="statement not covered" >typeAnnotation;</span>
3824
- <span class="cstat-no" title="statement not covered" > if (typeKind === 'reference' || typeKind === 'generic') {</span>
3825
- <span class="cstat-no" title="statement not covered" > if (typeNamespace.endsWith('.enums')) <span class="cstat-no" title="statement not covered" >return null;</span></span>
3826
- <span class="cstat-no" title="statement not covered" > return [{}];</span>
3827
- }
3828
- <span class="cstat-no" title="statement not covered" > if (typeNamespace === 'nasl.core' &amp;&amp; ['String', 'Text', 'Email'].includes(typeName)) {</span>
3829
- <span class="cstat-no" title="statement not covered" > return [{}];</span>
3830
- }
3831
- <span class="cstat-no" title="statement not covered" > if (typeKind === 'anonymousStructure' &amp;&amp; properties?.length) {</span>
3832
- <span class="cstat-no" title="statement not covered" > return [{}];</span>
3833
- }
3834
- <span class="cstat-no" title="statement not covered" > return null;</span>
3835
- }
3836
- return null;
3837
- }
3838
- &nbsp;
3839
- /**
3840
- * 使用新的 concept 在当前节点生成新的数据
3841
- */
3842
- <span class="fstat-no" title="function not covered" > changeConceptNode(</span>concept: SynatxNodeConcept) {
3843
- <span class="cstat-no" title="statement not covered" > return new Proxy(this, {</span>
3844
- <span class="fstat-no" title="function not covered" > get(</span>target, p: keyof BaseNode, receiver) {
3845
- <span class="cstat-no" title="statement not covered" > if (p === 'concept') {</span>
3846
- <span class="cstat-no" title="statement not covered" > return concept;</span>
3847
- }
3848
- &nbsp;
3849
- <span class="cstat-no" title="statement not covered" > return target[p];</span>
3850
- },
3851
- })
3852
- }
3853
- &nbsp;
3854
- /** 收集所有节点 */
3855
- collectNodes(): SynatxNode[];
3856
- /** 收集特定类型的子节点 */
3857
- collectNodes(concept: SynatxNodeConcept): SynatxNode[];
3858
- /** 收集断言返回`true`的子节点 */
3859
- collectNodes(pre: (node?: SynatxNode) =&gt; boolean): SynatxNode[];
3860
- <span class="fstat-no" title="function not covered" > collectNodes(</span>input?: SynatxNodeConcept | ((node?: SynatxNode) =&gt; boolean)) {
3861
- const pre =
3862
- <span class="cstat-no" title="statement not covered" > typeof input === 'undefined'</span>
3863
- ? <span class="fstat-no" title="function not covered" >(n</span>ode: SynatxNode) =&gt; <span class="cstat-no" title="statement not covered" >node &amp;&amp; typeof node.concept === 'string'</span>
3864
- : typeof input === 'string'
3865
- ? <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>
3866
- : input;
3867
- const nodes: SynatxNode[] = <span class="cstat-no" title="statement not covered" >[];</span>
3868
- const self = <span class="cstat-no" title="statement not covered" >this as unknown as SynatxNode;</span>
3869
- &nbsp;
3870
- <span class="cstat-no" title="statement not covered" > if (pre(self)) {</span>
3871
- <span class="cstat-no" title="statement not covered" > nodes.push(self);</span>
3872
- }
3873
- &nbsp;
3874
- <span class="cstat-no" title="statement not covered" > this.traverseChildren(<span class="fstat-no" title="function not covered" >(c</span>urrent) =&gt; {</span>
3875
- <span class="cstat-no" title="statement not covered" > if (pre(current)) {</span>
3876
- <span class="cstat-no" title="statement not covered" > nodes.push(current);</span>
3877
- }
3878
- });
3879
- &nbsp;
3880
- <span class="cstat-no" title="statement not covered" > return nodes;</span>
3881
- }
3882
- }
3883
- &nbsp;
3884
- export default BaseNode;
3885
- &nbsp;</pre></td></tr></table></pre>
3886
-
3887
- <div class='push'></div><!-- for sticky footer -->
3888
- </div><!-- /wrapper -->
3889
- <div class='footer quiet pad2 space-top1 center small'>
3890
- Code coverage generated by
3891
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
3892
- at 2023-10-31T12:16:02.007Z
3893
- </div>
3894
- <script src="../../prettify.js"></script>
3895
- <script>
3896
- window.onload = function () {
3897
- prettyPrint();
3898
- };
3899
- </script>
3900
- <script src="../../sorter.js"></script>
3901
- <script src="../../block-navigation.js"></script>
3902
- </body>
3903
- </html>
3904
-