@lcap/nasl 3.3.7-beta.4 → 3.3.7-beta.6

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 (336) hide show
  1. package/.nyc_output/1319679b-f102-43d6-a642-6d9e055d1730.json +1 -0
  2. package/.nyc_output/processinfo/1319679b-f102-43d6-a642-6d9e055d1730.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -0
  4. package/coverage/index.html +121 -121
  5. package/coverage/src/automate/engine/index.html +1 -1
  6. package/coverage/src/automate/engine/utils.js.html +1 -1
  7. package/coverage/src/bak/index.html +19 -19
  8. package/coverage/src/bak/translator.js.html +293 -59
  9. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +1 -1
  10. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +1 -1
  11. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +1 -1
  12. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +1 -1
  13. package/coverage/src/breakpoint/generator/index.html +1 -1
  14. package/coverage/src/breakpoint/generator/index.ts.html +1 -1
  15. package/coverage/src/breakpoint/index.html +1 -1
  16. package/coverage/src/breakpoint/index.ts.html +1 -1
  17. package/coverage/src/breakpoint/shared/constants.ts.html +5 -2
  18. package/coverage/src/breakpoint/shared/index.html +12 -12
  19. package/coverage/src/breakpoint/shared/index.ts.html +1 -1
  20. package/coverage/src/breakpoint/shared/operations.ts.html +3 -3
  21. package/coverage/src/breakpoint/shared/socket.ts.html +1 -1
  22. package/coverage/src/breakpoint/shared/utils.ts.html +29 -80
  23. package/coverage/src/breakpoint/store/core.ts.html +4 -4
  24. package/coverage/src/breakpoint/store/dock.ts.html +1 -1
  25. package/coverage/src/breakpoint/store/index.html +1 -1
  26. package/coverage/src/breakpoint/store/index.ts.html +1 -1
  27. package/coverage/src/common/BaseNode.ts.html +155 -191
  28. package/coverage/src/common/Command.ts.html +9 -6
  29. package/coverage/src/common/EventEmitter.ts.html +14 -29
  30. package/coverage/src/common/Messager.ts.html +1 -1
  31. package/coverage/src/common/asyncFuncMap.ts.html +1 -1
  32. package/coverage/src/common/index.html +32 -32
  33. package/coverage/src/common/index.ts.html +1 -1
  34. package/coverage/src/common/utils.ts.html +1 -1
  35. package/coverage/src/concepts/Abort__.ts.html +2 -2
  36. package/coverage/src/concepts/AbstractInterface__.ts.html +2 -2
  37. package/coverage/src/concepts/Anchor__.ts.html +3 -3
  38. package/coverage/src/concepts/AnonymousFunction__.ts.html +82 -28
  39. package/coverage/src/concepts/App__.ts.html +481 -184
  40. package/coverage/src/concepts/Argument__.ts.html +3 -3
  41. package/coverage/src/concepts/Assignee__.ts.html +3 -3
  42. package/coverage/src/concepts/AssignmentLine__.ts.html +2 -2
  43. package/coverage/src/concepts/Assignment__.ts.html +3 -3
  44. package/coverage/src/concepts/Attribute__.ts.html +2 -2
  45. package/coverage/src/concepts/AuthInterface__.ts.html +2 -2
  46. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +3 -3
  47. package/coverage/src/concepts/AuthLogic__.ts.html +2 -2
  48. package/coverage/src/concepts/BackendVariable__.ts.html +35 -11
  49. package/coverage/src/concepts/Backend__.ts.html +3 -3
  50. package/coverage/src/concepts/BatchAssignment__.ts.html +3 -3
  51. package/coverage/src/concepts/BinaryExpression__.ts.html +2 -2
  52. package/coverage/src/concepts/BindAttribute__.ts.html +34 -16
  53. package/coverage/src/concepts/BindDirective__.ts.html +65 -20
  54. package/coverage/src/concepts/BindEvent__.ts.html +108 -24
  55. package/coverage/src/concepts/BindStyle__.ts.html +3 -3
  56. package/coverage/src/concepts/Block__.ts.html +3 -3
  57. package/coverage/src/concepts/BooleanLiteral__.ts.html +2 -2
  58. package/coverage/src/concepts/BusinessComponent__.ts.html +8164 -0
  59. package/coverage/src/concepts/BusinessLogic__.ts.html +1213 -0
  60. package/coverage/src/concepts/CallAuthInterface__.ts.html +3 -3
  61. package/coverage/src/concepts/CallConnector__.ts.html +2 -2
  62. package/coverage/src/concepts/CallEvent__.ts.html +1138 -0
  63. package/coverage/src/concepts/CallFunction__.ts.html +35 -41
  64. package/coverage/src/concepts/CallInterface__.ts.html +3 -3
  65. package/coverage/src/concepts/CallLogic__.ts.html +68 -26
  66. package/coverage/src/concepts/CallQueryComponent__.ts.html +3 -3
  67. package/coverage/src/concepts/Comment__.ts.html +2 -2
  68. package/coverage/src/concepts/CompletionProperty__.ts.html +2 -2
  69. package/coverage/src/concepts/ConfigGroup__.ts.html +3 -3
  70. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +2 -2
  71. package/coverage/src/concepts/ConfigProperty__.ts.html +3 -3
  72. package/coverage/src/concepts/Configuration__.ts.html +3 -3
  73. package/coverage/src/concepts/Connection__.ts.html +3 -3
  74. package/coverage/src/concepts/ConnectorTrigger__.ts.html +2 -2
  75. package/coverage/src/concepts/Connector__.ts.html +3 -3
  76. package/coverage/src/concepts/Constant__.ts.html +3 -3
  77. package/coverage/src/concepts/CountersignPolicy__.ts.html +2 -2
  78. package/coverage/src/concepts/DataSource__.ts.html +3 -3
  79. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +2 -2
  80. package/coverage/src/concepts/DefaultValue__.ts.html +3 -3
  81. package/coverage/src/concepts/Destination__.ts.html +18 -12
  82. package/coverage/src/concepts/End__.ts.html +8 -5
  83. package/coverage/src/concepts/EntityIndex__.ts.html +2 -2
  84. package/coverage/src/concepts/EntityProperty__.ts.html +3 -3
  85. package/coverage/src/concepts/Entity__.ts.html +10 -4
  86. package/coverage/src/concepts/EnumItem__.ts.html +2 -2
  87. package/coverage/src/concepts/Enum__.ts.html +3 -3
  88. package/coverage/src/concepts/Event__.ts.html +222 -12
  89. package/coverage/src/concepts/ExternalDestination__.ts.html +3 -3
  90. package/coverage/src/concepts/ForEachStatement__.ts.html +3 -3
  91. package/coverage/src/concepts/FrontendLibrary__.ts.html +3 -3
  92. package/coverage/src/concepts/FrontendType__.ts.html +2842 -0
  93. package/coverage/src/concepts/FrontendVariable__.ts.html +2 -2
  94. package/coverage/src/concepts/Frontend__.ts.html +16 -760
  95. package/coverage/src/concepts/Function__.ts.html +3 -3
  96. package/coverage/src/concepts/I18nInfo__.ts.html +2 -2
  97. package/coverage/src/concepts/Identifier__.ts.html +72 -24
  98. package/coverage/src/concepts/IfStatement__.ts.html +3 -3
  99. package/coverage/src/concepts/ImportedInterface__.ts.html +2 -2
  100. package/coverage/src/concepts/Integration__.ts.html +3 -3
  101. package/coverage/src/concepts/InterfaceParam__.ts.html +3 -3
  102. package/coverage/src/concepts/Interface__.ts.html +3 -3
  103. package/coverage/src/concepts/JSBlock__.ts.html +2 -2
  104. package/coverage/src/concepts/JavaLogic__.ts.html +2 -2
  105. package/coverage/src/concepts/LogicItem__.ts.html +6 -3
  106. package/coverage/src/concepts/Logic__.ts.html +70 -31
  107. package/coverage/src/concepts/MatchCase__.ts.html +3 -3
  108. package/coverage/src/concepts/Match__.ts.html +3 -3
  109. package/coverage/src/concepts/MemberExpression__.ts.html +3 -3
  110. package/coverage/src/concepts/MetadataType__.ts.html +3 -3
  111. package/coverage/src/concepts/MicroApp__.ts.html +2 -2
  112. package/coverage/src/concepts/Module__.ts.html +20 -20
  113. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +3 -3
  114. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +3 -3
  115. package/coverage/src/concepts/MultiApprovalPolicy__.ts.html +2 -2
  116. package/coverage/src/concepts/Namespace__.ts.html +3 -3
  117. package/coverage/src/concepts/NewComposite__.ts.html +7 -13
  118. package/coverage/src/concepts/NewList__.ts.html +3 -3
  119. package/coverage/src/concepts/NewMap__.ts.html +3 -3
  120. package/coverage/src/concepts/New__.ts.html +2 -2
  121. package/coverage/src/concepts/NullLiteral__.ts.html +2 -2
  122. package/coverage/src/concepts/NumericLiteral__.ts.html +2 -2
  123. package/coverage/src/concepts/OqlQueryComponent__.ts.html +2 -2
  124. package/coverage/src/concepts/OverriddenLogic__.ts.html +3 -3
  125. package/coverage/src/concepts/ParamWithGroup__.ts.html +388 -0
  126. package/coverage/src/concepts/Param__.ts.html +36 -12
  127. package/coverage/src/concepts/Point__.ts.html +2 -2
  128. package/coverage/src/concepts/ProcessComponent__.ts.html +3 -3
  129. package/coverage/src/concepts/ProcessElement__.ts.html +29 -8
  130. package/coverage/src/concepts/ProcessOutcome__.ts.html +2 -2
  131. package/coverage/src/concepts/ProcessOutcomes__.ts.html +2 -2
  132. package/coverage/src/concepts/Process__.ts.html +3 -3
  133. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +2 -2
  134. package/coverage/src/concepts/QueryFieldExpression__.ts.html +2 -2
  135. package/coverage/src/concepts/QueryFromExpression__.ts.html +3 -3
  136. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +2 -2
  137. package/coverage/src/concepts/QueryJoinExpression__.ts.html +3 -3
  138. package/coverage/src/concepts/QueryLimitExpression__.ts.html +2 -2
  139. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +2 -2
  140. package/coverage/src/concepts/QuerySelectExpression__.ts.html +3 -3
  141. package/coverage/src/concepts/Rect__.ts.html +2 -2
  142. package/coverage/src/concepts/Return__.ts.html +35 -11
  143. package/coverage/src/concepts/Role__.ts.html +2 -2
  144. package/coverage/src/concepts/SelectMembers__.ts.html +3 -3
  145. package/coverage/src/concepts/SequentialPolicy__.ts.html +2 -2
  146. package/coverage/src/concepts/Slot__.ts.html +2 -2
  147. package/coverage/src/concepts/SqlQueryComponent__.ts.html +2 -2
  148. package/coverage/src/concepts/Start__.ts.html +2 -2
  149. package/coverage/src/concepts/StaticString__.ts.html +2 -2
  150. package/coverage/src/concepts/StringInterpolation__.ts.html +3 -3
  151. package/coverage/src/concepts/StringLiteral__.ts.html +2 -2
  152. package/coverage/src/concepts/StructureProperty__.ts.html +2 -2
  153. package/coverage/src/concepts/Structure__.ts.html +3 -3
  154. package/coverage/src/concepts/SwitchCase__.ts.html +3 -3
  155. package/coverage/src/concepts/SwitchStatement__.ts.html +3 -3
  156. package/coverage/src/concepts/Theme__.ts.html +2 -2
  157. package/coverage/src/concepts/Transactional__.ts.html +2 -2
  158. package/coverage/src/concepts/TriggerEvent__.ts.html +2 -2
  159. package/coverage/src/concepts/TriggerLauncher__.ts.html +2 -2
  160. package/coverage/src/concepts/TypeAnnotation__.ts.html +14 -14
  161. package/coverage/src/concepts/TypeParam__.ts.html +2 -2
  162. package/coverage/src/concepts/UnaryExpression__.ts.html +2 -2
  163. package/coverage/src/concepts/Unparsed__.ts.html +2 -2
  164. package/coverage/src/concepts/UseComponent__.ts.html +2 -2
  165. package/coverage/src/concepts/ValidationRule__.ts.html +21 -6
  166. package/coverage/src/concepts/Variable__.ts.html +42 -12
  167. package/coverage/src/concepts/ViewBlock__.ts.html +2 -2
  168. package/coverage/src/concepts/ViewComponent__.ts.html +3 -3
  169. package/coverage/src/concepts/ViewElement__.ts.html +522 -48
  170. package/coverage/src/concepts/View__.ts.html +54 -45
  171. package/coverage/src/concepts/WhileStatement__.ts.html +3 -3
  172. package/coverage/src/concepts/basics/constants.ts.html +1 -1
  173. package/coverage/src/concepts/basics/index.html +1 -1
  174. package/coverage/src/concepts/basics/stdlib/index.html +1 -1
  175. package/coverage/src/concepts/basics/stdlib/index.ts.html +1 -1
  176. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +1 -1
  177. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +1 -1
  178. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +1 -1
  179. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +1 -1
  180. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +1 -1
  181. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +1 -1
  182. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +1 -1
  183. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +1 -1
  184. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +1 -1
  185. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +1 -1
  186. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1 -1
  187. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +1 -1
  188. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +1 -1
  189. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1 -1
  190. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +2 -2
  191. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +1 -1
  192. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +1 -1
  193. package/coverage/src/concepts/basics/types/index.html +1 -1
  194. package/coverage/src/concepts/basics/types/index.ts.html +1 -1
  195. package/coverage/src/concepts/index.html +247 -172
  196. package/coverage/src/concepts/index.ts.html +2 -2
  197. package/coverage/src/concepts/index__.ts.html +19 -4
  198. package/coverage/src/concepts/utils/asserts.ts.html +1111 -22
  199. package/coverage/src/concepts/utils/index.html +18 -18
  200. package/coverage/src/concepts/utils/quick-info.ts.html +1 -1
  201. package/coverage/src/concepts/utils/types.ts.html +86 -2
  202. package/coverage/src/config.ts.html +2 -2
  203. package/coverage/src/decorators/index.html +18 -18
  204. package/coverage/src/decorators/index.ts.html +42 -57
  205. package/coverage/src/decorators/promise.ts.html +1 -1
  206. package/coverage/src/eventBus.ts.html +1 -1
  207. package/coverage/src/generator/compileComponent.ts.html +1 -1
  208. package/coverage/src/generator/genBundleFiles.ts.html +89 -35
  209. package/coverage/src/generator/genHash.ts.html +2 -2
  210. package/coverage/src/generator/genMetaData.ts.html +2 -2
  211. package/coverage/src/generator/genReleaseBody.ts.html +46 -13
  212. package/coverage/src/generator/icestark.ts.html +1 -1
  213. package/coverage/src/generator/index.html +30 -30
  214. package/coverage/src/generator/index.ts.html +1 -1
  215. package/coverage/src/generator/microApp.ts.html +1 -1
  216. package/coverage/src/generator/permission.ts.html +16 -10
  217. package/coverage/src/generator/qiankun.ts.html +1 -1
  218. package/coverage/src/generator/styleReplacer.ts.html +1 -1
  219. package/coverage/src/index.html +1 -1
  220. package/coverage/src/index.ts.html +2 -2
  221. package/coverage/src/manager/diagnostic.ts.html +1 -1
  222. package/coverage/src/manager/index.html +1 -1
  223. package/coverage/src/manager/stepRecorder.ts.html +1 -1
  224. package/coverage/src/natural/genNaturalTS.ts.html +1 -1
  225. package/coverage/src/natural/index.html +1 -1
  226. package/coverage/src/natural/index.ts.html +1 -1
  227. package/coverage/src/natural/naslStdlibMap.ts.html +1 -1
  228. package/coverage/src/natural/transformTSCode.ts.html +3 -3
  229. package/coverage/src/sentry/index.html +1 -1
  230. package/coverage/src/sentry/index.ts.html +25 -25
  231. package/coverage/src/server/createUiTs.ts.html +1 -1
  232. package/coverage/src/server/entity2LogicNamespace.ts.html +1 -1
  233. package/coverage/src/server/event.js.html +1 -1
  234. package/coverage/src/server/extendBaseNode.ts.html +99 -30
  235. package/coverage/src/server/formatTsUtils.ts.html +1 -1
  236. package/coverage/src/server/getConnector.ts.html +1 -1
  237. package/coverage/src/server/getExtensionModules.ts.html +1 -1
  238. package/coverage/src/server/getFunctions.ts.html +1 -1
  239. package/coverage/src/server/getInterfaces.ts.html +1 -1
  240. package/coverage/src/server/getLogging.ts.html +1 -1
  241. package/coverage/src/server/getLogics.ts.html +180 -66
  242. package/coverage/src/server/getMemberIdentifier.ts.html +27 -9
  243. package/coverage/src/server/getProcessComponents.ts.html +1 -1
  244. package/coverage/src/server/getProcesses.ts.html +6 -6
  245. package/coverage/src/server/getValidates.ts.html +1 -1
  246. package/coverage/src/server/index.html +44 -44
  247. package/coverage/src/server/index.ts.html +1 -1
  248. package/coverage/src/server/naslServer.ts.html +99 -30
  249. package/coverage/src/server/naslStdlibMap.ts.html +1 -1
  250. package/coverage/src/server/process2LogicNamespace.ts.html +1 -1
  251. package/coverage/src/server/translator.ts.html +23 -5
  252. package/coverage/src/service/creator/add.configs.js.html +1 -1
  253. package/coverage/src/service/creator/errHandles.js.html +1 -1
  254. package/coverage/src/service/creator/index.html +1 -1
  255. package/coverage/src/service/creator/index.js.html +2 -2
  256. package/coverage/src/service/datasource/api.js.html +1 -1
  257. package/coverage/src/service/datasource/index.html +1 -1
  258. package/coverage/src/service/datasource/index.js.html +1 -1
  259. package/coverage/src/service/logic/api.js.html +1 -1
  260. package/coverage/src/service/logic/index.html +1 -1
  261. package/coverage/src/service/logic/index.js.html +1 -1
  262. package/coverage/src/service/storage/api.js.html +1 -1
  263. package/coverage/src/service/storage/index.html +17 -17
  264. package/coverage/src/service/storage/index.ts.html +2 -2
  265. package/coverage/src/service/storage/init.ts.html +100 -13
  266. package/coverage/src/service/storage/jsoner.ts.html +1 -1
  267. package/coverage/src/service/storage/map.ts.html +4 -4
  268. package/coverage/src/service/storage/service.ts.html +1 -1
  269. package/coverage/src/service/storage/storagePoint.ts.html +1 -1
  270. package/coverage/src/templator/genCallComponentLogic.ts.html +1 -1
  271. package/coverage/src/templator/genCreateBlock.ts.html +8 -8
  272. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +18 -18
  273. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +2477 -305
  274. package/coverage/src/templator/genEditTableBlock.ts.html +2 -2
  275. package/coverage/src/templator/genEnumSelectBlock.ts.html +1 -1
  276. package/coverage/src/templator/genGetBlock.ts.html +16 -13
  277. package/coverage/src/templator/genGridViewBlock.ts.html +14 -14
  278. package/coverage/src/templator/genListViewBlock.ts.html +6 -6
  279. package/coverage/src/templator/genQueryComponent.ts.html +2 -2
  280. package/coverage/src/templator/genSelectBlock.ts.html +5 -5
  281. package/coverage/src/templator/genTableBlock.ts.html +397 -22
  282. package/coverage/src/templator/genUpdateBlock.ts.html +20 -17
  283. package/coverage/src/templator/index.html +43 -43
  284. package/coverage/src/templator/index.ts.html +2 -2
  285. package/coverage/src/templator/utils.ts.html +3 -3
  286. package/coverage/src/translator/constant.ts.html +1 -1
  287. package/coverage/src/translator/index.html +19 -19
  288. package/coverage/src/translator/index.ts.html +2 -2
  289. package/coverage/src/translator/types.ts.html +1 -1
  290. package/coverage/src/translator/utils.ts.html +110 -17
  291. package/coverage/src/utils/cookie.ts.html +1 -1
  292. package/coverage/src/utils/env.ts.html +2 -2
  293. package/coverage/src/utils/i18nInfo.ts.html +1 -1
  294. package/coverage/src/utils/index.html +19 -19
  295. package/coverage/src/utils/index.ts.html +641 -11
  296. package/coverage/src/utils/logger.ts.html +1 -1
  297. package/coverage/src/utils/sortTsString.ts.html +1 -1
  298. package/coverage/src/utils/string.ts.html +1 -1
  299. package/coverage/src/utils/time-slicing/constant.ts.html +1 -1
  300. package/coverage/src/utils/time-slicing/controller.ts.html +1 -1
  301. package/coverage/src/utils/time-slicing/index.html +1 -1
  302. package/coverage/src/utils/time-slicing/index.ts.html +1 -1
  303. package/coverage/src/utils/time-slicing/page-state.ts.html +1 -1
  304. package/coverage/src/utils/time-slicing/performance.ts.html +1 -1
  305. package/coverage/src/utils/time-slicing/runner.ts.html +1 -1
  306. package/coverage/src/utils/time-slicing/tool.ts.html +1 -1
  307. package/coverage/src/utils/time-slicing/utils.ts.html +1 -1
  308. package/coverage/src/utils/time-slicing/wrapper.ts.html +1 -1
  309. package/coverage/src/utils/traverse.ts.html +1 -1
  310. package/coverage/src/utils/types.ts.html +1 -1
  311. package/coverage/src/utils/window.ts.html +1 -1
  312. package/out/concepts/Destination__.d.ts +1 -1
  313. package/out/concepts/Destination__.js +2 -2
  314. package/out/concepts/Destination__.js.map +1 -1
  315. package/out/concepts/ProcessElement__.js +9 -1
  316. package/out/concepts/ProcessElement__.js.map +1 -1
  317. package/out/concepts/ViewElement__.js +1 -1
  318. package/out/concepts/ViewElement__.js.map +1 -1
  319. package/out/generator/genReleaseBody.d.ts +1 -0
  320. package/out/generator/genReleaseBody.js +6 -5
  321. package/out/generator/genReleaseBody.js.map +1 -1
  322. package/out/server/getProcesses.js +3 -3
  323. package/out/server/getProcesses.js.map +1 -1
  324. package/out/server/naslServer.d.ts +1 -1
  325. package/out/server/naslServer.js +8 -8
  326. package/out/server/naslServer.js.map +1 -1
  327. package/out/service/storage/init.js +3 -0
  328. package/out/service/storage/init.js.map +1 -1
  329. package/package.json +1 -1
  330. package/src/concepts/Destination__.ts +2 -2
  331. package/src/concepts/ProcessElement__.ts +8 -1
  332. package/src/concepts/ViewElement__.ts +1 -1
  333. package/src/generator/genReleaseBody.ts +8 -5
  334. package/src/server/getProcesses.ts +3 -3
  335. package/src/server/naslServer.ts +9 -8
  336. package/src/service/storage/init.ts +4 -0
