@bevel-software/platform-core-backend 0.25.2 → 0.26.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 (248) hide show
  1. package/agent-guide/access-control.md +234 -0
  2. package/agent-guide/conventions.md +27 -0
  3. package/agent-guide/directory-structure.md +145 -0
  4. package/agent-guide/finding-things.md +7 -0
  5. package/agent-guide/introduction.md +27 -0
  6. package/agent-guide/skills.md +47 -0
  7. package/agent-guide/tool-manuals.md +217 -0
  8. package/agent-guide/where-a-new-file-goes.md +36 -0
  9. package/dist/assets.d.ts +7 -0
  10. package/dist/assets.d.ts.map +1 -1
  11. package/dist/assets.js +9 -0
  12. package/dist/assets.js.map +1 -1
  13. package/dist/core/core-ports.d.ts +11 -0
  14. package/dist/core/core-ports.d.ts.map +1 -1
  15. package/dist/core/core-ports.js.map +1 -1
  16. package/dist/core/create-core-server.d.ts.map +1 -1
  17. package/dist/core/create-core-server.js +13 -2
  18. package/dist/core/create-core-server.js.map +1 -1
  19. package/dist/core/create-core-services.d.ts +9 -0
  20. package/dist/core/create-core-services.d.ts.map +1 -1
  21. package/dist/core/create-core-services.js +14 -4
  22. package/dist/core/create-core-services.js.map +1 -1
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +2 -2
  26. package/dist/index.js.map +1 -1
  27. package/dist/modules/access/access-control.interface.d.ts +9 -0
  28. package/dist/modules/access/access-control.interface.d.ts.map +1 -1
  29. package/dist/modules/access/access-control.service.d.ts +1 -0
  30. package/dist/modules/access/access-control.service.d.ts.map +1 -1
  31. package/dist/modules/access/access-control.service.js +16 -0
  32. package/dist/modules/access/access-control.service.js.map +1 -1
  33. package/dist/modules/agent-guide/agent-guide.d.ts +139 -0
  34. package/dist/modules/agent-guide/agent-guide.d.ts.map +1 -0
  35. package/dist/modules/agent-guide/agent-guide.js +191 -0
  36. package/dist/modules/agent-guide/agent-guide.js.map +1 -0
  37. package/dist/modules/agent-guide/agent-guide.tools.d.ts +24 -0
  38. package/dist/modules/agent-guide/agent-guide.tools.d.ts.map +1 -0
  39. package/dist/modules/agent-guide/agent-guide.tools.js +100 -0
  40. package/dist/modules/agent-guide/agent-guide.tools.js.map +1 -0
  41. package/dist/modules/agent-guide/index.d.ts +4 -0
  42. package/dist/modules/agent-guide/index.d.ts.map +1 -0
  43. package/dist/modules/agent-guide/index.js +4 -0
  44. package/dist/modules/agent-guide/index.js.map +1 -0
  45. package/dist/modules/agent-instructions/agent-instructions.routes.d.ts +3 -2
  46. package/dist/modules/agent-instructions/agent-instructions.routes.d.ts.map +1 -1
  47. package/dist/modules/agent-instructions/agent-instructions.routes.js +3 -2
  48. package/dist/modules/agent-instructions/agent-instructions.routes.js.map +1 -1
  49. package/dist/modules/agent-instructions/compose.d.ts +9 -6
  50. package/dist/modules/agent-instructions/compose.d.ts.map +1 -1
  51. package/dist/modules/agent-instructions/compose.js +9 -6
  52. package/dist/modules/agent-instructions/compose.js.map +1 -1
  53. package/dist/modules/agent-instructions/index.d.ts +1 -1
  54. package/dist/modules/agent-instructions/index.d.ts.map +1 -1
  55. package/dist/modules/agent-instructions/index.js +1 -1
  56. package/dist/modules/agent-instructions/index.js.map +1 -1
  57. package/dist/modules/agent-instructions/shared-file-rules.d.ts +10 -50
  58. package/dist/modules/agent-instructions/shared-file-rules.d.ts.map +1 -1
  59. package/dist/modules/agent-instructions/shared-file-rules.js +32 -85
  60. package/dist/modules/agent-instructions/shared-file-rules.js.map +1 -1
  61. package/dist/modules/mcp/mcp.service.d.ts +29 -2
  62. package/dist/modules/mcp/mcp.service.d.ts.map +1 -1
  63. package/dist/modules/mcp/mcp.service.js +113 -16
  64. package/dist/modules/mcp/mcp.service.js.map +1 -1
  65. package/dist/modules/mcp/tool-schema-guard.d.ts +105 -0
  66. package/dist/modules/mcp/tool-schema-guard.d.ts.map +1 -0
  67. package/dist/modules/mcp/tool-schema-guard.js +171 -0
  68. package/dist/modules/mcp/tool-schema-guard.js.map +1 -0
  69. package/dist/modules/plugins/plugins.tools.d.ts +36 -2
  70. package/dist/modules/plugins/plugins.tools.d.ts.map +1 -1
  71. package/dist/modules/plugins/plugins.tools.js +71 -14
  72. package/dist/modules/plugins/plugins.tools.js.map +1 -1
  73. package/dist/modules/settings/deployment-settings.service.d.ts +0 -7
  74. package/dist/modules/settings/deployment-settings.service.d.ts.map +1 -1
  75. package/dist/modules/settings/deployment-settings.service.js +14 -53
  76. package/dist/modules/settings/deployment-settings.service.js.map +1 -1
  77. package/dist/modules/settings/setup.routes.d.ts.map +1 -1
  78. package/dist/modules/settings/setup.routes.js +3 -6
  79. package/dist/modules/settings/setup.routes.js.map +1 -1
  80. package/dist/modules/skills/skills.tools.d.ts.map +1 -1
  81. package/dist/modules/skills/skills.tools.js +58 -16
  82. package/dist/modules/skills/skills.tools.js.map +1 -1
  83. package/dist/modules/tool-manuals/tool-manuals.contract.d.ts +23 -4
  84. package/dist/modules/tool-manuals/tool-manuals.contract.d.ts.map +1 -1
  85. package/dist/modules/tool-manuals/tool-manuals.contract.js.map +1 -1
  86. package/dist/modules/tool-manuals/tool-manuals.service.d.ts +4 -0
  87. package/dist/modules/tool-manuals/tool-manuals.service.d.ts.map +1 -1
  88. package/dist/modules/tool-manuals/tool-manuals.service.js +14 -0
  89. package/dist/modules/tool-manuals/tool-manuals.service.js.map +1 -1
  90. package/dist/modules/tool-manuals/tool-manuals.tools.d.ts +7 -0
  91. package/dist/modules/tool-manuals/tool-manuals.tools.d.ts.map +1 -1
  92. package/dist/modules/tool-manuals/tool-manuals.tools.js +66 -36
  93. package/dist/modules/tool-manuals/tool-manuals.tools.js.map +1 -1
  94. package/dist/modules/tool-registry/description-length.d.ts +14 -14
  95. package/dist/modules/tool-registry/description-length.d.ts.map +1 -1
  96. package/dist/modules/tool-registry/description-length.js +24 -26
  97. package/dist/modules/tool-registry/description-length.js.map +1 -1
  98. package/dist/modules/tool-registry/guide-first.d.ts +23 -0
  99. package/dist/modules/tool-registry/guide-first.d.ts.map +1 -0
  100. package/dist/modules/tool-registry/guide-first.js +32 -0
  101. package/dist/modules/tool-registry/guide-first.js.map +1 -0
  102. package/dist/modules/tool-registry/tool-registry.d.ts +6 -0
  103. package/dist/modules/tool-registry/tool-registry.d.ts.map +1 -1
  104. package/dist/modules/tool-registry/tool-registry.js +9 -2
  105. package/dist/modules/tool-registry/tool-registry.js.map +1 -1
  106. package/dist/modules/workflow/agent-tools/change-request-read-shape.d.ts +449 -0
  107. package/dist/modules/workflow/agent-tools/change-request-read-shape.d.ts.map +1 -0
  108. package/dist/modules/workflow/agent-tools/change-request-read-shape.js +481 -0
  109. package/dist/modules/workflow/agent-tools/change-request-read-shape.js.map +1 -0
  110. package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts +73 -0
  111. package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts.map +1 -0
  112. package/dist/modules/workflow/agent-tools/change-request-read.tools.js +582 -0
  113. package/dist/modules/workflow/agent-tools/change-request-read.tools.js.map +1 -0
  114. package/dist/modules/workflow/agent-tools/change-request-summary.d.ts +12 -1
  115. package/dist/modules/workflow/agent-tools/change-request-summary.d.ts.map +1 -1
  116. package/dist/modules/workflow/agent-tools/change-request-summary.js +5 -1
  117. package/dist/modules/workflow/agent-tools/change-request-summary.js.map +1 -1
  118. package/dist/modules/workflow/agent-tools/workflow.tools.d.ts.map +1 -1
  119. package/dist/modules/workflow/agent-tools/workflow.tools.js +9 -0
  120. package/dist/modules/workflow/agent-tools/workflow.tools.js.map +1 -1
  121. package/dist/modules/workflow/git/git.service.d.ts +210 -13
  122. package/dist/modules/workflow/git/git.service.d.ts.map +1 -1
  123. package/dist/modules/workflow/git/git.service.js +456 -91
  124. package/dist/modules/workflow/git/git.service.js.map +1 -1
  125. package/dist/modules/workflow/git/merge-commit.d.ts +73 -0
  126. package/dist/modules/workflow/git/merge-commit.d.ts.map +1 -0
  127. package/dist/modules/workflow/git/merge-commit.js +89 -0
  128. package/dist/modules/workflow/git/merge-commit.js.map +1 -0
  129. package/dist/modules/workflow/git/pull-request.service.d.ts +94 -1
  130. package/dist/modules/workflow/git/pull-request.service.d.ts.map +1 -1
  131. package/dist/modules/workflow/git/pull-request.service.js +332 -37
  132. package/dist/modules/workflow/git/pull-request.service.js.map +1 -1
  133. package/dist/modules/workflow/review-workflow/review-workflow.service.d.ts +35 -0
  134. package/dist/modules/workflow/review-workflow/review-workflow.service.d.ts.map +1 -1
  135. package/dist/modules/workflow/review-workflow/review-workflow.service.js +178 -12
  136. package/dist/modules/workflow/review-workflow/review-workflow.service.js.map +1 -1
  137. package/dist/modules/workflow/workflow.routes.d.ts +6 -2
  138. package/dist/modules/workflow/workflow.routes.d.ts.map +1 -1
  139. package/dist/modules/workflow/workflow.routes.js +7 -2
  140. package/dist/modules/workflow/workflow.routes.js.map +1 -1
  141. package/dist/modules/workflow/workflow.service.d.ts +4 -0
  142. package/dist/modules/workflow/workflow.service.d.ts.map +1 -1
  143. package/dist/modules/workflow/workflow.service.js +3 -0
  144. package/dist/modules/workflow/workflow.service.js.map +1 -1
  145. package/dist/modules/workspace/startup/steps/seed-tree.d.ts.map +1 -1
  146. package/dist/modules/workspace/startup/steps/seed-tree.js +22 -27
  147. package/dist/modules/workspace/startup/steps/seed-tree.js.map +1 -1
  148. package/dist/modules/workspace/startup/steps/template-files.step.d.ts +58 -52
  149. package/dist/modules/workspace/startup/steps/template-files.step.d.ts.map +1 -1
  150. package/dist/modules/workspace/startup/steps/template-files.step.js +209 -223
  151. package/dist/modules/workspace/startup/steps/template-files.step.js.map +1 -1
  152. package/dist/modules/workspace/startup/steps/template-source.d.ts +5 -3
  153. package/dist/modules/workspace/startup/steps/template-source.d.ts.map +1 -1
  154. package/dist/modules/workspace/startup/steps/template-source.js +5 -3
  155. package/dist/modules/workspace/startup/steps/template-source.js.map +1 -1
  156. package/dist/modules/workspace/workspace.tools.d.ts +10 -1
  157. package/dist/modules/workspace/workspace.tools.d.ts.map +1 -1
  158. package/dist/modules/workspace/workspace.tools.js +211 -18
  159. package/dist/modules/workspace/workspace.tools.js.map +1 -1
  160. package/dist/shared/domain-errors.d.ts +11 -0
  161. package/dist/shared/domain-errors.d.ts.map +1 -1
  162. package/dist/shared/domain-errors.js +14 -0
  163. package/dist/shared/domain-errors.js.map +1 -1
  164. package/dist/shared/hidden-tools.d.ts +44 -0
  165. package/dist/shared/hidden-tools.d.ts.map +1 -0
  166. package/dist/shared/hidden-tools.js +13 -0
  167. package/dist/shared/hidden-tools.js.map +1 -0
  168. package/kb-template/.bevelignore +0 -5
  169. package/package.json +4 -3
  170. package/src/__tests__/kb-layout-config.test.ts +10 -100
  171. package/src/__tests__/packaged-assets-ship.test.ts +54 -0
  172. package/src/assets.ts +10 -0
  173. package/src/core/core-ports.ts +11 -0
  174. package/src/core/create-core-server.ts +13 -2
  175. package/src/core/create-core-services.ts +28 -4
  176. package/src/index.ts +2 -2
  177. package/src/modules/access/__tests__/access-control.atref-batch.test.ts +58 -0
  178. package/src/modules/access/__tests__/access-control.platform-restore.test.ts +8 -7
  179. package/src/modules/access/__tests__/access-personal-plugin.test.ts +1 -18
  180. package/src/modules/access/access-control.interface.ts +15 -0
  181. package/src/modules/access/access-control.service.ts +21 -0
  182. package/src/modules/agent-guide/__tests__/agent-guide.test.ts +328 -0
  183. package/src/modules/agent-guide/__tests__/agent-guide.tools.test.ts +189 -0
  184. package/src/modules/agent-guide/agent-guide.tools.ts +122 -0
  185. package/src/modules/agent-guide/agent-guide.ts +291 -0
  186. package/src/modules/agent-guide/index.ts +21 -0
  187. package/src/modules/agent-instructions/__tests__/shared-file-rules.test.ts +28 -121
  188. package/src/modules/agent-instructions/agent-instructions.routes.ts +3 -2
  189. package/src/modules/agent-instructions/compose.ts +9 -6
  190. package/src/modules/agent-instructions/index.ts +0 -3
  191. package/src/modules/agent-instructions/shared-file-rules.ts +31 -93
  192. package/src/modules/mcp/__tests__/fake-downstream-mcp-server.ts +14 -3
  193. package/src/modules/mcp/__tests__/mcp.e2e.test.ts +250 -0
  194. package/src/modules/mcp/__tests__/mcp.service.test.ts +31 -23
  195. package/src/modules/mcp/__tests__/tool-schema-guard.test.ts +266 -0
  196. package/src/modules/mcp/mcp.service.ts +137 -19
  197. package/src/modules/mcp/tool-schema-guard.ts +196 -0
  198. package/src/modules/plugins/__tests__/plugins.tools.test.ts +154 -4
  199. package/src/modules/plugins/plugins.tools.ts +75 -15
  200. package/src/modules/settings/__tests__/deployment-settings.service.test.ts +26 -55
  201. package/src/modules/settings/deployment-settings.service.ts +13 -54
  202. package/src/modules/settings/setup.routes.ts +3 -6
  203. package/src/modules/skills/__tests__/skills.tools.description.test.ts +91 -0
  204. package/src/modules/skills/skills.tools.ts +62 -16
  205. package/src/modules/tool-manuals/__tests__/tool-manuals.detail.route.test.ts +57 -0
  206. package/src/modules/tool-manuals/__tests__/tool-manuals.tools.test.ts +73 -4
  207. package/src/modules/tool-manuals/tool-manuals.contract.ts +24 -4
  208. package/src/modules/tool-manuals/tool-manuals.service.ts +17 -0
  209. package/src/modules/tool-manuals/tool-manuals.tools.ts +74 -36
  210. package/src/modules/tool-registry/__tests__/own-tool-schemas.test.ts +160 -0
  211. package/src/modules/tool-registry/__tests__/tool-description-length.test.ts +61 -59
  212. package/src/modules/tool-registry/description-length.ts +24 -26
  213. package/src/modules/tool-registry/guide-first.ts +34 -0
  214. package/src/modules/tool-registry/tool-registry.ts +9 -2
  215. package/src/modules/workflow/__tests__/apply-failure.test.ts +6 -1
  216. package/src/modules/workflow/agent-tools/__tests__/change-request-read-shape.test.ts +705 -0
  217. package/src/modules/workflow/agent-tools/__tests__/change-request-read.tools.test.ts +1518 -0
  218. package/src/modules/workflow/agent-tools/__tests__/workflow.tools.test.ts +23 -2
  219. package/src/modules/workflow/agent-tools/change-request-read-shape.ts +712 -0
  220. package/src/modules/workflow/agent-tools/change-request-read.tools.ts +724 -0
  221. package/src/modules/workflow/agent-tools/change-request-summary.ts +5 -1
  222. package/src/modules/workflow/agent-tools/workflow.tools.ts +8 -0
  223. package/src/modules/workflow/git/__tests__/git.service.appliedChange.test.ts +285 -0
  224. package/src/modules/workflow/git/__tests__/git.service.changedFilesForPr.test.ts +124 -0
  225. package/src/modules/workflow/git/__tests__/git.service.mergeChangeRequest.test.ts +334 -0
  226. package/src/modules/workflow/git/__tests__/pull-request.service.list-fetch.test.ts +72 -2
  227. package/src/modules/workflow/git/__tests__/pull-request.service.placeholder.test.ts +24 -2
  228. package/src/modules/workflow/git/__tests__/pull-request.service.test.ts +620 -1
  229. package/src/modules/workflow/git/git.service.ts +537 -94
  230. package/src/modules/workflow/git/merge-commit.ts +88 -0
  231. package/src/modules/workflow/git/pull-request.service.ts +380 -54
  232. package/src/modules/workflow/review-workflow/__tests__/approval-states.test.ts +7 -1
  233. package/src/modules/workflow/review-workflow/__tests__/merge-records-own-commit.test.ts +407 -0
  234. package/src/modules/workflow/review-workflow/review-workflow.service.ts +189 -11
  235. package/src/modules/workflow/workflow.routes.ts +7 -2
  236. package/src/modules/workflow/workflow.service.ts +7 -0
  237. package/src/modules/workspace/__tests__/escape-sequences.routes.test.ts +4 -3
  238. package/src/modules/workspace/__tests__/workspace.routes.move-platform-files.test.ts +21 -10
  239. package/src/modules/workspace/__tests__/workspace.tools.agents-file.test.ts +33 -55
  240. package/src/modules/workspace/__tests__/workspace.tools.test.ts +255 -22
  241. package/src/modules/workspace/startup/steps/__tests__/steps.test.ts +191 -489
  242. package/src/modules/workspace/startup/steps/seed-tree.ts +21 -27
  243. package/src/modules/workspace/startup/steps/template-files.step.ts +217 -249
  244. package/src/modules/workspace/startup/steps/template-source.ts +5 -3
  245. package/src/modules/workspace/workspace.tools.ts +226 -16
  246. package/src/shared/domain-errors.ts +15 -0
  247. package/src/shared/hidden-tools.ts +45 -0
  248. package/kb-template/AGENTS.md +0 -730
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.service.js","sourceRoot":"","sources":["../../../src/modules/mcp/mcp.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,QAAQ,EACR,SAAS,EACT,mBAAmB,GAKpB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,YAAY,CAAC,CAAC,gEAAgE;AACrF,OAAO,WAAW,CAAC,CAAC,gFAAgF;AACpG,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,gBAAgB,GAGjB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,GAIhB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EACL,aAAa,GAGd,MAAM,4CAA4C,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AAInF,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAA0C,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAA2B,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,cAAc,GAGf,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAyDxE;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEnC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE5D,MAAM,sBAAsB,GAAG,IAAI,sBAAsB,EAAE,CAAC;AAuD5D,2FAA2F;AAC3F,MAAM,0BAA0B,GAAG,MAAM,CAAC,4BAA4B,CAAC,CAAC;AAmBxE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,OAAO,UAAU;IAoCF;IAIA;IACA;IAIA;IAKA;IAIA;IArDnB,4EAA4E;IAC5E,0EAA0E;IACzD,cAAc,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACzC,UAAU,GAAG,IAAI,kBAAkB,EAAE,CAAC;IACvD,yFAAyF;IACxE,cAAc,CAA+C;IAC9E;;;;;;;;;;;;;OAaG;IACc,oBAAoB,GAAG,IAAI,GAAG,EAAqD,CAAC;IAErG;;;;;;OAMG;IACc,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC;IAErD,wEAAwE;IACvD,UAAU,CAAmC;IAE9D,YACmB,IAAqB;IACtC,4EAA4E;IAC5E,2EAA2E;IAC3E,4EAA4E;IAC3D,YAAmC,EACnC,WAAgC;IACjD,oEAAoE;IACpE,sEAAsE;IACtE,mEAAmE;IAClD,cAAqC;IACtD,6EAA6E;IAC7E,wEAAwE;IACxE,wEAAwE;IACxE,uEAAuE;IACtD,iBAAqD;IACtE,0EAA0E;IAC1E,mEAAmE;IACnE,wEAAwE;IACvD,aAAmC;QAlBnC,SAAI,GAAJ,IAAI,CAAiB;QAIrB,iBAAY,GAAZ,YAAY,CAAuB;QACnC,gBAAW,GAAX,WAAW,CAAqB;QAIhC,mBAAc,GAAd,cAAc,CAAuB;QAKrC,sBAAiB,GAAjB,iBAAiB,CAAoC;QAIrD,kBAAa,GAAb,aAAa,CAAsB;QAEpD,IAAI,CAAC,UAAU,GAAG,IAAI,cAAc,CAAmB;YACrD,GAAG,IAAI,CAAC,cAAc;YACtB,uEAAuE;YACvE,yEAAyE;YACzE,2DAA2D;YAC3D,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;SACzC,CAAC,CAAC;QACH,kEAAkE;QAClE,IAAI,CAAC,cAAc,GAAG,IAAI,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;;OAQG;IACH,gBAAgB,CAAC,MAAqB;QACpC,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,kBAAkB,EAAE,CAAC,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,yBAAyB,CAAC,MAAqB;QACrD,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,KAAK,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,kBAAkB,EAAE,CAAC,CAAC;QAClG,IAAI,CAAC,cAAc,CAAC,UAAU,CAC5B,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,WAAW,CAChF,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,mBAAmB,CAAC,MAAiB,EAAE,QAAiB;QAC5D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC;QACjD,oEAAoE;QACpE,yEAAyE;QACzE,qEAAqE;QACrE,uEAAuE;QACvE,uEAAuE;QACvE,0EAA0E;QAC1E,yEAAyE;QACzE,qCAAqC;QACrC,MAAM,cAAc,GAClB,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc;YACpC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,yBAAyB,CAAC;YACtF,CAAC,CAAC,MAAM,CAAC;QAEb,IAAI,YAA4D,CAAC;QACjE,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,CAAC,YAAY,KAAK,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;QACnF,sEAAsE;QACtE,mEAAmE;QACnE,sEAAsE;QACtE,iEAAiE;QACjE,MAAM,kBAAkB,GAA6C,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;QAC5F,MAAM,SAAS,GAAG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAc,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAgB,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/I,MAAM,KAAK,GACT,IAAI,CAAC,aAAa,IAAI,SAAS;YAC7B,CAAC,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE;gBACtD,YAAY,EAAE,uBAAuB;gBACrC,YAAY,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO;gBAC9C,UAAU,EAAE,GAAG,EAAE,CACf,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAClD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CACxE;aACJ,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;QACX,IAAI,OAA4C,CAAC;QACjD,MAAM,cAAc,GAAG,GAAG,EAAE,CAC1B,CAAC,OAAO,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7E,kBAAkB,CAAC,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC;YAChD,KAAK,EAAE,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC,CAAC,CAAC,CAAC;QAEN,MAAM,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3G,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,EACvC;YACE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;YACxC,qEAAqE;YACrE,wEAAwE;YACxE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,MAAM,iBAAiB,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpF,CACF,CAAC;QAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAC7G,kEAAkE;YAClE,mEAAmE;YACnE,0DAA0D;YAC1D,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAClE,sEAAsE;YACtE,kEAAkE;YAClE,sEAAsE;YACtE,8DAA8D;YAC9D,uDAAuD;YACvD,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG;gBAC7B,qEAAqE;gBACrE,mEAAmE;gBACnE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACf,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAClF,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EACjC,GAAG,EAAE,CAAC,KAAK,CACZ,CACF,CACF,CAAC;gBACF,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC;YACD,kEAAkE;YAClE,kEAAkE;YAClE,yEAAyE;YACzE,sDAAsD;YACtD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,CAAC;YACtC,MAAM,OAAO,GAAa,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAc,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAkB,EAAE,CAAC;YACtC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,4CAA4C;gBAC3E,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBACxB,SAAS;gBACX,CAAC;gBACD,qEAAqE;gBACrE,oEAAoE;gBACpE,uEAAuE;gBACvE,iEAAiE;gBACjE,4CAA4C;gBAC5C,EAAE;gBACF,uEAAuE;gBACvE,sEAAsE;gBACtE,sEAAsE;gBACtE,uEAAuE;gBACvE,uEAAuE;gBACvE,6DAA6D;gBAC7D,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC;oBAC1C,SAAS;gBACX,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrB,kEAAkE;gBAClE,sEAAsE;gBACtE,oEAAoE;gBACpE,qEAAqE;gBACrE,sEAAsE;gBACtE,MAAM,CAAC,IAAI,CACT,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;oBAC5B,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,qBAAqB,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE;oBACjF,CAAC,CAAC,KAAK,CACV,CAAC;YACJ,CAAC;YACD,0EAA0E;YAC1E,0EAA0E;YAC1E,0EAA0E;YAC1E,uEAAuE;YACvE,2EAA2E;YAC3E,gBAAgB;YAChB,EAAE;YACF,kEAAkE;YAClE,uEAAuE;YACvE,sEAAsE;YACtE,yEAAyE;YACzE,wEAAwE;YACxE,qEAAqE;YACrE,uEAAuE;YACvE,6BAA6B;YAC7B,MAAM,SAAS,GAAG,iBAAiB,CAAC,uBAAuB,EAAE,WAAW,EAAE;gBACxE,kBAAkB,EAAE,EAAE;aACvB,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;YACtF,wEAAwE;YACxE,0EAA0E;YAC1E,sCAAsC;YACtC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACnB,GAAG,CAAC,IAAI,CACN,uBAAuB,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,YAAY;oBACjE,WAAW,OAAO,CAAC,MAAM,kBAAkB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAClE,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,gEAAgE;gBAChE,KAAK,EAAE,CAAC,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC;aACjC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;YACvE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,cAAc,EAAE,CAAC;YACjG,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YACrC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;YAC5C,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,sEAAsE;gBACtE,2DAA2D;gBAC3D,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YACxE,CAAC;YACD;;;;;;;;eAQG;YACH,MAAM,kBAAkB,GAAG,KAAK,EAAE,QAAgB,EAAkC,EAAE;gBACpF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC;gBACxG,IAAI,CAAC,SAAS;oBAAE,OAAO,IAAI,CAAC;gBAC5B,gEAAgE;gBAChE,sEAAsE;gBACtE,iEAAiE;gBACjE,qEAAqE;gBACrE,kEAAkE;gBAClE,kEAAkE;gBAClE,kEAAkE;gBAClE,mEAAmE;gBACnE,2DAA2D;gBAC3D,IAAI,SAAS,CAAC,YAAY,IAAI,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACxE,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBACvC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,CAAC,IAAI,CAAC,+CAA+C,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;gBACD,OAAO,SAAS,CAAC,MAAM,CAAC;YAC1B,CAAC,CAAC;YACF,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;YAC1D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,uEAAuE;gBACvE,kEAAkE;gBAClE,wEAAwE;gBACxE,sEAAsE;gBACtE,eAAe;gBACf,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,MAAM,EAAE,CAAC;oBACX,+DAA+D;oBAC/D,mEAAmE;oBACnE,8DAA8D;oBAC9D,gEAAgE;oBAChE,IAAI,KAAK;wBAAE,MAAM,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACrD,OAAO,SAAS,CACd,QAAQ,QAAQ,8EAA8E;wBAC5F,8FAA8F;wBAC9F,2DAA2D,CAC9D,CAAC;gBACJ,CAAC;gBACD,uEAAuE;gBACvE,qEAAqE;gBACrE,oEAAoE;gBACpE,qEAAqE;gBACrE,mDAAmD;gBACnD,MAAM,KAAK,GAAG,WAAW;qBACtB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;qBACpD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACvE,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC7B,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;gBAC7F,CAAC;gBACD,OAAO,MAAM,IAAI,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,iBAAiB,QAAQ,IAAI,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,KAAK;oBAAE,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACtD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACjE,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,6EAA6E;QAC7E,0EAA0E;QAC1E,yEAAyE;QACzE,uEAAuE;QACvE,0EAA0E;QAC1E,MAAM,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YACzD,MAAM,OAAO,GAAa,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,SAAS,EAAE,EAAE;aACd,CAAC,CAAC,CAAC;YACJ,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAA4B,EAAE;YAC3F,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzE,kEAAkE;YAClE,KAAK,EAAE,IAAI,CACT,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EACzE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,EACtB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CACxC,CAAC;YACF,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,aAAa,EAAE,kBAAkB,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;YACzF,CAAC;YACD,OAAO;gBACL,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;aACtF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,OAAsB,EAAE,cAAsB;QACvF,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAClC,0EAA0E;QAC1E,0EAA0E;QAC1E,sCAAsC;QACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;QAChE,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACvE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACvG,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC;QAC5C,wEAAwE;QACxE,qDAAqD;QACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAClG,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI;YACN,oEAAoE;YACpE,wEAAwE;YACxE,yBAAyB,SAAS,CAAC,MAAM,CAAC,YAAY,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK;gBAC9F,GAAG,KAAK,CAAC,MAAM,mBAAmB,OAAO,CAAC,MAAM,iBAAiB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;gBACxF,YAAY,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;gBACzF,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,UAAU,wCAAwC,CAAC,CAAC,CAAC,EAAE,CAAC,CACrG,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,wBAAwB;QACpC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,OAAO,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzD,IAAI,CAAC;YACH,OAAO,wBAAwB,CAAC,MAAM,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;QACxD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,+EAA+E,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YACnG,OAAO,wBAAwB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,qFAAqF;IAC7E,KAAK,CAAC,cAAc,CAAC,MAAc;QACzC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAI,GAA0C,EAAE,MAAM,CAAC;QACnE,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7C,CAAC;IAED,wFAAwF;IAChF,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,IAAY;QACnD,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,CAE3D,CAAC;QACT,IAAI,GAAG,EAAE,EAAE,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,IAAI,GAAG,CAAC,KAAK;YAAE,OAAO,GAAG,CAAC,KAAK,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,IAAY,EAAE,KAAa,EAAE,IAAc;QACpF,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,GAAG,IAAI,EAAE,EAAE;gBAC7D,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,MAAM,EAAE;oBACjC,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACtE;gBACD,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7E,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC;aACjD,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,0BAA0B,GAAG,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC9F,OAAO,IAAI,CAAC;YACd,CAAC;YACD,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,kBAAkB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,8FAA8F;IACtF,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,IAAY,EAAE,IAAa;QACpE,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,oBAAoB,IAAI,EAAE,EAAE,SAAS,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IACtF,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,oBAAoB,CAAC,MAAc;QAC/C,gFAAgF;QAChF,kFAAkF;QAClF,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,kCAAkC,EAAE,WAAW,CAAC,CAEtF,CAAC;QACT,MAAM,UAAU,GAAc,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAE/E,MAAM,GAAG,GAAmB,EAAE,CAAC;QAC/B,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAI,GAA0B,EAAE,IAAI,KAAK,uBAAuB,CAAC;YAC3E,IAAI,CAAC;gBACH,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,GAA8B,CAAC,CAAC,CAAC;gBAC9E,IAAI,IAAI;oBAAE,KAAK,GAAG,IAAI,CAAC;YACzB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,IAAI,GAAG,MAAM,CAAE,GAA0B,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;gBAC7D,IAAI,IAAI;oBAAE,MAAM,GAAG,CAAC,CAAC,+DAA+D;gBACpF,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC;QACD,+EAA+E;QAC/E,IAAI,CAAC,KAAK;YAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACjD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,uFAAuF;IAC/E,gBAAgB;QACtB,OAAO,sBAAsB,CAAC,YAAY,CAAC;YACzC,IAAI,EAAE,uBAAuB;YAC7B,kBAAkB,EAAE,MAAM;YAC1B,WAAW,EAAE,KAAK;YAClB,GAAG,EAAE,2BAA2B;YAChC,YAAY,EAAE,kBAAkB;YAChC,OAAO,EAAE,EAAE,aAAa,EAAE,0BAA0B,EAAE;SACvD,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,MAAc,EAAE,OAAuB;QAC/E,MAAM,SAAS,GAAG,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACxF,OAAO,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/G,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,KAAK,CAAC,aAAa,CACzB,MAA0B,EAC1B,OAAuB,EACvB,MAAc;QAOd,MAAM,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;QAClD,MAAM,WAAW,GAAwB,EAAE,CAAC;QAC5C,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC/C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,CAAC,kBAAkB,KAAK,KAAK;gBAAE,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1F,CAAC;QACD,2EAA2E;QAC3E,4EAA4E;QAC5E,uEAAuE;QACvE,uEAAuE;QACvE,uEAAuE;QACvE,2EAA2E;QAC3E,sDAAsD;QACtD,0EAA0E;QAC1E,2EAA2E;QAC3E,8DAA8D;QAC9D,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACrD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,kBAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,uBAAuB;gBAAE,SAAS;YAC5E,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,wEAAwE;QACxE,2EAA2E;QAC3E,sEAAsE;QACtE,qEAAqE;QACrE,gEAAgE;QAChE,wEAAwE;QACxE,uEAAuE;QACvE,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,0BAA0B;QAC1B,MAAM,eAAe,GAAG,IAAI,GAAG,EAAoB,CAAC;QACpD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACpC,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9F,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACtB,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,KAAK,uBAAuB,CAAC;YAChD,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC5B,uEAAuE;YACvE,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,QAAQ,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;YAClF,8DAA8D;YAC9D,sEAAsE;YACtE,sEAAsE;YACtE,sDAAsD;YACtD,MAAM,OAAO,GACX,GAAG,IAAI,GAAG,kBAAkB,GAAG,mBAAmB,CAAC,CAAC,CAAC,EAAE;gBACvD,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,kBAAkB,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACjG,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAClE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI,oCAAoC,MAAM,EAAE,CAAC,CAAC;oBAC/E,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAa,EAAE,CAAC;gBACrC,CAAC;YACH,CAAC;YACD,8DAA8D;YAC9D,gEAAgE;YAChE,qEAAqE;YACrE,2BAA2B;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;YACtD,IAAI,CAAC;gBACH,oEAAoE;gBACpE,+DAA+D;gBAC/D,wDAAwD;gBACxD,MAAM,MAAM,GACV,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;oBAC1B,CAAC,CAAC;wBACE,EAAE,EAAE,KAAK;wBACT,KAAK,EACH,gBAAgB,IAAI,kBAAkB,SAAS,4BAA4B;4BAC3E,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,qDAAqD;qBACnG;oBACH,CAAC,CAAC,CAAC,CAAC,kBAAkB,KAAK,KAAK;wBAC9B,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC;wBACxD,CAAC,CAAC,MAAM,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;oBACf,IAAI,IAAI;wBAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAc,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;oBACnE,+DAA+D;oBAC/D,yDAAyD;oBACzD,gEAAgE;oBAChE,oEAAoE;oBACpE,IAAI,CAAC,MAAM,CAAC,SAAS;wBAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;oBACpG,IAAI,MAAM,CAAC,aAAa;wBAAE,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;oBACpE,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBACzD,CAAC;qBAAM,IAAI,CAAC,IAAI,EAAE,CAAC;oBACjB,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC7C,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAa,EAAE,CAAC;QACrC,CAAC,CAAC,CACH,CAAC;QACF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACxD,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QACnG,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC;YAAE,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAc,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,uBAAuB,CAAC,CAAC,CAAC;QACtG,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/G,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IACtD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACK,KAAK,CAAC,kBAAkB,CAC9B,MAA0B,EAC1B,KAAoB,EACpB,YAAyC,EACzC,MAAc,EACd,MAAc;QAEd,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;QAClD,oEAAoE;QACpE,2EAA2E;QAC3E,uEAAuE;QACvE,2EAA2E;QAC3E,yEAAyE;QACzE,mEAAmE;QACnE,qDAAqD;QACrD,KAAK,MAAM,MAAM,IAAI,YAAY,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACrE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC;YACpE,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,IAAI,GAAG,EAA8B,CAAC;QACrD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE;YAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/D,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC/C,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACpC,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3D,CAAC;QACD,0EAA0E;QAC1E,kEAAkE;QAClE,GAAG,CAAC,IAAI,CACN,UAAU,KAAK,CAAC,IAAI,kEAAkE;YACpF,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvF,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9E,CAAC;IAED,0FAA0F;IAC1F,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,gBAAgB,CAC5B,MAA0B,EAC1B,QAAsB,EACtB,MAAc,EACd,MAAoC;QAEpC,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChD,gFAAgF;QAChF,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;QACnG,MAAM,YAAY,GAAG,CAAC,GAAY,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAClG,MAAM,MAAM,GAAG,KAAK,EAAE,KAAiB,EAAE,EAAE;YACzC,MAAM,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,gBAAgB,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YACrH,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;QACpD,CAAC,CAAC;QACF,qEAAqE;QACrE,yEAAyE;QACzE,IAAI,mBAAmB,GAAG,KAAK,CAAC;QAChC,IAAI,CAAC;YACH,IAAI,KAA8B,CAAC;YACnC,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,OAAO,EAAE,CAAC;YAC1B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,wEAAwE;gBACxE,yDAAyD;gBACzD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBACpF,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;oBACnB,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;oBAClD,MAAM,OAAO,CAAC,KAAK,CAAC;gBACtB,CAAC;gBACD,KAAK,GAAG,MAAM,OAAO,EAAE,CAAC;YAC1B,CAAC;YACD,IAAI,KAAiB,CAAC;YACtB,IAAI,CAAC;gBACH,KAAK,GAAG,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC;YACnG,CAAC;oBAAS,CAAC;gBACT,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,CAAC;YACD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;YAClE,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/D,yEAAyE;YACzE,qEAAqE;YACrE,sEAAsE;YACtE,uEAAuE;YACvE,yEAAyE;YACzE,oEAAoE;YACpE,IAAI,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC;gBAClD,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBACzD,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;oBAC7C,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC1B,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;gBACtB,CAAC;gBACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;YACpE,CAAC;YACD,uEAAuE;YACvE,wEAAwE;YACxE,mEAAmE;YACnE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,iIAAiI;IACzH,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,WAAmB;QAC7D,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;QACzE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IACK,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,QAAsB;QACpE,iEAAiE;QACjE,uEAAuE;QACvE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACpH,yEAAyE;QACzE,iDAAiD;QACjD,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACvC,sBAAsB,CAAC,MAAM,EAAE,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACtG,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACK,KAAK,CAAC,sBAAsB,CAClC,MAAc,EACd,UAAkB,EAClB,OAAe,EACf,GAAY;QAEZ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACvF,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACpE,CAAC;IAED,oGAAoG;IAC5F,KAAK,CAAC,yBAAyB,CACrC,MAAc,EACd,UAAkB,EAClB,OAAe,EACf,GAAY;QAEZ,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC;QACtG,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QACtE,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;YAC5B,2EAA2E;YAC3E,qEAAqE;YACrE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;YACjD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;YAC3B,oEAAoE;YACpE,oEAAoE;YACpE,uCAAuC;YACvC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;YACjD,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,mBAAmB,EAAE,KAAK;gBAC1B,KAAK,EAAE,IAAI,KAAK,CACd,qBAAqB,UAAU,4CAA4C;oBACzE,sBAAsB,IAAI,CAAC,IAAI,CAAC,iBAAiB,oCAAoC,CACxF;aACF,CAAC;QACJ,CAAC;QACD,sEAAsE;QACtE,2EAA2E;QAC3E,mEAAmE;QACnE,2EAA2E;QAC3E,uEAAuE;QACvE,2DAA2D;QAC3D,MAAM,cAAc,GAAG,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,SAAS,CAAC;QACxE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,mBAAmB,EAAE,cAAc,EAAE,CAAC;IAC3E,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,sBAAsB,CAClC,MAAc,EACd,UAAkB;QAElB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;QAChC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QACjE,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/G,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sEAAsE;YACtE,uEAAuE;YACvE,yEAAyE;YACzE,wDAAwD;YACxD,GAAG,CAAC,IAAI,CACN,oEAAoE,SAAS,CAAC,UAAU,CAAC,IAAI;gBAC3F,SAAS,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAC9D,CAAC;YACF,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,kBAAkB,GAAG,UAAU,EAAE,EAAE,KAAK,IAAI,EAAE;YAChG,MAAM,QAAQ,GAA2B,EAAE,CAAC;YAC5C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,0EAA0E;gBAC1E,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAyB,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;YACtG,CAAC;YACD,MAAM,OAAO,GAAyB,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACjE,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;oBAC9B,CAAC,CAAC,WAAW;oBACb,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC;wBAC9B,CAAC,CAAC,WAAW;wBACb,CAAC,CAAC,SAAS,CAAC;YAClB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,sEAAsE;gBACtE,iEAAiE;gBACjE,GAAG,CAAC,IAAI,CACN,oCAAoC,SAAS,CAAC,UAAU,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,YAAY,OAAO,EAAE,CACzG,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7C,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,gBAAgB,CAC5B,MAAc,EACd,QAAgB,EAChB,UAAkB;QAElB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAClE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO;YACL,MAAM,EAAE,wBAAwB,CAC9B,QAAQ,EACR,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,EACrC,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,UAAU,CACzC;YACD,sEAAsE;YACtE,qEAAqE;YACrE,gEAAgE;YAChE,oDAAoD;YACpD,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;SAClD,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,kBAAkB,CAC9B,MAAc,EACd,UAAkB;QAElB,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,CAAC;QACtE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAC5E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAC9C,MAAM,EACN,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAC3B,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,OAAO,GAAqE,EAAE,CAAC;QACrF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAChC,sEAAsE;YACtE,uEAAuE;YACvE,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE,cAAc,CAAC,CAAC;YAC5D,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,0CAA0C;gBACxG,SAAS;YACX,CAAC;YACD,wEAAwE;YACxE,uEAAuE;YACvE,iEAAiE;YACjE,oEAAoE;YACpE,qEAAqE;YACrE,8BAA8B;YAC9B,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YAClD,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAChD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;gBACpE,SAAS;YACX,CAAC;YACD,2EAA2E;YAC3E,2EAA2E;YAC3E,wEAAwE;YACxE,gCAAgC;YAChC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;gBAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;gBAC7D,SAAS;YACX,CAAC;YACD,0EAA0E;YAC1E,8EAA8E;YAC9E,4EAA4E;YAC5E,4EAA4E;YAC5E,gCAAgC;YAChC,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC/D,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,QAAQ,CACpB,MAA0B,EAC1B,IAAiB,EACjB,OAAyG;IACzG,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,KAAsD;QAEtD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC;QAC1D,OAAO,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAC1F,KAAK,CAAC,gBAAgB,CAAC;YACrB,MAAM,EAAE,wBAAwB;YAChC,MAAM,EAAE;gBACN,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzD,QAAQ;gBACR,OAAO;aACR;SACF,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,gBAAgB,CAC5B,MAA0B,EAC1B,IAAY,EACZ,IAA6B;QAE7B,OAAO,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;CACF;AAED,kGAAkG;AAClG,SAAS,aAAa,CAAC,MAAsB;IAC3C,OAAO,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;AACjC,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,MAAc,EAAE,SAAiC,EAAE,YAAqB;IAChG,OAAO,IAAI,0BAA0B,EAAE,CAAC,YAAY,CAAC;QACnD,SAAS;QACT,mBAAmB,EAAE,CAAC,wBAAwB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;KACtE,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,QAAsB;IAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CAAC,MAAc,EAAE,QAAsB;IAC/D,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACpG,CAAC;AAED,mGAAmG;AACnG,SAAS,mBAAmB,CAAC,QAAsB;IACjD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,iBAAiB,CAAC,MAA0B,EAAE,MAA4C;IACjG,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAE/E,MAAM,CAAC,QAAQ,GAAG,KAAK,UAAU,cAAc,CAAC,QAAgB,EAAE,QAAiC;QACjG,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK;YAAE,OAAO,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC/D,CAAC;oBAAS,CAAC;gBACT,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,EAAE,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,IAAI,KAAK,0BAA0B;gBAAE,MAAM,IAAI,CAAC;YACpD,mEAAmE;YACnE,OAAO,MAAM,IAAI,EAAE,CAAC;QACtB,CAAC;IACH,CAAC,CAAC;IACF,MAAM,CAAC,iBAAiB,GAAG,KAAK,SAAS,CAAC,CAAC,uBAAuB,CAChE,QAAgB,EAChB,QAAiC;QAEjC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,SAAS,CAAC;YAC1B,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAClE,CAAC;oBAAS,CAAC;gBACT,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,CAAC;QACH,CAAC,CAAC;QACF,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,EAAE,EAAE,CAAC;gBACjC,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,KAAK,CAAC;YACd,CAAC;YACD,OAAO;QACT,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,uEAAuE;YACvE,0EAA0E;YAC1E,IAAI,OAAO;gBAAE,MAAM,GAAG,CAAC;YACvB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,IAAI,KAAK,0BAA0B;gBAAE,MAAM,IAAI,CAAC;QACtD,CAAC;QACD,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,OAAO,EAEL,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * The schema check for connected tools, and the memory of what it found.
3
+ *
4
+ * An AI client that is handed a tool whose input schema is not valid JSON
5
+ * Schema drops that tool and says nothing: it is simply missing for the agent,
6
+ * with nothing in Hexis to look at. So Hexis runs the same check itself, when a
7
+ * server's tools are LOADED, and:
8
+ *
9
+ * - keeps such a tool off every agent surface, so the agent's picture of what
10
+ * it can do matches what it can actually call;
11
+ * - remembers the finding for the people who manage that server, who are the
12
+ * only ones who can get it fixed (the tool page, `list_tool_setup`).
13
+ *
14
+ * WHEN it runs is the point. The verdict is remembered per DISTINCT SCHEMA, so
15
+ * a server whose tools are unchanged costs one hash and one map lookup per
16
+ * tool: the JSON Schema check happens when a server's tools are first loaded
17
+ * and when a refresh brings a schema this process has not seen, and never on a
18
+ * tool call — which re-derives the surface from those same unchanged schemas.
19
+ *
20
+ * It never REPAIRS anything. The proxy passes a connected server's schema
21
+ * through as sent; an invalid one is reported, and the server's owner decides.
22
+ */
23
+ import { type SchemaDefect } from '@bevel-software/platform-mcp-core';
24
+ import type { HiddenTool, HiddenToolSource } from '../../shared/hidden-tools.js';
25
+ /** What {@link ToolSchemaGuard.screen} needs of a freshly loaded tool. */
26
+ export interface ScreenedTool {
27
+ /** The UTCP name (`<manual>.<server>.<tool>`) — how the tool repository knows it. */
28
+ utcpName: string;
29
+ /** The flattened name an agent addresses it by. */
30
+ mcpName: string;
31
+ /** The input schema exactly as the connected server sent it. */
32
+ inputSchema: unknown;
33
+ }
34
+ /**
35
+ * A finding as the LOADING side needs it. The owner-facing `HiddenTool` is
36
+ * about a tool by the name an agent would have called it; the proxy also has to
37
+ * take the tool out of its repository and record it in the audit trail, and
38
+ * both of those know a tool by its UTCP name. Kept off `HiddenTool` so the
39
+ * owner-facing payload stays exactly what its surfaces declare.
40
+ */
41
+ export interface ScreenedHiddenTool extends HiddenTool {
42
+ /** The UTCP name (`<manual>.<server>.<tool>`) the tool repository knows it by. */
43
+ utcpName: string;
44
+ }
45
+ /** How many callers' pictures to hold at once — see `screen` for what happens past it. Exported for the tests that fill it. */
46
+ export declare const MAX_REMEMBERED_CALLERS = 2000;
47
+ export declare class ToolSchemaGuard implements HiddenToolSource {
48
+ private readonly check;
49
+ /** Verdict per distinct schema: `null` means valid, so `undefined` means unchecked. */
50
+ private readonly verdicts;
51
+ /**
52
+ * The findings, per CALLER and then per manual by catalog name.
53
+ *
54
+ * Keyed by caller because that is what a load is: discovery runs on the
55
+ * requesting user's own connection to the server, and two callers can be
56
+ * shown different tools by the same server. A single table keyed by manual
57
+ * would let one caller's load erase another's finding — the owner page would
58
+ * then show a defect from whichever request happened to be last, or none at
59
+ * all. Keyed by caller, a load replaces only what that caller can see, and
60
+ * `hiddenFor` reports the union, since the finding is about the server.
61
+ */
62
+ private readonly hidden;
63
+ /** The newest load whose picture has been applied, per caller — see {@link beginLoad}. */
64
+ private readonly applied;
65
+ /** Hands out {@link beginLoad} tickets; monotonic for the life of the process. */
66
+ private loads;
67
+ /** `check` is injected only by tests, to observe how often the check runs. */
68
+ constructor(check?: (schema: unknown) => SchemaDefect | null);
69
+ /**
70
+ * A ticket for a load that is ABOUT TO READ a server's tools, to be handed
71
+ * back to {@link screen} with what it found.
72
+ *
73
+ * Requests overlap: a caller's surface is rebuilt on every one of them, and
74
+ * two can be dialling the same server at once. Without an order, a load that
75
+ * started while a schema was still broken could land after the load that saw
76
+ * it corrected, and put the marker back on a tool that is fine — until some
77
+ * later request happened to clear it again. The ticket is taken BEFORE the
78
+ * read, so it ranks loads by the freshness of what they saw, and `screen`
79
+ * ignores a picture older than the one already applied.
80
+ */
81
+ beginLoad(): number;
82
+ /**
83
+ * Screen everything one caller's request just loaded — every manual on their
84
+ * surface, with the tools that manual advertised — and replace that caller's
85
+ * whole picture. Returns the tools to keep off the agent surfaces, keyed by
86
+ * UTCP name.
87
+ *
88
+ * WHOLE is the point, and why this takes every manual rather than one. A
89
+ * manual whose group is EMPTY has nothing hidden: its server dropped the
90
+ * offending tool, or it failed to attach at all and its tools are not loaded.
91
+ * A manual absent from `groups` is no longer on this caller's surface. Either
92
+ * way the marker goes, with nothing to clear by hand — and nothing claims a
93
+ * tool is hidden for a schema this process can no longer see.
94
+ *
95
+ * `loadId` comes from {@link beginLoad}, taken before the tools were read. A
96
+ * load that is already out of date still gets its own answer — the request
97
+ * that ran it must not offer a tool it has just judged invalid — but it does
98
+ * not write that answer into what everyone else reads.
99
+ */
100
+ screen(userId: string, loadId: number, groups: ReadonlyMap<string, readonly ScreenedTool[]>): Map<string, ScreenedHiddenTool>;
101
+ hiddenFor(manual: string): HiddenTool[];
102
+ /** The check itself, once per distinct schema. */
103
+ private verdict;
104
+ }
105
+ //# sourceMappingURL=tool-schema-guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-schema-guard.d.ts","sourceRoot":"","sources":["../../../src/modules/mcp/tool-schema-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAyC,KAAK,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAC7G,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEjF,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,qFAAqF;IACrF,QAAQ,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IACpD,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAC;CAClB;AAUD,+HAA+H;AAC/H,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C,qBAAa,eAAgB,YAAW,gBAAgB;IAqB1C,OAAO,CAAC,QAAQ,CAAC,KAAK;IApBlC,uFAAuF;IACvF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA0C;IACnE;;;;;;;;;;OAUG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwD;IAC/E,0FAA0F;IAC1F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,kFAAkF;IAClF,OAAO,CAAC,KAAK,CAAK;IAElB,8EAA8E;gBACjD,KAAK,GAAE,CAAC,MAAM,EAAE,OAAO,KAAK,YAAY,GAAG,IAAwB;IAEhG;;;;;;;;;;;OAWG;IACH,SAAS,IAAI,MAAM;IAKnB;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CACJ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,CAAC,GACnD,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAkDlC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE;IAavC,kDAAkD;IAClD,OAAO,CAAC,OAAO;CAShB"}
@@ -0,0 +1,171 @@
1
+ /**
2
+ * The schema check for connected tools, and the memory of what it found.
3
+ *
4
+ * An AI client that is handed a tool whose input schema is not valid JSON
5
+ * Schema drops that tool and says nothing: it is simply missing for the agent,
6
+ * with nothing in Hexis to look at. So Hexis runs the same check itself, when a
7
+ * server's tools are LOADED, and:
8
+ *
9
+ * - keeps such a tool off every agent surface, so the agent's picture of what
10
+ * it can do matches what it can actually call;
11
+ * - remembers the finding for the people who manage that server, who are the
12
+ * only ones who can get it fixed (the tool page, `list_tool_setup`).
13
+ *
14
+ * WHEN it runs is the point. The verdict is remembered per DISTINCT SCHEMA, so
15
+ * a server whose tools are unchanged costs one hash and one map lookup per
16
+ * tool: the JSON Schema check happens when a server's tools are first loaded
17
+ * and when a refresh brings a schema this process has not seen, and never on a
18
+ * tool call — which re-derives the surface from those same unchanged schemas.
19
+ *
20
+ * It never REPAIRS anything. The proxy passes a connected server's schema
21
+ * through as sent; an invalid one is reported, and the server's owner decides.
22
+ */
23
+ import { createHash } from 'node:crypto';
24
+ import { inputSchemaDefect, schemaDefectMarker } from '@bevel-software/platform-mcp-core';
25
+ /**
26
+ * How many schema verdicts to remember. Each is a hash and a verdict, so the
27
+ * cap is about a deployment that edits servers all day rather than about size;
28
+ * past it the whole table is cleared instead of evicted entry by entry, since
29
+ * the next load simply re-checks.
30
+ */
31
+ const MAX_REMEMBERED_SCHEMAS = 5000;
32
+ /** How many callers' pictures to hold at once — see `screen` for what happens past it. Exported for the tests that fill it. */
33
+ export const MAX_REMEMBERED_CALLERS = 2000;
34
+ export class ToolSchemaGuard {
35
+ check;
36
+ /** Verdict per distinct schema: `null` means valid, so `undefined` means unchecked. */
37
+ verdicts = new Map();
38
+ /**
39
+ * The findings, per CALLER and then per manual by catalog name.
40
+ *
41
+ * Keyed by caller because that is what a load is: discovery runs on the
42
+ * requesting user's own connection to the server, and two callers can be
43
+ * shown different tools by the same server. A single table keyed by manual
44
+ * would let one caller's load erase another's finding — the owner page would
45
+ * then show a defect from whichever request happened to be last, or none at
46
+ * all. Keyed by caller, a load replaces only what that caller can see, and
47
+ * `hiddenFor` reports the union, since the finding is about the server.
48
+ */
49
+ hidden = new Map();
50
+ /** The newest load whose picture has been applied, per caller — see {@link beginLoad}. */
51
+ applied = new Map();
52
+ /** Hands out {@link beginLoad} tickets; monotonic for the life of the process. */
53
+ loads = 0;
54
+ /** `check` is injected only by tests, to observe how often the check runs. */
55
+ constructor(check = inputSchemaDefect) {
56
+ this.check = check;
57
+ }
58
+ /**
59
+ * A ticket for a load that is ABOUT TO READ a server's tools, to be handed
60
+ * back to {@link screen} with what it found.
61
+ *
62
+ * Requests overlap: a caller's surface is rebuilt on every one of them, and
63
+ * two can be dialling the same server at once. Without an order, a load that
64
+ * started while a schema was still broken could land after the load that saw
65
+ * it corrected, and put the marker back on a tool that is fine — until some
66
+ * later request happened to clear it again. The ticket is taken BEFORE the
67
+ * read, so it ranks loads by the freshness of what they saw, and `screen`
68
+ * ignores a picture older than the one already applied.
69
+ */
70
+ beginLoad() {
71
+ this.loads += 1;
72
+ return this.loads;
73
+ }
74
+ /**
75
+ * Screen everything one caller's request just loaded — every manual on their
76
+ * surface, with the tools that manual advertised — and replace that caller's
77
+ * whole picture. Returns the tools to keep off the agent surfaces, keyed by
78
+ * UTCP name.
79
+ *
80
+ * WHOLE is the point, and why this takes every manual rather than one. A
81
+ * manual whose group is EMPTY has nothing hidden: its server dropped the
82
+ * offending tool, or it failed to attach at all and its tools are not loaded.
83
+ * A manual absent from `groups` is no longer on this caller's surface. Either
84
+ * way the marker goes, with nothing to clear by hand — and nothing claims a
85
+ * tool is hidden for a schema this process can no longer see.
86
+ *
87
+ * `loadId` comes from {@link beginLoad}, taken before the tools were read. A
88
+ * load that is already out of date still gets its own answer — the request
89
+ * that ran it must not offer a tool it has just judged invalid — but it does
90
+ * not write that answer into what everyone else reads.
91
+ */
92
+ screen(userId, loadId, groups) {
93
+ const found = new Map();
94
+ const picture = new Map();
95
+ for (const [manual, tools] of groups) {
96
+ const ofManual = [];
97
+ for (const tool of tools) {
98
+ const defect = this.verdict(tool.inputSchema);
99
+ if (!defect)
100
+ continue;
101
+ const hidden = {
102
+ manual,
103
+ name: tool.mcpName,
104
+ utcpName: tool.utcpName,
105
+ path: defect.path,
106
+ reason: defect.reason,
107
+ marker: schemaDefectMarker(defect),
108
+ };
109
+ found.set(tool.utcpName, hidden);
110
+ ofManual.push(hidden);
111
+ }
112
+ if (ofManual.length > 0)
113
+ picture.set(manual, ofManual);
114
+ }
115
+ // Stale: a load that read the server earlier than one already applied for
116
+ // THIS caller. Its own answer stands, the shared picture does not move.
117
+ //
118
+ // Per caller, and nothing wider. An evicted caller's watermark goes with
119
+ // their picture, and that loses nothing: once nothing of theirs is held,
120
+ // whichever of their loads lands next is the newest picture this process
121
+ // has of them, and it restores the watermark that rejects any older one
122
+ // landing after it. A floor shared across callers would instead reject
123
+ // some OTHER caller's newest load for having begun before an unrelated
124
+ // eviction, and the owner's page would miss that caller's finding.
125
+ if (loadId < (this.applied.get(userId) ?? 0))
126
+ return found;
127
+ // Not about size — each entry is a handful of strings — but about a
128
+ // deployment with many callers never growing these without bound. Evicted
129
+ // one caller at a time, the longest unseen first, so every other caller's
130
+ // findings stay on the owner's page; the next load of the evicted surface
131
+ // puts its own back. (Re-inserted on every load, so a Map's insertion
132
+ // order is the order of last sight.)
133
+ while (this.applied.size >= MAX_REMEMBERED_CALLERS && !this.applied.has(userId)) {
134
+ const oldest = this.applied.keys().next().value;
135
+ this.applied.delete(oldest);
136
+ this.hidden.delete(oldest);
137
+ }
138
+ this.applied.delete(userId);
139
+ this.applied.set(userId, loadId);
140
+ if (picture.size > 0)
141
+ this.hidden.set(userId, picture);
142
+ else
143
+ this.hidden.delete(userId);
144
+ return found;
145
+ }
146
+ hiddenFor(manual) {
147
+ const union = new Map();
148
+ for (const picture of this.hidden.values()) {
149
+ for (const { manual: of, name, path, reason, marker } of picture.get(manual) ?? []) {
150
+ // One entry per distinct defect: two callers shown the same broken tool
151
+ // have found one thing, and its owner should read it once. Projected to
152
+ // the owner-facing shape, so nothing of the loading side rides along.
153
+ union.set(`${name}\u0000${path}\u0000${reason}`, { manual: of, name, path, reason, marker });
154
+ }
155
+ }
156
+ return [...union.values()];
157
+ }
158
+ /** The check itself, once per distinct schema. */
159
+ verdict(schema) {
160
+ const key = createHash('sha1').update(JSON.stringify(schema) ?? 'undefined').digest('hex');
161
+ const remembered = this.verdicts.get(key);
162
+ if (remembered !== undefined)
163
+ return remembered;
164
+ const defect = this.check(schema);
165
+ if (this.verdicts.size >= MAX_REMEMBERED_SCHEMAS)
166
+ this.verdicts.clear();
167
+ this.verdicts.set(key, defect);
168
+ return defect;
169
+ }
170
+ }
171
+ //# sourceMappingURL=tool-schema-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-schema-guard.js","sourceRoot":"","sources":["../../../src/modules/mcp/tool-schema-guard.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { type KbLayout } from '@bevel-software/platform-shared';
2
+ import type { KbContext } from '../../shared/kb-context.js';
1
3
  import type { IToolRegistry, UtcpTool } from '../tool-registry/tool.contract.js';
