@futdevpro/nts-dynamo 1.15.139 → 1.15.141

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 (1283) hide show
  1. package/README.md +60 -0
  2. package/SKILLS.md +75 -0
  3. package/__documentations/2026-04-28-logs-module.md +49 -0
  4. package/__documentations/2026-05-17-oai-compatible-providers.md +229 -0
  5. package/__documentations/2026-05-17-static-client-serving-howto.md +144 -0
  6. package/__documentations/2026-06-01-fr041-cors-middleware.md +96 -0
  7. package/__documentations/2026-06-01-fr047-p2p3-function-calling.md +81 -0
  8. package/__documentations/2026-06-15-fr193-memory-guard.md +73 -0
  9. package/__documentations/2026-08-08-fr292-app-version-header.md +38 -0
  10. package/__documentations/2026-08-14-field-encryption-mongoose-document-spread.md +124 -0
  11. package/__documentations/2026-08-18-mongo-transaction-control-service.md +82 -0
  12. package/__documentations/2026-08-18-standalone-account-security-and-privacy-bedrock.md +131 -0
  13. package/__documentations/nts-integration-tests-2026-03-17.md +26 -0
  14. package/__documentations/plans/BEDROCK-HYPERPLAN.md +95 -0
  15. package/build/_models/interfaces/mongo-transaction-settings.interface.d.ts +9 -0
  16. package/build/_models/interfaces/mongo-transaction-settings.interface.d.ts.map +1 -0
  17. package/build/_models/interfaces/mongo-transaction-settings.interface.js +3 -0
  18. package/build/_models/interfaces/mongo-transaction-settings.interface.js.map +1 -0
  19. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.d.ts +6 -0
  20. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.d.ts.map +1 -0
  21. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.js +10 -0
  22. package/build/_modules/account-security/_enums/account-challenge-purpose.type-enum.js.map +1 -0
  23. package/build/_modules/account-security/_enums/account-refresh-token-state.type-enum.d.ts +7 -0
  24. package/build/_modules/account-security/_enums/account-refresh-token-state.type-enum.d.ts.map +1 -0
  25. package/build/_modules/account-security/_enums/account-refresh-token-state.type-enum.js +11 -0
  26. package/build/_modules/account-security/_enums/account-refresh-token-state.type-enum.js.map +1 -0
  27. package/build/_modules/account-security/_enums/account-session-state.type-enum.d.ts +7 -0
  28. package/build/_modules/account-security/_enums/account-session-state.type-enum.d.ts.map +1 -0
  29. package/build/_modules/account-security/_enums/account-session-state.type-enum.js +11 -0
  30. package/build/_modules/account-security/_enums/account-session-state.type-enum.js.map +1 -0
  31. package/build/_modules/account-security/_models/account-challenge-adapter.interface.d.ts +9 -0
  32. package/build/_modules/account-security/_models/account-challenge-adapter.interface.d.ts.map +1 -0
  33. package/build/_modules/account-security/_models/account-challenge-adapter.interface.js +3 -0
  34. package/build/_modules/account-security/_models/account-challenge-adapter.interface.js.map +1 -0
  35. package/build/_modules/account-security/_models/account-challenge-issued.interface.d.ts +7 -0
  36. package/build/_modules/account-security/_models/account-challenge-issued.interface.d.ts.map +1 -0
  37. package/build/_modules/account-security/_models/account-challenge-issued.interface.js +3 -0
  38. package/build/_modules/account-security/_models/account-challenge-issued.interface.js.map +1 -0
  39. package/build/_modules/account-security/_models/account-challenge-record.interface.d.ts +13 -0
  40. package/build/_modules/account-security/_models/account-challenge-record.interface.d.ts.map +1 -0
  41. package/build/_modules/account-security/_models/account-challenge-record.interface.js +3 -0
  42. package/build/_modules/account-security/_models/account-challenge-record.interface.js.map +1 -0
  43. package/build/_modules/account-security/_models/account-challenge-result.interface.d.ts +8 -0
  44. package/build/_modules/account-security/_models/account-challenge-result.interface.d.ts.map +1 -0
  45. package/build/_modules/account-security/_models/account-challenge-result.interface.js +3 -0
  46. package/build/_modules/account-security/_models/account-challenge-result.interface.js.map +1 -0
  47. package/build/_modules/account-security/_models/account-challenge-settings.interface.d.ts +9 -0
  48. package/build/_modules/account-security/_models/account-challenge-settings.interface.d.ts.map +1 -0
  49. package/build/_modules/account-security/_models/account-challenge-settings.interface.js +3 -0
  50. package/build/_modules/account-security/_models/account-challenge-settings.interface.js.map +1 -0
  51. package/build/_modules/account-security/_models/account-password-policy.interface.d.ts +12 -0
  52. package/build/_modules/account-security/_models/account-password-policy.interface.d.ts.map +1 -0
  53. package/build/_modules/account-security/_models/account-password-policy.interface.js +3 -0
  54. package/build/_modules/account-security/_models/account-password-policy.interface.js.map +1 -0
  55. package/build/_modules/account-security/_models/account-password-verification.interface.d.ts +6 -0
  56. package/build/_modules/account-security/_models/account-password-verification.interface.d.ts.map +1 -0
  57. package/build/_modules/account-security/_models/account-password-verification.interface.js +3 -0
  58. package/build/_modules/account-security/_models/account-password-verification.interface.js.map +1 -0
  59. package/build/_modules/account-security/_models/account-refresh-token-record.interface.d.ts +13 -0
  60. package/build/_modules/account-security/_models/account-refresh-token-record.interface.d.ts.map +1 -0
  61. package/build/_modules/account-security/_models/account-refresh-token-record.interface.js +3 -0
  62. package/build/_modules/account-security/_models/account-refresh-token-record.interface.js.map +1 -0
  63. package/build/_modules/account-security/_models/account-session-adapter.interface.d.ts +19 -0
  64. package/build/_modules/account-security/_models/account-session-adapter.interface.d.ts.map +1 -0
  65. package/build/_modules/account-security/_models/account-session-adapter.interface.js +3 -0
  66. package/build/_modules/account-security/_models/account-session-adapter.interface.js.map +1 -0
  67. package/build/_modules/account-security/_models/account-session-claims.interface.d.ts +8 -0
  68. package/build/_modules/account-security/_models/account-session-claims.interface.d.ts.map +1 -0
  69. package/build/_modules/account-security/_models/account-session-claims.interface.js +3 -0
  70. package/build/_modules/account-security/_models/account-session-claims.interface.js.map +1 -0
  71. package/build/_modules/account-security/_models/account-session-context.interface.d.ts +7 -0
  72. package/build/_modules/account-security/_models/account-session-context.interface.d.ts.map +1 -0
  73. package/build/_modules/account-security/_models/account-session-context.interface.js +3 -0
  74. package/build/_modules/account-security/_models/account-session-context.interface.js.map +1 -0
  75. package/build/_modules/account-security/_models/account-session-create.interface.d.ts +8 -0
  76. package/build/_modules/account-security/_models/account-session-create.interface.d.ts.map +1 -0
  77. package/build/_modules/account-security/_models/account-session-create.interface.js +3 -0
  78. package/build/_modules/account-security/_models/account-session-create.interface.js.map +1 -0
  79. package/build/_modules/account-security/_models/account-session-record.interface.d.ts +21 -0
  80. package/build/_modules/account-security/_models/account-session-record.interface.d.ts.map +1 -0
  81. package/build/_modules/account-security/_models/account-session-record.interface.js +3 -0
  82. package/build/_modules/account-security/_models/account-session-record.interface.js.map +1 -0
  83. package/build/_modules/account-security/_models/account-session-rotate.interface.d.ts +11 -0
  84. package/build/_modules/account-security/_models/account-session-rotate.interface.d.ts.map +1 -0
  85. package/build/_modules/account-security/_models/account-session-rotate.interface.js +3 -0
  86. package/build/_modules/account-security/_models/account-session-rotate.interface.js.map +1 -0
  87. package/build/_modules/account-security/_models/account-session-settings.interface.d.ts +11 -0
  88. package/build/_modules/account-security/_models/account-session-settings.interface.d.ts.map +1 -0
  89. package/build/_modules/account-security/_models/account-session-settings.interface.js +3 -0
  90. package/build/_modules/account-security/_models/account-session-settings.interface.js.map +1 -0
  91. package/build/_modules/account-security/_models/account-session-token-pair.interface.d.ts +9 -0
  92. package/build/_modules/account-security/_models/account-session-token-pair.interface.d.ts.map +1 -0
  93. package/build/_modules/account-security/_models/account-session-token-pair.interface.js +3 -0
  94. package/build/_modules/account-security/_models/account-session-token-pair.interface.js.map +1 -0
  95. package/build/_modules/account-security/_models/account-session-view.interface.d.ts +13 -0
  96. package/build/_modules/account-security/_models/account-session-view.interface.d.ts.map +1 -0
  97. package/build/_modules/account-security/_models/account-session-view.interface.js +3 -0
  98. package/build/_modules/account-security/_models/account-session-view.interface.js.map +1 -0
  99. package/build/_modules/account-security/account-challenge.control-service.d.ts +24 -0
  100. package/build/_modules/account-security/account-challenge.control-service.d.ts.map +1 -0
  101. package/build/_modules/account-security/account-challenge.control-service.js +117 -0
  102. package/build/_modules/account-security/account-challenge.control-service.js.map +1 -0
  103. package/build/_modules/account-security/account-password.control-service.d.ts +24 -0
  104. package/build/_modules/account-security/account-password.control-service.d.ts.map +1 -0
  105. package/build/_modules/account-security/account-password.control-service.js +214 -0
  106. package/build/_modules/account-security/account-password.control-service.js.map +1 -0
  107. package/build/_modules/account-security/account-session.control-service.d.ts +39 -0
  108. package/build/_modules/account-security/account-session.control-service.d.ts.map +1 -0
  109. package/build/_modules/account-security/account-session.control-service.js +277 -0
  110. package/build/_modules/account-security/account-session.control-service.js.map +1 -0
  111. package/build/_modules/account-security/index.d.ts +24 -0
  112. package/build/_modules/account-security/index.d.ts.map +1 -0
  113. package/build/_modules/account-security/index.js +16 -0
  114. package/build/_modules/account-security/index.js.map +1 -0
  115. package/build/_modules/privacy-lifecycle/_enums/privacy-consent-decision.type-enum.d.ts +6 -0
  116. package/build/_modules/privacy-lifecycle/_enums/privacy-consent-decision.type-enum.d.ts.map +1 -0
  117. package/build/_modules/privacy-lifecycle/_enums/privacy-consent-decision.type-enum.js +10 -0
  118. package/build/_modules/privacy-lifecycle/_enums/privacy-consent-decision.type-enum.js.map +1 -0
  119. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-action.type-enum.d.ts +11 -0
  120. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-action.type-enum.d.ts.map +1 -0
  121. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-action.type-enum.js +15 -0
  122. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-action.type-enum.js.map +1 -0
  123. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-outcome.type-enum.d.ts +8 -0
  124. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-outcome.type-enum.d.ts.map +1 -0
  125. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-outcome.type-enum.js +12 -0
  126. package/build/_modules/privacy-lifecycle/_enums/privacy-contributor-outcome.type-enum.js.map +1 -0
  127. package/build/_modules/privacy-lifecycle/_enums/privacy-request-state.type-enum.d.ts +16 -0
  128. package/build/_modules/privacy-lifecycle/_enums/privacy-request-state.type-enum.d.ts.map +1 -0
  129. package/build/_modules/privacy-lifecycle/_enums/privacy-request-state.type-enum.js +20 -0
  130. package/build/_modules/privacy-lifecycle/_enums/privacy-request-state.type-enum.js.map +1 -0
  131. package/build/_modules/privacy-lifecycle/_enums/privacy-request.type-enum.d.ts +10 -0
  132. package/build/_modules/privacy-lifecycle/_enums/privacy-request.type-enum.d.ts.map +1 -0
  133. package/build/_modules/privacy-lifecycle/_enums/privacy-request.type-enum.js +14 -0
  134. package/build/_modules/privacy-lifecycle/_enums/privacy-request.type-enum.js.map +1 -0
  135. package/build/_modules/privacy-lifecycle/_models/privacy-consent-input.interface.d.ts +12 -0
  136. package/build/_modules/privacy-lifecycle/_models/privacy-consent-input.interface.d.ts.map +1 -0
  137. package/build/_modules/privacy-lifecycle/_models/privacy-consent-input.interface.js +3 -0
  138. package/build/_modules/privacy-lifecycle/_models/privacy-consent-input.interface.js.map +1 -0
  139. package/build/_modules/privacy-lifecycle/_models/privacy-consent-persistence-result.interface.d.ts +7 -0
  140. package/build/_modules/privacy-lifecycle/_models/privacy-consent-persistence-result.interface.d.ts.map +1 -0
  141. package/build/_modules/privacy-lifecycle/_models/privacy-consent-persistence-result.interface.js +3 -0
  142. package/build/_modules/privacy-lifecycle/_models/privacy-consent-persistence-result.interface.js.map +1 -0
  143. package/build/_modules/privacy-lifecycle/_models/privacy-consent-record.interface.d.ts +15 -0
  144. package/build/_modules/privacy-lifecycle/_models/privacy-consent-record.interface.d.ts.map +1 -0
  145. package/build/_modules/privacy-lifecycle/_models/privacy-consent-record.interface.js +3 -0
  146. package/build/_modules/privacy-lifecycle/_models/privacy-consent-record.interface.js.map +1 -0
  147. package/build/_modules/privacy-lifecycle/_models/privacy-consent-result.interface.d.ts +7 -0
  148. package/build/_modules/privacy-lifecycle/_models/privacy-consent-result.interface.d.ts.map +1 -0
  149. package/build/_modules/privacy-lifecycle/_models/privacy-consent-result.interface.js +3 -0
  150. package/build/_modules/privacy-lifecycle/_models/privacy-consent-result.interface.js.map +1 -0
  151. package/build/_modules/privacy-lifecycle/_models/privacy-consent-view.interface.d.ts +13 -0
  152. package/build/_modules/privacy-lifecycle/_models/privacy-consent-view.interface.d.ts.map +1 -0
  153. package/build/_modules/privacy-lifecycle/_models/privacy-consent-view.interface.js +3 -0
  154. package/build/_modules/privacy-lifecycle/_models/privacy-consent-view.interface.js.map +1 -0
  155. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-context.interface.d.ts +9 -0
  156. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-context.interface.d.ts.map +1 -0
  157. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-context.interface.js +3 -0
  158. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-context.interface.js.map +1 -0
  159. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-outcome.interface.d.ts +14 -0
  160. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-outcome.interface.d.ts.map +1 -0
  161. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-outcome.interface.js +3 -0
  162. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-outcome.interface.js.map +1 -0
  163. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-plan.interface.d.ts +8 -0
  164. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-plan.interface.d.ts.map +1 -0
  165. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-plan.interface.js +3 -0
  166. package/build/_modules/privacy-lifecycle/_models/privacy-contributor-plan.interface.js.map +1 -0
  167. package/build/_modules/privacy-lifecycle/_models/privacy-contributor.interface.d.ts +11 -0
  168. package/build/_modules/privacy-lifecycle/_models/privacy-contributor.interface.d.ts.map +1 -0
  169. package/build/_modules/privacy-lifecycle/_models/privacy-contributor.interface.js +3 -0
  170. package/build/_modules/privacy-lifecycle/_models/privacy-contributor.interface.js.map +1 -0
  171. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-adapter.interface.d.ts +13 -0
  172. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-adapter.interface.d.ts.map +1 -0
  173. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-adapter.interface.js +3 -0
  174. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-adapter.interface.js.map +1 -0
  175. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-result.interface.d.ts +9 -0
  176. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-result.interface.d.ts.map +1 -0
  177. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-result.interface.js +3 -0
  178. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-result.interface.js.map +1 -0
  179. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-settings.interface.d.ts +7 -0
  180. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-settings.interface.d.ts.map +1 -0
  181. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-settings.interface.js +3 -0
  182. package/build/_modules/privacy-lifecycle/_models/privacy-ledger-settings.interface.js.map +1 -0
  183. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-input.interface.d.ts +11 -0
  184. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-input.interface.d.ts.map +1 -0
  185. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-input.interface.js +3 -0
  186. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-input.interface.js.map +1 -0
  187. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-persistence-result.interface.d.ts +7 -0
  188. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-persistence-result.interface.d.ts.map +1 -0
  189. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-persistence-result.interface.js +3 -0
  190. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-persistence-result.interface.js.map +1 -0
  191. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-result.interface.d.ts +7 -0
  192. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-result.interface.d.ts.map +1 -0
  193. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-result.interface.js +3 -0
  194. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-result.interface.js.map +1 -0
  195. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-view.interface.d.ts +12 -0
  196. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-view.interface.d.ts.map +1 -0
  197. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-view.interface.js +3 -0
  198. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-view.interface.js.map +1 -0
  199. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance.interface.d.ts +14 -0
  200. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance.interface.d.ts.map +1 -0
  201. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance.interface.js +3 -0
  202. package/build/_modules/privacy-lifecycle/_models/privacy-legal-acceptance.interface.js.map +1 -0
  203. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-adapter.interface.d.ts +15 -0
  204. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-adapter.interface.d.ts.map +1 -0
  205. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-adapter.interface.js +3 -0
  206. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-adapter.interface.js.map +1 -0
  207. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-settings.interface.d.ts +9 -0
  208. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-settings.interface.d.ts.map +1 -0
  209. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-settings.interface.js +3 -0
  210. package/build/_modules/privacy-lifecycle/_models/privacy-lifecycle-settings.interface.js.map +1 -0
  211. package/build/_modules/privacy-lifecycle/_models/privacy-request-create-result.interface.d.ts +7 -0
  212. package/build/_modules/privacy-lifecycle/_models/privacy-request-create-result.interface.d.ts.map +1 -0
  213. package/build/_modules/privacy-lifecycle/_models/privacy-request-create-result.interface.js +3 -0
  214. package/build/_modules/privacy-lifecycle/_models/privacy-request-create-result.interface.js.map +1 -0
  215. package/build/_modules/privacy-lifecycle/_models/privacy-request-open.interface.d.ts +10 -0
  216. package/build/_modules/privacy-lifecycle/_models/privacy-request-open.interface.d.ts.map +1 -0
  217. package/build/_modules/privacy-lifecycle/_models/privacy-request-open.interface.js +3 -0
  218. package/build/_modules/privacy-lifecycle/_models/privacy-request-open.interface.js.map +1 -0
  219. package/build/_modules/privacy-lifecycle/_models/privacy-request-persistence-create-result.interface.d.ts +7 -0
  220. package/build/_modules/privacy-lifecycle/_models/privacy-request-persistence-create-result.interface.d.ts.map +1 -0
  221. package/build/_modules/privacy-lifecycle/_models/privacy-request-persistence-create-result.interface.js +3 -0
  222. package/build/_modules/privacy-lifecycle/_models/privacy-request-persistence-create-result.interface.js.map +1 -0
  223. package/build/_modules/privacy-lifecycle/_models/privacy-request-record.interface.d.ts +21 -0
  224. package/build/_modules/privacy-lifecycle/_models/privacy-request-record.interface.d.ts.map +1 -0
  225. package/build/_modules/privacy-lifecycle/_models/privacy-request-record.interface.js +3 -0
  226. package/build/_modules/privacy-lifecycle/_models/privacy-request-record.interface.js.map +1 -0
  227. package/build/_modules/privacy-lifecycle/_models/privacy-request-result.interface.d.ts +8 -0
  228. package/build/_modules/privacy-lifecycle/_models/privacy-request-result.interface.d.ts.map +1 -0
  229. package/build/_modules/privacy-lifecycle/_models/privacy-request-result.interface.js +3 -0
  230. package/build/_modules/privacy-lifecycle/_models/privacy-request-result.interface.js.map +1 -0
  231. package/build/_modules/privacy-lifecycle/_models/privacy-request-view.interface.d.ts +20 -0
  232. package/build/_modules/privacy-lifecycle/_models/privacy-request-view.interface.d.ts.map +1 -0
  233. package/build/_modules/privacy-lifecycle/_models/privacy-request-view.interface.js +3 -0
  234. package/build/_modules/privacy-lifecycle/_models/privacy-request-view.interface.js.map +1 -0
  235. package/build/_modules/privacy-lifecycle/index.d.ts +33 -0
  236. package/build/_modules/privacy-lifecycle/index.d.ts.map +1 -0
  237. package/build/_modules/privacy-lifecycle/index.js +18 -0
  238. package/build/_modules/privacy-lifecycle/index.js.map +1 -0
  239. package/build/_modules/privacy-lifecycle/privacy-ledger.control-service.d.ts +28 -0
  240. package/build/_modules/privacy-lifecycle/privacy-ledger.control-service.d.ts.map +1 -0
  241. package/build/_modules/privacy-lifecycle/privacy-ledger.control-service.js +168 -0
  242. package/build/_modules/privacy-lifecycle/privacy-ledger.control-service.js.map +1 -0
  243. package/build/_modules/privacy-lifecycle/privacy-lifecycle.control-service.d.ts +42 -0
  244. package/build/_modules/privacy-lifecycle/privacy-lifecycle.control-service.d.ts.map +1 -0
  245. package/build/_modules/privacy-lifecycle/privacy-lifecycle.control-service.js +364 -0
  246. package/build/_modules/privacy-lifecycle/privacy-lifecycle.control-service.js.map +1 -0
  247. package/build/_services/core/mongo-transaction.control-service.d.ts +19 -0
  248. package/build/_services/core/mongo-transaction.control-service.d.ts.map +1 -0
  249. package/build/_services/core/mongo-transaction.control-service.js +95 -0
  250. package/build/_services/core/mongo-transaction.control-service.js.map +1 -0
  251. package/build/index.d.ts +2 -0
  252. package/build/index.d.ts.map +1 -1
  253. package/build/index.js +2 -0
  254. package/build/index.js.map +1 -1
  255. package/package.json +20 -2
  256. package/src/_models/interfaces/mongo-transaction-settings.interface.ts +9 -0
  257. package/src/_modules/account-security/_enums/account-challenge-purpose.type-enum.ts +5 -0
  258. package/src/_modules/account-security/_enums/account-refresh-token-state.type-enum.ts +6 -0
  259. package/src/_modules/account-security/_enums/account-session-state.type-enum.ts +6 -0
  260. package/src/_modules/account-security/_models/account-challenge-adapter.interface.ts +17 -0
  261. package/src/_modules/account-security/_models/account-challenge-issued.interface.ts +6 -0
  262. package/src/_modules/account-security/_models/account-challenge-record.interface.ts +13 -0
  263. package/src/_modules/account-security/_models/account-challenge-result.interface.ts +8 -0
  264. package/src/_modules/account-security/_models/account-challenge-settings.interface.ts +9 -0
  265. package/src/_modules/account-security/_models/account-password-policy.interface.ts +11 -0
  266. package/src/_modules/account-security/_models/account-password-verification.interface.ts +5 -0
  267. package/src/_modules/account-security/_models/account-refresh-token-record.interface.ts +13 -0
  268. package/src/_modules/account-security/_models/account-session-adapter.interface.ts +19 -0
  269. package/src/_modules/account-security/_models/account-session-claims.interface.ts +7 -0
  270. package/src/_modules/account-security/_models/account-session-context.interface.ts +6 -0
  271. package/src/_modules/account-security/_models/account-session-create.interface.ts +8 -0
  272. package/src/_modules/account-security/_models/account-session-record.interface.ts +21 -0
  273. package/src/_modules/account-security/_models/account-session-rotate.interface.ts +11 -0
  274. package/src/_modules/account-security/_models/account-session-settings.interface.ts +11 -0
  275. package/src/_modules/account-security/_models/account-session-token-pair.interface.ts +8 -0
  276. package/src/_modules/account-security/_models/account-session-view.interface.ts +13 -0
  277. package/src/_modules/account-security/account-challenge.control-service.spec.ts +195 -0
  278. package/src/_modules/account-security/account-challenge.control-service.ts +164 -0
  279. package/src/_modules/account-security/account-password.control-service.spec.ts +96 -0
  280. package/src/_modules/account-security/account-password.control-service.ts +288 -0
  281. package/src/_modules/account-security/account-session.control-service.spec.ts +294 -0
  282. package/src/_modules/account-security/account-session.control-service.ts +376 -0
  283. package/src/_modules/account-security/index.ts +31 -0
  284. package/src/_modules/privacy-lifecycle/_enums/privacy-consent-decision.type-enum.ts +5 -0
  285. package/src/_modules/privacy-lifecycle/_enums/privacy-contributor-action.type-enum.ts +10 -0
  286. package/src/_modules/privacy-lifecycle/_enums/privacy-contributor-outcome.type-enum.ts +7 -0
  287. package/src/_modules/privacy-lifecycle/_enums/privacy-request-state.type-enum.ts +15 -0
  288. package/src/_modules/privacy-lifecycle/_enums/privacy-request.type-enum.ts +9 -0
  289. package/src/_modules/privacy-lifecycle/_models/privacy-consent-input.interface.ts +12 -0
  290. package/src/_modules/privacy-lifecycle/_models/privacy-consent-persistence-result.interface.ts +7 -0
  291. package/src/_modules/privacy-lifecycle/_models/privacy-consent-record.interface.ts +15 -0
  292. package/src/_modules/privacy-lifecycle/_models/privacy-consent-result.interface.ts +7 -0
  293. package/src/_modules/privacy-lifecycle/_models/privacy-consent-view.interface.ts +13 -0
  294. package/src/_modules/privacy-lifecycle/_models/privacy-contributor-context.interface.ts +9 -0
  295. package/src/_modules/privacy-lifecycle/_models/privacy-contributor-outcome.interface.ts +14 -0
  296. package/src/_modules/privacy-lifecycle/_models/privacy-contributor-plan.interface.ts +8 -0
  297. package/src/_modules/privacy-lifecycle/_models/privacy-contributor.interface.ts +17 -0
  298. package/src/_modules/privacy-lifecycle/_models/privacy-ledger-adapter.interface.ts +21 -0
  299. package/src/_modules/privacy-lifecycle/_models/privacy-ledger-result.interface.ts +9 -0
  300. package/src/_modules/privacy-lifecycle/_models/privacy-ledger-settings.interface.ts +7 -0
  301. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-input.interface.ts +10 -0
  302. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-persistence-result.interface.ts +7 -0
  303. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-result.interface.ts +7 -0
  304. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance-view.interface.ts +11 -0
  305. package/src/_modules/privacy-lifecycle/_models/privacy-legal-acceptance.interface.ts +13 -0
  306. package/src/_modules/privacy-lifecycle/_models/privacy-lifecycle-adapter.interface.ts +19 -0
  307. package/src/_modules/privacy-lifecycle/_models/privacy-lifecycle-settings.interface.ts +9 -0
  308. package/src/_modules/privacy-lifecycle/_models/privacy-request-create-result.interface.ts +7 -0
  309. package/src/_modules/privacy-lifecycle/_models/privacy-request-open.interface.ts +10 -0
  310. package/src/_modules/privacy-lifecycle/_models/privacy-request-persistence-create-result.interface.ts +7 -0
  311. package/src/_modules/privacy-lifecycle/_models/privacy-request-record.interface.ts +21 -0
  312. package/src/_modules/privacy-lifecycle/_models/privacy-request-result.interface.ts +8 -0
  313. package/src/_modules/privacy-lifecycle/_models/privacy-request-view.interface.ts +20 -0
  314. package/src/_modules/privacy-lifecycle/index.ts +40 -0
  315. package/src/_modules/privacy-lifecycle/privacy-ledger.control-service.spec.ts +206 -0
  316. package/src/_modules/privacy-lifecycle/privacy-ledger.control-service.ts +253 -0
  317. package/src/_modules/privacy-lifecycle/privacy-lifecycle.control-service.spec.ts +353 -0
  318. package/src/_modules/privacy-lifecycle/privacy-lifecycle.control-service.ts +586 -0
  319. package/src/_services/core/mongo-transaction.control-service.spec.ts +165 -0
  320. package/src/_services/core/mongo-transaction.control-service.ts +148 -0
  321. package/src/index.ts +2 -1
  322. package/build/_collections/app-version-header.util.spec.d.ts +0 -2
  323. package/build/_collections/app-version-header.util.spec.d.ts.map +0 -1
  324. package/build/_collections/app-version-header.util.spec.js +0 -82
  325. package/build/_collections/app-version-header.util.spec.js.map +0 -1
  326. package/build/_collections/archive.util.spec.d.ts +0 -2
  327. package/build/_collections/archive.util.spec.d.ts.map +0 -1
  328. package/build/_collections/archive.util.spec.js +0 -51
  329. package/build/_collections/archive.util.spec.js.map +0 -1
  330. package/build/_collections/client-safe-error.util.spec.d.ts +0 -2
  331. package/build/_collections/client-safe-error.util.spec.d.ts.map +0 -1
  332. package/build/_collections/client-safe-error.util.spec.js +0 -124
  333. package/build/_collections/client-safe-error.util.spec.js.map +0 -1
  334. package/build/_collections/default-fallback-cache-max-age.const.spec.d.ts +0 -2
  335. package/build/_collections/default-fallback-cache-max-age.const.spec.d.ts.map +0 -1
  336. package/build/_collections/default-fallback-cache-max-age.const.spec.js +0 -12
  337. package/build/_collections/default-fallback-cache-max-age.const.spec.js.map +0 -1
  338. package/build/_collections/default-not-found-page.const.spec.d.ts +0 -2
  339. package/build/_collections/default-not-found-page.const.spec.d.ts.map +0 -1
  340. package/build/_collections/default-not-found-page.const.spec.js +0 -19
  341. package/build/_collections/default-not-found-page.const.spec.js.map +0 -1
  342. package/build/_collections/default-socket-path.const.spec.d.ts +0 -2
  343. package/build/_collections/default-socket-path.const.spec.d.ts.map +0 -1
  344. package/build/_collections/default-socket-path.const.spec.js +0 -13
  345. package/build/_collections/default-socket-path.const.spec.js.map +0 -1
  346. package/build/_collections/field-encryption.util.spec.d.ts +0 -2
  347. package/build/_collections/field-encryption.util.spec.d.ts.map +0 -1
  348. package/build/_collections/field-encryption.util.spec.js +0 -156
  349. package/build/_collections/field-encryption.util.spec.js.map +0 -1
  350. package/build/_collections/get-environment-settings.util.spec.d.ts +0 -2
  351. package/build/_collections/get-environment-settings.util.spec.d.ts.map +0 -1
  352. package/build/_collections/get-environment-settings.util.spec.js +0 -165
  353. package/build/_collections/get-environment-settings.util.spec.js.map +0 -1
  354. package/build/_collections/load-shed.util.spec.d.ts +0 -2
  355. package/build/_collections/load-shed.util.spec.d.ts.map +0 -1
  356. package/build/_collections/load-shed.util.spec.js +0 -48
  357. package/build/_collections/load-shed.util.spec.js.map +0 -1
  358. package/build/_collections/mongo-reconnect-guard.util.spec.d.ts +0 -2
  359. package/build/_collections/mongo-reconnect-guard.util.spec.d.ts.map +0 -1
  360. package/build/_collections/mongo-reconnect-guard.util.spec.js +0 -46
  361. package/build/_collections/mongo-reconnect-guard.util.spec.js.map +0 -1
  362. package/build/_collections/security-headers.util.spec.d.ts +0 -2
  363. package/build/_collections/security-headers.util.spec.d.ts.map +0 -1
  364. package/build/_collections/security-headers.util.spec.js +0 -66
  365. package/build/_collections/security-headers.util.spec.js.map +0 -1
  366. package/build/_collections/signed-url.util.spec.d.ts +0 -2
  367. package/build/_collections/signed-url.util.spec.d.ts.map +0 -1
  368. package/build/_collections/signed-url.util.spec.js +0 -161
  369. package/build/_collections/signed-url.util.spec.js.map +0 -1
  370. package/build/_collections/star.controller.spec.d.ts +0 -2
  371. package/build/_collections/star.controller.spec.d.ts.map +0 -1
  372. package/build/_collections/star.controller.spec.js +0 -194
  373. package/build/_collections/star.controller.spec.js.map +0 -1
  374. package/build/_collections/static-cache-control.util.spec.d.ts +0 -2
  375. package/build/_collections/static-cache-control.util.spec.d.ts.map +0 -1
  376. package/build/_collections/static-cache-control.util.spec.js +0 -41
  377. package/build/_collections/static-cache-control.util.spec.js.map +0 -1
  378. package/build/_models/control-models/api-call-params.control-model.spec.d.ts +0 -2
  379. package/build/_models/control-models/api-call-params.control-model.spec.d.ts.map +0 -1
  380. package/build/_models/control-models/api-call-params.control-model.spec.js +0 -128
  381. package/build/_models/control-models/api-call-params.control-model.spec.js.map +0 -1
  382. package/build/_models/control-models/app-ext-system-controls.control-model.spec.d.ts +0 -2
  383. package/build/_models/control-models/app-ext-system-controls.control-model.spec.d.ts.map +0 -1
  384. package/build/_models/control-models/app-ext-system-controls.control-model.spec.js +0 -43
  385. package/build/_models/control-models/app-ext-system-controls.control-model.spec.js.map +0 -1
  386. package/build/_models/control-models/app-params.control-model.spec.d.ts +0 -2
  387. package/build/_models/control-models/app-params.control-model.spec.d.ts.map +0 -1
  388. package/build/_models/control-models/app-params.control-model.spec.js +0 -180
  389. package/build/_models/control-models/app-params.control-model.spec.js.map +0 -1
  390. package/build/_models/control-models/app-system-controls.control-model.spec.d.ts +0 -2
  391. package/build/_models/control-models/app-system-controls.control-model.spec.d.ts.map +0 -1
  392. package/build/_models/control-models/app-system-controls.control-model.spec.js +0 -26
  393. package/build/_models/control-models/app-system-controls.control-model.spec.js.map +0 -1
  394. package/build/_models/control-models/endpoint-params.control-model.spec.d.ts +0 -2
  395. package/build/_models/control-models/endpoint-params.control-model.spec.d.ts.map +0 -1
  396. package/build/_models/control-models/endpoint-params.control-model.spec.js +0 -569
  397. package/build/_models/control-models/endpoint-params.control-model.spec.js.map +0 -1
  398. package/build/_models/control-models/http-settings.control-model.spec.d.ts +0 -2
  399. package/build/_models/control-models/http-settings.control-model.spec.d.ts.map +0 -1
  400. package/build/_models/control-models/http-settings.control-model.spec.js +0 -71
  401. package/build/_models/control-models/http-settings.control-model.spec.js.map +0 -1
  402. package/build/_models/control-models/system-control.control-model.spec.d.ts +0 -2
  403. package/build/_models/control-models/system-control.control-model.spec.d.ts.map +0 -1
  404. package/build/_models/control-models/system-control.control-model.spec.js +0 -24
  405. package/build/_models/control-models/system-control.control-model.spec.js.map +0 -1
  406. package/build/_models/interfaces/cors-settings.interface.spec.d.ts +0 -2
  407. package/build/_models/interfaces/cors-settings.interface.spec.d.ts.map +0 -1
  408. package/build/_models/interfaces/cors-settings.interface.spec.js +0 -48
  409. package/build/_models/interfaces/cors-settings.interface.spec.js.map +0 -1
  410. package/build/_models/interfaces/static-client-settings.interface.spec.d.ts +0 -2
  411. package/build/_models/interfaces/static-client-settings.interface.spec.d.ts.map +0 -1
  412. package/build/_models/interfaces/static-client-settings.interface.spec.js +0 -28
  413. package/build/_models/interfaces/static-client-settings.interface.spec.js.map +0 -1
  414. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.d.ts +0 -2
  415. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.d.ts.map +0 -1
  416. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.js +0 -185
  417. package/build/_modules/admin-auth/admin-api-key.auth-service.spec.js.map +0 -1
  418. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.d.ts +0 -2
  419. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.d.ts.map +0 -1
  420. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.js +0 -132
  421. package/build/_modules/ai/_collections/ai-model-config-validator.util.spec.js.map +0 -1
  422. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.d.ts +0 -2
  423. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.d.ts.map +0 -1
  424. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.js +0 -56
  425. package/build/_modules/ai/_modules/ai-mock/_collections/aim-default-collection.util.spec.js.map +0 -1
  426. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.d.ts +0 -2
  427. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.d.ts.map +0 -1
  428. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.js +0 -43
  429. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-match.util.spec.js.map +0 -1
  430. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.d.ts +0 -2
  431. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.d.ts.map +0 -1
  432. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.js +0 -47
  433. package/build/_modules/ai/_modules/ai-mock/_collections/aim-fixture-serializer.util.spec.js.map +0 -1
  434. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.d.ts +0 -2
  435. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.d.ts.map +0 -1
  436. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.js +0 -98
  437. package/build/_modules/ai/_modules/ai-mock/_services/ai-embedding-mock.service.spec.js.map +0 -1
  438. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.d.ts +0 -2
  439. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.d.ts.map +0 -1
  440. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.js +0 -117
  441. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-harness.service.spec.js.map +0 -1
  442. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.d.ts +0 -2
  443. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.d.ts.map +0 -1
  444. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.js +0 -87
  445. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-pipeline.spec.js.map +0 -1
  446. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.d.ts +0 -2
  447. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.d.ts.map +0 -1
  448. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.js +0 -42
  449. package/build/_modules/ai/_modules/ai-mock/_services/aim-fixture-store.service.spec.js.map +0 -1
  450. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.d.ts +0 -2
  451. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.d.ts.map +0 -1
  452. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.js +0 -74
  453. package/build/_modules/ai/_modules/ai-mock/_services/aim-integration-proof.spec.js.map +0 -1
  454. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.d.ts +0 -2
  455. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.d.ts.map +0 -1
  456. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.js +0 -95
  457. package/build/_modules/ai/_modules/ai-mock/_services/aim-mock.service.spec.js.map +0 -1
  458. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.d.ts +0 -2
  459. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.d.ts.map +0 -1
  460. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.js +0 -207
  461. package/build/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.spec.js.map +0 -1
  462. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.d.ts +0 -2
  463. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.d.ts.map +0 -1
  464. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.js +0 -244
  465. package/build/_modules/ai/_modules/document-ai/_collections/dai-code-chunking.util.spec.js.map +0 -1
  466. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.d.ts +0 -2
  467. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.d.ts.map +0 -1
  468. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.js +0 -162
  469. package/build/_modules/ai/_modules/document-ai/_collections/dai-document.util.spec.js.map +0 -1
  470. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.d.ts +0 -2
  471. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.d.ts.map +0 -1
  472. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.js +0 -279
  473. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.spec.js.map +0 -1
  474. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.d.ts +0 -2
  475. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.d.ts.map +0 -1
  476. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.js +0 -452
  477. package/build/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.spec.js.map +0 -1
  478. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.d.ts +0 -2
  479. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.d.ts.map +0 -1
  480. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.js +0 -293
  481. package/build/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.spec.js.map +0 -1
  482. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.d.ts +0 -2
  483. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.d.ts.map +0 -1
  484. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.js +0 -395
  485. package/build/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.spec.js.map +0 -1
  486. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.d.ts +0 -2
  487. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.d.ts.map +0 -1
  488. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.js +0 -411
  489. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.spec.js.map +0 -1
  490. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.d.ts +0 -2
  491. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.d.ts.map +0 -1
  492. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.js +0 -143
  493. package/build/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.tools.spec.js.map +0 -1
  494. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.d.ts +0 -2
  495. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.d.ts.map +0 -1
  496. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.js +0 -98
  497. package/build/_modules/ai/_services/ai-embedding-provider.registry.spec.js.map +0 -1
  498. package/build/_modules/ai/_services/ai-embedding.service-base.spec.d.ts +0 -2
  499. package/build/_modules/ai/_services/ai-embedding.service-base.spec.d.ts.map +0 -1
  500. package/build/_modules/ai/_services/ai-embedding.service-base.spec.js +0 -80
  501. package/build/_modules/ai/_services/ai-embedding.service-base.spec.js.map +0 -1
  502. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.d.ts +0 -2
  503. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.d.ts.map +0 -1
  504. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.js +0 -186
  505. package/build/_modules/ai/_services/ai-llm-chat.service-base.spec.js.map +0 -1
  506. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.d.ts +0 -2
  507. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.d.ts.map +0 -1
  508. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.js +0 -108
  509. package/build/_modules/ai/_services/ai-llm.service-base.reconciler.spec.js.map +0 -1
  510. package/build/_modules/ai/_services/ai-llm.service-base.spec.d.ts +0 -2
  511. package/build/_modules/ai/_services/ai-llm.service-base.spec.d.ts.map +0 -1
  512. package/build/_modules/ai/_services/ai-llm.service-base.spec.js +0 -185
  513. package/build/_modules/ai/_services/ai-llm.service-base.spec.js.map +0 -1
  514. package/build/_modules/ai/_services/ai-provider.service-base.spec.d.ts +0 -2
  515. package/build/_modules/ai/_services/ai-provider.service-base.spec.d.ts.map +0 -1
  516. package/build/_modules/ai/_services/ai-provider.service-base.spec.js +0 -128
  517. package/build/_modules/ai/_services/ai-provider.service-base.spec.js.map +0 -1
  518. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.d.ts +0 -2
  519. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.d.ts.map +0 -1
  520. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.js +0 -159
  521. package/build/_modules/ai/_services/lmstudio-embedding.control-service.spec.js.map +0 -1
  522. package/build/_modules/assistant/_collections/ass.util.spec.d.ts +0 -2
  523. package/build/_modules/assistant/_collections/ass.util.spec.d.ts.map +0 -1
  524. package/build/_modules/assistant/_collections/ass.util.spec.js +0 -153
  525. package/build/_modules/assistant/_collections/ass.util.spec.js.map +0 -1
  526. package/build/_modules/assistant/_services/ass-io.control-service.spec.d.ts +0 -2
  527. package/build/_modules/assistant/_services/ass-io.control-service.spec.d.ts.map +0 -1
  528. package/build/_modules/assistant/_services/ass-io.control-service.spec.js +0 -99
  529. package/build/_modules/assistant/_services/ass-io.control-service.spec.js.map +0 -1
  530. package/build/_modules/assistant/_services/ass-main.control-service.spec.d.ts +0 -2
  531. package/build/_modules/assistant/_services/ass-main.control-service.spec.d.ts.map +0 -1
  532. package/build/_modules/assistant/_services/ass-main.control-service.spec.js +0 -146
  533. package/build/_modules/assistant/_services/ass-main.control-service.spec.js.map +0 -1
  534. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.d.ts +0 -2
  535. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.d.ts.map +0 -1
  536. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.js +0 -356
  537. package/build/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.spec.js.map +0 -1
  538. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.d.ts +0 -2
  539. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.d.ts.map +0 -1
  540. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.js +0 -93
  541. package/build/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.spec.js.map +0 -1
  542. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.d.ts +0 -2
  543. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.d.ts.map +0 -1
  544. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.js +0 -304
  545. package/build/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.spec.js.map +0 -1
  546. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.d.ts +0 -2
  547. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.d.ts.map +0 -1
  548. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.js +0 -336
  549. package/build/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.spec.js.map +0 -1
  550. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.d.ts +0 -2
  551. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.d.ts.map +0 -1
  552. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.js +0 -337
  553. package/build/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.spec.js.map +0 -1
  554. package/build/_modules/bot/_services/bot-commands.control-service.spec.d.ts +0 -2
  555. package/build/_modules/bot/_services/bot-commands.control-service.spec.d.ts.map +0 -1
  556. package/build/_modules/bot/_services/bot-commands.control-service.spec.js +0 -84
  557. package/build/_modules/bot/_services/bot-commands.control-service.spec.js.map +0 -1
  558. package/build/_modules/bot/_services/bot-io.control-service.spec.d.ts +0 -2
  559. package/build/_modules/bot/_services/bot-io.control-service.spec.d.ts.map +0 -1
  560. package/build/_modules/bot/_services/bot-io.control-service.spec.js +0 -228
  561. package/build/_modules/bot/_services/bot-io.control-service.spec.js.map +0 -1
  562. package/build/_modules/bot/_services/bot-main.control-service.spec.d.ts +0 -2
  563. package/build/_modules/bot/_services/bot-main.control-service.spec.d.ts.map +0 -1
  564. package/build/_modules/bot/_services/bot-main.control-service.spec.js +0 -164
  565. package/build/_modules/bot/_services/bot-main.control-service.spec.js.map +0 -1
  566. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.d.ts +0 -2
  567. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.d.ts.map +0 -1
  568. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.js +0 -267
  569. package/build/_modules/bot/_services/bot-messaging-provider.service-base.spec.js.map +0 -1
  570. package/build/_modules/bot/_services/bot-routines.control-service.spec.d.ts +0 -2
  571. package/build/_modules/bot/_services/bot-routines.control-service.spec.d.ts.map +0 -1
  572. package/build/_modules/bot/_services/bot-routines.control-service.spec.js +0 -82
  573. package/build/_modules/bot/_services/bot-routines.control-service.spec.js.map +0 -1
  574. package/build/_modules/custom-data/custom-data.controller.spec.d.ts +0 -2
  575. package/build/_modules/custom-data/custom-data.controller.spec.d.ts.map +0 -1
  576. package/build/_modules/custom-data/custom-data.controller.spec.js +0 -38
  577. package/build/_modules/custom-data/custom-data.controller.spec.js.map +0 -1
  578. package/build/_modules/custom-data/custom-data.data-service.spec.d.ts +0 -2
  579. package/build/_modules/custom-data/custom-data.data-service.spec.d.ts.map +0 -1
  580. package/build/_modules/custom-data/custom-data.data-service.spec.js +0 -45
  581. package/build/_modules/custom-data/custom-data.data-service.spec.js.map +0 -1
  582. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.d.ts +0 -2
  583. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.d.ts.map +0 -1
  584. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.js +0 -23
  585. package/build/_modules/custom-data/get-custom-data-routing-module.util.spec.js.map +0 -1
  586. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.d.ts +0 -2
  587. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.d.ts.map +0 -1
  588. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.js +0 -124
  589. package/build/_modules/data-readers/_collections/dynts-sqlite-reader.util.spec.js.map +0 -1
  590. package/build/_modules/defaults/_services/default-auth.service.spec.d.ts +0 -2
  591. package/build/_modules/defaults/_services/default-auth.service.spec.d.ts.map +0 -1
  592. package/build/_modules/defaults/_services/default-auth.service.spec.js +0 -210
  593. package/build/_modules/defaults/_services/default-auth.service.spec.js.map +0 -1
  594. package/build/_modules/defaults/_services/default-socket-events.service.spec.d.ts +0 -2
  595. package/build/_modules/defaults/_services/default-socket-events.service.spec.d.ts.map +0 -1
  596. package/build/_modules/defaults/_services/default-socket-events.service.spec.js +0 -34
  597. package/build/_modules/defaults/_services/default-socket-events.service.spec.js.map +0 -1
  598. package/build/_modules/defaults/_services/default-user.data-service.spec.d.ts +0 -2
  599. package/build/_modules/defaults/_services/default-user.data-service.spec.d.ts.map +0 -1
  600. package/build/_modules/defaults/_services/default-user.data-service.spec.js +0 -133
  601. package/build/_modules/defaults/_services/default-user.data-service.spec.js.map +0 -1
  602. package/build/_modules/discord-assistant/_collections/dias.util.spec.d.ts +0 -2
  603. package/build/_modules/discord-assistant/_collections/dias.util.spec.d.ts.map +0 -1
  604. package/build/_modules/discord-assistant/_collections/dias.util.spec.js +0 -307
  605. package/build/_modules/discord-assistant/_collections/dias.util.spec.js.map +0 -1
  606. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.d.ts +0 -2
  607. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.d.ts.map +0 -1
  608. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.js +0 -76
  609. package/build/_modules/discord-assistant/_services/dias-io.control-service.spec.js.map +0 -1
  610. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.d.ts +0 -2
  611. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.d.ts.map +0 -1
  612. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.js +0 -17
  613. package/build/_modules/discord-assistant/_services/dias-main.control-service.spec.js.map +0 -1
  614. package/build/_modules/discord-assistant/_services/dias.service-base.spec.d.ts +0 -2
  615. package/build/_modules/discord-assistant/_services/dias.service-base.spec.d.ts.map +0 -1
  616. package/build/_modules/discord-assistant/_services/dias.service-base.spec.js +0 -151
  617. package/build/_modules/discord-assistant/_services/dias.service-base.spec.js.map +0 -1
  618. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.d.ts +0 -2
  619. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.d.ts.map +0 -1
  620. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.js +0 -29
  621. package/build/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.spec.js.map +0 -1
  622. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.d.ts +0 -2
  623. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.d.ts.map +0 -1
  624. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.js +0 -172
  625. package/build/_modules/discord-bot/_collections/dibo-operations.util.spec.js.map +0 -1
  626. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.d.ts +0 -2
  627. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.d.ts.map +0 -1
  628. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.js +0 -133
  629. package/build/_modules/discord-bot/_services/dibo-commands.control-service.spec.js.map +0 -1
  630. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.d.ts +0 -2
  631. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.d.ts.map +0 -1
  632. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.js +0 -215
  633. package/build/_modules/discord-bot/_services/dibo-io.control-service.spec.js.map +0 -1
  634. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.d.ts +0 -2
  635. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.d.ts.map +0 -1
  636. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.js +0 -342
  637. package/build/_modules/discord-bot/_services/dibo-main.control-service.spec.js.map +0 -1
  638. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.d.ts +0 -2
  639. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.d.ts.map +0 -1
  640. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.js +0 -87
  641. package/build/_modules/discord-bot/_services/dibo-routines.control-service.spec.js.map +0 -1
  642. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.d.ts +0 -2
  643. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.d.ts.map +0 -1
  644. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.js +0 -137
  645. package/build/_modules/local-vector-search/_services/lvs-bm25.util.spec.js.map +0 -1
  646. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.d.ts +0 -2
  647. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.d.ts.map +0 -1
  648. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.js +0 -345
  649. package/build/_modules/local-vector-search/_services/lvs-doc-chunk-data.service.spec.js.map +0 -1
  650. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.d.ts +0 -2
  651. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.d.ts.map +0 -1
  652. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.js +0 -407
  653. package/build/_modules/local-vector-search/_services/lvs-local-vector-search.data-service.spec.js.map +0 -1
  654. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.d.ts +0 -2
  655. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.d.ts.map +0 -1
  656. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.js +0 -160
  657. package/build/_modules/local-vector-search/_services/lvs-persistent-vector-pool.control-service.spec.js.map +0 -1
  658. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.d.ts +0 -2
  659. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.d.ts.map +0 -1
  660. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.js +0 -122
  661. package/build/_modules/local-vector-search/_services/lvs-vector-persist.data-service.spec.js.map +0 -1
  662. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.d.ts +0 -2
  663. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.d.ts.map +0 -1
  664. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.js +0 -388
  665. package/build/_modules/local-vector-search/_services/lvs-vector-pool.control-service.spec.js.map +0 -1
  666. package/build/_modules/logs/file-log.service.spec.d.ts +0 -2
  667. package/build/_modules/logs/file-log.service.spec.d.ts.map +0 -1
  668. package/build/_modules/logs/file-log.service.spec.js +0 -300
  669. package/build/_modules/logs/file-log.service.spec.js.map +0 -1
  670. package/build/_modules/logs/file-logs.controller.spec.d.ts +0 -2
  671. package/build/_modules/logs/file-logs.controller.spec.d.ts.map +0 -1
  672. package/build/_modules/logs/file-logs.controller.spec.js +0 -203
  673. package/build/_modules/logs/file-logs.controller.spec.js.map +0 -1
  674. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.d.ts +0 -2
  675. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.d.ts.map +0 -1
  676. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.js +0 -125
  677. package/build/_modules/mcp/_services/dynts-mcp-server.service-base.spec.js.map +0 -1
  678. package/build/_modules/messaging/_collections/msg.util.spec.d.ts +0 -2
  679. package/build/_modules/messaging/_collections/msg.util.spec.d.ts.map +0 -1
  680. package/build/_modules/messaging/_collections/msg.util.spec.js +0 -157
  681. package/build/_modules/messaging/_collections/msg.util.spec.js.map +0 -1
  682. package/build/_modules/messaging/_services/msg-events.service.spec.d.ts +0 -2
  683. package/build/_modules/messaging/_services/msg-events.service.spec.d.ts.map +0 -1
  684. package/build/_modules/messaging/_services/msg-events.service.spec.js +0 -122
  685. package/build/_modules/messaging/_services/msg-events.service.spec.js.map +0 -1
  686. package/build/_modules/messaging/_services/msg-main.control-service.spec.d.ts +0 -2
  687. package/build/_modules/messaging/_services/msg-main.control-service.spec.d.ts.map +0 -1
  688. package/build/_modules/messaging/_services/msg-main.control-service.spec.js +0 -121
  689. package/build/_modules/messaging/_services/msg-main.control-service.spec.js.map +0 -1
  690. package/build/_modules/messaging/_services/msg.controller.spec.d.ts +0 -2
  691. package/build/_modules/messaging/_services/msg.controller.spec.d.ts.map +0 -1
  692. package/build/_modules/messaging/_services/msg.controller.spec.js +0 -165
  693. package/build/_modules/messaging/_services/msg.controller.spec.js.map +0 -1
  694. package/build/_modules/mock/app-params.mock.spec.d.ts +0 -2
  695. package/build/_modules/mock/app-params.mock.spec.d.ts.map +0 -1
  696. package/build/_modules/mock/app-params.mock.spec.js +0 -19
  697. package/build/_modules/mock/app-params.mock.spec.js.map +0 -1
  698. package/build/_modules/mock/auth-service.mock.spec.d.ts +0 -2
  699. package/build/_modules/mock/auth-service.mock.spec.d.ts.map +0 -1
  700. package/build/_modules/mock/auth-service.mock.spec.js +0 -40
  701. package/build/_modules/mock/auth-service.mock.spec.js.map +0 -1
  702. package/build/_modules/mock/controller.mock.spec.d.ts +0 -2
  703. package/build/_modules/mock/controller.mock.spec.d.ts.map +0 -1
  704. package/build/_modules/mock/controller.mock.spec.js +0 -23
  705. package/build/_modules/mock/controller.mock.spec.js.map +0 -1
  706. package/build/_modules/mock/data-model.mock.spec.d.ts +0 -2
  707. package/build/_modules/mock/data-model.mock.spec.d.ts.map +0 -1
  708. package/build/_modules/mock/data-model.mock.spec.js +0 -101
  709. package/build/_modules/mock/data-model.mock.spec.js.map +0 -1
  710. package/build/_modules/mock/email-service-collection.mock.spec.d.ts +0 -2
  711. package/build/_modules/mock/email-service-collection.mock.spec.d.ts.map +0 -1
  712. package/build/_modules/mock/email-service-collection.mock.spec.js +0 -21
  713. package/build/_modules/mock/email-service-collection.mock.spec.js.map +0 -1
  714. package/build/_modules/mock/email-service.mock.spec.d.ts +0 -2
  715. package/build/_modules/mock/email-service.mock.spec.d.ts.map +0 -1
  716. package/build/_modules/mock/email-service.mock.spec.js +0 -14
  717. package/build/_modules/mock/email-service.mock.spec.js.map +0 -1
  718. package/build/_modules/mock/socket-client.mock.spec.d.ts +0 -2
  719. package/build/_modules/mock/socket-client.mock.spec.d.ts.map +0 -1
  720. package/build/_modules/mock/socket-client.mock.spec.js +0 -32
  721. package/build/_modules/mock/socket-client.mock.spec.js.map +0 -1
  722. package/build/_modules/mock/socket-server.mock.spec.d.ts +0 -2
  723. package/build/_modules/mock/socket-server.mock.spec.d.ts.map +0 -1
  724. package/build/_modules/mock/socket-server.mock.spec.js +0 -36
  725. package/build/_modules/mock/socket-server.mock.spec.js.map +0 -1
  726. package/build/_modules/oauth2/_routes/oauth2.controller.spec.d.ts +0 -2
  727. package/build/_modules/oauth2/_routes/oauth2.controller.spec.d.ts.map +0 -1
  728. package/build/_modules/oauth2/_routes/oauth2.controller.spec.js +0 -89
  729. package/build/_modules/oauth2/_routes/oauth2.controller.spec.js.map +0 -1
  730. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.d.ts +0 -2
  731. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.d.ts.map +0 -1
  732. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.js +0 -195
  733. package/build/_modules/oauth2/_services/oauth2.auth-service.spec.js.map +0 -1
  734. package/build/_modules/oauth2/_services/oauth2.control-service.spec.d.ts +0 -2
  735. package/build/_modules/oauth2/_services/oauth2.control-service.spec.d.ts.map +0 -1
  736. package/build/_modules/oauth2/_services/oauth2.control-service.spec.js +0 -432
  737. package/build/_modules/oauth2/_services/oauth2.control-service.spec.js.map +0 -1
  738. package/build/_modules/rate-limit/rate-limit.middleware.spec.d.ts +0 -2
  739. package/build/_modules/rate-limit/rate-limit.middleware.spec.d.ts.map +0 -1
  740. package/build/_modules/rate-limit/rate-limit.middleware.spec.js +0 -277
  741. package/build/_modules/rate-limit/rate-limit.middleware.spec.js.map +0 -1
  742. package/build/_modules/scheduler/scheduler.controller.spec.d.ts +0 -2
  743. package/build/_modules/scheduler/scheduler.controller.spec.d.ts.map +0 -1
  744. package/build/_modules/scheduler/scheduler.controller.spec.js +0 -35
  745. package/build/_modules/scheduler/scheduler.controller.spec.js.map +0 -1
  746. package/build/_modules/scheduler/scheduler.service.spec.d.ts +0 -2
  747. package/build/_modules/scheduler/scheduler.service.spec.d.ts.map +0 -1
  748. package/build/_modules/scheduler/scheduler.service.spec.js +0 -123
  749. package/build/_modules/scheduler/scheduler.service.spec.js.map +0 -1
  750. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.d.ts +0 -2
  751. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.d.ts.map +0 -1
  752. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.js +0 -229
  753. package/build/_modules/scoped-config/_services/dynts-scoped-config.control-service.spec.js.map +0 -1
  754. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.d.ts +0 -2
  755. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.d.ts.map +0 -1
  756. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.js +0 -88
  757. package/build/_modules/scoped-config/_services/dynts-scoped-config.data-service.spec.js.map +0 -1
  758. package/build/_modules/server/errors/errors.control-service.spec.d.ts +0 -2
  759. package/build/_modules/server/errors/errors.control-service.spec.d.ts.map +0 -1
  760. package/build/_modules/server/errors/errors.control-service.spec.js +0 -198
  761. package/build/_modules/server/errors/errors.control-service.spec.js.map +0 -1
  762. package/build/_modules/server/errors/errors.controller.spec.d.ts +0 -2
  763. package/build/_modules/server/errors/errors.controller.spec.d.ts.map +0 -1
  764. package/build/_modules/server/errors/errors.controller.spec.js +0 -287
  765. package/build/_modules/server/errors/errors.controller.spec.js.map +0 -1
  766. package/build/_modules/server/errors/errors.data-service.spec.d.ts +0 -2
  767. package/build/_modules/server/errors/errors.data-service.spec.d.ts.map +0 -1
  768. package/build/_modules/server/errors/errors.data-service.spec.js +0 -390
  769. package/build/_modules/server/errors/errors.data-service.spec.js.map +0 -1
  770. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.d.ts +0 -2
  771. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.d.ts.map +0 -1
  772. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.js +0 -59
  773. package/build/_modules/server/server-status/server-status-snapshot.control-service.spec.js.map +0 -1
  774. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.d.ts +0 -2
  775. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.d.ts.map +0 -1
  776. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.js +0 -58
  777. package/build/_modules/server/server-status/server-status-snapshot.data-service.spec.js.map +0 -1
  778. package/build/_modules/server/server-status/server-status.control-service.spec.d.ts +0 -2
  779. package/build/_modules/server/server-status/server-status.control-service.spec.d.ts.map +0 -1
  780. package/build/_modules/server/server-status/server-status.control-service.spec.js +0 -537
  781. package/build/_modules/server/server-status/server-status.control-service.spec.js.map +0 -1
  782. package/build/_modules/server/server-status/server-status.controller.spec.d.ts +0 -2
  783. package/build/_modules/server/server-status/server-status.controller.spec.d.ts.map +0 -1
  784. package/build/_modules/server/server-status/server-status.controller.spec.js +0 -223
  785. package/build/_modules/server/server-status/server-status.controller.spec.js.map +0 -1
  786. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.d.ts +0 -2
  787. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.d.ts.map +0 -1
  788. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.js +0 -25
  789. package/build/_modules/socket/_models/socket-client-service-params.control-model.spec.js.map +0 -1
  790. package/build/_modules/socket/_models/socket-presence.control-model.spec.d.ts +0 -2
  791. package/build/_modules/socket/_models/socket-presence.control-model.spec.d.ts.map +0 -1
  792. package/build/_modules/socket/_models/socket-presence.control-model.spec.js +0 -137
  793. package/build/_modules/socket/_models/socket-presence.control-model.spec.js.map +0 -1
  794. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.d.ts +0 -2
  795. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.d.ts.map +0 -1
  796. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.js +0 -58
  797. package/build/_modules/socket/_models/socket-server-service-params.control-model.spec.js.map +0 -1
  798. package/build/_modules/socket/_services/socket-client.service.spec.d.ts +0 -2
  799. package/build/_modules/socket/_services/socket-client.service.spec.d.ts.map +0 -1
  800. package/build/_modules/socket/_services/socket-client.service.spec.js +0 -12
  801. package/build/_modules/socket/_services/socket-client.service.spec.js.map +0 -1
  802. package/build/_modules/socket/_services/socket-server.service.spec.d.ts +0 -2
  803. package/build/_modules/socket/_services/socket-server.service.spec.d.ts.map +0 -1
  804. package/build/_modules/socket/_services/socket-server.service.spec.js +0 -149
  805. package/build/_modules/socket/_services/socket-server.service.spec.js.map +0 -1
  806. package/build/_modules/socket/app-extended.integration.spec.d.ts +0 -2
  807. package/build/_modules/socket/app-extended.integration.spec.d.ts.map +0 -1
  808. package/build/_modules/socket/app-extended.integration.spec.js +0 -76
  809. package/build/_modules/socket/app-extended.integration.spec.js.map +0 -1
  810. package/build/_modules/test/get-test-routing-module.util.spec.d.ts +0 -2
  811. package/build/_modules/test/get-test-routing-module.util.spec.d.ts.map +0 -1
  812. package/build/_modules/test/get-test-routing-module.util.spec.js +0 -23
  813. package/build/_modules/test/get-test-routing-module.util.spec.js.map +0 -1
  814. package/build/_modules/test/test.controller.spec.d.ts +0 -2
  815. package/build/_modules/test/test.controller.spec.d.ts.map +0 -1
  816. package/build/_modules/test/test.controller.spec.js +0 -54
  817. package/build/_modules/test/test.controller.spec.js.map +0 -1
  818. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.d.ts +0 -2
  819. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.d.ts.map +0 -1
  820. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.js +0 -91
  821. package/build/_modules/test-email-sink/_services/dynts-test-email-sink.service.spec.js.map +0 -1
  822. package/build/_modules/usage/usage.controller.spec.d.ts +0 -2
  823. package/build/_modules/usage/usage.controller.spec.d.ts.map +0 -1
  824. package/build/_modules/usage/usage.controller.spec.js +0 -82
  825. package/build/_modules/usage/usage.controller.spec.js.map +0 -1
  826. package/build/_modules/usage/usage.data-service.spec.d.ts +0 -2
  827. package/build/_modules/usage/usage.data-service.spec.d.ts.map +0 -1
  828. package/build/_modules/usage/usage.data-service.spec.js +0 -284
  829. package/build/_modules/usage/usage.data-service.spec.js.map +0 -1
  830. package/build/_services/base/api.service-base.spec.d.ts +0 -2
  831. package/build/_services/base/api.service-base.spec.d.ts.map +0 -1
  832. package/build/_services/base/api.service-base.spec.js +0 -91
  833. package/build/_services/base/api.service-base.spec.js.map +0 -1
  834. package/build/_services/base/archive-data.service.spec.d.ts +0 -2
  835. package/build/_services/base/archive-data.service.spec.d.ts.map +0 -1
  836. package/build/_services/base/archive-data.service.spec.js +0 -149
  837. package/build/_services/base/archive-data.service.spec.js.map +0 -1
  838. package/build/_services/base/data.service.spec.d.ts +0 -2
  839. package/build/_services/base/data.service.spec.d.ts.map +0 -1
  840. package/build/_services/base/data.service.spec.js +0 -614
  841. package/build/_services/base/data.service.spec.js.map +0 -1
  842. package/build/_services/base/db.service.encryption.spec.d.ts +0 -2
  843. package/build/_services/base/db.service.encryption.spec.d.ts.map +0 -1
  844. package/build/_services/base/db.service.encryption.spec.js +0 -66
  845. package/build/_services/base/db.service.encryption.spec.js.map +0 -1
  846. package/build/_services/base/db.service.spec.d.ts +0 -2
  847. package/build/_services/base/db.service.spec.d.ts.map +0 -1
  848. package/build/_services/base/db.service.spec.js +0 -127
  849. package/build/_services/base/db.service.spec.js.map +0 -1
  850. package/build/_services/base/singleton.service-base.spec.d.ts +0 -2
  851. package/build/_services/base/singleton.service-base.spec.d.ts.map +0 -1
  852. package/build/_services/base/singleton.service-base.spec.js +0 -24
  853. package/build/_services/base/singleton.service-base.spec.js.map +0 -1
  854. package/build/_services/base/singleton.service.spec.d.ts +0 -2
  855. package/build/_services/base/singleton.service.spec.d.ts.map +0 -1
  856. package/build/_services/base/singleton.service.spec.js +0 -88
  857. package/build/_services/base/singleton.service.spec.js.map +0 -1
  858. package/build/_services/core/api.service.spec.d.ts +0 -2
  859. package/build/_services/core/api.service.spec.d.ts.map +0 -1
  860. package/build/_services/core/api.service.spec.js +0 -150
  861. package/build/_services/core/api.service.spec.js.map +0 -1
  862. package/build/_services/core/auth.service.spec.d.ts +0 -2
  863. package/build/_services/core/auth.service.spec.d.ts.map +0 -1
  864. package/build/_services/core/auth.service.spec.js +0 -129
  865. package/build/_services/core/auth.service.spec.js.map +0 -1
  866. package/build/_services/core/collection-growth-monitor.service.spec.d.ts +0 -2
  867. package/build/_services/core/collection-growth-monitor.service.spec.d.ts.map +0 -1
  868. package/build/_services/core/collection-growth-monitor.service.spec.js +0 -51
  869. package/build/_services/core/collection-growth-monitor.service.spec.js.map +0 -1
  870. package/build/_services/core/diagnostics.service.spec.d.ts +0 -2
  871. package/build/_services/core/diagnostics.service.spec.d.ts.map +0 -1
  872. package/build/_services/core/diagnostics.service.spec.js +0 -40
  873. package/build/_services/core/diagnostics.service.spec.js.map +0 -1
  874. package/build/_services/core/email.service.spec.d.ts +0 -2
  875. package/build/_services/core/email.service.spec.d.ts.map +0 -1
  876. package/build/_services/core/email.service.spec.js +0 -77
  877. package/build/_services/core/email.service.spec.js.map +0 -1
  878. package/build/_services/core/event-loop-diag.service.spec.d.ts +0 -2
  879. package/build/_services/core/event-loop-diag.service.spec.d.ts.map +0 -1
  880. package/build/_services/core/event-loop-diag.service.spec.js +0 -18
  881. package/build/_services/core/event-loop-diag.service.spec.js.map +0 -1
  882. package/build/_services/core/global.service.spec.d.ts +0 -2
  883. package/build/_services/core/global.service.spec.d.ts.map +0 -1
  884. package/build/_services/core/global.service.spec.js +0 -235
  885. package/build/_services/core/global.service.spec.js.map +0 -1
  886. package/build/_services/core/memory-guard.service.spec.d.ts +0 -2
  887. package/build/_services/core/memory-guard.service.spec.d.ts.map +0 -1
  888. package/build/_services/core/memory-guard.service.spec.js +0 -219
  889. package/build/_services/core/memory-guard.service.spec.js.map +0 -1
  890. package/build/_services/core/migration-runner.service.spec.d.ts +0 -2
  891. package/build/_services/core/migration-runner.service.spec.d.ts.map +0 -1
  892. package/build/_services/core/migration-runner.service.spec.js +0 -77
  893. package/build/_services/core/migration-runner.service.spec.js.map +0 -1
  894. package/build/_services/core/request-hunter.service.spec.d.ts +0 -2
  895. package/build/_services/core/request-hunter.service.spec.d.ts.map +0 -1
  896. package/build/_services/core/request-hunter.service.spec.js +0 -101
  897. package/build/_services/core/request-hunter.service.spec.js.map +0 -1
  898. package/build/_services/core/service-collection.service.spec.d.ts +0 -2
  899. package/build/_services/core/service-collection.service.spec.d.ts.map +0 -1
  900. package/build/_services/core/service-collection.service.spec.js +0 -39
  901. package/build/_services/core/service-collection.service.spec.js.map +0 -1
  902. package/build/_services/route/controller.service.spec.d.ts +0 -2
  903. package/build/_services/route/controller.service.spec.d.ts.map +0 -1
  904. package/build/_services/route/controller.service.spec.js +0 -48
  905. package/build/_services/route/controller.service.spec.js.map +0 -1
  906. package/build/_services/route/routing-module.service.spec.d.ts +0 -2
  907. package/build/_services/route/routing-module.service.spec.d.ts.map +0 -1
  908. package/build/_services/route/routing-module.service.spec.js +0 -81
  909. package/build/_services/route/routing-module.service.spec.js.map +0 -1
  910. package/build/_services/server/app.server-retention.spec.d.ts +0 -2
  911. package/build/_services/server/app.server-retention.spec.d.ts.map +0 -1
  912. package/build/_services/server/app.server-retention.spec.js +0 -93
  913. package/build/_services/server/app.server-retention.spec.js.map +0 -1
  914. package/build/_services/shared.static-service.spec.d.ts +0 -2
  915. package/build/_services/shared.static-service.spec.d.ts.map +0 -1
  916. package/build/_services/shared.static-service.spec.js +0 -82
  917. package/build/_services/shared.static-service.spec.js.map +0 -1
  918. package/coverage/_collections/archive.util.ts.html +0 -139
  919. package/coverage/_collections/get-environment-settings.util.ts.html +0 -229
  920. package/coverage/_collections/index.html +0 -146
  921. package/coverage/_collections/star.controller.ts.html +0 -472
  922. package/coverage/_models/control-models/api-call-params.control-model.ts.html +0 -511
  923. package/coverage/_models/control-models/app-ext-system-controls.control-model.ts.html +0 -112
  924. package/coverage/_models/control-models/app-params.control-model.ts.html +0 -475
  925. package/coverage/_models/control-models/app-system-controls.control-model.ts.html +0 -112
  926. package/coverage/_models/control-models/endpoint-params.control-model.ts.html +0 -1618
  927. package/coverage/_models/control-models/http-settings.control-model.ts.html +0 -172
  928. package/coverage/_models/control-models/index.html +0 -206
  929. package/coverage/_models/control-models/system-control.control-model.ts.html +0 -121
  930. package/coverage/_modules/ai/_models/ai-input-interfaces.ts.html +0 -436
  931. package/coverage/_modules/ai/_models/index.html +0 -116
  932. package/coverage/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts.html +0 -1993
  933. package/coverage/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts.html +0 -340
  934. package/coverage/_modules/ai/_modules/document-ai/_collections/index.html +0 -131
  935. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts.html +0 -523
  936. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts.html +0 -571
  937. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts.html +0 -382
  938. package/coverage/_modules/ai/_modules/document-ai/_models/data-models/index.html +0 -146
  939. package/coverage/_modules/ai/_modules/open-ai/_collections/index.html +0 -131
  940. package/coverage/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts.html +0 -331
  941. package/coverage/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts.html +0 -310
  942. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/index.html +0 -161
  943. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts.html +0 -958
  944. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.ts.html +0 -1801
  945. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.ts.html +0 -1390
  946. package/coverage/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts.html +0 -1915
  947. package/coverage/_modules/ai/_modules/open-ai/_services/index.html +0 -146
  948. package/coverage/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.ts.html +0 -334
  949. package/coverage/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts.html +0 -1822
  950. package/coverage/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts.html +0 -2584
  951. package/coverage/_modules/ai/_services/ai-embedding.service-base.ts.html +0 -208
  952. package/coverage/_modules/ai/_services/ai-llm-chat.service-base.ts.html +0 -289
  953. package/coverage/_modules/ai/_services/ai-llm.service-base.ts.html +0 -1060
  954. package/coverage/_modules/ai/_services/ai-provider.service-base.ts.html +0 -172
  955. package/coverage/_modules/ai/_services/index.html +0 -161
  956. package/coverage/_modules/assistant/_collections/ass.util.ts.html +0 -235
  957. package/coverage/_modules/assistant/_collections/index.html +0 -116
  958. package/coverage/_modules/assistant/_services/ass-io.control-service.ts.html +0 -307
  959. package/coverage/_modules/assistant/_services/ass-main.control-service.ts.html +0 -406
  960. package/coverage/_modules/assistant/_services/index.html +0 -131
  961. package/coverage/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts.html +0 -112
  962. package/coverage/_modules/bot/_modules/discord-bot/_models/index.html +0 -116
  963. package/coverage/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts.html +0 -1978
  964. package/coverage/_modules/bot/_modules/discord-bot/_services/index.html +0 -116
  965. package/coverage/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts.html +0 -250
  966. package/coverage/_modules/bot/_modules/dynamo-bot/_collections/index.html +0 -116
  967. package/coverage/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts.html +0 -130
  968. package/coverage/_modules/bot/_modules/dynamo-bot/_models/index.html +0 -116
  969. package/coverage/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts.html +0 -1414
  970. package/coverage/_modules/bot/_modules/dynamo-bot/_services/index.html +0 -116
  971. package/coverage/_modules/bot/_modules/slack-bot/_models/index.html +0 -116
  972. package/coverage/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts.html +0 -112
  973. package/coverage/_modules/bot/_modules/slack-bot/_services/index.html +0 -116
  974. package/coverage/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts.html +0 -664
  975. package/coverage/_modules/bot/_modules/teams-bot/_models/index.html +0 -116
  976. package/coverage/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts.html +0 -112
  977. package/coverage/_modules/bot/_modules/teams-bot/_services/index.html +0 -116
  978. package/coverage/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts.html +0 -664
  979. package/coverage/_modules/bot/_services/bot-commands.control-service.ts.html +0 -559
  980. package/coverage/_modules/bot/_services/bot-io.control-service.ts.html +0 -1072
  981. package/coverage/_modules/bot/_services/bot-main.control-service.ts.html +0 -1552
  982. package/coverage/_modules/bot/_services/bot-messaging-provider.service-base.ts.html +0 -556
  983. package/coverage/_modules/bot/_services/bot-routines.control-service.ts.html +0 -319
  984. package/coverage/_modules/bot/_services/index.html +0 -176
  985. package/coverage/_modules/custom-data/custom-data.controller.ts.html +0 -292
  986. package/coverage/_modules/custom-data/custom-data.data-service.ts.html +0 -148
  987. package/coverage/_modules/custom-data/get-custom-data-routing-module.util.ts.html +0 -157
  988. package/coverage/_modules/custom-data/index.html +0 -146
  989. package/coverage/_modules/defaults/_models/default-user.data-model.ts.html +0 -301
  990. package/coverage/_modules/defaults/_models/index.html +0 -116
  991. package/coverage/_modules/defaults/_services/default-auth.service.ts.html +0 -616
  992. package/coverage/_modules/defaults/_services/default-socket-events.service.ts.html +0 -268
  993. package/coverage/_modules/defaults/_services/default-user.data-service.ts.html +0 -379
  994. package/coverage/_modules/defaults/_services/index.html +0 -146
  995. package/coverage/_modules/discord-assistant/_collections/dias.util.ts.html +0 -481
  996. package/coverage/_modules/discord-assistant/_collections/index.html +0 -116
  997. package/coverage/_modules/discord-assistant/_models/dias-knowledge.data-model.ts.html +0 -241
  998. package/coverage/_modules/discord-assistant/_models/index.html +0 -116
  999. package/coverage/_modules/discord-assistant/_services/dias-chunk.data-service.ts.html +0 -616
  1000. package/coverage/_modules/discord-assistant/_services/dias-io.control-service.ts.html +0 -292
  1001. package/coverage/_modules/discord-assistant/_services/dias-main.control-service.ts.html +0 -166
  1002. package/coverage/_modules/discord-assistant/_services/dias.service-base.ts.html +0 -313
  1003. package/coverage/_modules/discord-assistant/_services/index.html +0 -161
  1004. package/coverage/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts.html +0 -118
  1005. package/coverage/_modules/discord-assistant-voiced/_services/index.html +0 -116
  1006. package/coverage/_modules/discord-bot/_collections/dibo-global-settings.conts.ts.html +0 -250
  1007. package/coverage/_modules/discord-bot/_collections/dibo-operations.util.ts.html +0 -1246
  1008. package/coverage/_modules/discord-bot/_collections/index.html +0 -131
  1009. package/coverage/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts.html +0 -106
  1010. package/coverage/_modules/discord-bot/_models/index.html +0 -116
  1011. package/coverage/_modules/discord-bot/_services/dibo-commands.control-service.ts.html +0 -544
  1012. package/coverage/_modules/discord-bot/_services/dibo-io.control-service.ts.html +0 -1003
  1013. package/coverage/_modules/discord-bot/_services/dibo-main.control-service.ts.html +0 -1546
  1014. package/coverage/_modules/discord-bot/_services/dibo-routines.control-service.ts.html +0 -376
  1015. package/coverage/_modules/discord-bot/_services/index.html +0 -161
  1016. package/coverage/_modules/messaging/_collections/get-messaging-routing-module.util.ts.html +0 -163
  1017. package/coverage/_modules/messaging/_collections/index.html +0 -131
  1018. package/coverage/_modules/messaging/_collections/msg.util.ts.html +0 -334
  1019. package/coverage/_modules/messaging/_services/index.html +0 -191
  1020. package/coverage/_modules/messaging/_services/msg-conversation.data-service.ts.html +0 -523
  1021. package/coverage/_modules/messaging/_services/msg-events.service.ts.html +0 -886
  1022. package/coverage/_modules/messaging/_services/msg-integration.control-service.ts.html +0 -622
  1023. package/coverage/_modules/messaging/_services/msg-main.control-service.ts.html +0 -1738
  1024. package/coverage/_modules/messaging/_services/msg-message.data-service.ts.html +0 -472
  1025. package/coverage/_modules/messaging/_services/msg.controller.ts.html +0 -1195
  1026. package/coverage/_modules/mock/app-extended-server.mock.ts.html +0 -688
  1027. package/coverage/_modules/mock/app-params.mock.ts.html +0 -112
  1028. package/coverage/_modules/mock/app-server.mock.ts.html +0 -649
  1029. package/coverage/_modules/mock/auth-service.mock.ts.html +0 -169
  1030. package/coverage/_modules/mock/controller.mock.ts.html +0 -133
  1031. package/coverage/_modules/mock/data-model.mock.ts.html +0 -331
  1032. package/coverage/_modules/mock/email-service-collection.mock.ts.html +0 -130
  1033. package/coverage/_modules/mock/email-service.mock.ts.html +0 -145
  1034. package/coverage/_modules/mock/endpoint.mock.ts.html +0 -358
  1035. package/coverage/_modules/mock/index.html +0 -266
  1036. package/coverage/_modules/mock/socket-client.mock.ts.html +0 -220
  1037. package/coverage/_modules/mock/socket-server.mock.ts.html +0 -247
  1038. package/coverage/_modules/oauth2/_routes/index.html +0 -116
  1039. package/coverage/_modules/oauth2/_routes/oauth2.controller.ts.html +0 -379
  1040. package/coverage/_modules/oauth2/_services/index.html +0 -131
  1041. package/coverage/_modules/oauth2/_services/oauth2.auth-service.ts.html +0 -781
  1042. package/coverage/_modules/oauth2/_services/oauth2.control-service.ts.html +0 -2044
  1043. package/coverage/_modules/server/errors/errors.control-service.ts.html +0 -292
  1044. package/coverage/_modules/server/errors/errors.controller.ts.html +0 -895
  1045. package/coverage/_modules/server/errors/errors.data-service.ts.html +0 -1666
  1046. package/coverage/_modules/server/errors/index.html +0 -146
  1047. package/coverage/_modules/server/server-status/index.html +0 -161
  1048. package/coverage/_modules/server/server-status/server-status-snapshot.control-service.ts.html +0 -136
  1049. package/coverage/_modules/server/server-status/server-status-snapshot.data-service.ts.html +0 -196
  1050. package/coverage/_modules/server/server-status/server-status.control-service.ts.html +0 -1093
  1051. package/coverage/_modules/server/server-status/server-status.controller.ts.html +0 -478
  1052. package/coverage/_modules/socket/_models/index.html +0 -146
  1053. package/coverage/_modules/socket/_models/socket-client-service-params.control-model.ts.html +0 -151
  1054. package/coverage/_modules/socket/_models/socket-presence.control-model.ts.html +0 -715
  1055. package/coverage/_modules/socket/_models/socket-server-service-params.control-model.ts.html +0 -145
  1056. package/coverage/_modules/socket/_services/index.html +0 -131
  1057. package/coverage/_modules/socket/_services/socket-client.service.ts.html +0 -862
  1058. package/coverage/_modules/socket/_services/socket-server.service.ts.html +0 -3196
  1059. package/coverage/_modules/socket/app-extended.server.ts.html +0 -1954
  1060. package/coverage/_modules/socket/index.html +0 -116
  1061. package/coverage/_modules/test/get-test-routing-module.util.ts.html +0 -154
  1062. package/coverage/_modules/test/index.html +0 -131
  1063. package/coverage/_modules/test/test.controller.ts.html +0 -430
  1064. package/coverage/_modules/usage/get-usage-routing-module.util.ts.html +0 -151
  1065. package/coverage/_modules/usage/index.html +0 -146
  1066. package/coverage/_modules/usage/usage.controller.ts.html +0 -463
  1067. package/coverage/_modules/usage/usage.data-service.ts.html +0 -640
  1068. package/coverage/_services/base/api.service-base.ts.html +0 -307
  1069. package/coverage/_services/base/archive-data.service.ts.html +0 -727
  1070. package/coverage/_services/base/data.service.ts.html +0 -7033
  1071. package/coverage/_services/base/db.service.ts.html +0 -4786
  1072. package/coverage/_services/base/index.html +0 -191
  1073. package/coverage/_services/base/singleton.service-base.ts.html +0 -157
  1074. package/coverage/_services/base/singleton.service.ts.html +0 -190
  1075. package/coverage/_services/core/api.service.ts.html +0 -1900
  1076. package/coverage/_services/core/auth.service.ts.html +0 -607
  1077. package/coverage/_services/core/email.service.ts.html +0 -2302
  1078. package/coverage/_services/core/global.service.ts.html +0 -1363
  1079. package/coverage/_services/core/index.html +0 -176
  1080. package/coverage/_services/core/service-collection.service.ts.html +0 -103
  1081. package/coverage/_services/index.html +0 -116
  1082. package/coverage/_services/route/controller.service.ts.html +0 -475
  1083. package/coverage/_services/route/index.html +0 -131
  1084. package/coverage/_services/route/routing-module.service.ts.html +0 -1075
  1085. package/coverage/_services/server/app.server.ts.html +0 -4408
  1086. package/coverage/_services/server/index.html +0 -116
  1087. package/coverage/_services/shared.static-service.ts.html +0 -319
  1088. package/coverage/base.css +0 -224
  1089. package/coverage/block-navigation.js +0 -87
  1090. package/coverage/favicon.png +0 -0
  1091. package/coverage/index.html +0 -821
  1092. package/coverage/lcov-report/_collections/archive.util.ts.html +0 -139
  1093. package/coverage/lcov-report/_collections/get-environment-settings.util.ts.html +0 -229
  1094. package/coverage/lcov-report/_collections/index.html +0 -146
  1095. package/coverage/lcov-report/_collections/star.controller.ts.html +0 -472
  1096. package/coverage/lcov-report/_models/control-models/api-call-params.control-model.ts.html +0 -511
  1097. package/coverage/lcov-report/_models/control-models/app-ext-system-controls.control-model.ts.html +0 -112
  1098. package/coverage/lcov-report/_models/control-models/app-params.control-model.ts.html +0 -475
  1099. package/coverage/lcov-report/_models/control-models/app-system-controls.control-model.ts.html +0 -112
  1100. package/coverage/lcov-report/_models/control-models/endpoint-params.control-model.ts.html +0 -1618
  1101. package/coverage/lcov-report/_models/control-models/http-settings.control-model.ts.html +0 -172
  1102. package/coverage/lcov-report/_models/control-models/index.html +0 -206
  1103. package/coverage/lcov-report/_models/control-models/system-control.control-model.ts.html +0 -121
  1104. package/coverage/lcov-report/_modules/ai/_models/ai-input-interfaces.ts.html +0 -436
  1105. package/coverage/lcov-report/_modules/ai/_models/index.html +0 -116
  1106. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_collections/dai-chunking.util.ts.html +0 -1993
  1107. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_collections/dai-document.util.ts.html +0 -340
  1108. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_collections/index.html +0 -131
  1109. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-chunk.data-model.ts.html +0 -523
  1110. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/dai-doc-page.data-model.ts.html +0 -571
  1111. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/dai-document.data-model.ts.html +0 -382
  1112. package/coverage/lcov-report/_modules/ai/_modules/document-ai/_models/data-models/index.html +0 -146
  1113. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_collections/index.html +0 -131
  1114. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests-hu.conts.ts.html +0 -331
  1115. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_collections/oai-llm-predefined-requests.conts.ts.html +0 -310
  1116. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/index.html +0 -161
  1117. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-chunk-data.service.ts.html +0 -958
  1118. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-doc-page.data-service.ts.html +0 -1801
  1119. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-document.data-service.ts.html +0 -1390
  1120. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/data-services/oai-vector-data.service.ts.html +0 -1915
  1121. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/index.html +0 -146
  1122. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/oai-embedding.control-service.ts.html +0 -334
  1123. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/oai-llm-chat.service-base.ts.html +0 -1822
  1124. package/coverage/lcov-report/_modules/ai/_modules/open-ai/_services/oai-llm.service-base.ts.html +0 -2584
  1125. package/coverage/lcov-report/_modules/ai/_services/ai-embedding.service-base.ts.html +0 -208
  1126. package/coverage/lcov-report/_modules/ai/_services/ai-llm-chat.service-base.ts.html +0 -289
  1127. package/coverage/lcov-report/_modules/ai/_services/ai-llm.service-base.ts.html +0 -1060
  1128. package/coverage/lcov-report/_modules/ai/_services/ai-provider.service-base.ts.html +0 -172
  1129. package/coverage/lcov-report/_modules/ai/_services/index.html +0 -161
  1130. package/coverage/lcov-report/_modules/assistant/_collections/ass.util.ts.html +0 -235
  1131. package/coverage/lcov-report/_modules/assistant/_collections/index.html +0 -116
  1132. package/coverage/lcov-report/_modules/assistant/_services/ass-io.control-service.ts.html +0 -307
  1133. package/coverage/lcov-report/_modules/assistant/_services/ass-main.control-service.ts.html +0 -406
  1134. package/coverage/lcov-report/_modules/assistant/_services/index.html +0 -131
  1135. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_models/dib-platform.types.ts.html +0 -112
  1136. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_models/index.html +0 -116
  1137. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_services/dib-messaging-provider.control-service.ts.html +0 -1978
  1138. package/coverage/lcov-report/_modules/bot/_modules/discord-bot/_services/index.html +0 -116
  1139. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_collections/dyb-operations.util.ts.html +0 -250
  1140. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_collections/index.html +0 -116
  1141. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_models/dyb-platform.types.ts.html +0 -130
  1142. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_models/index.html +0 -116
  1143. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_services/dyb-messaging-provider.control-service.ts.html +0 -1414
  1144. package/coverage/lcov-report/_modules/bot/_modules/dynamo-bot/_services/index.html +0 -116
  1145. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_models/index.html +0 -116
  1146. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_models/slb-platform.types.ts.html +0 -112
  1147. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_services/index.html +0 -116
  1148. package/coverage/lcov-report/_modules/bot/_modules/slack-bot/_services/slb-messaging-provider.control-service.ts.html +0 -664
  1149. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_models/index.html +0 -116
  1150. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_models/teb-platform.types.ts.html +0 -112
  1151. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_services/index.html +0 -116
  1152. package/coverage/lcov-report/_modules/bot/_modules/teams-bot/_services/teb-messaging-provider.control-service.ts.html +0 -664
  1153. package/coverage/lcov-report/_modules/bot/_services/bot-commands.control-service.ts.html +0 -559
  1154. package/coverage/lcov-report/_modules/bot/_services/bot-io.control-service.ts.html +0 -1072
  1155. package/coverage/lcov-report/_modules/bot/_services/bot-main.control-service.ts.html +0 -1552
  1156. package/coverage/lcov-report/_modules/bot/_services/bot-messaging-provider.service-base.ts.html +0 -556
  1157. package/coverage/lcov-report/_modules/bot/_services/bot-routines.control-service.ts.html +0 -319
  1158. package/coverage/lcov-report/_modules/bot/_services/index.html +0 -176
  1159. package/coverage/lcov-report/_modules/custom-data/custom-data.controller.ts.html +0 -292
  1160. package/coverage/lcov-report/_modules/custom-data/custom-data.data-service.ts.html +0 -148
  1161. package/coverage/lcov-report/_modules/custom-data/get-custom-data-routing-module.util.ts.html +0 -157
  1162. package/coverage/lcov-report/_modules/custom-data/index.html +0 -146
  1163. package/coverage/lcov-report/_modules/defaults/_models/default-user.data-model.ts.html +0 -301
  1164. package/coverage/lcov-report/_modules/defaults/_models/index.html +0 -116
  1165. package/coverage/lcov-report/_modules/defaults/_services/default-auth.service.ts.html +0 -616
  1166. package/coverage/lcov-report/_modules/defaults/_services/default-socket-events.service.ts.html +0 -268
  1167. package/coverage/lcov-report/_modules/defaults/_services/default-user.data-service.ts.html +0 -379
  1168. package/coverage/lcov-report/_modules/defaults/_services/index.html +0 -146
  1169. package/coverage/lcov-report/_modules/discord-assistant/_collections/dias.util.ts.html +0 -481
  1170. package/coverage/lcov-report/_modules/discord-assistant/_collections/index.html +0 -116
  1171. package/coverage/lcov-report/_modules/discord-assistant/_models/dias-knowledge.data-model.ts.html +0 -241
  1172. package/coverage/lcov-report/_modules/discord-assistant/_models/index.html +0 -116
  1173. package/coverage/lcov-report/_modules/discord-assistant/_services/dias-chunk.data-service.ts.html +0 -616
  1174. package/coverage/lcov-report/_modules/discord-assistant/_services/dias-io.control-service.ts.html +0 -292
  1175. package/coverage/lcov-report/_modules/discord-assistant/_services/dias-main.control-service.ts.html +0 -166
  1176. package/coverage/lcov-report/_modules/discord-assistant/_services/dias.service-base.ts.html +0 -313
  1177. package/coverage/lcov-report/_modules/discord-assistant/_services/index.html +0 -161
  1178. package/coverage/lcov-report/_modules/discord-assistant-voiced/_services/dias-discord-bot.control-service.ts.html +0 -118
  1179. package/coverage/lcov-report/_modules/discord-assistant-voiced/_services/index.html +0 -116
  1180. package/coverage/lcov-report/_modules/discord-bot/_collections/dibo-global-settings.conts.ts.html +0 -250
  1181. package/coverage/lcov-report/_modules/discord-bot/_collections/dibo-operations.util.ts.html +0 -1246
  1182. package/coverage/lcov-report/_modules/discord-bot/_collections/index.html +0 -131
  1183. package/coverage/lcov-report/_modules/discord-bot/_models/dibo-last-mention-date.inteface.ts.html +0 -106
  1184. package/coverage/lcov-report/_modules/discord-bot/_models/index.html +0 -116
  1185. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-commands.control-service.ts.html +0 -544
  1186. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-io.control-service.ts.html +0 -1003
  1187. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-main.control-service.ts.html +0 -1546
  1188. package/coverage/lcov-report/_modules/discord-bot/_services/dibo-routines.control-service.ts.html +0 -376
  1189. package/coverage/lcov-report/_modules/discord-bot/_services/index.html +0 -161
  1190. package/coverage/lcov-report/_modules/messaging/_collections/get-messaging-routing-module.util.ts.html +0 -163
  1191. package/coverage/lcov-report/_modules/messaging/_collections/index.html +0 -131
  1192. package/coverage/lcov-report/_modules/messaging/_collections/msg.util.ts.html +0 -334
  1193. package/coverage/lcov-report/_modules/messaging/_services/index.html +0 -191
  1194. package/coverage/lcov-report/_modules/messaging/_services/msg-conversation.data-service.ts.html +0 -523
  1195. package/coverage/lcov-report/_modules/messaging/_services/msg-events.service.ts.html +0 -886
  1196. package/coverage/lcov-report/_modules/messaging/_services/msg-integration.control-service.ts.html +0 -622
  1197. package/coverage/lcov-report/_modules/messaging/_services/msg-main.control-service.ts.html +0 -1738
  1198. package/coverage/lcov-report/_modules/messaging/_services/msg-message.data-service.ts.html +0 -472
  1199. package/coverage/lcov-report/_modules/messaging/_services/msg.controller.ts.html +0 -1195
  1200. package/coverage/lcov-report/_modules/mock/app-extended-server.mock.ts.html +0 -688
  1201. package/coverage/lcov-report/_modules/mock/app-params.mock.ts.html +0 -112
  1202. package/coverage/lcov-report/_modules/mock/app-server.mock.ts.html +0 -649
  1203. package/coverage/lcov-report/_modules/mock/auth-service.mock.ts.html +0 -169
  1204. package/coverage/lcov-report/_modules/mock/controller.mock.ts.html +0 -133
  1205. package/coverage/lcov-report/_modules/mock/data-model.mock.ts.html +0 -331
  1206. package/coverage/lcov-report/_modules/mock/email-service-collection.mock.ts.html +0 -130
  1207. package/coverage/lcov-report/_modules/mock/email-service.mock.ts.html +0 -145
  1208. package/coverage/lcov-report/_modules/mock/endpoint.mock.ts.html +0 -358
  1209. package/coverage/lcov-report/_modules/mock/index.html +0 -266
  1210. package/coverage/lcov-report/_modules/mock/socket-client.mock.ts.html +0 -220
  1211. package/coverage/lcov-report/_modules/mock/socket-server.mock.ts.html +0 -247
  1212. package/coverage/lcov-report/_modules/oauth2/_routes/index.html +0 -116
  1213. package/coverage/lcov-report/_modules/oauth2/_routes/oauth2.controller.ts.html +0 -379
  1214. package/coverage/lcov-report/_modules/oauth2/_services/index.html +0 -131
  1215. package/coverage/lcov-report/_modules/oauth2/_services/oauth2.auth-service.ts.html +0 -781
  1216. package/coverage/lcov-report/_modules/oauth2/_services/oauth2.control-service.ts.html +0 -2044
  1217. package/coverage/lcov-report/_modules/server/errors/errors.control-service.ts.html +0 -292
  1218. package/coverage/lcov-report/_modules/server/errors/errors.controller.ts.html +0 -895
  1219. package/coverage/lcov-report/_modules/server/errors/errors.data-service.ts.html +0 -1666
  1220. package/coverage/lcov-report/_modules/server/errors/index.html +0 -146
  1221. package/coverage/lcov-report/_modules/server/server-status/index.html +0 -161
  1222. package/coverage/lcov-report/_modules/server/server-status/server-status-snapshot.control-service.ts.html +0 -136
  1223. package/coverage/lcov-report/_modules/server/server-status/server-status-snapshot.data-service.ts.html +0 -196
  1224. package/coverage/lcov-report/_modules/server/server-status/server-status.control-service.ts.html +0 -1093
  1225. package/coverage/lcov-report/_modules/server/server-status/server-status.controller.ts.html +0 -478
  1226. package/coverage/lcov-report/_modules/socket/_models/index.html +0 -146
  1227. package/coverage/lcov-report/_modules/socket/_models/socket-client-service-params.control-model.ts.html +0 -151
  1228. package/coverage/lcov-report/_modules/socket/_models/socket-presence.control-model.ts.html +0 -715
  1229. package/coverage/lcov-report/_modules/socket/_models/socket-server-service-params.control-model.ts.html +0 -145
  1230. package/coverage/lcov-report/_modules/socket/_services/index.html +0 -131
  1231. package/coverage/lcov-report/_modules/socket/_services/socket-client.service.ts.html +0 -862
  1232. package/coverage/lcov-report/_modules/socket/_services/socket-server.service.ts.html +0 -3196
  1233. package/coverage/lcov-report/_modules/socket/app-extended.server.ts.html +0 -1954
  1234. package/coverage/lcov-report/_modules/socket/index.html +0 -116
  1235. package/coverage/lcov-report/_modules/test/get-test-routing-module.util.ts.html +0 -154
  1236. package/coverage/lcov-report/_modules/test/index.html +0 -131
  1237. package/coverage/lcov-report/_modules/test/test.controller.ts.html +0 -430
  1238. package/coverage/lcov-report/_modules/usage/get-usage-routing-module.util.ts.html +0 -151
  1239. package/coverage/lcov-report/_modules/usage/index.html +0 -146
  1240. package/coverage/lcov-report/_modules/usage/usage.controller.ts.html +0 -463
  1241. package/coverage/lcov-report/_modules/usage/usage.data-service.ts.html +0 -640
  1242. package/coverage/lcov-report/_services/base/api.service-base.ts.html +0 -307
  1243. package/coverage/lcov-report/_services/base/archive-data.service.ts.html +0 -727
  1244. package/coverage/lcov-report/_services/base/data.service.ts.html +0 -7033
  1245. package/coverage/lcov-report/_services/base/db.service.ts.html +0 -4786
  1246. package/coverage/lcov-report/_services/base/index.html +0 -191
  1247. package/coverage/lcov-report/_services/base/singleton.service-base.ts.html +0 -157
  1248. package/coverage/lcov-report/_services/base/singleton.service.ts.html +0 -190
  1249. package/coverage/lcov-report/_services/core/api.service.ts.html +0 -1900
  1250. package/coverage/lcov-report/_services/core/auth.service.ts.html +0 -607
  1251. package/coverage/lcov-report/_services/core/email.service.ts.html +0 -2302
  1252. package/coverage/lcov-report/_services/core/global.service.ts.html +0 -1363
  1253. package/coverage/lcov-report/_services/core/index.html +0 -176
  1254. package/coverage/lcov-report/_services/core/service-collection.service.ts.html +0 -103
  1255. package/coverage/lcov-report/_services/index.html +0 -116
  1256. package/coverage/lcov-report/_services/route/controller.service.ts.html +0 -475
  1257. package/coverage/lcov-report/_services/route/index.html +0 -131
  1258. package/coverage/lcov-report/_services/route/routing-module.service.ts.html +0 -1075
  1259. package/coverage/lcov-report/_services/server/app.server.ts.html +0 -4408
  1260. package/coverage/lcov-report/_services/server/index.html +0 -116
  1261. package/coverage/lcov-report/_services/shared.static-service.ts.html +0 -319
  1262. package/coverage/lcov-report/base.css +0 -224
  1263. package/coverage/lcov-report/block-navigation.js +0 -87
  1264. package/coverage/lcov-report/favicon.png +0 -0
  1265. package/coverage/lcov-report/index.html +0 -821
  1266. package/coverage/lcov-report/prettify.css +0 -1
  1267. package/coverage/lcov-report/prettify.js +0 -2
  1268. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  1269. package/coverage/lcov-report/sorter.js +0 -210
  1270. package/coverage/lcov.info +0 -29957
  1271. package/coverage/prettify.css +0 -1
  1272. package/coverage/prettify.js +0 -2
  1273. package/coverage/sort-arrow-sprite.png +0 -0
  1274. package/coverage/sorter.js +0 -210
  1275. package/coverage/tmp/coverage-111712-1762988673351-0.json +0 -1
  1276. package/coverage/tmp/coverage-112308-1762988673527-0.json +0 -1
  1277. package/coverage/tmp/coverage-112324-1762988615026-0.json +0 -1
  1278. package/coverage/tmp/coverage-112436-1762988615438-0.json +0 -1
  1279. package/coverage/tmp/coverage-112512-1762988673477-0.json +0 -1
  1280. package/logs/cicd-job.json +0 -3
  1281. package/logs/cicd-output.log +0 -31
  1282. package/logs/cicd-report.json +0 -148
  1283. package/logs/cicd-status.json +0 -70