@@ -0,0 +1,2842 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/concepts/FrontendType__.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/concepts</a> FrontendType__.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">11.11% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>26/234</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">4.13% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>5/121</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">5.88% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>3/51</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">8.71% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>19/218</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></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1289x</span>
986
+ <span class="cline-any cline-yes">1x</span>
987
+ <span class="cline-any cline-neutral">&nbsp;</span>
988
+ <span class="cline-any cline-neutral">&nbsp;</span>
989
+ <span class="cline-any cline-neutral">&nbsp;</span>
990
+ <span class="cline-any cline-neutral">&nbsp;</span>
991
+ <span class="cline-any cline-neutral">&nbsp;</span>
992
+ <span class="cline-any cline-neutral">&nbsp;</span>
993
+ <span class="cline-any cline-neutral">&nbsp;</span>
994
+ <span class="cline-any cline-neutral">&nbsp;</span>
995
+ <span class="cline-any cline-yes">1x</span>
996
+ <span class="cline-any cline-neutral">&nbsp;</span>
997
+ <span class="cline-any cline-yes">1x</span>
998
+ <span class="cline-any cline-neutral">&nbsp;</span>
999
+ <span class="cline-any cline-yes">1x</span>
1000
+ <span class="cline-any cline-neutral">&nbsp;</span>
1001
+ <span class="cline-any cline-yes">1x</span>
1002
+ <span class="cline-any cline-neutral">&nbsp;</span>
1003
+ <span class="cline-any cline-neutral">&nbsp;</span>
1004
+ <span class="cline-any cline-neutral">&nbsp;</span>
1005
+ <span class="cline-any cline-neutral">&nbsp;</span>
1006
+ <span class="cline-any cline-neutral">&nbsp;</span>
1007
+ <span class="cline-any cline-neutral">&nbsp;</span>
1008
+ <span class="cline-any cline-neutral">&nbsp;</span>
1009
+ <span class="cline-any cline-neutral">&nbsp;</span>
1010
+ <span class="cline-any cline-yes">1x</span>
1011
+ <span class="cline-any cline-neutral">&nbsp;</span>
1012
+ <span class="cline-any cline-neutral">&nbsp;</span>
1013
+ <span class="cline-any cline-neutral">&nbsp;</span>
1014
+ <span class="cline-any cline-neutral">&nbsp;</span>
1015
+ <span class="cline-any cline-neutral">&nbsp;</span>
1016
+ <span class="cline-any cline-neutral">&nbsp;</span>
1017
+ <span class="cline-any cline-neutral">&nbsp;</span>
1018
+ <span class="cline-any cline-neutral">&nbsp;</span>
1019
+ <span class="cline-any cline-neutral">&nbsp;</span>
1020
+ <span class="cline-any cline-neutral">&nbsp;</span>
1021
+ <span class="cline-any cline-neutral">&nbsp;</span>
1022
+ <span class="cline-any cline-yes">1x</span>
1023
+ <span class="cline-any cline-neutral">&nbsp;</span>
1024
+ <span class="cline-any cline-neutral">&nbsp;</span>
1025
+ <span class="cline-any cline-neutral">&nbsp;</span>
1026
+ <span class="cline-any cline-neutral">&nbsp;</span>
1027
+ <span class="cline-any cline-neutral">&nbsp;</span>
1028
+ <span class="cline-any cline-yes">1x</span>
1029
+ <span class="cline-any cline-neutral">&nbsp;</span>
1030
+ <span class="cline-any cline-neutral">&nbsp;</span>
1031
+ <span class="cline-any cline-neutral">&nbsp;</span>
1032
+ <span class="cline-any cline-neutral">&nbsp;</span>
1033
+ <span class="cline-any cline-neutral">&nbsp;</span>
1034
+ <span class="cline-any cline-yes">1x</span>
1035
+ <span class="cline-any cline-neutral">&nbsp;</span>
1036
+ <span class="cline-any cline-neutral">&nbsp;</span>
1037
+ <span class="cline-any cline-neutral">&nbsp;</span>
1038
+ <span class="cline-any cline-neutral">&nbsp;</span>
1039
+ <span class="cline-any cline-neutral">&nbsp;</span>
1040
+ <span class="cline-any cline-neutral">&nbsp;</span>
1041
+ <span class="cline-any cline-neutral">&nbsp;</span>
1042
+ <span class="cline-any cline-neutral">&nbsp;</span>
1043
+ <span class="cline-any cline-neutral">&nbsp;</span>
1044
+ <span class="cline-any cline-yes">96x</span>
1045
+ <span class="cline-any cline-neutral">&nbsp;</span>
1046
+ <span class="cline-any cline-neutral">&nbsp;</span>
1047
+ <span class="cline-any cline-neutral">&nbsp;</span>
1048
+ <span class="cline-any cline-neutral">&nbsp;</span>
1049
+ <span class="cline-any cline-neutral">&nbsp;</span>
1050
+ <span class="cline-any cline-neutral">&nbsp;</span>
1051
+ <span class="cline-any cline-neutral">&nbsp;</span>
1052
+ <span class="cline-any cline-neutral">&nbsp;</span>
1053
+ <span class="cline-any cline-neutral">&nbsp;</span>
1054
+ <span class="cline-any cline-yes">96x</span>
1055
+ <span class="cline-any cline-neutral">&nbsp;</span>
1056
+ <span class="cline-any cline-neutral">&nbsp;</span>
1057
+ <span class="cline-any cline-neutral">&nbsp;</span>
1058
+ <span class="cline-any cline-neutral">&nbsp;</span>
1059
+ <span class="cline-any cline-neutral">&nbsp;</span>
1060
+ <span class="cline-any cline-neutral">&nbsp;</span>
1061
+ <span class="cline-any cline-neutral">&nbsp;</span>
1062
+ <span class="cline-any cline-neutral">&nbsp;</span>
1063
+ <span class="cline-any cline-neutral">&nbsp;</span>
1064
+ <span class="cline-any cline-yes">96x</span>
1065
+ <span class="cline-any cline-neutral">&nbsp;</span>
1066
+ <span class="cline-any cline-neutral">&nbsp;</span>
1067
+ <span class="cline-any cline-neutral">&nbsp;</span>
1068
+ <span class="cline-any cline-neutral">&nbsp;</span>
1069
+ <span class="cline-any cline-neutral">&nbsp;</span>
1070
+ <span class="cline-any cline-yes">96x</span>
1071
+ <span class="cline-any cline-yes">96x</span>
1072
+ <span class="cline-any cline-yes">96x</span>
1073
+ <span class="cline-any cline-neutral">&nbsp;</span>
1074
+ <span class="cline-any cline-neutral">&nbsp;</span>
1075
+ <span class="cline-any cline-neutral">&nbsp;</span>
1076
+ <span class="cline-any cline-yes">96x</span>
1077
+ <span class="cline-any cline-neutral">&nbsp;</span>
1078
+ <span class="cline-any cline-neutral">&nbsp;</span>
1079
+ <span class="cline-any cline-neutral">&nbsp;</span>
1080
+ <span class="cline-any cline-neutral">&nbsp;</span>
1081
+ <span class="cline-any cline-neutral">&nbsp;</span>
1082
+ <span class="cline-any cline-neutral">&nbsp;</span>
1083
+ <span class="cline-any cline-neutral">&nbsp;</span>
1084
+ <span class="cline-any cline-no">&nbsp;</span>
1085
+ <span class="cline-any cline-no">&nbsp;</span>
1086
+ <span class="cline-any cline-no">&nbsp;</span>
1087
+ <span class="cline-any cline-neutral">&nbsp;</span>
1088
+ <span class="cline-any cline-no">&nbsp;</span>
1089
+ <span class="cline-any cline-neutral">&nbsp;</span>
1090
+ <span class="cline-any cline-neutral">&nbsp;</span>
1091
+ <span class="cline-any cline-neutral">&nbsp;</span>
1092
+ <span class="cline-any cline-no">&nbsp;</span>
1093
+ <span class="cline-any cline-no">&nbsp;</span>
1094
+ <span class="cline-any cline-neutral">&nbsp;</span>
1095
+ <span class="cline-any cline-neutral">&nbsp;</span>
1096
+ <span class="cline-any cline-no">&nbsp;</span>
1097
+ <span class="cline-any cline-neutral">&nbsp;</span>
1098
+ <span class="cline-any cline-neutral">&nbsp;</span>
1099
+ <span class="cline-any cline-neutral">&nbsp;</span>
1100
+ <span class="cline-any cline-neutral">&nbsp;</span>
1101
+ <span class="cline-any cline-neutral">&nbsp;</span>
1102
+ <span class="cline-any cline-neutral">&nbsp;</span>
1103
+ <span class="cline-any cline-neutral">&nbsp;</span>
1104
+ <span class="cline-any cline-neutral">&nbsp;</span>
1105
+ <span class="cline-any cline-neutral">&nbsp;</span>
1106
+ <span class="cline-any cline-neutral">&nbsp;</span>
1107
+ <span class="cline-any cline-neutral">&nbsp;</span>
1108
+ <span class="cline-any cline-neutral">&nbsp;</span>
1109
+ <span class="cline-any cline-neutral">&nbsp;</span>
1110
+ <span class="cline-any cline-neutral">&nbsp;</span>
1111
+ <span class="cline-any cline-neutral">&nbsp;</span>
1112
+ <span class="cline-any cline-neutral">&nbsp;</span>
1113
+ <span class="cline-any cline-neutral">&nbsp;</span>
1114
+ <span class="cline-any cline-neutral">&nbsp;</span>
1115
+ <span class="cline-any cline-neutral">&nbsp;</span>
1116
+ <span class="cline-any cline-neutral">&nbsp;</span>
1117
+ <span class="cline-any cline-neutral">&nbsp;</span>
1118
+ <span class="cline-any cline-neutral">&nbsp;</span>
1119
+ <span class="cline-any cline-neutral">&nbsp;</span>
1120
+ <span class="cline-any cline-neutral">&nbsp;</span>
1121
+ <span class="cline-any cline-no">&nbsp;</span>
1122
+ <span class="cline-any cline-no">&nbsp;</span>
1123
+ <span class="cline-any cline-no">&nbsp;</span>
1124
+ <span class="cline-any cline-neutral">&nbsp;</span>
1125
+ <span class="cline-any cline-no">&nbsp;</span>
1126
+ <span class="cline-any cline-no">&nbsp;</span>
1127
+ <span class="cline-any cline-neutral">&nbsp;</span>
1128
+ <span class="cline-any cline-neutral">&nbsp;</span>
1129
+ <span class="cline-any cline-neutral">&nbsp;</span>
1130
+ <span class="cline-any cline-neutral">&nbsp;</span>
1131
+ <span class="cline-any cline-neutral">&nbsp;</span>
1132
+ <span class="cline-any cline-neutral">&nbsp;</span>
1133
+ <span class="cline-any cline-neutral">&nbsp;</span>
1134
+ <span class="cline-any cline-no">&nbsp;</span>
1135
+ <span class="cline-any cline-no">&nbsp;</span>
1136
+ <span class="cline-any cline-neutral">&nbsp;</span>
1137
+ <span class="cline-any cline-neutral">&nbsp;</span>
1138
+ <span class="cline-any cline-neutral">&nbsp;</span>
1139
+ <span class="cline-any cline-neutral">&nbsp;</span>
1140
+ <span class="cline-any cline-neutral">&nbsp;</span>
1141
+ <span class="cline-any cline-neutral">&nbsp;</span>
1142
+ <span class="cline-any cline-neutral">&nbsp;</span>
1143
+ <span class="cline-any cline-no">&nbsp;</span>
1144
+ <span class="cline-any cline-no">&nbsp;</span>
1145
+ <span class="cline-any cline-no">&nbsp;</span>
1146
+ <span class="cline-any cline-no">&nbsp;</span>
1147
+ <span class="cline-any cline-neutral">&nbsp;</span>
1148
+ <span class="cline-any cline-no">&nbsp;</span>
1149
+ <span class="cline-any cline-neutral">&nbsp;</span>
1150
+ <span class="cline-any cline-neutral">&nbsp;</span>
1151
+ <span class="cline-any cline-neutral">&nbsp;</span>
1152
+ <span class="cline-any cline-neutral">&nbsp;</span>
1153
+ <span class="cline-any cline-neutral">&nbsp;</span>
1154
+ <span class="cline-any cline-neutral">&nbsp;</span>
1155
+ <span class="cline-any cline-neutral">&nbsp;</span>
1156
+ <span class="cline-any cline-neutral">&nbsp;</span>
1157
+ <span class="cline-any cline-no">&nbsp;</span>
1158
+ <span class="cline-any cline-no">&nbsp;</span>
1159
+ <span class="cline-any cline-neutral">&nbsp;</span>
1160
+ <span class="cline-any cline-neutral">&nbsp;</span>
1161
+ <span class="cline-any cline-neutral">&nbsp;</span>
1162
+ <span class="cline-any cline-neutral">&nbsp;</span>
1163
+ <span class="cline-any cline-neutral">&nbsp;</span>
1164
+ <span class="cline-any cline-neutral">&nbsp;</span>
1165
+ <span class="cline-any cline-neutral">&nbsp;</span>
1166
+ <span class="cline-any cline-neutral">&nbsp;</span>
1167
+ <span class="cline-any cline-neutral">&nbsp;</span>
1168
+ <span class="cline-any cline-neutral">&nbsp;</span>
1169
+ <span class="cline-any cline-neutral">&nbsp;</span>
1170
+ <span class="cline-any cline-neutral">&nbsp;</span>
1171
+ <span class="cline-any cline-neutral">&nbsp;</span>
1172
+ <span class="cline-any cline-neutral">&nbsp;</span>
1173
+ <span class="cline-any cline-neutral">&nbsp;</span>
1174
+ <span class="cline-any cline-neutral">&nbsp;</span>
1175
+ <span class="cline-any cline-neutral">&nbsp;</span>
1176
+ <span class="cline-any cline-neutral">&nbsp;</span>
1177
+ <span class="cline-any cline-neutral">&nbsp;</span>
1178
+ <span class="cline-any cline-neutral">&nbsp;</span>
1179
+ <span class="cline-any cline-neutral">&nbsp;</span>
1180
+ <span class="cline-any cline-no">&nbsp;</span>
1181
+ <span class="cline-any cline-no">&nbsp;</span>
1182
+ <span class="cline-any cline-neutral">&nbsp;</span>
1183
+ <span class="cline-any cline-neutral">&nbsp;</span>
1184
+ <span class="cline-any cline-neutral">&nbsp;</span>
1185
+ <span class="cline-any cline-neutral">&nbsp;</span>
1186
+ <span class="cline-any cline-no">&nbsp;</span>
1187
+ <span class="cline-any cline-neutral">&nbsp;</span>
1188
+ <span class="cline-any cline-neutral">&nbsp;</span>
1189
+ <span class="cline-any cline-neutral">&nbsp;</span>
1190
+ <span class="cline-any cline-neutral">&nbsp;</span>
1191
+ <span class="cline-any cline-neutral">&nbsp;</span>
1192
+ <span class="cline-any cline-neutral">&nbsp;</span>
1193
+ <span class="cline-any cline-neutral">&nbsp;</span>
1194
+ <span class="cline-any cline-neutral">&nbsp;</span>
1195
+ <span class="cline-any cline-neutral">&nbsp;</span>
1196
+ <span class="cline-any cline-neutral">&nbsp;</span>
1197
+ <span class="cline-any cline-neutral">&nbsp;</span>
1198
+ <span class="cline-any cline-neutral">&nbsp;</span>
1199
+ <span class="cline-any cline-neutral">&nbsp;</span>
1200
+ <span class="cline-any cline-neutral">&nbsp;</span>
1201
+ <span class="cline-any cline-neutral">&nbsp;</span>
1202
+ <span class="cline-any cline-neutral">&nbsp;</span>
1203
+ <span class="cline-any cline-neutral">&nbsp;</span>
1204
+ <span class="cline-any cline-neutral">&nbsp;</span>
1205
+ <span class="cline-any cline-neutral">&nbsp;</span>
1206
+ <span class="cline-any cline-neutral">&nbsp;</span>
1207
+ <span class="cline-any cline-neutral">&nbsp;</span>
1208
+ <span class="cline-any cline-neutral">&nbsp;</span>
1209
+ <span class="cline-any cline-neutral">&nbsp;</span>
1210
+ <span class="cline-any cline-neutral">&nbsp;</span>
1211
+ <span class="cline-any cline-no">&nbsp;</span>
1212
+ <span class="cline-any cline-no">&nbsp;</span>
1213
+ <span class="cline-any cline-neutral">&nbsp;</span>
1214
+ <span class="cline-any cline-neutral">&nbsp;</span>
1215
+ <span class="cline-any cline-neutral">&nbsp;</span>
1216
+ <span class="cline-any cline-neutral">&nbsp;</span>
1217
+ <span class="cline-any cline-neutral">&nbsp;</span>
1218
+ <span class="cline-any cline-neutral">&nbsp;</span>
1219
+ <span class="cline-any cline-neutral">&nbsp;</span>
1220
+ <span class="cline-any cline-neutral">&nbsp;</span>
1221
+ <span class="cline-any cline-neutral">&nbsp;</span>
1222
+ <span class="cline-any cline-neutral">&nbsp;</span>
1223
+ <span class="cline-any cline-neutral">&nbsp;</span>
1224
+ <span class="cline-any cline-neutral">&nbsp;</span>
1225
+ <span class="cline-any cline-neutral">&nbsp;</span>
1226
+ <span class="cline-any cline-neutral">&nbsp;</span>
1227
+ <span class="cline-any cline-neutral">&nbsp;</span>
1228
+ <span class="cline-any cline-neutral">&nbsp;</span>
1229
+ <span class="cline-any cline-neutral">&nbsp;</span>
1230
+ <span class="cline-any cline-neutral">&nbsp;</span>
1231
+ <span class="cline-any cline-neutral">&nbsp;</span>
1232
+ <span class="cline-any cline-neutral">&nbsp;</span>
1233
+ <span class="cline-any cline-neutral">&nbsp;</span>
1234
+ <span class="cline-any cline-neutral">&nbsp;</span>
1235
+ <span class="cline-any cline-no">&nbsp;</span>
1236
+ <span class="cline-any cline-no">&nbsp;</span>
1237
+ <span class="cline-any cline-no">&nbsp;</span>
1238
+ <span class="cline-any cline-neutral">&nbsp;</span>
1239
+ <span class="cline-any cline-neutral">&nbsp;</span>
1240
+ <span class="cline-any cline-neutral">&nbsp;</span>
1241
+ <span class="cline-any cline-neutral">&nbsp;</span>
1242
+ <span class="cline-any cline-no">&nbsp;</span>
1243
+ <span class="cline-any cline-neutral">&nbsp;</span>
1244
+ <span class="cline-any cline-neutral">&nbsp;</span>
1245
+ <span class="cline-any cline-neutral">&nbsp;</span>
1246
+ <span class="cline-any cline-no">&nbsp;</span>
1247
+ <span class="cline-any cline-no">&nbsp;</span>
1248
+ <span class="cline-any cline-no">&nbsp;</span>
1249
+ <span class="cline-any cline-no">&nbsp;</span>
1250
+ <span class="cline-any cline-neutral">&nbsp;</span>
1251
+ <span class="cline-any cline-neutral">&nbsp;</span>
1252
+ <span class="cline-any cline-no">&nbsp;</span>
1253
+ <span class="cline-any cline-neutral">&nbsp;</span>
1254
+ <span class="cline-any cline-neutral">&nbsp;</span>
1255
+ <span class="cline-any cline-neutral">&nbsp;</span>
1256
+ <span class="cline-any cline-neutral">&nbsp;</span>
1257
+ <span class="cline-any cline-neutral">&nbsp;</span>
1258
+ <span class="cline-any cline-neutral">&nbsp;</span>
1259
+ <span class="cline-any cline-neutral">&nbsp;</span>
1260
+ <span class="cline-any cline-neutral">&nbsp;</span>
1261
+ <span class="cline-any cline-neutral">&nbsp;</span>
1262
+ <span class="cline-any cline-neutral">&nbsp;</span>
1263
+ <span class="cline-any cline-neutral">&nbsp;</span>
1264
+ <span class="cline-any cline-neutral">&nbsp;</span>
1265
+ <span class="cline-any cline-neutral">&nbsp;</span>
1266
+ <span class="cline-any cline-neutral">&nbsp;</span>
1267
+ <span class="cline-any cline-neutral">&nbsp;</span>
1268
+ <span class="cline-any cline-neutral">&nbsp;</span>
1269
+ <span class="cline-any cline-neutral">&nbsp;</span>
1270
+ <span class="cline-any cline-neutral">&nbsp;</span>
1271
+ <span class="cline-any cline-neutral">&nbsp;</span>
1272
+ <span class="cline-any cline-neutral">&nbsp;</span>
1273
+ <span class="cline-any cline-neutral">&nbsp;</span>
1274
+ <span class="cline-any cline-neutral">&nbsp;</span>
1275
+ <span class="cline-any cline-neutral">&nbsp;</span>
1276
+ <span class="cline-any cline-neutral">&nbsp;</span>
1277
+ <span class="cline-any cline-no">&nbsp;</span>
1278
+ <span class="cline-any cline-no">&nbsp;</span>
1279
+ <span class="cline-any cline-no">&nbsp;</span>
1280
+ <span class="cline-any cline-neutral">&nbsp;</span>
1281
+ <span class="cline-any cline-no">&nbsp;</span>
1282
+ <span class="cline-any cline-no">&nbsp;</span>
1283
+ <span class="cline-any cline-neutral">&nbsp;</span>
1284
+ <span class="cline-any cline-neutral">&nbsp;</span>
1285
+ <span class="cline-any cline-neutral">&nbsp;</span>
1286
+ <span class="cline-any cline-neutral">&nbsp;</span>
1287
+ <span class="cline-any cline-neutral">&nbsp;</span>
1288
+ <span class="cline-any cline-neutral">&nbsp;</span>
1289
+ <span class="cline-any cline-neutral">&nbsp;</span>
1290
+ <span class="cline-any cline-no">&nbsp;</span>
1291
+ <span class="cline-any cline-no">&nbsp;</span>
1292
+ <span class="cline-any cline-neutral">&nbsp;</span>
1293
+ <span class="cline-any cline-neutral">&nbsp;</span>
1294
+ <span class="cline-any cline-neutral">&nbsp;</span>
1295
+ <span class="cline-any cline-neutral">&nbsp;</span>
1296
+ <span class="cline-any cline-neutral">&nbsp;</span>
1297
+ <span class="cline-any cline-neutral">&nbsp;</span>
1298
+ <span class="cline-any cline-neutral">&nbsp;</span>
1299
+ <span class="cline-any cline-no">&nbsp;</span>
1300
+ <span class="cline-any cline-no">&nbsp;</span>
1301
+ <span class="cline-any cline-no">&nbsp;</span>
1302
+ <span class="cline-any cline-no">&nbsp;</span>
1303
+ <span class="cline-any cline-neutral">&nbsp;</span>
1304
+ <span class="cline-any cline-no">&nbsp;</span>
1305
+ <span class="cline-any cline-neutral">&nbsp;</span>
1306
+ <span class="cline-any cline-neutral">&nbsp;</span>
1307
+ <span class="cline-any cline-neutral">&nbsp;</span>
1308
+ <span class="cline-any cline-neutral">&nbsp;</span>
1309
+ <span class="cline-any cline-neutral">&nbsp;</span>
1310
+ <span class="cline-any cline-neutral">&nbsp;</span>
1311
+ <span class="cline-any cline-neutral">&nbsp;</span>
1312
+ <span class="cline-any cline-neutral">&nbsp;</span>
1313
+ <span class="cline-any cline-no">&nbsp;</span>
1314
+ <span class="cline-any cline-no">&nbsp;</span>
1315
+ <span class="cline-any cline-neutral">&nbsp;</span>
1316
+ <span class="cline-any cline-neutral">&nbsp;</span>
1317
+ <span class="cline-any cline-neutral">&nbsp;</span>
1318
+ <span class="cline-any cline-neutral">&nbsp;</span>
1319
+ <span class="cline-any cline-neutral">&nbsp;</span>
1320
+ <span class="cline-any cline-neutral">&nbsp;</span>
1321
+ <span class="cline-any cline-neutral">&nbsp;</span>
1322
+ <span class="cline-any cline-neutral">&nbsp;</span>
1323
+ <span class="cline-any cline-neutral">&nbsp;</span>
1324
+ <span class="cline-any cline-neutral">&nbsp;</span>
1325
+ <span class="cline-any cline-neutral">&nbsp;</span>
1326
+ <span class="cline-any cline-neutral">&nbsp;</span>
1327
+ <span class="cline-any cline-neutral">&nbsp;</span>
1328
+ <span class="cline-any cline-neutral">&nbsp;</span>
1329
+ <span class="cline-any cline-neutral">&nbsp;</span>
1330
+ <span class="cline-any cline-neutral">&nbsp;</span>
1331
+ <span class="cline-any cline-neutral">&nbsp;</span>
1332
+ <span class="cline-any cline-neutral">&nbsp;</span>
1333
+ <span class="cline-any cline-neutral">&nbsp;</span>
1334
+ <span class="cline-any cline-neutral">&nbsp;</span>
1335
+ <span class="cline-any cline-neutral">&nbsp;</span>
1336
+ <span class="cline-any cline-no">&nbsp;</span>
1337
+ <span class="cline-any cline-no">&nbsp;</span>
1338
+ <span class="cline-any cline-neutral">&nbsp;</span>
1339
+ <span class="cline-any cline-neutral">&nbsp;</span>
1340
+ <span class="cline-any cline-neutral">&nbsp;</span>
1341
+ <span class="cline-any cline-neutral">&nbsp;</span>
1342
+ <span class="cline-any cline-no">&nbsp;</span>
1343
+ <span class="cline-any cline-neutral">&nbsp;</span>
1344
+ <span class="cline-any cline-neutral">&nbsp;</span>
1345
+ <span class="cline-any cline-neutral">&nbsp;</span>
1346
+ <span class="cline-any cline-neutral">&nbsp;</span>
1347
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1351
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1357
+ <span class="cline-any cline-neutral">&nbsp;</span>
1358
+ <span class="cline-any cline-neutral">&nbsp;</span>
1359
+ <span class="cline-any cline-neutral">&nbsp;</span>
1360
+ <span class="cline-any cline-neutral">&nbsp;</span>
1361
+ <span class="cline-any cline-neutral">&nbsp;</span>
1362
+ <span class="cline-any cline-neutral">&nbsp;</span>
1363
+ <span class="cline-any cline-neutral">&nbsp;</span>
1364
+ <span class="cline-any cline-neutral">&nbsp;</span>
1365
+ <span class="cline-any cline-neutral">&nbsp;</span>
1366
+ <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1370
+ <span class="cline-any cline-neutral">&nbsp;</span>
1371
+ <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1375
+ <span class="cline-any cline-neutral">&nbsp;</span>
1376
+ <span class="cline-any cline-neutral">&nbsp;</span>
1377
+ <span class="cline-any cline-neutral">&nbsp;</span>
1378
+ <span class="cline-any cline-neutral">&nbsp;</span>
1379
+ <span class="cline-any cline-neutral">&nbsp;</span>
1380
+ <span class="cline-any cline-neutral">&nbsp;</span>
1381
+ <span class="cline-any cline-neutral">&nbsp;</span>
1382
+ <span class="cline-any cline-neutral">&nbsp;</span>
1383
+ <span class="cline-any cline-neutral">&nbsp;</span>
1384
+ <span class="cline-any cline-neutral">&nbsp;</span>
1385
+ <span class="cline-any cline-neutral">&nbsp;</span>
1386
+ <span class="cline-any cline-neutral">&nbsp;</span>
1387
+ <span class="cline-any cline-neutral">&nbsp;</span>
1388
+ <span class="cline-any cline-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-no">&nbsp;</span>
1392
+ <span class="cline-any cline-no">&nbsp;</span>
1393
+ <span class="cline-any cline-no">&nbsp;</span>
1394
+ <span class="cline-any cline-neutral">&nbsp;</span>
1395
+ <span class="cline-any cline-neutral">&nbsp;</span>
1396
+ <span class="cline-any cline-neutral">&nbsp;</span>
1397
+ <span class="cline-any cline-neutral">&nbsp;</span>
1398
+ <span class="cline-any cline-no">&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-no">&nbsp;</span>
1403
+ <span class="cline-any cline-no">&nbsp;</span>
1404
+ <span class="cline-any cline-no">&nbsp;</span>
1405
+ <span class="cline-any cline-no">&nbsp;</span>
1406
+ <span class="cline-any cline-neutral">&nbsp;</span>
1407
+ <span class="cline-any cline-neutral">&nbsp;</span>
1408
+ <span class="cline-any cline-no">&nbsp;</span>
1409
+ <span class="cline-any cline-neutral">&nbsp;</span>
1410
+ <span class="cline-any cline-neutral">&nbsp;</span>
1411
+ <span class="cline-any cline-neutral">&nbsp;</span>
1412
+ <span class="cline-any cline-neutral">&nbsp;</span>
1413
+ <span class="cline-any cline-neutral">&nbsp;</span>
1414
+ <span class="cline-any cline-neutral">&nbsp;</span>
1415
+ <span class="cline-any cline-neutral">&nbsp;</span>
1416
+ <span class="cline-any cline-neutral">&nbsp;</span>
1417
+ <span class="cline-any cline-neutral">&nbsp;</span>
1418
+ <span class="cline-any cline-neutral">&nbsp;</span>
1419
+ <span class="cline-any cline-neutral">&nbsp;</span>
1420
+ <span class="cline-any cline-neutral">&nbsp;</span>
1421
+ <span class="cline-any cline-neutral">&nbsp;</span>
1422
+ <span class="cline-any cline-neutral">&nbsp;</span>
1423
+ <span class="cline-any cline-neutral">&nbsp;</span>
1424
+ <span class="cline-any cline-neutral">&nbsp;</span>
1425
+ <span class="cline-any cline-neutral">&nbsp;</span>
1426
+ <span class="cline-any cline-neutral">&nbsp;</span>
1427
+ <span class="cline-any cline-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-no">&nbsp;</span>
1434
+ <span class="cline-any cline-no">&nbsp;</span>
1435
+ <span class="cline-any cline-no">&nbsp;</span>
1436
+ <span class="cline-any cline-neutral">&nbsp;</span>
1437
+ <span class="cline-any cline-no">&nbsp;</span>
1438
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1444
+ <span class="cline-any cline-neutral">&nbsp;</span>
1445
+ <span class="cline-any cline-neutral">&nbsp;</span>
1446
+ <span class="cline-any cline-no">&nbsp;</span>
1447
+ <span class="cline-any cline-no">&nbsp;</span>
1448
+ <span class="cline-any cline-neutral">&nbsp;</span>
1449
+ <span class="cline-any cline-neutral">&nbsp;</span>
1450
+ <span class="cline-any cline-neutral">&nbsp;</span>
1451
+ <span class="cline-any cline-neutral">&nbsp;</span>
1452
+ <span class="cline-any cline-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-no">&nbsp;</span>
1456
+ <span class="cline-any cline-no">&nbsp;</span>
1457
+ <span class="cline-any cline-no">&nbsp;</span>
1458
+ <span class="cline-any cline-no">&nbsp;</span>
1459
+ <span class="cline-any cline-neutral">&nbsp;</span>
1460
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1469
+ <span class="cline-any cline-no">&nbsp;</span>
1470
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1475
+ <span class="cline-any cline-neutral">&nbsp;</span>
1476
+ <span class="cline-any cline-neutral">&nbsp;</span>
1477
+ <span class="cline-any cline-neutral">&nbsp;</span>
1478
+ <span class="cline-any cline-neutral">&nbsp;</span>
1479
+ <span class="cline-any cline-neutral">&nbsp;</span>
1480
+ <span class="cline-any cline-neutral">&nbsp;</span>
1481
+ <span class="cline-any cline-neutral">&nbsp;</span>
1482
+ <span class="cline-any cline-neutral">&nbsp;</span>
1483
+ <span class="cline-any cline-neutral">&nbsp;</span>
1484
+ <span class="cline-any cline-neutral">&nbsp;</span>
1485
+ <span class="cline-any cline-neutral">&nbsp;</span>
1486
+ <span class="cline-any cline-neutral">&nbsp;</span>
1487
+ <span class="cline-any cline-neutral">&nbsp;</span>
1488
+ <span class="cline-any cline-neutral">&nbsp;</span>
1489
+ <span class="cline-any cline-neutral">&nbsp;</span>
1490
+ <span class="cline-any cline-neutral">&nbsp;</span>
1491
+ <span class="cline-any cline-neutral">&nbsp;</span>
1492
+ <span class="cline-any cline-no">&nbsp;</span>
1493
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1498
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1505
+ <span class="cline-any cline-neutral">&nbsp;</span>
1506
+ <span class="cline-any cline-neutral">&nbsp;</span>
1507
+ <span class="cline-any cline-neutral">&nbsp;</span>
1508
+ <span class="cline-any cline-neutral">&nbsp;</span>
1509
+ <span class="cline-any cline-neutral">&nbsp;</span>
1510
+ <span class="cline-any cline-neutral">&nbsp;</span>
1511
+ <span class="cline-any cline-neutral">&nbsp;</span>
1512
+ <span class="cline-any cline-neutral">&nbsp;</span>
1513
+ <span class="cline-any cline-neutral">&nbsp;</span>
1514
+ <span class="cline-any cline-neutral">&nbsp;</span>
1515
+ <span class="cline-any cline-neutral">&nbsp;</span>
1516
+ <span class="cline-any cline-neutral">&nbsp;</span>
1517
+ <span class="cline-any cline-neutral">&nbsp;</span>
1518
+ <span class="cline-any cline-neutral">&nbsp;</span>
1519
+ <span class="cline-any cline-neutral">&nbsp;</span>
1520
+ <span class="cline-any cline-neutral">&nbsp;</span>
1521
+ <span class="cline-any cline-neutral">&nbsp;</span>
1522
+ <span class="cline-any cline-neutral">&nbsp;</span>
1523
+ <span class="cline-any cline-no">&nbsp;</span>
1524
+ <span class="cline-any cline-no">&nbsp;</span>
1525
+ <span class="cline-any cline-neutral">&nbsp;</span>
1526
+ <span class="cline-any cline-neutral">&nbsp;</span>
1527
+ <span class="cline-any cline-neutral">&nbsp;</span>
1528
+ <span class="cline-any cline-neutral">&nbsp;</span>
1529
+ <span class="cline-any cline-neutral">&nbsp;</span>
1530
+ <span class="cline-any cline-neutral">&nbsp;</span>
1531
+ <span class="cline-any cline-neutral">&nbsp;</span>
1532
+ <span class="cline-any cline-neutral">&nbsp;</span>
1533
+ <span class="cline-any cline-neutral">&nbsp;</span>
1534
+ <span class="cline-any cline-neutral">&nbsp;</span>
1535
+ <span class="cline-any cline-neutral">&nbsp;</span>
1536
+ <span class="cline-any cline-neutral">&nbsp;</span>
1537
+ <span class="cline-any cline-neutral">&nbsp;</span>
1538
+ <span class="cline-any cline-neutral">&nbsp;</span>
1539
+ <span class="cline-any cline-neutral">&nbsp;</span>
1540
+ <span class="cline-any cline-neutral">&nbsp;</span>
1541
+ <span class="cline-any cline-neutral">&nbsp;</span>
1542
+ <span class="cline-any cline-neutral">&nbsp;</span>
1543
+ <span class="cline-any cline-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-neutral">&nbsp;</span>
1547
+ <span class="cline-any cline-no">&nbsp;</span>
1548
+ <span class="cline-any cline-no">&nbsp;</span>
1549
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1554
+ <span class="cline-any cline-no">&nbsp;</span>
1555
+ <span class="cline-any cline-neutral">&nbsp;</span>
1556
+ <span class="cline-any cline-neutral">&nbsp;</span>
1557
+ <span class="cline-any cline-neutral">&nbsp;</span>
1558
+ <span class="cline-any cline-neutral">&nbsp;</span>
1559
+ <span class="cline-any cline-neutral">&nbsp;</span>
1560
+ <span class="cline-any cline-neutral">&nbsp;</span>
1561
+ <span class="cline-any cline-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-neutral">&nbsp;</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-neutral">&nbsp;</span>
1570
+ <span class="cline-any cline-neutral">&nbsp;</span>
1571
+ <span class="cline-any cline-no">&nbsp;</span>
1572
+ <span class="cline-any cline-no">&nbsp;</span>
1573
+ <span class="cline-any cline-no">&nbsp;</span>
1574
+ <span class="cline-any cline-no">&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-no">&nbsp;</span>
1578
+ <span class="cline-any cline-neutral">&nbsp;</span>
1579
+ <span class="cline-any cline-no">&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-no">&nbsp;</span>
1584
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1590
+ <span class="cline-any cline-neutral">&nbsp;</span>
1591
+ <span class="cline-any cline-no">&nbsp;</span>
1592
+ <span class="cline-any cline-no">&nbsp;</span>
1593
+ <span class="cline-any cline-neutral">&nbsp;</span>
1594
+ <span class="cline-any cline-no">&nbsp;</span>
1595
+ <span class="cline-any cline-neutral">&nbsp;</span>
1596
+ <span class="cline-any cline-no">&nbsp;</span>
1597
+ <span class="cline-any cline-no">&nbsp;</span>
1598
+ <span class="cline-any cline-neutral">&nbsp;</span>
1599
+ <span class="cline-any cline-no">&nbsp;</span>
1600
+ <span class="cline-any cline-no">&nbsp;</span>
1601
+ <span class="cline-any cline-no">&nbsp;</span>
1602
+ <span class="cline-any cline-neutral">&nbsp;</span>
1603
+ <span class="cline-any cline-no">&nbsp;</span>
1604
+ <span class="cline-any cline-no">&nbsp;</span>
1605
+ <span class="cline-any cline-no">&nbsp;</span>
1606
+ <span class="cline-any cline-no">&nbsp;</span>
1607
+ <span class="cline-any cline-neutral">&nbsp;</span>
1608
+ <span class="cline-any cline-neutral">&nbsp;</span>
1609
+ <span class="cline-any cline-neutral">&nbsp;</span>
1610
+ <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1615
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1619
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1623
+ <span class="cline-any cline-neutral">&nbsp;</span>
1624
+ <span class="cline-any cline-neutral">&nbsp;</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-no">&nbsp;</span>
1628
+ <span class="cline-any cline-no">&nbsp;</span>
1629
+ <span class="cline-any cline-no">&nbsp;</span>
1630
+ <span class="cline-any cline-no">&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-no">&nbsp;</span>
1634
+ <span class="cline-any cline-neutral">&nbsp;</span>
1635
+ <span class="cline-any cline-no">&nbsp;</span>
1636
+ <span class="cline-any cline-neutral">&nbsp;</span>
1637
+ <span class="cline-any cline-neutral">&nbsp;</span>
1638
+ <span class="cline-any cline-neutral">&nbsp;</span>
1639
+ <span class="cline-any cline-no">&nbsp;</span>
1640
+ <span class="cline-any cline-no">&nbsp;</span>
1641
+ <span class="cline-any cline-neutral">&nbsp;</span>
1642
+ <span class="cline-any cline-neutral">&nbsp;</span>
1643
+ <span class="cline-any cline-neutral">&nbsp;</span>
1644
+ <span class="cline-any cline-neutral">&nbsp;</span>
1645
+ <span class="cline-any cline-neutral">&nbsp;</span>
1646
+ <span class="cline-any cline-neutral">&nbsp;</span>
1647
+ <span class="cline-any cline-no">&nbsp;</span>
1648
+ <span class="cline-any cline-no">&nbsp;</span>
1649
+ <span class="cline-any cline-neutral">&nbsp;</span>
1650
+ <span class="cline-any cline-no">&nbsp;</span>
1651
+ <span class="cline-any cline-neutral">&nbsp;</span>
1652
+ <span class="cline-any cline-no">&nbsp;</span>
1653
+ <span class="cline-any cline-no">&nbsp;</span>
1654
+ <span class="cline-any cline-neutral">&nbsp;</span>
1655
+ <span class="cline-any cline-no">&nbsp;</span>
1656
+ <span class="cline-any cline-no">&nbsp;</span>
1657
+ <span class="cline-any cline-no">&nbsp;</span>
1658
+ <span class="cline-any cline-neutral">&nbsp;</span>
1659
+ <span class="cline-any cline-no">&nbsp;</span>
1660
+ <span class="cline-any cline-no">&nbsp;</span>
1661
+ <span class="cline-any cline-no">&nbsp;</span>
1662
+ <span class="cline-any cline-no">&nbsp;</span>
1663
+ <span class="cline-any cline-neutral">&nbsp;</span>
1664
+ <span class="cline-any cline-neutral">&nbsp;</span>
1665
+ <span class="cline-any cline-neutral">&nbsp;</span>
1666
+ <span class="cline-any cline-no">&nbsp;</span>
1667
+ <span class="cline-any cline-neutral">&nbsp;</span>
1668
+ <span class="cline-any cline-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-neutral">&nbsp;</span>
1672
+ <span class="cline-any cline-neutral">&nbsp;</span>
1673
+ <span class="cline-any cline-neutral">&nbsp;</span>
1674
+ <span class="cline-any cline-neutral">&nbsp;</span>
1675
+ <span class="cline-any cline-neutral">&nbsp;</span>
1676
+ <span class="cline-any cline-neutral">&nbsp;</span>
1677
+ <span class="cline-any cline-neutral">&nbsp;</span>
1678
+ <span class="cline-any cline-neutral">&nbsp;</span>
1679
+ <span class="cline-any cline-neutral">&nbsp;</span>
1680
+ <span class="cline-any cline-neutral">&nbsp;</span>
1681
+ <span class="cline-any cline-neutral">&nbsp;</span>
1682
+ <span class="cline-any cline-neutral">&nbsp;</span>
1683
+ <span class="cline-any cline-no">&nbsp;</span>
1684
+ <span class="cline-any cline-no">&nbsp;</span>
1685
+ <span class="cline-any cline-no">&nbsp;</span>
1686
+ <span class="cline-any cline-no">&nbsp;</span>
1687
+ <span class="cline-any cline-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-neutral">&nbsp;</span>
1691
+ <span class="cline-any cline-no">&nbsp;</span>
1692
+ <span class="cline-any cline-neutral">&nbsp;</span>
1693
+ <span class="cline-any cline-neutral">&nbsp;</span>
1694
+ <span class="cline-any cline-neutral">&nbsp;</span>
1695
+ <span class="cline-any cline-no">&nbsp;</span>
1696
+ <span class="cline-any cline-no">&nbsp;</span>
1697
+ <span class="cline-any cline-neutral">&nbsp;</span>
1698
+ <span class="cline-any cline-neutral">&nbsp;</span>
1699
+ <span class="cline-any cline-neutral">&nbsp;</span>
1700
+ <span class="cline-any cline-neutral">&nbsp;</span>
1701
+ <span class="cline-any cline-neutral">&nbsp;</span>
1702
+ <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1706
+ <span class="cline-any cline-no">&nbsp;</span>
1707
+ <span class="cline-any cline-neutral">&nbsp;</span>
1708
+ <span class="cline-any cline-no">&nbsp;</span>
1709
+ <span class="cline-any cline-no">&nbsp;</span>
1710
+ <span class="cline-any cline-neutral">&nbsp;</span>
1711
+ <span class="cline-any cline-no">&nbsp;</span>
1712
+ <span class="cline-any cline-no">&nbsp;</span>
1713
+ <span class="cline-any cline-no">&nbsp;</span>
1714
+ <span class="cline-any cline-neutral">&nbsp;</span>
1715
+ <span class="cline-any cline-no">&nbsp;</span>
1716
+ <span class="cline-any cline-no">&nbsp;</span>
1717
+ <span class="cline-any cline-no">&nbsp;</span>
1718
+ <span class="cline-any cline-no">&nbsp;</span>
1719
+ <span class="cline-any cline-neutral">&nbsp;</span>
1720
+ <span class="cline-any cline-neutral">&nbsp;</span>
1721
+ <span class="cline-any cline-neutral">&nbsp;</span>
1722
+ <span class="cline-any cline-no">&nbsp;</span>
1723
+ <span class="cline-any cline-neutral">&nbsp;</span>
1724
+ <span class="cline-any cline-neutral">&nbsp;</span>
1725
+ <span class="cline-any cline-neutral">&nbsp;</span>
1726
+ <span class="cline-any cline-neutral">&nbsp;</span>
1727
+ <span class="cline-any cline-neutral">&nbsp;</span>
1728
+ <span class="cline-any cline-neutral">&nbsp;</span>
1729
+ <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1733
+ <span class="cline-any cline-no">&nbsp;</span>
1734
+ <span class="cline-any cline-no">&nbsp;</span>
1735
+ <span class="cline-any cline-no">&nbsp;</span>
1736
+ <span class="cline-any cline-neutral">&nbsp;</span>
1737
+ <span class="cline-any cline-no">&nbsp;</span>
1738
+ <span class="cline-any cline-neutral">&nbsp;</span>
1739
+ <span class="cline-any cline-no">&nbsp;</span>
1740
+ <span class="cline-any cline-neutral">&nbsp;</span>
1741
+ <span class="cline-any cline-neutral">&nbsp;</span>
1742
+ <span class="cline-any cline-neutral">&nbsp;</span>
1743
+ <span class="cline-any cline-neutral">&nbsp;</span>
1744
+ <span class="cline-any cline-neutral">&nbsp;</span>
1745
+ <span class="cline-any cline-neutral">&nbsp;</span>
1746
+ <span class="cline-any cline-neutral">&nbsp;</span>
1747
+ <span class="cline-any cline-no">&nbsp;</span>
1748
+ <span class="cline-any cline-neutral">&nbsp;</span>
1749
+ <span class="cline-any cline-neutral">&nbsp;</span>
1750
+ <span class="cline-any cline-neutral">&nbsp;</span>
1751
+ <span class="cline-any cline-yes">1x</span>
1752
+ <span class="cline-any cline-no">&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-no">&nbsp;</span>
1757
+ <span class="cline-any cline-no">&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-no">&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-no">&nbsp;</span>
1768
+ <span class="cline-any cline-no">&nbsp;</span>
1769
+ <span class="cline-any cline-neutral">&nbsp;</span>
1770
+ <span class="cline-any cline-no">&nbsp;</span>
1771
+ <span class="cline-any cline-neutral">&nbsp;</span>
1772
+ <span class="cline-any cline-no">&nbsp;</span>
1773
+ <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1786
+ <span class="cline-any cline-no">&nbsp;</span>
1787
+ <span class="cline-any cline-neutral">&nbsp;</span>
1788
+ <span class="cline-any cline-neutral">&nbsp;</span>
1789
+ <span class="cline-any cline-neutral">&nbsp;</span>
1790
+ <span class="cline-any cline-neutral">&nbsp;</span>
1791
+ <span class="cline-any cline-neutral">&nbsp;</span>
1792
+ <span class="cline-any cline-neutral">&nbsp;</span>
1793
+ <span class="cline-any cline-neutral">&nbsp;</span>
1794
+ <span class="cline-any cline-neutral">&nbsp;</span>
1795
+ <span class="cline-any cline-neutral">&nbsp;</span>
1796
+ <span class="cline-any cline-neutral">&nbsp;</span>
1797
+ <span class="cline-any cline-neutral">&nbsp;</span>
1798
+ <span class="cline-any cline-neutral">&nbsp;</span>
1799
+ <span class="cline-any cline-neutral">&nbsp;</span>
1800
+ <span class="cline-any cline-neutral">&nbsp;</span>
1801
+ <span class="cline-any cline-neutral">&nbsp;</span>
1802
+ <span class="cline-any cline-neutral">&nbsp;</span>
1803
+ <span class="cline-any cline-neutral">&nbsp;</span>
1804
+ <span class="cline-any cline-neutral">&nbsp;</span>
1805
+ <span class="cline-any cline-neutral">&nbsp;</span>
1806
+ <span class="cline-any cline-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-no">&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-neutral">&nbsp;</span>
1825
+ <span class="cline-any cline-neutral">&nbsp;</span>
1826
+ <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1830
+ <span class="cline-any cline-neutral">&nbsp;</span>
1831
+ <span class="cline-any cline-neutral">&nbsp;</span>
1832
+ <span class="cline-any cline-neutral">&nbsp;</span>
1833
+ <span class="cline-any cline-neutral">&nbsp;</span>
1834
+ <span class="cline-any cline-neutral">&nbsp;</span>
1835
+ <span class="cline-any cline-neutral">&nbsp;</span>
1836
+ <span class="cline-any cline-neutral">&nbsp;</span>
1837
+ <span class="cline-any cline-neutral">&nbsp;</span>
1838
+ <span class="cline-any cline-neutral">&nbsp;</span>
1839
+ <span class="cline-any cline-neutral">&nbsp;</span>
1840
+ <span class="cline-any cline-neutral">&nbsp;</span>
1841
+ <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1846
+ <span class="cline-any cline-neutral">&nbsp;</span>
1847
+ <span class="cline-any cline-neutral">&nbsp;</span>
1848
+ <span class="cline-any cline-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-no">&nbsp;</span>
1852
+ <span class="cline-any cline-neutral">&nbsp;</span>
1853
+ <span class="cline-any cline-neutral">&nbsp;</span>
1854
+ <span class="cline-any cline-no">&nbsp;</span>
1855
+ <span class="cline-any cline-no">&nbsp;</span>
1856
+ <span class="cline-any cline-neutral">&nbsp;</span>
1857
+ <span class="cline-any cline-no">&nbsp;</span>
1858
+ <span class="cline-any cline-no">&nbsp;</span>
1859
+ <span class="cline-any cline-no">&nbsp;</span>
1860
+ <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1865
+ <span class="cline-any cline-neutral">&nbsp;</span>
1866
+ <span class="cline-any cline-neutral">&nbsp;</span>
1867
+ <span class="cline-any cline-neutral">&nbsp;</span>
1868
+ <span class="cline-any cline-no">&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-no">&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-no">&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-no">&nbsp;</span>
1884
+ <span class="cline-any cline-no">&nbsp;</span>
1885
+ <span class="cline-any cline-no">&nbsp;</span>
1886
+ <span class="cline-any cline-neutral">&nbsp;</span>
1887
+ <span class="cline-any cline-no">&nbsp;</span>
1888
+ <span class="cline-any cline-neutral">&nbsp;</span>
1889
+ <span class="cline-any cline-neutral">&nbsp;</span>
1890
+ <span class="cline-any cline-no">&nbsp;</span>
1891
+ <span class="cline-any cline-neutral">&nbsp;</span>
1892
+ <span class="cline-any cline-neutral">&nbsp;</span>
1893
+ <span class="cline-any cline-neutral">&nbsp;</span>
1894
+ <span class="cline-any cline-neutral">&nbsp;</span>
1895
+ <span class="cline-any cline-neutral">&nbsp;</span>
1896
+ <span class="cline-any cline-neutral">&nbsp;</span>
1897
+ <span class="cline-any cline-neutral">&nbsp;</span>
1898
+ <span class="cline-any cline-neutral">&nbsp;</span>
1899
+ <span class="cline-any cline-yes">1x</span>
1900
+ <span class="cline-any cline-neutral">&nbsp;</span>
1901
+ <span class="cline-any cline-neutral">&nbsp;</span>
1902
+ <span class="cline-any cline-neutral">&nbsp;</span>
1903
+ <span class="cline-any cline-neutral">&nbsp;</span>
1904
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import type { EmbeddedTSFileGenerator } from '../utils';
1905
+ import { createCompilerState, withSourceMapGenerator, TranslatorGenerator } from '../translator';
1906
+ import Namespace from './Namespace__';
1907
+ import { AssetsInfo } from './App__';
1908
+ &nbsp;
1909
+ //================================================================================
1910
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
1911
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
1912
+ //================================================================================
1913
+ import { EventPayload, Params } from '../common/EventEmitter';
1914
+ import { concept, excludedInJSON, property, getConceptConstructor } from '../decorators';
1915
+ &nbsp;
1916
+ import * as utils from '../utils';
1917
+ import * as types from './utils/types';
1918
+ import * as asserts from './utils/asserts';
1919
+ import { v4 as uuidv4 } from 'uuid';
1920
+ import BaseNode from '../common/BaseNode';
1921
+ import type Frontend from './Frontend__';
1922
+ import type BusinessComponent from './BusinessComponent__';
1923
+ import type Module from './Module__';
1924
+ &nbsp;
1925
+ /**
1926
+ * 端类型
1927
+ */
1928
+ @concept('端类型')
1929
+ export class FrontendType extends BaseNode {
1930
+ /** 类名 */
1931
+ static readonly ConceptName: string = 'FrontendType';
1932
+ &nbsp;
1933
+ /** 继承链 */
1934
+ static readonly inheritanceChain: string[] = ['BaseNode'];
1935
+ &nbsp;
1936
+ /**
1937
+ * 产品概念
1938
+ */
1939
+ @property('concept')
1940
+ // @ts-ignore
1941
+ readonly concept!: 'FrontendType';
1942
+ &nbsp;
1943
+ /**
1944
+ * 名称与type保持一致
1945
+ */
1946
+ @property()
1947
+ name!: 'pc' | 'h5';
1948
+ &nbsp;
1949
+ /**
1950
+ * PC/H5 端
1951
+ */
1952
+ @property()
1953
+ kind!: 'pc' | 'h5';
1954
+ &nbsp;
1955
+ /**
1956
+ * 前端列表
1957
+ */
1958
+ @property({
1959
+ objectRef: 'Frontend',
1960
+ isArray: true,
1961
+ defaultValue: [],
1962
+ })
1963
+ frontends: Array&lt;Frontend&gt; = [];
1964
+ &nbsp;
1965
+ /**
1966
+ * 业务组件列表
1967
+ */
1968
+ @property({
1969
+ objectRef: 'BusinessComponent',
1970
+ isArray: true,
1971
+ defaultValue: [],
1972
+ })
1973
+ businessComponents: Array&lt;BusinessComponent&gt; = [];
1974
+ &nbsp;
1975
+ /**
1976
+ * 扩展组件列表(兼容老版)
1977
+ */
1978
+ @property({
1979
+ objectRef: 'Module',
1980
+ isArray: true,
1981
+ defaultValue: [],
1982
+ })
1983
+ componentDependencies: Array&lt;Module&gt; = [];
1984
+ &nbsp;
1985
+ /**
1986
+ * @param source 需要合并的部分参数
1987
+ */
1988
+ constructor(source?: Partial&lt;FrontendType&gt;) {
1989
+ source = Object.assign({}, FrontendType.getDefaultOptions(), source);
1990
+ super(source);
1991
+ super.subConstructor(source);
1992
+ }
1993
+ &nbsp;
1994
+ static from(source: any, parentNode?: any, parentKey?: string): FrontendType {
1995
+ return super.from(source, parentNode, parentKey) as FrontendType;
1996
+ }
1997
+ &nbsp;
1998
+ /**
1999
+ * 从父级删除该节点
2000
+ * @internal
2001
+ */
2002
+ <span class="fstat-no" title="function not covered" > _delete() {</span>
2003
+ let params: Params = <span class="cstat-no" title="statement not covered" >null;</span>
2004
+ <span class="cstat-no" title="statement not covered" > if (this.parentNode) {</span>
2005
+ <span class="cstat-no" title="statement not covered" > params = (this.parentNode as any)?.__removeFrontendType?.(this);</span>
2006
+ }
2007
+ <span class="cstat-no" title="statement not covered" > return params;</span>
2008
+ }
2009
+ &nbsp;
2010
+ <span class="fstat-no" title="function not covered" > getFrontendExistingNames(e</span>xcludedList: Array&lt;Frontend&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[]) {</span>
2011
+ const excludedSet = <span class="cstat-no" title="statement not covered" >new Set(excludedList);</span>
2012
+ <span class="cstat-no" title="statement not covered" > return ((this.frontends as Frontend[]) || []).filter((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >!</span>excludedSet.has(item))</span>.map((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem?.name)</span>;</span>
2013
+ }
2014
+ <span class="fstat-no" title="function not covered" > getFrontendUniqueName(n</span>ame = <span class="branch-0 cbranch-no" title="branch not covered" >'frontend1') {</span>
2015
+ <span class="cstat-no" title="statement not covered" > return utils.unique(name, this.getFrontendExistingNames(), undefined, true);</span>
2016
+ }
2017
+ &nbsp;
2018
+ /**
2019
+ * 插入前端
2020
+ * @internal
2021
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
2022
+ */
2023
+ _insertFrontendAt(name: string, index: number): Frontend;
2024
+ &nbsp;
2025
+ /**
2026
+ * 插入前端
2027
+ * @internal
2028
+ * @param frontendOptions 前端参数
2029
+ */
2030
+ _insertFrontendAt(frontendOptions: Partial&lt;Frontend&gt;, index: number): Frontend;
2031
+ &nbsp;
2032
+ /**
2033
+ * 插入前端
2034
+ * @internal
2035
+ * @param frontend 已有的前端实例
2036
+ */
2037
+ _insertFrontendAt(frontend: Frontend, index: number): Frontend;
2038
+ &nbsp;
2039
+ <span class="fstat-no" title="function not covered" > _insertFrontendAt(o</span>ptions: string | Partial&lt;Frontend&gt; | Frontend, index: number) {
2040
+ const frontendOptions: any = <span class="cstat-no" title="statement not covered" >{};</span>
2041
+ const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'frontends' };</span>
2042
+ const <span class="cstat-no" title="statement not covered" >Frontend = getConceptConstructor('Frontend');</span>
2043
+ let frontend: Frontend;
2044
+ <span class="cstat-no" title="statement not covered" > if (!options) {</span>
2045
+ <span class="cstat-no" title="statement not covered" > frontend = Frontend.from(</span>
2046
+ {
2047
+ ...frontendOptions,
2048
+ name: this.getFrontendUniqueName(),
2049
+ },
2050
+ this,
2051
+ 'frontends',
2052
+ );
2053
+ <span class="cstat-no" title="statement not covered" > } else if (typeof options === 'string') {</span>
2054
+ <span class="cstat-no" title="statement not covered" > frontend = Frontend.from(</span>
2055
+ {
2056
+ ...frontendOptions,
2057
+ name: options,
2058
+ },
2059
+ this,
2060
+ 'frontends',
2061
+ );
2062
+ <span class="cstat-no" title="statement not covered" > } else if (asserts.isFrontend(options)) {</span>
2063
+ <span class="cstat-no" title="statement not covered" > options.ensureDelete(); // 同一实例不支持多处存在</span>
2064
+ <span class="cstat-no" title="statement not covered" > frontend = options;</span>
2065
+ <span class="cstat-no" title="statement not covered" > Object.assign(frontend, relationOptions);</span>
2066
+ } else {
2067
+ <span class="cstat-no" title="statement not covered" > frontend = Frontend.from(</span>
2068
+ {
2069
+ ...frontendOptions,
2070
+ ...options,
2071
+ },
2072
+ this,
2073
+ 'frontends',
2074
+ );
2075
+ }
2076
+ <span class="cstat-no" title="statement not covered" > this.frontends.splice(index, 0, frontend);</span>
2077
+ <span class="cstat-no" title="statement not covered" > return frontend;</span>
2078
+ }
2079
+ &nbsp;
2080
+ /**
2081
+ * 插入前端
2082
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
2083
+ */
2084
+ insertFrontendAt(name: string, index: number): Frontend;
2085
+ &nbsp;
2086
+ /**
2087
+ * 插入前端
2088
+ * @param frontendOptions 前端参数
2089
+ */
2090
+ insertFrontendAt(frontendOptions: Partial&lt;Frontend&gt;, index: number): Frontend;
2091
+ &nbsp;
2092
+ /**
2093
+ * 插入前端
2094
+ * @param frontend 已有的前端实例
2095
+ */
2096
+ insertFrontendAt(frontend: Frontend, index: number): Frontend;
2097
+ &nbsp;
2098
+ <span class="fstat-no" title="function not covered" > insertFrontendAt(o</span>ptions: string | Partial&lt;Frontend&gt; | Frontend, index: number) {
2099
+ const node = <span class="cstat-no" title="statement not covered" >this._insertFrontendAt(options as any, index);</span>
2100
+ <span class="cstat-no" title="statement not covered" > node.create({</span>
2101
+ index,
2102
+ parentNode: this,
2103
+ parentKey: 'frontends',
2104
+ });
2105
+ <span class="cstat-no" title="statement not covered" > return node;</span>
2106
+ }
2107
+ &nbsp;
2108
+ /**
2109
+ * 添加前端
2110
+ * @internal
2111
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
2112
+ */
2113
+ _addFrontend(name?: string): Frontend;
2114
+ &nbsp;
2115
+ /**
2116
+ * 添加前端
2117
+ * @internal
2118
+ * @param frontendOptions 前端参数
2119
+ */
2120
+ _addFrontend(frontendOptions: Partial&lt;Frontend&gt;): Frontend;
2121
+ &nbsp;
2122
+ /**
2123
+ * 添加前端
2124
+ * @internal
2125
+ * @param frontend 已有的前端实例
2126
+ */
2127
+ _addFrontend(frontend: Frontend): Frontend;
2128
+ &nbsp;
2129
+ <span class="fstat-no" title="function not covered" > _addFrontend(o</span>ptions?: string | Partial&lt;Frontend&gt; | Frontend) {
2130
+ const index = <span class="cstat-no" title="statement not covered" >this.frontends.length;</span>
2131
+ <span class="cstat-no" title="statement not covered" > return this._insertFrontendAt(options as any, index);</span>
2132
+ }
2133
+ &nbsp;
2134
+ /**
2135
+ * 添加前端
2136
+ * @internal
2137
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
2138
+ */
2139
+ addFrontend(name?: string): Frontend;
2140
+ &nbsp;
2141
+ /**
2142
+ * 添加前端
2143
+ * @param frontendOptions 前端参数
2144
+ */
2145
+ addFrontend(frontendOptions: Partial&lt;Frontend&gt;): Frontend;
2146
+ &nbsp;
2147
+ /**
2148
+ * 添加前端
2149
+ * @param frontend 已有的前端实例
2150
+ */
2151
+ addFrontend(frontend: Frontend): Frontend;
2152
+ &nbsp;
2153
+ <span class="fstat-no" title="function not covered" > addFrontend(o</span>ptions?: string | Partial&lt;Frontend&gt; | Frontend) {
2154
+ const node = <span class="cstat-no" title="statement not covered" >this._addFrontend(options as any);</span>
2155
+ const index = <span class="cstat-no" title="statement not covered" >this.frontends.indexOf(node);</span>
2156
+ <span class="cstat-no" title="statement not covered" > node.create({</span>
2157
+ index,
2158
+ parentNode: this,
2159
+ parentKey: 'frontends',
2160
+ });
2161
+ <span class="cstat-no" title="statement not covered" > return node;</span>
2162
+ }
2163
+ &nbsp;
2164
+ <span class="fstat-no" title="function not covered" > getBusinessComponentExistingNames(e</span>xcludedList: Array&lt;BusinessComponent&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[]) {</span>
2165
+ const excludedSet = <span class="cstat-no" title="statement not covered" >new Set(excludedList);</span>
2166
+ <span class="cstat-no" title="statement not covered" > return ((this.businessComponents as BusinessComponent[]) || [])</span>
2167
+ .filter((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >!</span>excludedSet.has(item))</span>
2168
+ .map((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem?.name)</span>;
2169
+ }
2170
+ <span class="fstat-no" title="function not covered" > getBusinessComponentUniqueName(n</span>ame = <span class="branch-0 cbranch-no" title="branch not covered" >'component1') {</span>
2171
+ <span class="cstat-no" title="statement not covered" > return utils.unique(name, this.getBusinessComponentExistingNames(), undefined, false);</span>
2172
+ }
2173
+ &nbsp;
2174
+ /**
2175
+ * 插入业务组件
2176
+ * @internal
2177
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
2178
+ */
2179
+ _insertBusinessComponentAt(name: string, index: number): BusinessComponent;
2180
+ &nbsp;
2181
+ /**
2182
+ * 插入业务组件
2183
+ * @internal
2184
+ * @param componentOptions 业务组件参数
2185
+ */
2186
+ _insertBusinessComponentAt(componentOptions: Partial&lt;BusinessComponent&gt;, index: number): BusinessComponent;
2187
+ &nbsp;
2188
+ /**
2189
+ * 插入业务组件
2190
+ * @internal
2191
+ * @param component 已有的业务组件实例
2192
+ */
2193
+ _insertBusinessComponentAt(component: BusinessComponent, index: number): BusinessComponent;
2194
+ &nbsp;
2195
+ <span class="fstat-no" title="function not covered" > _insertBusinessComponentAt(o</span>ptions: string | Partial&lt;BusinessComponent&gt; | BusinessComponent, index: number) {
2196
+ const componentOptions: any = <span class="cstat-no" title="statement not covered" >this.getBusinessComponentOptions();</span>
2197
+ const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'businessComponents' };</span>
2198
+ const <span class="cstat-no" title="statement not covered" >BusinessComponent = getConceptConstructor('BusinessComponent');</span>
2199
+ let component: BusinessComponent;
2200
+ <span class="cstat-no" title="statement not covered" > if (!options) {</span>
2201
+ <span class="cstat-no" title="statement not covered" > component = BusinessComponent.from(</span>
2202
+ {
2203
+ ...componentOptions,
2204
+ name: this.getBusinessComponentUniqueName(),
2205
+ },
2206
+ this,
2207
+ 'businessComponents',
2208
+ );
2209
+ <span class="cstat-no" title="statement not covered" > } else if (typeof options === 'string') {</span>
2210
+ <span class="cstat-no" title="statement not covered" > component = BusinessComponent.from(</span>
2211
+ {
2212
+ ...componentOptions,
2213
+ name: options,
2214
+ },
2215
+ this,
2216
+ 'businessComponents',
2217
+ );
2218
+ <span class="cstat-no" title="statement not covered" > } else if (asserts.isBusinessComponent(options)) {</span>
2219
+ <span class="cstat-no" title="statement not covered" > options.ensureDelete(); // 同一实例不支持多处存在</span>
2220
+ <span class="cstat-no" title="statement not covered" > component = options;</span>
2221
+ <span class="cstat-no" title="statement not covered" > Object.assign(component, relationOptions);</span>
2222
+ } else {
2223
+ <span class="cstat-no" title="statement not covered" > component = BusinessComponent.from(</span>
2224
+ {
2225
+ ...componentOptions,
2226
+ ...options,
2227
+ },
2228
+ this,
2229
+ 'businessComponents',
2230
+ );
2231
+ }
2232
+ <span class="cstat-no" title="statement not covered" > this.businessComponents.splice(index, 0, component);</span>
2233
+ <span class="cstat-no" title="statement not covered" > return component;</span>
2234
+ }
2235
+ &nbsp;
2236
+ /**
2237
+ * 插入业务组件
2238
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
2239
+ */
2240
+ insertBusinessComponentAt(name: string, index: number): BusinessComponent;
2241
+ &nbsp;
2242
+ /**
2243
+ * 插入业务组件
2244
+ * @param componentOptions 业务组件参数
2245
+ */
2246
+ insertBusinessComponentAt(componentOptions: Partial&lt;BusinessComponent&gt;, index: number): BusinessComponent;
2247
+ &nbsp;
2248
+ /**
2249
+ * 插入业务组件
2250
+ * @param component 已有的业务组件实例
2251
+ */
2252
+ insertBusinessComponentAt(component: BusinessComponent, index: number): BusinessComponent;
2253
+ &nbsp;
2254
+ <span class="fstat-no" title="function not covered" > insertBusinessComponentAt(o</span>ptions: string | Partial&lt;BusinessComponent&gt; | BusinessComponent, index: number) {
2255
+ const node = <span class="cstat-no" title="statement not covered" >this._insertBusinessComponentAt(options as any, index);</span>
2256
+ <span class="cstat-no" title="statement not covered" > node.create({</span>
2257
+ index,
2258
+ parentNode: this,
2259
+ parentKey: 'businessComponents',
2260
+ });
2261
+ <span class="cstat-no" title="statement not covered" > return node;</span>
2262
+ }
2263
+ &nbsp;
2264
+ /**
2265
+ * 添加业务组件
2266
+ * @internal
2267
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
2268
+ */
2269
+ _addBusinessComponent(name?: string): BusinessComponent;
2270
+ &nbsp;
2271
+ /**
2272
+ * 添加业务组件
2273
+ * @internal
2274
+ * @param componentOptions 业务组件参数
2275
+ */
2276
+ _addBusinessComponent(componentOptions: Partial&lt;BusinessComponent&gt;): BusinessComponent;
2277
+ &nbsp;
2278
+ /**
2279
+ * 添加业务组件
2280
+ * @internal
2281
+ * @param component 已有的业务组件实例
2282
+ */
2283
+ _addBusinessComponent(component: BusinessComponent): BusinessComponent;
2284
+ &nbsp;
2285
+ <span class="fstat-no" title="function not covered" > _addBusinessComponent(o</span>ptions?: string | Partial&lt;BusinessComponent&gt; | BusinessComponent) {
2286
+ const index = <span class="cstat-no" title="statement not covered" >this.businessComponents.length;</span>
2287
+ <span class="cstat-no" title="statement not covered" > return this._insertBusinessComponentAt(options as any, index);</span>
2288
+ }
2289
+ &nbsp;
2290
+ /**
2291
+ * 添加业务组件
2292
+ * @internal
2293
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
2294
+ */
2295
+ addBusinessComponent(name?: string): BusinessComponent;
2296
+ &nbsp;
2297
+ /**
2298
+ * 添加业务组件
2299
+ * @param componentOptions 业务组件参数
2300
+ */
2301
+ addBusinessComponent(componentOptions: Partial&lt;BusinessComponent&gt;): BusinessComponent;
2302
+ &nbsp;
2303
+ /**
2304
+ * 添加业务组件
2305
+ * @param component 已有的业务组件实例
2306
+ */
2307
+ addBusinessComponent(component: BusinessComponent): BusinessComponent;
2308
+ &nbsp;
2309
+ <span class="fstat-no" title="function not covered" > addBusinessComponent(o</span>ptions?: string | Partial&lt;BusinessComponent&gt; | BusinessComponent) {
2310
+ const node = <span class="cstat-no" title="statement not covered" >this._addBusinessComponent(options as any);</span>
2311
+ const index = <span class="cstat-no" title="statement not covered" >this.businessComponents.indexOf(node);</span>
2312
+ <span class="cstat-no" title="statement not covered" > node.create({</span>
2313
+ index,
2314
+ parentNode: this,
2315
+ parentKey: 'businessComponents',
2316
+ });
2317
+ <span class="cstat-no" title="statement not covered" > return node;</span>
2318
+ }
2319
+ &nbsp;
2320
+ <span class="fstat-no" title="function not covered" > getModuleExistingNames(e</span>xcludedList: Array&lt;Module&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[]) {</span>
2321
+ const excludedSet = <span class="cstat-no" title="statement not covered" >new Set(excludedList);</span>
2322
+ <span class="cstat-no" title="statement not covered" > return ((this.componentDependencies as Module[]) || [])</span>
2323
+ .filter((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >!</span>excludedSet.has(item))</span>
2324
+ .map((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem?.name)</span>;
2325
+ }
2326
+ <span class="fstat-no" title="function not covered" > getModuleUniqueName(n</span>ame = <span class="branch-0 cbranch-no" title="branch not covered" >'module1') {</span>
2327
+ <span class="cstat-no" title="statement not covered" > return utils.unique(name, this.getModuleExistingNames(), undefined, false);</span>
2328
+ }
2329
+ &nbsp;
2330
+ /**
2331
+ * 插入模块
2332
+ * @internal
2333
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
2334
+ */
2335
+ _insertModuleAt(name: string, index: number): Module;
2336
+ &nbsp;
2337
+ /**
2338
+ * 插入模块
2339
+ * @internal
2340
+ * @param moduleOptions 模块参数
2341
+ */
2342
+ _insertModuleAt(moduleOptions: Partial&lt;Module&gt;, index: number): Module;
2343
+ &nbsp;
2344
+ /**
2345
+ * 插入模块
2346
+ * @internal
2347
+ * @param module 已有的模块实例
2348
+ */
2349
+ _insertModuleAt(module: Module, index: number): Module;
2350
+ &nbsp;
2351
+ <span class="fstat-no" title="function not covered" > _insertModuleAt(o</span>ptions: string | Partial&lt;Module&gt; | Module, index: number) {
2352
+ const moduleOptions: any = <span class="cstat-no" title="statement not covered" >{};</span>
2353
+ const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'componentDependencies' };</span>
2354
+ const <span class="cstat-no" title="statement not covered" >Module = getConceptConstructor('Module');</span>
2355
+ let module: Module;
2356
+ <span class="cstat-no" title="statement not covered" > if (!options) {</span>
2357
+ <span class="cstat-no" title="statement not covered" > module = Module.from(</span>
2358
+ {
2359
+ ...moduleOptions,
2360
+ name: this.getModuleUniqueName(),
2361
+ },
2362
+ this,
2363
+ 'componentDependencies',
2364
+ );
2365
+ <span class="cstat-no" title="statement not covered" > } else if (typeof options === 'string') {</span>
2366
+ <span class="cstat-no" title="statement not covered" > module = Module.from(</span>
2367
+ {
2368
+ ...moduleOptions,
2369
+ name: options,
2370
+ },
2371
+ this,
2372
+ 'componentDependencies',
2373
+ );
2374
+ <span class="cstat-no" title="statement not covered" > } else if (asserts.isModule(options)) {</span>
2375
+ <span class="cstat-no" title="statement not covered" > options.ensureDelete(); // 同一实例不支持多处存在</span>
2376
+ <span class="cstat-no" title="statement not covered" > module = options;</span>
2377
+ <span class="cstat-no" title="statement not covered" > Object.assign(module, relationOptions);</span>
2378
+ } else {
2379
+ <span class="cstat-no" title="statement not covered" > module = Module.from(</span>
2380
+ {
2381
+ ...moduleOptions,
2382
+ ...options,
2383
+ },
2384
+ this,
2385
+ 'componentDependencies',
2386
+ );
2387
+ }
2388
+ <span class="cstat-no" title="statement not covered" > this.componentDependencies.splice(index, 0, module);</span>
2389
+ <span class="cstat-no" title="statement not covered" > return module;</span>
2390
+ }
2391
+ &nbsp;
2392
+ /**
2393
+ * 插入模块
2394
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
2395
+ */
2396
+ insertModuleAt(name: string, index: number): Module;
2397
+ &nbsp;
2398
+ /**
2399
+ * 插入模块
2400
+ * @param moduleOptions 模块参数
2401
+ */
2402
+ insertModuleAt(moduleOptions: Partial&lt;Module&gt;, index: number): Module;
2403
+ &nbsp;
2404
+ /**
2405
+ * 插入模块
2406
+ * @param module 已有的模块实例
2407
+ */
2408
+ insertModuleAt(module: Module, index: number): Module;
2409
+ &nbsp;
2410
+ <span class="fstat-no" title="function not covered" > insertModuleAt(o</span>ptions: string | Partial&lt;Module&gt; | Module, index: number) {
2411
+ const node = <span class="cstat-no" title="statement not covered" >this._insertModuleAt(options as any, index);</span>
2412
+ <span class="cstat-no" title="statement not covered" > node.create({</span>
2413
+ index,
2414
+ parentNode: this,
2415
+ parentKey: 'componentDependencies',
2416
+ });
2417
+ <span class="cstat-no" title="statement not covered" > return node;</span>
2418
+ }
2419
+ &nbsp;
2420
+ /**
2421
+ * 添加模块
2422
+ * @internal
2423
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
2424
+ */
2425
+ _addModule(name?: string): Module;
2426
+ &nbsp;
2427
+ /**
2428
+ * 添加模块
2429
+ * @internal
2430
+ * @param moduleOptions 模块参数
2431
+ */
2432
+ _addModule(moduleOptions: Partial&lt;Module&gt;): Module;
2433
+ &nbsp;
2434
+ /**
2435
+ * 添加模块
2436
+ * @internal
2437
+ * @param module 已有的模块实例
2438
+ */
2439
+ _addModule(module: Module): Module;
2440
+ &nbsp;
2441
+ <span class="fstat-no" title="function not covered" > _addModule(o</span>ptions?: string | Partial&lt;Module&gt; | Module) {
2442
+ const index = <span class="cstat-no" title="statement not covered" >this.componentDependencies.length;</span>
2443
+ <span class="cstat-no" title="statement not covered" > return this._insertModuleAt(options as any, index);</span>
2444
+ }
2445
+ &nbsp;
2446
+ /**
2447
+ * 添加模块
2448
+ * @internal
2449
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
2450
+ */
2451
+ addModule(name?: string): Module;
2452
+ &nbsp;
2453
+ /**
2454
+ * 添加模块
2455
+ * @param moduleOptions 模块参数
2456
+ */
2457
+ addModule(moduleOptions: Partial&lt;Module&gt;): Module;
2458
+ &nbsp;
2459
+ /**
2460
+ * 添加模块
2461
+ * @param module 已有的模块实例
2462
+ */
2463
+ addModule(module: Module): Module;
2464
+ &nbsp;
2465
+ <span class="fstat-no" title="function not covered" > addModule(o</span>ptions?: string | Partial&lt;Module&gt; | Module) {
2466
+ const node = <span class="cstat-no" title="statement not covered" >this._addModule(options as any);</span>
2467
+ const index = <span class="cstat-no" title="statement not covered" >this.componentDependencies.indexOf(node);</span>
2468
+ <span class="cstat-no" title="statement not covered" > node.create({</span>
2469
+ index,
2470
+ parentNode: this,
2471
+ parentKey: 'componentDependencies',
2472
+ });
2473
+ <span class="cstat-no" title="statement not covered" > return node;</span>
2474
+ }
2475
+ &nbsp;
2476
+ /**
2477
+ * 删除前端
2478
+ * @param name 前端名称
2479
+ */
2480
+ removeFrontend(name: string): void;
2481
+ &nbsp;
2482
+ /**
2483
+ * 删除前端
2484
+ * @param frontend 已有的前端实例
2485
+ */
2486
+ removeFrontend(frontend: Frontend): void;
2487
+ &nbsp;
2488
+ <span class="fstat-no" title="function not covered" > removeFrontend(o</span>ptions: string | Frontend) {
2489
+ let frontend: Frontend;
2490
+ <span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
2491
+ <span class="cstat-no" title="statement not covered" > frontend = (this.frontends as Frontend[]).find((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.name === options)</span>;</span>
2492
+ <span class="cstat-no" title="statement not covered" > if (!frontend) {</span>
2493
+ <span class="cstat-no" title="statement not covered" > throw new Error('找不到前端 ' + options);</span>
2494
+ }
2495
+ } else {
2496
+ <span class="cstat-no" title="statement not covered" > frontend = options;</span>
2497
+ }
2498
+ <span class="cstat-no" title="statement not covered" > return frontend.delete();</span>
2499
+ }
2500
+ &nbsp;
2501
+ <span class="fstat-no" title="function not covered" > __removeFrontend(f</span>rontend: Frontend) {
2502
+ const parentKey = <span class="cstat-no" title="statement not covered" >frontend.parentKey;</span>
2503
+ const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
2504
+ parentNode: this,
2505
+ parentKey,
2506
+ index: -1,
2507
+ object: null,
2508
+ oldObject: frontend,
2509
+ };
2510
+ <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
2511
+ <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
2512
+ // @ts-ignore
2513
+ const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
2514
+ // @ts-ignore
2515
+ const n = <span class="cstat-no" title="statement not covered" >frontend.__v_raw || frontend;</span>
2516
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
2517
+ // @ts-ignore
2518
+ const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
2519
+ <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
2520
+ <span class="cstat-no" title="statement not covered" > params.index = index;</span>
2521
+ } else {
2522
+ const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
2523
+ <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
2524
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
2525
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
2526
+ }
2527
+ }
2528
+ }
2529
+ <span class="cstat-no" title="statement not covered" > return params;</span>
2530
+ }
2531
+ &nbsp;
2532
+ /**
2533
+ * 删除业务组件
2534
+ * @param name 业务组件名称
2535
+ */
2536
+ removeBusinessComponent(name: string): void;
2537
+ &nbsp;
2538
+ /**
2539
+ * 删除业务组件
2540
+ * @param component 已有的业务组件实例
2541
+ */
2542
+ removeBusinessComponent(component: BusinessComponent): void;
2543
+ &nbsp;
2544
+ <span class="fstat-no" title="function not covered" > removeBusinessComponent(o</span>ptions: string | BusinessComponent) {
2545
+ let component: BusinessComponent;
2546
+ <span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
2547
+ <span class="cstat-no" title="statement not covered" > component = (this.businessComponents as BusinessComponent[]).find((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.name === options)</span>;</span>
2548
+ <span class="cstat-no" title="statement not covered" > if (!component) {</span>
2549
+ <span class="cstat-no" title="statement not covered" > throw new Error('找不到业务组件 ' + options);</span>
2550
+ }
2551
+ } else {
2552
+ <span class="cstat-no" title="statement not covered" > component = options;</span>
2553
+ }
2554
+ <span class="cstat-no" title="statement not covered" > return component.delete();</span>
2555
+ }
2556
+ &nbsp;
2557
+ <span class="fstat-no" title="function not covered" > __removeBusinessComponent(c</span>omponent: BusinessComponent) {
2558
+ const parentKey = <span class="cstat-no" title="statement not covered" >component.parentKey;</span>
2559
+ const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
2560
+ parentNode: this,
2561
+ parentKey,
2562
+ index: -1,
2563
+ object: null,
2564
+ oldObject: component,
2565
+ };
2566
+ <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
2567
+ <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
2568
+ // @ts-ignore
2569
+ const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
2570
+ // @ts-ignore
2571
+ const n = <span class="cstat-no" title="statement not covered" >component.__v_raw || component;</span>
2572
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
2573
+ // @ts-ignore
2574
+ const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
2575
+ <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
2576
+ <span class="cstat-no" title="statement not covered" > params.index = index;</span>
2577
+ } else {
2578
+ const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
2579
+ <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
2580
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
2581
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
2582
+ }
2583
+ }
2584
+ }
2585
+ <span class="cstat-no" title="statement not covered" > return params;</span>
2586
+ }
2587
+ &nbsp;
2588
+ /**
2589
+ * 删除模块
2590
+ * @param name 模块名称
2591
+ */
2592
+ removeModule(name: string): void;
2593
+ &nbsp;
2594
+ /**
2595
+ * 删除模块
2596
+ * @param module 已有的模块实例
2597
+ */
2598
+ removeModule(module: Module): void;
2599
+ &nbsp;
2600
+ <span class="fstat-no" title="function not covered" > removeModule(o</span>ptions: string | Module) {
2601
+ let module: Module;
2602
+ <span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
2603
+ <span class="cstat-no" title="statement not covered" > module = (this.componentDependencies as Module[]).find((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.name === options)</span>;</span>
2604
+ <span class="cstat-no" title="statement not covered" > if (!module) {</span>
2605
+ <span class="cstat-no" title="statement not covered" > throw new Error('找不到模块 ' + options);</span>
2606
+ }
2607
+ } else {
2608
+ <span class="cstat-no" title="statement not covered" > module = options;</span>
2609
+ }
2610
+ <span class="cstat-no" title="statement not covered" > return module.delete();</span>
2611
+ }
2612
+ &nbsp;
2613
+ <span class="fstat-no" title="function not covered" > __removeModule(m</span>odule: Module) {
2614
+ const parentKey = <span class="cstat-no" title="statement not covered" >module.parentKey;</span>
2615
+ const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
2616
+ parentNode: this,
2617
+ parentKey,
2618
+ index: -1,
2619
+ object: null,
2620
+ oldObject: module,
2621
+ };
2622
+ <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
2623
+ <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
2624
+ // @ts-ignore
2625
+ const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
2626
+ // @ts-ignore
2627
+ const n = <span class="cstat-no" title="statement not covered" >module.__v_raw || module;</span>
2628
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
2629
+ // @ts-ignore
2630
+ const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
2631
+ <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
2632
+ <span class="cstat-no" title="statement not covered" > params.index = index;</span>
2633
+ } else {
2634
+ const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
2635
+ <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
2636
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
2637
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
2638
+ }
2639
+ }
2640
+ }
2641
+ <span class="cstat-no" title="statement not covered" > return params;</span>
2642
+ }
2643
+ &nbsp;
2644
+ //================================================================================
2645
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
2646
+ // 自动生成的代码已结束。下面可以手动编写。
2647
+ //================================================================================
2648
+ <span class="fstat-no" title="function not covered" > getNamespace() {</span>
2649
+ <span class="cstat-no" title="statement not covered" > if (this.parentNode &amp;&amp; (this.parentNode as Namespace).getNamespace) {</span>
2650
+ const parentNamespace = (<span class="cstat-no" title="statement not covered" >this.parentNode as Namespace).getNamespace();</span>
2651
+ const parentName = <span class="cstat-no" title="statement not covered" >this.parentNode.name;</span>
2652
+ const arr = <span class="cstat-no" title="statement not covered" >[parentNamespace];</span>
2653
+ <span class="cstat-no" title="statement not covered" > if (this.parentNode.concept !== 'App' &amp;&amp; parentName) {</span>
2654
+ <span class="cstat-no" title="statement not covered" > arr.push(parentName);</span>
2655
+ }
2656
+ <span class="cstat-no" title="statement not covered" > return `${arr.join('.')}.frontendTypes`;</span>
2657
+ }
2658
+ <span class="cstat-no" title="statement not covered" > throw new Error('无法获取命名空间,请设置 parentNode!');</span>
2659
+ }
2660
+ &nbsp;
2661
+ /**
2662
+ * 生成宿主语言的文件路径
2663
+ * @param name 一般不用传,用于 rename
2664
+ */
2665
+ <span class="fstat-no" title="function not covered" > getEmbeddedFilePath(n</span>ame = <span class="branch-0 cbranch-no" title="branch not covered" >this.name) {</span>
2666
+ <span class="cstat-no" title="statement not covered" > return `/embedded/${this.rootNode?.name || this.parentNode.name}/frontendTypes/${name}.ts`;</span>
2667
+ }
2668
+ &nbsp;
2669
+ @withSourceMapGenerator
2670
+ <span class="fstat-no" title="function not covered" > *t</span>oEmbeddedTS(<span class="branch-0 cbranch-no" title="branch not covered" >state = createCompilerState()): TranslatorGenerator {</span>
2671
+ const self = <span class="cstat-no" title="statement not covered" >this;</span>
2672
+ let code = <span class="cstat-no" title="statement not covered" >`export namespace ${self.name} {\n`;</span>
2673
+ <span class="cstat-no" title="statement not covered" > code += 'const name = ';</span>
2674
+ <span class="cstat-no" title="statement not covered" > code += `"${self.name}";\n`;</span>
2675
+ <span class="cstat-no" title="statement not covered" > code += '}\n';</span>
2676
+ <span class="cstat-no" title="statement not covered" > return code;</span>
2677
+ }
2678
+ &nbsp;
2679
+ <span class="fstat-no" title="function not covered" > *t</span>oEmbeddedTSFile(): EmbeddedTSFileGenerator {
2680
+ let code = <span class="cstat-no" title="statement not covered" >`namespace ${this.getNamespace()} {\n`;</span>
2681
+ &nbsp;
2682
+ const <span class="cstat-no" title="statement not covered" >state = createCompilerState(code, { tabSize: 1 });</span>
2683
+ <span class="cstat-no" title="statement not covered" > try {</span>
2684
+ <span class="cstat-no" title="statement not covered" > code += yield* this.toEmbeddedTS(state);</span>
2685
+ } catch (err) {
2686
+ <span class="cstat-no" title="statement not covered" > code += '';</span>
2687
+ <span class="cstat-no" title="statement not covered" > console.log(err);</span>
2688
+ }
2689
+ <span class="cstat-no" title="statement not covered" > code += '}\n';</span>
2690
+ &nbsp;
2691
+ <span class="cstat-no" title="statement not covered" > return {</span>
2692
+ code,
2693
+ filePath: this.getEmbeddedFilePath(),
2694
+ sourceMap: state.sourceMap,
2695
+ };
2696
+ }
2697
+ &nbsp;
2698
+ /**
2699
+ * 获取业务组件的默认配置
2700
+ * @returns
2701
+ */
2702
+ <span class="fstat-no" title="function not covered" > getBusinessComponentOptions() {</span>
2703
+ let options: any;
2704
+ <span class="cstat-no" title="statement not covered" > if (this.kind === 'pc') {</span>
2705
+ <span class="cstat-no" title="statement not covered" > options = {</span>
2706
+ elements: [
2707
+ {
2708
+ concept: 'ViewElement',
2709
+ type: 0,
2710
+ tag: 'u-linear-layout',
2711
+ name: 'uLinearLayout1',
2712
+ staticClass: null,
2713
+ slotTarget: null,
2714
+ slotScope: null,
2715
+ bindAttrs: [
2716
+ {
2717
+ concept: 'BindAttribute',
2718
+ name: 'gap',
2719
+ type: 'string',
2720
+ value: 'none',
2721
+ rules: [],
2722
+ playground: [],
2723
+ },
2724
+ ],
2725
+ bindEvents: [],
2726
+ bindDirectives: [],
2727
+ bindRoles: [],
2728
+ bindStyles: [],
2729
+ children: [],
2730
+ },
2731
+ ],
2732
+ };
2733
+ } else {
2734
+ <span class="cstat-no" title="statement not covered" > options = {</span>
2735
+ elements: [
2736
+ {
2737
+ concept: 'ViewElement',
2738
+ name: 'vanLinearLayout1',
2739
+ type: 0,
2740
+ tag: 'van-linear-layout',
2741
+ staticStyle: null,
2742
+ slotTarget: null,
2743
+ slotScope: null,
2744
+ bindAttrs: [
2745
+ {
2746
+ concept: 'BindAttribute',
2747
+ name: 'gap',
2748
+ type: 'string',
2749
+ value: 'none',
2750
+ rules: [],
2751
+ playground: [],
2752
+ },
2753
+ ],
2754
+ bindEvents: [],
2755
+ bindDirectives: [],
2756
+ bindRoles: [],
2757
+ bindStyles: [],
2758
+ children: [],
2759
+ },
2760
+ ],
2761
+ };
2762
+ }
2763
+ <span class="cstat-no" title="statement not covered" > return options;</span>
2764
+ }
2765
+ &nbsp;
2766
+ <span class="fstat-no" title="function not covered" > addFrontendForType(o</span>ptions?: string | Partial&lt;Frontend&gt; | Frontend) {
2767
+ let insertIndex = <span class="cstat-no" title="statement not covered" >-1;</span>
2768
+ <span class="cstat-no" title="statement not covered" > this.frontends.forEach(<span class="fstat-no" title="function not covered" >(f</span>rontend, index) =&gt; {</span>
2769
+ <span class="cstat-no" title="statement not covered" > if (frontend.type === (options as any).type) {</span>
2770
+ <span class="cstat-no" title="statement not covered" > insertIndex = index;</span>
2771
+ }
2772
+ });
2773
+ <span class="cstat-no" title="statement not covered" > if ((options as any).type === 'h5' &amp;&amp; insertIndex === -1) {</span>
2774
+ <span class="cstat-no" title="statement not covered" > insertIndex = this.frontends.length;</span>
2775
+ }
2776
+ const node = <span class="cstat-no" title="statement not covered" >this._insertFrontendAt(options as any, insertIndex + 1);</span>
2777
+ const index = <span class="cstat-no" title="statement not covered" >this.frontends.indexOf(node);</span>
2778
+ <span class="cstat-no" title="statement not covered" > node.create({</span>
2779
+ index,
2780
+ parentNode: this,
2781
+ parentKey: 'frontends',
2782
+ });
2783
+ <span class="cstat-no" title="statement not covered" > return node;</span>
2784
+ }
2785
+ &nbsp;
2786
+ <span class="fstat-no" title="function not covered" > findComponentDependencyByName(n</span>ame: string) {
2787
+ <span class="cstat-no" title="statement not covered" > return this.componentDependencies.find((<span class="fstat-no" title="function not covered" >componentDependency) =&gt; <span class="cstat-no" title="statement not covered" >c</span>omponentDependency.name === name)</span>;</span>
2788
+ }
2789
+ &nbsp;
2790
+ <span class="fstat-no" title="function not covered" > genCustomAssetsInfo(p</span>refix: string) {
2791
+ const custom: AssetsInfo = <span class="cstat-no" title="statement not covered" >{</span>
2792
+ js: [],
2793
+ css: [],
2794
+ names: [],
2795
+ };
2796
+ const existingSet = <span class="cstat-no" title="statement not covered" >new Set();</span>
2797
+ <span class="cstat-no" title="statement not covered" > this.componentDependencies.forEach((<span class="fstat-no" title="function not covered" >dep) =&gt; {</span></span>
2798
+ const { name, version } = <span class="cstat-no" title="statement not covered" >dep;</span>
2799
+ const jsName = <span class="cstat-no" title="statement not covered" >`${prefix}/packages/${name}@${version}/dist-theme/index.js`;</span>
2800
+ <span class="cstat-no" title="statement not covered" > if (!existingSet.has(jsName)) {</span>
2801
+ <span class="cstat-no" title="statement not covered" > existingSet.add(jsName);</span>
2802
+ <span class="cstat-no" title="statement not covered" > custom.js.push(jsName);</span>
2803
+ <span class="cstat-no" title="statement not covered" > if (utils.shouldLoadCss(name, version)) {</span>
2804
+ <span class="cstat-no" title="statement not covered" > custom.css.push(`${prefix}/packages/${name}@${version}/dist-theme/index.css`);</span>
2805
+ }
2806
+ <span class="cstat-no" title="statement not covered" > custom.names.push(name);</span>
2807
+ }
2808
+ });
2809
+ <span class="cstat-no" title="statement not covered" > return custom;</span>
2810
+ }
2811
+ &nbsp;
2812
+ //================================================================================
2813
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
2814
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
2815
+ //================================================================================
2816
+ }
2817
+ &nbsp;
2818
+ export default FrontendType;
2819
+ //================================================================================
2820
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
2821
+ // 自动生成的代码已结束。下面可以手动编写。
2822
+ //================================================================================
2823
+ &nbsp;</pre></td></tr></table></pre>
2824
+
2825
+ <div class='push'></div><!-- for sticky footer -->
2826
+ </div><!-- /wrapper -->
2827
+ <div class='footer quiet pad2 space-top1 center small'>
2828
+ Code coverage generated by
2829
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
2830
+ at 2023-12-20T14:01:00.156Z
2831
+ </div>
2832
+ <script src="../../prettify.js"></script>
2833
+ <script>
2834
+ window.onload = function () {
2835
+ prettyPrint();
2836
+ };
2837
+ </script>
2838
+ <script src="../../sorter.js"></script>
2839
+ <script src="../../block-navigation.js"></script>
2840
+ </body>
2841
+ </html>
2842
+