@kryptosai/mcp-observatory 1.32.0 → 1.33.0

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 (408) hide show
  1. package/README.md +9 -13
  2. package/README.zh-CN.md +4 -10
  3. package/dist/src/adapters/base.d.ts +14 -0
  4. package/dist/src/adapters/base.js +2 -0
  5. package/dist/src/adapters/base.js.map +1 -0
  6. package/dist/src/checks/semantics.d.ts +2 -0
  7. package/dist/src/checks/semantics.js +48 -0
  8. package/dist/src/checks/semantics.js.map +1 -0
  9. package/dist/src/cli.js +8 -2
  10. package/dist/src/cli.js.map +1 -1
  11. package/dist/src/commands/audit.js +7 -1
  12. package/dist/src/commands/audit.js.map +1 -1
  13. package/dist/src/commands/enforce.d.ts +2 -2
  14. package/dist/src/commands/enforce.js +19 -11
  15. package/dist/src/commands/enforce.js.map +1 -1
  16. package/dist/src/commands/helpers.d.ts +2 -0
  17. package/dist/src/commands/helpers.js +8 -1
  18. package/dist/src/commands/helpers.js.map +1 -1
  19. package/dist/src/commands/scan.d.ts +14 -0
  20. package/dist/src/commands/scan.js +42 -3
  21. package/dist/src/commands/scan.js.map +1 -1
  22. package/dist/src/commands/score.js +22 -1
  23. package/dist/src/commands/score.js.map +1 -1
  24. package/dist/src/commands/skill-scan.js +5 -3
  25. package/dist/src/commands/skill-scan.js.map +1 -1
  26. package/dist/src/commands/test.d.ts +19 -0
  27. package/dist/src/commands/test.js +70 -4
  28. package/dist/src/commands/test.js.map +1 -1
  29. package/dist/src/commercial.js +2 -2
  30. package/dist/src/commercial.js.map +1 -1
  31. package/dist/src/diff/diff.d.ts +2 -0
  32. package/dist/src/diff/diff.js +81 -0
  33. package/dist/src/diff/diff.js.map +1 -0
  34. package/dist/src/reporters/json.d.ts +2 -0
  35. package/dist/src/reporters/json.js +4 -0
  36. package/dist/src/reporters/json.js.map +1 -0
  37. package/dist/src/runner/runner.d.ts +2 -0
  38. package/dist/src/runner/runner.js +135 -0
  39. package/dist/src/runner/runner.js.map +1 -0
  40. package/dist/src/storage/filesystem.d.ts +6 -0
  41. package/dist/src/storage/filesystem.js +21 -0
  42. package/dist/src/storage/filesystem.js.map +1 -0
  43. package/dist/src/telemetry.d.ts +25 -3
  44. package/dist/src/telemetry.js +84 -18
  45. package/dist/src/telemetry.js.map +1 -1
  46. package/dist/src/validate.js +5 -6
  47. package/dist/src/validate.js.map +1 -1
  48. package/docs/mcp-server-safety-index.md +317 -8
  49. package/docs/safety-index/artifacts/1link-mcp.json +66 -0
  50. package/docs/safety-index/artifacts/1link-mcp.md +106 -0
  51. package/docs/safety-index/artifacts/aadhaar-mcp.json +66 -0
  52. package/docs/safety-index/artifacts/aadhaar-mcp.md +106 -0
  53. package/docs/safety-index/artifacts/aikidosec-mcp-server.json +536 -0
  54. package/docs/safety-index/artifacts/aikidosec-mcp-server.md +203 -0
  55. package/docs/safety-index/artifacts/aiou-mcp.json +66 -0
  56. package/docs/safety-index/artifacts/aiou-mcp.md +106 -0
  57. package/docs/safety-index/artifacts/airtable-mcp-server.json +66 -0
  58. package/docs/safety-index/artifacts/airtable-mcp-server.md +106 -0
  59. package/docs/safety-index/artifacts/alpaca-server.json +66 -0
  60. package/docs/safety-index/artifacts/alpaca-server.md +106 -0
  61. package/docs/safety-index/artifacts/antv-chart-server.json +1454 -21
  62. package/docs/safety-index/artifacts/antv-chart-server.md +155 -9
  63. package/docs/safety-index/artifacts/apify-mcp-server.json +66 -0
  64. package/docs/safety-index/artifacts/apify-mcp-server.md +103 -0
  65. package/docs/safety-index/artifacts/apple-music-server.json +66 -0
  66. package/docs/safety-index/artifacts/apple-music-server.md +102 -0
  67. package/docs/safety-index/artifacts/appwrite-mcp.json +66 -0
  68. package/docs/safety-index/artifacts/appwrite-mcp.md +106 -0
  69. package/docs/safety-index/artifacts/aqi-india-mcp.json +66 -0
  70. package/docs/safety-index/artifacts/aqi-india-mcp.md +106 -0
  71. package/docs/safety-index/artifacts/argocd-mcp-server.json +66 -0
  72. package/docs/safety-index/artifacts/argocd-mcp-server.md +106 -0
  73. package/docs/safety-index/artifacts/arxiv-mcp-server.json +66 -0
  74. package/docs/safety-index/artifacts/arxiv-mcp-server.md +100 -0
  75. package/docs/safety-index/artifacts/aws-mcp-server.json +66 -0
  76. package/docs/safety-index/artifacts/aws-mcp-server.md +103 -0
  77. package/docs/safety-index/artifacts/azure-devops-mcp-server.json +66 -0
  78. package/docs/safety-index/artifacts/azure-devops-mcp-server.md +106 -0
  79. package/docs/safety-index/artifacts/azure-mcp-server.json +66 -0
  80. package/docs/safety-index/artifacts/azure-mcp-server.md +102 -0
  81. package/docs/safety-index/artifacts/bhuvan-mcp.json +66 -0
  82. package/docs/safety-index/artifacts/bhuvan-mcp.md +106 -0
  83. package/docs/safety-index/artifacts/brave-search-mcp-server-v2.json +66 -0
  84. package/docs/safety-index/artifacts/brave-search-mcp-server-v2.md +103 -0
  85. package/docs/safety-index/artifacts/brave-search-server.json +341 -0
  86. package/docs/safety-index/artifacts/brave-search-server.md +201 -0
  87. package/docs/safety-index/artifacts/browsermcp-server.json +83 -18
  88. package/docs/safety-index/artifacts/browsermcp-server.md +46 -12
  89. package/docs/safety-index/artifacts/cal-com-mcp.json +66 -0
  90. package/docs/safety-index/artifacts/cal-com-mcp.md +106 -0
  91. package/docs/safety-index/artifacts/canvas-server.json +66 -0
  92. package/docs/safety-index/artifacts/canvas-server.md +105 -0
  93. package/docs/safety-index/artifacts/caselaw-server.json +66 -0
  94. package/docs/safety-index/artifacts/caselaw-server.md +106 -0
  95. package/docs/safety-index/artifacts/chatwoot-mcp.json +66 -0
  96. package/docs/safety-index/artifacts/chatwoot-mcp.md +102 -0
  97. package/docs/safety-index/artifacts/chrome-devtools-mcp-server.json +596 -25
  98. package/docs/safety-index/artifacts/chrome-devtools-mcp-server.md +97 -15
  99. package/docs/safety-index/artifacts/circleci-server.json +1606 -0
  100. package/docs/safety-index/artifacts/circleci-server.md +243 -0
  101. package/docs/safety-index/artifacts/clarity-server.json +794 -0
  102. package/docs/safety-index/artifacts/clarity-server.md +201 -0
  103. package/docs/safety-index/artifacts/clay-server.json +66 -0
  104. package/docs/safety-index/artifacts/clay-server.md +106 -0
  105. package/docs/safety-index/artifacts/clickup-mcp-server.json +66 -0
  106. package/docs/safety-index/artifacts/clickup-mcp-server.md +106 -0
  107. package/docs/safety-index/artifacts/cloudflare-mcp-server-v2.json +66 -0
  108. package/docs/safety-index/artifacts/cloudflare-mcp-server-v2.md +102 -0
  109. package/docs/safety-index/artifacts/cloudflare-server.json +66 -0
  110. package/docs/safety-index/artifacts/cloudflare-server.md +106 -0
  111. package/docs/safety-index/artifacts/coinbase-cds-server.json +322 -0
  112. package/docs/safety-index/artifacts/coinbase-cds-server.md +201 -0
  113. package/docs/safety-index/artifacts/confluence-mcp-server.json +1727 -0
  114. package/docs/safety-index/artifacts/confluence-mcp-server.md +255 -0
  115. package/docs/safety-index/artifacts/context7-server.json +85 -18
  116. package/docs/safety-index/artifacts/context7-server.md +52 -11
  117. package/docs/safety-index/artifacts/contract-analysis-server.json +66 -0
  118. package/docs/safety-index/artifacts/contract-analysis-server.md +106 -0
  119. package/docs/safety-index/artifacts/cowin-mcp.json +66 -0
  120. package/docs/safety-index/artifacts/cowin-mcp.md +106 -0
  121. package/docs/safety-index/artifacts/currents-mcp-server.json +66 -0
  122. package/docs/safety-index/artifacts/currents-mcp-server.md +102 -0
  123. package/docs/safety-index/artifacts/cyanheads-git-mcp-server.json +1565 -34
  124. package/docs/safety-index/artifacts/cyanheads-git-mcp-server.md +178 -17
  125. package/docs/safety-index/artifacts/dalle-server.json +66 -0
  126. package/docs/safety-index/artifacts/dalle-server.md +104 -0
  127. package/docs/safety-index/artifacts/daraz-mcp.json +66 -0
  128. package/docs/safety-index/artifacts/daraz-mcp.md +106 -0
  129. package/docs/safety-index/artifacts/desktop-commander-mcp-server.json +2348 -0
  130. package/docs/safety-index/artifacts/desktop-commander-mcp-server.md +266 -0
  131. package/docs/safety-index/artifacts/digilocker-mcp.json +66 -0
  132. package/docs/safety-index/artifacts/digilocker-mcp.md +106 -0
  133. package/docs/safety-index/artifacts/discord-mcp-server.json +1297 -0
  134. package/docs/safety-index/artifacts/discord-mcp-server.md +169 -0
  135. package/docs/safety-index/artifacts/discord-mcp.json +1023 -0
  136. package/docs/safety-index/artifacts/discord-mcp.md +229 -0
  137. package/docs/safety-index/artifacts/docker-server.json +395 -0
  138. package/docs/safety-index/artifacts/docker-server.md +204 -0
  139. package/docs/safety-index/artifacts/dynamodb-mcp-server.json +66 -0
  140. package/docs/safety-index/artifacts/dynamodb-mcp-server.md +103 -0
  141. package/docs/safety-index/artifacts/dynatrace-mcp-server.json +66 -0
  142. package/docs/safety-index/artifacts/dynatrace-mcp-server.md +103 -0
  143. package/docs/safety-index/artifacts/easypaisa-mcp.json +553 -0
  144. package/docs/safety-index/artifacts/easypaisa-mcp.md +205 -0
  145. package/docs/safety-index/artifacts/ehsaas-mcp.json +66 -0
  146. package/docs/safety-index/artifacts/ehsaas-mcp.md +106 -0
  147. package/docs/safety-index/artifacts/epic-server.json +66 -0
  148. package/docs/safety-index/artifacts/epic-server.md +106 -0
  149. package/docs/safety-index/artifacts/eslint-mcp-server.json +320 -0
  150. package/docs/safety-index/artifacts/eslint-mcp-server.md +201 -0
  151. package/docs/safety-index/artifacts/espn-server.json +394 -0
  152. package/docs/safety-index/artifacts/espn-server.md +187 -0
  153. package/docs/safety-index/artifacts/everything-server.json +145 -18
  154. package/docs/safety-index/artifacts/everything-server.md +56 -11
  155. package/docs/safety-index/artifacts/exa-server.json +400 -0
  156. package/docs/safety-index/artifacts/exa-server.md +207 -0
  157. package/docs/safety-index/artifacts/executeautomation-playwright-server.json +625 -18
  158. package/docs/safety-index/artifacts/executeautomation-playwright-server.md +95 -11
  159. package/docs/safety-index/artifacts/fbr-mcp.json +66 -0
  160. package/docs/safety-index/artifacts/fbr-mcp.md +106 -0
  161. package/docs/safety-index/artifacts/fetch-server.json +66 -0
  162. package/docs/safety-index/artifacts/fetch-server.md +106 -0
  163. package/docs/safety-index/artifacts/fhir-server.json +66 -0
  164. package/docs/safety-index/artifacts/fhir-server.md +100 -0
  165. package/docs/safety-index/artifacts/figma-server.json +1766 -0
  166. package/docs/safety-index/artifacts/figma-server.md +256 -0
  167. package/docs/safety-index/artifacts/filesystem-mcp-server.json +427 -23
  168. package/docs/safety-index/artifacts/filesystem-mcp-server.md +75 -14
  169. package/docs/safety-index/artifacts/filesystem-server.json +426 -22
  170. package/docs/safety-index/artifacts/filesystem-server.md +73 -12
  171. package/docs/safety-index/artifacts/firecrawl-server.json +4056 -0
  172. package/docs/safety-index/artifacts/firecrawl-server.md +243 -0
  173. package/docs/safety-index/artifacts/flight-server.json +66 -0
  174. package/docs/safety-index/artifacts/flight-server.md +106 -0
  175. package/docs/safety-index/artifacts/foodpanda-pakistan-mcp.json +66 -0
  176. package/docs/safety-index/artifacts/foodpanda-pakistan-mcp.md +106 -0
  177. package/docs/safety-index/artifacts/gcp-mcp-server.json +66 -0
  178. package/docs/safety-index/artifacts/gcp-mcp-server.md +103 -0
  179. package/docs/safety-index/artifacts/github-mcp-server.json +374 -21
  180. package/docs/safety-index/artifacts/github-mcp-server.md +71 -15
  181. package/docs/safety-index/artifacts/gitlab-server.json +229 -0
  182. package/docs/safety-index/artifacts/gitlab-server.md +753 -0
  183. package/docs/safety-index/artifacts/gmail-server.json +66 -0
  184. package/docs/safety-index/artifacts/gmail-server.md +106 -0
  185. package/docs/safety-index/artifacts/google-calendar-server.json +66 -0
  186. package/docs/safety-index/artifacts/google-calendar-server.md +106 -0
  187. package/docs/safety-index/artifacts/google-drive-server.json +66 -0
  188. package/docs/safety-index/artifacts/google-drive-server.md +106 -0
  189. package/docs/safety-index/artifacts/google-sheets-server.json +66 -0
  190. package/docs/safety-index/artifacts/google-sheets-server.md +106 -0
  191. package/docs/safety-index/artifacts/google-tasks-server.json +66 -0
  192. package/docs/safety-index/artifacts/google-tasks-server.md +106 -0
  193. package/docs/safety-index/artifacts/gst-mcp.json +66 -0
  194. package/docs/safety-index/artifacts/gst-mcp.md +106 -0
  195. package/docs/safety-index/artifacts/gupshup-mcp.json +66 -0
  196. package/docs/safety-index/artifacts/gupshup-mcp.md +106 -0
  197. package/docs/safety-index/artifacts/hasura-mcp.json +66 -0
  198. package/docs/safety-index/artifacts/hasura-mcp.md +106 -0
  199. package/docs/safety-index/artifacts/healthcare-ayushman-bharat-mcp.json +66 -0
  200. package/docs/safety-index/artifacts/healthcare-ayushman-bharat-mcp.md +106 -0
  201. package/docs/safety-index/artifacts/hec-pakistan-mcp.json +66 -0
  202. package/docs/safety-index/artifacts/hec-pakistan-mcp.md +106 -0
  203. package/docs/safety-index/artifacts/heroku-server.json +1502 -0
  204. package/docs/safety-index/artifacts/heroku-server.md +236 -0
  205. package/docs/safety-index/artifacts/homekit-server.json +66 -0
  206. package/docs/safety-index/artifacts/homekit-server.md +106 -0
  207. package/docs/safety-index/artifacts/hotel-booking-server.json +66 -0
  208. package/docs/safety-index/artifacts/hotel-booking-server.md +106 -0
  209. package/docs/safety-index/artifacts/hubspot-mcp-server.json +66 -0
  210. package/docs/safety-index/artifacts/hubspot-mcp-server.md +106 -0
  211. package/docs/safety-index/artifacts/huggingface-server.json +66 -0
  212. package/docs/safety-index/artifacts/huggingface-server.md +106 -0
  213. package/docs/safety-index/artifacts/indian-food-nutrition-mcp.json +663 -0
  214. package/docs/safety-index/artifacts/indian-food-nutrition-mcp.md +211 -0
  215. package/docs/safety-index/artifacts/irctc-mcp.json +66 -0
  216. package/docs/safety-index/artifacts/irctc-mcp.md +106 -0
  217. package/docs/safety-index/artifacts/jazz-mcp.json +66 -0
  218. package/docs/safety-index/artifacts/jazz-mcp.md +106 -0
  219. package/docs/safety-index/artifacts/jazzcash-mcp.json +66 -0
  220. package/docs/safety-index/artifacts/jazzcash-mcp.md +102 -0
  221. package/docs/safety-index/artifacts/jina-server.json +66 -0
  222. package/docs/safety-index/artifacts/jina-server.md +106 -0
  223. package/docs/safety-index/artifacts/jira-mcp-server.json +66 -0
  224. package/docs/safety-index/artifacts/jira-mcp-server.md +104 -0
  225. package/docs/safety-index/artifacts/k2-mcp.json +66 -0
  226. package/docs/safety-index/artifacts/k2-mcp.md +106 -0
  227. package/docs/safety-index/artifacts/karachi-stock-exchange-mcp.json +67 -0
  228. package/docs/safety-index/artifacts/karachi-stock-exchange-mcp.md +114 -0
  229. package/docs/safety-index/artifacts/khan-academy-server.json +66 -0
  230. package/docs/safety-index/artifacts/khan-academy-server.md +106 -0
  231. package/docs/safety-index/artifacts/kubernetes-server.json +1126 -29
  232. package/docs/safety-index/artifacts/kubernetes-server.md +141 -18
  233. package/docs/safety-index/artifacts/langfuse-mcp.json +66 -0
  234. package/docs/safety-index/artifacts/langfuse-mcp.md +106 -0
  235. package/docs/safety-index/artifacts/linear-server.json +1494 -0
  236. package/docs/safety-index/artifacts/linear-server.md +237 -0
  237. package/docs/safety-index/artifacts/mapmyindia-mcp.json +66 -0
  238. package/docs/safety-index/artifacts/mapmyindia-mcp.md +106 -0
  239. package/docs/safety-index/artifacts/memory-server.json +191 -18
  240. package/docs/safety-index/artifacts/memory-server.md +52 -10
  241. package/docs/safety-index/artifacts/minecraft-server.json +592 -0
  242. package/docs/safety-index/artifacts/minecraft-server.md +186 -0
  243. package/docs/safety-index/artifacts/mls-server.json +66 -0
  244. package/docs/safety-index/artifacts/mls-server.md +106 -0
  245. package/docs/safety-index/artifacts/mongodb-server.json +66 -0
  246. package/docs/safety-index/artifacts/mongodb-server.md +106 -0
  247. package/docs/safety-index/artifacts/mui-mcp-server.json +419 -0
  248. package/docs/safety-index/artifacts/mui-mcp-server.md +208 -0
  249. package/docs/safety-index/artifacts/mysql-mcp-server.json +66 -0
  250. package/docs/safety-index/artifacts/mysql-mcp-server.md +106 -0
  251. package/docs/safety-index/artifacts/nadra-mcp.json +66 -0
  252. package/docs/safety-index/artifacts/nadra-mcp.md +106 -0
  253. package/docs/safety-index/artifacts/neon-server.json +66 -0
  254. package/docs/safety-index/artifacts/neon-server.md +103 -0
  255. package/docs/safety-index/artifacts/notion-server.json +7151 -0
  256. package/docs/safety-index/artifacts/notion-server.md +236 -0
  257. package/docs/safety-index/artifacts/obsidian-mcp.json +66 -0
  258. package/docs/safety-index/artifacts/obsidian-mcp.md +106 -0
  259. package/docs/safety-index/artifacts/ola-maps-mcp.json +66 -0
  260. package/docs/safety-index/artifacts/ola-maps-mcp.md +106 -0
  261. package/docs/safety-index/artifacts/olx-pakistan-mcp.json +66 -0
  262. package/docs/safety-index/artifacts/olx-pakistan-mcp.md +106 -0
  263. package/docs/safety-index/artifacts/onesignal-server.json +66 -0
  264. package/docs/safety-index/artifacts/onesignal-server.md +106 -0
  265. package/docs/safety-index/artifacts/openai-mcp-server.json +66 -0
  266. package/docs/safety-index/artifacts/openai-mcp-server.md +106 -0
  267. package/docs/safety-index/artifacts/opentofu-server.json +30 -18
  268. package/docs/safety-index/artifacts/opentofu-server.md +27 -9
  269. package/docs/safety-index/artifacts/openweather-server.json +66 -0
  270. package/docs/safety-index/artifacts/openweather-server.md +106 -0
  271. package/docs/safety-index/artifacts/pakistan-cricket-mcp.json +66 -0
  272. package/docs/safety-index/artifacts/pakistan-cricket-mcp.md +106 -0
  273. package/docs/safety-index/artifacts/pakistan-post-mcp.json +66 -0
  274. package/docs/safety-index/artifacts/pakistan-post-mcp.md +106 -0
  275. package/docs/safety-index/artifacts/pakistan-weather-mcp.json +66 -0
  276. package/docs/safety-index/artifacts/pakistan-weather-mcp.md +106 -0
  277. package/docs/safety-index/artifacts/pakwheels-mcp.json +66 -0
  278. package/docs/safety-index/artifacts/pakwheels-mcp.md +106 -0
  279. package/docs/safety-index/artifacts/paytm-mcp.json +66 -0
  280. package/docs/safety-index/artifacts/paytm-mcp.md +106 -0
  281. package/docs/safety-index/artifacts/perplexity-mcp.json +66 -0
  282. package/docs/safety-index/artifacts/perplexity-mcp.md +106 -0
  283. package/docs/safety-index/artifacts/pims-mcp.json +66 -0
  284. package/docs/safety-index/artifacts/pims-mcp.md +106 -0
  285. package/docs/safety-index/artifacts/playwright-mcp-server.json +415 -24
  286. package/docs/safety-index/artifacts/playwright-mcp-server.md +84 -20
  287. package/docs/safety-index/artifacts/postgres-server.json +330 -0
  288. package/docs/safety-index/artifacts/postgres-server.md +208 -0
  289. package/docs/safety-index/artifacts/postman-india-region.json +66 -0
  290. package/docs/safety-index/artifacts/postman-india-region.md +102 -0
  291. package/docs/safety-index/artifacts/postman-mcp-server.json +66 -0
  292. package/docs/safety-index/artifacts/postman-mcp-server.md +102 -0
  293. package/docs/safety-index/artifacts/promptopia-server.json +95 -18
  294. package/docs/safety-index/artifacts/promptopia-server.md +44 -10
  295. package/docs/safety-index/artifacts/pubmed-mcp-server.json +58 -0
  296. package/docs/safety-index/artifacts/pubmed-mcp-server.md +96 -0
  297. package/docs/safety-index/artifacts/punjab-health-mcp.json +66 -0
  298. package/docs/safety-index/artifacts/punjab-health-mcp.md +106 -0
  299. package/docs/safety-index/artifacts/puppeteer-server.json +118 -29
  300. package/docs/safety-index/artifacts/puppeteer-server.md +62 -20
  301. package/docs/safety-index/artifacts/qase-server.json +7055 -0
  302. package/docs/safety-index/artifacts/qase-server.md +329 -0
  303. package/docs/safety-index/artifacts/qdrant-server.json +66 -0
  304. package/docs/safety-index/artifacts/qdrant-server.md +106 -0
  305. package/docs/safety-index/artifacts/raspberrypi-server.json +66 -0
  306. package/docs/safety-index/artifacts/raspberrypi-server.md +106 -0
  307. package/docs/safety-index/artifacts/razorpay-mcp.json +66 -0
  308. package/docs/safety-index/artifacts/razorpay-mcp.md +103 -0
  309. package/docs/safety-index/artifacts/reddit-server.json +66 -0
  310. package/docs/safety-index/artifacts/reddit-server.md +106 -0
  311. package/docs/safety-index/artifacts/redis-server.json +66 -0
  312. package/docs/safety-index/artifacts/redis-server.md +106 -0
  313. package/docs/safety-index/artifacts/ref-tools-server.json +95 -18
  314. package/docs/safety-index/artifacts/ref-tools-server.md +43 -10
  315. package/docs/safety-index/artifacts/resend-mcp.json +66 -0
  316. package/docs/safety-index/artifacts/resend-mcp.md +102 -0
  317. package/docs/safety-index/artifacts/rozgar-mcp.json +66 -0
  318. package/docs/safety-index/artifacts/rozgar-mcp.md +106 -0
  319. package/docs/safety-index/artifacts/s3-mcp-server.json +467 -0
  320. package/docs/safety-index/artifacts/s3-mcp-server.md +209 -0
  321. package/docs/safety-index/artifacts/salesforce-mcp-server.json +66 -0
  322. package/docs/safety-index/artifacts/salesforce-mcp-server.md +106 -0
  323. package/docs/safety-index/artifacts/sehat-sahulat-mcp.json +66 -0
  324. package/docs/safety-index/artifacts/sehat-sahulat-mcp.md +106 -0
  325. package/docs/safety-index/artifacts/sendgrid-mcp.json +66 -0
  326. package/docs/safety-index/artifacts/sendgrid-mcp.md +106 -0
  327. package/docs/safety-index/artifacts/sentry-server.json +66 -0
  328. package/docs/safety-index/artifacts/sentry-server.md +106 -0
  329. package/docs/safety-index/artifacts/sequential-thinking-server.json +59 -18
  330. package/docs/safety-index/artifacts/sequential-thinking-server.md +40 -8
  331. package/docs/safety-index/artifacts/shopify-mcp-server.json +66 -0
  332. package/docs/safety-index/artifacts/shopify-mcp-server.md +106 -0
  333. package/docs/safety-index/artifacts/shopify-mcp.json +66 -0
  334. package/docs/safety-index/artifacts/shopify-mcp.md +106 -0
  335. package/docs/safety-index/artifacts/shortcut-mcp-server.json +66 -0
  336. package/docs/safety-index/artifacts/shortcut-mcp-server.md +102 -0
  337. package/docs/safety-index/artifacts/slack-server.json +66 -0
  338. package/docs/safety-index/artifacts/slack-server.md +102 -0
  339. package/docs/safety-index/artifacts/smartbear-mcp-server.json +21483 -0
  340. package/docs/safety-index/artifacts/smartbear-mcp-server.md +900 -0
  341. package/docs/safety-index/artifacts/spotify-mcp.json +2071 -0
  342. package/docs/safety-index/artifacts/spotify-mcp.md +237 -0
  343. package/docs/safety-index/artifacts/spotify-server.json +66 -0
  344. package/docs/safety-index/artifacts/spotify-server.md +106 -0
  345. package/docs/safety-index/artifacts/sqlite-server.json +67 -0
  346. package/docs/safety-index/artifacts/sqlite-server.md +106 -0
  347. package/docs/safety-index/artifacts/stable-diffusion-server.json +66 -0
  348. package/docs/safety-index/artifacts/stable-diffusion-server.md +106 -0
  349. package/docs/safety-index/artifacts/stock-nse-india.json +66 -0
  350. package/docs/safety-index/artifacts/stock-nse-india.md +106 -0
  351. package/docs/safety-index/artifacts/storybook-mcp-server.json +66 -0
  352. package/docs/safety-index/artifacts/storybook-mcp-server.md +103 -0
  353. package/docs/safety-index/artifacts/stripe-server.json +66 -0
  354. package/docs/safety-index/artifacts/stripe-server.md +106 -0
  355. package/docs/safety-index/artifacts/supabase-server.json +66 -0
  356. package/docs/safety-index/artifacts/supabase-server.md +102 -0
  357. package/docs/safety-index/artifacts/tavily-search-server.json +66 -0
  358. package/docs/safety-index/artifacts/tavily-search-server.md +106 -0
  359. package/docs/safety-index/artifacts/telegram-mcp-server.json +66 -0
  360. package/docs/safety-index/artifacts/telegram-mcp-server.md +103 -0
  361. package/docs/safety-index/artifacts/telenor-pakistan-mcp.json +66 -0
  362. package/docs/safety-index/artifacts/telenor-pakistan-mcp.md +106 -0
  363. package/docs/safety-index/artifacts/textlocal-mcp.json +66 -0
  364. package/docs/safety-index/artifacts/textlocal-mcp.md +106 -0
  365. package/docs/safety-index/artifacts/tooljet-mcp.json +66 -0
  366. package/docs/safety-index/artifacts/tooljet-mcp.md +106 -0
  367. package/docs/safety-index/artifacts/transcend-server.json +3438 -0
  368. package/docs/safety-index/artifacts/transcend-server.md +277 -0
  369. package/docs/safety-index/artifacts/trello-mcp-server.json +916 -0
  370. package/docs/safety-index/artifacts/trello-mcp-server.md +211 -0
  371. package/docs/safety-index/artifacts/twilio-mcp.json +66 -0
  372. package/docs/safety-index/artifacts/twilio-mcp.md +106 -0
  373. package/docs/safety-index/artifacts/udyam-mcp.json +66 -0
  374. package/docs/safety-index/artifacts/udyam-mcp.md +106 -0
  375. package/docs/safety-index/artifacts/ufone-mcp.json +66 -0
  376. package/docs/safety-index/artifacts/ufone-mcp.md +106 -0
  377. package/docs/safety-index/artifacts/ui5-mcp-server.json +24 -24
  378. package/docs/safety-index/artifacts/ui5-mcp-server.md +13 -13
  379. package/docs/safety-index/artifacts/unity-server.json +66 -0
  380. package/docs/safety-index/artifacts/unity-server.md +102 -0
  381. package/docs/safety-index/artifacts/upi-mcp.json +452 -0
  382. package/docs/safety-index/artifacts/upi-mcp.md +201 -0
  383. package/docs/safety-index/artifacts/vercel-ai-server.json +66 -0
  384. package/docs/safety-index/artifacts/vercel-ai-server.md +106 -0
  385. package/docs/safety-index/artifacts/vimeo-server.json +66 -0
  386. package/docs/safety-index/artifacts/vimeo-server.md +106 -0
  387. package/docs/safety-index/artifacts/weather-server.json +66 -0
  388. package/docs/safety-index/artifacts/weather-server.md +106 -0
  389. package/docs/safety-index/artifacts/whatsapp-business-mcp.json +66 -0
  390. package/docs/safety-index/artifacts/whatsapp-business-mcp.md +106 -0
  391. package/docs/safety-index/artifacts/whatsapp-mcp-server.json +66 -0
  392. package/docs/safety-index/artifacts/whatsapp-mcp-server.md +106 -0
  393. package/docs/safety-index/artifacts/whatsapp-mcp.json +66 -0
  394. package/docs/safety-index/artifacts/whatsapp-mcp.md +106 -0
  395. package/docs/safety-index/artifacts/yahoo-finance-server.json +626 -0
  396. package/docs/safety-index/artifacts/yahoo-finance-server.md +187 -0
  397. package/docs/safety-index/artifacts/youtube-mcp-server.json +58 -0
  398. package/docs/safety-index/artifacts/youtube-mcp-server.md +96 -0
  399. package/docs/safety-index/artifacts/youtube-server.json +66 -0
  400. package/docs/safety-index/artifacts/youtube-server.md +103 -0
  401. package/docs/safety-index/artifacts/zendesk-mcp.json +66 -0
  402. package/docs/safety-index/artifacts/zendesk-mcp.md +106 -0
  403. package/docs/safety-index/artifacts/zillow-server.json +66 -0
  404. package/docs/safety-index/artifacts/zillow-server.md +102 -0
  405. package/docs/safety-index/artifacts/zong-mcp.json +66 -0
  406. package/docs/safety-index/artifacts/zong-mcp.md +106 -0
  407. package/docs/safety-index/targets.json +2663 -3
  408. package/package.json +10 -9