2
4
  /**
3
5
  * The two plugin tools an agent has, both surfaces — DESCRIPTIONS of the
@@ -19,7 +21,39 @@ import type { IToolRegistry, UtcpTool } from '../tool-registry/tool.contract.js'
19
21
  * agent exactly as for a person; a refusal comes back as the endpoint's own
20
22
  * 4xx with its message.
21
23
  */
22
- export declare function registerPluginsTools(registry: IToolRegistry): void;
23
- export declare const MY_PLUGIN: UtcpTool;
24
+ export declare function registerPluginsTools(registry: IToolRegistry, kb: KbContext): void;
25
+ /**
26
+ * What an agent reads about the personal plugin, for the layout in effect.
27
+ *
28
+ * THE RULE COMES FIRST, and the order is the substance of it rather than a
29
+ * matter of style. A personal plugin holds its owner's skills and tools;
30
+ * nothing under the plugins root is part of the knowledge graph, and a
31
+ * personal plugin is readable only by its owner — so a note filed there is
32
+ * never found as knowledge again, by anyone, including its author's next
33
+ * agent. Agents asked to "save this for me" were reading the old opening,
34
+ * "their personal space in the knowledge base", as an invitation to do
35
+ * precisely that.
36
+ *
37
+ * Stated ahead of the mechanics of writing a skill, not after them, because
38
+ * claude.ai cuts a tool description near `CLIENT_SHORT_CUT` characters (see
39
+ * `tool-registry/description-length.ts`) counted from the guide-first sentence
40
+ * the registry puts in front of every listed tool. What survives that cut is
41
+ * decided by ORDER, so the rule sits inside it and the `skillsDir` detail —
42
+ * which the guide states in full anyway — is what a short client loses.
43
+ * The root is named ONCE, after the rule rather than inside it: a folder name
44
+ * may run to 255 bytes, and repeated within the rule it could push the rule
45
+ * itself past the cut and the whole text past `TOOL_DESCRIPTION_CAP`.
46
+ * `plugins.tools.test.ts` pins that placement rather than trusting this note.
47
+ *
48
+ * It REFUSES nothing. The write gate accepts every file in a personal plugin
49
+ * exactly as it did before; this text is the whole of the change.
50
+ */
51
+ export declare function myPluginDescription(layout: KbLayout): string;
52
+ /**
53
+ * The `my_plugin` definition for `layout`. Everything but the description is
54
+ * the same on every deployment and byte-identical to what it has always been:
55
+ * the same endpoint, the same (empty) inputs, the same outputs, the same tags.
56
+ */
57
+ export declare function myPluginDef(layout: KbLayout): UtcpTool;
24
58
  export declare const CREATE_PLUGIN: UtcpTool;
