@lcap/nasl 3.7.3-beta.3 → 3.7.4-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/out/concepts/BindAttribute__.js +3 -3
  2. package/out/concepts/BindAttribute__.js.map +1 -1
  3. package/out/concepts/BindDirective__.js +3 -3
  4. package/out/concepts/BindDirective__.js.map +1 -1
  5. package/out/concepts/CallLogic__.js +2 -2
  6. package/out/concepts/CallLogic__.js.map +1 -1
  7. package/out/concepts/MemberExpression__.js +4 -4
  8. package/out/concepts/MemberExpression__.js.map +1 -1
  9. package/out/concepts/StringLiteral__.js +3 -3
  10. package/out/concepts/StringLiteral__.js.map +1 -1
  11. package/out/concepts/ViewElement__.d.ts +3 -0
  12. package/out/concepts/ViewElement__.js +2 -2
  13. package/out/concepts/ViewElement__.js.map +1 -1
  14. package/out/concepts/basics/stdlib/nasl.processV2.js +1 -1
  15. package/out/concepts/basics/stdlib/nasl.processV2.js.map +1 -1
  16. package/out/generator/genBundleFiles.d.ts +1 -0
  17. package/out/generator/genBundleFiles.js +6 -2
  18. package/out/generator/genBundleFiles.js.map +1 -1
  19. package/out/generator/release-body/body.d.ts +1 -0
  20. package/out/generator/release-body/body.js +37 -5
  21. package/out/generator/release-body/body.js.map +1 -1
  22. package/package.json +1 -1
  23. package/sandbox/stdlib/nasl.processV2.ts +1 -1
  24. package/src/concepts/BindAttribute__.ts +3 -3
  25. package/src/concepts/BindDirective__.ts +3 -3
  26. package/src/concepts/CallLogic__.ts +2 -2
  27. package/src/concepts/MemberExpression__.ts +4 -4
  28. package/src/concepts/StringLiteral__.ts +3 -3
  29. package/src/concepts/ViewElement__.ts +5 -2
  30. package/src/concepts/basics/stdlib/nasl.processV2.ts +1 -1
  31. package/src/generator/genBundleFiles.ts +8 -3
  32. package/src/generator/release-body/body.ts +40 -4
  33. package/.nyc_output/943352aa-23df-44e0-863b-3dcd3e8bf57a.json +0 -1
  34. package/.nyc_output/processinfo/943352aa-23df-44e0-863b-3dcd3e8bf57a.json +0 -1
  35. package/.nyc_output/processinfo/index.json +0 -1
  36. package/coverage/base.css +0 -224
  37. package/coverage/block-navigation.js +0 -87
  38. package/coverage/cobertura-coverage.xml +0 -72356
  39. package/coverage/favicon.png +0 -0
  40. package/coverage/index.html +0 -161
  41. package/coverage/prettify.css +0 -1
  42. package/coverage/prettify.js +0 -2
  43. package/coverage/sort-arrow-sprite.png +0 -0
  44. package/coverage/sorter.js +0 -196
  45. package/coverage/src/automate/engine/index.html +0 -116
  46. package/coverage/src/automate/engine/utils.js.html +0 -1414
  47. package/coverage/src/bak/index.html +0 -116
  48. package/coverage/src/bak/translator.js.html +0 -622
  49. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +0 -175
  50. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +0 -169
  51. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +0 -1246
  52. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +0 -145
  53. package/coverage/src/breakpoint/generator/index.html +0 -176
  54. package/coverage/src/breakpoint/generator/index.ts.html +0 -508
  55. package/coverage/src/breakpoint/index.html +0 -116
  56. package/coverage/src/breakpoint/index.ts.html +0 -94
  57. package/coverage/src/breakpoint/shared/constants.ts.html +0 -436
  58. package/coverage/src/breakpoint/shared/index.html +0 -176
  59. package/coverage/src/breakpoint/shared/index.ts.html +0 -94
  60. package/coverage/src/breakpoint/shared/operations.ts.html +0 -160
  61. package/coverage/src/breakpoint/shared/socket.ts.html +0 -1297
  62. package/coverage/src/breakpoint/shared/utils.ts.html +0 -1087
  63. package/coverage/src/breakpoint/store/core.ts.html +0 -1600
  64. package/coverage/src/breakpoint/store/dock.ts.html +0 -733
  65. package/coverage/src/breakpoint/store/index.html +0 -146
  66. package/coverage/src/breakpoint/store/index.ts.html +0 -91
  67. package/coverage/src/common/BaseNode.ts.html +0 -3874
  68. package/coverage/src/common/Command.ts.html +0 -310
  69. package/coverage/src/common/EventEmitter.ts.html +0 -370
  70. package/coverage/src/common/Messager.ts.html +0 -820
  71. package/coverage/src/common/asyncFuncMap.ts.html +0 -127
  72. package/coverage/src/common/index.html +0 -191
  73. package/coverage/src/common/index.ts.html +0 -94
  74. package/coverage/src/concepts/Abort__.ts.html +0 -328
  75. package/coverage/src/concepts/Anchor__.ts.html +0 -646
  76. package/coverage/src/concepts/AnonymousFunction__.ts.html +0 -2029
  77. package/coverage/src/concepts/App__.ts.html +0 -13252
  78. package/coverage/src/concepts/Argument__.ts.html +0 -964
  79. package/coverage/src/concepts/Assignee__.ts.html +0 -2236
  80. package/coverage/src/concepts/AssignmentLine__.ts.html +0 -409
  81. package/coverage/src/concepts/Assignment__.ts.html +0 -1123
  82. package/coverage/src/concepts/Attribute__.ts.html +0 -733
  83. package/coverage/src/concepts/AuthInterface__.ts.html +0 -367
  84. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +0 -1984
  85. package/coverage/src/concepts/AuthLogic__.ts.html +0 -781
  86. package/coverage/src/concepts/BackendVariable__.ts.html +0 -1483
  87. package/coverage/src/concepts/Backend__.ts.html +0 -1165
  88. package/coverage/src/concepts/BatchAssignment__.ts.html +0 -3301
  89. package/coverage/src/concepts/BinaryExpression__.ts.html +0 -1441
  90. package/coverage/src/concepts/BindAttribute__.ts.html +0 -3835
  91. package/coverage/src/concepts/BindDirective__.ts.html +0 -1921
  92. package/coverage/src/concepts/BindEvent__.ts.html +0 -3406
  93. package/coverage/src/concepts/BindStyle__.ts.html +0 -1612
  94. package/coverage/src/concepts/BooleanLiteral__.ts.html +0 -418
  95. package/coverage/src/concepts/CallAuthInterface__.ts.html +0 -1615
  96. package/coverage/src/concepts/CallConnector__.ts.html +0 -922
  97. package/coverage/src/concepts/CallFunction__.ts.html +0 -2122
  98. package/coverage/src/concepts/CallInterface__.ts.html +0 -2719
  99. package/coverage/src/concepts/CallLogic__.ts.html +0 -4807
  100. package/coverage/src/concepts/CallQueryComponent__.ts.html +0 -5308
  101. package/coverage/src/concepts/Comment__.ts.html +0 -394
  102. package/coverage/src/concepts/CompletionProperty__.ts.html +0 -925
  103. package/coverage/src/concepts/ConfigGroup__.ts.html +0 -1105
  104. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +0 -424
  105. package/coverage/src/concepts/ConfigProperty__.ts.html +0 -1348
  106. package/coverage/src/concepts/Configuration__.ts.html +0 -1027
  107. package/coverage/src/concepts/Connection__.ts.html +0 -1360
  108. package/coverage/src/concepts/ConnectorTrigger__.ts.html +0 -595
  109. package/coverage/src/concepts/Connector__.ts.html +0 -4255
  110. package/coverage/src/concepts/Constant__.ts.html +0 -913
  111. package/coverage/src/concepts/DataSource__.ts.html +0 -1771
  112. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +0 -331
  113. package/coverage/src/concepts/Destination__.ts.html +0 -2731
  114. package/coverage/src/concepts/End__.ts.html +0 -433
  115. package/coverage/src/concepts/EntityIndex__.ts.html +0 -787
  116. package/coverage/src/concepts/EntityProperty__.ts.html +0 -2668
  117. package/coverage/src/concepts/Entity__.ts.html +0 -2950
  118. package/coverage/src/concepts/EnumItem__.ts.html +0 -550
  119. package/coverage/src/concepts/Enum__.ts.html +0 -1231
  120. package/coverage/src/concepts/Event__.ts.html +0 -1084
  121. package/coverage/src/concepts/ExternalDestination__.ts.html +0 -1033
  122. package/coverage/src/concepts/ForEachStatement__.ts.html +0 -1957
  123. package/coverage/src/concepts/FrontendLibrary__.ts.html +0 -1711
  124. package/coverage/src/concepts/FrontendVariable__.ts.html +0 -292
  125. package/coverage/src/concepts/Frontend__.ts.html +0 -3961
  126. package/coverage/src/concepts/Function__.ts.html +0 -3598
  127. package/coverage/src/concepts/Identifier__.ts.html +0 -1057
  128. package/coverage/src/concepts/IfStatement__.ts.html +0 -1594
  129. package/coverage/src/concepts/Integration__.ts.html +0 -1228
  130. package/coverage/src/concepts/InterfaceParam__.ts.html +0 -1087
  131. package/coverage/src/concepts/Interface__.ts.html +0 -3394
  132. package/coverage/src/concepts/JSBlock__.ts.html +0 -421
  133. package/coverage/src/concepts/JavaLogic__.ts.html +0 -460
  134. package/coverage/src/concepts/LogicItem__.ts.html +0 -1171
  135. package/coverage/src/concepts/Logic__.ts.html +0 -7408
  136. package/coverage/src/concepts/MatchCase__.ts.html +0 -2929
  137. package/coverage/src/concepts/Match__.ts.html +0 -2455
  138. package/coverage/src/concepts/MemberExpression__.ts.html +0 -1726
  139. package/coverage/src/concepts/MicroApp__.ts.html +0 -436
  140. package/coverage/src/concepts/Module__.ts.html +0 -9220
  141. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +0 -1045
  142. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +0 -1018
  143. package/coverage/src/concepts/Namespace__.ts.html +0 -7942
  144. package/coverage/src/concepts/NewComposite__.ts.html +0 -4729
  145. package/coverage/src/concepts/NewList__.ts.html +0 -1618
  146. package/coverage/src/concepts/NewMap__.ts.html +0 -2326
  147. package/coverage/src/concepts/New__.ts.html +0 -289
  148. package/coverage/src/concepts/NullLiteral__.ts.html +0 -349
  149. package/coverage/src/concepts/NumericLiteral__.ts.html +0 -676
  150. package/coverage/src/concepts/OqlQueryComponent__.ts.html +0 -1141
  151. package/coverage/src/concepts/OverriddenLogic__.ts.html +0 -6817
  152. package/coverage/src/concepts/Param__.ts.html +0 -1726
  153. package/coverage/src/concepts/Point__.ts.html +0 -331
  154. package/coverage/src/concepts/ProcessComponent__.ts.html +0 -1666
  155. package/coverage/src/concepts/ProcessElement__.ts.html +0 -5884
  156. package/coverage/src/concepts/ProcessOutcome__.ts.html +0 -352
  157. package/coverage/src/concepts/ProcessOutcomes__.ts.html +0 -343
  158. package/coverage/src/concepts/Process__.ts.html +0 -4768
  159. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +0 -568
  160. package/coverage/src/concepts/QueryFieldExpression__.ts.html +0 -583
  161. package/coverage/src/concepts/QueryFromExpression__.ts.html +0 -910
  162. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +0 -559
  163. package/coverage/src/concepts/QueryJoinExpression__.ts.html +0 -1567
  164. package/coverage/src/concepts/QueryLimitExpression__.ts.html +0 -637
  165. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +0 -679
  166. package/coverage/src/concepts/QuerySelectExpression__.ts.html +0 -1714
  167. package/coverage/src/concepts/Rect__.ts.html +0 -373
  168. package/coverage/src/concepts/Return__.ts.html +0 -1312
  169. package/coverage/src/concepts/Role__.ts.html +0 -601
  170. package/coverage/src/concepts/SelectMembers__.ts.html +0 -1246
  171. package/coverage/src/concepts/Slot__.ts.html +0 -628
  172. package/coverage/src/concepts/SqlQueryComponent__.ts.html +0 -982
  173. package/coverage/src/concepts/Start__.ts.html +0 -304
  174. package/coverage/src/concepts/StringInterpolation__.ts.html +0 -1129
  175. package/coverage/src/concepts/StringLiteral__.ts.html +0 -505
  176. package/coverage/src/concepts/StructureProperty__.ts.html +0 -1132
  177. package/coverage/src/concepts/Structure__.ts.html +0 -2092
  178. package/coverage/src/concepts/SwitchCase__.ts.html +0 -1174
  179. package/coverage/src/concepts/SwitchStatement__.ts.html +0 -877
  180. package/coverage/src/concepts/Theme__.ts.html +0 -358
  181. package/coverage/src/concepts/Transactional__.ts.html +0 -628
  182. package/coverage/src/concepts/TriggerEvent__.ts.html +0 -1012
  183. package/coverage/src/concepts/TriggerLauncher__.ts.html +0 -775
  184. package/coverage/src/concepts/TypeAnnotation__.ts.html +0 -3718
  185. package/coverage/src/concepts/TypeParam__.ts.html +0 -319
  186. package/coverage/src/concepts/UnaryExpression__.ts.html +0 -697
  187. package/coverage/src/concepts/Unparsed__.ts.html +0 -394
  188. package/coverage/src/concepts/UseComponent__.ts.html +0 -331
  189. package/coverage/src/concepts/ValidationRule__.ts.html +0 -1840
  190. package/coverage/src/concepts/Variable__.ts.html +0 -1489
  191. package/coverage/src/concepts/ViewBlock__.ts.html +0 -352
  192. package/coverage/src/concepts/ViewComponent__.ts.html +0 -4180
  193. package/coverage/src/concepts/ViewElement__.ts.html +0 -8803
  194. package/coverage/src/concepts/View__.ts.html +0 -8620
  195. package/coverage/src/concepts/WhileStatement__.ts.html +0 -1063
  196. package/coverage/src/concepts/basics/stdlib/index.html +0 -356
  197. package/coverage/src/concepts/basics/stdlib/index.ts.html +0 -208
  198. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +0 -565
  199. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +0 -517
  200. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +0 -226
  201. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +0 -172
  202. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +0 -214
  203. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +0 -145
  204. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +0 -589
  205. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +0 -214
  206. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +0 -229
  207. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +0 -268
  208. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +0 -1999
  209. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +0 -3259
  210. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +0 -6844
  211. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +0 -1768
  212. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +0 -163
  213. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +0 -664
  214. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +0 -121
  215. package/coverage/src/concepts/basics/types/index.html +0 -131
  216. package/coverage/src/concepts/basics/types/index.ts.html +0 -160
  217. package/coverage/src/concepts/index.html +0 -1961
  218. package/coverage/src/concepts/index.ts.html +0 -103
  219. package/coverage/src/concepts/index__.ts.html +0 -451
  220. package/coverage/src/config.ts.html +0 -343
  221. package/coverage/src/decorators/index.html +0 -131
  222. package/coverage/src/decorators/index.ts.html +0 -739
  223. package/coverage/src/decorators/promise.ts.html +0 -169
  224. package/coverage/src/eventBus.ts.html +0 -100
  225. package/coverage/src/generator/compileComponent.ts.html +0 -142
  226. package/coverage/src/generator/genBundleFiles.ts.html +0 -1828
  227. package/coverage/src/generator/genHash.ts.html +0 -124
  228. package/coverage/src/generator/genMetaData.ts.html +0 -1042
  229. package/coverage/src/generator/genReleaseBody.ts.html +0 -1282
  230. package/coverage/src/generator/icestark.ts.html +0 -220
  231. package/coverage/src/generator/index.html +0 -266
  232. package/coverage/src/generator/index.ts.html +0 -106
  233. package/coverage/src/generator/microApp.ts.html +0 -172
  234. package/coverage/src/generator/permission.ts.html +0 -1036
  235. package/coverage/src/generator/qiankun.ts.html +0 -232
  236. package/coverage/src/generator/styleReplacer.ts.html +0 -199
  237. package/coverage/src/index.html +0 -116
  238. package/coverage/src/index.ts.html +0 -121
  239. package/coverage/src/manager/diagnostic.ts.html +0 -442
  240. package/coverage/src/manager/index.html +0 -131
  241. package/coverage/src/manager/stepRecorder.ts.html +0 -457
  242. package/coverage/src/natural/genNaturalTS.ts.html +0 -355
  243. package/coverage/src/natural/index.html +0 -161
  244. package/coverage/src/natural/index.ts.html +0 -91
  245. package/coverage/src/natural/naslStdlibMap.ts.html +0 -157
  246. package/coverage/src/natural/transformTSCode.ts.html +0 -2647
  247. package/coverage/src/sentry/index.html +0 -116
  248. package/coverage/src/sentry/index.ts.html +0 -676
  249. package/coverage/src/server/createUiTs.ts.html +0 -910
  250. package/coverage/src/server/entity2LogicNamespace.ts.html +0 -1294
  251. package/coverage/src/server/event.js.html +0 -526
  252. package/coverage/src/server/extendBaseNode.ts.html +0 -1762
  253. package/coverage/src/server/formatTsUtils.ts.html +0 -2689
  254. package/coverage/src/server/getConnector.ts.html +0 -316
  255. package/coverage/src/server/getExtensionModules.ts.html +0 -178
  256. package/coverage/src/server/getFunctions.ts.html +0 -133
  257. package/coverage/src/server/getInterfaces.ts.html +0 -229
  258. package/coverage/src/server/getLogging.ts.html +0 -100
  259. package/coverage/src/server/getLogics.ts.html +0 -1363
  260. package/coverage/src/server/getMemberIdentifier.ts.html +0 -1561
  261. package/coverage/src/server/getProcessComponents.ts.html +0 -112
  262. package/coverage/src/server/getProcesses.ts.html +0 -2023
  263. package/coverage/src/server/getValidates.ts.html +0 -115
  264. package/coverage/src/server/index.html +0 -401
  265. package/coverage/src/server/index.ts.html +0 -229
  266. package/coverage/src/server/naslServer.ts.html +0 -14401
  267. package/coverage/src/server/naslStdlibMap.ts.html +0 -241
  268. package/coverage/src/server/process2LogicNamespace.ts.html +0 -454
  269. package/coverage/src/server/translator.ts.html +0 -2566
  270. package/coverage/src/service/creator/add.configs.js.html +0 -379
  271. package/coverage/src/service/creator/errHandles.js.html +0 -322
  272. package/coverage/src/service/creator/index.html +0 -146
  273. package/coverage/src/service/creator/index.js.html +0 -352
  274. package/coverage/src/service/datasource/api.js.html +0 -118
  275. package/coverage/src/service/datasource/index.html +0 -131
  276. package/coverage/src/service/datasource/index.js.html +0 -103
  277. package/coverage/src/service/logic/api.js.html +0 -109
  278. package/coverage/src/service/logic/index.html +0 -131
  279. package/coverage/src/service/logic/index.js.html +0 -103
  280. package/coverage/src/service/storage/api.js.html +0 -202
  281. package/coverage/src/service/storage/index.html +0 -206
  282. package/coverage/src/service/storage/index.ts.html +0 -103
  283. package/coverage/src/service/storage/init.ts.html +0 -2761
  284. package/coverage/src/service/storage/jsoner.ts.html +0 -502
  285. package/coverage/src/service/storage/map.ts.html +0 -256
  286. package/coverage/src/service/storage/service.ts.html +0 -331
  287. package/coverage/src/service/storage/storagePoint.ts.html +0 -304
  288. package/coverage/src/templator/genCallComponentLogic.ts.html +0 -163
  289. package/coverage/src/templator/genCreateBlock.ts.html +0 -1093
  290. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +0 -1609
  291. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +0 -2254
  292. package/coverage/src/templator/genEditTableBlock.ts.html +0 -955
  293. package/coverage/src/templator/genEnumSelectBlock.ts.html +0 -178
  294. package/coverage/src/templator/genGetBlock.ts.html +0 -451
  295. package/coverage/src/templator/genGridViewBlock.ts.html +0 -1114
  296. package/coverage/src/templator/genListViewBlock.ts.html +0 -475
  297. package/coverage/src/templator/genQueryComponent.ts.html +0 -1207
  298. package/coverage/src/templator/genSelectBlock.ts.html +0 -1243
  299. package/coverage/src/templator/genTableBlock.ts.html +0 -910
  300. package/coverage/src/templator/genUpdateBlock.ts.html +0 -1192
  301. package/coverage/src/templator/index.html +0 -326
  302. package/coverage/src/templator/index.ts.html +0 -154
  303. package/coverage/src/templator/utils.ts.html +0 -1861
  304. package/coverage/src/translator/constant.ts.html +0 -106
  305. package/coverage/src/translator/index.html +0 -146
  306. package/coverage/src/translator/index.ts.html +0 -94
  307. package/coverage/src/translator/utils.ts.html +0 -436
  308. package/coverage/src/utils/cookie.ts.html +0 -265
  309. package/coverage/src/utils/env.ts.html +0 -91
  310. package/coverage/src/utils/index.html +0 -206
  311. package/coverage/src/utils/index.ts.html +0 -1429
  312. package/coverage/src/utils/logger.ts.html +0 -145
  313. package/coverage/src/utils/sortTsString.ts.html +0 -187
  314. package/coverage/src/utils/string.ts.html +0 -544
  315. package/coverage/src/utils/time-slicing/controller.ts.html +0 -1144
  316. package/coverage/src/utils/time-slicing/index.html +0 -221
  317. package/coverage/src/utils/time-slicing/index.ts.html +0 -103
  318. package/coverage/src/utils/time-slicing/page-state.ts.html +0 -121
  319. package/coverage/src/utils/time-slicing/performance.ts.html +0 -253
  320. package/coverage/src/utils/time-slicing/runner.ts.html +0 -241
  321. package/coverage/src/utils/time-slicing/tool.ts.html +0 -220
  322. package/coverage/src/utils/time-slicing/utils.ts.html +0 -355
  323. package/coverage/src/utils/time-slicing/wrapper.ts.html +0 -259
  324. package/coverage/src/utils/time-slicing.ts.html +0 -418
  325. package/coverage/src/utils/traverse.ts.html +0 -568
  326. package/coverage/src/utils/types.ts.html +0 -133
  327. package/coverage/src/utils/window.ts.html +0 -112