@@ -1,3196 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for _modules/socket/_services/socket-server.service.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">_modules/socket/_services</a> socket-server.service.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">30.56% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>317/1037</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">55.17% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>16/29</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">36% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>9/25</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">30.56% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>317/1037</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 type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line low'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a>
335
- <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a>
337
- <a name='L272'></a><a href='#L272'>272</a>
338
- <a name='L273'></a><a href='#L273'>273</a>
339
- <a name='L274'></a><a href='#L274'>274</a>
340
- <a name='L275'></a><a href='#L275'>275</a>
341
- <a name='L276'></a><a href='#L276'>276</a>
342
- <a name='L277'></a><a href='#L277'>277</a>
343
- <a name='L278'></a><a href='#L278'>278</a>
344
- <a name='L279'></a><a href='#L279'>279</a>
345
- <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
347
- <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a>
359
- <a name='L294'></a><a href='#L294'>294</a>
360
- <a name='L295'></a><a href='#L295'>295</a>
361
- <a name='L296'></a><a href='#L296'>296</a>
362
- <a name='L297'></a><a href='#L297'>297</a>
363
- <a name='L298'></a><a href='#L298'>298</a>
364
- <a name='L299'></a><a href='#L299'>299</a>
365
- <a name='L300'></a><a href='#L300'>300</a>
366
- <a name='L301'></a><a href='#L301'>301</a>
367
- <a name='L302'></a><a href='#L302'>302</a>
368
- <a name='L303'></a><a href='#L303'>303</a>
369
- <a name='L304'></a><a href='#L304'>304</a>
370
- <a name='L305'></a><a href='#L305'>305</a>
371
- <a name='L306'></a><a href='#L306'>306</a>
372
- <a name='L307'></a><a href='#L307'>307</a>
373
- <a name='L308'></a><a href='#L308'>308</a>
374
- <a name='L309'></a><a href='#L309'>309</a>
375
- <a name='L310'></a><a href='#L310'>310</a>
376
- <a name='L311'></a><a href='#L311'>311</a>
377
- <a name='L312'></a><a href='#L312'>312</a>
378
- <a name='L313'></a><a href='#L313'>313</a>
379
- <a name='L314'></a><a href='#L314'>314</a>
380
- <a name='L315'></a><a href='#L315'>315</a>
381
- <a name='L316'></a><a href='#L316'>316</a>
382
- <a name='L317'></a><a href='#L317'>317</a>
383
- <a name='L318'></a><a href='#L318'>318</a>
384
- <a name='L319'></a><a href='#L319'>319</a>
385
- <a name='L320'></a><a href='#L320'>320</a>
386
- <a name='L321'></a><a href='#L321'>321</a>
387
- <a name='L322'></a><a href='#L322'>322</a>
388
- <a name='L323'></a><a href='#L323'>323</a>
389
- <a name='L324'></a><a href='#L324'>324</a>
390
- <a name='L325'></a><a href='#L325'>325</a>
391
- <a name='L326'></a><a href='#L326'>326</a>
392
- <a name='L327'></a><a href='#L327'>327</a>
393
- <a name='L328'></a><a href='#L328'>328</a>
394
- <a name='L329'></a><a href='#L329'>329</a>
395
- <a name='L330'></a><a href='#L330'>330</a>
396
- <a name='L331'></a><a href='#L331'>331</a>
397
- <a name='L332'></a><a href='#L332'>332</a>
398
- <a name='L333'></a><a href='#L333'>333</a>
399
- <a name='L334'></a><a href='#L334'>334</a>
400
- <a name='L335'></a><a href='#L335'>335</a>
401
- <a name='L336'></a><a href='#L336'>336</a>
402
- <a name='L337'></a><a href='#L337'>337</a>
403
- <a name='L338'></a><a href='#L338'>338</a>
404
- <a name='L339'></a><a href='#L339'>339</a>
405
- <a name='L340'></a><a href='#L340'>340</a>
406
- <a name='L341'></a><a href='#L341'>341</a>
407
- <a name='L342'></a><a href='#L342'>342</a>
408
- <a name='L343'></a><a href='#L343'>343</a>
409
- <a name='L344'></a><a href='#L344'>344</a>
410
- <a name='L345'></a><a href='#L345'>345</a>
411
- <a name='L346'></a><a href='#L346'>346</a>
412
- <a name='L347'></a><a href='#L347'>347</a>
413
- <a name='L348'></a><a href='#L348'>348</a>
414
- <a name='L349'></a><a href='#L349'>349</a>
415
- <a name='L350'></a><a href='#L350'>350</a>
416
- <a name='L351'></a><a href='#L351'>351</a>
417
- <a name='L352'></a><a href='#L352'>352</a>
418
- <a name='L353'></a><a href='#L353'>353</a>
419
- <a name='L354'></a><a href='#L354'>354</a>
420
- <a name='L355'></a><a href='#L355'>355</a>
421
- <a name='L356'></a><a href='#L356'>356</a>
422
- <a name='L357'></a><a href='#L357'>357</a>
423
- <a name='L358'></a><a href='#L358'>358</a>
424
- <a name='L359'></a><a href='#L359'>359</a>
425
- <a name='L360'></a><a href='#L360'>360</a>
426
- <a name='L361'></a><a href='#L361'>361</a>
427
- <a name='L362'></a><a href='#L362'>362</a>
428
- <a name='L363'></a><a href='#L363'>363</a>
429
- <a name='L364'></a><a href='#L364'>364</a>
430
- <a name='L365'></a><a href='#L365'>365</a>
431
- <a name='L366'></a><a href='#L366'>366</a>
432
- <a name='L367'></a><a href='#L367'>367</a>
433
- <a name='L368'></a><a href='#L368'>368</a>
434
- <a name='L369'></a><a href='#L369'>369</a>
435
- <a name='L370'></a><a href='#L370'>370</a>
436
- <a name='L371'></a><a href='#L371'>371</a>
437
- <a name='L372'></a><a href='#L372'>372</a>
438
- <a name='L373'></a><a href='#L373'>373</a>
439
- <a name='L374'></a><a href='#L374'>374</a>
440
- <a name='L375'></a><a href='#L375'>375</a>
441
- <a name='L376'></a><a href='#L376'>376</a>
442
- <a name='L377'></a><a href='#L377'>377</a>
443
- <a name='L378'></a><a href='#L378'>378</a>
444
- <a name='L379'></a><a href='#L379'>379</a>
445
- <a name='L380'></a><a href='#L380'>380</a>
446
- <a name='L381'></a><a href='#L381'>381</a>
447
- <a name='L382'></a><a href='#L382'>382</a>
448
- <a name='L383'></a><a href='#L383'>383</a>
449
- <a name='L384'></a><a href='#L384'>384</a>
450
- <a name='L385'></a><a href='#L385'>385</a>
451
- <a name='L386'></a><a href='#L386'>386</a>
452
- <a name='L387'></a><a href='#L387'>387</a>
453
- <a name='L388'></a><a href='#L388'>388</a>
454
- <a name='L389'></a><a href='#L389'>389</a>
455
- <a name='L390'></a><a href='#L390'>390</a>
456
- <a name='L391'></a><a href='#L391'>391</a>
457
- <a name='L392'></a><a href='#L392'>392</a>
458
- <a name='L393'></a><a href='#L393'>393</a>
459
- <a name='L394'></a><a href='#L394'>394</a>
460
- <a name='L395'></a><a href='#L395'>395</a>
461
- <a name='L396'></a><a href='#L396'>396</a>
462
- <a name='L397'></a><a href='#L397'>397</a>
463
- <a name='L398'></a><a href='#L398'>398</a>
464
- <a name='L399'></a><a href='#L399'>399</a>
465
- <a name='L400'></a><a href='#L400'>400</a>
466
- <a name='L401'></a><a href='#L401'>401</a>
467
- <a name='L402'></a><a href='#L402'>402</a>
468
- <a name='L403'></a><a href='#L403'>403</a>
469
- <a name='L404'></a><a href='#L404'>404</a>
470
- <a name='L405'></a><a href='#L405'>405</a>
471
- <a name='L406'></a><a href='#L406'>406</a>
472
- <a name='L407'></a><a href='#L407'>407</a>
473
- <a name='L408'></a><a href='#L408'>408</a>
474
- <a name='L409'></a><a href='#L409'>409</a>
475
- <a name='L410'></a><a href='#L410'>410</a>
476
- <a name='L411'></a><a href='#L411'>411</a>
477
- <a name='L412'></a><a href='#L412'>412</a>
478
- <a name='L413'></a><a href='#L413'>413</a>
479
- <a name='L414'></a><a href='#L414'>414</a>
480
- <a name='L415'></a><a href='#L415'>415</a>
481
- <a name='L416'></a><a href='#L416'>416</a>
482
- <a name='L417'></a><a href='#L417'>417</a>
483
- <a name='L418'></a><a href='#L418'>418</a>
484
- <a name='L419'></a><a href='#L419'>419</a>
485
- <a name='L420'></a><a href='#L420'>420</a>
486
- <a name='L421'></a><a href='#L421'>421</a>
487
- <a name='L422'></a><a href='#L422'>422</a>
488
- <a name='L423'></a><a href='#L423'>423</a>
489
- <a name='L424'></a><a href='#L424'>424</a>
490
- <a name='L425'></a><a href='#L425'>425</a>
491
- <a name='L426'></a><a href='#L426'>426</a>
492
- <a name='L427'></a><a href='#L427'>427</a>
493
- <a name='L428'></a><a href='#L428'>428</a>
494
- <a name='L429'></a><a href='#L429'>429</a>
495
- <a name='L430'></a><a href='#L430'>430</a>
496
- <a name='L431'></a><a href='#L431'>431</a>
497
- <a name='L432'></a><a href='#L432'>432</a>
498
- <a name='L433'></a><a href='#L433'>433</a>
499
- <a name='L434'></a><a href='#L434'>434</a>
500
- <a name='L435'></a><a href='#L435'>435</a>
501
- <a name='L436'></a><a href='#L436'>436</a>
502
- <a name='L437'></a><a href='#L437'>437</a>
503
- <a name='L438'></a><a href='#L438'>438</a>
504
- <a name='L439'></a><a href='#L439'>439</a>
505
- <a name='L440'></a><a href='#L440'>440</a>
506
- <a name='L441'></a><a href='#L441'>441</a>
507
- <a name='L442'></a><a href='#L442'>442</a>
508
- <a name='L443'></a><a href='#L443'>443</a>
509
- <a name='L444'></a><a href='#L444'>444</a>
510
- <a name='L445'></a><a href='#L445'>445</a>
511
- <a name='L446'></a><a href='#L446'>446</a>
512
- <a name='L447'></a><a href='#L447'>447</a>
513
- <a name='L448'></a><a href='#L448'>448</a>
514
- <a name='L449'></a><a href='#L449'>449</a>
515
- <a name='L450'></a><a href='#L450'>450</a>
516
- <a name='L451'></a><a href='#L451'>451</a>
517
- <a name='L452'></a><a href='#L452'>452</a>
518
- <a name='L453'></a><a href='#L453'>453</a>
519
- <a name='L454'></a><a href='#L454'>454</a>
520
- <a name='L455'></a><a href='#L455'>455</a>
521
- <a name='L456'></a><a href='#L456'>456</a>
522
- <a name='L457'></a><a href='#L457'>457</a>
523
- <a name='L458'></a><a href='#L458'>458</a>
524
- <a name='L459'></a><a href='#L459'>459</a>
525
- <a name='L460'></a><a href='#L460'>460</a>
526
- <a name='L461'></a><a href='#L461'>461</a>
527
- <a name='L462'></a><a href='#L462'>462</a>
528
- <a name='L463'></a><a href='#L463'>463</a>
529
- <a name='L464'></a><a href='#L464'>464</a>
530
- <a name='L465'></a><a href='#L465'>465</a>
531
- <a name='L466'></a><a href='#L466'>466</a>
532
- <a name='L467'></a><a href='#L467'>467</a>
533
- <a name='L468'></a><a href='#L468'>468</a>
534
- <a name='L469'></a><a href='#L469'>469</a>
535
- <a name='L470'></a><a href='#L470'>470</a>
536
- <a name='L471'></a><a href='#L471'>471</a>
537
- <a name='L472'></a><a href='#L472'>472</a>
538
- <a name='L473'></a><a href='#L473'>473</a>
539
- <a name='L474'></a><a href='#L474'>474</a>
540
- <a name='L475'></a><a href='#L475'>475</a>
541
- <a name='L476'></a><a href='#L476'>476</a>
542
- <a name='L477'></a><a href='#L477'>477</a>
543
- <a name='L478'></a><a href='#L478'>478</a>
544
- <a name='L479'></a><a href='#L479'>479</a>
545
- <a name='L480'></a><a href='#L480'>480</a>
546
- <a name='L481'></a><a href='#L481'>481</a>
547
- <a name='L482'></a><a href='#L482'>482</a>
548
- <a name='L483'></a><a href='#L483'>483</a>
549
- <a name='L484'></a><a href='#L484'>484</a>
550
- <a name='L485'></a><a href='#L485'>485</a>
551
- <a name='L486'></a><a href='#L486'>486</a>
552
- <a name='L487'></a><a href='#L487'>487</a>
553
- <a name='L488'></a><a href='#L488'>488</a>
554
- <a name='L489'></a><a href='#L489'>489</a>
555
- <a name='L490'></a><a href='#L490'>490</a>
556
- <a name='L491'></a><a href='#L491'>491</a>
557
- <a name='L492'></a><a href='#L492'>492</a>
558
- <a name='L493'></a><a href='#L493'>493</a>
559
- <a name='L494'></a><a href='#L494'>494</a>
560
- <a name='L495'></a><a href='#L495'>495</a>
561
- <a name='L496'></a><a href='#L496'>496</a>
562
- <a name='L497'></a><a href='#L497'>497</a>
563
- <a name='L498'></a><a href='#L498'>498</a>
564
- <a name='L499'></a><a href='#L499'>499</a>
565
- <a name='L500'></a><a href='#L500'>500</a>
566
- <a name='L501'></a><a href='#L501'>501</a>
567
- <a name='L502'></a><a href='#L502'>502</a>
568
- <a name='L503'></a><a href='#L503'>503</a>
569
- <a name='L504'></a><a href='#L504'>504</a>
570
- <a name='L505'></a><a href='#L505'>505</a>
571
- <a name='L506'></a><a href='#L506'>506</a>
572
- <a name='L507'></a><a href='#L507'>507</a>
573
- <a name='L508'></a><a href='#L508'>508</a>
574
- <a name='L509'></a><a href='#L509'>509</a>
575
- <a name='L510'></a><a href='#L510'>510</a>
576
- <a name='L511'></a><a href='#L511'>511</a>
577
- <a name='L512'></a><a href='#L512'>512</a>
578
- <a name='L513'></a><a href='#L513'>513</a>
579
- <a name='L514'></a><a href='#L514'>514</a>
580
- <a name='L515'></a><a href='#L515'>515</a>
581
- <a name='L516'></a><a href='#L516'>516</a>
582
- <a name='L517'></a><a href='#L517'>517</a>
583
- <a name='L518'></a><a href='#L518'>518</a>
584
- <a name='L519'></a><a href='#L519'>519</a>
585
- <a name='L520'></a><a href='#L520'>520</a>
586
- <a name='L521'></a><a href='#L521'>521</a>
587
- <a name='L522'></a><a href='#L522'>522</a>
588
- <a name='L523'></a><a href='#L523'>523</a>
589
- <a name='L524'></a><a href='#L524'>524</a>
590
- <a name='L525'></a><a href='#L525'>525</a>
591
- <a name='L526'></a><a href='#L526'>526</a>
592
- <a name='L527'></a><a href='#L527'>527</a>
593
- <a name='L528'></a><a href='#L528'>528</a>
594
- <a name='L529'></a><a href='#L529'>529</a>
595
- <a name='L530'></a><a href='#L530'>530</a>
596
- <a name='L531'></a><a href='#L531'>531</a>
597
- <a name='L532'></a><a href='#L532'>532</a>
598
- <a name='L533'></a><a href='#L533'>533</a>
599
- <a name='L534'></a><a href='#L534'>534</a>
600
- <a name='L535'></a><a href='#L535'>535</a>
601
- <a name='L536'></a><a href='#L536'>536</a>
602
- <a name='L537'></a><a href='#L537'>537</a>
603
- <a name='L538'></a><a href='#L538'>538</a>
604
- <a name='L539'></a><a href='#L539'>539</a>
605
- <a name='L540'></a><a href='#L540'>540</a>
606
- <a name='L541'></a><a href='#L541'>541</a>
607
- <a name='L542'></a><a href='#L542'>542</a>
608
- <a name='L543'></a><a href='#L543'>543</a>
609
- <a name='L544'></a><a href='#L544'>544</a>
610
- <a name='L545'></a><a href='#L545'>545</a>
611
- <a name='L546'></a><a href='#L546'>546</a>
612
- <a name='L547'></a><a href='#L547'>547</a>
613
- <a name='L548'></a><a href='#L548'>548</a>
614
- <a name='L549'></a><a href='#L549'>549</a>
615
- <a name='L550'></a><a href='#L550'>550</a>
616
- <a name='L551'></a><a href='#L551'>551</a>
617
- <a name='L552'></a><a href='#L552'>552</a>
618
- <a name='L553'></a><a href='#L553'>553</a>
619
- <a name='L554'></a><a href='#L554'>554</a>
620
- <a name='L555'></a><a href='#L555'>555</a>
621
- <a name='L556'></a><a href='#L556'>556</a>
622
- <a name='L557'></a><a href='#L557'>557</a>
623
- <a name='L558'></a><a href='#L558'>558</a>
624
- <a name='L559'></a><a href='#L559'>559</a>
625
- <a name='L560'></a><a href='#L560'>560</a>
626
- <a name='L561'></a><a href='#L561'>561</a>
627
- <a name='L562'></a><a href='#L562'>562</a>
628
- <a name='L563'></a><a href='#L563'>563</a>
629
- <a name='L564'></a><a href='#L564'>564</a>
630
- <a name='L565'></a><a href='#L565'>565</a>
631
- <a name='L566'></a><a href='#L566'>566</a>
632
- <a name='L567'></a><a href='#L567'>567</a>
633
- <a name='L568'></a><a href='#L568'>568</a>
634
- <a name='L569'></a><a href='#L569'>569</a>
635
- <a name='L570'></a><a href='#L570'>570</a>
636
- <a name='L571'></a><a href='#L571'>571</a>
637
- <a name='L572'></a><a href='#L572'>572</a>
638
- <a name='L573'></a><a href='#L573'>573</a>
639
- <a name='L574'></a><a href='#L574'>574</a>
640
- <a name='L575'></a><a href='#L575'>575</a>
641
- <a name='L576'></a><a href='#L576'>576</a>
642
- <a name='L577'></a><a href='#L577'>577</a>
643
- <a name='L578'></a><a href='#L578'>578</a>
644
- <a name='L579'></a><a href='#L579'>579</a>
645
- <a name='L580'></a><a href='#L580'>580</a>
646
- <a name='L581'></a><a href='#L581'>581</a>
647
- <a name='L582'></a><a href='#L582'>582</a>
648
- <a name='L583'></a><a href='#L583'>583</a>
649
- <a name='L584'></a><a href='#L584'>584</a>
650
- <a name='L585'></a><a href='#L585'>585</a>
651
- <a name='L586'></a><a href='#L586'>586</a>
652
- <a name='L587'></a><a href='#L587'>587</a>
653
- <a name='L588'></a><a href='#L588'>588</a>
654
- <a name='L589'></a><a href='#L589'>589</a>
655
- <a name='L590'></a><a href='#L590'>590</a>
656
- <a name='L591'></a><a href='#L591'>591</a>
657
- <a name='L592'></a><a href='#L592'>592</a>
658
- <a name='L593'></a><a href='#L593'>593</a>
659
- <a name='L594'></a><a href='#L594'>594</a>
660
- <a name='L595'></a><a href='#L595'>595</a>
661
- <a name='L596'></a><a href='#L596'>596</a>
662
- <a name='L597'></a><a href='#L597'>597</a>
663
- <a name='L598'></a><a href='#L598'>598</a>
664
- <a name='L599'></a><a href='#L599'>599</a>
665
- <a name='L600'></a><a href='#L600'>600</a>
666
- <a name='L601'></a><a href='#L601'>601</a>
667
- <a name='L602'></a><a href='#L602'>602</a>
668
- <a name='L603'></a><a href='#L603'>603</a>
669
- <a name='L604'></a><a href='#L604'>604</a>
670
- <a name='L605'></a><a href='#L605'>605</a>
671
- <a name='L606'></a><a href='#L606'>606</a>
672
- <a name='L607'></a><a href='#L607'>607</a>
673
- <a name='L608'></a><a href='#L608'>608</a>
674
- <a name='L609'></a><a href='#L609'>609</a>
675
- <a name='L610'></a><a href='#L610'>610</a>
676
- <a name='L611'></a><a href='#L611'>611</a>
677
- <a name='L612'></a><a href='#L612'>612</a>
678
- <a name='L613'></a><a href='#L613'>613</a>
679
- <a name='L614'></a><a href='#L614'>614</a>
680
- <a name='L615'></a><a href='#L615'>615</a>
681
- <a name='L616'></a><a href='#L616'>616</a>
682
- <a name='L617'></a><a href='#L617'>617</a>
683
- <a name='L618'></a><a href='#L618'>618</a>
684
- <a name='L619'></a><a href='#L619'>619</a>
685
- <a name='L620'></a><a href='#L620'>620</a>
686
- <a name='L621'></a><a href='#L621'>621</a>
687
- <a name='L622'></a><a href='#L622'>622</a>
688
- <a name='L623'></a><a href='#L623'>623</a>
689
- <a name='L624'></a><a href='#L624'>624</a>
690
- <a name='L625'></a><a href='#L625'>625</a>
691
- <a name='L626'></a><a href='#L626'>626</a>
692
- <a name='L627'></a><a href='#L627'>627</a>
693
- <a name='L628'></a><a href='#L628'>628</a>
694
- <a name='L629'></a><a href='#L629'>629</a>
695
- <a name='L630'></a><a href='#L630'>630</a>
696
- <a name='L631'></a><a href='#L631'>631</a>
697
- <a name='L632'></a><a href='#L632'>632</a>
698
- <a name='L633'></a><a href='#L633'>633</a>
699
- <a name='L634'></a><a href='#L634'>634</a>
700
- <a name='L635'></a><a href='#L635'>635</a>
701
- <a name='L636'></a><a href='#L636'>636</a>
702
- <a name='L637'></a><a href='#L637'>637</a>
703
- <a name='L638'></a><a href='#L638'>638</a>
704
- <a name='L639'></a><a href='#L639'>639</a>
705
- <a name='L640'></a><a href='#L640'>640</a>
706
- <a name='L641'></a><a href='#L641'>641</a>
707
- <a name='L642'></a><a href='#L642'>642</a>
708
- <a name='L643'></a><a href='#L643'>643</a>
709
- <a name='L644'></a><a href='#L644'>644</a>
710
- <a name='L645'></a><a href='#L645'>645</a>
711
- <a name='L646'></a><a href='#L646'>646</a>
712
- <a name='L647'></a><a href='#L647'>647</a>
713
- <a name='L648'></a><a href='#L648'>648</a>
714
- <a name='L649'></a><a href='#L649'>649</a>
715
- <a name='L650'></a><a href='#L650'>650</a>
716
- <a name='L651'></a><a href='#L651'>651</a>
717
- <a name='L652'></a><a href='#L652'>652</a>
718
- <a name='L653'></a><a href='#L653'>653</a>
719
- <a name='L654'></a><a href='#L654'>654</a>
720
- <a name='L655'></a><a href='#L655'>655</a>
721
- <a name='L656'></a><a href='#L656'>656</a>
722
- <a name='L657'></a><a href='#L657'>657</a>
723
- <a name='L658'></a><a href='#L658'>658</a>
724
- <a name='L659'></a><a href='#L659'>659</a>
725
- <a name='L660'></a><a href='#L660'>660</a>
726
- <a name='L661'></a><a href='#L661'>661</a>
727
- <a name='L662'></a><a href='#L662'>662</a>
728
- <a name='L663'></a><a href='#L663'>663</a>
729
- <a name='L664'></a><a href='#L664'>664</a>
730
- <a name='L665'></a><a href='#L665'>665</a>
731
- <a name='L666'></a><a href='#L666'>666</a>
732
- <a name='L667'></a><a href='#L667'>667</a>
733
- <a name='L668'></a><a href='#L668'>668</a>
734
- <a name='L669'></a><a href='#L669'>669</a>
735
- <a name='L670'></a><a href='#L670'>670</a>
736
- <a name='L671'></a><a href='#L671'>671</a>
737
- <a name='L672'></a><a href='#L672'>672</a>
738
- <a name='L673'></a><a href='#L673'>673</a>
739
- <a name='L674'></a><a href='#L674'>674</a>
740
- <a name='L675'></a><a href='#L675'>675</a>
741
- <a name='L676'></a><a href='#L676'>676</a>
742
- <a name='L677'></a><a href='#L677'>677</a>
743
- <a name='L678'></a><a href='#L678'>678</a>
744
- <a name='L679'></a><a href='#L679'>679</a>
745
- <a name='L680'></a><a href='#L680'>680</a>
746
- <a name='L681'></a><a href='#L681'>681</a>
747
- <a name='L682'></a><a href='#L682'>682</a>
748
- <a name='L683'></a><a href='#L683'>683</a>
749
- <a name='L684'></a><a href='#L684'>684</a>
750
- <a name='L685'></a><a href='#L685'>685</a>
751
- <a name='L686'></a><a href='#L686'>686</a>
752
- <a name='L687'></a><a href='#L687'>687</a>
753
- <a name='L688'></a><a href='#L688'>688</a>
754
- <a name='L689'></a><a href='#L689'>689</a>
755
- <a name='L690'></a><a href='#L690'>690</a>
756
- <a name='L691'></a><a href='#L691'>691</a>
757
- <a name='L692'></a><a href='#L692'>692</a>
758
- <a name='L693'></a><a href='#L693'>693</a>
759
- <a name='L694'></a><a href='#L694'>694</a>
760
- <a name='L695'></a><a href='#L695'>695</a>
761
- <a name='L696'></a><a href='#L696'>696</a>
762
- <a name='L697'></a><a href='#L697'>697</a>
763
- <a name='L698'></a><a href='#L698'>698</a>
764
- <a name='L699'></a><a href='#L699'>699</a>
765
- <a name='L700'></a><a href='#L700'>700</a>
766
- <a name='L701'></a><a href='#L701'>701</a>
767
- <a name='L702'></a><a href='#L702'>702</a>
768
- <a name='L703'></a><a href='#L703'>703</a>
769
- <a name='L704'></a><a href='#L704'>704</a>
770
- <a name='L705'></a><a href='#L705'>705</a>
771
- <a name='L706'></a><a href='#L706'>706</a>
772
- <a name='L707'></a><a href='#L707'>707</a>
773
- <a name='L708'></a><a href='#L708'>708</a>
774
- <a name='L709'></a><a href='#L709'>709</a>
775
- <a name='L710'></a><a href='#L710'>710</a>
776
- <a name='L711'></a><a href='#L711'>711</a>
777
- <a name='L712'></a><a href='#L712'>712</a>
778
- <a name='L713'></a><a href='#L713'>713</a>
779
- <a name='L714'></a><a href='#L714'>714</a>
780
- <a name='L715'></a><a href='#L715'>715</a>
781
- <a name='L716'></a><a href='#L716'>716</a>
782
- <a name='L717'></a><a href='#L717'>717</a>
783
- <a name='L718'></a><a href='#L718'>718</a>
784
- <a name='L719'></a><a href='#L719'>719</a>
785
- <a name='L720'></a><a href='#L720'>720</a>
786
- <a name='L721'></a><a href='#L721'>721</a>
787
- <a name='L722'></a><a href='#L722'>722</a>
788
- <a name='L723'></a><a href='#L723'>723</a>
789
- <a name='L724'></a><a href='#L724'>724</a>
790
- <a name='L725'></a><a href='#L725'>725</a>
791
- <a name='L726'></a><a href='#L726'>726</a>
792
- <a name='L727'></a><a href='#L727'>727</a>
793
- <a name='L728'></a><a href='#L728'>728</a>
794
- <a name='L729'></a><a href='#L729'>729</a>
795
- <a name='L730'></a><a href='#L730'>730</a>
796
- <a name='L731'></a><a href='#L731'>731</a>
797
- <a name='L732'></a><a href='#L732'>732</a>
798
- <a name='L733'></a><a href='#L733'>733</a>
799
- <a name='L734'></a><a href='#L734'>734</a>
800
- <a name='L735'></a><a href='#L735'>735</a>
801
- <a name='L736'></a><a href='#L736'>736</a>
802
- <a name='L737'></a><a href='#L737'>737</a>
803
- <a name='L738'></a><a href='#L738'>738</a>
804
- <a name='L739'></a><a href='#L739'>739</a>
805
- <a name='L740'></a><a href='#L740'>740</a>
806
- <a name='L741'></a><a href='#L741'>741</a>
807
- <a name='L742'></a><a href='#L742'>742</a>
808
- <a name='L743'></a><a href='#L743'>743</a>
809
- <a name='L744'></a><a href='#L744'>744</a>
810
- <a name='L745'></a><a href='#L745'>745</a>
811
- <a name='L746'></a><a href='#L746'>746</a>
812
- <a name='L747'></a><a href='#L747'>747</a>
813
- <a name='L748'></a><a href='#L748'>748</a>
814
- <a name='L749'></a><a href='#L749'>749</a>
815
- <a name='L750'></a><a href='#L750'>750</a>
816
- <a name='L751'></a><a href='#L751'>751</a>
817
- <a name='L752'></a><a href='#L752'>752</a>
818
- <a name='L753'></a><a href='#L753'>753</a>
819
- <a name='L754'></a><a href='#L754'>754</a>
820
- <a name='L755'></a><a href='#L755'>755</a>
821
- <a name='L756'></a><a href='#L756'>756</a>
822
- <a name='L757'></a><a href='#L757'>757</a>
823
- <a name='L758'></a><a href='#L758'>758</a>
824
- <a name='L759'></a><a href='#L759'>759</a>
825
- <a name='L760'></a><a href='#L760'>760</a>
826
- <a name='L761'></a><a href='#L761'>761</a>
827
- <a name='L762'></a><a href='#L762'>762</a>
828
- <a name='L763'></a><a href='#L763'>763</a>
829
- <a name='L764'></a><a href='#L764'>764</a>
830
- <a name='L765'></a><a href='#L765'>765</a>
831
- <a name='L766'></a><a href='#L766'>766</a>
832
- <a name='L767'></a><a href='#L767'>767</a>
833
- <a name='L768'></a><a href='#L768'>768</a>
834
- <a name='L769'></a><a href='#L769'>769</a>
835
- <a name='L770'></a><a href='#L770'>770</a>
836
- <a name='L771'></a><a href='#L771'>771</a>
837
- <a name='L772'></a><a href='#L772'>772</a>
838
- <a name='L773'></a><a href='#L773'>773</a>
839
- <a name='L774'></a><a href='#L774'>774</a>
840
- <a name='L775'></a><a href='#L775'>775</a>
841
- <a name='L776'></a><a href='#L776'>776</a>
842
- <a name='L777'></a><a href='#L777'>777</a>
843
- <a name='L778'></a><a href='#L778'>778</a>
844
- <a name='L779'></a><a href='#L779'>779</a>
845
- <a name='L780'></a><a href='#L780'>780</a>
846
- <a name='L781'></a><a href='#L781'>781</a>
847
- <a name='L782'></a><a href='#L782'>782</a>
848
- <a name='L783'></a><a href='#L783'>783</a>
849
- <a name='L784'></a><a href='#L784'>784</a>
850
- <a name='L785'></a><a href='#L785'>785</a>
851
- <a name='L786'></a><a href='#L786'>786</a>
852
- <a name='L787'></a><a href='#L787'>787</a>
853
- <a name='L788'></a><a href='#L788'>788</a>
854
- <a name='L789'></a><a href='#L789'>789</a>
855
- <a name='L790'></a><a href='#L790'>790</a>
856
- <a name='L791'></a><a href='#L791'>791</a>
857
- <a name='L792'></a><a href='#L792'>792</a>
858
- <a name='L793'></a><a href='#L793'>793</a>
859
- <a name='L794'></a><a href='#L794'>794</a>
860
- <a name='L795'></a><a href='#L795'>795</a>
861
- <a name='L796'></a><a href='#L796'>796</a>
862
- <a name='L797'></a><a href='#L797'>797</a>
863
- <a name='L798'></a><a href='#L798'>798</a>
864
- <a name='L799'></a><a href='#L799'>799</a>
865
- <a name='L800'></a><a href='#L800'>800</a>
866
- <a name='L801'></a><a href='#L801'>801</a>
867
- <a name='L802'></a><a href='#L802'>802</a>
868
- <a name='L803'></a><a href='#L803'>803</a>
869
- <a name='L804'></a><a href='#L804'>804</a>
870
- <a name='L805'></a><a href='#L805'>805</a>
871
- <a name='L806'></a><a href='#L806'>806</a>
872
- <a name='L807'></a><a href='#L807'>807</a>
873
- <a name='L808'></a><a href='#L808'>808</a>
874
- <a name='L809'></a><a href='#L809'>809</a>
875
- <a name='L810'></a><a href='#L810'>810</a>
876
- <a name='L811'></a><a href='#L811'>811</a>
877
- <a name='L812'></a><a href='#L812'>812</a>
878
- <a name='L813'></a><a href='#L813'>813</a>
879
- <a name='L814'></a><a href='#L814'>814</a>
880
- <a name='L815'></a><a href='#L815'>815</a>
881
- <a name='L816'></a><a href='#L816'>816</a>
882
- <a name='L817'></a><a href='#L817'>817</a>
883
- <a name='L818'></a><a href='#L818'>818</a>
884
- <a name='L819'></a><a href='#L819'>819</a>
885
- <a name='L820'></a><a href='#L820'>820</a>
886
- <a name='L821'></a><a href='#L821'>821</a>
887
- <a name='L822'></a><a href='#L822'>822</a>
888
- <a name='L823'></a><a href='#L823'>823</a>
889
- <a name='L824'></a><a href='#L824'>824</a>
890
- <a name='L825'></a><a href='#L825'>825</a>
891
- <a name='L826'></a><a href='#L826'>826</a>
892
- <a name='L827'></a><a href='#L827'>827</a>
893
- <a name='L828'></a><a href='#L828'>828</a>
894
- <a name='L829'></a><a href='#L829'>829</a>
895
- <a name='L830'></a><a href='#L830'>830</a>
896
- <a name='L831'></a><a href='#L831'>831</a>
897
- <a name='L832'></a><a href='#L832'>832</a>
898
- <a name='L833'></a><a href='#L833'>833</a>
899
- <a name='L834'></a><a href='#L834'>834</a>
900
- <a name='L835'></a><a href='#L835'>835</a>
901
- <a name='L836'></a><a href='#L836'>836</a>
902
- <a name='L837'></a><a href='#L837'>837</a>
903
- <a name='L838'></a><a href='#L838'>838</a>
904
- <a name='L839'></a><a href='#L839'>839</a>
905
- <a name='L840'></a><a href='#L840'>840</a>
906
- <a name='L841'></a><a href='#L841'>841</a>
907
- <a name='L842'></a><a href='#L842'>842</a>
908
- <a name='L843'></a><a href='#L843'>843</a>
909
- <a name='L844'></a><a href='#L844'>844</a>
910
- <a name='L845'></a><a href='#L845'>845</a>
911
- <a name='L846'></a><a href='#L846'>846</a>
912
- <a name='L847'></a><a href='#L847'>847</a>
913
- <a name='L848'></a><a href='#L848'>848</a>
914
- <a name='L849'></a><a href='#L849'>849</a>
915
- <a name='L850'></a><a href='#L850'>850</a>
916
- <a name='L851'></a><a href='#L851'>851</a>
917
- <a name='L852'></a><a href='#L852'>852</a>
918
- <a name='L853'></a><a href='#L853'>853</a>
919
- <a name='L854'></a><a href='#L854'>854</a>
920
- <a name='L855'></a><a href='#L855'>855</a>
921
- <a name='L856'></a><a href='#L856'>856</a>
922
- <a name='L857'></a><a href='#L857'>857</a>
923
- <a name='L858'></a><a href='#L858'>858</a>
924
- <a name='L859'></a><a href='#L859'>859</a>
925
- <a name='L860'></a><a href='#L860'>860</a>
926
- <a name='L861'></a><a href='#L861'>861</a>
927
- <a name='L862'></a><a href='#L862'>862</a>
928
- <a name='L863'></a><a href='#L863'>863</a>
929
- <a name='L864'></a><a href='#L864'>864</a>
930
- <a name='L865'></a><a href='#L865'>865</a>
931
- <a name='L866'></a><a href='#L866'>866</a>
932
- <a name='L867'></a><a href='#L867'>867</a>
933
- <a name='L868'></a><a href='#L868'>868</a>
934
- <a name='L869'></a><a href='#L869'>869</a>
935
- <a name='L870'></a><a href='#L870'>870</a>
936
- <a name='L871'></a><a href='#L871'>871</a>
937
- <a name='L872'></a><a href='#L872'>872</a>
938
- <a name='L873'></a><a href='#L873'>873</a>
939
- <a name='L874'></a><a href='#L874'>874</a>
940
- <a name='L875'></a><a href='#L875'>875</a>
941
- <a name='L876'></a><a href='#L876'>876</a>
942
- <a name='L877'></a><a href='#L877'>877</a>
943
- <a name='L878'></a><a href='#L878'>878</a>
944
- <a name='L879'></a><a href='#L879'>879</a>
945
- <a name='L880'></a><a href='#L880'>880</a>
946
- <a name='L881'></a><a href='#L881'>881</a>
947
- <a name='L882'></a><a href='#L882'>882</a>
948
- <a name='L883'></a><a href='#L883'>883</a>
949
- <a name='L884'></a><a href='#L884'>884</a>
950
- <a name='L885'></a><a href='#L885'>885</a>
951
- <a name='L886'></a><a href='#L886'>886</a>
952
- <a name='L887'></a><a href='#L887'>887</a>
953
- <a name='L888'></a><a href='#L888'>888</a>
954
- <a name='L889'></a><a href='#L889'>889</a>
955
- <a name='L890'></a><a href='#L890'>890</a>
956
- <a name='L891'></a><a href='#L891'>891</a>
957
- <a name='L892'></a><a href='#L892'>892</a>
958
- <a name='L893'></a><a href='#L893'>893</a>
959
- <a name='L894'></a><a href='#L894'>894</a>
960
- <a name='L895'></a><a href='#L895'>895</a>
961
- <a name='L896'></a><a href='#L896'>896</a>
962
- <a name='L897'></a><a href='#L897'>897</a>
963
- <a name='L898'></a><a href='#L898'>898</a>
964
- <a name='L899'></a><a href='#L899'>899</a>
965
- <a name='L900'></a><a href='#L900'>900</a>
966
- <a name='L901'></a><a href='#L901'>901</a>
967
- <a name='L902'></a><a href='#L902'>902</a>
968
- <a name='L903'></a><a href='#L903'>903</a>
969
- <a name='L904'></a><a href='#L904'>904</a>
970
- <a name='L905'></a><a href='#L905'>905</a>
971
- <a name='L906'></a><a href='#L906'>906</a>
972
- <a name='L907'></a><a href='#L907'>907</a>
973
- <a name='L908'></a><a href='#L908'>908</a>
974
- <a name='L909'></a><a href='#L909'>909</a>
975
- <a name='L910'></a><a href='#L910'>910</a>
976
- <a name='L911'></a><a href='#L911'>911</a>
977
- <a name='L912'></a><a href='#L912'>912</a>
978
- <a name='L913'></a><a href='#L913'>913</a>
979
- <a name='L914'></a><a href='#L914'>914</a>
980
- <a name='L915'></a><a href='#L915'>915</a>
981
- <a name='L916'></a><a href='#L916'>916</a>
982
- <a name='L917'></a><a href='#L917'>917</a>
983
- <a name='L918'></a><a href='#L918'>918</a>
984
- <a name='L919'></a><a href='#L919'>919</a>
985
- <a name='L920'></a><a href='#L920'>920</a>
986
- <a name='L921'></a><a href='#L921'>921</a>
987
- <a name='L922'></a><a href='#L922'>922</a>
988
- <a name='L923'></a><a href='#L923'>923</a>
989
- <a name='L924'></a><a href='#L924'>924</a>
990
- <a name='L925'></a><a href='#L925'>925</a>
991
- <a name='L926'></a><a href='#L926'>926</a>
992
- <a name='L927'></a><a href='#L927'>927</a>
993
- <a name='L928'></a><a href='#L928'>928</a>
994
- <a name='L929'></a><a href='#L929'>929</a>
995
- <a name='L930'></a><a href='#L930'>930</a>
996
- <a name='L931'></a><a href='#L931'>931</a>
997
- <a name='L932'></a><a href='#L932'>932</a>
998
- <a name='L933'></a><a href='#L933'>933</a>
999
- <a name='L934'></a><a href='#L934'>934</a>
1000
- <a name='L935'></a><a href='#L935'>935</a>
1001
- <a name='L936'></a><a href='#L936'>936</a>
1002
- <a name='L937'></a><a href='#L937'>937</a>
1003
- <a name='L938'></a><a href='#L938'>938</a>
1004
- <a name='L939'></a><a href='#L939'>939</a>
1005
- <a name='L940'></a><a href='#L940'>940</a>
1006
- <a name='L941'></a><a href='#L941'>941</a>
1007
- <a name='L942'></a><a href='#L942'>942</a>
1008
- <a name='L943'></a><a href='#L943'>943</a>
1009
- <a name='L944'></a><a href='#L944'>944</a>
1010
- <a name='L945'></a><a href='#L945'>945</a>
1011
- <a name='L946'></a><a href='#L946'>946</a>
1012
- <a name='L947'></a><a href='#L947'>947</a>
1013
- <a name='L948'></a><a href='#L948'>948</a>
1014
- <a name='L949'></a><a href='#L949'>949</a>
1015
- <a name='L950'></a><a href='#L950'>950</a>
1016
- <a name='L951'></a><a href='#L951'>951</a>
1017
- <a name='L952'></a><a href='#L952'>952</a>
1018
- <a name='L953'></a><a href='#L953'>953</a>
1019
- <a name='L954'></a><a href='#L954'>954</a>
1020
- <a name='L955'></a><a href='#L955'>955</a>
1021
- <a name='L956'></a><a href='#L956'>956</a>
1022
- <a name='L957'></a><a href='#L957'>957</a>
1023
- <a name='L958'></a><a href='#L958'>958</a>
1024
- <a name='L959'></a><a href='#L959'>959</a>
1025
- <a name='L960'></a><a href='#L960'>960</a>
1026
- <a name='L961'></a><a href='#L961'>961</a>
1027
- <a name='L962'></a><a href='#L962'>962</a>
1028
- <a name='L963'></a><a href='#L963'>963</a>
1029
- <a name='L964'></a><a href='#L964'>964</a>
1030
- <a name='L965'></a><a href='#L965'>965</a>
1031
- <a name='L966'></a><a href='#L966'>966</a>
1032
- <a name='L967'></a><a href='#L967'>967</a>
1033
- <a name='L968'></a><a href='#L968'>968</a>
1034
- <a name='L969'></a><a href='#L969'>969</a>
1035
- <a name='L970'></a><a href='#L970'>970</a>
1036
- <a name='L971'></a><a href='#L971'>971</a>
1037
- <a name='L972'></a><a href='#L972'>972</a>
1038
- <a name='L973'></a><a href='#L973'>973</a>
1039
- <a name='L974'></a><a href='#L974'>974</a>
1040
- <a name='L975'></a><a href='#L975'>975</a>
1041
- <a name='L976'></a><a href='#L976'>976</a>
1042
- <a name='L977'></a><a href='#L977'>977</a>
1043
- <a name='L978'></a><a href='#L978'>978</a>
1044
- <a name='L979'></a><a href='#L979'>979</a>
1045
- <a name='L980'></a><a href='#L980'>980</a>
1046
- <a name='L981'></a><a href='#L981'>981</a>
1047
- <a name='L982'></a><a href='#L982'>982</a>
1048
- <a name='L983'></a><a href='#L983'>983</a>
1049
- <a name='L984'></a><a href='#L984'>984</a>
1050
- <a name='L985'></a><a href='#L985'>985</a>
1051
- <a name='L986'></a><a href='#L986'>986</a>
1052
- <a name='L987'></a><a href='#L987'>987</a>
1053
- <a name='L988'></a><a href='#L988'>988</a>
1054
- <a name='L989'></a><a href='#L989'>989</a>
1055
- <a name='L990'></a><a href='#L990'>990</a>
1056
- <a name='L991'></a><a href='#L991'>991</a>
1057
- <a name='L992'></a><a href='#L992'>992</a>
1058
- <a name='L993'></a><a href='#L993'>993</a>
1059
- <a name='L994'></a><a href='#L994'>994</a>
1060
- <a name='L995'></a><a href='#L995'>995</a>
1061
- <a name='L996'></a><a href='#L996'>996</a>
1062
- <a name='L997'></a><a href='#L997'>997</a>
1063
- <a name='L998'></a><a href='#L998'>998</a>
1064
- <a name='L999'></a><a href='#L999'>999</a>
1065
- <a name='L1000'></a><a href='#L1000'>1000</a>
1066
- <a name='L1001'></a><a href='#L1001'>1001</a>
1067
- <a name='L1002'></a><a href='#L1002'>1002</a>
1068
- <a name='L1003'></a><a href='#L1003'>1003</a>
1069
- <a name='L1004'></a><a href='#L1004'>1004</a>
1070
- <a name='L1005'></a><a href='#L1005'>1005</a>
1071
- <a name='L1006'></a><a href='#L1006'>1006</a>
1072
- <a name='L1007'></a><a href='#L1007'>1007</a>
1073
- <a name='L1008'></a><a href='#L1008'>1008</a>
1074
- <a name='L1009'></a><a href='#L1009'>1009</a>
1075
- <a name='L1010'></a><a href='#L1010'>1010</a>
1076
- <a name='L1011'></a><a href='#L1011'>1011</a>
1077
- <a name='L1012'></a><a href='#L1012'>1012</a>
1078
- <a name='L1013'></a><a href='#L1013'>1013</a>
1079
- <a name='L1014'></a><a href='#L1014'>1014</a>
1080
- <a name='L1015'></a><a href='#L1015'>1015</a>
1081
- <a name='L1016'></a><a href='#L1016'>1016</a>
1082
- <a name='L1017'></a><a href='#L1017'>1017</a>
1083
- <a name='L1018'></a><a href='#L1018'>1018</a>
1084
- <a name='L1019'></a><a href='#L1019'>1019</a>
1085
- <a name='L1020'></a><a href='#L1020'>1020</a>
1086
- <a name='L1021'></a><a href='#L1021'>1021</a>
1087
- <a name='L1022'></a><a href='#L1022'>1022</a>
1088
- <a name='L1023'></a><a href='#L1023'>1023</a>
1089
- <a name='L1024'></a><a href='#L1024'>1024</a>
1090
- <a name='L1025'></a><a href='#L1025'>1025</a>
1091
- <a name='L1026'></a><a href='#L1026'>1026</a>
1092
- <a name='L1027'></a><a href='#L1027'>1027</a>
1093
- <a name='L1028'></a><a href='#L1028'>1028</a>
1094
- <a name='L1029'></a><a href='#L1029'>1029</a>
1095
- <a name='L1030'></a><a href='#L1030'>1030</a>
1096
- <a name='L1031'></a><a href='#L1031'>1031</a>
1097
- <a name='L1032'></a><a href='#L1032'>1032</a>
1098
- <a name='L1033'></a><a href='#L1033'>1033</a>
1099
- <a name='L1034'></a><a href='#L1034'>1034</a>
1100
- <a name='L1035'></a><a href='#L1035'>1035</a>
1101
- <a name='L1036'></a><a href='#L1036'>1036</a>
1102
- <a name='L1037'></a><a href='#L1037'>1037</a>
1103
- <a name='L1038'></a><a href='#L1038'>1038</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
1104
- <span class="cline-any cline-yes">1x</span>
1105
- <span class="cline-any cline-yes">1x</span>
1106
- <span class="cline-any cline-yes">1x</span>
1107
- <span class="cline-any cline-yes">1x</span>
1108
- <span class="cline-any cline-yes">1x</span>
1109
- <span class="cline-any cline-yes">1x</span>
1110
- <span class="cline-any cline-yes">1x</span>
1111
- <span class="cline-any cline-yes">1x</span>
1112
- <span class="cline-any cline-yes">1x</span>
1113
- <span class="cline-any cline-yes">1x</span>
1114
- <span class="cline-any cline-yes">1x</span>
1115
- <span class="cline-any cline-yes">1x</span>
1116
- <span class="cline-any cline-yes">1x</span>
1117
- <span class="cline-any cline-yes">1x</span>
1118
- <span class="cline-any cline-yes">1x</span>
1119
- <span class="cline-any cline-yes">1x</span>
1120
- <span class="cline-any cline-yes">1x</span>
1121
- <span class="cline-any cline-yes">1x</span>
1122
- <span class="cline-any cline-yes">1x</span>
1123
- <span class="cline-any cline-yes">1x</span>
1124
- <span class="cline-any cline-yes">1x</span>
1125
- <span class="cline-any cline-yes">1x</span>
1126
- <span class="cline-any cline-yes">1x</span>
1127
- <span class="cline-any cline-yes">1x</span>
1128
- <span class="cline-any cline-yes">1x</span>
1129
- <span class="cline-any cline-yes">1x</span>
1130
- <span class="cline-any cline-yes">1x</span>
1131
- <span class="cline-any cline-yes">1x</span>
1132
- <span class="cline-any cline-yes">1x</span>
1133
- <span class="cline-any cline-yes">1x</span>
1134
- <span class="cline-any cline-yes">1x</span>
1135
- <span class="cline-any cline-yes">1x</span>
1136
- <span class="cline-any cline-yes">1x</span>
1137
- <span class="cline-any cline-yes">1x</span>
1138
- <span class="cline-any cline-yes">1x</span>
1139
- <span class="cline-any cline-yes">1x</span>
1140
- <span class="cline-any cline-yes">1x</span>
1141
- <span class="cline-any cline-yes">1x</span>
1142
- <span class="cline-any cline-yes">1x</span>
1143
- <span class="cline-any cline-yes">1x</span>
1144
- <span class="cline-any cline-yes">1x</span>
1145
- <span class="cline-any cline-yes">1x</span>
1146
- <span class="cline-any cline-yes">1x</span>
1147
- <span class="cline-any cline-yes">1x</span>
1148
- <span class="cline-any cline-yes">1x</span>
1149
- <span class="cline-any cline-yes">1x</span>
1150
- <span class="cline-any cline-yes">1x</span>
1151
- <span class="cline-any cline-yes">1x</span>
1152
- <span class="cline-any cline-yes">1x</span>
1153
- <span class="cline-any cline-yes">1x</span>
1154
- <span class="cline-any cline-yes">1x</span>
1155
- <span class="cline-any cline-yes">1x</span>
1156
- <span class="cline-any cline-yes">1x</span>
1157
- <span class="cline-any cline-yes">1x</span>
1158
- <span class="cline-any cline-yes">1x</span>
1159
- <span class="cline-any cline-yes">1x</span>
1160
- <span class="cline-any cline-yes">1x</span>
1161
- <span class="cline-any cline-yes">1x</span>
1162
- <span class="cline-any cline-yes">1x</span>
1163
- <span class="cline-any cline-yes">1x</span>
1164
- <span class="cline-any cline-yes">1x</span>
1165
- <span class="cline-any cline-yes">1x</span>
1166
- <span class="cline-any cline-yes">1x</span>
1167
- <span class="cline-any cline-yes">1x</span>
1168
- <span class="cline-any cline-yes">1x</span>
1169
- <span class="cline-any cline-yes">1x</span>
1170
- <span class="cline-any cline-yes">1x</span>
1171
- <span class="cline-any cline-yes">1x</span>
1172
- <span class="cline-any cline-yes">1x</span>
1173
- <span class="cline-any cline-yes">1x</span>
1174
- <span class="cline-any cline-yes">1x</span>
1175
- <span class="cline-any cline-yes">1x</span>
1176
- <span class="cline-any cline-yes">1x</span>
1177
- <span class="cline-any cline-no">&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-yes">1x</span>
1182
- <span class="cline-any cline-yes">1x</span>
1183
- <span class="cline-any cline-yes">1x</span>
1184
- <span class="cline-any cline-yes">1x</span>
1185
- <span class="cline-any cline-yes">1x</span>
1186
- <span class="cline-any cline-yes">1x</span>
1187
- <span class="cline-any cline-yes">1x</span>
1188
- <span class="cline-any cline-yes">1x</span>
1189
- <span class="cline-any cline-yes">1x</span>
1190
- <span class="cline-any cline-yes">1x</span>
1191
- <span class="cline-any cline-yes">1x</span>
1192
- <span class="cline-any cline-yes">1x</span>
1193
- <span class="cline-any cline-yes">1x</span>
1194
- <span class="cline-any cline-yes">1x</span>
1195
- <span class="cline-any cline-yes">1x</span>
1196
- <span class="cline-any cline-yes">1x</span>
1197
- <span class="cline-any cline-yes">1x</span>
1198
- <span class="cline-any cline-yes">1x</span>
1199
- <span class="cline-any cline-yes">1x</span>
1200
- <span class="cline-any cline-yes">1x</span>
1201
- <span class="cline-any cline-no">&nbsp;</span>
1202
- <span class="cline-any cline-no">&nbsp;</span>
1203
- <span class="cline-any cline-no">&nbsp;</span>
1204
- <span class="cline-any cline-yes">1x</span>
1205
- <span class="cline-any cline-no">&nbsp;</span>
1206
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1215
- <span class="cline-any cline-yes">1x</span>
1216
- <span class="cline-any cline-yes">1x</span>
1217
- <span class="cline-any cline-yes">1x</span>
1218
- <span class="cline-any cline-yes">1x</span>
1219
- <span class="cline-any cline-yes">1x</span>
1220
- <span class="cline-any cline-yes">1x</span>
1221
- <span class="cline-any cline-yes">1x</span>
1222
- <span class="cline-any cline-yes">1x</span>
1223
- <span class="cline-any cline-yes">1x</span>
1224
- <span class="cline-any cline-yes">1x</span>
1225
- <span class="cline-any cline-yes">1x</span>
1226
- <span class="cline-any cline-yes">1x</span>
1227
- <span class="cline-any cline-yes">1x</span>
1228
- <span class="cline-any cline-yes">1x</span>
1229
- <span class="cline-any cline-yes">1x</span>
1230
- <span class="cline-any cline-yes">1x</span>
1231
- <span class="cline-any cline-yes">1x</span>
1232
- <span class="cline-any cline-yes">1x</span>
1233
- <span class="cline-any cline-yes">1x</span>
1234
- <span class="cline-any cline-yes">1x</span>
1235
- <span class="cline-any cline-yes">1x</span>
1236
- <span class="cline-any cline-yes">1x</span>
1237
- <span class="cline-any cline-yes">1x</span>
1238
- <span class="cline-any cline-no">&nbsp;</span>
1239
- <span class="cline-any cline-no">&nbsp;</span>
1240
- <span class="cline-any cline-no">&nbsp;</span>
1241
- <span class="cline-any cline-no">&nbsp;</span>
1242
- <span class="cline-any cline-no">&nbsp;</span>
1243
- <span class="cline-any cline-yes">1x</span>
1244
- <span class="cline-any cline-yes">1x</span>
1245
- <span class="cline-any cline-yes">1x</span>
1246
- <span class="cline-any cline-yes">1x</span>
1247
- <span class="cline-any cline-yes">1x</span>
1248
- <span class="cline-any cline-yes">1x</span>
1249
- <span class="cline-any cline-yes">1x</span>
1250
- <span class="cline-any cline-yes">1x</span>
1251
- <span class="cline-any cline-yes">1x</span>
1252
- <span class="cline-any cline-yes">1x</span>
1253
- <span class="cline-any cline-yes">1x</span>
1254
- <span class="cline-any cline-no">&nbsp;</span>
1255
- <span class="cline-any cline-yes">1x</span>
1256
- <span class="cline-any cline-no">&nbsp;</span>
1257
- <span class="cline-any cline-no">&nbsp;</span>
1258
- <span class="cline-any cline-no">&nbsp;</span>
1259
- <span class="cline-any cline-no">&nbsp;</span>
1260
- <span class="cline-any cline-no">&nbsp;</span>
1261
- <span class="cline-any cline-no">&nbsp;</span>
1262
- <span class="cline-any cline-yes">1x</span>
1263
- <span class="cline-any cline-yes">1x</span>
1264
- <span class="cline-any cline-yes">1x</span>
1265
- <span class="cline-any cline-no">&nbsp;</span>
1266
- <span class="cline-any cline-yes">1x</span>
1267
- <span class="cline-any cline-yes">1x</span>
1268
- <span class="cline-any cline-yes">1x</span>
1269
- <span class="cline-any cline-yes">1x</span>
1270
- <span class="cline-any cline-yes">1x</span>
1271
- <span class="cline-any cline-yes">1x</span>
1272
- <span class="cline-any cline-yes">1x</span>
1273
- <span class="cline-any cline-yes">1x</span>
1274
- <span class="cline-any cline-yes">1x</span>
1275
- <span class="cline-any cline-yes">1x</span>
1276
- <span class="cline-any cline-yes">1x</span>
1277
- <span class="cline-any cline-no">&nbsp;</span>
1278
- <span class="cline-any cline-no">&nbsp;</span>
1279
- <span class="cline-any cline-no">&nbsp;</span>
1280
- <span class="cline-any cline-no">&nbsp;</span>
1281
- <span class="cline-any cline-no">&nbsp;</span>
1282
- <span class="cline-any cline-yes">1x</span>
1283
- <span class="cline-any cline-yes">1x</span>
1284
- <span class="cline-any cline-yes">1x</span>
1285
- <span class="cline-any cline-yes">1x</span>
1286
- <span class="cline-any cline-yes">1x</span>
1287
- <span class="cline-any cline-yes">1x</span>
1288
- <span class="cline-any cline-yes">1x</span>
1289
- <span class="cline-any cline-yes">1x</span>
1290
- <span class="cline-any cline-yes">1x</span>
1291
- <span class="cline-any cline-yes">1x</span>
1292
- <span class="cline-any cline-yes">1x</span>
1293
- <span class="cline-any cline-yes">1x</span>
1294
- <span class="cline-any cline-no">&nbsp;</span>
1295
- <span class="cline-any cline-no">&nbsp;</span>
1296
- <span class="cline-any cline-no">&nbsp;</span>
1297
- <span class="cline-any cline-no">&nbsp;</span>
1298
- <span class="cline-any cline-no">&nbsp;</span>
1299
- <span class="cline-any cline-no">&nbsp;</span>
1300
- <span class="cline-any cline-no">&nbsp;</span>
1301
- <span class="cline-any cline-yes">1x</span>
1302
- <span class="cline-any cline-yes">1x</span>
1303
- <span class="cline-any cline-yes">1x</span>
1304
- <span class="cline-any cline-yes">1x</span>
1305
- <span class="cline-any cline-yes">1x</span>
1306
- <span class="cline-any cline-yes">1x</span>
1307
- <span class="cline-any cline-yes">1x</span>
1308
- <span class="cline-any cline-yes">1x</span>
1309
- <span class="cline-any cline-yes">1x</span>
1310
- <span class="cline-any cline-yes">1x</span>
1311
- <span class="cline-any cline-yes">1x</span>
1312
- <span class="cline-any cline-yes">1x</span>
1313
- <span class="cline-any cline-no">&nbsp;</span>
1314
- <span class="cline-any cline-no">&nbsp;</span>
1315
- <span class="cline-any cline-no">&nbsp;</span>
1316
- <span class="cline-any cline-no">&nbsp;</span>
1317
- <span class="cline-any cline-no">&nbsp;</span>
1318
- <span class="cline-any cline-no">&nbsp;</span>
1319
- <span class="cline-any cline-yes">1x</span>
1320
- <span class="cline-any cline-yes">1x</span>
1321
- <span class="cline-any cline-yes">1x</span>
1322
- <span class="cline-any cline-yes">1x</span>
1323
- <span class="cline-any cline-yes">1x</span>
1324
- <span class="cline-any cline-yes">1x</span>
1325
- <span class="cline-any cline-yes">1x</span>
1326
- <span class="cline-any cline-yes">1x</span>
1327
- <span class="cline-any cline-yes">1x</span>
1328
- <span class="cline-any cline-yes">2x</span>
1329
- <span class="cline-any cline-yes">1x</span>
1330
- <span class="cline-any cline-yes">1x</span>
1331
- <span class="cline-any cline-yes">1x</span>
1332
- <span class="cline-any cline-yes">2x</span>
1333
- <span class="cline-any cline-yes">2x</span>
1334
- <span class="cline-any cline-yes">2x</span>
1335
- <span class="cline-any cline-yes">2x</span>
1336
- <span class="cline-any cline-yes">2x</span>
1337
- <span class="cline-any cline-yes">2x</span>
1338
- <span class="cline-any cline-yes">2x</span>
1339
- <span class="cline-any cline-yes">2x</span>
1340
- <span class="cline-any cline-yes">2x</span>
1341
- <span class="cline-any cline-yes">1x</span>
1342
- <span class="cline-any cline-yes">1x</span>
1343
- <span class="cline-any cline-yes">1x</span>
1344
- <span class="cline-any cline-yes">1x</span>
1345
- <span class="cline-any cline-no">&nbsp;</span>
1346
- <span class="cline-any cline-no">&nbsp;</span>
1347
- <span class="cline-any cline-no">&nbsp;</span>
1348
- <span class="cline-any cline-no">&nbsp;</span>
1349
- <span class="cline-any cline-no">&nbsp;</span>
1350
- <span class="cline-any cline-no">&nbsp;</span>
1351
- <span class="cline-any cline-no">&nbsp;</span>
1352
- <span class="cline-any cline-no">&nbsp;</span>
1353
- <span class="cline-any cline-no">&nbsp;</span>
1354
- <span class="cline-any cline-no">&nbsp;</span>
1355
- <span class="cline-any cline-yes">1x</span>
1356
- <span class="cline-any cline-yes">1x</span>
1357
- <span class="cline-any cline-yes">1x</span>
1358
- <span class="cline-any cline-yes">2x</span>
1359
- <span class="cline-any cline-yes">1x</span>
1360
- <span class="cline-any cline-yes">1x</span>
1361
- <span class="cline-any cline-no">&nbsp;</span>
1362
- <span class="cline-any cline-no">&nbsp;</span>
1363
- <span class="cline-any cline-no">&nbsp;</span>
1364
- <span class="cline-any cline-no">&nbsp;</span>
1365
- <span class="cline-any cline-no">&nbsp;</span>
1366
- <span class="cline-any cline-no">&nbsp;</span>
1367
- <span class="cline-any cline-no">&nbsp;</span>
1368
- <span class="cline-any cline-no">&nbsp;</span>
1369
- <span class="cline-any cline-yes">1x</span>
1370
- <span class="cline-any cline-yes">1x</span>
1371
- <span class="cline-any cline-yes">1x</span>
1372
- <span class="cline-any cline-yes">1x</span>
1373
- <span class="cline-any cline-yes">4x</span>
1374
- <span class="cline-any cline-yes">4x</span>
1375
- <span class="cline-any cline-yes">4x</span>
1376
- <span class="cline-any cline-yes">4x</span>
1377
- <span class="cline-any cline-yes">4x</span>
1378
- <span class="cline-any cline-yes">4x</span>
1379
- <span class="cline-any cline-yes">4x</span>
1380
- <span class="cline-any cline-yes">4x</span>
1381
- <span class="cline-any cline-no">&nbsp;</span>
1382
- <span class="cline-any cline-no">&nbsp;</span>
1383
- <span class="cline-any cline-no">&nbsp;</span>
1384
- <span class="cline-any cline-no">&nbsp;</span>
1385
- <span class="cline-any cline-no">&nbsp;</span>
1386
- <span class="cline-any cline-no">&nbsp;</span>
1387
- <span class="cline-any cline-no">&nbsp;</span>
1388
- <span class="cline-any cline-no">&nbsp;</span>
1389
- <span class="cline-any cline-no">&nbsp;</span>
1390
- <span class="cline-any cline-no">&nbsp;</span>
1391
- <span class="cline-any cline-no">&nbsp;</span>
1392
- <span class="cline-any cline-no">&nbsp;</span>
1393
- <span class="cline-any cline-no">&nbsp;</span>
1394
- <span class="cline-any cline-no">&nbsp;</span>
1395
- <span class="cline-any cline-no">&nbsp;</span>
1396
- <span class="cline-any cline-no">&nbsp;</span>
1397
- <span class="cline-any cline-no">&nbsp;</span>
1398
- <span class="cline-any cline-no">&nbsp;</span>
1399
- <span class="cline-any cline-no">&nbsp;</span>
1400
- <span class="cline-any cline-no">&nbsp;</span>
1401
- <span class="cline-any cline-no">&nbsp;</span>
1402
- <span class="cline-any cline-no">&nbsp;</span>
1403
- <span class="cline-any cline-no">&nbsp;</span>
1404
- <span class="cline-any cline-no">&nbsp;</span>
1405
- <span class="cline-any cline-no">&nbsp;</span>
1406
- <span class="cline-any cline-no">&nbsp;</span>
1407
- <span class="cline-any cline-no">&nbsp;</span>
1408
- <span class="cline-any cline-no">&nbsp;</span>
1409
- <span class="cline-any cline-no">&nbsp;</span>
1410
- <span class="cline-any cline-no">&nbsp;</span>
1411
- <span class="cline-any cline-no">&nbsp;</span>
1412
- <span class="cline-any cline-no">&nbsp;</span>
1413
- <span class="cline-any cline-no">&nbsp;</span>
1414
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1421
- <span class="cline-any cline-no">&nbsp;</span>
1422
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1426
- <span class="cline-any cline-no">&nbsp;</span>
1427
- <span class="cline-any cline-no">&nbsp;</span>
1428
- <span class="cline-any cline-no">&nbsp;</span>
1429
- <span class="cline-any cline-no">&nbsp;</span>
1430
- <span class="cline-any cline-no">&nbsp;</span>
1431
- <span class="cline-any cline-no">&nbsp;</span>
1432
- <span class="cline-any cline-no">&nbsp;</span>
1433
- <span class="cline-any cline-no">&nbsp;</span>
1434
- <span class="cline-any cline-no">&nbsp;</span>
1435
- <span class="cline-any cline-no">&nbsp;</span>
1436
- <span class="cline-any cline-no">&nbsp;</span>
1437
- <span class="cline-any cline-no">&nbsp;</span>
1438
- <span class="cline-any cline-no">&nbsp;</span>
1439
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1443
- <span class="cline-any cline-no">&nbsp;</span>
1444
- <span class="cline-any cline-no">&nbsp;</span>
1445
- <span class="cline-any cline-no">&nbsp;</span>
1446
- <span class="cline-any cline-no">&nbsp;</span>
1447
- <span class="cline-any cline-no">&nbsp;</span>
1448
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1453
- <span class="cline-any cline-no">&nbsp;</span>
1454
- <span class="cline-any cline-no">&nbsp;</span>
1455
- <span class="cline-any cline-no">&nbsp;</span>
1456
- <span class="cline-any cline-no">&nbsp;</span>
1457
- <span class="cline-any cline-no">&nbsp;</span>
1458
- <span class="cline-any cline-no">&nbsp;</span>
1459
- <span class="cline-any cline-no">&nbsp;</span>
1460
- <span class="cline-any cline-no">&nbsp;</span>
1461
- <span class="cline-any cline-no">&nbsp;</span>
1462
- <span class="cline-any cline-no">&nbsp;</span>
1463
- <span class="cline-any cline-no">&nbsp;</span>
1464
- <span class="cline-any cline-no">&nbsp;</span>
1465
- <span class="cline-any cline-no">&nbsp;</span>
1466
- <span class="cline-any cline-no">&nbsp;</span>
1467
- <span class="cline-any cline-no">&nbsp;</span>
1468
- <span class="cline-any cline-no">&nbsp;</span>
1469
- <span class="cline-any cline-no">&nbsp;</span>
1470
- <span class="cline-any cline-no">&nbsp;</span>
1471
- <span class="cline-any cline-no">&nbsp;</span>
1472
- <span class="cline-any cline-no">&nbsp;</span>
1473
- <span class="cline-any cline-no">&nbsp;</span>
1474
- <span class="cline-any cline-no">&nbsp;</span>
1475
- <span class="cline-any cline-no">&nbsp;</span>
1476
- <span class="cline-any cline-no">&nbsp;</span>
1477
- <span class="cline-any cline-no">&nbsp;</span>
1478
- <span class="cline-any cline-no">&nbsp;</span>
1479
- <span class="cline-any cline-no">&nbsp;</span>
1480
- <span class="cline-any cline-no">&nbsp;</span>
1481
- <span class="cline-any cline-no">&nbsp;</span>
1482
- <span class="cline-any cline-no">&nbsp;</span>
1483
- <span class="cline-any cline-no">&nbsp;</span>
1484
- <span class="cline-any cline-no">&nbsp;</span>
1485
- <span class="cline-any cline-no">&nbsp;</span>
1486
- <span class="cline-any cline-no">&nbsp;</span>
1487
- <span class="cline-any cline-no">&nbsp;</span>
1488
- <span class="cline-any cline-no">&nbsp;</span>
1489
- <span class="cline-any cline-no">&nbsp;</span>
1490
- <span class="cline-any cline-no">&nbsp;</span>
1491
- <span class="cline-any cline-no">&nbsp;</span>
1492
- <span class="cline-any cline-no">&nbsp;</span>
1493
- <span class="cline-any cline-no">&nbsp;</span>
1494
- <span class="cline-any cline-no">&nbsp;</span>
1495
- <span class="cline-any cline-no">&nbsp;</span>
1496
- <span class="cline-any cline-no">&nbsp;</span>
1497
- <span class="cline-any cline-no">&nbsp;</span>
1498
- <span class="cline-any cline-no">&nbsp;</span>
1499
- <span class="cline-any cline-no">&nbsp;</span>
1500
- <span class="cline-any cline-no">&nbsp;</span>
1501
- <span class="cline-any cline-no">&nbsp;</span>
1502
- <span class="cline-any cline-no">&nbsp;</span>
1503
- <span class="cline-any cline-no">&nbsp;</span>
1504
- <span class="cline-any cline-no">&nbsp;</span>
1505
- <span class="cline-any cline-no">&nbsp;</span>
1506
- <span class="cline-any cline-no">&nbsp;</span>
1507
- <span class="cline-any cline-no">&nbsp;</span>
1508
- <span class="cline-any cline-no">&nbsp;</span>
1509
- <span class="cline-any cline-no">&nbsp;</span>
1510
- <span class="cline-any cline-no">&nbsp;</span>
1511
- <span class="cline-any cline-no">&nbsp;</span>
1512
- <span class="cline-any cline-no">&nbsp;</span>
1513
- <span class="cline-any cline-no">&nbsp;</span>
1514
- <span class="cline-any cline-no">&nbsp;</span>
1515
- <span class="cline-any cline-no">&nbsp;</span>
1516
- <span class="cline-any cline-no">&nbsp;</span>
1517
- <span class="cline-any cline-no">&nbsp;</span>
1518
- <span class="cline-any cline-no">&nbsp;</span>
1519
- <span class="cline-any cline-no">&nbsp;</span>
1520
- <span class="cline-any cline-no">&nbsp;</span>
1521
- <span class="cline-any cline-no">&nbsp;</span>
1522
- <span class="cline-any cline-no">&nbsp;</span>
1523
- <span class="cline-any cline-no">&nbsp;</span>
1524
- <span class="cline-any cline-no">&nbsp;</span>
1525
- <span class="cline-any cline-no">&nbsp;</span>
1526
- <span class="cline-any cline-no">&nbsp;</span>
1527
- <span class="cline-any cline-no">&nbsp;</span>
1528
- <span class="cline-any cline-no">&nbsp;</span>
1529
- <span class="cline-any cline-no">&nbsp;</span>
1530
- <span class="cline-any cline-no">&nbsp;</span>
1531
- <span class="cline-any cline-no">&nbsp;</span>
1532
- <span class="cline-any cline-no">&nbsp;</span>
1533
- <span class="cline-any cline-no">&nbsp;</span>
1534
- <span class="cline-any cline-no">&nbsp;</span>
1535
- <span class="cline-any cline-no">&nbsp;</span>
1536
- <span class="cline-any cline-no">&nbsp;</span>
1537
- <span class="cline-any cline-no">&nbsp;</span>
1538
- <span class="cline-any cline-no">&nbsp;</span>
1539
- <span class="cline-any cline-no">&nbsp;</span>
1540
- <span class="cline-any cline-no">&nbsp;</span>
1541
- <span class="cline-any cline-no">&nbsp;</span>
1542
- <span class="cline-any cline-no">&nbsp;</span>
1543
- <span class="cline-any cline-no">&nbsp;</span>
1544
- <span class="cline-any cline-no">&nbsp;</span>
1545
- <span class="cline-any cline-no">&nbsp;</span>
1546
- <span class="cline-any cline-no">&nbsp;</span>
1547
- <span class="cline-any cline-no">&nbsp;</span>
1548
- <span class="cline-any cline-no">&nbsp;</span>
1549
- <span class="cline-any cline-no">&nbsp;</span>
1550
- <span class="cline-any cline-no">&nbsp;</span>
1551
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1556
- <span class="cline-any cline-no">&nbsp;</span>
1557
- <span class="cline-any cline-no">&nbsp;</span>
1558
- <span class="cline-any cline-no">&nbsp;</span>
1559
- <span class="cline-any cline-no">&nbsp;</span>
1560
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1567
- <span class="cline-any cline-no">&nbsp;</span>
1568
- <span class="cline-any cline-no">&nbsp;</span>
1569
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1575
- <span class="cline-any cline-no">&nbsp;</span>
1576
- <span class="cline-any cline-no">&nbsp;</span>
1577
- <span class="cline-any cline-no">&nbsp;</span>
1578
- <span class="cline-any cline-no">&nbsp;</span>
1579
- <span class="cline-any cline-no">&nbsp;</span>
1580
- <span class="cline-any cline-no">&nbsp;</span>
1581
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1585
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1589
- <span class="cline-any cline-no">&nbsp;</span>
1590
- <span class="cline-any cline-no">&nbsp;</span>
1591
- <span class="cline-any cline-no">&nbsp;</span>
1592
- <span class="cline-any cline-no">&nbsp;</span>
1593
- <span class="cline-any cline-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-no">&nbsp;</span>
1597
- <span class="cline-any cline-no">&nbsp;</span>
1598
- <span class="cline-any cline-no">&nbsp;</span>
1599
- <span class="cline-any cline-no">&nbsp;</span>
1600
- <span class="cline-any cline-no">&nbsp;</span>
1601
- <span class="cline-any cline-yes">4x</span>
1602
- <span class="cline-any cline-yes">4x</span>
1603
- <span class="cline-any cline-yes">4x</span>
1604
- <span class="cline-any cline-yes">4x</span>
1605
- <span class="cline-any cline-yes">4x</span>
1606
- <span class="cline-any cline-yes">4x</span>
1607
- <span class="cline-any cline-yes">4x</span>
1608
- <span class="cline-any cline-yes">4x</span>
1609
- <span class="cline-any cline-yes">4x</span>
1610
- <span class="cline-any cline-yes">4x</span>
1611
- <span class="cline-any cline-no">&nbsp;</span>
1612
- <span class="cline-any cline-no">&nbsp;</span>
1613
- <span class="cline-any cline-no">&nbsp;</span>
1614
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1618
- <span class="cline-any cline-yes">4x</span>
1619
- <span class="cline-any cline-yes">4x</span>
1620
- <span class="cline-any cline-yes">4x</span>
1621
- <span class="cline-any cline-yes">4x</span>
1622
- <span class="cline-any cline-yes">4x</span>
1623
- <span class="cline-any cline-yes">4x</span>
1624
- <span class="cline-any cline-yes">4x</span>
1625
- <span class="cline-any cline-yes">4x</span>
1626
- <span class="cline-any cline-no">&nbsp;</span>
1627
- <span class="cline-any cline-no">&nbsp;</span>
1628
- <span class="cline-any cline-no">&nbsp;</span>
1629
- <span class="cline-any cline-no">&nbsp;</span>
1630
- <span class="cline-any cline-yes">4x</span>
1631
- <span class="cline-any cline-no">&nbsp;</span>
1632
- <span class="cline-any cline-no">&nbsp;</span>
1633
- <span class="cline-any cline-no">&nbsp;</span>
1634
- <span class="cline-any cline-no">&nbsp;</span>
1635
- <span class="cline-any cline-no">&nbsp;</span>
1636
- <span class="cline-any cline-no">&nbsp;</span>
1637
- <span class="cline-any cline-no">&nbsp;</span>
1638
- <span class="cline-any cline-no">&nbsp;</span>
1639
- <span class="cline-any cline-no">&nbsp;</span>
1640
- <span class="cline-any cline-no">&nbsp;</span>
1641
- <span class="cline-any cline-no">&nbsp;</span>
1642
- <span class="cline-any cline-no">&nbsp;</span>
1643
- <span class="cline-any cline-no">&nbsp;</span>
1644
- <span class="cline-any cline-no">&nbsp;</span>
1645
- <span class="cline-any cline-no">&nbsp;</span>
1646
- <span class="cline-any cline-yes">4x</span>
1647
- <span class="cline-any cline-yes">1x</span>
1648
- <span class="cline-any cline-yes">1x</span>
1649
- <span class="cline-any cline-no">&nbsp;</span>
1650
- <span class="cline-any cline-no">&nbsp;</span>
1651
- <span class="cline-any cline-no">&nbsp;</span>
1652
- <span class="cline-any cline-no">&nbsp;</span>
1653
- <span class="cline-any cline-no">&nbsp;</span>
1654
- <span class="cline-any cline-no">&nbsp;</span>
1655
- <span class="cline-any cline-no">&nbsp;</span>
1656
- <span class="cline-any cline-no">&nbsp;</span>
1657
- <span class="cline-any cline-no">&nbsp;</span>
1658
- <span class="cline-any cline-no">&nbsp;</span>
1659
- <span class="cline-any cline-no">&nbsp;</span>
1660
- <span class="cline-any cline-no">&nbsp;</span>
1661
- <span class="cline-any cline-no">&nbsp;</span>
1662
- <span class="cline-any cline-no">&nbsp;</span>
1663
- <span class="cline-any cline-no">&nbsp;</span>
1664
- <span class="cline-any cline-no">&nbsp;</span>
1665
- <span class="cline-any cline-no">&nbsp;</span>
1666
- <span class="cline-any cline-no">&nbsp;</span>
1667
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1672
- <span class="cline-any cline-no">&nbsp;</span>
1673
- <span class="cline-any cline-no">&nbsp;</span>
1674
- <span class="cline-any cline-no">&nbsp;</span>
1675
- <span class="cline-any cline-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-yes">1x</span>
1681
- <span class="cline-any cline-yes">1x</span>
1682
- <span class="cline-any cline-no">&nbsp;</span>
1683
- <span class="cline-any cline-no">&nbsp;</span>
1684
- <span class="cline-any cline-no">&nbsp;</span>
1685
- <span class="cline-any cline-no">&nbsp;</span>
1686
- <span class="cline-any cline-no">&nbsp;</span>
1687
- <span class="cline-any cline-no">&nbsp;</span>
1688
- <span class="cline-any cline-no">&nbsp;</span>
1689
- <span class="cline-any cline-no">&nbsp;</span>
1690
- <span class="cline-any cline-no">&nbsp;</span>
1691
- <span class="cline-any cline-no">&nbsp;</span>
1692
- <span class="cline-any cline-no">&nbsp;</span>
1693
- <span class="cline-any cline-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-no">&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-no">&nbsp;</span>
1701
- <span class="cline-any cline-no">&nbsp;</span>
1702
- <span class="cline-any cline-no">&nbsp;</span>
1703
- <span class="cline-any cline-no">&nbsp;</span>
1704
- <span class="cline-any cline-no">&nbsp;</span>
1705
- <span class="cline-any cline-no">&nbsp;</span>
1706
- <span class="cline-any cline-no">&nbsp;</span>
1707
- <span class="cline-any cline-no">&nbsp;</span>
1708
- <span class="cline-any cline-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-no">&nbsp;</span>
1716
- <span class="cline-any cline-no">&nbsp;</span>
1717
- <span class="cline-any cline-yes">1x</span>
1718
- <span class="cline-any cline-yes">1x</span>
1719
- <span class="cline-any cline-no">&nbsp;</span>
1720
- <span class="cline-any cline-no">&nbsp;</span>
1721
- <span class="cline-any cline-no">&nbsp;</span>
1722
- <span class="cline-any cline-no">&nbsp;</span>
1723
- <span class="cline-any cline-no">&nbsp;</span>
1724
- <span class="cline-any cline-no">&nbsp;</span>
1725
- <span class="cline-any cline-no">&nbsp;</span>
1726
- <span class="cline-any cline-no">&nbsp;</span>
1727
- <span class="cline-any cline-no">&nbsp;</span>
1728
- <span class="cline-any cline-no">&nbsp;</span>
1729
- <span class="cline-any cline-no">&nbsp;</span>
1730
- <span class="cline-any cline-no">&nbsp;</span>
1731
- <span class="cline-any cline-no">&nbsp;</span>
1732
- <span class="cline-any cline-no">&nbsp;</span>
1733
- <span class="cline-any cline-no">&nbsp;</span>
1734
- <span class="cline-any cline-no">&nbsp;</span>
1735
- <span class="cline-any cline-no">&nbsp;</span>
1736
- <span class="cline-any cline-no">&nbsp;</span>
1737
- <span class="cline-any cline-no">&nbsp;</span>
1738
- <span class="cline-any cline-no">&nbsp;</span>
1739
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1743
- <span class="cline-any cline-no">&nbsp;</span>
1744
- <span class="cline-any cline-no">&nbsp;</span>
1745
- <span class="cline-any cline-no">&nbsp;</span>
1746
- <span class="cline-any cline-yes">1x</span>
1747
- <span class="cline-any cline-yes">1x</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-no">&nbsp;</span>
1755
- <span class="cline-any cline-no">&nbsp;</span>
1756
- <span class="cline-any cline-no">&nbsp;</span>
1757
- <span class="cline-any cline-no">&nbsp;</span>
1758
- <span class="cline-any cline-no">&nbsp;</span>
1759
- <span class="cline-any cline-no">&nbsp;</span>
1760
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1767
- <span class="cline-any cline-no">&nbsp;</span>
1768
- <span class="cline-any cline-no">&nbsp;</span>
1769
- <span class="cline-any cline-no">&nbsp;</span>
1770
- <span class="cline-any cline-no">&nbsp;</span>
1771
- <span class="cline-any cline-no">&nbsp;</span>
1772
- <span class="cline-any cline-no">&nbsp;</span>
1773
- <span class="cline-any cline-no">&nbsp;</span>
1774
- <span class="cline-any cline-no">&nbsp;</span>
1775
- <span class="cline-any cline-no">&nbsp;</span>
1776
- <span class="cline-any cline-no">&nbsp;</span>
1777
- <span class="cline-any cline-no">&nbsp;</span>
1778
- <span class="cline-any cline-no">&nbsp;</span>
1779
- <span class="cline-any cline-no">&nbsp;</span>
1780
- <span class="cline-any cline-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-no">&nbsp;</span>
1785
- <span class="cline-any cline-no">&nbsp;</span>
1786
- <span class="cline-any cline-yes">1x</span>
1787
- <span class="cline-any cline-yes">1x</span>
1788
- <span class="cline-any cline-no">&nbsp;</span>
1789
- <span class="cline-any cline-no">&nbsp;</span>
1790
- <span class="cline-any cline-no">&nbsp;</span>
1791
- <span class="cline-any cline-no">&nbsp;</span>
1792
- <span class="cline-any cline-no">&nbsp;</span>
1793
- <span class="cline-any cline-no">&nbsp;</span>
1794
- <span class="cline-any cline-no">&nbsp;</span>
1795
- <span class="cline-any cline-no">&nbsp;</span>
1796
- <span class="cline-any cline-no">&nbsp;</span>
1797
- <span class="cline-any cline-no">&nbsp;</span>
1798
- <span class="cline-any cline-no">&nbsp;</span>
1799
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
1805
- <span class="cline-any cline-no">&nbsp;</span>
1806
- <span class="cline-any cline-no">&nbsp;</span>
1807
- <span class="cline-any cline-no">&nbsp;</span>
1808
- <span class="cline-any cline-no">&nbsp;</span>
1809
- <span class="cline-any cline-no">&nbsp;</span>
1810
- <span class="cline-any cline-no">&nbsp;</span>
1811
- <span class="cline-any cline-no">&nbsp;</span>
1812
- <span class="cline-any cline-no">&nbsp;</span>
1813
- <span class="cline-any cline-no">&nbsp;</span>
1814
- <span class="cline-any cline-no">&nbsp;</span>
1815
- <span class="cline-any cline-no">&nbsp;</span>
1816
- <span class="cline-any cline-no">&nbsp;</span>
1817
- <span class="cline-any cline-no">&nbsp;</span>
1818
- <span class="cline-any cline-no">&nbsp;</span>
1819
- <span class="cline-any cline-no">&nbsp;</span>
1820
- <span class="cline-any cline-no">&nbsp;</span>
1821
- <span class="cline-any cline-no">&nbsp;</span>
1822
- <span class="cline-any cline-no">&nbsp;</span>
1823
- <span class="cline-any cline-no">&nbsp;</span>
1824
- <span class="cline-any cline-no">&nbsp;</span>
1825
- <span class="cline-any cline-no">&nbsp;</span>
1826
- <span class="cline-any cline-no">&nbsp;</span>
1827
- <span class="cline-any cline-no">&nbsp;</span>
1828
- <span class="cline-any cline-no">&nbsp;</span>
1829
- <span class="cline-any cline-no">&nbsp;</span>
1830
- <span class="cline-any cline-no">&nbsp;</span>
1831
- <span class="cline-any cline-no">&nbsp;</span>
1832
- <span class="cline-any cline-no">&nbsp;</span>
1833
- <span class="cline-any cline-no">&nbsp;</span>
1834
- <span class="cline-any cline-no">&nbsp;</span>
1835
- <span class="cline-any cline-no">&nbsp;</span>
1836
- <span class="cline-any cline-no">&nbsp;</span>
1837
- <span class="cline-any cline-no">&nbsp;</span>
1838
- <span class="cline-any cline-no">&nbsp;</span>
1839
- <span class="cline-any cline-no">&nbsp;</span>
1840
- <span class="cline-any cline-no">&nbsp;</span>
1841
- <span class="cline-any cline-no">&nbsp;</span>
1842
- <span class="cline-any cline-no">&nbsp;</span>
1843
- <span class="cline-any cline-no">&nbsp;</span>
1844
- <span class="cline-any cline-no">&nbsp;</span>
1845
- <span class="cline-any cline-no">&nbsp;</span>
1846
- <span class="cline-any cline-no">&nbsp;</span>
1847
- <span class="cline-any cline-no">&nbsp;</span>
1848
- <span class="cline-any cline-no">&nbsp;</span>
1849
- <span class="cline-any cline-no">&nbsp;</span>
1850
- <span class="cline-any cline-no">&nbsp;</span>
1851
- <span class="cline-any cline-no">&nbsp;</span>
1852
- <span class="cline-any cline-no">&nbsp;</span>
1853
- <span class="cline-any cline-no">&nbsp;</span>
1854
- <span class="cline-any cline-no">&nbsp;</span>
1855
- <span class="cline-any cline-no">&nbsp;</span>
1856
- <span class="cline-any cline-no">&nbsp;</span>
1857
- <span class="cline-any cline-no">&nbsp;</span>
1858
- <span class="cline-any cline-no">&nbsp;</span>
1859
- <span class="cline-any cline-no">&nbsp;</span>
1860
- <span class="cline-any cline-no">&nbsp;</span>
1861
- <span class="cline-any cline-no">&nbsp;</span>
1862
- <span class="cline-any cline-no">&nbsp;</span>
1863
- <span class="cline-any cline-no">&nbsp;</span>
1864
- <span class="cline-any cline-no">&nbsp;</span>
1865
- <span class="cline-any cline-no">&nbsp;</span>
1866
- <span class="cline-any cline-no">&nbsp;</span>
1867
- <span class="cline-any cline-no">&nbsp;</span>
1868
- <span class="cline-any cline-no">&nbsp;</span>
1869
- <span class="cline-any cline-no">&nbsp;</span>
1870
- <span class="cline-any cline-no">&nbsp;</span>
1871
- <span class="cline-any cline-no">&nbsp;</span>
1872
- <span class="cline-any cline-no">&nbsp;</span>
1873
- <span class="cline-any cline-no">&nbsp;</span>
1874
- <span class="cline-any cline-no">&nbsp;</span>
1875
- <span class="cline-any cline-no">&nbsp;</span>
1876
- <span class="cline-any cline-no">&nbsp;</span>
1877
- <span class="cline-any cline-no">&nbsp;</span>
1878
- <span class="cline-any cline-no">&nbsp;</span>
1879
- <span class="cline-any cline-no">&nbsp;</span>
1880
- <span class="cline-any cline-no">&nbsp;</span>
1881
- <span class="cline-any cline-no">&nbsp;</span>
1882
- <span class="cline-any cline-no">&nbsp;</span>
1883
- <span class="cline-any cline-no">&nbsp;</span>
1884
- <span class="cline-any cline-no">&nbsp;</span>
1885
- <span class="cline-any cline-no">&nbsp;</span>
1886
- <span class="cline-any cline-no">&nbsp;</span>
1887
- <span class="cline-any cline-no">&nbsp;</span>
1888
- <span class="cline-any cline-no">&nbsp;</span>
1889
- <span class="cline-any cline-no">&nbsp;</span>
1890
- <span class="cline-any cline-no">&nbsp;</span>
1891
- <span class="cline-any cline-no">&nbsp;</span>
1892
- <span class="cline-any cline-no">&nbsp;</span>
1893
- <span class="cline-any cline-yes">1x</span>
1894
- <span class="cline-any cline-yes">1x</span>
1895
- <span class="cline-any cline-yes">1x</span>
1896
- <span class="cline-any cline-yes">1x</span>
1897
- <span class="cline-any cline-yes">1x</span>
1898
- <span class="cline-any cline-yes">1x</span>
1899
- <span class="cline-any cline-yes">1x</span>
1900
- <span class="cline-any cline-yes">1x</span>
1901
- <span class="cline-any cline-yes">1x</span>
1902
- <span class="cline-any cline-yes">1x</span>
1903
- <span class="cline-any cline-yes">1x</span>
1904
- <span class="cline-any cline-yes">1x</span>
1905
- <span class="cline-any cline-yes">1x</span>
1906
- <span class="cline-any cline-yes">1x</span>
1907
- <span class="cline-any cline-yes">1x</span>
1908
- <span class="cline-any cline-yes">1x</span>
1909
- <span class="cline-any cline-yes">1x</span>
1910
- <span class="cline-any cline-yes">1x</span>
1911
- <span class="cline-any cline-yes">1x</span>
1912
- <span class="cline-any cline-yes">1x</span>
1913
- <span class="cline-any cline-yes">1x</span>
1914
- <span class="cline-any cline-yes">1x</span>
1915
- <span class="cline-any cline-no">&nbsp;</span>
1916
- <span class="cline-any cline-no">&nbsp;</span>
1917
- <span class="cline-any cline-no">&nbsp;</span>
1918
- <span class="cline-any cline-no">&nbsp;</span>
1919
- <span class="cline-any cline-no">&nbsp;</span>
1920
- <span class="cline-any cline-no">&nbsp;</span>
1921
- <span class="cline-any cline-no">&nbsp;</span>
1922
- <span class="cline-any cline-no">&nbsp;</span>
1923
- <span class="cline-any cline-no">&nbsp;</span>
1924
- <span class="cline-any cline-no">&nbsp;</span>
1925
- <span class="cline-any cline-no">&nbsp;</span>
1926
- <span class="cline-any cline-no">&nbsp;</span>
1927
- <span class="cline-any cline-no">&nbsp;</span>
1928
- <span class="cline-any cline-no">&nbsp;</span>
1929
- <span class="cline-any cline-no">&nbsp;</span>
1930
- <span class="cline-any cline-no">&nbsp;</span>
1931
- <span class="cline-any cline-yes">1x</span>
1932
- <span class="cline-any cline-yes">1x</span>
1933
- <span class="cline-any cline-no">&nbsp;</span>
1934
- <span class="cline-any cline-no">&nbsp;</span>
1935
- <span class="cline-any cline-no">&nbsp;</span>
1936
- <span class="cline-any cline-no">&nbsp;</span>
1937
- <span class="cline-any cline-no">&nbsp;</span>
1938
- <span class="cline-any cline-no">&nbsp;</span>
1939
- <span class="cline-any cline-no">&nbsp;</span>
1940
- <span class="cline-any cline-no">&nbsp;</span>
1941
- <span class="cline-any cline-no">&nbsp;</span>
1942
- <span class="cline-any cline-no">&nbsp;</span>
1943
- <span class="cline-any cline-no">&nbsp;</span>
1944
- <span class="cline-any cline-no">&nbsp;</span>
1945
- <span class="cline-any cline-no">&nbsp;</span>
1946
- <span class="cline-any cline-no">&nbsp;</span>
1947
- <span class="cline-any cline-yes">1x</span>
1948
- <span class="cline-any cline-yes">1x</span>
1949
- <span class="cline-any cline-no">&nbsp;</span>
1950
- <span class="cline-any cline-no">&nbsp;</span>
1951
- <span class="cline-any cline-no">&nbsp;</span>
1952
- <span class="cline-any cline-no">&nbsp;</span>
1953
- <span class="cline-any cline-no">&nbsp;</span>
1954
- <span class="cline-any cline-no">&nbsp;</span>
1955
- <span class="cline-any cline-no">&nbsp;</span>
1956
- <span class="cline-any cline-no">&nbsp;</span>
1957
- <span class="cline-any cline-no">&nbsp;</span>
1958
- <span class="cline-any cline-no">&nbsp;</span>
1959
- <span class="cline-any cline-no">&nbsp;</span>
1960
- <span class="cline-any cline-no">&nbsp;</span>
1961
- <span class="cline-any cline-no">&nbsp;</span>
1962
- <span class="cline-any cline-no">&nbsp;</span>
1963
- <span class="cline-any cline-no">&nbsp;</span>
1964
- <span class="cline-any cline-no">&nbsp;</span>
1965
- <span class="cline-any cline-no">&nbsp;</span>
1966
- <span class="cline-any cline-no">&nbsp;</span>
1967
- <span class="cline-any cline-no">&nbsp;</span>
1968
- <span class="cline-any cline-no">&nbsp;</span>
1969
- <span class="cline-any cline-no">&nbsp;</span>
1970
- <span class="cline-any cline-no">&nbsp;</span>
1971
- <span class="cline-any cline-no">&nbsp;</span>
1972
- <span class="cline-any cline-no">&nbsp;</span>
1973
- <span class="cline-any cline-no">&nbsp;</span>
1974
- <span class="cline-any cline-no">&nbsp;</span>
1975
- <span class="cline-any cline-no">&nbsp;</span>
1976
- <span class="cline-any cline-no">&nbsp;</span>
1977
- <span class="cline-any cline-no">&nbsp;</span>
1978
- <span class="cline-any cline-no">&nbsp;</span>
1979
- <span class="cline-any cline-no">&nbsp;</span>
1980
- <span class="cline-any cline-no">&nbsp;</span>
1981
- <span class="cline-any cline-no">&nbsp;</span>
1982
- <span class="cline-any cline-no">&nbsp;</span>
1983
- <span class="cline-any cline-no">&nbsp;</span>
1984
- <span class="cline-any cline-no">&nbsp;</span>
1985
- <span class="cline-any cline-no">&nbsp;</span>
1986
- <span class="cline-any cline-no">&nbsp;</span>
1987
- <span class="cline-any cline-no">&nbsp;</span>
1988
- <span class="cline-any cline-no">&nbsp;</span>
1989
- <span class="cline-any cline-no">&nbsp;</span>
1990
- <span class="cline-any cline-no">&nbsp;</span>
1991
- <span class="cline-any cline-no">&nbsp;</span>
1992
- <span class="cline-any cline-no">&nbsp;</span>
1993
- <span class="cline-any cline-no">&nbsp;</span>
1994
- <span class="cline-any cline-no">&nbsp;</span>
1995
- <span class="cline-any cline-no">&nbsp;</span>
1996
- <span class="cline-any cline-no">&nbsp;</span>
1997
- <span class="cline-any cline-no">&nbsp;</span>
1998
- <span class="cline-any cline-no">&nbsp;</span>
1999
- <span class="cline-any cline-no">&nbsp;</span>
2000
- <span class="cline-any cline-no">&nbsp;</span>
2001
- <span class="cline-any cline-no">&nbsp;</span>
2002
- <span class="cline-any cline-no">&nbsp;</span>
2003
- <span class="cline-any cline-no">&nbsp;</span>
2004
- <span class="cline-any cline-no">&nbsp;</span>
2005
- <span class="cline-any cline-no">&nbsp;</span>
2006
- <span class="cline-any cline-no">&nbsp;</span>
2007
- <span class="cline-any cline-no">&nbsp;</span>
2008
- <span class="cline-any cline-no">&nbsp;</span>
2009
- <span class="cline-any cline-no">&nbsp;</span>
2010
- <span class="cline-any cline-no">&nbsp;</span>
2011
- <span class="cline-any cline-no">&nbsp;</span>
2012
- <span class="cline-any cline-no">&nbsp;</span>
2013
- <span class="cline-any cline-no">&nbsp;</span>
2014
- <span class="cline-any cline-no">&nbsp;</span>
2015
- <span class="cline-any cline-no">&nbsp;</span>
2016
- <span class="cline-any cline-no">&nbsp;</span>
2017
- <span class="cline-any cline-no">&nbsp;</span>
2018
- <span class="cline-any cline-no">&nbsp;</span>
2019
- <span class="cline-any cline-no">&nbsp;</span>
2020
- <span class="cline-any cline-no">&nbsp;</span>
2021
- <span class="cline-any cline-no">&nbsp;</span>
2022
- <span class="cline-any cline-no">&nbsp;</span>
2023
- <span class="cline-any cline-no">&nbsp;</span>
2024
- <span class="cline-any cline-no">&nbsp;</span>
2025
- <span class="cline-any cline-no">&nbsp;</span>
2026
- <span class="cline-any cline-no">&nbsp;</span>
2027
- <span class="cline-any cline-no">&nbsp;</span>
2028
- <span class="cline-any cline-no">&nbsp;</span>
2029
- <span class="cline-any cline-no">&nbsp;</span>
2030
- <span class="cline-any cline-no">&nbsp;</span>
2031
- <span class="cline-any cline-no">&nbsp;</span>
2032
- <span class="cline-any cline-no">&nbsp;</span>
2033
- <span class="cline-any cline-no">&nbsp;</span>
2034
- <span class="cline-any cline-no">&nbsp;</span>
2035
- <span class="cline-any cline-no">&nbsp;</span>
2036
- <span class="cline-any cline-no">&nbsp;</span>
2037
- <span class="cline-any cline-no">&nbsp;</span>
2038
- <span class="cline-any cline-no">&nbsp;</span>
2039
- <span class="cline-any cline-no">&nbsp;</span>
2040
- <span class="cline-any cline-no">&nbsp;</span>
2041
- <span class="cline-any cline-no">&nbsp;</span>
2042
- <span class="cline-any cline-yes">1x</span>
2043
- <span class="cline-any cline-yes">1x</span>
2044
- <span class="cline-any cline-no">&nbsp;</span>
2045
- <span class="cline-any cline-no">&nbsp;</span>
2046
- <span class="cline-any cline-no">&nbsp;</span>
2047
- <span class="cline-any cline-no">&nbsp;</span>
2048
- <span class="cline-any cline-no">&nbsp;</span>
2049
- <span class="cline-any cline-no">&nbsp;</span>
2050
- <span class="cline-any cline-no">&nbsp;</span>
2051
- <span class="cline-any cline-no">&nbsp;</span>
2052
- <span class="cline-any cline-no">&nbsp;</span>
2053
- <span class="cline-any cline-no">&nbsp;</span>
2054
- <span class="cline-any cline-no">&nbsp;</span>
2055
- <span class="cline-any cline-no">&nbsp;</span>
2056
- <span class="cline-any cline-no">&nbsp;</span>
2057
- <span class="cline-any cline-no">&nbsp;</span>
2058
- <span class="cline-any cline-no">&nbsp;</span>
2059
- <span class="cline-any cline-no">&nbsp;</span>
2060
- <span class="cline-any cline-no">&nbsp;</span>
2061
- <span class="cline-any cline-no">&nbsp;</span>
2062
- <span class="cline-any cline-no">&nbsp;</span>
2063
- <span class="cline-any cline-no">&nbsp;</span>
2064
- <span class="cline-any cline-no">&nbsp;</span>
2065
- <span class="cline-any cline-no">&nbsp;</span>
2066
- <span class="cline-any cline-no">&nbsp;</span>
2067
- <span class="cline-any cline-yes">1x</span>
2068
- <span class="cline-any cline-yes">1x</span>
2069
- <span class="cline-any cline-no">&nbsp;</span>
2070
- <span class="cline-any cline-no">&nbsp;</span>
2071
- <span class="cline-any cline-no">&nbsp;</span>
2072
- <span class="cline-any cline-no">&nbsp;</span>
2073
- <span class="cline-any cline-no">&nbsp;</span>
2074
- <span class="cline-any cline-no">&nbsp;</span>
2075
- <span class="cline-any cline-no">&nbsp;</span>
2076
- <span class="cline-any cline-no">&nbsp;</span>
2077
- <span class="cline-any cline-no">&nbsp;</span>
2078
- <span class="cline-any cline-no">&nbsp;</span>
2079
- <span class="cline-any cline-yes">1x</span>
2080
- <span class="cline-any cline-yes">1x</span>
2081
- <span class="cline-any cline-no">&nbsp;</span>
2082
- <span class="cline-any cline-no">&nbsp;</span>
2083
- <span class="cline-any cline-no">&nbsp;</span>
2084
- <span class="cline-any cline-no">&nbsp;</span>
2085
- <span class="cline-any cline-no">&nbsp;</span>
2086
- <span class="cline-any cline-no">&nbsp;</span>
2087
- <span class="cline-any cline-no">&nbsp;</span>
2088
- <span class="cline-any cline-no">&nbsp;</span>
2089
- <span class="cline-any cline-no">&nbsp;</span>
2090
- <span class="cline-any cline-no">&nbsp;</span>
2091
- <span class="cline-any cline-no">&nbsp;</span>
2092
- <span class="cline-any cline-no">&nbsp;</span>
2093
- <span class="cline-any cline-no">&nbsp;</span>
2094
- <span class="cline-any cline-no">&nbsp;</span>
2095
- <span class="cline-any cline-no">&nbsp;</span>
2096
- <span class="cline-any cline-no">&nbsp;</span>
2097
- <span class="cline-any cline-yes">1x</span>
2098
- <span class="cline-any cline-yes">1x</span>
2099
- <span class="cline-any cline-yes">1x</span>
2100
- <span class="cline-any cline-yes">1x</span>
2101
- <span class="cline-any cline-yes">1x</span>
2102
- <span class="cline-any cline-yes">1x</span>
2103
- <span class="cline-any cline-yes">1x</span>
2104
- <span class="cline-any cline-yes">1x</span>
2105
- <span class="cline-any cline-yes">1x</span>
2106
- <span class="cline-any cline-yes">1x</span>
2107
- <span class="cline-any cline-yes">1x</span>
2108
- <span class="cline-any cline-yes">1x</span>
2109
- <span class="cline-any cline-yes">1x</span>
2110
- <span class="cline-any cline-yes">1x</span>
2111
- <span class="cline-any cline-yes">1x</span>
2112
- <span class="cline-any cline-yes">1x</span>
2113
- <span class="cline-any cline-yes">1x</span>
2114
- <span class="cline-any cline-yes">1x</span>
2115
- <span class="cline-any cline-yes">1x</span>
2116
- <span class="cline-any cline-yes">1x</span>
2117
- <span class="cline-any cline-yes">1x</span>
2118
- <span class="cline-any cline-yes">1x</span>
2119
- <span class="cline-any cline-yes">1x</span>
2120
- <span class="cline-any cline-yes">1x</span>
2121
- <span class="cline-any cline-yes">1x</span>
2122
- <span class="cline-any cline-yes">1x</span>
2123
- <span class="cline-any cline-yes">1x</span>
2124
- <span class="cline-any cline-yes">1x</span>
2125
- <span class="cline-any cline-yes">1x</span>
2126
- <span class="cline-any cline-yes">1x</span>
2127
- <span class="cline-any cline-yes">1x</span>
2128
- <span class="cline-any cline-yes">1x</span>
2129
- <span class="cline-any cline-yes">1x</span>
2130
- <span class="cline-any cline-yes">1x</span>
2131
- <span class="cline-any cline-yes">1x</span>
2132
- <span class="cline-any cline-yes">1x</span>
2133
- <span class="cline-any cline-yes">1x</span>
2134
- <span class="cline-any cline-yes">1x</span>
2135
- <span class="cline-any cline-yes">1x</span>
2136
- <span class="cline-any cline-yes">1x</span>
2137
- <span class="cline-any cline-yes">1x</span>
2138
- <span class="cline-any cline-yes">1x</span>
2139
- <span class="cline-any cline-yes">1x</span>
2140
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">&nbsp;
2141
- import * as SocketIO from 'socket.io';
2142
- &nbsp;
2143
- import {
2144
- DyFM_AnyError, DyFM_Array, DyFM_Error, DyFM_Error_Settings, DyFM_errorFlag, DyFM_Log
2145
- } from '@futdevpro/fsm-dynamo';
2146
- &nbsp;
2147
- &nbsp;
2148
- import {
2149
- DyFM_SocketEvent,
2150
- DyFM_SocketEvent_Key, DyFM_SocketEventPreprocessTask, DyFM_SocketEventTask
2151
- } from '@futdevpro/fsm-dynamo/socket';
2152
- &nbsp;
2153
- import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
2154
- import { DyNTS_SingletonService } from '../../../_services/base/singleton.service';
2155
- import { DyNTS_SocketSecurity } from '../_enums/socket-security.enum';
2156
- import {
2157
- DyNTS_SocketPresence
2158
- } from '../_models/socket-presence.control-model';
2159
- import {
2160
- DyNTS_SocketServerService_Params
2161
- } from '../_models/socket-server-service-params.control-model';
2162
- &nbsp;
2163
- /**
2164
- * You need to define the following functions:
2165
- * ```ts
2166
- * getServiceParams(): DyNTS_SocketServerServiceParams;
2167
- *
2168
- * getIncomingEvents(): DyFM_SocketEvent&lt;any&gt;[];
2169
- *
2170
- * getPresenceFromSubscriptionEventContent(
2171
- * socketSubscription: T_SubscriptionContent,
2172
- * socket: SocketIO.Socket
2173
- * ): Promise&lt;T_Presence&gt;;
2174
- * ```
2175
- */
2176
- export abstract class DyNTS_SocketServerService&lt;
2177
- T_Presence extends DyNTS_SocketPresence = DyNTS_SocketPresence,
2178
- T_SubscriptionContent = any,
2179
- T_ErrorContent = any
2180
- &gt; extends DyNTS_SingletonService {
2181
- &nbsp;
2182
- protected params: DyNTS_SocketServerService_Params;
2183
- <span class="fstat-no" title="function not covered" > get name(): string { return this.params.name; }</span>
2184
- get port(): number { return this.params.port; }
2185
- get security(): DyNTS_SocketSecurity { return this.params.security; }
2186
- <span class="fstat-no" title="function not covered" > get activeSubscriptionsCount(): number { return this.presences.length; }</span>
2187
- &nbsp;
2188
- protected openSocketServer: SocketIO.Server;
2189
- protected secureSocketServer: SocketIO.Server;
2190
- &nbsp;
2191
- /* private connectEvent: DyFM_SocketEvent&lt;SocketIO.Socket&gt;; */
2192
- protected incomingEvents: DyFM_SocketEvent&lt;any&gt;[];
2193
- &nbsp;
2194
- /* private subscriptionEvent: DyFM_SocketEvent&lt;any&gt;; */
2195
- /* private unsubscribeEvent: DyFM_SocketEvent&lt;any&gt;; */
2196
-
2197
- protected presences: T_Presence[] = [];
2198
- &nbsp;
2199
- get logSetup(): boolean { return DyNTS_global_settings.log_settings.setup; }
2200
- get highDetailedLogs(): boolean { return DyNTS_global_settings.log_settings.highDetailedLogs; }
2201
- &nbsp;
2202
- override readonly defaultErrorUserMsg =
2203
- `We encountered an unhandled Socket Server Error, ` +
2204
- `\nplease contact the responsible development team.`;
2205
- &nbsp;
2206
- /* readonly thisLocationStack: string; */
2207
- &nbsp;
2208
- protected constructor(){
2209
- super();
2210
- &nbsp;
2211
- /* this.thisLocationStack = DyNTS_getStackLocation(); */
2212
- &nbsp;
2213
- this.asyncConstructor().catch((error: any) =&gt; {
2214
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2215
- <span class="cstat-no" title="statement not covered" > `Socket Server Service setup failed: "${this.params?.name}" (${this.params?.port})`, </span>
2216
- <span class="cstat-no" title="statement not covered" > error</span>
2217
- <span class="cstat-no" title="statement not covered" > );</span>
2218
- });
2219
- }
2220
- &nbsp;
2221
- /**
2222
- * You need to setup a function that converts subscription event content to presence.
2223
- * You should do authentication and authorization here.
2224
- */
2225
- protected abstract getPresenceFromSubscriptionEventContent(
2226
- socketSubscription: T_SubscriptionContent,
2227
- socket: SocketIO.Socket
2228
- ): Promise&lt;T_Presence&gt;;
2229
- &nbsp;
2230
- private async asyncConstructor(): Promise&lt;void&gt; {
2231
- try {
2232
- this.params = this.getServiceParams();
2233
- this.incomingEvents = this.getIncomingEvents()<span class="branch-0 cbranch-no" title="branch not covered" > ?? [];</span>
2234
- &nbsp;
2235
- await this.prepareEvents();
2236
- &nbsp;
2237
- if (this.logSetup) <span class="branch-0 cbranch-no" title="branch not covered" >console.log(</span>
2238
- <span class="cstat-no" title="statement not covered" > `Socket Server Service setup done: "${this.params.name}" (${this.params.port}) ` +</span>
2239
- <span class="cstat-no" title="statement not covered" > `security: ${this.params.security}\n`</span>
2240
- <span class="cstat-no" title="statement not covered" > );</span>
2241
- } <span class="branch-0 cbranch-no" title="branch not covered" >catch (error) {</span>
2242
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2243
- <span class="cstat-no" title="statement not covered" > `Socket Server Service setup failed: "${this.params?.name}" (${this.params?.port})`, </span>
2244
- <span class="cstat-no" title="statement not covered" > error</span>
2245
- <span class="cstat-no" title="statement not covered" > );</span>
2246
- <span class="cstat-no" title="statement not covered" ></span>
2247
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2248
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-GPFSRC0`,</span>
2249
- <span class="cstat-no" title="statement not covered" > error: error, </span>
2250
- <span class="cstat-no" title="statement not covered" > });</span>
2251
- <span class="cstat-no" title="statement not covered" > }</span>
2252
- }
2253
- &nbsp;
2254
- /**
2255
- * You must setup events and required services for this function
2256
- */
2257
- private async prepareEvents(): Promise&lt;void&gt; {
2258
- try {
2259
- /** Setup connect event */
2260
- /* const connectEventIndex = this.incomingEvents.findIndex(
2261
- (event: DyFM_SocketEvent&lt;any&gt;) =&gt;
2262
- event.eventKey === DyFM_SocketEvent_Key.connection
2263
- );
2264
- &nbsp;
2265
- if (0 &lt;= connectEventIndex) {
2266
- this.connectEvent = this.incomingEvents.splice(connectEventIndex)[0];
2267
- } else {
2268
- this.connectEvent = new DyFM_SocketEvent({
2269
- eventKey: DyFM_SocketEvent_Key.connection,
2270
- });
2271
- }
2272
- this.connectEvent.serviceName = this.params.name; */
2273
- &nbsp;
2274
- if (!this.getPresenceFromSubscriptionEventContent) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
2275
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2276
- <span class="cstat-no" title="statement not covered" > error: new Error('getPresenceFromSubscriptionEventContent must be set'),</span>
2277
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-PPE1`,</span>
2278
- <span class="cstat-no" title="statement not covered" > });</span>
2279
- <span class="cstat-no" title="statement not covered" > }</span>
2280
- &nbsp;
2281
- if (!this.getSubscriptionTasks) {
2282
- DyFM_Log.warn(
2283
- `You should not set the subscription event, ` +
2284
- `in case you need additional steps for your subscriptions.`,
2285
- `${this.params.name} (${this.params.port})`
2286
- );
2287
- }
2288
- &nbsp;
2289
- if (this.incomingEvents.find(
2290
- (event: DyFM_SocketEvent&lt;any&gt;) =&gt;
2291
- <span class="cstat-no" title="statement not covered" > event.eventKey === DyFM_SocketEvent_Key.subscribe</span>
2292
- )) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
2293
- <span class="cstat-no" title="statement not covered" > DyFM_Log.warn(</span>
2294
- <span class="cstat-no" title="statement not covered" > `You need to use getSubscriptionTasks() ` +</span>
2295
- <span class="cstat-no" title="statement not covered" > `instead of setting the subscribe event in getIncomingEvents().`,</span>
2296
- <span class="cstat-no" title="statement not covered" > `${this.params.name} (${this.params.port})`</span>
2297
- <span class="cstat-no" title="statement not covered" > );</span>
2298
- <span class="cstat-no" title="statement not covered" > }</span>
2299
- &nbsp;
2300
- if (!this.incomingEvents.find(
2301
- (event: DyFM_SocketEvent&lt;any&gt;) =&gt;
2302
- <span class="cstat-no" title="statement not covered" > event.eventKey === DyFM_SocketEvent_Key.unsubscribe</span>
2303
- )) {
2304
- DyFM_Log.warn(
2305
- `You should not set the unsubscribe event, ` +
2306
- `in case you need additional steps for your unsubscribe.`,
2307
- `${this.params.name} (${this.params.port})`
2308
- );
2309
- }
2310
- &nbsp;
2311
- if (this.incomingEvents.find(
2312
- (event: DyFM_SocketEvent&lt;any&gt;) =&gt; !event.eventKey
2313
- )) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
2314
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2315
- <span class="cstat-no" title="statement not covered" > error: new Error('eventKey must be set'),</span>
2316
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-PPE2`,</span>
2317
- <span class="cstat-no" title="statement not covered" > });</span>
2318
- <span class="cstat-no" title="statement not covered" > }</span>
2319
- &nbsp;
2320
- this.incomingEvents.push(
2321
- new DyFM_SocketEvent({
2322
- eventKey: DyFM_SocketEvent_Key.disconnect,
2323
- tasks: [
2324
- <span class="fstat-no" title="function not covered" > async (socket: SocketIO.Socket, issuer: string) =&gt; </span>
2325
- this.disconnectBaseTask(socket, issuer),
2326
- ],
2327
- })
2328
- );
2329
-
2330
- if (this.errorHandling) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
2331
- <span class="cstat-no" title="statement not covered" > this.incomingEvents.push(new DyFM_SocketEvent&lt;T_ErrorContent&gt;({</span>
2332
- <span class="cstat-no" title="statement not covered" > serviceName: this.params.name,</span>
2333
- <span class="cstat-no" title="statement not covered" > eventKey: DyFM_SocketEvent_Key.error,</span>
2334
- <span class="cstat-no" title="statement not covered" > tasks: [</span>
2335
- <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" > async (content: any) =&gt; this.errorHandling(content),</span></span>
2336
- <span class="cstat-no" title="statement not covered" > ],</span>
2337
- <span class="cstat-no" title="statement not covered" > }));</span>
2338
- } else {
2339
- DyFM_Log.warn(
2340
- `You should not set the error event, ` +
2341
- `in case you need additional steps for your error.`,
2342
- `${this.params.name} (${this.params.port})`
2343
- );
2344
- &nbsp;
2345
- this.incomingEvents.push(new DyFM_SocketEvent&lt;T_ErrorContent&gt;({
2346
- serviceName: this.params.name,
2347
- eventKey: DyFM_SocketEvent_Key.error,
2348
- tasks: [
2349
- <span class="fstat-no" title="function not covered" > async (content: any) =&gt; {</span>
2350
- <span class="cstat-no" title="statement not covered" > if (content instanceof DyFM_Error) {</span>
2351
- <span class="cstat-no" title="statement not covered" > content.logSimple(`=--&gt; socket-client (${this.params.name}) ERROR`);</span>
2352
- <span class="cstat-no" title="statement not covered" > } else {</span>
2353
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(`=--&gt; socket-client (${this.params.name}) ERROR:`, content);</span>
2354
- <span class="cstat-no" title="statement not covered" > }</span>
2355
- <span class="cstat-no" title="statement not covered" > }</span>
2356
- ],
2357
- }));
2358
- }
2359
-
2360
- // Merge incoming events of the same eventKey
2361
- const eventKeys = this.incomingEvents.map(
2362
- (event: DyFM_SocketEvent&lt;any&gt;) =&gt; event.eventKey
2363
- ).filter(
2364
- (eventKey: string, index: number, self: string[]) =&gt;
2365
- self.indexOf(eventKey) === index
2366
- );
2367
- const mergedEvents: DyFM_SocketEvent&lt;any&gt;[] = [];
2368
- eventKeys.forEach((eventKey: string) =&gt; {
2369
- const events = this.incomingEvents.filter(
2370
- (event: DyFM_SocketEvent&lt;any&gt;) =&gt; event.eventKey === eventKey
2371
- );
2372
- &nbsp;
2373
- mergedEvents.push(new DyFM_SocketEvent({
2374
- eventKey: eventKey,
2375
- preProcesses: events.map((event: DyFM_SocketEvent&lt;any&gt;) =&gt; event.preProcesses).flat(),
2376
- tasks: events.map((event: DyFM_SocketEvent&lt;any&gt;) =&gt; event.tasks).flat(),
2377
- }));
2378
- });
2379
- this.incomingEvents = mergedEvents;
2380
-
2381
- if (DyNTS_global_settings.log_settings.setup) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
2382
- <span class="cstat-no" title="statement not covered" > DyFM_Log.log(</span>
2383
- <span class="cstat-no" title="statement not covered" > `Socket Server Service - Event Preparation setup done: ` +</span>
2384
- <span class="cstat-no" title="statement not covered" > `"${this.params?.name}" (${this.params?.port})` + </span>
2385
- <span class="cstat-no" title="statement not covered" > `\nincomingEvents:`, this.incomingEvents.map(</span>
2386
- <span class="cstat-no" title="statement not covered" > (event: DyFM_SocketEvent&lt;any&gt;) =&gt; </span>
2387
- <span class="cstat-no" title="statement not covered" > `\n\t"${event.eventKey}": preProcesses: ${event.preProcesses?.length} ` +</span>
2388
- <span class="cstat-no" title="statement not covered" > `tasks: ${event.tasks?.length}`</span>
2389
- <span class="cstat-no" title="statement not covered" > )</span>
2390
- <span class="cstat-no" title="statement not covered" > );</span>
2391
- <span class="cstat-no" title="statement not covered" > }</span>
2392
- &nbsp;
2393
- // Set incoming events serviceName
2394
- this.incomingEvents.forEach((event: DyFM_SocketEvent&lt;any&gt;) =&gt; {
2395
- event.serviceName = this.params.name;
2396
- });
2397
- } <span class="branch-0 cbranch-no" title="branch not covered" >catch (error) {</span>
2398
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2399
- <span class="cstat-no" title="statement not covered" > `Socket Server Service - Event Preparation setup failed: ` +</span>
2400
- <span class="cstat-no" title="statement not covered" > `"${this.params?.name}" (${this.params?.port})`, </span>
2401
- <span class="cstat-no" title="statement not covered" > error</span>
2402
- <span class="cstat-no" title="statement not covered" > );</span>
2403
- <span class="cstat-no" title="statement not covered" ></span>
2404
- <span class="cstat-no" title="statement not covered" > throw error;</span>
2405
- <span class="cstat-no" title="statement not covered" > }</span>
2406
- }
2407
- &nbsp;
2408
- // eslint-disable-next-line max-lines-per-function
2409
- async setupSocketServer(
2410
- newSocketServer: SocketIO.Server,
2411
- security: DyNTS_SocketSecurity.open | DyNTS_SocketSecurity.secure,
2412
- successCallback: () =&gt; void
2413
- ): Promise&lt;SocketIO.Server&gt; {
2414
- try {
2415
- if (this.highDetailedLogs) <span class="branch-0 cbranch-no" title="branch not covered" >console.log('\nfn:. setupSocketServer');</span>
2416
- &nbsp;
2417
- newSocketServer.on(DyFM_SocketEvent_Key.incomingNewConnection, async (socket: SocketIO.Socket) =&gt; {
2418
- <span class="cstat-no" title="statement not covered" > try {</span>
2419
- <span class="cstat-no" title="statement not covered" > let issuer: string;</span>
2420
- <span class="cstat-no" title="statement not covered" ></span>
2421
- <span class="cstat-no" title="statement not covered" > /* await this.connectEvent.executeEventTasks(socket); */</span>
2422
- <span class="cstat-no" title="statement not covered" > </span>
2423
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(</span>
2424
- <span class="cstat-no" title="statement not covered" > this.incomingEvents.filter(</span>
2425
- <span class="cstat-no" title="statement not covered" > (event: DyFM_SocketEvent&lt;any&gt;) =&gt; </span>
2426
- <span class="cstat-no" title="statement not covered" > event.eventKey === DyFM_SocketEvent_Key.incomingNewConnection</span>
2427
- <span class="cstat-no" title="statement not covered" > ),</span>
2428
- <span class="cstat-no" title="statement not covered" > async (event: DyFM_SocketEvent&lt;any&gt;) =&gt; {</span>
2429
- <span class="cstat-no" title="statement not covered" > await event.executeEventTasks(socket);</span>
2430
- <span class="cstat-no" title="statement not covered" > }</span>
2431
- <span class="cstat-no" title="statement not covered" > );</span>
2432
- <span class="cstat-no" title="statement not covered" ></span>
2433
- <span class="cstat-no" title="statement not covered" ></span>
2434
- <span class="cstat-no" title="statement not covered" > if (this.getPresenceFromSubscriptionEventContent) {</span>
2435
- <span class="cstat-no" title="statement not covered" > socket.on(</span>
2436
- <span class="cstat-no" title="statement not covered" > DyFM_SocketEvent_Key.subscribe, </span>
2437
- <span class="cstat-no" title="statement not covered" > async (content: any) =&gt; {</span>
2438
- <span class="cstat-no" title="statement not covered" > let presence: T_Presence;</span>
2439
- <span class="cstat-no" title="statement not covered" ></span>
2440
- <span class="cstat-no" title="statement not covered" > try {</span>
2441
- <span class="cstat-no" title="statement not covered" > /** </span>
2442
- <span class="cstat-no" title="statement not covered" > * usually socket logs are in event.executeEventTasks(), </span>
2443
- <span class="cstat-no" title="statement not covered" > * but subscribe event is an exception from this, </span>
2444
- <span class="cstat-no" title="statement not covered" > * to be able to check content before getPresenceFromSubscriptionEventContent </span>
2445
- <span class="cstat-no" title="statement not covered" > */</span>
2446
- <span class="cstat-no" title="statement not covered" > if (DyNTS_global_settings.log_settings.socket_eventContent) {</span>
2447
- <span class="cstat-no" title="statement not covered" > DyFM_Log.log(</span>
2448
- <span class="cstat-no" title="statement not covered" > `--=&gt; incoming socket (${this.params.name}) ` +</span>
2449
- <span class="cstat-no" title="statement not covered" > `event: "${DyFM_SocketEvent_Key.subscribe}";` +</span>
2450
- <span class="cstat-no" title="statement not covered" > `\ncontent:`, content</span>
2451
- <span class="cstat-no" title="statement not covered" > );</span>
2452
- <span class="cstat-no" title="statement not covered" > } else {</span>
2453
- <span class="cstat-no" title="statement not covered" > DyFM_Log.log(</span>
2454
- <span class="cstat-no" title="statement not covered" > `--=&gt; incoming socket (${this.params.name}) ` +</span>
2455
- <span class="cstat-no" title="statement not covered" > `event: "${DyFM_SocketEvent_Key.subscribe}"`</span>
2456
- <span class="cstat-no" title="statement not covered" > );</span>
2457
- <span class="cstat-no" title="statement not covered" > }</span>
2458
- <span class="cstat-no" title="statement not covered" ></span>
2459
- <span class="cstat-no" title="statement not covered" > presence = await this.getPresenceFromSubscriptionEventContent(</span>
2460
- <span class="cstat-no" title="statement not covered" > content, socket</span>
2461
- <span class="cstat-no" title="statement not covered" > );</span>
2462
- <span class="cstat-no" title="statement not covered" ></span>
2463
- <span class="cstat-no" title="statement not covered" > presence.serviceName = this.params.name;</span>
2464
- <span class="cstat-no" title="statement not covered" > issuer = presence.issuerLocalId;</span>
2465
- <span class="cstat-no" title="statement not covered" > </span>
2466
- <span class="cstat-no" title="statement not covered" > this.addSocketToPresence(presence);</span>
2467
- <span class="cstat-no" title="statement not covered" > /* await this.subscriptionEvent.executeEventTasks(content, issuer); */</span>
2468
- <span class="cstat-no" title="statement not covered" > </span>
2469
- <span class="cstat-no" title="statement not covered" > if (this.getSubscriptionTasks) {</span>
2470
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(</span>
2471
- <span class="cstat-no" title="statement not covered" > this.getSubscriptionTasks(), </span>
2472
- <span class="cstat-no" title="statement not covered" > async (task: DyFM_SocketEventTask&lt;T_SubscriptionContent&gt;) =&gt; {</span>
2473
- <span class="cstat-no" title="statement not covered" > await task(content, issuer);</span>
2474
- <span class="cstat-no" title="statement not covered" > }</span>
2475
- <span class="cstat-no" title="statement not covered" > );</span>
2476
- <span class="cstat-no" title="statement not covered" > }</span>
2477
- <span class="cstat-no" title="statement not covered" ></span>
2478
- <span class="cstat-no" title="statement not covered" > socket.emit(</span>
2479
- <span class="cstat-no" title="statement not covered" > DyFM_SocketEvent_Key.subscriptionSuccessful, </span>
2480
- <span class="cstat-no" title="statement not covered" > 'subscribe was successful', </span>
2481
- <span class="cstat-no" title="statement not covered" > error =&gt; {</span>
2482
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2483
- <span class="cstat-no" title="statement not covered" > `Emitting subscriptionSuccessful event failed!` +</span>
2484
- <span class="cstat-no" title="statement not covered" > `\nerror:`, error</span>
2485
- <span class="cstat-no" title="statement not covered" > );</span>
2486
- <span class="cstat-no" title="statement not covered" > }</span>
2487
- <span class="cstat-no" title="statement not covered" > );</span>
2488
- <span class="cstat-no" title="statement not covered" > </span>
2489
- <span class="cstat-no" title="statement not covered" > DyFM_Log.success(</span>
2490
- <span class="cstat-no" title="statement not covered" > `&lt;-==&gt; socket(${this.params.name}) subscription successful (${issuer})`</span>
2491
- <span class="cstat-no" title="statement not covered" > );</span>
2492
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2493
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
2494
- <span class="cstat-no" title="statement not covered" > error.logShort(</span>
2495
- <span class="cstat-no" title="statement not covered" > `Socket Subscription failed: "${this.params.name}" ` +</span>
2496
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`</span>
2497
- <span class="cstat-no" title="statement not covered" > )</span>
2498
- <span class="cstat-no" title="statement not covered" > } else if (DyNTS_global_settings.log_settings.socket_eventContent) {</span>
2499
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2500
- <span class="cstat-no" title="statement not covered" > `Socket Subscription failed: "${this.params.name}" ` +</span>
2501
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`, </span>
2502
- <span class="cstat-no" title="statement not covered" > /* `${this.thisLocationStack}`, */</span>
2503
- <span class="cstat-no" title="statement not covered" > error</span>
2504
- <span class="cstat-no" title="statement not covered" > );</span>
2505
- <span class="cstat-no" title="statement not covered" > } else {</span>
2506
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2507
- <span class="cstat-no" title="statement not covered" > `Socket Subscription failed: "${this.params.name}" ` ,</span>
2508
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`,</span>
2509
- <span class="cstat-no" title="statement not covered" > /* `${this.thisLocationStack}` */</span>
2510
- <span class="cstat-no" title="statement not covered" > );</span>
2511
- <span class="cstat-no" title="statement not covered" > }</span>
2512
- <span class="cstat-no" title="statement not covered" > await this.closeSocket(socket, issuer, error);</span>
2513
- <span class="cstat-no" title="statement not covered" > }</span>
2514
- <span class="cstat-no" title="statement not covered" > }</span>
2515
- <span class="cstat-no" title="statement not covered" > );</span>
2516
- <span class="cstat-no" title="statement not covered" > </span>
2517
- <span class="cstat-no" title="statement not covered" > socket.on(</span>
2518
- <span class="cstat-no" title="statement not covered" > DyFM_SocketEvent_Key.unsubscribe, </span>
2519
- <span class="cstat-no" title="statement not covered" > async (issuer: string) =&gt; {</span>
2520
- <span class="cstat-no" title="statement not covered" > try {</span>
2521
- <span class="cstat-no" title="statement not covered" > /** </span>
2522
- <span class="cstat-no" title="statement not covered" > * usually socket logs are in event.executeEventTasks(), </span>
2523
- <span class="cstat-no" title="statement not covered" > * but unsubscribe event is an exception from this, </span>
2524
- <span class="cstat-no" title="statement not covered" > * to be able to check content before getPresenceFromSubscriptionEventContent </span>
2525
- <span class="cstat-no" title="statement not covered" > */</span>
2526
- <span class="cstat-no" title="statement not covered" > if (DyNTS_global_settings.log_settings.socket_eventContent) {</span>
2527
- <span class="cstat-no" title="statement not covered" > DyFM_Log.log(</span>
2528
- <span class="cstat-no" title="statement not covered" > `--=&gt; incoming socket (${this.params.name}) ` +</span>
2529
- <span class="cstat-no" title="statement not covered" > `event: ${DyFM_SocketEvent_Key.unsubscribe};` +</span>
2530
- <span class="cstat-no" title="statement not covered" > `\ncontent:`, issuer</span>
2531
- <span class="cstat-no" title="statement not covered" > );</span>
2532
- <span class="cstat-no" title="statement not covered" > } else {</span>
2533
- <span class="cstat-no" title="statement not covered" > DyFM_Log.log(</span>
2534
- <span class="cstat-no" title="statement not covered" > `--=&gt; incoming socket (${this.params.name}) ` +</span>
2535
- <span class="cstat-no" title="statement not covered" > `event: ${DyFM_SocketEvent_Key.unsubscribe}`</span>
2536
- <span class="cstat-no" title="statement not covered" > );</span>
2537
- <span class="cstat-no" title="statement not covered" > }</span>
2538
- <span class="cstat-no" title="statement not covered" ></span>
2539
- <span class="cstat-no" title="statement not covered" > /* await this.unsubscribeEvent.executeEventTasks(null, issuer); */</span>
2540
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(</span>
2541
- <span class="cstat-no" title="statement not covered" > this.incomingEvents.filter(</span>
2542
- <span class="cstat-no" title="statement not covered" > (event: DyFM_SocketEvent&lt;any&gt;) =&gt; </span>
2543
- <span class="cstat-no" title="statement not covered" > event.eventKey === DyFM_SocketEvent_Key.unsubscribe</span>
2544
- <span class="cstat-no" title="statement not covered" > ),</span>
2545
- <span class="cstat-no" title="statement not covered" > async (event: DyFM_SocketEvent&lt;any&gt;) =&gt; {</span>
2546
- <span class="cstat-no" title="statement not covered" > await event.executeEventTasks(null, issuer);</span>
2547
- <span class="cstat-no" title="statement not covered" > }</span>
2548
- <span class="cstat-no" title="statement not covered" > );</span>
2549
- <span class="cstat-no" title="statement not covered" > </span>
2550
- <span class="cstat-no" title="statement not covered" > this.removeSubscription(socket, issuer);</span>
2551
- <span class="cstat-no" title="statement not covered" ></span>
2552
- <span class="cstat-no" title="statement not covered" > socket.emit(</span>
2553
- <span class="cstat-no" title="statement not covered" > DyFM_SocketEvent_Key.unsubscribeSuccessful, </span>
2554
- <span class="cstat-no" title="statement not covered" > 'unsubscribe was successful', </span>
2555
- <span class="cstat-no" title="statement not covered" > error =&gt; {</span>
2556
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2557
- <span class="cstat-no" title="statement not covered" > `Emitting unsubscribeSuccessful event failed!` +</span>
2558
- <span class="cstat-no" title="statement not covered" > `\nerror:`, error</span>
2559
- <span class="cstat-no" title="statement not covered" > );</span>
2560
- <span class="cstat-no" title="statement not covered" > }</span>
2561
- <span class="cstat-no" title="statement not covered" > );</span>
2562
- <span class="cstat-no" title="statement not covered" > </span>
2563
- <span class="cstat-no" title="statement not covered" > DyFM_Log.success(</span>
2564
- <span class="cstat-no" title="statement not covered" > `&lt; x &gt; socket(${this.params.name}) unsubscribe successful (${issuer})`</span>
2565
- <span class="cstat-no" title="statement not covered" > );</span>
2566
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2567
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
2568
- <span class="cstat-no" title="statement not covered" > error.logSimple(</span>
2569
- <span class="cstat-no" title="statement not covered" > `Socket Unsubscription failed: "${this.params.name}" ` +</span>
2570
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`</span>
2571
- <span class="cstat-no" title="statement not covered" > )</span>
2572
- <span class="cstat-no" title="statement not covered" > } else if (DyNTS_global_settings.log_settings.socket_eventContent) {</span>
2573
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2574
- <span class="cstat-no" title="statement not covered" > `Socket unsubscribe failed: "${this.params.name}" ` ,</span>
2575
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`, </span>
2576
- <span class="cstat-no" title="statement not covered" > error</span>
2577
- <span class="cstat-no" title="statement not covered" > );</span>
2578
- <span class="cstat-no" title="statement not covered" > } else {</span>
2579
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2580
- <span class="cstat-no" title="statement not covered" > `Socket unsubscribe failed: "${this.params.name}" ` ,</span>
2581
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`</span>
2582
- <span class="cstat-no" title="statement not covered" > );</span>
2583
- <span class="cstat-no" title="statement not covered" > }</span>
2584
- <span class="cstat-no" title="statement not covered" > socket.emit(DyFM_SocketEvent_Key.error, error);</span>
2585
- <span class="cstat-no" title="statement not covered" > this.removeSubscription(socket, issuer);</span>
2586
- <span class="cstat-no" title="statement not covered" > }</span>
2587
- <span class="cstat-no" title="statement not covered" > }</span>
2588
- <span class="cstat-no" title="statement not covered" > );</span>
2589
- <span class="cstat-no" title="statement not covered" > }</span>
2590
- <span class="cstat-no" title="statement not covered" ></span>
2591
- <span class="cstat-no" title="statement not covered" > this.incomingEvents.filter(</span>
2592
- <span class="cstat-no" title="statement not covered" > (event: DyFM_SocketEvent&lt;any&gt;) =&gt; </span>
2593
- <span class="cstat-no" title="statement not covered" > event.eventKey !== DyFM_SocketEvent_Key.incomingNewConnection &amp;&amp;</span>
2594
- <span class="cstat-no" title="statement not covered" > event.eventKey !== DyFM_SocketEvent_Key.subscribe &amp;&amp;</span>
2595
- <span class="cstat-no" title="statement not covered" > event.eventKey !== DyFM_SocketEvent_Key.unsubscribe</span>
2596
- <span class="cstat-no" title="statement not covered" > ).forEach((event: DyFM_SocketEvent&lt;any&gt;) =&gt; {</span>
2597
- <span class="cstat-no" title="statement not covered" > socket.on(</span>
2598
- <span class="cstat-no" title="statement not covered" > event.eventKey, </span>
2599
- <span class="cstat-no" title="statement not covered" > async (content: any) =&gt; { </span>
2600
- <span class="cstat-no" title="statement not covered" > try {</span>
2601
- <span class="cstat-no" title="statement not covered" > await event.executeEventTasks(content, issuer);</span>
2602
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2603
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
2604
- <span class="cstat-no" title="statement not covered" > error.logSimple(</span>
2605
- <span class="cstat-no" title="statement not covered" > `Socket Event failed: "${this.params.name}" (${this.params.port})`</span>
2606
- <span class="cstat-no" title="statement not covered" > )</span>
2607
- <span class="cstat-no" title="statement not covered" > } else {</span>
2608
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2609
- <span class="cstat-no" title="statement not covered" > `Socket Event failed: "${this.params.name}" (${this.params.port})`, </span>
2610
- <span class="cstat-no" title="statement not covered" > error</span>
2611
- <span class="cstat-no" title="statement not covered" > );</span>
2612
- <span class="cstat-no" title="statement not covered" > }</span>
2613
- <span class="cstat-no" title="statement not covered" > socket.emit(DyFM_SocketEvent_Key.error, error);</span>
2614
- <span class="cstat-no" title="statement not covered" > }</span>
2615
- <span class="cstat-no" title="statement not covered" > }</span>
2616
- <span class="cstat-no" title="statement not covered" > );</span>
2617
- <span class="cstat-no" title="statement not covered" > });</span>
2618
- <span class="cstat-no" title="statement not covered" ></span>
2619
- <span class="cstat-no" title="statement not covered" > if (DyNTS_global_settings.log_settings.socket_mainEvents) {</span>
2620
- <span class="cstat-no" title="statement not covered" > DyFM_Log.success(`&lt; &gt; socket(${this.params.name}): new CONNECTION established`);</span>
2621
- <span class="cstat-no" title="statement not covered" > }</span>
2622
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2623
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
2624
- <span class="cstat-no" title="statement not covered" > error.logSimple(</span>
2625
- <span class="cstat-no" title="statement not covered" > `Socket Connection failed: "${this.params.name}" ` +</span>
2626
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`</span>
2627
- <span class="cstat-no" title="statement not covered" > )</span>
2628
- <span class="cstat-no" title="statement not covered" > } else {</span>
2629
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2630
- <span class="cstat-no" title="statement not covered" > `Socket Connection failed: "${this.params.name}" ` +</span>
2631
- <span class="cstat-no" title="statement not covered" > `(${this.params.port}) will disconnect now...`, </span>
2632
- <span class="cstat-no" title="statement not covered" > error</span>
2633
- <span class="cstat-no" title="statement not covered" > );</span>
2634
- <span class="cstat-no" title="statement not covered" > }</span>
2635
- <span class="cstat-no" title="statement not covered" ></span>
2636
- <span class="cstat-no" title="statement not covered" > await this.closeSocket(socket, `${this.params.name} on connection error`, error);</span>
2637
- <span class="cstat-no" title="statement not covered" > }</span>
2638
- });
2639
-
2640
- try {
2641
- newSocketServer.listen(this.params.port);
2642
-
2643
- DyFM_Log.success(
2644
- `\nsocket server setup finished: "${this.params.name}"` +
2645
- `\nsocket server listening on port: "${this.params.port}"`
2646
- );
2647
- } <span class="branch-0 cbranch-no" title="branch not covered" >catch (listenError) {</span>
2648
- <span class="cstat-no" title="statement not covered" > const errorMessage = `Failed to bind socket server "${this.params.name}" to port ${this.params.port}. ` +</span>
2649
- <span class="cstat-no" title="statement not covered" > `This could be due to port already in use or insufficient permissions. ` +</span>
2650
- <span class="cstat-no" title="statement not covered" > `Please ensure the port is available and try again.`;</span>
2651
- <span class="cstat-no" title="statement not covered" > </span>
2652
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(errorMessage, listenError);</span>
2653
- <span class="cstat-no" title="statement not covered" > throw new Error(errorMessage);</span>
2654
- <span class="cstat-no" title="statement not covered" > }</span>
2655
- &nbsp;
2656
- successCallback();
2657
-
2658
- if (security === DyNTS_SocketSecurity.open) {
2659
- this.openSocketServer = newSocketServer;
2660
- &nbsp;
2661
- return this.openSocketServer;
2662
- }<span class="branch-0 cbranch-no" title="branch not covered" > else {</span>
2663
- <span class="cstat-no" title="statement not covered" > this.secureSocketServer = newSocketServer;</span>
2664
- <span class="cstat-no" title="statement not covered" ></span>
2665
- <span class="cstat-no" title="statement not covered" > return this.secureSocketServer;</span>
2666
- <span class="cstat-no" title="statement not covered" > }</span>
2667
- } <span class="branch-0 cbranch-no" title="branch not covered" >catch (error) {</span>
2668
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
2669
- <span class="cstat-no" title="statement not covered" > error.logSimple(</span>
2670
- <span class="cstat-no" title="statement not covered" > `Socket Server Service - Deep Setup failed: "${this.params?.name}" ` +</span>
2671
- <span class="cstat-no" title="statement not covered" > `(${this.params?.port})`</span>
2672
- <span class="cstat-no" title="statement not covered" > )</span>
2673
- <span class="cstat-no" title="statement not covered" > } else {</span>
2674
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2675
- <span class="cstat-no" title="statement not covered" > `Socket Server Service - Deep Setup failed: "${this.params?.name}" ` +</span>
2676
- <span class="cstat-no" title="statement not covered" > `(${this.params?.port})`, </span>
2677
- <span class="cstat-no" title="statement not covered" > error</span>
2678
- <span class="cstat-no" title="statement not covered" > );</span>
2679
- <span class="cstat-no" title="statement not covered" > }</span>
2680
- <span class="cstat-no" title="statement not covered" ></span>
2681
- <span class="cstat-no" title="statement not covered" > throw error;</span>
2682
- <span class="cstat-no" title="statement not covered" > }</span>
2683
- }
2684
- &nbsp;
2685
- protected <span class="fstat-no" title="function not covered" >async addSocketToPresence(newPresence: T_Presence): Promise&lt;void&gt; {</span>
2686
- <span class="cstat-no" title="statement not covered" > try {</span>
2687
- <span class="cstat-no" title="statement not covered" > const activePresence: T_Presence = this.presences.find(</span>
2688
- <span class="cstat-no" title="statement not covered" > (pres: T_Presence) =&gt; pres.issuerLocalId === newPresence.issuerLocalId</span>
2689
- <span class="cstat-no" title="statement not covered" > );</span>
2690
- <span class="cstat-no" title="statement not covered" > </span>
2691
- <span class="cstat-no" title="statement not covered" > if (activePresence) {</span>
2692
- <span class="cstat-no" title="statement not covered" > activePresence.sockets.push(...newPresence.sockets);</span>
2693
- <span class="cstat-no" title="statement not covered" > } else {</span>
2694
- <span class="cstat-no" title="statement not covered" > this.presences.push(newPresence);</span>
2695
- <span class="cstat-no" title="statement not covered" > }</span>
2696
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2697
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
2698
- <span class="cstat-no" title="statement not covered" > error.logShort(</span>
2699
- <span class="cstat-no" title="statement not covered" > `Socket Subscription failed: "${this.params?.name}" (${this.params?.port})`</span>
2700
- <span class="cstat-no" title="statement not covered" > )</span>
2701
- <span class="cstat-no" title="statement not covered" > } else if (DyNTS_global_settings.log_settings.socket_eventContent) {</span>
2702
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2703
- <span class="cstat-no" title="statement not covered" > `Socket Subscription failed: "${this.params?.name}" (${this.params?.port})`,</span>
2704
- <span class="cstat-no" title="statement not covered" > /* `${this.thisLocationStack}`, */</span>
2705
- <span class="cstat-no" title="statement not covered" > error</span>
2706
- <span class="cstat-no" title="statement not covered" > );</span>
2707
- <span class="cstat-no" title="statement not covered" > } else {</span>
2708
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2709
- <span class="cstat-no" title="statement not covered" > `Socket Subscription failed: "${this.params?.name}" (${this.params?.port})`,</span>
2710
- <span class="cstat-no" title="statement not covered" > /* `${this.thisLocationStack}` */</span>
2711
- <span class="cstat-no" title="statement not covered" > );</span>
2712
- <span class="cstat-no" title="statement not covered" > }</span>
2713
- <span class="cstat-no" title="statement not covered" ></span>
2714
- <span class="cstat-no" title="statement not covered" > throw error;</span>
2715
- <span class="cstat-no" title="statement not covered" > }</span>
2716
- <span class="cstat-no" title="statement not covered" > }</span>
2717
- &nbsp;
2718
- protected <span class="fstat-no" title="function not covered" >async closeSocket(socket: SocketIO.Socket, issuer: string, withError?: DyFM_AnyError): Promise&lt;void&gt; {</span>
2719
- <span class="cstat-no" title="statement not covered" > try {</span>
2720
- <span class="cstat-no" title="statement not covered" > if (withError) {</span>
2721
- <span class="cstat-no" title="statement not covered" > socket.emit(DyFM_SocketEvent_Key.error, withError);</span>
2722
- <span class="cstat-no" title="statement not covered" > }</span>
2723
- <span class="cstat-no" title="statement not covered" ></span>
2724
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(</span>
2725
- <span class="cstat-no" title="statement not covered" > this.incomingEvents.filter(</span>
2726
- <span class="cstat-no" title="statement not covered" > (event: DyFM_SocketEvent&lt;any&gt;) =&gt; </span>
2727
- <span class="cstat-no" title="statement not covered" > event.eventKey === DyFM_SocketEvent_Key.disconnect</span>
2728
- <span class="cstat-no" title="statement not covered" > ), </span>
2729
- <span class="cstat-no" title="statement not covered" > async (event: DyFM_SocketEvent&lt;any&gt;) =&gt; {</span>
2730
- <span class="cstat-no" title="statement not covered" > await event.executeEventTasks(null, issuer);</span>
2731
- <span class="cstat-no" title="statement not covered" > }</span>
2732
- <span class="cstat-no" title="statement not covered" > );</span>
2733
- <span class="cstat-no" title="statement not covered" ></span>
2734
- <span class="cstat-no" title="statement not covered" > /* if (this.getSubscriptionCloseTasks) {</span>
2735
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(</span>
2736
- <span class="cstat-no" title="statement not covered" > this.getSubscriptionCloseTasks(), </span>
2737
- <span class="cstat-no" title="statement not covered" > async (task: DyFM_SocketEventTask&lt;null&gt;) =&gt; {</span>
2738
- <span class="cstat-no" title="statement not covered" > await task(null, issuer);</span>
2739
- <span class="cstat-no" title="statement not covered" > }</span>
2740
- <span class="cstat-no" title="statement not covered" > );</span>
2741
- <span class="cstat-no" title="statement not covered" > } */</span>
2742
- <span class="cstat-no" title="statement not covered" ></span>
2743
- <span class="cstat-no" title="statement not covered" > socket.emit(DyFM_SocketEvent_Key.disconnect);</span>
2744
- <span class="cstat-no" title="statement not covered" > socket.disconnect();</span>
2745
- <span class="cstat-no" title="statement not covered" ></span>
2746
- <span class="cstat-no" title="statement not covered" > await this.removeSocketFromPresence(socket);</span>
2747
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2748
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2749
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings('closeSocket', error),</span>
2750
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-CS0`,</span>
2751
- <span class="cstat-no" title="statement not covered" > });</span>
2752
- <span class="cstat-no" title="statement not covered" > }</span>
2753
- <span class="cstat-no" title="statement not covered" > }</span>
2754
- &nbsp;
2755
- protected <span class="fstat-no" title="function not covered" >async removeSocketFromPresence(socket: SocketIO.Socket): Promise&lt;void&gt; {</span>
2756
- <span class="cstat-no" title="statement not covered" > try {</span>
2757
- <span class="cstat-no" title="statement not covered" > const presence: T_Presence = this.presences.find(</span>
2758
- <span class="cstat-no" title="statement not covered" > (pres: T_Presence) =&gt; pres.sockets.includes(socket)</span>
2759
- <span class="cstat-no" title="statement not covered" > );</span>
2760
- <span class="cstat-no" title="statement not covered" > </span>
2761
- <span class="cstat-no" title="statement not covered" > if (presence) {</span>
2762
- <span class="cstat-no" title="statement not covered" > const socketIndex: number = presence.sockets.indexOf(socket);</span>
2763
- <span class="cstat-no" title="statement not covered" ></span>
2764
- <span class="cstat-no" title="statement not covered" > if (socketIndex !== -1) {</span>
2765
- <span class="cstat-no" title="statement not covered" > presence.sockets.splice(socketIndex, 1);</span>
2766
- <span class="cstat-no" title="statement not covered" > }</span>
2767
- <span class="cstat-no" title="statement not covered" > </span>
2768
- <span class="cstat-no" title="statement not covered" > if (presence.sockets.length === 0) {</span>
2769
- <span class="cstat-no" title="statement not covered" > const presenceIndex: number = this.presences.indexOf(presence); </span>
2770
- <span class="cstat-no" title="statement not covered" > </span>
2771
- <span class="cstat-no" title="statement not covered" > if (presenceIndex !== -1) {</span>
2772
- <span class="cstat-no" title="statement not covered" > this.presences.splice(presenceIndex, 1);</span>
2773
- <span class="cstat-no" title="statement not covered" > }</span>
2774
- <span class="cstat-no" title="statement not covered" > }</span>
2775
- <span class="cstat-no" title="statement not covered" > }</span>
2776
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2777
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2778
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings('removeSocketFromPresence', error),</span>
2779
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-RSO0`,</span>
2780
- <span class="cstat-no" title="statement not covered" > });</span>
2781
- <span class="cstat-no" title="statement not covered" > }</span>
2782
- <span class="cstat-no" title="statement not covered" > }</span>
2783
- &nbsp;
2784
- private <span class="fstat-no" title="function not covered" >async disconnectBaseTask(socket: SocketIO.Socket, issuer: string): Promise&lt;void&gt; {</span>
2785
- <span class="cstat-no" title="statement not covered" > try {</span>
2786
- <span class="cstat-no" title="statement not covered" > if (!(socket instanceof SocketIO.Socket)) {</span>
2787
- <span class="cstat-no" title="statement not covered" > /* throw new DyFM_Error({</span>
2788
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2789
- <span class="cstat-no" title="statement not covered" > 'disconnectBaseTask',</span>
2790
- <span class="cstat-no" title="statement not covered" > new Error('Socket is not a SocketIO.Socket, type: ' + typeof socket),</span>
2791
- <span class="cstat-no" title="statement not covered" > ),</span>
2792
- <span class="cstat-no" title="statement not covered" > }); */</span>
2793
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(</span>
2794
- <span class="cstat-no" title="statement not covered" > `Socket is not a SocketIO.Socket, type: ${typeof socket}`,</span>
2795
- <span class="cstat-no" title="statement not covered" > socket</span>
2796
- <span class="cstat-no" title="statement not covered" > );</span>
2797
- <span class="cstat-no" title="statement not covered" > //TODO: remove all presences that have no socket</span>
2798
- <span class="cstat-no" title="statement not covered" > }</span>
2799
- <span class="cstat-no" title="statement not covered" ></span>
2800
- <span class="cstat-no" title="statement not covered" > await this.removeSubscription(socket, issuer).catch(error =&gt; {</span>
2801
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
2802
- <span class="cstat-no" title="statement not covered" > error.logShort(</span>
2803
- <span class="cstat-no" title="statement not covered" > `Remove Subscription failed: "${this.params.name}" (${this.params.port})`</span>
2804
- <span class="cstat-no" title="statement not covered" > );</span>
2805
- <span class="cstat-no" title="statement not covered" > } else {</span>
2806
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(`Remove Subscription failed: "${this.params.name}" (${this.params.port})`, error);</span>
2807
- <span class="cstat-no" title="statement not covered" > }</span>
2808
- <span class="cstat-no" title="statement not covered" > });</span>
2809
- <span class="cstat-no" title="statement not covered" ></span>
2810
- <span class="cstat-no" title="statement not covered" > DyFM_Log.info(`&lt; x &gt; socket(${this.params.name}) disconnected (${issuer})`);</span>
2811
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2812
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2813
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2814
- <span class="cstat-no" title="statement not covered" > 'disconnectBaseTask',</span>
2815
- <span class="cstat-no" title="statement not covered" > error,</span>
2816
- <span class="cstat-no" title="statement not covered" > issuer</span>
2817
- <span class="cstat-no" title="statement not covered" > ),</span>
2818
- <span class="cstat-no" title="statement not covered" ></span>
2819
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-DBT0`,</span>
2820
- <span class="cstat-no" title="statement not covered" > });</span>
2821
- <span class="cstat-no" title="statement not covered" > }</span>
2822
- <span class="cstat-no" title="statement not covered" > }</span>
2823
- &nbsp;
2824
- private <span class="fstat-no" title="function not covered" >async removeSubscription(socket: SocketIO.Socket, issuer?: string): Promise&lt;void&gt; {</span>
2825
- <span class="cstat-no" title="statement not covered" > try {</span>
2826
- <span class="cstat-no" title="statement not covered" > if (!this.presences.length) {</span>
2827
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2828
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2829
- <span class="cstat-no" title="statement not covered" > 'removeSubscription',</span>
2830
- <span class="cstat-no" title="statement not covered" > new Error(`No presences found (${this.params.name})`),</span>
2831
- <span class="cstat-no" title="statement not covered" > issuer ?? 'unknown issuer'</span>
2832
- <span class="cstat-no" title="statement not covered" > ),</span>
2833
- <span class="cstat-no" title="statement not covered" ></span>
2834
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-RS1`,</span>
2835
- <span class="cstat-no" title="statement not covered" > });</span>
2836
- <span class="cstat-no" title="statement not covered" > }</span>
2837
- <span class="cstat-no" title="statement not covered" ></span>
2838
- <span class="cstat-no" title="statement not covered" > const activePresenceIndex: number = this.presences.findIndex(</span>
2839
- <span class="cstat-no" title="statement not covered" > (pres: DyNTS_SocketPresence) =&gt; pres.sockets.includes(socket)</span>
2840
- <span class="cstat-no" title="statement not covered" > );</span>
2841
- <span class="cstat-no" title="statement not covered" > </span>
2842
- <span class="cstat-no" title="statement not covered" > if (activePresenceIndex === -1) {</span>
2843
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2844
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2845
- <span class="cstat-no" title="statement not covered" > 'sendEventForId', </span>
2846
- <span class="cstat-no" title="statement not covered" > new Error(</span>
2847
- <span class="cstat-no" title="statement not covered" > `closing socket (${this.params.name}) does not match any in the activePresences`</span>
2848
- <span class="cstat-no" title="statement not covered" > ), </span>
2849
- <span class="cstat-no" title="statement not covered" > issuer ?? 'unknown issuer'</span>
2850
- <span class="cstat-no" title="statement not covered" > ),</span>
2851
- <span class="cstat-no" title="statement not covered" ></span>
2852
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-RS2`,</span>
2853
- <span class="cstat-no" title="statement not covered" > });</span>
2854
- <span class="cstat-no" title="statement not covered" > }</span>
2855
- <span class="cstat-no" title="statement not covered" ></span>
2856
- <span class="cstat-no" title="statement not covered" > const activePresence: DyNTS_SocketPresence = this.presences[activePresenceIndex];</span>
2857
- <span class="cstat-no" title="statement not covered" ></span>
2858
- <span class="cstat-no" title="statement not covered" > if (issuer &amp;&amp; activePresence.issuerLocalId !== issuer) {</span>
2859
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2860
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2861
- <span class="cstat-no" title="statement not covered" > 'sendEventForId',</span>
2862
- <span class="cstat-no" title="statement not covered" > new Error(</span>
2863
- <span class="cstat-no" title="statement not covered" > `socket unsubscription for "${issuer}" and ` +</span>
2864
- <span class="cstat-no" title="statement not covered" > `"${activePresence.issuerLocalId}" does not match.`</span>
2865
- <span class="cstat-no" title="statement not covered" > ),</span>
2866
- <span class="cstat-no" title="statement not covered" > issuer</span>
2867
- <span class="cstat-no" title="statement not covered" > ),</span>
2868
- <span class="cstat-no" title="statement not covered" ></span>
2869
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-RS3`,</span>
2870
- <span class="cstat-no" title="statement not covered" > });</span>
2871
- <span class="cstat-no" title="statement not covered" > }</span>
2872
- <span class="cstat-no" title="statement not covered" ></span>
2873
- <span class="cstat-no" title="statement not covered" > const socketIndex = activePresence.sockets.findIndex((s: SocketIO.Socket) =&gt; s === socket);</span>
2874
- <span class="cstat-no" title="statement not covered" ></span>
2875
- <span class="cstat-no" title="statement not covered" > if (socketIndex === -1) {</span>
2876
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2877
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2878
- <span class="cstat-no" title="statement not covered" > 'sendEventForId',</span>
2879
- <span class="cstat-no" title="statement not covered" > new Error(</span>
2880
- <span class="cstat-no" title="statement not covered" > `closing socket (${this.params.name}) does not match any in the activePresences`</span>
2881
- <span class="cstat-no" title="statement not covered" > ),</span>
2882
- <span class="cstat-no" title="statement not covered" > activePresence.issuerLocalId</span>
2883
- <span class="cstat-no" title="statement not covered" > ),</span>
2884
- <span class="cstat-no" title="statement not covered" ></span>
2885
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-RS4`,</span>
2886
- <span class="cstat-no" title="statement not covered" > });</span>
2887
- <span class="cstat-no" title="statement not covered" > }</span>
2888
- <span class="cstat-no" title="statement not covered" ></span>
2889
- <span class="cstat-no" title="statement not covered" > activePresence.sockets.splice(socketIndex);</span>
2890
- <span class="cstat-no" title="statement not covered" > </span>
2891
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(</span>
2892
- <span class="cstat-no" title="statement not covered" > this.incomingEvents.filter(</span>
2893
- <span class="cstat-no" title="statement not covered" > (event: DyFM_SocketEvent&lt;any&gt;) =&gt; </span>
2894
- <span class="cstat-no" title="statement not covered" > event.eventKey === DyFM_SocketEvent_Key.unsubscribeSuccessful</span>
2895
- <span class="cstat-no" title="statement not covered" > ), </span>
2896
- <span class="cstat-no" title="statement not covered" > async (event: DyFM_SocketEvent&lt;any&gt;) =&gt; {</span>
2897
- <span class="cstat-no" title="statement not covered" > await event.executeEventTasks(null, issuer);</span>
2898
- <span class="cstat-no" title="statement not covered" > }</span>
2899
- <span class="cstat-no" title="statement not covered" > );</span>
2900
- <span class="cstat-no" title="statement not covered" ></span>
2901
- <span class="cstat-no" title="statement not covered" > /* if (this.getSubscriptionCloseTasks) {</span>
2902
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(</span>
2903
- <span class="cstat-no" title="statement not covered" > this.getSubscriptionCloseTasks(), </span>
2904
- <span class="cstat-no" title="statement not covered" > async (task: DyFM_SocketEventTask&lt;null&gt;) =&gt; {</span>
2905
- <span class="cstat-no" title="statement not covered" > await task(null, issuer);</span>
2906
- <span class="cstat-no" title="statement not covered" > }</span>
2907
- <span class="cstat-no" title="statement not covered" > );</span>
2908
- <span class="cstat-no" title="statement not covered" > } */</span>
2909
- <span class="cstat-no" title="statement not covered" ></span>
2910
- <span class="cstat-no" title="statement not covered" > if (activePresence.sockets.length === 0) {</span>
2911
- <span class="cstat-no" title="statement not covered" > this.presences.splice(activePresenceIndex);</span>
2912
- <span class="cstat-no" title="statement not covered" > }</span>
2913
- <span class="cstat-no" title="statement not covered" ></span>
2914
- <span class="cstat-no" title="statement not covered" > socket.emit(DyFM_SocketEvent_Key.unsubscribeSuccessful, 'unsubscribe was successful');</span>
2915
- <span class="cstat-no" title="statement not covered" > socket.disconnect();</span>
2916
- <span class="cstat-no" title="statement not covered" > DyFM_Log.info(`&lt;x==&gt; socket (${this.params.name}) unsubscription successful (${issuer})`);</span>
2917
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2918
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2919
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2920
- <span class="cstat-no" title="statement not covered" > 'sendEventForId',</span>
2921
- <span class="cstat-no" title="statement not covered" > error,</span>
2922
- <span class="cstat-no" title="statement not covered" > issuer ?? 'unknown issuer'</span>
2923
- <span class="cstat-no" title="statement not covered" > ),</span>
2924
- <span class="cstat-no" title="statement not covered" ></span>
2925
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-RS0`,</span>
2926
- <span class="cstat-no" title="statement not covered" > message: `socket (${this.params.name}) Subscription Removal failed: "${this.params?.name}"`,</span>
2927
- <span class="cstat-no" title="statement not covered" > });</span>
2928
- <span class="cstat-no" title="statement not covered" > }</span>
2929
- <span class="cstat-no" title="statement not covered" > }</span>
2930
- &nbsp;
2931
- /* emitServerEvent(event: string, content: any): void {
2932
- try {
2933
- DyFM_Log.log(` &lt;=-- emitting server socket(${this.params.name}) event: ${event}`);
2934
- &nbsp;
2935
- this.openSocketServer.emit(event, content, error =&gt; {
2936
- DyFM_Log.error(`Emitting server event '${event}' failed!\nerror:`, error);
2937
- });
2938
- } catch (error) {
2939
- throw new DyFM_Error({
2940
- ...this._getDefaultErrorSettings(
2941
- 'emitEvent',
2942
- error
2943
- ),
2944
- &nbsp;
2945
- errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-500',
2946
- message: `socket(${this.params.name}) Event Emit (${event}) failed: ${this.params?.name}`,
2947
- });
2948
- }
2949
- } */
2950
- &nbsp;
2951
- <span class="fstat-no" title="function not covered" > idIsSubscribed(id: string): boolean {</span>
2952
- <span class="cstat-no" title="statement not covered" > try {</span>
2953
- <span class="cstat-no" title="statement not covered" > return !!this.presences.find(</span>
2954
- <span class="cstat-no" title="statement not covered" > (presence: DyNTS_SocketPresence) =&gt; presence.issuerLocalId === id</span>
2955
- <span class="cstat-no" title="statement not covered" > );</span>
2956
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2957
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2958
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2959
- <span class="cstat-no" title="statement not covered" > 'idIsSubscribed',</span>
2960
- <span class="cstat-no" title="statement not covered" > error</span>
2961
- <span class="cstat-no" title="statement not covered" > ),</span>
2962
- <span class="cstat-no" title="statement not covered" ></span>
2963
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-IIS0`,</span>
2964
- <span class="cstat-no" title="statement not covered" > message: `socket (${this.params.name}) ID Subscription Check (${id}) failed`,</span>
2965
- <span class="cstat-no" title="statement not covered" > });</span>
2966
- <span class="cstat-no" title="statement not covered" > }</span>
2967
- <span class="cstat-no" title="statement not covered" > }</span>
2968
- &nbsp;
2969
- <span class="fstat-no" title="function not covered" > async emitError(presenceIssuerId: string, error: any, issuer: string): Promise&lt;void&gt; {</span>
2970
- <span class="cstat-no" title="statement not covered" > try {</span>
2971
- <span class="cstat-no" title="statement not covered" > await this.sendEventForId(presenceIssuerId, DyFM_SocketEvent_Key.error, error, issuer);</span>
2972
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2973
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2974
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2975
- <span class="cstat-no" title="statement not covered" > 'emitError',</span>
2976
- <span class="cstat-no" title="statement not covered" > error,</span>
2977
- <span class="cstat-no" title="statement not covered" > presenceIssuerId</span>
2978
- <span class="cstat-no" title="statement not covered" > ),</span>
2979
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-EE0`,</span>
2980
- <span class="cstat-no" title="statement not covered" > message: `socket (${this.params.name}) Error Emit (id: ${presenceIssuerId}) failed`,</span>
2981
- <span class="cstat-no" title="statement not covered" > });</span>
2982
- <span class="cstat-no" title="statement not covered" > }</span>
2983
- <span class="cstat-no" title="statement not covered" > }</span>
2984
- &nbsp;
2985
- <span class="fstat-no" title="function not covered" > async sendEventForId(id: string, event: string, content: any, issuer: string): Promise&lt;void&gt; {</span>
2986
- <span class="cstat-no" title="statement not covered" > try {</span>
2987
- <span class="cstat-no" title="statement not covered" > if (!event) {</span>
2988
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
2989
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
2990
- <span class="cstat-no" title="statement not covered" > 'sendEventForId',</span>
2991
- <span class="cstat-no" title="statement not covered" > new Error('No event was provided'),</span>
2992
- <span class="cstat-no" title="statement not covered" > content?.source</span>
2993
- <span class="cstat-no" title="statement not covered" > ),</span>
2994
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-SEFI1`,</span>
2995
- <span class="cstat-no" title="statement not covered" > });</span>
2996
- <span class="cstat-no" title="statement not covered" > }</span>
2997
- <span class="cstat-no" title="statement not covered" ></span>
2998
- <span class="cstat-no" title="statement not covered" > if (!id) {</span>
2999
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
3000
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
3001
- <span class="cstat-no" title="statement not covered" > 'sendEventForId',</span>
3002
- <span class="cstat-no" title="statement not covered" > new Error('No ID was provided'),</span>
3003
- <span class="cstat-no" title="statement not covered" > content?.source</span>
3004
- <span class="cstat-no" title="statement not covered" > ),</span>
3005
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-SEFI2`,</span>
3006
- <span class="cstat-no" title="statement not covered" > });</span>
3007
- <span class="cstat-no" title="statement not covered" > }</span>
3008
- <span class="cstat-no" title="statement not covered" ></span>
3009
- <span class="cstat-no" title="statement not covered" > const presence: DyNTS_SocketPresence = this.presences.find(</span>
3010
- <span class="cstat-no" title="statement not covered" > (pres: DyNTS_SocketPresence) =&gt; pres.issuerLocalId === id</span>
3011
- <span class="cstat-no" title="statement not covered" > );</span>
3012
- <span class="cstat-no" title="statement not covered" ></span>
3013
- <span class="cstat-no" title="statement not covered" > if (!presence) {</span>
3014
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({ </span>
3015
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
3016
- <span class="cstat-no" title="statement not covered" > 'sendEventForId',</span>
3017
- <span class="cstat-no" title="statement not covered" > new Error(`No active socket with this specific ID: "${id}"`),</span>
3018
- <span class="cstat-no" title="statement not covered" > content?.source</span>
3019
- <span class="cstat-no" title="statement not covered" > ),</span>
3020
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-SEFI3`,</span>
3021
- <span class="cstat-no" title="statement not covered" > });</span>
3022
- <span class="cstat-no" title="statement not covered" > }</span>
3023
- <span class="cstat-no" title="statement not covered" ></span>
3024
- <span class="cstat-no" title="statement not covered" > presence.emitEvent(event, content, issuer);</span>
3025
- <span class="cstat-no" title="statement not covered" ></span>
3026
- <span class="cstat-no" title="statement not covered" > if (DyNTS_global_settings.log_settings.socket_eventContent) {</span>
3027
- <span class="cstat-no" title="statement not covered" > DyFM_Log.success(</span>
3028
- <span class="cstat-no" title="statement not covered" > ` &lt;--= emitted socket (${this.params.name}) event: "${event}", ` +</span>
3029
- <span class="cstat-no" title="statement not covered" > `\n presenceId: "${id}", sockets: ${presence.sockets.length}` +</span>
3030
- <span class="cstat-no" title="statement not covered" > `\n content:`, content</span>
3031
- <span class="cstat-no" title="statement not covered" > );</span>
3032
- <span class="cstat-no" title="statement not covered" > } else {</span>
3033
- <span class="cstat-no" title="statement not covered" > DyFM_Log.success(</span>
3034
- <span class="cstat-no" title="statement not covered" > ` &lt;--= emitted socket (${this.params.name}) event: "${event}", ` +</span>
3035
- <span class="cstat-no" title="statement not covered" > `\n presenceId: ${id}, sockets: ${presence.sockets.length}`</span>
3036
- <span class="cstat-no" title="statement not covered" > );</span>
3037
- <span class="cstat-no" title="statement not covered" > }</span>
3038
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3039
- <span class="cstat-no" title="statement not covered" > try {</span>
3040
- <span class="cstat-no" title="statement not covered" > if (error?.flag?.includes(DyFM_errorFlag) &amp;&amp; error?.additionalInfo?.inactiveSockets) {</span>
3041
- <span class="cstat-no" title="statement not covered" > const sockets: SocketIO.Socket[] = error.additionalInfo.inactiveSockets;</span>
3042
- <span class="cstat-no" title="statement not covered" ></span>
3043
- <span class="cstat-no" title="statement not covered" > await DyFM_Array.asyncForEach(sockets, async (socket: SocketIO.Socket) =&gt; {</span>
3044
- <span class="cstat-no" title="statement not covered" > await this.removeSubscription(socket);</span>
3045
- <span class="cstat-no" title="statement not covered" > });</span>
3046
- <span class="cstat-no" title="statement not covered" ></span>
3047
- <span class="cstat-no" title="statement not covered" > const presence: DyNTS_SocketPresence = this.presences.find(</span>
3048
- <span class="cstat-no" title="statement not covered" > (pres: DyNTS_SocketPresence) =&gt; pres.issuerLocalId === id</span>
3049
- <span class="cstat-no" title="statement not covered" > );</span>
3050
- <span class="cstat-no" title="statement not covered" ></span>
3051
- <span class="cstat-no" title="statement not covered" > if (!presence) {</span>
3052
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({ </span>
3053
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings(</span>
3054
- <span class="cstat-no" title="statement not covered" > 'sendEventForId',</span>
3055
- <span class="cstat-no" title="statement not covered" > new Error(`No active socket (${this.params.name}) with this specific ID: "${id}"`),</span>
3056
- <span class="cstat-no" title="statement not covered" > content?.source</span>
3057
- <span class="cstat-no" title="statement not covered" > ),</span>
3058
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-SEFI4`,</span>
3059
- <span class="cstat-no" title="statement not covered" > });</span>
3060
- <span class="cstat-no" title="statement not covered" > }</span>
3061
- <span class="cstat-no" title="statement not covered" > }</span>
3062
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3063
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
3064
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings('sendEventForId', error, content?.source),</span>
3065
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-SEFI5`,</span>
3066
- <span class="cstat-no" title="statement not covered" > message: </span>
3067
- <span class="cstat-no" title="statement not covered" > `Error handling of inactive sockets (${this.params.name}) failed!` +</span>
3068
- <span class="cstat-no" title="statement not covered" > `\n(Socket Event Emit for id (${id}, ${event}) failed)`,</span>
3069
- <span class="cstat-no" title="statement not covered" > });</span>
3070
- <span class="cstat-no" title="statement not covered" > }</span>
3071
- <span class="cstat-no" title="statement not covered" ></span>
3072
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
3073
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings('sendEventForId', error, content?.source),</span>
3074
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-SEFI0`,</span>
3075
- <span class="cstat-no" title="statement not covered" > message: `socket (${this.params.name}) Event Emit for id (${id}, ${event}) failed`,</span>
3076
- <span class="cstat-no" title="statement not covered" > });</span>
3077
- <span class="cstat-no" title="statement not covered" > }</span>
3078
- <span class="cstat-no" title="statement not covered" > }</span>
3079
- &nbsp;
3080
- <span class="fstat-no" title="function not covered" > async broadcastEvent(event: string, content: any, issuer: string): Promise&lt;void&gt; {</span>
3081
- <span class="cstat-no" title="statement not covered" > try {</span>
3082
- <span class="cstat-no" title="statement not covered" > DyFM_Log.log(`&lt;=-== broadcasting socket (${this.params.name}) event: "${event}"`);</span>
3083
- <span class="cstat-no" title="statement not covered" ></span>
3084
- <span class="cstat-no" title="statement not covered" > this.presences.forEach((presence: DyNTS_SocketPresence) =&gt; {</span>
3085
- <span class="cstat-no" title="statement not covered" > presence.emitEvent(event, content, issuer);</span>
3086
- <span class="cstat-no" title="statement not covered" > });</span>
3087
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3088
- <span class="cstat-no" title="statement not covered" > if (DyNTS_global_settings.log_settings.detailedErrors) {</span>
3089
- <span class="cstat-no" title="statement not covered" > if (error instanceof DyFM_Error) {</span>
3090
- <span class="cstat-no" title="statement not covered" > error.logSimple(`socket (${this.params.name}) Event Broadcast (${event}) failed`);</span>
3091
- <span class="cstat-no" title="statement not covered" > } else {</span>
3092
- <span class="cstat-no" title="statement not covered" > DyFM_Log.error(`socket (${this.params.name}) Event Broadcast (${event}) failed`, error);</span>
3093
- <span class="cstat-no" title="statement not covered" > }</span>
3094
- <span class="cstat-no" title="statement not covered" > }</span>
3095
- <span class="cstat-no" title="statement not covered" ></span>
3096
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({</span>
3097
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings('broadcastEvent', error),</span>
3098
- <span class="cstat-no" title="statement not covered" > </span>
3099
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-BE0`,</span>
3100
- <span class="cstat-no" title="statement not covered" > message: `socket (${this.params.name}) Event Broadcast (${event}) failed`,</span>
3101
- <span class="cstat-no" title="statement not covered" > });</span>
3102
- <span class="cstat-no" title="statement not covered" > }</span>
3103
- <span class="cstat-no" title="statement not covered" > }</span>
3104
- &nbsp;
3105
- <span class="fstat-no" title="function not covered" > async sendError(error: DyFM_AnyError, issuer: string): Promise&lt;void&gt; {</span>
3106
- <span class="cstat-no" title="statement not covered" > try {</span>
3107
- <span class="cstat-no" title="statement not covered" > await this.sendEventForId(issuer, DyFM_SocketEvent_Key.error, error, issuer);</span>
3108
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3109
- <span class="cstat-no" title="statement not covered" > throw new DyFM_Error({ </span>
3110
- <span class="cstat-no" title="statement not covered" > ...this._getDefaultErrorSettings('sendError', error, issuer),</span>
3111
- <span class="cstat-no" title="statement not covered" > errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-SE0`,</span>
3112
- <span class="cstat-no" title="statement not covered" > message: `socket (${this.params.name}) Error Send (${issuer}) failed`,</span>
3113
- <span class="cstat-no" title="statement not covered" > });</span>
3114
- <span class="cstat-no" title="statement not covered" > }</span>
3115
- <span class="cstat-no" title="statement not covered" > }</span>
3116
- &nbsp;
3117
- private <span class="fstat-no" title="function not covered" >_getDefaultErrorSettings(</span>
3118
- <span class="cstat-no" title="statement not covered" > fnName: string, </span>
3119
- <span class="cstat-no" title="statement not covered" > error: DyFM_AnyError, </span>
3120
- <span class="cstat-no" title="statement not covered" > issuer?: string</span>
3121
- <span class="cstat-no" title="statement not covered" > ): DyFM_Error_Settings {</span>
3122
- <span class="cstat-no" title="statement not covered" > return {</span>
3123
- <span class="cstat-no" title="statement not covered" > status: (error as DyFM_Error)?.___status ?? 500,</span>
3124
- <span class="cstat-no" title="statement not covered" > message: (error as Error)?.message ?? </span>
3125
- <span class="cstat-no" title="statement not covered" > (error as DyFM_Error)?._message ??</span>
3126
- <span class="cstat-no" title="statement not covered" > `${fnName} was UNSUCCESSFUL (NTS)`,</span>
3127
- <span class="cstat-no" title="statement not covered" > addECToUserMsg: !(error as DyFM_Error)?.__userMessage,</span>
3128
- <span class="cstat-no" title="statement not covered" > userMessage: (error as DyFM_Error)?.__userMessage ?? this.defaultErrorUserMsg,</span>
3129
- <span class="cstat-no" title="statement not covered" > issuer: issuer,</span>
3130
- <span class="cstat-no" title="statement not covered" > issuerService: this.constructor?.name,</span>
3131
- <span class="cstat-no" title="statement not covered" > error: error,</span>
3132
- <span class="cstat-no" title="statement not covered" > };</span>
3133
- <span class="cstat-no" title="statement not covered" > }</span>
3134
- &nbsp;
3135
- /**
3136
- * You must setup params for the service in this function
3137
- */
3138
- protected abstract getServiceParams(): DyNTS_SocketServerService_Params;
3139
- &nbsp;
3140
- /**
3141
- * You must setup events and required services in this function
3142
- */
3143
- protected abstract getIncomingEvents(): DyFM_SocketEvent&lt;any&gt;[];
3144
-
3145
- /**
3146
- * You can setup tasks for the subscription event in this function
3147
- */
3148
- /* protected getSubscriptionCloseTasks?(): DyFM_SocketEventTask&lt;null&gt;[]; */
3149
- &nbsp;
3150
- /**
3151
- * You can setup preprocesses for the subscription event in this function
3152
- */
3153
- /* protected getSubscriptionPreProcesses?(): DyFM_SocketEventPreprocessTask[]; */
3154
- &nbsp;
3155
- /**
3156
- * You can setup tasks for the subscription event in this function
3157
- * This will happen after the presence is created
3158
- * If this throws an error, the socket will be closed
3159
- */
3160
- protected getSubscriptionTasks?(): DyFM_SocketEventTask&lt;T_SubscriptionContent&gt;[];
3161
- &nbsp;
3162
- /**
3163
- * You can setup tasks for the unsubscribe event in this function
3164
- */
3165
- /* protected getUnsubscribeTasks?(): DyFM_SocketEventTask&lt;T_SubscriptionContent&gt;[]; */
3166
- &nbsp;
3167
- /**
3168
- * You can setup preprocesses for the unsubscribe event in this function
3169
- */
3170
- /* protected getUnsubscribePreProcesses?(): DyFM_SocketEventPreprocessTask[]; */
3171
- &nbsp;
3172
- /**
3173
- * You can setup tasks for the error event in this function
3174
- */
3175
- protected errorHandling?: DyFM_SocketEventTask&lt;T_ErrorContent&gt;;
3176
- }
3177
- &nbsp;</pre></td></tr></table></pre>
3178
-
3179
- <div class='push'></div><!-- for sticky footer -->
3180
- </div><!-- /wrapper -->
3181
- <div class='footer quiet pad2 space-top1 center small'>
3182
- Code coverage generated by
3183
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
3184
- at 2025-11-12T23:04:35.006Z
3185
- </div>
3186
- <script src="../../../prettify.js"></script>
3187
- <script>
3188
- window.onload = function () {
3189
- prettyPrint();
3190
- };
3191
- </script>
3192
- <script src="../../../sorter.js"></script>
3193
- <script src="../../../block-navigation.js"></script>
3194
- </body>
3195
- </html>
3196
-