25
59
  //# sourceMappingURL=plugins.tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.tools.d.ts","sourceRoot":"","sources":["../../../src/modules/plugins/plugins.tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAGjF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAKlE;AAeD,eAAO,MAAM,SAAS,EAAE,QActB,CAAC;AAEH,eAAO,MAAM,aAAa,EAAE,QA4B1B,CAAC"}
1
+ {"version":3,"file":"plugins.tools.d.ts","sourceRoot":"","sources":["../../../src/modules/plugins/plugins.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAGjF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI,CAoBjF;AAeD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAa5D;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAWtD;AAED,eAAO,MAAM,aAAa,EAAE,QA4B1B,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { resolveKbLayout } from '@bevel-software/platform-shared';
1
2
  import { toolDef } from '../tool-helpers/tool-def.js';
2
3
  /**
3
4
  * The two plugin tools an agent has, both surfaces — DESCRIPTIONS of the
@@ -19,9 +20,24 @@ import { toolDef } from '../tool-helpers/tool-def.js';
19
20
  * agent exactly as for a person; a refusal comes back as the endpoint's own
20
21
  * 4xx with its message.
21
22
  */
22
- export function registerPluginsTools(registry) {
23
- registry.registerExternalTool(MY_PLUGIN);
24
- registry.registerInternalTool(MY_PLUGIN);
23
+ export function registerPluginsTools(registry, kb) {
24
+ // ONE object on both surfaces, so the rewrite below reaches both of them.
25
+ // The registry holds this object, and re-registering under the same name
26
+ // would throw as a duplicate.
27
+ const myPlugin = myPluginDef(kb.layout);
28
+ registry.registerExternalTool(myPlugin);
29
+ registry.registerInternalTool(myPlugin);
30
+ /**
31
+ * `my_plugin`'s description NAMES the knowledge root, so its text has to
32
+ * follow the layout: the save that completes first-run setup applies the
33
+ * names the admin just chose in that same request, without a restart, and a
34
+ * description built once at registration would go on sending notes to a
35
+ * folder this deployment no longer has. Rewritten in place, exactly as the
36
+ * workspace tools' descriptions are (see `workspace.tools.ts`).
37
+ */
38
+ kb.onLayoutApplied(() => {
39
+ myPlugin.description = myPluginDescription(kb.layout);
40
+ });
25
41
  registry.registerExternalTool(CREATE_PLUGIN);
26
42
  registry.registerInternalTool(CREATE_PLUGIN);
27
43
  }
@@ -37,20 +53,61 @@ const PROVISIONED_OUTPUT = {
37
53
  created: { type: 'boolean', description: 'False when the folder already existed.' },
38
54
  },
39
55
  };
40
- export const MY_PLUGIN = toolDef({
41
- name: 'my_plugin',
42
- description: "The caller's own private plugin — their personal space in the knowledge base, created on first use. " +
56
+ /**
57
+ * What an agent reads about the personal plugin, for the layout in effect.
58
+ *
59
+ * THE RULE COMES FIRST, and the order is the substance of it rather than a
60
+ * matter of style. A personal plugin holds its owner's skills and tools;
61
+ * nothing under the plugins root is part of the knowledge graph, and a
62
+ * personal plugin is readable only by its owner — so a note filed there is
63
+ * never found as knowledge again, by anyone, including its author's next
64
+ * agent. Agents asked to "save this for me" were reading the old opening,
65
+ * "their personal space in the knowledge base", as an invitation to do
66
+ * precisely that.
67
+ *
68
+ * Stated ahead of the mechanics of writing a skill, not after them, because
69
+ * claude.ai cuts a tool description near `CLIENT_SHORT_CUT` characters (see
70
+ * `tool-registry/description-length.ts`) counted from the guide-first sentence
71
+ * the registry puts in front of every listed tool. What survives that cut is
72
+ * decided by ORDER, so the rule sits inside it and the `skillsDir` detail —
73
+ * which the guide states in full anyway — is what a short client loses.
74
+ * The root is named ONCE, after the rule rather than inside it: a folder name
75
+ * may run to 255 bytes, and repeated within the rule it could push the rule
76
+ * itself past the cut and the whole text past `TOOL_DESCRIPTION_CAP`.
77
+ * `plugins.tools.test.ts` pins that placement rather than trusting this note.
78
+ *
79
+ * It REFUSES nothing. The write gate accepts every file in a personal plugin
80
+ * exactly as it did before; this text is the whole of the change.
81
+ */
82
+ export function myPluginDescription(layout) {
83
+ const knowledge = `\`${resolveKbLayout(layout).knowledgeBaseDir}/\``;
84
+ return ("The caller's personal plugin: their own skills and tools, created on first use. " +
85
+ 'Notes, knowledge and other documents do NOT go here; they go under the knowledge root. ' +
86
+ 'For something the user wants kept private, ask where under the knowledge root it should go and say a ' +
87
+ 'folder there can be restricted so only they can read it; never write it here, even if asked. ' +
88
+ `The knowledge root here is ${knowledge}. ` +
43
89
  'Returns its folder and where skills go inside it (`skillsDir`); write a skill there as ' +
44
90
  '`<skillsDir>/<skill-name>/SKILL.md` with the file tools, opening with the Agent Skills frontmatter ' +
45
91
  '(`name`, `description`, and `metadata.version` such as `"1.0.0"`). Readable only by its owner — not even admins — and ' +
46
- 'never listed as a shared plugin. Idempotent: calling it again returns the same folder.',
47
- path: '/api/plugins/personal',
48
- inputs: { type: 'object', properties: {}, additionalProperties: false },
49
- outputs: PROVISIONED_OUTPUT,
50
- // `write`: both make folders and commit — a read-scoped caller's manual
51
- // must not advertise them (see `isWriteTool` in the manual routes).
52
- tags: ['plugins', 'skills', 'write'],
53
- });
92
+ 'never listed as a shared plugin. Idempotent: calling it again returns the same folder.');
93
+ }
94
+ /**
95
+ * The `my_plugin` definition for `layout`. Everything but the description is
96
+ * the same on every deployment and byte-identical to what it has always been:
97
+ * the same endpoint, the same (empty) inputs, the same outputs, the same tags.
98
+ */
99
+ export function myPluginDef(layout) {
100
+ return toolDef({
101
+ name: 'my_plugin',
102
+ description: myPluginDescription(layout),
103
+ path: '/api/plugins/personal',
104
+ inputs: { type: 'object', properties: {}, additionalProperties: false },
105
+ outputs: PROVISIONED_OUTPUT,
106
+ // `write`: both make folders and commit — a read-scoped caller's manual
107
+ // must not advertise them (see `isWriteTool` in the manual routes).
108
+ tags: ['plugins', 'skills', 'write'],
109
+ });
110
+ }
54
111
  export const CREATE_PLUGIN = toolDef({
55
112
  name: 'create_plugin',
56
113
  description: "Create a shared plugin under the plugins root, exactly as the app's New plugin button does: the caller " +
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.tools.js","sourceRoot":"","sources":["../../../src/modules/plugins/plugins.tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAEtD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAuB;IAC1D,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACzC,QAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACzC,QAAQ,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC7C,QAAQ,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;AAC/C,CAAC;AAED,iFAAiF;AACjF,MAAM,kBAAkB,GAAG;IACzB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wHAAwH,EAAE;QAC/J,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uFAAuF,EAAE;QACnI,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qDAAqD,EAAE;QAC9F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kFAAkF,EAAE;QACzH,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6LAA6L,EAAE;QAC3O,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,wCAAwC,EAAE;KACpF;CACO,CAAC;AAEX,MAAM,CAAC,MAAM,SAAS,GAAa,OAAO,CAAC;IACzC,IAAI,EAAE,WAAW;IACjB,WAAW,EACT,sGAAsG;QACtG,yFAAyF;QACzF,qGAAqG;QACrG,wHAAwH;QACxH,wFAAwF;IAC1F,IAAI,EAAE,uBAAuB;IAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE;IACvE,OAAO,EAAE,kBAAkB;IAC3B,wEAAwE;IACxE,oEAAoE;IACpE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC;CACrC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAa,OAAO,CAAC;IAC7C,IAAI,EAAE,eAAe;IACrB,WAAW,EACT,yGAAyG;QACzG,sGAAsG;QACtG,yGAAyG;QACzG,sGAAsG;QACtG,wGAAwG;QACxG,0GAA0G;QAC1G,oGAAoG;QACpG,qDAAqD;IACvD,IAAI,EAAE,cAAc;IACpB,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,iIAAiI,EAAE;YACtL,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,iHAAiH;aAC/H;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;QAClB,oBAAoB,EAAE,KAAK;KAC5B;IACD,OAAO,EAAE,kBAAkB;IAC3B,wEAAwE;IACxE,oEAAoE;IACpE,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC;CACrC,CAAC,CAAC"}
1
+ {"version":3,"file":"plugins.tools.js","sourceRoot":"","sources":["../../../src/modules/plugins/plugins.tools.ts"],"names":[],"mappings":"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"}