@@ -0,0 +1,81 @@
1
+ import { SCHEMA_VERSION } from "../types.js";
2
+ const STATUS_RANK = {
3
+ pass: 6,
4
+ partial: 5,
5
+ flaky: 4,
6
+ unsupported: 3,
7
+ skipped: 2,
8
+ fail: 1
9
+ };
10
+ function toEntry(base, head) {
11
+ const source = head ?? base;
12
+ if (source === undefined) {
13
+ throw new Error("Expected at least one check result when building a diff entry.");
14
+ }
15
+ return {
16
+ id: source.id,
17
+ capability: source.capability,
18
+ fromStatus: base?.status,
19
+ toStatus: head?.status,
20
+ message: head?.message ??
21
+ base?.message ??
22
+ "No additional diagnostic message was recorded."
23
+ };
24
+ }
25
+ export function diffArtifacts(base, head) {
26
+ const baseChecks = new Map(base.checks.map((check) => [check.id, check]));
27
+ const headChecks = new Map(head.checks.map((check) => [check.id, check]));
28
+ const checkIds = Array.from(new Set([...baseChecks.keys(), ...headChecks.keys()]));
29
+ const regressions = [];
30
+ const recoveries = [];
31
+ const unchanged = [];
32
+ const added = [];
33
+ const removed = [];
34
+ for (const checkId of checkIds) {
35
+ const baseCheck = baseChecks.get(checkId);
36
+ const headCheck = headChecks.get(checkId);
37
+ if (baseCheck === undefined && headCheck !== undefined) {
38
+ added.push(toEntry(undefined, headCheck));
39
+ continue;
40
+ }
41
+ if (baseCheck !== undefined && headCheck === undefined) {
42
+ removed.push(toEntry(baseCheck, undefined));
43
+ continue;
44
+ }
45
+ if (baseCheck === undefined || headCheck === undefined) {
46
+ continue;
47
+ }
48
+ if (baseCheck.status === headCheck.status) {
49
+ unchanged.push(toEntry(baseCheck, headCheck));
50
+ continue;
51
+ }
52
+ if (STATUS_RANK[headCheck.status] < STATUS_RANK[baseCheck.status]) {
53
+ regressions.push(toEntry(baseCheck, headCheck));
54
+ continue;
55
+ }
56
+ recoveries.push(toEntry(baseCheck, headCheck));
57
+ }
58
+ const summary = {
59
+ regressions: regressions.length,
60
+ recoveries: recoveries.length,
61
+ unchanged: unchanged.length,
62
+ added: added.length,
63
+ removed: removed.length,
64
+ gate: regressions.length > 0 ? "fail" : "pass"
65
+ };
66
+ return {
67
+ artifactType: "diff",
68
+ schemaVersion: SCHEMA_VERSION,
69
+ gate: summary.gate,
70
+ baseRunId: base.runId,
71
+ headRunId: head.runId,
72
+ createdAt: new Date().toISOString(),
73
+ summary,
74
+ regressions,
75
+ recoveries,
76
+ unchanged,
77
+ added,
78
+ removed
79
+ };
80
+ }
81
+ //# sourceMappingURL=diff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/diff/diff.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { DiffArtifact, RunArtifact } from "../types.js";
2
+ export declare function renderJson(artifact: RunArtifact | DiffArtifact): string;
@@ -0,0 +1,4 @@
1
+ export function renderJson(artifact) {
2
+ return JSON.stringify(artifact, null, 2);
3
+ }
4
+ //# sourceMappingURL=json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/reporters/json.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAAC,QAAoC;IAC7D,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { RunArtifact, TargetConfig } from "../types.js";
2
+ export declare function runTarget(target: TargetConfig): Promise<RunArtifact>;
@@ -0,0 +1,135 @@
1
+ import os from "node:os";
2
+ import { AdapterConnectError, LocalProcessAdapter } from "../adapters/local-process.js";
3
+ import { runPromptsCheck } from "../checks/prompts.js";
4
+ import { runResourcesCheck } from "../checks/resources.js";
5
+ import { runSemanticsCheck } from "../checks/semantics.js";
6
+ import { runToolsCheck } from "../checks/tools.js";
7
+ import { SCHEMA_VERSION } from "../types.js";
8
+ import { buildRunId } from "../utils/ids.js";
9
+ import { TOOL_VERSION } from "../version.js";
10
+ function createEmptyCounts() {
11
+ return {
12
+ total: 0,
13
+ pass: 0,
14
+ fail: 0,
15
+ partial: 0,
16
+ unsupported: 0,
17
+ flaky: 0,
18
+ skipped: 0
19
+ };
20
+ }
21
+ function buildSummary(checks, fatalError) {
22
+ const counts = createEmptyCounts();
23
+ for (const check of checks) {
24
+ counts.total += 1;
25
+ counts[check.status] += 1;
26
+ }
27
+ const gate = fatalError !== undefined || counts.fail > 0 ? "fail" : "pass";
28
+ return {
29
+ ...counts,
30
+ gate
31
+ };
32
+ }
33
+ export async function runTarget(target) {
34
+ const adapter = new LocalProcessAdapter();
35
+ const runId = buildRunId();
36
+ const createdAt = new Date().toISOString();
37
+ let checks = [];
38
+ let fatalError;
39
+ let serverName;
40
+ let serverVersion;
41
+ try {
42
+ const session = await adapter.connect(target);
43
+ serverName = session.serverName;
44
+ serverVersion = session.serverVersion;
45
+ try {
46
+ const checkContext = {
47
+ client: session.client,
48
+ serverCapabilities: session.serverCapabilities,
49
+ target,
50
+ timeoutMs: target.timeoutMs ?? 10_000,
51
+ stderrLines: session.stderrLines
52
+ };
53
+ const toolsCheck = await runToolsCheck(checkContext);
54
+ const promptsCheck = await runPromptsCheck(checkContext);
55
+ const resourcesCheck = await runResourcesCheck(checkContext);
56
+ const semanticsCheck = runSemanticsCheck([toolsCheck.observation, promptsCheck.observation, resourcesCheck.observation].filter((observation) => observation !== undefined), session.stderrLines);
57
+ checks = [
58
+ toolsCheck.result,
59
+ promptsCheck.result,
60
+ resourcesCheck.result,
61
+ semanticsCheck.result
62
+ ];
63
+ }
64
+ finally {
65
+ await session.close();
66
+ }
67
+ }
68
+ catch (error) {
69
+ fatalError = error instanceof Error ? error.message : String(error);
70
+ const skippedMessage = error instanceof AdapterConnectError
71
+ ? "Skipped because startup failed before the MCP session initialized. See the failure diagnosis."
72
+ : "Skipped because the adapter never established a session.";
73
+ checks = [
74
+ {
75
+ id: "tools",
76
+ capability: "tools",
77
+ status: "skipped",
78
+ durationMs: 0,
79
+ message: skippedMessage,
80
+ evidence: []
81
+ },
82
+ {
83
+ id: "prompts",
84
+ capability: "prompts",
85
+ status: "skipped",
86
+ durationMs: 0,
87
+ message: skippedMessage,
88
+ evidence: []
89
+ },
90
+ {
91
+ id: "resources",
92
+ capability: "resources",
93
+ status: "skipped",
94
+ durationMs: 0,
95
+ message: skippedMessage,
96
+ evidence: []
97
+ },
98
+ {
99
+ id: "semantics",
100
+ capability: "semantics",
101
+ status: "skipped",
102
+ durationMs: 0,
103
+ message: skippedMessage,
104
+ evidence: []
105
+ }
106
+ ];
107
+ }
108
+ const summary = buildSummary(checks, fatalError);
109
+ return {
110
+ artifactType: "run",
111
+ schemaVersion: SCHEMA_VERSION,
112
+ gate: summary.gate,
113
+ runId,
114
+ createdAt,
115
+ toolVersion: TOOL_VERSION,
116
+ target: {
117
+ targetId: target.targetId,
118
+ adapter: target.adapter,
119
+ command: target.command,
120
+ args: target.args,
121
+ cwd: target.cwd,
122
+ metadata: target.metadata,
123
+ serverName,
124
+ serverVersion
125
+ },
126
+ environment: {
127
+ platform: `${os.platform()} ${os.release()}`,
128
+ nodeVersion: process.version
129
+ },
130
+ summary,
131
+ checks,
132
+ fatalError
133
+ };
134
+ }
135
+ //# sourceMappingURL=runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../src/runner/runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,SAAS,iBAAiB;IACxB,OAAO;QACL,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,IAAI,EAAE,CAAC;QACP,OAAO,EAAE,CAAC;QACV,WAAW,EAAE,CAAC;QACd,KAAK,EAAE,CAAC;QACR,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,MAAqB,EAAE,UAAmB;IAC9D,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IACD,MAAM,IAAI,GACR,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAChE,OAAO;QACL,GAAG,MAAM;QACT,IAAI;KACL,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAoB;IAClD,MAAM,OAAO,GAAG,IAAI,mBAAmB,EAAE,CAAC;IAC1C,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAE3C,IAAI,MAAM,GAAkB,EAAE,CAAC;IAC/B,IAAI,UAA8B,CAAC;IACnC,IAAI,UAA8B,CAAC;IACnC,IAAI,aAAiC,CAAC;IAEtC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9C,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QAChC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,YAAY,GAAG;gBACnB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;gBAC9C,MAAM;gBACN,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,MAAM;gBACrC,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC;YAEF,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,CAAC;YACrD,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;YACzD,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC;YAC7D,MAAM,cAAc,GAAG,iBAAiB,CACtC,CAAC,UAAU,CAAC,WAAW,EAAE,YAAY,CAAC,WAAW,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,MAAM,CACnF,CAAC,WAAW,EAAkD,EAAE,CAC9D,WAAW,KAAK,SAAS,CAC5B,EACD,OAAO,CAAC,WAAW,CACpB,CAAC;YAEF,MAAM,GAAG;gBACP,UAAU,CAAC,MAAM;gBACjB,YAAY,CAAC,MAAM;gBACnB,cAAc,CAAC,MAAM;gBACrB,cAAc,CAAC,MAAM;aACtB,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,UAAU,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACpE,MAAM,cAAc,GAClB,KAAK,YAAY,mBAAmB;YAClC,CAAC,CAAC,+FAA+F;YACjG,CAAC,CAAC,0DAA0D,CAAC;QACjE,MAAM,GAAG;YACP;gBACE,EAAE,EAAE,OAAO;gBACX,UAAU,EAAE,OAAO;gBACnB,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,cAAc;gBACvB,QAAQ,EAAE,EAAE;aACb;YACD;gBACE,EAAE,EAAE,SAAS;gBACb,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,cAAc;gBACvB,QAAQ,EAAE,EAAE;aACb;YACD;gBACE,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,WAAW;gBACvB,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,cAAc;gBACvB,QAAQ,EAAE,EAAE;aACb;YACD;gBACE,EAAE,EAAE,WAAW;gBACf,UAAU,EAAE,WAAW;gBACvB,MAAM,EAAE,SAAS;gBACjB,UAAU,EAAE,CAAC;gBACb,OAAO,EAAE,cAAc;gBACvB,QAAQ,EAAE,EAAE;aACb;SACF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAEjD,OAAO;QACL,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,cAAc;QAC7B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK;QACL,SAAS;QACT,WAAW,EAAE,YAAY;QACzB,MAAM,EAAE;YACN,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU;YACV,aAAa;SACd;QACD,WAAW,EAAE;YACX,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE;YAC5C,WAAW,EAAE,OAAO,CAAC,OAAO;SAC7B;QACD,OAAO;QACP,MAAM;QACN,UAAU;KACX,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { DiffArtifact, RunArtifact } from "../types.js";
2
+ export type Artifact = RunArtifact | DiffArtifact;
3
+ export declare function defaultRunsDirectory(cwd?: string): string;
4
+ export declare function ensureDirectory(directoryPath: string): Promise<void>;
5
+ export declare function writeRunArtifact(artifact: RunArtifact, outDir: string): Promise<string>;
6
+ export declare function readArtifact(filePath: string): Promise<Artifact>;
@@ -0,0 +1,21 @@
1
+ import { mkdir, readFile, writeFile } from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { slugify } from "../utils/ids.js";
4
+ export function defaultRunsDirectory(cwd = process.cwd()) {
5
+ return path.join(cwd, ".mcp-observatory", "runs");
6
+ }
7
+ export async function ensureDirectory(directoryPath) {
8
+ await mkdir(directoryPath, { recursive: true });
9
+ }
10
+ export async function writeRunArtifact(artifact, outDir) {
11
+ await ensureDirectory(outDir);
12
+ const fileName = `${artifact.createdAt.replaceAll(":", "-")}--${slugify(artifact.target.targetId)}.json`;
13
+ const filePath = path.join(outDir, fileName);
14
+ await writeFile(filePath, JSON.stringify(artifact, null, 2) + "\n", "utf8");
15
+ return filePath;
16
+ }
17
+ export async function readArtifact(filePath) {
18
+ const content = await readFile(filePath, "utf8");
19
+ return JSON.parse(content);
20
+ }
21
+ //# sourceMappingURL=filesystem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../src/storage/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAI1C,MAAM,UAAU,oBAAoB,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE;IACtD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,aAAqB;IACzD,MAAM,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAqB,EACrB,MAAc;IAEd,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,QAAQ,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,OAAO,CACrE,QAAQ,CAAC,MAAM,CAAC,QAAQ,CACzB,OAAO,CAAC;IACT,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7C,MAAM,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5E,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,QAAgB;IACjD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACjD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAa,CAAC;AACzC,CAAC"}
@@ -21,6 +21,7 @@ export interface TelemetryEnrichment {
21
21
  resourcesFound?: number;
22
22
  gateResult?: string;
23
23
  executionMs?: number;
24
+ sessionDurationMs?: number | null;
24
25
  deepFlag?: boolean;
25
26
  securityFlag?: boolean;
26
27
  cloudUpload?: boolean;
@@ -61,6 +62,13 @@ export interface TelemetryEnrichment {
61
62
  setupCiSarif?: boolean;
62
63
  setupCiFixApplied?: boolean;
63
64
  sampleReport?: boolean;
65
+ stageOverride?: string;
66
+ targetServer?: string | null;
67
+ findingSeverityCounts?: string | null;
68
+ auditProfile?: string;
69
+ policyRuleCount?: number;
70
+ scanCount?: number;
71
+ featureChainOverride?: string[];
64
72
  receiptGenerated?: boolean;
65
73
  receiptFormat?: string;
66
74
  receiptProfile?: string;
@@ -100,11 +108,13 @@ export interface TelemetryEvent extends TelemetryEnrichment {
100
108
  transport: "cli" | "mcp";
101
109
  machineFingerprint?: string;
102
110
  sessionId?: string;
103
- featureChain?: string[];
111
+ featureChain?: string[] | null;
104
112
  commandSequence?: string[];
105
- stage?: string;
113
+ stage?: string | null;
114
+ targetServer?: string | null;
115
+ findingSeverityCounts?: string | null;
116
+ sessionDurationMs?: number | null;
106
117
  referrer?: string;
107
- optedInEmail?: string;
108
118
  }
109
119
  export declare function configDir(): string;
110
120
  export declare function loadTelemetryConfig(): Promise<TelemetryConfig>;
@@ -112,8 +122,10 @@ export declare function saveTelemetryConfig(config: TelemetryConfig): Promise<vo
112
122
  /** Reset cached config (for testing). */
113
123
  export declare function _resetConfigCache(): void;
114
124
  export declare function computeFingerprint(): string;
125
+ export declare function computeTelemetryFingerprint(): string;
115
126
  export declare function updateFeatureChain(command: string): Promise<void>;
116
127
  export declare function deriveStage(chain: string[]): string;
128
+ export declare function deriveStage(eventType: string, command: string): string | null;
117
129
  export declare function isTelemetryEnabled(): boolean;
118
130
  export declare function detectCI(): {
119
131
  isCI: boolean;
@@ -145,5 +157,15 @@ interface UserIdentity {
145
157
  export declare function collectUserIdentity(): Promise<UserIdentity>;
146
158
  /** Reset identity cache (for testing). */
147
159
  export declare function _resetIdentityCache(): void;
160
+ export declare function generateSessionId(): string;
148
161
  export declare function buildEvent(event: string, command: string, transport: "cli" | "mcp", enrichment?: TelemetryEnrichment): TelemetryEvent;
162
+ export declare function recordSessionStart(sessionId: string): void;
163
+ export declare function recordSessionEnd(sessionId: string): void;
164
+ /** Reset session timestamps (for testing). */
165
+ export declare function _resetSessionTimestamps(): void;
166
+ export declare function countFindingsBySeverity(findings: any[]): {
167
+ high: number;
168
+ medium: number;
169
+ low: number;
170
+ };
149
171
  export {};
@@ -63,8 +63,13 @@ export function _resetConfigCache() {
63
63
  _cachedConfig = null;
64
64
  }
65
65
  export function computeFingerprint() {
66
- const input = `${process.platform}-${process.arch}-${process.version}-${os.homedir()}`;
67
- return createHash("sha256").update(input).digest("hex").slice(0, 16);
66
+ const input = `${os.hostname()}:${os.userInfo().username}`;
67
+ return createHash("sha256").update(input).digest("hex");
68
+ }
69
+ export function computeTelemetryFingerprint() {
70
+ const hostname = os.hostname();
71
+ const username = os.userInfo().username;
72
+ return createHash("sha256").update(`${hostname}:${username}`).digest("hex");
68
73
  }
69
74
  export async function updateFeatureChain(command) {
70
75
  const config = await loadTelemetryConfig();
@@ -82,21 +87,35 @@ export async function updateFeatureChain(command) {
82
87
  commandSequence: seq,
83
88
  });
84
89
  }
85
- export function deriveStage(chain) {
86
- if (!chain || chain.length === 0)
90
+ export function deriveStage(arg1, arg2) {
91
+ if (Array.isArray(arg1)) {
92
+ if (!arg1 || arg1.length === 0)
93
+ return "install";
94
+ const has = (c) => arg1.some(x => x === c || x.includes(c));
95
+ if (has("cloud") || has("receipt"))
96
+ return "paid_intent";
97
+ if (has("risk-graph") || has("attack-sim"))
98
+ return "power_user";
99
+ if (has("setup-ci") || has("ci-report"))
100
+ return "ci_setup";
101
+ if (arg1.length >= 3)
102
+ return "recurring";
103
+ if (has("scan") || has("test"))
104
+ return "first_scan";
87
105
  return "install";
88
- const has = (c) => chain.some(x => x === c || x.includes(c));
89
- if (has("cloud") || has("receipt"))
90
- return "paid_intent";
91
- if (has("risk-graph") || has("attack-sim"))
92
- return "power_user";
93
- if (has("setup-ci") || has("ci-report"))
94
- return "ci_setup";
95
- if (chain.length >= 3)
96
- return "recurring";
97
- if (has("scan") || has("test"))
98
- return "first_scan";
99
- return "install";
106
+ }
107
+ const cmd = (arg2 ?? arg1).toLowerCase();
108
+ if (cmd.includes("scan"))
109
+ return "discovery";
110
+ if (cmd.includes("test"))
111
+ return "validation";
112
+ if (cmd.includes("score"))
113
+ return "assessment";
114
+ if (cmd.includes("enforce"))
115
+ return "protection";
116
+ if (cmd.includes("audit"))
117
+ return "audit";
118
+ return null;
100
119
  }
101
120
  function detectReferrer() {
102
121
  if (process.env.GITHUB_ACTIONS)
@@ -157,6 +176,14 @@ export function recordEvent(event) {
157
176
  const endpoint = requireHttpUrl(process.env["MCP_OBSERVATORY_TELEMETRY_URL"] ?? DEFAULT_ENDPOINT, "Telemetry endpoint");
158
177
  const config = _cachedConfig;
159
178
  const machineId = config?.machineId || config?.sessionId;
179
+ const rawJsonValue = event.raw_json;
180
+ if (rawJsonValue !== undefined && rawJsonValue !== null) {
181
+ const rawJsonStr = typeof rawJsonValue === "string" ? rawJsonValue : JSON.stringify(rawJsonValue);
182
+ if (rawJsonStr.length > 10240) {
183
+ process.stderr.write(`[telemetry] WARNING: raw_json exceeds 10KB (${rawJsonStr.length} bytes), truncating\n`);
184
+ event.raw_json = JSON.stringify({ truncated: true, original_size: rawJsonStr.length });
185
+ }
186
+ }
160
187
  const body = JSON.stringify({
161
188
  ...event,
162
189
  sessionId: machineId,
@@ -275,6 +302,9 @@ export function _resetIdentityCache() {
275
302
  _cachedIdentity = null;
276
303
  _identityPromise = null;
277
304
  }
305
+ export function generateSessionId() {
306
+ return randomUUID();
307
+ }
278
308
  // ── Convenience: build event from current process state ──────────────────────
279
309
  export function buildEvent(event, command, transport, enrichment) {
280
310
  const ci = detectCI();
@@ -314,11 +344,47 @@ export function buildEvent(event, command, transport, enrichment) {
314
344
  campaign,
315
345
  machineFingerprint: computeFingerprint(),
316
346
  sessionId: config?.machineId || config?.sessionId,
317
- featureChain: config?.featureChain,
347
+ featureChain: enrichment?.featureChainOverride ?? config?.featureChain,
318
348
  commandSequence: config?.commandSequence,
319
- stage: deriveStage(config?.featureChain || []),
349
+ stage: enrichment?.stageOverride ?? deriveStage(config?.featureChain || []),
320
350
  referrer: config?.firstContactChannel,
321
351
  optedInEmail: config?.optedInEmail,
352
+ targetServer: enrichment?.targetServer,
353
+ findingSeverityCounts: enrichment?.findingSeverityCounts,
322
354
  };
323
355
  }
356
+ // ── Session tracking ─────────────────────────────────────────────────────────
357
+ const _sessionTimestamps = new Map();
358
+ export function recordSessionStart(sessionId) {
359
+ _sessionTimestamps.set(sessionId, Date.now());
360
+ }
361
+ export function recordSessionEnd(sessionId) {
362
+ const startedAt = _sessionTimestamps.get(sessionId);
363
+ if (!startedAt)
364
+ return;
365
+ _sessionTimestamps.delete(sessionId);
366
+ const sessionDurationMs = Date.now() - startedAt;
367
+ recordEvent(buildEvent("session_end", "session", "cli", { sessionDurationMs }));
368
+ }
369
+ /** Reset session timestamps (for testing). */
370
+ export function _resetSessionTimestamps() {
371
+ _sessionTimestamps.clear();
372
+ }
373
+ // ── Finding severity counting ────────────────────────────────────────────────
374
+ export function countFindingsBySeverity(findings) {
375
+ const counts = { high: 0, medium: 0, low: 0 };
376
+ for (const f of findings) {
377
+ const severity = (f?.severity || f?.level || "low").toLowerCase();
378
+ if (severity === "high" || severity === "critical" || severity === "error") {
379
+ counts.high++;
380
+ }
381
+ else if (severity === "medium" || severity === "warning" || severity === "moderate") {
382
+ counts.medium++;
383
+ }
384
+ else {
385
+ counts.low++;
386
+ }
387
+ }
388
+ return counts;
389
+ }
324
390
  //# sourceMappingURL=telemetry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/telemetry.ts"],"names":[],"mappings":"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"}
@@ -49,12 +49,11 @@ function optionalSchemaDriftSeverityCounts(value) {
49
49
  function optionalPermissionDeltaRiskCounts(value) {
50
50
  if (!isObject(value))
51
51
  return undefined;
52
- const result = {};
53
- for (const [key, val] of Object.entries(value)) {
54
- if (typeof val === "number")
55
- result[key] = val;
56
- }
57
- return Object.keys(result).length > 0 ? result : undefined;
52
+ return {
53
+ neutral: typeof value["neutral"] === "number" ? value["neutral"] : 0,
54
+ review: typeof value["review"] === "number" ? value["review"] : 0,
55
+ widening: typeof value["widening"] === "number" ? value["widening"] : 0,
56
+ };
58
57
  }
59
58
  function requireGate(value, label) {
60
59
  if (value !== "pass" && value !== "fail") {
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/validate.ts"],"names":[],"mappings":"AAuBA,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,aAAa,CAAC,GAA4B,EAAE,KAAa,EAAE,KAAa;IAC/E,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,+BAA+B,KAAK,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,GAA4B,EAAE,KAAa,EAAE,KAAa;IAC9E,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,+BAA+B,KAAK,wBAAwB,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAC,GAA4B,EAAE,KAAa,EAAE,KAAa;IAChF,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;IACzB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,KAAK,2BAA2B,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CAAC,GAA4B,EAAE,KAAa,EAAE,KAAa;IAC/E,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAChD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,+BAA+B,KAAK,IAAI,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAc;IACjD,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACxF,CAAC;AAED,SAAS,iCAAiC,CAAC,KAAc;IACvD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,OAAO;QACL,IAAI,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,EAAE,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;KAC5D,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CAAC,KAAc;IACvD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACvC,OAAO;QACL,OAAO,EAAE,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,MAAM,EAAE,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,QAAQ,EAAE,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,KAAa;IAChD,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sBAAsB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CAAC,KAAc,EAAE,KAAa;IAClD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IACzF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,wBAAwB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,KAAoB,CAAC;AAC9B,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,KAAa;IACnD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACtK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,0BAA0B,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAChE,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,sBAAsB,CAAC;QAC5D,IAAI,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,sBAAsB,CAAC;QAC1D,IAAI,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,sBAAsB,CAAC;QAC1D,OAAO,EAAE,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,sBAAsB,CAAC;QAChE,WAAW,EAAE,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,sBAAsB,CAAC;QACxE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,sBAAsB,CAAC;QAC5D,OAAO,EAAE,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,sBAAsB,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,KAAc,EAAE,KAAa;IAClD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,sBAAsB,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,uBAAuB,KAAK,GAAG,CAAC,CAAC;IACxE,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,uBAAuB,KAAK,cAAc,CAAC,CAAC;IACnG,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,uBAAuB,KAAK,GAAG,CAAC,CAAC;IAC/E,OAAO;QACL,EAAE,EAAE,EAAuB;QAC3B,UAAU,EAAE,UAAuC;QACnD,MAAM;QACN,UAAU,EAAE,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,uBAAuB,KAAK,GAAG,CAAC;QAC/E,OAAO,EAAE,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,uBAAuB,KAAK,GAAG,CAAC;QACzE,QAAQ,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAiC;KACvH,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAa,EAAE,KAAa;IAClD,MAAM,KAAK,GACT,KAAK,CAAC,KAAK,CAAC,kCAAkC,CAAC;QAC/C,KAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC;QAC3C,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACvB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,6CAA6C,IAAI,IAAI,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc,EAAE,KAAa,EAAE,MAAM,GAAG,KAAK;IACzE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,wCAAwC,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,GAAG,oBAAoB,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc,EAAE,KAAa;IACxD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,+BAA+B,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAa;IAChD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAEhE,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;QACxD,OAAO;YACL,QAAQ;YACR,OAAO,EAAE,MAAM;YACf,GAAG;YACH,SAAS,EAAE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3H,OAAO,EAAE,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,uBAAuB,EAAE,IAAI,CAAC;YAC7E,SAAS,EAAE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YAChF,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,wBAAwB,CAAC;YAC1E,oBAAoB,EAAE,mBAAmB,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,oCAAoC,CAAC;YAC7G,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SAC3D,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,KAAK,eAAe,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,0CAA0C,OAAO,wCAAwC,CAAC,CAAC;IAC7G,CAAC;IAED,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ;QACR,OAAO;QACP,OAAO;QACP,IAAI;QACJ,GAAG,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QAC9D,GAAG,EAAE,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,mBAAmB,EAAE,IAAI,CAAC;QACjE,SAAS,EAAE,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;QAChF,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,wBAAwB,CAAC;QAC1E,oBAAoB,EAAE,mBAAmB,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,oCAAoC,CAAC;QAC7G,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;KAC3D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAa;IAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,iDAAiD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC,CAAC;IAEvD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,MAAM,GAAmB;QAC7B,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,qBAAqB,CAAC;QAC1E,OAAO,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,qBAAqB,CAA8B;QACrG,OAAO,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;QACvF,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;QAC3H,GAAG,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QAClF,GAAG,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QAClF,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,8BAA8B,CAAC;QAC1F,aAAa,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS;QAChH,UAAU,EAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS;KACxG,CAAC;IAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,WAAW,GAAwB;QACvC,QAAQ,EAAE,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,UAAU,EAAE,0BAA0B,CAAC;QACpF,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,aAAa,EAAE,0BAA0B,CAAC;KAC3F,CAAC;IAEF,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAkB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAE3E,MAAM,WAAW,GAA4B,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACxE,CAAC,CAAC,IAAI,CAAC,aAAa,CAA2B;QAC/C,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,kBAAkB,GAAmC,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC7F,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAkC;QAC7D,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,cAAc,GAA8C,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAChG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAA6C;QACpE,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,WAAW,GAA2C,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5F,CAAC,CAAC,IAAI,CAAC,aAAa,CAA+B;QACnD,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,UAAU,GAAuB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE/G,OAAO;QACL,YAAY,EAAE,KAAK;QACnB,aAAa,EAAE,aAAsC;QACrD,IAAI;QACJ,KAAK;QACL,SAAS;QACT,WAAW;QACX,MAAM;QACN,WAAW;QACX,OAAO;QACP,MAAM;QACN,WAAW;QACX,kBAAkB;QAClB,cAAc;QACd,WAAW;QACX,UAAU;KACX,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAAC,OAAkB;IACrD,OAAO,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9C,UAAU,EAAE,KAAK,CAAC,YAAY,CAAmC;QACjE,IAAI,EAAE,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS;QACnE,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,QAAQ;QACpE,OAAO,EAAE,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;KACjE,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,IAAa;IAChD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,kDAAkD,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC;IACtG,CAAC;IAED,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IACpE,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,CAAC;IAExD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IACnC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,MAAM,OAAO,GAAgB;QAC3B,WAAW,EAAE,aAAa,CAAC,UAAU,EAAE,aAAa,EAAE,uBAAuB,CAAC;QAC9E,UAAU,EAAE,aAAa,CAAC,UAAU,EAAE,YAAY,EAAE,uBAAuB,CAAC;QAC5E,SAAS,EAAE,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,uBAAuB,CAAC;QAC1E,KAAK,EAAE,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE,uBAAuB,CAAC;QAClE,OAAO,EAAE,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,uBAAuB,CAAC;QACtE,gBAAgB,EAAE,cAAc,CAAC,UAAU,EAAE,kBAAkB,EAAE,uBAAuB,CAAC;QACzF,yBAAyB,EAAE,iCAAiC,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAAC;QACrG,mBAAmB,EAAE,cAAc,CAAC,UAAU,EAAE,qBAAqB,EAAE,uBAAuB,CAAC;QAC/F,oBAAoB,EAAE,cAAc,CAAC,UAAU,EAAE,sBAAsB,EAAE,uBAAuB,CAAC;QACjG,yBAAyB,EAAE,iCAAiC,CAAC,UAAU,CAAC,2BAA2B,CAAC,CAAC;QACrG,IAAI,EAAE,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC;KAC/D,CAAC;IAEF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,aAAa,CAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IACnG,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,YAAY,CAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChG,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,WAAW,CAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,OAAO,CAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IACjF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,SAAS,CAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IACvF,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtH,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,iBAAiB,CAA2B,CAAC,CAAC,CAAC,SAAS,CAAC;IAChI,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,kBAAkB,CAA4B,CAAC,CAAC,CAAC,SAAS,CAAC;IAEpI,OAAO;QACL,YAAY,EAAE,MAAM;QACpB,aAAa,EAAE,aAAsC;QACrD,IAAI;QACJ,SAAS;QACT,SAAS;QACT,SAAS;QACT,OAAO;QACP,WAAW;QACX,UAAU;QACV,SAAS;QACT,KAAK;QACL,OAAO;QACP,WAAW;QACX,eAAe;QACf,gBAAgB;KACjB,CAAC;AACJ,CAAC"}