@@ -1,2719 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/concepts/CallInterface__.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> CallInterface__.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">35.73% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>134/375</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">25.62% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>51/199</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">30.86% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>25/81</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">35.92% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>120/334</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></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
945
- <span class="cline-any cline-yes">1x</span>
946
- <span class="cline-any cline-neutral">&nbsp;</span>
947
- <span class="cline-any cline-yes">1x</span>
948
- <span class="cline-any cline-neutral">&nbsp;</span>
949
- <span class="cline-any cline-yes">1x</span>
950
- <span class="cline-any cline-neutral">&nbsp;</span>
951
- <span class="cline-any cline-yes">1x</span>
952
- <span class="cline-any cline-neutral">&nbsp;</span>
953
- <span class="cline-any cline-yes">1x</span>
954
- <span class="cline-any cline-neutral">&nbsp;</span>
955
- <span class="cline-any cline-neutral">&nbsp;</span>
956
- <span class="cline-any cline-neutral">&nbsp;</span>
957
- <span class="cline-any cline-neutral">&nbsp;</span>
958
- <span class="cline-any cline-neutral">&nbsp;</span>
959
- <span class="cline-any cline-neutral">&nbsp;</span>
960
- <span class="cline-any cline-yes">1x</span>
961
- <span class="cline-any cline-neutral">&nbsp;</span>
962
- <span class="cline-any cline-neutral">&nbsp;</span>
963
- <span class="cline-any cline-neutral">&nbsp;</span>
964
- <span class="cline-any cline-neutral">&nbsp;</span>
965
- <span class="cline-any cline-yes">1x</span>
966
- <span class="cline-any cline-yes">1x</span>
967
- <span class="cline-any cline-neutral">&nbsp;</span>
968
- <span class="cline-any cline-neutral">&nbsp;</span>
969
- <span class="cline-any cline-neutral">&nbsp;</span>
970
- <span class="cline-any cline-neutral">&nbsp;</span>
971
- <span class="cline-any cline-neutral">&nbsp;</span>
972
- <span class="cline-any cline-neutral">&nbsp;</span>
973
- <span class="cline-any cline-neutral">&nbsp;</span>
974
- <span class="cline-any cline-yes">1x</span>
975
- <span class="cline-any cline-neutral">&nbsp;</span>
976
- <span class="cline-any cline-yes">1x</span>
977
- <span class="cline-any cline-neutral">&nbsp;</span>
978
- <span class="cline-any cline-neutral">&nbsp;</span>
979
- <span class="cline-any cline-neutral">&nbsp;</span>
980
- <span class="cline-any cline-neutral">&nbsp;</span>
981
- <span class="cline-any cline-neutral">&nbsp;</span>
982
- <span class="cline-any cline-neutral">&nbsp;</span>
983
- <span class="cline-any cline-neutral">&nbsp;</span>
984
- <span class="cline-any cline-neutral">&nbsp;</span>
985
- <span class="cline-any cline-neutral">&nbsp;</span>
986
- <span class="cline-any cline-neutral">&nbsp;</span>
987
- <span class="cline-any cline-neutral">&nbsp;</span>
988
- <span class="cline-any cline-yes">16x</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-neutral">&nbsp;</span>
998
- <span class="cline-any cline-neutral">&nbsp;</span>
999
- <span class="cline-any cline-neutral">&nbsp;</span>
1000
- <span class="cline-any cline-neutral">&nbsp;</span>
1001
- <span class="cline-any cline-neutral">&nbsp;</span>
1002
- <span class="cline-any cline-yes">1x</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-yes">1x</span>
1010
- <span class="cline-any cline-neutral">&nbsp;</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-yes">16x</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-yes">16x</span>
1022
- <span class="cline-any cline-yes">16x</span>
1023
- <span class="cline-any cline-yes">16x</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-yes">16x</span>
1028
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</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-neutral">&nbsp;</span>
1045
- <span class="cline-any cline-no">&nbsp;</span>
1046
- <span class="cline-any cline-no">&nbsp;</span>
1047
- <span class="cline-any cline-neutral">&nbsp;</span>
1048
- <span class="cline-any cline-no">&nbsp;</span>
1049
- <span class="cline-any cline-no">&nbsp;</span>
1050
- <span class="cline-any cline-no">&nbsp;</span>
1051
- <span class="cline-any cline-no">&nbsp;</span>
1052
- <span class="cline-any cline-neutral">&nbsp;</span>
1053
- <span class="cline-any cline-no">&nbsp;</span>
1054
- <span class="cline-any cline-neutral">&nbsp;</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-no">&nbsp;</span>
1063
- <span class="cline-any cline-no">&nbsp;</span>
1064
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
1071
- <span class="cline-any cline-neutral">&nbsp;</span>
1072
- <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</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-no">&nbsp;</span>
1080
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1085
- <span class="cline-any cline-no">&nbsp;</span>
1086
- <span class="cline-any cline-neutral">&nbsp;</span>
1087
- <span class="cline-any cline-neutral">&nbsp;</span>
1088
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1093
- <span class="cline-any cline-neutral">&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-neutral">&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-no">&nbsp;</span>
1104
- <span class="cline-any cline-no">&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-no">&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-neutral">&nbsp;</span>
1124
- <span class="cline-any cline-neutral">&nbsp;</span>
1125
- <span class="cline-any cline-neutral">&nbsp;</span>
1126
- <span class="cline-any cline-neutral">&nbsp;</span>
1127
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1135
- <span class="cline-any cline-neutral">&nbsp;</span>
1136
- <span class="cline-any cline-neutral">&nbsp;</span>
1137
- <span class="cline-any cline-no">&nbsp;</span>
1138
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1143
- <span class="cline-any cline-no">&nbsp;</span>
1144
- <span class="cline-any cline-neutral">&nbsp;</span>
1145
- <span class="cline-any cline-neutral">&nbsp;</span>
1146
- <span class="cline-any cline-neutral">&nbsp;</span>
1147
- <span class="cline-any cline-neutral">&nbsp;</span>
1148
- <span class="cline-any cline-neutral">&nbsp;</span>
1149
- <span class="cline-any cline-neutral">&nbsp;</span>
1150
- <span class="cline-any cline-no">&nbsp;</span>
1151
- <span class="cline-any cline-no">&nbsp;</span>
1152
- <span class="cline-any cline-no">&nbsp;</span>
1153
- <span class="cline-any cline-no">&nbsp;</span>
1154
- <span class="cline-any cline-no">&nbsp;</span>
1155
- <span class="cline-any cline-no">&nbsp;</span>
1156
- <span class="cline-any cline-no">&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-no">&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-yes">16x</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-no">&nbsp;</span>
1179
- <span class="cline-any cline-no">&nbsp;</span>
1180
- <span class="cline-any cline-no">&nbsp;</span>
1181
- <span class="cline-any cline-neutral">&nbsp;</span>
1182
- <span class="cline-any cline-no">&nbsp;</span>
1183
- <span class="cline-any cline-no">&nbsp;</span>
1184
- <span class="cline-any cline-no">&nbsp;</span>
1185
- <span class="cline-any cline-no">&nbsp;</span>
1186
- <span class="cline-any cline-neutral">&nbsp;</span>
1187
- <span class="cline-any cline-neutral">&nbsp;</span>
1188
- <span class="cline-any cline-no">&nbsp;</span>
1189
- <span class="cline-any cline-no">&nbsp;</span>
1190
- <span class="cline-any cline-neutral">&nbsp;</span>
1191
- <span class="cline-any cline-no">&nbsp;</span>
1192
- <span class="cline-any cline-no">&nbsp;</span>
1193
- <span class="cline-any cline-neutral">&nbsp;</span>
1194
- <span class="cline-any cline-no">&nbsp;</span>
1195
- <span class="cline-any cline-no">&nbsp;</span>
1196
- <span class="cline-any cline-no">&nbsp;</span>
1197
- <span class="cline-any cline-no">&nbsp;</span>
1198
- <span class="cline-any cline-neutral">&nbsp;</span>
1199
- <span class="cline-any cline-no">&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-no">&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-no">&nbsp;</span>
1206
- <span class="cline-any cline-neutral">&nbsp;</span>
1207
- <span class="cline-any cline-no">&nbsp;</span>
1208
- <span class="cline-any cline-no">&nbsp;</span>
1209
- <span class="cline-any cline-no">&nbsp;</span>
1210
- <span class="cline-any cline-no">&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-no">&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-no">&nbsp;</span>
1217
- <span class="cline-any cline-neutral">&nbsp;</span>
1218
- <span class="cline-any cline-no">&nbsp;</span>
1219
- <span class="cline-any cline-no">&nbsp;</span>
1220
- <span class="cline-any cline-neutral">&nbsp;</span>
1221
- <span class="cline-any cline-no">&nbsp;</span>
1222
- <span class="cline-any cline-no">&nbsp;</span>
1223
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1232
- <span class="cline-any cline-no">&nbsp;</span>
1233
- <span class="cline-any cline-no">&nbsp;</span>
1234
- <span class="cline-any cline-neutral">&nbsp;</span>
1235
- <span class="cline-any cline-neutral">&nbsp;</span>
1236
- <span class="cline-any cline-neutral">&nbsp;</span>
1237
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1243
- <span class="cline-any cline-neutral">&nbsp;</span>
1244
- <span class="cline-any cline-no">&nbsp;</span>
1245
- <span class="cline-any cline-no">&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-neutral">&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-yes">8x</span>
1253
- <span class="cline-any cline-yes">8x</span>
1254
- <span class="cline-any cline-yes">8x</span>
1255
- <span class="cline-any cline-yes">8x</span>
1256
- <span class="cline-any cline-yes">8x</span>
1257
- <span class="cline-any cline-neutral">&nbsp;</span>
1258
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1263
- <span class="cline-any cline-no">&nbsp;</span>
1264
- <span class="cline-any cline-no">&nbsp;</span>
1265
- <span class="cline-any cline-no">&nbsp;</span>
1266
- <span class="cline-any cline-no">&nbsp;</span>
1267
- <span class="cline-any cline-neutral">&nbsp;</span>
1268
- <span class="cline-any cline-no">&nbsp;</span>
1269
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1274
- <span class="cline-any cline-no">&nbsp;</span>
1275
- <span class="cline-any cline-no">&nbsp;</span>
1276
- <span class="cline-any cline-no">&nbsp;</span>
1277
- <span class="cline-any cline-no">&nbsp;</span>
1278
- <span class="cline-any cline-neutral">&nbsp;</span>
1279
- <span class="cline-any cline-no">&nbsp;</span>
1280
- <span class="cline-any cline-no">&nbsp;</span>
1281
- <span class="cline-any cline-neutral">&nbsp;</span>
1282
- <span class="cline-any cline-neutral">&nbsp;</span>
1283
- <span class="cline-any cline-neutral">&nbsp;</span>
1284
- <span class="cline-any cline-yes">8x</span>
1285
- <span class="cline-any cline-yes">8x</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-yes">8x</span>
1290
- <span class="cline-any cline-yes">8x</span>
1291
- <span class="cline-any cline-yes">8x</span>
1292
- <span class="cline-any cline-no">&nbsp;</span>
1293
- <span class="cline-any cline-yes">8x</span>
1294
- <span class="cline-any cline-no">&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-yes">8x</span>
1298
- <span class="cline-any cline-neutral">&nbsp;</span>
1299
- <span class="cline-any cline-yes">8x</span>
1300
- <span class="cline-any cline-yes">8x</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-yes">8x</span>
1305
- <span class="cline-any cline-yes">8x</span>
1306
- <span class="cline-any cline-yes">12x</span>
1307
- <span class="cline-any cline-yes">12x</span>
1308
- <span class="cline-any cline-yes">8x</span>
1309
- <span class="cline-any cline-yes">12x</span>
1310
- <span class="cline-any cline-neutral">&nbsp;</span>
1311
- <span class="cline-any cline-yes">3x</span>
1312
- <span class="cline-any cline-yes">2x</span>
1313
- <span class="cline-any cline-neutral">&nbsp;</span>
1314
- <span class="cline-any cline-yes">3x</span>
1315
- <span class="cline-any cline-neutral">&nbsp;</span>
1316
- <span class="cline-any cline-yes">12x</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-yes">8x</span>
1320
- <span class="cline-any cline-yes">32x</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-yes">48x</span>
1324
- <span class="cline-any cline-neutral">&nbsp;</span>
1325
- <span class="cline-any cline-yes">32x</span>
1326
- <span class="cline-any cline-yes">12x</span>
1327
- <span class="cline-any cline-yes">1x</span>
1328
- <span class="cline-any cline-yes">11x</span>
1329
- <span class="cline-any cline-yes">9x</span>
1330
- <span class="cline-any cline-neutral">&nbsp;</span>
1331
- <span class="cline-any cline-yes">2x</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-yes">12x</span>
1335
- <span class="cline-any cline-yes">7x</span>
1336
- <span class="cline-any cline-neutral">&nbsp;</span>
1337
- <span class="cline-any cline-neutral">&nbsp;</span>
1338
- <span class="cline-any cline-neutral">&nbsp;</span>
1339
- <span class="cline-any cline-yes">32x</span>
1340
- <span class="cline-any cline-no">&nbsp;</span>
1341
- <span class="cline-any cline-neutral">&nbsp;</span>
1342
- <span class="cline-any cline-neutral">&nbsp;</span>
1343
- <span class="cline-any cline-yes">32x</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-yes">8x</span>
1347
- <span class="cline-any cline-neutral">&nbsp;</span>
1348
- <span class="cline-any cline-yes">8x</span>
1349
- <span class="cline-any cline-yes">8x</span>
1350
- <span class="cline-any cline-yes">8x</span>
1351
- <span class="cline-any cline-yes">8x</span>
1352
- <span class="cline-any cline-yes">8x</span>
1353
- <span class="cline-any cline-yes">8x</span>
1354
- <span class="cline-any cline-yes">8x</span>
1355
- <span class="cline-any cline-neutral">&nbsp;</span>
1356
- <span class="cline-any cline-yes">8x</span>
1357
- <span class="cline-any cline-yes">2x</span>
1358
- <span class="cline-any cline-yes">2x</span>
1359
- <span class="cline-any cline-neutral">&nbsp;</span>
1360
- <span class="cline-any cline-yes">6x</span>
1361
- <span class="cline-any cline-yes">6x</span>
1362
- <span class="cline-any cline-yes">6x</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-yes">8x</span>
1366
- <span class="cline-any cline-yes">8x</span>
1367
- <span class="cline-any cline-yes">8x</span>
1368
- <span class="cline-any cline-yes">8x</span>
1369
- <span class="cline-any cline-no">&nbsp;</span>
1370
- <span class="cline-any cline-neutral">&nbsp;</span>
1371
- <span class="cline-any cline-yes">8x</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-yes">1x</span>
1376
- <span class="cline-any cline-yes">8x</span>
1377
- <span class="cline-any cline-neutral">&nbsp;</span>
1378
- <span class="cline-any cline-yes">8x</span>
1379
- <span class="cline-any cline-neutral">&nbsp;</span>
1380
- <span class="cline-any cline-yes">8x</span>
1381
- <span class="cline-any cline-yes">7x</span>
1382
- <span class="cline-any cline-yes">7x</span>
1383
- <span class="cline-any cline-yes">12x</span>
1384
- <span class="cline-any cline-yes">12x</span>
1385
- <span class="cline-any cline-neutral">&nbsp;</span>
1386
- <span class="cline-any cline-yes">7x</span>
1387
- <span class="cline-any cline-neutral">&nbsp;</span>
1388
- <span class="cline-any cline-yes">8x</span>
1389
- <span class="cline-any cline-yes">8x</span>
1390
- <span class="cline-any cline-neutral">&nbsp;</span>
1391
- <span class="cline-any cline-neutral">&nbsp;</span>
1392
- <span class="cline-any cline-neutral">&nbsp;</span>
1393
- <span class="cline-any cline-neutral">&nbsp;</span>
1394
- <span class="cline-any cline-neutral">&nbsp;</span>
1395
- <span class="cline-any cline-neutral">&nbsp;</span>
1396
- <span class="cline-any cline-neutral">&nbsp;</span>
1397
- <span class="cline-any cline-neutral">&nbsp;</span>
1398
- <span class="cline-any cline-neutral">&nbsp;</span>
1399
- <span class="cline-any cline-neutral">&nbsp;</span>
1400
- <span class="cline-any cline-neutral">&nbsp;</span>
1401
- <span class="cline-any cline-neutral">&nbsp;</span>
1402
- <span class="cline-any cline-neutral">&nbsp;</span>
1403
- <span class="cline-any cline-yes">8x</span>
1404
- <span class="cline-any cline-neutral">&nbsp;</span>
1405
- <span class="cline-any cline-yes">8x</span>
1406
- <span class="cline-any cline-yes">8x</span>
1407
- <span class="cline-any cline-neutral">&nbsp;</span>
1408
- <span class="cline-any cline-neutral">&nbsp;</span>
1409
- <span class="cline-any cline-neutral">&nbsp;</span>
1410
- <span class="cline-any cline-yes">1x</span>
1411
- <span class="cline-any cline-no">&nbsp;</span>
1412
- <span class="cline-any cline-neutral">&nbsp;</span>
1413
- <span class="cline-any cline-no">&nbsp;</span>
1414
- <span class="cline-any cline-neutral">&nbsp;</span>
1415
- <span class="cline-any cline-no">&nbsp;</span>
1416
- <span class="cline-any cline-no">&nbsp;</span>
1417
- <span class="cline-any cline-no">&nbsp;</span>
1418
- <span class="cline-any cline-no">&nbsp;</span>
1419
- <span class="cline-any cline-no">&nbsp;</span>
1420
- <span class="cline-any cline-neutral">&nbsp;</span>
1421
- <span class="cline-any cline-no">&nbsp;</span>
1422
- <span class="cline-any cline-neutral">&nbsp;</span>
1423
- <span class="cline-any cline-no">&nbsp;</span>
1424
- <span class="cline-any cline-no">&nbsp;</span>
1425
- <span class="cline-any cline-neutral">&nbsp;</span>
1426
- <span class="cline-any cline-neutral">&nbsp;</span>
1427
- <span class="cline-any cline-neutral">&nbsp;</span>
1428
- <span class="cline-any cline-neutral">&nbsp;</span>
1429
- <span class="cline-any cline-neutral">&nbsp;</span>
1430
- <span class="cline-any cline-neutral">&nbsp;</span>
1431
- <span class="cline-any cline-neutral">&nbsp;</span>
1432
- <span class="cline-any cline-neutral">&nbsp;</span>
1433
- <span class="cline-any cline-neutral">&nbsp;</span>
1434
- <span class="cline-any cline-neutral">&nbsp;</span>
1435
- <span class="cline-any cline-neutral">&nbsp;</span>
1436
- <span class="cline-any cline-neutral">&nbsp;</span>
1437
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
1441
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1446
- <span class="cline-any cline-neutral">&nbsp;</span>
1447
- <span class="cline-any cline-neutral">&nbsp;</span>
1448
- <span class="cline-any cline-neutral">&nbsp;</span>
1449
- <span class="cline-any cline-no">&nbsp;</span>
1450
- <span class="cline-any cline-no">&nbsp;</span>
1451
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1456
- <span class="cline-any cline-yes">24x</span>
1457
- <span class="cline-any cline-neutral">&nbsp;</span>
1458
- <span class="cline-any cline-neutral">&nbsp;</span>
1459
- <span class="cline-any cline-neutral">&nbsp;</span>
1460
- <span class="cline-any cline-yes">8x</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-neutral">&nbsp;</span>
1470
- <span class="cline-any cline-neutral">&nbsp;</span>
1471
- <span class="cline-any cline-neutral">&nbsp;</span>
1472
- <span class="cline-any cline-neutral">&nbsp;</span>
1473
- <span class="cline-any cline-neutral">&nbsp;</span>
1474
- <span class="cline-any cline-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-neutral">&nbsp;</span>
1493
- <span class="cline-any cline-neutral">&nbsp;</span>
1494
- <span class="cline-any cline-neutral">&nbsp;</span>
1495
- <span class="cline-any cline-neutral">&nbsp;</span>
1496
- <span class="cline-any cline-neutral">&nbsp;</span>
1497
- <span class="cline-any cline-neutral">&nbsp;</span>
1498
- <span class="cline-any cline-neutral">&nbsp;</span>
1499
- <span class="cline-any cline-neutral">&nbsp;</span>
1500
- <span class="cline-any cline-neutral">&nbsp;</span>
1501
- <span class="cline-any cline-neutral">&nbsp;</span>
1502
- <span class="cline-any cline-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-neutral">&nbsp;</span>
1524
- <span class="cline-any cline-neutral">&nbsp;</span>
1525
- <span class="cline-any cline-neutral">&nbsp;</span>
1526
- <span class="cline-any cline-neutral">&nbsp;</span>
1527
- <span class="cline-any cline-neutral">&nbsp;</span>
1528
- <span class="cline-any cline-neutral">&nbsp;</span>
1529
- <span class="cline-any cline-neutral">&nbsp;</span>
1530
- <span class="cline-any cline-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-yes">8x</span>
1536
- <span class="cline-any cline-no">&nbsp;</span>
1537
- <span class="cline-any cline-neutral">&nbsp;</span>
1538
- <span class="cline-any cline-yes">8x</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-yes">8x</span>
1543
- <span class="cline-any cline-yes">8x</span>
1544
- <span class="cline-any cline-yes">8x</span>
1545
- <span class="cline-any cline-neutral">&nbsp;</span>
1546
- <span class="cline-any cline-neutral">&nbsp;</span>
1547
- <span class="cline-any cline-neutral">&nbsp;</span>
1548
- <span class="cline-any cline-no">&nbsp;</span>
1549
- <span class="cline-any cline-neutral">&nbsp;</span>
1550
- <span class="cline-any cline-neutral">&nbsp;</span>
1551
- <span class="cline-any cline-neutral">&nbsp;</span>
1552
- <span class="cline-any cline-no">&nbsp;</span>
1553
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1562
- <span class="cline-any cline-no">&nbsp;</span>
1563
- <span class="cline-any cline-no">&nbsp;</span>
1564
- <span class="cline-any cline-no">&nbsp;</span>
1565
- <span class="cline-any cline-no">&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-no">&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-neutral">&nbsp;</span>
1575
- <span class="cline-any cline-neutral">&nbsp;</span>
1576
- <span class="cline-any cline-neutral">&nbsp;</span>
1577
- <span class="cline-any cline-neutral">&nbsp;</span>
1578
- <span class="cline-any cline-no">&nbsp;</span>
1579
- <span class="cline-any cline-neutral">&nbsp;</span>
1580
- <span class="cline-any cline-no">&nbsp;</span>
1581
- <span class="cline-any cline-neutral">&nbsp;</span>
1582
- <span class="cline-any cline-no">&nbsp;</span>
1583
- <span class="cline-any cline-no">&nbsp;</span>
1584
- <span class="cline-any cline-neutral">&nbsp;</span>
1585
- <span class="cline-any cline-neutral">&nbsp;</span>
1586
- <span class="cline-any cline-no">&nbsp;</span>
1587
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1592
- <span class="cline-any cline-neutral">&nbsp;</span>
1593
- <span class="cline-any cline-no">&nbsp;</span>
1594
- <span class="cline-any cline-no">&nbsp;</span>
1595
- <span class="cline-any cline-no">&nbsp;</span>
1596
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1601
- <span class="cline-any cline-neutral">&nbsp;</span>
1602
- <span class="cline-any cline-neutral">&nbsp;</span>
1603
- <span class="cline-any cline-neutral">&nbsp;</span>
1604
- <span class="cline-any cline-neutral">&nbsp;</span>
1605
- <span class="cline-any cline-neutral">&nbsp;</span>
1606
- <span class="cline-any cline-neutral">&nbsp;</span>
1607
- <span class="cline-any cline-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-neutral">&nbsp;</span>
1611
- <span class="cline-any cline-neutral">&nbsp;</span>
1612
- <span class="cline-any cline-yes">16x</span>
1613
- <span class="cline-any cline-yes">16x</span>
1614
- <span class="cline-any cline-neutral">&nbsp;</span>
1615
- <span class="cline-any cline-no">&nbsp;</span>
1616
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1622
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1628
- <span class="cline-any cline-yes">16x</span>
1629
- <span class="cline-any cline-neutral">&nbsp;</span>
1630
- <span class="cline-any cline-neutral">&nbsp;</span>
1631
- <span class="cline-any cline-neutral">&nbsp;</span>
1632
- <span class="cline-any cline-yes">16x</span>
1633
- <span class="cline-any cline-yes">16x</span>
1634
- <span class="cline-any cline-yes">16x</span>
1635
- <span class="cline-any cline-yes">16x</span>
1636
- <span class="cline-any cline-yes">16x</span>
1637
- <span class="cline-any cline-neutral">&nbsp;</span>
1638
- <span class="cline-any cline-yes">16x</span>
1639
- <span class="cline-any cline-yes">14x</span>
1640
- <span class="cline-any cline-yes">36x</span>
1641
- <span class="cline-any cline-yes">24x</span>
1642
- <span class="cline-any cline-neutral">&nbsp;</span>
1643
- <span class="cline-any cline-yes">24x</span>
1644
- <span class="cline-any cline-yes">24x</span>
1645
- <span class="cline-any cline-yes">24x</span>
1646
- <span class="cline-any cline-neutral">&nbsp;</span>
1647
- <span class="cline-any cline-yes">24x</span>
1648
- <span class="cline-any cline-neutral">&nbsp;</span>
1649
- <span class="cline-any cline-neutral">&nbsp;</span>
1650
- <span class="cline-any cline-yes">10x</span>
1651
- <span class="cline-any cline-yes">10x</span>
1652
- <span class="cline-any cline-neutral">&nbsp;</span>
1653
- <span class="cline-any cline-yes">24x</span>
1654
- <span class="cline-any cline-neutral">&nbsp;</span>
1655
- <span class="cline-any cline-neutral">&nbsp;</span>
1656
- <span class="cline-any cline-yes">16x</span>
1657
- <span class="cline-any cline-neutral">&nbsp;</span>
1658
- <span class="cline-any cline-neutral">&nbsp;</span>
1659
- <span class="cline-any cline-neutral">&nbsp;</span>
1660
- <span class="cline-any cline-neutral">&nbsp;</span>
1661
- <span class="cline-any cline-neutral">&nbsp;</span>
1662
- <span class="cline-any cline-neutral">&nbsp;</span>
1663
- <span class="cline-any cline-no">&nbsp;</span>
1664
- <span class="cline-any cline-no">&nbsp;</span>
1665
- <span class="cline-any cline-neutral">&nbsp;</span>
1666
- <span class="cline-any cline-neutral">&nbsp;</span>
1667
- <span class="cline-any cline-neutral">&nbsp;</span>
1668
- <span class="cline-any cline-no">&nbsp;</span>
1669
- <span class="cline-any cline-no">&nbsp;</span>
1670
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1675
- <span class="cline-any cline-no">&nbsp;</span>
1676
- <span class="cline-any cline-no">&nbsp;</span>
1677
- <span class="cline-any cline-no">&nbsp;</span>
1678
- <span class="cline-any cline-no">&nbsp;</span>
1679
- <span class="cline-any cline-no">&nbsp;</span>
1680
- <span class="cline-any cline-neutral">&nbsp;</span>
1681
- <span class="cline-any cline-neutral">&nbsp;</span>
1682
- <span class="cline-any cline-no">&nbsp;</span>
1683
- <span class="cline-any cline-neutral">&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-neutral">&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-neutral">&nbsp;</span>
1690
- <span class="cline-any cline-neutral">&nbsp;</span>
1691
- <span class="cline-any cline-neutral">&nbsp;</span>
1692
- <span class="cline-any cline-neutral">&nbsp;</span>
1693
- <span class="cline-any cline-no">&nbsp;</span>
1694
- <span class="cline-any cline-no">&nbsp;</span>
1695
- <span class="cline-any cline-no">&nbsp;</span>
1696
- <span class="cline-any cline-neutral">&nbsp;</span>
1697
- <span class="cline-any cline-no">&nbsp;</span>
1698
- <span class="cline-any cline-no">&nbsp;</span>
1699
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
1704
- <span class="cline-any cline-neutral">&nbsp;</span>
1705
- <span class="cline-any cline-neutral">&nbsp;</span>
1706
- <span class="cline-any cline-neutral">&nbsp;</span>
1707
- <span class="cline-any cline-no">&nbsp;</span>
1708
- <span class="cline-any cline-no">&nbsp;</span>
1709
- <span class="cline-any cline-no">&nbsp;</span>
1710
- <span class="cline-any cline-no">&nbsp;</span>
1711
- <span class="cline-any cline-no">&nbsp;</span>
1712
- <span class="cline-any cline-no">&nbsp;</span>
1713
- <span class="cline-any cline-no">&nbsp;</span>
1714
- <span class="cline-any cline-no">&nbsp;</span>
1715
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
1719
- <span class="cline-any cline-neutral">&nbsp;</span>
1720
- <span class="cline-any cline-neutral">&nbsp;</span>
1721
- <span class="cline-any cline-neutral">&nbsp;</span>
1722
- <span class="cline-any cline-neutral">&nbsp;</span>
1723
- <span class="cline-any cline-neutral">&nbsp;</span>
1724
- <span class="cline-any cline-no">&nbsp;</span>
1725
- <span class="cline-any cline-neutral">&nbsp;</span>
1726
- <span class="cline-any cline-neutral">&nbsp;</span>
1727
- <span class="cline-any cline-no">&nbsp;</span>
1728
- <span class="cline-any cline-no">&nbsp;</span>
1729
- <span class="cline-any cline-neutral">&nbsp;</span>
1730
- <span class="cline-any cline-neutral">&nbsp;</span>
1731
- <span class="cline-any cline-neutral">&nbsp;</span>
1732
- <span class="cline-any cline-neutral">&nbsp;</span>
1733
- <span class="cline-any cline-neutral">&nbsp;</span>
1734
- <span class="cline-any cline-no">&nbsp;</span>
1735
- <span class="cline-any cline-neutral">&nbsp;</span>
1736
- <span class="cline-any cline-no">&nbsp;</span>
1737
- <span class="cline-any cline-neutral">&nbsp;</span>
1738
- <span class="cline-any cline-no">&nbsp;</span>
1739
- <span class="cline-any cline-neutral">&nbsp;</span>
1740
- <span class="cline-any cline-no">&nbsp;</span>
1741
- <span class="cline-any cline-no">&nbsp;</span>
1742
- <span class="cline-any cline-neutral">&nbsp;</span>
1743
- <span class="cline-any cline-neutral">&nbsp;</span>
1744
- <span class="cline-any cline-neutral">&nbsp;</span>
1745
- <span class="cline-any cline-neutral">&nbsp;</span>
1746
- <span class="cline-any cline-no">&nbsp;</span>
1747
- <span class="cline-any cline-no">&nbsp;</span>
1748
- <span class="cline-any cline-no">&nbsp;</span>
1749
- <span class="cline-any cline-no">&nbsp;</span>
1750
- <span class="cline-any cline-no">&nbsp;</span>
1751
- <span class="cline-any cline-no">&nbsp;</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-neutral">&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-no">&nbsp;</span>
1759
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1763
- <span class="cline-any cline-no">&nbsp;</span>
1764
- <span class="cline-any cline-no">&nbsp;</span>
1765
- <span class="cline-any cline-no">&nbsp;</span>
1766
- <span class="cline-any cline-neutral">&nbsp;</span>
1767
- <span class="cline-any cline-neutral">&nbsp;</span>
1768
- <span class="cline-any cline-neutral">&nbsp;</span>
1769
- <span class="cline-any cline-no">&nbsp;</span>
1770
- <span class="cline-any cline-neutral">&nbsp;</span>
1771
- <span class="cline-any cline-neutral">&nbsp;</span>
1772
- <span class="cline-any cline-neutral">&nbsp;</span>
1773
- <span class="cline-any cline-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-no">&nbsp;</span>
1778
- <span class="cline-any cline-neutral">&nbsp;</span>
1779
- <span class="cline-any cline-no">&nbsp;</span>
1780
- <span class="cline-any cline-no">&nbsp;</span>
1781
- <span class="cline-any cline-no">&nbsp;</span>
1782
- <span class="cline-any cline-no">&nbsp;</span>
1783
- <span class="cline-any cline-no">&nbsp;</span>
1784
- <span class="cline-any cline-neutral">&nbsp;</span>
1785
- <span class="cline-any cline-neutral">&nbsp;</span>
1786
- <span class="cline-any cline-no">&nbsp;</span>
1787
- <span class="cline-any cline-no">&nbsp;</span>
1788
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1795
- <span class="cline-any cline-neutral">&nbsp;</span>
1796
- <span class="cline-any cline-no">&nbsp;</span>
1797
- <span class="cline-any cline-neutral">&nbsp;</span>
1798
- <span class="cline-any cline-no">&nbsp;</span>
1799
- <span class="cline-any cline-neutral">&nbsp;</span>
1800
- <span class="cline-any cline-no">&nbsp;</span>
1801
- <span class="cline-any cline-no">&nbsp;</span>
1802
- <span class="cline-any cline-no">&nbsp;</span>
1803
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1808
- <span class="cline-any cline-no">&nbsp;</span>
1809
- <span class="cline-any cline-no">&nbsp;</span>
1810
- <span class="cline-any cline-neutral">&nbsp;</span>
1811
- <span class="cline-any cline-neutral">&nbsp;</span>
1812
- <span class="cline-any cline-neutral">&nbsp;</span>
1813
- <span class="cline-any cline-neutral">&nbsp;</span>
1814
- <span class="cline-any cline-neutral">&nbsp;</span>
1815
- <span class="cline-any cline-neutral">&nbsp;</span>
1816
- <span class="cline-any cline-neutral">&nbsp;</span>
1817
- <span class="cline-any cline-yes">1x</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></td><td class="text"><pre class="prettyprint lang-js">import { TranslatorState, shiftState, withSourceMap, createCompilerState } from '../translator';
1823
- import Interface from './Interface__';
1824
- import { ElementToVueOptions } from './ViewElement__';
1825
- import { getNodeByNodeCallee } from '../automate/engine/utils';
1826
- import InterfaceParam from './InterfaceParam__';
1827
- import Structure from './Structure__';
1828
- import Module from './Module__';
1829
- import AuthInterface from './AuthInterface__';
1830
- import type { MemberExpression } from './MemberExpression__';
1831
- import Frontend from './Frontend__';
1832
- import type Connector from './Connector__';
1833
- //================================================================================
1834
- // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
1835
- // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
1836
- //================================================================================
1837
- import { EventPayload, Params } from '../common/EventEmitter';
1838
- import { concept, excludedInJSON, property, className } from '../decorators';
1839
- &nbsp;
1840
- import * as utils from '../utils';
1841
- import { v4 as uuidv4 } from 'uuid';
1842
- import BaseNode from '../common/BaseNode';
1843
- import Argument from './Argument__';
1844
- import LogicItem from './LogicItem__';
1845
- &nbsp;
1846
- /**
1847
- * 调用接口
1848
- */
1849
- @className
1850
- @concept('调用接口')
1851
- // @ts-ignore
1852
- export class CallInterface extends LogicItem {
1853
- /** 类名 */
1854
- static readonly ConceptName = 'CallInterface';
1855
- &nbsp;
1856
- /**
1857
- * 产品概念
1858
- */
1859
- // @ts-ignore
1860
- readonly concept!: 'CallInterface' | 'CallAuthInterface';
1861
- &nbsp;
1862
- /**
1863
- * 调用接口标题
1864
- */
1865
- @property()
1866
- label: string = '调用接口';
1867
- &nbsp;
1868
- /**
1869
- * calleeNamespace
1870
- */
1871
- @property()
1872
- // @ts-ignore
1873
- calleeNamespace!: string;
1874
- &nbsp;
1875
- /**
1876
- * calleeName
1877
- */
1878
- @property()
1879
- // @ts-ignore
1880
- calleeName!: string;
1881
- &nbsp;
1882
- /**
1883
- * shortcut
1884
- */
1885
- @property()
1886
- // @ts-ignore
1887
- shortcut!: boolean;
1888
- &nbsp;
1889
- /**
1890
- * 实际参数
1891
- */
1892
- @property('Argument')
1893
- arguments: Array&lt;Argument&gt; = [];
1894
- &nbsp;
1895
- /**
1896
- * @param source 需要合并的部分参数
1897
- */
1898
- constructor(source?: Partial&lt;CallInterface&gt;) {
1899
- source = Object.assign({}, CallInterface.getDefaultOptions(), source);
1900
- super(source);
1901
- super.subConstructor(source);
1902
- }
1903
- &nbsp;
1904
- static from(source: any, parentNode?: any, parentKey?: string): CallInterface {
1905
- return super.from(source, parentNode, parentKey) as CallInterface;
1906
- }
1907
- &nbsp;
1908
- /**
1909
- * 插入实际参数
1910
- * @internal
1911
- * @param argumentOptions 实际参数参数
1912
- */
1913
- _insertArgumentAt(argumentOptions: Partial&lt;Argument&gt;, index: number): Argument;
1914
- &nbsp;
1915
- /**
1916
- * 插入实际参数
1917
- * @internal
1918
- * @param argument 已有的实际参数实例
1919
- */
1920
- _insertArgumentAt(argument: Argument, index: number): Argument;
1921
- &nbsp;
1922
- <span class="fstat-no" title="function not covered" > _insertArgumentAt(</span>options: Partial&lt;Argument&gt; | Argument, index: number) {
1923
- const argumentOptions: any = <span class="cstat-no" title="statement not covered" >{};</span>
1924
- const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'arguments' };</span>
1925
- let argument: Argument;
1926
- <span class="cstat-no" title="statement not covered" > if (options instanceof Argument) {</span>
1927
- <span class="cstat-no" title="statement not covered" > options.ensureDelete(); </span>// 同一实例不支持多处存在
1928
- <span class="cstat-no" title="statement not covered" > argument = options;</span>
1929
- <span class="cstat-no" title="statement not covered" > Object.assign(argument, relationOptions);</span>
1930
- } else {
1931
- <span class="cstat-no" title="statement not covered" > argument = Argument.from(</span>
1932
- {
1933
- ...argumentOptions,
1934
- ...options,
1935
- },
1936
- this,
1937
- 'arguments',
1938
- );
1939
- }
1940
- <span class="cstat-no" title="statement not covered" > this.arguments.splice(index, 0, argument);</span>
1941
- <span class="cstat-no" title="statement not covered" > return argument;</span>
1942
- }
1943
- &nbsp;
1944
- /**
1945
- * 插入实际参数
1946
- * @param argumentOptions 实际参数参数
1947
- */
1948
- insertArgumentAt(argumentOptions: Partial&lt;Argument&gt;, index: number): Argument;
1949
- &nbsp;
1950
- /**
1951
- * 插入实际参数
1952
- * @param argument 已有的实际参数实例
1953
- */
1954
- insertArgumentAt(argument: Argument, index: number): Argument;
1955
- &nbsp;
1956
- <span class="fstat-no" title="function not covered" > insertArgumentAt(</span>options: Partial&lt;Argument&gt; | Argument, index: number) {
1957
- const node = <span class="cstat-no" title="statement not covered" >this._insertArgumentAt(options as any, index);</span>
1958
- <span class="cstat-no" title="statement not covered" > node.create({</span>
1959
- index,
1960
- parentNode: this,
1961
- parentKey: 'arguments',
1962
- });
1963
- <span class="cstat-no" title="statement not covered" > return node;</span>
1964
- }
1965
- &nbsp;
1966
- /**
1967
- * 添加实际参数
1968
- * @internal
1969
- * @param argumentOptions 实际参数参数
1970
- */
1971
- _addArgument(argumentOptions: Partial&lt;Argument&gt;): Argument;
1972
- &nbsp;
1973
- /**
1974
- * 添加实际参数
1975
- * @internal
1976
- * @param argument 已有的实际参数实例
1977
- */
1978
- _addArgument(argument: Argument): Argument;
1979
- &nbsp;
1980
- <span class="fstat-no" title="function not covered" > _addArgument(</span>options?: Partial&lt;Argument&gt; | Argument) {
1981
- const index = <span class="cstat-no" title="statement not covered" >this.arguments.length;</span>
1982
- <span class="cstat-no" title="statement not covered" > return this._insertArgumentAt(options as any, index);</span>
1983
- }
1984
- &nbsp;
1985
- /**
1986
- * 添加实际参数
1987
- * @param argumentOptions 实际参数参数
1988
- */
1989
- addArgument(argumentOptions: Partial&lt;Argument&gt;): Argument;
1990
- &nbsp;
1991
- /**
1992
- * 添加实际参数
1993
- * @param argument 已有的实际参数实例
1994
- */
1995
- addArgument(argument: Argument): Argument;
1996
- &nbsp;
1997
- <span class="fstat-no" title="function not covered" > addArgument(</span>options?: Partial&lt;Argument&gt; | Argument) {
1998
- const node = <span class="cstat-no" title="statement not covered" >this._addArgument(options as any);</span>
1999
- const index = <span class="cstat-no" title="statement not covered" >this.arguments.indexOf(node);</span>
2000
- <span class="cstat-no" title="statement not covered" > node.create({</span>
2001
- index,
2002
- parentNode: this,
2003
- parentKey: 'arguments',
2004
- });
2005
- <span class="cstat-no" title="statement not covered" > return node;</span>
2006
- }
2007
- &nbsp;
2008
- /**
2009
- * 删除实际参数
2010
- * @param argument 已有的实际参数实例
2011
- */
2012
- removeArgument(argument: Argument): void;
2013
- &nbsp;
2014
- <span class="fstat-no" title="function not covered" > removeArgument(</span>options: Argument) {
2015
- let argument: Argument = <span class="cstat-no" title="statement not covered" >options;</span>
2016
- <span class="cstat-no" title="statement not covered" > return argument.delete();</span>
2017
- }
2018
- &nbsp;
2019
- <span class="fstat-no" title="function not covered" > __removeLogicItem(</span>logicItem: LogicItem) {
2020
- const parentKey = <span class="cstat-no" title="statement not covered" >logicItem.parentKey;</span>
2021
- const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
2022
- parentNode: this,
2023
- parentKey,
2024
- index: -1,
2025
- object: null,
2026
- oldObject: logicItem,
2027
- };
2028
- <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
2029
- <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
2030
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((this as any)[parentKey])) {</span>
2031
- const index = (<span class="cstat-no" title="statement not covered" >this as any)[parentKey].indexOf(logicItem);</span>
2032
- <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
2033
- <span class="cstat-no" title="statement not covered" > params.index = index;</span>
2034
- } else <span class="cstat-no" title="statement not covered" >if ((this as any)[parentKey] === logicItem) {</span>
2035
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
2036
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
2037
- }
2038
- }
2039
- <span class="cstat-no" title="statement not covered" > return params;</span>
2040
- }
2041
- &nbsp;
2042
- //================================================================================
2043
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
2044
- // 自动生成的代码已结束。下面可以手动编写。
2045
- //================================================================================
2046
- &nbsp;
2047
- /**
2048
- * 标识当前删除是否为鉴权方式更新导致的删除。
2049
- * 针对此种删除,删除逻辑已经处理,无需再走 deleteCallNode 逻辑
2050
- */
2051
- @property('Boolean')
2052
- __authDelete: Boolean = false;
2053
- &nbsp;
2054
- // 删除调用接口时且接口无引用,删除接口和数据结构
2055
- <span class="fstat-no" title="function not covered" > async </span>deleteCallNode() {
2056
- <span class="cstat-no" title="statement not covered" > if (this.calleeKey !== '__IDENTIFIER__' &amp;&amp; !this.__authDelete) {</span>
2057
- (<span class="cstat-no" title="statement not covered" >this as any).__deleteCallNodeTimer = setTimeout(<span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
2058
- <span class="cstat-no" title="statement not covered" > clearTimeout((this as any).__deleteCallNodeTimer);</span>
2059
- // 计算之前选择的接口的引用次数
2060
- const oldItf: Interface = <span class="cstat-no" title="statement not covered" >this.getCallNode();</span>
2061
- <span class="cstat-no" title="statement not covered" > if (oldItf) {</span>
2062
- let refCount = <span class="cstat-no" title="statement not covered" >0;</span>
2063
- const refs = (<span class="cstat-no" title="statement not covered" >await oldItf.findUsage())</span> as Map&lt;any, any&gt;;
2064
- &nbsp;
2065
- const isOnlyUsedByFronted =
2066
- <span class="cstat-no" title="statement not covered" > refs.size === 1 &amp;&amp; Array.from(refs.keys()).filter(<span class="fstat-no" title="function not covered" >(k</span>ey) =&gt; <span class="cstat-no" title="statement not covered" >key instanceof Frontend)</span>.length &gt; 0;</span>
2067
- const isAuthInterface = <span class="cstat-no" title="statement not covered" >oldItf instanceof AuthInterface;</span>
2068
- // 当仅仅只有前端使用,且该接口是鉴权接口时需要将接口还原为普通接口
2069
- <span class="cstat-no" title="statement not covered" > if (isOnlyUsedByFronted &amp;&amp; isAuthInterface) {</span>
2070
- <span class="cstat-no" title="statement not covered" > this.replaceToInterface(oldItf);</span>
2071
- }
2072
- <span class="cstat-no" title="statement not covered" > refs.forEach(<span class="fstat-no" title="function not covered" >(v</span>al: any) =&gt; {</span>
2073
- const loopFindNode = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(i</span>tem: any) =&gt; {</span>
2074
- <span class="cstat-no" title="statement not covered" > if (item.children) {</span>
2075
- <span class="cstat-no" title="statement not covered" > item.children.forEach(<span class="fstat-no" title="function not covered" >(c</span>hild: any) =&gt; <span class="cstat-no" title="statement not covered" >loopFindNode(child))</span>;</span>
2076
- } else {
2077
- <span class="cstat-no" title="statement not covered" > refCount++;</span>
2078
- }
2079
- };
2080
- <span class="cstat-no" title="statement not covered" > loopFindNode(val);</span>
2081
- });
2082
- // 无引用则删除
2083
- <span class="cstat-no" title="statement not covered" > if (!refCount) {</span>
2084
- // 删除旧的接口、接口的数据结构
2085
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:start', { actionMsg: '删除接口' });</span>
2086
- const parentModule = <span class="cstat-no" title="statement not covered" >oldItf.module || oldItf.connector;</span>
2087
- <span class="cstat-no" title="statement not covered" > if (oldItf.module) {</span>
2088
- const shouldDeleteStructures: Structure[] = <span class="cstat-no" title="statement not covered" >[]</span>
2089
- <span class="cstat-no" title="statement not covered" > oldItf.module.getInterfaceStructureMap().forEach(<span class="fstat-no" title="function not covered" >(i</span>tfs, stru) =&gt; {</span>
2090
- <span class="cstat-no" title="statement not covered" > if (itfs.size === 1 &amp;&amp; itfs.has(oldItf)) {</span>
2091
- <span class="cstat-no" title="statement not covered" > shouldDeleteStructures.push(stru)</span>
2092
- }
2093
- })
2094
- <span class="cstat-no" title="statement not covered" > shouldDeleteStructures.forEach(<span class="fstat-no" title="function not covered" >(s</span>: Structure) =&gt; <span class="cstat-no" title="statement not covered" >s.delete())</span>;</span>
2095
- } else {
2096
- const shouldDeleteStructures = <span class="cstat-no" title="statement not covered" >oldItf.getRefStructures(parentModule.structures);</span>
2097
- <span class="cstat-no" title="statement not covered" > shouldDeleteStructures.forEach(<span class="fstat-no" title="function not covered" >(s</span>: Structure) =&gt; <span class="cstat-no" title="statement not covered" >s.delete())</span>;</span>
2098
- }
2099
- <span class="cstat-no" title="statement not covered" > oldItf.delete();</span>
2100
- <span class="cstat-no" title="statement not covered" > oldItf.afterDelete();</span>
2101
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:end');</span>
2102
- }
2103
- }
2104
- }, 350);
2105
- }
2106
- }
2107
- &nbsp;
2108
- <span class="fstat-no" title="function not covered" > replaceToInterface(</span>oldItf: AuthInterface) {
2109
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:start', { actionMsg: '调用接口恢复为非鉴权' });</span>
2110
- const { name, originLogicName, path, method, description, params, returns, protocol, protocolParams } = <span class="cstat-no" title="statement not covered" >oldItf;</span>
2111
- const newInterface = <span class="cstat-no" title="statement not covered" >new Interface({</span>
2112
- name,
2113
- originLogicName,
2114
- path,
2115
- method,
2116
- description,
2117
- params,
2118
- returns,
2119
- protocol,
2120
- protocolParams,
2121
- });
2122
- const m = <span class="cstat-no" title="statement not covered" >oldItf.parentNode as Module;</span>
2123
- const interfaceIndex = <span class="cstat-no" title="statement not covered" >m?.interfaces?.findIndex?.(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === oldItf.name)</span>;</span>
2124
- <span class="cstat-no" title="statement not covered" > oldItf.delete();</span>
2125
- <span class="cstat-no" title="statement not covered" > m.insertInterfaceAt(newInterface, interfaceIndex);</span>
2126
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:end');</span>
2127
- }
2128
- &nbsp;
2129
- get tsCalleeNamespace() {
2130
- <span class="missing-if-branch" title="else path not taken" >E</span>if (this.calleeNamespace) {
2131
- let tsCalleeNamespace = this.calleeNamespace;
2132
- tsCalleeNamespace = tsCalleeNamespace.replace(/\.[0-9]/g, <span class="fstat-no" title="function not covered" >(m</span>) =&gt; <span class="cstat-no" title="statement not covered" >m.replace('.', '.$'))</span>;
2133
- tsCalleeNamespace = tsCalleeNamespace.replace(/-/g, '_');
2134
- return tsCalleeNamespace;
2135
- }
2136
- <span class="cstat-no" title="statement not covered" > return '';</span>
2137
- }
2138
- &nbsp;
2139
- <span class="fstat-no" title="function not covered" > toVue(</span>options?: ElementToVueOptions): string {
2140
- let code = <span class="cstat-no" title="statement not covered" >this.calleeName;</span>
2141
- <span class="cstat-no" title="statement not covered" > code += '(';</span>
2142
- <span class="cstat-no" title="statement not covered" > this.arguments?.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
2143
- <span class="cstat-no" title="statement not covered" > code += arg?.toVue(options);</span>
2144
- <span class="cstat-no" title="statement not covered" > if (index !== this.arguments?.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
2145
- });
2146
- <span class="cstat-no" title="statement not covered" > code += ')';</span>
2147
- <span class="cstat-no" title="statement not covered" > return code;</span>
2148
- }
2149
- &nbsp;
2150
- <span class="fstat-no" title="function not covered" > toUI(</span>state?: TranslatorState): string {
2151
- let code = <span class="cstat-no" title="statement not covered" >this.calleeName;</span>
2152
- <span class="cstat-no" title="statement not covered" > code += '(';</span>
2153
- <span class="cstat-no" title="statement not covered" > this.arguments?.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
2154
- <span class="cstat-no" title="statement not covered" > code += arg?.toUI();</span>
2155
- <span class="cstat-no" title="statement not covered" > if (index !== this.arguments?.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
2156
- });
2157
- <span class="cstat-no" title="statement not covered" > code += ')';</span>
2158
- <span class="cstat-no" title="statement not covered" > return code;</span>
2159
- }
2160
- &nbsp;
2161
- toJS(state?: TranslatorState): string {
2162
- const { calleewholeKey, app, completeArguments } = this;
2163
- const [, _name, , _interfaceName] = calleewholeKey.split('.');
2164
- let _module: Module | Connector;
2165
- // 由于自定义连接器的引入,目前在 集成中心下也存在着一部分接口
2166
- // 因此,需要额外判断,如果是自定义连接器需要拿 app.dependencies 中的接口或者 app.integration 中connector下面的接口
2167
- const isCustomConnector = this.getAncestor('Connector');
2168
- const isInIntegration = this.getAncestor('Integration');
2169
- <span class="missing-if-branch" title="if path not taken" >I</span>if (isCustomConnector &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >isInIntegration)</span> {
2170
- <span class="cstat-no" title="statement not covered" > _module = app?.integration?.connectors?.find?.(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === _name)</span>;</span>
2171
- } else <span class="missing-if-branch" title="if path not taken" >I</span>if (isCustomConnector &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >!isInIntegration)</span> {
2172
- <span class="cstat-no" title="statement not covered" > _module = app?.dependencies?.find?.(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === _name)</span>;</span>
2173
- } else {
2174
- // default
2175
- _module = app?.interfaceDependencies?.find?.((item) =&gt; item.name === _name);
2176
- }
2177
- const _interface = (_module as Module)?.interfaces?.find?.((item) =&gt; item.name === _interfaceName);
2178
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!_interface) {
2179
- <span class="cstat-no" title="statement not covered" > if (!this.calleeNamespace || !this.calleeName) <span class="cstat-no" title="statement not covered" >throw new Error('调用接口为空');</span></span>
2180
- <span class="cstat-no" title="statement not covered" > throw new Error(`${_name}下的${_interfaceName}接口未找到`);</span>
2181
- }
2182
- let isSimpleBody = false; // 兼容body只有基本类型的
2183
- const _params = _interface.params;
2184
- const _queries = _params.filter((item) =&gt; item.in === 'query').map((item) =&gt; item.name);
2185
- const _headers = _params.filter((item) =&gt; item.in === 'header').map((item) =&gt; item.name);
2186
- const _body = _params
2187
- .filter((item) =&gt; item.in === 'body')
2188
- .map((item) =&gt; {
2189
- if (item.typeAnnotation.typeKind === 'primitive') {
2190
- isSimpleBody = true;
2191
- }
2192
- return item.name;
2193
- });
2194
- const _paths = _params.filter((item) =&gt; item.in === 'path').map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name)</span>;
2195
- &nbsp;
2196
- /** 填充参数信息 */
2197
- const setArgumentCode = (args: Argument[], keys: string[], code: string, useKeyWord: boolean, useRest: boolean) =&gt; {
2198
- const filledArgs = args
2199
- // 维持原样,暂时不过滤没有填入值的参数
2200
- // .filter((arg) =&gt; Boolean(arg?.expression))
2201
- .filter((arg) =&gt; keys.includes(arg.keyword));
2202
- &nbsp;
2203
- filledArgs.forEach((arg, index) =&gt; {
2204
- if (useRest) {
2205
- code += ` ...${arg?.toJS(shiftState(state, code))}`;
2206
- } else if (useKeyWord) {
2207
- code += `\n'${arg?.keyword}': ${arg?.toJS(shiftState(state, code))}`;
2208
- } else {
2209
- code += ` ${arg?.toJS(shiftState(state, code))}`;
2210
- }
2211
- &nbsp;
2212
- if (index !== args.length - 1) {
2213
- code += ', ';
2214
- }
2215
- });
2216
- &nbsp;
2217
- <span class="missing-if-branch" title="if path not taken" >I</span>if (filledArgs.length === 0 &amp;&amp; !useKeyWord &amp;&amp; !useRest) {
2218
- <span class="cstat-no" title="statement not covered" > code += 'undefined';</span>
2219
- }
2220
- &nbsp;
2221
- return code;
2222
- };
2223
- &nbsp;
2224
- let code = `await this.$services['_custom']['${this.calleeNamespace}.${this.calleeName}']`;
2225
- &nbsp;
2226
- code += `({ config: {\ndownload: false,\n },\nquery: {`;
2227
- code = setArgumentCode(completeArguments, _queries, code, true, false);
2228
- code += `}, path: {`;
2229
- code = setArgumentCode(completeArguments, _paths, code, true, false);
2230
- code += `}, headers: {`;
2231
- code = setArgumentCode(completeArguments, _headers, code, true, false);
2232
- code += `},\n`;
2233
- &nbsp;
2234
- if (isSimpleBody) {
2235
- code += `body: `;
2236
- code = setArgumentCode(completeArguments, _body, code, false, false);
2237
- } else {
2238
- code += `body: {`;
2239
- code = setArgumentCode(completeArguments, _body, code, false, true);
2240
- code += '}';
2241
- }
2242
- &nbsp;
2243
- code += '\n})';
2244
- const typeAnnotation = (this as any).typeAnnotation || this.__TypeAnnotation;
2245
- const needGenInitFromSchema = typeAnnotation &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >!['primitive', 'union'].includes(typeAnnotation.typeKind);</span>
2246
- <span class="missing-if-branch" title="if path not taken" >I</span>if (needGenInitFromSchema) {
2247
- <span class="cstat-no" title="statement not covered" > code = `this.$genInitFromSchema('${typeAnnotation?.sortedTypeKey}', ${code})`;</span>
2248
- }
2249
- return code;
2250
- }
2251
- &nbsp;
2252
- @withSourceMap()
2253
- toEmbeddedTS(state = createCompilerState()): string {
2254
- const { completeArguments, parentNode, parentKey, tsCalleeKey } = this;
2255
- &nbsp;
2256
- let code = `${tsCalleeKey}(`;
2257
- &nbsp;
2258
- if (completeArguments?.length) {
2259
- code += '{';
2260
- completeArguments?.forEach((arg, index) =&gt; {
2261
- code += arg?.toEmbeddedTS(shiftState(state, code), arg.paramRequired, true);
2262
- if (index !== this.arguments?.length - 1) code += ', ';
2263
- });
2264
- code += '}';
2265
- }
2266
- code += ')';
2267
- <span class="missing-if-branch" title="else path not taken" >E</span>if (
2268
- parentNode.concept !== 'Argument' &amp;&amp;
2269
- parentKey !== 'test' &amp;&amp;
2270
- parentKey !== 'patterns' &amp;&amp;
2271
- parentKey !== 'returnExpression' &amp;&amp;
2272
- parentNode.concept !== 'Assignment' &amp;&amp;
2273
- parentNode.concept !== 'ForEachStatement' &amp;&amp;
2274
- parentNode.concept !== 'SelectMembers' &amp;&amp;
2275
- parentNode.concept !== 'UnaryExpression' &amp;&amp;
2276
- parentNode.concept !== 'BinaryExpression' &amp;&amp;
2277
- parentNode.concept !== 'MemberExpression' &amp;&amp;
2278
- parentNode.concept !== 'StringInterpolation' &amp;&amp;
2279
- !['NewMap', 'NewList'].includes(parentNode.concept)
2280
- ) {
2281
- code += ';';
2282
- }
2283
- code += '\n';
2284
- return code;
2285
- }
2286
- &nbsp;
2287
- @withSourceMap()
2288
- <span class="fstat-no" title="function not covered" > toNaturalTS(</span>state = <span class="branch-0 cbranch-no" title="branch not covered" >createCompilerState())</span>: string {
2289
- const { completeArguments, parentNode, parentKey, tsCalleeKey } = <span class="cstat-no" title="statement not covered" >this;</span>
2290
- &nbsp;
2291
- let code = <span class="cstat-no" title="statement not covered" >`${tsCalleeKey}(`;</span>
2292
- &nbsp;
2293
- <span class="cstat-no" title="statement not covered" > if (completeArguments?.length) {</span>
2294
- <span class="cstat-no" title="statement not covered" > code += '{';</span>
2295
- <span class="cstat-no" title="statement not covered" > completeArguments?.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
2296
- <span class="cstat-no" title="statement not covered" > code += arg?.toNaturalTS(shiftState(state, code), arg.paramRequired, true);</span>
2297
- <span class="cstat-no" title="statement not covered" > if (index !== this.arguments?.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
2298
- });
2299
- <span class="cstat-no" title="statement not covered" > code += '}';</span>
2300
- }
2301
- <span class="cstat-no" title="statement not covered" > code += ')';</span>
2302
- <span class="cstat-no" title="statement not covered" > if (</span>
2303
- parentNode.concept !== 'Argument' &amp;&amp;
2304
- parentKey !== 'test' &amp;&amp;
2305
- parentKey !== 'patterns' &amp;&amp;
2306
- parentKey !== 'returnExpression' &amp;&amp;
2307
- parentNode.concept !== 'Assignment' &amp;&amp;
2308
- parentNode.concept !== 'ForEachStatement' &amp;&amp;
2309
- parentNode.concept !== 'SelectMembers' &amp;&amp;
2310
- parentNode.concept !== 'UnaryExpression' &amp;&amp;
2311
- parentNode.concept !== 'BinaryExpression' &amp;&amp;
2312
- parentNode.concept !== 'MemberExpression' &amp;&amp;
2313
- parentNode.concept !== 'StringInterpolation' &amp;&amp;
2314
- !['NewMap', 'NewList'].includes(parentNode.concept)
2315
- ) {
2316
- <span class="cstat-no" title="statement not covered" > code += ';';</span>
2317
- }
2318
- <span class="cstat-no" title="statement not covered" > code += '\n';</span>
2319
- <span class="cstat-no" title="statement not covered" > return code;</span>
2320
- }
2321
- &nbsp;
2322
- <span class="fstat-no" title="function not covered" > toBrief(</span>): string {
2323
- <span class="cstat-no" title="statement not covered" > return this.arguments.map(<span class="fstat-no" title="function not covered" >(a</span>) =&gt; <span class="cstat-no" title="statement not covered" >a.toBrief())</span>.join('&lt;br /&gt;');</span>
2324
- }
2325
- &nbsp;
2326
- <span class="fstat-no" title="function not covered" > get c</span>alleeKey(): string {
2327
- const { tsCalleeNamespace } = <span class="cstat-no" title="statement not covered" >this;</span>
2328
- const { calleeName } = <span class="cstat-no" title="statement not covered" >this;</span>
2329
- <span class="cstat-no" title="statement not covered" > return calleeName ? `${tsCalleeNamespace}.${calleeName}` : '__IDENTIFIER__';</span>
2330
- }
2331
- &nbsp;
2332
- // 用于logic回填
2333
- get calleewholeKey(): string {
2334
- return `${this.calleeNamespace}.${this.calleeName}`;
2335
- }
2336
- &nbsp;
2337
- get tsCalleeName(): string {
2338
- const excludeds = [
2339
- 'abstract',
2340
- 'arguments',
2341
- 'await',
2342
- 'boolean',
2343
- 'break',
2344
- 'byte',
2345
- 'case',
2346
- 'catch',
2347
- 'char',
2348
- 'class',
2349
- 'const',
2350
- 'continue',
2351
- 'debugger',
2352
- 'default',
2353
- 'delete',
2354
- 'do',
2355
- 'double',
2356
- 'decimal',
2357
- 'else',
2358
- 'enum',
2359
- 'eval',
2360
- 'export',
2361
- 'extends',
2362
- 'false',
2363
- 'final',
2364
- 'finally',
2365
- 'float',
2366
- 'for',
2367
- 'function',
2368
- 'goto',
2369
- 'if',
2370
- 'implements',
2371
- 'import',
2372
- 'in',
2373
- 'instanceof',
2374
- 'int',
2375
- 'interface',
2376
- 'let',
2377
- 'long',
2378
- 'native',
2379
- 'new',
2380
- 'null',
2381
- 'package',
2382
- 'private',
2383
- 'protected',
2384
- 'public',
2385
- 'return',
2386
- 'short',
2387
- 'static',
2388
- 'super',
2389
- 'switch',
2390
- 'synchronized',
2391
- 'this',
2392
- 'throw',
2393
- 'throws',
2394
- 'transient',
2395
- 'true',
2396
- 'try',
2397
- 'typeof',
2398
- 'var',
2399
- 'void',
2400
- 'volatile',
2401
- 'while',
2402
- 'with',
2403
- 'yield,as',
2404
- 'any',
2405
- 'number',
2406
- 'string',
2407
- 'get',
2408
- 'type',
2409
- 'typeof',
2410
- 'instanceof',
2411
- 'require',
2412
- ];
2413
- <span class="missing-if-branch" title="if path not taken" >I</span>if (excludeds.includes(this.calleeName)) {
2414
- <span class="cstat-no" title="statement not covered" > return `_${this.calleeName}`;</span>
2415
- }
2416
- return this.calleeName;
2417
- }
2418
- &nbsp;
2419
- get tsCalleeKey(): string {
2420
- const { tsCalleeNamespace } = this;
2421
- const calleeName = this.tsCalleeName;
2422
- return calleeName ? `${tsCalleeNamespace}.${calleeName}` : <span class="branch-1 cbranch-no" title="branch not covered" >'__IDENTIFIER__';</span>
2423
- }
2424
- &nbsp;
2425
- <span class="fstat-no" title="function not covered" > get c</span>alleeDefaultKey(): string {
2426
- <span class="cstat-no" title="statement not covered" > return `${this.calleeNamespace}.${this.calleeName}`;</span>
2427
- }
2428
- &nbsp;
2429
- <span class="fstat-no" title="function not covered" > _setCallee(</span>_interface: Interface) {
2430
- <span class="cstat-no" title="statement not covered" > this.arguments = [];</span>
2431
- <span class="cstat-no" title="statement not covered" > _interface.params.forEach(<span class="fstat-no" title="function not covered" >(p</span>aram) =&gt; {</span>
2432
- <span class="cstat-no" title="statement not covered" > this._addArgument({</span>
2433
- keyword: param.name,
2434
- });
2435
- });
2436
- }
2437
- &nbsp;
2438
- <span class="fstat-no" title="function not covered" > setCallee(</span>_interface: Interface) {
2439
- const calleeNamespace = <span class="cstat-no" title="statement not covered" >_interface.getNamespace();</span>
2440
- const calleeName = <span class="cstat-no" title="statement not covered" >_interface.name;</span>
2441
- const params = <span class="cstat-no" title="statement not covered" >_interface.params.map(<span class="fstat-no" title="function not covered" >(p</span>aram) =&gt; {</span>
2442
- const oldArgument = <span class="cstat-no" title="statement not covered" >this.arguments.find(<span class="fstat-no" title="function not covered" >(n</span>ode) =&gt; <span class="cstat-no" title="statement not covered" >node.keyword === param.name)</span></span>
2443
- <span class="cstat-no" title="statement not covered" > return Argument.from({</span>
2444
- keyword: param.name,
2445
- expression: oldArgument ? oldArgument.expression : undefined
2446
- }, this, 'arguments');
2447
- });
2448
- const oldArguments = <span class="cstat-no" title="statement not covered" >this.arguments.reduce(<span class="fstat-no" title="function not covered" >(r</span>es, argumentNode) =&gt; {</span>
2449
- const targetParam = <span class="cstat-no" title="statement not covered" >_interface.params.find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === argumentNode.keyword)</span></span>
2450
- <span class="cstat-no" title="statement not covered" > if (!targetParam) {</span>
2451
- <span class="cstat-no" title="statement not covered" > res.push(Argument.from({</span>
2452
- keyword: argumentNode.keyword,
2453
- expression: argumentNode ? argumentNode.expression : undefined
2454
- }, this, 'arguments'))
2455
- }
2456
- <span class="cstat-no" title="statement not covered" > return res</span>
2457
- }, [])
2458
- <span class="cstat-no" title="statement not covered" > params.push(...oldArguments)</span>
2459
- &nbsp;
2460
- <span class="cstat-no" title="statement not covered" > if (this.app) {</span>
2461
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:start', {</span>
2462
- actionMsg: `切换调用逻辑`,
2463
- });
2464
- const { parentNode } = <span class="cstat-no" title="statement not covered" >this;</span>
2465
- <span class="cstat-no" title="statement not covered" > this.update({</span>
2466
- calleeNamespace,
2467
- calleeName,
2468
- arguments: params,
2469
- folded: false,
2470
- });
2471
- <span class="cstat-no" title="statement not covered" > if (parentNode.concept === 'MemberExpression') {</span>
2472
- const topNode = (<span class="cstat-no" title="statement not covered" >parentNode as MemberExpression).firstMemberExpressionNode();</span>
2473
- <span class="cstat-no" title="statement not covered" > topNode.replaceNode(this);</span>
2474
- }
2475
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:end');</span>
2476
- } else {
2477
- <span class="cstat-no" title="statement not covered" > this.update({</span>
2478
- calleeNamespace,
2479
- calleeName,
2480
- arguments: params,
2481
- folded: false,
2482
- });
2483
- }
2484
- }
2485
- &nbsp;
2486
- // 通过内容过去节点
2487
- getCallNode() {
2488
- let node;
2489
- // 如果是其余app下自定义逻辑
2490
- try {
2491
- node = getNodeByNodeCallee(this.app, this.calleewholeKey, <span class="fstat-no" title="function not covered" >(k</span>ey: any, tempPoint: any) =&gt; {
2492
- // 处理 NASL 中未定义的假的节点
2493
- <span class="cstat-no" title="statement not covered" > if (key === tempPoint.name) {</span>
2494
- <span class="cstat-no" title="statement not covered" > return {</span>
2495
- tempPoint,
2496
- state: 1,
2497
- };
2498
- }
2499
- const t = <span class="cstat-no" title="statement not covered" >tempPoint[key];</span>
2500
- <span class="cstat-no" title="statement not covered" > return {</span>
2501
- tempPoint: t,
2502
- state: Array.isArray(t) ? 2 : 1,
2503
- };
2504
- });
2505
- } catch (err) {}
2506
- return node;
2507
- }
2508
- &nbsp;
2509
- get completeArguments() {
2510
- const node = this.getCallNode();
2511
- let logicParam: InterfaceParam[] = [];
2512
- const Arguments: Argument[] = [];
2513
- <span class="missing-if-branch" title="else path not taken" >E</span>if (node?.params) {
2514
- logicParam = node.params;
2515
- }
2516
- if (this.arguments?.length) {
2517
- this.arguments.forEach((arg) =&gt; {
2518
- const idx = logicParam.findIndex((params) =&gt; arg.keyword === params.name);
2519
- const param = logicParam[idx];
2520
- &nbsp;
2521
- arg.paramRequired = param?.required;
2522
- arg.paramTypeAnnotation = undefined;
2523
- arg.paramDefaultValue = undefined;
2524
- // 取到是不是必填放入参数中
2525
- if (param &amp;&amp; !arg.expression) {
2526
- // 非必填时 才会有默认值
2527
- // 因为之前接口这里的必填非必填,一直是有值的,而且不允许修改
2528
- arg.paramTypeAnnotation = param.typeAnnotation;
2529
- arg.paramDefaultValue = param.defaultValue;
2530
- }
2531
- Arguments.push(arg);
2532
- });
2533
- }
2534
- return Arguments;
2535
- }
2536
- &nbsp;
2537
- /**
2538
- * 反向查找对应 module 和 interface
2539
- */
2540
- <span class="fstat-no" title="function not covered" > getModuleInterface(</span>) {
2541
- <span class="cstat-no" title="statement not covered" > if (!this.calleeNamespace || !this.calleeName)</span>
2542
- <span class="cstat-no" title="statement not covered" > return {</span>
2543
- _module: null,
2544
- _interface: null,
2545
- };
2546
- const _arr = <span class="cstat-no" title="statement not covered" >this.calleewholeKey.split('.');</span>
2547
- const _name = <span class="cstat-no" title="statement not covered" >_arr[1];</span>
2548
- const _interfaceName = <span class="cstat-no" title="statement not covered" >_arr[3];</span>
2549
- let _module: Module | Connector;
2550
- // 由于自定义连接器的引入,目前在 集成中心下也存在着一部分接口
2551
- // 因此,需要额外判断,如果是自定义连接器需要拿 app.dependencies 中的接口或者 app.integration 中connector下面的接口
2552
- const isCustomConnector = <span class="cstat-no" title="statement not covered" >this.getAncestor('Connector');</span>
2553
- const isInIntegration = <span class="cstat-no" title="statement not covered" >this.getAncestor('Integration');</span>
2554
- <span class="cstat-no" title="statement not covered" > if (isCustomConnector &amp;&amp; isInIntegration) {</span>
2555
- <span class="cstat-no" title="statement not covered" > _module = this.app?.integration?.connectors?.find?.(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === _name)</span>;</span>
2556
- } else <span class="cstat-no" title="statement not covered" >if (isCustomConnector &amp;&amp; !isInIntegration) {</span>
2557
- <span class="cstat-no" title="statement not covered" > _module = this.app?.dependencies?.find?.(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === _name)</span>;</span>
2558
- } else {
2559
- // default
2560
- <span class="cstat-no" title="statement not covered" > _module = this.app.interfaceDependencies.find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === _name)</span>;</span>
2561
- }
2562
- const _interface = <span class="cstat-no" title="statement not covered" >_module?.interfaces.find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === _interfaceName)</span>;</span>
2563
- <span class="cstat-no" title="statement not covered" > return {</span>
2564
- _module,
2565
- _interface,
2566
- };
2567
- }
2568
- &nbsp;
2569
- // 导入接口
2570
- <span class="fstat-no" title="function not covered" > async </span>createOrUpdateInterface({ moduleData, selectedModule }: { moduleData: Partial&lt;Module&gt;; selectedModule: any }) {
2571
- const moduleName = <span class="cstat-no" title="statement not covered" >moduleData.name;</span>
2572
- const itfData = <span class="cstat-no" title="statement not covered" >moduleData.interfaces[0];</span>
2573
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:start', { actionMsg: '调用接口' });</span>
2574
- &nbsp;
2575
- let module = <span class="cstat-no" title="statement not covered" >this.app.interfaceDependencies.find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === moduleName)</span>;</span>
2576
- <span class="cstat-no" title="statement not covered" > if (!module) {</span>
2577
- <span class="cstat-no" title="statement not covered" > module = this.app.addModuleInInterfaceDependencies({</span>
2578
- name: moduleName,
2579
- configuration: moduleData.configuration,
2580
- type: 'interface',
2581
- isAdd: true,
2582
- });
2583
- }
2584
- // 将依赖库的config添加到APP的config中
2585
- <span class="cstat-no" title="statement not covered" > if (selectedModule.appType === 'DUBBO' &amp;&amp; moduleData.configuration &amp;&amp; moduleData.configuration.groups) {</span>
2586
- const configGroupData = <span class="cstat-no" title="statement not covered" >moduleData.configuration.groups[0];</span>
2587
- <span class="cstat-no" title="statement not covered" > if (configGroupData) {</span>
2588
- const configGroup = <span class="cstat-no" title="statement not covered" >this.app.configuration.getGroup(configGroupData.name);</span>
2589
- <span class="cstat-no" title="statement not covered" > if (configGroup) {</span>
2590
- const propertyData = <span class="cstat-no" title="statement not covered" >configGroupData.properties[0];</span>
2591
- <span class="cstat-no" title="statement not covered" > if (propertyData) {</span>
2592
- const property = <span class="cstat-no" title="statement not covered" >configGroup.getProperty(propertyData.name);</span>
2593
- // 已导入的不覆盖
2594
- <span class="cstat-no" title="statement not covered" > if (!property) {</span>
2595
- <span class="cstat-no" title="statement not covered" > configGroup.addConfigProperty(propertyData);</span>
2596
- }
2597
- }
2598
- }
2599
- }
2600
- }
2601
- &nbsp;
2602
- let targetItf = <span class="cstat-no" title="statement not covered" >module.interfaces.find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === itfData.name)</span>;</span>
2603
- // 根据 targetItf 是否是AuthInterface 来确定生成什么类型的接口
2604
- let newItf;
2605
- <span class="cstat-no" title="statement not covered" > if (targetItf &amp;&amp; targetItf.concept === 'AuthInterface') {</span>
2606
- <span class="cstat-no" title="statement not covered" > newItf = new AuthInterface({</span>
2607
- ...itfData,
2608
- authLogic: (targetItf as AuthInterface).authLogic,
2609
- concept: targetItf.concept,
2610
- });
2611
- } else {
2612
- <span class="cstat-no" title="statement not covered" > newItf = new Interface(itfData);</span>
2613
- }
2614
- <span class="cstat-no" title="statement not covered" > if (targetItf) {</span>
2615
- // 更新已有接口
2616
- <span class="cstat-no" title="statement not covered" > targetItf.update(newItf.toJSON());</span>
2617
- } else {
2618
- <span class="cstat-no" title="statement not covered" > targetItf = newItf;</span>
2619
- <span class="cstat-no" title="statement not covered" > module.addInterface(targetItf);</span>
2620
- }
2621
- &nbsp;
2622
- // 计算之前选择的接口的引用次数
2623
- let oldItf: Interface;
2624
- <span class="cstat-no" title="statement not covered" > if (this.calleeKey !== '__IDENTIFIER__') {</span>
2625
- <span class="cstat-no" title="statement not covered" > oldItf = this.getCallNode();</span>
2626
- <span class="cstat-no" title="statement not covered" > if (oldItf) {</span>
2627
- let refCount = <span class="cstat-no" title="statement not covered" >0;</span>
2628
- let isSelfRef = <span class="cstat-no" title="statement not covered" >false;</span>
2629
- let isSameItf = <span class="cstat-no" title="statement not covered" >false;</span>
2630
- <span class="cstat-no" title="statement not covered" > if (selectedModule.appCode === oldItf.parentNode.name &amp;&amp; newItf.name === oldItf.name) {</span>
2631
- <span class="cstat-no" title="statement not covered" > isSameItf = true;</span>
2632
- }
2633
- const refs = <span class="cstat-no" title="statement not covered" >await oldItf.findUsage();</span>
2634
- <span class="cstat-no" title="statement not covered" > refs.forEach(<span class="fstat-no" title="function not covered" >(v</span>al: any) =&gt; {</span>
2635
- const loopFindNode = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(i</span>tem: any) =&gt; {</span>
2636
- <span class="cstat-no" title="statement not covered" > if (item.children) {</span>
2637
- <span class="cstat-no" title="statement not covered" > item.children.forEach(<span class="fstat-no" title="function not covered" >(i</span>: any) =&gt; <span class="cstat-no" title="statement not covered" >loopFindNode(i))</span>;</span>
2638
- } else {
2639
- <span class="cstat-no" title="statement not covered" > refCount++;</span>
2640
- <span class="cstat-no" title="statement not covered" > if (item.node === this) {</span>
2641
- <span class="cstat-no" title="statement not covered" > isSelfRef = true;</span>
2642
- } else <span class="cstat-no" title="statement not covered" >if (isSameItf) {</span>
2643
- <span class="cstat-no" title="statement not covered" > item.node.setCallee?.(targetItf);</span>
2644
- }
2645
- }
2646
- };
2647
- <span class="cstat-no" title="statement not covered" > loopFindNode(val);</span>
2648
- });
2649
- &nbsp;
2650
- // 之前选的接口不存在时则删除
2651
- // if (selectedModule.appCode === oldItf.parentNode.name &amp;&amp; selectedModule.apis &amp;&amp; !selectedModule.apis.find((api) =&gt; api.apiCode === oldItf.name)) {
2652
- // oldItf.delete();
2653
- // } else {
2654
- // 仅被自己引用则删除
2655
- <span class="cstat-no" title="statement not covered" > if (!isSameItf &amp;&amp; isSelfRef &amp;&amp; refCount === 1) {</span>
2656
- // 删除旧的数据结构
2657
- const shouldDeleteStructures: Structure[] = <span class="cstat-no" title="statement not covered" >[]</span>
2658
- const structureMap = <span class="cstat-no" title="statement not covered" >oldItf.module.getInterfaceStructureMap()</span>
2659
- <span class="cstat-no" title="statement not covered" > structureMap.forEach(<span class="fstat-no" title="function not covered" >(i</span>tfs, stru) =&gt; {</span>
2660
- <span class="cstat-no" title="statement not covered" > if (itfs.size === 1 &amp;&amp; itfs.has(oldItf)) {</span>
2661
- <span class="cstat-no" title="statement not covered" > shouldDeleteStructures.push(stru)</span>
2662
- }
2663
- })
2664
- <span class="cstat-no" title="statement not covered" > shouldDeleteStructures.forEach(<span class="fstat-no" title="function not covered" >(s</span>: Structure) =&gt; <span class="cstat-no" title="statement not covered" >s.delete())</span>;</span>
2665
- <span class="cstat-no" title="statement not covered" > oldItf.delete();</span>
2666
- <span class="cstat-no" title="statement not covered" > oldItf.afterDelete();</span>
2667
- }
2668
- // }
2669
- }
2670
- }
2671
- &nbsp;
2672
- <span class="cstat-no" title="statement not covered" > this.setCallee(targetItf);</span>
2673
- &nbsp;
2674
- const oldStructuresSet = <span class="cstat-no" title="statement not covered" >targetItf.getRefStructures(targetItf.module.structures);</span>
2675
- // 递归找出 response/request 的 Body/Returns 引用的数据结构
2676
- const newStructuresSet = <span class="cstat-no" title="statement not covered" >targetItf.getRefStructures(moduleData.structures);</span>
2677
- // 新导入的数据结构在系统中已存在时 提前进行删除
2678
- <span class="cstat-no" title="statement not covered" > newStructuresSet.forEach(<span class="fstat-no" title="function not covered" >stru </span>=&gt; {</span>
2679
- const target = <span class="cstat-no" title="statement not covered" >targetItf.module.structures.find(<span class="fstat-no" title="function not covered" >node </span>=&gt; <span class="cstat-no" title="statement not covered" >node.name === stru.name)</span></span>
2680
- <span class="cstat-no" title="statement not covered" > if (target) {</span>
2681
- <span class="cstat-no" title="statement not covered" > oldStructuresSet.add(target)</span>
2682
- }
2683
- })
2684
- // 删除旧的数据结构
2685
- <span class="cstat-no" title="statement not covered" > oldStructuresSet.forEach(<span class="fstat-no" title="function not covered" >(s</span>) =&gt; <span class="cstat-no" title="statement not covered" >s.delete())</span>;</span>
2686
- <span class="cstat-no" title="statement not covered" > newStructuresSet.forEach(<span class="fstat-no" title="function not covered" >(s</span>) =&gt; <span class="cstat-no" title="statement not covered" >module.addStructure(Structure.from(s)))</span>;</span>
2687
- <span class="cstat-no" title="statement not covered" > this.app.emit('collect:end');</span>
2688
- }
2689
- //================================================================================
2690
- // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
2691
- // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
2692
- //================================================================================
2693
- }
2694
- &nbsp;
2695
- export default CallInterface;
2696
- //================================================================================
2697
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
2698
- // 自动生成的代码已结束。下面可以手动编写。
2699
- //================================================================================
2700
- &nbsp;</pre></td></tr></table></pre>
2701
-
2702
- <div class='push'></div><!-- for sticky footer -->
2703
- </div><!-- /wrapper -->
2704
- <div class='footer quiet pad2 space-top1 center small'>
2705
- Code coverage generated by
2706
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
2707
- at 2023-10-18T11:36:07.885Z
2708
- </div>
2709
- <script src="../../prettify.js"></script>
2710
- <script>
2711
- window.onload = function () {
2712
- prettyPrint();
2713
- };
2714
- </script>
2715
- <script src="../../sorter.js"></script>
2716
- <script src="../../block-navigation.js"></script>
2717
- </body>
2718
- </html>
2719
-